aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--Makefile.common1
-rw-r--r--NEWS13
-rw-r--r--README6
-rw-r--r--audio/audiostream.cpp4
-rw-r--r--audio/audiostream.h4
-rw-r--r--audio/decoders/adpcm.cpp4
-rw-r--r--audio/decoders/adpcm.h4
-rw-r--r--audio/decoders/adpcm_intern.h4
-rw-r--r--audio/decoders/aiff.cpp4
-rw-r--r--audio/decoders/aiff.h4
-rw-r--r--audio/decoders/flac.cpp4
-rw-r--r--audio/decoders/flac.h4
-rw-r--r--audio/decoders/iff_sound.cpp4
-rw-r--r--audio/decoders/iff_sound.h4
-rw-r--r--audio/decoders/mac_snd.cpp4
-rw-r--r--audio/decoders/mac_snd.h4
-rw-r--r--audio/decoders/mp3.cpp4
-rw-r--r--audio/decoders/mp3.h4
-rw-r--r--audio/decoders/qdm2.cpp4
-rw-r--r--audio/decoders/qdm2.h4
-rw-r--r--audio/decoders/qdm2data.h4
-rw-r--r--audio/decoders/quicktime.cpp8
-rw-r--r--audio/decoders/raw.cpp4
-rw-r--r--audio/decoders/raw.h4
-rw-r--r--audio/decoders/voc.cpp4
-rw-r--r--audio/decoders/voc.h4
-rw-r--r--audio/decoders/vorbis.cpp4
-rw-r--r--audio/decoders/vorbis.h4
-rw-r--r--audio/decoders/wave.cpp4
-rw-r--r--audio/decoders/wave.h4
-rw-r--r--audio/decoders/xa.cpp4
-rw-r--r--audio/decoders/xa.h4
-rw-r--r--audio/fmopl.cpp1
-rw-r--r--audio/fmopl.h1
-rw-r--r--audio/mididrv.cpp4
-rw-r--r--audio/mididrv.h4
-rw-r--r--audio/midiparser.cpp26
-rw-r--r--audio/midiparser.h6
-rw-r--r--audio/midiparser_qt.cpp4
-rw-r--r--audio/midiparser_qt.h4
-rw-r--r--audio/midiparser_smf.cpp4
-rw-r--r--audio/midiparser_xmidi.cpp4
-rw-r--r--audio/midiplayer.cpp4
-rw-r--r--audio/midiplayer.h4
-rw-r--r--audio/mixer.cpp12
-rw-r--r--audio/mixer.h4
-rw-r--r--audio/mixer_intern.h4
-rw-r--r--audio/mods/infogrames.cpp4
-rw-r--r--audio/mods/infogrames.h4
-rw-r--r--audio/mods/maxtrax.cpp4
-rw-r--r--audio/mods/maxtrax.h4
-rw-r--r--audio/mods/module.cpp4
-rw-r--r--audio/mods/module.h4
-rw-r--r--audio/mods/paula.cpp4
-rw-r--r--audio/mods/paula.h4
-rw-r--r--audio/mods/protracker.cpp4
-rw-r--r--audio/mods/protracker.h4
-rw-r--r--audio/mods/rjp1.cpp4
-rw-r--r--audio/mods/rjp1.h4
-rw-r--r--audio/mods/soundfx.cpp4
-rw-r--r--audio/mods/soundfx.h4
-rw-r--r--audio/mods/tfmx.cpp4
-rw-r--r--audio/mods/tfmx.h4
-rw-r--r--audio/mpu401.cpp1
-rw-r--r--audio/mpu401.h4
-rw-r--r--audio/musicplugin.cpp4
-rw-r--r--audio/musicplugin.h1
-rw-r--r--audio/null.cpp1
-rw-r--r--audio/null.h1
-rw-r--r--audio/rate.cpp4
-rw-r--r--audio/rate.h4
-rw-r--r--audio/rate_arm.cpp4
-rw-r--r--audio/rate_arm_asm.s9
-rw-r--r--audio/softsynth/adlib.cpp1
-rw-r--r--audio/softsynth/appleiigs.cpp40
-rw-r--r--audio/softsynth/cms.cpp1
-rw-r--r--audio/softsynth/cms.h1
-rw-r--r--audio/softsynth/eas.cpp1
-rw-r--r--audio/softsynth/emumidi.h1
-rw-r--r--audio/softsynth/fluidsynth.cpp1
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_audio.cpp4
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_audio.h4
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_euphony.cpp4
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_euphony.h4
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_pc98_driver.cpp4
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_pc98_driver.h4
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.cpp4
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.h4
-rw-r--r--audio/softsynth/mt32.cpp1
-rw-r--r--audio/softsynth/opl/dosbox.cpp1
-rw-r--r--audio/softsynth/opl/dosbox.h1
-rw-r--r--audio/softsynth/opl/mame.cpp5
-rw-r--r--audio/softsynth/opl/mame.h5
-rw-r--r--audio/softsynth/pcspk.cpp40
-rw-r--r--audio/softsynth/pcspk.h1
-rw-r--r--audio/softsynth/sid.cpp4
-rw-r--r--audio/softsynth/sid.h4
-rw-r--r--audio/softsynth/wave6581.cpp4
-rw-r--r--audio/timestamp.cpp4
-rw-r--r--audio/timestamp.h4
-rw-r--r--backends/audiocd/audiocd.h4
-rw-r--r--backends/audiocd/default/default-audiocd.cpp4
-rw-r--r--backends/audiocd/default/default-audiocd.h4
-rw-r--r--backends/audiocd/sdl/sdl-audiocd.cpp4
-rw-r--r--backends/audiocd/sdl/sdl-audiocd.h4
-rw-r--r--backends/base-backend.h4
-rw-r--r--backends/events/default/default-events.cpp4
-rw-r--r--backends/events/default/default-events.h4
-rw-r--r--backends/events/dinguxsdl/dinguxsdl-events.cpp4
-rw-r--r--backends/events/dinguxsdl/dinguxsdl-events.h4
-rw-r--r--backends/events/gph/gph-events.cpp4
-rw-r--r--backends/events/gph/gph-events.h4
-rw-r--r--backends/events/linuxmotosdl/linuxmotosdl-events.cpp4
-rw-r--r--backends/events/linuxmotosdl/linuxmotosdl-events.h4
-rw-r--r--backends/events/maemosdl/maemosdl-events.cpp4
-rw-r--r--backends/events/maemosdl/maemosdl-events.h4
-rw-r--r--backends/events/openpandora/op-events.cpp4
-rw-r--r--backends/events/openpandora/op-events.h4
-rw-r--r--backends/events/ps3sdl/ps3sdl-events.cpp4
-rw-r--r--backends/events/ps3sdl/ps3sdl-events.h4
-rw-r--r--backends/events/samsungtvsdl/samsungtvsdl-events.cpp4
-rw-r--r--backends/events/samsungtvsdl/samsungtvsdl-events.h4
-rw-r--r--backends/events/sdl/sdl-events.cpp4
-rw-r--r--backends/events/sdl/sdl-events.h4
-rw-r--r--backends/events/symbiansdl/symbiansdl-events.cpp4
-rw-r--r--backends/events/symbiansdl/symbiansdl-events.h4
-rw-r--r--backends/events/webossdl/webossdl-events.cpp4
-rw-r--r--backends/events/webossdl/webossdl-events.h4
-rw-r--r--backends/events/wincesdl/wincesdl-events.cpp4
-rw-r--r--backends/events/wincesdl/wincesdl-events.h4
-rw-r--r--backends/fs/abstract-fs.cpp1
-rw-r--r--backends/fs/abstract-fs.h1
-rw-r--r--backends/fs/amigaos4/amigaos4-fs-factory.cpp1
-rw-r--r--backends/fs/amigaos4/amigaos4-fs-factory.h1
-rw-r--r--backends/fs/amigaos4/amigaos4-fs.cpp1
-rw-r--r--backends/fs/amigaos4/amigaos4-fs.h1
-rw-r--r--backends/fs/ds/ds-fs-factory.cpp1
-rw-r--r--backends/fs/ds/ds-fs-factory.h1
-rw-r--r--backends/fs/ds/ds-fs.cpp4
-rw-r--r--backends/fs/ds/ds-fs.h4
-rw-r--r--backends/fs/fs-factory.h1
-rw-r--r--backends/fs/n64/n64-fs-factory.cpp1
-rw-r--r--backends/fs/n64/n64-fs-factory.h1
-rw-r--r--backends/fs/n64/n64-fs.h1
-rw-r--r--backends/fs/n64/romfsstream.cpp4
-rw-r--r--backends/fs/n64/romfsstream.h4
-rw-r--r--backends/fs/posix/posix-fs-factory.cpp1
-rw-r--r--backends/fs/posix/posix-fs-factory.h1
-rw-r--r--backends/fs/posix/posix-fs.cpp1
-rw-r--r--backends/fs/posix/posix-fs.h1
-rw-r--r--backends/fs/ps2/ps2-fs-factory.cpp1
-rw-r--r--backends/fs/ps2/ps2-fs-factory.h1
-rw-r--r--backends/fs/ps2/ps2-fs.cpp1
-rw-r--r--backends/fs/ps2/ps2-fs.h1
-rw-r--r--backends/fs/ps3/ps3-fs-factory.cpp1
-rw-r--r--backends/fs/ps3/ps3-fs-factory.h1
-rw-r--r--backends/fs/psp/psp-fs-factory.cpp1
-rw-r--r--backends/fs/psp/psp-fs-factory.h1
-rw-r--r--backends/fs/psp/psp-fs.cpp1
-rw-r--r--backends/fs/psp/psp-fs.h1
-rw-r--r--backends/fs/psp/psp-stream.cpp4
-rw-r--r--backends/fs/psp/psp-stream.h4
-rw-r--r--backends/fs/stdiostream.cpp4
-rw-r--r--backends/fs/stdiostream.h4
-rw-r--r--backends/fs/symbian/symbian-fs-factory.cpp1
-rw-r--r--backends/fs/symbian/symbian-fs-factory.h1
-rw-r--r--backends/fs/symbian/symbian-fs.cpp1
-rw-r--r--backends/fs/symbian/symbian-fs.h1
-rw-r--r--backends/fs/symbian/symbianstream.cpp4
-rw-r--r--backends/fs/symbian/symbianstream.h4
-rw-r--r--backends/fs/wii/wii-fs-factory.cpp11
-rw-r--r--backends/fs/wii/wii-fs.h1
-rw-r--r--backends/fs/windows/windows-fs-factory.cpp1
-rw-r--r--backends/fs/windows/windows-fs-factory.h1
-rw-r--r--backends/fs/windows/windows-fs.cpp1
-rw-r--r--backends/fs/windows/windows-fs.h1
-rw-r--r--backends/graphics/default-palette.h4
-rw-r--r--backends/graphics/dinguxsdl/dinguxsdl-graphics.cpp4
-rw-r--r--backends/graphics/dinguxsdl/dinguxsdl-graphics.h4
-rw-r--r--backends/graphics/gph/gph-graphics.cpp4
-rw-r--r--backends/graphics/gph/gph-graphics.h4
-rw-r--r--backends/graphics/graphics.h4
-rw-r--r--backends/graphics/linuxmotosdl/linuxmotosdl-graphics.cpp4
-rw-r--r--backends/graphics/linuxmotosdl/linuxmotosdl-graphics.h4
-rw-r--r--backends/graphics/maemosdl/maemosdl-graphics.cpp4
-rw-r--r--backends/graphics/maemosdl/maemosdl-graphics.h4
-rw-r--r--backends/graphics/null/null-graphics.h4
-rw-r--r--backends/graphics/opengl/opengl-graphics.cpp153
-rw-r--r--backends/graphics/opengl/opengl-graphics.h35
-rw-r--r--backends/graphics/opengl/texture.cpp17
-rw-r--r--backends/graphics/opengl/texture.h2
-rw-r--r--backends/graphics/openglsdl/openglsdl-graphics.cpp39
-rw-r--r--backends/graphics/openpandora/op-graphics.cpp4
-rw-r--r--backends/graphics/openpandora/op-graphics.h4
-rw-r--r--backends/graphics/samsungtvsdl/samsungtvsdl-graphics.cpp4
-rw-r--r--backends/graphics/samsungtvsdl/samsungtvsdl-graphics.h4
-rw-r--r--backends/graphics/sdl/sdl-graphics.cpp4
-rw-r--r--backends/graphics/sdl/sdl-graphics.h4
-rw-r--r--backends/graphics/surfacesdl/surfacesdl-graphics.cpp4
-rw-r--r--backends/graphics/surfacesdl/surfacesdl-graphics.h4
-rw-r--r--backends/graphics/symbiansdl/symbiansdl-graphics.cpp4
-rw-r--r--backends/graphics/symbiansdl/symbiansdl-graphics.h4
-rw-r--r--backends/graphics/wincesdl/wincesdl-graphics.cpp4
-rw-r--r--backends/graphics/wincesdl/wincesdl-graphics.h4
-rw-r--r--backends/keymapper/action.cpp40
-rw-r--r--backends/keymapper/action.h40
-rw-r--r--backends/keymapper/hardware-input.cpp40
-rw-r--r--backends/keymapper/hardware-input.h40
-rw-r--r--backends/keymapper/keymap.cpp40
-rw-r--r--backends/keymapper/keymap.h40
-rw-r--r--backends/keymapper/keymapper-defaults.h40
-rw-r--r--backends/keymapper/keymapper.cpp40
-rw-r--r--backends/keymapper/keymapper.h40
-rw-r--r--backends/keymapper/remap-dialog.cpp7
-rw-r--r--backends/keymapper/remap-dialog.h1
-rw-r--r--backends/midi/alsa.cpp1
-rw-r--r--backends/midi/camd.cpp11
-rw-r--r--backends/midi/coreaudio.cpp1
-rw-r--r--backends/midi/coremidi.cpp1
-rw-r--r--backends/midi/dmedia.cpp1
-rw-r--r--backends/midi/seq.cpp1
-rw-r--r--backends/midi/sndio.cpp1
-rw-r--r--backends/midi/stmidi.cpp1
-rw-r--r--backends/midi/timidity.cpp1
-rw-r--r--backends/midi/windows.cpp1
-rw-r--r--backends/mixer/doublebuffersdl/doublebuffersdl-mixer.cpp4
-rw-r--r--backends/mixer/doublebuffersdl/doublebuffersdl-mixer.h4
-rw-r--r--backends/mixer/nullmixer/nullsdl-mixer.cpp4
-rw-r--r--backends/mixer/nullmixer/nullsdl-mixer.h4
-rw-r--r--backends/mixer/sdl/sdl-mixer.cpp10
-rw-r--r--backends/mixer/sdl/sdl-mixer.h4
-rw-r--r--backends/mixer/sdl13/sdl13-mixer.cpp4
-rw-r--r--backends/mixer/sdl13/sdl13-mixer.h4
-rw-r--r--backends/mixer/symbiansdl/symbiansdl-mixer.cpp4
-rw-r--r--backends/mixer/symbiansdl/symbiansdl-mixer.h4
-rw-r--r--backends/mixer/wincesdl/wincesdl-mixer.cpp4
-rw-r--r--backends/mixer/wincesdl/wincesdl-mixer.h4
-rw-r--r--backends/modular-backend.cpp4
-rw-r--r--backends/modular-backend.h4
-rw-r--r--backends/module.mk3
-rw-r--r--backends/mutex/mutex.h4
-rw-r--r--backends/mutex/null/null-mutex.h4
-rw-r--r--backends/mutex/sdl/sdl-mutex.cpp4
-rw-r--r--backends/mutex/sdl/sdl-mutex.h4
-rw-r--r--backends/platform/android/android.cpp6
-rw-r--r--backends/platform/android/android.h6
-rw-r--r--backends/platform/android/android.mk1
-rw-r--r--backends/platform/android/asset-archive.cpp4
-rw-r--r--backends/platform/android/asset-archive.h4
-rw-r--r--backends/platform/android/events.cpp6
-rw-r--r--backends/platform/android/gfx.cpp10
-rw-r--r--backends/platform/android/jni.cpp6
-rw-r--r--backends/platform/android/jni.h6
-rw-r--r--backends/platform/android/org/scummvm/scummvm/ScummVM.java8
-rw-r--r--backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java10
-rw-r--r--backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java10
-rw-r--r--backends/platform/android/org/scummvm/scummvm/ScummVMEventsHoneycomb.java25
-rw-r--r--backends/platform/android/texture.cpp6
-rw-r--r--backends/platform/android/texture.h4
-rw-r--r--backends/platform/dc/DCLauncherDialog.h4
-rw-r--r--backends/platform/dc/audio.cpp4
-rw-r--r--backends/platform/dc/dc-fs.cpp1
-rw-r--r--backends/platform/dc/dc.h4
-rw-r--r--backends/platform/dc/dcloader.cpp4
-rw-r--r--backends/platform/dc/dcloader.h4
-rw-r--r--backends/platform/dc/dcmain.cpp4
-rw-r--r--backends/platform/dc/display.cpp4
-rw-r--r--backends/platform/dc/icon.cpp4
-rw-r--r--backends/platform/dc/icon.h4
-rw-r--r--backends/platform/dc/input.cpp4
-rw-r--r--backends/platform/dc/label.cpp4
-rw-r--r--backends/platform/dc/label.h4
-rw-r--r--backends/platform/dc/plugins.cpp4
-rw-r--r--backends/platform/dc/portdefs.h4
-rw-r--r--backends/platform/dc/selector.cpp4
-rw-r--r--backends/platform/dc/softkbd.cpp4
-rw-r--r--backends/platform/dc/softkbd.h4
-rw-r--r--backends/platform/dc/time.cpp4
-rw-r--r--backends/platform/dc/vmsave.cpp4
-rw-r--r--backends/platform/dingux/dingux.cpp4
-rw-r--r--backends/platform/dingux/dingux.h4
-rw-r--r--backends/platform/dingux/main.cpp4
-rw-r--r--backends/platform/ds/arm7/source/main.cpp4
-rw-r--r--backends/platform/ds/arm9/source/blitters.cpp4
-rw-r--r--backends/platform/ds/arm9/source/blitters.h4
-rw-r--r--backends/platform/ds/arm9/source/cdaudio.cpp4
-rw-r--r--backends/platform/ds/arm9/source/cdaudio.h4
-rw-r--r--backends/platform/ds/arm9/source/dsmain.cpp4
-rw-r--r--backends/platform/ds/arm9/source/dsmain.h4
-rw-r--r--backends/platform/ds/arm9/source/dsoptions.cpp4
-rw-r--r--backends/platform/ds/arm9/source/dsoptions.h4
-rw-r--r--backends/platform/ds/arm9/source/gbampsave.cpp4
-rw-r--r--backends/platform/ds/arm9/source/gbampsave.h4
-rw-r--r--backends/platform/ds/arm9/source/keys.h4
-rw-r--r--backends/platform/ds/arm9/source/osystem_ds.cpp3
-rw-r--r--backends/platform/ds/arm9/source/osystem_ds.h4
-rw-r--r--backends/platform/ds/arm9/source/portdefs.h4
-rw-r--r--backends/platform/ds/arm9/source/scummhelp.cpp4
-rw-r--r--backends/platform/ds/arm9/source/scummhelp.h4
-rw-r--r--backends/platform/ds/arm9/source/touchkeyboard.cpp3
-rw-r--r--backends/platform/ds/arm9/source/touchkeyboard.h4
-rw-r--r--backends/platform/ds/arm9/source/wordcompletion.cpp4
-rw-r--r--backends/platform/ds/arm9/source/wordcompletion.h4
-rw-r--r--backends/platform/ds/arm9/source/zipreader.cpp4
-rw-r--r--backends/platform/ds/arm9/source/zipreader.h4
-rw-r--r--backends/platform/ds/commoninclude/NDS/scummvm_ipc.h1
-rw-r--r--backends/platform/gph/gph-backend.cpp4
-rw-r--r--backends/platform/gph/gph-hw.cpp4
-rw-r--r--backends/platform/gph/gph-hw.h4
-rw-r--r--backends/platform/gph/gph-main.cpp4
-rw-r--r--backends/platform/gph/gph.h4
-rw-r--r--backends/platform/iphone/iphone_common.h4
-rw-r--r--backends/platform/iphone/iphone_keyboard.h4
-rw-r--r--backends/platform/iphone/iphone_keyboard.mm4
-rw-r--r--backends/platform/iphone/iphone_main.mm4
-rw-r--r--backends/platform/iphone/iphone_video.h4
-rw-r--r--backends/platform/iphone/iphone_video.mm4
-rw-r--r--backends/platform/iphone/osys_events.cpp4
-rw-r--r--backends/platform/iphone/osys_main.cpp4
-rw-r--r--backends/platform/iphone/osys_main.h4
-rw-r--r--backends/platform/iphone/osys_sound.cpp4
-rw-r--r--backends/platform/iphone/osys_video.mm4
-rw-r--r--backends/platform/linuxmoto/hardwarekeys.cpp4
-rw-r--r--backends/platform/linuxmoto/linuxmoto-main.cpp4
-rw-r--r--backends/platform/linuxmoto/linuxmoto-sdl.cpp4
-rw-r--r--backends/platform/linuxmoto/linuxmoto-sdl.h4
-rw-r--r--backends/platform/maemo/maemo-common.h4
-rw-r--r--backends/platform/maemo/maemo.cpp4
-rw-r--r--backends/platform/maemo/maemo.h4
-rw-r--r--backends/platform/maemo/main.cpp4
-rw-r--r--backends/platform/n64/framfs_save_manager.cpp4
-rw-r--r--backends/platform/n64/framfs_save_manager.h4
-rw-r--r--backends/platform/n64/nintendo64.cpp4
-rw-r--r--backends/platform/n64/osys_n64.h4
-rw-r--r--backends/platform/n64/osys_n64_base.cpp4
-rw-r--r--backends/platform/n64/osys_n64_events.cpp4
-rw-r--r--backends/platform/n64/osys_n64_utilities.cpp4
-rw-r--r--backends/platform/n64/pakfs_save_manager.cpp4
-rw-r--r--backends/platform/n64/pakfs_save_manager.h4
-rw-r--r--backends/platform/n64/portdefs.h4
-rw-r--r--backends/platform/null/null.cpp4
-rw-r--r--backends/platform/openpandora/op-backend.cpp4
-rw-r--r--backends/platform/openpandora/op-main.cpp4
-rw-r--r--backends/platform/openpandora/op-options.cpp4
-rw-r--r--backends/platform/openpandora/op-options.h4
-rw-r--r--backends/platform/openpandora/op-sdl.h4
-rw-r--r--backends/platform/ps2/DmaPipe.cpp4
-rw-r--r--backends/platform/ps2/DmaPipe.h4
-rw-r--r--backends/platform/ps2/Gs2dScreen.cpp4
-rw-r--r--backends/platform/ps2/Gs2dScreen.h4
-rw-r--r--backends/platform/ps2/GsDefs.h4
-rw-r--r--backends/platform/ps2/asyncfio.cpp4
-rw-r--r--backends/platform/ps2/asyncfio.h4
-rw-r--r--backends/platform/ps2/eecodyvdfs.h4
-rw-r--r--backends/platform/ps2/fileio.cpp4
-rw-r--r--backends/platform/ps2/fileio.h4
-rw-r--r--backends/platform/ps2/icon.cpp4
-rw-r--r--backends/platform/ps2/icon.h4
-rw-r--r--backends/platform/ps2/iop/CoDyVDfs/common/codyvdirx.h4
-rw-r--r--backends/platform/ps2/iop/CoDyVDfs/iop/cdtypes.h4
-rw-r--r--backends/platform/ps2/iop/CoDyVDfs/iop/codyvdfs.h4
-rw-r--r--backends/platform/ps2/iop/CoDyVDfs/iop/fiofs.h4
-rw-r--r--backends/platform/ps2/iop/CoDyVDfs/iop/irx_imports.h4
-rw-r--r--backends/platform/ps2/iop/rpckbd/src/irx_imports.h4
-rw-r--r--backends/platform/ps2/irxboot.cpp4
-rw-r--r--backends/platform/ps2/irxboot.h4
-rw-r--r--backends/platform/ps2/ps2debug.cpp4
-rw-r--r--backends/platform/ps2/ps2debug.h4
-rw-r--r--backends/platform/ps2/ps2input.cpp4
-rw-r--r--backends/platform/ps2/ps2input.h4
-rw-r--r--backends/platform/ps2/ps2mutex.cpp4
-rw-r--r--backends/platform/ps2/ps2pad.cpp4
-rw-r--r--backends/platform/ps2/ps2pad.h4
-rw-r--r--backends/platform/ps2/ps2temp.h4
-rw-r--r--backends/platform/ps2/ps2time.cpp4
-rw-r--r--backends/platform/ps2/rpckbd.h4
-rw-r--r--backends/platform/ps2/savefilemgr.cpp4
-rw-r--r--backends/platform/ps2/savefilemgr.h4
-rw-r--r--backends/platform/ps2/sysdefs.h4
-rw-r--r--backends/platform/ps2/systemps2.cpp4
-rw-r--r--backends/platform/ps2/systemps2.h4
-rw-r--r--backends/platform/psp/audio.cpp4
-rw-r--r--backends/platform/psp/audio.h4
-rw-r--r--backends/platform/psp/cursor.cpp4
-rw-r--r--backends/platform/psp/cursor.h4
-rw-r--r--backends/platform/psp/default_display_client.cpp4
-rw-r--r--backends/platform/psp/default_display_client.h4
-rw-r--r--backends/platform/psp/display_client.cpp4
-rw-r--r--backends/platform/psp/display_client.h4
-rw-r--r--backends/platform/psp/display_manager.cpp4
-rw-r--r--backends/platform/psp/display_manager.h4
-rw-r--r--backends/platform/psp/dummy.cpp4
-rw-r--r--backends/platform/psp/image_viewer.cpp4
-rw-r--r--backends/platform/psp/image_viewer.h4
-rw-r--r--backends/platform/psp/input.cpp4
-rw-r--r--backends/platform/psp/input.h4
-rw-r--r--backends/platform/psp/memory.cpp4
-rw-r--r--backends/platform/psp/memory.h4
-rw-r--r--backends/platform/psp/mp3.cpp4
-rw-r--r--backends/platform/psp/mp3.h4
-rw-r--r--backends/platform/psp/osys_psp.cpp4
-rw-r--r--backends/platform/psp/osys_psp.h4
-rw-r--r--backends/platform/psp/png_loader.cpp4
-rw-r--r--backends/platform/psp/png_loader.h4
-rw-r--r--backends/platform/psp/portdefs.h4
-rw-r--r--backends/platform/psp/powerman.cpp4
-rw-r--r--backends/platform/psp/powerman.h4
-rw-r--r--backends/platform/psp/psp_main.cpp4
-rw-r--r--backends/platform/psp/pspkeyboard.cpp4
-rw-r--r--backends/platform/psp/pspkeyboard.h4
-rw-r--r--backends/platform/psp/psppixelformat.cpp4
-rw-r--r--backends/platform/psp/psppixelformat.h4
-rw-r--r--backends/platform/psp/rtc.cpp4
-rw-r--r--backends/platform/psp/rtc.h4
-rw-r--r--backends/platform/psp/tests.cpp4
-rw-r--r--backends/platform/psp/tests.h4
-rw-r--r--backends/platform/psp/thread.cpp4
-rw-r--r--backends/platform/psp/thread.h4
-rw-r--r--backends/platform/psp/trace.cpp4
-rw-r--r--backends/platform/psp/trace.h4
-rw-r--r--backends/platform/samsungtv/main.cpp4
-rw-r--r--backends/platform/samsungtv/samsungtv.cpp4
-rw-r--r--backends/platform/samsungtv/samsungtv.h4
-rw-r--r--backends/platform/sdl/amigaos/amigaos-main.cpp4
-rw-r--r--backends/platform/sdl/amigaos/amigaos.cpp4
-rw-r--r--backends/platform/sdl/amigaos/amigaos.h4
-rw-r--r--backends/platform/sdl/macosx/appmenu_osx.h4
-rw-r--r--backends/platform/sdl/macosx/appmenu_osx.mm4
-rw-r--r--backends/platform/sdl/macosx/macosx-main.cpp4
-rw-r--r--backends/platform/sdl/macosx/macosx.cpp15
-rw-r--r--backends/platform/sdl/macosx/macosx.h5
-rw-r--r--backends/platform/sdl/posix/posix-main.cpp4
-rw-r--r--backends/platform/sdl/posix/posix.cpp4
-rw-r--r--backends/platform/sdl/posix/posix.h4
-rw-r--r--backends/platform/sdl/ps3/ps3-main.cpp4
-rw-r--r--backends/platform/sdl/ps3/ps3.cpp4
-rw-r--r--backends/platform/sdl/ps3/ps3.h4
-rw-r--r--backends/platform/sdl/sdl-sys.h4
-rw-r--r--backends/platform/sdl/sdl.cpp12
-rw-r--r--backends/platform/sdl/sdl.h4
-rw-r--r--backends/platform/sdl/win32/win32-main.cpp4
-rw-r--r--backends/platform/sdl/win32/win32.cpp4
-rw-r--r--backends/platform/sdl/win32/win32.h4
-rw-r--r--backends/platform/symbian/src/ScummApp.cpp1
-rw-r--r--backends/platform/symbian/src/ScummApp.h1
-rw-r--r--backends/platform/symbian/src/SymbianActions.cpp4
-rw-r--r--backends/platform/symbian/src/SymbianActions.h4
-rw-r--r--backends/platform/symbian/src/SymbianMain.cpp4
-rw-r--r--backends/platform/symbian/src/SymbianOS.cpp1
-rw-r--r--backends/platform/symbian/src/SymbianOS.h1
-rw-r--r--backends/platform/symbian/src/portdefs.h1
-rw-r--r--backends/platform/tizen/application.cpp2
-rw-r--r--backends/platform/tizen/application.h2
-rw-r--r--backends/platform/tizen/audio.cpp2
-rw-r--r--backends/platform/tizen/audio.h2
-rw-r--r--backends/platform/tizen/form.cpp2
-rw-r--r--backends/platform/tizen/form.h2
-rw-r--r--backends/platform/tizen/fs.cpp3
-rw-r--r--backends/platform/tizen/fs.h3
-rw-r--r--backends/platform/tizen/graphics.cpp5
-rw-r--r--backends/platform/tizen/graphics.h2
-rw-r--r--backends/platform/tizen/main.cpp2
-rw-r--r--backends/platform/tizen/missing.cpp2
-rw-r--r--backends/platform/tizen/portdefs.h2
-rw-r--r--backends/platform/tizen/sscanf.cpp2
-rw-r--r--backends/platform/tizen/system.cpp6
-rw-r--r--backends/platform/tizen/system.h4
-rw-r--r--backends/platform/webos/main.cpp4
-rw-r--r--backends/platform/webos/webos.cpp4
-rw-r--r--backends/platform/webos/webos.h4
-rw-r--r--backends/platform/wii/main.cpp5
-rw-r--r--backends/platform/wii/options.cpp2
-rw-r--r--backends/platform/wii/options.h2
-rw-r--r--backends/platform/wii/osystem.cpp5
-rw-r--r--backends/platform/wii/osystem.h5
-rw-r--r--backends/platform/wii/osystem_events.cpp5
-rw-r--r--backends/platform/wii/osystem_gfx.cpp9
-rw-r--r--backends/platform/wii/osystem_sfx.cpp5
-rw-r--r--backends/platform/wince/CEActionsPocket.cpp4
-rw-r--r--backends/platform/wince/CEActionsPocket.h4
-rw-r--r--backends/platform/wince/CEActionsSmartphone.cpp4
-rw-r--r--backends/platform/wince/CEActionsSmartphone.h4
-rw-r--r--backends/platform/wince/CEDevice.cpp4
-rw-r--r--backends/platform/wince/CEDevice.h4
-rw-r--r--backends/platform/wince/CEException.cpp4
-rw-r--r--backends/platform/wince/CEException.h4
-rw-r--r--backends/platform/wince/CELauncherDialog.cpp4
-rw-r--r--backends/platform/wince/CELauncherDialog.h4
-rw-r--r--backends/platform/wince/CEScaler.cpp4
-rw-r--r--backends/platform/wince/CEScaler.h4
-rw-r--r--backends/platform/wince/CEgui/CEGUI.h4
-rw-r--r--backends/platform/wince/CEgui/GUIElement.cpp4
-rw-r--r--backends/platform/wince/CEgui/GUIElement.h4
-rw-r--r--backends/platform/wince/CEgui/ItemAction.cpp4
-rw-r--r--backends/platform/wince/CEgui/ItemAction.h4
-rw-r--r--backends/platform/wince/CEgui/ItemSwitch.cpp4
-rw-r--r--backends/platform/wince/CEgui/ItemSwitch.h4
-rw-r--r--backends/platform/wince/CEgui/Panel.cpp4
-rw-r--r--backends/platform/wince/CEgui/Panel.h4
-rw-r--r--backends/platform/wince/CEgui/PanelItem.cpp4
-rw-r--r--backends/platform/wince/CEgui/PanelItem.h4
-rw-r--r--backends/platform/wince/CEgui/PanelKeyboard.cpp4
-rw-r--r--backends/platform/wince/CEgui/PanelKeyboard.h4
-rw-r--r--backends/platform/wince/CEgui/SDL_ImageResource.cpp4
-rw-r--r--backends/platform/wince/CEgui/SDL_ImageResource.h4
-rw-r--r--backends/platform/wince/CEgui/Toolbar.cpp4
-rw-r--r--backends/platform/wince/CEgui/Toolbar.h4
-rw-r--r--backends/platform/wince/CEgui/ToolbarHandler.cpp4
-rw-r--r--backends/platform/wince/CEgui/ToolbarHandler.h4
-rw-r--r--backends/platform/wince/CEkeys/CEKeys.h4
-rw-r--r--backends/platform/wince/CEkeys/EventsBuffer.cpp4
-rw-r--r--backends/platform/wince/CEkeys/EventsBuffer.h4
-rw-r--r--backends/platform/wince/missing/missing.cpp4
-rw-r--r--backends/platform/wince/portdefs.h4
-rw-r--r--backends/platform/wince/stub.cpp4
-rw-r--r--backends/platform/wince/wince-sdl.cpp4
-rw-r--r--backends/platform/wince/wince-sdl.h4
-rw-r--r--backends/plugins/ds/ds-provider.cpp4
-rw-r--r--backends/plugins/ds/ds-provider.h4
-rw-r--r--backends/plugins/dynamic-plugin.h4
-rw-r--r--backends/plugins/elf/arm-loader.cpp4
-rw-r--r--backends/plugins/elf/arm-loader.h4
-rw-r--r--backends/plugins/elf/elf-loader.cpp4
-rw-r--r--backends/plugins/elf/elf-loader.h4
-rw-r--r--backends/plugins/elf/elf-provider.cpp4
-rw-r--r--backends/plugins/elf/elf-provider.h4
-rw-r--r--backends/plugins/elf/elf32.h4
-rw-r--r--backends/plugins/elf/memory-manager.cpp4
-rw-r--r--backends/plugins/elf/memory-manager.h4
-rw-r--r--backends/plugins/elf/mips-loader.cpp4
-rw-r--r--backends/plugins/elf/mips-loader.h4
-rw-r--r--backends/plugins/elf/ppc-loader.cpp4
-rw-r--r--backends/plugins/elf/ppc-loader.h4
-rw-r--r--backends/plugins/elf/shorts-segment-manager.cpp4
-rw-r--r--backends/plugins/elf/shorts-segment-manager.h4
-rw-r--r--backends/plugins/elf/version.cpp4
-rw-r--r--backends/plugins/elf/version.h1
-rw-r--r--backends/plugins/posix/posix-provider.cpp4
-rw-r--r--backends/plugins/posix/posix-provider.h4
-rw-r--r--backends/plugins/ps2/ps2-provider.cpp4
-rw-r--r--backends/plugins/ps2/ps2-provider.h4
-rw-r--r--backends/plugins/psp/psp-provider.cpp4
-rw-r--r--backends/plugins/psp/psp-provider.h4
-rw-r--r--backends/plugins/sdl/sdl-provider.cpp4
-rw-r--r--backends/plugins/sdl/sdl-provider.h4
-rw-r--r--backends/plugins/wii/wii-provider.cpp4
-rw-r--r--backends/plugins/wii/wii-provider.h4
-rw-r--r--backends/plugins/win32/win32-provider.cpp4
-rw-r--r--backends/plugins/win32/win32-provider.h4
-rw-r--r--backends/saves/default/default-saves.cpp4
-rw-r--r--backends/saves/default/default-saves.h4
-rw-r--r--backends/saves/posix/posix-saves.cpp4
-rw-r--r--backends/saves/posix/posix-saves.h4
-rw-r--r--backends/saves/psp/psp-saves.cpp4
-rw-r--r--backends/saves/psp/psp-saves.h4
-rw-r--r--backends/saves/recorder/recorder-saves.cpp4
-rw-r--r--backends/saves/recorder/recorder-saves.h4
-rw-r--r--backends/saves/savefile.cpp4
-rw-r--r--backends/saves/windows/windows-saves.cpp4
-rw-r--r--backends/saves/windows/windows-saves.h4
-rw-r--r--backends/taskbar/macosx/macosx-taskbar.h57
-rw-r--r--backends/taskbar/macosx/macosx-taskbar.mm238
-rw-r--r--backends/timer/default/default-timer.cpp1
-rw-r--r--backends/timer/default/default-timer.h1
-rw-r--r--backends/timer/psp/timer.cpp4
-rw-r--r--backends/timer/psp/timer.h4
-rw-r--r--backends/timer/sdl/sdl-timer.cpp4
-rw-r--r--backends/timer/sdl/sdl-timer.h4
-rw-r--r--backends/timer/tizen/timer.cpp2
-rw-r--r--backends/timer/tizen/timer.h2
-rw-r--r--backends/updates/macosx/macosx-updates.h4
-rw-r--r--backends/updates/macosx/macosx-updates.mm4
-rw-r--r--backends/vkeybd/virtual-keyboard-gui.cpp40
-rw-r--r--backends/vkeybd/virtual-keyboard-gui.h40
-rw-r--r--backends/vkeybd/virtual-keyboard-parser.cpp4
-rw-r--r--base/commandLine.cpp4
-rw-r--r--base/commandLine.h4
-rw-r--r--base/main.cpp4
-rw-r--r--base/main.h4
-rw-r--r--base/plugins.cpp6
-rw-r--r--base/plugins.h4
-rw-r--r--base/version.cpp4
-rw-r--r--base/version.h1
-rw-r--r--common/EventDispatcher.cpp4
-rw-r--r--common/EventMapper.cpp10
-rw-r--r--common/algorithm.h1
-rw-r--r--common/archive.cpp4
-rw-r--r--common/archive.h4
-rw-r--r--common/array.h1
-rw-r--r--common/bitstream.h4
-rw-r--r--common/bufferedstream.h4
-rw-r--r--common/c++11-compat.h4
-rw-r--r--common/config-manager.cpp4
-rw-r--r--common/config-manager.h4
-rw-r--r--common/coroutines.cpp1
-rw-r--r--common/coroutines.h1
-rw-r--r--common/cosinetables.cpp4
-rw-r--r--common/cosinetables.h4
-rw-r--r--common/dcl.cpp4
-rw-r--r--common/dcl.h4
-rw-r--r--common/dct.cpp4
-rw-r--r--common/dct.h4
-rw-r--r--common/debug-channels.h1
-rw-r--r--common/debug.cpp1
-rw-r--r--common/debug.h1
-rw-r--r--common/endian.h4
-rw-r--r--common/error.cpp4
-rw-r--r--common/error.h4
-rw-r--r--common/events.h4
-rw-r--r--common/fft.cpp4
-rw-r--r--common/fft.h4
-rw-r--r--common/file.cpp4
-rw-r--r--common/file.h4
-rw-r--r--common/forbidden.h4
-rw-r--r--common/frac.h4
-rw-r--r--common/fs.cpp1
-rw-r--r--common/fs.h1
-rw-r--r--common/func.h1
-rw-r--r--common/gui_options.cpp4
-rw-r--r--common/gui_options.h4
-rw-r--r--common/hash-str.h1
-rw-r--r--common/hashmap.cpp4
-rw-r--r--common/hashmap.h4
-rw-r--r--common/huffman.cpp4
-rw-r--r--common/huffman.h4
-rw-r--r--common/iff_container.cpp4
-rw-r--r--common/iff_container.h1
-rw-r--r--common/ini-file.cpp4
-rw-r--r--common/ini-file.h4
-rw-r--r--common/installshield_cab.cpp4
-rw-r--r--common/installshield_cab.h4
-rw-r--r--common/keyboard.h4
-rw-r--r--common/language.cpp1
-rw-r--r--common/language.h1
-rw-r--r--common/list.h1
-rw-r--r--common/list_intern.h1
-rw-r--r--common/localization.cpp1
-rw-r--r--common/localization.h1
-rw-r--r--common/macresman.cpp4
-rw-r--r--common/macresman.h4
-rw-r--r--common/math.h4
-rw-r--r--common/md5.cpp1
-rw-r--r--common/md5.h1
-rw-r--r--common/memory.h1
-rw-r--r--common/memorypool.cpp4
-rw-r--r--common/memorypool.h4
-rw-r--r--common/memstream.h4
-rw-r--r--common/mutex.cpp4
-rw-r--r--common/mutex.h4
-rw-r--r--common/noncopyable.h4
-rw-r--r--common/pack-end.h1
-rw-r--r--common/pack-start.h1
-rw-r--r--common/platform.cpp1
-rw-r--r--common/platform.h1
-rw-r--r--common/ptr.h1
-rw-r--r--common/queue.h1
-rw-r--r--common/quicktime.cpp43
-rw-r--r--common/quicktime.h9
-rw-r--r--common/random.cpp1
-rw-r--r--common/random.h1
-rw-r--r--common/rational.cpp1
-rw-r--r--common/rational.h1
-rw-r--r--common/rdft.cpp4
-rw-r--r--common/rdft.h4
-rw-r--r--common/recorderfile.cpp4
-rw-r--r--common/recorderfile.h4
-rw-r--r--common/rect.h4
-rw-r--r--common/rendermode.cpp4
-rw-r--r--common/rendermode.h4
-rw-r--r--common/savefile.h4
-rw-r--r--common/scummsys.h4
-rw-r--r--common/serializer.h4
-rw-r--r--common/sinetables.cpp4
-rw-r--r--common/sinetables.h4
-rw-r--r--common/singleton.h4
-rw-r--r--common/stack.h1
-rw-r--r--common/str-array.h4
-rw-r--r--common/str.cpp1
-rw-r--r--common/str.h1
-rw-r--r--common/stream.cpp4
-rw-r--r--common/stream.h4
-rw-r--r--common/substream.h4
-rw-r--r--common/system.cpp4
-rw-r--r--common/system.h4
-rw-r--r--common/textconsole.cpp1
-rw-r--r--common/textconsole.h1
-rw-r--r--common/timer.h1
-rw-r--r--common/tokenizer.cpp1
-rw-r--r--common/tokenizer.h1
-rw-r--r--common/translation.cpp1
-rw-r--r--common/translation.h1
-rw-r--r--common/types.h1
-rw-r--r--common/unzip.cpp1
-rw-r--r--common/unzip.h1
-rw-r--r--common/updates.h4
-rw-r--r--common/ustr.cpp1
-rw-r--r--common/ustr.h1
-rw-r--r--common/util.cpp1
-rw-r--r--common/util.h1
-rw-r--r--common/winexe.cpp4
-rw-r--r--common/winexe.h4
-rw-r--r--common/winexe_ne.cpp4
-rw-r--r--common/winexe_ne.h4
-rw-r--r--common/winexe_pe.cpp4
-rw-r--r--common/winexe_pe.h4
-rw-r--r--common/zlib.cpp16
-rw-r--r--common/zlib.h4
-rwxr-xr-xconfigure103
-rw-r--r--devtools/convbdf.cpp4
-rw-r--r--devtools/create_drascula/create_drascula.cpp4
-rw-r--r--devtools/create_drascula/create_drascula.h4
-rw-r--r--devtools/create_drascula/staticdata.h4
-rw-r--r--devtools/create_hugo/create_hugo.cpp4
-rw-r--r--devtools/create_hugo/create_hugo.h4
-rw-r--r--devtools/create_hugo/staticdata.h4
-rw-r--r--devtools/create_hugo/staticdisplay.h4
-rw-r--r--devtools/create_hugo/staticengine.h4
-rw-r--r--devtools/create_hugo/staticfont.h4
-rw-r--r--devtools/create_hugo/staticintro.h4
-rw-r--r--devtools/create_hugo/staticmouse.h4
-rw-r--r--devtools/create_hugo/staticparser.h4
-rw-r--r--devtools/create_hugo/staticutil.h4
-rw-r--r--devtools/create_kyradat/create_kyradat.cpp2969
-rw-r--r--devtools/create_kyradat/create_kyradat.h178
-rw-r--r--devtools/create_kyradat/extract.cpp1237
-rw-r--r--devtools/create_kyradat/extract.h78
-rw-r--r--devtools/create_kyradat/games.cpp289
-rw-r--r--devtools/create_kyradat/md5.cpp4
-rw-r--r--devtools/create_kyradat/md5.h4
-rw-r--r--devtools/create_kyradat/module.mk5
-rw-r--r--devtools/create_kyradat/pak.cpp4
-rw-r--r--devtools/create_kyradat/pak.h4
-rw-r--r--devtools/create_kyradat/resources.cpp1950
-rw-r--r--devtools/create_kyradat/resources.h45
-rw-r--r--devtools/create_kyradat/resources/eob1_dos.h1765
-rw-r--r--devtools/create_kyradat/resources/eob1_dos_english.h891
-rw-r--r--devtools/create_kyradat/resources/eob1_dos_german.h893
-rw-r--r--devtools/create_kyradat/resources/eob2_dos.h2501
-rw-r--r--devtools/create_kyradat/resources/eob2_dos_english.h1347
-rw-r--r--devtools/create_kyradat/resources/eob2_dos_german.h1414
-rw-r--r--devtools/create_kyradat/resources/hof_dos.h769
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cd.h1035
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cd_english.h128
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cd_french.h128
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cd_german.h128
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cd_italian.h128
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cd_russian.h128
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cddemo.h1035
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cddemo_english.h139
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cddemo_french.h139
-rw-r--r--devtools/create_kyradat/resources/hof_dos_cddemo_german.h139
-rw-r--r--devtools/create_kyradat/resources/hof_dos_demo.h77
-rw-r--r--devtools/create_kyradat/resources/hof_dos_english.h108
-rw-r--r--devtools/create_kyradat/resources/hof_dos_french.h108
-rw-r--r--devtools/create_kyradat/resources/hof_dos_german.h108
-rw-r--r--devtools/create_kyradat/resources/hof_dos_italian.h108
-rw-r--r--devtools/create_kyradat/resources/hof_dos_russian.h133
-rw-r--r--devtools/create_kyradat/resources/hof_fmtowns.h716
-rw-r--r--devtools/create_kyradat/resources/hof_fmtowns_english.h110
-rw-r--r--devtools/create_kyradat/resources/hof_fmtowns_japanese.h110
-rw-r--r--devtools/create_kyradat/resources/hof_pc98.h656
-rw-r--r--devtools/create_kyradat/resources/hof_pc98_english.h110
-rw-r--r--devtools/create_kyradat/resources/hof_pc98_japanese.h110
-rw-r--r--devtools/create_kyradat/resources/lok_amiga.h1763
-rw-r--r--devtools/create_kyradat/resources/lok_amiga_english.h497
-rw-r--r--devtools/create_kyradat/resources/lok_amiga_german.h492
-rw-r--r--devtools/create_kyradat/resources/lok_dos.h1925
-rw-r--r--devtools/create_kyradat/resources/lok_dos_cd.h1997
-rw-r--r--devtools/create_kyradat/resources/lok_dos_cd_english.h428
-rw-r--r--devtools/create_kyradat/resources/lok_dos_cd_french.h349
-rw-r--r--devtools/create_kyradat/resources/lok_dos_cd_german.h370
-rw-r--r--devtools/create_kyradat/resources/lok_dos_cd_italian.h346
-rw-r--r--devtools/create_kyradat/resources/lok_dos_cddemo.h593
-rw-r--r--devtools/create_kyradat/resources/lok_dos_cddemo_english.h56
-rw-r--r--devtools/create_kyradat/resources/lok_dos_demo.h112
-rw-r--r--devtools/create_kyradat/resources/lok_dos_demo_english.h37
-rw-r--r--devtools/create_kyradat/resources/lok_dos_english.h335
-rw-r--r--devtools/create_kyradat/resources/lok_dos_french.h341
-rw-r--r--devtools/create_kyradat/resources/lok_dos_german.h361
-rw-r--r--devtools/create_kyradat/resources/lok_dos_italian.h366
-rw-r--r--devtools/create_kyradat/resources/lok_dos_oldfloppy.h1911
-rw-r--r--devtools/create_kyradat/resources/lok_dos_oldfloppy_russian.h328
-rw-r--r--devtools/create_kyradat/resources/lok_dos_spanish.h333
-rw-r--r--devtools/create_kyradat/resources/lok_fmtowns.h11637
-rw-r--r--devtools/create_kyradat/resources/lok_fmtowns_english.h527
-rw-r--r--devtools/create_kyradat/resources/lok_fmtowns_japanese.h527
-rw-r--r--devtools/create_kyradat/resources/lok_pc98.h2000
-rw-r--r--devtools/create_kyradat/resources/lok_pc98_japanese.h558
-rw-r--r--devtools/create_kyradat/resources/lol_dos.h1558
-rw-r--r--devtools/create_kyradat/resources/lol_dos_cd.h1625
-rw-r--r--devtools/create_kyradat/resources/lol_dos_cd_english.h68
-rw-r--r--devtools/create_kyradat/resources/lol_dos_cd_french.h68
-rw-r--r--devtools/create_kyradat/resources/lol_dos_cd_german.h68
-rw-r--r--devtools/create_kyradat/resources/lol_dos_cd_italian.h68
-rw-r--r--devtools/create_kyradat/resources/lol_dos_cd_russian.h68
-rw-r--r--devtools/create_kyradat/resources/lol_dos_demo.h54
-rw-r--r--devtools/create_kyradat/resources/lol_dos_demo_english.h15
-rw-r--r--devtools/create_kyradat/resources/lol_dos_english.h68
-rw-r--r--devtools/create_kyradat/resources/lol_dos_french.h68
-rw-r--r--devtools/create_kyradat/resources/lol_dos_german.h68
-rw-r--r--devtools/create_kyradat/resources/lol_dos_russian.h68
-rw-r--r--devtools/create_kyradat/resources/lol_fmtowns.h1600
-rw-r--r--devtools/create_kyradat/resources/lol_fmtowns_japanese.h68
-rw-r--r--devtools/create_kyradat/resources/lol_pc98.h1598
-rw-r--r--devtools/create_kyradat/resources/lol_pc98_japanese.h68
-rw-r--r--devtools/create_kyradat/resources/mr_dos_cd.h556
-rw-r--r--devtools/create_kyradat/search.cpp215
-rw-r--r--devtools/create_kyradat/search.h116
-rw-r--r--devtools/create_kyradat/tables.cpp4479
-rw-r--r--devtools/create_kyradat/types.cpp663
-rw-r--r--devtools/create_kyradat/types.h238
-rw-r--r--devtools/create_kyradat/util.cpp4
-rw-r--r--devtools/create_kyradat/util.h4
-rw-r--r--devtools/create_lure/create_lure_dat.cpp8
-rw-r--r--devtools/create_lure/create_lure_dat.h4
-rw-r--r--devtools/create_lure/process_actions.cpp4
-rw-r--r--devtools/create_mortdat/create_mortdat.cpp4
-rw-r--r--devtools/create_mortdat/create_mortdat.h4
-rw-r--r--devtools/create_mortdat/enginetext.h4
-rw-r--r--devtools/create_mortdat/gametext.h4
-rw-r--r--devtools/create_mortdat/menudata.h4
-rw-r--r--devtools/create_neverhood/create_neverhood.cpp4
-rw-r--r--devtools/create_neverhood/create_neverhood.h4
-rw-r--r--devtools/create_neverhood/md5.cpp4
-rw-r--r--devtools/create_neverhood/md5.h4
-rw-r--r--devtools/create_neverhood/tables.h4
-rw-r--r--devtools/create_neverhood/util.cpp4
-rw-r--r--devtools/create_neverhood/util.h4
-rw-r--r--devtools/create_project/create_project.cpp1
-rw-r--r--devtools/create_teenagent/create_teenagent.cpp4
-rw-r--r--devtools/create_teenagent/static_tables.h4
-rw-r--r--devtools/create_teenagent/util.cpp4
-rw-r--r--devtools/create_teenagent/util.h4
-rw-r--r--devtools/create_tony/create_tony.cpp4
-rw-r--r--devtools/create_tony/create_tony.h4
-rw-r--r--devtools/create_tony/staticdata.h4
-rw-r--r--devtools/create_toon/create_toon.cpp4
-rw-r--r--devtools/create_toon/create_toon.h4
-rw-r--r--devtools/create_toon/staticdata.h4
-rw-r--r--devtools/create_translations/create_translations.cpp4
-rw-r--r--devtools/create_translations/create_translations.h4
-rw-r--r--devtools/create_translations/po_parser.cpp4
-rw-r--r--devtools/create_translations/po_parser.h4
-rw-r--r--devtools/extract_mort/extract_mort.cpp4
-rw-r--r--devtools/sci/musicplayer.cpp4
-rw-r--r--devtools/sci/scidisasm.cpp4
-rw-r--r--devtools/sci/scipack.cpp4
-rw-r--r--devtools/skycpt/AsciiCptCompile.cpp4
-rw-r--r--devtools/skycpt/KmpSearch.cpp4
-rw-r--r--devtools/skycpt/KmpSearch.h4
-rw-r--r--devtools/skycpt/TextFile.cpp4
-rw-r--r--devtools/skycpt/TextFile.h4
-rw-r--r--devtools/skycpt/cptcompiler.cpp4
-rw-r--r--devtools/skycpt/cpthelp.cpp4
-rw-r--r--devtools/skycpt/cpthelp.h4
-rw-r--r--devtools/skycpt/idFinder.cpp4
-rw-r--r--devtools/skycpt/stdafx.cpp4
-rw-r--r--devtools/skycpt/stdafx.h4
-rw-r--r--dists/engine-data/kyra.datbin486382 -> 485978 bytes
-rw-r--r--dists/engine-data/lure.datbin637824 -> 637824 bytes
-rw-r--r--doc/cz/PrectiMe3438
-rw-r--r--engines/advancedDetector.cpp4
-rw-r--r--engines/advancedDetector.h4
-rw-r--r--engines/agi/agi.cpp4
-rw-r--r--engines/agi/agi.h4
-rw-r--r--engines/agi/checks.cpp4
-rw-r--r--engines/agi/console.cpp4
-rw-r--r--engines/agi/console.h4
-rw-r--r--engines/agi/cycle.cpp4
-rw-r--r--engines/agi/detection.cpp4
-rw-r--r--engines/agi/detection_tables.h5
-rw-r--r--engines/agi/font.h4
-rw-r--r--engines/agi/global.cpp4
-rw-r--r--engines/agi/graphics.cpp4
-rw-r--r--engines/agi/graphics.h4
-rw-r--r--engines/agi/id.cpp4
-rw-r--r--engines/agi/inv.cpp4
-rw-r--r--engines/agi/keyboard.cpp4
-rw-r--r--engines/agi/keyboard.h4
-rw-r--r--engines/agi/loader_v1.cpp4
-rw-r--r--engines/agi/loader_v2.cpp4
-rw-r--r--engines/agi/loader_v3.cpp4
-rw-r--r--engines/agi/logic.cpp4
-rw-r--r--engines/agi/logic.h4
-rw-r--r--engines/agi/lzw.cpp4
-rw-r--r--engines/agi/lzw.h4
-rw-r--r--engines/agi/menu.cpp4
-rw-r--r--engines/agi/menu.h4
-rw-r--r--engines/agi/motion.cpp4
-rw-r--r--engines/agi/objects.cpp4
-rw-r--r--engines/agi/op_cmd.cpp4
-rw-r--r--engines/agi/op_dbg.cpp4
-rw-r--r--engines/agi/op_test.cpp4
-rw-r--r--engines/agi/opcodes.cpp4
-rw-r--r--engines/agi/opcodes.h4
-rw-r--r--engines/agi/picture.cpp4
-rw-r--r--engines/agi/picture.h4
-rw-r--r--engines/agi/preagi.cpp4
-rw-r--r--engines/agi/preagi.h4
-rw-r--r--engines/agi/preagi_mickey.cpp4
-rw-r--r--engines/agi/preagi_mickey.h4
-rw-r--r--engines/agi/preagi_troll.cpp4
-rw-r--r--engines/agi/preagi_troll.h4
-rw-r--r--engines/agi/preagi_winnie.cpp4
-rw-r--r--engines/agi/preagi_winnie.h4
-rw-r--r--engines/agi/saveload.cpp4
-rw-r--r--engines/agi/sound.cpp4
-rw-r--r--engines/agi/sound.h4
-rw-r--r--engines/agi/sound_2gs.cpp4
-rw-r--r--engines/agi/sound_2gs.h4
-rw-r--r--engines/agi/sound_coco3.cpp4
-rw-r--r--engines/agi/sound_coco3.h4
-rw-r--r--engines/agi/sound_midi.cpp4
-rw-r--r--engines/agi/sound_midi.h4
-rw-r--r--engines/agi/sound_pcjr.cpp4
-rw-r--r--engines/agi/sound_pcjr.h4
-rw-r--r--engines/agi/sound_sarien.cpp4
-rw-r--r--engines/agi/sound_sarien.h4
-rw-r--r--engines/agi/sprite.cpp4
-rw-r--r--engines/agi/sprite.h4
-rw-r--r--engines/agi/text.cpp4
-rw-r--r--engines/agi/view.cpp4
-rw-r--r--engines/agi/view.h4
-rw-r--r--engines/agi/wagparser.cpp4
-rw-r--r--engines/agi/wagparser.h4
-rw-r--r--engines/agi/words.cpp4
-rw-r--r--engines/agos/agos.cpp7
-rw-r--r--engines/agos/agos.h28
-rw-r--r--engines/agos/animation.cpp6
-rw-r--r--engines/agos/animation.h4
-rw-r--r--engines/agos/charset-fontdata.cpp4
-rw-r--r--engines/agos/charset.cpp4
-rw-r--r--engines/agos/contain.cpp4
-rw-r--r--engines/agos/cursor.cpp4
-rw-r--r--engines/agos/debug.cpp41
-rw-r--r--engines/agos/debug.h224
-rw-r--r--engines/agos/debugger.cpp4
-rw-r--r--engines/agos/debugger.h4
-rw-r--r--engines/agos/detection.cpp4
-rw-r--r--engines/agos/detection_tables.h8
-rw-r--r--engines/agos/draw.cpp4
-rw-r--r--engines/agos/event.cpp22
-rw-r--r--engines/agos/feeble.cpp4
-rw-r--r--engines/agos/gfx.cpp4
-rw-r--r--engines/agos/icons.cpp4
-rw-r--r--engines/agos/input.cpp113
-rw-r--r--engines/agos/input_pn.cpp4
-rw-r--r--engines/agos/intern.h25
-rw-r--r--engines/agos/items.cpp4
-rw-r--r--engines/agos/menus.cpp4
-rw-r--r--engines/agos/midi.cpp8
-rw-r--r--engines/agos/midi.h4
-rw-r--r--engines/agos/midiparser_s1d.cpp4
-rw-r--r--engines/agos/oracle.cpp8
-rw-r--r--engines/agos/pn.cpp4
-rw-r--r--engines/agos/res.cpp19
-rw-r--r--engines/agos/res_ami.cpp4
-rw-r--r--engines/agos/res_snd.cpp4
-rw-r--r--engines/agos/rooms.cpp4
-rw-r--r--engines/agos/saveload.cpp74
-rw-r--r--engines/agos/script.cpp6
-rw-r--r--engines/agos/script_dp.cpp4
-rw-r--r--engines/agos/script_e1.cpp4
-rw-r--r--engines/agos/script_e2.cpp4
-rw-r--r--engines/agos/script_ff.cpp73
-rw-r--r--engines/agos/script_pn.cpp4
-rw-r--r--engines/agos/script_pp.cpp4
-rw-r--r--engines/agos/script_s1.cpp4
-rw-r--r--engines/agos/script_s2.cpp4
-rw-r--r--engines/agos/script_ww.cpp4
-rw-r--r--engines/agos/sound.cpp20
-rw-r--r--engines/agos/sound.h4
-rw-r--r--engines/agos/string.cpp4
-rw-r--r--engines/agos/string_pn.cpp4
-rw-r--r--engines/agos/subroutine.cpp4
-rw-r--r--engines/agos/verb.cpp19
-rw-r--r--engines/agos/verb_pn.cpp4
-rw-r--r--engines/agos/vga.cpp4
-rw-r--r--engines/agos/vga.h4
-rw-r--r--engines/agos/vga_e2.cpp4
-rw-r--r--engines/agos/vga_ff.cpp4
-rw-r--r--engines/agos/vga_pn.cpp4
-rw-r--r--engines/agos/vga_s1.cpp4
-rw-r--r--engines/agos/vga_s2.cpp4
-rw-r--r--engines/agos/vga_ww.cpp4
-rw-r--r--engines/agos/window.cpp4
-rw-r--r--engines/agos/zones.cpp6
-rw-r--r--engines/avalanche/animation.cpp26
-rw-r--r--engines/avalanche/animation.h9
-rw-r--r--engines/avalanche/avalanche.cpp46
-rw-r--r--engines/avalanche/avalanche.h29
-rw-r--r--engines/avalanche/avalot.cpp92
-rw-r--r--engines/avalanche/avalot.h6
-rw-r--r--engines/avalanche/background.cpp24
-rw-r--r--engines/avalanche/background.h8
-rw-r--r--engines/avalanche/clock.cpp40
-rw-r--r--engines/avalanche/clock.h40
-rw-r--r--engines/avalanche/closing.cpp4
-rw-r--r--engines/avalanche/closing.h4
-rw-r--r--engines/avalanche/console.cpp6
-rw-r--r--engines/avalanche/console.h6
-rw-r--r--engines/avalanche/detection.cpp6
-rw-r--r--engines/avalanche/dialogs.cpp40
-rw-r--r--engines/avalanche/dialogs.h6
-rw-r--r--engines/avalanche/dropdown.cpp (renamed from engines/avalanche/menu.cpp)152
-rw-r--r--engines/avalanche/dropdown.h (renamed from engines/avalanche/menu.h)30
-rw-r--r--engines/avalanche/enums.h13
-rw-r--r--engines/avalanche/ghostroom.cpp395
-rw-r--r--engines/avalanche/ghostroom.h88
-rw-r--r--engines/avalanche/graphics.cpp465
-rw-r--r--engines/avalanche/graphics.h64
-rw-r--r--engines/avalanche/help.cpp270
-rw-r--r--engines/avalanche/help.h65
-rw-r--r--engines/avalanche/highscore.cpp110
-rw-r--r--engines/avalanche/highscore.h59
-rw-r--r--engines/avalanche/mainmenu.cpp116
-rw-r--r--engines/avalanche/mainmenu.h55
-rw-r--r--engines/avalanche/module.mk10
-rw-r--r--engines/avalanche/nim.cpp16
-rw-r--r--engines/avalanche/nim.h6
-rw-r--r--engines/avalanche/parser.cpp48
-rw-r--r--engines/avalanche/parser.h14
-rw-r--r--engines/avalanche/pingo.cpp94
-rw-r--r--engines/avalanche/sequence.cpp4
-rw-r--r--engines/avalanche/sequence.h4
-rw-r--r--engines/avalanche/shootemup.cpp693
-rw-r--r--engines/avalanche/shootemup.h134
-rw-r--r--engines/avalanche/sound.cpp5
-rw-r--r--engines/avalanche/sound.h4
-rw-r--r--engines/avalanche/timer.cpp77
-rw-r--r--engines/avalanche/timer.h6
-rw-r--r--engines/bbvs/bbvs.cpp1392
-rw-r--r--engines/bbvs/bbvs.h423
-rw-r--r--engines/bbvs/configure.engine3
-rw-r--r--engines/bbvs/detection.cpp162
-rw-r--r--engines/bbvs/dialogs.cpp182
-rw-r--r--engines/bbvs/dialogs.h81
-rw-r--r--engines/bbvs/gamemodule.cpp500
-rw-r--r--engines/bbvs/gamemodule.h251
-rw-r--r--engines/bbvs/graphics.cpp141
-rw-r--r--engines/bbvs/graphics.h61
-rw-r--r--engines/bbvs/logic.cpp265
-rw-r--r--engines/bbvs/minigames/bbairguitar.cpp1198
-rw-r--r--engines/bbvs/minigames/bbairguitar.h148
-rw-r--r--engines/bbvs/minigames/bbairguitar_anims.cpp186
-rw-r--r--engines/bbvs/minigames/bbant.cpp1317
-rw-r--r--engines/bbvs/minigames/bbant.h173
-rw-r--r--engines/bbvs/minigames/bbant_anims.cpp757
-rw-r--r--engines/bbvs/minigames/bbloogie.cpp1353
-rw-r--r--engines/bbvs/minigames/bbloogie.h141
-rw-r--r--engines/bbvs/minigames/bbloogie_anims.cpp138
-rw-r--r--engines/bbvs/minigames/bbtennis.cpp1274
-rw-r--r--engines/bbvs/minigames/bbtennis.h134
-rw-r--r--engines/bbvs/minigames/bbtennis_anims.cpp142
-rw-r--r--engines/bbvs/minigames/minigame.cpp112
-rw-r--r--engines/bbvs/minigames/minigame.h82
-rw-r--r--engines/bbvs/module.mk32
-rw-r--r--engines/bbvs/saveload.cpp278
-rw-r--r--engines/bbvs/scene.cpp227
-rw-r--r--engines/bbvs/sound.cpp107
-rw-r--r--engines/bbvs/sound.h63
-rw-r--r--engines/bbvs/spritemodule.cpp112
-rw-r--r--engines/bbvs/spritemodule.h68
-rw-r--r--engines/bbvs/videoplayer.cpp82
-rw-r--r--engines/bbvs/walk.cpp464
-rw-r--r--engines/cge/bitmap.cpp5
-rw-r--r--engines/cge/bitmap.h4
-rw-r--r--engines/cge/cge.cpp117
-rw-r--r--engines/cge/cge.h42
-rw-r--r--engines/cge/cge_main.cpp50
-rw-r--r--engines/cge/cge_main.h4
-rw-r--r--engines/cge/console.cpp4
-rw-r--r--engines/cge/console.h4
-rw-r--r--engines/cge/detection.cpp61
-rw-r--r--engines/cge/events.cpp4
-rw-r--r--engines/cge/events.h4
-rw-r--r--engines/cge/fileio.cpp12
-rw-r--r--engines/cge/fileio.h8
-rw-r--r--engines/cge/game.cpp4
-rw-r--r--engines/cge/game.h4
-rw-r--r--engines/cge/general.h4
-rw-r--r--engines/cge/module.mk2
-rw-r--r--engines/cge/snail.cpp7
-rw-r--r--engines/cge/snail.h4
-rw-r--r--engines/cge/sound.cpp5
-rw-r--r--engines/cge/sound.h4
-rw-r--r--engines/cge/talk.cpp4
-rw-r--r--engines/cge/talk.h4
-rw-r--r--engines/cge/text.cpp4
-rw-r--r--engines/cge/text.h4
-rw-r--r--engines/cge/vga13h.cpp15
-rw-r--r--engines/cge/vga13h.h4
-rw-r--r--engines/cge/vmenu.cpp4
-rw-r--r--engines/cge/vmenu.h4
-rw-r--r--engines/cge/walk.cpp4
-rw-r--r--engines/cge/walk.h4
-rw-r--r--engines/cine/anim.cpp6
-rw-r--r--engines/cine/anim.h4
-rw-r--r--engines/cine/bg.cpp8
-rw-r--r--engines/cine/bg.h4
-rw-r--r--engines/cine/bg_list.cpp4
-rw-r--r--engines/cine/bg_list.h4
-rw-r--r--engines/cine/cine.cpp12
-rw-r--r--engines/cine/cine.h4
-rw-r--r--engines/cine/console.cpp4
-rw-r--r--engines/cine/console.h4
-rw-r--r--engines/cine/detection.cpp4
-rw-r--r--engines/cine/detection_tables.h4
-rw-r--r--engines/cine/gfx.cpp37
-rw-r--r--engines/cine/gfx.h4
-rw-r--r--engines/cine/main_loop.cpp6
-rw-r--r--engines/cine/main_loop.h4
-rw-r--r--engines/cine/msg.cpp4
-rw-r--r--engines/cine/msg.h4
-rw-r--r--engines/cine/object.cpp4
-rw-r--r--engines/cine/object.h4
-rw-r--r--engines/cine/pal.cpp8
-rw-r--r--engines/cine/pal.h4
-rw-r--r--engines/cine/part.cpp6
-rw-r--r--engines/cine/part.h4
-rw-r--r--engines/cine/prc.cpp4
-rw-r--r--engines/cine/prc.h4
-rw-r--r--engines/cine/rel.cpp4
-rw-r--r--engines/cine/rel.h4
-rw-r--r--engines/cine/saveload.cpp4
-rw-r--r--engines/cine/saveload.h4
-rw-r--r--engines/cine/script.h4
-rw-r--r--engines/cine/script_fw.cpp12
-rw-r--r--engines/cine/script_os.cpp4
-rw-r--r--engines/cine/sound.cpp6
-rw-r--r--engines/cine/sound.h4
-rw-r--r--engines/cine/texte.cpp4
-rw-r--r--engines/cine/texte.h4
-rw-r--r--engines/cine/unpack.cpp4
-rw-r--r--engines/cine/unpack.h4
-rw-r--r--engines/cine/various.cpp118
-rw-r--r--engines/cine/various.h6
-rw-r--r--engines/composer/composer.cpp4
-rw-r--r--engines/composer/composer.h4
-rw-r--r--engines/composer/console.cpp4
-rw-r--r--engines/composer/console.h4
-rw-r--r--engines/composer/detection.cpp8
-rw-r--r--engines/composer/graphics.cpp4
-rw-r--r--engines/composer/graphics.h4
-rw-r--r--engines/composer/resource.cpp4
-rw-r--r--engines/composer/resource.h4
-rw-r--r--engines/composer/scripting.cpp4
-rw-r--r--engines/cruise/actor.cpp4
-rw-r--r--engines/cruise/actor.h4
-rw-r--r--engines/cruise/background.cpp4
-rw-r--r--engines/cruise/background.h4
-rw-r--r--engines/cruise/backgroundIncrust.cpp4
-rw-r--r--engines/cruise/backgroundIncrust.h4
-rw-r--r--engines/cruise/cell.cpp4
-rw-r--r--engines/cruise/cell.h4
-rw-r--r--engines/cruise/cruise.cpp4
-rw-r--r--engines/cruise/cruise.h4
-rw-r--r--engines/cruise/cruise_main.cpp4
-rw-r--r--engines/cruise/cruise_main.h4
-rw-r--r--engines/cruise/ctp.cpp4
-rw-r--r--engines/cruise/ctp.h4
-rw-r--r--engines/cruise/dataLoader.cpp4
-rw-r--r--engines/cruise/dataLoader.h4
-rw-r--r--engines/cruise/debugger.cpp4
-rw-r--r--engines/cruise/debugger.h4
-rw-r--r--engines/cruise/decompiler.cpp4
-rw-r--r--engines/cruise/delphine-unpack.cpp4
-rw-r--r--engines/cruise/detection.cpp8
-rw-r--r--engines/cruise/font.cpp6
-rw-r--r--engines/cruise/font.h4
-rw-r--r--engines/cruise/function.cpp6
-rw-r--r--engines/cruise/function.h4
-rw-r--r--engines/cruise/gfxModule.cpp4
-rw-r--r--engines/cruise/gfxModule.h4
-rw-r--r--engines/cruise/linker.cpp4
-rw-r--r--engines/cruise/linker.h4
-rw-r--r--engines/cruise/mainDraw.cpp4
-rw-r--r--engines/cruise/mainDraw.h4
-rw-r--r--engines/cruise/menu.cpp4
-rw-r--r--engines/cruise/menu.h4
-rw-r--r--engines/cruise/mouse.cpp4
-rw-r--r--engines/cruise/mouse.h4
-rw-r--r--engines/cruise/object.cpp4
-rw-r--r--engines/cruise/object.h4
-rw-r--r--engines/cruise/overlay.cpp4
-rw-r--r--engines/cruise/overlay.h4
-rw-r--r--engines/cruise/perso.cpp4
-rw-r--r--engines/cruise/perso.h4
-rw-r--r--engines/cruise/polys.cpp4
-rw-r--r--engines/cruise/polys.h4
-rw-r--r--engines/cruise/saveload.cpp27
-rw-r--r--engines/cruise/saveload.h4
-rw-r--r--engines/cruise/script.cpp4
-rw-r--r--engines/cruise/script.h4
-rw-r--r--engines/cruise/sound.cpp4
-rw-r--r--engines/cruise/sound.h4
-rw-r--r--engines/cruise/stack.cpp4
-rw-r--r--engines/cruise/stack.h4
-rw-r--r--engines/cruise/staticres.cpp4
-rw-r--r--engines/cruise/staticres.h4
-rw-r--r--engines/cruise/various.cpp4
-rw-r--r--engines/cruise/various.h4
-rw-r--r--engines/cruise/vars.cpp5
-rw-r--r--engines/cruise/vars.h5
-rw-r--r--engines/cruise/volume.cpp4
-rw-r--r--engines/cruise/volume.h4
-rw-r--r--engines/dialogs.cpp1
-rw-r--r--engines/dialogs.h1
-rw-r--r--engines/draci/animation.cpp4
-rw-r--r--engines/draci/animation.h4
-rw-r--r--engines/draci/barchive.cpp4
-rw-r--r--engines/draci/barchive.h4
-rw-r--r--engines/draci/console.cpp4
-rw-r--r--engines/draci/console.h4
-rw-r--r--engines/draci/detection.cpp4
-rw-r--r--engines/draci/draci.cpp4
-rw-r--r--engines/draci/draci.h4
-rw-r--r--engines/draci/font.cpp4
-rw-r--r--engines/draci/font.h4
-rw-r--r--engines/draci/game.cpp59
-rw-r--r--engines/draci/game.h12
-rw-r--r--engines/draci/module.mk8
-rw-r--r--engines/draci/mouse.cpp4
-rw-r--r--engines/draci/mouse.h4
-rw-r--r--engines/draci/music.cpp4
-rw-r--r--engines/draci/music.h4
-rw-r--r--engines/draci/saveload.cpp11
-rw-r--r--engines/draci/saveload.h6
-rw-r--r--engines/draci/screen.cpp4
-rw-r--r--engines/draci/screen.h4
-rw-r--r--engines/draci/script.cpp25
-rw-r--r--engines/draci/script.h4
-rw-r--r--engines/draci/sound.cpp4
-rw-r--r--engines/draci/sound.h4
-rw-r--r--engines/draci/sprite.cpp4
-rw-r--r--engines/draci/sprite.h4
-rw-r--r--engines/draci/surface.cpp4
-rw-r--r--engines/draci/surface.h4
-rw-r--r--engines/draci/walking.cpp4
-rw-r--r--engines/draci/walking.h6
-rw-r--r--engines/drascula/actors.cpp4
-rw-r--r--engines/drascula/animation.cpp4
-rw-r--r--engines/drascula/console.cpp4
-rw-r--r--engines/drascula/console.h4
-rw-r--r--engines/drascula/converse.cpp4
-rw-r--r--engines/drascula/detection.cpp4
-rw-r--r--engines/drascula/drascula.cpp4
-rw-r--r--engines/drascula/drascula.h4
-rw-r--r--engines/drascula/graphics.cpp4
-rw-r--r--engines/drascula/interface.cpp4
-rw-r--r--engines/drascula/objects.cpp4
-rw-r--r--engines/drascula/palette.cpp4
-rw-r--r--engines/drascula/resource.cpp4
-rw-r--r--engines/drascula/rooms.cpp4
-rw-r--r--engines/drascula/saveload.cpp4
-rw-r--r--engines/drascula/sound.cpp4
-rw-r--r--engines/drascula/talk.cpp4
-rw-r--r--engines/dreamweb/backdrop.cpp4
-rw-r--r--engines/dreamweb/console.cpp4
-rw-r--r--engines/dreamweb/console.h4
-rw-r--r--engines/dreamweb/detection.cpp4
-rw-r--r--engines/dreamweb/detection_tables.h4
-rw-r--r--engines/dreamweb/dreamweb.cpp6
-rw-r--r--engines/dreamweb/dreamweb.h12
-rw-r--r--engines/dreamweb/keypad.cpp4
-rw-r--r--engines/dreamweb/monitor.cpp4
-rw-r--r--engines/dreamweb/mouse.cpp4
-rw-r--r--engines/dreamweb/newplace.cpp12
-rw-r--r--engines/dreamweb/object.cpp4
-rw-r--r--engines/dreamweb/pathfind.cpp4
-rw-r--r--engines/dreamweb/people.cpp4
-rw-r--r--engines/dreamweb/print.cpp4
-rw-r--r--engines/dreamweb/rain.cpp4
-rw-r--r--engines/dreamweb/saveload.cpp4
-rw-r--r--engines/dreamweb/sound.cpp4
-rw-r--r--engines/dreamweb/sound.h4
-rw-r--r--engines/dreamweb/sprite.cpp4
-rw-r--r--engines/dreamweb/structs.h4
-rw-r--r--engines/dreamweb/stubs.cpp10
-rw-r--r--engines/dreamweb/talk.cpp4
-rw-r--r--engines/dreamweb/titles.cpp4
-rw-r--r--engines/dreamweb/use.cpp8
-rw-r--r--engines/dreamweb/vgafades.cpp32
-rw-r--r--engines/dreamweb/vgagrafx.cpp10
-rw-r--r--engines/engine.cpp1
-rw-r--r--engines/engine.h1
-rw-r--r--engines/fullpipe/behavior.cpp14
-rw-r--r--engines/fullpipe/behavior.h4
-rw-r--r--engines/fullpipe/console.cpp4
-rw-r--r--engines/fullpipe/console.h4
-rw-r--r--engines/fullpipe/constants.h264
-rw-r--r--engines/fullpipe/detection.cpp4
-rw-r--r--engines/fullpipe/floaters.cpp4
-rw-r--r--engines/fullpipe/floaters.h4
-rw-r--r--engines/fullpipe/fullpipe.cpp29
-rw-r--r--engines/fullpipe/fullpipe.h43
-rw-r--r--engines/fullpipe/gameloader.cpp10
-rw-r--r--engines/fullpipe/gameloader.h4
-rw-r--r--engines/fullpipe/gfx.cpp24
-rw-r--r--engines/fullpipe/gfx.h4
-rw-r--r--engines/fullpipe/init.cpp6
-rw-r--r--engines/fullpipe/input.cpp37
-rw-r--r--engines/fullpipe/input.h4
-rw-r--r--engines/fullpipe/interaction.cpp17
-rw-r--r--engines/fullpipe/interaction.h4
-rw-r--r--engines/fullpipe/inventory.cpp41
-rw-r--r--engines/fullpipe/inventory.h6
-rw-r--r--engines/fullpipe/lift.cpp461
-rw-r--r--engines/fullpipe/messagehandlers.cpp72
-rw-r--r--engines/fullpipe/messages.cpp31
-rw-r--r--engines/fullpipe/messages.h7
-rw-r--r--engines/fullpipe/modal.cpp810
-rw-r--r--engines/fullpipe/modal.h122
-rw-r--r--engines/fullpipe/module.mk3
-rw-r--r--engines/fullpipe/motion.cpp524
-rw-r--r--engines/fullpipe/motion.h12
-rw-r--r--engines/fullpipe/objectnames.h12
-rw-r--r--engines/fullpipe/objects.h4
-rw-r--r--engines/fullpipe/scene.cpp8
-rw-r--r--engines/fullpipe/scene.h6
-rw-r--r--engines/fullpipe/scenes.cpp195
-rw-r--r--engines/fullpipe/scenes.h155
-rw-r--r--engines/fullpipe/scenes/scene01.cpp4
-rw-r--r--engines/fullpipe/scenes/scene02.cpp4
-rw-r--r--engines/fullpipe/scenes/scene03.cpp12
-rw-r--r--engines/fullpipe/scenes/scene04.cpp14
-rw-r--r--engines/fullpipe/scenes/scene05.cpp12
-rw-r--r--engines/fullpipe/scenes/scene06.cpp14
-rw-r--r--engines/fullpipe/scenes/scene07.cpp4
-rw-r--r--engines/fullpipe/scenes/scene08.cpp4
-rw-r--r--engines/fullpipe/scenes/scene09.cpp747
-rw-r--r--engines/fullpipe/scenes/scene10.cpp12
-rw-r--r--engines/fullpipe/scenes/scene11.cpp4
-rw-r--r--engines/fullpipe/scenes/scene12.cpp4
-rw-r--r--engines/fullpipe/scenes/scene13.cpp4
-rw-r--r--engines/fullpipe/scenes/scene14.cpp12
-rw-r--r--engines/fullpipe/scenes/scene15.cpp12
-rw-r--r--engines/fullpipe/scenes/scene16.cpp4
-rw-r--r--engines/fullpipe/scenes/scene17.cpp4
-rw-r--r--engines/fullpipe/scenes/scene18and19.cpp893
-rw-r--r--engines/fullpipe/scenes/scene20.cpp4
-rw-r--r--engines/fullpipe/scenes/scene21.cpp4
-rw-r--r--engines/fullpipe/scenes/scene22.cpp4
-rw-r--r--engines/fullpipe/scenes/scene23.cpp4
-rw-r--r--engines/fullpipe/scenes/scene24.cpp4
-rw-r--r--engines/fullpipe/scenes/scene25.cpp4
-rw-r--r--engines/fullpipe/scenes/scene26.cpp4
-rw-r--r--engines/fullpipe/scenes/scene27.cpp759
-rw-r--r--engines/fullpipe/scenes/scene28.cpp4
-rw-r--r--engines/fullpipe/scenes/scene29.cpp1125
-rw-r--r--engines/fullpipe/scenes/scene30.cpp12
-rw-r--r--engines/fullpipe/scenes/scene31.cpp4
-rw-r--r--engines/fullpipe/scenes/scene32.cpp12
-rw-r--r--engines/fullpipe/scenes/scene33.cpp4
-rw-r--r--engines/fullpipe/scenes/scene34.cpp14
-rw-r--r--engines/fullpipe/scenes/scene35.cpp12
-rw-r--r--engines/fullpipe/scenes/scene36.cpp4
-rw-r--r--engines/fullpipe/scenes/scene37.cpp4
-rw-r--r--engines/fullpipe/scenes/scene38.cpp14
-rw-r--r--engines/fullpipe/scenes/sceneDbg.cpp4
-rw-r--r--engines/fullpipe/scenes/sceneFinal.cpp4
-rw-r--r--engines/fullpipe/scenes/sceneIntro.cpp4
-rw-r--r--engines/fullpipe/sound.cpp313
-rw-r--r--engines/fullpipe/sound.h23
-rw-r--r--engines/fullpipe/stateloader.cpp4
-rw-r--r--engines/fullpipe/statics.cpp230
-rw-r--r--engines/fullpipe/statics.h9
-rw-r--r--engines/fullpipe/utils.cpp4
-rw-r--r--engines/fullpipe/utils.h4
-rw-r--r--engines/game.cpp4
-rw-r--r--engines/game.h4
-rw-r--r--engines/gob/anifile.cpp4
-rw-r--r--engines/gob/anifile.h4
-rw-r--r--engines/gob/aniobject.cpp4
-rw-r--r--engines/gob/aniobject.h4
-rw-r--r--engines/gob/backbuffer.cpp4
-rw-r--r--engines/gob/backbuffer.h4
-rw-r--r--engines/gob/cheater.cpp4
-rw-r--r--engines/gob/cheater.h4
-rw-r--r--engines/gob/cheater_geisha.cpp4
-rw-r--r--engines/gob/cmpfile.cpp4
-rw-r--r--engines/gob/cmpfile.h4
-rw-r--r--engines/gob/console.cpp4
-rw-r--r--engines/gob/console.h4
-rw-r--r--engines/gob/databases.cpp4
-rw-r--r--engines/gob/databases.h4
-rw-r--r--engines/gob/dataio.cpp4
-rw-r--r--engines/gob/dataio.h4
-rw-r--r--engines/gob/dbase.cpp4
-rw-r--r--engines/gob/dbase.h4
-rw-r--r--engines/gob/decfile.cpp4
-rw-r--r--engines/gob/decfile.h4
-rw-r--r--engines/gob/demos/batplayer.cpp4
-rw-r--r--engines/gob/demos/batplayer.h4
-rw-r--r--engines/gob/demos/demoplayer.cpp4
-rw-r--r--engines/gob/demos/demoplayer.h4
-rw-r--r--engines/gob/demos/scnplayer.cpp4
-rw-r--r--engines/gob/demos/scnplayer.h4
-rw-r--r--engines/gob/detection/detection.cpp4
-rw-r--r--engines/gob/detection/tables.h6
-rw-r--r--engines/gob/detection/tables_adi2.h4
-rw-r--r--engines/gob/detection/tables_adi4.h4
-rw-r--r--engines/gob/detection/tables_adibou.h4
-rw-r--r--engines/gob/detection/tables_ajworld.h4
-rw-r--r--engines/gob/detection/tables_bargon.h4
-rw-r--r--engines/gob/detection/tables_crousti.h45
-rw-r--r--engines/gob/detection/tables_dynasty.h4
-rw-r--r--engines/gob/detection/tables_fallback.h4
-rw-r--r--engines/gob/detection/tables_fascin.h4
-rw-r--r--engines/gob/detection/tables_geisha.h4
-rw-r--r--engines/gob/detection/tables_gob1.h4
-rw-r--r--engines/gob/detection/tables_gob2.h4
-rw-r--r--engines/gob/detection/tables_gob3.h4
-rw-r--r--engines/gob/detection/tables_inca2.h4
-rw-r--r--engines/gob/detection/tables_lit.h4
-rw-r--r--engines/gob/detection/tables_littlered.h4
-rw-r--r--engines/gob/detection/tables_onceupon.h4
-rw-r--r--engines/gob/detection/tables_playtoons.h4
-rw-r--r--engines/gob/detection/tables_urban.h4
-rw-r--r--engines/gob/detection/tables_ween.h4
-rw-r--r--engines/gob/detection/tables_woodruff.h4
-rw-r--r--engines/gob/draw.cpp9
-rw-r--r--engines/gob/draw.h5
-rw-r--r--engines/gob/draw_bargon.cpp4
-rw-r--r--engines/gob/draw_fascin.cpp8
-rw-r--r--engines/gob/draw_playtoons.cpp4
-rw-r--r--engines/gob/draw_v1.cpp4
-rw-r--r--engines/gob/draw_v2.cpp4
-rw-r--r--engines/gob/expression.cpp4
-rw-r--r--engines/gob/expression.h4
-rw-r--r--engines/gob/game.cpp4
-rw-r--r--engines/gob/game.h4
-rw-r--r--engines/gob/global.cpp4
-rw-r--r--engines/gob/global.h4
-rw-r--r--engines/gob/gob.cpp5
-rw-r--r--engines/gob/gob.h8
-rw-r--r--engines/gob/goblin.cpp4
-rw-r--r--engines/gob/goblin.h4
-rw-r--r--engines/gob/goblin_v1.cpp4
-rw-r--r--engines/gob/goblin_v2.cpp4
-rw-r--r--engines/gob/goblin_v3.cpp4
-rw-r--r--engines/gob/goblin_v4.cpp6
-rw-r--r--engines/gob/hotspots.cpp4
-rw-r--r--engines/gob/hotspots.h4
-rw-r--r--engines/gob/iniconfig.cpp4
-rw-r--r--engines/gob/iniconfig.h4
-rw-r--r--engines/gob/init.cpp4
-rw-r--r--engines/gob/init.h4
-rw-r--r--engines/gob/init_fascin.cpp4
-rw-r--r--engines/gob/init_geisha.cpp4
-rw-r--r--engines/gob/init_v1.cpp4
-rw-r--r--engines/gob/init_v2.cpp4
-rw-r--r--engines/gob/init_v3.cpp4
-rw-r--r--engines/gob/init_v4.cpp4
-rw-r--r--engines/gob/init_v6.cpp4
-rw-r--r--engines/gob/init_v7.cpp4
-rw-r--r--engines/gob/inter.cpp4
-rw-r--r--engines/gob/inter.h6
-rw-r--r--engines/gob/inter_bargon.cpp4
-rw-r--r--engines/gob/inter_fascin.cpp4
-rw-r--r--engines/gob/inter_geisha.cpp4
-rw-r--r--engines/gob/inter_inca2.cpp4
-rw-r--r--engines/gob/inter_littlered.cpp4
-rw-r--r--engines/gob/inter_playtoons.cpp4
-rw-r--r--engines/gob/inter_v1.cpp22
-rw-r--r--engines/gob/inter_v2.cpp187
-rw-r--r--engines/gob/inter_v3.cpp187
-rw-r--r--engines/gob/inter_v4.cpp4
-rw-r--r--engines/gob/inter_v5.cpp4
-rw-r--r--engines/gob/inter_v6.cpp4
-rw-r--r--engines/gob/inter_v7.cpp9
-rw-r--r--engines/gob/map.cpp4
-rw-r--r--engines/gob/map.h4
-rw-r--r--engines/gob/map_v1.cpp4
-rw-r--r--engines/gob/map_v2.cpp4
-rw-r--r--engines/gob/minigames/geisha/diving.cpp7
-rw-r--r--engines/gob/minigames/geisha/diving.h4
-rw-r--r--engines/gob/minigames/geisha/evilfish.cpp4
-rw-r--r--engines/gob/minigames/geisha/evilfish.h4
-rw-r--r--engines/gob/minigames/geisha/meter.cpp4
-rw-r--r--engines/gob/minigames/geisha/meter.h4
-rw-r--r--engines/gob/minigames/geisha/mouth.cpp4
-rw-r--r--engines/gob/minigames/geisha/mouth.h4
-rw-r--r--engines/gob/minigames/geisha/oko.cpp4
-rw-r--r--engines/gob/minigames/geisha/oko.h4
-rw-r--r--engines/gob/minigames/geisha/penetration.cpp7
-rw-r--r--engines/gob/minigames/geisha/penetration.h4
-rw-r--r--engines/gob/minigames/geisha/submarine.cpp4
-rw-r--r--engines/gob/minigames/geisha/submarine.h4
-rw-r--r--engines/gob/mult.cpp4
-rw-r--r--engines/gob/mult.h4
-rw-r--r--engines/gob/mult_v2.cpp4
-rw-r--r--engines/gob/palanim.cpp4
-rw-r--r--engines/gob/palanim.h4
-rw-r--r--engines/gob/pregob/gctfile.cpp4
-rw-r--r--engines/gob/pregob/gctfile.h4
-rw-r--r--engines/gob/pregob/onceupon/abracadabra.cpp4
-rw-r--r--engines/gob/pregob/onceupon/abracadabra.h4
-rw-r--r--engines/gob/pregob/onceupon/babayaga.cpp4
-rw-r--r--engines/gob/pregob/onceupon/babayaga.h4
-rw-r--r--engines/gob/pregob/onceupon/brokenstrings.h4
-rw-r--r--engines/gob/pregob/onceupon/chargenchild.cpp4
-rw-r--r--engines/gob/pregob/onceupon/chargenchild.h4
-rw-r--r--engines/gob/pregob/onceupon/onceupon.cpp4
-rw-r--r--engines/gob/pregob/onceupon/onceupon.h4
-rw-r--r--engines/gob/pregob/onceupon/palettes.h4
-rw-r--r--engines/gob/pregob/onceupon/parents.cpp4
-rw-r--r--engines/gob/pregob/onceupon/parents.h4
-rw-r--r--engines/gob/pregob/onceupon/stork.cpp4
-rw-r--r--engines/gob/pregob/onceupon/stork.h4
-rw-r--r--engines/gob/pregob/onceupon/title.cpp4
-rw-r--r--engines/gob/pregob/onceupon/title.h4
-rw-r--r--engines/gob/pregob/pregob.cpp4
-rw-r--r--engines/gob/pregob/pregob.h4
-rw-r--r--engines/gob/pregob/seqfile.cpp4
-rw-r--r--engines/gob/pregob/seqfile.h4
-rw-r--r--engines/gob/pregob/txtfile.cpp4
-rw-r--r--engines/gob/pregob/txtfile.h4
-rw-r--r--engines/gob/resources.cpp8
-rw-r--r--engines/gob/resources.h4
-rw-r--r--engines/gob/rxyfile.cpp4
-rw-r--r--engines/gob/rxyfile.h4
-rw-r--r--engines/gob/save/saveconverter.cpp4
-rw-r--r--engines/gob/save/saveconverter.h4
-rw-r--r--engines/gob/save/saveconverter_v2.cpp4
-rw-r--r--engines/gob/save/saveconverter_v3.cpp4
-rw-r--r--engines/gob/save/saveconverter_v4.cpp4
-rw-r--r--engines/gob/save/savefile.cpp4
-rw-r--r--engines/gob/save/savefile.h4
-rw-r--r--engines/gob/save/savehandler.cpp4
-rw-r--r--engines/gob/save/savehandler.h4
-rw-r--r--engines/gob/save/saveload.cpp4
-rw-r--r--engines/gob/save/saveload.h4
-rw-r--r--engines/gob/save/saveload_ajworld.cpp4
-rw-r--r--engines/gob/save/saveload_fascin.cpp4
-rw-r--r--engines/gob/save/saveload_geisha.cpp4
-rw-r--r--engines/gob/save/saveload_inca2.cpp4
-rw-r--r--engines/gob/save/saveload_playtoons.cpp4
-rw-r--r--engines/gob/save/saveload_v2.cpp4
-rw-r--r--engines/gob/save/saveload_v3.cpp4
-rw-r--r--engines/gob/save/saveload_v4.cpp4
-rw-r--r--engines/gob/save/saveload_v6.cpp4
-rw-r--r--engines/gob/save/saveload_v7.cpp4
-rw-r--r--engines/gob/scenery.cpp4
-rw-r--r--engines/gob/scenery.h4
-rw-r--r--engines/gob/scenery_v1.cpp4
-rw-r--r--engines/gob/scenery_v2.cpp4
-rw-r--r--engines/gob/script.cpp4
-rw-r--r--engines/gob/script.h4
-rw-r--r--engines/gob/sound/adlib.cpp4
-rw-r--r--engines/gob/sound/adlib.h4
-rw-r--r--engines/gob/sound/adlplayer.cpp4
-rw-r--r--engines/gob/sound/adlplayer.h4
-rw-r--r--engines/gob/sound/bgatmosphere.cpp4
-rw-r--r--engines/gob/sound/bgatmosphere.h4
-rw-r--r--engines/gob/sound/cdrom.cpp4
-rw-r--r--engines/gob/sound/cdrom.h4
-rw-r--r--engines/gob/sound/infogrames.cpp4
-rw-r--r--engines/gob/sound/infogrames.h4
-rw-r--r--engines/gob/sound/musplayer.cpp4
-rw-r--r--engines/gob/sound/musplayer.h4
-rw-r--r--engines/gob/sound/pcspeaker.cpp4
-rw-r--r--engines/gob/sound/pcspeaker.h4
-rw-r--r--engines/gob/sound/protracker.cpp4
-rw-r--r--engines/gob/sound/protracker.h4
-rw-r--r--engines/gob/sound/sound.cpp4
-rw-r--r--engines/gob/sound/sound.h4
-rw-r--r--engines/gob/sound/soundblaster.cpp4
-rw-r--r--engines/gob/sound/soundblaster.h4
-rw-r--r--engines/gob/sound/sounddesc.cpp4
-rw-r--r--engines/gob/sound/sounddesc.h4
-rw-r--r--engines/gob/sound/soundmixer.cpp4
-rw-r--r--engines/gob/sound/soundmixer.h4
-rw-r--r--engines/gob/surface.cpp9
-rw-r--r--engines/gob/surface.h4
-rw-r--r--engines/gob/totfile.cpp4
-rw-r--r--engines/gob/totfile.h4
-rw-r--r--engines/gob/util.cpp4
-rw-r--r--engines/gob/util.h4
-rw-r--r--engines/gob/variables.cpp4
-rw-r--r--engines/gob/variables.h4
-rw-r--r--engines/gob/video.cpp4
-rw-r--r--engines/gob/video.h4
-rw-r--r--engines/gob/video_v1.cpp4
-rw-r--r--engines/gob/video_v2.cpp4
-rw-r--r--engines/gob/video_v6.cpp4
-rw-r--r--engines/gob/videoplayer.cpp4
-rw-r--r--engines/gob/videoplayer.h4
-rw-r--r--engines/groovie/cell.cpp4
-rw-r--r--engines/groovie/cell.h4
-rw-r--r--engines/groovie/cursor.cpp4
-rw-r--r--engines/groovie/cursor.h4
-rw-r--r--engines/groovie/debug.cpp4
-rw-r--r--engines/groovie/debug.h4
-rw-r--r--engines/groovie/detection.cpp4
-rw-r--r--engines/groovie/detection.h4
-rw-r--r--engines/groovie/font.cpp4
-rw-r--r--engines/groovie/font.h4
-rw-r--r--engines/groovie/graphics.cpp4
-rw-r--r--engines/groovie/graphics.h4
-rw-r--r--engines/groovie/groovie.cpp4
-rw-r--r--engines/groovie/groovie.h4
-rw-r--r--engines/groovie/lzss.cpp4
-rw-r--r--engines/groovie/lzss.h4
-rw-r--r--engines/groovie/music.cpp4
-rw-r--r--engines/groovie/music.h4
-rw-r--r--engines/groovie/player.cpp4
-rw-r--r--engines/groovie/player.h4
-rw-r--r--engines/groovie/resource.cpp4
-rw-r--r--engines/groovie/resource.h4
-rw-r--r--engines/groovie/roq.cpp18
-rw-r--r--engines/groovie/roq.h6
-rw-r--r--engines/groovie/saveload.cpp4
-rw-r--r--engines/groovie/saveload.h4
-rw-r--r--engines/groovie/script.cpp4
-rw-r--r--engines/groovie/script.h4
-rw-r--r--engines/groovie/stuffit.cpp4
-rw-r--r--engines/groovie/stuffit.h4
-rw-r--r--engines/groovie/vdx.cpp4
-rw-r--r--engines/groovie/vdx.h4
-rw-r--r--engines/hopkins/anim.cpp7
-rw-r--r--engines/hopkins/anim.h4
-rw-r--r--engines/hopkins/computer.cpp16
-rw-r--r--engines/hopkins/computer.h4
-rw-r--r--engines/hopkins/debugger.cpp6
-rw-r--r--engines/hopkins/debugger.h6
-rw-r--r--engines/hopkins/detection.cpp36
-rw-r--r--engines/hopkins/detection_tables.h45
-rw-r--r--engines/hopkins/dialogs.cpp4
-rw-r--r--engines/hopkins/dialogs.h4
-rw-r--r--engines/hopkins/events.cpp4
-rw-r--r--engines/hopkins/events.h4
-rw-r--r--engines/hopkins/files.cpp20
-rw-r--r--engines/hopkins/files.h4
-rw-r--r--engines/hopkins/font.cpp4
-rw-r--r--engines/hopkins/font.h4
-rw-r--r--engines/hopkins/globals.cpp4
-rw-r--r--engines/hopkins/globals.h4
-rw-r--r--engines/hopkins/graphics.cpp14
-rw-r--r--engines/hopkins/graphics.h4
-rw-r--r--engines/hopkins/hopkins.cpp11
-rw-r--r--engines/hopkins/hopkins.h4
-rw-r--r--engines/hopkins/lines.cpp19
-rw-r--r--engines/hopkins/lines.h4
-rw-r--r--engines/hopkins/menu.cpp4
-rw-r--r--engines/hopkins/menu.h4
-rw-r--r--engines/hopkins/objects.cpp12
-rw-r--r--engines/hopkins/objects.h4
-rw-r--r--engines/hopkins/saveload.cpp4
-rw-r--r--engines/hopkins/saveload.h4
-rw-r--r--engines/hopkins/script.cpp4
-rw-r--r--engines/hopkins/script.h4
-rw-r--r--engines/hopkins/sound.cpp12
-rw-r--r--engines/hopkins/sound.h12
-rw-r--r--engines/hopkins/talk.cpp5
-rw-r--r--engines/hopkins/talk.h4
-rw-r--r--engines/hugo/console.cpp4
-rw-r--r--engines/hugo/console.h4
-rw-r--r--engines/hugo/detection.cpp11
-rw-r--r--engines/hugo/dialogs.cpp9
-rw-r--r--engines/hugo/dialogs.h4
-rw-r--r--engines/hugo/display.cpp4
-rw-r--r--engines/hugo/display.h4
-rw-r--r--engines/hugo/file.cpp9
-rw-r--r--engines/hugo/file.h4
-rw-r--r--engines/hugo/file_v1d.cpp4
-rw-r--r--engines/hugo/file_v1w.cpp4
-rw-r--r--engines/hugo/file_v2d.cpp4
-rw-r--r--engines/hugo/file_v2w.cpp4
-rw-r--r--engines/hugo/file_v3d.cpp4
-rw-r--r--engines/hugo/game.h4
-rw-r--r--engines/hugo/hugo.cpp4
-rw-r--r--engines/hugo/hugo.h4
-rw-r--r--engines/hugo/intro.cpp4
-rw-r--r--engines/hugo/intro.h4
-rw-r--r--engines/hugo/inventory.cpp4
-rw-r--r--engines/hugo/inventory.h4
-rw-r--r--engines/hugo/mouse.cpp13
-rw-r--r--engines/hugo/mouse.h4
-rw-r--r--engines/hugo/object.cpp16
-rw-r--r--engines/hugo/object.h4
-rw-r--r--engines/hugo/object_v1d.cpp4
-rw-r--r--engines/hugo/object_v1w.cpp4
-rw-r--r--engines/hugo/object_v2d.cpp4
-rw-r--r--engines/hugo/object_v3d.cpp4
-rw-r--r--engines/hugo/parser.cpp4
-rw-r--r--engines/hugo/parser.h4
-rw-r--r--engines/hugo/parser_v1d.cpp4
-rw-r--r--engines/hugo/parser_v1w.cpp4
-rw-r--r--engines/hugo/parser_v2d.cpp4
-rw-r--r--engines/hugo/parser_v3d.cpp4
-rw-r--r--engines/hugo/route.cpp8
-rw-r--r--engines/hugo/route.h4
-rw-r--r--engines/hugo/schedule.cpp18
-rw-r--r--engines/hugo/schedule.h4
-rw-r--r--engines/hugo/sound.cpp4
-rw-r--r--engines/hugo/sound.h4
-rw-r--r--engines/hugo/text.cpp10
-rw-r--r--engines/hugo/text.h4
-rw-r--r--engines/hugo/util.cpp4
-rw-r--r--engines/hugo/util.h4
-rw-r--r--engines/kyra/animator_hof.cpp4
-rw-r--r--engines/kyra/animator_lok.cpp4
-rw-r--r--engines/kyra/animator_lok.h4
-rw-r--r--engines/kyra/animator_mr.cpp4
-rw-r--r--engines/kyra/animator_tim.cpp4
-rw-r--r--engines/kyra/animator_v2.cpp4
-rw-r--r--engines/kyra/chargen.cpp4
-rw-r--r--engines/kyra/darkmoon.cpp4
-rw-r--r--engines/kyra/darkmoon.h4
-rw-r--r--engines/kyra/debugger.cpp4
-rw-r--r--engines/kyra/debugger.h4
-rw-r--r--engines/kyra/detection_tables.h1
-rw-r--r--engines/kyra/eob.cpp4
-rw-r--r--engines/kyra/eob.h4
-rw-r--r--engines/kyra/eobcommon.cpp4
-rw-r--r--engines/kyra/eobcommon.h4
-rw-r--r--engines/kyra/gui.cpp4
-rw-r--r--engines/kyra/gui.h4
-rw-r--r--engines/kyra/gui_eob.cpp4
-rw-r--r--engines/kyra/gui_eob.h4
-rw-r--r--engines/kyra/gui_hof.cpp6
-rw-r--r--engines/kyra/gui_hof.h4
-rw-r--r--engines/kyra/gui_lok.cpp4
-rw-r--r--engines/kyra/gui_lok.h4
-rw-r--r--engines/kyra/gui_lol.cpp4
-rw-r--r--engines/kyra/gui_lol.h4
-rw-r--r--engines/kyra/gui_mr.cpp4
-rw-r--r--engines/kyra/gui_mr.h4
-rw-r--r--engines/kyra/gui_rpg.cpp4
-rw-r--r--engines/kyra/gui_v1.cpp4
-rw-r--r--engines/kyra/gui_v1.h4
-rw-r--r--engines/kyra/gui_v2.cpp4
-rw-r--r--engines/kyra/gui_v2.h4
-rw-r--r--engines/kyra/item.h4
-rw-r--r--engines/kyra/items_eob.cpp4
-rw-r--r--engines/kyra/items_hof.cpp4
-rw-r--r--engines/kyra/items_lok.cpp4
-rw-r--r--engines/kyra/items_lol.cpp4
-rw-r--r--engines/kyra/items_mr.cpp4
-rw-r--r--engines/kyra/items_v2.cpp4
-rw-r--r--engines/kyra/kyra_hof.cpp4
-rw-r--r--engines/kyra/kyra_hof.h4
-rw-r--r--engines/kyra/kyra_lok.cpp4
-rw-r--r--engines/kyra/kyra_lok.h4
-rw-r--r--engines/kyra/kyra_mr.cpp4
-rw-r--r--engines/kyra/kyra_mr.h4
-rw-r--r--engines/kyra/kyra_rpg.cpp4
-rw-r--r--engines/kyra/kyra_rpg.h4
-rw-r--r--engines/kyra/kyra_v1.cpp4
-rw-r--r--engines/kyra/kyra_v1.h4
-rw-r--r--engines/kyra/kyra_v2.cpp4
-rw-r--r--engines/kyra/kyra_v2.h4
-rw-r--r--engines/kyra/lol.cpp4
-rw-r--r--engines/kyra/lol.h4
-rw-r--r--engines/kyra/magic_eob.cpp4
-rw-r--r--engines/kyra/resource.cpp4
-rw-r--r--engines/kyra/resource.h134
-rw-r--r--engines/kyra/resource_intern.cpp4
-rw-r--r--engines/kyra/resource_intern.h4
-rw-r--r--engines/kyra/saveload.cpp4
-rw-r--r--engines/kyra/saveload_eob.cpp4
-rw-r--r--engines/kyra/saveload_hof.cpp4
-rw-r--r--engines/kyra/saveload_lok.cpp4
-rw-r--r--engines/kyra/saveload_lol.cpp4
-rw-r--r--engines/kyra/saveload_mr.cpp4
-rw-r--r--engines/kyra/saveload_rpg.cpp4
-rw-r--r--engines/kyra/scene_eob.cpp4
-rw-r--r--engines/kyra/scene_hof.cpp4
-rw-r--r--engines/kyra/scene_lok.cpp4
-rw-r--r--engines/kyra/scene_lol.cpp29
-rw-r--r--engines/kyra/scene_mr.cpp4
-rw-r--r--engines/kyra/scene_rpg.cpp4
-rw-r--r--engines/kyra/scene_v1.cpp4
-rw-r--r--engines/kyra/scene_v2.cpp4
-rw-r--r--engines/kyra/screen.cpp4
-rw-r--r--engines/kyra/screen.h4
-rw-r--r--engines/kyra/screen_eob.cpp4
-rw-r--r--engines/kyra/screen_eob.h4
-rw-r--r--engines/kyra/screen_hof.cpp6
-rw-r--r--engines/kyra/screen_hof.h6
-rw-r--r--engines/kyra/screen_lok.cpp4
-rw-r--r--engines/kyra/screen_lok.h4
-rw-r--r--engines/kyra/screen_lol.cpp4
-rw-r--r--engines/kyra/screen_lol.h4
-rw-r--r--engines/kyra/screen_mr.cpp6
-rw-r--r--engines/kyra/screen_mr.h6
-rw-r--r--engines/kyra/screen_v2.cpp4
-rw-r--r--engines/kyra/screen_v2.h4
-rw-r--r--engines/kyra/script.cpp4
-rw-r--r--engines/kyra/script.h4
-rw-r--r--engines/kyra/script_eob.cpp4
-rw-r--r--engines/kyra/script_eob.h5
-rw-r--r--engines/kyra/script_hof.cpp4
-rw-r--r--engines/kyra/script_lok.cpp4
-rw-r--r--engines/kyra/script_lol.cpp4
-rw-r--r--engines/kyra/script_mr.cpp4
-rw-r--r--engines/kyra/script_tim.cpp4
-rw-r--r--engines/kyra/script_tim.h4
-rw-r--r--engines/kyra/script_v1.cpp4
-rw-r--r--engines/kyra/script_v2.cpp4
-rw-r--r--engines/kyra/seqplayer.cpp4
-rw-r--r--engines/kyra/seqplayer.h4
-rw-r--r--engines/kyra/sequences_darkmoon.cpp4
-rw-r--r--engines/kyra/sequences_eob.cpp4
-rw-r--r--engines/kyra/sequences_hof.cpp6
-rw-r--r--engines/kyra/sequences_hof.h4
-rw-r--r--engines/kyra/sequences_lok.cpp4
-rw-r--r--engines/kyra/sequences_lol.cpp4
-rw-r--r--engines/kyra/sequences_mr.cpp4
-rw-r--r--engines/kyra/sequences_v2.cpp4
-rw-r--r--engines/kyra/sound.cpp4
-rw-r--r--engines/kyra/sound_adlib.cpp8
-rw-r--r--engines/kyra/sound_amiga.cpp4
-rw-r--r--engines/kyra/sound_digital.cpp4
-rw-r--r--engines/kyra/sound_lok.cpp4
-rw-r--r--engines/kyra/sound_lol.cpp4
-rw-r--r--engines/kyra/sound_midi.cpp4
-rw-r--r--engines/kyra/sound_pcspk.cpp4
-rw-r--r--engines/kyra/sound_towns.cpp7
-rw-r--r--engines/kyra/sprites.cpp4
-rw-r--r--engines/kyra/sprites.h4
-rw-r--r--engines/kyra/sprites_eob.cpp4
-rw-r--r--engines/kyra/sprites_lol.cpp4
-rw-r--r--engines/kyra/sprites_rpg.cpp4
-rw-r--r--engines/kyra/staticres.cpp6
-rw-r--r--engines/kyra/staticres_eob.cpp9
-rw-r--r--engines/kyra/staticres_lol.cpp4
-rw-r--r--engines/kyra/staticres_rpg.cpp5
-rw-r--r--engines/kyra/text.cpp4
-rw-r--r--engines/kyra/text.h4
-rw-r--r--engines/kyra/text_hof.cpp4
-rw-r--r--engines/kyra/text_hof.h4
-rw-r--r--engines/kyra/text_lok.cpp4
-rw-r--r--engines/kyra/text_lol.cpp4
-rw-r--r--engines/kyra/text_lol.h4
-rw-r--r--engines/kyra/text_mr.cpp4
-rw-r--r--engines/kyra/text_mr.h4
-rw-r--r--engines/kyra/text_rpg.cpp5
-rw-r--r--engines/kyra/text_rpg.h6
-rw-r--r--engines/kyra/timer.cpp6
-rw-r--r--engines/kyra/timer.h6
-rw-r--r--engines/kyra/timer_eob.cpp6
-rw-r--r--engines/kyra/timer_hof.cpp6
-rw-r--r--engines/kyra/timer_lok.cpp6
-rw-r--r--engines/kyra/timer_lol.cpp6
-rw-r--r--engines/kyra/timer_mr.cpp6
-rw-r--r--engines/kyra/timer_rpg.cpp4
-rw-r--r--engines/kyra/util.cpp4
-rw-r--r--engines/kyra/util.h4
-rw-r--r--engines/kyra/vqa.cpp4
-rw-r--r--engines/kyra/vqa.h4
-rw-r--r--engines/kyra/wsamovie.cpp4
-rw-r--r--engines/kyra/wsamovie.h4
-rw-r--r--engines/lastexpress/data/animation.cpp6
-rw-r--r--engines/lastexpress/data/animation.h5
-rw-r--r--engines/lastexpress/data/archive.cpp4
-rw-r--r--engines/lastexpress/data/archive.h4
-rw-r--r--engines/lastexpress/data/background.cpp4
-rw-r--r--engines/lastexpress/data/background.h4
-rw-r--r--engines/lastexpress/data/cursor.cpp4
-rw-r--r--engines/lastexpress/data/cursor.h4
-rw-r--r--engines/lastexpress/data/font.cpp4
-rw-r--r--engines/lastexpress/data/font.h4
-rw-r--r--engines/lastexpress/data/scene.cpp4
-rw-r--r--engines/lastexpress/data/scene.h4
-rw-r--r--engines/lastexpress/data/sequence.cpp2
-rw-r--r--engines/lastexpress/data/sequence.h5
-rw-r--r--engines/lastexpress/data/snd.cpp4
-rw-r--r--engines/lastexpress/data/snd.h4
-rw-r--r--engines/lastexpress/data/subtitle.cpp4
-rw-r--r--engines/lastexpress/data/subtitle.h4
-rw-r--r--engines/lastexpress/debug.cpp4
-rw-r--r--engines/lastexpress/debug.h4
-rw-r--r--engines/lastexpress/detection.cpp4
-rw-r--r--engines/lastexpress/drawable.h4
-rw-r--r--engines/lastexpress/entities/abbot.cpp4
-rw-r--r--engines/lastexpress/entities/abbot.h4
-rw-r--r--engines/lastexpress/entities/alexei.cpp4
-rw-r--r--engines/lastexpress/entities/alexei.h4
-rw-r--r--engines/lastexpress/entities/alouan.cpp4
-rw-r--r--engines/lastexpress/entities/alouan.h4
-rw-r--r--engines/lastexpress/entities/anna.cpp6
-rw-r--r--engines/lastexpress/entities/anna.h4
-rw-r--r--engines/lastexpress/entities/august.cpp4
-rw-r--r--engines/lastexpress/entities/august.h4
-rw-r--r--engines/lastexpress/entities/boutarel.cpp4
-rw-r--r--engines/lastexpress/entities/boutarel.h4
-rw-r--r--engines/lastexpress/entities/chapters.cpp4
-rw-r--r--engines/lastexpress/entities/chapters.h4
-rw-r--r--engines/lastexpress/entities/cooks.cpp4
-rw-r--r--engines/lastexpress/entities/cooks.h4
-rw-r--r--engines/lastexpress/entities/coudert.cpp4
-rw-r--r--engines/lastexpress/entities/coudert.h4
-rw-r--r--engines/lastexpress/entities/entity.cpp4
-rw-r--r--engines/lastexpress/entities/entity.h4
-rw-r--r--engines/lastexpress/entities/entity39.cpp4
-rw-r--r--engines/lastexpress/entities/entity39.h4
-rw-r--r--engines/lastexpress/entities/entity_intern.h4
-rw-r--r--engines/lastexpress/entities/francois.cpp4
-rw-r--r--engines/lastexpress/entities/francois.h4
-rw-r--r--engines/lastexpress/entities/gendarmes.cpp4
-rw-r--r--engines/lastexpress/entities/gendarmes.h4
-rw-r--r--engines/lastexpress/entities/hadija.cpp4
-rw-r--r--engines/lastexpress/entities/hadija.h4
-rw-r--r--engines/lastexpress/entities/ivo.cpp4
-rw-r--r--engines/lastexpress/entities/ivo.h4
-rw-r--r--engines/lastexpress/entities/kahina.cpp4
-rw-r--r--engines/lastexpress/entities/kahina.h4
-rw-r--r--engines/lastexpress/entities/kronos.cpp4
-rw-r--r--engines/lastexpress/entities/kronos.h4
-rw-r--r--engines/lastexpress/entities/mahmud.cpp4
-rw-r--r--engines/lastexpress/entities/mahmud.h4
-rw-r--r--engines/lastexpress/entities/max.cpp4
-rw-r--r--engines/lastexpress/entities/max.h4
-rw-r--r--engines/lastexpress/entities/mertens.cpp4
-rw-r--r--engines/lastexpress/entities/mertens.h4
-rw-r--r--engines/lastexpress/entities/milos.cpp4
-rw-r--r--engines/lastexpress/entities/milos.h4
-rw-r--r--engines/lastexpress/entities/mmeboutarel.cpp4
-rw-r--r--engines/lastexpress/entities/mmeboutarel.h4
-rw-r--r--engines/lastexpress/entities/pascale.cpp4
-rw-r--r--engines/lastexpress/entities/pascale.h4
-rw-r--r--engines/lastexpress/entities/rebecca.cpp4
-rw-r--r--engines/lastexpress/entities/rebecca.h4
-rw-r--r--engines/lastexpress/entities/salko.cpp4
-rw-r--r--engines/lastexpress/entities/salko.h4
-rw-r--r--engines/lastexpress/entities/servers0.cpp4
-rw-r--r--engines/lastexpress/entities/servers0.h4
-rw-r--r--engines/lastexpress/entities/servers1.cpp4
-rw-r--r--engines/lastexpress/entities/servers1.h4
-rw-r--r--engines/lastexpress/entities/sophie.cpp4
-rw-r--r--engines/lastexpress/entities/sophie.h4
-rw-r--r--engines/lastexpress/entities/tables.cpp4
-rw-r--r--engines/lastexpress/entities/tables.h4
-rw-r--r--engines/lastexpress/entities/tatiana.cpp4
-rw-r--r--engines/lastexpress/entities/tatiana.h4
-rw-r--r--engines/lastexpress/entities/train.cpp4
-rw-r--r--engines/lastexpress/entities/train.h4
-rw-r--r--engines/lastexpress/entities/vassili.cpp4
-rw-r--r--engines/lastexpress/entities/vassili.h4
-rw-r--r--engines/lastexpress/entities/verges.cpp4
-rw-r--r--engines/lastexpress/entities/verges.h4
-rw-r--r--engines/lastexpress/entities/vesna.cpp4
-rw-r--r--engines/lastexpress/entities/vesna.h4
-rw-r--r--engines/lastexpress/entities/yasmin.cpp4
-rw-r--r--engines/lastexpress/entities/yasmin.h4
-rw-r--r--engines/lastexpress/eventhandler.h4
-rw-r--r--engines/lastexpress/fight/fight.cpp4
-rw-r--r--engines/lastexpress/fight/fight.h4
-rw-r--r--engines/lastexpress/fight/fighter.cpp4
-rw-r--r--engines/lastexpress/fight/fighter.h4
-rw-r--r--engines/lastexpress/fight/fighter_anna.cpp4
-rw-r--r--engines/lastexpress/fight/fighter_anna.h4
-rw-r--r--engines/lastexpress/fight/fighter_ivo.cpp4
-rw-r--r--engines/lastexpress/fight/fighter_ivo.h4
-rw-r--r--engines/lastexpress/fight/fighter_milos.cpp4
-rw-r--r--engines/lastexpress/fight/fighter_milos.h4
-rw-r--r--engines/lastexpress/fight/fighter_salko.cpp4
-rw-r--r--engines/lastexpress/fight/fighter_salko.h4
-rw-r--r--engines/lastexpress/fight/fighter_vesna.cpp4
-rw-r--r--engines/lastexpress/fight/fighter_vesna.h4
-rw-r--r--engines/lastexpress/game/action.cpp4
-rw-r--r--engines/lastexpress/game/action.h4
-rw-r--r--engines/lastexpress/game/beetle.cpp4
-rw-r--r--engines/lastexpress/game/beetle.h4
-rw-r--r--engines/lastexpress/game/entities.cpp4
-rw-r--r--engines/lastexpress/game/entities.h4
-rw-r--r--engines/lastexpress/game/inventory.cpp4
-rw-r--r--engines/lastexpress/game/inventory.h4
-rw-r--r--engines/lastexpress/game/logic.cpp4
-rw-r--r--engines/lastexpress/game/logic.h4
-rw-r--r--engines/lastexpress/game/object.cpp4
-rw-r--r--engines/lastexpress/game/object.h4
-rw-r--r--engines/lastexpress/game/savegame.cpp4
-rw-r--r--engines/lastexpress/game/savegame.h4
-rw-r--r--engines/lastexpress/game/savepoint.cpp4
-rw-r--r--engines/lastexpress/game/savepoint.h4
-rw-r--r--engines/lastexpress/game/state.cpp4
-rw-r--r--engines/lastexpress/game/state.h4
-rw-r--r--engines/lastexpress/graphics.cpp4
-rw-r--r--engines/lastexpress/graphics.h4
-rw-r--r--engines/lastexpress/helpers.h4
-rw-r--r--engines/lastexpress/lastexpress.cpp4
-rw-r--r--engines/lastexpress/lastexpress.h4
-rw-r--r--engines/lastexpress/menu/clock.cpp4
-rw-r--r--engines/lastexpress/menu/clock.h4
-rw-r--r--engines/lastexpress/menu/menu.cpp4
-rw-r--r--engines/lastexpress/menu/menu.h4
-rw-r--r--engines/lastexpress/menu/trainline.cpp4
-rw-r--r--engines/lastexpress/menu/trainline.h4
-rw-r--r--engines/lastexpress/resource.cpp4
-rw-r--r--engines/lastexpress/resource.h4
-rw-r--r--engines/lastexpress/shared.h4
-rw-r--r--engines/lastexpress/sound/entry.cpp4
-rw-r--r--engines/lastexpress/sound/entry.h4
-rw-r--r--engines/lastexpress/sound/queue.cpp4
-rw-r--r--engines/lastexpress/sound/queue.h4
-rw-r--r--engines/lastexpress/sound/sound.cpp4
-rw-r--r--engines/lastexpress/sound/sound.h4
-rw-r--r--engines/lure/animseq.cpp4
-rw-r--r--engines/lure/animseq.h4
-rw-r--r--engines/lure/debugger.cpp4
-rw-r--r--engines/lure/debugger.h4
-rw-r--r--engines/lure/decode.cpp4
-rw-r--r--engines/lure/decode.h4
-rw-r--r--engines/lure/detection.cpp4
-rw-r--r--engines/lure/disk.cpp4
-rw-r--r--engines/lure/disk.h4
-rw-r--r--engines/lure/events.cpp4
-rw-r--r--engines/lure/events.h4
-rw-r--r--engines/lure/fights.cpp4
-rw-r--r--engines/lure/fights.h4
-rw-r--r--engines/lure/game.cpp4
-rw-r--r--engines/lure/game.h4
-rw-r--r--engines/lure/hotspots.cpp4
-rw-r--r--engines/lure/hotspots.h4
-rw-r--r--engines/lure/intro.cpp4
-rw-r--r--engines/lure/intro.h4
-rw-r--r--engines/lure/lure.cpp4
-rw-r--r--engines/lure/lure.h4
-rw-r--r--engines/lure/luredefs.h4
-rw-r--r--engines/lure/memory.cpp4
-rw-r--r--engines/lure/memory.h4
-rw-r--r--engines/lure/menu.cpp6
-rw-r--r--engines/lure/menu.h4
-rw-r--r--engines/lure/palette.cpp4
-rw-r--r--engines/lure/palette.h4
-rw-r--r--engines/lure/res.cpp4
-rw-r--r--engines/lure/res.h4
-rw-r--r--engines/lure/res_struct.cpp4
-rw-r--r--engines/lure/res_struct.h4
-rw-r--r--engines/lure/room.cpp4
-rw-r--r--engines/lure/room.h4
-rw-r--r--engines/lure/screen.cpp4
-rw-r--r--engines/lure/screen.h4
-rw-r--r--engines/lure/scripts.cpp4
-rw-r--r--engines/lure/scripts.h4
-rw-r--r--engines/lure/sound.cpp4
-rw-r--r--engines/lure/sound.h4
-rw-r--r--engines/lure/strings.cpp4
-rw-r--r--engines/lure/strings.h4
-rw-r--r--engines/lure/surface.cpp4
-rw-r--r--engines/lure/surface.h4
-rw-r--r--engines/made/console.cpp4
-rw-r--r--engines/made/console.h4
-rw-r--r--engines/made/database.cpp4
-rw-r--r--engines/made/database.h4
-rw-r--r--engines/made/detection.cpp4
-rw-r--r--engines/made/graphics.cpp4
-rw-r--r--engines/made/graphics.h4
-rw-r--r--engines/made/made.cpp4
-rw-r--r--engines/made/made.h4
-rw-r--r--engines/made/music.cpp4
-rw-r--r--engines/made/music.h4
-rw-r--r--engines/made/pmvplayer.cpp4
-rw-r--r--engines/made/pmvplayer.h4
-rw-r--r--engines/made/redreader.cpp4
-rw-r--r--engines/made/redreader.h4
-rw-r--r--engines/made/resource.cpp4
-rw-r--r--engines/made/resource.h4
-rw-r--r--engines/made/screen.cpp4
-rw-r--r--engines/made/screen.h4
-rw-r--r--engines/made/screenfx.cpp4
-rw-r--r--engines/made/screenfx.h4
-rw-r--r--engines/made/script.cpp4
-rw-r--r--engines/made/script.h4
-rw-r--r--engines/made/scriptfuncs.cpp4
-rw-r--r--engines/made/scriptfuncs.h4
-rw-r--r--engines/made/sound.cpp4
-rw-r--r--engines/made/sound.h4
-rw-r--r--engines/metaengine.h1
-rw-r--r--engines/mohawk/bitmap.cpp8
-rw-r--r--engines/mohawk/bitmap.h4
-rw-r--r--engines/mohawk/console.cpp4
-rw-r--r--engines/mohawk/console.h4
-rw-r--r--engines/mohawk/cstime.cpp4
-rw-r--r--engines/mohawk/cstime.h4
-rw-r--r--engines/mohawk/cstime_cases.cpp4
-rw-r--r--engines/mohawk/cstime_cases.h4
-rw-r--r--engines/mohawk/cstime_game.cpp4
-rw-r--r--engines/mohawk/cstime_game.h4
-rw-r--r--engines/mohawk/cstime_graphics.cpp4
-rw-r--r--engines/mohawk/cstime_graphics.h4
-rw-r--r--engines/mohawk/cstime_ui.cpp4
-rw-r--r--engines/mohawk/cstime_ui.h4
-rw-r--r--engines/mohawk/cstime_view.cpp4
-rw-r--r--engines/mohawk/cstime_view.h4
-rw-r--r--engines/mohawk/cursors.cpp4
-rw-r--r--engines/mohawk/cursors.h4
-rw-r--r--engines/mohawk/detection.cpp4
-rw-r--r--engines/mohawk/detection_tables.h4
-rw-r--r--engines/mohawk/dialogs.cpp4
-rw-r--r--engines/mohawk/dialogs.h4
-rw-r--r--engines/mohawk/graphics.cpp4
-rw-r--r--engines/mohawk/graphics.h4
-rw-r--r--engines/mohawk/installer_archive.cpp4
-rw-r--r--engines/mohawk/installer_archive.h4
-rw-r--r--engines/mohawk/livingbooks.cpp4
-rw-r--r--engines/mohawk/livingbooks.h4
-rw-r--r--engines/mohawk/livingbooks_code.cpp4
-rw-r--r--engines/mohawk/livingbooks_code.h4
-rw-r--r--engines/mohawk/livingbooks_graphics.cpp4
-rw-r--r--engines/mohawk/livingbooks_graphics.h4
-rw-r--r--engines/mohawk/livingbooks_lbx.cpp4
-rw-r--r--engines/mohawk/livingbooks_lbx.h4
-rw-r--r--engines/mohawk/mohawk.cpp4
-rw-r--r--engines/mohawk/mohawk.h4
-rw-r--r--engines/mohawk/myst.cpp4
-rw-r--r--engines/mohawk/myst.h4
-rw-r--r--engines/mohawk/myst_areas.cpp4
-rw-r--r--engines/mohawk/myst_areas.h4
-rw-r--r--engines/mohawk/myst_graphics.cpp9
-rw-r--r--engines/mohawk/myst_graphics.h4
-rw-r--r--engines/mohawk/myst_scripts.cpp4
-rw-r--r--engines/mohawk/myst_scripts.h4
-rw-r--r--engines/mohawk/myst_stacks/channelwood.cpp4
-rw-r--r--engines/mohawk/myst_stacks/channelwood.h4
-rw-r--r--engines/mohawk/myst_stacks/credits.cpp4
-rw-r--r--engines/mohawk/myst_stacks/credits.h4
-rw-r--r--engines/mohawk/myst_stacks/demo.cpp4
-rw-r--r--engines/mohawk/myst_stacks/demo.h4
-rw-r--r--engines/mohawk/myst_stacks/dni.cpp4
-rw-r--r--engines/mohawk/myst_stacks/dni.h4
-rw-r--r--engines/mohawk/myst_stacks/intro.cpp4
-rw-r--r--engines/mohawk/myst_stacks/intro.h4
-rw-r--r--engines/mohawk/myst_stacks/makingof.cpp4
-rw-r--r--engines/mohawk/myst_stacks/makingof.h4
-rw-r--r--engines/mohawk/myst_stacks/mechanical.cpp4
-rw-r--r--engines/mohawk/myst_stacks/mechanical.h4
-rw-r--r--engines/mohawk/myst_stacks/myst.cpp4
-rw-r--r--engines/mohawk/myst_stacks/myst.h4
-rw-r--r--engines/mohawk/myst_stacks/preview.cpp4
-rw-r--r--engines/mohawk/myst_stacks/preview.h4
-rw-r--r--engines/mohawk/myst_stacks/selenitic.cpp4
-rw-r--r--engines/mohawk/myst_stacks/selenitic.h4
-rw-r--r--engines/mohawk/myst_stacks/slides.cpp4
-rw-r--r--engines/mohawk/myst_stacks/slides.h4
-rw-r--r--engines/mohawk/myst_stacks/stoneship.cpp4
-rw-r--r--engines/mohawk/myst_stacks/stoneship.h4
-rw-r--r--engines/mohawk/myst_state.cpp4
-rw-r--r--engines/mohawk/myst_state.h4
-rw-r--r--engines/mohawk/resource.cpp4
-rw-r--r--engines/mohawk/resource.h4
-rw-r--r--engines/mohawk/resource_cache.cpp4
-rw-r--r--engines/mohawk/resource_cache.h4
-rw-r--r--engines/mohawk/riven.cpp4
-rw-r--r--engines/mohawk/riven.h4
-rw-r--r--engines/mohawk/riven_external.cpp4
-rw-r--r--engines/mohawk/riven_external.h4
-rw-r--r--engines/mohawk/riven_graphics.cpp4
-rw-r--r--engines/mohawk/riven_graphics.h4
-rw-r--r--engines/mohawk/riven_saveload.cpp4
-rw-r--r--engines/mohawk/riven_saveload.h4
-rw-r--r--engines/mohawk/riven_scripts.cpp4
-rw-r--r--engines/mohawk/riven_scripts.h4
-rw-r--r--engines/mohawk/riven_vars.cpp4
-rw-r--r--engines/mohawk/sound.cpp4
-rw-r--r--engines/mohawk/sound.h4
-rw-r--r--engines/mohawk/video.cpp12
-rw-r--r--engines/mohawk/video.h6
-rw-r--r--engines/mohawk/view.cpp4
-rw-r--r--engines/mohawk/view.h4
-rw-r--r--engines/mortevielle/actions.cpp23
-rw-r--r--engines/mortevielle/debugger.cpp6
-rw-r--r--engines/mortevielle/debugger.h6
-rw-r--r--engines/mortevielle/detection.cpp6
-rw-r--r--engines/mortevielle/detection_tables.h4
-rw-r--r--engines/mortevielle/dialogs.cpp10
-rw-r--r--engines/mortevielle/dialogs.h6
-rw-r--r--engines/mortevielle/graphics.cpp6
-rw-r--r--engines/mortevielle/graphics.h6
-rw-r--r--engines/mortevielle/menu.cpp26
-rw-r--r--engines/mortevielle/menu.h6
-rw-r--r--engines/mortevielle/module.mk2
-rw-r--r--engines/mortevielle/mortevielle.cpp20
-rw-r--r--engines/mortevielle/mortevielle.h6
-rw-r--r--engines/mortevielle/mouse.cpp14
-rw-r--r--engines/mortevielle/mouse.h6
-rw-r--r--engines/mortevielle/outtext.cpp10
-rw-r--r--engines/mortevielle/outtext.h6
-rw-r--r--engines/mortevielle/saveload.cpp8
-rw-r--r--engines/mortevielle/saveload.h6
-rw-r--r--engines/mortevielle/sound.cpp13
-rw-r--r--engines/mortevielle/sound.h6
-rw-r--r--engines/mortevielle/utils.cpp8
-rw-r--r--engines/neverhood/background.cpp4
-rw-r--r--engines/neverhood/background.h4
-rw-r--r--engines/neverhood/blbarchive.cpp4
-rw-r--r--engines/neverhood/blbarchive.h4
-rw-r--r--engines/neverhood/console.cpp4
-rw-r--r--engines/neverhood/console.h4
-rw-r--r--engines/neverhood/detection.cpp4
-rw-r--r--engines/neverhood/diskplayerscene.cpp4
-rw-r--r--engines/neverhood/diskplayerscene.h4
-rw-r--r--engines/neverhood/entity.cpp4
-rw-r--r--engines/neverhood/entity.h4
-rw-r--r--engines/neverhood/gamemodule.cpp4
-rw-r--r--engines/neverhood/gamemodule.h4
-rw-r--r--engines/neverhood/gamevars.cpp4
-rw-r--r--engines/neverhood/gamevars.h4
-rw-r--r--engines/neverhood/graphics.cpp4
-rw-r--r--engines/neverhood/graphics.h4
-rw-r--r--engines/neverhood/klaymen.cpp4
-rw-r--r--engines/neverhood/klaymen.h4
-rw-r--r--engines/neverhood/menumodule.cpp4
-rw-r--r--engines/neverhood/menumodule.h4
-rw-r--r--engines/neverhood/messages.h4
-rw-r--r--engines/neverhood/microtiles.cpp5
-rw-r--r--engines/neverhood/microtiles.h5
-rw-r--r--engines/neverhood/module.cpp4
-rw-r--r--engines/neverhood/module.h4
-rw-r--r--engines/neverhood/modules/module1000.cpp12
-rw-r--r--engines/neverhood/modules/module1000.h6
-rw-r--r--engines/neverhood/modules/module1000_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module1000_sprites.h4
-rw-r--r--engines/neverhood/modules/module1100.cpp6
-rw-r--r--engines/neverhood/modules/module1100.h4
-rw-r--r--engines/neverhood/modules/module1100_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module1100_sprites.h4
-rw-r--r--engines/neverhood/modules/module1200.cpp4
-rw-r--r--engines/neverhood/modules/module1200.h4
-rw-r--r--engines/neverhood/modules/module1200_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module1200_sprites.h4
-rw-r--r--engines/neverhood/modules/module1300.cpp8
-rw-r--r--engines/neverhood/modules/module1300.h4
-rw-r--r--engines/neverhood/modules/module1300_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module1300_sprites.h4
-rw-r--r--engines/neverhood/modules/module1400.cpp4
-rw-r--r--engines/neverhood/modules/module1400.h4
-rw-r--r--engines/neverhood/modules/module1400_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module1400_sprites.h4
-rw-r--r--engines/neverhood/modules/module1500.cpp4
-rw-r--r--engines/neverhood/modules/module1500.h4
-rw-r--r--engines/neverhood/modules/module1600.cpp4
-rw-r--r--engines/neverhood/modules/module1600.h4
-rw-r--r--engines/neverhood/modules/module1600_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module1600_sprites.h4
-rw-r--r--engines/neverhood/modules/module1700.cpp4
-rw-r--r--engines/neverhood/modules/module1700.h4
-rw-r--r--engines/neverhood/modules/module1700_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module1700_sprites.h4
-rw-r--r--engines/neverhood/modules/module1800.cpp4
-rw-r--r--engines/neverhood/modules/module1800.h4
-rw-r--r--engines/neverhood/modules/module1900.cpp4
-rw-r--r--engines/neverhood/modules/module1900.h4
-rw-r--r--engines/neverhood/modules/module1900_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module1900_sprites.h4
-rw-r--r--engines/neverhood/modules/module2000.cpp4
-rw-r--r--engines/neverhood/modules/module2000.h4
-rw-r--r--engines/neverhood/modules/module2000_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2000_sprites.h4
-rw-r--r--engines/neverhood/modules/module2100.cpp4
-rw-r--r--engines/neverhood/modules/module2100.h4
-rw-r--r--engines/neverhood/modules/module2100_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2100_sprites.h4
-rw-r--r--engines/neverhood/modules/module2200.cpp6
-rw-r--r--engines/neverhood/modules/module2200.h4
-rw-r--r--engines/neverhood/modules/module2200_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2200_sprites.h4
-rw-r--r--engines/neverhood/modules/module2300.cpp32
-rw-r--r--engines/neverhood/modules/module2300.h8
-rw-r--r--engines/neverhood/modules/module2400.cpp4
-rw-r--r--engines/neverhood/modules/module2400.h4
-rw-r--r--engines/neverhood/modules/module2400_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2400_sprites.h4
-rw-r--r--engines/neverhood/modules/module2500.cpp4
-rw-r--r--engines/neverhood/modules/module2500.h4
-rw-r--r--engines/neverhood/modules/module2500_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2500_sprites.h4
-rw-r--r--engines/neverhood/modules/module2600.cpp4
-rw-r--r--engines/neverhood/modules/module2600.h4
-rw-r--r--engines/neverhood/modules/module2600_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2600_sprites.h4
-rw-r--r--engines/neverhood/modules/module2700.cpp6
-rw-r--r--engines/neverhood/modules/module2700.h4
-rw-r--r--engines/neverhood/modules/module2700_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2700_sprites.h4
-rw-r--r--engines/neverhood/modules/module2800.cpp4
-rw-r--r--engines/neverhood/modules/module2800.h4
-rw-r--r--engines/neverhood/modules/module2800_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2800_sprites.h4
-rw-r--r--engines/neverhood/modules/module2900.cpp7
-rw-r--r--engines/neverhood/modules/module2900.h4
-rw-r--r--engines/neverhood/modules/module2900_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module2900_sprites.h4
-rw-r--r--engines/neverhood/modules/module3000.cpp53
-rw-r--r--engines/neverhood/modules/module3000.h8
-rw-r--r--engines/neverhood/modules/module3000_sprites.cpp4
-rw-r--r--engines/neverhood/modules/module3000_sprites.h4
-rw-r--r--engines/neverhood/mouse.cpp4
-rw-r--r--engines/neverhood/mouse.h4
-rw-r--r--engines/neverhood/navigationscene.cpp4
-rw-r--r--engines/neverhood/navigationscene.h4
-rw-r--r--engines/neverhood/neverhood.cpp4
-rw-r--r--engines/neverhood/neverhood.h4
-rw-r--r--engines/neverhood/palette.cpp4
-rw-r--r--engines/neverhood/palette.h4
-rw-r--r--engines/neverhood/resource.cpp4
-rw-r--r--engines/neverhood/resource.h4
-rw-r--r--engines/neverhood/resourceman.cpp4
-rw-r--r--engines/neverhood/resourceman.h4
-rw-r--r--engines/neverhood/saveload.cpp5
-rw-r--r--engines/neverhood/scene.cpp4
-rw-r--r--engines/neverhood/scene.h4
-rw-r--r--engines/neverhood/screen.cpp4
-rw-r--r--engines/neverhood/screen.h4
-rw-r--r--engines/neverhood/smackerplayer.cpp4
-rw-r--r--engines/neverhood/smackerplayer.h4
-rw-r--r--engines/neverhood/smackerscene.cpp4
-rw-r--r--engines/neverhood/smackerscene.h4
-rw-r--r--engines/neverhood/sound.cpp4
-rw-r--r--engines/neverhood/sound.h4
-rw-r--r--engines/neverhood/sprite.cpp4
-rw-r--r--engines/neverhood/sprite.h4
-rw-r--r--engines/neverhood/staticdata.cpp4
-rw-r--r--engines/neverhood/staticdata.h4
-rw-r--r--engines/obsolete.cpp4
-rw-r--r--engines/obsolete.h4
-rw-r--r--engines/parallaction/adlib.cpp4
-rw-r--r--engines/parallaction/balloons.cpp4
-rw-r--r--engines/parallaction/callables_br.cpp4
-rw-r--r--engines/parallaction/callables_ns.cpp4
-rw-r--r--engines/parallaction/debug.cpp4
-rw-r--r--engines/parallaction/detection.cpp4
-rw-r--r--engines/parallaction/dialogue.cpp4
-rw-r--r--engines/parallaction/disk.h4
-rw-r--r--engines/parallaction/disk_br.cpp14
-rw-r--r--engines/parallaction/disk_ns.cpp14
-rw-r--r--engines/parallaction/exec.cpp4
-rw-r--r--engines/parallaction/exec.h4
-rw-r--r--engines/parallaction/exec_br.cpp4
-rw-r--r--engines/parallaction/exec_ns.cpp4
-rw-r--r--engines/parallaction/font.cpp4
-rw-r--r--engines/parallaction/gfxbase.cpp4
-rw-r--r--engines/parallaction/graphics.cpp4
-rw-r--r--engines/parallaction/graphics.h4
-rw-r--r--engines/parallaction/gui.cpp4
-rw-r--r--engines/parallaction/gui.h4
-rw-r--r--engines/parallaction/gui_br.cpp4
-rw-r--r--engines/parallaction/gui_ns.cpp4
-rw-r--r--engines/parallaction/input.cpp4
-rw-r--r--engines/parallaction/input.h4
-rw-r--r--engines/parallaction/inventory.cpp4
-rw-r--r--engines/parallaction/inventory.h4
-rw-r--r--engines/parallaction/objects.cpp4
-rw-r--r--engines/parallaction/objects.h4
-rw-r--r--engines/parallaction/parallaction.cpp4
-rw-r--r--engines/parallaction/parallaction.h4
-rw-r--r--engines/parallaction/parallaction_br.cpp4
-rw-r--r--engines/parallaction/parallaction_ns.cpp4
-rw-r--r--engines/parallaction/parser.cpp4
-rw-r--r--engines/parallaction/parser.h4
-rw-r--r--engines/parallaction/parser_br.cpp4
-rw-r--r--engines/parallaction/parser_ns.cpp4
-rw-r--r--engines/parallaction/saveload.cpp4
-rw-r--r--engines/parallaction/saveload.h8
-rw-r--r--engines/parallaction/sound.h4
-rw-r--r--engines/parallaction/sound_br.cpp4
-rw-r--r--engines/parallaction/sound_ns.cpp4
-rw-r--r--engines/parallaction/staticres.cpp4
-rw-r--r--engines/parallaction/walk.cpp4
-rw-r--r--engines/parallaction/walk.h4
-rw-r--r--engines/pegasus/ai/ai_area.cpp2
-rw-r--r--engines/pegasus/cursor.cpp6
-rw-r--r--engines/pegasus/energymonitor.cpp1
-rw-r--r--engines/pegasus/fader.cpp1
-rw-r--r--engines/pegasus/input.cpp11
-rw-r--r--engines/pegasus/input.h2
-rw-r--r--engines/pegasus/interface.cpp8
-rw-r--r--engines/pegasus/items/inventorypicture.cpp1
-rw-r--r--engines/pegasus/items/item.cpp14
-rw-r--r--engines/pegasus/items/item.h7
-rw-r--r--engines/pegasus/items/itemlist.cpp5
-rw-r--r--engines/pegasus/items/itemlist.h1
-rw-r--r--engines/pegasus/menu.cpp2
-rw-r--r--engines/pegasus/neighborhood/caldoria/caldoria.cpp10
-rw-r--r--engines/pegasus/neighborhood/caldoria/caldoriabomb.cpp15
-rw-r--r--engines/pegasus/neighborhood/caldoria/caldoriabomb.h3
-rw-r--r--engines/pegasus/neighborhood/caldoria/caldoriamessages.cpp6
-rw-r--r--engines/pegasus/neighborhood/caldoria/caldoriamessages.h2
-rw-r--r--engines/pegasus/neighborhood/mars/mars.cpp20
-rw-r--r--engines/pegasus/neighborhood/neighborhood.cpp15
-rw-r--r--engines/pegasus/neighborhood/neighborhood.h2
-rw-r--r--engines/pegasus/neighborhood/norad/delta/globegame.cpp5
-rw-r--r--engines/pegasus/neighborhood/norad/delta/globegame.h2
-rw-r--r--engines/pegasus/neighborhood/norad/delta/noraddelta.cpp18
-rw-r--r--engines/pegasus/neighborhood/norad/delta/noraddelta.h3
-rw-r--r--engines/pegasus/neighborhood/tsa/fulltsa.cpp27
-rw-r--r--engines/pegasus/neighborhood/tsa/tinytsa.cpp23
-rw-r--r--engines/pegasus/neighborhood/wsc/wsc.cpp3
-rw-r--r--engines/pegasus/pegasus.cpp66
-rw-r--r--engines/pegasus/pegasus.h2
-rw-r--r--engines/pegasus/surface.cpp4
-rw-r--r--engines/queen/bankman.cpp4
-rw-r--r--engines/queen/bankman.h4
-rw-r--r--engines/queen/command.cpp4
-rw-r--r--engines/queen/command.h4
-rw-r--r--engines/queen/credits.cpp4
-rw-r--r--engines/queen/credits.h4
-rw-r--r--engines/queen/cutaway.cpp7
-rw-r--r--engines/queen/cutaway.h4
-rw-r--r--engines/queen/debug.cpp56
-rw-r--r--engines/queen/debug.h4
-rw-r--r--engines/queen/defs.h4
-rw-r--r--engines/queen/detection.cpp508
-rw-r--r--engines/queen/display.cpp13
-rw-r--r--engines/queen/display.h4
-rw-r--r--engines/queen/graphics.cpp8
-rw-r--r--engines/queen/graphics.h4
-rw-r--r--engines/queen/grid.cpp4
-rw-r--r--engines/queen/grid.h4
-rw-r--r--engines/queen/input.cpp4
-rw-r--r--engines/queen/input.h4
-rw-r--r--engines/queen/journal.cpp4
-rw-r--r--engines/queen/journal.h4
-rw-r--r--engines/queen/logic.cpp4
-rw-r--r--engines/queen/logic.h4
-rw-r--r--engines/queen/midiadlib.cpp4
-rw-r--r--engines/queen/module.mk1
-rw-r--r--engines/queen/music.cpp4
-rw-r--r--engines/queen/music.h4
-rw-r--r--engines/queen/musicdata.cpp4
-rw-r--r--engines/queen/queen.cpp187
-rw-r--r--engines/queen/queen.h4
-rw-r--r--engines/queen/resource.cpp4
-rw-r--r--engines/queen/resource.h4
-rw-r--r--engines/queen/restables.cpp4
-rw-r--r--engines/queen/sound.cpp4
-rw-r--r--engines/queen/sound.h4
-rw-r--r--engines/queen/state.cpp4
-rw-r--r--engines/queen/state.h4
-rw-r--r--engines/queen/structs.h4
-rw-r--r--engines/queen/talk.cpp7
-rw-r--r--engines/queen/talk.h4
-rw-r--r--engines/queen/walk.cpp4
-rw-r--r--engines/queen/walk.h4
-rw-r--r--engines/saga/actor.cpp4
-rw-r--r--engines/saga/actor.h4
-rw-r--r--engines/saga/actor_path.cpp4
-rw-r--r--engines/saga/actor_walk.cpp4
-rw-r--r--engines/saga/animation.cpp4
-rw-r--r--engines/saga/animation.h4
-rw-r--r--engines/saga/console.cpp4
-rw-r--r--engines/saga/console.h4
-rw-r--r--engines/saga/detection.cpp4
-rw-r--r--engines/saga/detection_tables.h4
-rw-r--r--engines/saga/displayinfo.h4
-rw-r--r--engines/saga/events.cpp4
-rw-r--r--engines/saga/events.h4
-rw-r--r--engines/saga/font.cpp4
-rw-r--r--engines/saga/font.h4
-rw-r--r--engines/saga/font_map.cpp4
-rw-r--r--engines/saga/gfx.cpp4
-rw-r--r--engines/saga/gfx.h4
-rw-r--r--engines/saga/image.cpp4
-rw-r--r--engines/saga/input.cpp4
-rw-r--r--engines/saga/interface.cpp4
-rw-r--r--engines/saga/interface.h4
-rw-r--r--engines/saga/introproc_ihnm.cpp4
-rw-r--r--engines/saga/introproc_ite.cpp4
-rw-r--r--engines/saga/introproc_saga2.cpp4
-rw-r--r--engines/saga/isomap.cpp4
-rw-r--r--engines/saga/isomap.h4
-rw-r--r--engines/saga/itedata.cpp4
-rw-r--r--engines/saga/itedata.h4
-rw-r--r--engines/saga/music.cpp4
-rw-r--r--engines/saga/music.h4
-rw-r--r--engines/saga/objectmap.cpp4
-rw-r--r--engines/saga/objectmap.h4
-rw-r--r--engines/saga/palanim.cpp4
-rw-r--r--engines/saga/palanim.h4
-rw-r--r--engines/saga/puzzle.cpp4
-rw-r--r--engines/saga/puzzle.h4
-rw-r--r--engines/saga/render.cpp4
-rw-r--r--engines/saga/render.h4
-rw-r--r--engines/saga/resource.cpp4
-rw-r--r--engines/saga/resource.h4
-rw-r--r--engines/saga/resource_hrs.cpp4
-rw-r--r--engines/saga/resource_res.cpp4
-rw-r--r--engines/saga/resource_rsc.cpp4
-rw-r--r--engines/saga/saga.cpp4
-rw-r--r--engines/saga/saga.h4
-rw-r--r--engines/saga/saveload.cpp4
-rw-r--r--engines/saga/scene.cpp8
-rw-r--r--engines/saga/scene.h4
-rw-r--r--engines/saga/script.cpp4
-rw-r--r--engines/saga/script.h4
-rw-r--r--engines/saga/sfuncs.cpp4
-rw-r--r--engines/saga/sfuncs_ihnm.cpp4
-rw-r--r--engines/saga/shorten.cpp4
-rw-r--r--engines/saga/shorten.h4
-rw-r--r--engines/saga/sndres.cpp4
-rw-r--r--engines/saga/sndres.h4
-rw-r--r--engines/saga/sound.cpp4
-rw-r--r--engines/saga/sound.h4
-rw-r--r--engines/saga/sprite.cpp4
-rw-r--r--engines/saga/sprite.h4
-rw-r--r--engines/saga/sthread.cpp4
-rw-r--r--engines/savestate.cpp4
-rw-r--r--engines/savestate.h4
-rw-r--r--engines/sci/console.cpp4
-rw-r--r--engines/sci/console.h4
-rw-r--r--engines/sci/debug.h4
-rw-r--r--engines/sci/decompressor.cpp4
-rw-r--r--engines/sci/decompressor.h4
-rw-r--r--engines/sci/detection.cpp4
-rw-r--r--engines/sci/detection_tables.h4
-rw-r--r--engines/sci/engine/features.cpp4
-rw-r--r--engines/sci/engine/features.h4
-rw-r--r--engines/sci/engine/file.cpp4
-rw-r--r--engines/sci/engine/file.h4
-rw-r--r--engines/sci/engine/gc.cpp4
-rw-r--r--engines/sci/engine/gc.h4
-rw-r--r--engines/sci/engine/kernel.cpp4
-rw-r--r--engines/sci/engine/kernel.h4
-rw-r--r--engines/sci/engine/kernel_tables.h8
-rw-r--r--engines/sci/engine/kevent.cpp4
-rw-r--r--engines/sci/engine/kfile.cpp27
-rw-r--r--engines/sci/engine/kgraphics.cpp4
-rw-r--r--engines/sci/engine/kgraphics32.cpp14
-rw-r--r--engines/sci/engine/klists.cpp4
-rw-r--r--engines/sci/engine/kmath.cpp4
-rw-r--r--engines/sci/engine/kmenu.cpp4
-rw-r--r--engines/sci/engine/kmisc.cpp4
-rw-r--r--engines/sci/engine/kmovement.cpp4
-rw-r--r--engines/sci/engine/kparse.cpp4
-rw-r--r--engines/sci/engine/kpathing.cpp4
-rw-r--r--engines/sci/engine/kscripts.cpp4
-rw-r--r--engines/sci/engine/ksound.cpp4
-rw-r--r--engines/sci/engine/kstring.cpp4
-rw-r--r--engines/sci/engine/kvideo.cpp4
-rw-r--r--engines/sci/engine/message.cpp4
-rw-r--r--engines/sci/engine/message.h4
-rw-r--r--engines/sci/engine/object.cpp4
-rw-r--r--engines/sci/engine/object.h4
-rw-r--r--engines/sci/engine/savegame.cpp23
-rw-r--r--engines/sci/engine/savegame.h4
-rw-r--r--engines/sci/engine/script.cpp4
-rw-r--r--engines/sci/engine/script.h4
-rw-r--r--engines/sci/engine/script_patches.cpp8
-rw-r--r--engines/sci/engine/script_patches.h4
-rw-r--r--engines/sci/engine/scriptdebug.cpp62
-rw-r--r--engines/sci/engine/seg_manager.cpp4
-rw-r--r--engines/sci/engine/seg_manager.h4
-rw-r--r--engines/sci/engine/segment.cpp4
-rw-r--r--engines/sci/engine/segment.h4
-rw-r--r--engines/sci/engine/selector.cpp4
-rw-r--r--engines/sci/engine/selector.h4
-rw-r--r--engines/sci/engine/state.cpp6
-rw-r--r--engines/sci/engine/state.h4
-rw-r--r--engines/sci/engine/static_selectors.cpp4
-rw-r--r--engines/sci/engine/vm.cpp4
-rw-r--r--engines/sci/engine/vm.h4
-rw-r--r--engines/sci/engine/vm_types.cpp41
-rw-r--r--engines/sci/engine/vm_types.h29
-rw-r--r--engines/sci/engine/workarounds.cpp9
-rw-r--r--engines/sci/engine/workarounds.h5
-rw-r--r--engines/sci/event.cpp4
-rw-r--r--engines/sci/event.h4
-rw-r--r--engines/sci/graphics/animate.cpp4
-rw-r--r--engines/sci/graphics/animate.h4
-rw-r--r--engines/sci/graphics/cache.cpp4
-rw-r--r--engines/sci/graphics/cache.h4
-rw-r--r--engines/sci/graphics/compare.cpp14
-rw-r--r--engines/sci/graphics/compare.h6
-rw-r--r--engines/sci/graphics/controls16.cpp4
-rw-r--r--engines/sci/graphics/controls16.h4
-rw-r--r--engines/sci/graphics/controls32.cpp4
-rw-r--r--engines/sci/graphics/controls32.h4
-rw-r--r--engines/sci/graphics/coordadjuster.cpp4
-rw-r--r--engines/sci/graphics/coordadjuster.h4
-rw-r--r--engines/sci/graphics/cursor.cpp4
-rw-r--r--engines/sci/graphics/cursor.h4
-rw-r--r--engines/sci/graphics/font.cpp4
-rw-r--r--engines/sci/graphics/font.h4
-rw-r--r--engines/sci/graphics/fontsjis.cpp4
-rw-r--r--engines/sci/graphics/fontsjis.h4
-rw-r--r--engines/sci/graphics/frameout.cpp4
-rw-r--r--engines/sci/graphics/frameout.h4
-rw-r--r--engines/sci/graphics/helpers.h4
-rw-r--r--engines/sci/graphics/maciconbar.cpp8
-rw-r--r--engines/sci/graphics/maciconbar.h4
-rw-r--r--engines/sci/graphics/menu.cpp4
-rw-r--r--engines/sci/graphics/menu.h4
-rw-r--r--engines/sci/graphics/paint.cpp4
-rw-r--r--engines/sci/graphics/paint.h4
-rw-r--r--engines/sci/graphics/paint16.cpp4
-rw-r--r--engines/sci/graphics/paint16.h4
-rw-r--r--engines/sci/graphics/paint32.cpp4
-rw-r--r--engines/sci/graphics/paint32.h4
-rw-r--r--engines/sci/graphics/palette.cpp4
-rw-r--r--engines/sci/graphics/palette.h4
-rw-r--r--engines/sci/graphics/picture.cpp4
-rw-r--r--engines/sci/graphics/picture.h4
-rw-r--r--engines/sci/graphics/portrait.cpp4
-rw-r--r--engines/sci/graphics/portrait.h4
-rw-r--r--engines/sci/graphics/ports.cpp4
-rw-r--r--engines/sci/graphics/ports.h4
-rw-r--r--engines/sci/graphics/screen.cpp4
-rw-r--r--engines/sci/graphics/screen.h4
-rw-r--r--engines/sci/graphics/text16.cpp4
-rw-r--r--engines/sci/graphics/text16.h4
-rw-r--r--engines/sci/graphics/text32.cpp4
-rw-r--r--engines/sci/graphics/text32.h4
-rw-r--r--engines/sci/graphics/transitions.cpp4
-rw-r--r--engines/sci/graphics/transitions.h4
-rw-r--r--engines/sci/graphics/view.cpp4
-rw-r--r--engines/sci/graphics/view.h4
-rw-r--r--engines/sci/parser/grammar.cpp4
-rw-r--r--engines/sci/parser/said.cpp4
-rw-r--r--engines/sci/parser/vocabulary.cpp11
-rw-r--r--engines/sci/parser/vocabulary.h4
-rw-r--r--engines/sci/resource.cpp13
-rw-r--r--engines/sci/resource.h4
-rw-r--r--engines/sci/resource_audio.cpp4
-rw-r--r--engines/sci/resource_intern.h4
-rw-r--r--engines/sci/sci.cpp11
-rw-r--r--engines/sci/sci.h4
-rw-r--r--engines/sci/sound/audio.cpp60
-rw-r--r--engines/sci/sound/audio.h6
-rw-r--r--engines/sci/sound/drivers/adlib.cpp4
-rw-r--r--engines/sci/sound/drivers/amigamac.cpp4
-rw-r--r--engines/sci/sound/drivers/cms.cpp4
-rw-r--r--engines/sci/sound/drivers/fb01.cpp4
-rw-r--r--engines/sci/sound/drivers/fmtowns.cpp4
-rw-r--r--engines/sci/sound/drivers/gm_names.h4
-rw-r--r--engines/sci/sound/drivers/map-mt32-to-gm.h4
-rw-r--r--engines/sci/sound/drivers/midi.cpp4
-rw-r--r--engines/sci/sound/drivers/mididriver.h4
-rw-r--r--engines/sci/sound/drivers/pcjr.cpp4
-rw-r--r--engines/sci/sound/midiparser_sci.cpp31
-rw-r--r--engines/sci/sound/midiparser_sci.h6
-rw-r--r--engines/sci/sound/music.cpp4
-rw-r--r--engines/sci/sound/music.h4
-rw-r--r--engines/sci/sound/soundcmd.cpp4
-rw-r--r--engines/sci/sound/soundcmd.h4
-rw-r--r--engines/sci/util.cpp4
-rw-r--r--engines/sci/util.h4
-rw-r--r--engines/sci/video/robot_decoder.cpp8
-rw-r--r--engines/sci/video/robot_decoder.h4
-rw-r--r--engines/sci/video/seq_decoder.cpp4
-rw-r--r--engines/sci/video/seq_decoder.h4
-rw-r--r--engines/scumm/actor.cpp4
-rw-r--r--engines/scumm/actor.h4
-rw-r--r--engines/scumm/actor_he.h4
-rw-r--r--engines/scumm/akos.cpp4
-rw-r--r--engines/scumm/akos.h4
-rw-r--r--engines/scumm/base-costume.cpp4
-rw-r--r--engines/scumm/base-costume.h4
-rw-r--r--engines/scumm/bomp.cpp3
-rw-r--r--engines/scumm/bomp.h3
-rw-r--r--engines/scumm/boxes.cpp4
-rw-r--r--engines/scumm/boxes.h4
-rw-r--r--engines/scumm/camera.cpp3
-rw-r--r--engines/scumm/charset-fontdata.cpp1
-rw-r--r--engines/scumm/charset.cpp1
-rw-r--r--engines/scumm/charset.h1
-rw-r--r--engines/scumm/costume.cpp4
-rw-r--r--engines/scumm/costume.h1
-rw-r--r--engines/scumm/cursor.cpp3
-rw-r--r--engines/scumm/debugger.cpp4
-rw-r--r--engines/scumm/debugger.h1
-rw-r--r--engines/scumm/detection.cpp4
-rw-r--r--engines/scumm/detection.h4
-rw-r--r--engines/scumm/detection_tables.h4
-rw-r--r--engines/scumm/dialogs.cpp1
-rw-r--r--engines/scumm/dialogs.h1
-rw-r--r--engines/scumm/gfx.cpp5
-rw-r--r--engines/scumm/gfx.h4
-rw-r--r--engines/scumm/gfxARM.s2
-rw-r--r--engines/scumm/gfx_towns.cpp3
-rw-r--r--engines/scumm/he/animation_he.cpp4
-rw-r--r--engines/scumm/he/animation_he.h4
-rw-r--r--engines/scumm/he/cup_player_he.cpp4
-rw-r--r--engines/scumm/he/cup_player_he.h4
-rw-r--r--engines/scumm/he/floodfill_he.cpp4
-rw-r--r--engines/scumm/he/floodfill_he.h4
-rw-r--r--engines/scumm/he/intern_he.h4
-rw-r--r--engines/scumm/he/logic/baseball2001.cpp4
-rw-r--r--engines/scumm/he/logic/basketball.cpp4
-rw-r--r--engines/scumm/he/logic/football.cpp4
-rw-r--r--engines/scumm/he/logic/funshop.cpp4
-rw-r--r--engines/scumm/he/logic/moonbase.cpp4
-rw-r--r--engines/scumm/he/logic/puttrace.cpp4
-rw-r--r--engines/scumm/he/logic/soccer.cpp6
-rw-r--r--engines/scumm/he/logic_he.cpp4
-rw-r--r--engines/scumm/he/logic_he.h4
-rw-r--r--engines/scumm/he/palette_he.cpp4
-rw-r--r--engines/scumm/he/resource_he.cpp4
-rw-r--r--engines/scumm/he/resource_he.h4
-rw-r--r--engines/scumm/he/script_v100he.cpp4
-rw-r--r--engines/scumm/he/script_v60he.cpp4
-rw-r--r--engines/scumm/he/script_v70he.cpp4
-rw-r--r--engines/scumm/he/script_v71he.cpp4
-rw-r--r--engines/scumm/he/script_v72he.cpp4
-rw-r--r--engines/scumm/he/script_v80he.cpp4
-rw-r--r--engines/scumm/he/script_v90he.cpp4
-rw-r--r--engines/scumm/he/sound_he.cpp4
-rw-r--r--engines/scumm/he/sound_he.h1
-rw-r--r--engines/scumm/he/sprite_he.cpp4
-rw-r--r--engines/scumm/he/sprite_he.h4
-rw-r--r--engines/scumm/he/wiz_he.cpp4
-rw-r--r--engines/scumm/he/wiz_he.h4
-rw-r--r--engines/scumm/imuse/imuse.cpp4
-rw-r--r--engines/scumm/imuse/imuse.h4
-rw-r--r--engines/scumm/imuse/imuse_internal.h1
-rw-r--r--engines/scumm/imuse/imuse_part.cpp4
-rw-r--r--engines/scumm/imuse/imuse_player.cpp1
-rw-r--r--engines/scumm/imuse/instrument.cpp1
-rw-r--r--engines/scumm/imuse/instrument.h1
-rw-r--r--engines/scumm/imuse/mac_m68k.cpp1
-rw-r--r--engines/scumm/imuse/mac_m68k.h1
-rw-r--r--engines/scumm/imuse/pcspk.cpp1
-rw-r--r--engines/scumm/imuse/pcspk.h1
-rw-r--r--engines/scumm/imuse/sysex.h1
-rw-r--r--engines/scumm/imuse/sysex_samnmax.cpp1
-rw-r--r--engines/scumm/imuse/sysex_scumm.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse.h1
-rw-r--r--engines/scumm/imuse_digi/dimuse_bndmgr.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse_bndmgr.h1
-rw-r--r--engines/scumm/imuse_digi/dimuse_codecs.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse_codecs.h1
-rw-r--r--engines/scumm/imuse_digi/dimuse_music.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse_script.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse_sndmgr.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse_sndmgr.h1
-rw-r--r--engines/scumm/imuse_digi/dimuse_tables.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse_tables.h1
-rw-r--r--engines/scumm/imuse_digi/dimuse_track.cpp1
-rw-r--r--engines/scumm/imuse_digi/dimuse_track.h1
-rw-r--r--engines/scumm/input.cpp4
-rw-r--r--engines/scumm/insane/insane.cpp4
-rw-r--r--engines/scumm/insane/insane.h4
-rw-r--r--engines/scumm/insane/insane_ben.cpp4
-rw-r--r--engines/scumm/insane/insane_enemy.cpp4
-rw-r--r--engines/scumm/insane/insane_iact.cpp4
-rw-r--r--engines/scumm/insane/insane_scenes.cpp4
-rw-r--r--engines/scumm/midiparser_ro.cpp4
-rw-r--r--engines/scumm/music.h4
-rw-r--r--engines/scumm/nut_renderer.cpp1
-rw-r--r--engines/scumm/nut_renderer.h1
-rw-r--r--engines/scumm/object.cpp4
-rw-r--r--engines/scumm/object.h1
-rw-r--r--engines/scumm/palette.cpp3
-rw-r--r--engines/scumm/players/player_ad.cpp2
-rw-r--r--engines/scumm/players/player_apple2.cpp4
-rw-r--r--engines/scumm/players/player_apple2.h4
-rw-r--r--engines/scumm/players/player_mac.cpp4
-rw-r--r--engines/scumm/players/player_mac.h4
-rw-r--r--engines/scumm/players/player_mod.cpp4
-rw-r--r--engines/scumm/players/player_mod.h4
-rw-r--r--engines/scumm/players/player_nes.cpp6
-rw-r--r--engines/scumm/players/player_nes.h4
-rw-r--r--engines/scumm/players/player_pce.cpp4
-rw-r--r--engines/scumm/players/player_pce.h4
-rw-r--r--engines/scumm/players/player_sid.cpp4
-rw-r--r--engines/scumm/players/player_sid.h4
-rw-r--r--engines/scumm/players/player_towns.cpp4
-rw-r--r--engines/scumm/players/player_towns.h4
-rw-r--r--engines/scumm/players/player_v1.cpp4
-rw-r--r--engines/scumm/players/player_v1.h4
-rw-r--r--engines/scumm/players/player_v2.cpp4
-rw-r--r--engines/scumm/players/player_v2.h4
-rw-r--r--engines/scumm/players/player_v2a.cpp4
-rw-r--r--engines/scumm/players/player_v2a.h4
-rw-r--r--engines/scumm/players/player_v2base.cpp4
-rw-r--r--engines/scumm/players/player_v2base.h4
-rw-r--r--engines/scumm/players/player_v2cms.cpp4
-rw-r--r--engines/scumm/players/player_v2cms.h4
-rw-r--r--engines/scumm/players/player_v3a.cpp4
-rw-r--r--engines/scumm/players/player_v3a.h4
-rw-r--r--engines/scumm/players/player_v3m.cpp4
-rw-r--r--engines/scumm/players/player_v3m.h4
-rw-r--r--engines/scumm/players/player_v4a.cpp4
-rw-r--r--engines/scumm/players/player_v4a.h4
-rw-r--r--engines/scumm/players/player_v5m.cpp4
-rw-r--r--engines/scumm/players/player_v5m.h4
-rw-r--r--engines/scumm/proc3ARM.s17
-rw-r--r--engines/scumm/resource.cpp4
-rw-r--r--engines/scumm/resource.h1
-rw-r--r--engines/scumm/resource_v2.cpp4
-rw-r--r--engines/scumm/resource_v3.cpp4
-rw-r--r--engines/scumm/resource_v4.cpp4
-rw-r--r--engines/scumm/room.cpp4
-rw-r--r--engines/scumm/saveload.cpp41
-rw-r--r--engines/scumm/saveload.h4
-rw-r--r--engines/scumm/script.cpp4
-rw-r--r--engines/scumm/script.h4
-rw-r--r--engines/scumm/script_v0.cpp4
-rw-r--r--engines/scumm/script_v2.cpp4
-rw-r--r--engines/scumm/script_v3.cpp4
-rw-r--r--engines/scumm/script_v4.cpp4
-rw-r--r--engines/scumm/script_v5.cpp4
-rw-r--r--engines/scumm/script_v6.cpp4
-rw-r--r--engines/scumm/script_v8.cpp4
-rw-r--r--engines/scumm/scumm.cpp4
-rw-r--r--engines/scumm/scumm.h4
-rw-r--r--engines/scumm/scumm_v0.h4
-rw-r--r--engines/scumm/scumm_v2.h4
-rw-r--r--engines/scumm/scumm_v3.h4
-rw-r--r--engines/scumm/scumm_v4.h4
-rw-r--r--engines/scumm/scumm_v5.h4
-rw-r--r--engines/scumm/scumm_v6.h4
-rw-r--r--engines/scumm/scumm_v7.h4
-rw-r--r--engines/scumm/scumm_v8.h4
-rw-r--r--engines/scumm/smush/channel.cpp4
-rw-r--r--engines/scumm/smush/channel.h4
-rw-r--r--engines/scumm/smush/codec1.cpp4
-rw-r--r--engines/scumm/smush/codec37.cpp4
-rw-r--r--engines/scumm/smush/codec37.h4
-rw-r--r--engines/scumm/smush/codec47.cpp4
-rw-r--r--engines/scumm/smush/codec47.h4
-rw-r--r--engines/scumm/smush/codec47ARM.s1
-rw-r--r--engines/scumm/smush/imuse_channel.cpp4
-rw-r--r--engines/scumm/smush/saud_channel.cpp4
-rw-r--r--engines/scumm/smush/smush_font.cpp4
-rw-r--r--engines/scumm/smush/smush_font.h4
-rw-r--r--engines/scumm/smush/smush_mixer.cpp4
-rw-r--r--engines/scumm/smush/smush_mixer.h4
-rw-r--r--engines/scumm/smush/smush_player.cpp4
-rw-r--r--engines/scumm/smush/smush_player.h4
-rw-r--r--engines/scumm/sound.cpp4
-rw-r--r--engines/scumm/sound.h1
-rw-r--r--engines/scumm/string.cpp4
-rw-r--r--engines/scumm/vars.cpp4
-rw-r--r--engines/scumm/verbs.cpp4
-rw-r--r--engines/scumm/verbs.h1
-rw-r--r--engines/sky/autoroute.cpp4
-rw-r--r--engines/sky/autoroute.h4
-rw-r--r--engines/sky/control.cpp4
-rw-r--r--engines/sky/control.h4
-rw-r--r--engines/sky/debug.cpp33
-rw-r--r--engines/sky/detection.cpp4
-rw-r--r--engines/sky/disk.cpp4
-rw-r--r--engines/sky/disk.h4
-rw-r--r--engines/sky/grid.cpp4
-rw-r--r--engines/sky/grid.h4
-rw-r--r--engines/sky/hufftext.cpp4
-rw-r--r--engines/sky/intro.cpp4
-rw-r--r--engines/sky/intro.h4
-rw-r--r--engines/sky/logic.cpp4
-rw-r--r--engines/sky/logic.h4
-rw-r--r--engines/sky/mouse.cpp4
-rw-r--r--engines/sky/mouse.h4
-rw-r--r--engines/sky/music/adlibchannel.cpp4
-rw-r--r--engines/sky/music/adlibchannel.h4
-rw-r--r--engines/sky/music/adlibmusic.cpp4
-rw-r--r--engines/sky/music/adlibmusic.h4
-rw-r--r--engines/sky/music/gmchannel.cpp4
-rw-r--r--engines/sky/music/gmchannel.h4
-rw-r--r--engines/sky/music/gmmusic.cpp4
-rw-r--r--engines/sky/music/gmmusic.h4
-rw-r--r--engines/sky/music/mt32music.cpp4
-rw-r--r--engines/sky/music/mt32music.h4
-rw-r--r--engines/sky/music/musicbase.cpp4
-rw-r--r--engines/sky/music/musicbase.h4
-rw-r--r--engines/sky/rnc_deco.cpp4
-rw-r--r--engines/sky/rnc_deco.h4
-rw-r--r--engines/sky/screen.cpp4
-rw-r--r--engines/sky/screen.h4
-rw-r--r--engines/sky/sky.cpp4
-rw-r--r--engines/sky/sky.h4
-rw-r--r--engines/sky/skydefs.h4
-rw-r--r--engines/sky/sound.cpp4
-rw-r--r--engines/sky/sound.h4
-rw-r--r--engines/sky/struc.h4
-rw-r--r--engines/sky/text.cpp4
-rw-r--r--engines/sky/text.h4
-rw-r--r--engines/sword1/animation.cpp4
-rw-r--r--engines/sword1/animation.h4
-rw-r--r--engines/sword1/collision.h4
-rw-r--r--engines/sword1/console.cpp4
-rw-r--r--engines/sword1/console.h4
-rw-r--r--engines/sword1/control.cpp4
-rw-r--r--engines/sword1/control.h4
-rw-r--r--engines/sword1/debug.cpp4
-rw-r--r--engines/sword1/debug.h4
-rw-r--r--engines/sword1/detection.cpp4
-rw-r--r--engines/sword1/eventman.cpp4
-rw-r--r--engines/sword1/eventman.h4
-rw-r--r--engines/sword1/logic.cpp4
-rw-r--r--engines/sword1/logic.h4
-rw-r--r--engines/sword1/memman.cpp4
-rw-r--r--engines/sword1/memman.h4
-rw-r--r--engines/sword1/menu.cpp4
-rw-r--r--engines/sword1/menu.h4
-rw-r--r--engines/sword1/module.mk2
-rw-r--r--engines/sword1/mouse.cpp4
-rw-r--r--engines/sword1/mouse.h4
-rw-r--r--engines/sword1/music.cpp4
-rw-r--r--engines/sword1/music.h4
-rw-r--r--engines/sword1/object.h4
-rw-r--r--engines/sword1/objectman.cpp4
-rw-r--r--engines/sword1/objectman.h4
-rw-r--r--engines/sword1/resman.cpp4
-rw-r--r--engines/sword1/resman.h4
-rw-r--r--engines/sword1/router.cpp4
-rw-r--r--engines/sword1/router.h4
-rw-r--r--engines/sword1/screen.cpp4
-rw-r--r--engines/sword1/screen.h4
-rw-r--r--engines/sword1/sound.cpp4
-rw-r--r--engines/sword1/sound.h4
-rw-r--r--engines/sword1/staticres.cpp10
-rw-r--r--engines/sword1/sword1.cpp4
-rw-r--r--engines/sword1/sword1.h4
-rw-r--r--engines/sword1/sworddefs.h4
-rw-r--r--engines/sword1/swordres.h4
-rw-r--r--engines/sword1/text.cpp4
-rw-r--r--engines/sword1/text.h4
-rw-r--r--engines/sword25/console.cpp4
-rw-r--r--engines/sword25/console.h4
-rw-r--r--engines/sword25/detection.cpp4
-rw-r--r--engines/sword25/detection_tables.h4
-rw-r--r--engines/sword25/fmv/movieplayer.cpp4
-rw-r--r--engines/sword25/fmv/movieplayer.h4
-rw-r--r--engines/sword25/fmv/movieplayer_script.cpp4
-rw-r--r--engines/sword25/gfx/animation.cpp4
-rw-r--r--engines/sword25/gfx/animation.h4
-rw-r--r--engines/sword25/gfx/animationdescription.cpp4
-rw-r--r--engines/sword25/gfx/animationdescription.h4
-rw-r--r--engines/sword25/gfx/animationresource.cpp4
-rw-r--r--engines/sword25/gfx/animationresource.h4
-rw-r--r--engines/sword25/gfx/animationtemplate.cpp4
-rw-r--r--engines/sword25/gfx/animationtemplate.h4
-rw-r--r--engines/sword25/gfx/animationtemplateregistry.cpp4
-rw-r--r--engines/sword25/gfx/animationtemplateregistry.h4
-rw-r--r--engines/sword25/gfx/bitmap.cpp4
-rw-r--r--engines/sword25/gfx/bitmap.h4
-rw-r--r--engines/sword25/gfx/bitmapresource.h4
-rw-r--r--engines/sword25/gfx/dynamicbitmap.cpp4
-rw-r--r--engines/sword25/gfx/dynamicbitmap.h4
-rw-r--r--engines/sword25/gfx/fontresource.cpp4
-rw-r--r--engines/sword25/gfx/fontresource.h4
-rw-r--r--engines/sword25/gfx/graphicengine.cpp4
-rw-r--r--engines/sword25/gfx/graphicengine.h4
-rw-r--r--engines/sword25/gfx/graphicengine_script.cpp4
-rw-r--r--engines/sword25/gfx/image/art.cpp4
-rw-r--r--engines/sword25/gfx/image/art.h4
-rw-r--r--engines/sword25/gfx/image/image.h4
-rw-r--r--engines/sword25/gfx/image/imgloader.cpp8
-rw-r--r--engines/sword25/gfx/image/imgloader.h4
-rw-r--r--engines/sword25/gfx/image/renderedimage.cpp4
-rw-r--r--engines/sword25/gfx/image/renderedimage.h4
-rw-r--r--engines/sword25/gfx/image/swimage.cpp4
-rw-r--r--engines/sword25/gfx/image/swimage.h4
-rw-r--r--engines/sword25/gfx/image/vectorimage.cpp4
-rw-r--r--engines/sword25/gfx/image/vectorimage.h4
-rw-r--r--engines/sword25/gfx/image/vectorimagerenderer.cpp4
-rw-r--r--engines/sword25/gfx/microtiles.cpp5
-rw-r--r--engines/sword25/gfx/microtiles.h5
-rw-r--r--engines/sword25/gfx/panel.cpp4
-rw-r--r--engines/sword25/gfx/panel.h4
-rw-r--r--engines/sword25/gfx/renderobject.cpp4
-rw-r--r--engines/sword25/gfx/renderobject.h4
-rw-r--r--engines/sword25/gfx/renderobjectmanager.cpp4
-rw-r--r--engines/sword25/gfx/renderobjectmanager.h4
-rw-r--r--engines/sword25/gfx/renderobjectptr.h4
-rw-r--r--engines/sword25/gfx/renderobjectregistry.h4
-rw-r--r--engines/sword25/gfx/rootrenderobject.h4
-rw-r--r--engines/sword25/gfx/screenshot.cpp4
-rw-r--r--engines/sword25/gfx/screenshot.h4
-rw-r--r--engines/sword25/gfx/staticbitmap.cpp4
-rw-r--r--engines/sword25/gfx/staticbitmap.h4
-rw-r--r--engines/sword25/gfx/text.cpp4
-rw-r--r--engines/sword25/gfx/text.h4
-rw-r--r--engines/sword25/gfx/timedrenderobject.cpp4
-rw-r--r--engines/sword25/gfx/timedrenderobject.h4
-rw-r--r--engines/sword25/input/inputengine.cpp4
-rw-r--r--engines/sword25/input/inputengine.h4
-rw-r--r--engines/sword25/input/inputengine_script.cpp4
-rw-r--r--engines/sword25/kernel/common.h4
-rw-r--r--engines/sword25/kernel/filesystemutil.cpp4
-rw-r--r--engines/sword25/kernel/filesystemutil.h4
-rw-r--r--engines/sword25/kernel/inputpersistenceblock.cpp4
-rw-r--r--engines/sword25/kernel/inputpersistenceblock.h4
-rw-r--r--engines/sword25/kernel/kernel.cpp4
-rw-r--r--engines/sword25/kernel/kernel.h4
-rw-r--r--engines/sword25/kernel/kernel_script.cpp4
-rw-r--r--engines/sword25/kernel/objectregistry.h4
-rw-r--r--engines/sword25/kernel/outputpersistenceblock.cpp4
-rw-r--r--engines/sword25/kernel/outputpersistenceblock.h4
-rw-r--r--engines/sword25/kernel/persistable.h4
-rw-r--r--engines/sword25/kernel/persistenceblock.h4
-rw-r--r--engines/sword25/kernel/persistenceservice.cpp4
-rw-r--r--engines/sword25/kernel/persistenceservice.h4
-rw-r--r--engines/sword25/kernel/resmanager.cpp4
-rw-r--r--engines/sword25/kernel/resmanager.h4
-rw-r--r--engines/sword25/kernel/resource.cpp4
-rw-r--r--engines/sword25/kernel/resource.h4
-rw-r--r--engines/sword25/kernel/resservice.h4
-rw-r--r--engines/sword25/kernel/service.h4
-rw-r--r--engines/sword25/math/geometry.h4
-rw-r--r--engines/sword25/math/geometry_script.cpp4
-rw-r--r--engines/sword25/math/line.h4
-rw-r--r--engines/sword25/math/polygon.cpp4
-rw-r--r--engines/sword25/math/polygon.h4
-rw-r--r--engines/sword25/math/region.cpp4
-rw-r--r--engines/sword25/math/region.h4
-rw-r--r--engines/sword25/math/regionregistry.cpp4
-rw-r--r--engines/sword25/math/regionregistry.h4
-rw-r--r--engines/sword25/math/vertex.cpp4
-rw-r--r--engines/sword25/math/vertex.h4
-rw-r--r--engines/sword25/math/walkregion.cpp4
-rw-r--r--engines/sword25/math/walkregion.h4
-rw-r--r--engines/sword25/package/packagemanager.cpp4
-rw-r--r--engines/sword25/package/packagemanager.h4
-rw-r--r--engines/sword25/package/packagemanager_script.cpp4
-rw-r--r--engines/sword25/script/lua_extensions.cpp4
-rw-r--r--engines/sword25/script/luabindhelper.cpp4
-rw-r--r--engines/sword25/script/luabindhelper.h4
-rw-r--r--engines/sword25/script/luacallback.cpp4
-rw-r--r--engines/sword25/script/luacallback.h4
-rw-r--r--engines/sword25/script/luascript.cpp4
-rw-r--r--engines/sword25/script/luascript.h4
-rw-r--r--engines/sword25/script/script.h4
-rw-r--r--engines/sword25/sfx/soundengine.cpp4
-rw-r--r--engines/sword25/sfx/soundengine.h4
-rw-r--r--engines/sword25/sfx/soundengine_script.cpp4
-rw-r--r--engines/sword25/sword25.cpp4
-rw-r--r--engines/sword25/sword25.h4
-rw-r--r--engines/sword25/util/lua/scummvm_file.cpp4
-rw-r--r--engines/sword25/util/lua/scummvm_file.h4
-rw-r--r--engines/teenagent/actor.cpp1
-rw-r--r--engines/teenagent/actor.h1
-rw-r--r--engines/teenagent/animation.cpp1
-rw-r--r--engines/teenagent/animation.h1
-rw-r--r--engines/teenagent/callbacks.cpp3
-rw-r--r--engines/teenagent/console.cpp1
-rw-r--r--engines/teenagent/console.h1
-rw-r--r--engines/teenagent/detection.cpp5
-rw-r--r--engines/teenagent/dialog.cpp1
-rw-r--r--engines/teenagent/dialog.h1
-rw-r--r--engines/teenagent/font.cpp1
-rw-r--r--engines/teenagent/font.h1
-rw-r--r--engines/teenagent/inventory.cpp1
-rw-r--r--engines/teenagent/inventory.h1
-rw-r--r--engines/teenagent/music.cpp4
-rw-r--r--engines/teenagent/music.h4
-rw-r--r--engines/teenagent/objects.cpp1
-rw-r--r--engines/teenagent/objects.h1
-rw-r--r--engines/teenagent/pack.cpp1
-rw-r--r--engines/teenagent/pack.h1
-rw-r--r--engines/teenagent/resources.cpp1
-rw-r--r--engines/teenagent/resources.h3
-rw-r--r--engines/teenagent/scene.cpp1
-rw-r--r--engines/teenagent/scene.h1
-rw-r--r--engines/teenagent/segment.cpp1
-rw-r--r--engines/teenagent/segment.h1
-rw-r--r--engines/teenagent/surface.cpp1
-rw-r--r--engines/teenagent/surface.h1
-rw-r--r--engines/teenagent/surface_list.cpp1
-rw-r--r--engines/teenagent/surface_list.h1
-rw-r--r--engines/teenagent/teenagent.cpp1
-rw-r--r--engines/teenagent/teenagent.h1
-rw-r--r--engines/testbed/config-params.cpp1
-rw-r--r--engines/testbed/config-params.h1
-rw-r--r--engines/testbed/config.cpp1
-rw-r--r--engines/testbed/config.h1
-rw-r--r--engines/testbed/detection.cpp4
-rw-r--r--engines/testbed/events.cpp1
-rw-r--r--engines/testbed/events.h1
-rw-r--r--engines/testbed/fs.cpp1
-rw-r--r--engines/testbed/fs.h1
-rw-r--r--engines/testbed/graphics.cpp1
-rw-r--r--engines/testbed/graphics.h1
-rw-r--r--engines/testbed/midi.cpp1
-rw-r--r--engines/testbed/midi.h1
-rw-r--r--engines/testbed/misc.cpp1
-rw-r--r--engines/testbed/misc.h1
-rw-r--r--engines/testbed/savegame.cpp1
-rw-r--r--engines/testbed/savegame.h1
-rw-r--r--engines/testbed/sound.cpp1
-rw-r--r--engines/testbed/sound.h1
-rw-r--r--engines/testbed/template.h1
-rw-r--r--engines/testbed/testbed.cpp1
-rw-r--r--engines/testbed/testbed.h1
-rw-r--r--engines/testbed/testsuite.cpp1
-rw-r--r--engines/testbed/testsuite.h1
-rw-r--r--engines/tinsel/actors.cpp4
-rw-r--r--engines/tinsel/actors.h4
-rw-r--r--engines/tinsel/adpcm.cpp4
-rw-r--r--engines/tinsel/adpcm.h4
-rw-r--r--engines/tinsel/anim.cpp4
-rw-r--r--engines/tinsel/anim.h4
-rw-r--r--engines/tinsel/background.cpp4
-rw-r--r--engines/tinsel/background.h4
-rw-r--r--engines/tinsel/bg.cpp4
-rw-r--r--engines/tinsel/bmv.cpp4
-rw-r--r--engines/tinsel/bmv.h2
-rw-r--r--engines/tinsel/cliprect.cpp4
-rw-r--r--engines/tinsel/cliprect.h4
-rw-r--r--engines/tinsel/config.cpp4
-rw-r--r--engines/tinsel/config.h4
-rw-r--r--engines/tinsel/cursor.cpp4
-rw-r--r--engines/tinsel/cursor.h4
-rw-r--r--engines/tinsel/debugger.cpp4
-rw-r--r--engines/tinsel/debugger.h4
-rw-r--r--engines/tinsel/detection.cpp4
-rw-r--r--engines/tinsel/detection_tables.h4
-rw-r--r--engines/tinsel/dialogs.cpp4
-rw-r--r--engines/tinsel/dialogs.h4
-rw-r--r--engines/tinsel/drives.cpp4
-rw-r--r--engines/tinsel/drives.h4
-rw-r--r--engines/tinsel/dw.h4
-rw-r--r--engines/tinsel/effect.cpp4
-rw-r--r--engines/tinsel/events.cpp4
-rw-r--r--engines/tinsel/events.h4
-rw-r--r--engines/tinsel/faders.cpp4
-rw-r--r--engines/tinsel/faders.h4
-rw-r--r--engines/tinsel/film.h4
-rw-r--r--engines/tinsel/font.cpp4
-rw-r--r--engines/tinsel/font.h4
-rw-r--r--engines/tinsel/graphics.cpp4
-rw-r--r--engines/tinsel/graphics.h2
-rw-r--r--engines/tinsel/handle.cpp4
-rw-r--r--engines/tinsel/handle.h4
-rw-r--r--engines/tinsel/heapmem.cpp4
-rw-r--r--engines/tinsel/heapmem.h4
-rw-r--r--engines/tinsel/mareels.cpp4
-rw-r--r--engines/tinsel/mareels.h4
-rw-r--r--engines/tinsel/move.cpp4
-rw-r--r--engines/tinsel/move.h4
-rw-r--r--engines/tinsel/multiobj.cpp4
-rw-r--r--engines/tinsel/multiobj.h4
-rw-r--r--engines/tinsel/music.cpp4
-rw-r--r--engines/tinsel/music.h4
-rw-r--r--engines/tinsel/object.cpp4
-rw-r--r--engines/tinsel/object.h2
-rw-r--r--engines/tinsel/palette.cpp4
-rw-r--r--engines/tinsel/palette.h2
-rw-r--r--engines/tinsel/pcode.cpp4
-rw-r--r--engines/tinsel/pcode.h2
-rw-r--r--engines/tinsel/pdisplay.cpp4
-rw-r--r--engines/tinsel/pdisplay.h2
-rw-r--r--engines/tinsel/pid.h2
-rw-r--r--engines/tinsel/play.cpp4
-rw-r--r--engines/tinsel/play.h2
-rw-r--r--engines/tinsel/polygons.cpp4
-rw-r--r--engines/tinsel/polygons.h2
-rw-r--r--engines/tinsel/rince.cpp4
-rw-r--r--engines/tinsel/rince.h2
-rw-r--r--engines/tinsel/saveload.cpp4
-rw-r--r--engines/tinsel/savescn.cpp4
-rw-r--r--engines/tinsel/savescn.h2
-rw-r--r--engines/tinsel/scene.cpp4
-rw-r--r--engines/tinsel/scene.h2
-rw-r--r--engines/tinsel/sched.cpp4
-rw-r--r--engines/tinsel/sched.h2
-rw-r--r--engines/tinsel/scn.cpp4
-rw-r--r--engines/tinsel/scn.h2
-rw-r--r--engines/tinsel/scroll.cpp4
-rw-r--r--engines/tinsel/scroll.h2
-rw-r--r--engines/tinsel/sound.cpp4
-rw-r--r--engines/tinsel/sound.h4
-rw-r--r--engines/tinsel/strres.cpp4
-rw-r--r--engines/tinsel/strres.h4
-rw-r--r--engines/tinsel/sysvar.cpp4
-rw-r--r--engines/tinsel/sysvar.h4
-rw-r--r--engines/tinsel/text.cpp4
-rw-r--r--engines/tinsel/text.h4
-rw-r--r--engines/tinsel/timers.cpp4
-rw-r--r--engines/tinsel/timers.h4
-rw-r--r--engines/tinsel/tinlib.cpp4
-rw-r--r--engines/tinsel/tinlib.h4
-rw-r--r--engines/tinsel/tinsel.cpp4
-rw-r--r--engines/tinsel/tinsel.h4
-rw-r--r--engines/tinsel/token.cpp4
-rw-r--r--engines/tinsel/token.h4
-rw-r--r--engines/toltecs/animation.cpp5
-rw-r--r--engines/toltecs/animation.h5
-rw-r--r--engines/toltecs/console.cpp4
-rw-r--r--engines/toltecs/console.h4
-rw-r--r--engines/toltecs/detection.cpp7
-rw-r--r--engines/toltecs/menu.cpp17
-rw-r--r--engines/toltecs/menu.h5
-rw-r--r--engines/toltecs/microtiles.cpp14
-rw-r--r--engines/toltecs/microtiles.h5
-rw-r--r--engines/toltecs/movie.cpp5
-rw-r--r--engines/toltecs/movie.h5
-rw-r--r--engines/toltecs/music.cpp4
-rw-r--r--engines/toltecs/music.h4
-rw-r--r--engines/toltecs/palette.cpp9
-rw-r--r--engines/toltecs/palette.h5
-rw-r--r--engines/toltecs/render.cpp23
-rw-r--r--engines/toltecs/render.h5
-rw-r--r--engines/toltecs/resource.cpp5
-rw-r--r--engines/toltecs/resource.h5
-rw-r--r--engines/toltecs/saveload.cpp5
-rw-r--r--engines/toltecs/screen.cpp5
-rw-r--r--engines/toltecs/screen.h5
-rw-r--r--engines/toltecs/script.cpp5
-rw-r--r--engines/toltecs/script.h5
-rw-r--r--engines/toltecs/segmap.cpp5
-rw-r--r--engines/toltecs/segmap.h5
-rw-r--r--engines/toltecs/sound.cpp5
-rw-r--r--engines/toltecs/sound.h5
-rw-r--r--engines/toltecs/sprite.cpp5
-rw-r--r--engines/toltecs/toltecs.cpp5
-rw-r--r--engines/toltecs/toltecs.h5
-rw-r--r--engines/tony/custom.cpp5
-rw-r--r--engines/tony/custom.h4
-rw-r--r--engines/tony/debugger.cpp6
-rw-r--r--engines/tony/debugger.h6
-rw-r--r--engines/tony/detection.cpp9
-rw-r--r--engines/tony/detection_tables.h4
-rw-r--r--engines/tony/font.cpp4
-rw-r--r--engines/tony/font.h5
-rw-r--r--engines/tony/game.cpp9
-rw-r--r--engines/tony/game.h5
-rw-r--r--engines/tony/gfxcore.cpp13
-rw-r--r--engines/tony/gfxcore.h6
-rw-r--r--engines/tony/gfxengine.cpp13
-rw-r--r--engines/tony/gfxengine.h4
-rw-r--r--engines/tony/globals.cpp4
-rw-r--r--engines/tony/globals.h4
-rw-r--r--engines/tony/input.cpp4
-rw-r--r--engines/tony/input.h4
-rw-r--r--engines/tony/inventory.cpp11
-rw-r--r--engines/tony/inventory.h6
-rw-r--r--engines/tony/loc.cpp17
-rw-r--r--engines/tony/loc.h6
-rw-r--r--engines/tony/mpal/expr.cpp5
-rw-r--r--engines/tony/mpal/expr.h5
-rw-r--r--engines/tony/mpal/loadmpc.cpp9
-rw-r--r--engines/tony/mpal/loadmpc.h5
-rw-r--r--engines/tony/mpal/lzo.cpp386
-rw-r--r--engines/tony/mpal/lzo.h26
-rw-r--r--engines/tony/mpal/memory.cpp5
-rw-r--r--engines/tony/mpal/memory.h5
-rw-r--r--engines/tony/mpal/mpal.cpp20
-rw-r--r--engines/tony/mpal/mpal.h11
-rw-r--r--engines/tony/mpal/mpaldll.h5
-rw-r--r--engines/tony/mpal/mpalutils.cpp5
-rw-r--r--engines/tony/mpal/mpalutils.h5
-rw-r--r--engines/tony/resid.h4
-rw-r--r--engines/tony/sound.cpp4
-rw-r--r--engines/tony/sound.h4
-rw-r--r--engines/tony/tony.cpp4
-rw-r--r--engines/tony/tony.h4
-rw-r--r--engines/tony/tonychar.cpp4
-rw-r--r--engines/tony/tonychar.h4
-rw-r--r--engines/tony/utils.cpp4
-rw-r--r--engines/tony/utils.h4
-rw-r--r--engines/tony/window.cpp4
-rw-r--r--engines/tony/window.h4
-rw-r--r--engines/toon/anim.cpp4
-rw-r--r--engines/toon/anim.h4
-rw-r--r--engines/toon/audio.cpp4
-rw-r--r--engines/toon/audio.h4
-rw-r--r--engines/toon/character.cpp40
-rw-r--r--engines/toon/character.h40
-rw-r--r--engines/toon/console.cpp4
-rw-r--r--engines/toon/console.h4
-rw-r--r--engines/toon/conversation.cpp40
-rw-r--r--engines/toon/conversation.h40
-rw-r--r--engines/toon/detection.cpp7
-rw-r--r--engines/toon/drew.cpp4
-rw-r--r--engines/toon/drew.h40
-rw-r--r--engines/toon/flux.cpp40
-rw-r--r--engines/toon/flux.h40
-rw-r--r--engines/toon/font.cpp40
-rw-r--r--engines/toon/font.h40
-rw-r--r--engines/toon/hotspot.cpp40
-rw-r--r--engines/toon/hotspot.h40
-rw-r--r--engines/toon/movie.cpp40
-rw-r--r--engines/toon/movie.h40
-rw-r--r--engines/toon/path.cpp40
-rw-r--r--engines/toon/path.h40
-rw-r--r--engines/toon/picture.cpp45
-rw-r--r--engines/toon/picture.h40
-rw-r--r--engines/toon/resource.cpp40
-rw-r--r--engines/toon/resource.h40
-rw-r--r--engines/toon/script.cpp40
-rw-r--r--engines/toon/script.h40
-rw-r--r--engines/toon/script_func.cpp40
-rw-r--r--engines/toon/script_func.h40
-rw-r--r--engines/toon/state.cpp40
-rw-r--r--engines/toon/state.h40
-rw-r--r--engines/toon/text.cpp40
-rw-r--r--engines/toon/text.h40
-rw-r--r--engines/toon/tools.cpp40
-rw-r--r--engines/toon/tools.h40
-rw-r--r--engines/toon/toon.cpp69
-rw-r--r--engines/toon/toon.h40
-rw-r--r--engines/touche/console.cpp4
-rw-r--r--engines/touche/console.h4
-rw-r--r--engines/touche/detection.cpp4
-rw-r--r--engines/touche/graphics.cpp4
-rw-r--r--engines/touche/graphics.h4
-rw-r--r--engines/touche/menu.cpp14
-rw-r--r--engines/touche/midi.cpp4
-rw-r--r--engines/touche/midi.h4
-rw-r--r--engines/touche/opcodes.cpp4
-rw-r--r--engines/touche/resource.cpp4
-rw-r--r--engines/touche/saveload.cpp4
-rw-r--r--engines/touche/staticres.cpp4
-rw-r--r--engines/touche/touche.cpp8
-rw-r--r--engines/touche/touche.h4
-rw-r--r--engines/tsage/blue_force/blueforce_dialogs.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_dialogs.h6
-rw-r--r--engines/tsage/blue_force/blueforce_logic.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_logic.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes0.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes0.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes1.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes1.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes2.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes2.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes3.cpp8
-rw-r--r--engines/tsage/blue_force/blueforce_scenes3.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes4.cpp8
-rw-r--r--engines/tsage/blue_force/blueforce_scenes4.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes5.cpp8
-rw-r--r--engines/tsage/blue_force/blueforce_scenes5.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes6.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes6.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes7.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes7.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes8.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes8.h6
-rw-r--r--engines/tsage/blue_force/blueforce_scenes9.cpp8
-rw-r--r--engines/tsage/blue_force/blueforce_scenes9.h6
-rw-r--r--engines/tsage/blue_force/blueforce_speakers.cpp6
-rw-r--r--engines/tsage/blue_force/blueforce_speakers.h6
-rw-r--r--engines/tsage/converse.cpp11
-rw-r--r--engines/tsage/converse.h6
-rw-r--r--engines/tsage/core.cpp14
-rw-r--r--engines/tsage/core.h8
-rw-r--r--engines/tsage/debugger.cpp110
-rw-r--r--engines/tsage/debugger.h6
-rw-r--r--engines/tsage/detection.cpp26
-rw-r--r--engines/tsage/detection_tables.h6
-rw-r--r--engines/tsage/dialogs.cpp6
-rw-r--r--engines/tsage/dialogs.h6
-rw-r--r--engines/tsage/events.cpp6
-rw-r--r--engines/tsage/events.h8
-rw-r--r--engines/tsage/globals.cpp7
-rw-r--r--engines/tsage/globals.h6
-rw-r--r--engines/tsage/graphics.cpp13
-rw-r--r--engines/tsage/graphics.h6
-rw-r--r--engines/tsage/resources.cpp6
-rw-r--r--engines/tsage/resources.h6
-rw-r--r--engines/tsage/ringworld/ringworld_demo.cpp6
-rw-r--r--engines/tsage/ringworld/ringworld_demo.h6
-rw-r--r--engines/tsage/ringworld/ringworld_dialogs.cpp9
-rw-r--r--engines/tsage/ringworld/ringworld_dialogs.h6
-rw-r--r--engines/tsage/ringworld/ringworld_logic.cpp6
-rw-r--r--engines/tsage/ringworld/ringworld_logic.h6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes1.cpp8
-rw-r--r--engines/tsage/ringworld/ringworld_scenes1.h6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes10.cpp8
-rw-r--r--engines/tsage/ringworld/ringworld_scenes10.h6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes2.cpp6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes2.h6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes3.cpp10
-rw-r--r--engines/tsage/ringworld/ringworld_scenes3.h6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes4.cpp6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes4.h6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes5.cpp6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes5.h6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes6.cpp6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes6.h6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes8.cpp6
-rw-r--r--engines/tsage/ringworld/ringworld_scenes8.h6
-rw-r--r--engines/tsage/ringworld/ringworld_speakers.cpp6
-rw-r--r--engines/tsage/ringworld/ringworld_speakers.h6
-rw-r--r--engines/tsage/ringworld2/ringworld2_dialogs.cpp25
-rw-r--r--engines/tsage/ringworld2/ringworld2_dialogs.h6
-rw-r--r--engines/tsage/ringworld2/ringworld2_logic.cpp33
-rw-r--r--engines/tsage/ringworld2/ringworld2_logic.h9
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes0.cpp154
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes0.h12
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes1.cpp60
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes1.h6
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes2.cpp10
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes2.h6
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes3.cpp40
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes3.h6
-rw-r--r--engines/tsage/ringworld2/ringworld2_speakers.cpp6
-rw-r--r--engines/tsage/ringworld2/ringworld2_speakers.h6
-rw-r--r--engines/tsage/saveload.cpp46
-rw-r--r--engines/tsage/saveload.h18
-rw-r--r--engines/tsage/scenes.cpp7
-rw-r--r--engines/tsage/scenes.h6
-rw-r--r--engines/tsage/sound.cpp217
-rw-r--r--engines/tsage/sound.h11
-rw-r--r--engines/tsage/staticres.cpp4
-rw-r--r--engines/tsage/staticres.h4
-rw-r--r--engines/tsage/tsage.cpp6
-rw-r--r--engines/tsage/tsage.h6
-rw-r--r--engines/tsage/user_interface.cpp10
-rw-r--r--engines/tsage/user_interface.h6
-rw-r--r--engines/tucker/console.cpp6
-rw-r--r--engines/tucker/console.h4
-rw-r--r--engines/tucker/detection.cpp4
-rw-r--r--engines/tucker/graphics.cpp36
-rw-r--r--engines/tucker/graphics.h14
-rw-r--r--engines/tucker/locations.cpp1243
-rw-r--r--engines/tucker/resource.cpp235
-rw-r--r--engines/tucker/saveload.cpp8
-rw-r--r--engines/tucker/sequences.cpp34
-rw-r--r--engines/tucker/staticres.cpp4
-rw-r--r--engines/tucker/tucker.cpp893
-rw-r--r--engines/tucker/tucker.h268
-rw-r--r--engines/util.h1
-rw-r--r--engines/voyeur/animation.cpp501
-rw-r--r--engines/voyeur/animation.h195
-rw-r--r--engines/voyeur/configure.engine4
-rw-r--r--engines/voyeur/data.cpp371
-rw-r--r--engines/voyeur/data.h232
-rw-r--r--engines/voyeur/debugger.cpp175
-rw-r--r--engines/voyeur/debugger.h70
-rw-r--r--engines/voyeur/detection.cpp181
-rw-r--r--engines/voyeur/detection_tables.h (renamed from devtools/create_kyradat/tables.h)39
-rw-r--r--engines/voyeur/events.cpp613
-rw-r--r--engines/voyeur/events.h145
-rw-r--r--engines/voyeur/files.cpp1621
-rw-r--r--engines/voyeur/files.h619
-rw-r--r--engines/voyeur/files_threads.cpp1731
-rw-r--r--engines/voyeur/graphics.cpp1054
-rw-r--r--engines/voyeur/graphics.h119
-rw-r--r--engines/voyeur/module.mk23
-rw-r--r--engines/voyeur/sound.cpp85
-rw-r--r--engines/voyeur/sound.h (renamed from engines/avalanche/pingo.h)55
-rw-r--r--engines/voyeur/staticres.cpp142
-rw-r--r--engines/voyeur/staticres.h63
-rw-r--r--engines/voyeur/voyeur.cpp921
-rw-r--r--engines/voyeur/voyeur.h320
-rw-r--r--engines/voyeur/voyeur_game.cpp1423
-rw-r--r--engines/wintermute/ad/ad_actor.cpp4
-rw-r--r--engines/wintermute/ad/ad_actor.h4
-rw-r--r--engines/wintermute/ad/ad_entity.cpp4
-rw-r--r--engines/wintermute/ad/ad_entity.h4
-rw-r--r--engines/wintermute/ad/ad_game.cpp4
-rw-r--r--engines/wintermute/ad/ad_game.h4
-rw-r--r--engines/wintermute/ad/ad_inventory.cpp4
-rw-r--r--engines/wintermute/ad/ad_inventory.h4
-rw-r--r--engines/wintermute/ad/ad_inventory_box.cpp4
-rw-r--r--engines/wintermute/ad/ad_inventory_box.h4
-rw-r--r--engines/wintermute/ad/ad_item.cpp4
-rw-r--r--engines/wintermute/ad/ad_item.h4
-rw-r--r--engines/wintermute/ad/ad_layer.cpp4
-rw-r--r--engines/wintermute/ad/ad_layer.h4
-rw-r--r--engines/wintermute/ad/ad_node_state.cpp4
-rw-r--r--engines/wintermute/ad/ad_node_state.h4
-rw-r--r--engines/wintermute/ad/ad_object.cpp4
-rw-r--r--engines/wintermute/ad/ad_object.h4
-rw-r--r--engines/wintermute/ad/ad_path.cpp4
-rw-r--r--engines/wintermute/ad/ad_path.h4
-rw-r--r--engines/wintermute/ad/ad_path_point.cpp4
-rw-r--r--engines/wintermute/ad/ad_path_point.h4
-rw-r--r--engines/wintermute/ad/ad_region.cpp4
-rw-r--r--engines/wintermute/ad/ad_region.h4
-rw-r--r--engines/wintermute/ad/ad_response.cpp4
-rw-r--r--engines/wintermute/ad/ad_response.h4
-rw-r--r--engines/wintermute/ad/ad_response_box.cpp4
-rw-r--r--engines/wintermute/ad/ad_response_box.h4
-rw-r--r--engines/wintermute/ad/ad_response_context.cpp4
-rw-r--r--engines/wintermute/ad/ad_response_context.h4
-rw-r--r--engines/wintermute/ad/ad_rot_level.cpp4
-rw-r--r--engines/wintermute/ad/ad_rot_level.h4
-rw-r--r--engines/wintermute/ad/ad_scale_level.cpp4
-rw-r--r--engines/wintermute/ad/ad_scale_level.h4
-rw-r--r--engines/wintermute/ad/ad_scene.cpp12
-rw-r--r--engines/wintermute/ad/ad_scene.h4
-rw-r--r--engines/wintermute/ad/ad_scene_node.cpp4
-rw-r--r--engines/wintermute/ad/ad_scene_node.h4
-rw-r--r--engines/wintermute/ad/ad_scene_state.cpp4
-rw-r--r--engines/wintermute/ad/ad_scene_state.h4
-rw-r--r--engines/wintermute/ad/ad_sentence.cpp4
-rw-r--r--engines/wintermute/ad/ad_sentence.h4
-rw-r--r--engines/wintermute/ad/ad_sprite_set.cpp4
-rw-r--r--engines/wintermute/ad/ad_sprite_set.h4
-rw-r--r--engines/wintermute/ad/ad_talk_def.cpp4
-rw-r--r--engines/wintermute/ad/ad_talk_def.h4
-rw-r--r--engines/wintermute/ad/ad_talk_holder.cpp4
-rw-r--r--engines/wintermute/ad/ad_talk_holder.h4
-rw-r--r--engines/wintermute/ad/ad_talk_node.cpp4
-rw-r--r--engines/wintermute/ad/ad_talk_node.h4
-rw-r--r--engines/wintermute/ad/ad_types.h4
-rw-r--r--engines/wintermute/ad/ad_waypoint_group.cpp4
-rw-r--r--engines/wintermute/ad/ad_waypoint_group.h4
-rw-r--r--engines/wintermute/base/base.cpp4
-rw-r--r--engines/wintermute/base/base.h4
-rw-r--r--engines/wintermute/base/base_active_rect.cpp4
-rw-r--r--engines/wintermute/base/base_active_rect.h4
-rw-r--r--engines/wintermute/base/base_dynamic_buffer.cpp4
-rw-r--r--engines/wintermute/base/base_dynamic_buffer.h4
-rw-r--r--engines/wintermute/base/base_engine.cpp4
-rw-r--r--engines/wintermute/base/base_engine.h4
-rw-r--r--engines/wintermute/base/base_fader.cpp4
-rw-r--r--engines/wintermute/base/base_fader.h4
-rw-r--r--engines/wintermute/base/base_file_manager.cpp4
-rw-r--r--engines/wintermute/base/base_file_manager.h4
-rw-r--r--engines/wintermute/base/base_frame.cpp4
-rw-r--r--engines/wintermute/base/base_frame.h4
-rw-r--r--engines/wintermute/base/base_game.cpp4
-rw-r--r--engines/wintermute/base/base_game.h4
-rw-r--r--engines/wintermute/base/base_game_music.cpp4
-rw-r--r--engines/wintermute/base/base_game_music.h4
-rw-r--r--engines/wintermute/base/base_game_settings.cpp4
-rw-r--r--engines/wintermute/base/base_game_settings.h4
-rw-r--r--engines/wintermute/base/base_keyboard_state.cpp4
-rw-r--r--engines/wintermute/base/base_keyboard_state.h4
-rw-r--r--engines/wintermute/base/base_named_object.cpp4
-rw-r--r--engines/wintermute/base/base_named_object.h4
-rw-r--r--engines/wintermute/base/base_object.cpp4
-rw-r--r--engines/wintermute/base/base_object.h4
-rw-r--r--engines/wintermute/base/base_parser.cpp4
-rw-r--r--engines/wintermute/base/base_parser.h4
-rw-r--r--engines/wintermute/base/base_persistence_manager.cpp8
-rw-r--r--engines/wintermute/base/base_persistence_manager.h4
-rw-r--r--engines/wintermute/base/base_point.cpp4
-rw-r--r--engines/wintermute/base/base_point.h4
-rw-r--r--engines/wintermute/base/base_quick_msg.cpp4
-rw-r--r--engines/wintermute/base/base_quick_msg.h4
-rw-r--r--engines/wintermute/base/base_region.cpp4
-rw-r--r--engines/wintermute/base/base_region.h4
-rw-r--r--engines/wintermute/base/base_script_holder.cpp4
-rw-r--r--engines/wintermute/base/base_script_holder.h4
-rw-r--r--engines/wintermute/base/base_scriptable.cpp4
-rw-r--r--engines/wintermute/base/base_scriptable.h4
-rw-r--r--engines/wintermute/base/base_sprite.cpp4
-rw-r--r--engines/wintermute/base/base_sprite.h4
-rw-r--r--engines/wintermute/base/base_string_table.cpp4
-rw-r--r--engines/wintermute/base/base_string_table.h4
-rw-r--r--engines/wintermute/base/base_sub_frame.cpp8
-rw-r--r--engines/wintermute/base/base_sub_frame.h4
-rw-r--r--engines/wintermute/base/base_surface_storage.cpp4
-rw-r--r--engines/wintermute/base/base_surface_storage.h4
-rw-r--r--engines/wintermute/base/base_transition_manager.cpp4
-rw-r--r--engines/wintermute/base/base_transition_manager.h4
-rw-r--r--engines/wintermute/base/base_viewport.cpp4
-rw-r--r--engines/wintermute/base/base_viewport.h4
-rw-r--r--engines/wintermute/base/file/base_disk_file.cpp4
-rw-r--r--engines/wintermute/base/file/base_disk_file.h4
-rw-r--r--engines/wintermute/base/file/base_file.cpp4
-rw-r--r--engines/wintermute/base/file/base_file.h4
-rw-r--r--engines/wintermute/base/file/base_file_entry.cpp4
-rw-r--r--engines/wintermute/base/file/base_file_entry.h4
-rw-r--r--engines/wintermute/base/file/base_package.cpp4
-rw-r--r--engines/wintermute/base/file/base_package.h4
-rw-r--r--engines/wintermute/base/file/base_save_thumb_file.cpp4
-rw-r--r--engines/wintermute/base/file/base_save_thumb_file.h4
-rw-r--r--engines/wintermute/base/file/dcpackage.h4
-rw-r--r--engines/wintermute/base/font/base_font.cpp4
-rw-r--r--engines/wintermute/base/font/base_font.h4
-rw-r--r--engines/wintermute/base/font/base_font_bitmap.cpp4
-rw-r--r--engines/wintermute/base/font/base_font_bitmap.h4
-rw-r--r--engines/wintermute/base/font/base_font_storage.cpp4
-rw-r--r--engines/wintermute/base/font/base_font_storage.h4
-rw-r--r--engines/wintermute/base/font/base_font_truetype.cpp23
-rw-r--r--engines/wintermute/base/font/base_font_truetype.h4
-rw-r--r--engines/wintermute/base/gfx/base_image.cpp24
-rw-r--r--engines/wintermute/base/gfx/base_image.h11
-rw-r--r--engines/wintermute/base/gfx/base_renderer.cpp4
-rw-r--r--engines/wintermute/base/gfx/base_renderer.h4
-rw-r--r--engines/wintermute/base/gfx/base_surface.cpp4
-rw-r--r--engines/wintermute/base/gfx/base_surface.h4
-rw-r--r--engines/wintermute/base/gfx/osystem/base_render_osystem.cpp10
-rw-r--r--engines/wintermute/base/gfx/osystem/base_render_osystem.h4
-rw-r--r--engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp14
-rw-r--r--engines/wintermute/base/gfx/osystem/base_surface_osystem.h4
-rw-r--r--engines/wintermute/base/gfx/osystem/render_ticket.cpp8
-rw-r--r--engines/wintermute/base/gfx/osystem/render_ticket.h22
-rw-r--r--engines/wintermute/base/particles/part_emitter.cpp4
-rw-r--r--engines/wintermute/base/particles/part_emitter.h4
-rw-r--r--engines/wintermute/base/particles/part_force.cpp4
-rw-r--r--engines/wintermute/base/particles/part_force.h4
-rw-r--r--engines/wintermute/base/particles/part_particle.cpp4
-rw-r--r--engines/wintermute/base/particles/part_particle.h4
-rw-r--r--engines/wintermute/base/save_thumb_helper.cpp4
-rw-r--r--engines/wintermute/base/save_thumb_helper.h4
-rw-r--r--engines/wintermute/base/saveload.cpp4
-rw-r--r--engines/wintermute/base/saveload.h4
-rw-r--r--engines/wintermute/base/scriptables/dcscript.h4
-rw-r--r--engines/wintermute/base/scriptables/script.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script.h4
-rw-r--r--engines/wintermute/base/scriptables/script_engine.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_engine.h4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_array.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_array.h4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_date.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_date.h4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_file.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_file.h4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_math.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_math.h4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_mem_buffer.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_mem_buffer.h4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_object.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_object.h4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_string.cpp8
-rw-r--r--engines/wintermute/base/scriptables/script_ext_string.h4
-rw-r--r--engines/wintermute/base/scriptables/script_stack.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_stack.h4
-rw-r--r--engines/wintermute/base/scriptables/script_value.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_value.h4
-rw-r--r--engines/wintermute/base/sound/base_sound.cpp4
-rw-r--r--engines/wintermute/base/sound/base_sound.h4
-rw-r--r--engines/wintermute/base/sound/base_sound_buffer.cpp4
-rw-r--r--engines/wintermute/base/sound/base_sound_buffer.h4
-rw-r--r--engines/wintermute/base/sound/base_sound_manager.cpp4
-rw-r--r--engines/wintermute/base/sound/base_sound_manager.h4
-rw-r--r--engines/wintermute/base/timer.cpp4
-rw-r--r--engines/wintermute/base/timer.h4
-rw-r--r--engines/wintermute/coll_templ.h4
-rw-r--r--engines/wintermute/dcgf.h4
-rw-r--r--engines/wintermute/dctypes.h4
-rw-r--r--engines/wintermute/debugger.cpp4
-rw-r--r--engines/wintermute/debugger.h4
-rw-r--r--engines/wintermute/detection.cpp12
-rw-r--r--engines/wintermute/detection_tables.h114
-rw-r--r--engines/wintermute/graphics/transform_struct.cpp76
-rw-r--r--engines/wintermute/graphics/transform_struct.h4
-rw-r--r--engines/wintermute/graphics/transform_tools.cpp4
-rw-r--r--engines/wintermute/graphics/transform_tools.h4
-rw-r--r--engines/wintermute/graphics/transparent_surface.cpp155
-rw-r--r--engines/wintermute/graphics/transparent_surface.h13
-rw-r--r--engines/wintermute/math/floatpoint.h4
-rw-r--r--engines/wintermute/math/math_util.cpp4
-rw-r--r--engines/wintermute/math/math_util.h4
-rw-r--r--engines/wintermute/math/matrix4.cpp4
-rw-r--r--engines/wintermute/math/matrix4.h4
-rw-r--r--engines/wintermute/math/rect32.h4
-rw-r--r--engines/wintermute/math/vector2.cpp4
-rw-r--r--engines/wintermute/math/vector2.h4
-rw-r--r--engines/wintermute/module.mk10
-rw-r--r--engines/wintermute/persistent.cpp4
-rw-r--r--engines/wintermute/persistent.h4
-rw-r--r--engines/wintermute/platform_osystem.cpp4
-rw-r--r--engines/wintermute/platform_osystem.h4
-rw-r--r--engines/wintermute/system/sys_class.cpp4
-rw-r--r--engines/wintermute/system/sys_class.h4
-rw-r--r--engines/wintermute/system/sys_class_registry.cpp4
-rw-r--r--engines/wintermute/system/sys_class_registry.h4
-rw-r--r--engines/wintermute/system/sys_instance.cpp4
-rw-r--r--engines/wintermute/system/sys_instance.h4
-rw-r--r--engines/wintermute/ui/ui_button.cpp4
-rw-r--r--engines/wintermute/ui/ui_button.h4
-rw-r--r--engines/wintermute/ui/ui_edit.cpp4
-rw-r--r--engines/wintermute/ui/ui_edit.h4
-rw-r--r--engines/wintermute/ui/ui_entity.cpp4
-rw-r--r--engines/wintermute/ui/ui_entity.h4
-rw-r--r--engines/wintermute/ui/ui_object.cpp4
-rw-r--r--engines/wintermute/ui/ui_object.h4
-rw-r--r--engines/wintermute/ui/ui_text.cpp4
-rw-r--r--engines/wintermute/ui/ui_text.h4
-rw-r--r--engines/wintermute/ui/ui_tiled_image.cpp4
-rw-r--r--engines/wintermute/ui/ui_tiled_image.h4
-rw-r--r--engines/wintermute/ui/ui_window.cpp4
-rw-r--r--engines/wintermute/ui/ui_window.h4
-rw-r--r--engines/wintermute/utils/path_util.cpp4
-rw-r--r--engines/wintermute/utils/path_util.h4
-rw-r--r--engines/wintermute/utils/string_util.cpp4
-rw-r--r--engines/wintermute/utils/string_util.h4
-rw-r--r--engines/wintermute/utils/utils.cpp4
-rw-r--r--engines/wintermute/utils/utils.h4
-rw-r--r--engines/wintermute/video/video_player.cpp4
-rw-r--r--engines/wintermute/video/video_player.h4
-rw-r--r--engines/wintermute/video/video_theora_player.cpp7
-rw-r--r--engines/wintermute/video/video_theora_player.h4
-rw-r--r--engines/wintermute/wintermute.cpp15
-rw-r--r--engines/wintermute/wintermute.h4
-rw-r--r--engines/wintermute/wintypes.h4
-rw-r--r--engines/zvision/animation/rlf_animation.cpp44
-rw-r--r--engines/zvision/animation/rlf_animation.h4
-rw-r--r--engines/zvision/archives/zfs_archive.cpp4
-rw-r--r--engines/zvision/archives/zfs_archive.h4
-rw-r--r--engines/zvision/core/console.cpp40
-rw-r--r--engines/zvision/core/console.h40
-rw-r--r--engines/zvision/core/events.cpp4
-rw-r--r--engines/zvision/core/menu.h4
-rw-r--r--engines/zvision/core/save_manager.cpp4
-rw-r--r--engines/zvision/core/save_manager.h6
-rw-r--r--engines/zvision/cursors/cursor.cpp44
-rw-r--r--engines/zvision/cursors/cursor.h6
-rw-r--r--engines/zvision/cursors/cursor_manager.cpp40
-rw-r--r--engines/zvision/cursors/cursor_manager.h6
-rw-r--r--engines/zvision/detection.cpp5
-rw-r--r--engines/zvision/detection.h40
-rw-r--r--engines/zvision/fonts/truetype_font.cpp11
-rw-r--r--engines/zvision/fonts/truetype_font.h16
-rw-r--r--engines/zvision/graphics/render_manager.cpp52
-rw-r--r--engines/zvision/graphics/render_manager.h20
-rw-r--r--engines/zvision/graphics/render_table.cpp50
-rw-r--r--engines/zvision/graphics/render_table.h4
-rw-r--r--engines/zvision/inventory/inventory_manager.h4
-rw-r--r--engines/zvision/module.mk10
-rw-r--r--engines/zvision/scripting/actions.cpp4
-rw-r--r--engines/zvision/scripting/actions.h4
-rw-r--r--engines/zvision/scripting/control.cpp4
-rw-r--r--engines/zvision/scripting/control.h6
-rw-r--r--engines/zvision/scripting/controls/animation_control.cpp6
-rw-r--r--engines/zvision/scripting/controls/animation_control.h4
-rw-r--r--engines/zvision/scripting/controls/input_control.cpp6
-rw-r--r--engines/zvision/scripting/controls/input_control.h4
-rw-r--r--engines/zvision/scripting/controls/lever_control.cpp4
-rw-r--r--engines/zvision/scripting/controls/lever_control.h4
-rw-r--r--engines/zvision/scripting/controls/push_toggle_control.cpp4
-rw-r--r--engines/zvision/scripting/controls/push_toggle_control.h4
-rw-r--r--engines/zvision/scripting/controls/timer_node.cpp4
-rw-r--r--engines/zvision/scripting/controls/timer_node.h4
-rw-r--r--engines/zvision/scripting/puzzle.h6
-rw-r--r--engines/zvision/scripting/scr_file_handling.cpp4
-rw-r--r--engines/zvision/scripting/script_manager.cpp40
-rw-r--r--engines/zvision/scripting/script_manager.h24
-rw-r--r--engines/zvision/sound/zork_raw.cpp14
-rw-r--r--engines/zvision/sound/zork_raw.h6
-rw-r--r--engines/zvision/strings/string_manager.cpp10
-rw-r--r--engines/zvision/strings/string_manager.h5
-rw-r--r--engines/zvision/subtitles/subtitles.h5
-rw-r--r--engines/zvision/utility/clock.cpp7
-rw-r--r--engines/zvision/utility/clock.h9
-rw-r--r--engines/zvision/utility/lzss_read_stream.cpp40
-rw-r--r--engines/zvision/utility/lzss_read_stream.h42
-rw-r--r--engines/zvision/utility/single_value_container.cpp4
-rw-r--r--engines/zvision/utility/single_value_container.h26
-rw-r--r--engines/zvision/utility/utility.cpp4
-rw-r--r--engines/zvision/utility/utility.h7
-rw-r--r--engines/zvision/video/video.cpp4
-rw-r--r--engines/zvision/video/zork_avi_decoder.cpp5
-rw-r--r--engines/zvision/video/zork_avi_decoder.h9
-rw-r--r--engines/zvision/zvision.cpp18
-rw-r--r--engines/zvision/zvision.h13
-rw-r--r--graphics/colormasks.h4
-rw-r--r--graphics/conversion.cpp1
-rw-r--r--graphics/conversion.h4
-rw-r--r--graphics/cursor.h4
-rw-r--r--graphics/cursorman.cpp1
-rw-r--r--graphics/cursorman.h1
-rw-r--r--graphics/font.cpp1
-rw-r--r--graphics/font.h1
-rw-r--r--graphics/fontman.cpp1
-rw-r--r--graphics/fontman.h1
-rw-r--r--graphics/fonts/bdf.cpp1
-rw-r--r--graphics/fonts/bdf.h1
-rw-r--r--graphics/fonts/winfont.cpp1
-rw-r--r--graphics/fonts/winfont.h1
-rw-r--r--graphics/maccursor.cpp4
-rw-r--r--graphics/maccursor.h4
-rw-r--r--graphics/module.mk9
-rw-r--r--graphics/palette.h4
-rw-r--r--graphics/pixelformat.h4
-rw-r--r--graphics/primitives.cpp1
-rw-r--r--graphics/primitives.h1
-rw-r--r--graphics/scaler.cpp4
-rw-r--r--graphics/scaler.h1
-rw-r--r--graphics/scaler/2xsai.cpp4
-rw-r--r--graphics/scaler/Normal2xARM.s2
-rw-r--r--graphics/scaler/aspect.cpp4
-rw-r--r--graphics/scaler/aspect.h1
-rw-r--r--graphics/scaler/downscaler.cpp4
-rw-r--r--graphics/scaler/downscaler.h4
-rw-r--r--graphics/scaler/downscalerARM.s1
-rw-r--r--graphics/scaler/hq2x.cpp4
-rw-r--r--graphics/scaler/hq3x.cpp4
-rw-r--r--graphics/scaler/intern.h4
-rw-r--r--graphics/scaler/scale2xARM.s3
-rw-r--r--graphics/scaler/thumbnail_intern.cpp4
-rw-r--r--graphics/sjis.cpp1
-rw-r--r--graphics/sjis.h1
-rw-r--r--graphics/surface.cpp1
-rw-r--r--graphics/surface.h1
-rw-r--r--graphics/thumbnail.cpp1
-rw-r--r--graphics/thumbnail.h1
-rw-r--r--graphics/wincursor.cpp4
-rw-r--r--graphics/wincursor.h4
-rw-r--r--gui/Actions.cpp4
-rw-r--r--gui/Actions.h4
-rw-r--r--gui/EventRecorder.cpp4
-rw-r--r--gui/EventRecorder.h4
-rw-r--r--gui/Key.cpp4
-rw-r--r--gui/Key.h4
-rw-r--r--gui/KeysDialog.cpp4
-rw-r--r--gui/KeysDialog.h4
-rw-r--r--gui/ThemeEngine.cpp5
-rw-r--r--gui/Tooltip.cpp1
-rw-r--r--gui/Tooltip.h1
-rw-r--r--gui/about.cpp1
-rw-r--r--gui/about.h1
-rw-r--r--gui/browser.cpp1
-rw-r--r--gui/browser.h1
-rw-r--r--gui/chooser.cpp1
-rw-r--r--gui/chooser.h1
-rw-r--r--gui/console.cpp1
-rw-r--r--gui/console.h1
-rw-r--r--gui/debugger.cpp4
-rw-r--r--gui/debugger.h1
-rw-r--r--gui/dialog.cpp14
-rw-r--r--gui/dialog.h1
-rw-r--r--gui/editrecorddialog.cpp4
-rw-r--r--gui/editrecorddialog.h4
-rw-r--r--gui/error.cpp4
-rw-r--r--gui/error.h4
-rw-r--r--gui/fluidsynth-dialog.cpp1
-rw-r--r--gui/fluidsynth-dialog.h1
-rw-r--r--gui/gui-manager.cpp1
-rw-r--r--gui/gui-manager.h1
-rw-r--r--gui/launcher.cpp1
-rw-r--r--gui/launcher.h1
-rw-r--r--gui/massadd.cpp1
-rw-r--r--gui/massadd.h1
-rw-r--r--gui/message.cpp1
-rw-r--r--gui/message.h1
-rw-r--r--gui/object.cpp1
-rw-r--r--gui/object.h1
-rw-r--r--gui/onscreendialog.cpp4
-rw-r--r--gui/onscreendialog.h4
-rw-r--r--gui/options.cpp1
-rw-r--r--gui/options.h1
-rw-r--r--gui/predictivedialog.cpp4
-rw-r--r--gui/predictivedialog.h1
-rw-r--r--gui/recorderdialog.cpp1
-rw-r--r--gui/recorderdialog.h1
-rw-r--r--gui/saveload-dialog.cpp1
-rw-r--r--gui/saveload-dialog.h1
-rw-r--r--gui/saveload.cpp1
-rw-r--r--gui/saveload.h1
-rw-r--r--gui/themebrowser.cpp1
-rw-r--r--gui/themebrowser.h1
-rw-r--r--gui/themes/translations.datbin441486 -> 430660 bytes
-rw-r--r--gui/widget.cpp1
-rw-r--r--gui/widget.h1
-rw-r--r--gui/widgets/editable.cpp1
-rw-r--r--gui/widgets/editable.h1
-rw-r--r--gui/widgets/edittext.cpp1
-rw-r--r--gui/widgets/edittext.h1
-rw-r--r--gui/widgets/list.cpp1
-rw-r--r--gui/widgets/list.h1
-rw-r--r--gui/widgets/popup.cpp1
-rw-r--r--gui/widgets/popup.h1
-rw-r--r--gui/widgets/scrollbar.cpp1
-rw-r--r--gui/widgets/scrollbar.h1
-rw-r--r--gui/widgets/tab.cpp30
-rw-r--r--gui/widgets/tab.h8
-rw-r--r--image/bmp.cpp (renamed from graphics/decoders/bmp.cpp)103
-rw-r--r--image/bmp.h (renamed from graphics/decoders/bmp.h)23
-rw-r--r--image/codecs/bmp_raw.cpp113
-rw-r--r--image/codecs/bmp_raw.h (renamed from video/codecs/jpeg.h)41
-rw-r--r--image/codecs/cdtoons.cpp (renamed from video/codecs/cdtoons.cpp)120
-rw-r--r--image/codecs/cdtoons.h (renamed from video/codecs/cdtoons.h)19
-rw-r--r--image/codecs/cinepak.cpp (renamed from video/codecs/cinepak.cpp)106
-rw-r--r--image/codecs/cinepak.h (renamed from video/codecs/cinepak.h)24
-rw-r--r--image/codecs/codec.cpp117
-rw-r--r--image/codecs/codec.h (renamed from video/codecs/codec.h)41
-rw-r--r--image/codecs/indeo3.cpp (renamed from video/codecs/indeo3.cpp)62
-rw-r--r--image/codecs/indeo3.h (renamed from video/codecs/indeo3.h)21
-rw-r--r--image/codecs/mjpeg.cpp (renamed from video/codecs/mjpeg.cpp)28
-rw-r--r--image/codecs/mjpeg.h (renamed from video/codecs/mjpeg.h)19
-rw-r--r--image/codecs/mpeg.cpp (renamed from video/codecs/mpeg.cpp)16
-rw-r--r--image/codecs/mpeg.h (renamed from video/codecs/mpeg.h)27
-rw-r--r--image/codecs/msrle.cpp (renamed from video/codecs/msrle.cpp)30
-rw-r--r--image/codecs/msrle.h (renamed from video/codecs/msrle.h)21
-rw-r--r--image/codecs/msvideo1.cpp (renamed from video/codecs/msvideo1.cpp)28
-rw-r--r--image/codecs/msvideo1.h (renamed from video/codecs/msvideo1.h)23
-rw-r--r--image/codecs/qtrle.cpp (renamed from video/codecs/qtrle.cpp)126
-rw-r--r--image/codecs/qtrle.h (renamed from video/codecs/qtrle.h)31
-rw-r--r--image/codecs/rpza.cpp (renamed from video/codecs/rpza.cpp)42
-rw-r--r--image/codecs/rpza.h (renamed from video/codecs/rpza.h)19
-rw-r--r--image/codecs/smc.cpp (renamed from video/codecs/smc.cpp)48
-rw-r--r--image/codecs/smc.h (renamed from video/codecs/smc.h)19
-rw-r--r--image/codecs/svq1.cpp (renamed from video/codecs/svq1.cpp)18
-rw-r--r--image/codecs/svq1.h (renamed from video/codecs/svq1.h)19
-rw-r--r--image/codecs/svq1_cb.h (renamed from video/codecs/svq1_cb.h)12
-rw-r--r--image/codecs/svq1_vlc.h (renamed from video/codecs/svq1_vlc.h)12
-rw-r--r--image/codecs/truemotion1.cpp (renamed from video/codecs/truemotion1.cpp)24
-rw-r--r--image/codecs/truemotion1.h (renamed from video/codecs/truemotion1.h)23
-rw-r--r--image/codecs/truemotion1data.h (renamed from video/codecs/truemotion1data.h)12
-rw-r--r--image/iff.cpp (renamed from graphics/decoders/iff.cpp)9
-rw-r--r--image/iff.h (renamed from graphics/decoders/iff.h)21
-rw-r--r--image/image_decoder.h (renamed from graphics/decoders/image_decoder.h)18
-rw-r--r--image/jpeg.cpp (renamed from graphics/decoders/jpeg.cpp)25
-rw-r--r--image/jpeg.h (renamed from graphics/decoders/jpeg.h)27
-rw-r--r--image/module.mk31
-rw-r--r--image/pcx.cpp (renamed from graphics/decoders/pcx.cpp)9
-rw-r--r--image/pcx.h (renamed from graphics/decoders/pcx.h)18
-rw-r--r--image/pict.cpp (renamed from graphics/decoders/pict.cpp)52
-rw-r--r--image/pict.h (renamed from graphics/decoders/pict.h)19
-rw-r--r--image/png.cpp (renamed from graphics/decoders/png.cpp)10
-rw-r--r--image/png.h (renamed from graphics/decoders/png.h)19
-rw-r--r--image/tga.cpp (renamed from graphics/decoders/tga.cpp)23
-rw-r--r--image/tga.h (renamed from graphics/decoders/tga.h)19
-rw-r--r--po/be_BY.po2472
-rw-r--r--po/ca_ES.po2468
-rw-r--r--po/cs_CZ.po2478
-rw-r--r--po/da_DA.po2467
-rw-r--r--po/de_DE.po2496
-rw-r--r--po/es_ES.po2475
-rw-r--r--po/eu.po2481
-rw-r--r--po/fi_FI.po2473
-rw-r--r--po/fr_FR.po2486
-rw-r--r--po/gl_ES.po2472
-rw-r--r--po/hu_HU.po2467
-rw-r--r--po/it_IT.po2473
-rw-r--r--po/nb_NO.po2469
-rw-r--r--po/nn_NO.po2450
-rw-r--r--po/pl_PL.po2463
-rw-r--r--po/pt_BR.po2511
-rw-r--r--po/ru_RU.po2468
-rw-r--r--po/scummvm.pot2155
-rw-r--r--po/se_SE.po2469
-rw-r--r--po/uk_UA.po2469
-rw-r--r--ports.mk8
-rw-r--r--test/common/util.h10
-rw-r--r--test/cxxtest_mingw.h2
-rw-r--r--video/avi_decoder.cpp62
-rw-r--r--video/avi_decoder.h14
-rw-r--r--video/bink_decoder.cpp4
-rw-r--r--video/bink_decoder.h4
-rw-r--r--video/binkdata.h4
-rw-r--r--video/codecs/jpeg.cpp66
-rw-r--r--video/coktel_decoder.cpp11
-rw-r--r--video/coktel_decoder.h12
-rw-r--r--video/dxa_decoder.cpp4
-rw-r--r--video/dxa_decoder.h4
-rw-r--r--video/flic_decoder.cpp6
-rw-r--r--video/flic_decoder.h4
-rw-r--r--video/module.mk19
-rw-r--r--video/psx_decoder.cpp4
-rw-r--r--video/psx_decoder.h4
-rw-r--r--video/qt_decoder.cpp51
-rw-r--r--video/qt_decoder.h12
-rw-r--r--video/smk_decoder.cpp4
-rw-r--r--video/smk_decoder.h4
-rw-r--r--video/theora_decoder.cpp4
-rw-r--r--video/theora_decoder.h4
-rw-r--r--video/video_decoder.cpp4
-rw-r--r--video/video_decoder.h4
3932 files changed, 128691 insertions, 47852 deletions
diff --git a/.gitignore b/.gitignore
index 3868edbbda..17012f3bb7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -174,6 +174,9 @@ ipch/
LLVM32/
LLVM64/
+#Ignore gettext generated files
+/messages.mo
+
#Ignore Qt Creator project files
ScummVM.config
ScummVM.creator
diff --git a/Makefile.common b/Makefile.common
index 31bb83edc1..993b833f4e 100644
--- a/Makefile.common
+++ b/Makefile.common
@@ -25,6 +25,7 @@ MODULES += \
engines \
video \
graphics \
+ image \
audio \
common \
po
diff --git a/NEWS b/NEWS
index eb1213df13..3d4dda5e0f 100644
--- a/NEWS
+++ b/NEWS
@@ -14,15 +14,28 @@ For a more comprehensive changelog of the latest experimental code, see:
(NOTE: The change to libpng was done in version 1.6.0, but it was not
added to the NEWS file).
+ AGOS:
+ - Added mouse wheel support for inventory and save game lists.
+ - Enabled verb name display in Simon the Sorcerer 2.
+ - Fixed the Feeble Files loyalty rating in the English 4CD version. (This
+ was apparently a bug in the original game. It is currently unknown if
+ other versions still have the same problem.)
+
Broken Sword 1:
- Added back support for MPEG-2 videos.
Broken Sword 2:
- Added back support for MPEG-2 videos.
+ CGE:
+ - Added an option to enable Color Blind mode the ScummVM GUI.
Gob:
- Improved video quality in Urban Runner.
+ Hopkins:
+ - Added an option to toggle Gore Mode from the ScummVM GUI.
+ - Fixed bug that could cause the music to stop prematurely.
+
SCI:
- Added support for the more detailed RAVE lip syncing data in the Windows
version of King's Quest 6. Portraits should now be much more expressive
diff --git a/README b/README
index 5391c5f2d6..a6070e4a34 100644
--- a/README
+++ b/README
@@ -2159,6 +2159,9 @@ Flight of the Amazon Queen adds the following non-standard keywords:
music_mute bool If true, music is muted
sfx_mute bool If true, sound effects are muted
+Hopkins FBI adds the following non-standard keyword:
+ enable_gore bool If true, enable some optional gore content in the game
+
Jones in the Fast Lane adds the following non-standard keyword:
music_mute bool If true, CD audio is used, if available,
@@ -2192,6 +2195,9 @@ Simon the Sorcerer 1 and 2 add the following non-standard keywords:
music_mute bool If true, music is muted
sfx_mute bool If true, sound effects are muted
+Soltys adds the following non-standard keyword:
+ enable_color_blind bool If true, original colors are replaced by a set of greys
+
The Legend of Kyrandia adds the following non-standard keyword:
walkspeed number The walk speed (0-4)
diff --git a/audio/audiostream.cpp b/audio/audiostream.cpp
index 8bd4b95c49..4dd5d236be 100644
--- a/audio/audiostream.cpp
+++ b/audio/audiostream.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/audiostream.h b/audio/audiostream.h
index d6d4a16280..d5d7d0b6c7 100644
--- a/audio/audiostream.h
+++ b/audio/audiostream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/adpcm.cpp b/audio/decoders/adpcm.cpp
index 61b0abaaca..2f710f759d 100644
--- a/audio/decoders/adpcm.cpp
+++ b/audio/decoders/adpcm.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/adpcm.h b/audio/decoders/adpcm.h
index d3c46574bf..bf6e7f759d 100644
--- a/audio/decoders/adpcm.h
+++ b/audio/decoders/adpcm.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/adpcm_intern.h b/audio/decoders/adpcm_intern.h
index 66a1aa605f..92be704cca 100644
--- a/audio/decoders/adpcm_intern.h
+++ b/audio/decoders/adpcm_intern.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/aiff.cpp b/audio/decoders/aiff.cpp
index f3b0dfb559..b714721c02 100644
--- a/audio/decoders/aiff.cpp
+++ b/audio/decoders/aiff.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/aiff.h b/audio/decoders/aiff.h
index 0d96e73c26..afb0342cfd 100644
--- a/audio/decoders/aiff.h
+++ b/audio/decoders/aiff.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/flac.cpp b/audio/decoders/flac.cpp
index bbaf5fd5ae..e0205a40b5 100644
--- a/audio/decoders/flac.cpp
+++ b/audio/decoders/flac.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/flac.h b/audio/decoders/flac.h
index f5e31684fe..963753f2ec 100644
--- a/audio/decoders/flac.h
+++ b/audio/decoders/flac.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/iff_sound.cpp b/audio/decoders/iff_sound.cpp
index b0c41f0180..e42918cb62 100644
--- a/audio/decoders/iff_sound.cpp
+++ b/audio/decoders/iff_sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/iff_sound.h b/audio/decoders/iff_sound.h
index 28b2c67227..3eab58157e 100644
--- a/audio/decoders/iff_sound.h
+++ b/audio/decoders/iff_sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/mac_snd.cpp b/audio/decoders/mac_snd.cpp
index 43253a9ddf..17495ad3f7 100644
--- a/audio/decoders/mac_snd.cpp
+++ b/audio/decoders/mac_snd.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/mac_snd.h b/audio/decoders/mac_snd.h
index 4380808eae..e548df012d 100644
--- a/audio/decoders/mac_snd.h
+++ b/audio/decoders/mac_snd.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/mp3.cpp b/audio/decoders/mp3.cpp
index 00669945c2..091f64569d 100644
--- a/audio/decoders/mp3.cpp
+++ b/audio/decoders/mp3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/mp3.h b/audio/decoders/mp3.h
index df2ee44805..609181bdba 100644
--- a/audio/decoders/mp3.h
+++ b/audio/decoders/mp3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/qdm2.cpp b/audio/decoders/qdm2.cpp
index b70fc39e48..743ca1cb7d 100644
--- a/audio/decoders/qdm2.cpp
+++ b/audio/decoders/qdm2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/qdm2.h b/audio/decoders/qdm2.h
index f0793e3c1e..7f1ab8ffde 100644
--- a/audio/decoders/qdm2.h
+++ b/audio/decoders/qdm2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/qdm2data.h b/audio/decoders/qdm2data.h
index d92bc0ff80..4761c53c2c 100644
--- a/audio/decoders/qdm2data.h
+++ b/audio/decoders/qdm2data.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/quicktime.cpp b/audio/decoders/quicktime.cpp
index 787b547495..547abd2aa4 100644
--- a/audio/decoders/quicktime.cpp
+++ b/audio/decoders/quicktime.cpp
@@ -585,7 +585,7 @@ bool QuickTimeAudioDecoder::AudioSampleDesc::isAudioCodecSupported() const {
if (_codecTag == MKTAG('m', 'p', '4', 'a')) {
Common::String audioType;
- switch (_parentTrack->objectTypeMP4) {
+ switch (_objectTypeMP4) {
case 0x40: // AAC
#ifdef USE_FAAD
return true;
@@ -643,13 +643,13 @@ void QuickTimeAudioDecoder::AudioSampleDesc::initCodec() {
switch (_codecTag) {
case MKTAG('Q', 'D', 'M', '2'):
#ifdef AUDIO_QDM2_H
- _codec = makeQDM2Decoder(_parentTrack->extraData);
+ _codec = makeQDM2Decoder(_extraData);
#endif
break;
case MKTAG('m', 'p', '4', 'a'):
#ifdef USE_FAAD
- if (_parentTrack->objectTypeMP4 == 0x40)
- _codec = makeAACDecoder(_parentTrack->extraData);
+ if (_objectTypeMP4 == 0x40)
+ _codec = makeAACDecoder(_extraData);
#endif
break;
default:
diff --git a/audio/decoders/raw.cpp b/audio/decoders/raw.cpp
index d24e07926e..9a9f79092a 100644
--- a/audio/decoders/raw.cpp
+++ b/audio/decoders/raw.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/raw.h b/audio/decoders/raw.h
index a06bebee10..14e7bd45fd 100644
--- a/audio/decoders/raw.h
+++ b/audio/decoders/raw.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/voc.cpp b/audio/decoders/voc.cpp
index ec589533eb..c7ba7a2624 100644
--- a/audio/decoders/voc.cpp
+++ b/audio/decoders/voc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/voc.h b/audio/decoders/voc.h
index e16ffce42f..ef35f8bbf3 100644
--- a/audio/decoders/voc.h
+++ b/audio/decoders/voc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/vorbis.cpp b/audio/decoders/vorbis.cpp
index 64cacb4d58..c82d2840ca 100644
--- a/audio/decoders/vorbis.cpp
+++ b/audio/decoders/vorbis.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/vorbis.h b/audio/decoders/vorbis.h
index 3a3052ed7c..2b9f6c3df9 100644
--- a/audio/decoders/vorbis.h
+++ b/audio/decoders/vorbis.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/wave.cpp b/audio/decoders/wave.cpp
index 44188f84ca..adee749b37 100644
--- a/audio/decoders/wave.cpp
+++ b/audio/decoders/wave.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/wave.h b/audio/decoders/wave.h
index c8ac7fe318..1dcaefd845 100644
--- a/audio/decoders/wave.h
+++ b/audio/decoders/wave.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/xa.cpp b/audio/decoders/xa.cpp
index 818cd2df59..b18673411b 100644
--- a/audio/decoders/xa.cpp
+++ b/audio/decoders/xa.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/decoders/xa.h b/audio/decoders/xa.h
index cf28d8001a..fb33512f7f 100644
--- a/audio/decoders/xa.h
+++ b/audio/decoders/xa.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/fmopl.cpp b/audio/fmopl.cpp
index d2fe7dc0e8..c18e544410 100644
--- a/audio/fmopl.cpp
+++ b/audio/fmopl.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "audio/fmopl.h"
diff --git a/audio/fmopl.h b/audio/fmopl.h
index ad1794d873..85ac606c7a 100644
--- a/audio/fmopl.h
+++ b/audio/fmopl.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef AUDIO_FMOPL_H
diff --git a/audio/mididrv.cpp b/audio/mididrv.cpp
index dea07a739b..f053ec8440 100644
--- a/audio/mididrv.cpp
+++ b/audio/mididrv.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mididrv.h b/audio/mididrv.h
index 56b4a265cb..1eaf415399 100644
--- a/audio/mididrv.h
+++ b/audio/mididrv.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/midiparser.cpp b/audio/midiparser.cpp
index 2454575413..9a8f0f7a77 100644
--- a/audio/midiparser.cpp
+++ b/audio/midiparser.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -214,13 +214,16 @@ void MidiParser::onTimer() {
activeNote(info.channel(), info.basic.param1, true);
}
- processEvent(info);
-
- if (_abortParse)
- break;
+ // Player::metaEvent() in SCUMM will delete the parser object,
+ // so return immediately if that might have happened.
+ bool ret = processEvent(info);
+ if (!ret)
+ return;
- _position._lastEventTime = eventTime;
- parseNextEvent(_nextEvent);
+ if (!_abortParse) {
+ _position._lastEventTime = eventTime;
+ parseNextEvent(_nextEvent);
+ }
}
if (!_abortParse) {
@@ -229,7 +232,7 @@ void MidiParser::onTimer() {
}
}
-void MidiParser::processEvent(const EventInfo &info, bool fireEvents) {
+bool MidiParser::processEvent(const EventInfo &info, bool fireEvents) {
if (info.event == 0xF0) {
// SysEx event
// Check for trailing 0xF7 -- if present, remove it.
@@ -252,8 +255,7 @@ void MidiParser::processEvent(const EventInfo &info, bool fireEvents) {
if (fireEvents)
_driver->metaEvent(info.ext.type, info.ext.data, (uint16)info.length);
}
- _abortParse = true;
- return;
+ return false;
} else if (info.ext.type == 0x51) {
if (info.length >= 3) {
setTempo(info.ext.data[0] << 16 | info.ext.data[1] << 8 | info.ext.data[2]);
@@ -265,6 +267,8 @@ void MidiParser::processEvent(const EventInfo &info, bool fireEvents) {
if (fireEvents)
sendToDriver(info.event, info.basic.param1, info.basic.param2);
}
+
+ return true;
}
diff --git a/audio/midiparser.h b/audio/midiparser.h
index 05d0cbe1db..9c10462cd7 100644
--- a/audio/midiparser.h
+++ b/audio/midiparser.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -294,7 +294,7 @@ protected:
virtual void resetTracking();
virtual void allNotesOff();
virtual void parseNextEvent(EventInfo &info) = 0;
- virtual void processEvent(const EventInfo &info, bool fireEvents = true);
+ virtual bool processEvent(const EventInfo &info, bool fireEvents = true);
void activeNote(byte channel, byte note, bool active);
void hangingNote(byte channel, byte note, uint32 ticksLeft, bool recycle = true);
diff --git a/audio/midiparser_qt.cpp b/audio/midiparser_qt.cpp
index 6214d28f95..b97ea56df5 100644
--- a/audio/midiparser_qt.cpp
+++ b/audio/midiparser_qt.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/midiparser_qt.h b/audio/midiparser_qt.h
index d6d0f40a48..1c811fdb36 100644
--- a/audio/midiparser_qt.h
+++ b/audio/midiparser_qt.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/midiparser_smf.cpp b/audio/midiparser_smf.cpp
index 6c64d1e601..a614e5bd63 100644
--- a/audio/midiparser_smf.cpp
+++ b/audio/midiparser_smf.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/midiparser_xmidi.cpp b/audio/midiparser_xmidi.cpp
index fcb45fa5ad..95aa5d72f3 100644
--- a/audio/midiparser_xmidi.cpp
+++ b/audio/midiparser_xmidi.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/midiplayer.cpp b/audio/midiplayer.cpp
index 7fab02a5be..75a3b45fb8 100644
--- a/audio/midiplayer.cpp
+++ b/audio/midiplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/midiplayer.h b/audio/midiplayer.h
index e58c78cafd..5c06baeff2 100644
--- a/audio/midiplayer.h
+++ b/audio/midiplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mixer.cpp b/audio/mixer.cpp
index 9e6e4596e2..16cf5640eb 100644
--- a/audio/mixer.cpp
+++ b/audio/mixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -333,7 +333,7 @@ void MixerImpl::stopHandle(SoundHandle handle) {
}
void MixerImpl::muteSoundType(SoundType type, bool mute) {
- assert(0 <= type && type < ARRAYSIZE(_soundTypeSettings));
+ assert(0 <= (int)type && (int)type < ARRAYSIZE(_soundTypeSettings));
_soundTypeSettings[type].mute = mute;
for (int i = 0; i != NUM_CHANNELS; ++i) {
@@ -343,7 +343,7 @@ void MixerImpl::muteSoundType(SoundType type, bool mute) {
}
bool MixerImpl::isSoundTypeMuted(SoundType type) const {
- assert(0 <= type && type < ARRAYSIZE(_soundTypeSettings));
+ assert(0 <= (int)type && (int)type < ARRAYSIZE(_soundTypeSettings));
return _soundTypeSettings[type].mute;
}
@@ -468,7 +468,7 @@ bool MixerImpl::hasActiveChannelOfType(SoundType type) {
}
void MixerImpl::setVolumeForSoundType(SoundType type, int volume) {
- assert(0 <= type && type < ARRAYSIZE(_soundTypeSettings));
+ assert(0 <= (int)type && (int)type < ARRAYSIZE(_soundTypeSettings));
// Check range
if (volume > kMaxMixerVolume)
@@ -489,7 +489,7 @@ void MixerImpl::setVolumeForSoundType(SoundType type, int volume) {
}
int MixerImpl::getVolumeForSoundType(SoundType type) const {
- assert(0 <= type && type < ARRAYSIZE(_soundTypeSettings));
+ assert(0 <= (int)type && (int)type < ARRAYSIZE(_soundTypeSettings));
return _soundTypeSettings[type].volume;
}
diff --git a/audio/mixer.h b/audio/mixer.h
index a0060f2e1a..9f114c330a 100644
--- a/audio/mixer.h
+++ b/audio/mixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mixer_intern.h b/audio/mixer_intern.h
index fce13a9812..a8b7981571 100644
--- a/audio/mixer_intern.h
+++ b/audio/mixer_intern.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/infogrames.cpp b/audio/mods/infogrames.cpp
index 5b4d39fe49..320261b1b0 100644
--- a/audio/mods/infogrames.cpp
+++ b/audio/mods/infogrames.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/infogrames.h b/audio/mods/infogrames.h
index 8b246eebe7..9a836d30a8 100644
--- a/audio/mods/infogrames.h
+++ b/audio/mods/infogrames.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/maxtrax.cpp b/audio/mods/maxtrax.cpp
index a2d470cdbf..c18812ee54 100644
--- a/audio/mods/maxtrax.cpp
+++ b/audio/mods/maxtrax.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/maxtrax.h b/audio/mods/maxtrax.h
index 8288aef186..9161b7c5ae 100644
--- a/audio/mods/maxtrax.h
+++ b/audio/mods/maxtrax.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/module.cpp b/audio/mods/module.cpp
index 8d09671d26..83fbc7cc72 100644
--- a/audio/mods/module.cpp
+++ b/audio/mods/module.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/module.h b/audio/mods/module.h
index eb7cbf260e..3418305892 100644
--- a/audio/mods/module.h
+++ b/audio/mods/module.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/paula.cpp b/audio/mods/paula.cpp
index d655428ed0..896a272ee9 100644
--- a/audio/mods/paula.cpp
+++ b/audio/mods/paula.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/paula.h b/audio/mods/paula.h
index 5d11cc7bb6..61a1a9edb8 100644
--- a/audio/mods/paula.h
+++ b/audio/mods/paula.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/protracker.cpp b/audio/mods/protracker.cpp
index c947f256e0..82067f67bd 100644
--- a/audio/mods/protracker.cpp
+++ b/audio/mods/protracker.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/protracker.h b/audio/mods/protracker.h
index 50528fc599..84d60cac05 100644
--- a/audio/mods/protracker.h
+++ b/audio/mods/protracker.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/rjp1.cpp b/audio/mods/rjp1.cpp
index 45c6caa106..f2b811c9ef 100644
--- a/audio/mods/rjp1.cpp
+++ b/audio/mods/rjp1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/rjp1.h b/audio/mods/rjp1.h
index e7e54dafb3..7ad211738b 100644
--- a/audio/mods/rjp1.h
+++ b/audio/mods/rjp1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/soundfx.cpp b/audio/mods/soundfx.cpp
index 767d1ce9c8..5744429856 100644
--- a/audio/mods/soundfx.cpp
+++ b/audio/mods/soundfx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/soundfx.h b/audio/mods/soundfx.h
index d517c6c78f..40a8efd892 100644
--- a/audio/mods/soundfx.h
+++ b/audio/mods/soundfx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/tfmx.cpp b/audio/mods/tfmx.cpp
index 5829ab5fda..db3dad88ef 100644
--- a/audio/mods/tfmx.cpp
+++ b/audio/mods/tfmx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mods/tfmx.h b/audio/mods/tfmx.h
index a8852d7963..ef05fed9ff 100644
--- a/audio/mods/tfmx.h
+++ b/audio/mods/tfmx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/mpu401.cpp b/audio/mpu401.cpp
index 103a3501db..3e03ec53f1 100644
--- a/audio/mpu401.cpp
+++ b/audio/mpu401.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "audio/mpu401.h"
diff --git a/audio/mpu401.h b/audio/mpu401.h
index d4580b6e79..3a3142d441 100644
--- a/audio/mpu401.h
+++ b/audio/mpu401.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/musicplugin.cpp b/audio/musicplugin.cpp
index 7c77c3455c..1903bc9bf1 100644
--- a/audio/musicplugin.cpp
+++ b/audio/musicplugin.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/musicplugin.h b/audio/musicplugin.h
index 2a0f2f0a99..849d3f92cd 100644
--- a/audio/musicplugin.h
+++ b/audio/musicplugin.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef AUDIO_MUSICPLUGIN_H
diff --git a/audio/null.cpp b/audio/null.cpp
index 36c894aa7c..a554838c3d 100644
--- a/audio/null.cpp
+++ b/audio/null.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/error.h"
diff --git a/audio/null.h b/audio/null.h
index 90897be6af..90eba7368d 100644
--- a/audio/null.h
+++ b/audio/null.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef AUDIO_NULL_H
diff --git a/audio/rate.cpp b/audio/rate.cpp
index 0fc23a8a54..19d9c8c61e 100644
--- a/audio/rate.cpp
+++ b/audio/rate.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/rate.h b/audio/rate.h
index 9813b75b08..8c8b726c72 100644
--- a/audio/rate.h
+++ b/audio/rate.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/rate_arm.cpp b/audio/rate_arm.cpp
index 4135cdd1af..4ad8d71a34 100644
--- a/audio/rate_arm.cpp
+++ b/audio/rate_arm.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/rate_arm_asm.s b/audio/rate_arm_asm.s
index ac999f66e4..a727209d39 100644
--- a/audio/rate_arm_asm.s
+++ b/audio/rate_arm_asm.s
@@ -36,6 +36,7 @@
.global _ARM_LinearRate_S
.global _ARM_LinearRate_R
+ .align 2
_ARM_CopyRate_M:
@ r0 = len
@ r1 = obuf
@@ -73,6 +74,7 @@ CopyRate_M_loop:
LDMFD r13!,{r4-r7,PC}
+ .align 2
_ARM_CopyRate_S:
@ r0 = len
@ r1 = obuf
@@ -111,6 +113,7 @@ CopyRate_S_loop:
LDMFD r13!,{r4-r7,PC}
+ .align 2
_ARM_CopyRate_R:
@ r0 = len
@ r1 = obuf
@@ -149,6 +152,7 @@ CopyRate_R_loop:
LDMFD r13!,{r4-r7,PC}
+ .align 2
_ARM_SimpleRate_M:
@ r0 = AudioStream &input
@ r1 = input.readBuffer
@@ -229,6 +233,7 @@ SimpleRate_M_read:
B SimpleRate_M_read_return
+ .align 2
_ARM_SimpleRate_S:
@ r0 = AudioStream &input
@ r1 = input.readBuffer
@@ -308,6 +313,7 @@ SimpleRate_S_read:
+ .align 2
_ARM_SimpleRate_R:
@ r0 = AudioStream &input
@ r1 = input.readBuffer
@@ -386,6 +392,7 @@ SimpleRate_R_read:
B SimpleRate_R_read_return
+ .align 2
_ARM_LinearRate_M:
@ r0 = AudioStream &input
@ r1 = input.readBuffer
@@ -478,6 +485,7 @@ LinearRate_M_read:
BLT LinearRate_M_end
B LinearRate_M_read_return
+ .align 2
_ARM_LinearRate_S:
@ r0 = AudioStream &input
@ r1 = input.readBuffer
@@ -580,6 +588,7 @@ LinearRate_S_read:
BLT LinearRate_S_end
B LinearRate_S_read_return
+ .align 2
_ARM_LinearRate_R:
@ r0 = AudioStream &input
@ r1 = input.readBuffer
diff --git a/audio/softsynth/adlib.cpp b/audio/softsynth/adlib.cpp
index 0cadea7f22..98519343b4 100644
--- a/audio/softsynth/adlib.cpp
+++ b/audio/softsynth/adlib.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "audio/softsynth/emumidi.h"
diff --git a/audio/softsynth/appleiigs.cpp b/audio/softsynth/appleiigs.cpp
index bbb3f0b005..e07e282de6 100644
--- a/audio/softsynth/appleiigs.cpp
+++ b/audio/softsynth/appleiigs.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "audio/null.h"
diff --git a/audio/softsynth/cms.cpp b/audio/softsynth/cms.cpp
index 681f08dfa3..206bd36d2d 100644
--- a/audio/softsynth/cms.cpp
+++ b/audio/softsynth/cms.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "audio/softsynth/cms.h"
diff --git a/audio/softsynth/cms.h b/audio/softsynth/cms.h
index 0aad856a9d..8c0f980b0a 100644
--- a/audio/softsynth/cms.h
+++ b/audio/softsynth/cms.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef AUDIO_SOFTSYNTH_CMS_H
diff --git a/audio/softsynth/eas.cpp b/audio/softsynth/eas.cpp
index 0631df2a7c..9854c10d27 100644
--- a/audio/softsynth/eas.cpp
+++ b/audio/softsynth/eas.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/scummsys.h"
diff --git a/audio/softsynth/emumidi.h b/audio/softsynth/emumidi.h
index 3e9d669933..8177cfd5e9 100644
--- a/audio/softsynth/emumidi.h
+++ b/audio/softsynth/emumidi.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef AUDIO_SOFTSYNTH_EMUMIDI_H
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
index 218a06ecc0..9b64d70f2b 100644
--- a/audio/softsynth/fluidsynth.cpp
+++ b/audio/softsynth/fluidsynth.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/scummsys.h"
diff --git a/audio/softsynth/fmtowns_pc98/towns_audio.cpp b/audio/softsynth/fmtowns_pc98/towns_audio.cpp
index d8300112bf..7fa55ef6c1 100644
--- a/audio/softsynth/fmtowns_pc98/towns_audio.cpp
+++ b/audio/softsynth/fmtowns_pc98/towns_audio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/fmtowns_pc98/towns_audio.h b/audio/softsynth/fmtowns_pc98/towns_audio.h
index 211133a1fe..93eeafb046 100644
--- a/audio/softsynth/fmtowns_pc98/towns_audio.h
+++ b/audio/softsynth/fmtowns_pc98/towns_audio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/fmtowns_pc98/towns_euphony.cpp b/audio/softsynth/fmtowns_pc98/towns_euphony.cpp
index bc2c88b236..fca3d19912 100644
--- a/audio/softsynth/fmtowns_pc98/towns_euphony.cpp
+++ b/audio/softsynth/fmtowns_pc98/towns_euphony.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/fmtowns_pc98/towns_euphony.h b/audio/softsynth/fmtowns_pc98/towns_euphony.h
index bff0e99660..d77217884d 100644
--- a/audio/softsynth/fmtowns_pc98/towns_euphony.h
+++ b/audio/softsynth/fmtowns_pc98/towns_euphony.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/fmtowns_pc98/towns_pc98_driver.cpp b/audio/softsynth/fmtowns_pc98/towns_pc98_driver.cpp
index 75e6bc3d10..6a492787b2 100644
--- a/audio/softsynth/fmtowns_pc98/towns_pc98_driver.cpp
+++ b/audio/softsynth/fmtowns_pc98/towns_pc98_driver.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/fmtowns_pc98/towns_pc98_driver.h b/audio/softsynth/fmtowns_pc98/towns_pc98_driver.h
index c0009e4957..918446f6c5 100644
--- a/audio/softsynth/fmtowns_pc98/towns_pc98_driver.h
+++ b/audio/softsynth/fmtowns_pc98/towns_pc98_driver.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.cpp b/audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.cpp
index b4967a556f..685ee99e6f 100644
--- a/audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.cpp
+++ b/audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.h b/audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.h
index 49700be5dc..5af92820ca 100644
--- a/audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.h
+++ b/audio/softsynth/fmtowns_pc98/towns_pc98_fmsynth.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/mt32.cpp b/audio/softsynth/mt32.cpp
index 7f46e926bc..b9799db618 100644
--- a/audio/softsynth/mt32.cpp
+++ b/audio/softsynth/mt32.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/scummsys.h"
diff --git a/audio/softsynth/opl/dosbox.cpp b/audio/softsynth/opl/dosbox.cpp
index a1a736f9de..5c3d833f54 100644
--- a/audio/softsynth/opl/dosbox.cpp
+++ b/audio/softsynth/opl/dosbox.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/*
diff --git a/audio/softsynth/opl/dosbox.h b/audio/softsynth/opl/dosbox.h
index 3adfe98852..513a49f6b8 100644
--- a/audio/softsynth/opl/dosbox.h
+++ b/audio/softsynth/opl/dosbox.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/*
diff --git a/audio/softsynth/opl/mame.cpp b/audio/softsynth/opl/mame.cpp
index 2db7d421b6..da75ba76ba 100644
--- a/audio/softsynth/opl/mame.cpp
+++ b/audio/softsynth/opl/mame.cpp
@@ -8,18 +8,19 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
* LGPL licensed version of MAMEs fmopl (V0.37a modified) by
* Tatsuyuki Satoh. Included from LGPL'ed AdPlug.
+ *
*/
#include <stdio.h>
diff --git a/audio/softsynth/opl/mame.h b/audio/softsynth/opl/mame.h
index 3714fa4e0a..bd479d9e45 100644
--- a/audio/softsynth/opl/mame.h
+++ b/audio/softsynth/opl/mame.h
@@ -8,18 +8,19 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
* LGPL licensed version of MAMEs fmopl (V0.37a modified) by
* Tatsuyuki Satoh. Included from LGPL'ed AdPlug.
+ *
*/
diff --git a/audio/softsynth/pcspk.cpp b/audio/softsynth/pcspk.cpp
index 66af968463..72f33a4761 100644
--- a/audio/softsynth/pcspk.cpp
+++ b/audio/softsynth/pcspk.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "audio/softsynth/pcspk.h"
#include "audio/null.h"
diff --git a/audio/softsynth/pcspk.h b/audio/softsynth/pcspk.h
index f27eb94904..db64da5177 100644
--- a/audio/softsynth/pcspk.h
+++ b/audio/softsynth/pcspk.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef AUDIO_SOFTSYNTH_PCSPK_H
diff --git a/audio/softsynth/sid.cpp b/audio/softsynth/sid.cpp
index b6f1c87c4b..bafbd4ab53 100644
--- a/audio/softsynth/sid.cpp
+++ b/audio/softsynth/sid.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/sid.h b/audio/softsynth/sid.h
index 88da0eb326..d07d25bc47 100644
--- a/audio/softsynth/sid.h
+++ b/audio/softsynth/sid.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/softsynth/wave6581.cpp b/audio/softsynth/wave6581.cpp
index 832a7272ff..94381f6c72 100644
--- a/audio/softsynth/wave6581.cpp
+++ b/audio/softsynth/wave6581.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/timestamp.cpp b/audio/timestamp.cpp
index 69b47d1628..1ce971631c 100644
--- a/audio/timestamp.cpp
+++ b/audio/timestamp.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/audio/timestamp.h b/audio/timestamp.h
index 1683b554cb..827a8e03f2 100644
--- a/audio/timestamp.h
+++ b/audio/timestamp.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/audiocd/audiocd.h b/backends/audiocd/audiocd.h
index 76c3998862..db9a15505a 100644
--- a/backends/audiocd/audiocd.h
+++ b/backends/audiocd/audiocd.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/audiocd/default/default-audiocd.cpp b/backends/audiocd/default/default-audiocd.cpp
index 819b9c4522..abf80ac4cd 100644
--- a/backends/audiocd/default/default-audiocd.cpp
+++ b/backends/audiocd/default/default-audiocd.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/audiocd/default/default-audiocd.h b/backends/audiocd/default/default-audiocd.h
index 1971ed8f6e..9e4ba6b33e 100644
--- a/backends/audiocd/default/default-audiocd.h
+++ b/backends/audiocd/default/default-audiocd.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/audiocd/sdl/sdl-audiocd.cpp b/backends/audiocd/sdl/sdl-audiocd.cpp
index b5f97571f3..5093c03a1c 100644
--- a/backends/audiocd/sdl/sdl-audiocd.cpp
+++ b/backends/audiocd/sdl/sdl-audiocd.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/audiocd/sdl/sdl-audiocd.h b/backends/audiocd/sdl/sdl-audiocd.h
index 85bde353df..ff98fcdd77 100644
--- a/backends/audiocd/sdl/sdl-audiocd.h
+++ b/backends/audiocd/sdl/sdl-audiocd.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/base-backend.h b/backends/base-backend.h
index c797e831a8..598f682b32 100644
--- a/backends/base-backend.h
+++ b/backends/base-backend.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/default/default-events.cpp b/backends/events/default/default-events.cpp
index 30f3b3790c..c7c39da069 100644
--- a/backends/events/default/default-events.cpp
+++ b/backends/events/default/default-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/default/default-events.h b/backends/events/default/default-events.h
index 4d89b78861..f378fb9ff0 100644
--- a/backends/events/default/default-events.h
+++ b/backends/events/default/default-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/dinguxsdl/dinguxsdl-events.cpp b/backends/events/dinguxsdl/dinguxsdl-events.cpp
index 64d8fbeb62..46089a4fcd 100644
--- a/backends/events/dinguxsdl/dinguxsdl-events.cpp
+++ b/backends/events/dinguxsdl/dinguxsdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/dinguxsdl/dinguxsdl-events.h b/backends/events/dinguxsdl/dinguxsdl-events.h
index b348bafa78..0ed0a9923e 100644
--- a/backends/events/dinguxsdl/dinguxsdl-events.h
+++ b/backends/events/dinguxsdl/dinguxsdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/gph/gph-events.cpp b/backends/events/gph/gph-events.cpp
index 91118d36c1..90b6a2a29d 100644
--- a/backends/events/gph/gph-events.cpp
+++ b/backends/events/gph/gph-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/gph/gph-events.h b/backends/events/gph/gph-events.h
index 3b1e6f090a..507aa94828 100644
--- a/backends/events/gph/gph-events.h
+++ b/backends/events/gph/gph-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/linuxmotosdl/linuxmotosdl-events.cpp b/backends/events/linuxmotosdl/linuxmotosdl-events.cpp
index 5d9f032e19..ce34662612 100644
--- a/backends/events/linuxmotosdl/linuxmotosdl-events.cpp
+++ b/backends/events/linuxmotosdl/linuxmotosdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/linuxmotosdl/linuxmotosdl-events.h b/backends/events/linuxmotosdl/linuxmotosdl-events.h
index 7b0c8fcc73..87eab3ffaa 100644
--- a/backends/events/linuxmotosdl/linuxmotosdl-events.h
+++ b/backends/events/linuxmotosdl/linuxmotosdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/maemosdl/maemosdl-events.cpp b/backends/events/maemosdl/maemosdl-events.cpp
index eaf2f48b60..5045363286 100644
--- a/backends/events/maemosdl/maemosdl-events.cpp
+++ b/backends/events/maemosdl/maemosdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/maemosdl/maemosdl-events.h b/backends/events/maemosdl/maemosdl-events.h
index f3f05feeca..6024031249 100644
--- a/backends/events/maemosdl/maemosdl-events.h
+++ b/backends/events/maemosdl/maemosdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/openpandora/op-events.cpp b/backends/events/openpandora/op-events.cpp
index fc63cdf74f..b9d5fa8c7b 100644
--- a/backends/events/openpandora/op-events.cpp
+++ b/backends/events/openpandora/op-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/openpandora/op-events.h b/backends/events/openpandora/op-events.h
index 25f79e68d7..e45ac80e2a 100644
--- a/backends/events/openpandora/op-events.h
+++ b/backends/events/openpandora/op-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/ps3sdl/ps3sdl-events.cpp b/backends/events/ps3sdl/ps3sdl-events.cpp
index 723942af11..1a854436f1 100644
--- a/backends/events/ps3sdl/ps3sdl-events.cpp
+++ b/backends/events/ps3sdl/ps3sdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/ps3sdl/ps3sdl-events.h b/backends/events/ps3sdl/ps3sdl-events.h
index 8cf2f43426..d28ce7fcf8 100644
--- a/backends/events/ps3sdl/ps3sdl-events.h
+++ b/backends/events/ps3sdl/ps3sdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/samsungtvsdl/samsungtvsdl-events.cpp b/backends/events/samsungtvsdl/samsungtvsdl-events.cpp
index 5e3659839a..f5b919a060 100644
--- a/backends/events/samsungtvsdl/samsungtvsdl-events.cpp
+++ b/backends/events/samsungtvsdl/samsungtvsdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/samsungtvsdl/samsungtvsdl-events.h b/backends/events/samsungtvsdl/samsungtvsdl-events.h
index 4b9ccc9bf8..be3dfef8fd 100644
--- a/backends/events/samsungtvsdl/samsungtvsdl-events.h
+++ b/backends/events/samsungtvsdl/samsungtvsdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/sdl/sdl-events.cpp b/backends/events/sdl/sdl-events.cpp
index e84a8f8c01..2480e7c370 100644
--- a/backends/events/sdl/sdl-events.cpp
+++ b/backends/events/sdl/sdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/sdl/sdl-events.h b/backends/events/sdl/sdl-events.h
index ca4835126f..a1b6d5ec3c 100644
--- a/backends/events/sdl/sdl-events.h
+++ b/backends/events/sdl/sdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/symbiansdl/symbiansdl-events.cpp b/backends/events/symbiansdl/symbiansdl-events.cpp
index 308621e697..36018f1024 100644
--- a/backends/events/symbiansdl/symbiansdl-events.cpp
+++ b/backends/events/symbiansdl/symbiansdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/symbiansdl/symbiansdl-events.h b/backends/events/symbiansdl/symbiansdl-events.h
index 66c0b451eb..2664bc267d 100644
--- a/backends/events/symbiansdl/symbiansdl-events.h
+++ b/backends/events/symbiansdl/symbiansdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/webossdl/webossdl-events.cpp b/backends/events/webossdl/webossdl-events.cpp
index 286289f7a6..72106789a5 100644
--- a/backends/events/webossdl/webossdl-events.cpp
+++ b/backends/events/webossdl/webossdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/webossdl/webossdl-events.h b/backends/events/webossdl/webossdl-events.h
index 1ba5c6fcbf..043acfdf6f 100644
--- a/backends/events/webossdl/webossdl-events.h
+++ b/backends/events/webossdl/webossdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/wincesdl/wincesdl-events.cpp b/backends/events/wincesdl/wincesdl-events.cpp
index e73a4e66dd..d3141ee50c 100644
--- a/backends/events/wincesdl/wincesdl-events.cpp
+++ b/backends/events/wincesdl/wincesdl-events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/events/wincesdl/wincesdl-events.h b/backends/events/wincesdl/wincesdl-events.h
index 5eff630c2a..38327681a5 100644
--- a/backends/events/wincesdl/wincesdl-events.h
+++ b/backends/events/wincesdl/wincesdl-events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/abstract-fs.cpp b/backends/fs/abstract-fs.cpp
index 372c7423dd..c3991ee8f4 100644
--- a/backends/fs/abstract-fs.cpp
+++ b/backends/fs/abstract-fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "backends/fs/abstract-fs.h"
diff --git a/backends/fs/abstract-fs.h b/backends/fs/abstract-fs.h
index 2b66a6e6e1..34a8120caa 100644
--- a/backends/fs/abstract-fs.h
+++ b/backends/fs/abstract-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef BACKENDS_ABSTRACT_FS_H
diff --git a/backends/fs/amigaos4/amigaos4-fs-factory.cpp b/backends/fs/amigaos4/amigaos4-fs-factory.cpp
index a62b581f39..4ca65e53a5 100644
--- a/backends/fs/amigaos4/amigaos4-fs-factory.cpp
+++ b/backends/fs/amigaos4/amigaos4-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(__amigaos4__)
diff --git a/backends/fs/amigaos4/amigaos4-fs-factory.h b/backends/fs/amigaos4/amigaos4-fs-factory.h
index 0390e85072..432caf6fcf 100644
--- a/backends/fs/amigaos4/amigaos4-fs-factory.h
+++ b/backends/fs/amigaos4/amigaos4-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef AMIGAOS_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/amigaos4/amigaos4-fs.cpp b/backends/fs/amigaos4/amigaos4-fs.cpp
index bd8bf1978a..5a66cdaa2f 100644
--- a/backends/fs/amigaos4/amigaos4-fs.cpp
+++ b/backends/fs/amigaos4/amigaos4-fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(__amigaos4__)
diff --git a/backends/fs/amigaos4/amigaos4-fs.h b/backends/fs/amigaos4/amigaos4-fs.h
index 7ce9981479..bbe88b2716 100644
--- a/backends/fs/amigaos4/amigaos4-fs.h
+++ b/backends/fs/amigaos4/amigaos4-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef AMIGAOS_FILESYSTEM_H
diff --git a/backends/fs/ds/ds-fs-factory.cpp b/backends/fs/ds/ds-fs-factory.cpp
index 4e09c3446b..98c522f1d6 100644
--- a/backends/fs/ds/ds-fs-factory.cpp
+++ b/backends/fs/ds/ds-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
// Disable symbol overrides for FILE as that is used in FLAC headers
diff --git a/backends/fs/ds/ds-fs-factory.h b/backends/fs/ds/ds-fs-factory.h
index ed5804b94a..7c42145518 100644
--- a/backends/fs/ds/ds-fs-factory.h
+++ b/backends/fs/ds/ds-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef DS_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/ds/ds-fs.cpp b/backends/fs/ds/ds-fs.cpp
index e3f282df05..3782caf432 100644
--- a/backends/fs/ds/ds-fs.cpp
+++ b/backends/fs/ds/ds-fs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/ds/ds-fs.h b/backends/fs/ds/ds-fs.h
index 862f4c39d2..b9ccfcbe9c 100644
--- a/backends/fs/ds/ds-fs.h
+++ b/backends/fs/ds/ds-fs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/fs-factory.h b/backends/fs/fs-factory.h
index 6d378955ec..fce82a9847 100644
--- a/backends/fs/fs-factory.h
+++ b/backends/fs/fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef FILESYSTEM_FACTORY_H
diff --git a/backends/fs/n64/n64-fs-factory.cpp b/backends/fs/n64/n64-fs-factory.cpp
index 5c588c5eb5..e662d6fd9b 100644
--- a/backends/fs/n64/n64-fs-factory.cpp
+++ b/backends/fs/n64/n64-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifdef __N64__
diff --git a/backends/fs/n64/n64-fs-factory.h b/backends/fs/n64/n64-fs-factory.h
index 5dec7c7eab..0a6ac8f41e 100644
--- a/backends/fs/n64/n64-fs-factory.h
+++ b/backends/fs/n64/n64-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef N64_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/n64/n64-fs.h b/backends/fs/n64/n64-fs.h
index d177cae9b4..d503a6601e 100644
--- a/backends/fs/n64/n64-fs.h
+++ b/backends/fs/n64/n64-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef N64_FILESYSTEM_H
diff --git a/backends/fs/n64/romfsstream.cpp b/backends/fs/n64/romfsstream.cpp
index 570f25932d..8661f8e9ab 100644
--- a/backends/fs/n64/romfsstream.cpp
+++ b/backends/fs/n64/romfsstream.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/n64/romfsstream.h b/backends/fs/n64/romfsstream.h
index b0f27db13e..7c64bce3f3 100644
--- a/backends/fs/n64/romfsstream.h
+++ b/backends/fs/n64/romfsstream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/posix/posix-fs-factory.cpp b/backends/fs/posix/posix-fs-factory.cpp
index 776ea86155..d6266c78c9 100644
--- a/backends/fs/posix/posix-fs-factory.cpp
+++ b/backends/fs/posix/posix-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(POSIX) || defined(PLAYSTATION3)
diff --git a/backends/fs/posix/posix-fs-factory.h b/backends/fs/posix/posix-fs-factory.h
index c7cec6fab5..7aedde5b01 100644
--- a/backends/fs/posix/posix-fs-factory.h
+++ b/backends/fs/posix/posix-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef POSIX_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/posix/posix-fs.cpp b/backends/fs/posix/posix-fs.cpp
index 320c5a6f39..4baf9f14fe 100644
--- a/backends/fs/posix/posix-fs.cpp
+++ b/backends/fs/posix/posix-fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(POSIX) || defined(PLAYSTATION3)
diff --git a/backends/fs/posix/posix-fs.h b/backends/fs/posix/posix-fs.h
index e124829c02..bd07749010 100644
--- a/backends/fs/posix/posix-fs.h
+++ b/backends/fs/posix/posix-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef POSIX_FILESYSTEM_H
diff --git a/backends/fs/ps2/ps2-fs-factory.cpp b/backends/fs/ps2/ps2-fs-factory.cpp
index ef7b2013a3..9c12d27a6e 100644
--- a/backends/fs/ps2/ps2-fs-factory.cpp
+++ b/backends/fs/ps2/ps2-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(__PLAYSTATION2__)
diff --git a/backends/fs/ps2/ps2-fs-factory.h b/backends/fs/ps2/ps2-fs-factory.h
index 9c6709cccf..d6745a64d3 100644
--- a/backends/fs/ps2/ps2-fs-factory.h
+++ b/backends/fs/ps2/ps2-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef PS2_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/ps2/ps2-fs.cpp b/backends/fs/ps2/ps2-fs.cpp
index edf787418f..9b6e1270f1 100644
--- a/backends/fs/ps2/ps2-fs.cpp
+++ b/backends/fs/ps2/ps2-fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(__PLAYSTATION2__)
diff --git a/backends/fs/ps2/ps2-fs.h b/backends/fs/ps2/ps2-fs.h
index 8573ac271a..63b866ba5b 100644
--- a/backends/fs/ps2/ps2-fs.h
+++ b/backends/fs/ps2/ps2-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef PS2_FILESYSTEM_H
diff --git a/backends/fs/ps3/ps3-fs-factory.cpp b/backends/fs/ps3/ps3-fs-factory.cpp
index 3257246c50..565452596f 100644
--- a/backends/fs/ps3/ps3-fs-factory.cpp
+++ b/backends/fs/ps3/ps3-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "backends/fs/ps3/ps3-fs-factory.h"
diff --git a/backends/fs/ps3/ps3-fs-factory.h b/backends/fs/ps3/ps3-fs-factory.h
index 6c1988b1c9..f7d54a90fd 100644
--- a/backends/fs/ps3/ps3-fs-factory.h
+++ b/backends/fs/ps3/ps3-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef PS3_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/psp/psp-fs-factory.cpp b/backends/fs/psp/psp-fs-factory.cpp
index bb3aca8ee6..303ea242c5 100644
--- a/backends/fs/psp/psp-fs-factory.cpp
+++ b/backends/fs/psp/psp-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(__PSP__)
diff --git a/backends/fs/psp/psp-fs-factory.h b/backends/fs/psp/psp-fs-factory.h
index d57c8fb655..26888487c2 100644
--- a/backends/fs/psp/psp-fs-factory.h
+++ b/backends/fs/psp/psp-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef PSP_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/psp/psp-fs.cpp b/backends/fs/psp/psp-fs.cpp
index 67f4cd59a7..e8aad9fa98 100644
--- a/backends/fs/psp/psp-fs.cpp
+++ b/backends/fs/psp/psp-fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(__PSP__)
diff --git a/backends/fs/psp/psp-fs.h b/backends/fs/psp/psp-fs.h
index 146debb5f1..1bb4543d19 100644
--- a/backends/fs/psp/psp-fs.h
+++ b/backends/fs/psp/psp-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef PSP_FILESYSTEM_H
diff --git a/backends/fs/psp/psp-stream.cpp b/backends/fs/psp/psp-stream.cpp
index da5a46eedb..c9b2fc7d8c 100644
--- a/backends/fs/psp/psp-stream.cpp
+++ b/backends/fs/psp/psp-stream.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/psp/psp-stream.h b/backends/fs/psp/psp-stream.h
index 395b27392d..734cb66184 100644
--- a/backends/fs/psp/psp-stream.h
+++ b/backends/fs/psp/psp-stream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/stdiostream.cpp b/backends/fs/stdiostream.cpp
index 3ea0f9898b..8206bd180f 100644
--- a/backends/fs/stdiostream.cpp
+++ b/backends/fs/stdiostream.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/stdiostream.h b/backends/fs/stdiostream.h
index 1d45600d9c..f2495feac8 100644
--- a/backends/fs/stdiostream.h
+++ b/backends/fs/stdiostream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/symbian/symbian-fs-factory.cpp b/backends/fs/symbian/symbian-fs-factory.cpp
index 7a60109742..311a0bfd82 100644
--- a/backends/fs/symbian/symbian-fs-factory.cpp
+++ b/backends/fs/symbian/symbian-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(__SYMBIAN32__)
diff --git a/backends/fs/symbian/symbian-fs-factory.h b/backends/fs/symbian/symbian-fs-factory.h
index b99d3fb0ec..940b58e22f 100644
--- a/backends/fs/symbian/symbian-fs-factory.h
+++ b/backends/fs/symbian/symbian-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SYMBIAN_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/symbian/symbian-fs.cpp b/backends/fs/symbian/symbian-fs.cpp
index 7a652fa43c..8fbc3a402a 100644
--- a/backends/fs/symbian/symbian-fs.cpp
+++ b/backends/fs/symbian/symbian-fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(__SYMBIAN32__)
diff --git a/backends/fs/symbian/symbian-fs.h b/backends/fs/symbian/symbian-fs.h
index 0db9a88940..339e998a28 100644
--- a/backends/fs/symbian/symbian-fs.h
+++ b/backends/fs/symbian/symbian-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SYMBIAN_FILESYSTEM_H
diff --git a/backends/fs/symbian/symbianstream.cpp b/backends/fs/symbian/symbianstream.cpp
index fa7842d3b1..549bc54452 100644
--- a/backends/fs/symbian/symbianstream.cpp
+++ b/backends/fs/symbian/symbianstream.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/symbian/symbianstream.h b/backends/fs/symbian/symbianstream.h
index 3ca612e39b..f0ec095fea 100644
--- a/backends/fs/symbian/symbianstream.h
+++ b/backends/fs/symbian/symbianstream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/fs/wii/wii-fs-factory.cpp b/backends/fs/wii/wii-fs-factory.cpp
index 987e7f56bf..f234c1e300 100644
--- a/backends/fs/wii/wii-fs-factory.cpp
+++ b/backends/fs/wii/wii-fs-factory.cpp
@@ -33,6 +33,9 @@
#ifdef USE_WII_DI
#include <di/di.h>
#include <iso9660.h>
+#ifdef GAMECUBE
+#include <ogc/dvd.h>
+#endif
#endif
#ifdef USE_WII_SMB
@@ -125,7 +128,13 @@ bool WiiFilesystemFactory::failedToMount(FileSystemType type) {
return false;
}
-const DISC_INTERFACE* dvd = &__io_wiidvd;
+#ifdef USE_WII_DI
+#ifndef GAMECUBE
+ const DISC_INTERFACE* dvd = &__io_wiidvd;
+#else
+ const DISC_INTERFACE* dvd = &__io_gcdvd;
+#endif
+#endif
void WiiFilesystemFactory::mount(FileSystemType type) {
switch (type) {
diff --git a/backends/fs/wii/wii-fs.h b/backends/fs/wii/wii-fs.h
index f785101099..c77c543dae 100644
--- a/backends/fs/wii/wii-fs.h
+++ b/backends/fs/wii/wii-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef WII_FILESYSTEM_H
diff --git a/backends/fs/windows/windows-fs-factory.cpp b/backends/fs/windows/windows-fs-factory.cpp
index 46df253748..9d1b13a0c9 100644
--- a/backends/fs/windows/windows-fs-factory.cpp
+++ b/backends/fs/windows/windows-fs-factory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(WIN32)
diff --git a/backends/fs/windows/windows-fs-factory.h b/backends/fs/windows/windows-fs-factory.h
index e7c70f1b55..b5df5406a8 100644
--- a/backends/fs/windows/windows-fs-factory.h
+++ b/backends/fs/windows/windows-fs-factory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef WINDOWS_FILESYSTEM_FACTORY_H
diff --git a/backends/fs/windows/windows-fs.cpp b/backends/fs/windows/windows-fs.cpp
index 030f394f81..49549b83cb 100644
--- a/backends/fs/windows/windows-fs.cpp
+++ b/backends/fs/windows/windows-fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(WIN32)
diff --git a/backends/fs/windows/windows-fs.h b/backends/fs/windows/windows-fs.h
index 351307bef0..d06044603a 100644
--- a/backends/fs/windows/windows-fs.h
+++ b/backends/fs/windows/windows-fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef WINDOWS_FILESYSTEM_H
diff --git a/backends/graphics/default-palette.h b/backends/graphics/default-palette.h
index 8f3fcb2db1..a66e1862b7 100644
--- a/backends/graphics/default-palette.h
+++ b/backends/graphics/default-palette.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/dinguxsdl/dinguxsdl-graphics.cpp b/backends/graphics/dinguxsdl/dinguxsdl-graphics.cpp
index bd87c9fafd..343efa4da6 100644
--- a/backends/graphics/dinguxsdl/dinguxsdl-graphics.cpp
+++ b/backends/graphics/dinguxsdl/dinguxsdl-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/dinguxsdl/dinguxsdl-graphics.h b/backends/graphics/dinguxsdl/dinguxsdl-graphics.h
index ecdd01d166..fc70e721cf 100644
--- a/backends/graphics/dinguxsdl/dinguxsdl-graphics.h
+++ b/backends/graphics/dinguxsdl/dinguxsdl-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/gph/gph-graphics.cpp b/backends/graphics/gph/gph-graphics.cpp
index 92553564bf..247e5ed490 100644
--- a/backends/graphics/gph/gph-graphics.cpp
+++ b/backends/graphics/gph/gph-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/gph/gph-graphics.h b/backends/graphics/gph/gph-graphics.h
index f1f3d18b41..4a68ea6eed 100644
--- a/backends/graphics/gph/gph-graphics.h
+++ b/backends/graphics/gph/gph-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/graphics.h b/backends/graphics/graphics.h
index 24397228e6..3671b9f0b9 100644
--- a/backends/graphics/graphics.h
+++ b/backends/graphics/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/linuxmotosdl/linuxmotosdl-graphics.cpp b/backends/graphics/linuxmotosdl/linuxmotosdl-graphics.cpp
index a005d74919..22b271ae1a 100644
--- a/backends/graphics/linuxmotosdl/linuxmotosdl-graphics.cpp
+++ b/backends/graphics/linuxmotosdl/linuxmotosdl-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/linuxmotosdl/linuxmotosdl-graphics.h b/backends/graphics/linuxmotosdl/linuxmotosdl-graphics.h
index ee2a566d71..8760c5004d 100644
--- a/backends/graphics/linuxmotosdl/linuxmotosdl-graphics.h
+++ b/backends/graphics/linuxmotosdl/linuxmotosdl-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/maemosdl/maemosdl-graphics.cpp b/backends/graphics/maemosdl/maemosdl-graphics.cpp
index 527ef82b9d..07d6d32d3a 100644
--- a/backends/graphics/maemosdl/maemosdl-graphics.cpp
+++ b/backends/graphics/maemosdl/maemosdl-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/maemosdl/maemosdl-graphics.h b/backends/graphics/maemosdl/maemosdl-graphics.h
index 81064d2d5f..c255e94653 100644
--- a/backends/graphics/maemosdl/maemosdl-graphics.h
+++ b/backends/graphics/maemosdl/maemosdl-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/null/null-graphics.h b/backends/graphics/null/null-graphics.h
index 276be7d3fa..67306c29f3 100644
--- a/backends/graphics/null/null-graphics.h
+++ b/backends/graphics/null/null-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/opengl/opengl-graphics.cpp b/backends/graphics/opengl/opengl-graphics.cpp
index a97f680f15..cbd06e9161 100644
--- a/backends/graphics/opengl/opengl-graphics.cpp
+++ b/backends/graphics/opengl/opengl-graphics.cpp
@@ -265,30 +265,28 @@ OSystem::TransactionError OpenGLGraphicsManager::endGFXTransaction() {
delete _gameScreen;
_gameScreen = nullptr;
- GLenum glIntFormat, glFormat, glType;
#ifdef USE_RGB_COLOR
- if (_currentState.gameFormat.bytesPerPixel == 1) {
+ _gameScreen = createTexture(_currentState.gameFormat);
+#else
+ _gameScreen = createTexture(Graphics::PixelFormat::createFormatCLUT8());
#endif
- const bool supported = getGLPixelFormat(_defaultFormat, glIntFormat, glFormat, glType);
- assert(supported);
- _gameScreen = new TextureCLUT8(glIntFormat, glFormat, glType, _defaultFormat);
- _gameScreen->setPalette(0, 255, _gamePalette);
-#ifdef USE_RGB_COLOR
- } else {
- const bool supported = getGLPixelFormat(_currentState.gameFormat, glIntFormat, glFormat, glType);
- assert(supported);
- _gameScreen = new Texture(glIntFormat, glFormat, glType, _currentState.gameFormat);
+ assert(_gameScreen);
+ if (_gameScreen->hasPalette()) {
+ _gameScreen->setPalette(0, 256, _gamePalette);
}
-#endif
_gameScreen->allocate(_currentState.gameWidth, _currentState.gameHeight);
_gameScreen->enableLinearFiltering(_currentState.graphicsMode == GFX_LINEAR);
// We fill the screen to all black or index 0 for CLUT8.
+#ifdef USE_RGB_COLOR
if (_currentState.gameFormat.bytesPerPixel == 1) {
_gameScreen->fill(0);
} else {
_gameScreen->fill(_gameScreen->getSurface()->format.RGBToColor(0, 0, 0));
}
+#else
+ _gameScreen->fill(0);
+#endif
}
// Update our display area and cursor scaling. This makes sure we pick up
@@ -359,15 +357,7 @@ void OpenGLGraphicsManager::updateScreen() {
const GLfloat shakeOffset = _gameScreenShakeOffset * (GLfloat)_displayHeight / _gameScreen->getHeight();
// First step: Draw the (virtual) game screen.
- glPushMatrix();
-
- // Adjust game screen shake position
- GLCALL(glTranslatef(0, shakeOffset, 0));
-
- // Draw the game screen
- _gameScreen->draw(_displayX, _displayY, _displayWidth, _displayHeight);
-
- glPopMatrix();
+ _gameScreen->draw(_displayX, _displayY + shakeOffset, _displayWidth, _displayHeight);
// Second step: Draw the overlay if visible.
if (_overlayVisible) {
@@ -376,18 +366,12 @@ void OpenGLGraphicsManager::updateScreen() {
// Third step: Draw the cursor if visible.
if (_cursorVisible && _cursor) {
- glPushMatrix();
-
// Adjust game screen shake position, but only when the overlay is not
// visible.
- if (!_overlayVisible) {
- GLCALL(glTranslatef(0, shakeOffset, 0));
- }
+ const GLfloat cursorOffset = _overlayVisible ? 0 : shakeOffset;
- _cursor->draw(_cursorX - _cursorHotspotXScaled, _cursorY - _cursorHotspotYScaled,
+ _cursor->draw(_cursorX - _cursorHotspotXScaled, _cursorY - _cursorHotspotYScaled + cursorOffset,
_cursorWidthScaled, _cursorHeightScaled);
-
- glPopMatrix();
}
#ifdef USE_OSD
@@ -566,27 +550,19 @@ void OpenGLGraphicsManager::setMouseCursor(const void *buf, uint w, uint h, int
GLenum glIntFormat, glFormat, glType;
- if (inputFormat.bytesPerPixel == 1) {
- // In case this is not supported this is a serious programming
- // error and the assert a bit below will trigger!
- const bool supported = getGLPixelFormat(_defaultFormatAlpha, glIntFormat, glFormat, glType);
- assert(supported);
- _cursor = new TextureCLUT8(glIntFormat, glFormat, glType, _defaultFormatAlpha);
+ Graphics::PixelFormat textureFormat;
+ if (inputFormat.bytesPerPixel == 1 || (inputFormat.aBits() && getGLPixelFormat(inputFormat, glIntFormat, glFormat, glType))) {
+ // There is two cases when we can use the cursor format directly.
+ // The first is when it's CLUT8, here color key handling can
+ // always be applied because we use the alpha channel of
+ // _defaultFormatAlpha for that.
+ // The other is when the input format has alpha bits and
+ // furthermore is directly supported.
+ textureFormat = inputFormat;
} else {
- // Try to use the format specified as input directly. We can only
- // do so when it actually has alpha bits.
- if (inputFormat.aBits() != 0 && getGLPixelFormat(inputFormat, glIntFormat, glFormat, glType)) {
- _cursor = new Texture(glIntFormat, glFormat, glType, inputFormat);
- }
-
- // Otherwise fall back to the default alpha format.
- if (!_cursor) {
- const bool supported = getGLPixelFormat(_defaultFormatAlpha, glIntFormat, glFormat, glType);
- assert(supported);
- _cursor = new Texture(glIntFormat, glFormat, glType, _defaultFormatAlpha);
- }
+ textureFormat = _defaultFormatAlpha;
}
-
+ _cursor = createTexture(textureFormat, true);
assert(_cursor);
_cursor->enableLinearFiltering(_currentState.graphicsMode == GFX_LINEAR);
}
@@ -778,10 +754,8 @@ void OpenGLGraphicsManager::setActualScreenSize(uint width, uint height) {
delete _overlay;
_overlay = nullptr;
- GLenum glIntFormat, glFormat, glType;
- const bool supported = getGLPixelFormat(_defaultFormatAlpha, glIntFormat, glFormat, glType);
- assert(supported);
- _overlay = new Texture(glIntFormat, glFormat, glType, _defaultFormatAlpha);
+ _overlay = createTexture(_defaultFormatAlpha);
+ assert(_overlay);
// We always filter the overlay with GL_LINEAR. This assures it's
// readable in case it needs to be scaled and does not affect it
// otherwise.
@@ -795,10 +769,8 @@ void OpenGLGraphicsManager::setActualScreenSize(uint width, uint height) {
delete _osd;
_osd = nullptr;
- GLenum glIntFormat, glFormat, glType;
- const bool supported = getGLPixelFormat(_defaultFormatAlpha, glIntFormat, glFormat, glType);
- assert(supported);
- _osd = new Texture(glIntFormat, glFormat, glType, _defaultFormatAlpha);
+ _osd = createTexture(_defaultFormatAlpha);
+ assert(_osd);
// We always filter the osd with GL_LINEAR. This assures it's
// readable in case it needs to be scaled and does not affect it
// otherwise.
@@ -816,7 +788,7 @@ void OpenGLGraphicsManager::setActualScreenSize(uint width, uint height) {
++_screenChangeID;
}
-void OpenGLGraphicsManager::notifyContextChange(const Graphics::PixelFormat &defaultFormat, const Graphics::PixelFormat &defaultFormatAlpha) {
+void OpenGLGraphicsManager::notifyContextCreate(const Graphics::PixelFormat &defaultFormat, const Graphics::PixelFormat &defaultFormatAlpha) {
// Initialize all extensions.
initializeGLExtensions();
@@ -881,6 +853,26 @@ void OpenGLGraphicsManager::notifyContextChange(const Graphics::PixelFormat &def
#endif
}
+void OpenGLGraphicsManager::notifyContextDestroy() {
+ if (_gameScreen) {
+ _gameScreen->releaseInternalTexture();
+ }
+
+ if (_overlay) {
+ _overlay->releaseInternalTexture();
+ }
+
+ if (_cursor) {
+ _cursor->releaseInternalTexture();
+ }
+
+#ifdef USE_OSD
+ if (_osd) {
+ _osd->releaseInternalTexture();
+ }
+#endif
+}
+
void OpenGLGraphicsManager::adjustMousePosition(int16 &x, int16 &y) {
if (_overlayVisible) {
// It might be confusing that we actually have to handle something
@@ -909,11 +901,35 @@ void OpenGLGraphicsManager::adjustMousePosition(int16 &x, int16 &y) {
}
}
+Texture *OpenGLGraphicsManager::createTexture(const Graphics::PixelFormat &format, bool wantAlpha) {
+ GLenum glIntFormat, glFormat, glType;
+ if (format.bytesPerPixel == 1) {
+ const Graphics::PixelFormat &virtFormat = wantAlpha ? _defaultFormatAlpha : _defaultFormat;
+ const bool supported = getGLPixelFormat(virtFormat, glIntFormat, glFormat, glType);
+ if (!supported) {
+ return nullptr;
+ } else {
+ return new TextureCLUT8(glIntFormat, glFormat, glType, virtFormat);
+ }
+ } else {
+ const bool supported = getGLPixelFormat(format, glIntFormat, glFormat, glType);
+ if (!supported) {
+ return nullptr;
+ } else {
+ return new Texture(glIntFormat, glFormat, glType, format);
+ }
+ }
+}
+
bool OpenGLGraphicsManager::getGLPixelFormat(const Graphics::PixelFormat &pixelFormat, GLenum &glIntFormat, GLenum &glFormat, GLenum &glType) const {
+#ifdef SCUMM_LITTLE_ENDIAN
+ if (pixelFormat == Graphics::PixelFormat(4, 8, 8, 8, 8, 0, 8, 16, 24)) { // ABGR8888
+#else
if (pixelFormat == Graphics::PixelFormat(4, 8, 8, 8, 8, 24, 16, 8, 0)) { // RGBA8888
+#endif
glIntFormat = GL_RGBA;
glFormat = GL_RGBA;
- glType = GL_UNSIGNED_INT_8_8_8_8;
+ glType = GL_UNSIGNED_BYTE;
return true;
} else if (pixelFormat == Graphics::PixelFormat(2, 5, 6, 5, 0, 11, 5, 0, 0)) { // RGB565
glIntFormat = GL_RGB;
@@ -931,6 +947,13 @@ bool OpenGLGraphicsManager::getGLPixelFormat(const Graphics::PixelFormat &pixelF
glType = GL_UNSIGNED_SHORT_4_4_4_4;
return true;
#ifndef USE_GLES
+#ifdef SCUMM_LITTLE_ENDIAN
+ } else if (pixelFormat == Graphics::PixelFormat(4, 8, 8, 8, 8, 24, 16, 8, 0)) { // RGBA8888
+ glIntFormat = GL_RGBA;
+ glFormat = GL_RGBA;
+ glType = GL_UNSIGNED_INT_8_8_8_8;
+ return true;
+#endif
} else if (pixelFormat == Graphics::PixelFormat(2, 5, 5, 5, 0, 10, 5, 0, 0)) { // RGB555
// GL_BGRA does not exist in every GLES implementation so should not be configured if
// USE_GLES is set.
@@ -948,11 +971,13 @@ bool OpenGLGraphicsManager::getGLPixelFormat(const Graphics::PixelFormat &pixelF
glFormat = GL_BGRA;
glType = GL_UNSIGNED_SHORT_4_4_4_4_REV;
return true;
+#ifdef SCUMM_BIG_ENDIAN
} else if (pixelFormat == Graphics::PixelFormat(4, 8, 8, 8, 8, 0, 8, 16, 24)) { // ABGR8888
glIntFormat = GL_RGBA;
glFormat = GL_RGBA;
glType = GL_UNSIGNED_INT_8_8_8_8_REV;
return true;
+#endif
} else if (pixelFormat == Graphics::PixelFormat(4, 8, 8, 8, 8, 8, 16, 24, 0)) { // BGRA8888
glIntFormat = GL_RGBA;
glFormat = GL_BGRA;
@@ -1064,14 +1089,14 @@ void OpenGLGraphicsManager::recalculateCursorScaling() {
// In case scaling is actually enabled we will scale the cursor according
// to the game screen.
if (!_cursorDontScale) {
- const uint screenScaleFactorX = _displayWidth * 10000 / _gameScreen->getWidth();
- const uint screenScaleFactorY = _displayHeight * 10000 / _gameScreen->getHeight();
+ const frac_t screenScaleFactorX = intToFrac(_displayWidth) / _gameScreen->getWidth();
+ const frac_t screenScaleFactorY = intToFrac(_displayHeight) / _gameScreen->getHeight();
- _cursorHotspotXScaled = (_cursorHotspotXScaled * screenScaleFactorX) / 10000;
- _cursorWidthScaled = (_cursorWidthScaled * screenScaleFactorX) / 10000;
+ _cursorHotspotXScaled = fracToInt(_cursorHotspotXScaled * screenScaleFactorX);
+ _cursorWidthScaled = fracToInt(_cursorWidthScaled * screenScaleFactorX);
- _cursorHotspotYScaled = (_cursorHotspotYScaled * screenScaleFactorY) / 10000;
- _cursorHeightScaled = (_cursorHeightScaled * screenScaleFactorY) / 10000;
+ _cursorHotspotYScaled = fracToInt(_cursorHotspotYScaled * screenScaleFactorY);
+ _cursorHeightScaled = fracToInt(_cursorHeightScaled * screenScaleFactorY);
}
}
diff --git a/backends/graphics/opengl/opengl-graphics.h b/backends/graphics/opengl/opengl-graphics.h
index 93c0c5bc83..d16f92d148 100644
--- a/backends/graphics/opengl/opengl-graphics.h
+++ b/backends/graphics/opengl/opengl-graphics.h
@@ -127,14 +127,22 @@ protected:
/**
* Notify the manager of a OpenGL context change. This should be the first
- * thing to call when you create an OpenGL (ES) context!
+ * thing to call after you created an OpenGL (ES) context!
*
* @param defaultFormat The new default format for the game screen
* (this is used for the CLUT8 game screens).
* @param defaultFromatAlpha The new default format with an alpha channel
* (this is used for the overlay and cursor).
*/
- void notifyContextChange(const Graphics::PixelFormat &defaultFormat, const Graphics::PixelFormat &defaultFormatAlpha);
+ void notifyContextCreate(const Graphics::PixelFormat &defaultFormat, const Graphics::PixelFormat &defaultFormatAlpha);
+
+ /**
+ * Notify the manager that the OpenGL context is about to be destroyed.
+ * This will free up/reset internal OpenGL related state and *must* be
+ * called whenever a context might be created again after destroying a
+ * context.
+ */
+ void notifyContextDestroy();
/**
* Adjust the physical mouse coordinates according to the currently visible screen.
@@ -163,6 +171,17 @@ protected:
virtual void setInternalMousePosition(int x, int y) = 0;
private:
+ /**
+ * Create a texture with the specified pixel format.
+ *
+ * @param format The pixel format the Texture object should accept as
+ * input.
+ * @param wantAlpha For CLUT8 textures this marks whether an alpha
+ * channel should be used.
+ * @return A pointer to the texture or nullptr on failure.
+ */
+ Texture *createTexture(const Graphics::PixelFormat &format, bool wantAlpha = false);
+
//
// Transaction support
//
@@ -367,22 +386,22 @@ private:
/**
* X coordinate of the cursor in phyiscal coordinates.
*/
- uint _cursorX;
+ int _cursorX;
/**
* Y coordinate of the cursor in physical coordinates.
*/
- uint _cursorY;
+ int _cursorY;
/**
* The X offset for the cursor hotspot in unscaled coordinates.
*/
- uint _cursorHotspotX;
+ int _cursorHotspotX;
/**
* The Y offset for the cursor hotspot in unscaled coordinates.
*/
- uint _cursorHotspotY;
+ int _cursorHotspotY;
/**
* Recalculate the cursor scaling. Scaling is always done according to
@@ -393,12 +412,12 @@ private:
/**
* The X offset for the cursor hotspot in scaled coordinates.
*/
- uint _cursorHotspotXScaled;
+ int _cursorHotspotXScaled;
/**
* The Y offset for the cursor hotspot in scaled coordinates.
*/
- uint _cursorHotspotYScaled;
+ int _cursorHotspotYScaled;
/**
* The width of the cursor scaled coordinates.
diff --git a/backends/graphics/opengl/texture.cpp b/backends/graphics/opengl/texture.cpp
index 8f17ed7eeb..7b0b22d630 100644
--- a/backends/graphics/opengl/texture.cpp
+++ b/backends/graphics/opengl/texture.cpp
@@ -65,6 +65,9 @@ void Texture::releaseInternalTexture() {
}
void Texture::recreateInternalTexture() {
+ // Release old texture name in case it exists.
+ releaseInternalTexture();
+
// Get a new texture name.
GLCALL(glGenTextures(1, &_glTexture));
@@ -163,7 +166,7 @@ void Texture::fill(uint32 color) {
flagDirty();
}
-void Texture::draw(GLuint x, GLuint y, GLuint w, GLuint h) {
+void Texture::draw(GLfloat x, GLfloat y, GLfloat w, GLfloat h) {
// Only do any processing when the Texture is initialized.
if (!_textureData.getPixels()) {
return;
@@ -187,13 +190,13 @@ void Texture::draw(GLuint x, GLuint y, GLuint w, GLuint h) {
GLCALL(glTexCoordPointer(2, GL_FLOAT, 0, texcoords));
// Calculate the screen rect where the texture will be drawn.
- const GLshort vertices[4*2] = {
- (GLshort)x, (GLshort)y,
- (GLshort)(x + w), (GLshort)y,
- (GLshort)x, (GLshort)(y + h),
- (GLshort)(x + w), (GLshort)(y + h)
+ const GLfloat vertices[4*2] = {
+ x, y,
+ x + w, y,
+ x, y + h,
+ x + w, y + h
};
- GLCALL(glVertexPointer(2, GL_SHORT, 0, vertices));
+ GLCALL(glVertexPointer(2, GL_FLOAT, 0, vertices));
// Draw the texture to the screen buffer.
GLCALL(glDrawArrays(GL_TRIANGLE_STRIP, 0, 4));
diff --git a/backends/graphics/opengl/texture.h b/backends/graphics/opengl/texture.h
index e28d980de4..ad70833544 100644
--- a/backends/graphics/opengl/texture.h
+++ b/backends/graphics/opengl/texture.h
@@ -79,7 +79,7 @@ public:
void fill(uint32 color);
- void draw(GLuint x, GLuint y, GLuint w, GLuint h);
+ void draw(GLfloat x, GLfloat y, GLfloat w, GLfloat h);
void flagDirty() { _allDirty = true; }
bool isDirty() const { return _allDirty || !_dirtyArea.isEmpty(); }
diff --git a/backends/graphics/openglsdl/openglsdl-graphics.cpp b/backends/graphics/openglsdl/openglsdl-graphics.cpp
index 3f9fc1fbd5..9540a19e9e 100644
--- a/backends/graphics/openglsdl/openglsdl-graphics.cpp
+++ b/backends/graphics/openglsdl/openglsdl-graphics.cpp
@@ -158,8 +158,18 @@ void OpenGLSdlGraphicsManager::resetGraphicsScale() {
Common::List<Graphics::PixelFormat> OpenGLSdlGraphicsManager::getSupportedFormats() const {
Common::List<Graphics::PixelFormat> formats;
+ // Our default mode is (memory layout wise) RGBA8888 which is a different
+ // logical layout depending on the endianness. We chose this mode because
+ // it is the only 32bit color mode we can safely assume to be present in
+ // OpenGL and OpenGL ES implementations. Thus, we need to supply different
+ // logical formats based on endianness.
+#ifdef SCUMM_LITTLE_ENDIAN
+ // ABGR8888
+ formats.push_back(Graphics::PixelFormat(4, 8, 8, 8, 8, 0, 8, 16, 24));
+#else
// RGBA8888
formats.push_back(Graphics::PixelFormat(4, 8, 8, 8, 8, 24, 16, 8, 0));
+#endif
// RGB565
formats.push_back(Graphics::PixelFormat(2, 5, 6, 5, 0, 11, 5, 0, 0));
// RGBA5551
@@ -168,6 +178,13 @@ Common::List<Graphics::PixelFormat> OpenGLSdlGraphicsManager::getSupportedFormat
formats.push_back(Graphics::PixelFormat(2, 4, 4, 4, 4, 12, 8, 4, 0));
#ifndef USE_GLES
+#ifdef SCUMM_LITTLE_ENDIAN
+ // RGBA8888
+ formats.push_back(Graphics::PixelFormat(4, 8, 8, 8, 8, 24, 16, 8, 0));
+#else
+ // ABGR8888
+ formats.push_back(Graphics::PixelFormat(4, 8, 8, 8, 8, 0, 8, 16, 24));
+#endif
// ARGB8888, this should not be here, but Sword25 requires it. :-/
formats.push_back(Graphics::PixelFormat(4, 8, 8, 8, 8, 16, 8, 0, 24));
@@ -308,6 +325,14 @@ bool OpenGLSdlGraphicsManager::setupMode(uint width, uint height) {
flags |= SDL_RESIZABLE;
}
+ if (_hwScreen) {
+ // When a video mode has been setup already we notify the manager that
+ // the context is about to be destroyed.
+ // We do this because on Windows SDL_SetVideoMode can destroy and
+ // recreate the OpenGL context.
+ notifyContextDestroy();
+ }
+
_hwScreen = SDL_SetVideoMode(width, height, 32, flags);
if (!_hwScreen) {
@@ -319,8 +344,18 @@ bool OpenGLSdlGraphicsManager::setupMode(uint width, uint height) {
}
if (_hwScreen) {
- const Graphics::PixelFormat rgba8888 = Graphics::PixelFormat(4, 8, 8, 8, 8, 24, 16, 8, 0);
- notifyContextChange(rgba8888, rgba8888);
+ // This is pretty confusing since RGBA8888 talks about the memory
+ // layout here. This is a different logical layout depending on
+ // whether we run on little endian or big endian. However, we can
+ // only safely assume that RGBA8888 in memory layout is supported.
+ // Thus, we chose this one.
+ const Graphics::PixelFormat rgba8888 =
+#ifdef SCUMM_LITTLE_ENDIAN
+ Graphics::PixelFormat(4, 8, 8, 8, 8, 0, 8, 16, 24);
+#else
+ Graphics::PixelFormat(4, 8, 8, 8, 8, 24, 16, 8, 0);
+#endif
+ notifyContextCreate(rgba8888, rgba8888);
setActualScreenSize(_hwScreen->w, _hwScreen->h);
}
diff --git a/backends/graphics/openpandora/op-graphics.cpp b/backends/graphics/openpandora/op-graphics.cpp
index f371081fde..1ded1614de 100644
--- a/backends/graphics/openpandora/op-graphics.cpp
+++ b/backends/graphics/openpandora/op-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/openpandora/op-graphics.h b/backends/graphics/openpandora/op-graphics.h
index 2e3d63e3ad..8b498d632b 100644
--- a/backends/graphics/openpandora/op-graphics.h
+++ b/backends/graphics/openpandora/op-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/samsungtvsdl/samsungtvsdl-graphics.cpp b/backends/graphics/samsungtvsdl/samsungtvsdl-graphics.cpp
index 95e0875f55..3603d8a861 100644
--- a/backends/graphics/samsungtvsdl/samsungtvsdl-graphics.cpp
+++ b/backends/graphics/samsungtvsdl/samsungtvsdl-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/samsungtvsdl/samsungtvsdl-graphics.h b/backends/graphics/samsungtvsdl/samsungtvsdl-graphics.h
index 2d0ff636f4..15ba3dca48 100644
--- a/backends/graphics/samsungtvsdl/samsungtvsdl-graphics.h
+++ b/backends/graphics/samsungtvsdl/samsungtvsdl-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/sdl/sdl-graphics.cpp b/backends/graphics/sdl/sdl-graphics.cpp
index 40b97b267b..b5e49fa397 100644
--- a/backends/graphics/sdl/sdl-graphics.cpp
+++ b/backends/graphics/sdl/sdl-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/sdl/sdl-graphics.h b/backends/graphics/sdl/sdl-graphics.h
index 3791961cfa..3ef540708a 100644
--- a/backends/graphics/sdl/sdl-graphics.h
+++ b/backends/graphics/sdl/sdl-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/surfacesdl/surfacesdl-graphics.cpp b/backends/graphics/surfacesdl/surfacesdl-graphics.cpp
index b3af08e2e8..7f3c99fcea 100644
--- a/backends/graphics/surfacesdl/surfacesdl-graphics.cpp
+++ b/backends/graphics/surfacesdl/surfacesdl-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/surfacesdl/surfacesdl-graphics.h b/backends/graphics/surfacesdl/surfacesdl-graphics.h
index 22b7780675..49bd66b3e5 100644
--- a/backends/graphics/surfacesdl/surfacesdl-graphics.h
+++ b/backends/graphics/surfacesdl/surfacesdl-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/symbiansdl/symbiansdl-graphics.cpp b/backends/graphics/symbiansdl/symbiansdl-graphics.cpp
index 5fe8b19887..e339fecd1c 100644
--- a/backends/graphics/symbiansdl/symbiansdl-graphics.cpp
+++ b/backends/graphics/symbiansdl/symbiansdl-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/symbiansdl/symbiansdl-graphics.h b/backends/graphics/symbiansdl/symbiansdl-graphics.h
index 73e810a629..f514db286c 100644
--- a/backends/graphics/symbiansdl/symbiansdl-graphics.h
+++ b/backends/graphics/symbiansdl/symbiansdl-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/wincesdl/wincesdl-graphics.cpp b/backends/graphics/wincesdl/wincesdl-graphics.cpp
index f075f8cf8a..8e4685dbd8 100644
--- a/backends/graphics/wincesdl/wincesdl-graphics.cpp
+++ b/backends/graphics/wincesdl/wincesdl-graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/graphics/wincesdl/wincesdl-graphics.h b/backends/graphics/wincesdl/wincesdl-graphics.h
index 2897ca5f40..50b422c10d 100644
--- a/backends/graphics/wincesdl/wincesdl-graphics.h
+++ b/backends/graphics/wincesdl/wincesdl-graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/keymapper/action.cpp b/backends/keymapper/action.cpp
index 33f5c423b0..5108590f0c 100644
--- a/backends/keymapper/action.cpp
+++ b/backends/keymapper/action.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "backends/keymapper/action.h"
diff --git a/backends/keymapper/action.h b/backends/keymapper/action.h
index 5e69ed3918..ed4bb86ce6 100644
--- a/backends/keymapper/action.h
+++ b/backends/keymapper/action.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef COMMON_ACTION_H
#define COMMON_ACTION_H
diff --git a/backends/keymapper/hardware-input.cpp b/backends/keymapper/hardware-input.cpp
index d1f8822ac0..d4b5ff5da0 100644
--- a/backends/keymapper/hardware-input.cpp
+++ b/backends/keymapper/hardware-input.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "backends/keymapper/hardware-input.h"
diff --git a/backends/keymapper/hardware-input.h b/backends/keymapper/hardware-input.h
index 51d4accb5b..064d7e9da0 100644
--- a/backends/keymapper/hardware-input.h
+++ b/backends/keymapper/hardware-input.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef COMMON_HARDWARE_KEY_H
#define COMMON_HARDWARE_KEY_H
diff --git a/backends/keymapper/keymap.cpp b/backends/keymapper/keymap.cpp
index e95dd6afb5..eaa774c972 100644
--- a/backends/keymapper/keymap.cpp
+++ b/backends/keymapper/keymap.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "backends/keymapper/keymap.h"
diff --git a/backends/keymapper/keymap.h b/backends/keymapper/keymap.h
index 6eaec7dcaf..0694dc31e1 100644
--- a/backends/keymapper/keymap.h
+++ b/backends/keymapper/keymap.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef COMMON_KEYMAP_H
#define COMMON_KEYMAP_H
diff --git a/backends/keymapper/keymapper-defaults.h b/backends/keymapper/keymapper-defaults.h
index bd4afd4e3a..aedde873dc 100644
--- a/backends/keymapper/keymapper-defaults.h
+++ b/backends/keymapper/keymapper-defaults.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifdef ENABLE_KEYMAPPER
diff --git a/backends/keymapper/keymapper.cpp b/backends/keymapper/keymapper.cpp
index dcb021f2d8..aba00c500d 100644
--- a/backends/keymapper/keymapper.cpp
+++ b/backends/keymapper/keymapper.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "backends/keymapper/keymapper.h"
diff --git a/backends/keymapper/keymapper.h b/backends/keymapper/keymapper.h
index a54a2acbdc..ea6fc14e35 100644
--- a/backends/keymapper/keymapper.h
+++ b/backends/keymapper/keymapper.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef COMMON_KEYMAPPER_H
#define COMMON_KEYMAPPER_H
diff --git a/backends/keymapper/remap-dialog.cpp b/backends/keymapper/remap-dialog.cpp
index 009c2201a9..3aa3647048 100644
--- a/backends/keymapper/remap-dialog.cpp
+++ b/backends/keymapper/remap-dialog.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "backends/keymapper/remap-dialog.h"
@@ -257,6 +258,12 @@ void RemapDialog::startRemapping(uint i) {
if (_topAction + i >= _currentActions.size())
return;
+ if (_keymapper->isRemapping()) {
+ // Handle a second click on the button as a stop to remapping
+ stopRemapping(true);
+ return;
+ }
+
_remapTimeout = g_system->getMillis() + kRemapTimeoutDelay;
Action *activeRemapAction = _currentActions[_topAction + i].action;
_keymapWidgets[i].keyButton->setLabel("...");
diff --git a/backends/keymapper/remap-dialog.h b/backends/keymapper/remap-dialog.h
index 82c68405db..054a471064 100644
--- a/backends/keymapper/remap-dialog.h
+++ b/backends/keymapper/remap-dialog.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef REMAP_DIALOG_H
diff --git a/backends/midi/alsa.cpp b/backends/midi/alsa.cpp
index c006b6b6bf..14889b2942 100644
--- a/backends/midi/alsa.cpp
+++ b/backends/midi/alsa.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
// Disable symbol overrides so that we can use system headers.
diff --git a/backends/midi/camd.cpp b/backends/midi/camd.cpp
index 88973488ca..d91aef5533 100644
--- a/backends/midi/camd.cpp
+++ b/backends/midi/camd.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
// Disable symbol overrides so that we can use system headers.
@@ -30,11 +31,13 @@
#include "common/error.h"
#include "common/endian.h"
#include "common/util.h"
+#include "common/str.h"
#include "audio/musicplugin.h"
#include "audio/mpu401.h"
#include <proto/camd.h>
#include <proto/exec.h>
+#include <proto/dos.h>
/*
* CAMD sequencer driver
@@ -55,6 +58,7 @@ private:
struct Library *_CamdBase;
struct CamdIFace *_ICamd;
struct MidiLink *_midi_link;
+ char _outport[128];
char *getDevice();
void closeAll();
@@ -154,13 +158,18 @@ char *MidiDriver_CAMD::getDevice() {
if (strstr(dev, "out") != NULL) {
// This is an output device, return this
- retname = dev;
+ Common::strlcpy(_outport, dev, sizeof(_outport));
+ retname = _outport;
} else {
// Search the next one
cluster = _ICamd->NextCluster(cluster);
}
}
+ // If the user has a preference outport set, use this instead
+ if(IDOS->GetVar("DefMidiOut", _outport, 128, 0))
+ retname = _outport;
+
_ICamd->UnlockCAMD(key);
}
diff --git a/backends/midi/coreaudio.cpp b/backends/midi/coreaudio.cpp
index e42b8ca313..74c590c654 100644
--- a/backends/midi/coreaudio.cpp
+++ b/backends/midi/coreaudio.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
// Disable symbol overrides so that we can use system headers.
diff --git a/backends/midi/coremidi.cpp b/backends/midi/coremidi.cpp
index 1d61dceba2..e2ec8405e9 100644
--- a/backends/midi/coremidi.cpp
+++ b/backends/midi/coremidi.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
// Disable symbol overrides so that we can use system headers.
diff --git a/backends/midi/dmedia.cpp b/backends/midi/dmedia.cpp
index 68e957f9aa..eac2d34b58 100644
--- a/backends/midi/dmedia.cpp
+++ b/backends/midi/dmedia.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/*
diff --git a/backends/midi/seq.cpp b/backends/midi/seq.cpp
index 37986520bf..2ce25b726c 100644
--- a/backends/midi/seq.cpp
+++ b/backends/midi/seq.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/*
diff --git a/backends/midi/sndio.cpp b/backends/midi/sndio.cpp
index a065a658e1..5efec4b899 100644
--- a/backends/midi/sndio.cpp
+++ b/backends/midi/sndio.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
// Disable symbol overrides so that we can use system headers.
diff --git a/backends/midi/stmidi.cpp b/backends/midi/stmidi.cpp
index 5a6326877e..28350b3cc2 100644
--- a/backends/midi/stmidi.cpp
+++ b/backends/midi/stmidi.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/*
diff --git a/backends/midi/timidity.cpp b/backends/midi/timidity.cpp
index d2c60bec9d..d10b808bdb 100644
--- a/backends/midi/timidity.cpp
+++ b/backends/midi/timidity.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/*
diff --git a/backends/midi/windows.cpp b/backends/midi/windows.cpp
index f4c5431d6e..e2b327ffa7 100644
--- a/backends/midi/windows.cpp
+++ b/backends/midi/windows.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
// Disable symbol overrides so that we can use system headers.
diff --git a/backends/mixer/doublebuffersdl/doublebuffersdl-mixer.cpp b/backends/mixer/doublebuffersdl/doublebuffersdl-mixer.cpp
index 3e5b9940e0..d59b0ebdfc 100644
--- a/backends/mixer/doublebuffersdl/doublebuffersdl-mixer.cpp
+++ b/backends/mixer/doublebuffersdl/doublebuffersdl-mixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/doublebuffersdl/doublebuffersdl-mixer.h b/backends/mixer/doublebuffersdl/doublebuffersdl-mixer.h
index c95294e2c0..e3019fe11b 100644
--- a/backends/mixer/doublebuffersdl/doublebuffersdl-mixer.h
+++ b/backends/mixer/doublebuffersdl/doublebuffersdl-mixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/nullmixer/nullsdl-mixer.cpp b/backends/mixer/nullmixer/nullsdl-mixer.cpp
index 2fd652e19f..97b59bb2ed 100644
--- a/backends/mixer/nullmixer/nullsdl-mixer.cpp
+++ b/backends/mixer/nullmixer/nullsdl-mixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/nullmixer/nullsdl-mixer.h b/backends/mixer/nullmixer/nullsdl-mixer.h
index 94248ced66..2fc46efc39 100644
--- a/backends/mixer/nullmixer/nullsdl-mixer.h
+++ b/backends/mixer/nullmixer/nullsdl-mixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/sdl/sdl-mixer.cpp b/backends/mixer/sdl/sdl-mixer.cpp
index 3c79290b50..7c709e91a3 100644
--- a/backends/mixer/sdl/sdl-mixer.cpp
+++ b/backends/mixer/sdl/sdl-mixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -58,6 +58,12 @@ void SdlMixerManager::init() {
error("Could not initialize SDL: %s", SDL_GetError());
}
+ const int maxNameLen = 20;
+ char sdlDriverName[maxNameLen];
+ sdlDriverName[0] = '\0';
+ SDL_AudioDriverName(sdlDriverName, maxNameLen);
+ debug(1, "Using SDL Audio Driver \"%s\"", sdlDriverName);
+
// Get the desired audio specs
SDL_AudioSpec desired = getAudioSpec(SAMPLES_PER_SEC);
diff --git a/backends/mixer/sdl/sdl-mixer.h b/backends/mixer/sdl/sdl-mixer.h
index 6fee26bd1f..088ebe109e 100644
--- a/backends/mixer/sdl/sdl-mixer.h
+++ b/backends/mixer/sdl/sdl-mixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/sdl13/sdl13-mixer.cpp b/backends/mixer/sdl13/sdl13-mixer.cpp
index 24d3434fde..f9894a6f91 100644
--- a/backends/mixer/sdl13/sdl13-mixer.cpp
+++ b/backends/mixer/sdl13/sdl13-mixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/sdl13/sdl13-mixer.h b/backends/mixer/sdl13/sdl13-mixer.h
index 9e07ea8673..ff2bb43084 100644
--- a/backends/mixer/sdl13/sdl13-mixer.h
+++ b/backends/mixer/sdl13/sdl13-mixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/symbiansdl/symbiansdl-mixer.cpp b/backends/mixer/symbiansdl/symbiansdl-mixer.cpp
index e978e9207f..debbb74c4f 100644
--- a/backends/mixer/symbiansdl/symbiansdl-mixer.cpp
+++ b/backends/mixer/symbiansdl/symbiansdl-mixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/symbiansdl/symbiansdl-mixer.h b/backends/mixer/symbiansdl/symbiansdl-mixer.h
index d59c98753b..4203d59350 100644
--- a/backends/mixer/symbiansdl/symbiansdl-mixer.h
+++ b/backends/mixer/symbiansdl/symbiansdl-mixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/wincesdl/wincesdl-mixer.cpp b/backends/mixer/wincesdl/wincesdl-mixer.cpp
index db5ab59446..2c70ee76c7 100644
--- a/backends/mixer/wincesdl/wincesdl-mixer.cpp
+++ b/backends/mixer/wincesdl/wincesdl-mixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mixer/wincesdl/wincesdl-mixer.h b/backends/mixer/wincesdl/wincesdl-mixer.h
index fb51f6ac64..56883fa080 100644
--- a/backends/mixer/wincesdl/wincesdl-mixer.h
+++ b/backends/mixer/wincesdl/wincesdl-mixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/modular-backend.cpp b/backends/modular-backend.cpp
index 6afe06aeca..d8be9ca7ed 100644
--- a/backends/modular-backend.cpp
+++ b/backends/modular-backend.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/modular-backend.h b/backends/modular-backend.h
index b43769c716..20e8b7357d 100644
--- a/backends/modular-backend.h
+++ b/backends/modular-backend.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/module.mk b/backends/module.mk
index 1222d9a363..34e2928419 100644
--- a/backends/module.mk
+++ b/backends/module.mk
@@ -97,7 +97,8 @@ ifdef MACOSX
MODULE_OBJS += \
midi/coreaudio.o \
midi/coremidi.o \
- updates/macosx/macosx-updates.o
+ updates/macosx/macosx-updates.o \
+ taskbar/macosx/macosx-taskbar.o
endif
ifdef WIN32
diff --git a/backends/mutex/mutex.h b/backends/mutex/mutex.h
index 9cc16c7a2c..26a6d47e09 100644
--- a/backends/mutex/mutex.h
+++ b/backends/mutex/mutex.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mutex/null/null-mutex.h b/backends/mutex/null/null-mutex.h
index 7ae10cedb8..218b1adf02 100644
--- a/backends/mutex/null/null-mutex.h
+++ b/backends/mutex/null/null-mutex.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mutex/sdl/sdl-mutex.cpp b/backends/mutex/sdl/sdl-mutex.cpp
index a51e6f0e38..be10d30500 100644
--- a/backends/mutex/sdl/sdl-mutex.cpp
+++ b/backends/mutex/sdl/sdl-mutex.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/mutex/sdl/sdl-mutex.h b/backends/mutex/sdl/sdl-mutex.h
index 914c2a19db..6fcae05cee 100644
--- a/backends/mutex/sdl/sdl-mutex.h
+++ b/backends/mutex/sdl/sdl-mutex.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/android.cpp b/backends/platform/android/android.cpp
index 5e3d1d0db6..3ff1b939ef 100644
--- a/backends/platform/android/android.cpp
+++ b/backends/platform/android/android.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/android.h b/backends/platform/android/android.h
index 704ce12f60..28016f5e3e 100644
--- a/backends/platform/android/android.h
+++ b/backends/platform/android/android.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/android.mk b/backends/platform/android/android.mk
index 915bf8ac60..7c4fe01d54 100644
--- a/backends/platform/android/android.mk
+++ b/backends/platform/android/android.mk
@@ -7,6 +7,7 @@ ANDROID_PLUGIN_VERSIONCODE = 6
JAVA_FILES = \
ScummVM.java \
ScummVMEvents.java \
+ ScummVMEventsHoneycomb.java \
ScummVMApplication.java \
ScummVMActivity.java \
EditableSurfaceView.java \
diff --git a/backends/platform/android/asset-archive.cpp b/backends/platform/android/asset-archive.cpp
index da378fb082..52c2c084bd 100644
--- a/backends/platform/android/asset-archive.cpp
+++ b/backends/platform/android/asset-archive.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/asset-archive.h b/backends/platform/android/asset-archive.h
index c5e43555e0..6a0033d24e 100644
--- a/backends/platform/android/asset-archive.h
+++ b/backends/platform/android/asset-archive.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/events.cpp b/backends/platform/android/events.cpp
index 5c42db9347..c60626ec36 100644
--- a/backends/platform/android/events.cpp
+++ b/backends/platform/android/events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/gfx.cpp b/backends/platform/android/gfx.cpp
index 9f6c759c75..b71a98338b 100644
--- a/backends/platform/android/gfx.cpp
+++ b/backends/platform/android/gfx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -759,8 +759,8 @@ void OSystem_Android::setMouseCursor(const void *buf, uint w, uint h,
uint16 *d = (uint16 *)tmp;
for (uint16 y = 0; y < h; ++y, d += pitch / 2 - w)
for (uint16 x = 0; x < w; ++x, d++)
- if (*s++ != (keycolor & 0xffff))
- *d |= 1;
+ if (*s++ == (keycolor & 0xffff))
+ *d = 0;
_mouse_texture->updateBuffer(0, 0, w, h, tmp, pitch);
diff --git a/backends/platform/android/jni.cpp b/backends/platform/android/jni.cpp
index 2b738dd63f..764c84ce1c 100644
--- a/backends/platform/android/jni.cpp
+++ b/backends/platform/android/jni.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/jni.h b/backends/platform/android/jni.h
index 52698e0f35..326869b1ee 100644
--- a/backends/platform/android/jni.h
+++ b/backends/platform/android/jni.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/org/scummvm/scummvm/ScummVM.java b/backends/platform/android/org/scummvm/scummvm/ScummVM.java
index 3a25b54eeb..5047502e61 100644
--- a/backends/platform/android/org/scummvm/scummvm/ScummVM.java
+++ b/backends/platform/android/org/scummvm/scummvm/ScummVM.java
@@ -86,13 +86,15 @@ public abstract class ScummVM implements SurfaceHolder.Callback, Runnable {
Log.d(LOG_TAG, String.format("surfaceChanged: %dx%d (%d)",
width, height, format));
+ // store values for the native code
+ // make sure to do it before notifying the lock
+ // as it leads to a race condition otherwise
+ setSurface(width, height);
+
synchronized(_sem_surface) {
_surface_holder = holder;
_sem_surface.notifyAll();
}
-
- // store values for the native code
- setSurface(width, height);
}
// SurfaceHolder callback
diff --git a/backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java b/backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java
index 5d041dafd2..5964d5bfde 100644
--- a/backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java
+++ b/backends/platform/android/org/scummvm/scummvm/ScummVMActivity.java
@@ -4,6 +4,7 @@ import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.media.AudioManager;
+import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.util.DisplayMetrics;
@@ -169,7 +170,14 @@ public class ScummVMActivity extends Activity {
_mouseHelper.attach(main_surface);
}
- _events = new ScummVMEvents(this, _scummvm, _mouseHelper);
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB_MR1)
+ {
+ _events = new ScummVMEvents(this, _scummvm, _mouseHelper);
+ }
+ else
+ {
+ _events = new ScummVMEventsHoneycomb(this, _scummvm, _mouseHelper);
+ }
main_surface.setOnKeyListener(_events);
main_surface.setOnTouchListener(_events);
diff --git a/backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java b/backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java
index 702215341b..32c65d3395 100644
--- a/backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java
+++ b/backends/platform/android/org/scummvm/scummvm/ScummVMEvents.java
@@ -68,15 +68,7 @@ public class ScummVMEvents implements
return true;
}
- public boolean onGenericMotionEvent(final MotionEvent e) {
- if((e.getSource() & InputDevice.SOURCE_CLASS_JOYSTICK) != 0) {
- _scummvm.pushEvent(JE_JOYSTICK, e.getAction(),
- (int)(e.getAxisValue(MotionEvent.AXIS_X)*100),
- (int)(e.getAxisValue(MotionEvent.AXIS_Y)*100),
- 0, 0);
- return true;
- }
-
+ public boolean onGenericMotionEvent(MotionEvent e) {
return false;
}
diff --git a/backends/platform/android/org/scummvm/scummvm/ScummVMEventsHoneycomb.java b/backends/platform/android/org/scummvm/scummvm/ScummVMEventsHoneycomb.java
new file mode 100644
index 0000000000..ab85429040
--- /dev/null
+++ b/backends/platform/android/org/scummvm/scummvm/ScummVMEventsHoneycomb.java
@@ -0,0 +1,25 @@
+package org.scummvm.scummvm;
+
+import android.content.Context;
+import android.view.MotionEvent;
+import android.view.InputDevice;
+
+public class ScummVMEventsHoneycomb extends ScummVMEvents {
+
+ public ScummVMEventsHoneycomb(Context context, ScummVM scummvm, MouseHelper mouseHelper) {
+ super(context, scummvm, mouseHelper);
+ }
+
+ @Override
+ public boolean onGenericMotionEvent(MotionEvent e) {
+ if((e.getSource() & InputDevice.SOURCE_CLASS_JOYSTICK) != 0) {
+ _scummvm.pushEvent(JE_JOYSTICK, e.getAction(),
+ (int)(e.getAxisValue(MotionEvent.AXIS_X)*100),
+ (int)(e.getAxisValue(MotionEvent.AXIS_Y)*100),
+ 0, 0);
+ return true;
+ }
+
+ return false;
+ }
+}
diff --git a/backends/platform/android/texture.cpp b/backends/platform/android/texture.cpp
index 87fd2d976c..165396b82b 100644
--- a/backends/platform/android/texture.cpp
+++ b/backends/platform/android/texture.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/android/texture.h b/backends/platform/android/texture.h
index 67f7343c98..4b05dfd5d4 100644
--- a/backends/platform/android/texture.h
+++ b/backends/platform/android/texture.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/DCLauncherDialog.h b/backends/platform/dc/DCLauncherDialog.h
index 519524222f..5131482cb6 100644
--- a/backends/platform/dc/DCLauncherDialog.h
+++ b/backends/platform/dc/DCLauncherDialog.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/audio.cpp b/backends/platform/dc/audio.cpp
index 4f01531486..4759ddb799 100644
--- a/backends/platform/dc/audio.cpp
+++ b/backends/platform/dc/audio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/dc-fs.cpp b/backends/platform/dc/dc-fs.cpp
index f850c9d26f..77fe4143dd 100644
--- a/backends/platform/dc/dc-fs.cpp
+++ b/backends/platform/dc/dc-fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_ALLOW_ALL
diff --git a/backends/platform/dc/dc.h b/backends/platform/dc/dc.h
index ba60c7740e..d8ab549c3a 100644
--- a/backends/platform/dc/dc.h
+++ b/backends/platform/dc/dc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/dcloader.cpp b/backends/platform/dc/dcloader.cpp
index 56193c282a..bc5e3a733b 100644
--- a/backends/platform/dc/dcloader.cpp
+++ b/backends/platform/dc/dcloader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/dcloader.h b/backends/platform/dc/dcloader.h
index 1782467acd..074ae7aa29 100644
--- a/backends/platform/dc/dcloader.h
+++ b/backends/platform/dc/dcloader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/dcmain.cpp b/backends/platform/dc/dcmain.cpp
index 36a22c4b5c..eede796991 100644
--- a/backends/platform/dc/dcmain.cpp
+++ b/backends/platform/dc/dcmain.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/display.cpp b/backends/platform/dc/display.cpp
index 54ee6000ed..1785c3c416 100644
--- a/backends/platform/dc/display.cpp
+++ b/backends/platform/dc/display.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/icon.cpp b/backends/platform/dc/icon.cpp
index 28edf27f4f..ba621883a9 100644
--- a/backends/platform/dc/icon.cpp
+++ b/backends/platform/dc/icon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/icon.h b/backends/platform/dc/icon.h
index e412e67a84..253455fe30 100644
--- a/backends/platform/dc/icon.h
+++ b/backends/platform/dc/icon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/input.cpp b/backends/platform/dc/input.cpp
index 5c6adf6c7c..a69bb3b78f 100644
--- a/backends/platform/dc/input.cpp
+++ b/backends/platform/dc/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/label.cpp b/backends/platform/dc/label.cpp
index 5db031958f..46bff0db11 100644
--- a/backends/platform/dc/label.cpp
+++ b/backends/platform/dc/label.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/label.h b/backends/platform/dc/label.h
index 6b96175d29..2a7e7b35ea 100644
--- a/backends/platform/dc/label.h
+++ b/backends/platform/dc/label.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/plugins.cpp b/backends/platform/dc/plugins.cpp
index 2942a4f155..93689157f3 100644
--- a/backends/platform/dc/plugins.cpp
+++ b/backends/platform/dc/plugins.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/portdefs.h b/backends/platform/dc/portdefs.h
index 1f5c8f566a..191bbea09c 100644
--- a/backends/platform/dc/portdefs.h
+++ b/backends/platform/dc/portdefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/selector.cpp b/backends/platform/dc/selector.cpp
index 4026c7dde6..6717ca494b 100644
--- a/backends/platform/dc/selector.cpp
+++ b/backends/platform/dc/selector.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/softkbd.cpp b/backends/platform/dc/softkbd.cpp
index 076f826d1c..19f7b409a1 100644
--- a/backends/platform/dc/softkbd.cpp
+++ b/backends/platform/dc/softkbd.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/softkbd.h b/backends/platform/dc/softkbd.h
index 27826c2744..c7c4357a44 100644
--- a/backends/platform/dc/softkbd.h
+++ b/backends/platform/dc/softkbd.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/time.cpp b/backends/platform/dc/time.cpp
index 1e5f44ec85..ada53bf755 100644
--- a/backends/platform/dc/time.cpp
+++ b/backends/platform/dc/time.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dc/vmsave.cpp b/backends/platform/dc/vmsave.cpp
index ba3b787942..5f5cdff24f 100644
--- a/backends/platform/dc/vmsave.cpp
+++ b/backends/platform/dc/vmsave.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dingux/dingux.cpp b/backends/platform/dingux/dingux.cpp
index 674c2ea780..2f11dd31ad 100644
--- a/backends/platform/dingux/dingux.cpp
+++ b/backends/platform/dingux/dingux.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dingux/dingux.h b/backends/platform/dingux/dingux.h
index 2a07a8a46a..add74fa039 100644
--- a/backends/platform/dingux/dingux.h
+++ b/backends/platform/dingux/dingux.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/dingux/main.cpp b/backends/platform/dingux/main.cpp
index 4fc67d874f..98b5058c06 100644
--- a/backends/platform/dingux/main.cpp
+++ b/backends/platform/dingux/main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm7/source/main.cpp b/backends/platform/ds/arm7/source/main.cpp
index 6e714b22fa..c4a22b8f68 100644
--- a/backends/platform/ds/arm7/source/main.cpp
+++ b/backends/platform/ds/arm7/source/main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/blitters.cpp b/backends/platform/ds/arm9/source/blitters.cpp
index ef2dc9c3b8..44de0ed0f6 100644
--- a/backends/platform/ds/arm9/source/blitters.cpp
+++ b/backends/platform/ds/arm9/source/blitters.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/blitters.h b/backends/platform/ds/arm9/source/blitters.h
index de6e218778..602cde4755 100644
--- a/backends/platform/ds/arm9/source/blitters.h
+++ b/backends/platform/ds/arm9/source/blitters.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/cdaudio.cpp b/backends/platform/ds/arm9/source/cdaudio.cpp
index 277e1f4ae7..c963f4d8bd 100644
--- a/backends/platform/ds/arm9/source/cdaudio.cpp
+++ b/backends/platform/ds/arm9/source/cdaudio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/cdaudio.h b/backends/platform/ds/arm9/source/cdaudio.h
index 8a0e0c5174..77766bae8e 100644
--- a/backends/platform/ds/arm9/source/cdaudio.h
+++ b/backends/platform/ds/arm9/source/cdaudio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/dsmain.cpp b/backends/platform/ds/arm9/source/dsmain.cpp
index 9dc66e80d7..b7c9c108a6 100644
--- a/backends/platform/ds/arm9/source/dsmain.cpp
+++ b/backends/platform/ds/arm9/source/dsmain.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/dsmain.h b/backends/platform/ds/arm9/source/dsmain.h
index 5e91fae13a..fec97d878e 100644
--- a/backends/platform/ds/arm9/source/dsmain.h
+++ b/backends/platform/ds/arm9/source/dsmain.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/dsoptions.cpp b/backends/platform/ds/arm9/source/dsoptions.cpp
index ac552bd826..733592e958 100644
--- a/backends/platform/ds/arm9/source/dsoptions.cpp
+++ b/backends/platform/ds/arm9/source/dsoptions.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/dsoptions.h b/backends/platform/ds/arm9/source/dsoptions.h
index 9949b8b7d2..35e30a87d5 100644
--- a/backends/platform/ds/arm9/source/dsoptions.h
+++ b/backends/platform/ds/arm9/source/dsoptions.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/gbampsave.cpp b/backends/platform/ds/arm9/source/gbampsave.cpp
index 3192e2d277..ef6091e2a2 100644
--- a/backends/platform/ds/arm9/source/gbampsave.cpp
+++ b/backends/platform/ds/arm9/source/gbampsave.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/gbampsave.h b/backends/platform/ds/arm9/source/gbampsave.h
index 0d9d9aca8c..d86db2ec70 100644
--- a/backends/platform/ds/arm9/source/gbampsave.h
+++ b/backends/platform/ds/arm9/source/gbampsave.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/keys.h b/backends/platform/ds/arm9/source/keys.h
index 9d6b41c746..d118b37f28 100644
--- a/backends/platform/ds/arm9/source/keys.h
+++ b/backends/platform/ds/arm9/source/keys.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/osystem_ds.cpp b/backends/platform/ds/arm9/source/osystem_ds.cpp
index f109983fbc..c53f57523d 100644
--- a/backends/platform/ds/arm9/source/osystem_ds.cpp
+++ b/backends/platform/ds/arm9/source/osystem_ds.cpp
@@ -16,7 +16,8 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/backends/platform/ds/arm9/source/osystem_ds.h b/backends/platform/ds/arm9/source/osystem_ds.h
index 4550e22b2c..f4dbac66f7 100644
--- a/backends/platform/ds/arm9/source/osystem_ds.h
+++ b/backends/platform/ds/arm9/source/osystem_ds.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/portdefs.h b/backends/platform/ds/arm9/source/portdefs.h
index e40849a513..0a20c459ab 100644
--- a/backends/platform/ds/arm9/source/portdefs.h
+++ b/backends/platform/ds/arm9/source/portdefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/scummhelp.cpp b/backends/platform/ds/arm9/source/scummhelp.cpp
index a3fdaacfaa..a0fb9bd0ab 100644
--- a/backends/platform/ds/arm9/source/scummhelp.cpp
+++ b/backends/platform/ds/arm9/source/scummhelp.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/scummhelp.h b/backends/platform/ds/arm9/source/scummhelp.h
index 41fc8f9c91..4e8d709c4f 100644
--- a/backends/platform/ds/arm9/source/scummhelp.h
+++ b/backends/platform/ds/arm9/source/scummhelp.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/touchkeyboard.cpp b/backends/platform/ds/arm9/source/touchkeyboard.cpp
index 77da9cc22a..30c46dbf06 100644
--- a/backends/platform/ds/arm9/source/touchkeyboard.cpp
+++ b/backends/platform/ds/arm9/source/touchkeyboard.cpp
@@ -16,9 +16,10 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
+
#include <nds.h>
#include "NDS/scummvm_ipc.h"
#include "touchkeyboard.h"
diff --git a/backends/platform/ds/arm9/source/touchkeyboard.h b/backends/platform/ds/arm9/source/touchkeyboard.h
index dc20601023..f64d531b82 100644
--- a/backends/platform/ds/arm9/source/touchkeyboard.h
+++ b/backends/platform/ds/arm9/source/touchkeyboard.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/wordcompletion.cpp b/backends/platform/ds/arm9/source/wordcompletion.cpp
index 51f93df7ff..36fa31247c 100644
--- a/backends/platform/ds/arm9/source/wordcompletion.cpp
+++ b/backends/platform/ds/arm9/source/wordcompletion.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/wordcompletion.h b/backends/platform/ds/arm9/source/wordcompletion.h
index c355d29293..d6e7224186 100644
--- a/backends/platform/ds/arm9/source/wordcompletion.h
+++ b/backends/platform/ds/arm9/source/wordcompletion.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/zipreader.cpp b/backends/platform/ds/arm9/source/zipreader.cpp
index 49552a86b2..0de2b0c981 100644
--- a/backends/platform/ds/arm9/source/zipreader.cpp
+++ b/backends/platform/ds/arm9/source/zipreader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/arm9/source/zipreader.h b/backends/platform/ds/arm9/source/zipreader.h
index 70f000eb4b..0078919d5f 100644
--- a/backends/platform/ds/arm9/source/zipreader.h
+++ b/backends/platform/ds/arm9/source/zipreader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ds/commoninclude/NDS/scummvm_ipc.h b/backends/platform/ds/commoninclude/NDS/scummvm_ipc.h
index 360b7b03dc..540348ca0b 100644
--- a/backends/platform/ds/commoninclude/NDS/scummvm_ipc.h
+++ b/backends/platform/ds/commoninclude/NDS/scummvm_ipc.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMMVM_IPC_INCLUDE
diff --git a/backends/platform/gph/gph-backend.cpp b/backends/platform/gph/gph-backend.cpp
index e51d7d0781..d033191d54 100644
--- a/backends/platform/gph/gph-backend.cpp
+++ b/backends/platform/gph/gph-backend.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/gph/gph-hw.cpp b/backends/platform/gph/gph-hw.cpp
index cde50dc6b4..7b004f1739 100644
--- a/backends/platform/gph/gph-hw.cpp
+++ b/backends/platform/gph/gph-hw.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/gph/gph-hw.h b/backends/platform/gph/gph-hw.h
index f9584ca37e..c6d0094cf1 100644
--- a/backends/platform/gph/gph-hw.h
+++ b/backends/platform/gph/gph-hw.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/gph/gph-main.cpp b/backends/platform/gph/gph-main.cpp
index 876de0f358..5fce37179e 100644
--- a/backends/platform/gph/gph-main.cpp
+++ b/backends/platform/gph/gph-main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/gph/gph.h b/backends/platform/gph/gph.h
index 90a798154f..d7004f1582 100644
--- a/backends/platform/gph/gph.h
+++ b/backends/platform/gph/gph.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/iphone_common.h b/backends/platform/iphone/iphone_common.h
index 9c45a240cb..59dca84b85 100644
--- a/backends/platform/iphone/iphone_common.h
+++ b/backends/platform/iphone/iphone_common.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/iphone_keyboard.h b/backends/platform/iphone/iphone_keyboard.h
index 2d1238c92f..d54df9ac96 100644
--- a/backends/platform/iphone/iphone_keyboard.h
+++ b/backends/platform/iphone/iphone_keyboard.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/iphone_keyboard.mm b/backends/platform/iphone/iphone_keyboard.mm
index b00930ab31..3f491d4b02 100644
--- a/backends/platform/iphone/iphone_keyboard.mm
+++ b/backends/platform/iphone/iphone_keyboard.mm
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/iphone_main.mm b/backends/platform/iphone/iphone_main.mm
index e76ffe866e..3707f10a29 100644
--- a/backends/platform/iphone/iphone_main.mm
+++ b/backends/platform/iphone/iphone_main.mm
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/iphone_video.h b/backends/platform/iphone/iphone_video.h
index 6b8c25ebcf..9b26ca9c5a 100644
--- a/backends/platform/iphone/iphone_video.h
+++ b/backends/platform/iphone/iphone_video.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/iphone_video.mm b/backends/platform/iphone/iphone_video.mm
index f2c1527658..3178b38255 100644
--- a/backends/platform/iphone/iphone_video.mm
+++ b/backends/platform/iphone/iphone_video.mm
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/osys_events.cpp b/backends/platform/iphone/osys_events.cpp
index 9cfca0836e..95ca25a2d2 100644
--- a/backends/platform/iphone/osys_events.cpp
+++ b/backends/platform/iphone/osys_events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/osys_main.cpp b/backends/platform/iphone/osys_main.cpp
index a814495b80..0ce21b44c1 100644
--- a/backends/platform/iphone/osys_main.cpp
+++ b/backends/platform/iphone/osys_main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/osys_main.h b/backends/platform/iphone/osys_main.h
index 811a8ddb2e..0159eee1be 100644
--- a/backends/platform/iphone/osys_main.h
+++ b/backends/platform/iphone/osys_main.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/osys_sound.cpp b/backends/platform/iphone/osys_sound.cpp
index 405543e380..bfee06c6f2 100644
--- a/backends/platform/iphone/osys_sound.cpp
+++ b/backends/platform/iphone/osys_sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/iphone/osys_video.mm b/backends/platform/iphone/osys_video.mm
index ce7f94f5bd..c76f432dda 100644
--- a/backends/platform/iphone/osys_video.mm
+++ b/backends/platform/iphone/osys_video.mm
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/linuxmoto/hardwarekeys.cpp b/backends/platform/linuxmoto/hardwarekeys.cpp
index e1a5757430..70e55c86c0 100644
--- a/backends/platform/linuxmoto/hardwarekeys.cpp
+++ b/backends/platform/linuxmoto/hardwarekeys.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/linuxmoto/linuxmoto-main.cpp b/backends/platform/linuxmoto/linuxmoto-main.cpp
index 835ccb03ef..507be9fa95 100644
--- a/backends/platform/linuxmoto/linuxmoto-main.cpp
+++ b/backends/platform/linuxmoto/linuxmoto-main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/linuxmoto/linuxmoto-sdl.cpp b/backends/platform/linuxmoto/linuxmoto-sdl.cpp
index 844bd19a83..a0310079de 100644
--- a/backends/platform/linuxmoto/linuxmoto-sdl.cpp
+++ b/backends/platform/linuxmoto/linuxmoto-sdl.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/linuxmoto/linuxmoto-sdl.h b/backends/platform/linuxmoto/linuxmoto-sdl.h
index 27f4e744bc..b0bf7b4df7 100644
--- a/backends/platform/linuxmoto/linuxmoto-sdl.h
+++ b/backends/platform/linuxmoto/linuxmoto-sdl.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/maemo/maemo-common.h b/backends/platform/maemo/maemo-common.h
index 0442b9c0ae..6d3c64402a 100644
--- a/backends/platform/maemo/maemo-common.h
+++ b/backends/platform/maemo/maemo-common.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/maemo/maemo.cpp b/backends/platform/maemo/maemo.cpp
index 6bd229177b..e81a208f7b 100644
--- a/backends/platform/maemo/maemo.cpp
+++ b/backends/platform/maemo/maemo.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/maemo/maemo.h b/backends/platform/maemo/maemo.h
index 43bc262ade..532a2de08c 100644
--- a/backends/platform/maemo/maemo.h
+++ b/backends/platform/maemo/maemo.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/maemo/main.cpp b/backends/platform/maemo/main.cpp
index 7e8a316eb5..4735ae30ed 100644
--- a/backends/platform/maemo/main.cpp
+++ b/backends/platform/maemo/main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/framfs_save_manager.cpp b/backends/platform/n64/framfs_save_manager.cpp
index 78f5333f2e..de645223e9 100644
--- a/backends/platform/n64/framfs_save_manager.cpp
+++ b/backends/platform/n64/framfs_save_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/framfs_save_manager.h b/backends/platform/n64/framfs_save_manager.h
index 0a88c8666b..a066854aab 100644
--- a/backends/platform/n64/framfs_save_manager.h
+++ b/backends/platform/n64/framfs_save_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/nintendo64.cpp b/backends/platform/n64/nintendo64.cpp
index bc416157e6..a3e8c016f4 100644
--- a/backends/platform/n64/nintendo64.cpp
+++ b/backends/platform/n64/nintendo64.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/osys_n64.h b/backends/platform/n64/osys_n64.h
index 10138b230a..ad49c2981f 100644
--- a/backends/platform/n64/osys_n64.h
+++ b/backends/platform/n64/osys_n64.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/osys_n64_base.cpp b/backends/platform/n64/osys_n64_base.cpp
index 36e5085764..16eeae5b7e 100644
--- a/backends/platform/n64/osys_n64_base.cpp
+++ b/backends/platform/n64/osys_n64_base.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/osys_n64_events.cpp b/backends/platform/n64/osys_n64_events.cpp
index c83eb194ac..2aa228cab0 100644
--- a/backends/platform/n64/osys_n64_events.cpp
+++ b/backends/platform/n64/osys_n64_events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/osys_n64_utilities.cpp b/backends/platform/n64/osys_n64_utilities.cpp
index f007a1bd25..b3b6d50667 100644
--- a/backends/platform/n64/osys_n64_utilities.cpp
+++ b/backends/platform/n64/osys_n64_utilities.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/pakfs_save_manager.cpp b/backends/platform/n64/pakfs_save_manager.cpp
index bf2fe8b1bc..5a83dab9d8 100644
--- a/backends/platform/n64/pakfs_save_manager.cpp
+++ b/backends/platform/n64/pakfs_save_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/pakfs_save_manager.h b/backends/platform/n64/pakfs_save_manager.h
index 6e67fb0f5f..ec66c80b73 100644
--- a/backends/platform/n64/pakfs_save_manager.h
+++ b/backends/platform/n64/pakfs_save_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/n64/portdefs.h b/backends/platform/n64/portdefs.h
index 10f5ed6488..63ec989a8d 100644
--- a/backends/platform/n64/portdefs.h
+++ b/backends/platform/n64/portdefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/null/null.cpp b/backends/platform/null/null.cpp
index 29bf9acacd..a5eea06f7a 100644
--- a/backends/platform/null/null.cpp
+++ b/backends/platform/null/null.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/openpandora/op-backend.cpp b/backends/platform/openpandora/op-backend.cpp
index 60c3cc7191..abe288f5d7 100644
--- a/backends/platform/openpandora/op-backend.cpp
+++ b/backends/platform/openpandora/op-backend.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/openpandora/op-main.cpp b/backends/platform/openpandora/op-main.cpp
index ebe018f570..99026b89f6 100644
--- a/backends/platform/openpandora/op-main.cpp
+++ b/backends/platform/openpandora/op-main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/openpandora/op-options.cpp b/backends/platform/openpandora/op-options.cpp
index 005a76b76c..d2e7860962 100644
--- a/backends/platform/openpandora/op-options.cpp
+++ b/backends/platform/openpandora/op-options.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/openpandora/op-options.h b/backends/platform/openpandora/op-options.h
index 919d217f4b..8eae420af2 100644
--- a/backends/platform/openpandora/op-options.h
+++ b/backends/platform/openpandora/op-options.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/openpandora/op-sdl.h b/backends/platform/openpandora/op-sdl.h
index 1eddad5c4a..dd239e58f8 100644
--- a/backends/platform/openpandora/op-sdl.h
+++ b/backends/platform/openpandora/op-sdl.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/DmaPipe.cpp b/backends/platform/ps2/DmaPipe.cpp
index f3622ea2e5..a4bcf6299e 100644
--- a/backends/platform/ps2/DmaPipe.cpp
+++ b/backends/platform/ps2/DmaPipe.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/DmaPipe.h b/backends/platform/ps2/DmaPipe.h
index c99da1c395..ad5993923e 100644
--- a/backends/platform/ps2/DmaPipe.h
+++ b/backends/platform/ps2/DmaPipe.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/Gs2dScreen.cpp b/backends/platform/ps2/Gs2dScreen.cpp
index 8015eab08f..a4ec23329a 100644
--- a/backends/platform/ps2/Gs2dScreen.cpp
+++ b/backends/platform/ps2/Gs2dScreen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/Gs2dScreen.h b/backends/platform/ps2/Gs2dScreen.h
index 258ced627e..ea2b1e5f78 100644
--- a/backends/platform/ps2/Gs2dScreen.h
+++ b/backends/platform/ps2/Gs2dScreen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/GsDefs.h b/backends/platform/ps2/GsDefs.h
index e5174d3ef7..9adf6acfcc 100644
--- a/backends/platform/ps2/GsDefs.h
+++ b/backends/platform/ps2/GsDefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/asyncfio.cpp b/backends/platform/ps2/asyncfio.cpp
index 0197ce33f8..6f15dcc628 100644
--- a/backends/platform/ps2/asyncfio.cpp
+++ b/backends/platform/ps2/asyncfio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/asyncfio.h b/backends/platform/ps2/asyncfio.h
index fbc0005373..6f84742da0 100644
--- a/backends/platform/ps2/asyncfio.h
+++ b/backends/platform/ps2/asyncfio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/eecodyvdfs.h b/backends/platform/ps2/eecodyvdfs.h
index fc959e32d6..f439c42125 100644
--- a/backends/platform/ps2/eecodyvdfs.h
+++ b/backends/platform/ps2/eecodyvdfs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/fileio.cpp b/backends/platform/ps2/fileio.cpp
index b204d3f8bb..205a688438 100644
--- a/backends/platform/ps2/fileio.cpp
+++ b/backends/platform/ps2/fileio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/fileio.h b/backends/platform/ps2/fileio.h
index 57c4a263d2..16eb7f212a 100644
--- a/backends/platform/ps2/fileio.h
+++ b/backends/platform/ps2/fileio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/icon.cpp b/backends/platform/ps2/icon.cpp
index 22c546231c..9319d9f4d9 100644
--- a/backends/platform/ps2/icon.cpp
+++ b/backends/platform/ps2/icon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/icon.h b/backends/platform/ps2/icon.h
index 3ad19910d3..9413b8466c 100644
--- a/backends/platform/ps2/icon.h
+++ b/backends/platform/ps2/icon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/iop/CoDyVDfs/common/codyvdirx.h b/backends/platform/ps2/iop/CoDyVDfs/common/codyvdirx.h
index 59b4975702..6ac5a0bb65 100644
--- a/backends/platform/ps2/iop/CoDyVDfs/common/codyvdirx.h
+++ b/backends/platform/ps2/iop/CoDyVDfs/common/codyvdirx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/iop/CoDyVDfs/iop/cdtypes.h b/backends/platform/ps2/iop/CoDyVDfs/iop/cdtypes.h
index 66c583794f..d9bd5287c6 100644
--- a/backends/platform/ps2/iop/CoDyVDfs/iop/cdtypes.h
+++ b/backends/platform/ps2/iop/CoDyVDfs/iop/cdtypes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/iop/CoDyVDfs/iop/codyvdfs.h b/backends/platform/ps2/iop/CoDyVDfs/iop/codyvdfs.h
index 93124f9037..cc903ea841 100644
--- a/backends/platform/ps2/iop/CoDyVDfs/iop/codyvdfs.h
+++ b/backends/platform/ps2/iop/CoDyVDfs/iop/codyvdfs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/iop/CoDyVDfs/iop/fiofs.h b/backends/platform/ps2/iop/CoDyVDfs/iop/fiofs.h
index db942b0b7e..058594a126 100644
--- a/backends/platform/ps2/iop/CoDyVDfs/iop/fiofs.h
+++ b/backends/platform/ps2/iop/CoDyVDfs/iop/fiofs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/iop/CoDyVDfs/iop/irx_imports.h b/backends/platform/ps2/iop/CoDyVDfs/iop/irx_imports.h
index 69bbc012f8..393a7ee9a5 100644
--- a/backends/platform/ps2/iop/CoDyVDfs/iop/irx_imports.h
+++ b/backends/platform/ps2/iop/CoDyVDfs/iop/irx_imports.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/iop/rpckbd/src/irx_imports.h b/backends/platform/ps2/iop/rpckbd/src/irx_imports.h
index f7d0656bda..193db4f02a 100644
--- a/backends/platform/ps2/iop/rpckbd/src/irx_imports.h
+++ b/backends/platform/ps2/iop/rpckbd/src/irx_imports.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/irxboot.cpp b/backends/platform/ps2/irxboot.cpp
index dcdf404fbe..0e05047c6e 100644
--- a/backends/platform/ps2/irxboot.cpp
+++ b/backends/platform/ps2/irxboot.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/irxboot.h b/backends/platform/ps2/irxboot.h
index f8b451f6d2..487d335553 100644
--- a/backends/platform/ps2/irxboot.h
+++ b/backends/platform/ps2/irxboot.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2debug.cpp b/backends/platform/ps2/ps2debug.cpp
index 3e689f53e1..84c3649faf 100644
--- a/backends/platform/ps2/ps2debug.cpp
+++ b/backends/platform/ps2/ps2debug.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2debug.h b/backends/platform/ps2/ps2debug.h
index 1d29274d91..45db850ebf 100644
--- a/backends/platform/ps2/ps2debug.h
+++ b/backends/platform/ps2/ps2debug.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2input.cpp b/backends/platform/ps2/ps2input.cpp
index e840bb2f19..636176e06c 100644
--- a/backends/platform/ps2/ps2input.cpp
+++ b/backends/platform/ps2/ps2input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2input.h b/backends/platform/ps2/ps2input.h
index 5014feba82..af413d262c 100644
--- a/backends/platform/ps2/ps2input.h
+++ b/backends/platform/ps2/ps2input.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2mutex.cpp b/backends/platform/ps2/ps2mutex.cpp
index ae63fe5724..440a7e2cce 100644
--- a/backends/platform/ps2/ps2mutex.cpp
+++ b/backends/platform/ps2/ps2mutex.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2pad.cpp b/backends/platform/ps2/ps2pad.cpp
index 65f3c8ce4d..d990690331 100644
--- a/backends/platform/ps2/ps2pad.cpp
+++ b/backends/platform/ps2/ps2pad.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2pad.h b/backends/platform/ps2/ps2pad.h
index aebb3c6339..0457cd46bb 100644
--- a/backends/platform/ps2/ps2pad.h
+++ b/backends/platform/ps2/ps2pad.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2temp.h b/backends/platform/ps2/ps2temp.h
index afffc6de2b..acfd3c7800 100644
--- a/backends/platform/ps2/ps2temp.h
+++ b/backends/platform/ps2/ps2temp.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/ps2time.cpp b/backends/platform/ps2/ps2time.cpp
index 3c9e4fb995..e072ce9483 100644
--- a/backends/platform/ps2/ps2time.cpp
+++ b/backends/platform/ps2/ps2time.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/rpckbd.h b/backends/platform/ps2/rpckbd.h
index bffd8e5be5..22cbbb4d21 100644
--- a/backends/platform/ps2/rpckbd.h
+++ b/backends/platform/ps2/rpckbd.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/savefilemgr.cpp b/backends/platform/ps2/savefilemgr.cpp
index e1bb7d178d..4fd2b1c72b 100644
--- a/backends/platform/ps2/savefilemgr.cpp
+++ b/backends/platform/ps2/savefilemgr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/savefilemgr.h b/backends/platform/ps2/savefilemgr.h
index 163706eace..547f16fa77 100644
--- a/backends/platform/ps2/savefilemgr.h
+++ b/backends/platform/ps2/savefilemgr.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/sysdefs.h b/backends/platform/ps2/sysdefs.h
index a4ada47015..c886d70eef 100644
--- a/backends/platform/ps2/sysdefs.h
+++ b/backends/platform/ps2/sysdefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/systemps2.cpp b/backends/platform/ps2/systemps2.cpp
index cbb1c47191..1aa74b7d9b 100644
--- a/backends/platform/ps2/systemps2.cpp
+++ b/backends/platform/ps2/systemps2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/ps2/systemps2.h b/backends/platform/ps2/systemps2.h
index 2307014908..45b7dfae36 100644
--- a/backends/platform/ps2/systemps2.h
+++ b/backends/platform/ps2/systemps2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/audio.cpp b/backends/platform/psp/audio.cpp
index dcbf0b2239..53423b6bbb 100644
--- a/backends/platform/psp/audio.cpp
+++ b/backends/platform/psp/audio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/audio.h b/backends/platform/psp/audio.h
index 34ded5c638..04f8954840 100644
--- a/backends/platform/psp/audio.h
+++ b/backends/platform/psp/audio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/cursor.cpp b/backends/platform/psp/cursor.cpp
index b295507de1..0760bd1354 100644
--- a/backends/platform/psp/cursor.cpp
+++ b/backends/platform/psp/cursor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/cursor.h b/backends/platform/psp/cursor.h
index f79968243b..85a6cbcc34 100644
--- a/backends/platform/psp/cursor.h
+++ b/backends/platform/psp/cursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/default_display_client.cpp b/backends/platform/psp/default_display_client.cpp
index 6d6eb641f7..f2d8a7c03c 100644
--- a/backends/platform/psp/default_display_client.cpp
+++ b/backends/platform/psp/default_display_client.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/default_display_client.h b/backends/platform/psp/default_display_client.h
index 95c52e2352..d46b7f1a8a 100644
--- a/backends/platform/psp/default_display_client.h
+++ b/backends/platform/psp/default_display_client.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/display_client.cpp b/backends/platform/psp/display_client.cpp
index bc29166895..b238631e62 100644
--- a/backends/platform/psp/display_client.cpp
+++ b/backends/platform/psp/display_client.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/display_client.h b/backends/platform/psp/display_client.h
index e384bfb82b..5e81947e20 100644
--- a/backends/platform/psp/display_client.h
+++ b/backends/platform/psp/display_client.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/display_manager.cpp b/backends/platform/psp/display_manager.cpp
index c2ff84c7f5..2e995c809e 100644
--- a/backends/platform/psp/display_manager.cpp
+++ b/backends/platform/psp/display_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/display_manager.h b/backends/platform/psp/display_manager.h
index 38c43d60a3..b1b748a68c 100644
--- a/backends/platform/psp/display_manager.h
+++ b/backends/platform/psp/display_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/dummy.cpp b/backends/platform/psp/dummy.cpp
index 998ecf1488..240a1e25b5 100644
--- a/backends/platform/psp/dummy.cpp
+++ b/backends/platform/psp/dummy.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/image_viewer.cpp b/backends/platform/psp/image_viewer.cpp
index 98205ddee9..8a1a256469 100644
--- a/backends/platform/psp/image_viewer.cpp
+++ b/backends/platform/psp/image_viewer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/image_viewer.h b/backends/platform/psp/image_viewer.h
index 91a70b85cc..66b640b6f3 100644
--- a/backends/platform/psp/image_viewer.h
+++ b/backends/platform/psp/image_viewer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/input.cpp b/backends/platform/psp/input.cpp
index 5e20fb1e43..4d7577eb94 100644
--- a/backends/platform/psp/input.cpp
+++ b/backends/platform/psp/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/input.h b/backends/platform/psp/input.h
index ef2e1b84a4..05b575e0b0 100644
--- a/backends/platform/psp/input.h
+++ b/backends/platform/psp/input.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/memory.cpp b/backends/platform/psp/memory.cpp
index 5419d60eb3..72a526c0ff 100644
--- a/backends/platform/psp/memory.cpp
+++ b/backends/platform/psp/memory.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/memory.h b/backends/platform/psp/memory.h
index 5b728460fc..d7c5420d64 100644
--- a/backends/platform/psp/memory.h
+++ b/backends/platform/psp/memory.h
@@ -9,12 +9,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/mp3.cpp b/backends/platform/psp/mp3.cpp
index 3dbf31112a..6db2a73a4b 100644
--- a/backends/platform/psp/mp3.cpp
+++ b/backends/platform/psp/mp3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/mp3.h b/backends/platform/psp/mp3.h
index f7bfdda254..86dfc4c37d 100644
--- a/backends/platform/psp/mp3.h
+++ b/backends/platform/psp/mp3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/osys_psp.cpp b/backends/platform/psp/osys_psp.cpp
index 8559066e53..67cb72d9d4 100644
--- a/backends/platform/psp/osys_psp.cpp
+++ b/backends/platform/psp/osys_psp.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/osys_psp.h b/backends/platform/psp/osys_psp.h
index f4591e476d..6f9238b84e 100644
--- a/backends/platform/psp/osys_psp.h
+++ b/backends/platform/psp/osys_psp.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/png_loader.cpp b/backends/platform/psp/png_loader.cpp
index 4de13d1e73..e54541b75d 100644
--- a/backends/platform/psp/png_loader.cpp
+++ b/backends/platform/psp/png_loader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/png_loader.h b/backends/platform/psp/png_loader.h
index 48a3220d78..b84bef4efe 100644
--- a/backends/platform/psp/png_loader.h
+++ b/backends/platform/psp/png_loader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/portdefs.h b/backends/platform/psp/portdefs.h
index 620a27a601..3e7b559666 100644
--- a/backends/platform/psp/portdefs.h
+++ b/backends/platform/psp/portdefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/powerman.cpp b/backends/platform/psp/powerman.cpp
index b72d05809d..3cd663e3c7 100644
--- a/backends/platform/psp/powerman.cpp
+++ b/backends/platform/psp/powerman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/powerman.h b/backends/platform/psp/powerman.h
index e62b1ada8e..77cfb26720 100644
--- a/backends/platform/psp/powerman.h
+++ b/backends/platform/psp/powerman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/psp_main.cpp b/backends/platform/psp/psp_main.cpp
index a83a5bae71..8901f4ecd3 100644
--- a/backends/platform/psp/psp_main.cpp
+++ b/backends/platform/psp/psp_main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/pspkeyboard.cpp b/backends/platform/psp/pspkeyboard.cpp
index 66efe9145d..7b5637e52f 100644
--- a/backends/platform/psp/pspkeyboard.cpp
+++ b/backends/platform/psp/pspkeyboard.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/pspkeyboard.h b/backends/platform/psp/pspkeyboard.h
index bd270da26f..ece769e0ce 100644
--- a/backends/platform/psp/pspkeyboard.h
+++ b/backends/platform/psp/pspkeyboard.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/psppixelformat.cpp b/backends/platform/psp/psppixelformat.cpp
index e1649791a1..2d7d524b45 100644
--- a/backends/platform/psp/psppixelformat.cpp
+++ b/backends/platform/psp/psppixelformat.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/psppixelformat.h b/backends/platform/psp/psppixelformat.h
index ca85e76211..ede5a97d6f 100644
--- a/backends/platform/psp/psppixelformat.h
+++ b/backends/platform/psp/psppixelformat.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/rtc.cpp b/backends/platform/psp/rtc.cpp
index 4f15e45535..d01bd8f83a 100644
--- a/backends/platform/psp/rtc.cpp
+++ b/backends/platform/psp/rtc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/rtc.h b/backends/platform/psp/rtc.h
index d2689681dd..58d70f4ab2 100644
--- a/backends/platform/psp/rtc.h
+++ b/backends/platform/psp/rtc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/tests.cpp b/backends/platform/psp/tests.cpp
index 5c5ebb7a80..92a18e58d0 100644
--- a/backends/platform/psp/tests.cpp
+++ b/backends/platform/psp/tests.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/tests.h b/backends/platform/psp/tests.h
index 3779cb6bb2..718287b9dd 100644
--- a/backends/platform/psp/tests.h
+++ b/backends/platform/psp/tests.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/thread.cpp b/backends/platform/psp/thread.cpp
index 57370f7685..669a682c21 100644
--- a/backends/platform/psp/thread.cpp
+++ b/backends/platform/psp/thread.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/thread.h b/backends/platform/psp/thread.h
index ca94b8c82c..a0d53e8638 100644
--- a/backends/platform/psp/thread.h
+++ b/backends/platform/psp/thread.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/trace.cpp b/backends/platform/psp/trace.cpp
index 008b508b7e..50459dcea5 100644
--- a/backends/platform/psp/trace.cpp
+++ b/backends/platform/psp/trace.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/psp/trace.h b/backends/platform/psp/trace.h
index e27d06d8d3..43ccaea52a 100644
--- a/backends/platform/psp/trace.h
+++ b/backends/platform/psp/trace.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/samsungtv/main.cpp b/backends/platform/samsungtv/main.cpp
index 8274bb00a2..a390bd0f0b 100644
--- a/backends/platform/samsungtv/main.cpp
+++ b/backends/platform/samsungtv/main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/samsungtv/samsungtv.cpp b/backends/platform/samsungtv/samsungtv.cpp
index 9718eed1fe..a1d15930f2 100644
--- a/backends/platform/samsungtv/samsungtv.cpp
+++ b/backends/platform/samsungtv/samsungtv.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/samsungtv/samsungtv.h b/backends/platform/samsungtv/samsungtv.h
index b7a78a96cd..fdd1015c8a 100644
--- a/backends/platform/samsungtv/samsungtv.h
+++ b/backends/platform/samsungtv/samsungtv.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/amigaos/amigaos-main.cpp b/backends/platform/sdl/amigaos/amigaos-main.cpp
index da83756a40..0743b3f9a0 100644
--- a/backends/platform/sdl/amigaos/amigaos-main.cpp
+++ b/backends/platform/sdl/amigaos/amigaos-main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/amigaos/amigaos.cpp b/backends/platform/sdl/amigaos/amigaos.cpp
index 94daacfd14..fdd26cd256 100644
--- a/backends/platform/sdl/amigaos/amigaos.cpp
+++ b/backends/platform/sdl/amigaos/amigaos.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/amigaos/amigaos.h b/backends/platform/sdl/amigaos/amigaos.h
index 391a0bfa9a..76cc656364 100644
--- a/backends/platform/sdl/amigaos/amigaos.h
+++ b/backends/platform/sdl/amigaos/amigaos.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/macosx/appmenu_osx.h b/backends/platform/sdl/macosx/appmenu_osx.h
index 005414b789..22088184fb 100644
--- a/backends/platform/sdl/macosx/appmenu_osx.h
+++ b/backends/platform/sdl/macosx/appmenu_osx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/macosx/appmenu_osx.mm b/backends/platform/sdl/macosx/appmenu_osx.mm
index 0d2a2ab7f2..d083fb8483 100644
--- a/backends/platform/sdl/macosx/appmenu_osx.mm
+++ b/backends/platform/sdl/macosx/appmenu_osx.mm
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/macosx/macosx-main.cpp b/backends/platform/sdl/macosx/macosx-main.cpp
index b89264f9e9..1b9fc1b82c 100644
--- a/backends/platform/sdl/macosx/macosx-main.cpp
+++ b/backends/platform/sdl/macosx/macosx-main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/macosx/macosx.cpp b/backends/platform/sdl/macosx/macosx.cpp
index 85342d62fd..924e33b6e3 100644
--- a/backends/platform/sdl/macosx/macosx.cpp
+++ b/backends/platform/sdl/macosx/macosx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,6 +31,7 @@
#include "backends/mixer/doublebuffersdl/doublebuffersdl-mixer.h"
#include "backends/platform/sdl/macosx/appmenu_osx.h"
#include "backends/updates/macosx/macosx-updates.h"
+#include "backends/taskbar/macosx/macosx-taskbar.h"
#include "common/archive.h"
#include "common/config-manager.h"
@@ -45,6 +46,16 @@ OSystem_MacOSX::OSystem_MacOSX()
OSystem_POSIX("Library/Preferences/ScummVM Preferences") {
}
+void OSystem_MacOSX::init() {
+#if defined(USE_TASKBAR)
+ // Initialize taskbar manager
+ _taskbarManager = new MacOSXTaskbarManager();
+#endif
+
+ // Invoke parent implementation of this method
+ OSystem_POSIX::init();
+}
+
void OSystem_MacOSX::initBackend() {
// Create the mixer manager
if (_mixer == 0) {
diff --git a/backends/platform/sdl/macosx/macosx.h b/backends/platform/sdl/macosx/macosx.h
index d9cb28b973..50cef60353 100644
--- a/backends/platform/sdl/macosx/macosx.h
+++ b/backends/platform/sdl/macosx/macosx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -35,6 +35,7 @@ public:
virtual Common::String getSystemLanguage() const;
+ virtual void init();
virtual void initBackend();
virtual void addSysArchivesToSearchSet(Common::SearchSet &s, int priority = 0);
virtual void setupIcon();
diff --git a/backends/platform/sdl/posix/posix-main.cpp b/backends/platform/sdl/posix/posix-main.cpp
index 5f0914e04f..d07db11b0c 100644
--- a/backends/platform/sdl/posix/posix-main.cpp
+++ b/backends/platform/sdl/posix/posix-main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/posix/posix.cpp b/backends/platform/sdl/posix/posix.cpp
index 1752153f29..a711c3a96b 100644
--- a/backends/platform/sdl/posix/posix.cpp
+++ b/backends/platform/sdl/posix/posix.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/posix/posix.h b/backends/platform/sdl/posix/posix.h
index 59909a958f..01a01528cd 100644
--- a/backends/platform/sdl/posix/posix.h
+++ b/backends/platform/sdl/posix/posix.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/ps3/ps3-main.cpp b/backends/platform/sdl/ps3/ps3-main.cpp
index ba548a3749..92c4a02865 100644
--- a/backends/platform/sdl/ps3/ps3-main.cpp
+++ b/backends/platform/sdl/ps3/ps3-main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/ps3/ps3.cpp b/backends/platform/sdl/ps3/ps3.cpp
index 33586ce693..f111379794 100644
--- a/backends/platform/sdl/ps3/ps3.cpp
+++ b/backends/platform/sdl/ps3/ps3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/ps3/ps3.h b/backends/platform/sdl/ps3/ps3.h
index daed7599a9..d812a13548 100644
--- a/backends/platform/sdl/ps3/ps3.h
+++ b/backends/platform/sdl/ps3/ps3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/sdl-sys.h b/backends/platform/sdl/sdl-sys.h
index eccf73815d..eec3741ed6 100644
--- a/backends/platform/sdl/sdl-sys.h
+++ b/backends/platform/sdl/sdl-sys.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/sdl.cpp b/backends/platform/sdl/sdl.cpp
index 913ae51f69..41610dc0c7 100644
--- a/backends/platform/sdl/sdl.cpp
+++ b/backends/platform/sdl/sdl.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -158,6 +158,14 @@ void OSystem_SDL::initBackend() {
// Check if backend has not been initialized
assert(!_inited);
+ const int maxNameLen = 20;
+ char sdlDriverName[maxNameLen];
+ sdlDriverName[0] = '\0';
+ SDL_VideoDriverName(sdlDriverName, maxNameLen);
+ // Using printf rather than debug() here as debug()/logging
+ // is not active by this point.
+ debug(1, "Using SDL Video Driver \"%s\"", sdlDriverName);
+
// Create the default event source, in case a custom backend
// manager didn't provide one yet.
if (_eventSource == 0)
diff --git a/backends/platform/sdl/sdl.h b/backends/platform/sdl/sdl.h
index 814cdd7c1b..5dcc269e55 100644
--- a/backends/platform/sdl/sdl.h
+++ b/backends/platform/sdl/sdl.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/win32/win32-main.cpp b/backends/platform/sdl/win32/win32-main.cpp
index 2b3e18e9f0..e5b26c3ff0 100644
--- a/backends/platform/sdl/win32/win32-main.cpp
+++ b/backends/platform/sdl/win32/win32-main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/win32/win32.cpp b/backends/platform/sdl/win32/win32.cpp
index 453d566c7b..5f860ad32d 100644
--- a/backends/platform/sdl/win32/win32.cpp
+++ b/backends/platform/sdl/win32/win32.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/sdl/win32/win32.h b/backends/platform/sdl/win32/win32.h
index b56997a63b..d72d80bc26 100644
--- a/backends/platform/sdl/win32/win32.h
+++ b/backends/platform/sdl/win32/win32.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/symbian/src/ScummApp.cpp b/backends/platform/symbian/src/ScummApp.cpp
index b952177f9a..5256c81dcc 100644
--- a/backends/platform/symbian/src/ScummApp.cpp
+++ b/backends/platform/symbian/src/ScummApp.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "backends/platform/symbian/src/ScummApp.h"
diff --git a/backends/platform/symbian/src/ScummApp.h b/backends/platform/symbian/src/ScummApp.h
index 00d03e6d7b..db643f61b6 100644
--- a/backends/platform/symbian/src/ScummApp.h
+++ b/backends/platform/symbian/src/ScummApp.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMMAPP_H
diff --git a/backends/platform/symbian/src/SymbianActions.cpp b/backends/platform/symbian/src/SymbianActions.cpp
index c47bd93772..0810b382d2 100644
--- a/backends/platform/symbian/src/SymbianActions.cpp
+++ b/backends/platform/symbian/src/SymbianActions.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/symbian/src/SymbianActions.h b/backends/platform/symbian/src/SymbianActions.h
index 2b65c6c950..fc68091c74 100644
--- a/backends/platform/symbian/src/SymbianActions.h
+++ b/backends/platform/symbian/src/SymbianActions.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/symbian/src/SymbianMain.cpp b/backends/platform/symbian/src/SymbianMain.cpp
index 8da2b239f4..d7ad26d769 100644
--- a/backends/platform/symbian/src/SymbianMain.cpp
+++ b/backends/platform/symbian/src/SymbianMain.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/symbian/src/SymbianOS.cpp b/backends/platform/symbian/src/SymbianOS.cpp
index ead85a933e..1fca7f5df5 100644
--- a/backends/platform/symbian/src/SymbianOS.cpp
+++ b/backends/platform/symbian/src/SymbianOS.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include <sdlapp.h> // for CSDLApp::GetExecutablePathCStr() @ Symbian::GetExecutablePath()
diff --git a/backends/platform/symbian/src/SymbianOS.h b/backends/platform/symbian/src/SymbianOS.h
index 74a102dc15..57a471f1a9 100644
--- a/backends/platform/symbian/src/SymbianOS.h
+++ b/backends/platform/symbian/src/SymbianOS.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef PLATFORM_SDL_SYMBIAN_H
diff --git a/backends/platform/symbian/src/portdefs.h b/backends/platform/symbian/src/portdefs.h
index f69a90e009..1fb941963b 100644
--- a/backends/platform/symbian/src/portdefs.h
+++ b/backends/platform/symbian/src/portdefs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SYMBIAN_PORTDEFS_H
diff --git a/backends/platform/tizen/application.cpp b/backends/platform/tizen/application.cpp
index a73efacf58..d7832ca1da 100644
--- a/backends/platform/tizen/application.cpp
+++ b/backends/platform/tizen/application.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/application.h b/backends/platform/tizen/application.h
index f18ccb175b..c46684eafb 100644
--- a/backends/platform/tizen/application.h
+++ b/backends/platform/tizen/application.h
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/audio.cpp b/backends/platform/tizen/audio.cpp
index f9ac80a583..b2e061baef 100644
--- a/backends/platform/tizen/audio.cpp
+++ b/backends/platform/tizen/audio.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/audio.h b/backends/platform/tizen/audio.h
index a304231578..de4724eb3c 100644
--- a/backends/platform/tizen/audio.h
+++ b/backends/platform/tizen/audio.h
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/form.cpp b/backends/platform/tizen/form.cpp
index 10d51cc610..3f7b918102 100644
--- a/backends/platform/tizen/form.cpp
+++ b/backends/platform/tizen/form.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/form.h b/backends/platform/tizen/form.h
index e419c14d24..3e34b8989e 100644
--- a/backends/platform/tizen/form.h
+++ b/backends/platform/tizen/form.h
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/fs.cpp b/backends/platform/tizen/fs.cpp
index 8145cd5638..c6cd8f0a71 100644
--- a/backends/platform/tizen/fs.cpp
+++ b/backends/platform/tizen/fs.cpp
@@ -11,12 +11,13 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "config.h"
diff --git a/backends/platform/tizen/fs.h b/backends/platform/tizen/fs.h
index 0356aaad33..8c1677fa7b 100644
--- a/backends/platform/tizen/fs.h
+++ b/backends/platform/tizen/fs.h
@@ -11,12 +11,13 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TIZEN_FILESYSTEM_H
diff --git a/backends/platform/tizen/graphics.cpp b/backends/platform/tizen/graphics.cpp
index 390796dc0e..9b23e3fe78 100644
--- a/backends/platform/tizen/graphics.cpp
+++ b/backends/platform/tizen/graphics.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
@@ -43,6 +43,7 @@ TizenGraphicsManager::~TizenGraphicsManager() {
logEntered();
if (_eglDisplay != EGL_NO_DISPLAY) {
+ notifyContextDestroy();
eglMakeCurrent(_eglDisplay, NULL, NULL, NULL);
if (_eglContext != EGL_NO_CONTEXT) {
eglDestroyContext(_eglDisplay, _eglContext);
@@ -58,7 +59,7 @@ result TizenGraphicsManager::Construct() {
// We default to RGB565 and RGBA5551 which is closest to the actual output
// mode we setup.
- notifyContextChange(Graphics::PixelFormat(2, 5, 6, 5, 0, 11, 5, 0, 0), Graphics::PixelFormat(2, 5, 5, 5, 1, 11, 6, 1, 0));
+ notifyContextCreate(Graphics::PixelFormat(2, 5, 6, 5, 0, 11, 5, 0, 0), Graphics::PixelFormat(2, 5, 5, 5, 1, 11, 6, 1, 0));
// Tell our size.
int x, y, width, height;
diff --git a/backends/platform/tizen/graphics.h b/backends/platform/tizen/graphics.h
index 29ba86a3c4..f1d4498650 100644
--- a/backends/platform/tizen/graphics.h
+++ b/backends/platform/tizen/graphics.h
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/main.cpp b/backends/platform/tizen/main.cpp
index b12cc3adc9..50baa5b977 100644
--- a/backends/platform/tizen/main.cpp
+++ b/backends/platform/tizen/main.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/missing.cpp b/backends/platform/tizen/missing.cpp
index 5ac55d0f6c..f24ba5655c 100644
--- a/backends/platform/tizen/missing.cpp
+++ b/backends/platform/tizen/missing.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/portdefs.h b/backends/platform/tizen/portdefs.h
index 050ce7d1e0..f5efe85f92 100644
--- a/backends/platform/tizen/portdefs.h
+++ b/backends/platform/tizen/portdefs.h
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/sscanf.cpp b/backends/platform/tizen/sscanf.cpp
index 75f009cc61..b52389c91c 100644
--- a/backends/platform/tizen/sscanf.cpp
+++ b/backends/platform/tizen/sscanf.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/platform/tizen/system.cpp b/backends/platform/tizen/system.cpp
index f7ebc46719..a235456670 100644
--- a/backends/platform/tizen/system.cpp
+++ b/backends/platform/tizen/system.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
@@ -266,8 +266,8 @@ result TizenSystem::initModules() {
return E_OUT_OF_MEMORY;
}
- _graphicsManager = (GraphicsManager *)new TizenGraphicsManager(_appForm);
- if (!_graphicsManager || graphicsManager->Construct() != E_SUCCESS) {
+ _graphicsManager = new TizenGraphicsManager(_appForm);
+ if (!_graphicsManager || getGraphics()->Construct() != E_SUCCESS) {
return E_OUT_OF_MEMORY;
}
diff --git a/backends/platform/tizen/system.h b/backends/platform/tizen/system.h
index b38940cc95..3f668baf34 100644
--- a/backends/platform/tizen/system.h
+++ b/backends/platform/tizen/system.h
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
@@ -73,7 +73,7 @@ public:
bool isClosing() { return _appForm->isClosing(); }
TizenGraphicsManager *getGraphics() {
- return (TizenGraphicsManager *)_graphicsManager;
+ return dynamic_cast<TizenGraphicsManager *>(_graphicsManager);
}
private:
diff --git a/backends/platform/webos/main.cpp b/backends/platform/webos/main.cpp
index 43c7ba18af..70b3fe1674 100644
--- a/backends/platform/webos/main.cpp
+++ b/backends/platform/webos/main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/webos/webos.cpp b/backends/platform/webos/webos.cpp
index fc18628235..da60b27713 100644
--- a/backends/platform/webos/webos.cpp
+++ b/backends/platform/webos/webos.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/webos/webos.h b/backends/platform/webos/webos.h
index dda56a70da..a2535ddc08 100644
--- a/backends/platform/webos/webos.h
+++ b/backends/platform/webos/webos.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wii/main.cpp b/backends/platform/wii/main.cpp
index ec6231522e..35d800a527 100644
--- a/backends/platform/wii/main.cpp
+++ b/backends/platform/wii/main.cpp
@@ -8,15 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir
diff --git a/backends/platform/wii/options.cpp b/backends/platform/wii/options.cpp
index ede81343ca..731e979ec0 100644
--- a/backends/platform/wii/options.cpp
+++ b/backends/platform/wii/options.cpp
@@ -16,7 +16,7 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
diff --git a/backends/platform/wii/options.h b/backends/platform/wii/options.h
index 9b500ef29f..1fa4acd50e 100644
--- a/backends/platform/wii/options.h
+++ b/backends/platform/wii/options.h
@@ -16,7 +16,7 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
diff --git a/backends/platform/wii/osystem.cpp b/backends/platform/wii/osystem.cpp
index 9d3a7473e3..ab2f2c6f0f 100644
--- a/backends/platform/wii/osystem.cpp
+++ b/backends/platform/wii/osystem.cpp
@@ -8,15 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_ALLOW_ALL
diff --git a/backends/platform/wii/osystem.h b/backends/platform/wii/osystem.h
index 287c70ad6b..f1591614bf 100644
--- a/backends/platform/wii/osystem.h
+++ b/backends/platform/wii/osystem.h
@@ -8,15 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef _WII_OSYSTEM_H_
diff --git a/backends/platform/wii/osystem_events.cpp b/backends/platform/wii/osystem_events.cpp
index aa63c8aa22..2da1d80917 100644
--- a/backends/platform/wii/osystem_events.cpp
+++ b/backends/platform/wii/osystem_events.cpp
@@ -8,15 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_EXCEPTION_printf
diff --git a/backends/platform/wii/osystem_gfx.cpp b/backends/platform/wii/osystem_gfx.cpp
index 92c890b0a9..bb91242f98 100644
--- a/backends/platform/wii/osystem_gfx.cpp
+++ b/backends/platform/wii/osystem_gfx.cpp
@@ -8,15 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_EXCEPTION_printf
@@ -716,8 +717,8 @@ void OSystem_Wii::setMouseCursor(const void *buf, uint w, uint h, int hotspotX,
u16 *d = (u16 *) tmp;
for (u16 y = 0; y < h; ++y) {
for (u16 x = 0; x < w; ++x) {
- if (*s++ != _mouseKeyColor)
- *d++ |= 7 << 12;
+ if (*s++ == _mouseKeyColor)
+ *d++ &= ~(7 << 12);
else
d++;
}
diff --git a/backends/platform/wii/osystem_sfx.cpp b/backends/platform/wii/osystem_sfx.cpp
index 2e658e47aa..70a440a600 100644
--- a/backends/platform/wii/osystem_sfx.cpp
+++ b/backends/platform/wii/osystem_sfx.cpp
@@ -8,15 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_EXCEPTION_printf
diff --git a/backends/platform/wince/CEActionsPocket.cpp b/backends/platform/wince/CEActionsPocket.cpp
index 493a5e688c..09286f2e9f 100644
--- a/backends/platform/wince/CEActionsPocket.cpp
+++ b/backends/platform/wince/CEActionsPocket.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEActionsPocket.h b/backends/platform/wince/CEActionsPocket.h
index e1f52b6b88..f2952c059a 100644
--- a/backends/platform/wince/CEActionsPocket.h
+++ b/backends/platform/wince/CEActionsPocket.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEActionsSmartphone.cpp b/backends/platform/wince/CEActionsSmartphone.cpp
index d2bc449dfc..95957707e3 100644
--- a/backends/platform/wince/CEActionsSmartphone.cpp
+++ b/backends/platform/wince/CEActionsSmartphone.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEActionsSmartphone.h b/backends/platform/wince/CEActionsSmartphone.h
index 3da46d3923..46529bbd99 100644
--- a/backends/platform/wince/CEActionsSmartphone.h
+++ b/backends/platform/wince/CEActionsSmartphone.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEDevice.cpp b/backends/platform/wince/CEDevice.cpp
index 640b1e9169..ffadfeb993 100644
--- a/backends/platform/wince/CEDevice.cpp
+++ b/backends/platform/wince/CEDevice.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEDevice.h b/backends/platform/wince/CEDevice.h
index b9f815ac71..2032b7fb27 100644
--- a/backends/platform/wince/CEDevice.h
+++ b/backends/platform/wince/CEDevice.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEException.cpp b/backends/platform/wince/CEException.cpp
index 4a03354112..46bb618e39 100644
--- a/backends/platform/wince/CEException.cpp
+++ b/backends/platform/wince/CEException.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEException.h b/backends/platform/wince/CEException.h
index 3d4616f282..8ce6bd7dc0 100644
--- a/backends/platform/wince/CEException.h
+++ b/backends/platform/wince/CEException.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CELauncherDialog.cpp b/backends/platform/wince/CELauncherDialog.cpp
index 3908294682..f7795dfdef 100644
--- a/backends/platform/wince/CELauncherDialog.cpp
+++ b/backends/platform/wince/CELauncherDialog.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CELauncherDialog.h b/backends/platform/wince/CELauncherDialog.h
index ac84cd3e21..9f69b8500f 100644
--- a/backends/platform/wince/CELauncherDialog.h
+++ b/backends/platform/wince/CELauncherDialog.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEScaler.cpp b/backends/platform/wince/CEScaler.cpp
index 66f7809a3a..321bdd92a9 100644
--- a/backends/platform/wince/CEScaler.cpp
+++ b/backends/platform/wince/CEScaler.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEScaler.h b/backends/platform/wince/CEScaler.h
index de001f7348..fc6540a33c 100644
--- a/backends/platform/wince/CEScaler.h
+++ b/backends/platform/wince/CEScaler.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/CEGUI.h b/backends/platform/wince/CEgui/CEGUI.h
index 8b2e3528e3..8b6db6b099 100644
--- a/backends/platform/wince/CEgui/CEGUI.h
+++ b/backends/platform/wince/CEgui/CEGUI.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/GUIElement.cpp b/backends/platform/wince/CEgui/GUIElement.cpp
index c8e68b87fd..e33e7f7f9d 100644
--- a/backends/platform/wince/CEgui/GUIElement.cpp
+++ b/backends/platform/wince/CEgui/GUIElement.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/GUIElement.h b/backends/platform/wince/CEgui/GUIElement.h
index 44c4b3f275..6695029877 100644
--- a/backends/platform/wince/CEgui/GUIElement.h
+++ b/backends/platform/wince/CEgui/GUIElement.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/ItemAction.cpp b/backends/platform/wince/CEgui/ItemAction.cpp
index 7d6316748b..89ca48efdc 100644
--- a/backends/platform/wince/CEgui/ItemAction.cpp
+++ b/backends/platform/wince/CEgui/ItemAction.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/ItemAction.h b/backends/platform/wince/CEgui/ItemAction.h
index 7b36eaf11a..8de0046d4c 100644
--- a/backends/platform/wince/CEgui/ItemAction.h
+++ b/backends/platform/wince/CEgui/ItemAction.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/ItemSwitch.cpp b/backends/platform/wince/CEgui/ItemSwitch.cpp
index 444826201c..7bb0a23a7b 100644
--- a/backends/platform/wince/CEgui/ItemSwitch.cpp
+++ b/backends/platform/wince/CEgui/ItemSwitch.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/ItemSwitch.h b/backends/platform/wince/CEgui/ItemSwitch.h
index 724d31363c..e54b4b1b99 100644
--- a/backends/platform/wince/CEgui/ItemSwitch.h
+++ b/backends/platform/wince/CEgui/ItemSwitch.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/Panel.cpp b/backends/platform/wince/CEgui/Panel.cpp
index 0853bae8f2..273d06a054 100644
--- a/backends/platform/wince/CEgui/Panel.cpp
+++ b/backends/platform/wince/CEgui/Panel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/Panel.h b/backends/platform/wince/CEgui/Panel.h
index 514ee5b8af..db38751073 100644
--- a/backends/platform/wince/CEgui/Panel.h
+++ b/backends/platform/wince/CEgui/Panel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/PanelItem.cpp b/backends/platform/wince/CEgui/PanelItem.cpp
index 2849e256fb..186b5161ef 100644
--- a/backends/platform/wince/CEgui/PanelItem.cpp
+++ b/backends/platform/wince/CEgui/PanelItem.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/PanelItem.h b/backends/platform/wince/CEgui/PanelItem.h
index 8305311ff2..a0a72c2525 100644
--- a/backends/platform/wince/CEgui/PanelItem.h
+++ b/backends/platform/wince/CEgui/PanelItem.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/PanelKeyboard.cpp b/backends/platform/wince/CEgui/PanelKeyboard.cpp
index cab02150c5..34ba8d6473 100644
--- a/backends/platform/wince/CEgui/PanelKeyboard.cpp
+++ b/backends/platform/wince/CEgui/PanelKeyboard.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/PanelKeyboard.h b/backends/platform/wince/CEgui/PanelKeyboard.h
index 69d6a89bd2..a0daca81e3 100644
--- a/backends/platform/wince/CEgui/PanelKeyboard.h
+++ b/backends/platform/wince/CEgui/PanelKeyboard.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/SDL_ImageResource.cpp b/backends/platform/wince/CEgui/SDL_ImageResource.cpp
index 507f9ad7fe..ec430fc848 100644
--- a/backends/platform/wince/CEgui/SDL_ImageResource.cpp
+++ b/backends/platform/wince/CEgui/SDL_ImageResource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/SDL_ImageResource.h b/backends/platform/wince/CEgui/SDL_ImageResource.h
index 08807a5c1f..4fd7932743 100644
--- a/backends/platform/wince/CEgui/SDL_ImageResource.h
+++ b/backends/platform/wince/CEgui/SDL_ImageResource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/Toolbar.cpp b/backends/platform/wince/CEgui/Toolbar.cpp
index 0e8e82f1f4..9e04a30210 100644
--- a/backends/platform/wince/CEgui/Toolbar.cpp
+++ b/backends/platform/wince/CEgui/Toolbar.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/Toolbar.h b/backends/platform/wince/CEgui/Toolbar.h
index c7e62bb3d9..d0ac2cdcb3 100644
--- a/backends/platform/wince/CEgui/Toolbar.h
+++ b/backends/platform/wince/CEgui/Toolbar.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/ToolbarHandler.cpp b/backends/platform/wince/CEgui/ToolbarHandler.cpp
index f3e42e11fa..534b338cdb 100644
--- a/backends/platform/wince/CEgui/ToolbarHandler.cpp
+++ b/backends/platform/wince/CEgui/ToolbarHandler.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEgui/ToolbarHandler.h b/backends/platform/wince/CEgui/ToolbarHandler.h
index 5709cf3f1a..36f4022bd8 100644
--- a/backends/platform/wince/CEgui/ToolbarHandler.h
+++ b/backends/platform/wince/CEgui/ToolbarHandler.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEkeys/CEKeys.h b/backends/platform/wince/CEkeys/CEKeys.h
index cf71b982f3..31f5ba839c 100644
--- a/backends/platform/wince/CEkeys/CEKeys.h
+++ b/backends/platform/wince/CEkeys/CEKeys.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEkeys/EventsBuffer.cpp b/backends/platform/wince/CEkeys/EventsBuffer.cpp
index c993798dc8..b4fdc0010d 100644
--- a/backends/platform/wince/CEkeys/EventsBuffer.cpp
+++ b/backends/platform/wince/CEkeys/EventsBuffer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/CEkeys/EventsBuffer.h b/backends/platform/wince/CEkeys/EventsBuffer.h
index 235a3e7afd..6c1b12cc24 100644
--- a/backends/platform/wince/CEkeys/EventsBuffer.h
+++ b/backends/platform/wince/CEkeys/EventsBuffer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/missing/missing.cpp b/backends/platform/wince/missing/missing.cpp
index ba35f15bb7..0355f35a69 100644
--- a/backends/platform/wince/missing/missing.cpp
+++ b/backends/platform/wince/missing/missing.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/portdefs.h b/backends/platform/wince/portdefs.h
index 289406c2a4..3304ee0893 100644
--- a/backends/platform/wince/portdefs.h
+++ b/backends/platform/wince/portdefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/stub.cpp b/backends/platform/wince/stub.cpp
index 9f42dc76aa..aba3fb973e 100644
--- a/backends/platform/wince/stub.cpp
+++ b/backends/platform/wince/stub.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/wince-sdl.cpp b/backends/platform/wince/wince-sdl.cpp
index 1c9c178460..96c9313c5d 100644
--- a/backends/platform/wince/wince-sdl.cpp
+++ b/backends/platform/wince/wince-sdl.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/platform/wince/wince-sdl.h b/backends/platform/wince/wince-sdl.h
index b4f323c9e2..2d5a02a23d 100644
--- a/backends/platform/wince/wince-sdl.h
+++ b/backends/platform/wince/wince-sdl.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/ds/ds-provider.cpp b/backends/plugins/ds/ds-provider.cpp
index 21ec157e5f..1c9744518e 100644
--- a/backends/plugins/ds/ds-provider.cpp
+++ b/backends/plugins/ds/ds-provider.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/ds/ds-provider.h b/backends/plugins/ds/ds-provider.h
index 1d806a03bd..4eae89383b 100644
--- a/backends/plugins/ds/ds-provider.h
+++ b/backends/plugins/ds/ds-provider.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/dynamic-plugin.h b/backends/plugins/dynamic-plugin.h
index d68321b2a9..5aca44b676 100644
--- a/backends/plugins/dynamic-plugin.h
+++ b/backends/plugins/dynamic-plugin.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/arm-loader.cpp b/backends/plugins/elf/arm-loader.cpp
index f8deac9c88..3aabf44452 100644
--- a/backends/plugins/elf/arm-loader.cpp
+++ b/backends/plugins/elf/arm-loader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/arm-loader.h b/backends/plugins/elf/arm-loader.h
index 598517d2ef..6f7ae2601d 100644
--- a/backends/plugins/elf/arm-loader.h
+++ b/backends/plugins/elf/arm-loader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/elf-loader.cpp b/backends/plugins/elf/elf-loader.cpp
index d60ddce57e..5198fa8088 100644
--- a/backends/plugins/elf/elf-loader.cpp
+++ b/backends/plugins/elf/elf-loader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/elf-loader.h b/backends/plugins/elf/elf-loader.h
index 58cc7714cf..17ca35482a 100644
--- a/backends/plugins/elf/elf-loader.h
+++ b/backends/plugins/elf/elf-loader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/elf-provider.cpp b/backends/plugins/elf/elf-provider.cpp
index f637596d8d..28536eee94 100644
--- a/backends/plugins/elf/elf-provider.cpp
+++ b/backends/plugins/elf/elf-provider.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/elf-provider.h b/backends/plugins/elf/elf-provider.h
index a966f371f6..1270949f42 100644
--- a/backends/plugins/elf/elf-provider.h
+++ b/backends/plugins/elf/elf-provider.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/elf32.h b/backends/plugins/elf/elf32.h
index 1ecc68a8f0..9f6f92fe95 100644
--- a/backends/plugins/elf/elf32.h
+++ b/backends/plugins/elf/elf32.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/memory-manager.cpp b/backends/plugins/elf/memory-manager.cpp
index 47b77a3ec2..5014718ae8 100644
--- a/backends/plugins/elf/memory-manager.cpp
+++ b/backends/plugins/elf/memory-manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/memory-manager.h b/backends/plugins/elf/memory-manager.h
index 032ecb2be5..12373556df 100644
--- a/backends/plugins/elf/memory-manager.h
+++ b/backends/plugins/elf/memory-manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/mips-loader.cpp b/backends/plugins/elf/mips-loader.cpp
index 6c0e688783..47ae00a8ea 100644
--- a/backends/plugins/elf/mips-loader.cpp
+++ b/backends/plugins/elf/mips-loader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/mips-loader.h b/backends/plugins/elf/mips-loader.h
index 1103e939ce..44b4468bb5 100644
--- a/backends/plugins/elf/mips-loader.h
+++ b/backends/plugins/elf/mips-loader.h
@@ -9,12 +9,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/ppc-loader.cpp b/backends/plugins/elf/ppc-loader.cpp
index 4c9290ad5e..dffd95993b 100644
--- a/backends/plugins/elf/ppc-loader.cpp
+++ b/backends/plugins/elf/ppc-loader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/ppc-loader.h b/backends/plugins/elf/ppc-loader.h
index 8614476a92..e99c57117c 100644
--- a/backends/plugins/elf/ppc-loader.h
+++ b/backends/plugins/elf/ppc-loader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/shorts-segment-manager.cpp b/backends/plugins/elf/shorts-segment-manager.cpp
index 993a538f6c..4fa03cc79c 100644
--- a/backends/plugins/elf/shorts-segment-manager.cpp
+++ b/backends/plugins/elf/shorts-segment-manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/shorts-segment-manager.h b/backends/plugins/elf/shorts-segment-manager.h
index 34e233a2f4..0e9268a769 100644
--- a/backends/plugins/elf/shorts-segment-manager.h
+++ b/backends/plugins/elf/shorts-segment-manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/version.cpp b/backends/plugins/elf/version.cpp
index a2c1971109..ac999e1d7c 100644
--- a/backends/plugins/elf/version.cpp
+++ b/backends/plugins/elf/version.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/elf/version.h b/backends/plugins/elf/version.h
index 1f6924028b..1e901bc162 100644
--- a/backends/plugins/elf/version.h
+++ b/backends/plugins/elf/version.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef BACKENDS_PLUGINS_ELF_VERSION_H
diff --git a/backends/plugins/posix/posix-provider.cpp b/backends/plugins/posix/posix-provider.cpp
index a68a792fa4..b484842ea5 100644
--- a/backends/plugins/posix/posix-provider.cpp
+++ b/backends/plugins/posix/posix-provider.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/posix/posix-provider.h b/backends/plugins/posix/posix-provider.h
index b1186ccf3f..f5fc96eac4 100644
--- a/backends/plugins/posix/posix-provider.h
+++ b/backends/plugins/posix/posix-provider.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/ps2/ps2-provider.cpp b/backends/plugins/ps2/ps2-provider.cpp
index 50cddb05e0..a4a9877c61 100644
--- a/backends/plugins/ps2/ps2-provider.cpp
+++ b/backends/plugins/ps2/ps2-provider.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/ps2/ps2-provider.h b/backends/plugins/ps2/ps2-provider.h
index f4498204b4..6c95cc395a 100644
--- a/backends/plugins/ps2/ps2-provider.h
+++ b/backends/plugins/ps2/ps2-provider.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/psp/psp-provider.cpp b/backends/plugins/psp/psp-provider.cpp
index 1d8cad6b50..217a58e48d 100644
--- a/backends/plugins/psp/psp-provider.cpp
+++ b/backends/plugins/psp/psp-provider.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/psp/psp-provider.h b/backends/plugins/psp/psp-provider.h
index 4ace3e7f4b..6211ac6f64 100644
--- a/backends/plugins/psp/psp-provider.h
+++ b/backends/plugins/psp/psp-provider.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/sdl/sdl-provider.cpp b/backends/plugins/sdl/sdl-provider.cpp
index 00520b48b0..5749a2afa2 100644
--- a/backends/plugins/sdl/sdl-provider.cpp
+++ b/backends/plugins/sdl/sdl-provider.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/sdl/sdl-provider.h b/backends/plugins/sdl/sdl-provider.h
index 881aa5cc19..8b5ae31c17 100644
--- a/backends/plugins/sdl/sdl-provider.h
+++ b/backends/plugins/sdl/sdl-provider.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/wii/wii-provider.cpp b/backends/plugins/wii/wii-provider.cpp
index f96254eabe..4d7391b44e 100644
--- a/backends/plugins/wii/wii-provider.cpp
+++ b/backends/plugins/wii/wii-provider.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/wii/wii-provider.h b/backends/plugins/wii/wii-provider.h
index fb847e1024..49eba82e8b 100644
--- a/backends/plugins/wii/wii-provider.h
+++ b/backends/plugins/wii/wii-provider.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/win32/win32-provider.cpp b/backends/plugins/win32/win32-provider.cpp
index 0a08e48e6f..5f4d405da4 100644
--- a/backends/plugins/win32/win32-provider.cpp
+++ b/backends/plugins/win32/win32-provider.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/plugins/win32/win32-provider.h b/backends/plugins/win32/win32-provider.h
index 42c04e6d59..71e6cf098c 100644
--- a/backends/plugins/win32/win32-provider.h
+++ b/backends/plugins/win32/win32-provider.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/default/default-saves.cpp b/backends/saves/default/default-saves.cpp
index 64e7e778b6..1b955a5021 100644
--- a/backends/saves/default/default-saves.cpp
+++ b/backends/saves/default/default-saves.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/default/default-saves.h b/backends/saves/default/default-saves.h
index c7fca279bc..81f45f96b8 100644
--- a/backends/saves/default/default-saves.h
+++ b/backends/saves/default/default-saves.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/posix/posix-saves.cpp b/backends/saves/posix/posix-saves.cpp
index e04609be5b..96828320a6 100644
--- a/backends/saves/posix/posix-saves.cpp
+++ b/backends/saves/posix/posix-saves.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/posix/posix-saves.h b/backends/saves/posix/posix-saves.h
index 160075d3db..2477bd60e7 100644
--- a/backends/saves/posix/posix-saves.h
+++ b/backends/saves/posix/posix-saves.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/psp/psp-saves.cpp b/backends/saves/psp/psp-saves.cpp
index 65003e9fb9..9d9affbc1b 100644
--- a/backends/saves/psp/psp-saves.cpp
+++ b/backends/saves/psp/psp-saves.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/psp/psp-saves.h b/backends/saves/psp/psp-saves.h
index de2d8a693e..a0e4c38ecf 100644
--- a/backends/saves/psp/psp-saves.h
+++ b/backends/saves/psp/psp-saves.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/recorder/recorder-saves.cpp b/backends/saves/recorder/recorder-saves.cpp
index 49b4672913..e2cdc5c1c2 100644
--- a/backends/saves/recorder/recorder-saves.cpp
+++ b/backends/saves/recorder/recorder-saves.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/recorder/recorder-saves.h b/backends/saves/recorder/recorder-saves.h
index 692aeca329..b5bf02fc83 100644
--- a/backends/saves/recorder/recorder-saves.h
+++ b/backends/saves/recorder/recorder-saves.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/savefile.cpp b/backends/saves/savefile.cpp
index edfdd9bc20..b04c53d832 100644
--- a/backends/saves/savefile.cpp
+++ b/backends/saves/savefile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/windows/windows-saves.cpp b/backends/saves/windows/windows-saves.cpp
index d520632394..b84ab1312d 100644
--- a/backends/saves/windows/windows-saves.cpp
+++ b/backends/saves/windows/windows-saves.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/saves/windows/windows-saves.h b/backends/saves/windows/windows-saves.h
index a705aa2b7f..d22033273a 100644
--- a/backends/saves/windows/windows-saves.h
+++ b/backends/saves/windows/windows-saves.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/taskbar/macosx/macosx-taskbar.h b/backends/taskbar/macosx/macosx-taskbar.h
new file mode 100644
index 0000000000..5d5b9d02cd
--- /dev/null
+++ b/backends/taskbar/macosx/macosx-taskbar.h
@@ -0,0 +1,57 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BACKEND_MACOSX_TASKBAR_H
+#define BACKEND_MACOSX_TASKBAR_H
+
+#if defined(MACOSX) && defined(USE_TASKBAR)
+
+#include "common/str.h"
+#include "common/taskbar.h"
+
+class MacOSXTaskbarManager : public Common::TaskbarManager {
+public:
+ MacOSXTaskbarManager();
+ virtual ~MacOSXTaskbarManager();
+
+ virtual void setOverlayIcon(const Common::String &name, const Common::String &description);
+ virtual void setProgressValue(int completed, int total);
+ virtual void setProgressState(TaskbarProgressState state);
+ virtual void setCount(int count);
+ virtual void notifyError();
+ virtual void clearError();
+
+private:
+ Common::String getIconPath(const Common::String&);
+
+ void initApplicationIconView();
+ void clearApplicationIconView();
+
+ void initOverlayIconView();
+ void clearOverlayIconView();
+
+ double _progress;
+};
+
+#endif
+
+#endif // BACKEND_MACOSX_TASKBAR_H
diff --git a/backends/taskbar/macosx/macosx-taskbar.mm b/backends/taskbar/macosx/macosx-taskbar.mm
new file mode 100644
index 0000000000..ae087dfb85
--- /dev/null
+++ b/backends/taskbar/macosx/macosx-taskbar.mm
@@ -0,0 +1,238 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+// Disable symbol overrides so that we can use system headers
+#define FORBIDDEN_SYMBOL_ALLOW_ALL
+#include "common/scummsys.h"
+
+#if defined(MACOSX) && defined(USE_TASKBAR)
+
+// NSDockTile was introduced with Mac OS X 10.5.
+// Try provide backward compatibility by avoiding NSDockTile symbols.
+
+// TODO: Implement recent list, maybe as a custom menu on dock tile when app is not running
+// See Dock Tile plug-in at https://developer.apple.com/library/mac/documentation/Carbon/Conceptual/customizing_docktile/CreatingaDockTilePlug-in/CreatingaDockTilePlug-in.html
+
+#include "backends/taskbar/macosx/macosx-taskbar.h"
+#include "common/config-manager.h"
+#include "common/file.h"
+
+#include <AppKit/NSApplication.h>
+#include <AppKit/NSImage.h>
+#include <Foundation/NSString.h>
+#include <AppKit/NSImageView.h>
+#include <AppKit/NSColor.h>
+#include <AppKit/NSBezierPath.h>
+#include <CoreFoundation/CFString.h>
+
+id _dockTile;
+NSImageView *_applicationIconView;
+NSImageView *_overlayIconView;
+
+// Using a NSProgressIndicator as a sub-view of the NSDockTile view does not work properly.
+// The progress indicator is grayed out and display no progress. So instead the bar is drawn
+// manually, which is a bit more work :(
+
+MacOSXTaskbarManager::MacOSXTaskbarManager() : _progress(-1.0) {
+ if ([NSApp respondsToSelector:@selector(dockTile)])
+ _dockTile = [NSApp dockTile];
+ _applicationIconView = nil;
+ _overlayIconView = nil;
+}
+
+MacOSXTaskbarManager::~MacOSXTaskbarManager() {
+ clearApplicationIconView();
+}
+
+void MacOSXTaskbarManager::initApplicationIconView() {
+ if (_dockTile == nil)
+ return;
+ if (_applicationIconView == nil) {
+ _applicationIconView = [[NSImageView alloc] init];
+ [_applicationIconView setImage:[NSApp applicationIconImage]];
+ [_dockTile performSelector:@selector(setContentView:) withObject:_applicationIconView];
+ }
+}
+
+void MacOSXTaskbarManager::clearApplicationIconView() {
+ if (_dockTile == nil)
+ return;
+ [_dockTile performSelector:@selector(setContentView:) withObject:nil];
+ [_applicationIconView release];
+ _applicationIconView = nil;
+}
+
+void MacOSXTaskbarManager::initOverlayIconView() {
+ if (_dockTile == nil)
+ return;
+ if (_overlayIconView == nil) {
+ const double overlaySize = 0.75;
+ initApplicationIconView();
+ NSSize size = [_applicationIconView frame].size;
+ _overlayIconView = [[NSImageView alloc] initWithFrame:NSMakeRect(size.width * (1.0-overlaySize), 0.0f, size.width * overlaySize, size.height * overlaySize)];
+ [_overlayIconView setImageAlignment:NSImageAlignBottomRight];
+ [_applicationIconView addSubview:_overlayIconView];
+ [_overlayIconView release];
+ }
+}
+
+void MacOSXTaskbarManager::clearOverlayIconView() {
+ if (_progress < 0.0)
+ clearApplicationIconView();
+ else
+ [_overlayIconView removeFromSuperview];
+ _overlayIconView = nil;
+}
+
+void MacOSXTaskbarManager::setOverlayIcon(const Common::String &name, const Common::String &description) {
+ if (_dockTile == nil)
+ return;
+
+ if (name.empty()) {
+ clearOverlayIconView();
+ [_dockTile performSelector:@selector(display)];
+ return;
+ }
+
+ Common::String path = getIconPath(name);
+ if (path.empty())
+ return;
+
+ initOverlayIconView();
+
+ CFStringRef imageFile = CFStringCreateWithCString(0, path.c_str(), kCFStringEncodingASCII);
+ NSImage* image = [[NSImage alloc] initWithContentsOfFile:(NSString *)imageFile];
+ [_overlayIconView setImage:image];
+ [image release];
+ CFRelease(imageFile);
+
+ [_dockTile performSelector:@selector(display)];
+}
+
+void MacOSXTaskbarManager::setProgressValue(int completed, int total) {
+ if (_dockTile == nil)
+ return;
+
+ if (total > 0)
+ _progress = (double)completed / (double)total;
+ else if (_progress < 0)
+ _progress = 0.0;
+
+ NSImage *mainIcon = [[NSApp applicationIconImage] copy];
+ double barSize = [mainIcon size].width;
+ double progressSize = barSize * _progress;
+ [mainIcon lockFocus];
+ [[NSColor colorWithDeviceRed:(40.0/255.0) green:(120.0/255.0) blue:(255.0/255.0) alpha:0.78] set];
+ [NSBezierPath fillRect:NSMakeRect(0, 0, progressSize, 11)];
+ [[NSColor colorWithDeviceRed:(241.0/255.0) green:(241.0/255.0) blue:(241.0/255.0) alpha:0.78] set];
+ [NSBezierPath fillRect:NSMakeRect(progressSize, 0, barSize-progressSize, 11)];
+ [mainIcon unlockFocus];
+
+ initApplicationIconView();
+ [_applicationIconView setImage:mainIcon];
+ [mainIcon release];
+
+ [_dockTile performSelector:@selector(display)];
+}
+
+void MacOSXTaskbarManager::setProgressState(TaskbarProgressState state) {
+ if (_dockTile == nil)
+ return;
+
+ // Only support two states: visible and not visible.
+ if (state == kTaskbarNoProgress) {
+ _progress = -1.0;
+ if (_overlayIconView == nil)
+ clearApplicationIconView();
+ else if (_applicationIconView != nil)
+ [_applicationIconView setImage:[NSApp applicationIconImage]];
+ return;
+ }
+
+ setProgressValue(-1, -1);
+}
+
+void MacOSXTaskbarManager::setCount(int count) {
+ if (_dockTile == nil)
+ return;
+
+ if (count > 0)
+ [_dockTile performSelector:@selector(setBadgeLabel:) withObject:[NSString stringWithFormat:@"%d", count]];
+ else
+ [_dockTile performSelector:@selector(setBadgeLabel:) withObject:nil];
+}
+
+void MacOSXTaskbarManager::notifyError() {
+ if (_dockTile == nil)
+ return;
+
+ // NSImageNameCaution was introduced in 10.6.
+ // For compatibility with older systems we should use something else (e.g. overlay label
+ // or our own icon).
+ //initOverlayIconView();
+ //[_overlayIconView setImage:[NSImage imageNamed:NSImageNameCaution]];
+ //[_dockTile performSelector:@selector(display)];
+}
+
+void MacOSXTaskbarManager::clearError() {
+ if (_dockTile == nil)
+ return;
+
+ clearOverlayIconView();
+ [_dockTile performSelector:@selector(display)];
+ return;
+}
+
+Common::String MacOSXTaskbarManager::getIconPath(const Common::String& target) {
+ // We first try to look for a iconspath configuration variable then
+ // fallback to the extra path
+ //
+ // Icons can be either in a subfolder named "icons" or directly in the path
+
+ Common::String iconsPath = ConfMan.get("iconspath");
+ Common::String extraPath = ConfMan.get("extrapath");
+
+#define TRY_ICON_PATH(path) { \
+Common::FSNode node((path)); \
+if (node.exists()) \
+return (path); \
+}
+
+ if (!iconsPath.empty()) {
+ TRY_ICON_PATH(iconsPath + "/" + target + ".png");
+ TRY_ICON_PATH(iconsPath + "/" + ConfMan.get("gameid") + ".png");
+ TRY_ICON_PATH(iconsPath + "/icons/" + target + ".png");
+ TRY_ICON_PATH(iconsPath + "/icons/" + ConfMan.get("gameid") + ".png");
+ }
+
+ if (!extraPath.empty()) {
+ TRY_ICON_PATH(extraPath + "/" + target + ".png");
+ TRY_ICON_PATH(extraPath + "/" + ConfMan.get("gameid") + ".png");
+ TRY_ICON_PATH(extraPath + "/icons/" + target + ".png");
+ TRY_ICON_PATH(extraPath + "/icons/" + ConfMan.get("gameid") + ".png");
+ }
+
+ return "";
+}
+
+
+#endif
diff --git a/backends/timer/default/default-timer.cpp b/backends/timer/default/default-timer.cpp
index ce93320f3d..8964d5a7c7 100644
--- a/backends/timer/default/default-timer.cpp
+++ b/backends/timer/default/default-timer.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/scummsys.h"
diff --git a/backends/timer/default/default-timer.h b/backends/timer/default/default-timer.h
index 5884979da0..8b23fb744f 100644
--- a/backends/timer/default/default-timer.h
+++ b/backends/timer/default/default-timer.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef BACKENDS_TIMER_DEFAULT_H
diff --git a/backends/timer/psp/timer.cpp b/backends/timer/psp/timer.cpp
index 6f8e4b6643..278f50581c 100644
--- a/backends/timer/psp/timer.cpp
+++ b/backends/timer/psp/timer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/timer/psp/timer.h b/backends/timer/psp/timer.h
index 76eebfd6a4..45b32e0e14 100644
--- a/backends/timer/psp/timer.h
+++ b/backends/timer/psp/timer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/timer/sdl/sdl-timer.cpp b/backends/timer/sdl/sdl-timer.cpp
index 33596f4bd8..22d4bb985f 100644
--- a/backends/timer/sdl/sdl-timer.cpp
+++ b/backends/timer/sdl/sdl-timer.cpp
@@ -9,12 +9,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/timer/sdl/sdl-timer.h b/backends/timer/sdl/sdl-timer.h
index 069a266e45..278df515cd 100644
--- a/backends/timer/sdl/sdl-timer.h
+++ b/backends/timer/sdl/sdl-timer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/timer/tizen/timer.cpp b/backends/timer/tizen/timer.cpp
index fa226ce747..dfa558615a 100644
--- a/backends/timer/tizen/timer.cpp
+++ b/backends/timer/tizen/timer.cpp
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/timer/tizen/timer.h b/backends/timer/tizen/timer.h
index 4b2596401a..ff5ea1a35f 100644
--- a/backends/timer/tizen/timer.h
+++ b/backends/timer/tizen/timer.h
@@ -11,7 +11,7 @@
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
diff --git a/backends/updates/macosx/macosx-updates.h b/backends/updates/macosx/macosx-updates.h
index 8c9ac1f743..fd2d1f46f5 100644
--- a/backends/updates/macosx/macosx-updates.h
+++ b/backends/updates/macosx/macosx-updates.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/updates/macosx/macosx-updates.mm b/backends/updates/macosx/macosx-updates.mm
index f3b221cabf..a94f1c21fd 100644
--- a/backends/updates/macosx/macosx-updates.mm
+++ b/backends/updates/macosx/macosx-updates.mm
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/backends/vkeybd/virtual-keyboard-gui.cpp b/backends/vkeybd/virtual-keyboard-gui.cpp
index ec4cbf1de2..1d2b8285f5 100644
--- a/backends/vkeybd/virtual-keyboard-gui.cpp
+++ b/backends/vkeybd/virtual-keyboard-gui.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
diff --git a/backends/vkeybd/virtual-keyboard-gui.h b/backends/vkeybd/virtual-keyboard-gui.h
index a2000adea0..c328d1e25d 100644
--- a/backends/vkeybd/virtual-keyboard-gui.h
+++ b/backends/vkeybd/virtual-keyboard-gui.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef COMMON_VIRTUAL_KEYBOARD_GUI_H
#define COMMON_VIRTUAL_KEYBOARD_GUI_H
diff --git a/backends/vkeybd/virtual-keyboard-parser.cpp b/backends/vkeybd/virtual-keyboard-parser.cpp
index bb8286d1f5..25c0161ae6 100644
--- a/backends/vkeybd/virtual-keyboard-parser.cpp
+++ b/backends/vkeybd/virtual-keyboard-parser.cpp
@@ -34,7 +34,7 @@
#include "common/tokenizer.h"
#include "common/stream.h"
-#include "graphics/decoders/bmp.h"
+#include "image/bmp.h"
namespace Common {
@@ -267,7 +267,7 @@ bool VirtualKeyboardParser::parserCallback_layout(ParserNode *node) {
const Graphics::PixelFormat format = g_system->getOverlayFormat();
{
- Graphics::BitmapDecoder bmp;
+ Image::BitmapDecoder bmp;
if (!bmp.loadStream(*file))
return parserError("Error loading bitmap '" + _mode->bitmapName + "'");
diff --git a/base/commandLine.cpp b/base/commandLine.cpp
index a032f37a25..d883323976 100644
--- a/base/commandLine.cpp
+++ b/base/commandLine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/base/commandLine.h b/base/commandLine.h
index 2798ab0934..cf04d74c1d 100644
--- a/base/commandLine.h
+++ b/base/commandLine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/base/main.cpp b/base/main.cpp
index abf75b7e7e..1fa75d5e9c 100644
--- a/base/main.cpp
+++ b/base/main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/base/main.h b/base/main.h
index 3d75931454..431fcfbbed 100644
--- a/base/main.h
+++ b/base/main.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/base/plugins.cpp b/base/plugins.cpp
index b8cd097683..39aaf2f73e 100644
--- a/base/plugins.cpp
+++ b/base/plugins.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -295,7 +295,7 @@ bool PluginManagerUncached::loadPluginFromGameId(const Common::String &gameId) {
if (domain->contains(gameId)) {
Common::String filename = (*domain)[gameId];
- if (loadPluginByFileName(filename)) {
+ if (loadPluginByFileName(filename)) {
return true;
}
}
diff --git a/base/plugins.h b/base/plugins.h
index e0673ce636..6037fc2d71 100644
--- a/base/plugins.h
+++ b/base/plugins.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/base/version.cpp b/base/version.cpp
index 8d087e0622..fba3554f67 100644
--- a/base/version.cpp
+++ b/base/version.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/base/version.h b/base/version.h
index a5c25c03f4..2e362b5c72 100644
--- a/base/version.h
+++ b/base/version.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef BASE_VERSION_H
diff --git a/common/EventDispatcher.cpp b/common/EventDispatcher.cpp
index e60c1aa7ff..2650d795b7 100644
--- a/common/EventDispatcher.cpp
+++ b/common/EventDispatcher.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/EventMapper.cpp b/common/EventMapper.cpp
index 5f6771a71d..30896d7514 100644
--- a/common/EventMapper.cpp
+++ b/common/EventMapper.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -37,11 +37,17 @@ List<Event> DefaultEventMapper::mapEvent(const Event &ev, EventSource *source) {
#ifdef ENABLE_VKEYBD
else if (ev.kbd.keycode == KEYCODE_F7 && ev.kbd.hasFlags(0)) {
mappedEvent.type = EVENT_VIRTUAL_KEYBOARD;
+
+ // Avoid blocking F7 events from engine.
+ addDelayedEvent(100, ev);
}
#endif
#ifdef ENABLE_KEYMAPPER
else if (ev.kbd.keycode == KEYCODE_F8 && ev.kbd.hasFlags(0)) {
mappedEvent.type = EVENT_KEYMAPPER_REMAP;
+
+ // Avoid blocking F8 events from engine.
+ addDelayedEvent(100, ev);
}
#endif
}
diff --git a/common/algorithm.h b/common/algorithm.h
index 7a0eed89ce..6453073ae5 100644
--- a/common/algorithm.h
+++ b/common/algorithm.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_ALGORITHM_H
diff --git a/common/archive.cpp b/common/archive.cpp
index 57ebeb2ca6..36d420561f 100644
--- a/common/archive.cpp
+++ b/common/archive.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/archive.h b/common/archive.h
index 2f9736f032..9293b937af 100644
--- a/common/archive.h
+++ b/common/archive.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/array.h b/common/array.h
index ca89523a0b..f240a9c2f5 100644
--- a/common/array.h
+++ b/common/array.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_ARRAY_H
diff --git a/common/bitstream.h b/common/bitstream.h
index c8c8c11fca..0fe16b5beb 100644
--- a/common/bitstream.h
+++ b/common/bitstream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/bufferedstream.h b/common/bufferedstream.h
index 6c859c98fe..bbd25722a8 100644
--- a/common/bufferedstream.h
+++ b/common/bufferedstream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/c++11-compat.h b/common/c++11-compat.h
index f963ba9ac8..14e0642821 100644
--- a/common/c++11-compat.h
+++ b/common/c++11-compat.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/config-manager.cpp b/common/config-manager.cpp
index aaa812bc94..feb3ddcf56 100644
--- a/common/config-manager.cpp
+++ b/common/config-manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/config-manager.h b/common/config-manager.h
index 6bf56749c5..14f911f69d 100644
--- a/common/config-manager.h
+++ b/common/config-manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/coroutines.cpp b/common/coroutines.cpp
index 849b881177..248777febd 100644
--- a/common/coroutines.cpp
+++ b/common/coroutines.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/coroutines.h"
diff --git a/common/coroutines.h b/common/coroutines.h
index 30b9bb6a99..4fef1a0d4e 100644
--- a/common/coroutines.h
+++ b/common/coroutines.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_COROUTINES_H
diff --git a/common/cosinetables.cpp b/common/cosinetables.cpp
index 3b245750fa..4bee1f24ea 100644
--- a/common/cosinetables.cpp
+++ b/common/cosinetables.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/cosinetables.h b/common/cosinetables.h
index f5c95ec003..0ff01e40d6 100644
--- a/common/cosinetables.h
+++ b/common/cosinetables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/dcl.cpp b/common/dcl.cpp
index 87ec0ad915..bb4e283de5 100644
--- a/common/dcl.cpp
+++ b/common/dcl.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/dcl.h b/common/dcl.h
index 78ffa631ed..0e96f74c07 100644
--- a/common/dcl.h
+++ b/common/dcl.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/dct.cpp b/common/dct.cpp
index 38b4fbcff2..dea75f4c45 100644
--- a/common/dct.cpp
+++ b/common/dct.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/dct.h b/common/dct.h
index 085423ddff..882856a8a9 100644
--- a/common/dct.h
+++ b/common/dct.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/debug-channels.h b/common/debug-channels.h
index 40d1ea667e..83f416a3b8 100644
--- a/common/debug-channels.h
+++ b/common/debug-channels.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_DEBUG_CHANNELS_H
diff --git a/common/debug.cpp b/common/debug.cpp
index ba5479c34d..58cc0287a8 100644
--- a/common/debug.cpp
+++ b/common/debug.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/debug.h"
diff --git a/common/debug.h b/common/debug.h
index 859f3c41b3..b6e0679a12 100644
--- a/common/debug.h
+++ b/common/debug.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_DEBUG_H
diff --git a/common/endian.h b/common/endian.h
index 759513efef..529e7f5ac0 100644
--- a/common/endian.h
+++ b/common/endian.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/error.cpp b/common/error.cpp
index 78178f8e27..53cd8cec55 100644
--- a/common/error.cpp
+++ b/common/error.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/error.h b/common/error.h
index 7043862eea..3e0a7b556f 100644
--- a/common/error.h
+++ b/common/error.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/events.h b/common/events.h
index 9029a4096a..488d586b3f 100644
--- a/common/events.h
+++ b/common/events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/fft.cpp b/common/fft.cpp
index a9c58ead9b..ac7386083f 100644
--- a/common/fft.cpp
+++ b/common/fft.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/fft.h b/common/fft.h
index ef5f6e95ad..6eb72c3f84 100644
--- a/common/fft.h
+++ b/common/fft.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/file.cpp b/common/file.cpp
index 7ad6bc2e81..16e6a0df1a 100644
--- a/common/file.cpp
+++ b/common/file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/file.h b/common/file.h
index b6319dfc3c..29f12b255d 100644
--- a/common/file.h
+++ b/common/file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/forbidden.h b/common/forbidden.h
index 9050114442..d6fd9c42fe 100644
--- a/common/forbidden.h
+++ b/common/forbidden.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/frac.h b/common/frac.h
index d402878825..d71d31645b 100644
--- a/common/frac.h
+++ b/common/frac.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/fs.cpp b/common/fs.cpp
index 19a01074ea..3a7026b1cc 100644
--- a/common/fs.cpp
+++ b/common/fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/system.h"
diff --git a/common/fs.h b/common/fs.h
index fadd672bb1..b5b88ba8cb 100644
--- a/common/fs.h
+++ b/common/fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_FS_H
diff --git a/common/func.h b/common/func.h
index a4a80e5406..b58474b2f3 100644
--- a/common/func.h
+++ b/common/func.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_FUNC_H
diff --git a/common/gui_options.cpp b/common/gui_options.cpp
index e463232276..d79bf1b82f 100644
--- a/common/gui_options.cpp
+++ b/common/gui_options.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/gui_options.h b/common/gui_options.h
index 447fff43ed..78e9cc7199 100644
--- a/common/gui_options.h
+++ b/common/gui_options.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/hash-str.h b/common/hash-str.h
index 190e6922eb..82af6cca93 100644
--- a/common/hash-str.h
+++ b/common/hash-str.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_HASH_STR_H
diff --git a/common/hashmap.cpp b/common/hashmap.cpp
index e505d1dd25..99840993ce 100644
--- a/common/hashmap.cpp
+++ b/common/hashmap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/hashmap.h b/common/hashmap.h
index 42509d67e5..d7ba100571 100644
--- a/common/hashmap.h
+++ b/common/hashmap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/huffman.cpp b/common/huffman.cpp
index a8ebe4142a..afb4fa00b6 100644
--- a/common/huffman.cpp
+++ b/common/huffman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/huffman.h b/common/huffman.h
index 3b23340b2e..5ba7deca87 100644
--- a/common/huffman.h
+++ b/common/huffman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/iff_container.cpp b/common/iff_container.cpp
index 9c6e5f124a..1eee7ad71e 100644
--- a/common/iff_container.cpp
+++ b/common/iff_container.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/iff_container.h b/common/iff_container.h
index a730930b2c..e684f253b2 100644
--- a/common/iff_container.h
+++ b/common/iff_container.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_IFF_CONTAINER_H
diff --git a/common/ini-file.cpp b/common/ini-file.cpp
index 9de0b38e93..7fa17da76c 100644
--- a/common/ini-file.cpp
+++ b/common/ini-file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/ini-file.h b/common/ini-file.h
index a1505fe468..f27a8b9425 100644
--- a/common/ini-file.h
+++ b/common/ini-file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/installshield_cab.cpp b/common/installshield_cab.cpp
index e25d14741a..e9e8586185 100644
--- a/common/installshield_cab.cpp
+++ b/common/installshield_cab.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/installshield_cab.h b/common/installshield_cab.h
index 7c4f294578..d3c584815e 100644
--- a/common/installshield_cab.h
+++ b/common/installshield_cab.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/keyboard.h b/common/keyboard.h
index 3262a15c3f..e6e1f5948b 100644
--- a/common/keyboard.h
+++ b/common/keyboard.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/language.cpp b/common/language.cpp
index 6704a52373..97c515b45a 100644
--- a/common/language.cpp
+++ b/common/language.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/language.h"
diff --git a/common/language.h b/common/language.h
index f18815509b..ac3c7267ab 100644
--- a/common/language.h
+++ b/common/language.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_LANGUAGE_H
diff --git a/common/list.h b/common/list.h
index 9792042239..1bb4a2a5df 100644
--- a/common/list.h
+++ b/common/list.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_LIST_H
diff --git a/common/list_intern.h b/common/list_intern.h
index fef32fbe1e..b4f347561b 100644
--- a/common/list_intern.h
+++ b/common/list_intern.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_LIST_INTERN_H
diff --git a/common/localization.cpp b/common/localization.cpp
index afd31b8d22..d08583d955 100644
--- a/common/localization.cpp
+++ b/common/localization.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/localization.h"
diff --git a/common/localization.h b/common/localization.h
index e908485b99..096c5e95f5 100644
--- a/common/localization.h
+++ b/common/localization.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_LOCALIZATION_H
diff --git a/common/macresman.cpp b/common/macresman.cpp
index ba44caafd9..d83bde8fd8 100644
--- a/common/macresman.cpp
+++ b/common/macresman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/macresman.h b/common/macresman.h
index cca6592f21..373545795e 100644
--- a/common/macresman.h
+++ b/common/macresman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/math.h b/common/math.h
index ba137101e4..04a0ba14fc 100644
--- a/common/math.h
+++ b/common/math.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/md5.cpp b/common/md5.cpp
index 52fe8b8f8d..6a6eeaf048 100644
--- a/common/md5.cpp
+++ b/common/md5.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/*
diff --git a/common/md5.h b/common/md5.h
index d1be8c8e39..640326efe7 100644
--- a/common/md5.h
+++ b/common/md5.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_MD5_H
diff --git a/common/memory.h b/common/memory.h
index 0e5a97c20b..c32af42ba5 100644
--- a/common/memory.h
+++ b/common/memory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_MEMORY_H
diff --git a/common/memorypool.cpp b/common/memorypool.cpp
index e3742eeae0..1a9bfe2e29 100644
--- a/common/memorypool.cpp
+++ b/common/memorypool.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/memorypool.h b/common/memorypool.h
index 1cd725b99d..b84012232c 100644
--- a/common/memorypool.h
+++ b/common/memorypool.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/memstream.h b/common/memstream.h
index 7fa6500753..5ecc553454 100644
--- a/common/memstream.h
+++ b/common/memstream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/mutex.cpp b/common/mutex.cpp
index f912e79591..a7b34eb334 100644
--- a/common/mutex.cpp
+++ b/common/mutex.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/mutex.h b/common/mutex.h
index 26f69a3996..6e467cfddf 100644
--- a/common/mutex.h
+++ b/common/mutex.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/noncopyable.h b/common/noncopyable.h
index 0cbe41388a..24021f42a6 100644
--- a/common/noncopyable.h
+++ b/common/noncopyable.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/pack-end.h b/common/pack-end.h
index 04633b7635..5fed5e577b 100644
--- a/common/pack-end.h
+++ b/common/pack-end.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(SCUMMVM_USE_PRAGMA_PACK)
diff --git a/common/pack-start.h b/common/pack-start.h
index 631a6529d3..cfb8968a57 100644
--- a/common/pack-start.h
+++ b/common/pack-start.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(SCUMMVM_USE_PRAGMA_PACK)
diff --git a/common/platform.cpp b/common/platform.cpp
index 20ed970385..636c1ddb52 100644
--- a/common/platform.cpp
+++ b/common/platform.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/platform.h"
diff --git a/common/platform.h b/common/platform.h
index ac8772fa94..17a332b851 100644
--- a/common/platform.h
+++ b/common/platform.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_PLATFORM_H
diff --git a/common/ptr.h b/common/ptr.h
index f734ec133f..ebdd77cf3c 100644
--- a/common/ptr.h
+++ b/common/ptr.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_PTR_H
diff --git a/common/queue.h b/common/queue.h
index 3a2d6aad4b..ee14d5b364 100644
--- a/common/queue.h
+++ b/common/queue.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_QUEUE_H
diff --git a/common/quicktime.cpp b/common/quicktime.cpp
index 6ab5a42b89..76880e1016 100644
--- a/common/quicktime.cpp
+++ b/common/quicktime.cpp
@@ -529,7 +529,7 @@ int QuickTimeParser::readSTSD(Atom atom) {
_fd->readByte(); _fd->readByte(); _fd->readByte(); // flags
uint32 entryCount = _fd->readUint32BE();
- track->sampleDescs.resize(entryCount);
+ track->sampleDescs.reserve(entryCount);
for (uint32 i = 0; i < entryCount; i++) { // Parsing Sample description table
Atom a = { 0, 0, 0 };
@@ -541,7 +541,7 @@ int QuickTimeParser::readSTSD(Atom atom) {
_fd->readUint16BE(); // reserved
_fd->readUint16BE(); // index
- track->sampleDescs[i] = readSampleDesc(track, format, size - 16);
+ track->sampleDescs.push_back(readSampleDesc(track, format, size - 16));
debug(0, "size=%d 4CC= %s codec_type=%d", size, tag2str(format), track->codecType);
@@ -692,8 +692,14 @@ int QuickTimeParser::readWAVE(Atom atom) {
if (atom.size > (1 << 30))
return -1;
- if (track->sampleDescs[0]->getCodecTag() == MKTAG('Q', 'D', 'M', '2')) // Read extra data for QDM2
- track->extraData = _fd->readStream(atom.size);
+ // We should only get here within an stsd atom
+ if (track->sampleDescs.empty())
+ return -1;
+
+ SampleDesc *sampleDesc = track->sampleDescs.back();
+
+ if (sampleDesc->getCodecTag() == MKTAG('Q', 'D', 'M', '2')) // Read extra data for QDM2
+ sampleDesc->_extraData = _fd->readStream(atom.size);
else if (atom.size > 8)
return readDefault(atom);
else
@@ -735,6 +741,12 @@ int QuickTimeParser::readESDS(Atom atom) {
Track *track = _tracks.back();
+ // We should only get here within an stsd atom
+ if (track->sampleDescs.empty())
+ return -1;
+
+ SampleDesc *sampleDesc = track->sampleDescs.back();
+
_fd->readUint32BE(); // version + flags
byte tag;
@@ -750,7 +762,7 @@ int QuickTimeParser::readESDS(Atom atom) {
if (tag != kMP4DecConfigDescTag)
return 0;
- track->objectTypeMP4 = _fd->readByte();
+ sampleDesc->_objectTypeMP4 = _fd->readByte();
_fd->readByte(); // stream type
_fd->readUint16BE(); _fd->readByte(); // buffer size
_fd->readUint32BE(); // max bitrate
@@ -761,9 +773,9 @@ int QuickTimeParser::readESDS(Atom atom) {
if (tag != kMP4DecSpecificDescTag)
return 0;
- track->extraData = _fd->readStream(length);
+ sampleDesc->_extraData = _fd->readStream(length);
- debug(0, "MPEG-4 object type = %02x", track->objectTypeMP4);
+ debug(0, "MPEG-4 object type = %02x", sampleDesc->_objectTypeMP4);
return 0;
}
@@ -773,8 +785,14 @@ int QuickTimeParser::readSMI(Atom atom) {
Track *track = _tracks.back();
+ // We should only get here within an stsd atom
+ if (track->sampleDescs.empty())
+ return -1;
+
+ SampleDesc *sampleDesc = track->sampleDescs.back();
+
// This atom just contains SVQ3 extra data
- track->extraData = _fd->readStream(atom.size);
+ sampleDesc->_extraData = _fd->readStream(atom.size);
return 0;
}
@@ -794,6 +812,12 @@ void QuickTimeParser::close() {
QuickTimeParser::SampleDesc::SampleDesc(Track *parentTrack, uint32 codecTag) {
_parentTrack = parentTrack;
_codecTag = codecTag;
+ _extraData = 0;
+ _objectTypeMP4 = 0;
+}
+
+QuickTimeParser::SampleDesc::~SampleDesc() {
+ delete _extraData;
}
QuickTimeParser::Track::Track() {
@@ -814,11 +838,9 @@ QuickTimeParser::Track::Track() {
codecType = CODEC_TYPE_MOV_OTHER;
editCount = 0;
editList = 0;
- extraData = 0;
frameCount = 0;
duration = 0;
startTime = 0;
- objectTypeMP4 = 0;
mediaDuration = 0;
}
@@ -829,7 +851,6 @@ QuickTimeParser::Track::~Track() {
delete[] sampleSizes;
delete[] keyframes;
delete[] editList;
- delete extraData;
for (uint32 i = 0; i < sampleDescs.size(); i++)
delete sampleDescs[i];
diff --git a/common/quicktime.h b/common/quicktime.h
index caa92578b1..f5fd578e3a 100644
--- a/common/quicktime.h
+++ b/common/quicktime.h
@@ -108,10 +108,13 @@ protected:
class SampleDesc {
public:
SampleDesc(Track *parentTrack, uint32 codecTag);
- virtual ~SampleDesc() {}
+ virtual ~SampleDesc();
uint32 getCodecTag() const { return _codecTag; }
+ SeekableReadStream *_extraData;
+ byte _objectTypeMP4;
+
protected:
Track *_parentTrack;
uint32 _codecTag;
@@ -150,16 +153,12 @@ protected:
uint32 editCount;
EditListEntry *editList;
- SeekableReadStream *extraData;
-
uint32 frameCount;
uint32 duration;
uint32 mediaDuration;
uint32 startTime;
Rational scaleFactorX;
Rational scaleFactorY;
-
- byte objectTypeMP4;
};
virtual SampleDesc *readSampleDesc(Track *track, uint32 format, uint32 descSize) = 0;
diff --git a/common/random.cpp b/common/random.cpp
index de1269b485..86bde77e82 100644
--- a/common/random.cpp
+++ b/common/random.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/random.h"
diff --git a/common/random.h b/common/random.h
index c8aec58946..48cde26dc5 100644
--- a/common/random.h
+++ b/common/random.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_RANDOM_H
diff --git a/common/rational.cpp b/common/rational.cpp
index f5495da3a9..90e44576a7 100644
--- a/common/rational.cpp
+++ b/common/rational.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/debug.h"
diff --git a/common/rational.h b/common/rational.h
index 8270d2194e..55fb361774 100644
--- a/common/rational.h
+++ b/common/rational.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_RATIONAL_H
diff --git a/common/rdft.cpp b/common/rdft.cpp
index bfd6818fbd..d30fdd55a1 100644
--- a/common/rdft.cpp
+++ b/common/rdft.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/rdft.h b/common/rdft.h
index 76e95c363a..ae06c72ef8 100644
--- a/common/rdft.h
+++ b/common/rdft.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/recorderfile.cpp b/common/recorderfile.cpp
index 7c438cbf69..71f8272b44 100644
--- a/common/recorderfile.cpp
+++ b/common/recorderfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/recorderfile.h b/common/recorderfile.h
index 1c95e5a915..d34a442604 100644
--- a/common/recorderfile.h
+++ b/common/recorderfile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/rect.h b/common/rect.h
index 5790cf7c0f..32424d3e6a 100644
--- a/common/rect.h
+++ b/common/rect.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/rendermode.cpp b/common/rendermode.cpp
index e8f3146630..6115666399 100644
--- a/common/rendermode.cpp
+++ b/common/rendermode.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/rendermode.h b/common/rendermode.h
index 945c4e7d9d..59fa860c6c 100644
--- a/common/rendermode.h
+++ b/common/rendermode.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/savefile.h b/common/savefile.h
index 19536da54f..b0c4d31f53 100644
--- a/common/savefile.h
+++ b/common/savefile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/scummsys.h b/common/scummsys.h
index 56cd42d723..c30bc4a52a 100644
--- a/common/scummsys.h
+++ b/common/scummsys.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/serializer.h b/common/serializer.h
index 4d97c9e930..ef8fca9906 100644
--- a/common/serializer.h
+++ b/common/serializer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/sinetables.cpp b/common/sinetables.cpp
index 7338166d39..c01705e3dc 100644
--- a/common/sinetables.cpp
+++ b/common/sinetables.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/sinetables.h b/common/sinetables.h
index 3489663661..67225c0bcb 100644
--- a/common/sinetables.h
+++ b/common/sinetables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/singleton.h b/common/singleton.h
index 6e47f119ba..13bdb0c3a3 100644
--- a/common/singleton.h
+++ b/common/singleton.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/stack.h b/common/stack.h
index bc5de9ac7f..cba3fb124d 100644
--- a/common/stack.h
+++ b/common/stack.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_STACK_H
diff --git a/common/str-array.h b/common/str-array.h
index 57c76bf305..7a52a314e1 100644
--- a/common/str-array.h
+++ b/common/str-array.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/str.cpp b/common/str.cpp
index 4a10792373..faf84d722f 100644
--- a/common/str.cpp
+++ b/common/str.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/hash-str.h"
diff --git a/common/str.h b/common/str.h
index ea2db1d1d6..a2451f2f69 100644
--- a/common/str.h
+++ b/common/str.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_STRING_H
diff --git a/common/stream.cpp b/common/stream.cpp
index f49603c882..45060b9db5 100644
--- a/common/stream.cpp
+++ b/common/stream.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/stream.h b/common/stream.h
index 33ebc95a86..238844a860 100644
--- a/common/stream.h
+++ b/common/stream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/substream.h b/common/substream.h
index 01686529aa..e3161c0a53 100644
--- a/common/substream.h
+++ b/common/substream.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/system.cpp b/common/system.cpp
index d86b5b2b81..53f28cafa1 100644
--- a/common/system.cpp
+++ b/common/system.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/system.h b/common/system.h
index 81c4bdf34e..8896554f76 100644
--- a/common/system.h
+++ b/common/system.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/textconsole.cpp b/common/textconsole.cpp
index a721c121d5..5c69e42379 100644
--- a/common/textconsole.cpp
+++ b/common/textconsole.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_EXCEPTION_exit
diff --git a/common/textconsole.h b/common/textconsole.h
index 12f15e5e4b..e7654dd7e5 100644
--- a/common/textconsole.h
+++ b/common/textconsole.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_CONSOLE_H
diff --git a/common/timer.h b/common/timer.h
index 3db32df76a..2db163327d 100644
--- a/common/timer.h
+++ b/common/timer.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_TIMER_H
diff --git a/common/tokenizer.cpp b/common/tokenizer.cpp
index 46ba7a8d8b..2547f88168 100644
--- a/common/tokenizer.cpp
+++ b/common/tokenizer.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/tokenizer.h"
diff --git a/common/tokenizer.h b/common/tokenizer.h
index 8485094997..dd831f3431 100644
--- a/common/tokenizer.h
+++ b/common/tokenizer.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_TOKENIZER_H
diff --git a/common/translation.cpp b/common/translation.cpp
index 2bc31c617b..01665bf876 100644
--- a/common/translation.cpp
+++ b/common/translation.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if defined(WIN32)
diff --git a/common/translation.h b/common/translation.h
index 77e2fdfc07..e316507fdb 100644
--- a/common/translation.h
+++ b/common/translation.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_TRANSLATION_H
diff --git a/common/types.h b/common/types.h
index ab86f3afc2..dd5408daa5 100644
--- a/common/types.h
+++ b/common/types.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_TYPES_H
diff --git a/common/unzip.cpp b/common/unzip.cpp
index 69b9ff67cb..716c8c2d5e 100644
--- a/common/unzip.cpp
+++ b/common/unzip.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/* unzip.c -- IO on .zip files using zlib
diff --git a/common/unzip.h b/common/unzip.h
index 2e0dae831a..f249c5db19 100644
--- a/common/unzip.h
+++ b/common/unzip.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_UNZIP_H
diff --git a/common/updates.h b/common/updates.h
index 0012808a17..4c30987c38 100644
--- a/common/updates.h
+++ b/common/updates.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/ustr.cpp b/common/ustr.cpp
index fbc831cb56..35b5502a6d 100644
--- a/common/ustr.cpp
+++ b/common/ustr.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/ustr.h"
diff --git a/common/ustr.h b/common/ustr.h
index ab9dac70de..0059a1eb96 100644
--- a/common/ustr.h
+++ b/common/ustr.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_USTR_H
diff --git a/common/util.cpp b/common/util.cpp
index 3d40fffff5..8e0a2fd61f 100644
--- a/common/util.cpp
+++ b/common/util.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_EXCEPTION_isalnum
diff --git a/common/util.h b/common/util.h
index 392ced1ffe..1c0e45662e 100644
--- a/common/util.h
+++ b/common/util.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef COMMON_UTIL_H
diff --git a/common/winexe.cpp b/common/winexe.cpp
index 877ab6baa1..fc389f6ea6 100644
--- a/common/winexe.cpp
+++ b/common/winexe.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/winexe.h b/common/winexe.h
index bec156d2e7..cfadbf882d 100644
--- a/common/winexe.h
+++ b/common/winexe.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/winexe_ne.cpp b/common/winexe_ne.cpp
index 8ab7e707bb..ccf1fd17e5 100644
--- a/common/winexe_ne.cpp
+++ b/common/winexe_ne.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/winexe_ne.h b/common/winexe_ne.h
index 3f50b5cc54..d6698e6cf0 100644
--- a/common/winexe_ne.h
+++ b/common/winexe_ne.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/winexe_pe.cpp b/common/winexe_pe.cpp
index b3c45ffe73..969ea5d923 100644
--- a/common/winexe_pe.cpp
+++ b/common/winexe_pe.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/winexe_pe.h b/common/winexe_pe.h
index b38f2f78f5..b163bd15d2 100644
--- a/common/winexe_pe.h
+++ b/common/winexe_pe.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/common/zlib.cpp b/common/zlib.cpp
index f1a298a9f1..c22ea1e660 100644
--- a/common/zlib.cpp
+++ b/common/zlib.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -27,6 +27,7 @@
#include "common/ptr.h"
#include "common/util.h"
#include "common/stream.h"
+#include "common/debug.h"
#include "common/textconsole.h"
#if defined(USE_ZLIB)
@@ -140,6 +141,10 @@ bool inflateZlibInstallShield(byte *dst, uint dstLen, const byte *src, uint srcL
return true;
}
+#ifndef RELEASE_BUILD
+static bool _shownBackwardSeekingWarning = false;
+#endif
+
/**
* A simple wrapper class which can be used to wrap around an arbitrary
* other SeekableReadStream and will then provide on-the-fly decompression support.
@@ -159,11 +164,10 @@ protected:
uint32 _pos;
uint32 _origSize;
bool _eos;
- bool _shownBackwardSeekingWarning;
public:
- GZipReadStream(SeekableReadStream *w, uint32 knownSize = 0) : _wrapped(w), _stream(), _shownBackwardSeekingWarning(false) {
+ GZipReadStream(SeekableReadStream *w, uint32 knownSize = 0) : _wrapped(w), _stream() {
assert(w != 0);
// Verify file header is correct
@@ -263,13 +267,15 @@ public:
// from the start of the file. A rather wasteful operation, best
// to avoid it. :/
+#ifndef RELEASE_BUILD
if (!_shownBackwardSeekingWarning) {
// We only throw this warning once per stream, to avoid
// getting the console swarmed with warnings when consecutive
// seeks are made.
- warning("Backward seeking in GZipReadStream detected");
+ debug(1, "Backward seeking in GZipReadStream detected");
_shownBackwardSeekingWarning = true;
}
+#endif
_pos = 0;
_wrapped->seek(0, SEEK_SET);
diff --git a/common/zlib.h b/common/zlib.h
index d940f3f3a1..e2936a334a 100644
--- a/common/zlib.h
+++ b/common/zlib.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/configure b/configure
index 4a9474846a..b901943c7e 100755
--- a/configure
+++ b/configure
@@ -850,7 +850,9 @@ Fine tuning of the installation directories:
Special configuration feature:
--host=HOST cross-compile to target HOST (arm-linux, ...)
- special targets: android for Android
+ special targets: android-arm for Android ARM
+ android-mips for Android MIPS
+ android-x86 for Android x86
tizen for Samsung Tizen
caanoo for Caanoo
dingux for Dingux
@@ -965,6 +967,7 @@ Optional Libraries:
--with-freetype2-prefix=DIR Prefix where the freetype-config script is
installed (optional)
+ --disable-freetype2 disable freetype2 TTF library usage [autodetect]
--with-nasm-prefix=DIR Prefix where nasm executable is installed (optional)
--disable-nasm disable assembly language optimizations [autodetect]
@@ -1271,11 +1274,21 @@ get_system_exe_extension $guessed_host
NATIVEEXEEXT=$_exeext
case $_host in
-android | android-v7a | ouya)
+android | android-arm | android-v7a | android-arm-v7a | ouya)
_host_os=android
_host_cpu=arm
_host_alias=arm-linux-androideabi
;;
+android-mips)
+ _host_os=android
+ _host_cpu=mipsel
+ _host_alias=mipsel-linux-android
+ ;;
+android-x86)
+ _host_os=android
+ _host_cpu=i686
+ _host_alias=i686-linux-android
+ ;;
arm-riscos)
_host_os=riscos
_host_cpu=arm
@@ -1305,7 +1318,7 @@ ds)
gamecube)
_host_os=gamecube
_host_cpu=ppc
- _host_alias=powerpc-gekko
+ _host_alias=powerpc-eabi
;;
gp2x)
_host_os=gph-linux
@@ -1478,8 +1491,16 @@ caanoo | gp2x | gp2xwiz | openpandora | ps2)
esac
if test "$_debug_build" != no; then
- # debug mode not explicitly disabled -> compile with -g
- CXXFLAGS="$CXXFLAGS -g"
+ # debug mode not explicitly disabled -> compile with debug information
+ case $_host_os in
+ amigaos*)
+ # AmigaOS debugger uses plain stabs, with no gdb extensions.
+ CXXFLAGS="$CXXFLAGS -gstabs"
+ ;;
+ *)
+ # Use the system default format for debug info.
+ CXXFLAGS="$CXXFLAGS -g"
+ esac
fi
if test "$_release_build" = yes; then
@@ -2036,27 +2057,49 @@ echo_n "Checking hosttype... "
echo $_host_os
case $_host_os in
amigaos*)
- LDFLAGS="$LDFLAGS -use-dynld"
+ LDFLAGS="$LDFLAGS -use-dynld -Wl,--export-dynamic"
LDFLAGS="$LDFLAGS -L/sdk/local/newlib/lib"
# We have to use 'long' for our 4 byte typedef because AmigaOS already typedefs (u)int32
# as (unsigned) long, and consequently we'd get a compiler error otherwise.
type_4_byte='long'
+ # Supress format warnings as the long 4 byte causes noisy warnings.
+ CXXFLAGS="$CXXFLAGS -Wno-format"
add_line_to_config_mk 'AMIGAOS = 1'
;;
android)
case $_host in
- android)
+ android | android-arm)
CXXFLAGS="$CXXFLAGS -march=armv5te"
CXXFLAGS="$CXXFLAGS -mtune=xscale"
CXXFLAGS="$CXXFLAGS -msoft-float"
ABI="armeabi"
+ ANDROID_PLATFORM=4
+ ANDROID_PLATFORM_ARCH="arm"
;;
- android-v7a)
+ android-v7a | android-arm-v7a)
CXXFLAGS="$CXXFLAGS -march=armv7-a"
CXXFLAGS="$CXXFLAGS -mfloat-abi=softfp"
CXXFLAGS="$CXXFLAGS -mfpu=vfp"
LDFLAGS="$LDFLAGS -Wl,--fix-cortex-a8"
ABI="armeabi-v7a"
+ ANDROID_PLATFORM=4
+ ANDROID_PLATFORM_ARCH="arm"
+ ;;
+ android-mips)
+ CXXFLAGS="$CXXFLAGS -march=mips32"
+ CXXFLAGS="$CXXFLAGS -mtune=mips32"
+ ABI="mips"
+ # Platform version 9 is needed as earlier versions of platform do not support this arch.
+ ANDROID_PLATFORM=9
+ ANDROID_PLATFORM_ARCH="mips"
+ ;;
+ android-x86)
+ CXXFLAGS="$CXXFLAGS -march=i686"
+ CXXFLAGS="$CXXFLAGS -mtune=i686"
+ ABI="x86"
+ # Platform version 9 is needed as earlier versions of platform do not support this arch.
+ ANDROID_PLATFORM=9
+ ANDROID_PLATFORM_ARCH="x86"
;;
ouya)
CXXFLAGS="$CXXFLAGS -march=armv7-a"
@@ -2064,9 +2107,15 @@ case $_host_os in
CXXFLAGS="$CXXFLAGS -mfloat-abi=softfp"
CXXFLAGS="$CXXFLAGS -mfpu=neon"
ABI="armeabi-v7a"
+ ANDROID_PLATFORM=4
+ ANDROID_PLATFORM_ARCH="arm"
;;
esac
- CXXFLAGS="$CXXFLAGS --sysroot=$ANDROID_NDK/platforms/android-4/arch-arm"
+
+ # Setup platform version and arch
+ CXXFLAGS="$CXXFLAGS --sysroot=$ANDROID_NDK/platforms/android-$ANDROID_PLATFORM/arch-$ANDROID_PLATFORM_ARCH"
+ LDFLAGS="$LDFLAGS --sysroot=$ANDROID_NDK/platforms/android-$ANDROID_PLATFORM/arch-$ANDROID_PLATFORM_ARCH"
+
CXXFLAGS="$CXXFLAGS -fpic"
CXXFLAGS="$CXXFLAGS -ffunction-sections"
CXXFLAGS="$CXXFLAGS -funwind-tables"
@@ -2079,16 +2128,23 @@ case $_host_os in
fi
CXXFLAGS="$CXXFLAGS -finline-limit=300"
_optimization_level=-Os
- CXXFLAGS="$CXXFLAGS -mthumb-interwork"
- # FIXME: Why is the following in CXXFLAGS and not in DEFINES? Change or document this.
- CXXFLAGS="$CXXFLAGS -D__ARM_ARCH_5__"
- CXXFLAGS="$CXXFLAGS -D__ARM_ARCH_5T__"
- CXXFLAGS="$CXXFLAGS -D__ARM_ARCH_5E__"
- CXXFLAGS="$CXXFLAGS -D__ARM_ARCH_5TE__"
- # supress 'mangling of 'va_list' has changed in GCC 4.4'
+
+ if test "$_host" = android -o "$_host" = android-arm; then
+ CXXFLAGS="$CXXFLAGS -mthumb-interwork"
+ # FIXME: Why is the following in CXXFLAGS and not in DEFINES? Change or document this.
+ CXXFLAGS="$CXXFLAGS -D__ARM_ARCH_5__"
+ CXXFLAGS="$CXXFLAGS -D__ARM_ARCH_5T__"
+ CXXFLAGS="$CXXFLAGS -D__ARM_ARCH_5E__"
+ CXXFLAGS="$CXXFLAGS -D__ARM_ARCH_5TE__"
+ fi
+
+ # surpress 'mangling of 'va_list' has changed in GCC 4.4' warning
CXXFLAGS="$CXXFLAGS -Wno-psabi"
- LDFLAGS="$LDFLAGS --sysroot=$ANDROID_NDK/platforms/android-4/arch-arm"
- LDFLAGS="$LDFLAGS -mthumb-interwork"
+
+ if test "$_host" = android -o "$_host" = android-arm; then
+ LDFLAGS="$LDFLAGS -mthumb-interwork"
+ fi
+
LDFLAGS="$LDFLAGS -L$ANDROID_NDK/sources/cxx-stl/gnu-libstdc++/`$CXX -dumpversion`/libs/$ABI/"
LIBS="$LIBS -lsupc++"
add_line_to_config_mk "ANDROID_SDK = $ANDROID_SDK"
@@ -2356,7 +2412,7 @@ if test -n "$_host"; then
# Cross-compiling mode - add your target here if needed
echo "Cross-compiling to $_host"
case "$_host" in
- android | android-v7a | ouya)
+ android | android-arm | android-v7a | android-arm-v7a | android-mips | android-x86 | ouya)
# we link a .so as default
LDFLAGS="$LDFLAGS -shared"
LDFLAGS="$LDFLAGS -Wl,-Bsymbolic,--no-undefined"
@@ -2501,6 +2557,7 @@ if test -n "$_host"; then
;;
iphone)
DEFINES="$DEFINES -DIPHONE"
+ ASFLAGS="$ASFLAGS -arch armv6"
_backend="iphone"
_build_scalers=no
_mt32emu=no
@@ -2787,8 +2844,8 @@ case $_backend in
;;
iphone)
LIBS="$LIBS -lobjc -framework UIKit -framework CoreGraphics -framework OpenGLES"
- LIBS="$LIBS -framework QuartzCore -framework GraphicsServices -framework CoreFoundation"
- LIBS="$LIBS -framework Foundation -framework AudioToolbox -framework CoreAudio"
+ LIBS="$LIBS -framework QuartzCore -framework CoreFoundation -framework Foundation"
+ LIBS="$LIBS -framework AudioToolbox -framework CoreAudio"
;;
linuxmoto)
DEFINES="$DEFINES -DLINUXMOTO"
@@ -4012,6 +4069,10 @@ else
echo "win32"
_taskbar=yes
;;
+ darwin*)
+ echo "osx"
+ _taskbar=yes
+ ;;
*)
if test "$_libunity" = yes; then
echo "unity"
diff --git a/devtools/convbdf.cpp b/devtools/convbdf.cpp
index 69728eb9fd..21c8af8234 100644
--- a/devtools/convbdf.cpp
+++ b/devtools/convbdf.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_drascula/create_drascula.cpp b/devtools/create_drascula/create_drascula.cpp
index 20b60ab05f..2ed7e4fb4c 100644
--- a/devtools/create_drascula/create_drascula.cpp
+++ b/devtools/create_drascula/create_drascula.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_drascula/create_drascula.h b/devtools/create_drascula/create_drascula.h
index 754050c172..82abdceacb 100644
--- a/devtools/create_drascula/create_drascula.h
+++ b/devtools/create_drascula/create_drascula.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_drascula/staticdata.h b/devtools/create_drascula/staticdata.h
index e0e4f9da10..7cafe58703 100644
--- a/devtools/create_drascula/staticdata.h
+++ b/devtools/create_drascula/staticdata.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/create_hugo.cpp b/devtools/create_hugo/create_hugo.cpp
index 63b57f9c8f..780f85278d 100644
--- a/devtools/create_hugo/create_hugo.cpp
+++ b/devtools/create_hugo/create_hugo.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/create_hugo.h b/devtools/create_hugo/create_hugo.h
index e176dbb195..4f759feba6 100644
--- a/devtools/create_hugo/create_hugo.h
+++ b/devtools/create_hugo/create_hugo.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/staticdata.h b/devtools/create_hugo/staticdata.h
index 0ead2109d0..6e9c614943 100644
--- a/devtools/create_hugo/staticdata.h
+++ b/devtools/create_hugo/staticdata.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/staticdisplay.h b/devtools/create_hugo/staticdisplay.h
index 99d155dc13..0b5c10786c 100644
--- a/devtools/create_hugo/staticdisplay.h
+++ b/devtools/create_hugo/staticdisplay.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/staticengine.h b/devtools/create_hugo/staticengine.h
index 0091182c3c..7a45b23f8d 100644
--- a/devtools/create_hugo/staticengine.h
+++ b/devtools/create_hugo/staticengine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/staticfont.h b/devtools/create_hugo/staticfont.h
index 9fa87d194a..f474f5be51 100644
--- a/devtools/create_hugo/staticfont.h
+++ b/devtools/create_hugo/staticfont.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/staticintro.h b/devtools/create_hugo/staticintro.h
index d9880b707c..fbf727c2a1 100644
--- a/devtools/create_hugo/staticintro.h
+++ b/devtools/create_hugo/staticintro.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/staticmouse.h b/devtools/create_hugo/staticmouse.h
index b4d784210b..e51e9f54a0 100644
--- a/devtools/create_hugo/staticmouse.h
+++ b/devtools/create_hugo/staticmouse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/staticparser.h b/devtools/create_hugo/staticparser.h
index a2e28c1790..857dd3e960 100644
--- a/devtools/create_hugo/staticparser.h
+++ b/devtools/create_hugo/staticparser.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_hugo/staticutil.h b/devtools/create_hugo/staticutil.h
index 9003788ec9..ac2a824315 100644
--- a/devtools/create_hugo/staticutil.h
+++ b/devtools/create_hugo/staticutil.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_kyradat/create_kyradat.cpp b/devtools/create_kyradat/create_kyradat.cpp
index 01cde620e7..7da7bd4ef0 100644
--- a/devtools/create_kyradat/create_kyradat.cpp
+++ b/devtools/create_kyradat/create_kyradat.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -30,24 +30,22 @@
#endif // main
#include "create_kyradat.h"
+#include "resources.h"
+#include "types.h"
-#include "search.h"
#include "pak.h"
-#include "tables.h"
-#include "extract.h"
-
#include "md5.h"
#include "common/language.h"
#include "common/platform.h"
+#include <vector>
#include <string>
-#include <map>
#include <algorithm>
-#include <map>
+
enum {
- kKyraDatVersion = 84
+ kKyraDatVersion = 85
};
const ExtractFilename extractFilenames[] = {
@@ -55,647 +53,647 @@ const ExtractFilename extractFilenames[] = {
{ kIdMap, -1, true },
// INTRO / OUTRO sequences
- { k1ForestSeq, kTypeForestSeqData, false },
- { k1KallakWritingSeq, kTypeRawData, false },
- { k1KyrandiaLogoSeq, kTypeRawData, false },
- { k1KallakMalcolmSeq, kTypeRawData, false },
- { k1MalcolmTreeSeq, kTypeRawData, false },
- { k1WestwoodLogoSeq, kTypeRawData, false },
- { k1Demo1Seq, kTypeRawData, false },
- { k1Demo2Seq, kTypeRawData, false },
- { k1Demo3Seq, kTypeRawData, false },
- { k1Demo4Seq, kTypeRawData, false },
- { k1OutroReunionSeq, kTypeRawData, false },
+ { k1ForestSeq, kRawData, false },
+ { k1KallakWritingSeq, kRawData, false },
+ { k1KyrandiaLogoSeq, kRawData, false },
+ { k1KallakMalcolmSeq, kRawData, false },
+ { k1MalcolmTreeSeq, kRawData, false },
+ { k1WestwoodLogoSeq, kRawData, false },
+ { k1Demo1Seq, kRawData, false },
+ { k1Demo2Seq, kRawData, false },
+ { k1Demo3Seq, kRawData, false },
+ { k1Demo4Seq, kRawData, false },
+ { k1OutroReunionSeq, kRawData, false },
// INTRO / OUTRO strings
- { k1IntroCPSStrings, kTypeStringList, false },
- { k1IntroCOLStrings, kTypeStringList, false },
- { k1IntroWSAStrings, kTypeStringList, false },
- { k1IntroStrings, kTypeStringList, true },
- { k1OutroHomeString, kTypeStringList, true },
+ { k1IntroCPSStrings, kStringList, false },
+ { k1IntroCOLStrings, kStringList, false },
+ { k1IntroWSAStrings, kStringList, false },
+ { k1IntroStrings, kStringList, true },
+ { k1OutroHomeString, kStringList, true },
// INGAME strings
- { k1ItemNames, kTypeStringList, true },
- { k1TakenStrings, kTypeStringList, true },
- { k1PlacedStrings, kTypeStringList, true },
- { k1DroppedStrings, kTypeStringList, true },
- { k1NoDropStrings, kTypeStringList, true },
- { k1PutDownString, kTypeStringList, true },
- { k1WaitAmuletString, kTypeStringList, true },
- { k1BlackJewelString, kTypeStringList, true },
- { k1PoisonGoneString, kTypeStringList, true },
- { k1HealingTipString, kTypeStringList, true },
- { k1ThePoisonStrings, kTypeStringList, true },
- { k1FluteStrings, kTypeStringList, true },
- { k1WispJewelStrings, kTypeStringList, true },
- { k1MagicJewelStrings, kTypeStringList, true },
- { k1FlaskFullString, kTypeStringList, true },
- { k1FullFlaskString, kTypeStringList, true },
- { k1VeryCleverString, kTypeStringList, true },
- { k1NewGameString, kTypeStringList, true },
+ { k1ItemNames, kStringList, true },
+ { k1TakenStrings, kStringList, true },
+ { k1PlacedStrings, kStringList, true },
+ { k1DroppedStrings, kStringList, true },
+ { k1NoDropStrings, kStringList, true },
+ { k1PutDownString, kStringList, true },
+ { k1WaitAmuletString, kStringList, true },
+ { k1BlackJewelString, kStringList, true },
+ { k1PoisonGoneString, kStringList, true },
+ { k1HealingTipString, kStringList, true },
+ { k1ThePoisonStrings, kStringList, true },
+ { k1FluteStrings, kStringList, true },
+ { k1WispJewelStrings, kStringList, true },
+ { k1MagicJewelStrings, kStringList, true },
+ { k1FlaskFullString, kStringList, true },
+ { k1FullFlaskString, kStringList, true },
+ { k1VeryCleverString, kStringList, true },
+ { k1NewGameString, kStringList, true },
// GUI strings table
- { k1GUIStrings, kTypeStringList, true },
- { k1ConfigStrings, kTypeStringList, true },
+ { k1GUIStrings, kStringList, true },
+ { k1ConfigStrings, kStringList, true },
// ROOM table/filenames
- { k1RoomList, kTypeRoomList, false },
- { k1RoomFilenames, kTypeStringList, false },
+ { k1RoomList, kRoomList, false },
+ { k1RoomFilenames, kStringList, false },
// SHAPE tables
- { k1DefaultShapes, kTypeShapeList, false },
- { k1Healing1Shapes, kTypeShapeList, false },
- { k1Healing2Shapes, kTypeShapeList, false },
- { k1PoisonDeathShapes, kTypeShapeList, false },
- { k1FluteShapes, kTypeShapeList, false },
- { k1Winter1Shapes, kTypeShapeList, false },
- { k1Winter2Shapes, kTypeShapeList, false },
- { k1Winter3Shapes, kTypeShapeList, false },
- { k1DrinkShapes, kTypeShapeList, false },
- { k1WispShapes, kTypeShapeList, false },
- { k1MagicAnimShapes, kTypeShapeList, false },
- { k1BranStoneShapes, kTypeShapeList, false },
+ { k1DefaultShapes, kShapeList, false },
+ { k1Healing1Shapes, kShapeList, false },
+ { k1Healing2Shapes, kShapeList, false },
+ { k1PoisonDeathShapes, kShapeList, false },
+ { k1FluteShapes, kShapeList, false },
+ { k1Winter1Shapes, kShapeList, false },
+ { k1Winter2Shapes, kShapeList, false },
+ { k1Winter3Shapes, kShapeList, false },
+ { k1DrinkShapes, kShapeList, false },
+ { k1WispShapes, kShapeList, false },
+ { k1MagicAnimShapes, kShapeList, false },
+ { k1BranStoneShapes, kShapeList, false },
// IMAGE filename table
- { k1CharacterImageFilenames, kTypeStringList, false },
+ { k1CharacterImageFilenames, kStringList, false },
// AUDIO filename table
- { k1AudioTracks, kTypeStringList, false },
- { k1AudioTracks2, kTypeStringList, false },
- { k1AudioTracksIntro, kTypeStringList, false },
+ { k1AudioTracks, kStringList, false },
+ { k1AudioTracks2, kStringList, false },
+ { k1AudioTracksIntro, kStringList, false },
// AMULET anim
- { k1AmuleteAnimSeq, kTypeRawData, false },
+ { k1AmuleteAnimSeq, kRawData, false },
// PALETTE table
- { k1SpecialPalette1, kTypeRawData, false },
- { k1SpecialPalette2, kTypeRawData, false },
- { k1SpecialPalette3, kTypeRawData, false },
- { k1SpecialPalette4, kTypeRawData, false },
- { k1SpecialPalette5, kTypeRawData, false },
- { k1SpecialPalette6, kTypeRawData, false },
- { k1SpecialPalette7, kTypeRawData, false },
- { k1SpecialPalette8, kTypeRawData, false },
- { k1SpecialPalette9, kTypeRawData, false },
- { k1SpecialPalette10, kTypeRawData, false },
- { k1SpecialPalette11, kTypeRawData, false },
- { k1SpecialPalette12, kTypeRawData, false },
- { k1SpecialPalette13, kTypeRawData, false },
- { k1SpecialPalette14, kTypeRawData, false },
- { k1SpecialPalette15, kTypeRawData, false },
- { k1SpecialPalette16, kTypeRawData, false },
- { k1SpecialPalette17, kTypeRawData, false },
- { k1SpecialPalette18, kTypeRawData, false },
- { k1SpecialPalette19, kTypeRawData, false },
- { k1SpecialPalette20, kTypeRawData, false },
- { k1SpecialPalette21, kTypeRawData, false },
- { k1SpecialPalette22, kTypeRawData, false },
- { k1SpecialPalette23, kTypeRawData, false },
- { k1SpecialPalette24, kTypeRawData, false },
- { k1SpecialPalette25, kTypeRawData, false },
- { k1SpecialPalette26, kTypeRawData, false },
- { k1SpecialPalette27, kTypeRawData, false },
- { k1SpecialPalette28, kTypeRawData, false },
- { k1SpecialPalette29, kTypeRawData, false },
- { k1SpecialPalette30, kTypeRawData, false },
- { k1SpecialPalette31, kTypeRawData, false },
- { k1SpecialPalette32, kTypeRawData, false },
- { k1SpecialPalette33, kTypeRawData, false },
+ { k1SpecialPalette1, kRawData, false },
+ { k1SpecialPalette2, kRawData, false },
+ { k1SpecialPalette3, kRawData, false },
+ { k1SpecialPalette4, kRawData, false },
+ { k1SpecialPalette5, kRawData, false },
+ { k1SpecialPalette6, kRawData, false },
+ { k1SpecialPalette7, kRawData, false },
+ { k1SpecialPalette8, kRawData, false },
+ { k1SpecialPalette9, kRawData, false },
+ { k1SpecialPalette10, kRawData, false },
+ { k1SpecialPalette11, kRawData, false },
+ { k1SpecialPalette12, kRawData, false },
+ { k1SpecialPalette13, kRawData, false },
+ { k1SpecialPalette14, kRawData, false },
+ { k1SpecialPalette15, kRawData, false },
+ { k1SpecialPalette16, kRawData, false },
+ { k1SpecialPalette17, kRawData, false },
+ { k1SpecialPalette18, kRawData, false },
+ { k1SpecialPalette19, kRawData, false },
+ { k1SpecialPalette20, kRawData, false },
+ { k1SpecialPalette21, kRawData, false },
+ { k1SpecialPalette22, kRawData, false },
+ { k1SpecialPalette23, kRawData, false },
+ { k1SpecialPalette24, kRawData, false },
+ { k1SpecialPalette25, kRawData, false },
+ { k1SpecialPalette26, kRawData, false },
+ { k1SpecialPalette27, kRawData, false },
+ { k1SpecialPalette28, kRawData, false },
+ { k1SpecialPalette29, kRawData, false },
+ { k1SpecialPalette30, kRawData, false },
+ { k1SpecialPalette31, kRawData, false },
+ { k1SpecialPalette32, kRawData, false },
+ { k1SpecialPalette33, kRawData, false },
// CREDITS (used in FM-TOWNS and AMIGA)
- { k1CreditsStrings, kTypeRawData, true },
+ { k1CreditsStrings, kRawData, true },
// FM-TOWNS specific
- { k1TownsMusicFadeTable, k3TypeRaw16to8, false },
- { k1TownsSFXwdTable, kTypeTownsWDSfxTable, false },
- { k1TownsSFXbtTable, kTypeRawData, false },
- { k1TownsCDATable, kTypeRawData, false },
+ { k1TownsMusicFadeTable, kRawData, false },
+ { k1TownsSFXwdTable, kRawData, false },
+ { k1TownsSFXbtTable, kRawData, false },
+ { k1TownsCDATable, kRawData, false },
// PC98 specific
- { k1PC98StoryStrings, kTypeStringList, true },
- { k1PC98IntroSfx, kTypeRawData, false },
+ { k1PC98StoryStrings, kStringList, true },
+ { k1PC98IntroSfx, kRawData, false },
// AMIGA specific
- { k1AmigaIntroSFXTable, kTypeAmigaSfxTable, false },
- { k1AmigaGameSFXTable, kTypeAmigaSfxTable, false },
+ { k1AmigaIntroSFXTable, kAmigaSfxTable, false },
+ { k1AmigaGameSFXTable, kAmigaSfxTable, false },
// HAND OF FATE
// Sequence Player
- { k2SeqplayPakFiles, kTypeStringList, false },
- { k2SeqplayCredits, kTypeRawData, false },
- { k2SeqplayCreditsSpecial, kTypeStringList, false },
- { k2SeqplayStrings, kTypeStringList, true },
- { k2SeqplaySfxFiles, k2TypeSoundList, false },
- { k2SeqplayTlkFiles, k2TypeLangSoundList, true },
- { k2SeqplaySeqData, k2TypeSeqData, false },
- { k2SeqplayIntroTracks, kTypeStringList, false },
- { k2SeqplayFinaleTracks, kTypeStringList, false },
- { k2SeqplayIntroCDA, kTypeRawData, false },
- { k2SeqplayFinaleCDA, kTypeRawData, false },
- { k2SeqplayShapeAnimData, k2TypeShpDataV1, false },
+ { k2SeqplayPakFiles, kStringList, false },
+ { k2SeqplayCredits, kRawData, false },
+ { k2SeqplayCreditsSpecial, kStringList, false },
+ { k2SeqplayStrings, kStringList, true },
+ { k2SeqplaySfxFiles, kStringList, false },
+ { k2SeqplayTlkFiles, kStringList, true },
+ { k2SeqplaySeqData, k2SeqData, false },
+ { k2SeqplayIntroTracks, kStringList, false },
+ { k2SeqplayFinaleTracks, kStringList, false },
+ { k2SeqplayIntroCDA, kRawData, false },
+ { k2SeqplayFinaleCDA, kRawData, false },
+ { k2SeqplayShapeAnimData, k2SeqItemAnimData, false },
// Ingame
- { k2IngamePakFiles, kTypeStringList, false },
- { k2IngameSfxFiles, k2TypeSize10StringList, false },
- { k2IngameSfxIndex, kTypeRawData, false },
- { k2IngameTracks, kTypeStringList, false },
- { k2IngameCDA, kTypeRawData, false },
- { k2IngameTalkObjIndex, kTypeRawData, false },
- { k2IngameTimJpStrings, kTypeStringList, false },
- { k2IngameShapeAnimData, k2TypeShpDataV2, false },
- { k2IngameTlkDemoStrings, kTypeStringList, true },
+ { k2IngamePakFiles, kStringList, false },
+ { k2IngameSfxFiles, kStringList, false },
+ { k2IngameSfxIndex, kRawData, false },
+ { k2IngameTracks, kStringList, false },
+ { k2IngameCDA, kRawData, false },
+ { k2IngameTalkObjIndex, kRawData, false },
+ { k2IngameTimJpStrings, kStringList, false },
+ { k2IngameShapeAnimData, k2ItemAnimDefinition, false },
+ { k2IngameTlkDemoStrings, kStringList, true },
// MALCOLM'S REVENGE
- { k3MainMenuStrings, kTypeStringList, false },
- { k3MusicFiles, k2TypeSoundList, false },
- { k3ScoreTable, kTypeRawData, false },
- { k3SfxFiles, k2TypeSfxList, false },
- { k3SfxMap, k3TypeRaw16to8, false },
- { k3ItemAnimData, k3TypeShpData, false },
- { k3ItemMagicTable, k3TypeRaw16to8, false },
- { k3ItemStringMap, kTypeRawData, false },
+ { k3MainMenuStrings, kStringList, false },
+ { k3MusicFiles, kStringList, false },
+ { k3ScoreTable, kRawData, false },
+ { k3SfxFiles, kStringList, false },
+ { k3SfxMap, kRawData, false },
+ { k3ItemAnimData, k2ItemAnimDefinition, false },
+ { k3ItemMagicTable, kRawData, false },
+ { k3ItemStringMap, kRawData, false },
// EYE OF THE BEHOLDER COMMON
- { kEoBBaseChargenStrings1, kTypeStringList, true },
- { kEoBBaseChargenStrings2, kTypeStringList, true },
- { kEoBBaseChargenStartLevels, kTypeRawData, false },
- { kEoBBaseChargenStatStrings, kTypeStringList, true},
- { kEoBBaseChargenRaceSexStrings, kTypeStringList, true },
- { kEoBBaseChargenClassStrings, kTypeStringList, true },
- { kEoBBaseChargenAlignmentStrings, kTypeStringList, true },
- { kEoBBaseChargenEnterGameStrings, kTypeStringList, true },
- { kEoBBaseChargenClassMinStats, k3TypeRaw16to8, false },
- { kEoBBaseChargenRaceMinStats, k3TypeRaw16to8, false },
- { kEoBBaseChargenRaceMaxStats, kLoLTypeRaw16, false },
-
- { kEoBBaseSaveThrowTable1, kTypeRawData, false },
- { kEoBBaseSaveThrowTable2, kTypeRawData, false },
- { kEoBBaseSaveThrowTable3, kTypeRawData, false },
- { kEoBBaseSaveThrowTable4, kTypeRawData, false },
- { kEoBBaseSaveThrwLvlIndex, kTypeRawData, false },
- { kEoBBaseSaveThrwModDiv, kTypeRawData, false },
- { kEoBBaseSaveThrwModExt, kTypeRawData, false },
-
- { kEoBBasePryDoorStrings, kTypeStringList, true },
- { kEoBBaseWarningStrings, kTypeStringList, true },
-
- { kEoBBaseItemSuffixStringsRings, kTypeStringList, true },
- { kEoBBaseItemSuffixStringsPotions, kTypeStringList, true },
- { kEoBBaseItemSuffixStringsWands, kTypeStringList, true },
-
- { kEoBBaseRipItemStrings, kTypeStringList, true },
- { kEoBBaseCursedString, kTypeStringList, true },
- { kEoBBaseEnchantedString, kTypeStringList, false },
- { kEoBBaseMagicObjectStrings, kTypeStringList, true },
- { kEoBBaseMagicObject5String, kTypeStringList, true },
- { kEoBBasePatternSuffix, kTypeStringList, true },
- { kEoBBasePatternGrFix1, kTypeStringList, true },
- { kEoBBasePatternGrFix2, kTypeStringList, true },
- { kEoBBaseValidateArmorString, kTypeStringList, true },
- { kEoBBaseValidateCursedString, kTypeStringList, true },
- { kEoBBaseValidateNoDropString, kTypeStringList, true },
- { kEoBBasePotionStrings, kTypeStringList, true },
- { kEoBBaseWandString, kTypeStringList, true },
- { kEoBBaseItemMisuseStrings, kTypeStringList, true },
-
- { kEoBBaseTakenStrings, kTypeStringList, true },
- { kEoBBasePotionEffectStrings, kTypeStringList, true },
-
- { kEoBBaseYesNoStrings, kTypeStringList, true },
- { kRpgCommonMoreStrings, kTypeStringList, true },
- { kEoBBaseNpcMaxStrings, kTypeStringList, true },
- { kEoBBaseOkStrings, kTypeStringList, true },
- { kEoBBaseNpcJoinStrings, kTypeStringList, true },
- { kEoBBaseCancelStrings, kTypeStringList, true },
- { kEoBBaseAbortStrings, kTypeStringList, true },
-
- { kEoBBaseMenuStringsMain, kTypeStringList, true },
- { kEoBBaseMenuStringsSaveLoad, kTypeStringList, true },
- { kEoBBaseMenuStringsOnOff, kTypeStringList, true },
- { kEoBBaseMenuStringsSpells, kTypeStringList, true },
- { kEoBBaseMenuStringsRest, kTypeStringList, true },
- { kEoBBaseMenuStringsDrop, kTypeStringList, true },
- { kEoBBaseMenuStringsExit, kTypeStringList, true },
- { kEoBBaseMenuStringsStarve, kTypeStringList, true },
- { kEoBBaseMenuStringsScribe, kTypeStringList, true },
- { kEoBBaseMenuStringsDrop2, kTypeStringList, true },
- { kEoBBaseMenuStringsHead, kTypeStringList, true },
- { kEoBBaseMenuStringsPoison, kTypeStringList, true },
- { kEoBBaseMenuStringsMgc, kTypeStringList, true },
- { kEoBBaseMenuStringsPrefs, kTypeStringList, true },
- { kEoBBaseMenuStringsRest2, kTypeStringList, true },
- { kEoBBaseMenuStringsRest3, kTypeStringList, true },
- { kEoBBaseMenuStringsRest4, kTypeStringList, true },
- { kEoBBaseMenuStringsDefeat, kTypeStringList, true },
- { kEoBBaseMenuStringsTransfer, kTypeStringList, true },
- { kEoBBaseMenuStringsSpec, kTypeStringList, true },
- { kEoBBaseMenuStringsSpellNo, kTypeStringList, false },
- { kEoBBaseMenuYesNoStrings, kTypeStringList, true },
-
- { kEoBBaseSpellLevelsMage, kTypeRawData, false },
- { kEoBBaseSpellLevelsCleric, kTypeRawData, false },
- { kEoBBaseNumSpellsCleric, kTypeRawData, false },
- { kEoBBaseNumSpellsWisAdj, kTypeRawData, false },
- { kEoBBaseNumSpellsPal, kTypeRawData, false },
- { kEoBBaseNumSpellsMage, kTypeRawData, false },
-
- { kEoBBaseCharGuiStringsHp, kTypeStringList, true },
- { kEoBBaseCharGuiStringsWp1, kTypeStringList, true },
- { kEoBBaseCharGuiStringsWp2, kTypeStringList, true },
- { kEoBBaseCharGuiStringsWr, kTypeStringList, true },
- { kEoBBaseCharGuiStringsSt1, kTypeStringList, true },
- { kEoBBaseCharGuiStringsSt2, kTypeStringList, true },
- { kEoBBaseCharGuiStringsIn, kTypeStringList, true },
-
- { kEoBBaseCharStatusStrings7, kTypeStringList, true },
- { kEoBBaseCharStatusStrings81, kTypeStringList, true },
- { kEoBBaseCharStatusStrings82, kTypeStringList, true },
- { kEoBBaseCharStatusStrings9, kTypeStringList, true },
- { kEoBBaseCharStatusStrings12, kTypeStringList, true },
- { kEoBBaseCharStatusStrings131, kTypeStringList, true },
- { kEoBBaseCharStatusStrings132, kTypeStringList, true },
-
- { kEoBBaseLevelGainStrings, kTypeStringList, true },
- { kEoBBaseExperienceTable0, kLoLTypeRaw32, false },
- { kEoBBaseExperienceTable1, kLoLTypeRaw32, false },
- { kEoBBaseExperienceTable2, kLoLTypeRaw32, false },
- { kEoBBaseExperienceTable3, kLoLTypeRaw32, false },
- { kEoBBaseExperienceTable4, kLoLTypeRaw32, false },
-
- { kEoBBaseWllFlagPreset, kTypeRawData, false },
- { kEoBBaseDscShapeCoords, kLoLTypeRaw16, false },
- { kEoBBaseDscDoorScaleOffs, kTypeRawData, false },
- { kEoBBaseDscDoorScaleMult1, kTypeRawData, false },
- { kEoBBaseDscDoorScaleMult2, kTypeRawData, false },
- { kEoBBaseDscDoorScaleMult3, kTypeRawData, false },
- { kEoBBaseDscDoorScaleMult4, kTypeRawData, false },
- { kEoBBaseDscDoorScaleMult5, kTypeRawData, false },
- { kEoBBaseDscDoorScaleMult6, kTypeRawData, false },
- { kEoBBaseDscDoorType5Offs, kTypeRawData, false },
- { kEoBBaseDscDoorXE, kTypeRawData, false },
- { kEoBBaseDscDoorY1, kTypeRawData, false },
- { kEoBBaseDscDoorY3, kTypeRawData, false },
- { kEoBBaseDscDoorY4, kTypeRawData, false },
- { kEoBBaseDscDoorY5, kTypeRawData, false },
- { kEoBBaseDscDoorY6, kTypeRawData, false },
- { kEoBBaseDscDoorY7, kTypeRawData, false },
- { kEoBBaseDscDoorCoordsExt, kLoLTypeRaw16, false },
-
- { kEoBBaseDscItemPosIndex, kTypeRawData, false },
- { kEoBBaseDscItemShpX, kLoLTypeRaw16, false },
- { kEoBBaseDscItemPosUnk, kTypeRawData, false },
- { kEoBBaseDscItemTileIndex, kTypeRawData, false },
- { kEoBBaseDscItemShapeMap, kTypeRawData, false },
- { kEoBBaseDscTelptrShpCoords, kTypeRawData, false },
-
- { kEoBBasePortalSeqData, kTypeRawData, false },
- { kEoBBaseManDef, kTypeRawData, true },
- { kEoBBaseManWord, kTypeStringList, true },
- { kEoBBaseManPrompt, kTypeStringList, true },
-
- { kEoBBaseDscMonsterFrmOffsTbl1, kTypeRawData, false },
- { kEoBBaseDscMonsterFrmOffsTbl2, kTypeRawData, false },
-
- { kEoBBaseInvSlotX, kLoLTypeRaw16, false },
- { kEoBBaseInvSlotY, kTypeRawData, false },
- { kEoBBaseSlotValidationFlags, kLoLTypeRaw16, false },
-
- { kEoBBaseProjectileWeaponTypes, kTypeRawData, false },
- { kEoBBaseWandTypes, kTypeRawData, false },
-
- { kEoBBaseDrawObjPosIndex, kTypeRawData, false },
- { kEoBBaseFlightObjFlipIndex, kTypeRawData, false },
- { kEoBBaseFlightObjShpMap, kTypeRawData, false },
- { kEoBBaseFlightObjSclIndex, kTypeRawData, false },
-
- { kEoBBaseBookNumbers, kTypeStringList, true },
- { kEoBBaseMageSpellsList, kTypeStringList, true },
- { kEoBBaseClericSpellsList, kTypeStringList, true },
- { kEoBBaseSpellNames, kTypeStringList, true },
-
- { kEoBBaseMagicStrings1, kTypeStringList, true },
- { kEoBBaseMagicStrings2, kTypeStringList, true },
- { kEoBBaseMagicStrings3, kTypeStringList, true },
- { kEoBBaseMagicStrings4, kTypeStringList, true },
- { kEoBBaseMagicStrings6, kTypeStringList, true },
- { kEoBBaseMagicStrings7, kTypeStringList, true },
- { kEoBBaseMagicStrings8, kTypeStringList, true },
-
- { kEoBBaseExpObjectTlMode, kTypeRawData, false },
- { kEoBBaseExpObjectTblIndex, kTypeRawData, false },
- { kEoBBaseExpObjectShpStart, kTypeRawData, false },
- { kEoBBaseExpObjectTbl1, kTypeRawData, false },
- { kEoBBaseExpObjectTbl2, kTypeRawData, false },
- { kEoBBaseExpObjectTbl3, kTypeRawData, false },
- { kEoBBaseExpObjectY, k3TypeRaw16to8, false },
-
- { kEoBBaseSparkDefSteps, kTypeRawData, false },
- { kEoBBaseSparkDefSubSteps, kTypeRawData, false },
- { kEoBBaseSparkDefShift, kTypeRawData, false },
- { kEoBBaseSparkDefAdd, kTypeRawData, false },
- { kEoBBaseSparkDefX, k3TypeRaw16to8, false },
- { kEoBBaseSparkDefY, kTypeRawData, false },
- { kEoBBaseSparkOfFlags1, kLoLTypeRaw32, false },
- { kEoBBaseSparkOfFlags2, kLoLTypeRaw32, false },
- { kEoBBaseSparkOfShift, kTypeRawData, false },
- { kEoBBaseSparkOfX, kTypeRawData, false },
- { kEoBBaseSparkOfY, kTypeRawData, false },
- { kEoBBaseSpellProperties, kTypeRawData, false },
- { kEoBBaseMagicFlightProps, kTypeRawData, false },
- { kEoBBaseTurnUndeadEffect, kTypeRawData, false },
- { kEoBBaseBurningHandsDest, kTypeRawData, false },
- { kEoBBaseConeOfColdDest1, kTypeRawData, false },
- { kEoBBaseConeOfColdDest2, kTypeRawData, false },
- { kEoBBaseConeOfColdDest3, kTypeRawData, false },
- { kEoBBaseConeOfColdDest4, kTypeRawData, false },
- { kEoBBaseConeOfColdGfxTbl, k3TypeRaw16to8, false },
+ { kEoBBaseChargenStrings1, kStringList, true },
+ { kEoBBaseChargenStrings2, kStringList, true },
+ { kEoBBaseChargenStartLevels, kRawData, false },
+ { kEoBBaseChargenStatStrings, kStringList, true},
+ { kEoBBaseChargenRaceSexStrings, kStringList, true },
+ { kEoBBaseChargenClassStrings, kStringList, true },
+ { kEoBBaseChargenAlignmentStrings, kStringList, true },
+ { kEoBBaseChargenEnterGameStrings, kStringList, true },
+ { kEoBBaseChargenClassMinStats, kRawData, false },
+ { kEoBBaseChargenRaceMinStats, kRawData, false },
+ { kEoBBaseChargenRaceMaxStats, kRawDataBe16, false },
+
+ { kEoBBaseSaveThrowTable1, kRawData, false },
+ { kEoBBaseSaveThrowTable2, kRawData, false },
+ { kEoBBaseSaveThrowTable3, kRawData, false },
+ { kEoBBaseSaveThrowTable4, kRawData, false },
+ { kEoBBaseSaveThrwLvlIndex, kRawData, false },
+ { kEoBBaseSaveThrwModDiv, kRawData, false },
+ { kEoBBaseSaveThrwModExt, kRawData, false },
+
+ { kEoBBasePryDoorStrings, kStringList, true },
+ { kEoBBaseWarningStrings, kStringList, true },
+
+ { kEoBBaseItemSuffixStringsRings, kStringList, true },
+ { kEoBBaseItemSuffixStringsPotions, kStringList, true },
+ { kEoBBaseItemSuffixStringsWands, kStringList, true },
+
+ { kEoBBaseRipItemStrings, kStringList, true },
+ { kEoBBaseCursedString, kStringList, true },
+ { kEoBBaseEnchantedString, kStringList, false },
+ { kEoBBaseMagicObjectStrings, kStringList, true },
+ { kEoBBaseMagicObjectString5, kStringList, true },
+ { kEoBBasePatternSuffix, kStringList, true },
+ { kEoBBasePatternGrFix1, kStringList, true },
+ { kEoBBasePatternGrFix2, kStringList, true },
+ { kEoBBaseValidateArmorString, kStringList, true },
+ { kEoBBaseValidateCursedString, kStringList, true },
+ { kEoBBaseValidateNoDropString, kStringList, true },
+ { kEoBBasePotionStrings, kStringList, true },
+ { kEoBBaseWandStrings, kStringList, true },
+ { kEoBBaseItemMisuseStrings, kStringList, true },
+
+ { kEoBBaseTakenStrings, kStringList, true },
+ { kEoBBasePotionEffectStrings, kStringList, true },
+
+ { kEoBBaseYesNoStrings, kStringList, true },
+ { kRpgCommonMoreStrings, kStringList, true },
+ { kEoBBaseNpcMaxStrings, kStringList, true },
+ { kEoBBaseOkStrings, kStringList, true },
+ { kEoBBaseNpcJoinStrings, kStringList, true },
+ { kEoBBaseCancelStrings, kStringList, true },
+ { kEoBBaseAbortStrings, kStringList, true },
+
+ { kEoBBaseMenuStringsMain, kStringList, true },
+ { kEoBBaseMenuStringsSaveLoad, kStringList, true },
+ { kEoBBaseMenuStringsOnOff, kStringList, true },
+ { kEoBBaseMenuStringsSpells, kStringList, true },
+ { kEoBBaseMenuStringsRest, kStringList, true },
+ { kEoBBaseMenuStringsDrop, kStringList, true },
+ { kEoBBaseMenuStringsExit, kStringList, true },
+ { kEoBBaseMenuStringsStarve, kStringList, true },
+ { kEoBBaseMenuStringsScribe, kStringList, true },
+ { kEoBBaseMenuStringsDrop2, kStringList, true },
+ { kEoBBaseMenuStringsHead, kStringList, true },
+ { kEoBBaseMenuStringsPoison, kStringList, true },
+ { kEoBBaseMenuStringsMgc, kStringList, true },
+ { kEoBBaseMenuStringsPrefs, kStringList, true },
+ { kEoBBaseMenuStringsRest2, kStringList, true },
+ { kEoBBaseMenuStringsRest3, kStringList, true },
+ { kEoBBaseMenuStringsRest4, kStringList, true },
+ { kEoBBaseMenuStringsDefeat, kStringList, true },
+ { kEoBBaseMenuStringsTransfer, kStringList, true },
+ { kEoBBaseMenuStringsSpec, kStringList, true },
+ { kEoBBaseMenuStringsSpellNo, kStringList, false },
+ { kEoBBaseMenuYesNoStrings, kStringList, true },
+
+ { kEoBBaseSpellLevelsMage, kRawData, false },
+ { kEoBBaseSpellLevelsCleric, kRawData, false },
+ { kEoBBaseNumSpellsCleric, kRawData, false },
+ { kEoBBaseNumSpellsWisAdj, kRawData, false },
+ { kEoBBaseNumSpellsPal, kRawData, false },
+ { kEoBBaseNumSpellsMage, kRawData, false },
+
+ { kEoBBaseCharGuiStringsHp, kStringList, true },
+ { kEoBBaseCharGuiStringsWp1, kStringList, true },
+ { kEoBBaseCharGuiStringsWp2, kStringList, true },
+ { kEoBBaseCharGuiStringsWr, kStringList, true },
+ { kEoBBaseCharGuiStringsSt1, kStringList, true },
+ { kEoBBaseCharGuiStringsSt2, kStringList, true },
+ { kEoBBaseCharGuiStringsIn, kStringList, true },
+
+ { kEoBBaseCharStatusStrings7, kStringList, true },
+ { kEoBBaseCharStatusStrings81, kStringList, true },
+ { kEoBBaseCharStatusStrings82, kStringList, true },
+ { kEoBBaseCharStatusStrings9, kStringList, true },
+ { kEoBBaseCharStatusStrings12, kStringList, true },
+ { kEoBBaseCharStatusStrings131, kStringList, true },
+ { kEoBBaseCharStatusStrings132, kStringList, true },
+
+ { kEoBBaseLevelGainStrings, kStringList, true },
+ { kEoBBaseExperienceTable0, kRawDataBe32, false },
+ { kEoBBaseExperienceTable1, kRawDataBe32, false },
+ { kEoBBaseExperienceTable2, kRawDataBe32, false },
+ { kEoBBaseExperienceTable3, kRawDataBe32, false },
+ { kEoBBaseExperienceTable4, kRawDataBe32, false },
+
+ { kEoBBaseWllFlagPreset, kRawData, false },
+ { kEoBBaseDscShapeCoords, kRawDataBe16, false },
+ { kEoBBaseDscDoorScaleOffs, kRawData, false },
+ { kEoBBaseDscDoorScaleMult1, kRawData, false },
+ { kEoBBaseDscDoorScaleMult2, kRawData, false },
+ { kEoBBaseDscDoorScaleMult3, kRawData, false },
+ { kEoBBaseDscDoorScaleMult4, kRawData, false },
+ { kEoBBaseDscDoorScaleMult5, kRawData, false },
+ { kEoBBaseDscDoorScaleMult6, kRawData, false },
+ { kEoBBaseDscDoorType5Offs, kRawData, false },
+ { kEoBBaseDscDoorXE, kRawData, false },
+ { kEoBBaseDscDoorY1, kRawData, false },
+ { kEoBBaseDscDoorY3, kRawData, false },
+ { kEoBBaseDscDoorY4, kRawData, false },
+ { kEoBBaseDscDoorY5, kRawData, false },
+ { kEoBBaseDscDoorY6, kRawData, false },
+ { kEoBBaseDscDoorY7, kRawData, false },
+ { kEoBBaseDscDoorCoordsExt, kRawDataBe16, false },
+
+ { kEoBBaseDscItemPosIndex, kRawData, false },
+ { kEoBBaseDscItemShpX, kRawDataBe16, false },
+ { kEoBBaseDscItemScaleIndex, kRawData, false },
+ { kEoBBaseDscItemTileIndex, kRawData, false },
+ { kEoBBaseDscItemShapeMap, kRawData, false },
+ { kEoBBaseDscTelptrShpCoords, kRawData, false },
+
+ { kEoBBasePortalSeqData, kRawData, false },
+ { kEoBBaseManDef, kRawData, true },
+ { kEoBBaseManWord, kStringList, true },
+ { kEoBBaseManPrompt, kStringList, true },
+
+ { kEoBBaseDscMonsterFrmOffsTbl1, kRawData, false },
+ { kEoBBaseDscMonsterFrmOffsTbl2, kRawData, false },
+
+ { kEoBBaseInvSlotX, kRawDataBe16, false },
+ { kEoBBaseInvSlotY, kRawData, false },
+ { kEoBBaseSlotValidationFlags, kRawDataBe16, false },
+
+ { kEoBBaseProjectileWeaponTypes, kRawData, false },
+ { kEoBBaseWandTypes, kRawData, false },
+
+ { kEoBBaseDrawObjPosIndex, kRawData, false },
+ { kEoBBaseFlightObjFlipIndex, kRawData, false },
+ { kEoBBaseFlightObjShpMap, kRawData, false },
+ { kEoBBaseFlightObjSclIndex, kRawData, false },
+
+ { kEoBBaseBookNumbers, kStringList, true },
+ { kEoBBaseMageSpellsList, kStringList, true },
+ { kEoBBaseClericSpellsList, kStringList, true },
+ { kEoBBaseSpellNames, kStringList, true },
+
+ { kEoBBaseMagicStrings1, kStringList, true },
+ { kEoBBaseMagicStrings2, kStringList, true },
+ { kEoBBaseMagicStrings3, kStringList, true },
+ { kEoBBaseMagicStrings4, kStringList, true },
+ { kEoBBaseMagicStrings6, kStringList, true },
+ { kEoBBaseMagicStrings7, kStringList, true },
+ { kEoBBaseMagicStrings8, kStringList, true },
+
+ { kEoBBaseExpObjectTlMode, kRawData, false },
+ { kEoBBaseExpObjectTblIndex, kRawData, false },
+ { kEoBBaseExpObjectShpStart, kRawData, false },
+ { kEoBBaseExpObjectTbl1, kRawData, false },
+ { kEoBBaseExpObjectTbl2, kRawData, false },
+ { kEoBBaseExpObjectTbl3, kRawData, false },
+ { kEoBBaseExpObjectY, kRawData, false },
+
+ { kEoBBaseSparkDefSteps, kRawData, false },
+ { kEoBBaseSparkDefSubSteps, kRawData, false },
+ { kEoBBaseSparkDefShift, kRawData, false },
+ { kEoBBaseSparkDefAdd, kRawData, false },
+ { kEoBBaseSparkDefX, kRawData, false },
+ { kEoBBaseSparkDefY, kRawData, false },
+ { kEoBBaseSparkOfFlags1, kRawDataBe32, false },
+ { kEoBBaseSparkOfFlags2, kRawDataBe32, false },
+ { kEoBBaseSparkOfShift, kRawData, false },
+ { kEoBBaseSparkOfX, kRawData, false },
+ { kEoBBaseSparkOfY, kRawData, false },
+ { kEoBBaseSpellProperties, kRawData, false },
+ { kEoBBaseMagicFlightProps, kRawData, false },
+ { kEoBBaseTurnUndeadEffect, kRawData, false },
+ { kEoBBaseBurningHandsDest, kRawData, false },
+ { kEoBBaseConeOfColdDest1, kRawData, false },
+ { kEoBBaseConeOfColdDest2, kRawData, false },
+ { kEoBBaseConeOfColdDest3, kRawData, false },
+ { kEoBBaseConeOfColdDest4, kRawData, false },
+ { kEoBBaseConeOfColdGfxTbl, kRawData, false },
// EYE OF THE BEHOLDER I
- { kEoB1MainMenuStrings, kTypeStringList, true },
- { kEoB1BonusStrings, kTypeStringList, true },
-
- { kEoB1IntroFilesOpening, kTypeStringList, false },
- { kEoB1IntroFilesTower, kTypeStringList, false },
- { kEoB1IntroFilesOrb, kTypeStringList, false },
- { kEoB1IntroFilesWdEntry, kTypeStringList, false },
- { kEoB1IntroFilesKing, kTypeStringList, false },
- { kEoB1IntroFilesHands, kTypeStringList, false },
- { kEoB1IntroFilesWdExit, kTypeStringList, false },
- { kEoB1IntroFilesTunnel, kTypeStringList, false },
- { kEoB1IntroOpeningFrmDelay, k3TypeRaw16to8, false },
- { kEoB1IntroWdEncodeX, kTypeRawData, false },
- { kEoB1IntroWdEncodeY, kTypeRawData, false },
- { kEoB1IntroWdEncodeWH, kTypeRawData, false },
- { kEoB1IntroWdDsX, kLoLTypeRaw16, false },
- { kEoB1IntroWdDsY, kTypeRawData, false },
- { kEoB1IntroTvlX1, kTypeRawData, false },
- { kEoB1IntroTvlY1, kTypeRawData, false },
- { kEoB1IntroTvlX2, kTypeRawData, false },
- { kEoB1IntroTvlY2, kTypeRawData, false },
- { kEoB1IntroTvlW, kTypeRawData, false },
- { kEoB1IntroTvlH, kTypeRawData, false },
-
- { kEoB1DoorShapeDefs, kTypeRawData, false },
- { kEoB1DoorSwitchShapeDefs, kTypeRawData, false },
- { kEoB1DoorSwitchCoords, kTypeRawData, false },
- { kEoB1MonsterProperties, kTypeRawData, false },
- { kEoB1EnemyMageSpellList, kTypeRawData, false },
- { kEoB1EnemyMageSfx, kTypeRawData, false },
- { kEoB1BeholderSpellList, kTypeRawData, false },
- { kEoB1BeholderSfx, kTypeRawData, false },
- { kEoB1TurnUndeadString, kTypeStringList, true },
-
- { kEoB1CgaMappingDefault, kTypeRawData, false },
- { kEoB1CgaMappingAlt, kTypeRawData, false },
- { kEoB1CgaMappingInv, kTypeRawData, false },
- { kEoB1CgaMappingItemsL, kTypeRawData, false },
- { kEoB1CgaMappingItemsS, kTypeRawData, false },
- { kEoB1CgaMappingThrown, kTypeRawData, false },
- { kEoB1CgaMappingIcons, kTypeRawData, false },
- { kEoB1CgaMappingDeco, kTypeRawData, false },
- { kEoB1CgaLevelMappingIndex, kTypeRawData, false },
- { kEoB1CgaMappingLevel0, kTypeRawData, false },
- { kEoB1CgaMappingLevel1, kTypeRawData, false },
- { kEoB1CgaMappingLevel2, kTypeRawData, false },
- { kEoB1CgaMappingLevel3, kTypeRawData, false },
- { kEoB1CgaMappingLevel4, kTypeRawData, false },
-
- { kEoB1NpcShpData, kTypeRawData, false },
- { kEoB1NpcSubShpIndex1, kTypeRawData, false },
- { kEoB1NpcSubShpIndex2, kTypeRawData, false },
- { kEoB1NpcSubShpY, kTypeRawData, false },
- { kEoB1Npc0Strings, kTypeStringList, true },
- { kEoB1Npc11Strings, kTypeStringList, true },
- { kEoB1Npc12Strings, kTypeStringList, true },
- { kEoB1Npc21Strings, kTypeStringList, true },
- { kEoB1Npc22Strings, kTypeStringList, true },
- { kEoB1Npc31Strings, kTypeStringList, true },
- { kEoB1Npc32Strings, kTypeStringList, true },
- { kEoB1Npc4Strings, kTypeStringList, true },
- { kEoB1Npc5Strings, kTypeStringList, true },
- { kEoB1Npc6Strings, kTypeStringList, true },
- { kEoB1Npc7Strings, kTypeStringList, true },
+ { kEoB1MainMenuStrings, kStringList, true },
+ { kEoB1BonusStrings, kStringList, true },
+
+ { kEoB1IntroFilesOpening, kStringList, false },
+ { kEoB1IntroFilesTower, kStringList, false },
+ { kEoB1IntroFilesOrb, kStringList, false },
+ { kEoB1IntroFilesWdEntry, kStringList, false },
+ { kEoB1IntroFilesKing, kStringList, false },
+ { kEoB1IntroFilesHands, kStringList, false },
+ { kEoB1IntroFilesWdExit, kStringList, false },
+ { kEoB1IntroFilesTunnel, kStringList, false },
+ { kEoB1IntroOpeningFrmDelay, kRawData, false },
+ { kEoB1IntroWdEncodeX, kRawData, false },
+ { kEoB1IntroWdEncodeY, kRawData, false },
+ { kEoB1IntroWdEncodeWH, kRawData, false },
+ { kEoB1IntroWdDsX, kRawDataBe16, false },
+ { kEoB1IntroWdDsY, kRawData, false },
+ { kEoB1IntroTvlX1, kRawData, false },
+ { kEoB1IntroTvlY1, kRawData, false },
+ { kEoB1IntroTvlX2, kRawData, false },
+ { kEoB1IntroTvlY2, kRawData, false },
+ { kEoB1IntroTvlW, kRawData, false },
+ { kEoB1IntroTvlH, kRawData, false },
+
+ { kEoB1DoorShapeDefs, kRawData, false },
+ { kEoB1DoorSwitchShapeDefs, kRawData, false },
+ { kEoB1DoorSwitchCoords, kRawData, false },
+ { kEoB1MonsterProperties, kRawData, false },
+ { kEoB1EnemyMageSpellList, kRawData, false },
+ { kEoB1EnemyMageSfx, kRawData, false },
+ { kEoB1BeholderSpellList, kRawData, false },
+ { kEoB1BeholderSfx, kRawData, false },
+ { kEoB1TurnUndeadString, kStringList, true },
+
+ { kEoB1CgaMappingDefault, kRawData, false },
+ { kEoB1CgaMappingAlt, kRawData, false },
+ { kEoB1CgaMappingInv, kRawData, false },
+ { kEoB1CgaMappingItemsL, kRawData, false },
+ { kEoB1CgaMappingItemsS, kRawData, false },
+ { kEoB1CgaMappingThrown, kRawData, false },
+ { kEoB1CgaMappingIcons, kRawData, false },
+ { kEoB1CgaMappingDeco, kRawData, false },
+ { kEoB1CgaLevelMappingIndex, kRawData, false },
+ { kEoB1CgaMappingLevel0, kRawData, false },
+ { kEoB1CgaMappingLevel1, kRawData, false },
+ { kEoB1CgaMappingLevel2, kRawData, false },
+ { kEoB1CgaMappingLevel3, kRawData, false },
+ { kEoB1CgaMappingLevel4, kRawData, false },
+
+ { kEoB1NpcShpData, kRawData, false },
+ { kEoB1NpcSubShpIndex1, kRawData, false },
+ { kEoB1NpcSubShpIndex2, kRawData, false },
+ { kEoB1NpcSubShpY, kRawData, false },
+ { kEoB1Npc0Strings, kStringList, true },
+ { kEoB1Npc11Strings, kStringList, true },
+ { kEoB1Npc12Strings, kStringList, true },
+ { kEoB1Npc21Strings, kStringList, true },
+ { kEoB1Npc22Strings, kStringList, true },
+ { kEoB1Npc31Strings, kStringList, true },
+ { kEoB1Npc32Strings, kStringList, true },
+ { kEoB1Npc4Strings, kStringList, true },
+ { kEoB1Npc5Strings, kStringList, true },
+ { kEoB1Npc6Strings, kStringList, true },
+ { kEoB1Npc7Strings, kStringList, true },
// EYE OF THE BEHOLDER II
- { kEoB2MainMenuStrings, kTypeStringList, true },
-
- { kEoB2TransferPortraitFrames, kLoLTypeRaw16, false },
- { kEoB2TransferConvertTable, kTypeRawData, false },
- { kEoB2TransferItemTable, kTypeRawData, false },
- { kEoB2TransferExpTable, kLoLTypeRaw32, false },
- { kEoB2TransferStrings1, kTypeStringList, true },
- { kEoB2TransferStrings2, kTypeStringList, true },
- { kEoB2TransferLabels, kTypeStringList, true },
-
- { kEoB2IntroStrings, k2TypeSfxList, true },
- { kEoB2IntroCPSFiles, kTypeStringList, true },
- { kEob2IntroAnimData00, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData01, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData02, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData03, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData04, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData05, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData06, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData07, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData08, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData09, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData10, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData11, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData12, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData13, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData14, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData15, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData16, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData17, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData18, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData19, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData20, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData21, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData22, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData23, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData24, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData25, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData26, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData27, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData28, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData29, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData30, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData31, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData32, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData33, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData34, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData35, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData36, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData37, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData38, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData39, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData40, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData41, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData42, kEoB2TypeSeqData, false },
- { kEob2IntroAnimData43, kEoB2TypeSeqData, false },
- { kEoB2IntroShapes00, kEoB2TypeShapeData, false },
- { kEoB2IntroShapes01, kEoB2TypeShapeData, false },
- { kEoB2IntroShapes04, kEoB2TypeShapeData, false },
- { kEoB2IntroShapes07, kEoB2TypeShapeData, false },
-
- { kEoB2FinaleStrings, k2TypeSfxList, true },
- { kEoB2CreditsData, kTypeRawData, true },
- { kEoB2FinaleCPSFiles, kTypeStringList, true },
- { kEob2FinaleAnimData00, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData01, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData02, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData03, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData04, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData05, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData06, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData07, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData08, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData09, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData10, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData11, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData12, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData13, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData14, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData15, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData16, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData17, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData18, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData19, kEoB2TypeSeqData, false },
- { kEob2FinaleAnimData20, kEoB2TypeSeqData, false },
- { kEoB2FinaleShapes00, kEoB2TypeShapeData, false },
- { kEoB2FinaleShapes03, kEoB2TypeShapeData, false },
- { kEoB2FinaleShapes07, kEoB2TypeShapeData, false },
- { kEoB2FinaleShapes09, kEoB2TypeShapeData, false },
- { kEoB2FinaleShapes10, kEoB2TypeShapeData, false },
- { kEoB2NpcShapeData, kTypeRawData, false },
- { kEoBBaseClassModifierFlags, kTypeRawData, false },
- { kEoBBaseMonsterStepTable01, kTypeRawData, false },
- { kEoBBaseMonsterStepTable02, kTypeRawData, false },
- { kEoBBaseMonsterStepTable1, kTypeRawData, false },
- { kEoBBaseMonsterStepTable2, k3TypeRaw16to8, false },
- { kEoBBaseMonsterStepTable3, k3TypeRaw16to8, false },
- { kEoBBaseMonsterCloseAttPosTable1, kTypeRawData, false },
- { kEoBBaseMonsterCloseAttPosTable21, kTypeRawData, false },
- { kEoBBaseMonsterCloseAttPosTable22, kTypeRawData, false },
- { kEoBBaseMonsterCloseAttUnkTable, kTypeRawData, false },
- { kEoBBaseMonsterCloseAttChkTable1, kTypeRawData, false },
- { kEoBBaseMonsterCloseAttChkTable2, kTypeRawData, false },
- { kEoBBaseMonsterCloseAttDstTable1, kTypeRawData, false },
- { kEoBBaseMonsterCloseAttDstTable2, kTypeRawData, false },
- { kEoBBaseMonsterProximityTable, kTypeRawData, false },
- { kEoBBaseFindBlockMonstersTable, kTypeRawData, false },
- { kEoBBaseMonsterDirChangeTable, kTypeRawData, false },
- { kEoBBaseMonsterDistAttStrings, kTypeStringList, true },
- { kEoBBaseEncodeMonsterDefs, kLoLTypeRaw16, false },
- { kEoBBaseNpcPresets, kEoBTypeNpcData, false },
- { kEoB2Npc1Strings, kTypeStringList, true },
- { kEoB2Npc2Strings, kTypeStringList, true },
- { kEoB2MonsterDustStrings, kTypeStringList, true },
- { kEoB2DreamSteps, kTypeRawData, false },
- { kEoB2KheldranStrings, kTypeStringList, true },
- { kEoB2HornStrings, kTypeStringList, true },
- { kEoB2HornSounds, kTypeRawData, false },
- { kEoB2WallOfForceDsX, kLoLTypeRaw16, false },
- { kEoB2WallOfForceDsY, kTypeRawData, false },
- { kEoB2WallOfForceNumW, kTypeRawData, false },
- { kEoB2WallOfForceNumH, kTypeRawData, false },
- { kEoB2WallOfForceShpId, kTypeRawData, false },
+ { kEoB2MainMenuStrings, kStringList, true },
+
+ { kEoB2TransferPortraitFrames, kRawDataBe16, false },
+ { kEoB2TransferConvertTable, kRawData, false },
+ { kEoB2TransferItemTable, kRawData, false },
+ { kEoB2TransferExpTable, kRawDataBe32, false },
+ { kEoB2TransferStrings1, kStringList, true },
+ { kEoB2TransferStrings2, kStringList, true },
+ { kEoB2TransferLabels, kStringList, true },
+
+ { kEoB2IntroStrings, kStringList, true },
+ { kEoB2IntroCPSFiles, kStringList, true },
+ { kEoB2IntroAnimData00, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData01, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData02, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData03, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData04, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData05, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData06, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData07, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData08, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData09, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData10, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData11, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData12, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData13, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData14, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData15, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData16, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData17, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData18, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData19, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData20, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData21, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData22, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData23, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData24, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData25, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData26, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData27, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData28, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData29, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData30, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData31, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData32, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData33, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData34, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData35, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData36, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData37, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData38, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData39, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData40, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData41, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData42, kEoB2SequenceData, false },
+ { kEoB2IntroAnimData43, kEoB2SequenceData, false },
+ { kEoB2IntroShapes00, kEoB2ShapeData, false },
+ { kEoB2IntroShapes01, kEoB2ShapeData, false },
+ { kEoB2IntroShapes04, kEoB2ShapeData, false },
+ { kEoB2IntroShapes07, kEoB2ShapeData, false },
+
+ { kEoB2FinaleStrings, kStringList, true },
+ { kEoB2CreditsData, kRawData, true },
+ { kEoB2FinaleCPSFiles, kStringList, true },
+ { kEoB2FinaleAnimData00, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData01, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData02, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData03, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData04, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData05, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData06, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData07, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData08, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData09, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData10, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData11, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData12, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData13, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData14, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData15, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData16, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData17, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData18, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData19, kEoB2SequenceData, false },
+ { kEoB2FinaleAnimData20, kEoB2SequenceData, false },
+ { kEoB2FinaleShapes00, kEoB2ShapeData, false },
+ { kEoB2FinaleShapes03, kEoB2ShapeData, false },
+ { kEoB2FinaleShapes07, kEoB2ShapeData, false },
+ { kEoB2FinaleShapes09, kEoB2ShapeData, false },
+ { kEoB2FinaleShapes10, kEoB2ShapeData, false },
+ { kEoB2NpcShapeData, kRawData, false },
+ { kEoBBaseClassModifierFlags, kRawData, false },
+ { kEoBBaseMonsterStepTable01, kRawData, false },
+ { kEoBBaseMonsterStepTable02, kRawData, false },
+ { kEoBBaseMonsterStepTable1, kRawData, false },
+ { kEoBBaseMonsterStepTable2, kRawData, false },
+ { kEoBBaseMonsterStepTable3, kRawData, false },
+ { kEoBBaseMonsterCloseAttPosTable1, kRawData, false },
+ { kEoBBaseMonsterCloseAttPosTable21, kRawData, false },
+ { kEoBBaseMonsterCloseAttPosTable22, kRawData, false },
+ { kEoBBaseMonsterCloseAttUnkTable, kRawData, false },
+ { kEoBBaseMonsterCloseAttChkTable1, kRawData, false },
+ { kEoBBaseMonsterCloseAttChkTable2, kRawData, false },
+ { kEoBBaseMonsterCloseAttDstTable1, kRawData, false },
+ { kEoBBaseMonsterCloseAttDstTable2, kRawData, false },
+ { kEoBBaseMonsterProximityTable, kRawData, false },
+ { kEoBBaseFindBlockMonstersTable, kRawData, false },
+ { kEoBBaseMonsterDirChangeTable, kRawData, false },
+ { kEoBBaseMonsterDistAttStrings, kStringList, true },
+ { kEoBBaseEncodeMonsterDefs, kRawDataBe16, false },
+ { kEoBBaseNpcPresets, kEoBNpcData, false },
+ { kEoB2Npc1Strings, kStringList, true },
+ { kEoB2Npc2Strings, kStringList, true },
+ { kEoB2MonsterDustStrings, kStringList, true },
+ { kEoB2DreamSteps, kRawData, false },
+ { kEoB2KheldranStrings, kStringList, true },
+ { kEoB2HornStrings, kStringList, true },
+ { kEoB2HornSounds, kRawData, false },
+ { kEoB2WallOfForceDsX, kRawDataBe16, false },
+ { kEoB2WallOfForceDsY, kRawData, false },
+ { kEoB2WallOfForceNumW, kRawData, false },
+ { kEoB2WallOfForceNumH, kRawData, false },
+ { kEoB2WallOfForceShpId, kRawData, false },
// LANDS OF LORE
// Ingame
- { kLoLIngamePakFiles, k2TypeSfxList, false },
-
- { kLoLCharacterDefs, kLoLTypeCharData, true },
- { kLoLIngameSfxFiles, k2TypeSfxList, false },
- { kLoLIngameSfxIndex, kTypeRawData, false },
- { kLoLMusicTrackMap, kTypeRawData, false },
- { kLoLIngameGMSfxIndex, kTypeRawData, false },
- { kLoLIngameMT32SfxIndex, kTypeRawData, false },
- { kLoLIngamePcSpkSfxIndex, kTypeRawData, false },
- { kLoLSpellProperties, kLoLTypeSpellData, false },
- { kLoLGameShapeMap, kTypeRawData, false },
- { kLoLSceneItemOffs, kTypeRawData, false },
- { kLoLCharInvIndex, k3TypeRaw16to8, false },
- { kLoLCharInvDefs, kTypeRawData, false },
- { kLoLCharDefsMan, kLoLTypeRaw16, false },
- { kLoLCharDefsWoman, kLoLTypeRaw16, false },
- { kLoLCharDefsKieran, kLoLTypeRaw16, false },
- { kLoLCharDefsAkshel, kLoLTypeRaw16, false },
- { kLoLExpRequirements, kLoLTypeRaw32, false },
- { kLoLMonsterModifiers1, kLoLTypeRaw16, false },
- { kLoLMonsterModifiers2, kLoLTypeRaw16, false },
- { kLoLMonsterModifiers3, kLoLTypeRaw16, false },
- { kLoLMonsterModifiers4, kLoLTypeRaw16, false },
- { kLoLMonsterShiftOffsets, kTypeRawData, false },
- { kLoLMonsterDirFlags, kTypeRawData, false },
- { kLoLMonsterScaleY, kTypeRawData, false },
- { kLoLMonsterScaleX, kTypeRawData, false },
- { kLoLMonsterScaleWH, kLoLTypeRaw16, false },
- { kLoLFlyingObjectShp, kLoLTypeFlightShpData, false },
- { kLoLInventoryDesc, kLoLTypeRaw16, false },
- { kLoLLevelShpList, k2TypeSfxList, false },
- { kLoLLevelDatList, k2TypeSfxList, false },
- { kLoLCompassDefs, kLoLTypeCompassData, false },
- { kLoLItemPrices, kLoLTypeRaw16, false },
- { kLoLStashSetup, kTypeRawData, false },
-
- { kLoLDscWalls, kTypeRawData, false },
- { kRpgCommonDscShapeIndex, kTypeRawData, false },
- { kLoLDscOvlMap, kTypeRawData, false },
- { kLoLDscScaleWidthData, kLoLTypeRaw16, false },
- { kLoLDscScaleHeightData, kLoLTypeRaw16, false },
- { kRpgCommonDscX, kLoLTypeRaw16, false },
- { kLoLDscY, kTypeRawData, false },
- { kRpgCommonDscTileIndex, kTypeRawData, false },
- { kRpgCommonDscUnk2, kTypeRawData, false },
- { kRpgCommonDscDoorShapeIndex, kTypeRawData, false },
- { kRpgCommonDscDimData1, kTypeRawData, false },
- { kRpgCommonDscDimData2, kTypeRawData, false },
- { kRpgCommonDscBlockMap, kTypeRawData, false },
- { kRpgCommonDscDimMap, kTypeRawData, false },
- { kLoLDscDoorScale, kLoLTypeRaw16, false },
- { kLoLDscOvlIndex, k3TypeRaw16to8, false },
- { kRpgCommonDscBlockIndex, kTypeRawData, false },
- { kLoLDscDoor4, kLoLTypeRaw16, false },
- { kRpgCommonDscDoorY2, kTypeRawData, false },
- { kRpgCommonDscDoorFrameY1, kTypeRawData, false },
- { kRpgCommonDscDoorFrameY2, kTypeRawData, false },
- { kRpgCommonDscDoorFrameIndex1, kTypeRawData, false },
- { kRpgCommonDscDoorFrameIndex2, kTypeRawData, false },
- { kLoLDscDoorX, kLoLTypeRaw16, false },
- { kLoLDscDoorY, kLoLTypeRaw16, false },
-
- { kLoLScrollXTop, k3TypeRaw16to8, false },
- { kLoLScrollYTop, k3TypeRaw16to8, false },
- { kLoLScrollXBottom, k3TypeRaw16to8, false },
- { kLoLScrollYBottom, k3TypeRaw16to8, false },
-
- { kLoLButtonDefs, kLoLTypeButtonDef, false },
- { kLoLButtonList1, k3TypeRaw16to8, false },
- { kLoLButtonList2, k3TypeRaw16to8, false },
- { kLoLButtonList3, k3TypeRaw16to8, false },
- { kLoLButtonList4, k3TypeRaw16to8, false },
- { kLoLButtonList5, k3TypeRaw16to8, false },
- { kLoLButtonList6, k3TypeRaw16to8, false },
- { kLoLButtonList7, k3TypeRaw16to8, false },
- { kLoLButtonList8, k3TypeRaw16to8, false },
-
- { kLoLLegendData, kTypeRawData, false },
- { kLoLMapCursorOvl, kTypeRawData, false },
- { kLoLMapStringId, kLoLTypeRaw16, false },
-
- { kLoLSpellbookAnim, k3TypeRaw16to8, false },
- { kLoLSpellbookCoords, k3TypeRaw16to8, false },
- { kLoLHealShapeFrames, kTypeRawData, false },
- { kLoLLightningDefs, kTypeRawData, false },
- { kLoLFireballCoords, kLoLTypeRaw16, false },
-
- { kLoLCredits, kTypeRawData, false },
-
- { kLoLHistory, kTypeRawData, false },
+ { kLoLIngamePakFiles, kStringList, false },
+
+ { kLoLCharacterDefs, kLoLCharData, true },
+ { kLoLIngameSfxFiles, kStringList, false },
+ { kLoLIngameSfxIndex, kRawData, false },
+ { kLoLMusicTrackMap, kRawData, false },
+ { kLoLIngameGMSfxIndex, kRawData, false },
+ { kLoLIngameMT32SfxIndex, kRawData, false },
+ { kLoLIngamePcSpkSfxIndex, kRawData, false },
+ { kLoLSpellProperties, kLoLSpellData, false },
+ { kLoLGameShapeMap, kRawData, false },
+ { kLoLSceneItemOffs, kRawData, false },
+ { kLoLCharInvIndex, kRawData, false },
+ { kLoLCharInvDefs, kRawData, false },
+ { kLoLCharDefsMan, kRawDataBe16, false },
+ { kLoLCharDefsWoman, kRawDataBe16, false },
+ { kLoLCharDefsKieran, kRawDataBe16, false },
+ { kLoLCharDefsAkshel, kRawDataBe16, false },
+ { kLoLExpRequirements, kRawDataBe32, false },
+ { kLoLMonsterModifiers1, kRawDataBe16, false },
+ { kLoLMonsterModifiers2, kRawDataBe16, false },
+ { kLoLMonsterModifiers3, kRawDataBe16, false },
+ { kLoLMonsterModifiers4, kRawDataBe16, false },
+ { kLoLMonsterShiftOffsets, kRawData, false },
+ { kLoLMonsterDirFlags, kRawData, false },
+ { kLoLMonsterScaleY, kRawData, false },
+ { kLoLMonsterScaleX, kRawData, false },
+ { kLoLMonsterScaleWH, kRawDataBe16, false },
+ { kLoLFlyingObjectShp, kLoLFlightShpData, false },
+ { kLoLInventoryDesc, kRawDataBe16, false },
+ { kLoLLevelShpList, kStringList, false },
+ { kLoLLevelDatList, kStringList, false },
+ { kLoLCompassDefs, kLoLCompassData, false },
+ { kLoLItemPrices, kRawDataBe16, false },
+ { kLoLStashSetup, kRawData, false },
+
+ { kLoLDscWalls, kRawData, false },
+ { kRpgCommonDscShapeIndex, kRawData, false },
+ { kLoLDscOvlMap, kRawData, false },
+ { kLoLDscScaleWidthData, kRawDataBe16, false },
+ { kLoLDscScaleHeightData, kRawDataBe16, false },
+ { kRpgCommonDscX, kRawDataBe16, false },
+ { kLoLBaseDscY, kRawData, false },
+ { kRpgCommonDscTileIndex, kRawData, false },
+ { kRpgCommonDscUnk2, kRawData, false },
+ { kRpgCommonDscDoorShapeIndex, kRawData, false },
+ { kRpgCommonDscDimData1, kRawData, false },
+ { kRpgCommonDscDimData2, kRawData, false },
+ { kRpgCommonDscBlockMap, kRawData, false },
+ { kRpgCommonDscDimMap, kRawData, false },
+ { kLoLDscDoorScale, kRawDataBe16, false },
+ { kLoLDscOvlIndex, kRawData, false },
+ { kRpgCommonDscBlockIndex, kRawData, false },
+ { kLoLDscDoor4, kRawDataBe16, false },
+ { kRpgCommonDscDoorY2, kRawData, false },
+ { kRpgCommonDscDoorFrameY1, kRawData, false },
+ { kRpgCommonDscDoorFrameY2, kRawData, false },
+ { kRpgCommonDscDoorFrameIndex1, kRawData, false },
+ { kRpgCommonDscDoorFrameIndex2, kRawData, false },
+ { kLoLDscDoorX, kRawDataBe16, false },
+ { kLoLDscDoorY, kRawDataBe16, false },
+
+ { kLoLScrollXTop, kRawData, false },
+ { kLoLScrollYTop, kRawData, false },
+ { kLoLScrollXBottom, kRawData, false },
+ { kLoLScrollYBottom, kRawData, false },
+
+ { kLoLButtonDefs, kLoLButtonData, false },
+ { kLoLButtonList1, kRawData, false },
+ { kLoLButtonList2, kRawData, false },
+ { kLoLButtonList3, kRawData, false },
+ { kLoLButtonList4, kRawData, false },
+ { kLoLButtonList5, kRawData, false },
+ { kLoLButtonList6, kRawData, false },
+ { kLoLButtonList7, kRawData, false },
+ { kLoLButtonList8, kRawData, false },
+
+ { kLoLLegendData, kRawData, false },
+ { kLoLMapCursorOvl, kRawData, false },
+ { kLoLMapStringId, kRawDataBe16, false },
+
+ { kLoLSpellbookAnim, kRawData, false },
+ { kLoLSpellbookCoords, kRawData, false },
+ { kLoLHealShapeFrames, kRawData, false },
+ { kLoLLightningDefs, kRawData, false },
+ { kLoLFireballCoords, kRawDataBe16, false },
+
+ { kLoLCredits, kRawData, false },
+
+ { kLoLHistory, kRawData, false },
{ -1, 0, 0 }
};
@@ -775,256 +773,86 @@ byte getSpecialID(int special) {
// filename processing
-uint32 getFilename(const ExtractInformation *info, const int id) {
+uint32 getFilename(int game, int plat, int spec, int lang, const ExtractFilename *fDesc) {
+ // GAME, PLATFORM, SPECIAL, ID, LANG
+ return ((getGameID(game) & 0xF) << 24) |
+ ((getPlatformID(plat) & 0xF) << 20) |
+ ((getSpecialID(spec) & 0xF) << 16) |
+ ((fDesc->id & 0xFFF) << 4) |
+ ((getLanguageID(fDesc->langSpecific ? lang : UNK_LANG) & 0xF) << 0);
+}
+
+uint32 getFilename(const Game *g, const int id) {
const ExtractFilename *fDesc = getFilenameDesc(id);
if (!fDesc)
return 0;
- // GAME, PLATFORM, SPECIAL, ID, LANG
- return ((getGameID(info->game) & 0xF) << 24) |
- ((getPlatformID(info->platform) & 0xF) << 20) |
- ((getSpecialID(info->special) & 0xF) << 16) |
- ((id & 0xFFF) << 4) |
- ((getLanguageID(fDesc->langSpecific ? info->lang : UNK_LANG) & 0xF) << 0);
-}
-
-// TODO: Get rid of this
-bool getFilename(char *dstFilename, const ExtractInformation *info, const int id) {
- sprintf(dstFilename, "%08X", getFilename(info, id));
- return true;
+ return getFilename(g->game, g->platform, g->special, g->lang, fDesc);
}
-// index generation
-
-typedef uint16 GameDef;
-
-GameDef createGameDef(const ExtractInformation *eI) {
- return ((getGameID(eI->game) & 0xF) << 12) |
- ((getPlatformID(eI->platform) & 0xF) << 8) |
- ((getSpecialID(eI->special) & 0xF) << 4) |
- ((getLanguageID(eI->lang) & 0xF) << 0);
+uint32 getFilename(const ResourceProvider *provider, const ExtractFilename *fDesc) {
+ return getFilename(provider->game, provider->platform, provider->special, provider->language, fDesc);
}
-struct Index {
- Index() : version(0), includedGames(0), gameList() {}
-
- uint32 version;
- uint32 includedGames;
-
- typedef std::list<GameDef> GameList;
- GameList gameList;
-};
-
-Index parseIndex(const uint8 *data, uint32 size) {
- Index result;
-
- if (size < 8)
- return result;
-
- result.version = READ_BE_UINT32(data); data += 4;
- result.includedGames = READ_BE_UINT32(data); data += 4;
-
- if (result.includedGames * 2 + 8 != size) {
- result.version = result.includedGames = 0;
- return result;
- }
-
- for (uint32 i = 0; i < result.includedGames; ++i) {
- GameDef game = READ_BE_UINT16(data); data += 2;
- result.gameList.push_back(game);
- }
-
- return result;
-}
-
-bool updateIndex(PAKFile &out, const ExtractInformation *eI) {
- uint32 size = 0;
- const uint8 *data = out.getFileData("INDEX", &size);
-
- Index index;
- if (data)
- index = parseIndex(data, size);
-
- GameDef gameDef = createGameDef(eI);
- if (index.version == kKyraDatVersion) {
- if (std::find(index.gameList.begin(), index.gameList.end(), gameDef) == index.gameList.end()) {
- ++index.includedGames;
- index.gameList.push_back(gameDef);
- } else {
- // Already included in the game list, thus we do not need any further processing here.
- return true;
- }
- } else {
- index.version = kKyraDatVersion;
- index.includedGames = 1;
- index.gameList.push_back(gameDef);
- }
-
- const uint32 indexBufferSize = 8 + index.includedGames * 2;
- uint8 *indexBuffer = new uint8[indexBufferSize];
- assert(indexBuffer);
- uint8 *dst = indexBuffer;
- WRITE_BE_UINT32(dst, index.version); dst += 4;
- WRITE_BE_UINT32(dst, index.includedGames); dst += 4;
- for (Index::GameList::const_iterator i = index.gameList.begin(); i != index.gameList.end(); ++i) {
- WRITE_BE_UINT16(dst, *i); dst += 2;
- }
-
- out.removeFile("INDEX");
- if (!out.addFile("INDEX", indexBuffer, indexBufferSize)) {
- fprintf(stderr, "ERROR: couldn't update kyra.dat INDEX\n");
- delete[] indexBuffer;
- return false;
- }
-
+bool getFilename(char *dstFilename, const Game *g, const int id) {
+ sprintf(dstFilename, "%08X", getFilename(g, id));
return true;
}
-bool checkIndex(PAKFile &file) {
- uint32 size = 0;
- const uint8 *data = file.getFileData("INDEX", &size);
- if (!data)
- return false;
-
- Index index = parseIndex(data, size);
+// index generation
- if (index.version != kKyraDatVersion)
- return false;
- if (index.includedGames * 2 + 8 != size)
- return false;
+typedef uint16 GameDef;
- return true;
+GameDef createGameDef(const Game *g) {
+ return ((getGameID(g->game) & 0xF) << 12) |
+ ((getPlatformID(g->platform) & 0xF) << 8) |
+ ((getSpecialID(g->special) & 0xF) << 4) |
+ ((getLanguageID(g->lang) & 0xF) << 0);
+ return 0;
}
// main processing
void printHelp(const char *f) {
printf("Usage:\n");
- printf("%s output inputfiles ...\n", f);
+ printf("%s output\n", f);
}
-bool process(PAKFile &out, const Game *g, const byte *data, const uint32 size);
-const Game *findGame(const byte *buffer, const uint32 size);
-
-typedef std::map<std::string, std::string> MD5Map;
-MD5Map createMD5Sums(int files, const char * const *filenames);
-
-struct File {
- File() : data(0), size(0) {}
- File(uint8 *d, uint32 s) : data(d), size(s) {}
-
- uint8 *data;
- uint32 size;
-};
-typedef std::map<const Game *, File> GameMap;
-GameMap createGameMap(const MD5Map &map);
+void outputAllResources(PAKFile &out);
+void outputAllGames(PAKFile &out, std::vector<GameDef> &games);
int main(int argc, char *argv[]) {
- if (argc < 3) {
+ if (argc != 2) {
printHelp(argv[0]);
return -1;
}
- // Special case for developer mode of this tool:
- // With "--create filename offset size" the tool will output
- // a search entry for the specifed data in the specified file.
- if (!strcmp(argv[1], "--create")) {
- if (argc < 5) {
- printf("Developer usage: %s --create input_file hex_offset hex_size\n", argv[0]);
- return -1;
- }
-
- uint32 offset, size;
- sscanf(argv[3], "%x", &offset);
- sscanf(argv[4], "%x", &size);
-
- FILE *input = fopen(argv[2], "rb");
- if (!input)
- error("Couldn't open file '%s'", argv[2]);
-
- byte *buffer = new byte[size];
- fseek(input, offset, SEEK_SET);
- if (fread(buffer, 1, size, input) != size) {
- delete[] buffer;
- error("Couldn't read from file '%s'", argv[2]);
- }
-
- fclose(input);
-
- SearchData d = SearchCreator::create(buffer, size);
- delete[] buffer;
-
- printf("{ 0x%.08X, 0x%.08X, { {", d.size, d.byteSum);
- for (int j = 0; j < 16; ++j) {
- printf(" 0x%.2X", d.hash.digest[j]);
- if (j != 15)
- printf(",");
- else
- printf(" } } }\n");
- }
-
- return 0;
- }
-
PAKFile out;
- out.loadFile(argv[1], false);
- // When the output file is no valid kyra.dat file, we will delete
- // all the output.
- if (!checkIndex(out))
- out.clearFile();
+ // First step: Write out all resources.
+ outputAllResources(out);
- MD5Map inputFiles = createMD5Sums(argc - 2, &argv[2]);
+ // Second step: Write all game version information
+ std::vector<GameDef> games;
+ outputAllGames(out, games);
- GameMap games = createGameMap(inputFiles);
-
- // Check for unused input files
- MD5Map unusedFiles = inputFiles;
- for (GameMap::const_iterator i = games.begin(); i != games.end(); ++i) {
- unusedFiles.erase(i->first->md5[0]);
- if (i->first->md5[1])
- unusedFiles.erase(i->first->md5[1]);
+ // Third step: Write index file
+ byte *const indexBuffer = new byte[8 + 2 * games.size()];
+ byte *dst = indexBuffer;
+ WRITE_BE_UINT32(dst, kKyraDatVersion); dst += 4;
+ WRITE_BE_UINT32(dst, games.size()); dst += 4;
+ for (std::vector<GameDef>::const_iterator i = games.begin(), end = games.end(); i != end; ++i) {
+ WRITE_BE_UINT16(dst, *i); dst += 2;
}
-
- for (MD5Map::const_iterator i = unusedFiles.begin(); i != unusedFiles.end(); ++i)
- printf("Input file '%s' with md5 sum '%s' is not known.\n", i->second.c_str(), i->first.c_str());
-
- unusedFiles.clear();
-
- // Short circuit, in case no games are found.
- if (games.empty()) {
- printf("No games found. Exiting prematurely\n");
- return -1;
+ if (!out.addFile("INDEX", indexBuffer, 8 + 2 * games.size())) {
+ error("couldn't write INDEX file");
}
- // Process all games found
- for (GameMap::const_iterator i = games.begin(); i != games.end(); ++i) {
- MD5Map::const_iterator f1 = inputFiles.find(i->first->md5[0]);
- MD5Map::const_iterator f2 = inputFiles.end();
- if (i->first->md5[1])
- f2 = inputFiles.find(i->first->md5[1]);
-
- if (f2 != inputFiles.end())
- printf("Processing files '%s' and '%s'...\n", f1->second.c_str(), f2->second.c_str());
- else
- printf("Processing file '%s'...\n", f1->second.c_str());
-
- if (!process(out, i->first, i->second.data, i->second.size))
- printf("FAILED\n");
- else
- printf("OK\n");
+ if (!out.saveFile(argv[1])) {
+ error("couldn't save changes to '%s'", argv[1]);
}
- // Free up memory
- for (GameMap::iterator i = games.begin(); i != games.end(); ++i)
- delete[] i->second.data;
- games.clear();
- inputFiles.clear();
-
- if (!out.saveFile(argv[1]))
- error("couldn't save changes to '%s'", argv[1]);
-
uint8 digest[16];
if (!md5_file(argv[1], digest, 0))
error("couldn't calc. md5 for file '%s'", argv[1]);
@@ -1038,1309 +866,46 @@ int main(int argc, char *argv[]) {
return 0;
}
-MD5Map createMD5Sums(int files, const char * const *filenames) {
- MD5Map result;
-
- while (files--) {
- const char *inputFile = *filenames++;
- FILE *input = fopen(inputFile, "rb");
-
- uint32 size = fileSize(input);
- fseek(input, 0, SEEK_SET);
-
- byte *buffer = new uint8[size];
- assert(buffer);
-
- if (fread(buffer, 1, size, input) != size) {
- warning("couldn't read from file '%s', skipping it", inputFile);
- delete[] buffer;
- fclose(input);
- continue;
- }
- fclose(input);
-
- md5_context ctx;
- uint8 digest[16];
- char md5Str[33];
-
- md5_starts(&ctx);
- md5_update(&ctx, buffer, size);
- md5_finish(&ctx, digest);
-
- for (int j = 0; j < 16; ++j)
- sprintf(md5Str + j*2, "%02x", (int)digest[j]);
+void outputAllResources(PAKFile &out) {
+ char filename[128];
+ for (const ResourceProvider *resource = obtainResourceProviders();
+ resource->id != kMaxResIDs; ++resource) {
+ const ExtractFilename *desc = getFilenameDesc(resource->id);
- delete[] buffer;
+ snprintf(filename, sizeof(filename), "%08X", getFilename(resource, desc));
- result[md5Str] = inputFile;
+ writeResource(out, filename, (ResTypes)desc->type, resource->provider);
}
-
- return result;
}
-GameMap createGameMap(const MD5Map &map) {
- GameMap result;
-
- for (const Game * const *g = gameDescs; *g != 0; ++g) {
- for (const Game *sub = *g; sub->game != -1; ++sub) {
- MD5Map::const_iterator file1 = map.find(sub->md5[0]);
- if (file1 == map.end())
- continue;
+bool createIDMap(PAKFile &out, const Game *g, const int *needList);
- MD5Map::const_iterator file2 = map.end();
- if (sub->md5[1] != 0) {
- file2 = map.find(sub->md5[1]);
- if (file2 == map.end())
- continue;
+void outputAllGames(PAKFile &out, std::vector<GameDef> &games) {
+ for (const Game *const *descs = gameDescs;
+ *descs; ++descs) {
+ for (const Game *game = *descs;
+ game->game != -1; ++game) {
+ const GameDef gameDef = createGameDef(game);
+ if (!createIDMap(out, game, getNeedList(game))) {
+ error("Could not create ID map for game %04X", gameDef);
}
-
- FILE *f1 = fopen(file1->second.c_str(), "rb");
- FILE *f2 = 0;
-
- if (file2 != map.end())
- f2 = fopen(file2->second.c_str(), "rb");
-
- uint32 file1Size = fileSize(f1);
- uint32 file2Size = 0;
- if (f2)
- file2Size = fileSize(f2);
-
- uint8 *buffer = new uint8[file1Size + file2Size];
- assert(buffer);
-
- fread(buffer, 1, file1Size, f1);
- if (f2)
- fread(buffer + file1Size, 1, file2Size, f2);
-
- fclose(f1);
- if (f2)
- fclose(f2);
-
- result[sub] = File(buffer, file1Size + file2Size);
+ games.push_back(gameDef);
}
}
-
- return result;
-}
-
-const char *getIdString(const int id) {
- switch (id) {
- case k1ForestSeq:
- return "k1ForestSeq";
- case k1KallakWritingSeq:
- return "k1KallakWritingSeq";
- case k1KyrandiaLogoSeq:
- return "k1KyrandiaLogoSeq";
- case k1KallakMalcolmSeq:
- return "k1KallakMalcolmSeq";
- case k1MalcolmTreeSeq:
- return "k1MalcolmTreeSeq";
- case k1WestwoodLogoSeq:
- return "k1WestwoodLogoSeq";
- case k1Demo1Seq:
- return "k1Demo1Seq";
- case k1Demo2Seq:
- return "k1Demo2Seq";
- case k1Demo3Seq:
- return "k1Demo3Seq";
- case k1Demo4Seq:
- return "k1Demo4Seq";
- case k1AmuleteAnimSeq:
- return "k1AmuleteAnimSeq";
- case k1OutroReunionSeq:
- return "k1OutroReunionSeq";
- case k1IntroCPSStrings:
- return "k1IntroCPSStrings";
- case k1IntroCOLStrings:
- return "k1IntroCOLStrings";
- case k1IntroWSAStrings:
- return "k1IntroWSAStrings";
- case k1IntroStrings:
- return "k1IntroStrings";
- case k1OutroHomeString:
- return "k1OutroHomeString";
- case k1RoomFilenames:
- return "k1RoomFilenames";
- case k1RoomList:
- return "k1RoomList";
- case k1CharacterImageFilenames:
- return "k1CharacterImageFilenames";
- case k1AudioTracks:
- return "k1AudioTracks";
- case k1AudioTracks2:
- return "k1AudioTracks2";
- case k1AudioTracksIntro:
- return "k1AudioTracksIntro";
- case k1ItemNames:
- return "k1ItemNames";
- case k1TakenStrings:
- return "k1TakenStrings";
- case k1PlacedStrings:
- return "k1PlacedStrings";
- case k1DroppedStrings:
- return "k1DroppedStrings";
- case k1NoDropStrings:
- return "k1NoDropStrings";
- case k1PutDownString:
- return "k1PutDownString";
- case k1WaitAmuletString:
- return "k1WaitAmuletString";
- case k1BlackJewelString:
- return "k1BlackJewelString";
- case k1PoisonGoneString:
- return "k1PoisonGoneString";
- case k1HealingTipString:
- return "k1HealingTipString";
- case k1WispJewelStrings:
- return "k1WispJewelStrings";
- case k1MagicJewelStrings:
- return "k1MagicJewelStrings";
- case k1ThePoisonStrings:
- return "k1ThePoisonStrings";
- case k1FluteStrings:
- return "k1FluteStrings";
- case k1FlaskFullString:
- return "k1FlaskFullString";
- case k1FullFlaskString:
- return "k1FullFlaskString";
- case k1VeryCleverString:
- return "k1VeryCleverString";
- case k1NewGameString:
- return "k1NewGameString";
- case k1DefaultShapes:
- return "k1DefaultShapes";
- case k1Healing1Shapes:
- return "k1Healing1Shapes";
- case k1Healing2Shapes:
- return "k1Healing2Shapes";
- case k1PoisonDeathShapes:
- return "k1PoisonDeathShapes";
- case k1FluteShapes:
- return "k1FluteShapes";
- case k1Winter1Shapes:
- return "k1Winter1Shapes";
- case k1Winter2Shapes:
- return "k1Winter2Shapes";
- case k1Winter3Shapes:
- return "k1Winter3Shapes";
- case k1DrinkShapes:
- return "k1DrinkShapes";
- case k1WispShapes:
- return "k1WispShapes";
- case k1MagicAnimShapes:
- return "k1MagicAnimShapes";
- case k1BranStoneShapes:
- return "k1BranStoneShapes";
- case k1SpecialPalette1:
- return "k1SpecialPalette1";
- case k1SpecialPalette2:
- return "k1SpecialPalette2";
- case k1SpecialPalette3:
- return "k1SpecialPalette3";
- case k1SpecialPalette4:
- return "k1SpecialPalette4";
- case k1SpecialPalette5:
- return "k1SpecialPalette5";
- case k1SpecialPalette6:
- return "k1SpecialPalette6";
- case k1SpecialPalette7:
- return "k1SpecialPalette7";
- case k1SpecialPalette8:
- return "k1SpecialPalette8";
- case k1SpecialPalette9:
- return "k1SpecialPalette9";
- case k1SpecialPalette10:
- return "k1SpecialPalette10";
- case k1SpecialPalette11:
- return "k1SpecialPalette11";
- case k1SpecialPalette12:
- return "k1SpecialPalette12";
- case k1SpecialPalette13:
- return "k1SpecialPalette13";
- case k1SpecialPalette14:
- return "k1SpecialPalette14";
- case k1SpecialPalette15:
- return "k1SpecialPalette15";
- case k1SpecialPalette16:
- return "k1SpecialPalette16";
- case k1SpecialPalette17:
- return "k1SpecialPalette17";
- case k1SpecialPalette18:
- return "k1SpecialPalette18";
- case k1SpecialPalette19:
- return "k1SpecialPalette19";
- case k1SpecialPalette20:
- return "k1SpecialPalette20";
- case k1SpecialPalette21:
- return "k1SpecialPalette21";
- case k1SpecialPalette22:
- return "k1SpecialPalette22";
- case k1SpecialPalette23:
- return "k1SpecialPalette23";
- case k1SpecialPalette24:
- return "k1SpecialPalette24";
- case k1SpecialPalette25:
- return "k1SpecialPalette25";
- case k1SpecialPalette26:
- return "k1SpecialPalette26";
- case k1SpecialPalette27:
- return "k1SpecialPalette27";
- case k1SpecialPalette28:
- return "k1SpecialPalette28";
- case k1SpecialPalette29:
- return "k1SpecialPalette29";
- case k1SpecialPalette30:
- return "k1SpecialPalette30";
- case k1SpecialPalette31:
- return "k1SpecialPalette31";
- case k1SpecialPalette32:
- return "k1SpecialPalette32";
- case k1SpecialPalette33:
- return "k1SpecialPalette33";
- case k1GUIStrings:
- return "k1GUIStrings";
- case k1ConfigStrings:
- return "k1ConfigStrings";
- case k1TownsMusicFadeTable:
- return "k1TownsMusicFadeTable";
- case k1TownsSFXwdTable:
- return "k1TownsSFXwdTable";
- case k1TownsSFXbtTable:
- return "k1TownsSFXbtTable";
- case k1TownsCDATable:
- return "k1TownsCDATable";
- case k1PC98StoryStrings:
- return "k1PC98StoryStrings";
- case k1PC98IntroSfx:
- return "k1PC98IntroSfx";
- case k1CreditsStrings:
- return "k1CreditsStrings";
- case k1AmigaIntroSFXTable:
- return "k1AmigaIntroSFXTable";
- case k1AmigaGameSFXTable:
- return "k1AmigaGameSFXTable";
- case k2SeqplayPakFiles:
- return "k2SeqplayPakFiles";
- case k2SeqplayStrings:
- return "k2SeqplayStrings";
- case k2SeqplaySfxFiles:
- return "k2SeqplaySfxFiles";
- case k2SeqplayTlkFiles:
- return "k2SeqplayTlkFiles";
- case k2SeqplaySeqData:
- return "k2SeqplaySeqData";
- case k2SeqplayCredits:
- return "k2SeqplayCredits";
- case k2SeqplayCreditsSpecial:
- return "k2SeqplayCreditsSpecial";
- case k2SeqplayIntroTracks:
- return "k2SeqplayIntroTracks";
- case k2SeqplayFinaleTracks:
- return "k2SeqplayFinaleTracks";
- case k2SeqplayIntroCDA:
- return "k2SeqplayIntroCDA";
- case k2SeqplayFinaleCDA:
- return "k2SeqplayFinaleCDA";
- case k2SeqplayShapeAnimData:
- return "k2SeqplayShapeAnimData";
- case k2IngamePakFiles:
- return "k2IngamePakFiles";
- case k2IngameSfxFiles:
- return "k2IngameSfxFiles";
- case k2IngameSfxIndex:
- return "k2IngameSfxIndex";
- case k2IngameTracks:
- return "k2IngameTracks";
- case k2IngameCDA:
- return "k2IngameCDA";
- case k2IngameTalkObjIndex:
- return "k2IngameTalkObjIndex";
- case k2IngameTimJpStrings:
- return "k2IngameTimJpStrings";
- case k2IngameShapeAnimData:
- return "k2IngameShapeAnimData";
- case k2IngameTlkDemoStrings:
- return "k2IngameTlkDemoStrings";
- case k3MainMenuStrings:
- return "k3MainMenuStrings";
- case k3MusicFiles:
- return "k3MusicFiles";
- case k3ScoreTable:
- return "k3ScoreTable";
- case k3SfxFiles:
- return "k3SfxFiles";
- case k3SfxMap:
- return "k3SfxMap";
- case k3ItemAnimData:
- return "k3ItemAnimData";
- case k3ItemMagicTable:
- return "k3ItemMagicTable";
- case k3ItemStringMap:
- return "k3ItemStringMap";
- case kEoBBaseChargenStrings1:
- return "kEoBBaseChargenStrings1";
- case kEoBBaseChargenStrings2:
- return "kEoBBaseChargenStrings2";
- case kEoBBaseChargenStartLevels:
- return "kEoBBaseChargenStartLevels";
- case kEoBBaseChargenStatStrings:
- return "kEoBBaseChargenStatStrings";
- case kEoBBaseChargenRaceSexStrings:
- return "kEoBBaseChargenRaceSexStrings";
- case kEoBBaseChargenClassStrings:
- return "kEoBBaseChargenClassStrings";
- case kEoBBaseChargenAlignmentStrings:
- return "kEoBBaseChargenAlignmentStrings";
- case kEoBBaseChargenEnterGameStrings:
- return "kEoBBaseChargenEnterGameStrings";
- case kEoBBaseChargenClassMinStats:
- return "kEoBBaseChargenClassMinStats";
- case kEoBBaseChargenRaceMinStats:
- return "kEoBBaseChargenRaceMinStats";
- case kEoBBaseChargenRaceMaxStats:
- return "kEoBBaseChargenRaceMaxStats";
- case kEoBBaseSaveThrowTable1:
- return "kEoBBaseSaveThrowTable1";
- case kEoBBaseSaveThrowTable2:
- return "kEoBBaseSaveThrowTable2";
- case kEoBBaseSaveThrowTable3:
- return "kEoBBaseSaveThrowTable3";
- case kEoBBaseSaveThrowTable4:
- return "kEoBBaseSaveThrowTable4";
- case kEoBBaseSaveThrwLvlIndex:
- return "kEoBBaseSaveThrwLvlIndex";
- case kEoBBaseSaveThrwModDiv:
- return "kEoBBaseSaveThrwModDiv";
- case kEoBBaseSaveThrwModExt:
- return "kEoBBaseSaveThrwModExt";
- case kEoBBasePryDoorStrings:
- return "kEoBBasePryDoorStrings";
- case kEoBBaseWarningStrings:
- return "kEoBBaseWarningStrings";
- case kEoBBaseItemSuffixStringsRings:
- return "kEoBBaseItemSuffixStringsRings";
- case kEoBBaseItemSuffixStringsPotions:
- return "kEoBBaseItemSuffixStringsPotions";
- case kEoBBaseItemSuffixStringsWands:
- return "kEoBBaseItemSuffixStringsWands";
- case kEoBBaseRipItemStrings:
- return "kEoBBaseRipItemStrings";
- case kEoBBaseCursedString:
- return "kEoBBaseCursedString";
- case kEoBBaseEnchantedString:
- return "kEoBBaseEnchantedString";
- case kEoBBaseMagicObjectStrings:
- return "kEoBBaseMagicObjectStrings";
- case kEoBBaseMagicObject5String:
- return "kEoBBaseMagicObject5String";
- case kEoBBasePatternSuffix:
- return "kEoBBasePatternSuffix";
- case kEoBBasePatternGrFix1:
- return "kEoBBasePatternGrFix1";
- case kEoBBasePatternGrFix2:
- return "kEoBBasePatternGrFix2";
- case kEoBBaseValidateArmorString:
- return "kEoBBaseValidateArmorString";
- case kEoBBaseValidateCursedString:
- return "kEoBBaseValidateCursedString";
- case kEoBBaseValidateNoDropString:
- return "kEoBBaseValidateNoDropString";
- case kEoBBasePotionStrings:
- return "kEoBBasePotionStrings";
- case kEoBBaseWandString:
- return "kEoBBaseWandString";
- case kEoBBaseItemMisuseStrings:
- return "kEoBBaseItemMisuseStrings";
- case kEoBBaseTakenStrings:
- return "kEoBBaseTakenStrings";
- case kEoBBasePotionEffectStrings:
- return "kEoBBasePotionEffectStrings";
- case kEoBBaseYesNoStrings:
- return "kEoBBaseYesNoStrings";
- case kRpgCommonMoreStrings:
- return "kRpgCommonMoreStrings";
- case kEoBBaseNpcMaxStrings:
- return "kEoBBaseNpcMaxStrings";
- case kEoBBaseOkStrings:
- return "kEoBBaseOkStrings";
- case kEoBBaseNpcJoinStrings:
- return "kEoBBaseNpcJoinStrings";
- case kEoBBaseCancelStrings:
- return "kEoBBaseCancelStrings";
- case kEoBBaseAbortStrings:
- return "kEoBBaseAbortStrings";
- case kEoBBaseMenuStringsMain:
- return "kEoBBaseMenuStringsMain";
- case kEoBBaseMenuStringsSaveLoad:
- return "kEoBBaseMenuStringsSaveLoad";
- case kEoBBaseMenuStringsOnOff:
- return "kEoBBaseMenuStringsOnOff";
- case kEoBBaseMenuStringsSpells:
- return "kEoBBaseMenuStringsSpells";
- case kEoBBaseMenuStringsRest:
- return "kEoBBaseMenuStringsRest";
- case kEoBBaseMenuStringsDrop:
- return "kEoBBaseMenuStringsDrop";
- case kEoBBaseMenuStringsExit:
- return "kEoBBaseMenuStringsExit";
- case kEoBBaseMenuStringsStarve:
- return "kEoBBaseMenuStringsStarve";
- case kEoBBaseMenuStringsScribe:
- return "kEoBBaseMenuStringsScribe";
- case kEoBBaseMenuStringsDrop2:
- return "kEoBBaseMenuStringsDrop2";
- case kEoBBaseMenuStringsHead:
- return "kEoBBaseMenuStringsHead";
- case kEoBBaseMenuStringsPoison:
- return "kEoBBaseMenuStringsPoison";
- case kEoBBaseMenuStringsMgc:
- return "kEoBBaseMenuStringsMgc";
- case kEoBBaseMenuStringsPrefs:
- return "kEoBBaseMenuStringsPrefs";
- case kEoBBaseMenuStringsRest2:
- return "kEoBBaseMenuStringsRest2";
- case kEoBBaseMenuStringsRest3:
- return "kEoBBaseMenuStringsRest3";
- case kEoBBaseMenuStringsRest4:
- return "kEoBBaseMenuStringsRest4";
- case kEoBBaseMenuStringsDefeat:
- return "kEoBBaseMenuStringsDefeat";
- case kEoBBaseMenuStringsTransfer:
- return "kEoBBaseMenuStringsTransfer";
- case kEoBBaseMenuStringsSpec:
- return "kEoBBaseMenuStringsSpec";
- case kEoBBaseMenuStringsSpellNo:
- return "kEoBBaseMenuStringsSpellNo";
- case kEoBBaseMenuYesNoStrings:
- return "kEoBBaseMenuYesNoStrings";
- case kEoBBaseSpellLevelsMage:
- return "kEoBBaseSpellLevelsMage";
- case kEoBBaseSpellLevelsCleric:
- return "kEoBBaseSpellLevelsCleric";
- case kEoBBaseNumSpellsCleric:
- return "kEoBBaseNumSpellsCleric";
- case kEoBBaseNumSpellsWisAdj:
- return "kEoBBaseNumSpellsWisAdj";
- case kEoBBaseNumSpellsPal:
- return "kEoBBaseNumSpellsPal";
- case kEoBBaseNumSpellsMage:
- return "kEoBBaseNumSpellsMage";
- case kEoBBaseCharGuiStringsHp:
- return "kEoBBaseCharGuiStringsHp";
- case kEoBBaseCharGuiStringsWp1:
- return "kEoBBaseCharGuiStringsWp1";
- case kEoBBaseCharGuiStringsWp2:
- return "kEoBBaseCharGuiStringsWp2";
- case kEoBBaseCharGuiStringsWr:
- return "kEoBBaseCharGuiStringsWr";
- case kEoBBaseCharGuiStringsSt1:
- return "kEoBBaseCharGuiStringsSt1";
- case kEoBBaseCharGuiStringsSt2:
- return "kEoBBaseCharGuiStringsSt2";
- case kEoBBaseCharGuiStringsIn:
- return "kEoBBaseCharGuiStringsIn";
- case kEoBBaseCharStatusStrings7:
- return "kEoBBaseCharStatusStrings7";
- case kEoBBaseCharStatusStrings81:
- return "kEoBBaseCharStatusStrings81";
- case kEoBBaseCharStatusStrings82:
- return "kEoBBaseCharStatusStrings82";
- case kEoBBaseCharStatusStrings9:
- return "kEoBBaseCharStatusStrings9";
- case kEoBBaseCharStatusStrings12:
- return "kEoBBaseCharStatusStrings12";
- case kEoBBaseCharStatusStrings131:
- return "kEoBBaseCharStatusStrings131";
- case kEoBBaseCharStatusStrings132:
- return "kEoBBaseCharStatusStrings132";
- case kEoBBaseLevelGainStrings:
- return "kEoBBaseLevelGainStrings";
- case kEoBBaseExperienceTable0:
- return "kEoBBaseExperienceTable0";
- case kEoBBaseExperienceTable1:
- return "kEoBBaseExperienceTable1";
- case kEoBBaseExperienceTable2:
- return "kEoBBaseExperienceTable2";
- case kEoBBaseExperienceTable3:
- return "kEoBBaseExperienceTable3";
- case kEoBBaseExperienceTable4:
- return "kEoBBaseExperienceTable4";
- case kEoBBaseWllFlagPreset:
- return "kEoBBaseWllFlagPreset";
- case kEoBBaseDscShapeCoords:
- return "kEoBBaseDscShapeCoords";
- case kEoBBaseDscDoorScaleOffs:
- return "kEoBBaseDscDoorScaleOffs";
- case kEoBBaseDscDoorScaleMult1:
- return "kEoBBaseDscDoorScaleMult1";
- case kEoBBaseDscDoorScaleMult2:
- return "kEoBBaseDscDoorScaleMult2";
- case kEoBBaseDscDoorScaleMult3:
- return "kEoBBaseDscDoorScaleMult3";
- case kEoBBaseDscDoorScaleMult4:
- return "kEoBBaseDscDoorScaleMult4";
- case kEoBBaseDscDoorScaleMult5:
- return "kEoBBaseDscDoorScaleMult5";
- case kEoBBaseDscDoorScaleMult6:
- return "kEoBBaseDscDoorScaleMult6";
- case kEoBBaseDscDoorType5Offs:
- return "kEoBBaseDscDoorType5Offs";
- case kEoBBaseDscDoorXE:
- return "kEoBBaseDscDoorXE";
- case kEoBBaseDscDoorY1:
- return "kEoBBaseDscDoorY1";
- case kEoBBaseDscDoorY3:
- return "kEoBBaseDscDoorY3";
- case kEoBBaseDscDoorY4:
- return "kEoBBaseDscDoorY4";
- case kEoBBaseDscDoorY5:
- return "kEoBBaseDscDoorY5";
- case kEoBBaseDscDoorY6:
- return "kEoBBaseDscDoorY6";
- case kEoBBaseDscDoorY7:
- return "kEoBBaseDscDoorY7";
- case kEoBBaseDscDoorCoordsExt:
- return "kEoBBaseDscDoorCoordsExt";
- case kEoBBaseDscItemPosIndex:
- return "kEoBBaseDscItemPosIndex";
- case kEoBBaseDscItemShpX:
- return "kEoBBaseDscItemShpX";
- case kEoBBaseDscItemPosUnk:
- return "kEoBBaseDscItemPosUnk";
- case kEoBBaseDscItemTileIndex:
- return "kEoBBaseDscItemTileIndex";
- case kEoBBaseDscItemShapeMap:
- return "kEoBBaseDscItemShapeMap";
- case kEoBBaseDscMonsterFrmOffsTbl1:
- return "kEoBBaseDscMonsterFrmOffsTbl1";
- case kEoBBaseDscMonsterFrmOffsTbl2:
- return "kEoBBaseDscMonsterFrmOffsTbl2";
- case kEoBBaseInvSlotX:
- return "kEoBBaseInvSlotX";
- case kEoBBaseInvSlotY:
- return "kEoBBaseInvSlotY";
- case kEoBBaseSlotValidationFlags:
- return "kEoBBaseSlotValidationFlags";
- case kEoBBaseProjectileWeaponTypes:
- return "kEoBBaseProjectileWeaponTypes";
- case kEoBBaseWandTypes:
- return "kEoBBaseWandTypes";
- case kEoBBaseDrawObjPosIndex:
- return "kEoBBaseDrawObjPosIndex";
- case kEoBBaseFlightObjFlipIndex:
- return "kEoBBaseFlightObjFlipIndex";
- case kEoBBaseFlightObjShpMap:
- return "kEoBBaseFlightObjShpMap";
- case kEoBBaseFlightObjSclIndex:
- return "kEoBBaseFlightObjSclIndex";
- case kEoBBaseDscTelptrShpCoords:
- return "kEoBBaseDscTelptrShpCoords";
- case kEoBBasePortalSeqData:
- return "kEoBBasePortalSeqData";
- case kEoBBaseManDef:
- return "kEoBBaseManDef";
- case kEoBBaseManWord:
- return "kEoBBaseManWord";
- case kEoBBaseManPrompt:
- return "kEoBBaseManPrompt";
- case kEoBBaseBookNumbers:
- return "kEoBBaseBookNumbers";
- case kEoBBaseMageSpellsList:
- return "kEoBBaseMageSpellsList";
- case kEoBBaseClericSpellsList:
- return "kEoBBaseClericSpellsList";
- case kEoBBaseSpellNames:
- return "kEoBBaseSpellNames";
-
- case kEoBBaseMagicStrings1:
- return "kEoBBaseMagicStrings1";
- case kEoBBaseMagicStrings2:
- return "kEoBBaseMagicStrings2";
- case kEoBBaseMagicStrings3:
- return "kEoBBaseMagicStrings3";
- case kEoBBaseMagicStrings4:
- return "kEoBBaseMagicStrings4";
- case kEoBBaseMagicStrings6:
- return "kEoBBaseMagicStrings6";
- case kEoBBaseMagicStrings7:
- return "kEoBBaseMagicStrings7";
- case kEoBBaseMagicStrings8:
- return "kEoBBaseMagicStrings8";
- case kEoBBaseExpObjectTlMode:
- return "kEoBBaseExpObjectTlMode";
- case kEoBBaseExpObjectTblIndex:
- return "kEoBBaseExpObjectTblIndex";
- case kEoBBaseExpObjectShpStart:
- return "kEoBBaseExpObjectShpStart";
- case kEoBBaseExpObjectTbl1:
- return "kEoBBaseExpObjectTbl1";
- case kEoBBaseExpObjectTbl2:
- return "kEoBBaseExpObjectTbl2";
- case kEoBBaseExpObjectTbl3:
- return "kEoBBaseExpObjectTbl3";
- case kEoBBaseExpObjectY:
- return "kEoBBaseExpObjectY";
- case kEoBBaseSparkDefSteps:
- return "kEoBBaseSparkDefSteps";
- case kEoBBaseSparkDefSubSteps:
- return "kEoBBaseSparkDefSubSteps";
- case kEoBBaseSparkDefShift:
- return "kEoBBaseSparkDefShift";
- case kEoBBaseSparkDefAdd:
- return "kEoBBaseSparkDefAdd";
- case kEoBBaseSparkDefX:
- return "kEoBBaseSparkDefX";
- case kEoBBaseSparkDefY:
- return "kEoBBaseSparkDefY";
- case kEoBBaseSparkOfFlags1:
- return "kEoBBaseSparkOfFlags1";
- case kEoBBaseSparkOfFlags2:
- return "kEoBBaseSparkOfFlags2";
- case kEoBBaseSparkOfShift:
- return "kEoBBaseSparkOfShift";
- case kEoBBaseSparkOfX:
- return "kEoBBaseSparkOfX";
- case kEoBBaseSparkOfY:
- return "kEoBBaseSparkOfY";
- case kEoBBaseSpellProperties:
- return "kEoBBaseSpellProperties";
- case kEoBBaseMagicFlightProps:
- return "kEoBBaseMagicFlightProps";
- case kEoBBaseTurnUndeadEffect:
- return "kEoBBaseTurnUndeadEffect";
- case kEoBBaseBurningHandsDest:
- return "kEoBBaseBurningHandsDest";
- case kEoBBaseConeOfColdDest1:
- return "kEoBBaseConeOfColdDest1";
- case kEoBBaseConeOfColdDest2:
- return "kEoBBaseConeOfColdDest2";
- case kEoBBaseConeOfColdDest3:
- return "kEoBBaseConeOfColdDest3";
- case kEoBBaseConeOfColdDest4:
- return "kEoBBaseConeOfColdDest4";
- case kEoBBaseConeOfColdGfxTbl:
- return "kEoBBaseConeOfColdGfxTbl";
- case kEoB1MainMenuStrings:
- return "kEoB1MainMenuStrings";
- case kEoB1BonusStrings:
- return "kEoB1BonusStrings";
- case kEoB1IntroFilesOpening:
- return "kEoB1IntroFilesOpening";
- case kEoB1IntroFilesTower:
- return "kEoB1IntroFilesTower";
- case kEoB1IntroFilesOrb:
- return "kEoB1IntroFilesOrb";
- case kEoB1IntroFilesWdEntry:
- return "kEoB1IntroFilesWdEntry";
- case kEoB1IntroFilesKing:
- return "kEoB1IntroFilesKing";
- case kEoB1IntroFilesHands:
- return "kEoB1IntroFilesHands";
- case kEoB1IntroFilesWdExit:
- return "kEoB1IntroFilesWdExit";
- case kEoB1IntroFilesTunnel:
- return "kEoB1IntroFilesTunnel";
- case kEoB1IntroOpeningFrmDelay:
- return "kEoB1IntroOpeningFrmDelay";
- case kEoB1IntroWdEncodeX:
- return "kEoB1IntroWdEncodeX";
- case kEoB1IntroWdEncodeY:
- return "kEoB1IntroWdEncodeY";
- case kEoB1IntroWdEncodeWH:
- return "kEoB1IntroWdEncodeWH";
- case kEoB1IntroWdDsX:
- return "kEoB1IntroWdDsX";
- case kEoB1IntroWdDsY:
- return "kEoB1IntroWdDsY";
- case kEoB1IntroTvlX1:
- return "kEoB1IntroTvlX1";
- case kEoB1IntroTvlY1:
- return "kEoB1IntroTvlY1";
- case kEoB1IntroTvlX2:
- return "kEoB1IntroTvlX2";
- case kEoB1IntroTvlY2:
- return "kEoB1IntroTvlY2";
- case kEoB1IntroTvlW:
- return "kEoB1IntroTvlW";
- case kEoB1IntroTvlH:
- return "kEoB1IntroTvlH";
- case kEoB1DoorShapeDefs:
- return "kEoB1DoorShapeDefs";
- case kEoB1DoorSwitchCoords:
- return "kEoB1DoorSwitchCoords";
- case kEoB1MonsterProperties:
- return "kEoB1MonsterProperties";
- case kEoB1EnemyMageSpellList:
- return "kEoB1EnemyMageSpellList";
- case kEoB1EnemyMageSfx:
- return "kEoB1EnemyMageSfx";
- case kEoB1BeholderSpellList:
- return "kEoB1BeholderSpellList";
- case kEoB1BeholderSfx:
- return "kEoB1BeholderSfx";
- case kEoB1TurnUndeadString:
- return "kEoB1TurnUndeadString";
- case kEoB1CgaMappingDefault:
- return "kEoB1CgaMappingDefault";
- case kEoB1CgaMappingAlt:
- return "kEoB1CgaMappingAlt";
- case kEoB1CgaMappingInv:
- return "kEoB1CgaMappingInv";
- case kEoB1CgaMappingItemsL:
- return "kEoB1CgaMappingItemsL";
- case kEoB1CgaMappingItemsS:
- return "kEoB1CgaMappingItemsS";
- case kEoB1CgaMappingThrown:
- return "kEoB1CgaMappingThrown";
- case kEoB1CgaMappingIcons:
- return "kEoB1CgaMappingIcons";
- case kEoB1CgaMappingDeco:
- return "kEoB1CgaMappingDeco";
- case kEoB1CgaLevelMappingIndex:
- return "kEoB1CgaLevelMappingIndex";
- case kEoB1CgaMappingLevel0:
- return "kEoB1CgaMappingLevel0";
- case kEoB1CgaMappingLevel1:
- return "kEoB1CgaMappingLevel1";
- case kEoB1CgaMappingLevel2:
- return "kEoB1CgaMappingLevel2";
- case kEoB1CgaMappingLevel3:
- return "kEoB1CgaMappingLevel3";
- case kEoB1CgaMappingLevel4:
- return "kEoB1CgaMappingLevel4";
- case kEoB1NpcShpData:
- return "kEoB1NpcShpData";
- case kEoB1NpcSubShpIndex1:
- return "kEoB1NpcSubShpIndex1";
- case kEoB1NpcSubShpIndex2:
- return "kEoB1NpcSubShpIndex2";
- case kEoB1NpcSubShpY:
- return "kEoB1NpcSubShpY";
- case kEoB1Npc0Strings:
- return "kEoB1Npc0Strings";
- case kEoB1Npc11Strings:
- return "kEoB1Npc11Strings";
- case kEoB1Npc12Strings:
- return "kEoB1Npc12Strings";
- case kEoB1Npc21Strings:
- return "kEoB1Npc21Strings";
- case kEoB1Npc22Strings:
- return "kEoB1Npc22Strings";
- case kEoB1Npc31Strings:
- return "kEoB1Npc31Strings";
- case kEoB1Npc32Strings:
- return "kEoB1Npc32Strings";
- case kEoB1Npc4Strings:
- return "kEoB1Npc4Strings";
- case kEoB1Npc5Strings:
- return "kEoB1Npc5Strings";
- case kEoB1Npc6Strings:
- return "kEoB1Npc6Strings";
- case kEoB1Npc7Strings:
- return "kEoB1Npc7Strings";
- case kEoB2MainMenuStrings:
- return "kEoB2MainMenuStrings";
- case kEoB2TransferPortraitFrames:
- return "kEoB2TransferPortraitFrames";
- case kEoB2TransferConvertTable:
- return "kEoB2TransferConvertTable";
- case kEoB2TransferItemTable:
- return "kEoB2TransferItemTable";
- case kEoB2TransferExpTable:
- return "kEoB2TransferExpTable";
- case kEoB2TransferStrings1:
- return "kEoB2TransferStrings1";
- case kEoB2TransferStrings2:
- return "kEoB2TransferStrings2";
- case kEoB2TransferLabels:
- return "kEoB2TransferLabels";
- case kEoB2IntroStrings:
- return "kEoB2IntroStrings";
- case kEoB2IntroCPSFiles:
- return "kEoB2IntroCPSFiles";
- case kEob2IntroAnimData00:
- return "kEob2IntroAnimData00";
- case kEob2IntroAnimData01:
- return "kEob2IntroAnimData01";
- case kEob2IntroAnimData02:
- return "kEob2IntroAnimData02";
- case kEob2IntroAnimData03:
- return "kEob2IntroAnimData03";
- case kEob2IntroAnimData04:
- return "kEob2IntroAnimData04";
- case kEob2IntroAnimData05:
- return "kEob2IntroAnimData05";
- case kEob2IntroAnimData06:
- return "kEob2IntroAnimData06";
- case kEob2IntroAnimData07:
- return "kEob2IntroAnimData07";
- case kEob2IntroAnimData08:
- return "kEob2IntroAnimData08";
- case kEob2IntroAnimData09:
- return "kEob2IntroAnimData09";
- case kEob2IntroAnimData10:
- return "kEob2IntroAnimData10";
- case kEob2IntroAnimData11:
- return "kEob2IntroAnimData11";
- case kEob2IntroAnimData12:
- return "kEob2IntroAnimData12";
- case kEob2IntroAnimData13:
- return "kEob2IntroAnimData13";
- case kEob2IntroAnimData14:
- return "kEob2IntroAnimData14";
- case kEob2IntroAnimData15:
- return "kEob2IntroAnimData15";
- case kEob2IntroAnimData16:
- return "kEob2IntroAnimData16";
- case kEob2IntroAnimData17:
- return "kEob2IntroAnimData17";
- case kEob2IntroAnimData18:
- return "kEob2IntroAnimData18";
- case kEob2IntroAnimData19:
- return "kEob2IntroAnimData19";
- case kEob2IntroAnimData20:
- return "kEob2IntroAnimData20";
- case kEob2IntroAnimData21:
- return "kEob2IntroAnimData21";
- case kEob2IntroAnimData22:
- return "kEob2IntroAnimData22";
- case kEob2IntroAnimData23:
- return "kEob2IntroAnimData23";
- case kEob2IntroAnimData24:
- return "kEob2IntroAnimData24";
- case kEob2IntroAnimData25:
- return "kEob2IntroAnimData25";
- case kEob2IntroAnimData26:
- return "kEob2IntroAnimData26";
- case kEob2IntroAnimData27:
- return "kEob2IntroAnimData27";
- case kEob2IntroAnimData28:
- return "kEob2IntroAnimData28";
- case kEob2IntroAnimData29:
- return "kEob2IntroAnimData29";
- case kEob2IntroAnimData30:
- return "kEob2IntroAnimData30";
- case kEob2IntroAnimData31:
- return "kEob2IntroAnimData31";
- case kEob2IntroAnimData32:
- return "kEob2IntroAnimData32";
- case kEob2IntroAnimData33:
- return "kEob2IntroAnimData33";
- case kEob2IntroAnimData34:
- return "kEob2IntroAnimData34";
- case kEob2IntroAnimData35:
- return "kEob2IntroAnimData35";
- case kEob2IntroAnimData36:
- return "kEob2IntroAnimData36";
- case kEob2IntroAnimData37:
- return "kEob2IntroAnimData37";
- case kEob2IntroAnimData38:
- return "kEob2IntroAnimData38";
- case kEob2IntroAnimData39:
- return "kEob2IntroAnimData39";
- case kEob2IntroAnimData40:
- return "kEob2IntroAnimData40";
- case kEob2IntroAnimData41:
- return "kEob2IntroAnimData41";
- case kEob2IntroAnimData42:
- return "kEob2IntroAnimData42";
- case kEob2IntroAnimData43:
- return "kEob2IntroAnimData43";
- case kEoB2IntroShapes00:
- return "kEoB2IntroShapes00";
- case kEoB2IntroShapes01:
- return "kEoB2IntroShapes01";
- case kEoB2IntroShapes04:
- return "kEoB2IntroShapes04";
- case kEoB2IntroShapes07:
- return "kEoB2IntroShapes07";
- case kEoB2FinaleStrings:
- return "kEoB2FinaleStrings";
- case kEoB2CreditsData:
- return "kEoB2CreditsData";
- case kEoB2FinaleCPSFiles:
- return "kEoB2FinaleCPSFiles";
- case kEob2FinaleAnimData00:
- return "kEob2FinaleAnimData00";
- case kEob2FinaleAnimData01:
- return "kEob2FinaleAnimData01";
- case kEob2FinaleAnimData02:
- return "kEob2FinaleAnimData02";
- case kEob2FinaleAnimData03:
- return "kEob2FinaleAnimData03";
- case kEob2FinaleAnimData04:
- return "kEob2FinaleAnimData04";
- case kEob2FinaleAnimData05:
- return "kEob2FinaleAnimData05";
- case kEob2FinaleAnimData06:
- return "kEob2FinaleAnimData06";
- case kEob2FinaleAnimData07:
- return "kEob2FinaleAnimData07";
- case kEob2FinaleAnimData08:
- return "kEob2FinaleAnimData08";
- case kEob2FinaleAnimData09:
- return "kEob2FinaleAnimData09";
- case kEob2FinaleAnimData10:
- return "kEob2FinaleAnimData10";
- case kEob2FinaleAnimData11:
- return "kEob2FinaleAnimData11";
- case kEob2FinaleAnimData12:
- return "kEob2FinaleAnimData12";
- case kEob2FinaleAnimData13:
- return "kEob2FinaleAnimData13";
- case kEob2FinaleAnimData14:
- return "kEob2FinaleAnimData14";
- case kEob2FinaleAnimData15:
- return "kEob2FinaleAnimData15";
- case kEob2FinaleAnimData16:
- return "kEob2FinaleAnimData16";
- case kEob2FinaleAnimData17:
- return "kEob2FinaleAnimData17";
- case kEob2FinaleAnimData18:
- return "kEob2FinaleAnimData18";
- case kEob2FinaleAnimData19:
- return "kEob2FinaleAnimData19";
- case kEob2FinaleAnimData20:
- return "kEob2FinaleAnimData20";
- case kEoB2FinaleShapes00:
- return "kEoB2FinaleShapes00";
- case kEoB2FinaleShapes03:
- return "kEoB2FinaleShapes03";
- case kEoB2FinaleShapes07:
- return "kEoB2FinaleShapes07";
- case kEoB2FinaleShapes09:
- return "kEoB2FinaleShapes09";
- case kEoB2FinaleShapes10:
- return "kEoB2FinaleShapes10";
- case kEoB2NpcShapeData:
- return "kEoB2NpcShapeData";
- case kEoBBaseClassModifierFlags:
- return "kEoBBaseClassModifierFlags";
- case kEoBBaseMonsterStepTable01:
- return "kEoBBaseMonsterStepTable01";
- case kEoBBaseMonsterStepTable02:
- return "kEoBBaseMonsterStepTable02";
- case kEoBBaseMonsterStepTable1:
- return "kEoBBaseMonsterStepTable1";
- case kEoBBaseMonsterStepTable2:
- return "kEoBBaseMonsterStepTable2";
- case kEoBBaseMonsterStepTable3:
- return "kEoBBaseMonsterStepTable3";
- case kEoBBaseMonsterCloseAttPosTable1:
- return "kEoBBaseMonsterCloseAttPosTable1";
- case kEoBBaseMonsterCloseAttPosTable21:
- return "kEoBBaseMonsterCloseAttPosTable21";
- case kEoBBaseMonsterCloseAttPosTable22:
- return "kEoBBaseMonsterCloseAttPosTable22";
- case kEoBBaseMonsterCloseAttUnkTable:
- return "kEoBBaseMonsterCloseAttUnkTable";
- case kEoBBaseMonsterCloseAttChkTable1:
- return "kEoBBaseMonsterCloseAttChkTable1";
- case kEoBBaseMonsterCloseAttChkTable2:
- return "kEoBBaseMonsterCloseAttChkTable2";
- case kEoBBaseMonsterCloseAttDstTable1:
- return "kEoBBaseMonsterCloseAttDstTable1";
- case kEoBBaseMonsterCloseAttDstTable2:
- return "kEoBBaseMonsterCloseAttDstTable2";
- case kEoBBaseMonsterProximityTable:
- return "kEoBBaseMonsterProximityTable";
- case kEoBBaseFindBlockMonstersTable:
- return "kEoBBaseFindBlockMonstersTable";
- case kEoBBaseMonsterDirChangeTable:
- return "kEoBBaseMonsterDirChangeTable";
- case kEoBBaseMonsterDistAttStrings:
- return "kEoBBaseMonsterDistAttStrings";
- case kEoBBaseEncodeMonsterDefs:
- return "kEoBBaseEncodeMonsterDefs";
- case kEoBBaseNpcPresets:
- return "kEoBBaseNpcPresets";
- case kEoB2Npc1Strings:
- return "kEoB2Npc1Strings";
- case kEoB2Npc2Strings:
- return "kEoB2Npc2Strings";
- case kEoB2MonsterDustStrings:
- return "kEoB2MonsterDustStrings";
- case kEoB2DreamSteps:
- return "kEoB2DreamSteps";
- case kEoB2KheldranStrings:
- return "kEoB2KheldranStrings";
- case kEoB2HornStrings:
- return "kEoB2HornStrings";
- case kEoB2HornSounds:
- return "kEoB2HornSounds";
- case kEoB2WallOfForceDsX:
- return "kEoB2WallOfForceDsX";
- case kEoB2WallOfForceDsY:
- return "kEoB2WallOfForceDsY";
- case kEoB2WallOfForceNumW:
- return "kEoB2WallOfForceNumW";
- case kEoB2WallOfForceNumH:
- return "kEoB2WallOfForceNumH";
- case kEoB2WallOfForceShpId:
- return "kEoB2WallOfForceShpId";
- case kLoLIngamePakFiles:
- return "kLoLIngamePakFiles";
- case kLoLCharacterDefs:
- return "kLoLCharacterDefs";
- case kLoLIngameSfxFiles:
- return "kLoLIngameSfxFiles";
- case kLoLIngameSfxIndex:
- return "kLoLIngameSfxIndex";
- case kLoLMusicTrackMap:
- return "kLoLMusicTrackMap";
- case kLoLIngameGMSfxIndex:
- return "kLoLIngameGMSfxIndex";
- case kLoLIngameMT32SfxIndex:
- return "kLoLIngameMT32SfxIndex";
- case kLoLIngamePcSpkSfxIndex:
- return "kLoLIngamePcSpkSfxIndex";
- case kLoLSpellProperties:
- return "kLoLSpellProperties";
- case kLoLGameShapeMap:
- return "kLoLGameShapeMap";
- case kLoLSceneItemOffs:
- return "kLoLSceneItemOffs";
- case kLoLCharInvIndex:
- return "kLoLCharInvIndex";
- case kLoLCharInvDefs:
- return "kLoLCharInvDefs";
- case kLoLCharDefsMan:
- return "kLoLCharDefsMan";
- case kLoLCharDefsWoman:
- return "kLoLCharDefsWoman";
- case kLoLCharDefsKieran:
- return "kLoLCharDefsKieran";
- case kLoLCharDefsAkshel:
- return "kLoLCharDefsAkshel";
- case kLoLExpRequirements:
- return "kLoLExpRequirements";
- case kLoLMonsterModifiers1:
- return "kLoLMonsterModifiers1";
- case kLoLMonsterModifiers2:
- return "kLoLMonsterModifiers2";
- case kLoLMonsterModifiers3:
- return "kLoLMonsterModifiers3";
- case kLoLMonsterModifiers4:
- return "kLoLMonsterModifiers4";
- case kLoLMonsterShiftOffsets:
- return "kLoLMonsterShiftOffsets";
- case kLoLMonsterDirFlags:
- return "kLoLMonsterDirFlags";
- case kLoLMonsterScaleY:
- return "kLoLMonsterScaleY";
- case kLoLMonsterScaleX:
- return "kLoLMonsterScaleX";
- case kLoLMonsterScaleWH:
- return "kLoLMonsterScaleWH";
- case kLoLFlyingObjectShp:
- return "kLoLFlyingObjectShp";
- case kLoLInventoryDesc:
- return "kLoLInventoryDesc";
- case kLoLLevelShpList:
- return "kLoLLevelShpList";
- case kLoLLevelDatList:
- return "kLoLLevelDatList";
- case kLoLCompassDefs:
- return "kLoLCompassDefs";
- case kLoLItemPrices:
- return "kLoLItemPrices";
- case kLoLStashSetup:
- return "kLoLStashSetup";
- case kLoLDscWalls:
- return "kLoLDscWalls";
- case kRpgCommonDscShapeIndex:
- return "kRpgCommonDscShapeIndex";
- case kLoLDscOvlMap:
- return "kLoLDscOvlMap";
- case kLoLDscScaleWidthData:
- return "kLoLDscScaleWidthData";
- case kLoLDscScaleHeightData:
- return "kLoLDscScaleHeightData";
- case kRpgCommonDscX:
- return "kRpgCommonDscX";
- case kLoLDscY:
- return "kLoLDscY";
- case kRpgCommonDscTileIndex:
- return "kRpgCommonDscTileIndex";
- case kRpgCommonDscUnk2:
- return "kRpgCommonDscUnk2";
- case kRpgCommonDscDoorShapeIndex:
- return "kRpgCommonDscDoorShapeIndex";
- case kRpgCommonDscDimData1:
- return "kRpgCommonDscDimData1";
- case kRpgCommonDscDimData2:
- return "kRpgCommonDscDimData2";
- case kRpgCommonDscBlockMap:
- return "kRpgCommonDscBlockMap";
- case kRpgCommonDscDimMap:
- return "kRpgCommonDscDimMap";
- case kLoLDscOvlIndex:
- return "kLoLDscOvlIndex";
- case kRpgCommonDscBlockIndex:
- return "kRpgCommonDscBlockIndex";
- case kRpgCommonDscDoorY2:
- return "kRpgCommonDscDoorY2";
- case kRpgCommonDscDoorFrameY1:
- return "kRpgCommonDscDoorFrameY1";
- case kRpgCommonDscDoorFrameY2:
- return "kRpgCommonDscDoorFrameY2";
- case kRpgCommonDscDoorFrameIndex1:
- return "kRpgCommonDscDoorFrameIndex1";
- case kRpgCommonDscDoorFrameIndex2:
- return "kRpgCommonDscDoorFrameIndex2";
- case kLoLDscDoorScale:
- return "kLoLDscDoorScale";
- case kLoLDscDoor4:
- return "kLoLDscDoor4";
- case kLoLDscDoorX:
- return "kLoLDscDoorX";
- case kLoLDscDoorY:
- return "kLoLDscDoorY";
- case kLoLScrollXTop:
- return "kLoLScrollXTop";
- case kLoLScrollYTop:
- return "kLoLScrollYTop";
- case kLoLScrollXBottom:
- return "kLoLScrollXBottom";
- case kLoLScrollYBottom:
- return "kLoLScrollYBottom";
- case kLoLButtonDefs:
- return "kLoLButtonDefs";
- case kLoLButtonList1:
- return "kLoLButtonList1";
- case kLoLButtonList2:
- return "kLoLButtonList2";
- case kLoLButtonList3:
- return "kLoLButtonList3";
- case kLoLButtonList4:
- return "kLoLButtonList4";
- case kLoLButtonList5:
- return "kLoLButtonList5";
- case kLoLButtonList6:
- return "kLoLButtonList6";
- case kLoLButtonList7:
- return "kLoLButtonList7";
- case kLoLButtonList8:
- return "kLoLButtonList8";
- case kLoLLegendData:
- return "kLoLLegendData";
- case kLoLMapCursorOvl:
- return "kLoLMapCursorOvl";
- case kLoLMapStringId:
- return "kLoLMapStringId";
- case kLoLSpellbookAnim:
- return "kLoLSpellbookAnim";
- case kLoLSpellbookCoords:
- return "kLoLSpellbookCoords";
- case kLoLHealShapeFrames:
- return "kLoLHealShapeFrames";
- case kLoLLightningDefs:
- return "kLoLLightningDefs";
- case kLoLFireballCoords:
- return "kLoLFireballCoords";
- case kLoLCredits:
- return "kLoLCredits";
- case kLoLHistory:
- return "kLoLHistory";
- default:
- return "Unknown";
- }
}
-struct ExtractData {
- ExtractData() : desc(), offset() {}
- ExtractData(ExtractEntrySearchData d, uint32 o) : desc(d), offset(o) {}
-
- ExtractEntrySearchData desc;
- uint32 offset;
-};
-
-typedef std::pair<int, ExtractEntrySearchData> SearchMapEntry;
-typedef std::multimap<int, ExtractEntrySearchData> SearchMap;
-
-typedef std::pair<int, ExtractData> ExtractMapEntry;
-typedef std::multimap<int, ExtractData> ExtractMap;
-
-bool getExtractionData(const Game *g, Search &search, ExtractMap &map);
-
-bool createIDMap(PAKFile &out, const ExtractInformation *eI, const int *needList);
-
-bool process(PAKFile &out, const Game *g, const byte *data, const uint32 size) {
- char filename[128];
-
- Search search(data, size);
- ExtractMap ids;
-
- if (!getExtractionData(g, search, ids))
- return false;
-
- const int *needList = getNeedList(g);
- if (!needList) {
- fprintf(stderr, "ERROR: No entry need list available\n");
- return false;
- }
-
- ExtractInformation extractInfo;
- extractInfo.game = g->game;
- extractInfo.platform = g->platform;
- extractInfo.special = g->special;
-
- for (ExtractMap::const_iterator i = ids.begin(); i != ids.end(); ++i) {
- const int id = i->first;
- extractInfo.lang = i->second.desc.lang;
-
- const ExtractFilename *fDesc = getFilenameDesc(id);
-
- if (!fDesc) {
- fprintf(stderr, "ERROR: couldn't find file description for id %d/%s\n", id, getIdString(id));
- return false;
- }
-
- filename[0] = 0;
- if (!getFilename(filename, &extractInfo, id)) {
- fprintf(stderr, "ERROR: couldn't get filename for id %d/%s\n", id, getIdString(id));
- return false;
- }
-
- const ExtractType *tDesc = findExtractType(fDesc->type);
-
- if (!tDesc) {
- fprintf(stderr, "ERROR: couldn't find type description for id %d/%s (%d)\n", id, getIdString(id), fDesc->type);
- return false;
- }
-
- PAKFile::cFileList *list = out.getFileList();
- if (list && list->findEntry(filename) != 0)
- continue;
-
- if (!tDesc->extract(out, &extractInfo, data + i->second.offset, i->second.desc.hint.size, filename, id)) {
- fprintf(stderr, "ERROR: couldn't extract id %d/%s\n", id, getIdString(id));
- return false;
- }
- }
-
- for (int i = 0; i < 3; ++i) {
- if (g->lang[i] == -1)
- continue;
-
- extractInfo.lang = g->lang[i];
- if (!createIDMap(out, &extractInfo, needList))
- return false;
-
- if (!updateIndex(out, &extractInfo)) {
- error("couldn't update INDEX file, stop processing of all files");
+bool createIDMap(PAKFile &out, const Game *g, const int *needList) {
+ int dataEntries = 0;
+ // Count entries in the need list and check whether the resources are
+ // present
+ for (const int *n = needList; *n != -1; ++n) {
+ char filename[12];
+ if (!getFilename(filename, g, *n) || !out.getFileList()->findEntry(filename)) {
+ fprintf(stderr, "ERROR: Could not find need %d for game %04X", *n, createGameDef(g));
return false;
}
- }
-
- return true;
-}
-
-bool createIDMap(PAKFile &out, const ExtractInformation *eI, const int *needList) {
- int dataEntries = 0;
- // Count entries in the need list
- for (const int *n = needList; *n != -1; ++n)
++dataEntries;
+ }
const int mapSize = 2 + dataEntries * (2 + 1 + 4);
uint8 *map = new uint8[mapSize];
@@ -2354,206 +919,22 @@ bool createIDMap(PAKFile &out, const ExtractInformation *eI, const int *needList
delete[] map;
return false;
}
- *dst++ = getTypeID(fDesc->type);
- WRITE_BE_UINT32(dst, getFilename(eI, *id)); dst += 4;
+ *dst++ = fDesc->type;
+ WRITE_BE_UINT32(dst, getFilename(g, *id)); dst += 4;
}
char filename[12];
- if (!getFilename(filename, eI, 0)) {
+ if (!getFilename(filename, g, 0)) {
fprintf(stderr, "ERROR: Could not create ID map for game\n");
delete[] map;
return false;
}
- out.removeFile(filename);
if (!out.addFile(filename, map, mapSize)) {
fprintf(stderr, "ERROR: Could not add ID map \"%s\" to kyra.dat\n", filename);
delete[] map;
return false;
}
- delete[] map;
return true;
}
-
-// Uncomment this to get various debug information about the detection table entries.
-//#define DEBUG_EXTRACTION_TABLES
-
-bool setupSearch(const Game *g, const int *needList, Search &search, SearchMap &searchData) {
- for (const int *entry = needList; *entry != -1; ++entry) {
- ExtractEntryList providers = getProvidersForId(*entry);
-
- if (providers.empty()) {
- fprintf(stderr, "ERROR: No provider for id %d/%s\n", *entry, getIdString(*entry));
- return false;
- } else {
- for (ExtractEntryList::const_iterator i = providers.begin(); i != providers.end(); ++i) {
- // Only add generic or partly matching providers here.
-#ifndef DEBUG_EXTRACTION_TABLES
- if ((i->lang == UNK_LANG || i->lang == g->lang[0] || i->lang == g->lang[1] || i->lang == g->lang[2]) &&
- (i->platform == kPlatformUnknown || (i->platform == g->platform))) {
-#endif
- search.addData(i->hint);
- searchData.insert(SearchMapEntry(*entry, *i));
-#ifndef DEBUG_EXTRACTION_TABLES
- }
-#endif
- }
- }
- }
-
- return true;
-}
-
-typedef std::list<ExtractMap::const_iterator> MatchList;
-MatchList filterPlatformMatches(const Game *g, std::pair<ExtractMap::const_iterator, ExtractMap::const_iterator> range) {
- bool hasPlatformMatch = false;
- for (ExtractMap::const_iterator i = range.first; i != range.second; ++i) {
- if (i->second.desc.platform == g->platform) {
- hasPlatformMatch = true;
- break;
- }
- }
-
- MatchList result;
- if (hasPlatformMatch) {
- for (ExtractMap::const_iterator i = range.first; i != range.second; ++i) {
- if (i->second.desc.platform == g->platform)
- result.push_back(i);
- }
- } else {
- for (ExtractMap::const_iterator i = range.first; i != range.second; ++i)
- result.push_back(i);
- }
-
- return result;
-}
-
-MatchList filterLanguageMatches(const int lang, const MatchList &input) {
- std::list<ExtractMap::const_iterator> result;
-
- for (MatchList::const_iterator i = input.begin(); i != input.end(); ++i) {
- if ((*i)->second.desc.lang == lang)
- result.push_back(*i);
- }
-
- return result;
-}
-
-MatchList::const_iterator filterOutBestMatch(const MatchList &input) {
- MatchList::const_iterator result = input.begin();
-
- if (input.size() > 1)
- warning("Multiple entries found for id %d/%s", (*result)->first, getIdString((*result)->first));
-
- for (MatchList::const_iterator i = input.begin(); i != input.end(); ++i) {
- // Reduce all entries to one single entry.
- //
- // We use the following rules for this (in this order):
- // - Prefer the entry with the higest size
- // - Prefer the entry, which starts at the smallest offest
- //
- // TODO: These rules might not be safe for all games, but hopefully
- // they will work fine. If there are any problems it should be rather
- // easy to identify them, since we print out a warning for multiple
- // entries found.
- if ((*result)->second.desc.hint.size <= (*i)->second.desc.hint.size) {
- if ((*result)->second.offset >= (*i)->second.offset)
- result = i;
- }
- }
-
- return result;
-}
-
-bool getExtractionData(const Game *g, Search &search, ExtractMap &map) {
- SearchMap searchMap;
-
- const int *needList = getNeedList(g);
- if (!needList) {
- fprintf(stderr, "ERROR: No entry need list available\n");
- return false;
- }
-
- if (!setupSearch(g, needList, search, searchMap))
- return false;
-
- // Process the data search
- Search::ResultList results;
- search.search(results);
-
- if (results.empty()) {
- fprintf(stderr, "ERROR: Couldn't find any required data\n");
- return false;
- }
-
- ExtractMap temporaryExtractMap;
- for (const int *entry = needList; *entry != -1; ++entry) {
- typedef std::pair<SearchMap::const_iterator, SearchMap::const_iterator> KeyRange;
- KeyRange idRange = searchMap.equal_range(*entry);
-
- for (Search::ResultList::const_iterator i = results.begin(); i != results.end(); ++i) {
- for (SearchMap::const_iterator j = idRange.first; j != idRange.second; ++j) {
- if (j->second.hint == i->data)
- temporaryExtractMap.insert(ExtractMapEntry(*entry, ExtractData(j->second, i->offset)));
- }
- }
- }
-
- // Free up some memory
- results.clear();
- searchMap.clear();
-
- bool result = true;
-
- for (const int *entry = needList; *entry != -1; ++entry) {
- MatchList possibleMatches = filterPlatformMatches(g, temporaryExtractMap.equal_range(*entry));
-
- if (possibleMatches.empty()) {
- fprintf(stderr, "ERROR: No entry found for id %d/%s\n", *entry, getIdString(*entry));
- result = false;
- continue;
- }
-
- if (isLangSpecific(*entry)) {
- for (int i = 0; i < 3; ++i) {
- if (g->lang[i] == -1)
- continue;
-
- MatchList langMatches = filterLanguageMatches(g->lang[i], possibleMatches);
- MatchList::const_iterator bestMatch = filterOutBestMatch(langMatches);
-
- if (bestMatch == langMatches.end()) {
- // TODO: Add nice language name to output message.
- fprintf(stderr, "ERROR: No entry found for id %d/%s for language %d\n", *entry, getIdString(*entry), g->lang[i]);
- result = false;
- continue;
- }
-
-#ifdef DEBUG_EXTRACTION_TABLES
- if (((*bestMatch)->second.desc.platform != kPlatformUnknown && (*bestMatch)->second.desc.platform != g->platform))
- printf("%s: %.8X %.8X %d %d\n", getIdString(*entry), (*bestMatch)->second.desc.hint.size, (*bestMatch)->second.desc.hint.byteSum, (*bestMatch)->second.desc.lang, (*bestMatch)->second.desc.platform);
-#endif
-
- map.insert(**bestMatch);
- }
- } else {
- MatchList::const_iterator bestMatch = filterOutBestMatch(possibleMatches);
-
- if (bestMatch == possibleMatches.end()) {
- fprintf(stderr, "ERROR: No entry found for id %d/%s\n", *entry, getIdString(*entry));
- result = false;
- continue;
- }
-
-#ifdef DEBUG_EXTRACTION_TABLES
- if (((*bestMatch)->second.desc.platform != kPlatformUnknown && (*bestMatch)->second.desc.platform != g->platform))
- printf("%s: %.8X %.8X %d %d\n", getIdString(*entry), (*bestMatch)->second.desc.hint.size, (*bestMatch)->second.desc.hint.byteSum, (*bestMatch)->second.desc.lang, (*bestMatch)->second.desc.platform);
-#endif
-
- map.insert(**bestMatch);
- }
- }
-
- return result;
-}
diff --git a/devtools/create_kyradat/create_kyradat.h b/devtools/create_kyradat/create_kyradat.h
index 6d5059cabe..a6bee6f75c 100644
--- a/devtools/create_kyradat/create_kyradat.h
+++ b/devtools/create_kyradat/create_kyradat.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,7 +23,7 @@
#ifndef CREATE_KYRADAT_CREATE_KYRADAT_H
#define CREATE_KYRADAT_CREATE_KYRADAT_H
-#include "util.h"
+#include "common/scummsys.h"
// This list has to match orderwise (and thus value wise) the static data list of "engines/kyra/resource.h"!
enum kExtractID {
@@ -227,7 +227,7 @@ enum kExtractID {
kEoBBaseCursedString,
kEoBBaseEnchantedString,
kEoBBaseMagicObjectStrings,
- kEoBBaseMagicObject5String,
+ kEoBBaseMagicObjectString5,
kEoBBasePatternSuffix,
kEoBBasePatternGrFix1,
kEoBBasePatternGrFix2,
@@ -235,7 +235,7 @@ enum kExtractID {
kEoBBaseValidateCursedString,
kEoBBaseValidateNoDropString,
kEoBBasePotionStrings,
- kEoBBaseWandString,
+ kEoBBaseWandStrings,
kEoBBaseItemMisuseStrings,
kEoBBaseTakenStrings,
@@ -347,7 +347,7 @@ enum kExtractID {
kEoBBaseDscItemPosIndex,
kEoBBaseDscItemShpX,
- kEoBBaseDscItemPosUnk,
+ kEoBBaseDscItemScaleIndex,
kEoBBaseDscItemTileIndex,
kEoBBaseDscItemShapeMap,
@@ -493,50 +493,50 @@ enum kExtractID {
kEoB2IntroStrings,
kEoB2IntroCPSFiles,
- kEob2IntroAnimData00,
- kEob2IntroAnimData01,
- kEob2IntroAnimData02,
- kEob2IntroAnimData03,
- kEob2IntroAnimData04,
- kEob2IntroAnimData05,
- kEob2IntroAnimData06,
- kEob2IntroAnimData07,
- kEob2IntroAnimData08,
- kEob2IntroAnimData09,
- kEob2IntroAnimData10,
- kEob2IntroAnimData11,
- kEob2IntroAnimData12,
- kEob2IntroAnimData13,
- kEob2IntroAnimData14,
- kEob2IntroAnimData15,
- kEob2IntroAnimData16,
- kEob2IntroAnimData17,
- kEob2IntroAnimData18,
- kEob2IntroAnimData19,
- kEob2IntroAnimData20,
- kEob2IntroAnimData21,
- kEob2IntroAnimData22,
- kEob2IntroAnimData23,
- kEob2IntroAnimData24,
- kEob2IntroAnimData25,
- kEob2IntroAnimData26,
- kEob2IntroAnimData27,
- kEob2IntroAnimData28,
- kEob2IntroAnimData29,
- kEob2IntroAnimData30,
- kEob2IntroAnimData31,
- kEob2IntroAnimData32,
- kEob2IntroAnimData33,
- kEob2IntroAnimData34,
- kEob2IntroAnimData35,
- kEob2IntroAnimData36,
- kEob2IntroAnimData37,
- kEob2IntroAnimData38,
- kEob2IntroAnimData39,
- kEob2IntroAnimData40,
- kEob2IntroAnimData41,
- kEob2IntroAnimData42,
- kEob2IntroAnimData43,
+ kEoB2IntroAnimData00,
+ kEoB2IntroAnimData01,
+ kEoB2IntroAnimData02,
+ kEoB2IntroAnimData03,
+ kEoB2IntroAnimData04,
+ kEoB2IntroAnimData05,
+ kEoB2IntroAnimData06,
+ kEoB2IntroAnimData07,
+ kEoB2IntroAnimData08,
+ kEoB2IntroAnimData09,
+ kEoB2IntroAnimData10,
+ kEoB2IntroAnimData11,
+ kEoB2IntroAnimData12,
+ kEoB2IntroAnimData13,
+ kEoB2IntroAnimData14,
+ kEoB2IntroAnimData15,
+ kEoB2IntroAnimData16,
+ kEoB2IntroAnimData17,
+ kEoB2IntroAnimData18,
+ kEoB2IntroAnimData19,
+ kEoB2IntroAnimData20,
+ kEoB2IntroAnimData21,
+ kEoB2IntroAnimData22,
+ kEoB2IntroAnimData23,
+ kEoB2IntroAnimData24,
+ kEoB2IntroAnimData25,
+ kEoB2IntroAnimData26,
+ kEoB2IntroAnimData27,
+ kEoB2IntroAnimData28,
+ kEoB2IntroAnimData29,
+ kEoB2IntroAnimData30,
+ kEoB2IntroAnimData31,
+ kEoB2IntroAnimData32,
+ kEoB2IntroAnimData33,
+ kEoB2IntroAnimData34,
+ kEoB2IntroAnimData35,
+ kEoB2IntroAnimData36,
+ kEoB2IntroAnimData37,
+ kEoB2IntroAnimData38,
+ kEoB2IntroAnimData39,
+ kEoB2IntroAnimData40,
+ kEoB2IntroAnimData41,
+ kEoB2IntroAnimData42,
+ kEoB2IntroAnimData43,
kEoB2IntroShapes00,
kEoB2IntroShapes01,
kEoB2IntroShapes04,
@@ -545,27 +545,27 @@ enum kExtractID {
kEoB2FinaleStrings,
kEoB2CreditsData,
kEoB2FinaleCPSFiles,
- kEob2FinaleAnimData00,
- kEob2FinaleAnimData01,
- kEob2FinaleAnimData02,
- kEob2FinaleAnimData03,
- kEob2FinaleAnimData04,
- kEob2FinaleAnimData05,
- kEob2FinaleAnimData06,
- kEob2FinaleAnimData07,
- kEob2FinaleAnimData08,
- kEob2FinaleAnimData09,
- kEob2FinaleAnimData10,
- kEob2FinaleAnimData11,
- kEob2FinaleAnimData12,
- kEob2FinaleAnimData13,
- kEob2FinaleAnimData14,
- kEob2FinaleAnimData15,
- kEob2FinaleAnimData16,
- kEob2FinaleAnimData17,
- kEob2FinaleAnimData18,
- kEob2FinaleAnimData19,
- kEob2FinaleAnimData20,
+ kEoB2FinaleAnimData00,
+ kEoB2FinaleAnimData01,
+ kEoB2FinaleAnimData02,
+ kEoB2FinaleAnimData03,
+ kEoB2FinaleAnimData04,
+ kEoB2FinaleAnimData05,
+ kEoB2FinaleAnimData06,
+ kEoB2FinaleAnimData07,
+ kEoB2FinaleAnimData08,
+ kEoB2FinaleAnimData09,
+ kEoB2FinaleAnimData10,
+ kEoB2FinaleAnimData11,
+ kEoB2FinaleAnimData12,
+ kEoB2FinaleAnimData13,
+ kEoB2FinaleAnimData14,
+ kEoB2FinaleAnimData15,
+ kEoB2FinaleAnimData16,
+ kEoB2FinaleAnimData17,
+ kEoB2FinaleAnimData18,
+ kEoB2FinaleAnimData19,
+ kEoB2FinaleAnimData20,
kEoB2FinaleShapes00,
kEoB2FinaleShapes03,
kEoB2FinaleShapes07,
@@ -628,7 +628,7 @@ enum kExtractID {
kLoLDscOvlMap,
kLoLDscScaleWidthData,
kLoLDscScaleHeightData,
- kLoLDscY,
+ kLoLBaseDscY,
kLoLDscDoorScale,
kLoLDscDoor4,
@@ -668,6 +668,30 @@ enum kExtractID {
kMaxResIDs
};
+enum ResTypes {
+ kStringList = 0,
+ kRawData = 1,
+ kRoomList = 2,
+ kShapeList = 3,
+ kAmigaSfxTable = 4,
+
+ k2SeqData = 5,
+ k2SeqItemAnimData = 6,
+ k2ItemAnimDefinition = 7,
+
+ kLoLCharData = 8,
+ kLoLSpellData = 9,
+ kLoLCompassData = 10,
+ kLoLFlightShpData = 11,
+ kLoLButtonData = 12,
+ kRawDataBe16 = 13,
+ kRawDataBe32 = 14,
+
+ kEoB2SequenceData = 15,
+ kEoB2ShapeData = 16,
+ kEoBNpcData = 17
+};
+
struct ExtractFilename {
int id;
int type;
@@ -686,21 +710,19 @@ enum kGame {
kKyra1 = 0,
kKyra2,
kKyra3,
- kLoL,
kEoB1,
- kEoB2
+ kEoB2,
+ kLoL
};
struct Game {
int game;
- int lang[3];
int platform;
int special;
-
- const char *md5[2];
+ int lang;
};
-#define GAME_DUMMY_ENTRY { -1, { -1, -1, -1 }, -1, -1, { 0, 0 } }
+#define GAME_DUMMY_ENTRY { -1, -1, -1, -1 }
extern const Game * const gameDescs[];
diff --git a/devtools/create_kyradat/extract.cpp b/devtools/create_kyradat/extract.cpp
deleted file mode 100644
index b2f520d0d3..0000000000
--- a/devtools/create_kyradat/extract.cpp
+++ /dev/null
@@ -1,1237 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-// Disable symbol overrides so that we can use system headers.
-#define FORBIDDEN_SYMBOL_ALLOW_ALL
-
-#include "extract.h"
-#include "common/language.h"
-#include "common/platform.h"
-
-#include <algorithm>
-
-namespace {
-
-// Extraction function prototypes
-
-bool extractRaw(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractStrings10(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractRooms(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractShapes(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractKyraForestSeqData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractAmigaSfx(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractWdSfx(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-
-bool extractHofSeqData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractHofShapeAnimDataV1(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractHofShapeAnimDataV2(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-
-bool extractStringsWoSuffix(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractPaddedStrings(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractRaw16to8(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractMrShapeAnimData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractRaw16(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractRaw32(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractLoLButtonDefs(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractLoLFlyingShpDefs(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-
-bool extractEoB2SeqData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractEoB2ShapeData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-bool extractEoBNpcData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-// Extraction type table
-
-const ExtractType extractTypeTable[] = {
- { kTypeStringList, extractStrings },
- { kTypeRoomList, extractRooms },
- { kTypeShapeList, extractShapes },
- { kTypeRawData, extractRaw },
- { kTypeForestSeqData, extractKyraForestSeqData },
- { kTypeAmigaSfxTable, extractAmigaSfx },
- { kTypeTownsWDSfxTable, extractWdSfx },
-
- { k2TypeSeqData, extractHofSeqData },
- { k2TypeShpDataV1, extractHofShapeAnimDataV1 },
- { k2TypeShpDataV2, extractHofShapeAnimDataV2 },
- { k2TypeSoundList, extractStringsWoSuffix },
- { k2TypeLangSoundList, extractStringsWoSuffix },
- { k2TypeSize10StringList, extractStrings10 },
- { k2TypeSfxList, extractPaddedStrings },
- { k3TypeRaw16to8, extractRaw16to8 },
- { k3TypeShpData, extractMrShapeAnimData },
-
- { kLoLTypeCharData, extractRaw },
- { kLoLTypeSpellData, extractRaw },
- { kLoLTypeCompassData, extractRaw16to8 },
- { kLoLTypeFlightShpData, extractLoLFlyingShpDefs },
- { kLoLTypeRaw16, extractRaw16 },
- { kLoLTypeRaw32, extractRaw32 },
- { kLoLTypeButtonDef, extractLoLButtonDefs },
-
- { kEoB2TypeSeqData, extractEoB2SeqData },
- { kEoB2TypeShapeData, extractEoB2ShapeData },
- { kEoBTypeNpcData, extractEoBNpcData },
-
- { -1, 0 }
-};
-
-// TODO: Clean up the mess of data types we have... it seems some special types
-// we have (even in the main KYRA code, is just raw data access, but used specially
-// to have a nice wrapper from inside StaticResource...).
-const TypeTable typeTable[] = {
- { kTypeStringList, 0 },
- { kTypeRawData, 1 },
- { kTypeRoomList, 2 },
- { kTypeShapeList, 3 },
- { kTypeForestSeqData, 1 },
- { kTypeAmigaSfxTable, 4 },
- { kTypeTownsWDSfxTable, 1 },
- { k2TypeSeqData, 5 },
- { k2TypeShpDataV1, 6 },
- { k2TypeShpDataV2, 7 },
- { k2TypeSoundList, 0 },
- { k2TypeLangSoundList, 0 },
- { k2TypeSize10StringList, 0 },
- { k2TypeSfxList, 0 },
- { k3TypeRaw16to8, 1 },
- { k3TypeShpData, 7 },
- { kLoLTypeRaw16, 13 },
- { kLoLTypeRaw32, 14 },
- { kLoLTypeButtonDef, 12 },
- { kLoLTypeCharData, 8 },
- { kLoLTypeSpellData, 9 },
- { kLoLTypeCompassData, 10 },
- { kLoLTypeFlightShpData, 11 },
- { kEoB2TypeSeqData, 15 },
- { kEoB2TypeShapeData, 16 },
- { kEoBTypeNpcData, 17},
- { -1, 1 }
-};
-
-} // end of anonymous namespace
-
-// misc
-
-const ExtractType *findExtractType(const int type) {
- for (const ExtractType *i = extractTypeTable; i->type != -1; ++i) {
- if (i->type == type)
- return i;
- }
- return 0;
-}
-
-byte getTypeID(int type) {
- return std::find(typeTable, ARRAYEND(typeTable) - 1, type)->value;
-}
-// Extractor implementation
-
-namespace {
-
-bool extractRaw(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- uint8 *buffer = new uint8[size];
- assert(buffer);
- memcpy(buffer, data, size);
-
- return out.addFile(filename, buffer, size);
-}
-
-bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- // Skip tables for skipping English string left-overs in the hacky Russian fan translations
- static const uint8 rusFanSkip_k2SeqplayStrings[] = { 1, 3, 5, 8, 10, 11, 13, 15, 17, 20, 22, 25, 26, 30, 33, 38, 40, 41, 44, 49, 51, 55, 104, 119, 121, 123 };
- static const uint8 rusFanSkip_k1IntroStrings[] = { 3, 5, 9, 11, 13, 16, 18, 21, 24, 32, 34, 36, 38, 41, 44, 49, 52, 55, 57, 59, 61, 64, 66, 69, 72, 75 };
- static const uint8 rusFanSkip_k1ThePoisonStrings[] = { 1, 4 };
- static const uint8 rusFanSkip_k1FullFlaskStrings[] = { 1, 2, 4, 5, 7 };
- static const uint8 rusFanSkip_k1WispJewelStrings[] = { 2 };
- static const uint8 rusFanSkip_k1GUIStrings[] = { 1, 3, 6, 8, 11, 13, 18 };
- uint32 rusFanSkipIdLen = 0;
- const uint8 *rusFanSkipId = 0;
- uint rusFanEmptyId = 10000;
- uint32 skipCount = 0;
-
- int patch = 0;
- // FM Towns files that need addional patches
- if (info->platform == kPlatformFMTowns) {
- if (id == k1TakenStrings || id == k1NoDropStrings || id == k1PoisonGoneString ||
- id == k1ThePoisonStrings || id == k1FluteStrings || id == k1WispJewelStrings)
- patch = 1;
- else if (id == k1IntroStrings)
- patch = 2;
- else if (id == k2SeqplayStrings)
- patch = 3;
- } else if (info->platform == kPlatformDOS) {
- if (id == k2IngamePakFiles)
- patch = 4;
-
- if (info->lang == Common::RU_RUS && info->special == kNoSpecial) {
- patch = 5;
- if (id == k2SeqplayStrings) {
- rusFanSkipId = rusFanSkip_k2SeqplayStrings;
- rusFanSkipIdLen = ARRAYSIZE(rusFanSkip_k2SeqplayStrings);
- rusFanEmptyId = 81;
- } else if (id == k1IntroStrings) {
- rusFanSkipId = rusFanSkip_k1IntroStrings;
- rusFanSkipIdLen = ARRAYSIZE(rusFanSkip_k1IntroStrings);
- rusFanEmptyId = 30;
- } else if (id == k1ThePoisonStrings) {
- rusFanSkipId = rusFanSkip_k1ThePoisonStrings;
- rusFanSkipIdLen = ARRAYSIZE(rusFanSkip_k1ThePoisonStrings);
- } else if (id == k1FullFlaskString) {
- rusFanSkipId = rusFanSkip_k1FullFlaskStrings;
- rusFanSkipIdLen = ARRAYSIZE(rusFanSkip_k1FullFlaskStrings);
- } else if (id == k1GUIStrings) {
- rusFanSkipId = rusFanSkip_k1GUIStrings;
- rusFanSkipIdLen = ARRAYSIZE(rusFanSkip_k1GUIStrings);
- } else if (id == k1WispJewelStrings) {
- rusFanSkipId = rusFanSkip_k1WispJewelStrings;
- rusFanSkipIdLen = ARRAYSIZE(rusFanSkip_k1WispJewelStrings);
- }
- }
-
- // HACK
- if (id == k2SeqplayIntroTracks && info->game == kLoL)
- return extractStringsWoSuffix(out, info, data, size, filename, id);
- }
-
- uint32 entries = 0;
- uint32 targetsize = size + 4;
- for (uint32 i = 0; i < size; ++i) {
- if (!data[i]) {
- if (info->platform == kPlatformAmiga) {
- if (i + 1 >= size)
- ++entries;
- else if (!data[i+1] && !(i & 1))
- continue;
- else
- ++entries;
- } else {
- ++entries;
- }
-
- if (info->platform == kPlatformFMTowns) {
- // prevents creation of empty entries (which we have mostly between all strings in the FM-TOWNS version)
- while (!data[++i]) {
- if (i == size)
- break;
- targetsize--;
- }
- if (patch == 1) {
- // Here is the first step of the extra treatment for all FM-TOWNS string arrays that
- // contain more than one string and which the original code
- // addresses via stringname[boolJapanese].
- // We simply skip every other string
- if (i == size)
- continue;
- uint32 len = strlen((const char*) data + i);
- i += len;
-
- targetsize = targetsize - 1 - len;
-
- while (!data[++i]) {
- if (i == len)
- break;
- targetsize--;
- }
- }
- } else if (patch == 5) {
- ++skipCount;
- while (!data[i + 1]) {
- if (skipCount == rusFanEmptyId) {
- ++skipCount;
- ++entries;
- break;
- }
- if (++i == size)
- break;
- targetsize--;
- }
-
- // Skip English string left-overs in the hacky Russian fan translation
- for (uint32 ii = 0; ii < rusFanSkipIdLen; ++ii) {
- if (skipCount == rusFanSkipId[ii]) {
- ++skipCount;
- uint32 len = strlen((const char*) data + i);
- i += len;
- targetsize = targetsize - 1 - len;
- while (!data[i + 1]) {
- if (++i == len)
- break;
- targetsize--;
- }
- }
- }
- }
- }
- }
-
- if (patch == 2) {
- if (info->lang == EN_ANY) {
- targetsize--;
- entries += 1;
- } else if (info->lang == JA_JPN) {
- targetsize += 2;
- entries += 2;
- }
- }
-
- if (patch == 3) {
- entries++;
- targetsize++;
- }
-
- if (patch == 4) {
- targetsize -= 9;
- }
-
- uint8 *buffer = new uint8[targetsize];
- assert(buffer);
- memset(buffer, 0, targetsize);
- uint8 *output = buffer;
- const uint8 *input = (const uint8*) data;
- skipCount = 0;
-
- WRITE_BE_UINT32(output, entries); output += 4;
- if (info->platform == kPlatformFMTowns) {
- const byte *c = data + size;
- do {
- if (patch == 2 && input - data == 0x3C0 && input[0x10] == 0x32) {
- memcpy(output, input, 0x0F);
- input += 0x11; output += 0x0F;
- }
-
- strcpy((char *) output, (const char*) input);
- uint32 stringsize = strlen((const char*)output) + 1;
- input += stringsize; output += stringsize;
- // skip empty entries
- while (!*input) {
- // Write one empty string into intro strings file
- if (patch == 2) {
- if ((info->lang == EN_ANY && input - data == 0x260) ||
- (info->lang == JA_JPN && (input - data == 0x2BD || input - data == 0x2BE)))
- *output++ = *input;
- }
-
- // insert one dummy string at hof sequence strings position 59
- if (patch == 3) {
- if ((info->lang == EN_ANY && input - data == 0x695) ||
- (info->lang == JA_JPN && input - data == 0x598))
- *output++ = *input;
- }
-
- if (++input == c)
- break;
- }
-
- if (patch == 1) {
- // Here is the extra treatment for all FM-TOWNS string arrays that
- // contain more than one string and which the original code
- // addresses via stringname[boolJapanese].
- // We simply skip every other string
- if (input == c)
- continue;
- input += strlen((const char*)input);
- while (!*input) {
- if (++input == c)
- break;
- }
- }
-
- } while (input < c);
- } else if (info->platform == kPlatformAmiga) {
- // we need to strip some aligment zeros out here
- int dstPos = 0;
- for (uint32 i = 0; i < size; ++i) {
- if (!data[i] && !(i & 1)) {
- if (i + 1 > size)
- continue;
- else if (i + 1 < size && !data[i+1])
- continue;
- }
-
- *output++ = data[i];
- ++dstPos;
- }
- targetsize = dstPos + 4;
- } else if (patch == 5) {
- const byte *c = data + size;
- do {
- strcpy((char *) output, (const char*) input);
- uint32 stringsize = strlen((const char*)output) + 1;
- input += stringsize; output += stringsize;
-
- ++skipCount;
- while (!*input) {
- if (skipCount == rusFanEmptyId) {
- *output++ = *input;
- ++skipCount;
- }
- if (++input == c)
- break;
- }
- // Skip English string left-overs in the hacky Russian fan translation
- for (uint32 ii = 0; ii < rusFanSkipIdLen; ++ii) {
- if (skipCount == rusFanSkipId[ii]) {
- ++skipCount;
- input += strlen((const char*)input);
- while (!*input) {
- if (++input == c)
- break;
- }
- }
- }
-
- } while (input < c);
- } else {
- uint32 copySize = size;
- if (patch == 4) {
- memcpy(output, data, 44);
- output += 44;
- data += 44;
- for (int t = 1; t != 10; t++) {
- sprintf((char *) output, "COST%d_SH.PAK", t);
- output += 13;
- }
- data += 126;
- copySize -= 170;
- }
- memcpy(output, data, copySize);
- }
-
- return out.addFile(filename, buffer, targetsize);
-}
-
-bool extractStrings10(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- // HACK...
- if (info->platform == kPlatformFMTowns && id == k2IngameSfxFiles)
- return extractStringsWoSuffix(out, info, data, size, filename, id);
-
- const int strSize = 10;
- uint32 entries = (size + (strSize - 1)) / strSize;
-
- uint8 *buffer = new uint8[size + 4];
- assert(buffer);
- uint8 *output = buffer;
- WRITE_BE_UINT32(output, entries); output += 4;
-
- for (uint32 i = 0; i < entries; ++i) {
- const byte *src = data + i * strSize;
-
- while (*src)
- *output++ = *src++;
- *output++ = '\0';
- }
-
- return out.addFile(filename, buffer, output - buffer);
-}
-
-bool extractRooms(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- // different entry size for the FM-TOWNS version
- const int roomEntrySize = (info->platform == kPlatformFMTowns) ? (0x69) : ((info->platform == kPlatformAmiga) ? 0x52 : 0x51);
- const int countRooms = size / roomEntrySize;
-
- uint8 *buffer = new uint8[countRooms * 9 + 4];
- assert(buffer);
- uint8 *output = buffer;
-
- WRITE_BE_UINT32(output, countRooms); output += 4;
-
- const byte *src = data;
- if (info->platform == kPlatformAmiga) {
- for (int i = 0; i < countRooms; ++i) {
- *output++ = *src++; assert(*src == 0); ++src;
- memcpy(output, src, 8); output += 0x8;
- src += roomEntrySize - 0x2;
- }
- } else {
- for (int i = 0; i < countRooms; ++i) {
- *output++ = *src++;
- WRITE_BE_UINT16(output, READ_LE_UINT16(src)); output += 2; src += 2;
- WRITE_BE_UINT16(output, READ_LE_UINT16(src)); output += 2; src += 2;
- WRITE_BE_UINT16(output, READ_LE_UINT16(src)); output += 2; src += 2;
- WRITE_BE_UINT16(output, READ_LE_UINT16(src)); output += 2; src += 2;
- src += roomEntrySize - 0x9;
- }
- }
-
- return out.addFile(filename, buffer, countRooms * 9 + 4);
-}
-
-bool extractShapes(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- byte *buffer = new byte[size + 1 * 4];
- assert(buffer);
- byte *output = buffer;
-
- const int count = size / 0x07;
- WRITE_BE_UINT32(output, count); output += 4;
- memcpy(output, data, size);
-
- return out.addFile(filename, buffer, size + 1 * 4);
-}
-
-bool extractKyraForestSeqData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- if (info->platform != kPlatformPC98)
- return extractRaw(out, info, data, size, filename, id);
-
- struct PatchEntry {
- uint16 pos;
- uint8 val;
- };
-
- // This data has been taken from the FM-Towns version
- static const PatchEntry patchData[] = {
- { 0x0019, 0x06 }, { 0x001A, 0x09 }, { 0x001B, 0x00 }, { 0x002E, 0x06 }, { 0x002F, 0x09 }, { 0x0030, 0x00 },
- { 0x003D, 0x06 }, { 0x003E, 0x09 }, { 0x003F, 0x00 }, { 0x004C, 0x06 }, { 0x004D, 0x09 }, { 0x004E, 0x00 },
- { 0x005B, 0x06 }, { 0x005C, 0x09 }, { 0x005D, 0x00 }, { 0x0064, 0x06 }, { 0x0065, 0x09 }, { 0x0066, 0x00 },
- { 0x0079, 0x06 }, { 0x007A, 0x09 }, { 0x007B, 0x00 }, { 0x0088, 0x06 }, { 0x0089, 0x09 }, { 0x008A, 0x00 },
- { 0x0097, 0x06 }, { 0x0098, 0x09 }, { 0x0099, 0x00 }, { 0x00A6, 0x06 }, { 0x00A7, 0x09 }, { 0x00A8, 0x00 },
- { 0x00AD, 0x06 }, { 0x00AE, 0x09 }, { 0x00AF, 0x00 }, { 0x00B4, 0x06 }, { 0x00B5, 0x09 }, { 0x00B6, 0x00 },
- { 0x00C3, 0x06 }, { 0x00C4, 0x09 }, { 0x00C5, 0x00 }, { 0x00CA, 0x06 }, { 0x00CB, 0x09 }, { 0x00CC, 0x00 },
- { 0x00D1, 0x06 }, { 0x00D2, 0x09 }, { 0x00D3, 0x00 }, { 0x00E0, 0x06 }, { 0x00E1, 0x09 }, { 0x00E2, 0x00 },
- { 0x00E7, 0x06 }, { 0x00E8, 0x09 }, { 0x00E9, 0x00 }, { 0x00EE, 0x06 }, { 0x00EF, 0x09 }, { 0x00F0, 0x00 },
- { 0x00FD, 0x06 }, { 0x00FE, 0x09 }, { 0x00FF, 0x00 }, { 0x010A, 0x06 }, { 0x010B, 0x09 }, { 0x010C, 0x00 },
- { 0x011D, 0x06 }, { 0x011E, 0x09 }, { 0x011F, 0x00 }, { 0x012C, 0x06 }, { 0x012D, 0x09 }, { 0x012E, 0x00 },
- { 0x013D, 0x06 }, { 0x013E, 0x09 }, { 0x013F, 0x00 }, { 0x0148, 0x06 }, { 0x0149, 0x09 }, { 0x014A, 0x00 },
- { 0x0153, 0x06 }, { 0x0154, 0x09 }, { 0x0155, 0x00 }, { 0x015E, 0x06 }, { 0x015F, 0x09 }, { 0x0160, 0x00 },
- { 0x0169, 0x06 }, { 0x016A, 0x09 }, { 0x016B, 0x00 }, { 0x016C, 0x06 }, { 0x016D, 0x12 }, { 0x016E, 0x00 },
- { 0x017B, 0x06 }, { 0x017C, 0x09 }, { 0x017D, 0x00 }, { 0x0188, 0x06 }, { 0x0189, 0x09 }, { 0x018A, 0x00 },
- { 0x0190, 0x13 }, { 0x0000, 0x00 }
- };
-
- uint32 outsize = size + (ARRAYSIZE(patchData) - 1);
- uint8 *buffer = new uint8[outsize];
- assert(buffer);
-
- const uint8 *src = data;
- uint8 *dst = buffer;
- const PatchEntry *patchPos = patchData;
-
- while (dst < (buffer + outsize)) {
- if ((dst - buffer) == patchPos->pos) {
- *dst++ = patchPos->val;
- patchPos++;
- } else {
- *dst++ = *src++;
- }
- }
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractAmigaSfx(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- const uint32 entries = size / 8;
- byte *buffer = new byte[entries * 6 + 1 * 4];
-
- byte *output = buffer;
- WRITE_BE_UINT32(output, entries); output += 4;
-
- for (uint32 i = 0; i < entries; ++i) {
- *output++ = *data++; // Note
- *output++ = *data++; // Patch
- data += 2; // Unused
- WRITE_BE_UINT16(output, READ_BE_UINT16(data)); output += 2; data += 2; // Duration
- *output++ = *data++; // Volume
- *output++ = *data++; // Pan
- }
-
- return out.addFile(filename, buffer, entries * 6 + 1 * 4);
-}
-
-bool extractWdSfx(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- const int bufferSize = 0x12602;
-
- uint8 *buffer = new uint8[0x12602];
- assert(buffer);
- memcpy(buffer, data, 0x7EE5);
- memcpy(buffer + 0x7EE5, data + 0x7EE7, 0x7FFF);
- memcpy(buffer + 0xFEE4, data + 0xFEE8, 0x271E);
-
- return out.addFile(filename, buffer, bufferSize);
-}
-
-int extractHofSeqData_checkString(const void *ptr, uint8 checkSize);
-int extractHofSeqData_isSequence(const void *ptr, const ExtractInformation *info, uint32 maxCheckSize);
-int extractHofSeqData_isControl(const void *ptr, uint32 size);
-
-bool extractHofSeqData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int numSequences = 0;
- int numNestedSequences = 0;
-
- uint16 headerSize = 50 * sizeof(uint16);
- uint16 bufferSize = size + headerSize;
- byte *buffer = new byte[bufferSize];
- assert(buffer);
- memset(buffer, 0, bufferSize );
- uint16 *header = (uint16 *) buffer;
- byte *output = buffer + headerSize;
- uint16 *hdout = header;
-
- //debug(1, "\nProcessing Hand of Fate sequence data:\n--------------------------------------\n");
- for (int cycle = 0; cycle < 2; cycle++) {
- const byte *ptr = data;
- hdout++;
-
- const byte *endOffs = (const byte *)(data + size);
-
- // detect sequence structs
- while (ptr < endOffs) {
- if (ptr[1]) {
- error("invalid sequence data encountered");
- delete[] buffer;
- return false;
- }
-
- int v = extractHofSeqData_isSequence(ptr, info, endOffs - ptr);
-
- if (cycle == 0 && v == 1) {
- if ((info->platform == kPlatformDOS && info->special == kNoSpecial && *ptr == 5) || (info->special == kDemoVersion && (ptr - data == 312))) {
- // patch for floppy version: skips invalid ferb sequence
- // patch for demo: skips invalid title sequence
- ptr += 54;
- continue;
- }
-
- numSequences++;
- uint16 relOffs = (uint16) (output - buffer);
- WRITE_BE_UINT16(hdout, relOffs);
- hdout++;
-
- WRITE_BE_UINT16(output, READ_LE_UINT16(ptr)); // flags
- ptr += 2;
- output += 2;
-
- memcpy(output, ptr, 28); // wsa and cps file names
- ptr += 28;
- output += 28;
-
- if (info->platform == kPlatformFMTowns) { // startupCommand + finalCommand
- memcpy(output, ptr, 2);
- ptr += 2;
- output += 2;
- } else {
- *output++ = READ_LE_UINT16(ptr) & 0xff;
- ptr += 2;
- *output++ = READ_LE_UINT16(ptr) & 0xff;
- ptr += 2;
- }
-
- for (int w = 0; w < 7; w++) { //stringIndex1 to yPos
- WRITE_BE_UINT16(output, READ_LE_UINT16(ptr));
- ptr += 2;
- output += 2;
- }
-
- ptr += 4;
- WRITE_BE_UINT16(output, READ_LE_UINT16(ptr)); // duration
- ptr += 2;
- output+= 2;
-
- } else if (cycle == 1 && v != 1 && v != -2) {
- uint16 controlOffs = 0;
- uint16 ctrSize = 0;
- if (v) {
- const byte *ctrStart = ptr;
- while (v && v != -2) {
- ptr++;
- v = extractHofSeqData_isSequence(ptr, info, endOffs - ptr);
- }
-
- if (v == -2)
- break;
-
- ctrSize = (uint16)(ptr - ctrStart);
-
- if (info->special != kDemoVersion &&
- extractHofSeqData_isControl(ctrStart, ctrSize)) {
- controlOffs = (uint16) (output - buffer);
- *output++ = ctrSize >> 2;
-
- for (int cc = 0; cc < ctrSize; cc += 2)
- WRITE_BE_UINT16(output + cc, READ_LE_UINT16(ctrStart + cc)); // frame control
- output += ctrSize;
- }
- }
-
- numNestedSequences++;
- uint16 relOffs = (uint16) (output - buffer);
- WRITE_BE_UINT16(hdout, relOffs);
- hdout++;
-
- WRITE_BE_UINT16(output, READ_LE_UINT16(ptr)); // flags
- ptr += 2;
- output += 2;
-
- memcpy(output, ptr, 14); // wsa file name
- ptr += 14;
- output += 14;
-
- // startframe
- WRITE_BE_UINT16(output, READ_LE_UINT16(ptr));
- ptr += 2;
- output += 2;
-
- // endFrame
- WRITE_BE_UINT16(output, (ctrSize && ((ctrSize >> 2) < READ_LE_UINT16(ptr))) ? (ctrSize >> 2) : READ_LE_UINT16(ptr));
- ptr += 2;
- output += 2;
-
- // frameDelay
- WRITE_BE_UINT16(output, READ_LE_UINT16(ptr));
- ptr += 2;
- output += 2;
-
- ptr += 4;
-
- for (int w = 0; w < 2; w++) { //x, y
- WRITE_BE_UINT16(output, READ_LE_UINT16(ptr));
- ptr += 2;
- output += 2;
- }
-
- if (!READ_LE_UINT32(ptr))
- controlOffs = 0;
-
- WRITE_BE_UINT16(output, controlOffs);
- if (info->special != kDemoVersion)
- ptr += 4;
- output += 2;
-
- if (info->special != kDemoVersion) {
- for (int w = 0; w < 2; w++) { //startupCommand, finalCommand
- WRITE_BE_UINT16(output, READ_LE_UINT16(ptr));
- ptr += 2;
- output += 2;
- }
- } else {
- memset(output, 0, 4);
- output += 4;
- }
-
- if (info->platform == kPlatformFMTowns)
- ptr += 2;
-
- } else if (cycle == 0) {
- while (v != 1 && v != -2) {
- ptr++;
- v = extractHofSeqData_isSequence(ptr, info, endOffs - ptr);
- }
-
- if (v == -2)
- break;
-
-
- } else if (cycle == 1) {
- while (v == 1 && v != -2) {
- ptr++;
- v = extractHofSeqData_isSequence(ptr, info, endOffs - ptr);
- }
-
- if (v == -2)
- break;
- }
- }
- }
-
- uint16 finHeaderSize = (2 + numSequences + numNestedSequences) * sizeof(uint16);
- uint16 finBufferSize = ((output - buffer) - headerSize) + finHeaderSize;
- byte *finBuffer = new byte[finBufferSize];
- assert(finBuffer);
- uint16 diff = headerSize - finHeaderSize;
- uint16 *finHeader = (uint16 *) finBuffer;
-
- for (int i = 1; i < finHeaderSize; i++)
- WRITE_BE_UINT16(&finHeader[i], (READ_BE_UINT16(&header[i]) - diff));
- WRITE_BE_UINT16(finHeader, numSequences);
- WRITE_BE_UINT16(&finHeader[numSequences + 1], numNestedSequences);
- memcpy (finBuffer + finHeaderSize, buffer + headerSize, finBufferSize - finHeaderSize);
- delete[] buffer;
-
- finHeader = (uint16 *) (finBuffer + ((numSequences + 2) * sizeof(uint16)));
- for (int i = 0; i < numNestedSequences; i++) {
- uint8 * offs = finBuffer + READ_BE_UINT16(finHeader++) + 26;
- uint16 ctrl = READ_BE_UINT16(offs);
- if (ctrl)
- ctrl -= diff;
- WRITE_BE_UINT16(offs, ctrl);
- }
-
- return out.addFile(filename, finBuffer, finBufferSize);
-}
-
-int extractHofSeqData_checkString(const void *ptr, uint8 checkSize) {
- // return values: 1 = text; 0 = zero string; -1 = other
-
- int t = 0;
- int c = checkSize;
- const uint8 *s = (const uint8*)ptr;
-
- // check for character string
- while (c--) {
- if (*s > 31 && *s < 123)
- t++;
- s++;
- }
-
- if (t == checkSize)
- return 1;
-
- // check for zero string
- c = checkSize;
- uint32 sum = 0;
- s = (const uint8*)ptr;
- while (c--)
- sum += *s++;
-
- return (sum) ? -1 : 0;
-}
-
-int extractHofSeqData_isSequence(const void *ptr, const ExtractInformation *info, uint32 maxCheckSize) {
- // return values: 1 = Sequence; 0 = Nested Sequence; -1 = other; -2 = overflow
-
- if (maxCheckSize < 30)
- return -2;
-
- const uint8 * s = (const uint8*)ptr;
- int c1 = extractHofSeqData_checkString(s + 2, 6);
- int c2 = extractHofSeqData_checkString(s + 16, 6);
- int c3 = extractHofSeqData_checkString(s + 2, 14);
- int c4 = extractHofSeqData_checkString(s + 16, 14);
- int c0 = s[1];
- int c5 = s[0];
-
- if (c0 == 0 && c5 && ((c1 + c2) >= 1) && (!(c3 == 0 && c2 != 1)) && (!(c4 == 0 && c1 != 1))) {
- if (maxCheckSize < 41)
- return -2;
-
- if (info->platform == kPlatformFMTowns) {
- if (!(s[37] | s[39]) && s[38] > s[36])
- return 1;
- } else {
- if (!(s[39] | s[41]) && s[40] > s[38])
- return 1;
- }
- }
-
- if (c0 == 0 && c5 == 4 && c3 == 0 && c4 == 0) {
- if (maxCheckSize >= 41 && READ_LE_UINT32(s + 34) && !(s[39] | s[41]) && s[40] > s[38])
- return 1;
- }
-
- if (c0 == 0 && c5 && c1 == 1 && c4 == -1 && s[20])
- return 0;
-
- return -1;
-}
-
-int extractHofSeqData_isControl(const void *ptr, uint32 size) {
- // return values: 1 = possible frame control data; 0 = definitely not frame control data
-
- const uint8 *s = (const uint8*)ptr;
- for (uint32 i = 2; i < size; i += 4) {
- if (!s[i])
- return 0;
- }
-
- for (uint32 i = 1; i < size; i += 2) {
- if (s[i])
- return 0;
- }
- return 1;
-}
-
-bool extractHofShapeAnimDataV1(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int outsize = 1;
- uint8 *buffer = new uint8[size + 1];
- const uint8 *src = data;
- uint8 *dst = buffer + 1;
-
- for (int i = 0; i < 4; i++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2;
- dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 4;
- dst += 2;
- outsize += 4;
-
- for (int j = 0; j < 20; j++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2;
- dst += 2;
- outsize += 2;
- }
-
- };
-
- *buffer = 4; // number of items
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractHofShapeAnimDataV2(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int outsize = 1;
- uint8 *buffer = new uint8[size + 1];
- const uint8 *src = data;
- uint8 *dst = buffer + 1;
- const uint8 *fin = data + size;
- int count = 0;
-
- do {
- if (READ_LE_UINT16(src) == 0xffff)
- break;
-
- count++;
-
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2;
- dst += 2;
-
- uint8 numFrames = *src;
- *dst++ = numFrames;
- src += 6;
- outsize += 3;
-
- for (int i = 0; i < (numFrames << 1); i++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2;
- dst += 2;
- outsize += 2;
- }
-
- src += (48 - (numFrames << 2));
-
- } while (src < fin);
-
- *buffer = count; // number of items
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractStringsWoSuffix(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int outsize = size + 4;
- uint8 *buffer = new uint8[outsize];
- const uint8 *src = data;
- uint8 *dst = buffer + 4;
- const uint8 *fin = src + size;
- int entries = 0;
-
- while (src < fin) {
- while (!*src && src < fin)
- src++;
- while (*src && *src != '.' && src < fin)
- *dst++ = *src++;
-
- *dst++ = '\0';
- entries++;
-
- if (*src == '.') {
- while (*src && src < fin)
- src++;
- }
- }
-
- WRITE_BE_UINT32(buffer, entries);
- outsize = dst - buffer;
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractPaddedStrings(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int outsize = size + 4;
- uint8 *buffer = new uint8[outsize];
- const uint8 *src = data;
- uint8 *dst = buffer + 4;
- const uint8 *fin = src + size;
- int entries = 0;
-
- while (src < fin) {
- while (!*src && src < fin)
- src++;
- while (*src && src < fin)
- *dst++ = *src++;
- if (src < fin)
- *dst++ = *src++;
- entries++;
- }
-
- WRITE_BE_UINT32(buffer, entries);
-
- outsize = dst - buffer;
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractRaw16to8(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- // Hack for some LOL FM-Towns entries
- if (info->platform == Common::kPlatformFMTowns && ((id >= kLoLButtonList1 && id <= kLoLButtonList8) || id == kLoLCharInvIndex))
- return extractRaw(out, info, data, size, filename, id);
-
- int outsize = size >> 1;
- uint8 *buffer = new uint8[outsize];
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- for (int i = 0; i < outsize; i++) {
- *dst++ = *src++;
- src++;
- }
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractRaw16(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- uint8 *buffer = new uint8[size];
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- for (uint32 i = 0; i < (size >> 1); i++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2;
- dst += 2;
- }
-
- return out.addFile(filename, buffer, size);
-}
-
-bool extractRaw32(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- uint8 *buffer = new uint8[size];
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- for (uint32 i = 0; i < (size >> 2); i++) {
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4;
- dst += 4;
- }
-
- return out.addFile(filename, buffer, size);
-}
-
-bool extractLoLButtonDefs(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int num = size / 22;
- uint8 *buffer = new uint8[size];
- uint32 outsize = num * 18;
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- for (int i = 0; i < num; i++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 6; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- }
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractLoLFlyingShpDefs(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- if (info->platform != Common::kPlatformFMTowns)
- return extractRaw16to8(out, info, data, size, filename, id);
-
- int outsize = size / 9 * 5;
- uint8 *buffer = new uint8[outsize];
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- for (int i = outsize / 5; i; --i) {
- *dst++ = *src++;
- src++;
- *dst++ = *src++;
- src++;
- *dst++ = *src++;
- src++;
- *dst++ = *src++;
- *dst++ = *src++;
- src++;
- }
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractEoB2SeqData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int num = size / 11;
- uint8 *buffer = new uint8[size];
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- for (int i = 0; i < num; i++) {
- memcpy(dst, src, 2);
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- memcpy(dst, src, 7);
- src += 7; dst += 7;
- }
-
- return out.addFile(filename, buffer, size);
-}
-
-bool extractEoB2ShapeData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int num = size / 6;
- uint8 *buffer = new uint8[size];
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- for (int i = 0; i < num; i++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- memcpy(dst, src, 4);
- src += 4; dst += 4;
- }
-
- return out.addFile(filename, buffer, size);
-}
-
-bool extractEoBNpcData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- // We use one extraction routine for both EOB 1 and EOB 2 (in spite of the data format differences)
- // since it is easy enough to generate a common output usable by both engines
-
- uint8 *buffer = 0;
- uint32 outsize = 0;
-
- if (info->game == kEoB1) {
- uint16 num = size / 243;
- outsize = num * 111 + 2;
- buffer = new uint8[outsize];
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- WRITE_BE_UINT16(dst, num);
- dst += 2;
-
- for (int i = 0; i < num; i++) {
- memcpy(dst, src, 27);
- src += 27; dst += 27;
- WRITE_BE_UINT16(dst, *src++);
- dst += 2;
- WRITE_BE_UINT16(dst, *src++);
- dst += 2;
- memcpy(dst, src, 10);
- src += 10; dst += 10;
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4; dst += 4;
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4; dst += 4;
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4; dst += 4;
- // skipping lots of zero space
- src += 64;
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4; dst += 4;
- for (int ii = 0; ii < 27; ii++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- }
- // skipping more zero space
- src += 70;
- }
- } else {
- uint16 num = size / 345;
- outsize = num * 111 + 2;
- buffer = new uint8[outsize];
- const uint8 *src = data;
- uint8 *dst = buffer;
-
- WRITE_BE_UINT16(dst, num);
- dst += 2;
-
- for (int i = 0; i < num; i++) {
- memcpy(dst, src, 27);
- src += 27; dst += 27;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- memcpy(dst, src, 10);
- src += 10; dst += 10;
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4; dst += 4;
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4; dst += 4;
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4; dst += 4;
- // skipping lots of zero space
- src += 164;
- WRITE_BE_UINT32(dst, READ_LE_UINT32(src));
- src += 4; dst += 4;
- for (int ii = 0; ii < 27; ii++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src));
- src += 2; dst += 2;
- }
- // skipping more zero space
- src += 70;
- }
- }
-
- return out.addFile(filename, buffer, outsize);
-}
-
-bool extractMrShapeAnimData(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) {
- int outsize = 1;
- uint8 *buffer = new uint8[size + 1];
- const uint8 *src2 = data;
- const uint8 *src1 = data + 324;
- uint8 *dst = buffer + 1;
- const uint8 *fin = data + size;
- int count = 0;
-
- do {
- if (READ_LE_UINT16(src1) == 0xffff)
- break;
-
- count++;
-
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src1));
- src1 += 2;
- dst += 2;
-
- uint8 numFrames = *src1;
- *dst++ = numFrames;
- src1 += 10;
- outsize += 3;
-
- for (int i = 0; i < (numFrames << 1); i++) {
- WRITE_BE_UINT16(dst, READ_LE_UINT16(src2));
- src2 += 2;
- dst += 2;
- outsize += 2;
- }
- } while (src1 < fin);
-
- *buffer = count; // number of items
-
- return out.addFile(filename, buffer, outsize);
-}
-
-} // end of anonymous namespace
diff --git a/devtools/create_kyradat/extract.h b/devtools/create_kyradat/extract.h
deleted file mode 100644
index 4af9a146f4..0000000000
--- a/devtools/create_kyradat/extract.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef CREATE_KYRADAT_EXTRACT_H
-#define CREATE_KYRADAT_EXTRACT_H
-
-#include "create_kyradat.h"
-#include "pak.h"
-#include "util.h"
-
-enum kExtractType {
- kTypeStringList = 0,
- kTypeRoomList,
- kTypeShapeList,
- kTypeRawData,
- kTypeForestSeqData,
- kTypeAmigaSfxTable,
- kTypeTownsWDSfxTable,
-
- k2TypeSeqData,
- k2TypeShpDataV1,
- k2TypeShpDataV2,
- k2TypeSoundList,
- k2TypeLangSoundList,
- k2TypeSize10StringList,
- k2TypeSfxList,
-
- k3TypeRaw16to8,
- k3TypeShpData,
-
- kLoLTypeRaw16,
- kLoLTypeRaw32,
- kLoLTypeButtonDef,
- kLoLTypeCharData,
- kLoLTypeSpellData,
- kLoLTypeCompassData,
- kLoLTypeFlightShpData,
-
- kEoB2TypeSeqData,
- kEoB2TypeShapeData,
- kEoBTypeNpcData
-};
-
-struct ExtractInformation {
- int game;
- int platform;
- int lang;
- int special;
-};
-
-struct ExtractType {
- int type;
- bool (*extract)(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id);
-};
-
-const ExtractType *findExtractType(const int type);
-byte getTypeID(int type);
-
-#endif
diff --git a/devtools/create_kyradat/games.cpp b/devtools/create_kyradat/games.cpp
index e2ad4f7263..0162bda8ad 100644
--- a/devtools/create_kyradat/games.cpp
+++ b/devtools/create_kyradat/games.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -24,113 +24,110 @@
#define FORBIDDEN_SYMBOL_ALLOW_ALL
#include "create_kyradat.h"
-#include "common/language.h"
-#include "common/platform.h"
+#include "resources.h"
// Game tables
namespace {
const Game kyra1Games[] = {
- // Demos
- { kKyra1, { EN_ANY, -1, -1 }, kPlatformDOS, kDemoVersion, { "7b7504c8560ffc914d34c44c71b3094c", 0 } },
- { kKyra1, { EN_ANY, -1, -1 }, kPlatformDOS, kTalkieDemoVersion, { "226fdba99cb11ef1047131d9a50e6292", 0 } },
-
- // Amiga
- { kKyra1, { EN_ANY, -1, -1 }, kPlatformAmiga, kNoSpecial, { "b620564b6b7e0787b053ca9e35bd9f52", 0 } },
- { kKyra1, { DE_DEU, -1, -1 }, kPlatformAmiga, kNoSpecial, { "ceddb4bd4df51698e3851e75106d117a", 0 } },
-
- // Floppy
- { kKyra1, { EN_ANY, -1, -1 }, kPlatformDOS, kNoSpecial, { "76a4fc84e173cadb6369785787e1546e", 0 } },
- { kKyra1, { DE_DEU, -1, -1 }, kPlatformDOS, kNoSpecial, { "9442d6f7db6a41f3dd4aa4de5d36e107", 0 } },
- { kKyra1, { FR_FRA, -1, -1 }, kPlatformDOS, kNoSpecial, { "aa9d6d78d8b199deaf48efeca6d19af2", 0 } },
- { kKyra1, { IT_ITA, -1, -1 }, kPlatformDOS, kNoSpecial, { "5d7550306b369a3492f9f3402702477c", 0 } },
- { kKyra1, { ES_ESP, -1, -1 }, kPlatformDOS, kNoSpecial, { "9ff130d2558bcd674d4074849d93c362", 0 } },
- { kKyra1, { RU_RUS, -1, -1 }, kPlatformDOS, kOldFloppy, { "3b4719e1f8a4d67813b7ada29774aead", 0 } },
-
- // Talkie
- { kKyra1, { EN_ANY, -1, -1 }, kPlatformDOS, kTalkieVersion, { "1ebc18f3e7fbb72474a55cb0fa089ed4", 0 } },
- { kKyra1, { DE_DEU, -1, -1 }, kPlatformDOS, kTalkieVersion, { "c65d381184f98ac26d9efd2d45baef51", 0 } },
- { kKyra1, { FR_FRA, -1, -1 }, kPlatformDOS, kTalkieVersion, { "307c5d4a554d9068ac3d326e350ae4a6", 0 } },
- { kKyra1, { IT_ITA, -1, -1 }, kPlatformDOS, kTalkieVersion, { "d0f1752098236083d81b9497bd2b6989", 0 } }, // Italian fan translation
-
- // FM-TOWNS
- { kKyra1, { EN_ANY, JA_JPN, -1 }, kPlatformFMTowns, kNoSpecial, { "5a3ad60ccd0f2e29463e0368cd14a60d", 0 } },
-
- // PC-98
- { kKyra1, { JA_JPN, -1, -1 }, kPlatformPC98, kNoSpecial, { "b9c06ac5177f5bf1f1acc0eea3937f6d", 0 } },
+ { kKyra1, kPlatformDOS, kDemoVersion, EN_ANY },
+
+ { kKyra1, kPlatformDOS, kTalkieDemoVersion, EN_ANY },
+
+ { kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY },
+ { kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU },
+
+ { kKyra1, kPlatformDOS, kNoSpecial, EN_ANY },
+ { kKyra1, kPlatformDOS, kNoSpecial, DE_DEU },
+ { kKyra1, kPlatformDOS, kNoSpecial, FR_FRA },
+ { kKyra1, kPlatformDOS, kNoSpecial, IT_ITA },
+ { kKyra1, kPlatformDOS, kNoSpecial, ES_ESP },
+ { kKyra1, kPlatformDOS, kOldFloppy, RU_RUS },
+
+ { kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY },
+ { kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU },
+ { kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA },
+ { kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA },
+
+ { kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY },
+ { kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN },
+
+ { kKyra1, kPlatformPC98, kNoSpecial, JA_JPN },
GAME_DUMMY_ENTRY
};
const Game kyra2Games[] = {
- // demos
- { kKyra2, { EN_ANY, -1, -1 }, kPlatformDOS, kDemoVersion, { "a620a37579dd44ab0403482285e3897f", 0 } },
+ { kKyra2, kPlatformDOS, kDemoVersion, EN_ANY },
- { kKyra2, { EN_ANY, FR_FRA, DE_DEU }, kPlatformDOS, kTalkieDemoVersion, { "85bbc1cc6c4cef6ad31fc6ee79518efb", "fa54d8abfe05f9186c05f7de7eaf1480" } },
+ { kKyra2, kPlatformDOS, kTalkieDemoVersion, EN_ANY },
+ { kKyra2, kPlatformDOS, kTalkieDemoVersion, FR_FRA },
+ { kKyra2, kPlatformDOS, kTalkieDemoVersion, DE_DEU },
- // floppy games
- { kKyra2, { EN_ANY, -1, -1 }, kPlatformDOS, kNoSpecial, { "9b0f5e57b5a2ed88b5b989cbb402b6c7", "7c3eadbe5122722cf2e5e1611e19dfb9" } },
- { kKyra2, { FR_FRA, -1, -1 }, kPlatformDOS, kNoSpecial, { "df31cc9e37e1cf68df2fdc75ddf2d87b", "fc2c6782778e6c6d5a553d1cb73c98ad" } },
- { kKyra2, { DE_DEU, -1, -1 }, kPlatformDOS, kNoSpecial, { "0ca4f9a1438264a4c63c3218e064ed3b", "0d9b0eb7b0ad889ec942d74d80dde1bf" } },
- { kKyra2, { IT_ITA, -1, -1 }, kPlatformDOS, kNoSpecial, { "178d3ab913f61bfba21d2fb196405e8c", "3a61ed6b7c00ddae383a0361799e2ba6" } },
- { kKyra2, { RU_RUS, -1, -1 }, kPlatformDOS, kNoSpecial, { "fd6a388c01de9a578e24e3bbeacd8012", "3a61ed6b7c00ddae383a0361799e2ba6" } },
+ { kKyra2, kPlatformDOS, kNoSpecial, EN_ANY },
+ { kKyra2, kPlatformDOS, kNoSpecial, FR_FRA },
+ { kKyra2, kPlatformDOS, kNoSpecial, DE_DEU },
+ { kKyra2, kPlatformDOS, kNoSpecial, IT_ITA },
+ { kKyra2, kPlatformDOS, kNoSpecial, RU_RUS },
- // talkie games
- { kKyra2, { EN_ANY, FR_FRA, DE_DEU }, kPlatformDOS, kTalkieVersion, { "85bbc1cc6c4cef6ad31fc6ee79518efb", "e20d0d2e500f01e399ec588247a7e213" } },
- { kKyra2, { IT_ITA, FR_FRA, DE_DEU }, kPlatformDOS, kTalkieVersion, { "130795aa8f2333250c895dae9028b9bb", "e20d0d2e500f01e399ec588247a7e213" } }, // Italian Fan Translation
- { kKyra2, { RU_RUS, FR_FRA, DE_DEU }, kPlatformDOS, kTalkieVersion, { "c3afd22959f515355b2a33cde950f418", "e20d0d2e500f01e399ec588247a7e213" } }, // Russian Fan Translation
+ { kKyra2, kPlatformDOS, kTalkieVersion, EN_ANY },
+ { kKyra2, kPlatformDOS, kTalkieVersion, FR_FRA },
+ { kKyra2, kPlatformDOS, kTalkieVersion, DE_DEU },
+ { kKyra2, kPlatformDOS, kTalkieVersion, IT_ITA },
+ { kKyra2, kPlatformDOS, kTalkieVersion, RU_RUS },
- // FM-TOWNS games
- { kKyra2, { EN_ANY, JA_JPN, -1 }, kPlatformFMTowns, kNoSpecial, { "74f50d79c919cc8e7196c24942ce43d7", "a9a7fd4f05d00090e9e8bda073e6d431" } },
+ { kKyra2, kPlatformFMTowns, kNoSpecial, EN_ANY },
+ { kKyra2, kPlatformFMTowns, kNoSpecial, JA_JPN },
- // PC-98
- { kKyra2, { EN_ANY, JA_JPN, -1 }, kPlatformPC98, kNoSpecial, { "9bbf9a69be956db072b485929b416082", "f55fda3e60c4956ce6e72b24d2ae1a07" } },
+ { kKyra2, kPlatformPC98, kNoSpecial, EN_ANY },
+ { kKyra2, kPlatformPC98, kNoSpecial, JA_JPN },
GAME_DUMMY_ENTRY
};
const Game kyra3Games[] = {
- // DOS CD (multi language version, with no language specific strings)
- { kKyra3, { EN_ANY, FR_FRA, DE_DEU }, kPlatformDOS, kTalkieVersion, { "bf68701eb591d0b72219f314c0d32688", 0 } },
- { kKyra3, { EN_ANY, IT_ITA, DE_DEU }, kPlatformDOS, kTalkieVersion, { "bf68701eb591d0b72219f314c0d32688", 0 } }, // Fan translation // TODO: Verify md5sum
- { kKyra3, { ES_ESP, FR_FRA, DE_DEU }, kPlatformDOS, kTalkieVersion, { "bf68701eb591d0b72219f314c0d32688", 0 } }, // Fan translation // TODO: Verify md5sum
+ { kKyra3, kPlatformDOS, kTalkieVersion, EN_ANY },
+ { kKyra3, kPlatformDOS, kTalkieVersion, FR_FRA },
+ { kKyra3, kPlatformDOS, kTalkieVersion, DE_DEU },
+ { kKyra3, kPlatformDOS, kTalkieVersion, IT_ITA },
+ { kKyra3, kPlatformDOS, kTalkieVersion, ES_ESP },
GAME_DUMMY_ENTRY
};
const Game eob1Games[] = {
- { kEoB1, { EN_ANY, -1, -1 }, kPlatformDOS, kNoSpecial, { "1bde1dd37b40ab6de8ad11be33a44c5a", "d760a605d1a1302d06975a1f209fdd72" } },
- { kEoB1, { DE_DEU, -1, -1 }, kPlatformDOS, kNoSpecial, { "0fa3c6e00a81171b9f2adb3fdeb8eea3", "756f300c62aabf1dbd3c26b3b04f8c00" } },
+ { kEoB1, kPlatformDOS, kNoSpecial, EN_ANY },
+ { kEoB1, kPlatformDOS, kNoSpecial, DE_DEU },
+
GAME_DUMMY_ENTRY
};
const Game eob2Games[] = {
- { kEoB2, { EN_ANY, -1, -1 }, kPlatformDOS, kNoSpecial, { "e006d031c2d854f748947f777e0c59b0", 0 } },
- { kEoB2, { DE_DEU, -1, -1 }, kPlatformDOS, kNoSpecial, { "6c6c4168deb2a4cb3dee3f1be2d39746", 0 } },
+ { kEoB2, kPlatformDOS, kNoSpecial, EN_ANY },
+ { kEoB2, kPlatformDOS, kNoSpecial, DE_DEU },
+
GAME_DUMMY_ENTRY
};
const Game lolGames[] = {
- // DOS demo
- { kLoL, { EN_ANY, -1, -1 }, kPlatformDOS, kDemoVersion, { "30bb5af87d38adb47d3e6ce06b1cb042", 0 } },
+ { kLoL, kPlatformDOS, kDemoVersion, EN_ANY },
+
+ { kLoL, kPlatformDOS, kNoSpecial, EN_ANY },
+ { kLoL, kPlatformDOS, kNoSpecial, RU_RUS },
+ { kLoL, kPlatformDOS, kNoSpecial, DE_DEU },
+ { kLoL, kPlatformDOS, kNoSpecial, FR_FRA },
- // DOS floppy (no language specifc strings except character presets)
- { kLoL, { EN_ANY, -1, -1 }, kPlatformDOS, kNoSpecial, { "0cc764a204f7ba8cefe1a5f14c479619", 0 } },
- { kLoL, { RU_RUS, -1, -1 }, kPlatformDOS, kNoSpecial, { "80a9f9bf243bc6ed36d98584fc6988c4", 0 } },
- { kLoL, { DE_DEU, -1, -1 }, kPlatformDOS, kNoSpecial, { "6b843869772c1b779e1386be868c15dd", 0 } },
- { kLoL, { FR_FRA, -1, -1 }, kPlatformDOS, kNoSpecial, { "6b843869772c1b779e1386be868c15dd", 0 } },
+ { kLoL, kPlatformDOS, kTalkieVersion, EN_ANY },
+ { kLoL, kPlatformDOS, kTalkieVersion, FR_FRA },
+ { kLoL, kPlatformDOS, kTalkieVersion, DE_DEU },
+ { kLoL, kPlatformDOS, kTalkieVersion, IT_ITA },
+ { kLoL, kPlatformDOS, kTalkieVersion, RU_RUS },
- // PC98 (no language specifc strings)
- { kLoL, { JA_JPN, -1, -1 }, kPlatformPC98, kNoSpecial, { "6d5bd4a2f5ce433365734ca6b7a8d984", "1b0a457c48ae6908da301b656fe0aab4" } },
+ { kLoL, kPlatformPC98, kNoSpecial, JA_JPN },
- // FM-Towns (no language specifc strings)
- { kLoL, { JA_JPN, -1, -1 }, kPlatformFMTowns, kNoSpecial, { "a281c7143bf2b6c5d4daa107a4b0427e", "34b4cecce179990e3bcaaa2d31484a90"} },
+ { kLoL, kPlatformFMTowns, kNoSpecial, JA_JPN },
- // DOS CD (multi language version, with no language specific strings)
- { kLoL, { EN_ANY, FR_FRA, DE_DEU }, kPlatformDOS, kTalkieVersion, { "9d1778314de80598c0b0d032e2a1a1cf", "263998ec600afca1cc7b935c473df670" } },
- { kLoL, { IT_ITA, FR_FRA, DE_DEU }, kPlatformDOS, kTalkieVersion, { "9d1778314de80598c0b0d032e2a1a1cf", "f2af366e00f79dbf832fa19701d71ed9" } }, // Italian fan translation
- { kLoL, { EN_ANY, FR_FRA, RU_RUS }, kPlatformDOS, kTalkieVersion, { "9d1778314de80598c0b0d032e2a1a1cf", "5b33478718968676343803911dd5e3e4" } }, // Russian fan translation
GAME_DUMMY_ENTRY
};
@@ -824,7 +821,7 @@ const int lolFloppyNeed[] = {
kLoLDscScaleWidthData,
kLoLDscScaleHeightData,
kRpgCommonDscX,
- kLoLDscY,
+ kLoLBaseDscY,
kRpgCommonDscTileIndex,
kRpgCommonDscUnk2,
kRpgCommonDscDoorShapeIndex,
@@ -907,7 +904,7 @@ const int lolPC98Need[] = {
kLoLDscScaleWidthData,
kLoLDscScaleHeightData,
kRpgCommonDscX,
- kLoLDscY,
+ kLoLBaseDscY,
kRpgCommonDscTileIndex,
kRpgCommonDscUnk2,
kRpgCommonDscDoorShapeIndex,
@@ -991,7 +988,7 @@ const int lolFMTownsNeed[] = {
kLoLDscScaleWidthData,
kLoLDscScaleHeightData,
kRpgCommonDscX,
- kLoLDscY,
+ kLoLBaseDscY,
kRpgCommonDscTileIndex,
kRpgCommonDscUnk2,
kRpgCommonDscDoorShapeIndex,
@@ -1080,7 +1077,7 @@ const int lolCDNeed[] = {
kLoLDscScaleWidthData,
kLoLDscScaleHeightData,
kRpgCommonDscX,
- kLoLDscY,
+ kLoLBaseDscY,
kRpgCommonDscTileIndex,
kRpgCommonDscUnk2,
kRpgCommonDscDoorShapeIndex,
@@ -1231,14 +1228,14 @@ const int eob1FloppyNeed[] = {
kEoBBaseCursedString,
kEoBBaseEnchantedString,
kEoBBaseMagicObjectStrings,
- kEoBBaseMagicObject5String,
+ kEoBBaseMagicObjectString5,
kEoBBasePatternSuffix,
kEoBBasePatternGrFix1,
kEoBBasePatternGrFix2,
kEoBBaseValidateArmorString,
kEoBBaseValidateNoDropString,
kEoBBasePotionStrings,
- kEoBBaseWandString,
+ kEoBBaseWandStrings,
kEoBBaseItemMisuseStrings,
kEoBBaseTakenStrings,
@@ -1360,7 +1357,7 @@ const int eob1FloppyNeed[] = {
kEoBBaseDscItemPosIndex,
kEoBBaseDscItemShpX,
- kEoBBaseDscItemPosUnk,
+ kEoBBaseDscItemScaleIndex,
kEoBBaseDscItemTileIndex,
kEoBBaseDscItemShapeMap,
kEoBBaseDscTelptrShpCoords,
@@ -1452,7 +1449,7 @@ const int eob2FloppyNeed[] = {
kEoBBaseCursedString,
kEoBBaseEnchantedString,
kEoBBaseMagicObjectStrings,
- kEoBBaseMagicObject5String,
+ kEoBBaseMagicObjectString5,
kEoBBasePatternSuffix,
kEoBBasePatternGrFix1,
kEoBBasePatternGrFix2,
@@ -1460,7 +1457,7 @@ const int eob2FloppyNeed[] = {
kEoBBaseValidateCursedString,
kEoBBaseValidateNoDropString,
kEoBBasePotionStrings,
- kEoBBaseWandString,
+ kEoBBaseWandStrings,
kEoBBaseItemMisuseStrings,
kEoBBaseTakenStrings,
@@ -1581,7 +1578,7 @@ const int eob2FloppyNeed[] = {
kEoBBaseDscItemPosIndex,
kEoBBaseDscItemShpX,
- kEoBBaseDscItemPosUnk,
+ kEoBBaseDscItemScaleIndex,
kEoBBaseDscItemTileIndex,
kEoBBaseDscItemShapeMap,
kEoBBaseDscTelptrShpCoords,
@@ -1618,50 +1615,50 @@ const int eob2FloppyNeed[] = {
kEoB2IntroStrings,
kEoB2IntroCPSFiles,
- kEob2IntroAnimData00,
- kEob2IntroAnimData01,
- kEob2IntroAnimData02,
- kEob2IntroAnimData03,
- kEob2IntroAnimData04,
- kEob2IntroAnimData05,
- kEob2IntroAnimData06,
- kEob2IntroAnimData07,
- kEob2IntroAnimData08,
- kEob2IntroAnimData09,
- kEob2IntroAnimData10,
- kEob2IntroAnimData11,
- kEob2IntroAnimData12,
- kEob2IntroAnimData13,
- kEob2IntroAnimData14,
- kEob2IntroAnimData15,
- kEob2IntroAnimData16,
- kEob2IntroAnimData17,
- kEob2IntroAnimData18,
- kEob2IntroAnimData19,
- kEob2IntroAnimData20,
- kEob2IntroAnimData21,
- kEob2IntroAnimData22,
- kEob2IntroAnimData23,
- kEob2IntroAnimData24,
- kEob2IntroAnimData25,
- kEob2IntroAnimData26,
- kEob2IntroAnimData27,
- kEob2IntroAnimData28,
- kEob2IntroAnimData29,
- kEob2IntroAnimData30,
- kEob2IntroAnimData31,
- kEob2IntroAnimData32,
- kEob2IntroAnimData33,
- kEob2IntroAnimData34,
- kEob2IntroAnimData35,
- kEob2IntroAnimData36,
- kEob2IntroAnimData37,
- kEob2IntroAnimData38,
- kEob2IntroAnimData39,
- kEob2IntroAnimData40,
- kEob2IntroAnimData41,
- kEob2IntroAnimData42,
- kEob2IntroAnimData43,
+ kEoB2IntroAnimData00,
+ kEoB2IntroAnimData01,
+ kEoB2IntroAnimData02,
+ kEoB2IntroAnimData03,
+ kEoB2IntroAnimData04,
+ kEoB2IntroAnimData05,
+ kEoB2IntroAnimData06,
+ kEoB2IntroAnimData07,
+ kEoB2IntroAnimData08,
+ kEoB2IntroAnimData09,
+ kEoB2IntroAnimData10,
+ kEoB2IntroAnimData11,
+ kEoB2IntroAnimData12,
+ kEoB2IntroAnimData13,
+ kEoB2IntroAnimData14,
+ kEoB2IntroAnimData15,
+ kEoB2IntroAnimData16,
+ kEoB2IntroAnimData17,
+ kEoB2IntroAnimData18,
+ kEoB2IntroAnimData19,
+ kEoB2IntroAnimData20,
+ kEoB2IntroAnimData21,
+ kEoB2IntroAnimData22,
+ kEoB2IntroAnimData23,
+ kEoB2IntroAnimData24,
+ kEoB2IntroAnimData25,
+ kEoB2IntroAnimData26,
+ kEoB2IntroAnimData27,
+ kEoB2IntroAnimData28,
+ kEoB2IntroAnimData29,
+ kEoB2IntroAnimData30,
+ kEoB2IntroAnimData31,
+ kEoB2IntroAnimData32,
+ kEoB2IntroAnimData33,
+ kEoB2IntroAnimData34,
+ kEoB2IntroAnimData35,
+ kEoB2IntroAnimData36,
+ kEoB2IntroAnimData37,
+ kEoB2IntroAnimData38,
+ kEoB2IntroAnimData39,
+ kEoB2IntroAnimData40,
+ kEoB2IntroAnimData41,
+ kEoB2IntroAnimData42,
+ kEoB2IntroAnimData43,
kEoB2IntroShapes00,
kEoB2IntroShapes01,
@@ -1671,27 +1668,27 @@ const int eob2FloppyNeed[] = {
kEoB2FinaleStrings,
kEoB2CreditsData,
kEoB2FinaleCPSFiles,
- kEob2FinaleAnimData00,
- kEob2FinaleAnimData01,
- kEob2FinaleAnimData02,
- kEob2FinaleAnimData03,
- kEob2FinaleAnimData04,
- kEob2FinaleAnimData05,
- kEob2FinaleAnimData06,
- kEob2FinaleAnimData07,
- kEob2FinaleAnimData08,
- kEob2FinaleAnimData09,
- kEob2FinaleAnimData10,
- kEob2FinaleAnimData11,
- kEob2FinaleAnimData12,
- kEob2FinaleAnimData13,
- kEob2FinaleAnimData14,
- kEob2FinaleAnimData15,
- kEob2FinaleAnimData16,
- kEob2FinaleAnimData17,
- kEob2FinaleAnimData18,
- kEob2FinaleAnimData19,
- kEob2FinaleAnimData20,
+ kEoB2FinaleAnimData00,
+ kEoB2FinaleAnimData01,
+ kEoB2FinaleAnimData02,
+ kEoB2FinaleAnimData03,
+ kEoB2FinaleAnimData04,
+ kEoB2FinaleAnimData05,
+ kEoB2FinaleAnimData06,
+ kEoB2FinaleAnimData07,
+ kEoB2FinaleAnimData08,
+ kEoB2FinaleAnimData09,
+ kEoB2FinaleAnimData10,
+ kEoB2FinaleAnimData11,
+ kEoB2FinaleAnimData12,
+ kEoB2FinaleAnimData13,
+ kEoB2FinaleAnimData14,
+ kEoB2FinaleAnimData15,
+ kEoB2FinaleAnimData16,
+ kEoB2FinaleAnimData17,
+ kEoB2FinaleAnimData18,
+ kEoB2FinaleAnimData19,
+ kEoB2FinaleAnimData20,
kEoB2FinaleShapes00,
kEoB2FinaleShapes03,
kEoB2FinaleShapes07,
diff --git a/devtools/create_kyradat/md5.cpp b/devtools/create_kyradat/md5.cpp
index 9f90122981..705275f73b 100644
--- a/devtools/create_kyradat/md5.cpp
+++ b/devtools/create_kyradat/md5.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_kyradat/md5.h b/devtools/create_kyradat/md5.h
index 3746521002..8ec85a73fa 100644
--- a/devtools/create_kyradat/md5.h
+++ b/devtools/create_kyradat/md5.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_kyradat/module.mk b/devtools/create_kyradat/module.mk
index fb458b43ff..af80f5d4d7 100644
--- a/devtools/create_kyradat/module.mk
+++ b/devtools/create_kyradat/module.mk
@@ -3,12 +3,11 @@ MODULE := devtools/create_kyradat
MODULE_OBJS := \
create_kyradat.o \
- extract.o \
games.o \
md5.o \
pak.o \
- search.o \
- tables.o \
+ resources.o \
+ types.o \
util.o
# Set the name of the executable
diff --git a/devtools/create_kyradat/pak.cpp b/devtools/create_kyradat/pak.cpp
index 0d085f563c..52e1a2fc3b 100644
--- a/devtools/create_kyradat/pak.cpp
+++ b/devtools/create_kyradat/pak.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_kyradat/pak.h b/devtools/create_kyradat/pak.h
index cf415676dd..8e14bba42d 100644
--- a/devtools/create_kyradat/pak.h
+++ b/devtools/create_kyradat/pak.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_kyradat/resources.cpp b/devtools/create_kyradat/resources.cpp
new file mode 100644
index 0000000000..66db495caf
--- /dev/null
+++ b/devtools/create_kyradat/resources.cpp
@@ -0,0 +1,1950 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "resources.h"
+#include "types.h"
+
+// The Legend of Kyrandia
+#include "resources/lok_amiga.h"
+#include "resources/lok_amiga_english.h"
+#include "resources/lok_amiga_german.h"
+
+#include "resources/lok_dos_demo.h"
+#include "resources/lok_dos_demo_english.h"
+
+#include "resources/lok_dos.h"
+#include "resources/lok_dos_english.h"
+#include "resources/lok_dos_french.h"
+#include "resources/lok_dos_german.h"
+#include "resources/lok_dos_italian.h"
+#include "resources/lok_dos_oldfloppy.h"
+#include "resources/lok_dos_oldfloppy_russian.h"
+#include "resources/lok_dos_spanish.h"
+
+#include "resources/lok_dos_cd.h"
+#include "resources/lok_dos_cd_english.h"
+#include "resources/lok_dos_cd_french.h"
+#include "resources/lok_dos_cd_german.h"
+#include "resources/lok_dos_cd_italian.h"
+
+#include "resources/lok_dos_cddemo.h"
+#include "resources/lok_dos_cddemo_english.h"
+
+#include "resources/lok_fmtowns.h"
+#include "resources/lok_fmtowns_english.h"
+#include "resources/lok_fmtowns_japanese.h"
+
+#include "resources/lok_pc98.h"
+#include "resources/lok_pc98_japanese.h"
+
+// The Hand of Fate
+#include "resources/hof_dos_demo.h"
+
+#include "resources/hof_dos.h"
+#include "resources/hof_dos_english.h"
+#include "resources/hof_dos_french.h"
+#include "resources/hof_dos_german.h"
+#include "resources/hof_dos_italian.h"
+#include "resources/hof_dos_russian.h"
+
+#include "resources/hof_dos_cddemo.h"
+#include "resources/hof_dos_cddemo_english.h"
+#include "resources/hof_dos_cddemo_french.h"
+#include "resources/hof_dos_cddemo_german.h"
+
+#include "resources/hof_dos_cd.h"
+#include "resources/hof_dos_cd_english.h"
+#include "resources/hof_dos_cd_french.h"
+#include "resources/hof_dos_cd_german.h"
+#include "resources/hof_dos_cd_italian.h"
+#include "resources/hof_dos_cd_russian.h"
+
+#include "resources/hof_fmtowns.h"
+#include "resources/hof_fmtowns_english.h"
+#include "resources/hof_fmtowns_japanese.h"
+
+#include "resources/hof_pc98.h"
+#include "resources/hof_pc98_english.h"
+#include "resources/hof_pc98_japanese.h"
+
+// Malcolm's Revenge
+#include "resources/mr_dos_cd.h"
+
+// Eye of the Beholder
+#include "resources/eob1_dos.h"
+#include "resources/eob1_dos_english.h"
+#include "resources/eob1_dos_german.h"
+
+// Eye of the Beholder: The Legend of Darkmoon
+#include "resources/eob2_dos.h"
+#include "resources/eob2_dos_english.h"
+#include "resources/eob2_dos_german.h"
+
+// Lands of Lore
+#include "resources/lol_dos_demo.h"
+#include "resources/lol_dos_demo_english.h"
+
+#include "resources/lol_dos.h"
+#include "resources/lol_dos_english.h"
+#include "resources/lol_dos_french.h"
+#include "resources/lol_dos_german.h"
+#include "resources/lol_dos_russian.h"
+
+#include "resources/lol_dos_cd.h"
+#include "resources/lol_dos_cd_english.h"
+#include "resources/lol_dos_cd_french.h"
+#include "resources/lol_dos_cd_german.h"
+#include "resources/lol_dos_cd_italian.h"
+#include "resources/lol_dos_cd_russian.h"
+
+#include "resources/lol_pc98.h"
+#include "resources/lol_pc98_japanese.h"
+
+#include "resources/lol_fmtowns.h"
+#include "resources/lol_fmtowns_japanese.h"
+
+static const ResourceProvider resourceProviders[] = {
+ { k1WestwoodLogoSeq, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1WestwoodLogoSeqDOSDemoProvider },
+ { k1KyrandiaLogoSeq, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1KyrandiaLogoSeqDOSDemoProvider },
+ { k1IntroCPSStrings, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1IntroCPSStringsDOSDemoProvider },
+ { k1IntroCOLStrings, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1IntroCOLStringsDOSDemoProvider },
+ { k1IntroWSAStrings, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1IntroWSAStringsDOSDemoProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kDemoVersion, EN_ANY, &k1IntroStringsDOSDemoEnglishProvider },
+ { k1Demo1Seq, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1Demo1SeqDOSDemoProvider },
+ { k1Demo2Seq, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1Demo2SeqDOSDemoProvider },
+ { k1Demo3Seq, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1Demo3SeqDOSDemoProvider },
+ { k1Demo4Seq, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1Demo4SeqDOSDemoProvider },
+ { k1AudioTracksIntro, kKyra1, kPlatformDOS, kDemoVersion, UNK_LANG, &k1AudioTracksIntroDOSDemoProvider },
+ { k1KallakWritingSeq, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1KallakWritingSeqDOSCDDemoProvider },
+ { k1MalcolmTreeSeq, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1MalcolmTreeSeqDOSCDDemoProvider },
+ { k1WestwoodLogoSeq, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1WestwoodLogoSeqDOSCDDemoProvider },
+ { k1KyrandiaLogoSeq, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1KyrandiaLogoSeqDOSCDDemoProvider },
+ { k1KallakMalcolmSeq, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1KallakMalcolmSeqDOSCDDemoProvider },
+ { k1ForestSeq, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1ForestSeqDOSCDDemoProvider },
+ { k1IntroCPSStrings, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1IntroCPSStringsDOSCDDemoProvider },
+ { k1IntroCOLStrings, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1IntroCOLStringsDOSCDDemoProvider },
+ { k1IntroWSAStrings, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1IntroWSAStringsDOSCDDemoProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kTalkieDemoVersion, EN_ANY, &k1IntroStringsDOSCDDemoEnglishProvider },
+ { k1AudioTracksIntro, kKyra1, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k1AudioTracksIntroDOSCDDemoProvider },
+ { k1KallakWritingSeq, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1KallakWritingSeqAmigaProvider },
+ { k1MalcolmTreeSeq, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1MalcolmTreeSeqAmigaProvider },
+ { k1WestwoodLogoSeq, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1WestwoodLogoSeqAmigaProvider },
+ { k1KyrandiaLogoSeq, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1KyrandiaLogoSeqAmigaProvider },
+ { k1KallakMalcolmSeq, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1KallakMalcolmSeqAmigaProvider },
+ { k1ForestSeq, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1ForestSeqAmigaProvider },
+ { k1IntroCPSStrings, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1IntroCPSStringsAmigaProvider },
+ { k1IntroWSAStrings, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1IntroWSAStringsAmigaProvider },
+ { k1IntroCOLStrings, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1IntroCOLStringsAmigaProvider },
+ { k1IntroStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1IntroStringsAmigaEnglishProvider },
+ { k1RoomList, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1RoomListAmigaProvider },
+ { k1RoomFilenames, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1RoomFilenamesAmigaProvider },
+ { k1CharacterImageFilenames, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1CharacterImageFilenamesAmigaProvider },
+ { k1DefaultShapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1DefaultShapesAmigaProvider },
+ { k1ItemNames, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1ItemNamesAmigaEnglishProvider },
+ { k1TakenStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1TakenStringsAmigaEnglishProvider },
+ { k1PlacedStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1PlacedStringsAmigaEnglishProvider },
+ { k1DroppedStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1DroppedStringsAmigaEnglishProvider },
+ { k1NoDropStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1NoDropStringsAmigaEnglishProvider },
+ { k1AmuleteAnimSeq, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1AmuleteAnimSeqAmigaProvider },
+ { k1PutDownString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1PutDownStringAmigaEnglishProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1WaitAmuletStringAmigaEnglishProvider },
+ { k1BlackJewelString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1BlackJewelStringAmigaEnglishProvider },
+ { k1HealingTipString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1HealingTipStringAmigaEnglishProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1PoisonGoneStringAmigaEnglishProvider },
+ { k1Healing1Shapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1Healing1ShapesAmigaProvider },
+ { k1Healing2Shapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1Healing2ShapesAmigaProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1ThePoisonStringsAmigaEnglishProvider },
+ { k1FluteStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1FluteStringsAmigaEnglishProvider },
+ { k1PoisonDeathShapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1PoisonDeathShapesAmigaProvider },
+ { k1FluteShapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1FluteShapesAmigaProvider },
+ { k1Winter1Shapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1Winter1ShapesAmigaProvider },
+ { k1Winter2Shapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1Winter2ShapesAmigaProvider },
+ { k1Winter3Shapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1Winter3ShapesAmigaProvider },
+ { k1DrinkShapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1DrinkShapesAmigaProvider },
+ { k1WispShapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1WispShapesAmigaProvider },
+ { k1MagicAnimShapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1MagicAnimShapesAmigaProvider },
+ { k1BranStoneShapes, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1BranStoneShapesAmigaProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1WispJewelStringsAmigaEnglishProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1MagicJewelStringsAmigaEnglishProvider },
+ { k1FlaskFullString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1FlaskFullStringAmigaEnglishProvider },
+ { k1FullFlaskString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1FullFlaskStringAmigaEnglishProvider },
+ { k1OutroReunionSeq, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1OutroReunionSeqAmigaProvider },
+ { k1OutroHomeString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1OutroHomeStringAmigaEnglishProvider },
+ { k1VeryCleverString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1VeryCleverStringAmigaEnglishProvider },
+ { k1GUIStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1GUIStringsAmigaEnglishProvider },
+ { k1NewGameString, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1NewGameStringAmigaEnglishProvider },
+ { k1ConfigStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1ConfigStringsAmigaEnglishProvider },
+ { k1CreditsStrings, kKyra1, kPlatformAmiga, kNoSpecial, EN_ANY, &k1CreditsStringsAmigaEnglishProvider },
+ { k1AmigaIntroSFXTable, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1AmigaIntroSFXTableAmigaProvider },
+ { k1AmigaGameSFXTable, kKyra1, kPlatformAmiga, kNoSpecial, UNK_LANG, &k1AmigaGameSFXTableAmigaProvider },
+ { k1IntroStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1IntroStringsAmigaGermanProvider },
+ { k1ItemNames, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1ItemNamesAmigaGermanProvider },
+ { k1TakenStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1TakenStringsAmigaGermanProvider },
+ { k1PlacedStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1PlacedStringsAmigaGermanProvider },
+ { k1DroppedStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1DroppedStringsAmigaGermanProvider },
+ { k1NoDropStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1NoDropStringsAmigaGermanProvider },
+ { k1PutDownString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1PutDownStringAmigaGermanProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1WaitAmuletStringAmigaGermanProvider },
+ { k1BlackJewelString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1BlackJewelStringAmigaGermanProvider },
+ { k1HealingTipString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1HealingTipStringAmigaGermanProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1PoisonGoneStringAmigaGermanProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1ThePoisonStringsAmigaGermanProvider },
+ { k1FluteStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1FluteStringsAmigaGermanProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1WispJewelStringsAmigaGermanProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1MagicJewelStringsAmigaGermanProvider },
+ { k1FlaskFullString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1FlaskFullStringAmigaGermanProvider },
+ { k1FullFlaskString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1FullFlaskStringAmigaGermanProvider },
+ { k1OutroHomeString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1OutroHomeStringAmigaGermanProvider },
+ { k1VeryCleverString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1VeryCleverStringAmigaGermanProvider },
+ { k1GUIStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1GUIStringsAmigaGermanProvider },
+ { k1NewGameString, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1NewGameStringAmigaGermanProvider },
+ { k1ConfigStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1ConfigStringsAmigaGermanProvider },
+ { k1CreditsStrings, kKyra1, kPlatformAmiga, kNoSpecial, DE_DEU, &k1CreditsStringsAmigaGermanProvider },
+ { k1KallakWritingSeq, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1KallakWritingSeqDOSProvider },
+ { k1MalcolmTreeSeq, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1MalcolmTreeSeqDOSProvider },
+ { k1WestwoodLogoSeq, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1WestwoodLogoSeqDOSProvider },
+ { k1KyrandiaLogoSeq, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1KyrandiaLogoSeqDOSProvider },
+ { k1KallakMalcolmSeq, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1KallakMalcolmSeqDOSProvider },
+ { k1ForestSeq, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1ForestSeqDOSProvider },
+ { k1IntroCPSStrings, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1IntroCPSStringsDOSProvider },
+ { k1IntroCOLStrings, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1IntroCOLStringsDOSProvider },
+ { k1IntroWSAStrings, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1IntroWSAStringsDOSProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1IntroStringsDOSEnglishProvider },
+ { k1RoomList, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1RoomListDOSProvider },
+ { k1RoomFilenames, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1RoomFilenamesDOSProvider },
+ { k1CharacterImageFilenames, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1CharacterImageFilenamesDOSProvider },
+ { k1DefaultShapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1DefaultShapesDOSProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1ItemNamesDOSEnglishProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1TakenStringsDOSEnglishProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1PlacedStringsDOSEnglishProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1DroppedStringsDOSEnglishProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1NoDropStringsDOSEnglishProvider },
+ { k1AmuleteAnimSeq, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1AmuleteAnimSeqDOSProvider },
+ { k1SpecialPalette1, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette1DOSProvider },
+ { k1SpecialPalette2, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette2DOSProvider },
+ { k1SpecialPalette3, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette3DOSProvider },
+ { k1SpecialPalette4, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette4DOSProvider },
+ { k1SpecialPalette5, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette5DOSProvider },
+ { k1SpecialPalette6, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette6DOSProvider },
+ { k1SpecialPalette7, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette7DOSProvider },
+ { k1SpecialPalette8, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette8DOSProvider },
+ { k1SpecialPalette9, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette9DOSProvider },
+ { k1SpecialPalette10, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette10DOSProvider },
+ { k1SpecialPalette11, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette11DOSProvider },
+ { k1SpecialPalette12, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette12DOSProvider },
+ { k1SpecialPalette13, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette13DOSProvider },
+ { k1SpecialPalette14, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette14DOSProvider },
+ { k1SpecialPalette15, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette15DOSProvider },
+ { k1SpecialPalette16, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette16DOSProvider },
+ { k1SpecialPalette17, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette17DOSProvider },
+ { k1SpecialPalette18, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette18DOSProvider },
+ { k1SpecialPalette19, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette19DOSProvider },
+ { k1SpecialPalette20, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette20DOSProvider },
+ { k1SpecialPalette21, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette21DOSProvider },
+ { k1SpecialPalette22, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette22DOSProvider },
+ { k1SpecialPalette23, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette23DOSProvider },
+ { k1SpecialPalette24, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette24DOSProvider },
+ { k1SpecialPalette25, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette25DOSProvider },
+ { k1SpecialPalette26, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette26DOSProvider },
+ { k1SpecialPalette27, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette27DOSProvider },
+ { k1SpecialPalette28, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette28DOSProvider },
+ { k1SpecialPalette29, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette29DOSProvider },
+ { k1SpecialPalette30, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette30DOSProvider },
+ { k1SpecialPalette31, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette31DOSProvider },
+ { k1SpecialPalette32, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette32DOSProvider },
+ { k1SpecialPalette33, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1SpecialPalette33DOSProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1PutDownStringDOSEnglishProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1WaitAmuletStringDOSEnglishProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1BlackJewelStringDOSEnglishProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1HealingTipStringDOSEnglishProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1PoisonGoneStringDOSEnglishProvider },
+ { k1Healing1Shapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1Healing1ShapesDOSProvider },
+ { k1Healing2Shapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1Healing2ShapesDOSProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1ThePoisonStringsDOSEnglishProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1FluteStringsDOSEnglishProvider },
+ { k1PoisonDeathShapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1PoisonDeathShapesDOSProvider },
+ { k1FluteShapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1FluteShapesDOSProvider },
+ { k1Winter1Shapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1Winter1ShapesDOSProvider },
+ { k1Winter2Shapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1Winter2ShapesDOSProvider },
+ { k1Winter3Shapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1Winter3ShapesDOSProvider },
+ { k1DrinkShapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1DrinkShapesDOSProvider },
+ { k1WispShapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1WispShapesDOSProvider },
+ { k1MagicAnimShapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1MagicAnimShapesDOSProvider },
+ { k1BranStoneShapes, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1BranStoneShapesDOSProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1WispJewelStringsDOSEnglishProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1MagicJewelStringsDOSEnglishProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1FlaskFullStringDOSEnglishProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1FullFlaskStringDOSEnglishProvider },
+ { k1OutroReunionSeq, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1OutroReunionSeqDOSProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1OutroHomeStringDOSEnglishProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1VeryCleverStringDOSEnglishProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1GUIStringsDOSEnglishProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1NewGameStringDOSEnglishProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kNoSpecial, EN_ANY, &k1ConfigStringsDOSEnglishProvider },
+ { k1AudioTracks, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1AudioTracksDOSProvider },
+ { k1AudioTracks2, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1AudioTracks2DOSProvider },
+ { k1AudioTracksIntro, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, &k1AudioTracksIntroDOSProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1IntroStringsDOSGermanProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1ItemNamesDOSGermanProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1TakenStringsDOSGermanProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1PlacedStringsDOSGermanProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1DroppedStringsDOSGermanProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1NoDropStringsDOSGermanProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1PutDownStringDOSGermanProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1WaitAmuletStringDOSGermanProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1BlackJewelStringDOSGermanProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1HealingTipStringDOSGermanProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1PoisonGoneStringDOSGermanProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1ThePoisonStringsDOSGermanProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1FluteStringsDOSGermanProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1WispJewelStringsDOSGermanProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1MagicJewelStringsDOSGermanProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1FlaskFullStringDOSGermanProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1FullFlaskStringDOSGermanProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1OutroHomeStringDOSGermanProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1VeryCleverStringDOSGermanProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1GUIStringsDOSGermanProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1NewGameStringDOSGermanProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kNoSpecial, DE_DEU, &k1ConfigStringsDOSGermanProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1IntroStringsDOSFrenchProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1ItemNamesDOSFrenchProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1TakenStringsDOSFrenchProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1PlacedStringsDOSFrenchProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1DroppedStringsDOSFrenchProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1NoDropStringsDOSFrenchProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1PutDownStringDOSFrenchProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1WaitAmuletStringDOSFrenchProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1BlackJewelStringDOSFrenchProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1HealingTipStringDOSFrenchProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1PoisonGoneStringDOSFrenchProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1ThePoisonStringsDOSFrenchProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1FluteStringsDOSFrenchProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1WispJewelStringsDOSFrenchProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1MagicJewelStringsDOSFrenchProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1FlaskFullStringDOSFrenchProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1FullFlaskStringDOSFrenchProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1OutroHomeStringDOSFrenchProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1VeryCleverStringDOSFrenchProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1GUIStringsDOSFrenchProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1NewGameStringDOSFrenchProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kNoSpecial, FR_FRA, &k1ConfigStringsDOSFrenchProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1IntroStringsDOSItalianProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1ItemNamesDOSItalianProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1TakenStringsDOSItalianProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1PlacedStringsDOSItalianProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1DroppedStringsDOSItalianProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1NoDropStringsDOSItalianProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1PutDownStringDOSItalianProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1WaitAmuletStringDOSItalianProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1BlackJewelStringDOSItalianProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1HealingTipStringDOSItalianProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1PoisonGoneStringDOSItalianProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1ThePoisonStringsDOSItalianProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1FluteStringsDOSItalianProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1WispJewelStringsDOSItalianProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1MagicJewelStringsDOSItalianProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1FlaskFullStringDOSItalianProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1FullFlaskStringDOSItalianProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1OutroHomeStringDOSItalianProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1VeryCleverStringDOSItalianProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1GUIStringsDOSItalianProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1NewGameStringDOSItalianProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kNoSpecial, IT_ITA, &k1ConfigStringsDOSItalianProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1IntroStringsDOSSpanishProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1ItemNamesDOSSpanishProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1TakenStringsDOSSpanishProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1PlacedStringsDOSSpanishProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1DroppedStringsDOSSpanishProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1NoDropStringsDOSSpanishProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1PutDownStringDOSSpanishProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1WaitAmuletStringDOSSpanishProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1BlackJewelStringDOSSpanishProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1HealingTipStringDOSSpanishProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1PoisonGoneStringDOSSpanishProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1ThePoisonStringsDOSSpanishProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1FluteStringsDOSSpanishProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1WispJewelStringsDOSSpanishProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1MagicJewelStringsDOSSpanishProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1FlaskFullStringDOSSpanishProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1FullFlaskStringDOSSpanishProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1OutroHomeStringDOSSpanishProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1VeryCleverStringDOSSpanishProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1GUIStringsDOSSpanishProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1NewGameStringDOSSpanishProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kNoSpecial, ES_ESP, &k1ConfigStringsDOSSpanishProvider },
+ { k1KallakWritingSeq, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1KallakWritingSeqDOSOldFloppyProvider },
+ { k1MalcolmTreeSeq, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1MalcolmTreeSeqDOSOldFloppyProvider },
+ { k1WestwoodLogoSeq, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1WestwoodLogoSeqDOSOldFloppyProvider },
+ { k1KyrandiaLogoSeq, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1KyrandiaLogoSeqDOSOldFloppyProvider },
+ { k1KallakMalcolmSeq, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1KallakMalcolmSeqDOSOldFloppyProvider },
+ { k1ForestSeq, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1ForestSeqDOSOldFloppyProvider },
+ { k1IntroCPSStrings, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1IntroCPSStringsDOSOldFloppyProvider },
+ { k1IntroCOLStrings, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1IntroCOLStringsDOSOldFloppyProvider },
+ { k1IntroWSAStrings, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1IntroWSAStringsDOSOldFloppyProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1IntroStringsDOSOldFloppyRussianProvider },
+ { k1RoomList, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1RoomListDOSOldFloppyProvider },
+ { k1RoomFilenames, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1RoomFilenamesDOSOldFloppyProvider },
+ { k1CharacterImageFilenames, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1CharacterImageFilenamesDOSOldFloppyProvider },
+ { k1DefaultShapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1DefaultShapesDOSOldFloppyProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1ItemNamesDOSOldFloppyRussianProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1TakenStringsDOSOldFloppyRussianProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1PlacedStringsDOSOldFloppyRussianProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1DroppedStringsDOSOldFloppyRussianProvider },
+ { k1AmuleteAnimSeq, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1AmuleteAnimSeqDOSOldFloppyProvider },
+ { k1SpecialPalette1, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette1DOSOldFloppyProvider },
+ { k1SpecialPalette2, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette2DOSOldFloppyProvider },
+ { k1SpecialPalette3, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette3DOSOldFloppyProvider },
+ { k1SpecialPalette4, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette4DOSOldFloppyProvider },
+ { k1SpecialPalette5, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette5DOSOldFloppyProvider },
+ { k1SpecialPalette6, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette6DOSOldFloppyProvider },
+ { k1SpecialPalette7, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette7DOSOldFloppyProvider },
+ { k1SpecialPalette8, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette8DOSOldFloppyProvider },
+ { k1SpecialPalette9, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette9DOSOldFloppyProvider },
+ { k1SpecialPalette10, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette10DOSOldFloppyProvider },
+ { k1SpecialPalette11, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette11DOSOldFloppyProvider },
+ { k1SpecialPalette12, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette12DOSOldFloppyProvider },
+ { k1SpecialPalette13, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette13DOSOldFloppyProvider },
+ { k1SpecialPalette14, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette14DOSOldFloppyProvider },
+ { k1SpecialPalette15, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette15DOSOldFloppyProvider },
+ { k1SpecialPalette16, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette16DOSOldFloppyProvider },
+ { k1SpecialPalette17, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette17DOSOldFloppyProvider },
+ { k1SpecialPalette18, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette18DOSOldFloppyProvider },
+ { k1SpecialPalette19, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette19DOSOldFloppyProvider },
+ { k1SpecialPalette20, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette20DOSOldFloppyProvider },
+ { k1SpecialPalette21, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette21DOSOldFloppyProvider },
+ { k1SpecialPalette22, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette22DOSOldFloppyProvider },
+ { k1SpecialPalette23, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette23DOSOldFloppyProvider },
+ { k1SpecialPalette24, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette24DOSOldFloppyProvider },
+ { k1SpecialPalette25, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette25DOSOldFloppyProvider },
+ { k1SpecialPalette26, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette26DOSOldFloppyProvider },
+ { k1SpecialPalette27, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette27DOSOldFloppyProvider },
+ { k1SpecialPalette28, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette28DOSOldFloppyProvider },
+ { k1SpecialPalette29, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette29DOSOldFloppyProvider },
+ { k1SpecialPalette30, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette30DOSOldFloppyProvider },
+ { k1SpecialPalette31, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette31DOSOldFloppyProvider },
+ { k1SpecialPalette32, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1SpecialPalette32DOSOldFloppyProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1PutDownStringDOSOldFloppyRussianProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1WaitAmuletStringDOSOldFloppyRussianProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1BlackJewelStringDOSOldFloppyRussianProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1HealingTipStringDOSOldFloppyRussianProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1PoisonGoneStringDOSOldFloppyRussianProvider },
+ { k1Healing1Shapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1Healing1ShapesDOSOldFloppyProvider },
+ { k1Healing2Shapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1Healing2ShapesDOSOldFloppyProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1ThePoisonStringsDOSOldFloppyRussianProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1FluteStringsDOSOldFloppyRussianProvider },
+ { k1PoisonDeathShapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1PoisonDeathShapesDOSOldFloppyProvider },
+ { k1FluteShapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1FluteShapesDOSOldFloppyProvider },
+ { k1Winter1Shapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1Winter1ShapesDOSOldFloppyProvider },
+ { k1Winter2Shapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1Winter2ShapesDOSOldFloppyProvider },
+ { k1Winter3Shapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1Winter3ShapesDOSOldFloppyProvider },
+ { k1DrinkShapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1DrinkShapesDOSOldFloppyProvider },
+ { k1WispShapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1WispShapesDOSOldFloppyProvider },
+ { k1MagicAnimShapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1MagicAnimShapesDOSOldFloppyProvider },
+ { k1BranStoneShapes, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1BranStoneShapesDOSOldFloppyProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1WispJewelStringsDOSOldFloppyRussianProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1MagicJewelStringsDOSOldFloppyRussianProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1FlaskFullStringDOSOldFloppyRussianProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1FullFlaskStringDOSOldFloppyRussianProvider },
+ { k1OutroReunionSeq, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1OutroReunionSeqDOSOldFloppyProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1OutroHomeStringDOSOldFloppyRussianProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1VeryCleverStringDOSOldFloppyRussianProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1GUIStringsDOSOldFloppyRussianProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1NewGameStringDOSOldFloppyRussianProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kOldFloppy, RU_RUS, &k1ConfigStringsDOSOldFloppyRussianProvider },
+ { k1AudioTracks, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1AudioTracksDOSOldFloppyProvider },
+ { k1AudioTracks2, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1AudioTracks2DOSOldFloppyProvider },
+ { k1AudioTracksIntro, kKyra1, kPlatformDOS, kOldFloppy, UNK_LANG, &k1AudioTracksIntroDOSOldFloppyProvider },
+ { k1KallakWritingSeq, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1KallakWritingSeqDOSCDProvider },
+ { k1MalcolmTreeSeq, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1MalcolmTreeSeqDOSCDProvider },
+ { k1WestwoodLogoSeq, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1WestwoodLogoSeqDOSCDProvider },
+ { k1KyrandiaLogoSeq, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1KyrandiaLogoSeqDOSCDProvider },
+ { k1KallakMalcolmSeq, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1KallakMalcolmSeqDOSCDProvider },
+ { k1ForestSeq, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1ForestSeqDOSCDProvider },
+ { k1IntroCPSStrings, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1IntroCPSStringsDOSCDProvider },
+ { k1IntroCOLStrings, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1IntroCOLStringsDOSCDProvider },
+ { k1IntroWSAStrings, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1IntroWSAStringsDOSCDProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1IntroStringsDOSCDEnglishProvider },
+ { k1RoomList, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1RoomListDOSCDProvider },
+ { k1RoomFilenames, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1RoomFilenamesDOSCDProvider },
+ { k1CharacterImageFilenames, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1CharacterImageFilenamesDOSCDProvider },
+ { k1DefaultShapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1DefaultShapesDOSCDProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1ItemNamesDOSCDEnglishProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1TakenStringsDOSCDEnglishProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1PlacedStringsDOSCDEnglishProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1DroppedStringsDOSCDEnglishProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1NoDropStringsDOSCDEnglishProvider },
+ { k1AmuleteAnimSeq, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1AmuleteAnimSeqDOSCDProvider },
+ { k1SpecialPalette1, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette1DOSCDProvider },
+ { k1SpecialPalette2, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette2DOSCDProvider },
+ { k1SpecialPalette3, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette3DOSCDProvider },
+ { k1SpecialPalette4, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette4DOSCDProvider },
+ { k1SpecialPalette5, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette5DOSCDProvider },
+ { k1SpecialPalette6, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette6DOSCDProvider },
+ { k1SpecialPalette7, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette7DOSCDProvider },
+ { k1SpecialPalette8, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette8DOSCDProvider },
+ { k1SpecialPalette9, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette9DOSCDProvider },
+ { k1SpecialPalette10, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette10DOSCDProvider },
+ { k1SpecialPalette11, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette11DOSCDProvider },
+ { k1SpecialPalette12, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette12DOSCDProvider },
+ { k1SpecialPalette13, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette13DOSCDProvider },
+ { k1SpecialPalette14, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette14DOSCDProvider },
+ { k1SpecialPalette15, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette15DOSCDProvider },
+ { k1SpecialPalette16, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette16DOSCDProvider },
+ { k1SpecialPalette17, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette17DOSCDProvider },
+ { k1SpecialPalette18, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette18DOSCDProvider },
+ { k1SpecialPalette19, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette19DOSCDProvider },
+ { k1SpecialPalette20, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette20DOSCDProvider },
+ { k1SpecialPalette21, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette21DOSCDProvider },
+ { k1SpecialPalette22, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette22DOSCDProvider },
+ { k1SpecialPalette23, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette23DOSCDProvider },
+ { k1SpecialPalette24, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette24DOSCDProvider },
+ { k1SpecialPalette25, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette25DOSCDProvider },
+ { k1SpecialPalette26, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette26DOSCDProvider },
+ { k1SpecialPalette27, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette27DOSCDProvider },
+ { k1SpecialPalette28, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette28DOSCDProvider },
+ { k1SpecialPalette29, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette29DOSCDProvider },
+ { k1SpecialPalette30, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette30DOSCDProvider },
+ { k1SpecialPalette31, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette31DOSCDProvider },
+ { k1SpecialPalette32, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette32DOSCDProvider },
+ { k1SpecialPalette33, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1SpecialPalette33DOSCDProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1PutDownStringDOSCDEnglishProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1WaitAmuletStringDOSCDEnglishProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1BlackJewelStringDOSCDEnglishProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1HealingTipStringDOSCDEnglishProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1PoisonGoneStringDOSCDEnglishProvider },
+ { k1Healing1Shapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1Healing1ShapesDOSCDProvider },
+ { k1Healing2Shapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1Healing2ShapesDOSCDProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1ThePoisonStringsDOSCDEnglishProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1FluteStringsDOSCDEnglishProvider },
+ { k1PoisonDeathShapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1PoisonDeathShapesDOSCDProvider },
+ { k1FluteShapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1FluteShapesDOSCDProvider },
+ { k1Winter1Shapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1Winter1ShapesDOSCDProvider },
+ { k1Winter2Shapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1Winter2ShapesDOSCDProvider },
+ { k1Winter3Shapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1Winter3ShapesDOSCDProvider },
+ { k1DrinkShapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1DrinkShapesDOSCDProvider },
+ { k1WispShapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1WispShapesDOSCDProvider },
+ { k1MagicAnimShapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1MagicAnimShapesDOSCDProvider },
+ { k1BranStoneShapes, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1BranStoneShapesDOSCDProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1WispJewelStringsDOSCDEnglishProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1MagicJewelStringsDOSCDEnglishProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1FlaskFullStringDOSCDEnglishProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1FullFlaskStringDOSCDEnglishProvider },
+ { k1OutroReunionSeq, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1OutroReunionSeqDOSCDProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1OutroHomeStringDOSCDEnglishProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1VeryCleverStringDOSCDEnglishProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1GUIStringsDOSCDEnglishProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1NewGameStringDOSCDEnglishProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kTalkieVersion, EN_ANY, &k1ConfigStringsDOSCDEnglishProvider },
+ { k1AudioTracks, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1AudioTracksDOSCDProvider },
+ { k1AudioTracks2, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1AudioTracks2DOSCDProvider },
+ { k1AudioTracksIntro, kKyra1, kPlatformDOS, kTalkieVersion, UNK_LANG, &k1AudioTracksIntroDOSCDProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1IntroStringsDOSCDGermanProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1ItemNamesDOSCDGermanProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1TakenStringsDOSCDGermanProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1PlacedStringsDOSCDGermanProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1DroppedStringsDOSCDGermanProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1NoDropStringsDOSCDGermanProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1PutDownStringDOSCDGermanProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1WaitAmuletStringDOSCDGermanProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1BlackJewelStringDOSCDGermanProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1HealingTipStringDOSCDGermanProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1PoisonGoneStringDOSCDGermanProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1ThePoisonStringsDOSCDGermanProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1FluteStringsDOSCDGermanProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1WispJewelStringsDOSCDGermanProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1MagicJewelStringsDOSCDGermanProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1FlaskFullStringDOSCDGermanProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1FullFlaskStringDOSCDGermanProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1OutroHomeStringDOSCDGermanProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1VeryCleverStringDOSCDGermanProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1GUIStringsDOSCDGermanProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1NewGameStringDOSCDGermanProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kTalkieVersion, DE_DEU, &k1ConfigStringsDOSCDGermanProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1IntroStringsDOSCDFrenchProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1ItemNamesDOSCDFrenchProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1TakenStringsDOSCDFrenchProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1PlacedStringsDOSCDFrenchProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1DroppedStringsDOSCDFrenchProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1NoDropStringsDOSCDFrenchProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1PutDownStringDOSCDFrenchProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1WaitAmuletStringDOSCDFrenchProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1BlackJewelStringDOSCDFrenchProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1HealingTipStringDOSCDFrenchProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1PoisonGoneStringDOSCDFrenchProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1ThePoisonStringsDOSCDFrenchProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1FluteStringsDOSCDFrenchProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1WispJewelStringsDOSCDFrenchProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1MagicJewelStringsDOSCDFrenchProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1FlaskFullStringDOSCDFrenchProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1FullFlaskStringDOSCDFrenchProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1OutroHomeStringDOSCDFrenchProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1VeryCleverStringDOSCDFrenchProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1GUIStringsDOSCDFrenchProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1NewGameStringDOSCDFrenchProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kTalkieVersion, FR_FRA, &k1ConfigStringsDOSCDFrenchProvider },
+ { k1IntroStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1IntroStringsDOSCDItalianProvider },
+ { k1ItemNames, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1ItemNamesDOSCDItalianProvider },
+ { k1TakenStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1TakenStringsDOSCDItalianProvider },
+ { k1PlacedStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1PlacedStringsDOSCDItalianProvider },
+ { k1DroppedStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1DroppedStringsDOSCDItalianProvider },
+ { k1NoDropStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1NoDropStringsDOSCDItalianProvider },
+ { k1PutDownString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1PutDownStringDOSCDItalianProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1WaitAmuletStringDOSCDItalianProvider },
+ { k1BlackJewelString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1BlackJewelStringDOSCDItalianProvider },
+ { k1HealingTipString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1HealingTipStringDOSCDItalianProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1PoisonGoneStringDOSCDItalianProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1ThePoisonStringsDOSCDItalianProvider },
+ { k1FluteStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1FluteStringsDOSCDItalianProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1WispJewelStringsDOSCDItalianProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1MagicJewelStringsDOSCDItalianProvider },
+ { k1FlaskFullString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1FlaskFullStringDOSCDItalianProvider },
+ { k1FullFlaskString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1FullFlaskStringDOSCDItalianProvider },
+ { k1OutroHomeString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1OutroHomeStringDOSCDItalianProvider },
+ { k1VeryCleverString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1VeryCleverStringDOSCDItalianProvider },
+ { k1GUIStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1GUIStringsDOSCDItalianProvider },
+ { k1NewGameString, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1NewGameStringDOSCDItalianProvider },
+ { k1ConfigStrings, kKyra1, kPlatformDOS, kTalkieVersion, IT_ITA, &k1ConfigStringsDOSCDItalianProvider },
+ { k1KallakWritingSeq, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1KallakWritingSeqFMTownsProvider },
+ { k1MalcolmTreeSeq, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1MalcolmTreeSeqFMTownsProvider },
+ { k1WestwoodLogoSeq, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1WestwoodLogoSeqFMTownsProvider },
+ { k1KyrandiaLogoSeq, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1KyrandiaLogoSeqFMTownsProvider },
+ { k1KallakMalcolmSeq, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1KallakMalcolmSeqFMTownsProvider },
+ { k1ForestSeq, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1ForestSeqFMTownsProvider },
+ { k1IntroCPSStrings, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1IntroCPSStringsFMTownsProvider },
+ { k1IntroCOLStrings, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1IntroCOLStringsFMTownsProvider },
+ { k1IntroWSAStrings, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1IntroWSAStringsFMTownsProvider },
+ { k1IntroStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1IntroStringsFMTownsEnglishProvider },
+ { k1RoomList, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1RoomListFMTownsProvider },
+ { k1RoomFilenames, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1RoomFilenamesFMTownsProvider },
+ { k1CharacterImageFilenames, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1CharacterImageFilenamesFMTownsProvider },
+ { k1DefaultShapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1DefaultShapesFMTownsProvider },
+ { k1ItemNames, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1ItemNamesFMTownsEnglishProvider },
+ { k1TakenStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1TakenStringsFMTownsEnglishProvider },
+ { k1PlacedStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1PlacedStringsFMTownsEnglishProvider },
+ { k1DroppedStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1DroppedStringsFMTownsEnglishProvider },
+ { k1NoDropStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1NoDropStringsFMTownsEnglishProvider },
+ { k1AmuleteAnimSeq, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1AmuleteAnimSeqFMTownsProvider },
+ { k1SpecialPalette1, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette1FMTownsProvider },
+ { k1SpecialPalette2, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette2FMTownsProvider },
+ { k1SpecialPalette3, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette3FMTownsProvider },
+ { k1SpecialPalette4, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette4FMTownsProvider },
+ { k1SpecialPalette5, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette5FMTownsProvider },
+ { k1SpecialPalette6, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette6FMTownsProvider },
+ { k1SpecialPalette7, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette7FMTownsProvider },
+ { k1SpecialPalette8, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette8FMTownsProvider },
+ { k1SpecialPalette9, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette9FMTownsProvider },
+ { k1SpecialPalette10, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette10FMTownsProvider },
+ { k1SpecialPalette11, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette11FMTownsProvider },
+ { k1SpecialPalette12, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette12FMTownsProvider },
+ { k1SpecialPalette13, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette13FMTownsProvider },
+ { k1SpecialPalette14, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette14FMTownsProvider },
+ { k1SpecialPalette15, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette15FMTownsProvider },
+ { k1SpecialPalette16, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette16FMTownsProvider },
+ { k1SpecialPalette17, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette17FMTownsProvider },
+ { k1SpecialPalette18, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette18FMTownsProvider },
+ { k1SpecialPalette19, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette19FMTownsProvider },
+ { k1SpecialPalette20, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette20FMTownsProvider },
+ { k1SpecialPalette21, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette21FMTownsProvider },
+ { k1SpecialPalette22, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette22FMTownsProvider },
+ { k1SpecialPalette23, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette23FMTownsProvider },
+ { k1SpecialPalette24, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette24FMTownsProvider },
+ { k1SpecialPalette25, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette25FMTownsProvider },
+ { k1SpecialPalette26, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette26FMTownsProvider },
+ { k1SpecialPalette27, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette27FMTownsProvider },
+ { k1SpecialPalette28, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette28FMTownsProvider },
+ { k1SpecialPalette29, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette29FMTownsProvider },
+ { k1SpecialPalette30, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette30FMTownsProvider },
+ { k1SpecialPalette31, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette31FMTownsProvider },
+ { k1SpecialPalette32, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette32FMTownsProvider },
+ { k1SpecialPalette33, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1SpecialPalette33FMTownsProvider },
+ { k1PutDownString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1PutDownStringFMTownsEnglishProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1WaitAmuletStringFMTownsEnglishProvider },
+ { k1BlackJewelString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1BlackJewelStringFMTownsEnglishProvider },
+ { k1HealingTipString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1HealingTipStringFMTownsEnglishProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1PoisonGoneStringFMTownsEnglishProvider },
+ { k1Healing1Shapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1Healing1ShapesFMTownsProvider },
+ { k1Healing2Shapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1Healing2ShapesFMTownsProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1ThePoisonStringsFMTownsEnglishProvider },
+ { k1FluteStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1FluteStringsFMTownsEnglishProvider },
+ { k1PoisonDeathShapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1PoisonDeathShapesFMTownsProvider },
+ { k1FluteShapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1FluteShapesFMTownsProvider },
+ { k1Winter1Shapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1Winter1ShapesFMTownsProvider },
+ { k1Winter2Shapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1Winter2ShapesFMTownsProvider },
+ { k1Winter3Shapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1Winter3ShapesFMTownsProvider },
+ { k1DrinkShapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1DrinkShapesFMTownsProvider },
+ { k1WispShapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1WispShapesFMTownsProvider },
+ { k1MagicAnimShapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1MagicAnimShapesFMTownsProvider },
+ { k1BranStoneShapes, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1BranStoneShapesFMTownsProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1WispJewelStringsFMTownsEnglishProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1MagicJewelStringsFMTownsEnglishProvider },
+ { k1FlaskFullString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1FlaskFullStringFMTownsEnglishProvider },
+ { k1FullFlaskString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1FullFlaskStringFMTownsEnglishProvider },
+ { k1OutroReunionSeq, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1OutroReunionSeqFMTownsProvider },
+ { k1OutroHomeString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1OutroHomeStringFMTownsEnglishProvider },
+ { k1VeryCleverString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1VeryCleverStringFMTownsEnglishProvider },
+ { k1GUIStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1GUIStringsFMTownsEnglishProvider },
+ { k1NewGameString, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1NewGameStringFMTownsEnglishProvider },
+ { k1ConfigStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1ConfigStringsFMTownsEnglishProvider },
+ { k1TownsMusicFadeTable, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1TownsMusicFadeTableFMTownsProvider },
+ { k1TownsSFXwdTable, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1TownsSFXwdTableFMTownsProvider },
+ { k1TownsSFXbtTable, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1TownsSFXbtTableFMTownsProvider },
+ { k1TownsCDATable, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1TownsCDATableFMTownsProvider },
+ { k1AudioTracks, kKyra1, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k1AudioTracksFMTownsProvider },
+ { k1CreditsStrings, kKyra1, kPlatformFMTowns, kNoSpecial, EN_ANY, &k1CreditsStringsFMTownsEnglishProvider },
+ { k1IntroStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1IntroStringsFMTownsJapaneseProvider },
+ { k1ItemNames, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1ItemNamesFMTownsJapaneseProvider },
+ { k1TakenStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1TakenStringsFMTownsJapaneseProvider },
+ { k1PlacedStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1PlacedStringsFMTownsJapaneseProvider },
+ { k1DroppedStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1DroppedStringsFMTownsJapaneseProvider },
+ { k1NoDropStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1NoDropStringsFMTownsJapaneseProvider },
+ { k1PutDownString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1PutDownStringFMTownsJapaneseProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1WaitAmuletStringFMTownsJapaneseProvider },
+ { k1BlackJewelString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1BlackJewelStringFMTownsJapaneseProvider },
+ { k1HealingTipString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1HealingTipStringFMTownsJapaneseProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1PoisonGoneStringFMTownsJapaneseProvider },
+ { k1ThePoisonStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1ThePoisonStringsFMTownsJapaneseProvider },
+ { k1FluteStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1FluteStringsFMTownsJapaneseProvider },
+ { k1WispJewelStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1WispJewelStringsFMTownsJapaneseProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1MagicJewelStringsFMTownsJapaneseProvider },
+ { k1FlaskFullString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1FlaskFullStringFMTownsJapaneseProvider },
+ { k1FullFlaskString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1FullFlaskStringFMTownsJapaneseProvider },
+ { k1OutroHomeString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1OutroHomeStringFMTownsJapaneseProvider },
+ { k1VeryCleverString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1VeryCleverStringFMTownsJapaneseProvider },
+ { k1GUIStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1GUIStringsFMTownsJapaneseProvider },
+ { k1NewGameString, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1NewGameStringFMTownsJapaneseProvider },
+ { k1ConfigStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1ConfigStringsFMTownsJapaneseProvider },
+ { k1CreditsStrings, kKyra1, kPlatformFMTowns, kNoSpecial, JA_JPN, &k1CreditsStringsFMTownsJapaneseProvider },
+ { k1KallakWritingSeq, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1KallakWritingSeqPC98Provider },
+ { k1MalcolmTreeSeq, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1MalcolmTreeSeqPC98Provider },
+ { k1WestwoodLogoSeq, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1WestwoodLogoSeqPC98Provider },
+ { k1KyrandiaLogoSeq, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1KyrandiaLogoSeqPC98Provider },
+ { k1KallakMalcolmSeq, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1KallakMalcolmSeqPC98Provider },
+ { k1ForestSeq, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1ForestSeqPC98Provider },
+ { k1IntroCPSStrings, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1IntroCPSStringsPC98Provider },
+ { k1IntroCOLStrings, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1IntroCOLStringsPC98Provider },
+ { k1IntroWSAStrings, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1IntroWSAStringsPC98Provider },
+ { k1IntroStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1IntroStringsPC98JapaneseProvider },
+ { k1RoomList, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1RoomListPC98Provider },
+ { k1RoomFilenames, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1RoomFilenamesPC98Provider },
+ { k1CharacterImageFilenames, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1CharacterImageFilenamesPC98Provider },
+ { k1DefaultShapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1DefaultShapesPC98Provider },
+ { k1ItemNames, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1ItemNamesPC98JapaneseProvider },
+ { k1TakenStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1TakenStringsPC98JapaneseProvider },
+ { k1PlacedStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1PlacedStringsPC98JapaneseProvider },
+ { k1DroppedStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1DroppedStringsPC98JapaneseProvider },
+ { k1NoDropStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1NoDropStringsPC98JapaneseProvider },
+ { k1AmuleteAnimSeq, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1AmuleteAnimSeqPC98Provider },
+ { k1SpecialPalette1, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette1PC98Provider },
+ { k1SpecialPalette2, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette2PC98Provider },
+ { k1SpecialPalette3, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette3PC98Provider },
+ { k1SpecialPalette4, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette4PC98Provider },
+ { k1SpecialPalette5, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette5PC98Provider },
+ { k1SpecialPalette6, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette6PC98Provider },
+ { k1SpecialPalette7, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette7PC98Provider },
+ { k1SpecialPalette8, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette8PC98Provider },
+ { k1SpecialPalette9, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette9PC98Provider },
+ { k1SpecialPalette10, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette10PC98Provider },
+ { k1SpecialPalette11, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette11PC98Provider },
+ { k1SpecialPalette12, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette12PC98Provider },
+ { k1SpecialPalette13, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette13PC98Provider },
+ { k1SpecialPalette14, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette14PC98Provider },
+ { k1SpecialPalette15, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette15PC98Provider },
+ { k1SpecialPalette16, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette16PC98Provider },
+ { k1SpecialPalette17, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette17PC98Provider },
+ { k1SpecialPalette18, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette18PC98Provider },
+ { k1SpecialPalette19, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette19PC98Provider },
+ { k1SpecialPalette20, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette20PC98Provider },
+ { k1SpecialPalette21, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette21PC98Provider },
+ { k1SpecialPalette22, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette22PC98Provider },
+ { k1SpecialPalette23, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette23PC98Provider },
+ { k1SpecialPalette24, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette24PC98Provider },
+ { k1SpecialPalette25, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette25PC98Provider },
+ { k1SpecialPalette26, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette26PC98Provider },
+ { k1SpecialPalette27, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette27PC98Provider },
+ { k1SpecialPalette28, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette28PC98Provider },
+ { k1SpecialPalette29, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette29PC98Provider },
+ { k1SpecialPalette30, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette30PC98Provider },
+ { k1SpecialPalette31, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette31PC98Provider },
+ { k1SpecialPalette32, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette32PC98Provider },
+ { k1SpecialPalette33, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1SpecialPalette33PC98Provider },
+ { k1PutDownString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1PutDownStringPC98JapaneseProvider },
+ { k1WaitAmuletString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1WaitAmuletStringPC98JapaneseProvider },
+ { k1BlackJewelString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1BlackJewelStringPC98JapaneseProvider },
+ { k1HealingTipString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1HealingTipStringPC98JapaneseProvider },
+ { k1PoisonGoneString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1PoisonGoneStringPC98JapaneseProvider },
+ { k1Healing1Shapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1Healing1ShapesPC98Provider },
+ { k1Healing2Shapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1Healing2ShapesPC98Provider },
+ { k1ThePoisonStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1ThePoisonStringsPC98JapaneseProvider },
+ { k1FluteStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1FluteStringsPC98JapaneseProvider },
+ { k1PoisonDeathShapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1PoisonDeathShapesPC98Provider },
+ { k1FluteShapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1FluteShapesPC98Provider },
+ { k1Winter1Shapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1Winter1ShapesPC98Provider },
+ { k1Winter2Shapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1Winter2ShapesPC98Provider },
+ { k1Winter3Shapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1Winter3ShapesPC98Provider },
+ { k1DrinkShapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1DrinkShapesPC98Provider },
+ { k1WispShapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1WispShapesPC98Provider },
+ { k1MagicAnimShapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1MagicAnimShapesPC98Provider },
+ { k1BranStoneShapes, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1BranStoneShapesPC98Provider },
+ { k1WispJewelStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1WispJewelStringsPC98JapaneseProvider },
+ { k1MagicJewelStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1MagicJewelStringsPC98JapaneseProvider },
+ { k1FlaskFullString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1FlaskFullStringPC98JapaneseProvider },
+ { k1FullFlaskString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1FullFlaskStringPC98JapaneseProvider },
+ { k1OutroReunionSeq, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1OutroReunionSeqPC98Provider },
+ { k1OutroHomeString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1OutroHomeStringPC98JapaneseProvider },
+ { k1VeryCleverString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1VeryCleverStringPC98JapaneseProvider },
+ { k1GUIStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1GUIStringsPC98JapaneseProvider },
+ { k1NewGameString, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1NewGameStringPC98JapaneseProvider },
+ { k1ConfigStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1ConfigStringsPC98JapaneseProvider },
+ { k1PC98StoryStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1PC98StoryStringsPC98JapaneseProvider },
+ { k1PC98IntroSfx, kKyra1, kPlatformPC98, kNoSpecial, UNK_LANG, &k1PC98IntroSfxPC98Provider },
+ { k1CreditsStrings, kKyra1, kPlatformPC98, kNoSpecial, JA_JPN, &k1CreditsStringsPC98JapaneseProvider },
+ { k2SeqplayPakFiles, kKyra2, kPlatformDOS, kDemoVersion, UNK_LANG, &k2SeqplayPakFilesDOSDemoProvider },
+ { k2SeqplaySeqData, kKyra2, kPlatformDOS, kDemoVersion, UNK_LANG, &k2SeqplaySeqDataDOSDemoProvider },
+ { k2SeqplaySfxFiles, kKyra2, kPlatformDOS, kDemoVersion, UNK_LANG, &k2SeqplaySfxFilesDOSDemoProvider },
+ { k2SeqplayIntroTracks, kKyra2, kPlatformDOS, kDemoVersion, UNK_LANG, &k2SeqplayIntroTracksDOSDemoProvider },
+ { k2SeqplayShapeAnimData, kKyra2, kPlatformDOS, kDemoVersion, UNK_LANG, &k2SeqplayShapeAnimDataDOSDemoProvider },
+ { k2SeqplayPakFiles, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2SeqplayPakFilesDOSCDDemoProvider },
+ { k2SeqplayCredits, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2SeqplayCreditsDOSCDDemoProvider },
+ { k2SeqplayCreditsSpecial, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2SeqplayCreditsSpecialDOSCDDemoProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieDemoVersion, EN_ANY, &k2SeqplayStringsDOSCDDemoEnglishProvider },
+ { k2SeqplaySfxFiles, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2SeqplaySfxFilesDOSCDDemoProvider },
+ { k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieDemoVersion, EN_ANY, &k2SeqplayTlkFilesDOSCDDemoEnglishProvider },
+ { k2SeqplaySeqData, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2SeqplaySeqDataDOSCDDemoProvider },
+ { k2SeqplayIntroTracks, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2SeqplayIntroTracksDOSCDDemoProvider },
+ { k2SeqplayFinaleTracks, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2SeqplayFinaleTracksDOSCDDemoProvider },
+ { k2IngameSfxFiles, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2IngameSfxFilesDOSCDDemoProvider },
+ { k2IngameSfxIndex, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2IngameSfxIndexDOSCDDemoProvider },
+ { k2IngameTracks, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2IngameTracksDOSCDDemoProvider },
+ { k2IngameTalkObjIndex, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2IngameTalkObjIndexDOSCDDemoProvider },
+ { k2IngameShapeAnimData, kKyra2, kPlatformDOS, kTalkieDemoVersion, UNK_LANG, &k2IngameShapeAnimDataDOSCDDemoProvider },
+ { k2IngameTlkDemoStrings, kKyra2, kPlatformDOS, kTalkieDemoVersion, EN_ANY, &k2IngameTlkDemoStringsDOSCDDemoEnglishProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieDemoVersion, FR_FRA, &k2SeqplayStringsDOSCDDemoFrenchProvider },
+ { k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieDemoVersion, FR_FRA, &k2SeqplayTlkFilesDOSCDDemoFrenchProvider },
+ { k2IngameTlkDemoStrings, kKyra2, kPlatformDOS, kTalkieDemoVersion, FR_FRA, &k2IngameTlkDemoStringsDOSCDDemoFrenchProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieDemoVersion, DE_DEU, &k2SeqplayStringsDOSCDDemoGermanProvider },
+ { k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieDemoVersion, DE_DEU, &k2SeqplayTlkFilesDOSCDDemoGermanProvider },
+ { k2IngameTlkDemoStrings, kKyra2, kPlatformDOS, kTalkieDemoVersion, DE_DEU, &k2IngameTlkDemoStringsDOSCDDemoGermanProvider },
+ { k2SeqplayPakFiles, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2SeqplayPakFilesDOSProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kNoSpecial, EN_ANY, &k2SeqplayStringsDOSEnglishProvider },
+ { k2SeqplaySfxFiles, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2SeqplaySfxFilesDOSProvider },
+ { k2SeqplayIntroTracks, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2SeqplayIntroTracksDOSProvider },
+ { k2SeqplayFinaleTracks, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2SeqplayFinaleTracksDOSProvider },
+ { k2SeqplaySeqData, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2SeqplaySeqDataDOSProvider },
+ { k2IngamePakFiles, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2IngamePakFilesDOSProvider },
+ { k2IngameSfxFiles, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2IngameSfxFilesDOSProvider },
+ { k2IngameSfxIndex, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2IngameSfxIndexDOSProvider },
+ { k2IngameTracks, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2IngameTracksDOSProvider },
+ { k2IngameTalkObjIndex, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2IngameTalkObjIndexDOSProvider },
+ { k2IngameShapeAnimData, kKyra2, kPlatformDOS, kNoSpecial, UNK_LANG, &k2IngameShapeAnimDataDOSProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kNoSpecial, FR_FRA, &k2SeqplayStringsDOSFrenchProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kNoSpecial, DE_DEU, &k2SeqplayStringsDOSGermanProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kNoSpecial, IT_ITA, &k2SeqplayStringsDOSItalianProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kNoSpecial, RU_RUS, &k2SeqplayStringsDOSRussianProvider },
+ { k2SeqplayPakFiles, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2SeqplayPakFilesDOSCDProvider },
+ { k2SeqplayCredits, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2SeqplayCreditsDOSCDProvider },
+ { k2SeqplayCreditsSpecial, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2SeqplayCreditsSpecialDOSCDProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieVersion, EN_ANY, &k2SeqplayStringsDOSCDEnglishProvider },
+ { k2SeqplaySfxFiles, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2SeqplaySfxFilesDOSCDProvider },
+ { k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, EN_ANY, &k2SeqplayTlkFilesDOSCDEnglishProvider },
+ { k2SeqplaySeqData, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2SeqplaySeqDataDOSCDProvider },
+ { k2SeqplayIntroTracks, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2SeqplayIntroTracksDOSCDProvider },
+ { k2SeqplayFinaleTracks, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2SeqplayFinaleTracksDOSCDProvider },
+ { k2IngameSfxFiles, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2IngameSfxFilesDOSCDProvider },
+ { k2IngameSfxIndex, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2IngameSfxIndexDOSCDProvider },
+ { k2IngameTracks, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2IngameTracksDOSCDProvider },
+ { k2IngameTalkObjIndex, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2IngameTalkObjIndexDOSCDProvider },
+ { k2IngameShapeAnimData, kKyra2, kPlatformDOS, kTalkieVersion, UNK_LANG, &k2IngameShapeAnimDataDOSCDProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieVersion, FR_FRA, &k2SeqplayStringsDOSCDFrenchProvider },
+ { k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, FR_FRA, &k2SeqplayTlkFilesDOSCDFrenchProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieVersion, DE_DEU, &k2SeqplayStringsDOSCDGermanProvider },
+ { k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, DE_DEU, &k2SeqplayTlkFilesDOSCDGermanProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieVersion, IT_ITA, &k2SeqplayStringsDOSCDItalianProvider },
+ { k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, IT_ITA, &k2SeqplayTlkFilesDOSCDItalianProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformDOS, kTalkieVersion, RU_RUS, &k2SeqplayStringsDOSCDRussianProvider },
+ { k2SeqplayTlkFiles, kKyra2, kPlatformDOS, kTalkieVersion, RU_RUS, &k2SeqplayTlkFilesDOSCDRussianProvider },
+ { k2SeqplayPakFiles, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2SeqplayPakFilesFMTownsProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformFMTowns, kNoSpecial, EN_ANY, &k2SeqplayStringsFMTownsEnglishProvider },
+ { k2SeqplaySfxFiles, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2SeqplaySfxFilesFMTownsProvider },
+ { k2SeqplaySeqData, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2SeqplaySeqDataFMTownsProvider },
+ { k2SeqplayIntroCDA, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2SeqplayIntroCDAFMTownsProvider },
+ { k2SeqplayFinaleCDA, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2SeqplayFinaleCDAFMTownsProvider },
+ { k2IngamePakFiles, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2IngamePakFilesFMTownsProvider },
+ { k2IngameSfxFiles, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2IngameSfxFilesFMTownsProvider },
+ { k2IngameSfxIndex, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2IngameSfxIndexFMTownsProvider },
+ { k2IngameCDA, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2IngameCDAFMTownsProvider },
+ { k2IngameTalkObjIndex, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2IngameTalkObjIndexFMTownsProvider },
+ { k2IngameTimJpStrings, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2IngameTimJpStringsFMTownsProvider },
+ { k2IngameShapeAnimData, kKyra2, kPlatformFMTowns, kNoSpecial, UNK_LANG, &k2IngameShapeAnimDataFMTownsProvider },
+ { k2SeqplayStrings, kKyra2, kPlatformFMTowns, kNoSpecial, JA_JPN, &k2SeqplayStringsFMTownsJapaneseProvider },
+ { k2SeqplayPakFiles, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2SeqplayPakFilesPC98Provider },
+ { k2SeqplayStrings, kKyra2, kPlatformPC98, kNoSpecial, EN_ANY, &k2SeqplayStringsPC98EnglishProvider },
+ { k2SeqplaySfxFiles, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2SeqplaySfxFilesPC98Provider },
+ { k2SeqplaySeqData, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2SeqplaySeqDataPC98Provider },
+ { k2IngamePakFiles, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2IngamePakFilesPC98Provider },
+ { k2IngameSfxFiles, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2IngameSfxFilesPC98Provider },
+ { k2IngameSfxIndex, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2IngameSfxIndexPC98Provider },
+ { k2IngameTalkObjIndex, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2IngameTalkObjIndexPC98Provider },
+ { k2IngameTimJpStrings, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2IngameTimJpStringsPC98Provider },
+ { k2IngameShapeAnimData, kKyra2, kPlatformPC98, kNoSpecial, UNK_LANG, &k2IngameShapeAnimDataPC98Provider },
+ { k2SeqplayStrings, kKyra2, kPlatformPC98, kNoSpecial, JA_JPN, &k2SeqplayStringsPC98JapaneseProvider },
+ { k3MainMenuStrings, kKyra3, kPlatformDOS, kTalkieVersion, UNK_LANG, &k3MainMenuStringsDOSCDProvider },
+ { k3MusicFiles, kKyra3, kPlatformDOS, kTalkieVersion, UNK_LANG, &k3MusicFilesDOSCDProvider },
+ { k3ScoreTable, kKyra3, kPlatformDOS, kTalkieVersion, UNK_LANG, &k3ScoreTableDOSCDProvider },
+ { k3SfxFiles, kKyra3, kPlatformDOS, kTalkieVersion, UNK_LANG, &k3SfxFilesDOSCDProvider },
+ { k3SfxMap, kKyra3, kPlatformDOS, kTalkieVersion, UNK_LANG, &k3SfxMapDOSCDProvider },
+ { k3ItemAnimData, kKyra3, kPlatformDOS, kTalkieVersion, UNK_LANG, &k3ItemAnimDataDOSCDProvider },
+ { k3ItemMagicTable, kKyra3, kPlatformDOS, kTalkieVersion, UNK_LANG, &k3ItemMagicTableDOSCDProvider },
+ { k3ItemStringMap, kKyra3, kPlatformDOS, kTalkieVersion, UNK_LANG, &k3ItemStringMapDOSCDProvider },
+ { kEoBBaseChargenStrings1, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ChargenStrings1DOSEnglishProvider },
+ { kEoBBaseChargenStrings2, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ChargenStrings2DOSEnglishProvider },
+ { kEoBBaseChargenStartLevels, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ChargenStartLevelsDOSProvider },
+ { kEoBBaseChargenStatStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ChargenStatStringsDOSEnglishProvider },
+ { kEoBBaseChargenRaceSexStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ChargenRaceSexStringsDOSEnglishProvider },
+ { kEoBBaseChargenClassStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ChargenClassStringsDOSEnglishProvider },
+ { kEoBBaseChargenAlignmentStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ChargenAlignmentStringsDOSEnglishProvider },
+ { kEoBBaseChargenEnterGameStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ChargenEnterGameStringsDOSEnglishProvider },
+ { kEoBBaseChargenClassMinStats, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ChargenClassMinStatsDOSProvider },
+ { kEoBBaseChargenRaceMinStats, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ChargenRaceMinStatsDOSProvider },
+ { kEoBBaseChargenRaceMaxStats, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ChargenRaceMaxStatsDOSProvider },
+ { kEoBBaseSaveThrowTable1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SaveThrowTable1DOSProvider },
+ { kEoBBaseSaveThrowTable2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SaveThrowTable2DOSProvider },
+ { kEoBBaseSaveThrowTable3, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SaveThrowTable3DOSProvider },
+ { kEoBBaseSaveThrowTable4, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SaveThrowTable4DOSProvider },
+ { kEoBBaseSaveThrwLvlIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SaveThrwLvlIndexDOSProvider },
+ { kEoBBaseSaveThrwModDiv, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SaveThrwModDivDOSProvider },
+ { kEoBBaseSaveThrwModExt, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SaveThrwModExtDOSProvider },
+ { kEoB1MainMenuStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MainMenuStringsDOSEnglishProvider },
+ { kEoB1BonusStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1BonusStringsDOSEnglishProvider },
+ { kEoB1IntroFilesOpening, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroFilesOpeningDOSProvider },
+ { kEoB1IntroFilesTower, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroFilesTowerDOSProvider },
+ { kEoB1IntroFilesOrb, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroFilesOrbDOSProvider },
+ { kEoB1IntroFilesWdEntry, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroFilesWdEntryDOSProvider },
+ { kEoB1IntroFilesKing, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroFilesKingDOSProvider },
+ { kEoB1IntroFilesHands, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroFilesHandsDOSProvider },
+ { kEoB1IntroFilesWdExit, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroFilesWdExitDOSProvider },
+ { kEoB1IntroFilesTunnel, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroFilesTunnelDOSProvider },
+ { kEoB1IntroOpeningFrmDelay, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroOpeningFrmDelayDOSProvider },
+ { kEoB1IntroWdEncodeX, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroWdEncodeXDOSProvider },
+ { kEoB1IntroWdEncodeY, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroWdEncodeYDOSProvider },
+ { kEoB1IntroWdEncodeWH, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroWdEncodeWHDOSProvider },
+ { kEoB1IntroWdDsX, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroWdDsXDOSProvider },
+ { kEoB1IntroWdDsY, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroWdDsYDOSProvider },
+ { kEoB1IntroTvlX1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroTvlX1DOSProvider },
+ { kEoB1IntroTvlY1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroTvlY1DOSProvider },
+ { kEoB1IntroTvlX2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroTvlX2DOSProvider },
+ { kEoB1IntroTvlY2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroTvlY2DOSProvider },
+ { kEoB1IntroTvlW, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroTvlWDOSProvider },
+ { kEoB1IntroTvlH, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1IntroTvlHDOSProvider },
+ { kEoB1DoorShapeDefs, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DoorShapeDefsDOSProvider },
+ { kEoB1DoorSwitchShapeDefs, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DoorSwitchShapeDefsDOSProvider },
+ { kEoB1DoorSwitchCoords, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DoorSwitchCoordsDOSProvider },
+ { kEoB1MonsterProperties, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterPropertiesDOSProvider },
+ { kEoB1EnemyMageSpellList, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1EnemyMageSpellListDOSProvider },
+ { kEoB1EnemyMageSfx, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1EnemyMageSfxDOSProvider },
+ { kEoB1BeholderSpellList, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1BeholderSpellListDOSProvider },
+ { kEoB1BeholderSfx, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1BeholderSfxDOSProvider },
+ { kEoB1TurnUndeadString, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1TurnUndeadStringDOSEnglishProvider },
+ { kEoB1CgaMappingDefault, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingDefaultDOSProvider },
+ { kEoB1CgaMappingAlt, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingAltDOSProvider },
+ { kEoB1CgaMappingInv, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingInvDOSProvider },
+ { kEoB1CgaMappingItemsL, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingItemsLDOSProvider },
+ { kEoB1CgaMappingItemsS, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingItemsSDOSProvider },
+ { kEoB1CgaMappingThrown, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingThrownDOSProvider },
+ { kEoB1CgaMappingIcons, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingIconsDOSProvider },
+ { kEoB1CgaMappingDeco, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingDecoDOSProvider },
+ { kEoB1CgaLevelMappingIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaLevelMappingIndexDOSProvider },
+ { kEoB1CgaMappingLevel0, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingLevel0DOSProvider },
+ { kEoB1CgaMappingLevel1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingLevel1DOSProvider },
+ { kEoB1CgaMappingLevel2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingLevel2DOSProvider },
+ { kEoB1CgaMappingLevel3, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingLevel3DOSProvider },
+ { kEoB1CgaMappingLevel4, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1CgaMappingLevel4DOSProvider },
+ { kEoB1NpcShpData, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NpcShpDataDOSProvider },
+ { kEoB1NpcSubShpIndex1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NpcSubShpIndex1DOSProvider },
+ { kEoB1NpcSubShpIndex2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NpcSubShpIndex2DOSProvider },
+ { kEoB1NpcSubShpY, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NpcSubShpYDOSProvider },
+ { kEoB1Npc0Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc0StringsDOSEnglishProvider },
+ { kEoB1Npc11Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc11StringsDOSEnglishProvider },
+ { kEoB1Npc12Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc12StringsDOSEnglishProvider },
+ { kEoB1Npc21Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc21StringsDOSEnglishProvider },
+ { kEoB1Npc22Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc22StringsDOSEnglishProvider },
+ { kEoB1Npc31Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc31StringsDOSEnglishProvider },
+ { kEoB1Npc32Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc32StringsDOSEnglishProvider },
+ { kEoB1Npc4Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc4StringsDOSEnglishProvider },
+ { kEoB1Npc5Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc5StringsDOSEnglishProvider },
+ { kEoB1Npc6Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc6StringsDOSEnglishProvider },
+ { kEoB1Npc7Strings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1Npc7StringsDOSEnglishProvider },
+ { kEoBBasePryDoorStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1PryDoorStringsDOSEnglishProvider },
+ { kEoBBaseWarningStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1WarningStringsDOSEnglishProvider },
+ { kEoBBaseItemSuffixStringsRings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ItemSuffixStringsRingsDOSEnglishProvider },
+ { kEoBBaseItemSuffixStringsPotions, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ItemSuffixStringsPotionsDOSEnglishProvider },
+ { kEoBBaseItemSuffixStringsWands, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ItemSuffixStringsWandsDOSEnglishProvider },
+ { kEoBBaseRipItemStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1RipItemStringsDOSEnglishProvider },
+ { kEoBBaseCursedString, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CursedStringDOSEnglishProvider },
+ { kEoBBaseEnchantedString, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1EnchantedStringDOSProvider },
+ { kEoBBaseMagicObjectStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicObjectStringsDOSEnglishProvider },
+ { kEoBBaseMagicObjectString5, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicObjectString5DOSEnglishProvider },
+ { kEoBBasePatternSuffix, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1PatternSuffixDOSEnglishProvider },
+ { kEoBBasePatternGrFix1, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1PatternGrFix1DOSEnglishProvider },
+ { kEoBBasePatternGrFix2, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1PatternGrFix2DOSEnglishProvider },
+ { kEoBBaseValidateArmorString, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ValidateArmorStringDOSEnglishProvider },
+ { kEoBBaseValidateNoDropString, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ValidateNoDropStringDOSEnglishProvider },
+ { kEoBBasePotionStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1PotionStringsDOSEnglishProvider },
+ { kEoBBaseWandStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1WandStringsDOSEnglishProvider },
+ { kEoBBaseItemMisuseStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ItemMisuseStringsDOSEnglishProvider },
+ { kEoBBaseTakenStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1TakenStringsDOSEnglishProvider },
+ { kEoBBasePotionEffectStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1PotionEffectStringsDOSEnglishProvider },
+ { kEoBBaseYesNoStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1YesNoStringsDOSEnglishProvider },
+ { kRpgCommonMoreStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MoreStringsDOSEnglishProvider },
+ { kEoBBaseNpcMaxStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1NpcMaxStringsDOSEnglishProvider },
+ { kEoBBaseNpcJoinStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1NpcJoinStringsDOSEnglishProvider },
+ { kEoBBaseCancelStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CancelStringsDOSEnglishProvider },
+ { kEoBBaseMenuStringsMain, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsMainDOSEnglishProvider },
+ { kEoBBaseMenuStringsSaveLoad, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsSaveLoadDOSEnglishProvider },
+ { kEoBBaseMenuStringsOnOff, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsOnOffDOSEnglishProvider },
+ { kEoBBaseMenuStringsSpells, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsSpellsDOSEnglishProvider },
+ { kEoBBaseMenuStringsRest, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsRestDOSEnglishProvider },
+ { kEoBBaseMenuStringsDrop, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsDropDOSEnglishProvider },
+ { kEoBBaseMenuStringsExit, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsExitDOSEnglishProvider },
+ { kEoBBaseMenuStringsStarve, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsStarveDOSEnglishProvider },
+ { kEoBBaseMenuStringsScribe, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsScribeDOSEnglishProvider },
+ { kEoBBaseMenuStringsDrop2, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsDrop2DOSEnglishProvider },
+ { kEoBBaseMenuStringsHead, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsHeadDOSEnglishProvider },
+ { kEoBBaseMenuStringsPoison, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsPoisonDOSEnglishProvider },
+ { kEoBBaseMenuStringsMgc, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsMgcDOSEnglishProvider },
+ { kEoBBaseMenuStringsPrefs, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsPrefsDOSEnglishProvider },
+ { kEoBBaseMenuStringsRest2, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsRest2DOSEnglishProvider },
+ { kEoBBaseMenuStringsRest4, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsRest4DOSEnglishProvider },
+ { kEoBBaseMenuStringsDefeat, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuStringsDefeatDOSEnglishProvider },
+ { kEoBBaseMenuYesNoStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MenuYesNoStringsDOSEnglishProvider },
+ { kEoBBaseSpellLevelsMage, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SpellLevelsMageDOSProvider },
+ { kEoBBaseSpellLevelsCleric, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SpellLevelsClericDOSProvider },
+ { kEoBBaseNumSpellsCleric, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NumSpellsClericDOSProvider },
+ { kEoBBaseNumSpellsWisAdj, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NumSpellsWisAdjDOSProvider },
+ { kEoBBaseNumSpellsPal, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NumSpellsPalDOSProvider },
+ { kEoBBaseNumSpellsMage, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NumSpellsMageDOSProvider },
+ { kEoBBaseCharGuiStringsHp, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharGuiStringsHpDOSEnglishProvider },
+ { kEoBBaseCharGuiStringsWp1, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharGuiStringsWp1DOSEnglishProvider },
+ { kEoBBaseCharGuiStringsWr, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharGuiStringsWrDOSEnglishProvider },
+ { kEoBBaseCharGuiStringsSt1, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharGuiStringsSt1DOSEnglishProvider },
+ { kEoBBaseCharGuiStringsIn, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharGuiStringsInDOSEnglishProvider },
+ { kEoBBaseCharStatusStrings7, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharStatusStrings7DOSEnglishProvider },
+ { kEoBBaseCharStatusStrings81, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharStatusStrings81DOSEnglishProvider },
+ { kEoBBaseCharStatusStrings9, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharStatusStrings9DOSEnglishProvider },
+ { kEoBBaseCharStatusStrings131, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1CharStatusStrings131DOSEnglishProvider },
+ { kEoBBaseLevelGainStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1LevelGainStringsDOSEnglishProvider },
+ { kEoBBaseExperienceTable0, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExperienceTable0DOSProvider },
+ { kEoBBaseExperienceTable1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExperienceTable1DOSProvider },
+ { kEoBBaseExperienceTable2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExperienceTable2DOSProvider },
+ { kEoBBaseExperienceTable3, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExperienceTable3DOSProvider },
+ { kEoBBaseExperienceTable4, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExperienceTable4DOSProvider },
+ { kEoBBaseBookNumbers, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1BookNumbersDOSEnglishProvider },
+ { kEoBBaseMageSpellsList, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MageSpellsListDOSEnglishProvider },
+ { kEoBBaseClericSpellsList, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ClericSpellsListDOSEnglishProvider },
+ { kEoBBaseSpellNames, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1SpellNamesDOSEnglishProvider },
+ { kEoBBaseMagicStrings1, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicStrings1DOSEnglishProvider },
+ { kEoBBaseMagicStrings2, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicStrings2DOSEnglishProvider },
+ { kEoBBaseMagicStrings3, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicStrings3DOSEnglishProvider },
+ { kEoBBaseMagicStrings4, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicStrings4DOSEnglishProvider },
+ { kEoBBaseMagicStrings6, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicStrings6DOSEnglishProvider },
+ { kEoBBaseMagicStrings7, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicStrings7DOSEnglishProvider },
+ { kEoBBaseMagicStrings8, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MagicStrings8DOSEnglishProvider },
+ { kEoBBaseExpObjectTblIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExpObjectTblIndexDOSProvider },
+ { kEoBBaseExpObjectShpStart, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExpObjectShpStartDOSProvider },
+ { kEoBBaseExpObjectTbl1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExpObjectTbl1DOSProvider },
+ { kEoBBaseExpObjectTbl2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExpObjectTbl2DOSProvider },
+ { kEoBBaseExpObjectTbl3, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExpObjectTbl3DOSProvider },
+ { kEoBBaseExpObjectY, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ExpObjectYDOSProvider },
+ { kEoBBaseSparkDefSteps, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkDefStepsDOSProvider },
+ { kEoBBaseSparkDefSubSteps, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkDefSubStepsDOSProvider },
+ { kEoBBaseSparkDefShift, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkDefShiftDOSProvider },
+ { kEoBBaseSparkDefAdd, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkDefAddDOSProvider },
+ { kEoBBaseSparkDefX, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkDefXDOSProvider },
+ { kEoBBaseSparkDefY, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkDefYDOSProvider },
+ { kEoBBaseSparkOfFlags1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkOfFlags1DOSProvider },
+ { kEoBBaseSparkOfFlags2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkOfFlags2DOSProvider },
+ { kEoBBaseSparkOfShift, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkOfShiftDOSProvider },
+ { kEoBBaseSparkOfX, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkOfXDOSProvider },
+ { kEoBBaseSparkOfY, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SparkOfYDOSProvider },
+ { kEoBBaseSpellProperties, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SpellPropertiesDOSProvider },
+ { kEoBBaseMagicFlightProps, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MagicFlightPropsDOSProvider },
+ { kEoBBaseTurnUndeadEffect, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1TurnUndeadEffectDOSProvider },
+ { kEoBBaseBurningHandsDest, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1BurningHandsDestDOSProvider },
+ { kEoBBaseConeOfColdDest1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ConeOfColdDest1DOSProvider },
+ { kEoBBaseConeOfColdDest2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ConeOfColdDest2DOSProvider },
+ { kEoBBaseConeOfColdDest3, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ConeOfColdDest3DOSProvider },
+ { kEoBBaseConeOfColdDest4, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ConeOfColdDest4DOSProvider },
+ { kEoBBaseConeOfColdGfxTbl, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ConeOfColdGfxTblDOSProvider },
+ { kRpgCommonDscDoorShapeIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorShapeIndexDOSProvider },
+ { kEoBBaseWllFlagPreset, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1WllFlagPresetDOSProvider },
+ { kEoBBaseDscShapeCoords, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscShapeCoordsDOSProvider },
+ { kEoBBaseDscDoorScaleOffs, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorScaleOffsDOSProvider },
+ { kEoBBaseDscDoorScaleMult1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorScaleMult1DOSProvider },
+ { kEoBBaseDscDoorScaleMult2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorScaleMult2DOSProvider },
+ { kEoBBaseDscDoorScaleMult3, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorScaleMult3DOSProvider },
+ { kEoBBaseDscDoorScaleMult4, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorScaleMult4DOSProvider },
+ { kEoBBaseDscDoorScaleMult5, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorScaleMult5DOSProvider },
+ { kEoBBaseDscDoorScaleMult6, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorScaleMult6DOSProvider },
+ { kEoBBaseDscDoorXE, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorXEDOSProvider },
+ { kEoBBaseDscDoorY1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorY1DOSProvider },
+ { kEoBBaseDscDoorY3, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorY3DOSProvider },
+ { kEoBBaseDscDoorY4, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorY4DOSProvider },
+ { kEoBBaseDscDoorY5, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorY5DOSProvider },
+ { kEoBBaseDscDoorY6, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorY6DOSProvider },
+ { kEoBBaseDscDoorY7, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorY7DOSProvider },
+ { kEoBBaseDscDoorCoordsExt, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorCoordsExtDOSProvider },
+ { kRpgCommonDscDoorFrameY1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorFrameY1DOSProvider },
+ { kRpgCommonDscDoorFrameY2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorFrameY2DOSProvider },
+ { kRpgCommonDscDoorFrameIndex1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorFrameIndex1DOSProvider },
+ { kRpgCommonDscDoorFrameIndex2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDoorFrameIndex2DOSProvider },
+ { kEoBBaseDscItemPosIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscItemPosIndexDOSProvider },
+ { kEoBBaseDscItemShpX, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscItemShpXDOSProvider },
+ { kEoBBaseDscItemScaleIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscItemScaleIndexDOSProvider },
+ { kEoBBaseDscItemTileIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscItemTileIndexDOSProvider },
+ { kEoBBaseDscItemShapeMap, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscItemShapeMapDOSProvider },
+ { kEoBBaseDscTelptrShpCoords, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscTelptrShpCoordsDOSProvider },
+ { kEoBBasePortalSeqData, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1PortalSeqDataDOSProvider },
+ { kEoBBaseManDef, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ManDefDOSEnglishProvider },
+ { kEoBBaseManWord, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ManWordDOSEnglishProvider },
+ { kEoBBaseManPrompt, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1ManPromptDOSEnglishProvider },
+ { kEoBBaseDscMonsterFrmOffsTbl1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscMonsterFrmOffsTbl1DOSProvider },
+ { kEoBBaseDscMonsterFrmOffsTbl2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscMonsterFrmOffsTbl2DOSProvider },
+ { kEoBBaseInvSlotX, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1InvSlotXDOSProvider },
+ { kEoBBaseInvSlotY, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1InvSlotYDOSProvider },
+ { kEoBBaseSlotValidationFlags, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1SlotValidationFlagsDOSProvider },
+ { kEoBBaseProjectileWeaponTypes, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ProjectileWeaponTypesDOSProvider },
+ { kEoBBaseWandTypes, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1WandTypesDOSProvider },
+ { kEoBBaseDrawObjPosIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DrawObjPosIndexDOSProvider },
+ { kEoBBaseFlightObjFlipIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1FlightObjFlipIndexDOSProvider },
+ { kEoBBaseFlightObjShpMap, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1FlightObjShpMapDOSProvider },
+ { kEoBBaseFlightObjSclIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1FlightObjSclIndexDOSProvider },
+ { kRpgCommonDscShapeIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscShapeIndexDOSProvider },
+ { kRpgCommonDscX, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscXDOSProvider },
+ { kRpgCommonDscTileIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscTileIndexDOSProvider },
+ { kRpgCommonDscUnk2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscUnk2DOSProvider },
+ { kRpgCommonDscDimData1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDimData1DOSProvider },
+ { kRpgCommonDscDimData2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDimData2DOSProvider },
+ { kRpgCommonDscBlockMap, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscBlockMapDOSProvider },
+ { kRpgCommonDscDimMap, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscDimMapDOSProvider },
+ { kRpgCommonDscBlockIndex, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1DscBlockIndexDOSProvider },
+ { kEoBBaseClassModifierFlags, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1ClassModifierFlagsDOSProvider },
+ { kEoBBaseMonsterStepTable01, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterStepTable01DOSProvider },
+ { kEoBBaseMonsterStepTable2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterStepTable2DOSProvider },
+ { kEoBBaseMonsterStepTable3, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterStepTable3DOSProvider },
+ { kEoBBaseMonsterCloseAttPosTable1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterCloseAttPosTable1DOSProvider },
+ { kEoBBaseMonsterCloseAttPosTable21, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterCloseAttPosTable21DOSProvider },
+ { kEoBBaseMonsterCloseAttChkTable1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterCloseAttChkTable1DOSProvider },
+ { kEoBBaseMonsterCloseAttChkTable2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterCloseAttChkTable2DOSProvider },
+ { kEoBBaseMonsterCloseAttDstTable1, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterCloseAttDstTable1DOSProvider },
+ { kEoBBaseMonsterCloseAttDstTable2, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterCloseAttDstTable2DOSProvider },
+ { kEoBBaseMonsterProximityTable, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterProximityTableDOSProvider },
+ { kEoBBaseFindBlockMonstersTable, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1FindBlockMonstersTableDOSProvider },
+ { kEoBBaseMonsterDirChangeTable, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1MonsterDirChangeTableDOSProvider },
+ { kEoBBaseMonsterDistAttStrings, kEoB1, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB1MonsterDistAttStringsDOSEnglishProvider },
+ { kEoBBaseEncodeMonsterDefs, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1EncodeMonsterDefsDOSProvider },
+ { kEoBBaseNpcPresets, kEoB1, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB1NpcPresetsDOSProvider },
+ { kEoBBaseChargenStrings1, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ChargenStrings1DOSGermanProvider },
+ { kEoBBaseChargenStrings2, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ChargenStrings2DOSGermanProvider },
+ { kEoBBaseChargenStatStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ChargenStatStringsDOSGermanProvider },
+ { kEoBBaseChargenRaceSexStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ChargenRaceSexStringsDOSGermanProvider },
+ { kEoBBaseChargenClassStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ChargenClassStringsDOSGermanProvider },
+ { kEoBBaseChargenAlignmentStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ChargenAlignmentStringsDOSGermanProvider },
+ { kEoBBaseChargenEnterGameStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ChargenEnterGameStringsDOSGermanProvider },
+ { kEoB1MainMenuStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MainMenuStringsDOSGermanProvider },
+ { kEoB1BonusStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1BonusStringsDOSGermanProvider },
+ { kEoB1TurnUndeadString, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1TurnUndeadStringDOSGermanProvider },
+ { kEoB1Npc0Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc0StringsDOSGermanProvider },
+ { kEoB1Npc11Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc11StringsDOSGermanProvider },
+ { kEoB1Npc12Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc12StringsDOSGermanProvider },
+ { kEoB1Npc21Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc21StringsDOSGermanProvider },
+ { kEoB1Npc22Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc22StringsDOSGermanProvider },
+ { kEoB1Npc31Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc31StringsDOSGermanProvider },
+ { kEoB1Npc32Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc32StringsDOSGermanProvider },
+ { kEoB1Npc4Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc4StringsDOSGermanProvider },
+ { kEoB1Npc5Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc5StringsDOSGermanProvider },
+ { kEoB1Npc6Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc6StringsDOSGermanProvider },
+ { kEoB1Npc7Strings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1Npc7StringsDOSGermanProvider },
+ { kEoBBasePryDoorStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1PryDoorStringsDOSGermanProvider },
+ { kEoBBaseWarningStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1WarningStringsDOSGermanProvider },
+ { kEoBBaseItemSuffixStringsRings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ItemSuffixStringsRingsDOSGermanProvider },
+ { kEoBBaseItemSuffixStringsPotions, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ItemSuffixStringsPotionsDOSGermanProvider },
+ { kEoBBaseItemSuffixStringsWands, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ItemSuffixStringsWandsDOSGermanProvider },
+ { kEoBBaseRipItemStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1RipItemStringsDOSGermanProvider },
+ { kEoBBaseCursedString, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CursedStringDOSGermanProvider },
+ { kEoBBaseMagicObjectStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicObjectStringsDOSGermanProvider },
+ { kEoBBaseMagicObjectString5, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicObjectString5DOSGermanProvider },
+ { kEoBBasePatternSuffix, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1PatternSuffixDOSGermanProvider },
+ { kEoBBasePatternGrFix1, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1PatternGrFix1DOSGermanProvider },
+ { kEoBBasePatternGrFix2, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1PatternGrFix2DOSGermanProvider },
+ { kEoBBaseValidateArmorString, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ValidateArmorStringDOSGermanProvider },
+ { kEoBBaseValidateNoDropString, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ValidateNoDropStringDOSGermanProvider },
+ { kEoBBasePotionStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1PotionStringsDOSGermanProvider },
+ { kEoBBaseWandStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1WandStringsDOSGermanProvider },
+ { kEoBBaseItemMisuseStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ItemMisuseStringsDOSGermanProvider },
+ { kEoBBaseTakenStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1TakenStringsDOSGermanProvider },
+ { kEoBBasePotionEffectStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1PotionEffectStringsDOSGermanProvider },
+ { kEoBBaseYesNoStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1YesNoStringsDOSGermanProvider },
+ { kRpgCommonMoreStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MoreStringsDOSGermanProvider },
+ { kEoBBaseNpcMaxStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1NpcMaxStringsDOSGermanProvider },
+ { kEoBBaseNpcJoinStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1NpcJoinStringsDOSGermanProvider },
+ { kEoBBaseCancelStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CancelStringsDOSGermanProvider },
+ { kEoBBaseMenuStringsMain, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsMainDOSGermanProvider },
+ { kEoBBaseMenuStringsSaveLoad, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsSaveLoadDOSGermanProvider },
+ { kEoBBaseMenuStringsOnOff, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsOnOffDOSGermanProvider },
+ { kEoBBaseMenuStringsSpells, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsSpellsDOSGermanProvider },
+ { kEoBBaseMenuStringsRest, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsRestDOSGermanProvider },
+ { kEoBBaseMenuStringsDrop, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsDropDOSGermanProvider },
+ { kEoBBaseMenuStringsExit, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsExitDOSGermanProvider },
+ { kEoBBaseMenuStringsStarve, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsStarveDOSGermanProvider },
+ { kEoBBaseMenuStringsScribe, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsScribeDOSGermanProvider },
+ { kEoBBaseMenuStringsDrop2, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsDrop2DOSGermanProvider },
+ { kEoBBaseMenuStringsHead, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsHeadDOSGermanProvider },
+ { kEoBBaseMenuStringsPoison, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsPoisonDOSGermanProvider },
+ { kEoBBaseMenuStringsMgc, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsMgcDOSGermanProvider },
+ { kEoBBaseMenuStringsPrefs, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsPrefsDOSGermanProvider },
+ { kEoBBaseMenuStringsRest2, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsRest2DOSGermanProvider },
+ { kEoBBaseMenuStringsRest4, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsRest4DOSGermanProvider },
+ { kEoBBaseMenuStringsDefeat, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuStringsDefeatDOSGermanProvider },
+ { kEoBBaseMenuYesNoStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MenuYesNoStringsDOSGermanProvider },
+ { kEoBBaseCharGuiStringsHp, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharGuiStringsHpDOSGermanProvider },
+ { kEoBBaseCharGuiStringsWp1, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharGuiStringsWp1DOSGermanProvider },
+ { kEoBBaseCharGuiStringsWr, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharGuiStringsWrDOSGermanProvider },
+ { kEoBBaseCharGuiStringsSt1, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharGuiStringsSt1DOSGermanProvider },
+ { kEoBBaseCharGuiStringsIn, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharGuiStringsInDOSGermanProvider },
+ { kEoBBaseCharStatusStrings7, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharStatusStrings7DOSGermanProvider },
+ { kEoBBaseCharStatusStrings81, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharStatusStrings81DOSGermanProvider },
+ { kEoBBaseCharStatusStrings9, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharStatusStrings9DOSGermanProvider },
+ { kEoBBaseCharStatusStrings131, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1CharStatusStrings131DOSGermanProvider },
+ { kEoBBaseLevelGainStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1LevelGainStringsDOSGermanProvider },
+ { kEoBBaseBookNumbers, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1BookNumbersDOSGermanProvider },
+ { kEoBBaseMageSpellsList, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MageSpellsListDOSGermanProvider },
+ { kEoBBaseClericSpellsList, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ClericSpellsListDOSGermanProvider },
+ { kEoBBaseSpellNames, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1SpellNamesDOSGermanProvider },
+ { kEoBBaseMagicStrings1, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicStrings1DOSGermanProvider },
+ { kEoBBaseMagicStrings2, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicStrings2DOSGermanProvider },
+ { kEoBBaseMagicStrings3, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicStrings3DOSGermanProvider },
+ { kEoBBaseMagicStrings4, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicStrings4DOSGermanProvider },
+ { kEoBBaseMagicStrings6, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicStrings6DOSGermanProvider },
+ { kEoBBaseMagicStrings7, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicStrings7DOSGermanProvider },
+ { kEoBBaseMagicStrings8, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MagicStrings8DOSGermanProvider },
+ { kEoBBaseManDef, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ManDefDOSGermanProvider },
+ { kEoBBaseManWord, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ManWordDOSGermanProvider },
+ { kEoBBaseManPrompt, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1ManPromptDOSGermanProvider },
+ { kEoBBaseMonsterDistAttStrings, kEoB1, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB1MonsterDistAttStringsDOSGermanProvider },
+ { kEoBBaseChargenStrings1, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ChargenStrings1DOSEnglishProvider },
+ { kEoBBaseChargenStrings2, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ChargenStrings2DOSEnglishProvider },
+ { kEoBBaseChargenStartLevels, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ChargenStartLevelsDOSProvider },
+ { kEoBBaseChargenStatStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ChargenStatStringsDOSEnglishProvider },
+ { kEoBBaseChargenRaceSexStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ChargenRaceSexStringsDOSEnglishProvider },
+ { kEoBBaseChargenClassStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ChargenClassStringsDOSEnglishProvider },
+ { kEoBBaseChargenAlignmentStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ChargenAlignmentStringsDOSEnglishProvider },
+ { kEoBBaseChargenEnterGameStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ChargenEnterGameStringsDOSEnglishProvider },
+ { kEoBBaseChargenClassMinStats, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ChargenClassMinStatsDOSProvider },
+ { kEoBBaseChargenRaceMinStats, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ChargenRaceMinStatsDOSProvider },
+ { kEoBBaseChargenRaceMaxStats, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ChargenRaceMaxStatsDOSProvider },
+ { kEoBBaseSaveThrowTable1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SaveThrowTable1DOSProvider },
+ { kEoBBaseSaveThrowTable2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SaveThrowTable2DOSProvider },
+ { kEoBBaseSaveThrowTable3, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SaveThrowTable3DOSProvider },
+ { kEoBBaseSaveThrowTable4, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SaveThrowTable4DOSProvider },
+ { kEoBBaseSaveThrwLvlIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SaveThrwLvlIndexDOSProvider },
+ { kEoBBaseSaveThrwModDiv, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SaveThrwModDivDOSProvider },
+ { kEoBBaseSaveThrwModExt, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SaveThrwModExtDOSProvider },
+ { kEoBBasePryDoorStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2PryDoorStringsDOSEnglishProvider },
+ { kEoBBaseWarningStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2WarningStringsDOSEnglishProvider },
+ { kEoBBaseItemSuffixStringsRings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ItemSuffixStringsRingsDOSEnglishProvider },
+ { kEoBBaseItemSuffixStringsPotions, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ItemSuffixStringsPotionsDOSEnglishProvider },
+ { kEoBBaseItemSuffixStringsWands, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ItemSuffixStringsWandsDOSEnglishProvider },
+ { kEoBBaseRipItemStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2RipItemStringsDOSEnglishProvider },
+ { kEoBBaseCursedString, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CursedStringDOSEnglishProvider },
+ { kEoBBaseEnchantedString, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2EnchantedStringDOSProvider },
+ { kEoBBaseMagicObjectStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicObjectStringsDOSEnglishProvider },
+ { kEoBBaseMagicObjectString5, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicObjectString5DOSEnglishProvider },
+ { kEoBBasePatternSuffix, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2PatternSuffixDOSEnglishProvider },
+ { kEoBBasePatternGrFix1, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2PatternGrFix1DOSEnglishProvider },
+ { kEoBBasePatternGrFix2, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2PatternGrFix2DOSEnglishProvider },
+ { kEoBBaseValidateArmorString, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ValidateArmorStringDOSEnglishProvider },
+ { kEoBBaseValidateCursedString, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ValidateCursedStringDOSEnglishProvider },
+ { kEoBBaseValidateNoDropString, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ValidateNoDropStringDOSEnglishProvider },
+ { kEoBBasePotionStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2PotionStringsDOSEnglishProvider },
+ { kEoBBaseWandStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2WandStringsDOSEnglishProvider },
+ { kEoBBaseItemMisuseStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ItemMisuseStringsDOSEnglishProvider },
+ { kEoBBaseTakenStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2TakenStringsDOSEnglishProvider },
+ { kEoBBasePotionEffectStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2PotionEffectStringsDOSEnglishProvider },
+ { kEoBBaseYesNoStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2YesNoStringsDOSEnglishProvider },
+ { kRpgCommonMoreStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MoreStringsDOSEnglishProvider },
+ { kEoBBaseNpcMaxStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2NpcMaxStringsDOSEnglishProvider },
+ { kEoBBaseOkStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2OkStringsDOSEnglishProvider },
+ { kEoBBaseNpcJoinStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2NpcJoinStringsDOSEnglishProvider },
+ { kEoBBaseCancelStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CancelStringsDOSEnglishProvider },
+ { kEoBBaseAbortStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2AbortStringsDOSEnglishProvider },
+ { kEoBBaseMenuStringsMain, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsMainDOSEnglishProvider },
+ { kEoBBaseMenuStringsSaveLoad, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsSaveLoadDOSEnglishProvider },
+ { kEoBBaseMenuStringsOnOff, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsOnOffDOSEnglishProvider },
+ { kEoBBaseMenuStringsSpells, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsSpellsDOSEnglishProvider },
+ { kEoBBaseMenuStringsRest, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsRestDOSEnglishProvider },
+ { kEoBBaseMenuStringsDrop, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsDropDOSEnglishProvider },
+ { kEoBBaseMenuStringsExit, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsExitDOSEnglishProvider },
+ { kEoBBaseMenuStringsStarve, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsStarveDOSEnglishProvider },
+ { kEoBBaseMenuStringsScribe, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsScribeDOSEnglishProvider },
+ { kEoBBaseMenuStringsDrop2, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsDrop2DOSEnglishProvider },
+ { kEoBBaseMenuStringsHead, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsHeadDOSEnglishProvider },
+ { kEoBBaseMenuStringsPoison, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsPoisonDOSEnglishProvider },
+ { kEoBBaseMenuStringsMgc, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsMgcDOSEnglishProvider },
+ { kEoBBaseMenuStringsPrefs, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsPrefsDOSEnglishProvider },
+ { kEoBBaseMenuStringsRest2, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsRest2DOSEnglishProvider },
+ { kEoBBaseMenuStringsRest3, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsRest3DOSEnglishProvider },
+ { kEoBBaseMenuStringsRest4, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsRest4DOSEnglishProvider },
+ { kEoBBaseMenuStringsDefeat, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsDefeatDOSEnglishProvider },
+ { kEoBBaseMenuStringsTransfer, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsTransferDOSEnglishProvider },
+ { kEoBBaseMenuStringsSpec, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuStringsSpecDOSEnglishProvider },
+ { kEoBBaseMenuStringsSpellNo, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MenuStringsSpellNoDOSProvider },
+ { kEoBBaseMenuYesNoStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MenuYesNoStringsDOSEnglishProvider },
+ { kEoBBaseSpellLevelsMage, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SpellLevelsMageDOSProvider },
+ { kEoBBaseSpellLevelsCleric, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SpellLevelsClericDOSProvider },
+ { kEoBBaseNumSpellsCleric, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2NumSpellsClericDOSProvider },
+ { kEoBBaseNumSpellsWisAdj, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2NumSpellsWisAdjDOSProvider },
+ { kEoBBaseNumSpellsPal, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2NumSpellsPalDOSProvider },
+ { kEoBBaseNumSpellsMage, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2NumSpellsMageDOSProvider },
+ { kEoBBaseCharGuiStringsHp, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharGuiStringsHpDOSEnglishProvider },
+ { kEoBBaseCharGuiStringsWp2, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharGuiStringsWp2DOSEnglishProvider },
+ { kEoBBaseCharGuiStringsWr, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharGuiStringsWrDOSEnglishProvider },
+ { kEoBBaseCharGuiStringsSt2, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharGuiStringsSt2DOSEnglishProvider },
+ { kEoBBaseCharGuiStringsIn, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharGuiStringsInDOSEnglishProvider },
+ { kEoBBaseCharStatusStrings7, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharStatusStrings7DOSEnglishProvider },
+ { kEoBBaseCharStatusStrings82, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharStatusStrings82DOSEnglishProvider },
+ { kEoBBaseCharStatusStrings9, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharStatusStrings9DOSEnglishProvider },
+ { kEoBBaseCharStatusStrings12, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharStatusStrings12DOSEnglishProvider },
+ { kEoBBaseCharStatusStrings132, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CharStatusStrings132DOSEnglishProvider },
+ { kEoBBaseLevelGainStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2LevelGainStringsDOSEnglishProvider },
+ { kEoBBaseExperienceTable0, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExperienceTable0DOSProvider },
+ { kEoBBaseExperienceTable1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExperienceTable1DOSProvider },
+ { kEoBBaseExperienceTable2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExperienceTable2DOSProvider },
+ { kEoBBaseExperienceTable3, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExperienceTable3DOSProvider },
+ { kEoBBaseExperienceTable4, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExperienceTable4DOSProvider },
+ { kEoBBaseBookNumbers, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2BookNumbersDOSEnglishProvider },
+ { kEoBBaseMageSpellsList, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MageSpellsListDOSEnglishProvider },
+ { kEoBBaseClericSpellsList, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ClericSpellsListDOSEnglishProvider },
+ { kEoBBaseSpellNames, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2SpellNamesDOSEnglishProvider },
+ { kEoBBaseMagicStrings1, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicStrings1DOSEnglishProvider },
+ { kEoBBaseMagicStrings2, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicStrings2DOSEnglishProvider },
+ { kEoBBaseMagicStrings3, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicStrings3DOSEnglishProvider },
+ { kEoBBaseMagicStrings4, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicStrings4DOSEnglishProvider },
+ { kEoBBaseMagicStrings6, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicStrings6DOSEnglishProvider },
+ { kEoBBaseMagicStrings7, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicStrings7DOSEnglishProvider },
+ { kEoBBaseMagicStrings8, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MagicStrings8DOSEnglishProvider },
+ { kEoBBaseExpObjectTlMode, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExpObjectTlModeDOSProvider },
+ { kEoBBaseExpObjectTblIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExpObjectTblIndexDOSProvider },
+ { kEoBBaseExpObjectShpStart, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExpObjectShpStartDOSProvider },
+ { kEoBBaseExpObjectTbl1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExpObjectTbl1DOSProvider },
+ { kEoBBaseExpObjectTbl2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExpObjectTbl2DOSProvider },
+ { kEoBBaseExpObjectTbl3, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExpObjectTbl3DOSProvider },
+ { kEoBBaseExpObjectY, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ExpObjectYDOSProvider },
+ { kEoBBaseSparkDefSteps, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkDefStepsDOSProvider },
+ { kEoBBaseSparkDefSubSteps, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkDefSubStepsDOSProvider },
+ { kEoBBaseSparkDefShift, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkDefShiftDOSProvider },
+ { kEoBBaseSparkDefAdd, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkDefAddDOSProvider },
+ { kEoBBaseSparkDefX, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkDefXDOSProvider },
+ { kEoBBaseSparkDefY, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkDefYDOSProvider },
+ { kEoBBaseSparkOfFlags1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkOfFlags1DOSProvider },
+ { kEoBBaseSparkOfFlags2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkOfFlags2DOSProvider },
+ { kEoBBaseSparkOfShift, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkOfShiftDOSProvider },
+ { kEoBBaseSparkOfX, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkOfXDOSProvider },
+ { kEoBBaseSparkOfY, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SparkOfYDOSProvider },
+ { kEoBBaseSpellProperties, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SpellPropertiesDOSProvider },
+ { kEoBBaseMagicFlightProps, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MagicFlightPropsDOSProvider },
+ { kEoBBaseTurnUndeadEffect, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2TurnUndeadEffectDOSProvider },
+ { kEoBBaseBurningHandsDest, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2BurningHandsDestDOSProvider },
+ { kEoBBaseConeOfColdDest1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ConeOfColdDest1DOSProvider },
+ { kEoBBaseConeOfColdDest2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ConeOfColdDest2DOSProvider },
+ { kEoBBaseConeOfColdDest3, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ConeOfColdDest3DOSProvider },
+ { kEoBBaseConeOfColdDest4, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ConeOfColdDest4DOSProvider },
+ { kEoBBaseConeOfColdGfxTbl, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ConeOfColdGfxTblDOSProvider },
+ { kRpgCommonDscDoorShapeIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorShapeIndexDOSProvider },
+ { kEoBBaseWllFlagPreset, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2WllFlagPresetDOSProvider },
+ { kEoBBaseDscShapeCoords, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscShapeCoordsDOSProvider },
+ { kEoBBaseDscDoorScaleOffs, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorScaleOffsDOSProvider },
+ { kEoBBaseDscDoorScaleMult1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorScaleMult1DOSProvider },
+ { kEoBBaseDscDoorScaleMult2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorScaleMult2DOSProvider },
+ { kEoBBaseDscDoorScaleMult3, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorScaleMult3DOSProvider },
+ { kEoBBaseDscDoorType5Offs, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorType5OffsDOSProvider },
+ { kEoBBaseDscDoorY1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorY1DOSProvider },
+ { kRpgCommonDscDoorY2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorY2DOSProvider },
+ { kRpgCommonDscDoorFrameY1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorFrameY1DOSProvider },
+ { kRpgCommonDscDoorFrameY2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDoorFrameY2DOSProvider },
+ { kEoBBaseDscItemPosIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscItemPosIndexDOSProvider },
+ { kEoBBaseDscItemShpX, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscItemShpXDOSProvider },
+ { kEoBBaseDscItemScaleIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscItemScaleIndexDOSProvider },
+ { kEoBBaseDscItemTileIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscItemTileIndexDOSProvider },
+ { kEoBBaseDscItemShapeMap, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscItemShapeMapDOSProvider },
+ { kEoBBaseDscTelptrShpCoords, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscTelptrShpCoordsDOSProvider },
+ { kEoBBasePortalSeqData, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2PortalSeqDataDOSProvider },
+ { kEoBBaseManDef, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ManDefDOSEnglishProvider },
+ { kEoBBaseManWord, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ManWordDOSEnglishProvider },
+ { kEoBBaseManPrompt, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2ManPromptDOSEnglishProvider },
+ { kEoBBaseDscMonsterFrmOffsTbl1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscMonsterFrmOffsTbl1DOSProvider },
+ { kEoBBaseDscMonsterFrmOffsTbl2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscMonsterFrmOffsTbl2DOSProvider },
+ { kEoBBaseInvSlotX, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2InvSlotXDOSProvider },
+ { kEoBBaseInvSlotY, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2InvSlotYDOSProvider },
+ { kEoBBaseSlotValidationFlags, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2SlotValidationFlagsDOSProvider },
+ { kEoBBaseProjectileWeaponTypes, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ProjectileWeaponTypesDOSProvider },
+ { kEoBBaseWandTypes, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2WandTypesDOSProvider },
+ { kEoBBaseDrawObjPosIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DrawObjPosIndexDOSProvider },
+ { kEoBBaseFlightObjFlipIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FlightObjFlipIndexDOSProvider },
+ { kEoBBaseFlightObjShpMap, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FlightObjShpMapDOSProvider },
+ { kEoBBaseFlightObjSclIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FlightObjSclIndexDOSProvider },
+ { kEoB2MainMenuStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MainMenuStringsDOSEnglishProvider },
+ { kEoB2TransferPortraitFrames, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2TransferPortraitFramesDOSProvider },
+ { kEoB2TransferConvertTable, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2TransferConvertTableDOSProvider },
+ { kEoB2TransferItemTable, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2TransferItemTableDOSProvider },
+ { kEoB2TransferExpTable, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2TransferExpTableDOSProvider },
+ { kEoB2TransferStrings1, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2TransferStrings1DOSEnglishProvider },
+ { kEoB2TransferStrings2, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2TransferStrings2DOSEnglishProvider },
+ { kEoB2TransferLabels, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2TransferLabelsDOSEnglishProvider },
+ { kEoB2IntroStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2IntroStringsDOSEnglishProvider },
+ { kEoB2IntroCPSFiles, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2IntroCPSFilesDOSEnglishProvider },
+ { kEoB2IntroAnimData00, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData00DOSProvider },
+ { kEoB2IntroAnimData01, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData01DOSProvider },
+ { kEoB2IntroAnimData02, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData02DOSProvider },
+ { kEoB2IntroAnimData03, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData03DOSProvider },
+ { kEoB2IntroAnimData04, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData04DOSProvider },
+ { kEoB2IntroAnimData05, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData05DOSProvider },
+ { kEoB2IntroAnimData06, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData06DOSProvider },
+ { kEoB2IntroAnimData07, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData07DOSProvider },
+ { kEoB2IntroAnimData08, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData08DOSProvider },
+ { kEoB2IntroAnimData09, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData09DOSProvider },
+ { kEoB2IntroAnimData10, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData10DOSProvider },
+ { kEoB2IntroAnimData11, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData11DOSProvider },
+ { kEoB2IntroAnimData12, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData12DOSProvider },
+ { kEoB2IntroAnimData13, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData13DOSProvider },
+ { kEoB2IntroAnimData14, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData14DOSProvider },
+ { kEoB2IntroAnimData15, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData15DOSProvider },
+ { kEoB2IntroAnimData16, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData16DOSProvider },
+ { kEoB2IntroAnimData17, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData17DOSProvider },
+ { kEoB2IntroAnimData18, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData18DOSProvider },
+ { kEoB2IntroAnimData19, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData19DOSProvider },
+ { kEoB2IntroAnimData20, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData20DOSProvider },
+ { kEoB2IntroAnimData21, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData21DOSProvider },
+ { kEoB2IntroAnimData22, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData22DOSProvider },
+ { kEoB2IntroAnimData23, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData23DOSProvider },
+ { kEoB2IntroAnimData24, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData24DOSProvider },
+ { kEoB2IntroAnimData25, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData25DOSProvider },
+ { kEoB2IntroAnimData26, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData26DOSProvider },
+ { kEoB2IntroAnimData27, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData27DOSProvider },
+ { kEoB2IntroAnimData28, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData28DOSProvider },
+ { kEoB2IntroAnimData29, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData29DOSProvider },
+ { kEoB2IntroAnimData30, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData30DOSProvider },
+ { kEoB2IntroAnimData31, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData31DOSProvider },
+ { kEoB2IntroAnimData32, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData32DOSProvider },
+ { kEoB2IntroAnimData33, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData33DOSProvider },
+ { kEoB2IntroAnimData34, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData34DOSProvider },
+ { kEoB2IntroAnimData35, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData35DOSProvider },
+ { kEoB2IntroAnimData36, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData36DOSProvider },
+ { kEoB2IntroAnimData37, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData37DOSProvider },
+ { kEoB2IntroAnimData38, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData38DOSProvider },
+ { kEoB2IntroAnimData39, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData39DOSProvider },
+ { kEoB2IntroAnimData40, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData40DOSProvider },
+ { kEoB2IntroAnimData41, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData41DOSProvider },
+ { kEoB2IntroAnimData42, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData42DOSProvider },
+ { kEoB2IntroAnimData43, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroAnimData43DOSProvider },
+ { kEoB2IntroShapes00, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroShapes00DOSProvider },
+ { kEoB2IntroShapes01, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroShapes01DOSProvider },
+ { kEoB2IntroShapes04, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroShapes04DOSProvider },
+ { kEoB2IntroShapes07, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2IntroShapes07DOSProvider },
+ { kEoB2FinaleStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2FinaleStringsDOSEnglishProvider },
+ { kEoB2CreditsData, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2CreditsDataDOSEnglishProvider },
+ { kEoB2FinaleCPSFiles, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2FinaleCPSFilesDOSEnglishProvider },
+ { kEoB2FinaleAnimData00, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData00DOSProvider },
+ { kEoB2FinaleAnimData01, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData01DOSProvider },
+ { kEoB2FinaleAnimData02, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData02DOSProvider },
+ { kEoB2FinaleAnimData03, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData03DOSProvider },
+ { kEoB2FinaleAnimData04, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData04DOSProvider },
+ { kEoB2FinaleAnimData05, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData05DOSProvider },
+ { kEoB2FinaleAnimData06, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData06DOSProvider },
+ { kEoB2FinaleAnimData07, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData07DOSProvider },
+ { kEoB2FinaleAnimData08, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData08DOSProvider },
+ { kEoB2FinaleAnimData09, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData09DOSProvider },
+ { kEoB2FinaleAnimData10, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData10DOSProvider },
+ { kEoB2FinaleAnimData11, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData11DOSProvider },
+ { kEoB2FinaleAnimData12, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData12DOSProvider },
+ { kEoB2FinaleAnimData13, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData13DOSProvider },
+ { kEoB2FinaleAnimData14, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData14DOSProvider },
+ { kEoB2FinaleAnimData15, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData15DOSProvider },
+ { kEoB2FinaleAnimData16, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData16DOSProvider },
+ { kEoB2FinaleAnimData17, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData17DOSProvider },
+ { kEoB2FinaleAnimData18, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData18DOSProvider },
+ { kEoB2FinaleAnimData19, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData19DOSProvider },
+ { kEoB2FinaleAnimData20, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleAnimData20DOSProvider },
+ { kEoB2FinaleShapes00, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleShapes00DOSProvider },
+ { kEoB2FinaleShapes03, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleShapes03DOSProvider },
+ { kEoB2FinaleShapes07, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleShapes07DOSProvider },
+ { kEoB2FinaleShapes09, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleShapes09DOSProvider },
+ { kEoB2FinaleShapes10, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FinaleShapes10DOSProvider },
+ { kEoB2NpcShapeData, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2NpcShapeDataDOSProvider },
+ { kEoBBaseClassModifierFlags, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2ClassModifierFlagsDOSProvider },
+ { kEoBBaseMonsterStepTable02, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterStepTable02DOSProvider },
+ { kEoBBaseMonsterStepTable1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterStepTable1DOSProvider },
+ { kEoBBaseMonsterStepTable2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterStepTable2DOSProvider },
+ { kEoBBaseMonsterStepTable3, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterStepTable3DOSProvider },
+ { kEoBBaseMonsterCloseAttPosTable1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterCloseAttPosTable1DOSProvider },
+ { kEoBBaseMonsterCloseAttPosTable22, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterCloseAttPosTable22DOSProvider },
+ { kEoBBaseMonsterCloseAttUnkTable, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterCloseAttUnkTableDOSProvider },
+ { kEoBBaseMonsterCloseAttChkTable1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterCloseAttChkTable1DOSProvider },
+ { kEoBBaseMonsterCloseAttChkTable2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterCloseAttChkTable2DOSProvider },
+ { kEoBBaseMonsterCloseAttDstTable1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterCloseAttDstTable1DOSProvider },
+ { kEoBBaseMonsterCloseAttDstTable2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterCloseAttDstTable2DOSProvider },
+ { kEoBBaseMonsterProximityTable, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterProximityTableDOSProvider },
+ { kEoBBaseFindBlockMonstersTable, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2FindBlockMonstersTableDOSProvider },
+ { kEoBBaseMonsterDirChangeTable, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2MonsterDirChangeTableDOSProvider },
+ { kEoBBaseMonsterDistAttStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MonsterDistAttStringsDOSEnglishProvider },
+ { kEoBBaseEncodeMonsterDefs, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2EncodeMonsterDefsDOSProvider },
+ { kEoBBaseNpcPresets, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2NpcPresetsDOSProvider },
+ { kEoB2Npc1Strings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2Npc1StringsDOSEnglishProvider },
+ { kEoB2Npc2Strings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2Npc2StringsDOSEnglishProvider },
+ { kEoB2MonsterDustStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2MonsterDustStringsDOSEnglishProvider },
+ { kEoB2DreamSteps, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DreamStepsDOSProvider },
+ { kEoB2KheldranStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2KheldranStringsDOSEnglishProvider },
+ { kEoB2HornStrings, kEoB2, kPlatformDOS, kNoSpecial, EN_ANY, &kEoB2HornStringsDOSEnglishProvider },
+ { kEoB2HornSounds, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2HornSoundsDOSProvider },
+ { kEoB2WallOfForceDsX, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2WallOfForceDsXDOSProvider },
+ { kEoB2WallOfForceDsY, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2WallOfForceDsYDOSProvider },
+ { kEoB2WallOfForceNumW, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2WallOfForceNumWDOSProvider },
+ { kEoB2WallOfForceNumH, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2WallOfForceNumHDOSProvider },
+ { kEoB2WallOfForceShpId, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2WallOfForceShpIdDOSProvider },
+ { kRpgCommonDscShapeIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscShapeIndexDOSProvider },
+ { kRpgCommonDscX, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscXDOSProvider },
+ { kRpgCommonDscTileIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscTileIndexDOSProvider },
+ { kRpgCommonDscUnk2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscUnk2DOSProvider },
+ { kRpgCommonDscDimData1, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDimData1DOSProvider },
+ { kRpgCommonDscDimData2, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDimData2DOSProvider },
+ { kRpgCommonDscBlockMap, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscBlockMapDOSProvider },
+ { kRpgCommonDscDimMap, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscDimMapDOSProvider },
+ { kRpgCommonDscBlockIndex, kEoB2, kPlatformDOS, kNoSpecial, UNK_LANG, &kEoB2DscBlockIndexDOSProvider },
+ { kEoBBaseChargenStrings1, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ChargenStrings1DOSGermanProvider },
+ { kEoBBaseChargenStrings2, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ChargenStrings2DOSGermanProvider },
+ { kEoBBaseChargenStatStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ChargenStatStringsDOSGermanProvider },
+ { kEoBBaseChargenRaceSexStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ChargenRaceSexStringsDOSGermanProvider },
+ { kEoBBaseChargenClassStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ChargenClassStringsDOSGermanProvider },
+ { kEoBBaseChargenAlignmentStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ChargenAlignmentStringsDOSGermanProvider },
+ { kEoBBaseChargenEnterGameStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ChargenEnterGameStringsDOSGermanProvider },
+ { kEoBBasePryDoorStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2PryDoorStringsDOSGermanProvider },
+ { kEoBBaseWarningStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2WarningStringsDOSGermanProvider },
+ { kEoBBaseItemSuffixStringsRings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ItemSuffixStringsRingsDOSGermanProvider },
+ { kEoBBaseItemSuffixStringsPotions, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ItemSuffixStringsPotionsDOSGermanProvider },
+ { kEoBBaseItemSuffixStringsWands, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ItemSuffixStringsWandsDOSGermanProvider },
+ { kEoBBaseRipItemStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2RipItemStringsDOSGermanProvider },
+ { kEoBBaseCursedString, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CursedStringDOSGermanProvider },
+ { kEoBBaseMagicObjectStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicObjectStringsDOSGermanProvider },
+ { kEoBBaseMagicObjectString5, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicObjectString5DOSGermanProvider },
+ { kEoBBasePatternSuffix, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2PatternSuffixDOSGermanProvider },
+ { kEoBBasePatternGrFix1, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2PatternGrFix1DOSGermanProvider },
+ { kEoBBasePatternGrFix2, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2PatternGrFix2DOSGermanProvider },
+ { kEoBBaseValidateArmorString, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ValidateArmorStringDOSGermanProvider },
+ { kEoBBaseValidateCursedString, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ValidateCursedStringDOSGermanProvider },
+ { kEoBBaseValidateNoDropString, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ValidateNoDropStringDOSGermanProvider },
+ { kEoBBasePotionStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2PotionStringsDOSGermanProvider },
+ { kEoBBaseWandStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2WandStringsDOSGermanProvider },
+ { kEoBBaseItemMisuseStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ItemMisuseStringsDOSGermanProvider },
+ { kEoBBaseTakenStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2TakenStringsDOSGermanProvider },
+ { kEoBBasePotionEffectStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2PotionEffectStringsDOSGermanProvider },
+ { kEoBBaseYesNoStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2YesNoStringsDOSGermanProvider },
+ { kRpgCommonMoreStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MoreStringsDOSGermanProvider },
+ { kEoBBaseNpcMaxStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2NpcMaxStringsDOSGermanProvider },
+ { kEoBBaseOkStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2OkStringsDOSGermanProvider },
+ { kEoBBaseNpcJoinStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2NpcJoinStringsDOSGermanProvider },
+ { kEoBBaseCancelStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CancelStringsDOSGermanProvider },
+ { kEoBBaseAbortStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2AbortStringsDOSGermanProvider },
+ { kEoBBaseMenuStringsMain, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsMainDOSGermanProvider },
+ { kEoBBaseMenuStringsSaveLoad, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsSaveLoadDOSGermanProvider },
+ { kEoBBaseMenuStringsOnOff, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsOnOffDOSGermanProvider },
+ { kEoBBaseMenuStringsSpells, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsSpellsDOSGermanProvider },
+ { kEoBBaseMenuStringsRest, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsRestDOSGermanProvider },
+ { kEoBBaseMenuStringsDrop, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsDropDOSGermanProvider },
+ { kEoBBaseMenuStringsExit, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsExitDOSGermanProvider },
+ { kEoBBaseMenuStringsStarve, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsStarveDOSGermanProvider },
+ { kEoBBaseMenuStringsScribe, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsScribeDOSGermanProvider },
+ { kEoBBaseMenuStringsDrop2, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsDrop2DOSGermanProvider },
+ { kEoBBaseMenuStringsHead, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsHeadDOSGermanProvider },
+ { kEoBBaseMenuStringsPoison, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsPoisonDOSGermanProvider },
+ { kEoBBaseMenuStringsMgc, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsMgcDOSGermanProvider },
+ { kEoBBaseMenuStringsPrefs, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsPrefsDOSGermanProvider },
+ { kEoBBaseMenuStringsRest2, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsRest2DOSGermanProvider },
+ { kEoBBaseMenuStringsRest3, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsRest3DOSGermanProvider },
+ { kEoBBaseMenuStringsRest4, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsRest4DOSGermanProvider },
+ { kEoBBaseMenuStringsDefeat, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsDefeatDOSGermanProvider },
+ { kEoBBaseMenuStringsTransfer, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsTransferDOSGermanProvider },
+ { kEoBBaseMenuStringsSpec, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuStringsSpecDOSGermanProvider },
+ { kEoBBaseMenuYesNoStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MenuYesNoStringsDOSGermanProvider },
+ { kEoBBaseCharGuiStringsHp, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharGuiStringsHpDOSGermanProvider },
+ { kEoBBaseCharGuiStringsWp2, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharGuiStringsWp2DOSGermanProvider },
+ { kEoBBaseCharGuiStringsWr, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharGuiStringsWrDOSGermanProvider },
+ { kEoBBaseCharGuiStringsSt2, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharGuiStringsSt2DOSGermanProvider },
+ { kEoBBaseCharGuiStringsIn, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharGuiStringsInDOSGermanProvider },
+ { kEoBBaseCharStatusStrings7, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharStatusStrings7DOSGermanProvider },
+ { kEoBBaseCharStatusStrings82, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharStatusStrings82DOSGermanProvider },
+ { kEoBBaseCharStatusStrings9, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharStatusStrings9DOSGermanProvider },
+ { kEoBBaseCharStatusStrings12, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharStatusStrings12DOSGermanProvider },
+ { kEoBBaseCharStatusStrings132, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CharStatusStrings132DOSGermanProvider },
+ { kEoBBaseLevelGainStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2LevelGainStringsDOSGermanProvider },
+ { kEoBBaseBookNumbers, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2BookNumbersDOSGermanProvider },
+ { kEoBBaseMageSpellsList, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MageSpellsListDOSGermanProvider },
+ { kEoBBaseClericSpellsList, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ClericSpellsListDOSGermanProvider },
+ { kEoBBaseSpellNames, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2SpellNamesDOSGermanProvider },
+ { kEoBBaseMagicStrings1, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicStrings1DOSGermanProvider },
+ { kEoBBaseMagicStrings2, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicStrings2DOSGermanProvider },
+ { kEoBBaseMagicStrings3, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicStrings3DOSGermanProvider },
+ { kEoBBaseMagicStrings4, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicStrings4DOSGermanProvider },
+ { kEoBBaseMagicStrings6, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicStrings6DOSGermanProvider },
+ { kEoBBaseMagicStrings7, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicStrings7DOSGermanProvider },
+ { kEoBBaseMagicStrings8, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MagicStrings8DOSGermanProvider },
+ { kEoBBaseManDef, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ManDefDOSGermanProvider },
+ { kEoBBaseManWord, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ManWordDOSGermanProvider },
+ { kEoBBaseManPrompt, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2ManPromptDOSGermanProvider },
+ { kEoB2MainMenuStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MainMenuStringsDOSGermanProvider },
+ { kEoB2TransferStrings1, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2TransferStrings1DOSGermanProvider },
+ { kEoB2TransferStrings2, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2TransferStrings2DOSGermanProvider },
+ { kEoB2TransferLabels, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2TransferLabelsDOSGermanProvider },
+ { kEoB2IntroStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2IntroStringsDOSGermanProvider },
+ { kEoB2IntroCPSFiles, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2IntroCPSFilesDOSGermanProvider },
+ { kEoB2FinaleStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2FinaleStringsDOSGermanProvider },
+ { kEoB2CreditsData, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2CreditsDataDOSGermanProvider },
+ { kEoB2FinaleCPSFiles, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2FinaleCPSFilesDOSGermanProvider },
+ { kEoBBaseMonsterDistAttStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MonsterDistAttStringsDOSGermanProvider },
+ { kEoB2Npc1Strings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2Npc1StringsDOSGermanProvider },
+ { kEoB2Npc2Strings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2Npc2StringsDOSGermanProvider },
+ { kEoB2MonsterDustStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2MonsterDustStringsDOSGermanProvider },
+ { kEoB2KheldranStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2KheldranStringsDOSGermanProvider },
+ { kEoB2HornStrings, kEoB2, kPlatformDOS, kNoSpecial, DE_DEU, &kEoB2HornStringsDOSGermanProvider },
+ { k2SeqplayPakFiles, kLoL, kPlatformDOS, kDemoVersion, UNK_LANG, &kLoLSeqplayPakFilesDOSDemoProvider },
+ { k2SeqplayStrings, kLoL, kPlatformDOS, kDemoVersion, EN_ANY, &kLoLSeqplayStringsDOSDemoEnglishProvider },
+ { k2SeqplaySeqData, kLoL, kPlatformDOS, kDemoVersion, UNK_LANG, &kLoLSeqplaySeqDataDOSDemoProvider },
+ { k2SeqplaySfxFiles, kLoL, kPlatformDOS, kDemoVersion, UNK_LANG, &kLoLSeqplaySfxFilesDOSDemoProvider },
+ { k2SeqplayIntroTracks, kLoL, kPlatformDOS, kDemoVersion, UNK_LANG, &kLoLSeqplayIntroTracksDOSDemoProvider },
+ { kLoLIngamePakFiles, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLIngamePakFilesDOSProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kNoSpecial, EN_ANY, &kLoLCharacterDefsDOSEnglishProvider },
+ { kLoLIngameSfxFiles, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLIngameSfxFilesDOSProvider },
+ { kLoLIngameSfxIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLIngameSfxIndexDOSProvider },
+ { kLoLMusicTrackMap, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMusicTrackMapDOSProvider },
+ { kLoLIngameGMSfxIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLIngameGMSfxIndexDOSProvider },
+ { kLoLIngameMT32SfxIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLIngameMT32SfxIndexDOSProvider },
+ { kLoLIngamePcSpkSfxIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLIngamePcSpkSfxIndexDOSProvider },
+ { kLoLSpellProperties, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLSpellPropertiesDOSProvider },
+ { kLoLGameShapeMap, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLGameShapeMapDOSProvider },
+ { kLoLSceneItemOffs, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLSceneItemOffsDOSProvider },
+ { kLoLCharInvIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLCharInvIndexDOSProvider },
+ { kLoLCharInvDefs, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLCharInvDefsDOSProvider },
+ { kLoLCharDefsMan, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLCharDefsManDOSProvider },
+ { kLoLCharDefsWoman, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLCharDefsWomanDOSProvider },
+ { kLoLCharDefsKieran, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLCharDefsKieranDOSProvider },
+ { kLoLCharDefsAkshel, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLCharDefsAkshelDOSProvider },
+ { kLoLExpRequirements, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLExpRequirementsDOSProvider },
+ { kLoLMonsterModifiers1, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers1DOSProvider },
+ { kLoLMonsterModifiers2, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers2DOSProvider },
+ { kLoLMonsterModifiers3, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers3DOSProvider },
+ { kLoLMonsterShiftOffsets, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMonsterShiftOffsetsDOSProvider },
+ { kLoLMonsterDirFlags, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMonsterDirFlagsDOSProvider },
+ { kLoLMonsterScaleY, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMonsterScaleYDOSProvider },
+ { kLoLMonsterScaleX, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMonsterScaleXDOSProvider },
+ { kLoLMonsterScaleWH, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMonsterScaleWHDOSProvider },
+ { kLoLFlyingObjectShp, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLFlyingObjectShpDOSProvider },
+ { kLoLInventoryDesc, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLInventoryDescDOSProvider },
+ { kLoLLevelShpList, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLLevelShpListDOSProvider },
+ { kLoLLevelDatList, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLLevelDatListDOSProvider },
+ { kLoLCompassDefs, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLCompassDefsDOSProvider },
+ { kLoLStashSetup, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLStashSetupDOSProvider },
+ { kLoLDscWalls, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscWallsDOSProvider },
+ { kRpgCommonDscShapeIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscShapeIndexDOSProvider },
+ { kLoLDscOvlMap, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscOvlMapDOSProvider },
+ { kLoLDscScaleWidthData, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscScaleWidthDataDOSProvider },
+ { kLoLDscScaleHeightData, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscScaleHeightDataDOSProvider },
+ { kRpgCommonDscX, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscXDOSProvider },
+ { kLoLBaseDscY, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLBaseDscYDOSProvider },
+ { kRpgCommonDscTileIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscTileIndexDOSProvider },
+ { kRpgCommonDscUnk2, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscUnk2DOSProvider },
+ { kRpgCommonDscDoorShapeIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDoorShapeIndexDOSProvider },
+ { kRpgCommonDscDimData1, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDimData1DOSProvider },
+ { kRpgCommonDscDimData2, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDimData2DOSProvider },
+ { kRpgCommonDscBlockMap, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscBlockMapDOSProvider },
+ { kRpgCommonDscDimMap, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDimMapDOSProvider },
+ { kLoLDscOvlIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscOvlIndexDOSProvider },
+ { kRpgCommonDscBlockIndex, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscBlockIndexDOSProvider },
+ { kRpgCommonDscDoorY2, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDoorY2DOSProvider },
+ { kRpgCommonDscDoorFrameY1, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDoorFrameY1DOSProvider },
+ { kRpgCommonDscDoorFrameY2, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDoorFrameY2DOSProvider },
+ { kLoLDscDoorScale, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDoorScaleDOSProvider },
+ { kLoLDscDoor4, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDoor4DOSProvider },
+ { kLoLDscDoorX, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDoorXDOSProvider },
+ { kLoLDscDoorY, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLDscDoorYDOSProvider },
+ { kLoLScrollXTop, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLScrollXTopDOSProvider },
+ { kLoLScrollYTop, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLScrollYTopDOSProvider },
+ { kLoLScrollXBottom, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLScrollXBottomDOSProvider },
+ { kLoLScrollYBottom, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLScrollYBottomDOSProvider },
+ { kLoLButtonDefs, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonDefsDOSProvider },
+ { kLoLButtonList1, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonList1DOSProvider },
+ { kLoLButtonList2, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonList2DOSProvider },
+ { kLoLButtonList3, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonList3DOSProvider },
+ { kLoLButtonList4, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonList4DOSProvider },
+ { kLoLButtonList5, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonList5DOSProvider },
+ { kLoLButtonList6, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonList6DOSProvider },
+ { kLoLButtonList7, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonList7DOSProvider },
+ { kLoLButtonList8, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLButtonList8DOSProvider },
+ { kLoLLegendData, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLLegendDataDOSProvider },
+ { kLoLMapCursorOvl, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMapCursorOvlDOSProvider },
+ { kLoLMapStringId, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLMapStringIdDOSProvider },
+ { kLoLSpellbookAnim, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLSpellbookAnimDOSProvider },
+ { kLoLSpellbookCoords, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLSpellbookCoordsDOSProvider },
+ { kLoLHealShapeFrames, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLHealShapeFramesDOSProvider },
+ { kLoLLightningDefs, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLLightningDefsDOSProvider },
+ { kLoLFireballCoords, kLoL, kPlatformDOS, kNoSpecial, UNK_LANG, &kLoLFireballCoordsDOSProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kNoSpecial, RU_RUS, &kLoLCharacterDefsDOSRussianProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kNoSpecial, DE_DEU, &kLoLCharacterDefsDOSGermanProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kNoSpecial, FR_FRA, &kLoLCharacterDefsDOSFrenchProvider },
+ { kLoLIngamePakFiles, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLIngamePakFilesPC98Provider },
+ { kLoLCharacterDefs, kLoL, kPlatformPC98, kNoSpecial, JA_JPN, &kLoLCharacterDefsPC98JapaneseProvider },
+ { kLoLIngameSfxFiles, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLIngameSfxFilesPC98Provider },
+ { kLoLIngameSfxIndex, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLIngameSfxIndexPC98Provider },
+ { kLoLSpellProperties, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLSpellPropertiesPC98Provider },
+ { kLoLGameShapeMap, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLGameShapeMapPC98Provider },
+ { kLoLSceneItemOffs, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLSceneItemOffsPC98Provider },
+ { kLoLCharInvIndex, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLCharInvIndexPC98Provider },
+ { kLoLCharInvDefs, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLCharInvDefsPC98Provider },
+ { kLoLCharDefsMan, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLCharDefsManPC98Provider },
+ { kLoLCharDefsWoman, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLCharDefsWomanPC98Provider },
+ { kLoLCharDefsKieran, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLCharDefsKieranPC98Provider },
+ { kLoLCharDefsAkshel, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLCharDefsAkshelPC98Provider },
+ { kLoLExpRequirements, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLExpRequirementsPC98Provider },
+ { kLoLMonsterModifiers1, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers1PC98Provider },
+ { kLoLMonsterModifiers2, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers2PC98Provider },
+ { kLoLMonsterModifiers3, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers3PC98Provider },
+ { kLoLMonsterShiftOffsets, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMonsterShiftOffsetsPC98Provider },
+ { kLoLMonsterDirFlags, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMonsterDirFlagsPC98Provider },
+ { kLoLMonsterScaleY, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMonsterScaleYPC98Provider },
+ { kLoLMonsterScaleX, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMonsterScaleXPC98Provider },
+ { kLoLMonsterScaleWH, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMonsterScaleWHPC98Provider },
+ { kLoLFlyingObjectShp, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLFlyingObjectShpPC98Provider },
+ { kLoLInventoryDesc, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLInventoryDescPC98Provider },
+ { kLoLLevelShpList, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLLevelShpListPC98Provider },
+ { kLoLLevelDatList, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLLevelDatListPC98Provider },
+ { kLoLCompassDefs, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLCompassDefsPC98Provider },
+ { kLoLStashSetup, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLStashSetupPC98Provider },
+ { kLoLDscWalls, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscWallsPC98Provider },
+ { kRpgCommonDscShapeIndex, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscShapeIndexPC98Provider },
+ { kLoLDscOvlMap, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscOvlMapPC98Provider },
+ { kLoLDscScaleWidthData, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscScaleWidthDataPC98Provider },
+ { kLoLDscScaleHeightData, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscScaleHeightDataPC98Provider },
+ { kRpgCommonDscX, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscXPC98Provider },
+ { kLoLBaseDscY, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLBaseDscYPC98Provider },
+ { kRpgCommonDscTileIndex, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscTileIndexPC98Provider },
+ { kRpgCommonDscUnk2, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscUnk2PC98Provider },
+ { kRpgCommonDscDoorShapeIndex, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDoorShapeIndexPC98Provider },
+ { kRpgCommonDscDimData1, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDimData1PC98Provider },
+ { kRpgCommonDscDimData2, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDimData2PC98Provider },
+ { kRpgCommonDscBlockMap, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscBlockMapPC98Provider },
+ { kRpgCommonDscDimMap, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDimMapPC98Provider },
+ { kLoLDscOvlIndex, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscOvlIndexPC98Provider },
+ { kRpgCommonDscBlockIndex, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscBlockIndexPC98Provider },
+ { kRpgCommonDscDoorY2, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDoorY2PC98Provider },
+ { kRpgCommonDscDoorFrameY1, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDoorFrameY1PC98Provider },
+ { kRpgCommonDscDoorFrameY2, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDoorFrameY2PC98Provider },
+ { kLoLDscDoorScale, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDoorScalePC98Provider },
+ { kLoLDscDoor4, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDoor4PC98Provider },
+ { kLoLDscDoorX, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDoorXPC98Provider },
+ { kLoLDscDoorY, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLDscDoorYPC98Provider },
+ { kLoLScrollXTop, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLScrollXTopPC98Provider },
+ { kLoLScrollYTop, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLScrollYTopPC98Provider },
+ { kLoLScrollXBottom, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLScrollXBottomPC98Provider },
+ { kLoLScrollYBottom, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLScrollYBottomPC98Provider },
+ { kLoLButtonDefs, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonDefsPC98Provider },
+ { kLoLButtonList1, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonList1PC98Provider },
+ { kLoLButtonList2, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonList2PC98Provider },
+ { kLoLButtonList3, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonList3PC98Provider },
+ { kLoLButtonList4, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonList4PC98Provider },
+ { kLoLButtonList5, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonList5PC98Provider },
+ { kLoLButtonList6, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonList6PC98Provider },
+ { kLoLButtonList7, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonList7PC98Provider },
+ { kLoLButtonList8, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLButtonList8PC98Provider },
+ { kLoLLegendData, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLLegendDataPC98Provider },
+ { kLoLMapStringId, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLMapStringIdPC98Provider },
+ { kLoLSpellbookAnim, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLSpellbookAnimPC98Provider },
+ { kLoLSpellbookCoords, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLSpellbookCoordsPC98Provider },
+ { kLoLHealShapeFrames, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLHealShapeFramesPC98Provider },
+ { kLoLLightningDefs, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLLightningDefsPC98Provider },
+ { kLoLFireballCoords, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLFireballCoordsPC98Provider },
+ { kLoLCredits, kLoL, kPlatformPC98, kNoSpecial, UNK_LANG, &kLoLCreditsPC98Provider },
+ { kLoLIngamePakFiles, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLIngamePakFilesFMTownsProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformFMTowns, kNoSpecial, JA_JPN, &kLoLCharacterDefsFMTownsJapaneseProvider },
+ { kLoLIngameSfxFiles, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLIngameSfxFilesFMTownsProvider },
+ { kLoLIngameSfxIndex, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLIngameSfxIndexFMTownsProvider },
+ { kLoLSpellProperties, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLSpellPropertiesFMTownsProvider },
+ { kLoLGameShapeMap, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLGameShapeMapFMTownsProvider },
+ { kLoLSceneItemOffs, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLSceneItemOffsFMTownsProvider },
+ { kLoLCharInvIndex, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLCharInvIndexFMTownsProvider },
+ { kLoLCharInvDefs, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLCharInvDefsFMTownsProvider },
+ { kLoLCharDefsMan, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLCharDefsManFMTownsProvider },
+ { kLoLCharDefsWoman, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLCharDefsWomanFMTownsProvider },
+ { kLoLCharDefsKieran, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLCharDefsKieranFMTownsProvider },
+ { kLoLCharDefsAkshel, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLCharDefsAkshelFMTownsProvider },
+ { kLoLExpRequirements, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLExpRequirementsFMTownsProvider },
+ { kLoLMonsterModifiers1, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers1FMTownsProvider },
+ { kLoLMonsterModifiers2, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers2FMTownsProvider },
+ { kLoLMonsterModifiers3, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMonsterModifiers3FMTownsProvider },
+ { kLoLMonsterShiftOffsets, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMonsterShiftOffsetsFMTownsProvider },
+ { kLoLMonsterDirFlags, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMonsterDirFlagsFMTownsProvider },
+ { kLoLMonsterScaleY, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMonsterScaleYFMTownsProvider },
+ { kLoLMonsterScaleX, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMonsterScaleXFMTownsProvider },
+ { kLoLMonsterScaleWH, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMonsterScaleWHFMTownsProvider },
+ { kLoLFlyingObjectShp, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLFlyingObjectShpFMTownsProvider },
+ { kLoLInventoryDesc, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLInventoryDescFMTownsProvider },
+ { kLoLLevelShpList, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLLevelShpListFMTownsProvider },
+ { kLoLLevelDatList, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLLevelDatListFMTownsProvider },
+ { kLoLCompassDefs, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLCompassDefsFMTownsProvider },
+ { kLoLStashSetup, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLStashSetupFMTownsProvider },
+ { kLoLDscWalls, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscWallsFMTownsProvider },
+ { kRpgCommonDscShapeIndex, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscShapeIndexFMTownsProvider },
+ { kLoLDscOvlMap, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscOvlMapFMTownsProvider },
+ { kLoLDscScaleWidthData, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscScaleWidthDataFMTownsProvider },
+ { kLoLDscScaleHeightData, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscScaleHeightDataFMTownsProvider },
+ { kRpgCommonDscX, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscXFMTownsProvider },
+ { kLoLBaseDscY, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLBaseDscYFMTownsProvider },
+ { kRpgCommonDscTileIndex, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscTileIndexFMTownsProvider },
+ { kRpgCommonDscUnk2, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscUnk2FMTownsProvider },
+ { kRpgCommonDscDoorShapeIndex, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDoorShapeIndexFMTownsProvider },
+ { kRpgCommonDscDimData1, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDimData1FMTownsProvider },
+ { kRpgCommonDscDimData2, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDimData2FMTownsProvider },
+ { kRpgCommonDscBlockMap, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscBlockMapFMTownsProvider },
+ { kRpgCommonDscDimMap, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDimMapFMTownsProvider },
+ { kLoLDscOvlIndex, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscOvlIndexFMTownsProvider },
+ { kRpgCommonDscBlockIndex, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscBlockIndexFMTownsProvider },
+ { kRpgCommonDscDoorY2, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDoorY2FMTownsProvider },
+ { kRpgCommonDscDoorFrameY1, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDoorFrameY1FMTownsProvider },
+ { kRpgCommonDscDoorFrameY2, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDoorFrameY2FMTownsProvider },
+ { kLoLDscDoorScale, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDoorScaleFMTownsProvider },
+ { kLoLDscDoor4, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDoor4FMTownsProvider },
+ { kLoLDscDoorX, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDoorXFMTownsProvider },
+ { kLoLDscDoorY, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLDscDoorYFMTownsProvider },
+ { kLoLScrollXTop, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLScrollXTopFMTownsProvider },
+ { kLoLScrollYTop, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLScrollYTopFMTownsProvider },
+ { kLoLScrollXBottom, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLScrollXBottomFMTownsProvider },
+ { kLoLScrollYBottom, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLScrollYBottomFMTownsProvider },
+ { kLoLButtonDefs, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonDefsFMTownsProvider },
+ { kLoLButtonList1, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonList1FMTownsProvider },
+ { kLoLButtonList2, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonList2FMTownsProvider },
+ { kLoLButtonList3, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonList3FMTownsProvider },
+ { kLoLButtonList4, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonList4FMTownsProvider },
+ { kLoLButtonList5, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonList5FMTownsProvider },
+ { kLoLButtonList6, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonList6FMTownsProvider },
+ { kLoLButtonList7, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonList7FMTownsProvider },
+ { kLoLButtonList8, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLButtonList8FMTownsProvider },
+ { kLoLLegendData, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLLegendDataFMTownsProvider },
+ { kLoLMapStringId, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLMapStringIdFMTownsProvider },
+ { kLoLSpellbookAnim, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLSpellbookAnimFMTownsProvider },
+ { kLoLSpellbookCoords, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLSpellbookCoordsFMTownsProvider },
+ { kLoLHealShapeFrames, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLHealShapeFramesFMTownsProvider },
+ { kLoLLightningDefs, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLLightningDefsFMTownsProvider },
+ { kLoLFireballCoords, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLFireballCoordsFMTownsProvider },
+ { kLoLCredits, kLoL, kPlatformFMTowns, kNoSpecial, UNK_LANG, &kLoLCreditsFMTownsProvider },
+ { kLoLHistory, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLHistoryDOSCDProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kTalkieVersion, EN_ANY, &kLoLCharacterDefsDOSCDEnglishProvider },
+ { kLoLIngameSfxFiles, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLIngameSfxFilesDOSCDProvider },
+ { kLoLIngameSfxIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLIngameSfxIndexDOSCDProvider },
+ { kLoLMusicTrackMap, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMusicTrackMapDOSCDProvider },
+ { kLoLIngameGMSfxIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLIngameGMSfxIndexDOSCDProvider },
+ { kLoLIngameMT32SfxIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLIngameMT32SfxIndexDOSCDProvider },
+ { kLoLIngamePcSpkSfxIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLIngamePcSpkSfxIndexDOSCDProvider },
+ { kLoLSpellProperties, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLSpellPropertiesDOSCDProvider },
+ { kLoLGameShapeMap, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLGameShapeMapDOSCDProvider },
+ { kLoLSceneItemOffs, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLSceneItemOffsDOSCDProvider },
+ { kLoLCharInvIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLCharInvIndexDOSCDProvider },
+ { kLoLCharInvDefs, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLCharInvDefsDOSCDProvider },
+ { kLoLCharDefsMan, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLCharDefsManDOSCDProvider },
+ { kLoLCharDefsWoman, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLCharDefsWomanDOSCDProvider },
+ { kLoLCharDefsKieran, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLCharDefsKieranDOSCDProvider },
+ { kLoLCharDefsAkshel, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLCharDefsAkshelDOSCDProvider },
+ { kLoLExpRequirements, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLExpRequirementsDOSCDProvider },
+ { kLoLMonsterModifiers1, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterModifiers1DOSCDProvider },
+ { kLoLMonsterModifiers2, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterModifiers2DOSCDProvider },
+ { kLoLMonsterModifiers3, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterModifiers3DOSCDProvider },
+ { kLoLMonsterModifiers4, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterModifiers4DOSCDProvider },
+ { kLoLMonsterShiftOffsets, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterShiftOffsetsDOSCDProvider },
+ { kLoLMonsterDirFlags, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterDirFlagsDOSCDProvider },
+ { kLoLMonsterScaleY, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterScaleYDOSCDProvider },
+ { kLoLMonsterScaleX, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterScaleXDOSCDProvider },
+ { kLoLMonsterScaleWH, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMonsterScaleWHDOSCDProvider },
+ { kLoLFlyingObjectShp, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLFlyingObjectShpDOSCDProvider },
+ { kLoLInventoryDesc, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLInventoryDescDOSCDProvider },
+ { kLoLLevelShpList, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLLevelShpListDOSCDProvider },
+ { kLoLLevelDatList, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLLevelDatListDOSCDProvider },
+ { kLoLCompassDefs, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLCompassDefsDOSCDProvider },
+ { kLoLItemPrices, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLItemPricesDOSCDProvider },
+ { kLoLStashSetup, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLStashSetupDOSCDProvider },
+ { kLoLDscWalls, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscWallsDOSCDProvider },
+ { kRpgCommonDscShapeIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscShapeIndexDOSCDProvider },
+ { kLoLDscOvlMap, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscOvlMapDOSCDProvider },
+ { kLoLDscScaleWidthData, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscScaleWidthDataDOSCDProvider },
+ { kLoLDscScaleHeightData, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscScaleHeightDataDOSCDProvider },
+ { kRpgCommonDscX, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscXDOSCDProvider },
+ { kLoLBaseDscY, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLBaseDscYDOSCDProvider },
+ { kRpgCommonDscTileIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscTileIndexDOSCDProvider },
+ { kRpgCommonDscUnk2, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscUnk2DOSCDProvider },
+ { kRpgCommonDscDoorShapeIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDoorShapeIndexDOSCDProvider },
+ { kRpgCommonDscDimData1, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDimData1DOSCDProvider },
+ { kRpgCommonDscDimData2, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDimData2DOSCDProvider },
+ { kRpgCommonDscBlockMap, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscBlockMapDOSCDProvider },
+ { kRpgCommonDscDimMap, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDimMapDOSCDProvider },
+ { kLoLDscOvlIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscOvlIndexDOSCDProvider },
+ { kRpgCommonDscBlockIndex, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscBlockIndexDOSCDProvider },
+ { kRpgCommonDscDoorY2, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDoorY2DOSCDProvider },
+ { kRpgCommonDscDoorFrameY1, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDoorFrameY1DOSCDProvider },
+ { kRpgCommonDscDoorFrameY2, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDoorFrameY2DOSCDProvider },
+ { kLoLDscDoorScale, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDoorScaleDOSCDProvider },
+ { kLoLDscDoor4, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDoor4DOSCDProvider },
+ { kLoLDscDoorX, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDoorXDOSCDProvider },
+ { kLoLDscDoorY, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLDscDoorYDOSCDProvider },
+ { kLoLScrollXTop, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLScrollXTopDOSCDProvider },
+ { kLoLScrollYTop, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLScrollYTopDOSCDProvider },
+ { kLoLScrollXBottom, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLScrollXBottomDOSCDProvider },
+ { kLoLScrollYBottom, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLScrollYBottomDOSCDProvider },
+ { kLoLButtonDefs, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonDefsDOSCDProvider },
+ { kLoLButtonList1, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonList1DOSCDProvider },
+ { kLoLButtonList2, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonList2DOSCDProvider },
+ { kLoLButtonList3, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonList3DOSCDProvider },
+ { kLoLButtonList4, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonList4DOSCDProvider },
+ { kLoLButtonList5, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonList5DOSCDProvider },
+ { kLoLButtonList6, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonList6DOSCDProvider },
+ { kLoLButtonList7, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonList7DOSCDProvider },
+ { kLoLButtonList8, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLButtonList8DOSCDProvider },
+ { kLoLLegendData, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLLegendDataDOSCDProvider },
+ { kLoLMapCursorOvl, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMapCursorOvlDOSCDProvider },
+ { kLoLMapStringId, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLMapStringIdDOSCDProvider },
+ { kLoLSpellbookAnim, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLSpellbookAnimDOSCDProvider },
+ { kLoLSpellbookCoords, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLSpellbookCoordsDOSCDProvider },
+ { kLoLHealShapeFrames, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLHealShapeFramesDOSCDProvider },
+ { kLoLLightningDefs, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLLightningDefsDOSCDProvider },
+ { kLoLFireballCoords, kLoL, kPlatformDOS, kTalkieVersion, UNK_LANG, &kLoLFireballCoordsDOSCDProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kTalkieVersion, FR_FRA, &kLoLCharacterDefsDOSCDFrenchProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kTalkieVersion, DE_DEU, &kLoLCharacterDefsDOSCDGermanProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kTalkieVersion, IT_ITA, &kLoLCharacterDefsDOSCDItalianProvider },
+ { kLoLCharacterDefs, kLoL, kPlatformDOS, kTalkieVersion, RU_RUS, &kLoLCharacterDefsDOSCDRussianProvider },
+ { kMaxResIDs, kKyra1, kPlatformDOS, kNoSpecial, UNK_LANG, NULL }
+};
+
+const ResourceProvider *obtainResourceProviders() {
+ return resourceProviders;
+}
diff --git a/devtools/create_kyradat/resources.h b/devtools/create_kyradat/resources.h
new file mode 100644
index 0000000000..c9ab232b02
--- /dev/null
+++ b/devtools/create_kyradat/resources.h
@@ -0,0 +1,45 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef CREATE_KYRADAT_RESOURCES_H
+#define CREATE_KYRADAT_RESOURCES_H
+
+#include "create_kyradat.h"
+
+#include "common/util.h"
+#include "common/language.h"
+#include "common/platform.h"
+
+using namespace Common;
+
+struct ResourceProvider {
+ kExtractID id;
+ kGame game;
+ Platform platform;
+ kSpecial special;
+ Language language;
+ const void *provider;
+};
+
+const ResourceProvider *obtainResourceProviders();
+
+#endif
diff --git a/devtools/create_kyradat/resources/eob1_dos.h b/devtools/create_kyradat/resources/eob1_dos.h
new file mode 100644
index 0000000000..b2aa8845de
--- /dev/null
+++ b/devtools/create_kyradat/resources/eob1_dos.h
@@ -0,0 +1,1765 @@
+static const byte kEoB1ChargenStartLevelsDOS[60] = {
+ 0x03, 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x01,
+ 0x03, 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x01,
+ 0x03, 0x00, 0x00, 0x01, 0x04, 0x00, 0x00, 0x01,
+ 0x02, 0x02, 0x00, 0x02, 0x02, 0x03, 0x00, 0x02,
+ 0x02, 0x02, 0x00, 0x02, 0x01, 0x01, 0x02, 0x03,
+ 0x03, 0x02, 0x00, 0x02, 0x02, 0x03, 0x00, 0x02,
+ 0x01, 0x02, 0x01, 0x03, 0x02, 0x02, 0x00, 0x02,
+ 0x02, 0x02, 0x00, 0x02
+};
+
+static const ByteProvider kEoB1ChargenStartLevelsDOSProvider = { ARRAYSIZE(kEoB1ChargenStartLevelsDOS), kEoB1ChargenStartLevelsDOS };
+
+static const byte kEoB1ChargenClassMinStatsDOS[90] = {
+ 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, 0x00,
+ 0x0E, 0x0D, 0x0E, 0x00, 0x0C, 0x00, 0x0D, 0x00,
+ 0x09, 0x11, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x09, 0x00, 0x00, 0x09, 0x00, 0x09, 0x00,
+ 0x00, 0x00, 0x09, 0x00, 0x00, 0x09, 0x00, 0x00,
+ 0x09, 0x09, 0x00, 0x00, 0x00, 0x00, 0x09, 0x09,
+ 0x00, 0x09, 0x00, 0x00, 0x00, 0x09, 0x00, 0x09,
+ 0x00, 0x00, 0x00, 0x00, 0x09, 0x09, 0x00, 0x00,
+ 0x09, 0x09, 0x09, 0x00, 0x00, 0x00, 0x0D, 0x00,
+ 0x0E, 0x0D, 0x0E, 0x00, 0x00, 0x09, 0x09, 0x00,
+ 0x00, 0x00
+};
+
+static const ByteProvider kEoB1ChargenClassMinStatsDOSProvider = { ARRAYSIZE(kEoB1ChargenClassMinStatsDOS), kEoB1ChargenClassMinStatsDOS };
+
+static const byte kEoB1ChargenRaceMinStatsDOS[36] = {
+ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x08,
+ 0x03, 0x07, 0x06, 0x08, 0x03, 0x04, 0x03, 0x06,
+ 0x06, 0x03, 0x08, 0x03, 0x03, 0x03, 0x0C, 0x02,
+ 0x06, 0x07, 0x02, 0x03, 0x08, 0x03, 0x07, 0x06,
+ 0x03, 0x08, 0x0A, 0x06
+};
+
+static const ByteProvider kEoB1ChargenRaceMinStatsDOSProvider = { ARRAYSIZE(kEoB1ChargenRaceMinStatsDOS), kEoB1ChargenRaceMinStatsDOS };
+
+static const uint16 kEoB1ChargenRaceMaxStatsDOS[36] = {
+ 0x6412, 0x0012, 0x0012, 0x0012, 0x0012, 0x0012, 0x6412, 0x0012,
+ 0x0012, 0x0013, 0x0011, 0x0012, 0x6412, 0x0012, 0x0012, 0x0012,
+ 0x0012, 0x0012, 0x6412, 0x0012, 0x0012, 0x0011, 0x0013, 0x0010,
+ 0x6412, 0x0013, 0x0011, 0x0012, 0x0012, 0x0012, 0x0011, 0x0012,
+ 0x0011, 0x0013, 0x0012, 0x0012
+};
+
+static const Uint16Provider kEoB1ChargenRaceMaxStatsDOSProvider = { ARRAYSIZE(kEoB1ChargenRaceMaxStatsDOS), kEoB1ChargenRaceMaxStatsDOS };
+
+static const byte kEoB1SaveThrowTable1DOS[50] = {
+ 0x10, 0x0E, 0x0D, 0x0B, 0x0A, 0x08, 0x07, 0x05,
+ 0x04, 0x03, 0x12, 0x10, 0x0F, 0x0D, 0x0C, 0x0A,
+ 0x09, 0x07, 0x06, 0x05, 0x11, 0x0F, 0x0E, 0x0C,
+ 0x0B, 0x09, 0x08, 0x06, 0x05, 0x04, 0x14, 0x11,
+ 0x10, 0x0D, 0x0C, 0x09, 0x08, 0x05, 0x04, 0x04,
+ 0x13, 0x11, 0x10, 0x0E, 0x0D, 0x0B, 0x0A, 0x08,
+ 0x07, 0x06
+};
+
+static const ByteProvider kEoB1SaveThrowTable1DOSProvider = { ARRAYSIZE(kEoB1SaveThrowTable1DOS), kEoB1SaveThrowTable1DOS };
+
+static const byte kEoB1SaveThrowTable2DOS[25] = {
+ 0x0E, 0x0D, 0x0B, 0x0A, 0x08, 0x0B, 0x09, 0x07,
+ 0x05, 0x03, 0x0D, 0x0B, 0x09, 0x07, 0x05, 0x0F,
+ 0x0D, 0x0B, 0x09, 0x07, 0x0C, 0x0A, 0x08, 0x06,
+ 0x04
+};
+
+static const ByteProvider kEoB1SaveThrowTable2DOSProvider = { ARRAYSIZE(kEoB1SaveThrowTable2DOS), kEoB1SaveThrowTable2DOS };
+
+static const byte kEoB1SaveThrowTable3DOS[35] = {
+ 0x0A, 0x09, 0x07, 0x06, 0x05, 0x04, 0x02, 0x0E,
+ 0x0D, 0x0B, 0x0A, 0x09, 0x08, 0x06, 0x0D, 0x0C,
+ 0x0A, 0x09, 0x08, 0x07, 0x05, 0x10, 0x0F, 0x0D,
+ 0x0C, 0x0B, 0x0A, 0x08, 0x0F, 0x0E, 0x0C, 0x0B,
+ 0x0A, 0x09, 0x07
+};
+
+static const ByteProvider kEoB1SaveThrowTable3DOSProvider = { ARRAYSIZE(kEoB1SaveThrowTable3DOS), kEoB1SaveThrowTable3DOS };
+
+static const byte kEoB1SaveThrowTable4DOS[30] = {
+ 0x0D, 0x0C, 0x0B, 0x0A, 0x09, 0x08, 0x0E, 0x0C,
+ 0x0A, 0x08, 0x06, 0x07, 0x0C, 0x0B, 0x0A, 0x09,
+ 0x08, 0x04, 0x10, 0x0F, 0x0E, 0x0D, 0x0C, 0x0B,
+ 0x0F, 0x0D, 0x0B, 0x09, 0x07, 0x05
+};
+
+static const ByteProvider kEoB1SaveThrowTable4DOSProvider = { ARRAYSIZE(kEoB1SaveThrowTable4DOS), kEoB1SaveThrowTable4DOS };
+
+static const byte kEoB1SaveThrwLvlIndexDOS[6] = {
+ 0x11, 0x15, 0x13, 0x15, 0x11, 0x11
+};
+
+static const ByteProvider kEoB1SaveThrwLvlIndexDOSProvider = { ARRAYSIZE(kEoB1SaveThrwLvlIndexDOS), kEoB1SaveThrwLvlIndexDOS };
+
+static const byte kEoB1SaveThrwModDivDOS[6] = {
+ 0x02, 0x05, 0x03, 0x04, 0x02, 0x02
+};
+
+static const ByteProvider kEoB1SaveThrwModDivDOSProvider = { ARRAYSIZE(kEoB1SaveThrwModDivDOS), kEoB1SaveThrwModDivDOS };
+
+static const byte kEoB1SaveThrwModExtDOS[6] = {
+ 0x0A, 0x05, 0x07, 0x06, 0x0A, 0x0A
+};
+
+static const ByteProvider kEoB1SaveThrwModExtDOSProvider = { ARRAYSIZE(kEoB1SaveThrwModExtDOS), kEoB1SaveThrwModExtDOS };
+
+static const char *const kEoB1IntroFilesOpeningDOS[6] = {
+ "AND.CMP",
+ "SSI.CMP",
+ "PRESENT.CMP",
+ "DAND.CMP",
+ "WESTWOOD.CMP",
+ "WESTWOOD.COL"
+};
+
+static const StringListProvider kEoB1IntroFilesOpeningDOSProvider = { ARRAYSIZE(kEoB1IntroFilesOpeningDOS), kEoB1IntroFilesOpeningDOS };
+
+static const char *const kEoB1IntroFilesTowerDOS[2] = {
+ "TOWRMAGE.COL",
+ "TOWRMAGE.CMP"
+};
+
+static const StringListProvider kEoB1IntroFilesTowerDOSProvider = { ARRAYSIZE(kEoB1IntroFilesTowerDOS), kEoB1IntroFilesTowerDOS };
+
+static const char *const kEoB1IntroFilesOrbDOS[2] = {
+ "ORB.CMP",
+ "TOWRMAGE.CMP"
+};
+
+static const StringListProvider kEoB1IntroFilesOrbDOSProvider = { ARRAYSIZE(kEoB1IntroFilesOrbDOS), kEoB1IntroFilesOrbDOS };
+
+static const char *const kEoB1IntroFilesWdEntryDOS[4] = {
+ "WTRDP2.COL",
+ "WTRDP1.CMP",
+ "WTRDP2.CMP",
+ "WTRDP3.CMP"
+};
+
+static const StringListProvider kEoB1IntroFilesWdEntryDOSProvider = { ARRAYSIZE(kEoB1IntroFilesWdEntryDOS), kEoB1IntroFilesWdEntryDOS };
+
+static const char *const kEoB1IntroFilesKingDOS[2] = {
+ "KING.CMP",
+ "ADVENTUR.CMP"
+};
+
+static const StringListProvider kEoB1IntroFilesKingDOSProvider = { ARRAYSIZE(kEoB1IntroFilesKingDOS), kEoB1IntroFilesKingDOS };
+
+static const char *const kEoB1IntroFilesHandsDOS[1] = {
+ "HANDS.CMP"
+};
+
+static const StringListProvider kEoB1IntroFilesHandsDOSProvider = { ARRAYSIZE(kEoB1IntroFilesHandsDOS), kEoB1IntroFilesHandsDOS };
+
+static const char *const kEoB1IntroFilesWdExitDOS[5] = {
+ "WTRDP3.CMP",
+ "ORB.COL",
+ "ORB.CMP",
+ "TUNNEL.CMP",
+ "ZOOMTUNL.COL"
+};
+
+static const StringListProvider kEoB1IntroFilesWdExitDOSProvider = { ARRAYSIZE(kEoB1IntroFilesWdExitDOS), kEoB1IntroFilesWdExitDOS };
+
+static const char *const kEoB1IntroFilesTunnelDOS[2] = {
+ "AVALANCH.CMP",
+ "ZOOMTUNL.CMP"
+};
+
+static const StringListProvider kEoB1IntroFilesTunnelDOSProvider = { ARRAYSIZE(kEoB1IntroFilesTunnelDOS), kEoB1IntroFilesTunnelDOS };
+
+static const byte kEoB1IntroOpeningFrmDelayDOS[5] = {
+ 0x8C, 0x32, 0x64, 0x32, 0x8C
+};
+
+static const ByteProvider kEoB1IntroOpeningFrmDelayDOSProvider = { ARRAYSIZE(kEoB1IntroOpeningFrmDelayDOS), kEoB1IntroOpeningFrmDelayDOS };
+
+static const byte kEoB1IntroWdEncodeXDOS[31] = {
+ 0x00, 0x18, 0x02, 0x04, 0x1A, 0x05, 0x10, 0x06,
+ 0x10, 0x07, 0x11, 0x04, 0x13, 0x05, 0x06, 0x13,
+ 0x09, 0x14, 0x0B, 0x0D, 0x16, 0x0D, 0x16, 0x0E,
+ 0x1A, 0x0E, 0x17, 0x0F, 0x1B, 0x0F, 0x17
+};
+
+static const ByteProvider kEoB1IntroWdEncodeXDOSProvider = { ARRAYSIZE(kEoB1IntroWdEncodeXDOS), kEoB1IntroWdEncodeXDOS };
+
+static const byte kEoB1IntroWdEncodeYDOS[31] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00,
+ 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01
+};
+
+static const ByteProvider kEoB1IntroWdEncodeYDOSProvider = { ARRAYSIZE(kEoB1IntroWdEncodeYDOS), kEoB1IntroWdEncodeYDOS };
+
+static const byte kEoB1IntroWdEncodeWHDOS[31] = {
+ 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01,
+ 0x01, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01,
+ 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01
+};
+
+static const ByteProvider kEoB1IntroWdEncodeWHDOSProvider = { ARRAYSIZE(kEoB1IntroWdEncodeWHDOS), kEoB1IntroWdEncodeWHDOS };
+
+static const uint16 kEoB1IntroWdDsXDOS[31] = {
+ 0x0120, 0x0120, 0x0120, 0x0130, 0x0130, 0x00B2, 0x00B2, 0x00BC,
+ 0x00BC, 0x00AE, 0x00AE, 0x0125, 0x0125, 0x0125, 0x0101, 0x0101,
+ 0x00E9, 0x00E9, 0x00E9, 0x00AB, 0x00AB, 0x00CC, 0x00CC, 0x00F0,
+ 0x00F0, 0x010C, 0x010C, 0x00E0, 0x00E0, 0x00BA, 0x00BA
+};
+
+static const Uint16Provider kEoB1IntroWdDsXDOSProvider = { ARRAYSIZE(kEoB1IntroWdDsXDOS), kEoB1IntroWdDsXDOS };
+
+static const byte kEoB1IntroWdDsYDOS[31] = {
+ 0x28, 0x28, 0x28, 0x38, 0x38, 0x26, 0x26, 0x1D,
+ 0x1D, 0x34, 0x34, 0x50, 0x50, 0x50, 0x50, 0x50,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x2A, 0x2A, 0x66,
+ 0x66, 0x67, 0x67, 0x1C, 0x1C, 0x44, 0x44
+};
+
+static const ByteProvider kEoB1IntroWdDsYDOSProvider = { ARRAYSIZE(kEoB1IntroWdDsYDOS), kEoB1IntroWdDsYDOS };
+
+static const byte kEoB1IntroTvlX1DOS[6] = {
+ 0x00, 0x08, 0x10, 0x00, 0x0F, 0x00
+};
+
+static const ByteProvider kEoB1IntroTvlX1DOSProvider = { ARRAYSIZE(kEoB1IntroTvlX1DOS), kEoB1IntroTvlX1DOS };
+
+static const byte kEoB1IntroTvlY1DOS[6] = {
+ 0x00, 0x00, 0x00, 0x30, 0x36, 0x86
+};
+
+static const ByteProvider kEoB1IntroTvlY1DOSProvider = { ARRAYSIZE(kEoB1IntroTvlY1DOS), kEoB1IntroTvlY1DOS };
+
+static const byte kEoB1IntroTvlX2DOS[6] = {
+ 0x10, 0x10, 0x0F, 0x0C, 0x0B, 0x0B
+};
+
+static const ByteProvider kEoB1IntroTvlX2DOSProvider = { ARRAYSIZE(kEoB1IntroTvlX2DOS), kEoB1IntroTvlX2DOS };
+
+static const byte kEoB1IntroTvlY2DOS[6] = {
+ 0x35, 0x35, 0x35, 0x35, 0x35, 0x61
+};
+
+static const ByteProvider kEoB1IntroTvlY2DOSProvider = { ARRAYSIZE(kEoB1IntroTvlY2DOS), kEoB1IntroTvlY2DOS };
+
+static const byte kEoB1IntroTvlWDOS[6] = {
+ 0x08, 0x08, 0x0B, 0x0F, 0x12, 0x12
+};
+
+static const ByteProvider kEoB1IntroTvlWDOSProvider = { ARRAYSIZE(kEoB1IntroTvlWDOS), kEoB1IntroTvlWDOS };
+
+static const byte kEoB1IntroTvlHDOS[6] = {
+ 0x1A, 0x30, 0x36, 0x45, 0x50, 0x28
+};
+
+static const ByteProvider kEoB1IntroTvlHDOSProvider = { ARRAYSIZE(kEoB1IntroTvlHDOS), kEoB1IntroTvlHDOS };
+
+static const byte kEoB1DoorShapeDefsDOS[96] = {
+ 0x00, 0x00, 0x0A, 0x48, 0x11, 0x98, 0x07, 0x2F,
+ 0x19, 0x48, 0x04, 0x1D, 0x0A, 0x00, 0x0A, 0x48,
+ 0x1D, 0x48, 0x07, 0x2F, 0x19, 0x68, 0x04, 0x1D,
+ 0x14, 0x00, 0x06, 0x48, 0x24, 0x48, 0x04, 0x2F,
+ 0x1E, 0x78, 0x03, 0x1D, 0x1A, 0x00, 0x0C, 0x48,
+ 0x00, 0x90, 0x07, 0x29, 0x21, 0x78, 0x04, 0x1B,
+ 0x00, 0xBC, 0x0A, 0x0C, 0x0A, 0xBC, 0x06, 0x08,
+ 0x0A, 0xC4, 0x04, 0x02, 0x07, 0x4A, 0x09, 0x37,
+ 0x00, 0x4A, 0x07, 0x25, 0x07, 0xA0, 0x05, 0x17,
+ 0x07, 0x82, 0x09, 0x1C, 0x00, 0x70, 0x07, 0x13,
+ 0x0C, 0xA0, 0x05, 0x0B, 0x10, 0x48, 0x09, 0x4B,
+ 0x18, 0x98, 0x07, 0x2E, 0x1F, 0x98, 0x04, 0x1D
+};
+
+static const ByteProvider kEoB1DoorShapeDefsDOSProvider = { ARRAYSIZE(kEoB1DoorShapeDefsDOS), kEoB1DoorShapeDefsDOS };
+
+static const byte kEoB1DoorSwitchShapeDefsDOS[96] = {
+ 0x25, 0x78, 0x01, 0x07, 0x25, 0x88, 0x01, 0x03,
+ 0x25, 0x90, 0x01, 0x01, 0x25, 0x78, 0x01, 0x07,
+ 0x25, 0x88, 0x01, 0x03, 0x25, 0x90, 0x01, 0x01,
+ 0x26, 0x78, 0x01, 0x0B, 0x26, 0x88, 0x01, 0x06,
+ 0x26, 0x90, 0x01, 0x04, 0x27, 0x78, 0x01, 0x0E,
+ 0x27, 0x88, 0x01, 0x08, 0x25, 0x90, 0x01, 0x01,
+ 0x25, 0x78, 0x01, 0x07, 0x25, 0x88, 0x01, 0x03,
+ 0x25, 0x90, 0x01, 0x01, 0x25, 0x98, 0x01, 0x0B,
+ 0x25, 0xA8, 0x01, 0x06, 0x25, 0xB0, 0x01, 0x04,
+ 0x25, 0x98, 0x01, 0x0B, 0x25, 0xA8, 0x01, 0x05,
+ 0x25, 0xB0, 0x01, 0x04, 0x26, 0x98, 0x01, 0x0A,
+ 0x26, 0xA8, 0x01, 0x04, 0x25, 0x90, 0x01, 0x01
+};
+
+static const ByteProvider kEoB1DoorSwitchShapeDefsDOSProvider = { ARRAYSIZE(kEoB1DoorSwitchShapeDefsDOS), kEoB1DoorSwitchShapeDefsDOS };
+
+static const byte kEoB1DoorSwitchCoordsDOS[48] = {
+ 0x82, 0x24, 0x74, 0x27, 0x00, 0x00, 0x82, 0x24,
+ 0x74, 0x27, 0x00, 0x00, 0x5B, 0x36, 0x5A, 0x33,
+ 0x5A, 0x2D, 0x88, 0x26, 0x74, 0x29, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x24,
+ 0x73, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x80, 0x2B, 0x74, 0x2B, 0x00, 0x00
+};
+
+static const ByteProvider kEoB1DoorSwitchCoordsDOSProvider = { ARRAYSIZE(kEoB1DoorSwitchCoordsDOS), kEoB1DoorSwitchCoordsDOS };
+
+static const byte kEoB1MonsterPropertiesDOS[594] = {
+ 0x07, 0x12, 0xFF, 0x01, 0x01, 0x04, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
+ 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x02, 0x4B,
+ 0x02, 0xFF, 0x00, 0x07, 0x11, 0x02, 0x01, 0x01,
+ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x78, 0x00,
+ 0x01, 0x38, 0x39, 0x00, 0xFF, 0x00, 0x05, 0x11,
+ 0x01, 0x01, 0x01, 0x06, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0x0C, 0x04, 0x00, 0x00,
+ 0x00, 0x41, 0x00, 0x00, 0x42, 0x43, 0x00, 0x02,
+ 0x00, 0x08, 0x0F, 0x02, 0x01, 0x01, 0x08, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x49,
+ 0x4A, 0x00, 0x03, 0x00, 0x04, 0x10, 0x02, 0x02,
+ 0x01, 0x04, 0x01, 0x01, 0x04, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00, 0xAF,
+ 0x00, 0x02, 0x36, 0x37, 0x04, 0xFF, 0x14, 0x05,
+ 0x11, 0x03, 0x01, 0x01, 0x08, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x03, 0x00,
+ 0x00, 0x00, 0x41, 0x00, 0x00, 0x2F, 0x30, 0x00,
+ 0xFF, 0x00, 0x06, 0x13, 0x02, 0x01, 0x01, 0x08,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x12, 0x02, 0x00, 0x00, 0x00, 0x8A, 0x02, 0x02,
+ 0x31, 0x26, 0x00, 0xFF, 0x00, 0x03, 0x0C, 0x07,
+ 0x01, 0x01, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0xDA, 0x02, 0x00, 0x2D, 0x2E, 0x00, 0xFF, 0x00,
+ 0x05, 0x07, 0x0A, 0x01, 0x01, 0x08, 0x06, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x04,
+ 0x00, 0x00, 0x00, 0xDC, 0x05, 0x00, 0x40, 0x41,
+ 0x00, 0x07, 0x00, 0x04, 0x0F, 0x06, 0x02, 0x01,
+ 0x08, 0x00, 0x01, 0x08, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x02, 0x03, 0x00, 0x00, 0x00, 0xCF, 0x03,
+ 0x01, 0x27, 0x28, 0x00, 0xFF, 0x00, 0x05, 0x0D,
+ 0x06, 0x03, 0x01, 0x08, 0x00, 0x01, 0x04, 0x00,
+ 0x01, 0x04, 0x00, 0x00, 0x28, 0x03, 0x00, 0x00,
+ 0x00, 0x78, 0x05, 0x02, 0x25, 0x24, 0x00, 0xFF,
+ 0x00, 0x04, 0x0D, 0x05, 0x02, 0x01, 0x04, 0x00,
+ 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0xE2, 0x04, 0x00, 0x3E,
+ 0x3F, 0x00, 0xFF, 0x00, 0x04, 0x0F, 0x04, 0x01,
+ 0x01, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x20, 0x01, 0x00, 0x00, 0x00, 0x8A,
+ 0x02, 0x00, 0x2B, 0x2C, 0x00, 0xFF, 0x3C, 0xFF,
+ 0x07, 0x0A, 0x01, 0x03, 0x08, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00,
+ 0x00, 0x00, 0x10, 0x27, 0x02, 0x44, 0x45, 0x00,
+ 0xFF, 0x64, 0xFF, 0x07, 0x09, 0x01, 0x03, 0x04,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x42, 0x03, 0x00, 0x00, 0x00, 0xD0, 0x07, 0x00,
+ 0x1F, 0xFF, 0x08, 0xFF, 0x00, 0x03, 0x0D, 0x07,
+ 0x01, 0x01, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x40, 0x02, 0x00, 0x00, 0x00,
+ 0x88, 0x13, 0x02, 0x29, 0x2A, 0x02, 0xFF, 0x3C,
+ 0x05, 0x0D, 0x07, 0x01, 0x01, 0x06, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02,
+ 0x00, 0x00, 0x00, 0x88, 0x13, 0x00, 0x34, 0x35,
+ 0x02, 0xFF, 0x00, 0x05, 0x0B, 0x08, 0x01, 0x05,
+ 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x42, 0x00, 0x00, 0x00, 0x00, 0x40, 0x1F,
+ 0x00, 0x3A, 0x3B, 0xFF, 0xFF, 0x5A, 0x02, 0x0F,
+ 0x05, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x82, 0x02, 0x00, 0x00,
+ 0x00, 0x0E, 0x01, 0x02, 0x3C, 0x3D, 0x00, 0xFF,
+ 0x00, 0xFE, 0x0D, 0x08, 0x01, 0x06, 0x04, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
+ 0x02, 0x00, 0x00, 0x00, 0xA0, 0x0F, 0x02, 0x48,
+ 0x47, 0x00, 0xFF, 0x32, 0x04, 0x0D, 0x07, 0x01,
+ 0x01, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0xCF,
+ 0x03, 0x01, 0x33, 0x32, 0x00, 0xFF, 0x28, 0x00,
+ 0x05, 0x23, 0x01, 0x01, 0x64, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00,
+ 0x00, 0x00, 0xB0, 0x36, 0x02, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x64
+};
+
+static const ByteProvider kEoB1MonsterPropertiesDOSProvider = { ARRAYSIZE(kEoB1MonsterPropertiesDOS), kEoB1MonsterPropertiesDOS };
+
+static const byte kEoB1EnemyMageSpellListDOS[10] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x05,
+ 0x06, 0x00
+};
+
+static const ByteProvider kEoB1EnemyMageSpellListDOSProvider = { ARRAYSIZE(kEoB1EnemyMageSpellListDOS), kEoB1EnemyMageSpellListDOS };
+
+static const byte kEoB1EnemyMageSfxDOS[10] = {
+ 0x00, 0x55, 0x55, 0x55, 0x55, 0x62, 0x62, 0x1F,
+ 0x62, 0x02
+};
+
+static const ByteProvider kEoB1EnemyMageSfxDOSProvider = { ARRAYSIZE(kEoB1EnemyMageSfxDOS), kEoB1EnemyMageSfxDOS };
+
+static const byte kEoB1BeholderSpellListDOS[4] = {
+ 0x02, 0x0A, 0x0B, 0x62
+};
+
+static const ByteProvider kEoB1BeholderSpellListDOSProvider = { ARRAYSIZE(kEoB1BeholderSpellListDOS), kEoB1BeholderSpellListDOS };
+
+static const byte kEoB1BeholderSfxDOS[4] = {
+ 0x62, 0x53, 0x40, 0x00
+};
+
+static const ByteProvider kEoB1BeholderSfxDOSProvider = { ARRAYSIZE(kEoB1BeholderSfxDOS), kEoB1BeholderSfxDOS };
+
+static const byte kEoB1CgaMappingDefaultDOS[32] = {
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02,
+ 0x03, 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x03,
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02,
+ 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x02, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingDefaultDOSProvider = { ARRAYSIZE(kEoB1CgaMappingDefaultDOS), kEoB1CgaMappingDefaultDOS };
+
+static const byte kEoB1CgaMappingAltDOS[32] = {
+ 0x00, 0x02, 0x03, 0x01, 0x01, 0x03, 0x02, 0x03,
+ 0x02, 0x01, 0x02, 0x00, 0x00, 0x02, 0x01, 0x03,
+ 0x00, 0x02, 0x01, 0x00, 0x01, 0x03, 0x02, 0x02,
+ 0x00, 0x03, 0x02, 0x00, 0x00, 0x02, 0x01, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingAltDOSProvider = { ARRAYSIZE(kEoB1CgaMappingAltDOS), kEoB1CgaMappingAltDOS };
+
+static const byte kEoB1CgaMappingInvDOS[32] = {
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02,
+ 0x03, 0x03, 0x01, 0x01, 0x00, 0x01, 0x02, 0x03,
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02,
+ 0x03, 0x03, 0x01, 0x01, 0x00, 0x01, 0x02, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingInvDOSProvider = { ARRAYSIZE(kEoB1CgaMappingInvDOS), kEoB1CgaMappingInvDOS };
+
+static const byte kEoB1CgaMappingItemsLDOS[32] = {
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02,
+ 0x02, 0x01, 0x02, 0x01, 0x00, 0x02, 0x02, 0x03,
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02,
+ 0x00, 0x03, 0x02, 0x01, 0x00, 0x00, 0x02, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingItemsLDOSProvider = { ARRAYSIZE(kEoB1CgaMappingItemsLDOS), kEoB1CgaMappingItemsLDOS };
+
+static const byte kEoB1CgaMappingItemsSDOS[32] = {
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x03, 0x03, 0x02,
+ 0x03, 0x01, 0x01, 0x01, 0x00, 0x02, 0x01, 0x03,
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x03, 0x03, 0x02,
+ 0x03, 0x03, 0x01, 0x01, 0x00, 0x02, 0x01, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingItemsSDOSProvider = { ARRAYSIZE(kEoB1CgaMappingItemsSDOS), kEoB1CgaMappingItemsSDOS };
+
+static const byte kEoB1CgaMappingThrownDOS[32] = {
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x03, 0x01, 0x02,
+ 0x02, 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x03,
+ 0x00, 0x02, 0x02, 0x01, 0x01, 0x03, 0x01, 0x02,
+ 0x02, 0x03, 0x01, 0x01, 0x00, 0x00, 0x02, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingThrownDOSProvider = { ARRAYSIZE(kEoB1CgaMappingThrownDOS), kEoB1CgaMappingThrownDOS };
+
+static const byte kEoB1CgaMappingIconsDOS[32] = {
+ 0x00, 0x02, 0x02, 0x01, 0x03, 0x02, 0x03, 0x01,
+ 0x03, 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x03,
+ 0x00, 0x02, 0x02, 0x01, 0x03, 0x02, 0x03, 0x01,
+ 0x03, 0x03, 0x01, 0x01, 0x00, 0x02, 0x03, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingIconsDOSProvider = { ARRAYSIZE(kEoB1CgaMappingIconsDOS), kEoB1CgaMappingIconsDOS };
+
+static const byte kEoB1CgaMappingDecoDOS[32] = {
+ 0x00, 0x00, 0x02, 0x00, 0x01, 0x03, 0x01, 0x02,
+ 0x02, 0x03, 0x02, 0x02, 0x00, 0x01, 0x03, 0x03,
+ 0x00, 0x01, 0x02, 0x03, 0x00, 0x03, 0x02, 0x02,
+ 0x00, 0x03, 0x02, 0x03, 0x00, 0x01, 0x03, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingDecoDOSProvider = { ARRAYSIZE(kEoB1CgaMappingDecoDOS), kEoB1CgaMappingDecoDOS };
+
+static const byte kEoB1CgaLevelMappingIndexDOS[12] = {
+ 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02,
+ 0x02, 0x03, 0x03, 0x04
+};
+
+static const ByteProvider kEoB1CgaLevelMappingIndexDOSProvider = { ARRAYSIZE(kEoB1CgaLevelMappingIndexDOS), kEoB1CgaLevelMappingIndexDOS };
+
+static const byte kEoB1CgaMappingLevel0DOS[32] = {
+ 0x00, 0x00, 0x01, 0x01, 0x02, 0x00, 0x03, 0x03,
+ 0x02, 0x03, 0x02, 0x02, 0x00, 0x03, 0x03, 0x03,
+ 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x03, 0x03,
+ 0x02, 0x03, 0x02, 0x03, 0x00, 0x01, 0x02, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingLevel0DOSProvider = { ARRAYSIZE(kEoB1CgaMappingLevel0DOS), kEoB1CgaMappingLevel0DOS };
+
+static const byte kEoB1CgaMappingLevel1DOS[32] = {
+ 0x00, 0x00, 0x01, 0x00, 0x01, 0x03, 0x01, 0x02,
+ 0x03, 0x01, 0x02, 0x00, 0x00, 0x02, 0x03, 0x03,
+ 0x00, 0x01, 0x01, 0x03, 0x00, 0x03, 0x01, 0x02,
+ 0x03, 0x01, 0x02, 0x01, 0x00, 0x02, 0x03, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingLevel1DOSProvider = { ARRAYSIZE(kEoB1CgaMappingLevel1DOS), kEoB1CgaMappingLevel1DOS };
+
+static const byte kEoB1CgaMappingLevel2DOS[32] = {
+ 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x02,
+ 0x02, 0x02, 0x02, 0x02, 0x00, 0x02, 0x03, 0x03,
+ 0x00, 0x01, 0x02, 0x03, 0x00, 0x01, 0x03, 0x02,
+ 0x02, 0x01, 0x02, 0x03, 0x00, 0x00, 0x02, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingLevel2DOSProvider = { ARRAYSIZE(kEoB1CgaMappingLevel2DOS), kEoB1CgaMappingLevel2DOS };
+
+static const byte kEoB1CgaMappingLevel3DOS[32] = {
+ 0x00, 0x00, 0x01, 0x03, 0x03, 0x01, 0x01, 0x01,
+ 0x02, 0x03, 0x01, 0x01, 0x00, 0x02, 0x02, 0x03,
+ 0x00, 0x01, 0x01, 0x01, 0x03, 0x01, 0x02, 0x03,
+ 0x00, 0x03, 0x01, 0x01, 0x00, 0x02, 0x02, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingLevel3DOSProvider = { ARRAYSIZE(kEoB1CgaMappingLevel3DOS), kEoB1CgaMappingLevel3DOS };
+
+static const byte kEoB1CgaMappingLevel4DOS[32] = {
+ 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03,
+ 0x02, 0x02, 0x02, 0x02, 0x00, 0x02, 0x01, 0x03,
+ 0x00, 0x02, 0x02, 0x03, 0x00, 0x01, 0x02, 0x03,
+ 0x02, 0x01, 0x02, 0x03, 0x00, 0x02, 0x01, 0x03
+};
+
+static const ByteProvider kEoB1CgaMappingLevel4DOSProvider = { ARRAYSIZE(kEoB1CgaMappingLevel4DOS), kEoB1CgaMappingLevel4DOS };
+
+static const byte kEoB1NpcShpDataDOS[76] = {
+ 0x00, 0x00, 0x06, 0x40, 0x06, 0x00, 0x07, 0x48,
+ 0x0D, 0x00, 0x06, 0x30, 0x13, 0x00, 0x05, 0x38,
+ 0x18, 0x00, 0x05, 0x38, 0x1D, 0x00, 0x05, 0x38,
+ 0x22, 0x00, 0x06, 0x48, 0x00, 0x48, 0x06, 0x56,
+ 0x06, 0x48, 0x05, 0x40, 0x0B, 0x48, 0x05, 0x40,
+ 0x10, 0x48, 0x05, 0x30, 0x06, 0x88, 0x03, 0x18,
+ 0x09, 0x88, 0x03, 0x18, 0x0C, 0x88, 0x03, 0x18,
+ 0x0F, 0x88, 0x03, 0x18, 0x12, 0x88, 0x03, 0x18,
+ 0x15, 0x88, 0x03, 0x18, 0x18, 0x48, 0x06, 0x58,
+ 0x1E, 0x48, 0x0A, 0x48
+};
+
+static const ByteProvider kEoB1NpcShpDataDOSProvider = { ARRAYSIZE(kEoB1NpcShpDataDOS), kEoB1NpcShpDataDOS };
+
+static const byte kEoB1NpcSubShpIndex1DOS[6] = {
+ 0x09, 0x08, 0x08, 0x09, 0x09, 0x0A
+};
+
+static const ByteProvider kEoB1NpcSubShpIndex1DOSProvider = { ARRAYSIZE(kEoB1NpcSubShpIndex1DOS), kEoB1NpcSubShpIndex1DOS };
+
+static const byte kEoB1NpcSubShpIndex2DOS[6] = {
+ 0x0D, 0x0B, 0x0C, 0x0E, 0x0F, 0x10
+};
+
+static const ByteProvider kEoB1NpcSubShpIndex2DOSProvider = { ARRAYSIZE(kEoB1NpcSubShpIndex2DOS), kEoB1NpcSubShpIndex2DOS };
+
+static const byte kEoB1NpcSubShpYDOS[6] = {
+ 0x34, 0x31, 0x31, 0x34, 0x34, 0x45
+};
+
+static const ByteProvider kEoB1NpcSubShpYDOSProvider = { ARRAYSIZE(kEoB1NpcSubShpYDOS), kEoB1NpcSubShpYDOS };
+
+static const char *const kEoB1EnchantedStringDOS[1] = {
+ "%s +%d"
+};
+
+static const StringListProvider kEoB1EnchantedStringDOSProvider = { ARRAYSIZE(kEoB1EnchantedStringDOS), kEoB1EnchantedStringDOS };
+
+static const byte kEoB1SpellLevelsMageDOS[26] = {
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02,
+ 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x03, 0x03, 0x03, 0x04, 0x04, 0x04, 0x05, 0x05,
+ 0x05, 0x00
+};
+
+static const ByteProvider kEoB1SpellLevelsMageDOSProvider = { ARRAYSIZE(kEoB1SpellLevelsMageDOS), kEoB1SpellLevelsMageDOS };
+
+static const byte kEoB1SpellLevelsClericDOS[25] = {
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02,
+ 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x04, 0x04,
+ 0x04, 0x04, 0x04, 0x05, 0x05, 0x05, 0x05, 0x01,
+ 0x00
+};
+
+static const ByteProvider kEoB1SpellLevelsClericDOSProvider = { ARRAYSIZE(kEoB1SpellLevelsClericDOS), kEoB1SpellLevelsClericDOS };
+
+static const byte kEoB1NumSpellsClericDOS[50] = {
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
+ 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x03,
+ 0x02, 0x00, 0x00, 0x00, 0x03, 0x03, 0x01, 0x00,
+ 0x00, 0x03, 0x03, 0x02, 0x00, 0x00, 0x03, 0x03,
+ 0x02, 0x01, 0x00, 0x03, 0x03, 0x03, 0x02, 0x00,
+ 0x04, 0x04, 0x03, 0x02, 0x01, 0x04, 0x04, 0x03,
+ 0x03, 0x02
+};
+
+static const ByteProvider kEoB1NumSpellsClericDOSProvider = { ARRAYSIZE(kEoB1NumSpellsClericDOS), kEoB1NumSpellsClericDOS };
+
+static const byte kEoB1NumSpellsWisAdjDOS[40] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02,
+ 0x01, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00,
+ 0x00, 0x02, 0x02, 0x01, 0x00, 0x00, 0x02, 0x02,
+ 0x01, 0x01, 0x00, 0x03, 0x02, 0x01, 0x02, 0x00
+};
+
+static const ByteProvider kEoB1NumSpellsWisAdjDOSProvider = { ARRAYSIZE(kEoB1NumSpellsWisAdjDOS), kEoB1NumSpellsWisAdjDOS };
+
+static const byte kEoB1NumSpellsPalDOS[60] = {
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
+ 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x02,
+ 0x02, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB1NumSpellsPalDOSProvider = { ARRAYSIZE(kEoB1NumSpellsPalDOS), kEoB1NumSpellsPalDOS };
+
+static const byte kEoB1NumSpellsMageDOS[55] = {
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
+ 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x03,
+ 0x02, 0x00, 0x00, 0x00, 0x04, 0x02, 0x01, 0x00,
+ 0x00, 0x04, 0x02, 0x02, 0x00, 0x00, 0x04, 0x03,
+ 0x02, 0x01, 0x00, 0x04, 0x03, 0x03, 0x02, 0x00,
+ 0x04, 0x03, 0x03, 0x02, 0x01, 0x04, 0x04, 0x03,
+ 0x02, 0x02, 0x04, 0x04, 0x04, 0x03, 0x03
+};
+
+static const ByteProvider kEoB1NumSpellsMageDOSProvider = { ARRAYSIZE(kEoB1NumSpellsMageDOS), kEoB1NumSpellsMageDOS };
+
+static const uint32 kEoB1ExperienceTable0DOS[12] = {
+ 0x00000000, 0x000007D0, 0x00000FA0, 0x00001F40, 0x00003E80, 0x00007D00, 0x0000FA00, 0x0001E848,
+ 0x0003D090, 0x0007A120, 0x000B71B0, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB1ExperienceTable0DOSProvider = { ARRAYSIZE(kEoB1ExperienceTable0DOS), kEoB1ExperienceTable0DOS };
+
+static const uint32 kEoB1ExperienceTable1DOS[12] = {
+ 0x00000000, 0x000009C4, 0x00001388, 0x00002710, 0x00004E20, 0x00009C40, 0x0000EA60, 0x00015F90,
+ 0x00020F58, 0x0003D090, 0x0005B8D8, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB1ExperienceTable1DOSProvider = { ARRAYSIZE(kEoB1ExperienceTable1DOS), kEoB1ExperienceTable1DOS };
+
+static const uint32 kEoB1ExperienceTable2DOS[11] = {
+ 0x00000000, 0x000005DC, 0x00000BB8, 0x00001770, 0x000032C8, 0x00006B6C, 0x0000D6D8, 0x0001ADB0,
+ 0x00036EE8, 0x0006DDD0, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB1ExperienceTable2DOSProvider = { ARRAYSIZE(kEoB1ExperienceTable2DOS), kEoB1ExperienceTable2DOS };
+
+static const uint32 kEoB1ExperienceTable3DOS[12] = {
+ 0x00000000, 0x000004E2, 0x000009C4, 0x00001388, 0x00002710, 0x00004E20, 0x00009C40, 0x00011170,
+ 0x0001ADB0, 0x00027100, 0x00035B60, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB1ExperienceTable3DOSProvider = { ARRAYSIZE(kEoB1ExperienceTable3DOS), kEoB1ExperienceTable3DOS };
+
+static const uint32 kEoB1ExperienceTable4DOS[12] = {
+ 0x00000000, 0x000008CA, 0x00001194, 0x00002328, 0x00004650, 0x00008CA0, 0x000124F8, 0x000249F0,
+ 0x000493E0, 0x000927C0, 0x000DBBA0, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB1ExperienceTable4DOSProvider = { ARRAYSIZE(kEoB1ExperienceTable4DOS), kEoB1ExperienceTable4DOS };
+
+static const byte kEoB1ExpObjectTblIndexDOS[9] = {
+ 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01,
+ 0x00
+};
+
+static const ByteProvider kEoB1ExpObjectTblIndexDOSProvider = { ARRAYSIZE(kEoB1ExpObjectTblIndexDOS), kEoB1ExpObjectTblIndexDOS };
+
+static const byte kEoB1ExpObjectShpStartDOS[4] = {
+ 0x07, 0x0C, 0x0F, 0x12
+};
+
+static const ByteProvider kEoB1ExpObjectShpStartDOSProvider = { ARRAYSIZE(kEoB1ExpObjectShpStartDOS), kEoB1ExpObjectShpStartDOS };
+
+static const byte kEoB1ExpObjectTbl1DOS[13] = {
+ 0x0F, 0x05, 0x0F, 0x05, 0x06, 0x05, 0x06, 0x08,
+ 0x06, 0x08, 0x06, 0x08, 0x00
+};
+
+static const ByteProvider kEoB1ExpObjectTbl1DOSProvider = { ARRAYSIZE(kEoB1ExpObjectTbl1DOS), kEoB1ExpObjectTbl1DOS };
+
+static const byte kEoB1ExpObjectTbl2DOS[10] = {
+ 0x0F, 0x09, 0x0F, 0x09, 0x02, 0x0A, 0x0B, 0x0A,
+ 0x0B, 0x00
+};
+
+static const ByteProvider kEoB1ExpObjectTbl2DOSProvider = { ARRAYSIZE(kEoB1ExpObjectTbl2DOS), kEoB1ExpObjectTbl2DOS };
+
+static const byte kEoB1ExpObjectTbl3DOS[11] = {
+ 0x05, 0x03, 0x05, 0x03, 0x03, 0x03, 0x03, 0x0B,
+ 0x03, 0x0B, 0x00
+};
+
+static const ByteProvider kEoB1ExpObjectTbl3DOSProvider = { ARRAYSIZE(kEoB1ExpObjectTbl3DOS), kEoB1ExpObjectTbl3DOS };
+
+static const byte kEoB1ExpObjectYDOS[4] = {
+ 0x77, 0x67, 0x4F, 0x3F
+};
+
+static const ByteProvider kEoB1ExpObjectYDOSProvider = { ARRAYSIZE(kEoB1ExpObjectYDOS), kEoB1ExpObjectYDOS };
+
+static const byte kEoB1SparkDefStepsDOS[8] = {
+ 0x40, 0x90, 0xE4, 0xB9, 0x6E, 0x1B, 0x06, 0x01
+};
+
+static const ByteProvider kEoB1SparkDefStepsDOSProvider = { ARRAYSIZE(kEoB1SparkDefStepsDOS), kEoB1SparkDefStepsDOS };
+
+static const byte kEoB1SparkDefSubStepsDOS[4] = {
+ 0xC0, 0x30, 0x0C, 0x03
+};
+
+static const ByteProvider kEoB1SparkDefSubStepsDOSProvider = { ARRAYSIZE(kEoB1SparkDefSubStepsDOS), kEoB1SparkDefSubStepsDOS };
+
+static const byte kEoB1SparkDefShiftDOS[4] = {
+ 0x06, 0x04, 0x02, 0x00
+};
+
+static const ByteProvider kEoB1SparkDefShiftDOSProvider = { ARRAYSIZE(kEoB1SparkDefShiftDOS), kEoB1SparkDefShiftDOS };
+
+static const byte kEoB1SparkDefAddDOS[8] = {
+ 0x08, 0x06, 0x1C, 0x14, 0x0D, 0x18, 0x0D, 0x0F
+};
+
+static const ByteProvider kEoB1SparkDefAddDOSProvider = { ARRAYSIZE(kEoB1SparkDefAddDOS), kEoB1SparkDefAddDOS };
+
+static const byte kEoB1SparkDefXDOS[6] = {
+ 0x17, 0x20, 0x17, 0x20, 0x17, 0x20
+};
+
+static const ByteProvider kEoB1SparkDefXDOSProvider = { ARRAYSIZE(kEoB1SparkDefXDOS), kEoB1SparkDefXDOS };
+
+static const byte kEoB1SparkDefYDOS[6] = {
+ 0x02, 0x02, 0x34, 0x34, 0x66, 0x66
+};
+
+static const ByteProvider kEoB1SparkDefYDOSProvider = { ARRAYSIZE(kEoB1SparkDefYDOS), kEoB1SparkDefYDOS };
+
+static const uint32 kEoB1SparkOfFlags1DOS[11] = {
+ 0x40000000, 0x95000000, 0xEA550000, 0xBFAA5400, 0x6AFFA954, 0x15AAFEA9, 0x0055ABFE, 0x000056AB,
+ 0x00000156, 0x00000001, 0x00000000
+};
+
+static const Uint32Provider kEoB1SparkOfFlags1DOSProvider = { ARRAYSIZE(kEoB1SparkOfFlags1DOS), kEoB1SparkOfFlags1DOS };
+
+static const uint32 kEoB1SparkOfFlags2DOS[16] = {
+ 0xC0000000, 0x30000000, 0x0C000000, 0x03000000, 0x00C00000, 0x00300000, 0x000C0000, 0x00030000,
+ 0x0000C000, 0x00003000, 0x00000C00, 0x00000300, 0x000000C0, 0x00000030, 0x0000000C, 0x00000003
+};
+
+static const Uint32Provider kEoB1SparkOfFlags2DOSProvider = { ARRAYSIZE(kEoB1SparkOfFlags2DOS), kEoB1SparkOfFlags2DOS };
+
+static const byte kEoB1SparkOfShiftDOS[16] = {
+ 0x1E, 0x1C, 0x1A, 0x18, 0x16, 0x14, 0x12, 0x10,
+ 0x0E, 0x0C, 0x0A, 0x08, 0x06, 0x04, 0x02, 0x00
+};
+
+static const ByteProvider kEoB1SparkOfShiftDOSProvider = { ARRAYSIZE(kEoB1SparkOfShiftDOS), kEoB1SparkOfShiftDOS };
+
+static const byte kEoB1SparkOfXDOS[16] = {
+ 0x50, 0x70, 0x30, 0x68, 0x20, 0x60, 0x38, 0x78,
+ 0x80, 0x48, 0x58, 0x28, 0x60, 0x40, 0x70, 0x48
+};
+
+static const ByteProvider kEoB1SparkOfXDOSProvider = { ARRAYSIZE(kEoB1SparkOfXDOS), kEoB1SparkOfXDOS };
+
+static const byte kEoB1SparkOfYDOS[16] = {
+ 0x31, 0x2B, 0x48, 0x17, 0x16, 0x48, 0x35, 0x1B,
+ 0x43, 0x2E, 0x24, 0x28, 0x38, 0x1C, 0x16, 0x44
+};
+
+static const ByteProvider kEoB1SparkOfYDOSProvider = { ARRAYSIZE(kEoB1SparkOfYDOS), kEoB1SparkOfYDOS };
+
+static const byte kEoB1SpellPropertiesDOS[1007] = {
+ 0x4D, 0x2C, 0x2E, 0x21, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x4E, 0x2C, 0x2E, 0x21, 0x01,
+ 0x0B, 0x0F, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00,
+ 0x86, 0x0F, 0xF3, 0x0E, 0x5C, 0x00, 0x54, 0x2C,
+ 0x2E, 0x21, 0x00, 0x99, 0x0F, 0xF3, 0x0E, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x57,
+ 0x01, 0x62, 0x2C, 0x2E, 0x21, 0x08, 0x69, 0x10,
+ 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0xAE, 0x10,
+ 0xF3, 0x0E, 0x5F, 0x00, 0x6F, 0x2C, 0x2E, 0x21,
+ 0x00, 0xD2, 0x10, 0xF3, 0x0E, 0xF2, 0x10, 0xF3,
+ 0x0E, 0x00, 0x00, 0x00, 0x00, 0x55, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x7D, 0x2C, 0x2E, 0x21, 0x04, 0x22,
+ 0x11, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x76,
+ 0x11, 0xF3, 0x0E, 0x5C, 0x00, 0x84, 0x2C, 0x2E,
+ 0x21, 0x02, 0x97, 0x11, 0xF3, 0x0E, 0x00, 0x00,
+ 0x00, 0x00, 0x33, 0x12, 0xF3, 0x0E, 0x58, 0x00,
+ 0x93, 0x2C, 0x2E, 0x21, 0x01, 0x7F, 0x12, 0xF3,
+ 0x0E, 0x00, 0x00, 0x00, 0x00, 0xA1, 0x12, 0xF3,
+ 0x0E, 0x5E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x2C,
+ 0x2E, 0x21, 0x00, 0xC2, 0x12, 0xF3, 0x0E, 0xE3,
+ 0x12, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x60,
+ 0x01, 0xB2, 0x2C, 0x2E, 0x21, 0x00, 0x15, 0x13,
+ 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0xC1, 0x2C, 0x2E, 0x21,
+ 0x01, 0x1A, 0x13, 0xF3, 0x0E, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x61, 0x00, 0xCE,
+ 0x2C, 0x2E, 0x21, 0x00, 0xFD, 0x13, 0xF3, 0x0E,
+ 0x1E, 0x14, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00,
+ 0x62, 0x01, 0xD7, 0x2C, 0x2E, 0x21, 0x00, 0x4A,
+ 0x14, 0xF3, 0x0E, 0x6B, 0x14, 0xF3, 0x0E, 0x00,
+ 0x00, 0x00, 0x00, 0x63, 0x01, 0xE3, 0x2C, 0x2E,
+ 0x21, 0x08, 0x97, 0x14, 0xF3, 0x0E, 0x00, 0x00,
+ 0x00, 0x00, 0xF9, 0x14, 0xF3, 0x0E, 0x64, 0x00,
+ 0xE9, 0x2C, 0x2E, 0x21, 0x00, 0x0F, 0x15, 0xF3,
+ 0x0E, 0x30, 0x15, 0xF3, 0x0E, 0x00, 0x00, 0x00,
+ 0x00, 0x65, 0x01, 0xF5, 0x2C, 0x2E, 0x21, 0x08,
+ 0xD0, 0x15, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00,
+ 0xA1, 0x12, 0xF3, 0x0E, 0x5E, 0x00, 0x0D, 0x2D,
+ 0x2E, 0x21, 0x00, 0x09, 0x16, 0xF3, 0x0E, 0x2A,
+ 0x16, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x1F,
+ 0x01, 0x1C, 0x2D, 0x2E, 0x21, 0x02, 0x56, 0x16,
+ 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0xDC, 0x16,
+ 0xF3, 0x0E, 0x66, 0x00, 0x2B, 0x2D, 0x2E, 0x21,
+ 0x00, 0x02, 0x17, 0xF3, 0x0E, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x67, 0x01, 0x30,
+ 0x2D, 0x2E, 0x21, 0x00, 0xB7, 0x17, 0xF3, 0x0E,
+ 0xD8, 0x17, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00,
+ 0x59, 0x01, 0x3A, 0x2D, 0x2E, 0x21, 0x01, 0x65,
+ 0x18, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x5D, 0x00, 0x44, 0x2D, 0x2E,
+ 0x21, 0x00, 0xD3, 0x18, 0xF3, 0x0E, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x4E, 0x2D, 0x2E, 0x21, 0x00, 0xD8, 0x18, 0xF3,
+ 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x76, 0x01, 0x5B, 0x2D, 0x2E, 0x21, 0x00,
+ 0x0F, 0x1A, 0xF3, 0x0E, 0x30, 0x1A, 0xF3, 0x0E,
+ 0x00, 0x00, 0x00, 0x00, 0x65, 0x01, 0x68, 0x2D,
+ 0x2E, 0x21, 0x08, 0xD0, 0x1A, 0xF3, 0x0E, 0x00,
+ 0x00, 0x00, 0x00, 0x13, 0x1B, 0xF3, 0x0E, 0x5B,
+ 0x00, 0x6E, 0x2D, 0x2E, 0x21, 0x01, 0x20, 0x1B,
+ 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x68, 0x00, 0x80, 0x2D, 0x2E, 0x21,
+ 0x00, 0x43, 0x1B, 0xF3, 0x0E, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x01, 0x93,
+ 0x2D, 0x2E, 0x21, 0x08, 0x69, 0x10, 0xF3, 0x0E,
+ 0x00, 0x00, 0x00, 0x00, 0xAE, 0x10, 0xF3, 0x0E,
+ 0x5F, 0x00, 0xA0, 0x2D, 0x2E, 0x21, 0x01, 0x5A,
+ 0x1B, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x8D,
+ 0x1B, 0xF3, 0x0E, 0x6E, 0x00, 0xB5, 0x2D, 0x2E,
+ 0x21, 0x01, 0xA3, 0x1B, 0xF3, 0x0E, 0x00, 0x00,
+ 0x00, 0x00, 0x45, 0x1C, 0xF3, 0x0E, 0x5B, 0x00,
+ 0xB9, 0x2D, 0x2E, 0x21, 0x02, 0x38, 0x1D, 0xF3,
+ 0x0E, 0x00, 0x00, 0x00, 0x00, 0x33, 0x12, 0xF3,
+ 0x0E, 0x63, 0x00, 0xC5, 0x2D, 0x2E, 0x21, 0x00,
+ 0x0F, 0x15, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x65, 0x01, 0xD1, 0x2D,
+ 0x2E, 0x21, 0x01, 0x75, 0x1C, 0xF3, 0x0E, 0x00,
+ 0x00, 0x00, 0x00, 0xD2, 0x1C, 0xF3, 0x0E, 0x6F,
+ 0x00, 0xDD, 0x2D, 0x2E, 0x21, 0x08, 0xC0, 0x1D,
+ 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x70, 0x00, 0xE9, 0x2D, 0x2E, 0x21,
+ 0x01, 0x1A, 0x13, 0xF3, 0x0E, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x61, 0x00, 0xF6,
+ 0x2D, 0x2E, 0x21, 0x04, 0xDF, 0x1D, 0xF3, 0x0E,
+ 0x00, 0x00, 0x00, 0x00, 0x1D, 0x1E, 0xF3, 0x0E,
+ 0x71, 0x00, 0x07, 0x2E, 0x2E, 0x21, 0x08, 0x3E,
+ 0x1E, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x6C,
+ 0x1E, 0xF3, 0x0E, 0x5B, 0x00, 0x0E, 0x2E, 0x2E,
+ 0x21, 0x08, 0x7E, 0x1E, 0xF3, 0x0E, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x72, 0x00,
+ 0x1F, 0x2E, 0x2E, 0x21, 0x01, 0xCC, 0x1E, 0xF3,
+ 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x69, 0x00, 0x33, 0x2E, 0x2E, 0x21, 0x00,
+ 0xF3, 0x1E, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x6C, 0x01, 0x48, 0x2E,
+ 0x2E, 0x21, 0x01, 0x0B, 0x1F, 0xF3, 0x0E, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73,
+ 0x00, 0x5A, 0x2E, 0x2E, 0x21, 0x08, 0x33, 0x1F,
+ 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x8F, 0x1F,
+ 0xF3, 0x0E, 0x6E, 0x00, 0x7A, 0x2E, 0x2E, 0x21,
+ 0x04, 0xC8, 0x1F, 0xF3, 0x0E, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x00, 0x94,
+ 0x2E, 0x2E, 0x21, 0x01, 0xD2, 0x1F, 0xF3, 0x0E,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6A, 0x00, 0xA9, 0x2E, 0x2E, 0x21, 0x00, 0xF9,
+ 0x1F, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x6C, 0x01, 0xBF, 0x2E, 0x2E,
+ 0x21, 0x00, 0x11, 0x20, 0xF3, 0x0E, 0x32, 0x20,
+ 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x62, 0x01,
+ 0xCC, 0x2E, 0x2E, 0x21, 0x01, 0x50, 0x20, 0xF3,
+ 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x75, 0x00, 0xD7, 0x2E, 0x2E, 0x21, 0x01,
+ 0xBC, 0x21, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0xE4, 0x2E,
+ 0x2E, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8A,
+ 0x20, 0xF3, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x75,
+ 0x00, 0xE5, 0x2E, 0x2E, 0x21, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xA8, 0x20, 0xF3, 0x0E, 0x00, 0x00,
+ 0x00, 0x00, 0x75, 0x00, 0xE6, 0x2E, 0x2E, 0x21,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x21, 0xF3,
+ 0x0E, 0x00, 0x00, 0x00, 0x00, 0x75, 0x00
+};
+
+static const ByteProvider kEoB1SpellPropertiesDOSProvider = { ARRAYSIZE(kEoB1SpellPropertiesDOS), kEoB1SpellPropertiesDOS };
+
+static const byte kEoB1MagicFlightPropsDOS[96] = {
+ 0x04, 0xFF, 0x41, 0x09, 0x0A, 0xFF, 0x04, 0x05,
+ 0x0D, 0xFF, 0x7A, 0x06, 0x0E, 0xFF, 0x0C, 0x05,
+ 0x10, 0xFF, 0x4A, 0x0A, 0x12, 0x06, 0x38, 0x07,
+ 0x15, 0x06, 0x7A, 0x08, 0x19, 0xFF, 0x4A, 0x0A,
+ 0x2F, 0xFF, 0x4B, 0x06, 0x32, 0xFF, 0x09, 0x07,
+ 0x33, 0xFF, 0x09, 0x0A, 0x34, 0xFF, 0x09, 0x0A,
+ 0x01, 0x01, 0x00, 0x00, 0x03, 0xFD, 0x02, 0xFE,
+ 0x01, 0xFF, 0x00, 0x00, 0x98, 0x00, 0x18, 0x00,
+ 0x78, 0x00, 0x38, 0x00, 0x58, 0x00, 0x40, 0x40,
+ 0x38, 0x38, 0x38, 0x38, 0xE0, 0x20, 0x01, 0xFF,
+ 0x0F, 0x00, 0x09, 0x00, 0x0F, 0x00, 0x09, 0x00,
+ 0x02, 0x00, 0x0A, 0x00, 0x02, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB1MagicFlightPropsDOSProvider = { ARRAYSIZE(kEoB1MagicFlightPropsDOS), kEoB1MagicFlightPropsDOS };
+
+static const byte kEoB1TurnUndeadEffectDOS[140] = {
+ 0x0A, 0x07, 0x04, 0x00, 0x00, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0D, 0x0A,
+ 0x07, 0x04, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x10, 0x0D, 0x0A, 0x07,
+ 0x04, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x13, 0x10, 0x0D, 0x0A, 0x07, 0x04,
+ 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x14, 0x13, 0x10, 0x0D, 0x0A, 0x07, 0x04, 0x00,
+ 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x63, 0x14,
+ 0x13, 0x10, 0x0D, 0x0A, 0x07, 0x04, 0x00, 0x00,
+ 0x00, 0xFF, 0xFF, 0x00, 0x63, 0x63, 0x14, 0x13,
+ 0x10, 0x0D, 0x0A, 0x07, 0x04, 0x00, 0x00, 0x00,
+ 0x00, 0xFF, 0x63, 0x63, 0x63, 0x14, 0x13, 0x10,
+ 0x0D, 0x0A, 0x07, 0x04, 0x04, 0x00, 0x00, 0x00,
+ 0x63, 0x63, 0x63, 0x63, 0x14, 0x13, 0x10, 0x0D,
+ 0x0A, 0x07, 0x07, 0x04, 0x04, 0x00, 0x63, 0x63,
+ 0x63, 0x63, 0x63, 0x14, 0x13, 0x10, 0x0D, 0x0A,
+ 0x0A, 0x07, 0x07, 0x04
+};
+
+static const ByteProvider kEoB1TurnUndeadEffectDOSProvider = { ARRAYSIZE(kEoB1TurnUndeadEffectDOS), kEoB1TurnUndeadEffectDOS };
+
+static const byte kEoB1BurningHandsDestDOS[8] = {
+ 0x02, 0x03, 0x00, 0x02, 0x00, 0x01, 0x01, 0x03
+};
+
+static const ByteProvider kEoB1BurningHandsDestDOSProvider = { ARRAYSIZE(kEoB1BurningHandsDestDOS), kEoB1BurningHandsDestDOS };
+
+static const byte kEoB1ConeOfColdDest1DOS[7] = {
+ 0xE0, 0xC0, 0xC1, 0xBF, 0xA0, 0x9F, 0xA1
+};
+
+static const ByteProvider kEoB1ConeOfColdDest1DOSProvider = { ARRAYSIZE(kEoB1ConeOfColdDest1DOS), kEoB1ConeOfColdDest1DOS };
+
+static const byte kEoB1ConeOfColdDest2DOS[7] = {
+ 0x01, 0x02, 0xE2, 0x22, 0x03, 0xE3, 0x23
+};
+
+static const ByteProvider kEoB1ConeOfColdDest2DOSProvider = { ARRAYSIZE(kEoB1ConeOfColdDest2DOS), kEoB1ConeOfColdDest2DOS };
+
+static const byte kEoB1ConeOfColdDest3DOS[7] = {
+ 0x20, 0x40, 0x3F, 0x41, 0x60, 0x5F, 0x61
+};
+
+static const ByteProvider kEoB1ConeOfColdDest3DOSProvider = { ARRAYSIZE(kEoB1ConeOfColdDest3DOS), kEoB1ConeOfColdDest3DOS };
+
+static const byte kEoB1ConeOfColdDest4DOS[7] = {
+ 0xFF, 0xFE, 0x1E, 0xDE, 0xFD, 0x1D, 0xDD
+};
+
+static const ByteProvider kEoB1ConeOfColdDest4DOSProvider = { ARRAYSIZE(kEoB1ConeOfColdDest4DOS), kEoB1ConeOfColdDest4DOS };
+
+static const byte kEoB1ConeOfColdGfxTblDOS[8] = {
+ 0x0F, 0x09, 0x0F, 0x09, 0x02, 0x0A, 0x02, 0x00
+};
+
+static const ByteProvider kEoB1ConeOfColdGfxTblDOSProvider = { ARRAYSIZE(kEoB1ConeOfColdGfxTblDOS), kEoB1ConeOfColdGfxTblDOS };
+
+static const byte kEoB1DscDoorShapeIndexDOS[32] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03,
+ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03
+};
+
+static const ByteProvider kEoB1DscDoorShapeIndexDOSProvider = { ARRAYSIZE(kEoB1DscDoorShapeIndexDOS), kEoB1DscDoorShapeIndexDOS };
+
+static const byte kEoB1WllFlagPresetDOS[25] = {
+ 0x07, 0x00, 0x40, 0xA8, 0x88, 0x88, 0x88, 0x9F,
+ 0xA8, 0x88, 0x88, 0x88, 0x9F, 0xAA, 0x8A, 0x8A,
+ 0x8A, 0x9F, 0xAA, 0x8A, 0x8A, 0x8A, 0x9F, 0x03,
+ 0x03
+};
+
+static const ByteProvider kEoB1WllFlagPresetDOSProvider = { ARRAYSIZE(kEoB1WllFlagPresetDOS), kEoB1WllFlagPresetDOS };
+
+static const uint16 kEoB1DscShapeCoordsDOS[180] = {
+ 0xFF91, 0xFFC1, 0xFFA1, 0xFFC1, 0xFF75, 0xFFC5, 0xFF8B, 0xFFC5,
+ 0xFF88, 0xFFC3, 0xFFB4, 0xFFC1, 0xFFC4, 0xFFC1, 0xFFA1, 0xFFC5,
+ 0xFFB6, 0xFFC5, 0xFFB0, 0xFFC3, 0xFFD5, 0xFFC1, 0xFFE5, 0xFFC1,
+ 0xFFCB, 0xFFC5, 0xFFE1, 0xFFC5, 0xFFD8, 0xFFC3, 0xFFF8, 0xFFC1,
+ 0x0008, 0xFFC1, 0xFFF6, 0xFFC5, 0x000A, 0xFFC5, 0x0000, 0xFFC3,
+ 0x001B, 0xFFC1, 0x002B, 0xFFC1, 0x001F, 0xFFC5, 0x0035, 0xFFC5,
+ 0x0028, 0xFFC3, 0x003C, 0xFFC1, 0x004C, 0xFFC1, 0x004A, 0xFFC5,
+ 0x005F, 0xFFC5, 0x0050, 0xFFC3, 0x005F, 0xFFC1, 0x006F, 0xFFC1,
+ 0x0075, 0xFFC5, 0x008B, 0xFFC5, 0x0078, 0xFFC3, 0xFF8A, 0xFFCB,
+ 0xFFA4, 0xFFCB, 0xFF68, 0xFFD3, 0xFF88, 0xFFD3, 0xFF8A, 0xFFCE,
+ 0xFFBE, 0xFFCB, 0xFFD8, 0xFFCB, 0xFFAC, 0xFFD3, 0xFFCD, 0xFFD3,
+ 0xFFC5, 0xFFCE, 0xFFF3, 0xFFCB, 0x000D, 0xFFCB, 0xFFF0, 0xFFD3,
+ 0x0010, 0xFFD3, 0x0000, 0xFFCE, 0x0028, 0xFFCB, 0x0042, 0xFFCB,
+ 0x0033, 0xFFD3, 0x0054, 0xFFD3, 0x003B, 0xFFCE, 0x005C, 0xFFCB,
+ 0x0076, 0xFFCB, 0x0078, 0xFFD3, 0x0098, 0xFFD3, 0x0076, 0xFFCE,
+ 0xFF92, 0xFFDD, 0xFFBD, 0xFFDD, 0xFF74, 0xFFEA, 0xFFAD, 0xFFEA,
+ 0xFF9E, 0xFFE2, 0xFFEA, 0xFFDD, 0x0016, 0xFFDD, 0xFFE5, 0xFFEA,
+ 0x001B, 0xFFEA, 0x0000, 0xFFE2, 0x0043, 0xFFDD, 0x006E, 0xFFDD,
+ 0x0053, 0xFFEA, 0x008C, 0xFFEA, 0x0062, 0xFFE2, 0xFF80, 0xFFFC,
+ 0x0080, 0xFFFC, 0xFF80, 0xFFBE, 0x0080, 0xFFBE, 0x0080, 0x0000,
+ 0xFFDA, 0xFFFC, 0x0026, 0xFFFC, 0xFFDA, 0xFFBE, 0x0026, 0xFFBE,
+ 0x0000, 0x0000, 0xFF80, 0xFFFC, 0x0080, 0xFFFC, 0xFF80, 0xFFBE,
+ 0x0080, 0xFFBE, 0x0080, 0x0000
+};
+
+static const Uint16Provider kEoB1DscShapeCoordsDOSProvider = { ARRAYSIZE(kEoB1DscShapeCoordsDOS), kEoB1DscShapeCoordsDOS };
+
+static const byte kEoB1DscDoorScaleOffsDOS[32] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x1F
+};
+
+static const ByteProvider kEoB1DscDoorScaleOffsDOSProvider = { ARRAYSIZE(kEoB1DscDoorScaleOffsDOS), kEoB1DscDoorScaleOffsDOS };
+
+static const byte kEoB1DscDoorScaleMult1DOS[4] = {
+ 0x08, 0x0C, 0x12, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorScaleMult1DOSProvider = { ARRAYSIZE(kEoB1DscDoorScaleMult1DOS), kEoB1DscDoorScaleMult1DOS };
+
+static const byte kEoB1DscDoorScaleMult2DOS[4] = {
+ 0x00, 0x02, 0x04, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorScaleMult2DOSProvider = { ARRAYSIZE(kEoB1DscDoorScaleMult2DOS), kEoB1DscDoorScaleMult2DOS };
+
+static const byte kEoB1DscDoorScaleMult3DOS[4] = {
+ 0x04, 0x06, 0x09, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorScaleMult3DOSProvider = { ARRAYSIZE(kEoB1DscDoorScaleMult3DOS), kEoB1DscDoorScaleMult3DOS };
+
+static const byte kEoB1DscDoorScaleMult4DOS[4] = {
+ 0x00, 0x02, 0x04, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorScaleMult4DOSProvider = { ARRAYSIZE(kEoB1DscDoorScaleMult4DOS), kEoB1DscDoorScaleMult4DOS };
+
+static const byte kEoB1DscDoorScaleMult5DOS[4] = {
+ 0x07, 0x0B, 0x0E, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorScaleMult5DOSProvider = { ARRAYSIZE(kEoB1DscDoorScaleMult5DOS), kEoB1DscDoorScaleMult5DOS };
+
+static const byte kEoB1DscDoorScaleMult6DOS[4] = {
+ 0x00, 0x02, 0x04, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorScaleMult6DOSProvider = { ARRAYSIZE(kEoB1DscDoorScaleMult6DOS), kEoB1DscDoorScaleMult6DOS };
+
+static const byte kEoB1DscDoorXEDOS[32] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x1F
+};
+
+static const ByteProvider kEoB1DscDoorXEDOSProvider = { ARRAYSIZE(kEoB1DscDoorXEDOS), kEoB1DscDoorXEDOS };
+
+static const byte kEoB1DscDoorY1DOS[4] = {
+ 0x3A, 0x47, 0x56, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorY1DOSProvider = { ARRAYSIZE(kEoB1DscDoorY1DOS), kEoB1DscDoorY1DOS };
+
+static const byte kEoB1DscDoorY3DOS[4] = {
+ 0x20, 0x20, 0x18, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorY3DOSProvider = { ARRAYSIZE(kEoB1DscDoorY3DOS), kEoB1DscDoorY3DOS };
+
+static const byte kEoB1DscDoorY4DOS[4] = {
+ 0x1E, 0x18, 0x10, 0x30
+};
+
+static const ByteProvider kEoB1DscDoorY4DOSProvider = { ARRAYSIZE(kEoB1DscDoorY4DOS), kEoB1DscDoorY4DOS };
+
+static const byte kEoB1DscDoorY5DOS[4] = {
+ 0x30, 0x34, 0x3B, 0x3A
+};
+
+static const ByteProvider kEoB1DscDoorY5DOSProvider = { ARRAYSIZE(kEoB1DscDoorY5DOS), kEoB1DscDoorY5DOS };
+
+static const byte kEoB1DscDoorY6DOS[4] = {
+ 0x3A, 0x45, 0x5A, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorY6DOSProvider = { ARRAYSIZE(kEoB1DscDoorY6DOS), kEoB1DscDoorY6DOS };
+
+static const byte kEoB1DscDoorY7DOS[4] = {
+ 0x3B, 0x47, 0x58, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorY7DOSProvider = { ARRAYSIZE(kEoB1DscDoorY7DOS), kEoB1DscDoorY7DOS };
+
+static const uint16 kEoB1DscDoorCoordsExtDOS[36] = {
+ 0x0000, 0x0000, 0xFFE8, 0x0010, 0x0020, 0x0040, 0x0048, 0x0068,
+ 0x0070, 0x0090, 0x00A0, 0x00C8, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFE8, 0x0030, 0x0038, 0x0078, 0x0080, 0x00C8, 0x0000, 0x0000,
+ 0xFFA8, 0x0020, 0x0028, 0x0088, 0x0090, 0x0108, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kEoB1DscDoorCoordsExtDOSProvider = { ARRAYSIZE(kEoB1DscDoorCoordsExtDOS), kEoB1DscDoorCoordsExtDOS };
+
+static const byte kEoB1DscDoorFrameY1DOS[32] = {
+ 0x20, 0x18, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x20, 0x20, 0x18, 0x00, 0x1E, 0x18, 0x10, 0x00,
+ 0x3A, 0x48, 0x60, 0x78, 0x3A, 0x46, 0x56, 0x00,
+ 0x78, 0x78, 0x78, 0x78, 0x1F, 0x18, 0x0F, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorFrameY1DOSProvider = { ARRAYSIZE(kEoB1DscDoorFrameY1DOS), kEoB1DscDoorFrameY1DOS };
+
+static const byte kEoB1DscDoorFrameY2DOS[32] = {
+ 0x20, 0x18, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x20, 0x20, 0x18, 0x00, 0x1E, 0x18, 0x10, 0x00,
+ 0x3A, 0x48, 0x60, 0x78, 0x3A, 0x46, 0x56, 0x00,
+ 0x78, 0x78, 0x78, 0x78, 0x1F, 0x18, 0x0F, 0x00
+};
+
+static const ByteProvider kEoB1DscDoorFrameY2DOSProvider = { ARRAYSIZE(kEoB1DscDoorFrameY2DOS), kEoB1DscDoorFrameY2DOS };
+
+static const byte kEoB1DscDoorFrameIndex1DOS[12] = {
+ 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x08, 0x08,
+ 0x08, 0x0C, 0x0C, 0x1C
+};
+
+static const ByteProvider kEoB1DscDoorFrameIndex1DOSProvider = { ARRAYSIZE(kEoB1DscDoorFrameIndex1DOS), kEoB1DscDoorFrameIndex1DOS };
+
+static const byte kEoB1DscDoorFrameIndex2DOS[12] = {
+ 0x10, 0x10, 0x10, 0x18, 0x18, 0x18, 0x10, 0x10,
+ 0x10, 0x14, 0x14, 0x18
+};
+
+static const ByteProvider kEoB1DscDoorFrameIndex2DOSProvider = { ARRAYSIZE(kEoB1DscDoorFrameIndex2DOS), kEoB1DscDoorFrameIndex2DOS };
+
+static const byte kEoB1DscItemPosIndexDOS[16] = {
+ 0x00, 0x01, 0x02, 0x03, 0x02, 0x00, 0x03, 0x01,
+ 0x03, 0x02, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02
+};
+
+static const ByteProvider kEoB1DscItemPosIndexDOSProvider = { ARRAYSIZE(kEoB1DscItemPosIndexDOS), kEoB1DscItemPosIndexDOS };
+
+static const uint16 kEoB1DscItemShpXDOS[18] = {
+ 0xFFC8, 0xFFF8, 0x0028, 0x0058, 0x0088, 0x00B8, 0x00E8, 0xFFB8,
+ 0x0008, 0x0058, 0x00A8, 0x00F8, 0xFFD8, 0x0058, 0x00D8, 0xFFA8,
+ 0x0058, 0x0108
+};
+
+static const Uint16Provider kEoB1DscItemShpXDOSProvider = { ARRAYSIZE(kEoB1DscItemShpXDOS), kEoB1DscItemShpXDOS };
+
+static const byte kEoB1DscItemScaleIndexDOS[18] = {
+ 0xFF, 0xFF, 0x03, 0x03, 0x02, 0x02, 0x02, 0x02,
+ 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0xFF, 0xFF,
+ 0x25, 0x00
+};
+
+static const ByteProvider kEoB1DscItemScaleIndexDOSProvider = { ARRAYSIZE(kEoB1DscItemScaleIndexDOS), kEoB1DscItemScaleIndexDOS };
+
+static const byte kEoB1DscItemTileIndexDOS[18] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x03, 0xFF, 0xFF, 0xFF, 0x09, 0xFF, 0x0B,
+ 0x0C, 0x0D
+};
+
+static const ByteProvider kEoB1DscItemTileIndexDOSProvider = { ARRAYSIZE(kEoB1DscItemTileIndexDOS), kEoB1DscItemTileIndexDOS };
+
+static const byte kEoB1DscItemShapeMapDOS[90] = {
+ 0x00, 0x00, 0x00, 0x04, 0x01, 0x02, 0x03, 0x04,
+ 0x05, 0x06, 0x07, 0x07, 0x12, 0x06, 0x0F, 0x12,
+ 0x14, 0x17, 0x13, 0x11, 0x15, 0x0D, 0x09, 0x09,
+ 0x16, 0x1F, 0x0C, 0x23, 0x0C, 0x0C, 0x0C, 0x0B,
+ 0x0A, 0x1C, 0x1C, 0x1A, 0x1B, 0x21, 0x1D, 0x1D,
+ 0x22, 0x22, 0x22, 0x00, 0x08, 0x00, 0x25, 0x18,
+ 0x16, 0x17, 0x16, 0x17, 0x16, 0x17, 0x19, 0x23,
+ 0x10, 0x1E, 0x24, 0x18, 0x1C, 0x20, 0x12, 0x21,
+ 0x1E, 0x23, 0x1C, 0x00, 0x20, 0x11, 0x11, 0x0D,
+ 0x1F, 0x09, 0x09, 0x15, 0x15, 0x0F, 0x05, 0x0C,
+ 0x1E, 0x1E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1B,
+ 0x1B, 0x00
+};
+
+static const ByteProvider kEoB1DscItemShapeMapDOSProvider = { ARRAYSIZE(kEoB1DscItemShapeMapDOS), kEoB1DscItemShapeMapDOS };
+
+static const byte kEoB1DscTelptrShpCoordsDOS[156] = {
+ 0x0C, 0x07, 0x1A, 0x01, 0x3E, 0x03, 0x0C, 0x1A,
+ 0x2A, 0x13, 0x40, 0x18, 0x02, 0x2D, 0x16, 0x25,
+ 0x28, 0x32, 0x36, 0x27, 0x0A, 0x3E, 0x16, 0x49,
+ 0x3E, 0x44, 0x06, 0x06, 0x2A, 0x04, 0x37, 0x0A,
+ 0x04, 0x1B, 0x1A, 0x16, 0x37, 0x1D, 0x0E, 0x2A,
+ 0x1B, 0x35, 0x2E, 0x28, 0x42, 0x30, 0x06, 0x47,
+ 0x06, 0x47, 0x2D, 0x4C, 0x0A, 0x04, 0x14, 0x00,
+ 0x2E, 0x01, 0x0C, 0x10, 0x1F, 0x10, 0x2F, 0x10,
+ 0x12, 0x18, 0x28, 0x1D, 0x01, 0x21, 0x08, 0x2A,
+ 0x11, 0x32, 0x2F, 0x2E, 0x1F, 0x25, 0x02, 0x02,
+ 0x01, 0x11, 0x01, 0x2F, 0x08, 0x1E, 0x11, 0x0E,
+ 0x11, 0x26, 0x1C, 0x01, 0x1E, 0x19, 0x1F, 0x33,
+ 0x24, 0x11, 0x26, 0x05, 0x28, 0x2B, 0x2F, 0x22,
+ 0x00, 0x13, 0x05, 0x01, 0x06, 0x08, 0x09, 0x0C,
+ 0x04, 0x1A, 0x08, 0x1F, 0x12, 0x05, 0x12, 0x15,
+ 0x16, 0x10, 0x1A, 0x08, 0x1A, 0x1D, 0x0A, 0x00,
+ 0x0A, 0x00, 0x00, 0x09, 0x00, 0x1E, 0x04, 0x11,
+ 0x08, 0x16, 0x08, 0x06, 0x10, 0x00, 0x11, 0x0D,
+ 0x12, 0x20, 0x15, 0x02, 0x14, 0x09, 0x16, 0x1B,
+ 0x1A, 0x14, 0x1A, 0x14
+};
+
+static const ByteProvider kEoB1DscTelptrShpCoordsDOSProvider = { ARRAYSIZE(kEoB1DscTelptrShpCoordsDOS), kEoB1DscTelptrShpCoordsDOS };
+
+static const byte kEoB1PortalSeqDataDOS[126] = {
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x02, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x04, 0x00, 0x03, 0x00, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04,
+ 0x00, 0x01, 0x01, 0x00, 0x02, 0x01, 0x03, 0x02,
+ 0x02, 0x03, 0x01, 0x04, 0x00, 0x02, 0x01, 0x03,
+ 0x02, 0x04, 0x03, 0x02, 0x04, 0x03, 0x03, 0x04,
+ 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03,
+ 0x04, 0x04, 0x04, 0x05, 0x04, 0x06, 0x03, 0x07,
+ 0x02, 0x08, 0x02, 0x08, 0x01, 0x09, 0x01, 0x09,
+ 0x01, 0x09, 0x00, 0x0A, 0xFF, 0xFF
+};
+
+static const ByteProvider kEoB1PortalSeqDataDOSProvider = { ARRAYSIZE(kEoB1PortalSeqDataDOS), kEoB1PortalSeqDataDOS };
+
+static const byte kEoB1DscMonsterFrmOffsTbl1DOS[32] = {
+ 0x04, 0xFE, 0x01, 0x03, 0x03, 0x04, 0xFE, 0x01,
+ 0x01, 0x03, 0x04, 0xFE, 0xFE, 0x01, 0x03, 0x04,
+ 0xFC, 0xFD, 0xFF, 0x02, 0x02, 0xFC, 0xFD, 0xFF,
+ 0xFF, 0x02, 0xFC, 0xFD, 0xFD, 0xFF, 0x02, 0xFC
+};
+
+static const ByteProvider kEoB1DscMonsterFrmOffsTbl1DOSProvider = { ARRAYSIZE(kEoB1DscMonsterFrmOffsTbl1DOS), kEoB1DscMonsterFrmOffsTbl1DOS };
+
+static const byte kEoB1DscMonsterFrmOffsTbl2DOS[32] = {
+ 0x04, 0xFE, 0x01, 0x03, 0x03, 0x04, 0xFE, 0x01,
+ 0x01, 0x03, 0x04, 0xFE, 0xFE, 0x01, 0x03, 0x04,
+ 0x04, 0xFD, 0x01, 0x02, 0x02, 0x04, 0xFD, 0x01,
+ 0x01, 0x02, 0x04, 0xFD, 0xFD, 0x01, 0x02, 0x04
+};
+
+static const ByteProvider kEoB1DscMonsterFrmOffsTbl2DOSProvider = { ARRAYSIZE(kEoB1DscMonsterFrmOffsTbl2DOS), kEoB1DscMonsterFrmOffsTbl2DOS };
+
+static const uint16 kEoB1InvSlotXDOS[27] = {
+ 0x00E6, 0x0116, 0x00B5, 0x00C7, 0x00B5, 0x00C7, 0x00B5, 0x00C7,
+ 0x00B5, 0x00C7, 0x00B5, 0x00C7, 0x00B5, 0x00C7, 0x00B5, 0x00C7,
+ 0x00E1, 0x00E0, 0x00E1, 0x012A, 0x011F, 0x0115, 0x012C, 0x012C,
+ 0x012C, 0x00E4, 0x00F0
+};
+
+static const Uint16Provider kEoB1InvSlotXDOSProvider = { ARRAYSIZE(kEoB1InvSlotXDOS), kEoB1InvSlotXDOS };
+
+static const byte kEoB1InvSlotYDOS[27] = {
+ 0x74, 0x74, 0x28, 0x28, 0x3A, 0x3A, 0x4C, 0x4C,
+ 0x5E, 0x5E, 0x70, 0x70, 0x82, 0x82, 0x94, 0x94,
+ 0x38, 0x4C, 0x60, 0x37, 0x4B, 0x89, 0x5E, 0x70,
+ 0x82, 0x88, 0x88
+};
+
+static const ByteProvider kEoB1InvSlotYDOSProvider = { ARRAYSIZE(kEoB1InvSlotYDOS), kEoB1InvSlotYDOS };
+
+static const uint16 kEoB1SlotValidationFlagsDOS[27] = {
+ 0x0008, 0x0008, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF,
+ 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF,
+ 0x0001, 0x0002, 0x0004, 0x0020, 0x0040, 0x0010, 0xFFFF, 0x0080,
+ 0x0080, 0x0100, 0x0100
+};
+
+static const Uint16Provider kEoB1SlotValidationFlagsDOSProvider = { ARRAYSIZE(kEoB1SlotValidationFlagsDOS), kEoB1SlotValidationFlagsDOS };
+
+static const byte kEoB1ProjectileWeaponTypesDOS[8] = {
+ 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x12
+};
+
+static const ByteProvider kEoB1ProjectileWeaponTypesDOSProvider = { ARRAYSIZE(kEoB1ProjectileWeaponTypesDOS), kEoB1ProjectileWeaponTypesDOS };
+
+static const byte kEoB1WandTypesDOS[7] = {
+ 0x00, 0x12, 0x18, 0x28, 0x0D, 0xFF, 0x04
+};
+
+static const ByteProvider kEoB1WandTypesDOSProvider = { ARRAYSIZE(kEoB1WandTypesDOS), kEoB1WandTypesDOS };
+
+static const byte kEoB1DrawObjPosIndexDOS[20] = {
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x02, 0x00, 0x03,
+ 0x01, 0x04, 0x02, 0x03, 0x00, 0x01, 0x04, 0x01,
+ 0x03, 0x00, 0x02, 0x04
+};
+
+static const ByteProvider kEoB1DrawObjPosIndexDOSProvider = { ARRAYSIZE(kEoB1DrawObjPosIndexDOS), kEoB1DrawObjPosIndexDOS };
+
+static const byte kEoB1FlightObjFlipIndexDOS[16] = {
+ 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01,
+ 0x01, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00
+};
+
+static const ByteProvider kEoB1FlightObjFlipIndexDOSProvider = { ARRAYSIZE(kEoB1FlightObjFlipIndexDOS), kEoB1FlightObjFlipIndexDOS };
+
+static const byte kEoB1FlightObjShpMapDOS[88] = {
+ 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01,
+ 0xFF, 0xFF, 0x03, 0xFF, 0x05, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x04, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+};
+
+static const ByteProvider kEoB1FlightObjShpMapDOSProvider = { ARRAYSIZE(kEoB1FlightObjShpMapDOS), kEoB1FlightObjShpMapDOS };
+
+static const byte kEoB1FlightObjSclIndexDOS[72] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03,
+ 0xFF, 0xFF, 0x03, 0x03, 0xFF, 0xFF, 0x03, 0x03,
+ 0xFF, 0xFF, 0x03, 0x03, 0xFF, 0xFF, 0x03, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
+ 0x02, 0x02, 0x02, 0x02, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x01, 0xFF, 0x01, 0x01, 0x01, 0x01, 0x01,
+ 0x01, 0xFF, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+};
+
+static const ByteProvider kEoB1FlightObjSclIndexDOSProvider = { ARRAYSIZE(kEoB1FlightObjSclIndexDOS), kEoB1FlightObjSclIndexDOS };
+
+static const byte kEoB1DscShapeIndexDOS[36] = {
+ 0x01, 0x01, 0x04, 0x0A, 0x04, 0x08, 0x04, 0x01,
+ 0x04, 0xF8, 0x04, 0xF6, 0x00, 0x00, 0x03, 0x09,
+ 0x03, 0x07, 0x03, 0x01, 0x03, 0xF9, 0x03, 0xF7,
+ 0x02, 0x06, 0x02, 0x01, 0x02, 0xFA, 0x01, 0x05,
+ 0x01, 0x01, 0x01, 0xFB
+};
+
+static const ByteProvider kEoB1DscShapeIndexDOSProvider = { ARRAYSIZE(kEoB1DscShapeIndexDOS), kEoB1DscShapeIndexDOS };
+
+static const uint16 kEoB1DscXDOS[18] = {
+ 0xFF70, 0xFFA0, 0xFFD0, 0x0000, 0x0030, 0x0060, 0x0090, 0xFF60,
+ 0xFFB0, 0x0000, 0x0050, 0x00A0, 0xFF80, 0x0000, 0x0080, 0x0000,
+ 0x0000, 0x0000
+};
+
+static const Uint16Provider kEoB1DscXDOSProvider = { ARRAYSIZE(kEoB1DscXDOS), kEoB1DscXDOS };
+
+static const byte kEoB1DscTileIndexDOS[18] = {
+ 0x00, 0x06, 0x01, 0x05, 0x02, 0x04, 0x03, 0x07,
+ 0x0B, 0x08, 0x0A, 0x09, 0x0C, 0x0E, 0x0D, 0x0F,
+ 0x11, 0x10
+};
+
+static const ByteProvider kEoB1DscTileIndexDOSProvider = { ARRAYSIZE(kEoB1DscTileIndexDOS), kEoB1DscTileIndexDOS };
+
+static const byte kEoB1DscUnk2DOS[23] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12
+};
+
+static const ByteProvider kEoB1DscUnk2DOSProvider = { ARRAYSIZE(kEoB1DscUnk2DOS), kEoB1DscUnk2DOS };
+
+static const byte kEoB1DscDimData1DOS[324] = {
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD8, 0xD7, 0xD8, 0xD8, 0x02, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xFE, 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0x03,
+ 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xFE, 0xD8, 0x08,
+ 0xD8, 0xD8, 0xD8, 0xFE, 0xD7, 0x06, 0xD8, 0xD8,
+ 0xFA, 0x03, 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xD8, 0xFD, 0xD7, 0x13, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xF2, 0xD8, 0x14, 0xD8, 0xD8,
+ 0xD8, 0xF0, 0xD7, 0x14, 0xD8, 0xED, 0x10, 0xD8,
+ 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8, 0xEC, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0x14, 0xD8, 0xED,
+ 0xD7, 0xD8, 0xD8, 0x13, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0x06, 0xD8, 0xD8, 0xFA, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xFA, 0xD8, 0x10, 0xD8, 0xFD, 0xD7,
+ 0x13, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xF0, 0xD8, 0xD8,
+ 0xD8, 0xED, 0x10, 0xD8, 0xD8, 0x13, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFD, 0xD8,
+ 0x13, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xED, 0xD8, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8
+};
+
+static const ByteProvider kEoB1DscDimData1DOSProvider = { ARRAYSIZE(kEoB1DscDimData1DOS), kEoB1DscDimData1DOS };
+
+static const byte kEoB1DscDimData2DOS[648] = {
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x02, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x04, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x16, 0x00, 0x00, 0x03,
+ 0x00, 0x16, 0x03, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x16, 0x00, 0x08,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x02,
+ 0x16, 0x00, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x08, 0x0E,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x06, 0x10,
+ 0x00, 0x13, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x0E, 0x16,
+ 0x00, 0x16, 0x00, 0x14, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x16, 0x00, 0x00, 0x14,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x14, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x12, 0x16, 0x14, 0x16, 0x00, 0x16, 0x13, 0x16,
+ 0x16, 0x00, 0x00, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x00, 0x16,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x07, 0x0F,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x03, 0x16, 0x00, 0x16,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16
+};
+
+static const ByteProvider kEoB1DscDimData2DOSProvider = { ARRAYSIZE(kEoB1DscDimData2DOS), kEoB1DscDimData2DOS };
+
+static const byte kEoB1DscBlockMapDOS[12] = {
+ 0x02, 0x03, 0x00, 0x01, 0x01, 0x02, 0x03, 0x00,
+ 0x03, 0x00, 0x01, 0x02
+};
+
+static const ByteProvider kEoB1DscBlockMapDOSProvider = { ARRAYSIZE(kEoB1DscBlockMapDOS), kEoB1DscBlockMapDOS };
+
+static const byte kEoB1DscDimMapDOS[18] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x03
+};
+
+static const ByteProvider kEoB1DscDimMapDOSProvider = { ARRAYSIZE(kEoB1DscDimMapDOS), kEoB1DscDimMapDOS };
+
+static const byte kEoB1DscBlockIndexDOS[72] = {
+ 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xBE,
+ 0xBF, 0xC0, 0xC1, 0xC2, 0xDF, 0xE0, 0xE1, 0xFF,
+ 0x00, 0x01, 0xA3, 0xC3, 0xE3, 0x03, 0x23, 0x43,
+ 0x63, 0xC2, 0xE2, 0x02, 0x22, 0x42, 0xE1, 0x01,
+ 0x21, 0xE0, 0x00, 0x20, 0x63, 0x62, 0x61, 0x60,
+ 0x5F, 0x5E, 0x5D, 0x42, 0x41, 0x40, 0x3F, 0x3E,
+ 0x21, 0x20, 0x1F, 0x01, 0x00, 0xFF, 0x5D, 0x3D,
+ 0x1D, 0xFD, 0xDD, 0xBD, 0x9D, 0x3E, 0x1E, 0xFE,
+ 0xDE, 0xBE, 0x1F, 0xFF, 0xDF, 0x20, 0x00, 0xE0
+};
+
+static const ByteProvider kEoB1DscBlockIndexDOSProvider = { ARRAYSIZE(kEoB1DscBlockIndexDOS), kEoB1DscBlockIndexDOS };
+
+static const byte kEoB1ClassModifierFlagsDOS[15] = {
+ 0x01, 0x01, 0x05, 0x02, 0x04, 0x08, 0x05, 0x09,
+ 0x03, 0x0B, 0x0A, 0x0C, 0x07, 0x05, 0x06
+};
+
+static const ByteProvider kEoB1ClassModifierFlagsDOSProvider = { ARRAYSIZE(kEoB1ClassModifierFlagsDOS), kEoB1ClassModifierFlagsDOS };
+
+static const byte kEoB1MonsterStepTable01DOS[4] = {
+ 0xE0, 0x01, 0x20, 0xFF
+};
+
+static const ByteProvider kEoB1MonsterStepTable01DOSProvider = { ARRAYSIZE(kEoB1MonsterStepTable01DOS), kEoB1MonsterStepTable01DOS };
+
+static const byte kEoB1MonsterStepTable2DOS[8] = {
+ 0x07, 0xFA, 0x05, 0xFC, 0x03, 0xFE, 0x01, 0x00
+};
+
+static const ByteProvider kEoB1MonsterStepTable2DOSProvider = { ARRAYSIZE(kEoB1MonsterStepTable2DOS), kEoB1MonsterStepTable2DOS };
+
+static const byte kEoB1MonsterStepTable3DOS[8] = {
+ 0xF9, 0x06, 0xFB, 0x04, 0xFD, 0x02, 0xFF, 0x00
+};
+
+static const ByteProvider kEoB1MonsterStepTable3DOSProvider = { ARRAYSIZE(kEoB1MonsterStepTable3DOS), kEoB1MonsterStepTable3DOS };
+
+static const byte kEoB1MonsterCloseAttPosTable1DOS[4] = {
+ 0x00, 0x01, 0x03, 0x02
+};
+
+static const ByteProvider kEoB1MonsterCloseAttPosTable1DOSProvider = { ARRAYSIZE(kEoB1MonsterCloseAttPosTable1DOS), kEoB1MonsterCloseAttPosTable1DOS };
+
+static const byte kEoB1MonsterCloseAttPosTable21DOS[8] = {
+ 0x00, 0x01, 0x02, 0x03, 0x00, 0x02, 0x01, 0x03
+};
+
+static const ByteProvider kEoB1MonsterCloseAttPosTable21DOSProvider = { ARRAYSIZE(kEoB1MonsterCloseAttPosTable21DOS), kEoB1MonsterCloseAttPosTable21DOS };
+
+static const byte kEoB1MonsterCloseAttChkTable1DOS[16] = {
+ 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
+ 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00
+};
+
+static const ByteProvider kEoB1MonsterCloseAttChkTable1DOSProvider = { ARRAYSIZE(kEoB1MonsterCloseAttChkTable1DOS), kEoB1MonsterCloseAttChkTable1DOS };
+
+static const byte kEoB1MonsterCloseAttChkTable2DOS[16] = {
+ 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01,
+ 0x01, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00
+};
+
+static const ByteProvider kEoB1MonsterCloseAttChkTable2DOSProvider = { ARRAYSIZE(kEoB1MonsterCloseAttChkTable2DOS), kEoB1MonsterCloseAttChkTable2DOS };
+
+static const byte kEoB1MonsterCloseAttDstTable1DOS[16] = {
+ 0x02, 0x03, 0x00, 0x01, 0x01, 0x02, 0x03, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x03, 0x00, 0x01, 0x02
+};
+
+static const ByteProvider kEoB1MonsterCloseAttDstTable1DOSProvider = { ARRAYSIZE(kEoB1MonsterCloseAttDstTable1DOS), kEoB1MonsterCloseAttDstTable1DOS };
+
+static const byte kEoB1MonsterCloseAttDstTable2DOS[48] = {
+ 0x01, 0x00, 0x03, 0x02, 0x05, 0x04, 0x00, 0x01,
+ 0x02, 0x03, 0x04, 0x05, 0x05, 0x03, 0x01, 0x04,
+ 0x02, 0x00, 0x01, 0x03, 0x05, 0x00, 0x02, 0x04,
+ 0x04, 0x05, 0x02, 0x03, 0x00, 0x01, 0x05, 0x04,
+ 0x03, 0x02, 0x01, 0x00, 0x00, 0x02, 0x04, 0x01,
+ 0x03, 0x05, 0x04, 0x02, 0x00, 0x05, 0x03, 0x01
+};
+
+static const ByteProvider kEoB1MonsterCloseAttDstTable2DOSProvider = { ARRAYSIZE(kEoB1MonsterCloseAttDstTable2DOS), kEoB1MonsterCloseAttDstTable2DOS };
+
+static const byte kEoB1MonsterProximityTableDOS[32] = {
+ 0x02, 0x03, 0x00, 0x01, 0x03, 0x02, 0x01, 0x00,
+ 0x00, 0x02, 0x01, 0x03, 0x02, 0x00, 0x03, 0x01,
+ 0x01, 0x00, 0x03, 0x02, 0x00, 0x01, 0x02, 0x03,
+ 0x03, 0x01, 0x00, 0x02, 0x01, 0x03, 0x02, 0x00
+};
+
+static const ByteProvider kEoB1MonsterProximityTableDOSProvider = { ARRAYSIZE(kEoB1MonsterProximityTableDOS), kEoB1MonsterProximityTableDOS };
+
+static const byte kEoB1FindBlockMonstersTableDOS[64] = {
+ 0x04, 0x02, 0x01, 0x03, 0x04, 0x03, 0x00, 0x02,
+ 0x04, 0x00, 0x03, 0x01, 0x04, 0x01, 0x02, 0x00,
+ 0x04, 0x01, 0x02, 0x03, 0x04, 0x00, 0x03, 0x02,
+ 0x04, 0x03, 0x00, 0x01, 0x04, 0x02, 0x01, 0x00,
+ 0x04, 0x02, 0x01, 0x03, 0x04, 0x03, 0x00, 0x02,
+ 0x04, 0x00, 0x03, 0x01, 0x04, 0x01, 0x02, 0x00,
+ 0x04, 0x01, 0x02, 0x03, 0x04, 0x00, 0x03, 0x02,
+ 0x04, 0x03, 0x00, 0x01, 0x04, 0x02, 0x01, 0x00
+};
+
+static const ByteProvider kEoB1FindBlockMonstersTableDOSProvider = { ARRAYSIZE(kEoB1FindBlockMonstersTableDOS), kEoB1FindBlockMonstersTableDOS };
+
+static const byte kEoB1MonsterDirChangeTableDOS[48] = {
+ 0xFF, 0x06, 0x02, 0xFF, 0x04, 0x05, 0x03, 0xFF,
+ 0x00, 0x07, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xDF, 0xFF, 0xE0, 0xFF, 0xE1, 0xFF, 0xFF, 0xFF,
+ 0x01, 0x00, 0x1F, 0x00, 0x20, 0x00, 0x21, 0x00,
+ 0xC0, 0xFF, 0xA0, 0xFF, 0x02, 0x00, 0x03, 0x00,
+ 0x40, 0x00, 0x60, 0x00, 0xFE, 0xFF, 0xFD, 0xFF
+};
+
+static const ByteProvider kEoB1MonsterDirChangeTableDOSProvider = { ARRAYSIZE(kEoB1MonsterDirChangeTableDOS), kEoB1MonsterDirChangeTableDOS };
+
+static const uint16 kEoB1EncodeMonsterDefsDOS[168] = {
+ 0x0000, 0x0000, 0x0007, 0x0060, 0x0007, 0x0028, 0x000C, 0x0038,
+ 0x0013, 0x0028, 0x000C, 0x0038, 0x001F, 0x0000, 0x0007, 0x0060,
+ 0x0000, 0x0060, 0x0007, 0x0060, 0x0007, 0x0060, 0x0007, 0x0060,
+ 0x000E, 0x0060, 0x0005, 0x0038, 0x0007, 0x0000, 0x0007, 0x0028,
+ 0x000E, 0x0000, 0x0007, 0x0028, 0x0013, 0x0060, 0x0005, 0x0038,
+ 0x0018, 0x0060, 0x0005, 0x0038, 0x001D, 0x0060, 0x0005, 0x0038,
+ 0x000E, 0x0098, 0x0003, 0x0020, 0x0011, 0x00A0, 0x0004, 0x0018,
+ 0x0015, 0x00A0, 0x0004, 0x0018, 0x0019, 0x0098, 0x0003, 0x0020,
+ 0x001C, 0x0098, 0x0003, 0x0020, 0x001F, 0x0098, 0x0003, 0x0020,
+ 0x0000, 0x0000, 0x0007, 0x0060, 0x0007, 0x0000, 0x0007, 0x0060,
+ 0x000E, 0x0000, 0x0007, 0x0060, 0x0015, 0x0000, 0x0007, 0x0060,
+ 0x001C, 0x0000, 0x0007, 0x0060, 0x0000, 0x0060, 0x0007, 0x0060,
+ 0x0007, 0x0060, 0x0005, 0x0038, 0x000C, 0x0060, 0x0005, 0x0038,
+ 0x0011, 0x0060, 0x0005, 0x0038, 0x0016, 0x0060, 0x0005, 0x0038,
+ 0x001B, 0x0060, 0x0005, 0x0038, 0x0020, 0x0060, 0x0005, 0x0038,
+ 0x0007, 0x0098, 0x0003, 0x0020, 0x000A, 0x0098, 0x0003, 0x0020,
+ 0x000D, 0x0098, 0x0003, 0x0020, 0x0010, 0x0098, 0x0003, 0x0020,
+ 0x0013, 0x0098, 0x0003, 0x0020, 0x0016, 0x0098, 0x0003, 0x0020,
+ 0x0000, 0x0000, 0x000A, 0x0058, 0x000A, 0x0000, 0x000A, 0x0058,
+ 0x0014, 0x0000, 0x000A, 0x0058, 0x001E, 0x0000, 0x000A, 0x0058,
+ 0x0000, 0x0058, 0x000A, 0x0058, 0x000A, 0x0058, 0x000A, 0x0058
+};
+
+static const Uint16Provider kEoB1EncodeMonsterDefsDOSProvider = { ARRAYSIZE(kEoB1EncodeMonsterDefsDOS), kEoB1EncodeMonsterDefsDOS };
+
+static const EoBCharacter kEoB1NpcPresetsDOS[9] = {
+ { 0x00, 0x01, "Anya",
+ 18, 18, 59, 59, 5, 5, 11, 11, 14, 14, 16, 16, 9, 9,
+ 45, 45, 10, 0, 1, 0, 2, -1, 100, { 4, 0, 0 },
+ { 0x00001F40, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Beohram",
+ 17, 17, 0, 0, 9, 9, 15, 15, 13, 13, 18, 18, 17, 17,
+ 55, 55, 10, 0, 0, 0, 0, -2, 100, { 7, 0, 0 },
+ { 0x000130B0, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Kirath",
+ 11, 11, 0, 0, 17, 17, 13, 13, 18, 18, 8, 8, 12, 12,
+ 20, 20, 10, 0, 4, 3, 4, -3, 100, { 7, 0, 0 },
+ { 0x00011170, 0x00000000, 0x00000000 }, 0x00B3126B,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Ileria",
+ 10, 10, 0, 0, 12, 12, 9, 9, 15, 15, 17, 17, 17, 17,
+ 52, 52, 10, 0, 4, 4, 0, -4, 100, { 6, 0, 0 },
+ { 0x00004E20, 0x00000000, 0x00000000 }, 0xFFFFFFFF,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Tyrra",
+ 16, 16, 0, 0, 14, 14, 16, 16, 18, 18, 17, 17, 7, 7,
+ 45, 45, 10, 0, 1, 1, 2, -5, 100, { 6, 0, 0 },
+ { 0x0000CF08, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Tod Uphill",
+ 17, 17, 0, 0, 11, 11, 14, 14, 19, 19, 18, 18, 16, 16,
+ 32, 32, 10, 0, 10, 5, 5, -6, 100, { 5, 0, 0 },
+ { 0x00002D3F, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Taghor",
+ 17, 17, 0, 0, 11, 11, 15, 15, 15, 15, 19, 19, 9, 9,
+ 3, 45, 3, 0, 6, 0, 1, -7, 25, { 5, 0, 0 },
+ { 0x00003F6A, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0024, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0029, 0x0000, 0x002B, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Dohrum",
+ 18, 18, 29, 29, 13, 13, 11, 11, 16, 16, 17, 17, 14, 14,
+ 28, 28, 10, 0, 6, 0, 0, -8, 100, { 3, 0, 0 },
+ { 0x000013A0, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0024, 0x0000, 0x0030, 0x0037, 0x0037, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0029, 0x0000, 0x002B, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Keirgar",
+ 18, 18, 92, 92, 15, 15, 15, 15, 12, 12, 19, 19, 17, 17,
+ 3, 45, 3, 0, 6, 0, 1, -9, 25, { 5, 0, 0 },
+ { 0x00001F40, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } }
+};
+
+static const EoBCharacterProvider kEoB1NpcPresetsDOSProvider = { ARRAYSIZE(kEoB1NpcPresetsDOS), kEoB1NpcPresetsDOS };
+
diff --git a/devtools/create_kyradat/resources/eob1_dos_english.h b/devtools/create_kyradat/resources/eob1_dos_english.h
new file mode 100644
index 0000000000..8a9dfebc8f
--- /dev/null
+++ b/devtools/create_kyradat/resources/eob1_dos_english.h
@@ -0,0 +1,891 @@
+static const char *const kEoB1ChargenStrings1DOSEnglish[9] = {
+ "Your party is\rcomplete. Select\rthe PLAY button\ror press 'P' to\rstart the game.",
+ " ",
+ "AC\rHP\rLVL",
+ "%s\r%d\r%d\r%d\r%d\r%d",
+ "%d\r%d",
+ "%d",
+ "%d/%d",
+ "%d/%d/%d",
+ "Select the box of\rthe character you\rwish to create or\rview."
+};
+
+static const StringListProvider kEoB1ChargenStrings1DOSEnglishProvider = { ARRAYSIZE(kEoB1ChargenStrings1DOSEnglish), kEoB1ChargenStrings1DOSEnglish };
+
+static const char *const kEoB1ChargenStrings2DOSEnglish[12] = {
+ "%s",
+ "%d",
+ "%s",
+ "%d",
+ "%d",
+ "%d",
+ "%s",
+ "%d",
+ "SELECT RACE:",
+ "SELECT CLASS:",
+ "SELECT ALIGNMENT:",
+ "Name:"
+};
+
+static const StringListProvider kEoB1ChargenStrings2DOSEnglishProvider = { ARRAYSIZE(kEoB1ChargenStrings2DOSEnglish), kEoB1ChargenStrings2DOSEnglish };
+
+static const char *const kEoB1ChargenStatStringsDOSEnglish[12] = {
+ "STR",
+ "INT",
+ "WIS",
+ "DEX",
+ "CON",
+ "CHA",
+ "STRENGTH",
+ "INTELLIGENCE",
+ "WISDOM",
+ "DEXTERITY",
+ "CONSTITUTION",
+ "CHARISMA"
+};
+
+static const StringListProvider kEoB1ChargenStatStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1ChargenStatStringsDOSEnglish), kEoB1ChargenStatStringsDOSEnglish };
+
+static const char *const kEoB1ChargenRaceSexStringsDOSEnglish[12] = {
+ "HUMAN MALE",
+ "HUMAN FEMALE",
+ "ELF MALE",
+ "ELF FEMALE",
+ "HALF-ELF MALE",
+ "HALF-ELF FEMALE",
+ "DWARF MALE",
+ "DWARF FEMALE",
+ "GNOME MALE",
+ "GNOME FEMALE",
+ "HALFLING MALE",
+ "HALFLING FEMALE"
+};
+
+static const StringListProvider kEoB1ChargenRaceSexStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1ChargenRaceSexStringsDOSEnglish), kEoB1ChargenRaceSexStringsDOSEnglish };
+
+static const char *const kEoB1ChargenClassStringsDOSEnglish[21] = {
+ "FIGHTER",
+ "RANGER",
+ "PALADIN",
+ "MAGE",
+ "CLERIC",
+ "THIEF",
+ "FIGHTER/CLERIC",
+ "FIGHTER/THIEF",
+ "FIGHTER/MAGE",
+ "FIGHTER/MAGE/THIEF",
+ "THIEF/MAGE",
+ "CLERIC/THIEF",
+ "FIGHTER/CLERIC/MAGE",
+ "RANGER/CLERIC",
+ "CLERIC/MAGE",
+ "FIGHTER",
+ "MAGE",
+ "CLERIC",
+ "THIEF",
+ "PALADIN",
+ "RANGER"
+};
+
+static const StringListProvider kEoB1ChargenClassStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1ChargenClassStringsDOSEnglish), kEoB1ChargenClassStringsDOSEnglish };
+
+static const char *const kEoB1ChargenAlignmentStringsDOSEnglish[9] = {
+ "LAWFUL GOOD",
+ "NEUTRAL GOOD",
+ "CHAOTIC GOOD",
+ "LAWFUL NEUTRAL",
+ "TRUE NEUTRAL",
+ "CHAOTIC NEUTRAL",
+ "LAWFUL EVIL",
+ "NEUTRAL EVIL",
+ "CHAOTIC EVIL"
+};
+
+static const StringListProvider kEoB1ChargenAlignmentStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1ChargenAlignmentStringsDOSEnglish), kEoB1ChargenAlignmentStringsDOSEnglish };
+
+static const char *const kEoB1ChargenEnterGameStringsDOSEnglish[1] = {
+ " Entering game.\r Please wait."
+};
+
+static const StringListProvider kEoB1ChargenEnterGameStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1ChargenEnterGameStringsDOSEnglish), kEoB1ChargenEnterGameStringsDOSEnglish };
+
+static const char *const kEoB1MainMenuStringsDOSEnglish[3] = {
+ "LOAD GAME IN PROGRESS\r",
+ "START A NEW PARTY\r",
+ "EXIT TO DOS\r"
+};
+
+static const StringListProvider kEoB1MainMenuStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1MainMenuStringsDOSEnglish), kEoB1MainMenuStringsDOSEnglish };
+
+static const char *const kEoB1BonusStringsDOSEnglish[3] = {
+ "Congratulations on completing all 12 Beholder Bonuses.\r\rThe names of the character in your winning Beholder Bonus party are:\r\r",
+ "\r",
+ "\r\rPassword: %04x\r"
+};
+
+static const StringListProvider kEoB1BonusStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1BonusStringsDOSEnglish), kEoB1BonusStringsDOSEnglish };
+
+static const char *const kEoB1TurnUndeadStringDOSEnglish[1] = {
+ "\x06\x06""%s uses the power to turn undead!""\x06\x0F""\r"
+};
+
+static const StringListProvider kEoB1TurnUndeadStringDOSEnglishProvider = { ARRAYSIZE(kEoB1TurnUndeadStringDOSEnglish), kEoB1TurnUndeadStringDOSEnglish };
+
+static const char *const kEoB1Npc0StringsDOSEnglish[2] = {
+ "\r I wish you luck in your travels.",
+ "Which should be resurrected?"
+};
+
+static const StringListProvider kEoB1Npc0StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc0StringsDOSEnglish), kEoB1Npc0StringsDOSEnglish };
+
+static const char *const kEoB1Npc11StringsDOSEnglish[3] = {
+ "Tend his wounds",
+ "Talk",
+ "Leave"
+};
+
+static const StringListProvider kEoB1Npc11StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc11StringsDOSEnglish), kEoB1Npc11StringsDOSEnglish };
+
+static const char *const kEoB1Npc12StringsDOSEnglish[2] = {
+ "Tend his wounds",
+ "Leave"
+};
+
+static const StringListProvider kEoB1Npc12StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc12StringsDOSEnglish), kEoB1Npc12StringsDOSEnglish };
+
+static const char *const kEoB1Npc21StringsDOSEnglish[2] = {
+ "Hear proposal",
+ "Leave"
+};
+
+static const StringListProvider kEoB1Npc21StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc21StringsDOSEnglish), kEoB1Npc21StringsDOSEnglish };
+
+static const char *const kEoB1Npc22StringsDOSEnglish[2] = {
+ "Help him",
+ "Leave"
+};
+
+static const StringListProvider kEoB1Npc22StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc22StringsDOSEnglish), kEoB1Npc22StringsDOSEnglish };
+
+static const char *const kEoB1Npc31StringsDOSEnglish[2] = {
+ "Heal Party",
+ "Leave"
+};
+
+static const StringListProvider kEoB1Npc31StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc31StringsDOSEnglish), kEoB1Npc31StringsDOSEnglish };
+
+static const char *const kEoB1Npc32StringsDOSEnglish[3] = {
+ "Heal Party",
+ "Resurrect Dead",
+ "Leave"
+};
+
+static const StringListProvider kEoB1Npc32StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc32StringsDOSEnglish), kEoB1Npc32StringsDOSEnglish };
+
+static const char *const kEoB1Npc4StringsDOSEnglish[2] = {
+ "Attack",
+ "Bribe"
+};
+
+static const StringListProvider kEoB1Npc4StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc4StringsDOSEnglish), kEoB1Npc4StringsDOSEnglish };
+
+static const char *const kEoB1Npc5StringsDOSEnglish[3] = {
+ "Kill her",
+ "Hear her out",
+ "Let her go"
+};
+
+static const StringListProvider kEoB1Npc5StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc5StringsDOSEnglish), kEoB1Npc5StringsDOSEnglish };
+
+static const char *const kEoB1Npc6StringsDOSEnglish[2] = {
+ "Surrender",
+ "Attack"
+};
+
+static const StringListProvider kEoB1Npc6StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc6StringsDOSEnglish), kEoB1Npc6StringsDOSEnglish };
+
+static const char *const kEoB1Npc7StringsDOSEnglish[3] = {
+ "Free Him",
+ "Kill Him",
+ "Leave"
+};
+
+static const StringListProvider kEoB1Npc7StringsDOSEnglishProvider = { ARRAYSIZE(kEoB1Npc7StringsDOSEnglish), kEoB1Npc7StringsDOSEnglish };
+
+static const char *const kEoB1PryDoorStringsDOSEnglish[7] = {
+ "Nobody is able to force the door.\r",
+ "The party forces the door.\r",
+ "%s forces the door!\r",
+ "The party tries to force the door and fails.\r",
+ "You can't put that item there.\r",
+ "The item is too large to fit.\r",
+ "No one is able to pry this door open.\r"
+};
+
+static const StringListProvider kEoB1PryDoorStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1PryDoorStringsDOSEnglish), kEoB1PryDoorStringsDOSEnglish };
+
+static const char *const kEoB1WarningStringsDOSEnglish[3] = {
+ "You can't go that way.\r",
+ "%s isn't capable of eating food!\r",
+ "You may only eat food!\r"
+};
+
+static const StringListProvider kEoB1WarningStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1WarningStringsDOSEnglish), kEoB1WarningStringsDOSEnglish };
+
+static const char *const kEoB1ItemSuffixStringsRingsDOSEnglish[4] = {
+ "Adornment",
+ "Wizardry",
+ "Sustenance",
+ "Feather Fall"
+};
+
+static const StringListProvider kEoB1ItemSuffixStringsRingsDOSEnglishProvider = { ARRAYSIZE(kEoB1ItemSuffixStringsRingsDOSEnglish), kEoB1ItemSuffixStringsRingsDOSEnglish };
+
+static const char *const kEoB1ItemSuffixStringsPotionsDOSEnglish[8] = {
+ "Giant Strength",
+ "Healing",
+ "Extra Healing",
+ "Poison",
+ "Vitality",
+ "Speed",
+ "Invisibility",
+ "Cure Poison"
+};
+
+static const StringListProvider kEoB1ItemSuffixStringsPotionsDOSEnglishProvider = { ARRAYSIZE(kEoB1ItemSuffixStringsPotionsDOSEnglish), kEoB1ItemSuffixStringsPotionsDOSEnglish };
+
+static const char *const kEoB1ItemSuffixStringsWandsDOSEnglish[7] = {
+ "Stick",
+ "Lightning",
+ "Frost",
+ "Curing",
+ "Fireball",
+ "Silvias",
+ "Magic Missile"
+};
+
+static const StringListProvider kEoB1ItemSuffixStringsWandsDOSEnglishProvider = { ARRAYSIZE(kEoB1ItemSuffixStringsWandsDOSEnglish), kEoB1ItemSuffixStringsWandsDOSEnglish };
+
+static const char *const kEoB1RipItemStringsDOSEnglish[3] = {
+ "%s has lost her ",
+ "%s has lost his ",
+ ".\r"
+};
+
+static const StringListProvider kEoB1RipItemStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1RipItemStringsDOSEnglish), kEoB1RipItemStringsDOSEnglish };
+
+static const char *const kEoB1CursedStringDOSEnglish[1] = {
+ "Cursed %s %d"
+};
+
+static const StringListProvider kEoB1CursedStringDOSEnglishProvider = { ARRAYSIZE(kEoB1CursedStringDOSEnglish), kEoB1CursedStringDOSEnglish };
+
+static const char *const kEoB1MagicObjectStringsDOSEnglish[5] = {
+ "Mage Scroll",
+ "Cleric Scroll",
+ "Ring",
+ "Potion",
+ "Wand"
+};
+
+static const StringListProvider kEoB1MagicObjectStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1MagicObjectStringsDOSEnglish), kEoB1MagicObjectStringsDOSEnglish };
+
+static const char *const kEoB1MagicObjectString5DOSEnglish[1] = {
+ "Stick"
+};
+
+static const StringListProvider kEoB1MagicObjectString5DOSEnglishProvider = { ARRAYSIZE(kEoB1MagicObjectString5DOSEnglish), kEoB1MagicObjectString5DOSEnglish };
+
+static const char *const kEoB1PatternSuffixDOSEnglish[1] = {
+ "%s of %s"
+};
+
+static const StringListProvider kEoB1PatternSuffixDOSEnglishProvider = { ARRAYSIZE(kEoB1PatternSuffixDOSEnglish), kEoB1PatternSuffixDOSEnglish };
+
+static const char *const kEoB1PatternGrFix1DOSEnglish[1] = {
+ "%s of %s"
+};
+
+static const StringListProvider kEoB1PatternGrFix1DOSEnglishProvider = { ARRAYSIZE(kEoB1PatternGrFix1DOSEnglish), kEoB1PatternGrFix1DOSEnglish };
+
+static const char *const kEoB1PatternGrFix2DOSEnglish[1] = {
+ "%s of %s"
+};
+
+static const StringListProvider kEoB1PatternGrFix2DOSEnglishProvider = { ARRAYSIZE(kEoB1PatternGrFix2DOSEnglish), kEoB1PatternGrFix2DOSEnglish };
+
+static const char *const kEoB1ValidateArmorStringDOSEnglish[1] = {
+ "%s can't wear that type of armor.\r"
+};
+
+static const StringListProvider kEoB1ValidateArmorStringDOSEnglishProvider = { ARRAYSIZE(kEoB1ValidateArmorStringDOSEnglish), kEoB1ValidateArmorStringDOSEnglish };
+
+static const char *const kEoB1ValidateNoDropStringDOSEnglish[1] = {
+ "You cant put that item there.\r"
+};
+
+static const StringListProvider kEoB1ValidateNoDropStringDOSEnglishProvider = { ARRAYSIZE(kEoB1ValidateNoDropStringDOSEnglish), kEoB1ValidateNoDropStringDOSEnglish };
+
+static const char *const kEoB1PotionStringsDOSEnglish[2] = {
+ "poisoned",
+ "%s feels %s!\r"
+};
+
+static const StringListProvider kEoB1PotionStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1PotionStringsDOSEnglish), kEoB1PotionStringsDOSEnglish };
+
+static const char *const kEoB1WandStringsDOSEnglish[2] = {
+ "The wand has no apparent magical effect\r",
+ "no effect.\r"
+};
+
+static const StringListProvider kEoB1WandStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1WandStringsDOSEnglish), kEoB1WandStringsDOSEnglish };
+
+static const char *const kEoB1ItemMisuseStringsDOSEnglish[3] = {
+ " can not use this item.\r",
+ "This item automatically used when worn.\r",
+ "This item is not used in this way.\r"
+};
+
+static const StringListProvider kEoB1ItemMisuseStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1ItemMisuseStringsDOSEnglish), kEoB1ItemMisuseStringsDOSEnglish };
+
+static const char *const kEoB1TakenStringsDOSEnglish[1] = {
+ " taken.\r"
+};
+
+static const StringListProvider kEoB1TakenStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1TakenStringsDOSEnglish), kEoB1TakenStringsDOSEnglish };
+
+static const char *const kEoB1PotionEffectStringsDOSEnglish[8] = {
+ "much stronger",
+ "better",
+ "much better",
+ "ill for a moment",
+ "no longer hungry",
+ "fast and agile",
+ "transparent",
+ "better"
+};
+
+static const StringListProvider kEoB1PotionEffectStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1PotionEffectStringsDOSEnglish), kEoB1PotionEffectStringsDOSEnglish };
+
+static const char *const kEoB1YesNoStringsDOSEnglish[2] = {
+ "yes",
+ "no"
+};
+
+static const StringListProvider kEoB1YesNoStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1YesNoStringsDOSEnglish), kEoB1YesNoStringsDOSEnglish };
+
+static const char *const kEoB1MoreStringsDOSEnglish[1] = {
+ "MORE"
+};
+
+static const StringListProvider kEoB1MoreStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1MoreStringsDOSEnglish), kEoB1MoreStringsDOSEnglish };
+
+static const char *const kEoB1NpcMaxStringsDOSEnglish[1] = {
+ "You may only have six characters in your party. Select the one you wish to drop."
+};
+
+static const StringListProvider kEoB1NpcMaxStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1NpcMaxStringsDOSEnglish), kEoB1NpcMaxStringsDOSEnglish };
+
+static const char *const kEoB1NpcJoinStringsDOSEnglish[1] = {
+ "%s joins the party.\r"
+};
+
+static const StringListProvider kEoB1NpcJoinStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1NpcJoinStringsDOSEnglish), kEoB1NpcJoinStringsDOSEnglish };
+
+static const char *const kEoB1CancelStringsDOSEnglish[1] = {
+ "CANCEL"
+};
+
+static const StringListProvider kEoB1CancelStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1CancelStringsDOSEnglish), kEoB1CancelStringsDOSEnglish };
+
+static const char *const kEoB1MenuStringsMainDOSEnglish[8] = {
+ "Select Option:",
+ "Rest Party",
+ "Memorize Spells",
+ "Pray for Spells",
+ "Scribe Scrolls",
+ "Preferences",
+ "Game Options",
+ "Exit"
+};
+
+static const StringListProvider kEoB1MenuStringsMainDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsMainDOSEnglish), kEoB1MenuStringsMainDOSEnglish };
+
+static const char *const kEoB1MenuStringsSaveLoadDOSEnglish[8] = {
+ "Load Game",
+ "Save Game",
+ "Drop Character",
+ "Quit Game",
+ "Game Options:",
+ "\r Game saved.",
+ "\r Save game\r failure!",
+ "\r Load game\r failure!"
+};
+
+static const StringListProvider kEoB1MenuStringsSaveLoadDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsSaveLoadDOSEnglish), kEoB1MenuStringsSaveLoadDOSEnglish };
+
+static const char *const kEoB1MenuStringsOnOffDOSEnglish[2] = {
+ "ON",
+ "OFF"
+};
+
+static const StringListProvider kEoB1MenuStringsOnOffDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsOnOffDOSEnglish), kEoB1MenuStringsOnOffDOSEnglish };
+
+static const char *const kEoB1MenuStringsSpellsDOSEnglish[17] = {
+ "\r\r Select a character\r from your party who\r would like to learn\r spells.",
+ "\r Your Paladin is \r too low a level\r for spells.",
+ "\r\r The Mage has no\r Spell Book!",
+ "\r\r\r Select a character\r from your party\r who would like to\r pray for spells.",
+ "\r You don't have\r any Cleric able\r to pray in your\r party.",
+ "\r You don't have\r any Mage able to\r learn spells.",
+ " An unconscious\r or dead Mage\r cannot memorize\r spells.",
+ " An unconscious\r or dead Cleric\r cannot pray for\r spells.",
+ "1",
+ "2",
+ "3",
+ "4",
+ "5",
+ "Clear",
+ "Spells Available:",
+ "Yes",
+ "No"
+};
+
+static const StringListProvider kEoB1MenuStringsSpellsDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsSpellsDOSEnglish), kEoB1MenuStringsSpellsDOSEnglish };
+
+static const char *const kEoB1MenuStringsRestDOSEnglish[5] = {
+ "\rWill your healers\rheal the party?",
+ " Someone is still\r injured. Rest\r until healed?",
+ "Resting party.",
+ "\r All characters\r are fully\r rested.",
+ " Your party needs\r to rest to gain\r spells."
+};
+
+static const StringListProvider kEoB1MenuStringsRestDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsRestDOSEnglish), kEoB1MenuStringsRestDOSEnglish };
+
+static const char *const kEoB1MenuStringsDropDOSEnglish[1] = {
+ " You cannot have\r less than four\r characters."
+};
+
+static const StringListProvider kEoB1MenuStringsDropDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsDropDOSEnglish), kEoB1MenuStringsDropDOSEnglish };
+
+static const char *const kEoB1MenuStringsExitDOSEnglish[1] = {
+ " Are you sure you\r wish to exit the\r game?"
+};
+
+static const StringListProvider kEoB1MenuStringsExitDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsExitDOSEnglish), kEoB1MenuStringsExitDOSEnglish };
+
+static const char *const kEoB1MenuStringsStarveDOSEnglish[1] = {
+ " Your party is\r starving. Do you\r wish to continue\r resting?"
+};
+
+static const StringListProvider kEoB1MenuStringsStarveDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsStarveDOSEnglish), kEoB1MenuStringsStarveDOSEnglish };
+
+static const char *const kEoB1MenuStringsScribeDOSEnglish[5] = {
+ "Select the scroll(s)\ryou wish to scribe.",
+ "\r\r\r Select a Mage\r from your party\r who would like to\r scribe spells.",
+ " You don't have\r any scolls to be\r scribed.",
+ " You don't have\r any scrolls that\r this Mage needs.",
+ "\r You don't have\r any Mage able to\r scribe scrolls."
+};
+
+static const StringListProvider kEoB1MenuStringsScribeDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsScribeDOSEnglish), kEoB1MenuStringsScribeDOSEnglish };
+
+static const char *const kEoB1MenuStringsDrop2DOSEnglish[3] = {
+ " Select the\r character you\r wish to drop.",
+ " Are you sure you\r wish to SAVE the\r game?",
+ " Are you sure you\r wish to LOAD a\r saved game?"
+};
+
+static const StringListProvider kEoB1MenuStringsDrop2DOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsDrop2DOSEnglish), kEoB1MenuStringsDrop2DOSEnglish };
+
+static const char *const kEoB1MenuStringsHeadDOSEnglish[3] = {
+ "Camp:",
+ "Preferences:",
+ "Game Options:"
+};
+
+static const StringListProvider kEoB1MenuStringsHeadDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsHeadDOSEnglish), kEoB1MenuStringsHeadDOSEnglish };
+
+static const char *const kEoB1MenuStringsPoisonDOSEnglish[1] = {
+ "Poisoned party\rmembers will die!\rRest anyway?"
+};
+
+static const StringListProvider kEoB1MenuStringsPoisonDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsPoisonDOSEnglish), kEoB1MenuStringsPoisonDOSEnglish };
+
+static const char *const kEoB1MenuStringsMgcDOSEnglish[2] = {
+ "%-18s %1d",
+ "%d of %d Remaining. "
+};
+
+static const StringListProvider kEoB1MenuStringsMgcDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsMgcDOSEnglish), kEoB1MenuStringsMgcDOSEnglish };
+
+static const char *const kEoB1MenuStringsPrefsDOSEnglish[4] = {
+ "Tunes are %-3s",
+ "Sounds are %-3s",
+ "Bar Graphs are %-3s",
+ "Mouse is %-3s"
+};
+
+static const StringListProvider kEoB1MenuStringsPrefsDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsPrefsDOSEnglish), kEoB1MenuStringsPrefsDOSEnglish };
+
+static const char *const kEoB1MenuStringsRest2DOSEnglish[4] = {
+ "%s gained %s.\r",
+ "%s memorized %s.\r",
+ "%s casts healing on %s.\r",
+ "Hours rested: %-4d"
+};
+
+static const StringListProvider kEoB1MenuStringsRest2DOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsRest2DOSEnglish), kEoB1MenuStringsRest2DOSEnglish };
+
+static const char *const kEoB1MenuStringsRest4DOSEnglish[1] = {
+ "\rYou can't rest here, monsters are near."
+};
+
+static const StringListProvider kEoB1MenuStringsRest4DOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsRest4DOSEnglish), kEoB1MenuStringsRest4DOSEnglish };
+
+static const char *const kEoB1MenuStringsDefeatDOSEnglish[1] = {
+ "All of your party has been defeated. The minions of evil will be able to carry out their plans unhindered!\r"
+};
+
+static const StringListProvider kEoB1MenuStringsDefeatDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuStringsDefeatDOSEnglish), kEoB1MenuStringsDefeatDOSEnglish };
+
+static const char *const kEoB1MenuYesNoStringsDOSEnglish[2] = {
+ "Yes",
+ "No"
+};
+
+static const StringListProvider kEoB1MenuYesNoStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1MenuYesNoStringsDOSEnglish), kEoB1MenuYesNoStringsDOSEnglish };
+
+static const char *const kEoB1CharGuiStringsHpDOSEnglish[2] = {
+ "HP",
+ "%3d of %-3d"
+};
+
+static const StringListProvider kEoB1CharGuiStringsHpDOSEnglishProvider = { ARRAYSIZE(kEoB1CharGuiStringsHpDOSEnglish), kEoB1CharGuiStringsHpDOSEnglish };
+
+static const char *const kEoB1CharGuiStringsWp1DOSEnglish[2] = {
+ "MISS",
+ "HACK"
+};
+
+static const StringListProvider kEoB1CharGuiStringsWp1DOSEnglishProvider = { ARRAYSIZE(kEoB1CharGuiStringsWp1DOSEnglish), kEoB1CharGuiStringsWp1DOSEnglish };
+
+static const char *const kEoB1CharGuiStringsWrDOSEnglish[4] = {
+ "CAN'T",
+ "REACH",
+ "NO",
+ "AMMO"
+};
+
+static const StringListProvider kEoB1CharGuiStringsWrDOSEnglishProvider = { ARRAYSIZE(kEoB1CharGuiStringsWrDOSEnglish), kEoB1CharGuiStringsWrDOSEnglish };
+
+static const char *const kEoB1CharGuiStringsSt1DOSEnglish[6] = {
+ "Swapping",
+ "DEAD",
+ "UNCONSCIOUS",
+ "POISON (SLOW)",
+ "POISONED",
+ "PARALYZED"
+};
+
+static const StringListProvider kEoB1CharGuiStringsSt1DOSEnglishProvider = { ARRAYSIZE(kEoB1CharGuiStringsSt1DOSEnglish), kEoB1CharGuiStringsSt1DOSEnglish };
+
+static const char *const kEoB1CharGuiStringsInDOSEnglish[4] = {
+ "CHARACTER INFO",
+ "ARMOR CLASS",
+ "EXP",
+ "LVL"
+};
+
+static const StringListProvider kEoB1CharGuiStringsInDOSEnglishProvider = { ARRAYSIZE(kEoB1CharGuiStringsInDOSEnglish), kEoB1CharGuiStringsInDOSEnglish };
+
+static const char *const kEoB1CharStatusStrings7DOSEnglish[1] = {
+ "%s no longer has giant strength.\r"
+};
+
+static const StringListProvider kEoB1CharStatusStrings7DOSEnglishProvider = { ARRAYSIZE(kEoB1CharStatusStrings7DOSEnglish), kEoB1CharStatusStrings7DOSEnglish };
+
+static const char *const kEoB1CharStatusStrings81DOSEnglish[1] = {
+ "%s feels the effects of poison!\r"
+};
+
+static const StringListProvider kEoB1CharStatusStrings81DOSEnglishProvider = { ARRAYSIZE(kEoB1CharStatusStrings81DOSEnglish), kEoB1CharStatusStrings81DOSEnglish };
+
+static const char *const kEoB1CharStatusStrings9DOSEnglish[1] = {
+ "%s is no longer paralyzed!\r"
+};
+
+static const StringListProvider kEoB1CharStatusStrings9DOSEnglishProvider = { ARRAYSIZE(kEoB1CharStatusStrings9DOSEnglish), kEoB1CharStatusStrings9DOSEnglish };
+
+static const char *const kEoB1CharStatusStrings131DOSEnglish[1] = {
+ "%s is %s!\r"
+};
+
+static const StringListProvider kEoB1CharStatusStrings131DOSEnglishProvider = { ARRAYSIZE(kEoB1CharStatusStrings131DOSEnglish), kEoB1CharStatusStrings131DOSEnglish };
+
+static const char *const kEoB1LevelGainStringsDOSEnglish[1] = {
+ "\x06\x01""%s has gained a level of experience.""\x06\x0F""\r"
+};
+
+static const StringListProvider kEoB1LevelGainStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1LevelGainStringsDOSEnglish), kEoB1LevelGainStringsDOSEnglish };
+
+static const char *const kEoB1BookNumbersDOSEnglish[5] = {
+ "First",
+ "Second",
+ "Third",
+ "Fourth",
+ "Fifth"
+};
+
+static const StringListProvider kEoB1BookNumbersDOSEnglishProvider = { ARRAYSIZE(kEoB1BookNumbersDOSEnglish), kEoB1BookNumbersDOSEnglish };
+
+static const char *const kEoB1MageSpellsListDOSEnglish[26] = {
+ "",
+ "Armor",
+ "Burning Hands",
+ "Detect Magic",
+ "Magic Missile",
+ "Read Magic",
+ "Shield",
+ "Shocking Grasp",
+ "Invisibility",
+ "Knock",
+ "M's Acid Arrow",
+ "Stinking Cloud",
+ "Dispel Magic",
+ "Fireball",
+ "Flame Arrow",
+ "Haste",
+ "Hold Person",
+ "Invisibility 10'",
+ "Lightning Bolt",
+ "Vampiric Touch",
+ "Fear",
+ "Ice Storm",
+ "Stoneskin",
+ "Cloudkill",
+ "Cone of Cold",
+ "Hold Monster"
+};
+
+static const StringListProvider kEoB1MageSpellsListDOSEnglishProvider = { ARRAYSIZE(kEoB1MageSpellsListDOSEnglish), kEoB1MageSpellsListDOSEnglish };
+
+static const char *const kEoB1ClericSpellsListDOSEnglish[25] = {
+ "",
+ "Bless",
+ "Cure Light Wnds",
+ "Cause Light Wnds",
+ "Detect Magic",
+ "Protect-Evil",
+ "Aid",
+ "Flame Blade",
+ "Hold Person",
+ "Slow Poison",
+ "Create Food",
+ "Dispel Magic",
+ "Magical Vestment",
+ "Prayer",
+ "Remove Paralysis",
+ "Cure Serious",
+ "Cause Serious",
+ "Neutral-Poison",
+ "Protect-Evil 10'",
+ "Protect-Lightning",
+ "Cure Critical",
+ "Cause Critical",
+ "Flame Strike",
+ "Raise Dead",
+ "Lay on Hands"
+};
+
+static const StringListProvider kEoB1ClericSpellsListDOSEnglishProvider = { ARRAYSIZE(kEoB1ClericSpellsListDOSEnglish), kEoB1ClericSpellsListDOSEnglish };
+
+static const char *const kEoB1SpellNamesDOSEnglish[51] = {
+ "",
+ "armor",
+ "burning hands",
+ "detect magic",
+ "magic missile",
+ "shield",
+ "shocking grasp",
+ "invisibility",
+ "melf's acid arrow",
+ "stinking cloud",
+ "dispel magic",
+ "fireball",
+ "flame arrow",
+ "haste",
+ "hold person",
+ "invisibility 10' radius",
+ "lightning bolt",
+ "vampiric touch",
+ "fear",
+ "ice storm",
+ "stoneskin",
+ "cloudkill",
+ "cone of cold",
+ "hold monster",
+ "bless",
+ "cure light wounds",
+ "cause light wounds",
+ "detect magic",
+ "protection from evil",
+ "aid",
+ "flame blade",
+ "hold person",
+ "slow poison",
+ "create food",
+ "dispel magic",
+ "magical vestment",
+ "prayer",
+ "remove paralysis",
+ "cure serious wounds",
+ "cause serious wounds",
+ "neutralize poison",
+ "protection from evil 10' radius",
+ "protection from lightning",
+ "cure critical wounds",
+ "cause critical wounds",
+ "flame strike",
+ "raise dead",
+ "lay on hands",
+ "",
+ "",
+ ""
+};
+
+static const StringListProvider kEoB1SpellNamesDOSEnglishProvider = { ARRAYSIZE(kEoB1SpellNamesDOSEnglish), kEoB1SpellNamesDOSEnglish };
+
+static const char *const kEoB1MagicStrings1DOSEnglish[6] = {
+ "ABORT SPELL",
+ "ABORT SPELL",
+ "You must have a free hand for this spell.\r",
+ "You can't have two of this spell type active.\r",
+ "%s casts %s.\r",
+ "ok\r"
+};
+
+static const StringListProvider kEoB1MagicStrings1DOSEnglishProvider = { ARRAYSIZE(kEoB1MagicStrings1DOSEnglish), kEoB1MagicStrings1DOSEnglish };
+
+static const char *const kEoB1MagicStrings2DOSEnglish[3] = {
+ "no effect\r",
+ "%s has been disintegrated!\r",
+ "The party has been hit by a death spell!\r"
+};
+
+static const StringListProvider kEoB1MagicStrings2DOSEnglishProvider = { ARRAYSIZE(kEoB1MagicStrings2DOSEnglish), kEoB1MagicStrings2DOSEnglish };
+
+static const char *const kEoB1MagicStrings3DOSEnglish[6] = {
+ "Cast spell on which character? ",
+ "\rok\r",
+ "\rSpell aborted.\r",
+ "%s's %s spell expires.\r",
+ "%s missed the monster.\r",
+ "%s must be in the front ranks to hit!\r"
+};
+
+static const StringListProvider kEoB1MagicStrings3DOSEnglishProvider = { ARRAYSIZE(kEoB1MagicStrings3DOSEnglish), kEoB1MagicStrings3DOSEnglish };
+
+static const char *const kEoB1MagicStrings4DOSEnglish[1] = {
+ "no effect.\r"
+};
+
+static const StringListProvider kEoB1MagicStrings4DOSEnglishProvider = { ARRAYSIZE(kEoB1MagicStrings4DOSEnglish), kEoB1MagicStrings4DOSEnglish };
+
+static const char *const kEoB1MagicStrings6DOSEnglish[1] = {
+ "%s already has a high base armor class.\r"
+};
+
+static const StringListProvider kEoB1MagicStrings6DOSEnglishProvider = { ARRAYSIZE(kEoB1MagicStrings6DOSEnglish), kEoB1MagicStrings6DOSEnglish };
+
+static const char *const kEoB1MagicStrings7DOSEnglish[5] = {
+ "1ST",
+ "2ND",
+ "3RD",
+ "4TH",
+ "5TH"
+};
+
+static const StringListProvider kEoB1MagicStrings7DOSEnglishProvider = { ARRAYSIZE(kEoB1MagicStrings7DOSEnglish), kEoB1MagicStrings7DOSEnglish };
+
+static const char *const kEoB1MagicStrings8DOSEnglish[3] = {
+ "All spells on %s are dispelled.\r",
+ "The party is already blessed!\r",
+ "The aid spell fails!\r"
+};
+
+static const StringListProvider kEoB1MagicStrings8DOSEnglishProvider = { ARRAYSIZE(kEoB1MagicStrings8DOSEnglish), kEoB1MagicStrings8DOSEnglish };
+
+static const byte kEoB1ManDefDOSEnglish[120] = {
+ 0x09, 0x0A, 0x02, 0x00, 0x09, 0x04, 0x03, 0x00,
+ 0x09, 0x06, 0x06, 0x00, 0x09, 0x03, 0x03, 0x00,
+ 0x09, 0x04, 0x02, 0x00, 0x09, 0x01, 0x02, 0x00,
+ 0x09, 0x05, 0x01, 0x00, 0x09, 0x09, 0x02, 0x00,
+ 0x09, 0x06, 0x02, 0x00, 0x23, 0x01, 0x05, 0x00,
+ 0x23, 0x02, 0x02, 0x00, 0x23, 0x03, 0x06, 0x00,
+ 0x23, 0x05, 0x01, 0x00, 0x23, 0x06, 0x03, 0x00,
+ 0x23, 0x07, 0x01, 0x00, 0x1A, 0x01, 0x01, 0x00,
+ 0x1A, 0x03, 0x02, 0x00, 0x1A, 0x06, 0x01, 0x00,
+ 0x24, 0x01, 0x03, 0x00, 0x24, 0x03, 0x04, 0x00,
+ 0x24, 0x03, 0x01, 0x00, 0x02, 0x04, 0x03, 0x00,
+ 0x02, 0x03, 0x03, 0x00, 0x02, 0x05, 0x03, 0x00,
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0x05, 0x03, 0x00,
+ 0x01, 0x04, 0x03, 0x00, 0x0C, 0x02, 0x01, 0x00,
+ 0x0C, 0x03, 0x03, 0x00, 0x0C, 0x04, 0x02, 0x00
+};
+
+static const ByteProvider kEoB1ManDefDOSEnglishProvider = { ARRAYSIZE(kEoB1ManDefDOSEnglish), kEoB1ManDefDOSEnglish };
+
+static const char *const kEoB1ManWordDOSEnglish[31] = {
+ "attacks",
+ "short",
+ "line",
+ "weapons",
+ "certain",
+ "rank",
+ "rear",
+ "can",
+ "away",
+ "dungeon",
+ "cursor",
+ "feature",
+ "information",
+ "displayed",
+ "below",
+ "around",
+ "carefree",
+ "gnomes",
+ "clerics",
+ "mystic",
+ "pummel",
+ "fitness",
+ "using",
+ "toughness",
+ "wealth",
+ "wizard",
+ "officials",
+ "hound",
+ "disturbing",
+ "flaming",
+ ""
+};
+
+static const StringListProvider kEoB1ManWordDOSEnglishProvider = { ARRAYSIZE(kEoB1ManWordDOSEnglish), kEoB1ManWordDOSEnglish };
+
+static const char *const kEoB1ManPromptDOSEnglish[1] = {
+ "\r\r\r\rOn the page with this symbol...\r\rFind line %d\rEnter word %d\r"
+};
+
+static const StringListProvider kEoB1ManPromptDOSEnglishProvider = { ARRAYSIZE(kEoB1ManPromptDOSEnglish), kEoB1ManPromptDOSEnglish };
+
+static const char *const kEoB1MonsterDistAttStringsDOSEnglish[5] = {
+ "%s is hit by a cause serious wounds spell!\r",
+ "The party is hit with a psychic mind blast!\r",
+ "paralyzed",
+ "poisoned",
+ "paralyzed"
+};
+
+static const StringListProvider kEoB1MonsterDistAttStringsDOSEnglishProvider = { ARRAYSIZE(kEoB1MonsterDistAttStringsDOSEnglish), kEoB1MonsterDistAttStringsDOSEnglish };
+
diff --git a/devtools/create_kyradat/resources/eob1_dos_german.h b/devtools/create_kyradat/resources/eob1_dos_german.h
new file mode 100644
index 0000000000..ba2e4876c8
--- /dev/null
+++ b/devtools/create_kyradat/resources/eob1_dos_german.h
@@ -0,0 +1,893 @@
+static const char *const kEoB1ChargenStrings1DOSGerman[9] = {
+ "Ihr Team ist\rkomplett. SPIEL-\rKnopf oder 'P'\rdruecken, um zu\rbeginnen.",
+ " ",
+ "RK\rHP\rEBN",
+ "%s\r%d\r%d\r%d\r%d\r%d",
+ "%d\r%d",
+ "%d",
+ "%d/%d",
+ "%d/%d/%d",
+ "Waehle das Feld\rdes Charakters\rzum erstellen oder\ranschauen."
+};
+
+static const StringListProvider kEoB1ChargenStrings1DOSGermanProvider = { ARRAYSIZE(kEoB1ChargenStrings1DOSGerman), kEoB1ChargenStrings1DOSGerman };
+
+static const char *const kEoB1ChargenStrings2DOSGerman[12] = {
+ "%s",
+ "%d",
+ "%s",
+ "%d",
+ "%d",
+ "%d",
+ "%s",
+ "%d",
+ "WAEHLE RASSE:",
+ "WAEHLE KLASSE:",
+ "GESINNUNG WAEHLEN:",
+ "Name:"
+};
+
+static const StringListProvider kEoB1ChargenStrings2DOSGermanProvider = { ARRAYSIZE(kEoB1ChargenStrings2DOSGerman), kEoB1ChargenStrings2DOSGerman };
+
+static const char *const kEoB1ChargenStatStringsDOSGerman[12] = {
+ "STR",
+ "INT",
+ "WEI",
+ "GEW",
+ "KON",
+ "CHA",
+ "STAERKE",
+ "INTELLIGENZ",
+ "WEISHEIT",
+ "GEWANDHEIT",
+ "KONSTITUTION",
+ "CHARISMA"
+};
+
+static const StringListProvider kEoB1ChargenStatStringsDOSGermanProvider = { ARRAYSIZE(kEoB1ChargenStatStringsDOSGerman), kEoB1ChargenStatStringsDOSGerman };
+
+static const char *const kEoB1ChargenRaceSexStringsDOSGerman[12] = {
+ "MENSCH MAENNL.",
+ "MENSCH WEIBL.",
+ "ELF MAENNL.",
+ "ELF WEIBL.",
+ "HALB-ELF MAENNL.",
+ "HALB-ELF WEIBL.",
+ "ZWERG MAENNL.",
+ "ZWERG WEIBL.",
+ "GNOM MAENNL.",
+ "GNOM WEIBL.",
+ "HALBLING MAENNL.",
+ "HALBLING WEIBL."
+};
+
+static const StringListProvider kEoB1ChargenRaceSexStringsDOSGermanProvider = { ARRAYSIZE(kEoB1ChargenRaceSexStringsDOSGerman), kEoB1ChargenRaceSexStringsDOSGerman };
+
+static const char *const kEoB1ChargenClassStringsDOSGerman[21] = {
+ "KAEMPFER",
+ "WALDLAEUFER",
+ "PALADIN",
+ "MAGIER",
+ "KLERIKER",
+ "DIEB",
+ "KAEMPFER/KLERIKER",
+ "KAEMPFER/DIEB",
+ "KAEMPFER/MAGIER",
+ "KAEMPF./MAGIER/DIEB",
+ "DIEB/MAGIER",
+ "KLERIKER/DIEB",
+ "KAEMPF./KLE./MAGIER",
+ "WALDLAEUF./KLERIKER",
+ "KLERIKER/MAGIER",
+ "KAEMPFER",
+ "MAGIER",
+ "KLERIKER",
+ "DIEB",
+ "PALADIN",
+ "WALDLAEUFER"
+};
+
+static const StringListProvider kEoB1ChargenClassStringsDOSGermanProvider = { ARRAYSIZE(kEoB1ChargenClassStringsDOSGerman), kEoB1ChargenClassStringsDOSGerman };
+
+static const char *const kEoB1ChargenAlignmentStringsDOSGerman[9] = {
+ "RECHTSCH. GUT",
+ "NEUTRAL GUT",
+ "CHAOTISCH GUT",
+ "RECHTSCH. NEUTRAL",
+ "ABSOLUT NEUTRAL",
+ "CHAOTISCH NEUTRAL",
+ "RECHTSCH. BOESE",
+ "NEUTRAL BOESE",
+ "CHAOTISCH BOESE"
+};
+
+static const StringListProvider kEoB1ChargenAlignmentStringsDOSGermanProvider = { ARRAYSIZE(kEoB1ChargenAlignmentStringsDOSGerman), kEoB1ChargenAlignmentStringsDOSGerman };
+
+static const char *const kEoB1ChargenEnterGameStringsDOSGerman[1] = {
+ " Spiel startet.\r Bitte warten."
+};
+
+static const StringListProvider kEoB1ChargenEnterGameStringsDOSGermanProvider = { ARRAYSIZE(kEoB1ChargenEnterGameStringsDOSGerman), kEoB1ChargenEnterGameStringsDOSGerman };
+
+static const char *const kEoB1MainMenuStringsDOSGerman[3] = {
+ "ALTES SPIEL LADEN\r",
+ "NEUES TEAM AUFBAUEN\r",
+ "ENDE > DOS\r"
+};
+
+static const StringListProvider kEoB1MainMenuStringsDOSGermanProvider = { ARRAYSIZE(kEoB1MainMenuStringsDOSGerman), kEoB1MainMenuStringsDOSGerman };
+
+static const char *const kEoB1BonusStringsDOSGerman[3] = {
+ "Herzlichen Glueckwunsch fuer das Auffinden aller 12 Beholder-Boni.\r\rDie beteiligten Charaktere des gluecklichen Teams waren:\r\r",
+ "\r",
+ "\r\rPasswort: %04x\r"
+};
+
+static const StringListProvider kEoB1BonusStringsDOSGermanProvider = { ARRAYSIZE(kEoB1BonusStringsDOSGerman), kEoB1BonusStringsDOSGerman };
+
+static const char *const kEoB1TurnUndeadStringDOSGerman[1] = {
+ "\x06\x06""%s benutzt Magie, um Untote zu vertreiben!""\x06\x0F""\r"
+};
+
+static const StringListProvider kEoB1TurnUndeadStringDOSGermanProvider = { ARRAYSIZE(kEoB1TurnUndeadStringDOSGerman), kEoB1TurnUndeadStringDOSGerman };
+
+static const char *const kEoB1Npc0StringsDOSGerman[2] = {
+ "\r Ich wuensche Euch Glueck auf Euren Reisen.",
+ "Wer soll wiedererweckt werden?"
+};
+
+static const StringListProvider kEoB1Npc0StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc0StringsDOSGerman), kEoB1Npc0StringsDOSGerman };
+
+static const char *const kEoB1Npc11StringsDOSGerman[3] = {
+ "Wunden heilen",
+ "Reden",
+ "Gehen"
+};
+
+static const StringListProvider kEoB1Npc11StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc11StringsDOSGerman), kEoB1Npc11StringsDOSGerman };
+
+static const char *const kEoB1Npc12StringsDOSGerman[2] = {
+ "Wunden heilen",
+ "Gehen"
+};
+
+static const StringListProvider kEoB1Npc12StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc12StringsDOSGerman), kEoB1Npc12StringsDOSGerman };
+
+static const char *const kEoB1Npc21StringsDOSGerman[2] = {
+ "Angebot hoeren",
+ "Gehen"
+};
+
+static const StringListProvider kEoB1Npc21StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc21StringsDOSGerman), kEoB1Npc21StringsDOSGerman };
+
+static const char *const kEoB1Npc22StringsDOSGerman[2] = {
+ "Helfen",
+ "Gehen"
+};
+
+static const StringListProvider kEoB1Npc22StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc22StringsDOSGerman), kEoB1Npc22StringsDOSGerman };
+
+static const char *const kEoB1Npc31StringsDOSGerman[2] = {
+ "Team heilen",
+ "Gehen"
+};
+
+static const StringListProvider kEoB1Npc31StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc31StringsDOSGerman), kEoB1Npc31StringsDOSGerman };
+
+static const char *const kEoB1Npc32StringsDOSGerman[3] = {
+ "Team heilen",
+ "Tote erwecken",
+ "Gehen"
+};
+
+static const StringListProvider kEoB1Npc32StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc32StringsDOSGerman), kEoB1Npc32StringsDOSGerman };
+
+static const char *const kEoB1Npc4StringsDOSGerman[2] = {
+ "Angreifen",
+ "Bestechen"
+};
+
+static const StringListProvider kEoB1Npc4StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc4StringsDOSGerman), kEoB1Npc4StringsDOSGerman };
+
+static const char *const kEoB1Npc5StringsDOSGerman[3] = {
+ "toeten",
+ "anhoeren",
+ "gehen lassen"
+};
+
+static const StringListProvider kEoB1Npc5StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc5StringsDOSGerman), kEoB1Npc5StringsDOSGerman };
+
+static const char *const kEoB1Npc6StringsDOSGerman[2] = {
+ "Ergeben",
+ "Angreifen"
+};
+
+static const StringListProvider kEoB1Npc6StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc6StringsDOSGerman), kEoB1Npc6StringsDOSGerman };
+
+static const char *const kEoB1Npc7StringsDOSGerman[3] = {
+ "befreien",
+ "toeten",
+ "Gehen"
+};
+
+static const StringListProvider kEoB1Npc7StringsDOSGermanProvider = { ARRAYSIZE(kEoB1Npc7StringsDOSGerman), kEoB1Npc7StringsDOSGerman };
+
+static const char *const kEoB1PryDoorStringsDOSGerman[8] = {
+ "Niemand schafft es, die Tuer aufzubrechen.\r",
+ "Das Team bricht die Tuer auf.\r",
+ "%s bricht die Tuer auf!\r",
+ "Das Team versucht die Tuer aufzubrechen, doch es schlaegt fehl.\r",
+ "Dieser Gegenstand kann hier nicht plaziert werden.\r",
+ "Dieser Gegenstand ist zu gross.\r",
+ "Niemand schafft es, die Tuer aufzubrechen.\r",
+ "\r"
+};
+
+static const StringListProvider kEoB1PryDoorStringsDOSGermanProvider = { ARRAYSIZE(kEoB1PryDoorStringsDOSGerman), kEoB1PryDoorStringsDOSGerman };
+
+static const char *const kEoB1WarningStringsDOSGerman[3] = {
+ "Hier geht es nicht weiter.\r",
+ "%s kann keine Nahrung zu sich nehmen!\r",
+ "Dies kann man nicht essen!\r"
+};
+
+static const StringListProvider kEoB1WarningStringsDOSGermanProvider = { ARRAYSIZE(kEoB1WarningStringsDOSGerman), kEoB1WarningStringsDOSGerman };
+
+static const char *const kEoB1ItemSuffixStringsRingsDOSGerman[4] = {
+ "Schmuck",
+ "Zauber",
+ "Nahrungs",
+ "Federfall"
+};
+
+static const StringListProvider kEoB1ItemSuffixStringsRingsDOSGermanProvider = { ARRAYSIZE(kEoB1ItemSuffixStringsRingsDOSGerman), kEoB1ItemSuffixStringsRingsDOSGerman };
+
+static const char *const kEoB1ItemSuffixStringsPotionsDOSGerman[8] = {
+ "Riesenstaerke",
+ "Heilungs",
+ "Extra Heilungs",
+ "Gift",
+ "Vitalitaets",
+ "Schnelligkeits",
+ "Unsichtbarkeits",
+ "Gift-Heilungs"
+};
+
+static const StringListProvider kEoB1ItemSuffixStringsPotionsDOSGermanProvider = { ARRAYSIZE(kEoB1ItemSuffixStringsPotionsDOSGerman), kEoB1ItemSuffixStringsPotionsDOSGerman };
+
+static const char *const kEoB1ItemSuffixStringsWandsDOSGerman[7] = {
+ "Stock",
+ "Blitz",
+ "Frost",
+ "Heilungs",
+ "Feuerball",
+ "Silvias",
+ "Magischer Geschoss"
+};
+
+static const StringListProvider kEoB1ItemSuffixStringsWandsDOSGermanProvider = { ARRAYSIZE(kEoB1ItemSuffixStringsWandsDOSGerman), kEoB1ItemSuffixStringsWandsDOSGerman };
+
+static const char *const kEoB1RipItemStringsDOSGerman[3] = {
+ "%s verlor ihre ",
+ "%s verlor seine ",
+ ".\r"
+};
+
+static const StringListProvider kEoB1RipItemStringsDOSGermanProvider = { ARRAYSIZE(kEoB1RipItemStringsDOSGerman), kEoB1RipItemStringsDOSGerman };
+
+static const char *const kEoB1CursedStringDOSGerman[1] = {
+ "Verflucht %s %d"
+};
+
+static const StringListProvider kEoB1CursedStringDOSGermanProvider = { ARRAYSIZE(kEoB1CursedStringDOSGerman), kEoB1CursedStringDOSGerman };
+
+static const char *const kEoB1MagicObjectStringsDOSGerman[5] = {
+ "Magier-Schriftrolle",
+ "Kleriker-Schriftrolle",
+ "Ring",
+ "Trank",
+ "Stab"
+};
+
+static const StringListProvider kEoB1MagicObjectStringsDOSGermanProvider = { ARRAYSIZE(kEoB1MagicObjectStringsDOSGerman), kEoB1MagicObjectStringsDOSGerman };
+
+static const char *const kEoB1MagicObjectString5DOSGerman[1] = {
+ "Stock"
+};
+
+static const StringListProvider kEoB1MagicObjectString5DOSGermanProvider = { ARRAYSIZE(kEoB1MagicObjectString5DOSGerman), kEoB1MagicObjectString5DOSGerman };
+
+static const char *const kEoB1PatternSuffixDOSGerman[1] = {
+ "%s-%s"
+};
+
+static const StringListProvider kEoB1PatternSuffixDOSGermanProvider = { ARRAYSIZE(kEoB1PatternSuffixDOSGerman), kEoB1PatternSuffixDOSGerman };
+
+static const char *const kEoB1PatternGrFix1DOSGerman[1] = {
+ "%s-%s"
+};
+
+static const StringListProvider kEoB1PatternGrFix1DOSGermanProvider = { ARRAYSIZE(kEoB1PatternGrFix1DOSGerman), kEoB1PatternGrFix1DOSGerman };
+
+static const char *const kEoB1PatternGrFix2DOSGerman[1] = {
+ "%s-%s"
+};
+
+static const StringListProvider kEoB1PatternGrFix2DOSGermanProvider = { ARRAYSIZE(kEoB1PatternGrFix2DOSGerman), kEoB1PatternGrFix2DOSGerman };
+
+static const char *const kEoB1ValidateArmorStringDOSGerman[1] = {
+ "%s kann diese Ruestung nicht tragen.\r"
+};
+
+static const StringListProvider kEoB1ValidateArmorStringDOSGermanProvider = { ARRAYSIZE(kEoB1ValidateArmorStringDOSGerman), kEoB1ValidateArmorStringDOSGerman };
+
+static const char *const kEoB1ValidateNoDropStringDOSGerman[1] = {
+ "Das koennt Ihr hier nicht ablegen.\r"
+};
+
+static const StringListProvider kEoB1ValidateNoDropStringDOSGermanProvider = { ARRAYSIZE(kEoB1ValidateNoDropStringDOSGerman), kEoB1ValidateNoDropStringDOSGerman };
+
+static const char *const kEoB1PotionStringsDOSGerman[2] = {
+ "vergiftet",
+ "%s fuehlt sich %s!\r"
+};
+
+static const StringListProvider kEoB1PotionStringsDOSGermanProvider = { ARRAYSIZE(kEoB1PotionStringsDOSGerman), kEoB1PotionStringsDOSGerman };
+
+static const char *const kEoB1WandStringsDOSGerman[2] = {
+ "Der Stab hat keinen offensichtlichen magischen Effekt.\r",
+ "kein effekt.\r"
+};
+
+static const StringListProvider kEoB1WandStringsDOSGermanProvider = { ARRAYSIZE(kEoB1WandStringsDOSGerman), kEoB1WandStringsDOSGerman };
+
+static const char *const kEoB1ItemMisuseStringsDOSGerman[3] = {
+ " kann dies nicht benutzen.\r",
+ "Dies wird automatisch benutzt, wenn angelegt.\r",
+ "Dies wird nicht so benutzt.\r"
+};
+
+static const StringListProvider kEoB1ItemMisuseStringsDOSGermanProvider = { ARRAYSIZE(kEoB1ItemMisuseStringsDOSGerman), kEoB1ItemMisuseStringsDOSGerman };
+
+static const char *const kEoB1TakenStringsDOSGerman[1] = {
+ " aufgenommen.\r"
+};
+
+static const StringListProvider kEoB1TakenStringsDOSGermanProvider = { ARRAYSIZE(kEoB1TakenStringsDOSGerman), kEoB1TakenStringsDOSGerman };
+
+static const char *const kEoB1PotionEffectStringsDOSGerman[8] = {
+ "viel staerker",
+ "besser",
+ "viel besser",
+ "einen Moment uebel",
+ "nicht laenger hungrig",
+ "schnell und agil",
+ "transparent",
+ "besser"
+};
+
+static const StringListProvider kEoB1PotionEffectStringsDOSGermanProvider = { ARRAYSIZE(kEoB1PotionEffectStringsDOSGerman), kEoB1PotionEffectStringsDOSGerman };
+
+static const char *const kEoB1YesNoStringsDOSGerman[2] = {
+ "ja",
+ "nein"
+};
+
+static const StringListProvider kEoB1YesNoStringsDOSGermanProvider = { ARRAYSIZE(kEoB1YesNoStringsDOSGerman), kEoB1YesNoStringsDOSGerman };
+
+static const char *const kEoB1MoreStringsDOSGerman[1] = {
+ "MEHR"
+};
+
+static const StringListProvider kEoB1MoreStringsDOSGermanProvider = { ARRAYSIZE(kEoB1MoreStringsDOSGerman), kEoB1MoreStringsDOSGerman };
+
+static const char *const kEoB1NpcMaxStringsDOSGerman[1] = {
+ "Es sind nur sechs Charaktere in einem Team erlaubt. Waehlen Sie aus, welchen Sie entlassen wollen."
+};
+
+static const StringListProvider kEoB1NpcMaxStringsDOSGermanProvider = { ARRAYSIZE(kEoB1NpcMaxStringsDOSGerman), kEoB1NpcMaxStringsDOSGerman };
+
+static const char *const kEoB1NpcJoinStringsDOSGerman[1] = {
+ "%s wird in's Team aufgenommen.\r"
+};
+
+static const StringListProvider kEoB1NpcJoinStringsDOSGermanProvider = { ARRAYSIZE(kEoB1NpcJoinStringsDOSGerman), kEoB1NpcJoinStringsDOSGerman };
+
+static const char *const kEoB1CancelStringsDOSGerman[1] = {
+ "ABBRECHEN"
+};
+
+static const StringListProvider kEoB1CancelStringsDOSGermanProvider = { ARRAYSIZE(kEoB1CancelStringsDOSGerman), kEoB1CancelStringsDOSGerman };
+
+static const char *const kEoB1MenuStringsMainDOSGerman[8] = {
+ "Option Waehlen:",
+ "Ausruhen",
+ "Zauber lernen",
+ "Fuer Zauber beten",
+ "Schriftrollen",
+ "Einstellungen",
+ "Spieloptionen",
+ "Ende"
+};
+
+static const StringListProvider kEoB1MenuStringsMainDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsMainDOSGerman), kEoB1MenuStringsMainDOSGerman };
+
+static const char *const kEoB1MenuStringsSaveLoadDOSGerman[8] = {
+ "Spiel laden",
+ "Spiel speichern",
+ "Charakter entlassen",
+ "Spielende",
+ "Spieloptionen:",
+ "\r Gespeichert.",
+ "\r Speichern\r Fehler!",
+ "\r Spiel laden\r Fehler!"
+};
+
+static const StringListProvider kEoB1MenuStringsSaveLoadDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsSaveLoadDOSGerman), kEoB1MenuStringsSaveLoadDOSGerman };
+
+static const char *const kEoB1MenuStringsOnOffDOSGerman[2] = {
+ "AN",
+ "AUS"
+};
+
+static const StringListProvider kEoB1MenuStringsOnOffDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsOnOffDOSGerman), kEoB1MenuStringsOnOffDOSGerman };
+
+static const char *const kEoB1MenuStringsSpellsDOSGerman[17] = {
+ "\r\r Charakter aus dem\r Team waehlen, der\r zaubern moechte.\r ",
+ "\r Der Paladin ist \r noch zu \r unerfahren.",
+ "\r\r Der Magier hat\r kein Zauberbuch!",
+ "\r\r\r Charakter aus dem\r Team waehlen, der\r beten moechte.\r ",
+ "\r Das Team hat kei-\r nen Kleriker, der\r beten koennte.\r ",
+ "\r Das Team hat kei-\r nen Magier, der\r zaubern koennte.",
+ " Ein bewusstloser\r oder toter Magier\r kann keine Zauber\r lernen.",
+ " Ein bewusstloser\r oder toter Kleriker\r kann nicht fuer Zauber\r beten.",
+ "1",
+ "2",
+ "3",
+ "4",
+ "5",
+ "Loesch",
+ "Verfuegbare Zauber:",
+ "Ja",
+ "Nein"
+};
+
+static const StringListProvider kEoB1MenuStringsSpellsDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsSpellsDOSGerman), kEoB1MenuStringsSpellsDOSGerman };
+
+static const char *const kEoB1MenuStringsRestDOSGerman[5] = {
+ "\rWerden die Heiler\rdas Team heilen?",
+ " Jemand ist noch\r verletzt. Rasten,\r bis geheilt?",
+ "Ausruhen.",
+ "\r Alle Charaktere\r sind ganz\r ausgeruht.",
+ " Das Team muss\r fuer neue Zauber\r rasten."
+};
+
+static const StringListProvider kEoB1MenuStringsRestDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsRestDOSGerman), kEoB1MenuStringsRestDOSGerman };
+
+static const char *const kEoB1MenuStringsDropDOSGerman[1] = {
+ " Sie muessen min-\r destens vier\r Charaktere be-\r sitzen."
+};
+
+static const StringListProvider kEoB1MenuStringsDropDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsDropDOSGerman), kEoB1MenuStringsDropDOSGerman };
+
+static const char *const kEoB1MenuStringsExitDOSGerman[1] = {
+ " Wollen Sie wirk-\r lich das Spiel\r beenden?\r"
+};
+
+static const StringListProvider kEoB1MenuStringsExitDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsExitDOSGerman), kEoB1MenuStringsExitDOSGerman };
+
+static const char *const kEoB1MenuStringsStarveDOSGerman[1] = {
+ " Ihr Team verhungert.\r Soll weiter gerastet\r werden?\r "
+};
+
+static const StringListProvider kEoB1MenuStringsStarveDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsStarveDOSGerman), kEoB1MenuStringsStarveDOSGerman };
+
+static const char *const kEoB1MenuStringsScribeDOSGerman[5] = {
+ "Schriftrolle(n) waeh-\rlen,die notiert wer-\rden soll(en).",
+ "\r\r\r Welcher Magier des\r Teams soll\r Schriftrollen\r notieren?",
+ " Es gibt keine\r Schriftrollen zum\r Notieren.",
+ " Sie haben keine\r Schriftrolle fuer\r diesen Magier.",
+ "\r Keiner Ihrer Magier\r kann Schriftrollen\r notieren."
+};
+
+static const StringListProvider kEoB1MenuStringsScribeDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsScribeDOSGerman), kEoB1MenuStringsScribeDOSGerman };
+
+static const char *const kEoB1MenuStringsDrop2DOSGerman[3] = {
+ " Waehlen Sie den\r zu entlassenden\r Charakter.",
+ " Wollen Sie wirk-\r lich das Spiel\r SPEICHERN?",
+ " Wollen Sie wirk-\r lich ein altes\r Spiel LADEN?"
+};
+
+static const StringListProvider kEoB1MenuStringsDrop2DOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsDrop2DOSGerman), kEoB1MenuStringsDrop2DOSGerman };
+
+static const char *const kEoB1MenuStringsHeadDOSGerman[3] = {
+ "Camp:",
+ "Einstellungen:",
+ "Spieloptionen:"
+};
+
+static const StringListProvider kEoB1MenuStringsHeadDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsHeadDOSGerman), kEoB1MenuStringsHeadDOSGerman };
+
+static const char *const kEoB1MenuStringsPoisonDOSGerman[1] = {
+ "Vergiftete Team-\rmitglieder sterben!\rTrotzdem rasten?"
+};
+
+static const StringListProvider kEoB1MenuStringsPoisonDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsPoisonDOSGerman), kEoB1MenuStringsPoisonDOSGerman };
+
+static const char *const kEoB1MenuStringsMgcDOSGerman[2] = {
+ "%-18s %1d",
+ "%d von %d Uebrigen. "
+};
+
+static const StringListProvider kEoB1MenuStringsMgcDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsMgcDOSGerman), kEoB1MenuStringsMgcDOSGerman };
+
+static const char *const kEoB1MenuStringsPrefsDOSGerman[4] = {
+ "Musik ist %-3s",
+ "Geraeusche sind %-3s",
+ "Graphikzeilen %-3s",
+ "Maus ist %-3s"
+};
+
+static const StringListProvider kEoB1MenuStringsPrefsDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsPrefsDOSGerman), kEoB1MenuStringsPrefsDOSGerman };
+
+static const char *const kEoB1MenuStringsRest2DOSGerman[4] = {
+ "%s erhaelt %s.\r",
+ "%s lernt %s.\r",
+ "%s spricht heilung auf %s.\r",
+ "Ruhestunden: %-4d"
+};
+
+static const StringListProvider kEoB1MenuStringsRest2DOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsRest2DOSGerman), kEoB1MenuStringsRest2DOSGerman };
+
+static const char *const kEoB1MenuStringsRest4DOSGerman[1] = {
+ "\rRast ist nicht moeglich, Monster sind in der Naehe."
+};
+
+static const StringListProvider kEoB1MenuStringsRest4DOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsRest4DOSGerman), kEoB1MenuStringsRest4DOSGerman };
+
+static const char *const kEoB1MenuStringsDefeatDOSGerman[1] = {
+ " Dein ganzes team ist geschlagen. Die Helfer des boesen koennen ihre Plaene ungehindert erfuellen! \r"
+};
+
+static const StringListProvider kEoB1MenuStringsDefeatDOSGermanProvider = { ARRAYSIZE(kEoB1MenuStringsDefeatDOSGerman), kEoB1MenuStringsDefeatDOSGerman };
+
+static const char *const kEoB1MenuYesNoStringsDOSGerman[2] = {
+ "Ja",
+ "Nein"
+};
+
+static const StringListProvider kEoB1MenuYesNoStringsDOSGermanProvider = { ARRAYSIZE(kEoB1MenuYesNoStringsDOSGerman), kEoB1MenuYesNoStringsDOSGerman };
+
+static const char *const kEoB1CharGuiStringsHpDOSGerman[2] = {
+ "HP",
+ "%3d / %-3d"
+};
+
+static const StringListProvider kEoB1CharGuiStringsHpDOSGermanProvider = { ARRAYSIZE(kEoB1CharGuiStringsHpDOSGerman), kEoB1CharGuiStringsHpDOSGerman };
+
+static const char *const kEoB1CharGuiStringsWp1DOSGerman[2] = {
+ "FEHL",
+ "HACK"
+};
+
+static const StringListProvider kEoB1CharGuiStringsWp1DOSGermanProvider = { ARRAYSIZE(kEoB1CharGuiStringsWp1DOSGerman), kEoB1CharGuiStringsWp1DOSGerman };
+
+static const char *const kEoB1CharGuiStringsWrDOSGerman[4] = {
+ " ZU ",
+ "WEIT",
+ "KEINE",
+ " MUN"
+};
+
+static const StringListProvider kEoB1CharGuiStringsWrDOSGermanProvider = { ARRAYSIZE(kEoB1CharGuiStringsWrDOSGerman), kEoB1CharGuiStringsWrDOSGerman };
+
+static const char *const kEoB1CharGuiStringsSt1DOSGerman[6] = {
+ "Tausche",
+ "TOT",
+ "BEWUSSTLOS",
+ "GIFT (LANGSAM)",
+ "VERGIFTED",
+ "BETAEUBT"
+};
+
+static const StringListProvider kEoB1CharGuiStringsSt1DOSGermanProvider = { ARRAYSIZE(kEoB1CharGuiStringsSt1DOSGerman), kEoB1CharGuiStringsSt1DOSGerman };
+
+static const char *const kEoB1CharGuiStringsInDOSGerman[4] = {
+ "CHARAKTER INFO",
+ "RUESTUNG",
+ "ERF",
+ "EBN"
+};
+
+static const StringListProvider kEoB1CharGuiStringsInDOSGermanProvider = { ARRAYSIZE(kEoB1CharGuiStringsInDOSGerman), kEoB1CharGuiStringsInDOSGerman };
+
+static const char *const kEoB1CharStatusStrings7DOSGerman[1] = {
+ "%s besitzt nun keine Riesen-Staerke mehr.\r"
+};
+
+static const StringListProvider kEoB1CharStatusStrings7DOSGermanProvider = { ARRAYSIZE(kEoB1CharStatusStrings7DOSGerman), kEoB1CharStatusStrings7DOSGerman };
+
+static const char *const kEoB1CharStatusStrings81DOSGerman[1] = {
+ "%s fuehlt, wie das Gift wirkt!\r"
+};
+
+static const StringListProvider kEoB1CharStatusStrings81DOSGermanProvider = { ARRAYSIZE(kEoB1CharStatusStrings81DOSGerman), kEoB1CharStatusStrings81DOSGerman };
+
+static const char *const kEoB1CharStatusStrings9DOSGerman[1] = {
+ "%s ist nicht mehr gelaehmt!\r"
+};
+
+static const StringListProvider kEoB1CharStatusStrings9DOSGermanProvider = { ARRAYSIZE(kEoB1CharStatusStrings9DOSGerman), kEoB1CharStatusStrings9DOSGerman };
+
+static const char *const kEoB1CharStatusStrings131DOSGerman[1] = {
+ "%s ist %s!\r"
+};
+
+static const StringListProvider kEoB1CharStatusStrings131DOSGermanProvider = { ARRAYSIZE(kEoB1CharStatusStrings131DOSGerman), kEoB1CharStatusStrings131DOSGerman };
+
+static const char *const kEoB1LevelGainStringsDOSGerman[1] = {
+ "\x06\x01""%s steigt eine erfahrungsstufe auf.""\x06\x0F""\r"
+};
+
+static const StringListProvider kEoB1LevelGainStringsDOSGermanProvider = { ARRAYSIZE(kEoB1LevelGainStringsDOSGerman), kEoB1LevelGainStringsDOSGerman };
+
+static const char *const kEoB1BookNumbersDOSGerman[5] = {
+ "Erster",
+ "Zweiter",
+ "Dritter",
+ "Vierter",
+ "Fuenfter"
+};
+
+static const StringListProvider kEoB1BookNumbersDOSGermanProvider = { ARRAYSIZE(kEoB1BookNumbersDOSGerman), kEoB1BookNumbersDOSGerman };
+
+static const char *const kEoB1MageSpellsListDOSGerman[26] = {
+ "",
+ "Ruestung",
+ "Brennende Haende",
+ "Magie entdecken",
+ "Magisch. Geschoss",
+ "Magie lesen",
+ "Schild",
+ "Schockgriff",
+ "Unsichtbarkeit",
+ "Klopfen",
+ "Ms Saeurepfeil",
+ "Stinkende Wolke",
+ "Magie bannen",
+ "Feuerball",
+ "Flammenpfeil",
+ "Hast",
+ "Person festhalten",
+ "Usichtbarkeit 3m",
+ "Blitzstrahl",
+ "Vampirgriff",
+ "Furcht",
+ "Eissturm",
+ "Steinhaut",
+ "Todeswolke",
+ "Kaeltekegel",
+ "Monster festhalten"
+};
+
+static const StringListProvider kEoB1MageSpellsListDOSGermanProvider = { ARRAYSIZE(kEoB1MageSpellsListDOSGerman), kEoB1MageSpellsListDOSGerman };
+
+static const char *const kEoB1ClericSpellsListDOSGerman[25] = {
+ "",
+ "Segen",
+ "L. Wnd. heilen",
+ "l. Wnd. verurs.",
+ "Magie entdecken",
+ "Schutz v. Boesem",
+ "Staerkung",
+ "Flammenklinge",
+ "Person festhalten",
+ "Gift verlangsamen",
+ "Nahrung erschaffen",
+ "Magie bannen",
+ "Schutzgewand",
+ "Gebet",
+ "Laehmung aufheben",
+ "Schwere W. heilen",
+ "Schwere W. verurs.",
+ "Gift neutral.",
+ "Schutz v.Boesem 3m",
+ "Schutz v. Blitzen",
+ "Krit. W. heilen",
+ "Krit. W. verurs.",
+ "Flammenschlag",
+ "Tote erwecken",
+ "Haende auflegen"
+};
+
+static const StringListProvider kEoB1ClericSpellsListDOSGermanProvider = { ARRAYSIZE(kEoB1ClericSpellsListDOSGerman), kEoB1ClericSpellsListDOSGerman };
+
+static const char *const kEoB1SpellNamesDOSGerman[51] = {
+ "",
+ "Ruestung",
+ "brennende Haende",
+ "Magie entdecken",
+ "magisches Geschoss",
+ "Schild",
+ "Schockgriff",
+ "Unsichtbarkeit",
+ "Ms saeurepfeil",
+ "stinkende Wolke",
+ "Magie bannen",
+ "Feuerball",
+ "Flammenpfeil",
+ "hast",
+ "Person festhalten",
+ "Unsichtbarkeit 3m",
+ "Blitzstrahl",
+ "Vampirgriff",
+ "Furcht",
+ "Eissturm",
+ "Steinhaut",
+ "Todeswolke",
+ "Kaeltekegel",
+ "Monster festhalten",
+ "Segen",
+ "leichte Wunden heilen",
+ "leichte Wunden verursachen",
+ "Magie entdecken",
+ "Schutz vor boesem",
+ "Staerkung",
+ "Flammenklinge",
+ "Person festhalten",
+ "Gift verlangsamen",
+ "Nahrung erschaffen",
+ "Magie bannen",
+ "Schutzgewand",
+ "Gebet",
+ "Laehmung aufheben",
+ "schwere Wunden heilen",
+ "schwere Wunden verursachen",
+ "Gift neutralisieren",
+ "Schutz vor boesem 3m",
+ "Schutz vor Blitzen",
+ "kritische Wunden heilen",
+ "kritische Wunden verursachen",
+ "Flammenschlag",
+ "Tote erwecken",
+ "Haende auflegen",
+ "",
+ "",
+ ""
+};
+
+static const StringListProvider kEoB1SpellNamesDOSGermanProvider = { ARRAYSIZE(kEoB1SpellNamesDOSGerman), kEoB1SpellNamesDOSGerman };
+
+static const char *const kEoB1MagicStrings1DOSGerman[6] = {
+ "KEIN ZAUBER",
+ "KEIN ZAUBER",
+ "Fuer diesen Zauber musst du eine Hand frei haben.\r",
+ "Zwei Sprueche dieses Typs koennen nicht gleichzeitig wirken.\r",
+ "%s zaubert %s.\r",
+ "ok\r"
+};
+
+static const StringListProvider kEoB1MagicStrings1DOSGermanProvider = { ARRAYSIZE(kEoB1MagicStrings1DOSGerman), kEoB1MagicStrings1DOSGerman };
+
+static const char *const kEoB1MagicStrings2DOSGerman[3] = {
+ "Kein Effekt\r",
+ "%s wurde aufgeloest!\r",
+ "Das Team wurde mit einem Todesbann belegt!\r"
+};
+
+static const StringListProvider kEoB1MagicStrings2DOSGermanProvider = { ARRAYSIZE(kEoB1MagicStrings2DOSGerman), kEoB1MagicStrings2DOSGerman };
+
+static const char *const kEoB1MagicStrings3DOSGerman[6] = {
+ "Zauber auf welchen Charakter anwenden? ",
+ "\rok\r",
+ "\rZauber abgebrochen.\r",
+ "%s's %s Zauber laesst nach.\r",
+ "%s traf das Monster nicht.\r",
+ "%s kann nur in vorderen Reihen zuschlagen!\r"
+};
+
+static const StringListProvider kEoB1MagicStrings3DOSGermanProvider = { ARRAYSIZE(kEoB1MagicStrings3DOSGerman), kEoB1MagicStrings3DOSGerman };
+
+static const char *const kEoB1MagicStrings4DOSGerman[2] = {
+ "Kein Effekt.\r",
+ "Kein Effekt\r"
+};
+
+static const StringListProvider kEoB1MagicStrings4DOSGermanProvider = { ARRAYSIZE(kEoB1MagicStrings4DOSGerman), kEoB1MagicStrings4DOSGerman };
+
+static const char *const kEoB1MagicStrings6DOSGerman[1] = {
+ "%s hat bereits eine hochrangige Ruestungsklasse.\r"
+};
+
+static const StringListProvider kEoB1MagicStrings6DOSGermanProvider = { ARRAYSIZE(kEoB1MagicStrings6DOSGerman), kEoB1MagicStrings6DOSGerman };
+
+static const char *const kEoB1MagicStrings7DOSGerman[5] = {
+ "1.",
+ "2.",
+ "3.",
+ "4.",
+ "5."
+};
+
+static const StringListProvider kEoB1MagicStrings7DOSGermanProvider = { ARRAYSIZE(kEoB1MagicStrings7DOSGerman), kEoB1MagicStrings7DOSGerman };
+
+static const char *const kEoB1MagicStrings8DOSGerman[3] = {
+ "Alle Zauber auf %s wurden abgewehrt.\r",
+ "Das Team ist schon gesegnet!\r",
+ "Der Heilungszauber versagt!\r"
+};
+
+static const StringListProvider kEoB1MagicStrings8DOSGermanProvider = { ARRAYSIZE(kEoB1MagicStrings8DOSGerman), kEoB1MagicStrings8DOSGerman };
+
+static const byte kEoB1ManDefDOSGerman[120] = {
+ 0x09, 0x0A, 0x01, 0x00, 0x09, 0x04, 0x03, 0x00,
+ 0x09, 0x06, 0x01, 0x00, 0x09, 0x03, 0x03, 0x00,
+ 0x09, 0x04, 0x02, 0x00, 0x09, 0x01, 0x02, 0x00,
+ 0x09, 0x05, 0x01, 0x00, 0x09, 0x09, 0x02, 0x00,
+ 0x09, 0x01, 0x03, 0x00, 0x23, 0x01, 0x05, 0x00,
+ 0x23, 0x02, 0x02, 0x00, 0x23, 0x03, 0x06, 0x00,
+ 0x23, 0x05, 0x01, 0x00, 0x23, 0x06, 0x03, 0x00,
+ 0x23, 0x07, 0x01, 0x00, 0x1A, 0x02, 0x01, 0x00,
+ 0x1A, 0x03, 0x02, 0x00, 0x1A, 0x06, 0x01, 0x00,
+ 0x24, 0x01, 0x03, 0x00, 0x24, 0x03, 0x03, 0x00,
+ 0x24, 0x03, 0x01, 0x00, 0x02, 0x04, 0x03, 0x00,
+ 0x02, 0x03, 0x03, 0x00, 0x02, 0x07, 0x02, 0x00,
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0x05, 0x03, 0x00,
+ 0x01, 0x04, 0x03, 0x00, 0x0C, 0x02, 0x01, 0x00,
+ 0x0C, 0x03, 0x03, 0x00, 0x0C, 0x02, 0x04, 0x00
+};
+
+static const ByteProvider kEoB1ManDefDOSGermanProvider = { ARRAYSIZE(kEoB1ManDefDOSGerman), kEoB1ManDefDOSGerman };
+
+static const char *const kEoB1ManWordDOSGerman[31] = {
+ "dargestellt",
+ "nur",
+ "attackieren",
+ "sie",
+ "handwaffen",
+ "monster",
+ "diese",
+ "wird",
+ "jedoch",
+ "sie",
+ "getragene",
+ "sobald",
+ "klerikale",
+ "getragene",
+ "sich",
+ "elternteile",
+ "gesicht",
+ "nicht",
+ "ihrer",
+ "magische",
+ "einige",
+ "sich",
+ "charaktere",
+ "gesinnung",
+ "versammlung",
+ "wachen",
+ "des",
+ "werden",
+ "seinen",
+ "greift",
+ ""
+};
+
+static const StringListProvider kEoB1ManWordDOSGermanProvider = { ARRAYSIZE(kEoB1ManWordDOSGerman), kEoB1ManWordDOSGerman };
+
+static const char *const kEoB1ManPromptDOSGerman[1] = {
+ "\r\r\r\rAuf der Seite mit diesem Symbol...\r\rFinde Zeile %d\rGib Wort %d ein\r"
+};
+
+static const StringListProvider kEoB1ManPromptDOSGermanProvider = { ARRAYSIZE(kEoB1ManPromptDOSGerman), kEoB1ManPromptDOSGerman };
+
+static const char *const kEoB1MonsterDistAttStringsDOSGerman[5] = {
+ "%s wurde von einem Schwere-Wunden-Zauber getroffen!\r",
+ "Das Team wurde von einem psychischen Hirnstoss getroffen!\r",
+ "gelaehmt",
+ "vergiftet",
+ "gelaehmt"
+};
+
+static const StringListProvider kEoB1MonsterDistAttStringsDOSGermanProvider = { ARRAYSIZE(kEoB1MonsterDistAttStringsDOSGerman), kEoB1MonsterDistAttStringsDOSGerman };
+
diff --git a/devtools/create_kyradat/resources/eob2_dos.h b/devtools/create_kyradat/resources/eob2_dos.h
new file mode 100644
index 0000000000..f260913e3c
--- /dev/null
+++ b/devtools/create_kyradat/resources/eob2_dos.h
@@ -0,0 +1,2501 @@
+static const byte kEoB2ChargenStartLevelsDOS[60] = {
+ 0x07, 0x00, 0x00, 0x01, 0x06, 0x00, 0x00, 0x01,
+ 0x06, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0x01,
+ 0x07, 0x00, 0x00, 0x01, 0x07, 0x00, 0x00, 0x01,
+ 0x06, 0x06, 0x00, 0x02, 0x06, 0x06, 0x00, 0x02,
+ 0x06, 0x05, 0x00, 0x02, 0x05, 0x05, 0x06, 0x03,
+ 0x06, 0x05, 0x00, 0x02, 0x06, 0x06, 0x00, 0x02,
+ 0x05, 0x05, 0x05, 0x03, 0x05, 0x06, 0x00, 0x02,
+ 0x06, 0x05, 0x00, 0x02
+};
+
+static const ByteProvider kEoB2ChargenStartLevelsDOSProvider = { ARRAYSIZE(kEoB2ChargenStartLevelsDOS), kEoB2ChargenStartLevelsDOS };
+
+static const byte kEoB2ChargenClassMinStatsDOS[90] = {
+ 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, 0x00,
+ 0x0E, 0x0D, 0x0E, 0x00, 0x0C, 0x00, 0x0D, 0x00,
+ 0x09, 0x11, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x09, 0x00, 0x00, 0x09, 0x00, 0x09, 0x00,
+ 0x00, 0x00, 0x09, 0x00, 0x00, 0x09, 0x00, 0x00,
+ 0x09, 0x09, 0x00, 0x00, 0x00, 0x00, 0x09, 0x09,
+ 0x00, 0x09, 0x00, 0x00, 0x00, 0x09, 0x00, 0x09,
+ 0x00, 0x00, 0x00, 0x00, 0x09, 0x09, 0x00, 0x00,
+ 0x09, 0x09, 0x09, 0x00, 0x00, 0x00, 0x0D, 0x00,
+ 0x0E, 0x0D, 0x0E, 0x00, 0x00, 0x09, 0x09, 0x00,
+ 0x00, 0x00
+};
+
+static const ByteProvider kEoB2ChargenClassMinStatsDOSProvider = { ARRAYSIZE(kEoB2ChargenClassMinStatsDOS), kEoB2ChargenClassMinStatsDOS };
+
+static const byte kEoB2ChargenRaceMinStatsDOS[36] = {
+ 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x08,
+ 0x03, 0x07, 0x06, 0x08, 0x03, 0x04, 0x03, 0x06,
+ 0x06, 0x03, 0x08, 0x03, 0x03, 0x03, 0x0C, 0x02,
+ 0x06, 0x07, 0x02, 0x03, 0x08, 0x03, 0x07, 0x06,
+ 0x03, 0x08, 0x0A, 0x06
+};
+
+static const ByteProvider kEoB2ChargenRaceMinStatsDOSProvider = { ARRAYSIZE(kEoB2ChargenRaceMinStatsDOS), kEoB2ChargenRaceMinStatsDOS };
+
+static const uint16 kEoB2ChargenRaceMaxStatsDOS[36] = {
+ 0x6412, 0x0012, 0x0012, 0x0012, 0x0012, 0x0012, 0x6412, 0x0012,
+ 0x0012, 0x0013, 0x0011, 0x0012, 0x6412, 0x0012, 0x0012, 0x0012,
+ 0x0012, 0x0012, 0x6412, 0x0012, 0x0012, 0x0011, 0x0013, 0x0010,
+ 0x6412, 0x0013, 0x0011, 0x0012, 0x0012, 0x0012, 0x0011, 0x0012,
+ 0x0011, 0x0013, 0x0012, 0x0012
+};
+
+static const Uint16Provider kEoB2ChargenRaceMaxStatsDOSProvider = { ARRAYSIZE(kEoB2ChargenRaceMaxStatsDOS), kEoB2ChargenRaceMaxStatsDOS };
+
+static const byte kEoB2SaveThrowTable1DOS[50] = {
+ 0x10, 0x0E, 0x0D, 0x0B, 0x0A, 0x08, 0x07, 0x05,
+ 0x04, 0x03, 0x12, 0x10, 0x0F, 0x0D, 0x0C, 0x0A,
+ 0x09, 0x07, 0x06, 0x05, 0x11, 0x0F, 0x0E, 0x0C,
+ 0x0B, 0x09, 0x08, 0x06, 0x05, 0x04, 0x14, 0x11,
+ 0x10, 0x0D, 0x0C, 0x09, 0x08, 0x05, 0x04, 0x04,
+ 0x13, 0x11, 0x10, 0x0E, 0x0D, 0x0B, 0x0A, 0x08,
+ 0x07, 0x06
+};
+
+static const ByteProvider kEoB2SaveThrowTable1DOSProvider = { ARRAYSIZE(kEoB2SaveThrowTable1DOS), kEoB2SaveThrowTable1DOS };
+
+static const byte kEoB2SaveThrowTable2DOS[25] = {
+ 0x0E, 0x0D, 0x0B, 0x0A, 0x08, 0x0B, 0x09, 0x07,
+ 0x05, 0x03, 0x0D, 0x0B, 0x09, 0x07, 0x05, 0x0F,
+ 0x0D, 0x0B, 0x09, 0x07, 0x0C, 0x0A, 0x08, 0x06,
+ 0x04
+};
+
+static const ByteProvider kEoB2SaveThrowTable2DOSProvider = { ARRAYSIZE(kEoB2SaveThrowTable2DOS), kEoB2SaveThrowTable2DOS };
+
+static const byte kEoB2SaveThrowTable3DOS[35] = {
+ 0x0A, 0x09, 0x07, 0x06, 0x05, 0x04, 0x02, 0x0E,
+ 0x0D, 0x0B, 0x0A, 0x09, 0x08, 0x06, 0x0D, 0x0C,
+ 0x0A, 0x09, 0x08, 0x07, 0x05, 0x10, 0x0F, 0x0D,
+ 0x0C, 0x0B, 0x0A, 0x08, 0x0F, 0x0E, 0x0C, 0x0B,
+ 0x0A, 0x09, 0x07
+};
+
+static const ByteProvider kEoB2SaveThrowTable3DOSProvider = { ARRAYSIZE(kEoB2SaveThrowTable3DOS), kEoB2SaveThrowTable3DOS };
+
+static const byte kEoB2SaveThrowTable4DOS[30] = {
+ 0x0D, 0x0C, 0x0B, 0x0A, 0x09, 0x08, 0x0E, 0x0C,
+ 0x0A, 0x08, 0x06, 0x07, 0x0C, 0x0B, 0x0A, 0x09,
+ 0x08, 0x04, 0x10, 0x0F, 0x0E, 0x0D, 0x0C, 0x0B,
+ 0x0F, 0x0D, 0x0B, 0x09, 0x07, 0x05
+};
+
+static const ByteProvider kEoB2SaveThrowTable4DOSProvider = { ARRAYSIZE(kEoB2SaveThrowTable4DOS), kEoB2SaveThrowTable4DOS };
+
+static const byte kEoB2SaveThrwLvlIndexDOS[6] = {
+ 0x11, 0x15, 0x13, 0x15, 0x11, 0x11
+};
+
+static const ByteProvider kEoB2SaveThrwLvlIndexDOSProvider = { ARRAYSIZE(kEoB2SaveThrwLvlIndexDOS), kEoB2SaveThrwLvlIndexDOS };
+
+static const byte kEoB2SaveThrwModDivDOS[6] = {
+ 0x02, 0x05, 0x03, 0x04, 0x02, 0x02
+};
+
+static const ByteProvider kEoB2SaveThrwModDivDOSProvider = { ARRAYSIZE(kEoB2SaveThrwModDivDOS), kEoB2SaveThrwModDivDOS };
+
+static const byte kEoB2SaveThrwModExtDOS[6] = {
+ 0x0A, 0x05, 0x07, 0x06, 0x0A, 0x0A
+};
+
+static const ByteProvider kEoB2SaveThrwModExtDOSProvider = { ARRAYSIZE(kEoB2SaveThrwModExtDOS), kEoB2SaveThrwModExtDOS };
+
+static const char *const kEoB2EnchantedStringDOS[1] = {
+ "+%d %s"
+};
+
+static const StringListProvider kEoB2EnchantedStringDOSProvider = { ARRAYSIZE(kEoB2EnchantedStringDOS), kEoB2EnchantedStringDOS };
+
+static const char *const kEoB2MenuStringsSpellNoDOS[3] = {
+ "6",
+ "7",
+ "8"
+};
+
+static const StringListProvider kEoB2MenuStringsSpellNoDOSProvider = { ARRAYSIZE(kEoB2MenuStringsSpellNoDOS), kEoB2MenuStringsSpellNoDOS };
+
+static const byte kEoB2SpellLevelsMageDOS[35] = {
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02,
+ 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x03, 0x03, 0x04, 0x04, 0x04, 0x04, 0x05, 0x05,
+ 0x05, 0x06, 0x06, 0x06, 0x06, 0x07, 0x07, 0x08,
+ 0x00, 0x01, 0x01
+};
+
+static const ByteProvider kEoB2SpellLevelsMageDOSProvider = { ARRAYSIZE(kEoB2SpellLevelsMageDOS), kEoB2SpellLevelsMageDOS };
+
+static const byte kEoB2SpellLevelsClericDOS[29] = {
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02,
+ 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x04, 0x04,
+ 0x04, 0x04, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
+ 0x06, 0x06, 0x08, 0x08, 0x00
+};
+
+static const ByteProvider kEoB2SpellLevelsClericDOSProvider = { ARRAYSIZE(kEoB2SpellLevelsClericDOS), kEoB2SpellLevelsClericDOS };
+
+static const byte kEoB2NumSpellsClericDOS[136] = {
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x03, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x04, 0x04, 0x03, 0x02, 0x02, 0x00, 0x00, 0x00,
+ 0x05, 0x04, 0x04, 0x03, 0x02, 0x01, 0x00, 0x00,
+ 0x06, 0x05, 0x05, 0x03, 0x02, 0x02, 0x00, 0x00,
+ 0x06, 0x06, 0x06, 0x04, 0x02, 0x02, 0x00, 0x00,
+ 0x06, 0x06, 0x06, 0x05, 0x03, 0x02, 0x01, 0x00,
+ 0x06, 0x06, 0x06, 0x06, 0x04, 0x02, 0x01, 0x00,
+ 0x07, 0x07, 0x07, 0x06, 0x04, 0x03, 0x01, 0x00,
+ 0x07, 0x07, 0x07, 0x07, 0x05, 0x03, 0x02, 0x00
+};
+
+static const ByteProvider kEoB2NumSpellsClericDOSProvider = { ARRAYSIZE(kEoB2NumSpellsClericDOS), kEoB2NumSpellsClericDOS };
+
+static const byte kEoB2NumSpellsWisAdjDOS[64] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2NumSpellsWisAdjDOSProvider = { ARRAYSIZE(kEoB2NumSpellsWisAdjDOS), kEoB2NumSpellsWisAdjDOS };
+
+static const byte kEoB2NumSpellsPalDOS[136] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2NumSpellsPalDOSProvider = { ARRAYSIZE(kEoB2NumSpellsPalDOS), kEoB2NumSpellsPalDOS };
+
+static const byte kEoB2NumSpellsMageDOS[276] = {
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x03, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x03, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x04, 0x04, 0x03, 0x02, 0x02, 0x00, 0x00, 0x00,
+ 0x04, 0x04, 0x04, 0x03, 0x03, 0x00, 0x00, 0x00,
+ 0x04, 0x04, 0x04, 0x04, 0x04, 0x01, 0x00, 0x00,
+ 0x05, 0x05, 0x05, 0x04, 0x04, 0x02, 0x00, 0x00,
+ 0x05, 0x05, 0x05, 0x04, 0x04, 0x02, 0x01, 0x00,
+ 0x05, 0x05, 0x05, 0x05, 0x05, 0x02, 0x01, 0x00,
+ 0x05, 0x05, 0x05, 0x05, 0x05, 0x03, 0x02, 0x01,
+ 0x05, 0x05, 0x05, 0x05, 0x05, 0x03, 0x03, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2NumSpellsMageDOSProvider = { ARRAYSIZE(kEoB2NumSpellsMageDOS), kEoB2NumSpellsMageDOS };
+
+static const uint32 kEoB2ExperienceTable0DOS[14] = {
+ 0x00000000, 0x000007D0, 0x00000FA0, 0x00001F40, 0x00003E80, 0x00007D00, 0x0000FA00, 0x0001E848,
+ 0x0003D090, 0x0007A120, 0x000B71B0, 0x000F4240, 0x001312D0, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB2ExperienceTable0DOSProvider = { ARRAYSIZE(kEoB2ExperienceTable0DOS), kEoB2ExperienceTable0DOS };
+
+static const uint32 kEoB2ExperienceTable1DOS[14] = {
+ 0x00000000, 0x000009C4, 0x00001388, 0x00002710, 0x00004E20, 0x00009C40, 0x0000EA60, 0x00015F90,
+ 0x00020F58, 0x0003D090, 0x0005B8D8, 0x000B71B0, 0x00112A88, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB2ExperienceTable1DOSProvider = { ARRAYSIZE(kEoB2ExperienceTable1DOS), kEoB2ExperienceTable1DOS };
+
+static const uint32 kEoB2ExperienceTable2DOS[14] = {
+ 0x00000000, 0x000005DC, 0x00000BB8, 0x00001770, 0x000032C8, 0x00006B6C, 0x0000D6D8, 0x0001ADB0,
+ 0x00036EE8, 0x0006DDD0, 0x000A4CB8, 0x000DBBA0, 0x00112A88, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB2ExperienceTable2DOSProvider = { ARRAYSIZE(kEoB2ExperienceTable2DOS), kEoB2ExperienceTable2DOS };
+
+static const uint32 kEoB2ExperienceTable3DOS[14] = {
+ 0x00000000, 0x000004E2, 0x000009C4, 0x00001388, 0x00002710, 0x00004E20, 0x00009C40, 0x00011170,
+ 0x0001ADB0, 0x00027100, 0x00035B60, 0x0006B6C0, 0x000A1220, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB2ExperienceTable3DOSProvider = { ARRAYSIZE(kEoB2ExperienceTable3DOS), kEoB2ExperienceTable3DOS };
+
+static const uint32 kEoB2ExperienceTable4DOS[14] = {
+ 0x00000000, 0x000008CA, 0x00001194, 0x00002328, 0x00004650, 0x00008CA0, 0x000124F8, 0x000249F0,
+ 0x000493E0, 0x000927C0, 0x000DBBA0, 0x00124F80, 0x0016E360, 0xFFFFFFFF
+};
+
+static const Uint32Provider kEoB2ExperienceTable4DOSProvider = { ARRAYSIZE(kEoB2ExperienceTable4DOS), kEoB2ExperienceTable4DOS };
+
+static const byte kEoB2ExpObjectTlModeDOS[18] = {
+ 0x00, 0x00, 0x01, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x01, 0x02, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00,
+ 0x02, 0x00
+};
+
+static const ByteProvider kEoB2ExpObjectTlModeDOSProvider = { ARRAYSIZE(kEoB2ExpObjectTlModeDOS), kEoB2ExpObjectTlModeDOS };
+
+static const byte kEoB2ExpObjectTblIndexDOS[14] = {
+ 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2ExpObjectTblIndexDOSProvider = { ARRAYSIZE(kEoB2ExpObjectTblIndexDOS), kEoB2ExpObjectTblIndexDOS };
+
+static const byte kEoB2ExpObjectShpStartDOS[4] = {
+ 0x07, 0x0C, 0x0F, 0x12
+};
+
+static const ByteProvider kEoB2ExpObjectShpStartDOSProvider = { ARRAYSIZE(kEoB2ExpObjectShpStartDOS), kEoB2ExpObjectShpStartDOS };
+
+static const byte kEoB2ExpObjectTbl1DOS[13] = {
+ 0x0F, 0x05, 0x0F, 0x05, 0x06, 0x05, 0x06, 0x08,
+ 0x06, 0x08, 0x06, 0x08, 0x00
+};
+
+static const ByteProvider kEoB2ExpObjectTbl1DOSProvider = { ARRAYSIZE(kEoB2ExpObjectTbl1DOS), kEoB2ExpObjectTbl1DOS };
+
+static const byte kEoB2ExpObjectTbl2DOS[10] = {
+ 0x0F, 0x09, 0x0F, 0x09, 0x02, 0x0A, 0x0B, 0x0A,
+ 0x0B, 0x00
+};
+
+static const ByteProvider kEoB2ExpObjectTbl2DOSProvider = { ARRAYSIZE(kEoB2ExpObjectTbl2DOS), kEoB2ExpObjectTbl2DOS };
+
+static const byte kEoB2ExpObjectTbl3DOS[11] = {
+ 0x05, 0x03, 0x05, 0x03, 0x03, 0x03, 0x03, 0x0B,
+ 0x03, 0x0B, 0x00
+};
+
+static const ByteProvider kEoB2ExpObjectTbl3DOSProvider = { ARRAYSIZE(kEoB2ExpObjectTbl3DOS), kEoB2ExpObjectTbl3DOS };
+
+static const byte kEoB2ExpObjectYDOS[4] = {
+ 0x77, 0x67, 0x4F, 0x3F
+};
+
+static const ByteProvider kEoB2ExpObjectYDOSProvider = { ARRAYSIZE(kEoB2ExpObjectYDOS), kEoB2ExpObjectYDOS };
+
+static const byte kEoB2SparkDefStepsDOS[8] = {
+ 0x40, 0x90, 0xE4, 0xB9, 0x6E, 0x1B, 0x06, 0x01
+};
+
+static const ByteProvider kEoB2SparkDefStepsDOSProvider = { ARRAYSIZE(kEoB2SparkDefStepsDOS), kEoB2SparkDefStepsDOS };
+
+static const byte kEoB2SparkDefSubStepsDOS[4] = {
+ 0xC0, 0x30, 0x0C, 0x03
+};
+
+static const ByteProvider kEoB2SparkDefSubStepsDOSProvider = { ARRAYSIZE(kEoB2SparkDefSubStepsDOS), kEoB2SparkDefSubStepsDOS };
+
+static const byte kEoB2SparkDefShiftDOS[4] = {
+ 0x06, 0x04, 0x02, 0x00
+};
+
+static const ByteProvider kEoB2SparkDefShiftDOSProvider = { ARRAYSIZE(kEoB2SparkDefShiftDOS), kEoB2SparkDefShiftDOS };
+
+static const byte kEoB2SparkDefAddDOS[8] = {
+ 0x08, 0x06, 0x1C, 0x14, 0x0D, 0x18, 0x0D, 0x0F
+};
+
+static const ByteProvider kEoB2SparkDefAddDOSProvider = { ARRAYSIZE(kEoB2SparkDefAddDOS), kEoB2SparkDefAddDOS };
+
+static const byte kEoB2SparkDefXDOS[6] = {
+ 0x17, 0x20, 0x17, 0x20, 0x17, 0x20
+};
+
+static const ByteProvider kEoB2SparkDefXDOSProvider = { ARRAYSIZE(kEoB2SparkDefXDOS), kEoB2SparkDefXDOS };
+
+static const byte kEoB2SparkDefYDOS[6] = {
+ 0x02, 0x02, 0x34, 0x34, 0x66, 0x66
+};
+
+static const ByteProvider kEoB2SparkDefYDOSProvider = { ARRAYSIZE(kEoB2SparkDefYDOS), kEoB2SparkDefYDOS };
+
+static const uint32 kEoB2SparkOfFlags1DOS[11] = {
+ 0x40000000, 0x95000000, 0xEA550000, 0xBFAA5400, 0x6AFFA954, 0x15AAFEA9, 0x0055ABFE, 0x000056AB,
+ 0x00000156, 0x00000001, 0x00000000
+};
+
+static const Uint32Provider kEoB2SparkOfFlags1DOSProvider = { ARRAYSIZE(kEoB2SparkOfFlags1DOS), kEoB2SparkOfFlags1DOS };
+
+static const uint32 kEoB2SparkOfFlags2DOS[16] = {
+ 0xC0000000, 0x30000000, 0x0C000000, 0x03000000, 0x00C00000, 0x00300000, 0x000C0000, 0x00030000,
+ 0x0000C000, 0x00003000, 0x00000C00, 0x00000300, 0x000000C0, 0x00000030, 0x0000000C, 0x00000003
+};
+
+static const Uint32Provider kEoB2SparkOfFlags2DOSProvider = { ARRAYSIZE(kEoB2SparkOfFlags2DOS), kEoB2SparkOfFlags2DOS };
+
+static const byte kEoB2SparkOfShiftDOS[16] = {
+ 0x1E, 0x1C, 0x1A, 0x18, 0x16, 0x14, 0x12, 0x10,
+ 0x0E, 0x0C, 0x0A, 0x08, 0x06, 0x04, 0x02, 0x00
+};
+
+static const ByteProvider kEoB2SparkOfShiftDOSProvider = { ARRAYSIZE(kEoB2SparkOfShiftDOS), kEoB2SparkOfShiftDOS };
+
+static const byte kEoB2SparkOfXDOS[16] = {
+ 0x50, 0x70, 0x30, 0x68, 0x20, 0x60, 0x38, 0x78,
+ 0x80, 0x48, 0x58, 0x28, 0x60, 0x40, 0x70, 0x48
+};
+
+static const ByteProvider kEoB2SparkOfXDOSProvider = { ARRAYSIZE(kEoB2SparkOfXDOS), kEoB2SparkOfXDOS };
+
+static const byte kEoB2SparkOfYDOS[16] = {
+ 0x31, 0x2B, 0x48, 0x17, 0x16, 0x48, 0x35, 0x1B,
+ 0x43, 0x2E, 0x24, 0x28, 0x38, 0x1C, 0x16, 0x44
+};
+
+static const ByteProvider kEoB2SparkOfYDOSProvider = { ARRAYSIZE(kEoB2SparkOfYDOS), kEoB2SparkOfYDOS };
+
+static const byte kEoB2SpellPropertiesDOS[1750] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xFE, 0x2B, 0x16, 0x2B, 0x60, 0x00, 0xA7,
+ 0x13, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x5C, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x04, 0x2C, 0x16, 0x2B, 0xC3, 0x00,
+ 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x57, 0x00, 0x00, 0x00,
+ 0x00, 0x21, 0x00, 0x12, 0x2C, 0x16, 0x2B, 0x9D,
+ 0x01, 0xA7, 0x13, 0x4C, 0x00, 0x00, 0x00, 0x95,
+ 0x29, 0xBB, 0x01, 0xA7, 0x13, 0x5F, 0x02, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x1F, 0x2C, 0x16, 0x2B,
+ 0xD9, 0x01, 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0xFA, 0x01, 0xA7, 0x13, 0x55, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0x00, 0x2D, 0x2C, 0x16,
+ 0x2B, 0x00, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00,
+ 0x00, 0x96, 0x29, 0x00, 0x00, 0x00, 0x00, 0x5C,
+ 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x2C,
+ 0x16, 0x2B, 0x2D, 0x02, 0xA7, 0x13, 0x88, 0x04,
+ 0x00, 0x00, 0x97, 0x29, 0xE4, 0x02, 0xA7, 0x13,
+ 0x58, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x43,
+ 0x2C, 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00, 0x89,
+ 0x00, 0x00, 0x00, 0x98, 0x29, 0x00, 0x00, 0x00,
+ 0x00, 0x4B, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x48, 0x2C, 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00,
+ 0x4C, 0x00, 0x00, 0x00, 0x9A, 0x29, 0x00, 0x00,
+ 0x00, 0x00, 0x5F, 0x20, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x5C, 0x2C, 0x16, 0x2B, 0x2C, 0x00, 0xA7,
+ 0x13, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x14, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x6E, 0x2C, 0x16, 0x2B, 0x00, 0x00,
+ 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x5E, 0x40, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x7B, 0x2C, 0x16, 0x2B, 0x2B,
+ 0x03, 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x4D, 0x03, 0xA7, 0x13, 0x60, 0x00, 0x00,
+ 0x00, 0x00, 0x11, 0x00, 0x8D, 0x2C, 0x16, 0x2B,
+ 0x02, 0x00, 0xA7, 0x13, 0x00, 0x10, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x61, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x9A, 0x2C, 0x16,
+ 0x2B, 0x82, 0x03, 0xA7, 0x13, 0x00, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0xA4, 0x03, 0xA7, 0x13, 0x63,
+ 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0xA3, 0x2C,
+ 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00, 0x48, 0x02,
+ 0x00, 0x00, 0x99, 0x29, 0x00, 0x00, 0x00, 0x00,
+ 0x64, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xA9,
+ 0x2C, 0x16, 0x2B, 0xD3, 0x03, 0xA7, 0x13, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0xF5, 0x03, 0xA7,
+ 0x13, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xB5, 0x2C, 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00,
+ 0x40, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x5E, 0x40, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xCD, 0x2C, 0x16, 0x2B, 0xFA, 0x04, 0xA7,
+ 0x13, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1C,
+ 0x05, 0xA7, 0x13, 0x47, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x00, 0xDC, 0x2C, 0x16, 0x2B, 0x4B, 0x05,
+ 0xA7, 0x13, 0x88, 0x04, 0x00, 0x00, 0x9B, 0x29,
+ 0x04, 0x06, 0xA7, 0x13, 0x66, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0xEB, 0x2C, 0x16, 0x2B, 0x2B,
+ 0x06, 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xF0, 0x2C, 0x16, 0x2B,
+ 0x89, 0x06, 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0xAB, 0x06, 0xA7, 0x13, 0x59, 0x00,
+ 0x00, 0x00, 0x00, 0x41, 0x00, 0xFA, 0x2C, 0x16,
+ 0x2B, 0x00, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00,
+ 0x00, 0x9C, 0x29, 0x00, 0x00, 0x00, 0x00, 0x08,
+ 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0x2D,
+ 0x16, 0x2B, 0x3C, 0x07, 0xA7, 0x13, 0x20, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1D,
+ 0x2D, 0x16, 0x2B, 0x9F, 0x07, 0xA7, 0x13, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x76, 0x00, 0x00, 0x00, 0x00, 0x41, 0x00,
+ 0x2A, 0x2D, 0x16, 0x2B, 0x94, 0x08, 0xA7, 0x13,
+ 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xB6, 0x08,
+ 0xA7, 0x13, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x37, 0x2D, 0x16, 0x2B, 0xD0, 0x09, 0xA7,
+ 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x45, 0x2D, 0x16, 0x2B, 0x25, 0x0B,
+ 0xA7, 0x13, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0x52, 0x2D, 0x16, 0x2B, 0x89,
+ 0x0B, 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x61, 0x2D, 0x16, 0x2B,
+ 0xF1, 0x0B, 0xA7, 0x13, 0x20, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x2D, 0x16,
+ 0x2B, 0x0D, 0x0C, 0xA7, 0x13, 0x4C, 0x00, 0x00,
+ 0x00, 0x9D, 0x29, 0x1C, 0x0C, 0xA7, 0x13, 0x49,
+ 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x7C, 0x2D,
+ 0x16, 0x2B, 0x2B, 0x0C, 0xA7, 0x13, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8C,
+ 0x2D, 0x16, 0x2B, 0x98, 0x0C, 0xA7, 0x13, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x9C, 0x2D, 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xB2, 0x2D, 0x16, 0x2B, 0x00, 0x00,
+ 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x9E, 0x29,
+ 0x00, 0x00, 0x00, 0x00, 0x5B, 0x00, 0x04, 0x00,
+ 0x00, 0x00, 0x00, 0xB8, 0x2D, 0x16, 0x2B, 0xDE,
+ 0x0C, 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0xCB, 0x2D, 0x16, 0x2B,
+ 0xF6, 0x0C, 0xA7, 0x13, 0x20, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0xDD, 0x2D, 0x16,
+ 0x2B, 0x9D, 0x01, 0xA7, 0x13, 0x4C, 0x00, 0x00,
+ 0x00, 0x95, 0x29, 0xBB, 0x01, 0xA7, 0x13, 0x5F,
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEA, 0x2D,
+ 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00, 0x29, 0x00,
+ 0x00, 0x00, 0x9F, 0x29, 0x00, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0xFF,
+ 0x2D, 0x16, 0x2B, 0x1A, 0x0D, 0xA7, 0x13, 0x39,
+ 0x00, 0x00, 0x00, 0xA0, 0x29, 0xC9, 0x0D, 0xA7,
+ 0x13, 0x5B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x03, 0x2E, 0x16, 0x2B, 0xEF, 0x0D, 0xA7, 0x13,
+ 0x08, 0x24, 0x00, 0x00, 0xA1, 0x29, 0xE4, 0x02,
+ 0xA7, 0x13, 0x63, 0x00, 0x00, 0x00, 0x00, 0x21,
+ 0x00, 0x0F, 0x2E, 0x16, 0x2B, 0xD3, 0x03, 0xA7,
+ 0x13, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xF5,
+ 0x03, 0xA7, 0x13, 0x65, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x1B, 0x2E, 0x16, 0x2B, 0x99, 0x0E,
+ 0xA7, 0x13, 0x28, 0x00, 0x00, 0x00, 0xA2, 0x29,
+ 0xF2, 0x0E, 0xA7, 0x13, 0x6F, 0x00, 0x20, 0x00,
+ 0x00, 0x00, 0x00, 0x27, 0x2E, 0x16, 0x2B, 0x08,
+ 0x0F, 0xA7, 0x13, 0x40, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x33, 0x2E, 0x16, 0x2B,
+ 0x02, 0x00, 0xA7, 0x13, 0x00, 0x10, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x61, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x2E, 0x16,
+ 0x2B, 0x00, 0x00, 0x00, 0x00, 0x99, 0x00, 0x00,
+ 0x00, 0xA3, 0x29, 0x00, 0x00, 0x00, 0x00, 0x71,
+ 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x51, 0x2E,
+ 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00, 0x4C, 0x00,
+ 0x00, 0x00, 0xA4, 0x29, 0x00, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x58,
+ 0x2E, 0x16, 0x2B, 0x38, 0x0F, 0xA7, 0x13, 0x40,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x69, 0x2E, 0x16, 0x2B, 0x95, 0x0F, 0xA7, 0x13,
+ 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x00, 0x7E, 0x2E, 0x16, 0x2B, 0x71, 0x0F, 0xA7,
+ 0x13, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x92, 0x2E, 0x16, 0x2B, 0xAE, 0x0F,
+ 0xA7, 0x13, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x73, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xA4, 0x2E, 0x16, 0x2B, 0x00,
+ 0x00, 0x00, 0x00, 0x48, 0x02, 0x00, 0x00, 0x9F,
+ 0x29, 0x00, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x08,
+ 0x00, 0x00, 0x00, 0x00, 0xC4, 0x2E, 0x16, 0x2B,
+ 0xD1, 0x0F, 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6D, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0x00, 0xDA, 0x2E, 0x16,
+ 0x2B, 0xEA, 0x0F, 0xA7, 0x13, 0x20, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6A,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF, 0x2E,
+ 0x16, 0x2B, 0x0E, 0x10, 0xA7, 0x13, 0x00, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x30, 0x10, 0xA7, 0x13,
+ 0x62, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0xFC,
+ 0x2E, 0x16, 0x2B, 0x4F, 0x10, 0xA7, 0x13, 0x20,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x07, 0x2F, 0x16, 0x2B, 0x2B, 0x0C, 0xA7, 0x13,
+ 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x00, 0x13, 0x2F, 0x16, 0x2B, 0x0D, 0x0C, 0xA7,
+ 0x13, 0x4C, 0x00, 0x00, 0x00, 0x9D, 0x29, 0x1C,
+ 0x0C, 0xA7, 0x13, 0x49, 0x00, 0x02, 0x00, 0x00,
+ 0x00, 0x00, 0x1F, 0x2F, 0x16, 0x2B, 0x84, 0x10,
+ 0xA7, 0x13, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0x24, 0x2F, 0x16, 0x2B, 0x97,
+ 0x10, 0xA7, 0x13, 0x20, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x29, 0x2F, 0x16, 0x2B,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x2F, 0x16,
+ 0x2B, 0xA8, 0x13, 0xA7, 0x13, 0x20, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5B,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x2F,
+ 0x16, 0x2B, 0xE6, 0x10, 0xA7, 0x13, 0x00, 0x10,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x67, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F,
+ 0x2F, 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0xCD, 0x13, 0xA7,
+ 0x13, 0x62, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x50, 0x2F, 0x16, 0x2B, 0x00, 0x00, 0x00, 0x00,
+ 0x4C, 0x00, 0x00, 0x00, 0xA5, 0x29, 0x00, 0x00,
+ 0x00, 0x00, 0x5B, 0x00, 0x00, 0x02, 0x00, 0x00,
+ 0x00, 0x5F, 0x2F, 0x16, 0x2B, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3D,
+ 0x14, 0xA7, 0x13, 0x62, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x60, 0x2F, 0x16, 0x2B, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6A, 0x12, 0xA7, 0x13, 0x65, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x61, 0x2F, 0x16, 0x2B, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xF6, 0x11, 0xA7, 0x13, 0x65, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x62, 0x2F, 0x16, 0x2B,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xE1, 0x12, 0xA7, 0x13, 0x65, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x2F, 0x16,
+ 0x2B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x43, 0x13, 0xA7, 0x13, 0x65,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2SpellPropertiesDOSProvider = { ARRAYSIZE(kEoB2SpellPropertiesDOS), kEoB2SpellPropertiesDOS };
+
+static const byte kEoB2MagicFlightPropsDOS[56] = {
+ 0x04, 0xFF, 0x41, 0x0C, 0x0B, 0xFF, 0x04, 0x06,
+ 0x0D, 0xFF, 0x7A, 0x09, 0x0F, 0xFF, 0x4A, 0x08,
+ 0x11, 0x06, 0x38, 0x0A, 0x14, 0x06, 0x7A, 0x0B,
+ 0x18, 0xFF, 0x4A, 0x08, 0x36, 0xFF, 0x4B, 0x09,
+ 0x3F, 0xFF, 0x4B, 0x09, 0x41, 0x06, 0x4B, 0x09,
+ 0x42, 0x06, 0x4B, 0x08, 0x43, 0x06, 0x4B, 0x08,
+ 0x44, 0x06, 0x4B, 0x08, 0x45, 0x06, 0x4B, 0x08
+};
+
+static const ByteProvider kEoB2MagicFlightPropsDOSProvider = { ARRAYSIZE(kEoB2MagicFlightPropsDOS), kEoB2MagicFlightPropsDOS };
+
+static const byte kEoB2TurnUndeadEffectDOS[140] = {
+ 0x0A, 0x07, 0x04, 0x00, 0x00, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0D, 0x0A,
+ 0x07, 0x04, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x10, 0x0D, 0x0A, 0x07,
+ 0x04, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x13, 0x10, 0x0D, 0x0A, 0x07, 0x04,
+ 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x14, 0x13, 0x10, 0x0D, 0x0A, 0x07, 0x04, 0x00,
+ 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x63, 0x14,
+ 0x13, 0x10, 0x0D, 0x0A, 0x07, 0x04, 0x00, 0x00,
+ 0x00, 0xFF, 0xFF, 0x00, 0x63, 0x63, 0x14, 0x13,
+ 0x10, 0x0D, 0x0A, 0x07, 0x04, 0x00, 0x00, 0x00,
+ 0x00, 0xFF, 0x63, 0x63, 0x63, 0x14, 0x13, 0x10,
+ 0x0D, 0x0A, 0x07, 0x04, 0x04, 0x00, 0x00, 0x00,
+ 0x63, 0x63, 0x63, 0x63, 0x14, 0x13, 0x10, 0x0D,
+ 0x0A, 0x07, 0x07, 0x04, 0x04, 0x00, 0x63, 0x63,
+ 0x63, 0x63, 0x63, 0x14, 0x13, 0x10, 0x0D, 0x0A,
+ 0x0A, 0x07, 0x07, 0x04
+};
+
+static const ByteProvider kEoB2TurnUndeadEffectDOSProvider = { ARRAYSIZE(kEoB2TurnUndeadEffectDOS), kEoB2TurnUndeadEffectDOS };
+
+static const byte kEoB2BurningHandsDestDOS[32] = {
+ 0x02, 0x03, 0x04, 0x01, 0x02, 0x05, 0x00, 0x00,
+ 0x00, 0x02, 0x04, 0x01, 0x03, 0x05, 0x00, 0x00,
+ 0x00, 0x01, 0x04, 0x02, 0x03, 0x05, 0x00, 0x00,
+ 0x01, 0x03, 0x04, 0x00, 0x02, 0x05, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2BurningHandsDestDOSProvider = { ARRAYSIZE(kEoB2BurningHandsDestDOS), kEoB2BurningHandsDestDOS };
+
+static const byte kEoB2ConeOfColdDest1DOS[7] = {
+ 0xE0, 0xC0, 0xC1, 0xBF, 0xA0, 0x9F, 0xA1
+};
+
+static const ByteProvider kEoB2ConeOfColdDest1DOSProvider = { ARRAYSIZE(kEoB2ConeOfColdDest1DOS), kEoB2ConeOfColdDest1DOS };
+
+static const byte kEoB2ConeOfColdDest2DOS[7] = {
+ 0x01, 0x02, 0xE2, 0x22, 0x03, 0xE3, 0x23
+};
+
+static const ByteProvider kEoB2ConeOfColdDest2DOSProvider = { ARRAYSIZE(kEoB2ConeOfColdDest2DOS), kEoB2ConeOfColdDest2DOS };
+
+static const byte kEoB2ConeOfColdDest3DOS[7] = {
+ 0x20, 0x40, 0x3F, 0x41, 0x60, 0x5F, 0x61
+};
+
+static const ByteProvider kEoB2ConeOfColdDest3DOSProvider = { ARRAYSIZE(kEoB2ConeOfColdDest3DOS), kEoB2ConeOfColdDest3DOS };
+
+static const byte kEoB2ConeOfColdDest4DOS[7] = {
+ 0xFF, 0xFE, 0x1E, 0xDE, 0xFD, 0x1D, 0xDD
+};
+
+static const ByteProvider kEoB2ConeOfColdDest4DOSProvider = { ARRAYSIZE(kEoB2ConeOfColdDest4DOS), kEoB2ConeOfColdDest4DOS };
+
+static const byte kEoB2ConeOfColdGfxTblDOS[8] = {
+ 0x0F, 0x09, 0x0F, 0x09, 0x02, 0x0A, 0x02, 0x00
+};
+
+static const ByteProvider kEoB2ConeOfColdGfxTblDOSProvider = { ARRAYSIZE(kEoB2ConeOfColdGfxTblDOS), kEoB2ConeOfColdGfxTblDOS };
+
+static const byte kEoB2DscDoorShapeIndexDOS[53] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x01
+};
+
+static const ByteProvider kEoB2DscDoorShapeIndexDOSProvider = { ARRAYSIZE(kEoB2DscDoorShapeIndexDOS), kEoB2DscDoorShapeIndexDOS };
+
+static const byte kEoB2WllFlagPresetDOS[25] = {
+ 0x07, 0x00, 0x40, 0xA8, 0x88, 0x88, 0x88, 0x9F,
+ 0xA8, 0x88, 0x88, 0x88, 0x9F, 0xA8, 0x88, 0x88,
+ 0x88, 0x9F, 0xA8, 0x88, 0x88, 0x88, 0x9F, 0x03,
+ 0x03
+};
+
+static const ByteProvider kEoB2WllFlagPresetDOSProvider = { ARRAYSIZE(kEoB2WllFlagPresetDOS), kEoB2WllFlagPresetDOS };
+
+static const uint16 kEoB2DscShapeCoordsDOS[180] = {
+ 0xFF91, 0xFFC1, 0xFFA1, 0xFFC1, 0xFF75, 0xFFC5, 0xFF8B, 0xFFC5,
+ 0xFF88, 0xFFC3, 0xFFB4, 0xFFC1, 0xFFC4, 0xFFC1, 0xFFA1, 0xFFC5,
+ 0xFFB6, 0xFFC5, 0xFFB0, 0xFFC3, 0xFFD5, 0xFFC1, 0xFFE5, 0xFFC1,
+ 0xFFCB, 0xFFC5, 0xFFE1, 0xFFC5, 0xFFD8, 0xFFC3, 0xFFF8, 0xFFC1,
+ 0x0008, 0xFFC1, 0xFFF6, 0xFFC5, 0x000A, 0xFFC5, 0x0000, 0xFFC3,
+ 0x001B, 0xFFC1, 0x002B, 0xFFC1, 0x001F, 0xFFC5, 0x0035, 0xFFC5,
+ 0x0028, 0xFFC3, 0x003C, 0xFFC1, 0x004C, 0xFFC1, 0x004A, 0xFFC5,
+ 0x005F, 0xFFC5, 0x0050, 0xFFC3, 0x005F, 0xFFC1, 0x006F, 0xFFC1,
+ 0x0075, 0xFFC5, 0x008B, 0xFFC5, 0x0078, 0xFFC3, 0xFF8A, 0xFFCB,
+ 0xFFA4, 0xFFCB, 0xFF68, 0xFFD3, 0xFF88, 0xFFD3, 0xFF8A, 0xFFCE,
+ 0xFFBE, 0xFFCB, 0xFFD8, 0xFFCB, 0xFFAC, 0xFFD3, 0xFFCD, 0xFFD3,
+ 0xFFC5, 0xFFCE, 0xFFF3, 0xFFCB, 0x000D, 0xFFCB, 0xFFF0, 0xFFD3,
+ 0x0010, 0xFFD3, 0x0000, 0xFFCE, 0x0028, 0xFFCB, 0x0042, 0xFFCB,
+ 0x0033, 0xFFD3, 0x0054, 0xFFD3, 0x003B, 0xFFCE, 0x005C, 0xFFCB,
+ 0x0076, 0xFFCB, 0x0078, 0xFFD3, 0x0098, 0xFFD3, 0x0076, 0xFFCE,
+ 0xFF92, 0xFFDD, 0xFFBD, 0xFFDD, 0xFF74, 0xFFEA, 0xFFAD, 0xFFEA,
+ 0xFF9E, 0xFFE2, 0xFFEA, 0xFFDD, 0x0016, 0xFFDD, 0xFFE5, 0xFFEA,
+ 0x001B, 0xFFEA, 0x0000, 0xFFE2, 0x0043, 0xFFDD, 0x006E, 0xFFDD,
+ 0x0053, 0xFFEA, 0x008C, 0xFFEA, 0x0062, 0xFFE2, 0xFF80, 0xFFFC,
+ 0x0080, 0xFFFC, 0xFF80, 0xFFBE, 0x0080, 0xFFBE, 0x0080, 0x0000,
+ 0xFFDA, 0xFFFC, 0x0026, 0xFFFC, 0xFFDA, 0xFFBE, 0x0026, 0xFFBE,
+ 0x0000, 0x0000, 0xFF80, 0xFFFC, 0x0080, 0xFFFC, 0xFF80, 0xFFBE,
+ 0x0080, 0xFFBE, 0x0080, 0x0000
+};
+
+static const Uint16Provider kEoB2DscShapeCoordsDOSProvider = { ARRAYSIZE(kEoB2DscShapeCoordsDOS), kEoB2DscShapeCoordsDOS };
+
+static const byte kEoB2DscDoorScaleOffsDOS[53] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x33, 0x34
+};
+
+static const ByteProvider kEoB2DscDoorScaleOffsDOSProvider = { ARRAYSIZE(kEoB2DscDoorScaleOffsDOS), kEoB2DscDoorScaleOffsDOS };
+
+static const byte kEoB2DscDoorScaleMult1DOS[4] = {
+ 0x08, 0x0C, 0x12, 0x00
+};
+
+static const ByteProvider kEoB2DscDoorScaleMult1DOSProvider = { ARRAYSIZE(kEoB2DscDoorScaleMult1DOS), kEoB2DscDoorScaleMult1DOS };
+
+static const byte kEoB2DscDoorScaleMult2DOS[4] = {
+ 0x00, 0x02, 0x04, 0x00
+};
+
+static const ByteProvider kEoB2DscDoorScaleMult2DOSProvider = { ARRAYSIZE(kEoB2DscDoorScaleMult2DOS), kEoB2DscDoorScaleMult2DOS };
+
+static const byte kEoB2DscDoorScaleMult3DOS[4] = {
+ 0x05, 0x08, 0x0C, 0x00
+};
+
+static const ByteProvider kEoB2DscDoorScaleMult3DOSProvider = { ARRAYSIZE(kEoB2DscDoorScaleMult3DOS), kEoB2DscDoorScaleMult3DOS };
+
+static const byte kEoB2DscDoorType5OffsDOS[6] = {
+ 0x05, 0x03, 0x01, 0x05, 0x03, 0x01
+};
+
+static const ByteProvider kEoB2DscDoorType5OffsDOSProvider = { ARRAYSIZE(kEoB2DscDoorType5OffsDOS), kEoB2DscDoorType5OffsDOS };
+
+static const byte kEoB2DscDoorY1DOS[4] = {
+ 0x3B, 0x47, 0x56, 0x00
+};
+
+static const ByteProvider kEoB2DscDoorY1DOSProvider = { ARRAYSIZE(kEoB2DscDoorY1DOS), kEoB2DscDoorY1DOS };
+
+static const byte kEoB2DscDoorY2DOS[4] = {
+ 0x1F, 0x18, 0x0F, 0x00
+};
+
+static const ByteProvider kEoB2DscDoorY2DOSProvider = { ARRAYSIZE(kEoB2DscDoorY2DOS), kEoB2DscDoorY2DOS };
+
+static const byte kEoB2DscDoorFrameY1DOS[4] = {
+ 0x1E, 0x18, 0x10, 0x00
+};
+
+static const ByteProvider kEoB2DscDoorFrameY1DOSProvider = { ARRAYSIZE(kEoB2DscDoorFrameY1DOS), kEoB2DscDoorFrameY1DOS };
+
+static const byte kEoB2DscDoorFrameY2DOS[4] = {
+ 0x3B, 0x47, 0x56, 0x78
+};
+
+static const ByteProvider kEoB2DscDoorFrameY2DOSProvider = { ARRAYSIZE(kEoB2DscDoorFrameY2DOS), kEoB2DscDoorFrameY2DOS };
+
+static const byte kEoB2DscItemPosIndexDOS[16] = {
+ 0x00, 0x01, 0x02, 0x03, 0x02, 0x00, 0x03, 0x01,
+ 0x03, 0x02, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02
+};
+
+static const ByteProvider kEoB2DscItemPosIndexDOSProvider = { ARRAYSIZE(kEoB2DscItemPosIndexDOS), kEoB2DscItemPosIndexDOS };
+
+static const uint16 kEoB2DscItemShpXDOS[18] = {
+ 0xFFC8, 0xFFF8, 0x0028, 0x0058, 0x0088, 0x00B8, 0x00E8, 0xFFB8,
+ 0x0008, 0x0058, 0x00A8, 0x00F8, 0xFFD8, 0x0058, 0x00D8, 0xFFA8,
+ 0x0058, 0x0108
+};
+
+static const Uint16Provider kEoB2DscItemShpXDOSProvider = { ARRAYSIZE(kEoB2DscItemShpXDOS), kEoB2DscItemShpXDOS };
+
+static const byte kEoB2DscItemScaleIndexDOS[18] = {
+ 0xFF, 0xFF, 0x03, 0x03, 0x02, 0x02, 0x02, 0x02,
+ 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0xFF, 0xFF,
+ 0x25, 0x00
+};
+
+static const ByteProvider kEoB2DscItemScaleIndexDOSProvider = { ARRAYSIZE(kEoB2DscItemScaleIndexDOS), kEoB2DscItemScaleIndexDOS };
+
+static const byte kEoB2DscItemTileIndexDOS[18] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x03, 0xFF, 0xFF, 0xFF, 0x09, 0xFF, 0x0B,
+ 0x0C, 0x0D
+};
+
+static const ByteProvider kEoB2DscItemTileIndexDOSProvider = { ARRAYSIZE(kEoB2DscItemTileIndexDOS), kEoB2DscItemTileIndexDOS };
+
+static const byte kEoB2DscItemShapeMapDOS[113] = {
+ 0x00, 0x00, 0x00, 0x05, 0x01, 0x02, 0x03, 0x04,
+ 0x03, 0x05, 0x06, 0x06, 0x12, 0x05, 0x0F, 0x12,
+ 0x14, 0x08, 0x13, 0x11, 0x15, 0x18, 0x07, 0x07,
+ 0x07, 0x1F, 0x09, 0x23, 0x09, 0x09, 0x09, 0x09,
+ 0x08, 0x1C, 0x1C, 0x1A, 0x1B, 0x21, 0x1D, 0x1D,
+ 0x22, 0x22, 0x22, 0x00, 0x16, 0x00, 0x00, 0x17,
+ 0x17, 0x17, 0x17, 0x17, 0x22, 0x21, 0x19, 0x23,
+ 0x10, 0x1E, 0x17, 0x25, 0x17, 0x26, 0x12, 0x21,
+ 0x17, 0x23, 0x1C, 0x00, 0x20, 0x25, 0x12, 0x18,
+ 0x1F, 0x07, 0x07, 0x15, 0x15, 0x0F, 0x03, 0x09,
+ 0x1E, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1B,
+ 0x1B, 0x17, 0x17, 0x16, 0x16, 0x21, 0x08, 0x25,
+ 0x25, 0x25, 0x25, 0x28, 0x03, 0x04, 0x21, 0x00,
+ 0x17, 0x00, 0x20, 0x24, 0x27, 0x27, 0x1C, 0x27,
+ 0x00
+};
+
+static const ByteProvider kEoB2DscItemShapeMapDOSProvider = { ARRAYSIZE(kEoB2DscItemShapeMapDOS), kEoB2DscItemShapeMapDOS };
+
+static const byte kEoB2DscTelptrShpCoordsDOS[156] = {
+ 0x0C, 0x07, 0x1A, 0x01, 0x3E, 0x03, 0x0C, 0x1A,
+ 0x2A, 0x13, 0x40, 0x18, 0x02, 0x2D, 0x16, 0x25,
+ 0x28, 0x32, 0x36, 0x27, 0x0A, 0x3E, 0x16, 0x49,
+ 0x3E, 0x44, 0x06, 0x06, 0x2A, 0x04, 0x37, 0x0A,
+ 0x04, 0x1B, 0x1A, 0x16, 0x37, 0x1D, 0x0E, 0x2A,
+ 0x1B, 0x35, 0x2E, 0x28, 0x42, 0x30, 0x06, 0x47,
+ 0x06, 0x47, 0x2D, 0x4C, 0x0A, 0x04, 0x14, 0x00,
+ 0x2E, 0x01, 0x0C, 0x10, 0x1F, 0x10, 0x2F, 0x10,
+ 0x12, 0x18, 0x28, 0x1D, 0x01, 0x21, 0x08, 0x2A,
+ 0x11, 0x32, 0x2F, 0x2E, 0x1F, 0x25, 0x02, 0x02,
+ 0x01, 0x11, 0x01, 0x2F, 0x08, 0x1E, 0x11, 0x0E,
+ 0x11, 0x26, 0x1C, 0x01, 0x1E, 0x19, 0x1F, 0x33,
+ 0x24, 0x11, 0x26, 0x05, 0x28, 0x2B, 0x2F, 0x22,
+ 0x00, 0x13, 0x05, 0x01, 0x06, 0x08, 0x09, 0x0C,
+ 0x04, 0x1A, 0x08, 0x1F, 0x12, 0x05, 0x12, 0x15,
+ 0x16, 0x10, 0x1A, 0x08, 0x1A, 0x1D, 0x0A, 0x00,
+ 0x0A, 0x00, 0x00, 0x09, 0x00, 0x1E, 0x04, 0x11,
+ 0x08, 0x16, 0x08, 0x06, 0x10, 0x00, 0x11, 0x0D,
+ 0x12, 0x20, 0x15, 0x02, 0x14, 0x09, 0x16, 0x1B,
+ 0x1A, 0x14, 0x1A, 0x14
+};
+
+static const ByteProvider kEoB2DscTelptrShpCoordsDOSProvider = { ARRAYSIZE(kEoB2DscTelptrShpCoordsDOS), kEoB2DscTelptrShpCoordsDOS };
+
+static const byte kEoB2PortalSeqDataDOS[126] = {
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x02, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x04, 0x00, 0x03, 0x00, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04,
+ 0x00, 0x01, 0x01, 0x00, 0x02, 0x01, 0x03, 0x02,
+ 0x02, 0x03, 0x01, 0x04, 0x00, 0x02, 0x01, 0x03,
+ 0x02, 0x04, 0x03, 0x02, 0x04, 0x03, 0x03, 0x04,
+ 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03,
+ 0x04, 0x04, 0x04, 0x05, 0x04, 0x06, 0x03, 0x07,
+ 0x02, 0x08, 0x02, 0x08, 0x01, 0x09, 0x01, 0x09,
+ 0x01, 0x09, 0x00, 0x0A, 0xFF, 0xFF
+};
+
+static const ByteProvider kEoB2PortalSeqDataDOSProvider = { ARRAYSIZE(kEoB2PortalSeqDataDOS), kEoB2PortalSeqDataDOS };
+
+static const byte kEoB2DscMonsterFrmOffsTbl1DOS[32] = {
+ 0x04, 0xFE, 0x01, 0x03, 0x03, 0x04, 0xFE, 0x01,
+ 0x01, 0x03, 0x04, 0xFE, 0xFE, 0x01, 0x03, 0x04,
+ 0xFC, 0xFD, 0xFF, 0x02, 0x02, 0xFC, 0xFD, 0xFF,
+ 0xFF, 0x02, 0xFC, 0xFD, 0xFD, 0xFF, 0x02, 0xFC
+};
+
+static const ByteProvider kEoB2DscMonsterFrmOffsTbl1DOSProvider = { ARRAYSIZE(kEoB2DscMonsterFrmOffsTbl1DOS), kEoB2DscMonsterFrmOffsTbl1DOS };
+
+static const byte kEoB2DscMonsterFrmOffsTbl2DOS[32] = {
+ 0x04, 0xFE, 0x01, 0x03, 0x03, 0x04, 0xFE, 0x01,
+ 0x01, 0x03, 0x04, 0xFE, 0xFE, 0x01, 0x03, 0x04,
+ 0x04, 0xFD, 0x01, 0x02, 0x02, 0x04, 0xFD, 0x01,
+ 0x01, 0x02, 0x04, 0xFD, 0xFD, 0x01, 0x02, 0x04
+};
+
+static const ByteProvider kEoB2DscMonsterFrmOffsTbl2DOSProvider = { ARRAYSIZE(kEoB2DscMonsterFrmOffsTbl2DOS), kEoB2DscMonsterFrmOffsTbl2DOS };
+
+static const uint16 kEoB2InvSlotXDOS[27] = {
+ 0x00E6, 0x0116, 0x00B5, 0x00C7, 0x00B5, 0x00C7, 0x00B5, 0x00C7,
+ 0x00B5, 0x00C7, 0x00B5, 0x00C7, 0x00B5, 0x00C7, 0x00B5, 0x00C7,
+ 0x00E1, 0x00E0, 0x00E1, 0x012A, 0x011F, 0x0115, 0x012C, 0x012C,
+ 0x012C, 0x00E4, 0x00F0
+};
+
+static const Uint16Provider kEoB2InvSlotXDOSProvider = { ARRAYSIZE(kEoB2InvSlotXDOS), kEoB2InvSlotXDOS };
+
+static const byte kEoB2InvSlotYDOS[27] = {
+ 0x74, 0x74, 0x28, 0x28, 0x3A, 0x3A, 0x4C, 0x4C,
+ 0x5E, 0x5E, 0x70, 0x70, 0x82, 0x82, 0x94, 0x94,
+ 0x38, 0x4C, 0x60, 0x37, 0x4B, 0x89, 0x5E, 0x70,
+ 0x82, 0x88, 0x88
+};
+
+static const ByteProvider kEoB2InvSlotYDOSProvider = { ARRAYSIZE(kEoB2InvSlotYDOS), kEoB2InvSlotYDOS };
+
+static const uint16 kEoB2SlotValidationFlagsDOS[27] = {
+ 0x0008, 0x0008, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF,
+ 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF,
+ 0x0001, 0x0002, 0x0004, 0x0020, 0x0040, 0x0010, 0xFFFF, 0x0080,
+ 0x0080, 0x0100, 0x0100
+};
+
+static const Uint16Provider kEoB2SlotValidationFlagsDOSProvider = { ARRAYSIZE(kEoB2SlotValidationFlagsDOS), kEoB2SlotValidationFlagsDOS };
+
+static const byte kEoB2ProjectileWeaponTypesDOS[15] = {
+ 0xFF, 0x01, 0xFF, 0x02, 0x04, 0x03, 0x05, 0x10,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x12
+};
+
+static const ByteProvider kEoB2ProjectileWeaponTypesDOSProvider = { ARRAYSIZE(kEoB2ProjectileWeaponTypesDOS), kEoB2ProjectileWeaponTypesDOS };
+
+static const byte kEoB2WandTypesDOS[8] = {
+ 0x00, 0x11, 0x17, 0x31, 0x0D, 0xFF, 0x04, 0x0C
+};
+
+static const ByteProvider kEoB2WandTypesDOSProvider = { ARRAYSIZE(kEoB2WandTypesDOS), kEoB2WandTypesDOS };
+
+static const byte kEoB2DrawObjPosIndexDOS[20] = {
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x02, 0x00, 0x03,
+ 0x01, 0x04, 0x02, 0x03, 0x00, 0x01, 0x04, 0x01,
+ 0x03, 0x00, 0x02, 0x04
+};
+
+static const ByteProvider kEoB2DrawObjPosIndexDOSProvider = { ARRAYSIZE(kEoB2DrawObjPosIndexDOS), kEoB2DrawObjPosIndexDOS };
+
+static const byte kEoB2FlightObjFlipIndexDOS[16] = {
+ 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01,
+ 0x01, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2FlightObjFlipIndexDOSProvider = { ARRAYSIZE(kEoB2FlightObjFlipIndexDOS), kEoB2FlightObjFlipIndexDOS };
+
+static const byte kEoB2FlightObjShpMapDOS[45] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x02,
+ 0xFF, 0xFF, 0x04, 0xFF, 0x06, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2FlightObjShpMapDOSProvider = { ARRAYSIZE(kEoB2FlightObjShpMapDOS), kEoB2FlightObjShpMapDOS };
+
+static const byte kEoB2FlightObjSclIndexDOS[72] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03,
+ 0xFF, 0xFF, 0x03, 0x03, 0xFF, 0xFF, 0x03, 0x03,
+ 0xFF, 0xFF, 0x03, 0x03, 0xFF, 0xFF, 0x03, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
+ 0x02, 0x02, 0x02, 0x02, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x01, 0xFF, 0x01, 0x01, 0x01, 0x01, 0x01,
+ 0x01, 0xFF, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+};
+
+static const ByteProvider kEoB2FlightObjSclIndexDOSProvider = { ARRAYSIZE(kEoB2FlightObjSclIndexDOS), kEoB2FlightObjSclIndexDOS };
+
+static const uint16 kEoB2TransferPortraitFramesDOS[32] = {
+ 0x0004, 0x0018, 0x009D, 0x0038, 0x00A2, 0x0018, 0x013C, 0x0039,
+ 0x0004, 0x0040, 0x009D, 0x0060, 0x00A2, 0x0040, 0x013C, 0x0060,
+ 0x0004, 0x0068, 0x009D, 0x0089, 0x00A2, 0x0068, 0x013C, 0x0089,
+ 0x0004, 0x0094, 0x002E, 0x009E, 0x0110, 0x0094, 0x013A, 0x009E
+};
+
+static const Uint16Provider kEoB2TransferPortraitFramesDOSProvider = { ARRAYSIZE(kEoB2TransferPortraitFramesDOS), kEoB2TransferPortraitFramesDOS };
+
+static const byte kEoB2TransferConvertTableDOS[49] = {
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x00, 0x05, 0x06,
+ 0x0A, 0x00, 0x0B, 0x00, 0x0C, 0x0D, 0x00, 0x0E,
+ 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x00, 0x00,
+ 0x17, 0x18, 0x22, 0x24, 0x23, 0x25, 0x26, 0x27,
+ 0x28, 0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F,
+ 0x31, 0x30, 0x32, 0x33, 0x00, 0x35, 0x34, 0x36,
+ 0x37
+};
+
+static const ByteProvider kEoB2TransferConvertTableDOSProvider = { ARRAYSIZE(kEoB2TransferConvertTableDOS), kEoB2TransferConvertTableDOS };
+
+static const byte kEoB2TransferItemTableDOS[60] = {
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x00, 0x01,
+ 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
+ 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00,
+ 0x01, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01,
+ 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01,
+ 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01,
+ 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2TransferItemTableDOSProvider = { ARRAYSIZE(kEoB2TransferItemTableDOS), kEoB2TransferItemTableDOS };
+
+static const uint32 kEoB2TransferExpTableDOS[6] = {
+ 0x000F423F, 0x000B71AF, 0x000DBB9F, 0x0006B6BF, 0x000DBB9F, 0x000DBB9F
+};
+
+static const Uint32Provider kEoB2TransferExpTableDOSProvider = { ARRAYSIZE(kEoB2TransferExpTableDOS), kEoB2TransferExpTableDOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData00DOS[5] = {
+ { 0x01, 0, 208, 16, 1, 1, 0, 0, 0, 0 },
+ { 0x01, 0, 208, 16, 1, 1, 0, 0, 0, 0 },
+ { 0x00, 0, 216, 51, 8, 0, 0, 0, 0, 0 },
+ { 0x06, 3, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData00DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData00DOS), kEoB2IntroAnimData00DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData01DOS[5] = {
+ { 0x01, 1, 184, 8, 1, 1, 0, 0, 0, 0 },
+ { 0x01, 1, 184, 8, 1, 1, 0, 0, 0, 0 },
+ { 0x00, 0, 216, 51, 7, 0, 0, 0, 0, 0 },
+ { 0x06, 4, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData01DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData01DOS), kEoB2IntroAnimData01DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData02DOS[5] = {
+ { 0x01, 2, 216, 51, 1, 0, 0, 0, 0, 0 },
+ { 0x01, 2, 216, 51, 1, 0, 0, 0, 0, 0 },
+ { 0x00, 0, 216, 51, 18, 0, 0, 0, 0, 0 },
+ { 0x06, 6, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData02DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData02DOS), kEoB2IntroAnimData02DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData03DOS[4] = {
+ { 0x00, 0, 0, 0, 1, 2, 0, 0, 0, 0 },
+ { 0x06, 3, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 2, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData03DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData03DOS), kEoB2IntroAnimData03DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData04DOS[3] = {
+ { 0x01, 0, 282, 8, 1, 0, 0, 0, 0, 0 },
+ { 0x01, 0, 282, 8, 1, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData04DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData04DOS), kEoB2IntroAnimData04DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData05DOS[4] = {
+ { 0x00, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
+ { 0x06, 5, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData05DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData05DOS), kEoB2IntroAnimData05DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData06DOS[16] = {
+ { 0x01, 12, 170, 11, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 188, 38, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 203, 63, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 218, 85, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 232, 107, 2, 0, 0, 0, 0, 0 },
+ { 0x06, 9, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x01, 3, 242, 125, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 4, 240, 125, 3, 0, 0, 0, 0, 0 },
+ { 0x01, 5, 238, 124, 3, 0, 0, 0, 0, 0 },
+ { 0x01, 6, 236, 123, 3, 0, 0, 0, 0, 0 },
+ { 0x01, 7, 232, 121, 3, 0, 0, 0, 0, 0 },
+ { 0x01, 8, 226, 120, 4, 0, 0, 0, 0, 0 },
+ { 0x01, 9, 220, 119, 4, 0, 0, 0, 0, 0 },
+ { 0x01, 10, 241, 115, 4, 0, 0, 0, 0, 0 },
+ { 0x01, 11, 241, 115, 4, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData06DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData06DOS), kEoB2IntroAnimData06DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData07DOS[5] = {
+ { 0x01, 12, 54, 17, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 80, 53, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 104, 87, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 130, 124, 2, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData07DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData07DOS), kEoB2IntroAnimData07DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData08DOS[6] = {
+ { 0x01, 12, 112, 8, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 126, 34, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 142, 60, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 12, 170, 109, 2, 0, 0, 0, 0, 0 },
+ { 0x06, 8, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData08DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData08DOS), kEoB2IntroAnimData08DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData09DOS[4] = {
+ { 0x05, 0, 184, 64, 6, 0, 30, 8, 3, 16 },
+ { 0x05, 0, 184, 64, 6, 0, 33, 8, 3, 16 },
+ { 0x05, 0, 184, 64, 6, 0, 36, 8, 3, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData09DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData09DOS), kEoB2IntroAnimData09DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData10DOS[10] = {
+ { 0x05, 0, 184, 64, 0, 0, 30, 8, 3, 16 },
+ { 0x05, 0, 128, 88, 3, 0, 30, 32, 4, 24 },
+ { 0x05, 0, 128, 88, 3, 0, 34, 32, 4, 24 },
+ { 0x05, 0, 184, 64, 0, 0, 33, 8, 3, 16 },
+ { 0x05, 0, 128, 88, 3, 0, 30, 32, 4, 24 },
+ { 0x05, 0, 128, 88, 3, 0, 34, 32, 4, 24 },
+ { 0x05, 0, 184, 64, 0, 0, 36, 8, 3, 16 },
+ { 0x05, 0, 128, 88, 3, 0, 30, 32, 4, 24 },
+ { 0x05, 0, 128, 88, 3, 0, 34, 32, 4, 24 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData10DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData10DOS), kEoB2IntroAnimData10DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData11DOS[16] = {
+ { 0x03, 15, 36, 48, 1, 1, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 2, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 3, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 4, 0, 0, 0, 0 },
+ { 0x06, 11, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 5, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 6, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 90, 7, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 6, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 5, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 4, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 3, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 2, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 1, 0, 0, 0, 0 },
+ { 0x03, 15, 36, 48, 1, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData11DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData11DOS), kEoB2IntroAnimData11DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData12DOS[3] = {
+ { 0x02, 15, 36, 48, 90, 0, 0, 0, 0, 0 },
+ { 0x07, 15, 36, 48, 0, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData12DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData12DOS), kEoB2IntroAnimData12DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData13DOS[4] = {
+ { 0x06, 10, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 104, 24, 5, 0, 0, 8, 15, 112 },
+ { 0x05, 0, 104, 24, 5, 0, 15, 8, 15, 112 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData13DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData13DOS), kEoB2IntroAnimData13DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData14DOS[6] = {
+ { 0x05, 0, 184, 64, 0, 0, 30, 8, 3, 16 },
+ { 0x05, 0, 104, 72, 5, 0, 10, 120, 10, 64 },
+ { 0x05, 0, 184, 64, 0, 0, 33, 8, 3, 16 },
+ { 0x05, 0, 104, 72, 5, 0, 20, 120, 10, 64 },
+ { 0x05, 0, 184, 64, 0, 0, 36, 8, 3, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData14DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData14DOS), kEoB2IntroAnimData14DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData15DOS[4] = {
+ { 0x05, 0, 104, 0, 8, 0, 0, 0, 13, 200 },
+ { 0x05, 0, 104, 0, 8, 0, 13, 0, 13, 200 },
+ { 0x05, 0, 104, 0, 8, 0, 26, 0, 13, 200 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData15DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData15DOS), kEoB2IntroAnimData15DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData16DOS[11] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 9, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 240, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 6, 112, 72, 6, 0, 0, 0, 0, 0 },
+ { 0x02, 1, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 4, 240, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 7, 112, 72, 6, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 5, 240, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 8, 112, 72, 6, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData16DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData16DOS), kEoB2IntroAnimData16DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData17DOS[12] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 9, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 240, 40, 6, 0, 0, 0, 0, 0 },
+ { 0x06, 5, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 3, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 3, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 3, 0, 0, 0, 0 },
+ { 0x02, 1, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 4, 240, 40, 6, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 5, 240, 40, 6, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData17DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData17DOS), kEoB2IntroAnimData17DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData18DOS[8] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 9, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 240, 40, 6, 0, 0, 0, 0, 0 },
+ { 0x02, 1, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 4, 240, 40, 6, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 5, 240, 40, 6, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData18DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData18DOS), kEoB2IntroAnimData18DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData19DOS[14] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 10, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 9, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 11, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 12, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 1, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 4, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 13, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 10, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 5, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 13, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData19DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData19DOS), kEoB2IntroAnimData19DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData20DOS[14] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 11, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 9, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 10, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 13, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 1, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 4, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 12, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 11, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 5, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 13, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData20DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData20DOS), kEoB2IntroAnimData20DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData21DOS[14] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 14, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 9, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 15, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 16, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 1, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 4, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 17, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 14, 136, 40, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 224, 72, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 5, 240, 40, 3, 0, 0, 0, 0, 0 },
+ { 0x02, 17, 136, 40, 3, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData21DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData21DOS), kEoB2IntroAnimData21DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData22DOS[2] = {
+ { 0x05, 0, 104, 32, 0, 0, 10, 0, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData22DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData22DOS), kEoB2IntroAnimData22DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData23DOS[2] = {
+ { 0x05, 0, 104, 32, 3, 0, 20, 0, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData23DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData23DOS), kEoB2IntroAnimData23DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData24DOS[2] = {
+ { 0x05, 0, 104, 32, 0, 0, 30, 0, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData24DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData24DOS), kEoB2IntroAnimData24DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData25DOS[2] = {
+ { 0x05, 0, 104, 32, 0, 0, 0, 96, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData25DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData25DOS), kEoB2IntroAnimData25DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData26DOS[2] = {
+ { 0x05, 0, 104, 32, 3, 0, 10, 96, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData26DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData26DOS), kEoB2IntroAnimData26DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData27DOS[2] = {
+ { 0x05, 0, 104, 32, 0, 0, 20, 96, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData27DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData27DOS), kEoB2IntroAnimData27DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData28DOS[2] = {
+ { 0x05, 0, 104, 32, 0, 0, 0, 0, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData28DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData28DOS), kEoB2IntroAnimData28DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData29DOS[2] = {
+ { 0x05, 0, 104, 32, 3, 0, 0, 0, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData29DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData29DOS), kEoB2IntroAnimData29DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData30DOS[2] = {
+ { 0x05, 0, 104, 32, 4, 0, 10, 0, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData30DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData30DOS), kEoB2IntroAnimData30DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData31DOS[2] = {
+ { 0x05, 0, 104, 32, 8, 0, 20, 0, 10, 96 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData31DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData31DOS), kEoB2IntroAnimData31DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData32DOS[5] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 176, 56, 3, 0, 19, 136, 2, 8 },
+ { 0x05, 0, 176, 56, 3, 0, 21, 136, 2, 8 },
+ { 0x05, 0, 176, 56, 3, 0, 23, 136, 2, 8 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData32DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData32DOS), kEoB2IntroAnimData32DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData33DOS[14] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 176, 56, 0, 0, 19, 136, 2, 8 },
+ { 0x05, 0, 144, 88, 5, 0, 1, 136, 6, 40 },
+ { 0x05, 0, 176, 56, 0, 0, 21, 136, 2, 8 },
+ { 0x05, 0, 144, 88, 3, 0, 7, 136, 6, 40 },
+ { 0x05, 0, 176, 56, 2, 0, 23, 136, 2, 8 },
+ { 0x05, 0, 144, 88, 3, 0, 13, 136, 6, 40 },
+ { 0x05, 0, 176, 56, 0, 0, 19, 136, 2, 8 },
+ { 0x05, 0, 144, 88, 6, 0, 1, 136, 6, 40 },
+ { 0x05, 0, 176, 56, 0, 0, 21, 136, 2, 8 },
+ { 0x05, 0, 144, 88, 3, 0, 7, 136, 6, 40 },
+ { 0x05, 0, 176, 56, 0, 0, 23, 136, 2, 8 },
+ { 0x05, 0, 144, 88, 3, 0, 1, 136, 6, 40 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData33DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData33DOS), kEoB2IntroAnimData33DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData34DOS[8] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 80, 64, 0, 0, 1, 136, 2, 16 },
+ { 0x05, 0, 248, 64, 3, 0, 7, 136, 2, 16 },
+ { 0x05, 0, 80, 64, 0, 0, 3, 136, 2, 16 },
+ { 0x05, 0, 248, 64, 3, 0, 9, 136, 2, 16 },
+ { 0x05, 0, 80, 64, 0, 0, 5, 136, 2, 16 },
+ { 0x05, 0, 248, 64, 3, 0, 11, 136, 2, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData34DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData34DOS), kEoB2IntroAnimData34DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData35DOS[5] = {
+ { 0x06, 255, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 16, 48, 0, 0, 0, 152, 14, 48 },
+ { 0x05, 0, 192, 48, 4, 0, 14, 128, 13, 48 },
+ { 0x05, 0, 16, 48, 0, 0, 1, 40, 35, 48 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData35DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData35DOS), kEoB2IntroAnimData35DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData36DOS[6] = {
+ { 0x06, 1, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 168, 24, 3, 0, 0, 128, 2, 32 },
+ { 0x05, 0, 152, 16, 3, 0, 0, 88, 5, 40 },
+ { 0x05, 0, 128, 0, 3, 0, 0, 0, 10, 88 },
+ { 0x05, 0, 104, 0, 3, 0, 13, 0, 14, 88 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData36DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData36DOS), kEoB2IntroAnimData36DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData37DOS[2] = {
+ { 0x05, 0, 104, 0, 0, 0, 13, 0, 13, 200 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData37DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData37DOS), kEoB2IntroAnimData37DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData38DOS[43] = {
+ { 0x03, 17, 36, 48, 0, 1, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 1, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 1, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 2, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 2, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 2, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 3, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 3, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 3, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 4, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 4, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 4, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 5, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 5, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 5, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 6, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 6, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 6, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 7, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 7, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 54, 7, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 6, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 6, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 6, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 5, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 5, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 5, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 4, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 4, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 4, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 3, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 3, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 3, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 2, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 2, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 2, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 1, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 1, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 1, 0, 0, 0, 0 },
+ { 0x03, 17, 36, 48, 0, 0, 0, 0, 0, 0 },
+ { 0x03, 16, 142, 80, 0, 0, 0, 0, 0, 0 },
+ { 0x03, 19, 151, 28, 1, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData38DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData38DOS), kEoB2IntroAnimData38DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData39DOS[7] = {
+ { 0x02, 17, 36, 48, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 16, 142, 80, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 19, 151, 28, 54, 0, 0, 0, 0, 0 },
+ { 0x07, 17, 36, 48, 0, 0, 0, 0, 0, 0 },
+ { 0x07, 16, 142, 80, 0, 0, 0, 0, 0, 0 },
+ { 0x07, 19, 151, 28, 0, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData39DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData39DOS), kEoB2IntroAnimData39DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData40DOS[32] = {
+ { 0x03, 22, 21, 32, 0, 1, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 1, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 2, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 1, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 3, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 2, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 4, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 3, 0, 0, 0, 0 },
+ { 0x06, 11, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 5, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 4, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 6, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 5, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 7, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 18, 6, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 7, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 90, 6, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 6, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 5, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 5, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 4, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 4, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 3, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 3, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 2, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 2, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 1, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 1, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 1, 0, 0, 0, 0 },
+ { 0x03, 22, 21, 32, 0, 0, 0, 0, 0, 0 },
+ { 0x03, 23, 67, 80, 1, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData40DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData40DOS), kEoB2IntroAnimData40DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData41DOS[5] = {
+ { 0x02, 22, 21, 32, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 23, 67, 80, 90, 0, 0, 0, 0, 0 },
+ { 0x07, 22, 21, 32, 0, 0, 0, 0, 0, 0 },
+ { 0x07, 23, 67, 80, 0, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData41DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData41DOS), kEoB2IntroAnimData41DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData42DOS[3] = {
+ { 0x06, 3, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 2, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData42DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData42DOS), kEoB2IntroAnimData42DOS };
+
+static const DarkMoonAnimCommand kEoB2IntroAnimData43DOS[5] = {
+ { 0x06, 5, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 3, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 3, 0, 0, 0, 0 },
+ { 0x00, 0, 0, 0, 1, 3, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2IntroAnimData43DOSProvider = { ARRAYSIZE(kEoB2IntroAnimData43DOS), kEoB2IntroAnimData43DOS };
+
+static const DarkMoonShapeDef kEoB2IntroShapes00DOS[15] = {
+ { 0, 1, 137, 4, 43 },
+ { 1, 5, 137, 4, 54 },
+ { 2, 9, 140, 4, 8 },
+ { 3, 1, 181, 1, 3 },
+ { 4, 9, 154, 1, 3 },
+ { 5, 9, 158, 2, 5 },
+ { 6, 9, 164, 3, 7 },
+ { 7, 9, 172, 3, 11 },
+ { 8, 9, 184, 5, 13 },
+ { 9, 15, 137, 6, 15 },
+ { 10, 15, 153, 2, 21 },
+ { 11, 17, 153, 2, 21 },
+ { 12, 1, 185, 1, 4 },
+ { 13, 1, 190, 1, 1 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2IntroShapes00DOSProvider = { ARRAYSIZE(kEoB2IntroShapes00DOS), kEoB2IntroShapes00DOS };
+
+static const DarkMoonShapeDef kEoB2IntroShapes01DOS[2] = {
+ { 0, 1, 137, 1, 16 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2IntroShapes01DOSProvider = { ARRAYSIZE(kEoB2IntroShapes01DOS), kEoB2IntroShapes01DOS };
+
+static const DarkMoonShapeDef kEoB2IntroShapes04DOS[10] = {
+ { 15, 2, 0, 32, 14 },
+ { 16, 5, 16, 5, 8 },
+ { 17, 2, 27, 32, 18 },
+ { 18, 0, 140, 35, 10 },
+ { 19, 21, 16, 3, 8 },
+ { 20, 0, 47, 22, 10 },
+ { 21, 0, 59, 31, 10 },
+ { 22, 0, 71, 35, 39 },
+ { 23, 0, 119, 24, 15 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2IntroShapes04DOSProvider = { ARRAYSIZE(kEoB2IntroShapes04DOS), kEoB2IntroShapes04DOS };
+
+static const DarkMoonShapeDef kEoB2IntroShapes07DOS[18] = {
+ { -9, 1, 136, 6, 40 },
+ { -1, 7, 136, 6, 40 },
+ { -2, 13, 136, 6, 40 },
+ { 3, 19, 136, 2, 16 },
+ { 4, 21, 136, 2, 16 },
+ { 5, 23, 136, 2, 16 },
+ { 6, 19, 152, 1, 8 },
+ { 7, 20, 152, 1, 8 },
+ { 8, 21, 152, 1, 8 },
+ { -10, 25, 136, 2, 16 },
+ { -11, 27, 136, 2, 16 },
+ { -12, 29, 136, 2, 16 },
+ { -13, 31, 136, 2, 16 },
+ { -14, 25, 152, 2, 16 },
+ { -15, 27, 152, 2, 16 },
+ { -16, 29, 152, 2, 16 },
+ { -17, 31, 152, 2, 16 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2IntroShapes07DOSProvider = { ARRAYSIZE(kEoB2IntroShapes07DOS), kEoB2IntroShapes07DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData00DOS[11] = {
+ { 0x06, 4, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 136, 8, 8, 0, 5, 136, 11, 48 },
+ { 0x02, 1, 136, 8, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 80, 8, 0, 0, 0, 136, 5, 40 },
+ { 0x06, 5, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 232, 88, 4, 0, 0, 88, 8, 48 },
+ { 0x02, 3, 80, 8, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 232, 88, 4, 0, 8, 88, 8, 48 },
+ { 0x05, 0, 232, 88, 4, 0, 16, 88, 8, 48 },
+ { 0x02, 2, 232, 88, 4, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData00DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData00DOS), kEoB2FinaleAnimData00DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData01DOS[9] = {
+ { 0x06, 4, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 136, 8, 12, 0, 5, 136, 11, 48 },
+ { 0x02, 1, 136, 8, 0, 0, 0, 0, 0, 0 },
+ { 0x06, 5, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 232, 88, 6, 0, 0, 88, 8, 48 },
+ { 0x05, 0, 232, 88, 6, 0, 8, 88, 8, 48 },
+ { 0x05, 0, 232, 88, 6, 0, 16, 88, 8, 48 },
+ { 0x02, 2, 232, 88, 6, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData01DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData01DOS), kEoB2FinaleAnimData01DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData02DOS[4] = {
+ { 0x05, 0, 232, 112, 6, 0, 24, 176, 3, 16 },
+ { 0x05, 0, 232, 112, 6, 0, 27, 176, 3, 16 },
+ { 0x05, 0, 232, 112, 6, 0, 30, 176, 3, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData02DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData02DOS), kEoB2FinaleAnimData02DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData03DOS[6] = {
+ { 0x05, 0, 80, 8, 0, 0, 0, 136, 5, 40 },
+ { 0x05, 0, 232, 112, 3, 0, 24, 176, 3, 16 },
+ { 0x02, 3, 80, 8, 3, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 232, 112, 3, 0, 27, 176, 3, 16 },
+ { 0x05, 0, 232, 112, 3, 0, 30, 176, 3, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData03DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData03DOS), kEoB2FinaleAnimData03DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData04DOS[8] = {
+ { 0x06, 6, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 104, 40, 3, 0, 32, 88, 8, 88 },
+ { 0x05, 0, 104, 40, 3, 0, 32, 0, 8, 88 },
+ { 0x05, 0, 104, 40, 3, 0, 24, 0, 8, 88 },
+ { 0x05, 0, 104, 40, 3, 0, 16, 0, 8, 88 },
+ { 0x05, 0, 104, 40, 3, 0, 0, 0, 8, 88 },
+ { 0x05, 0, 104, 40, 3, 0, 24, 88, 8, 88 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData04DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData04DOS), kEoB2FinaleAnimData04DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData05DOS[7] = {
+ { 0x05, 0, 232, 112, 0, 0, 24, 176, 3, 16 },
+ { 0x05, 0, 128, 40, 4, 0, 33, 176, 2, 16 },
+ { 0x05, 0, 232, 112, 0, 0, 27, 176, 3, 16 },
+ { 0x05, 0, 128, 40, 4, 0, 35, 176, 2, 16 },
+ { 0x05, 0, 232, 112, 0, 0, 30, 176, 3, 16 },
+ { 0x05, 0, 128, 40, 4, 0, 37, 176, 2, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData05DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData05DOS), kEoB2FinaleAnimData05DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData06DOS[2] = {
+ { 0x05, 0, 104, 40, 0, 0, 16, 136, 8, 48 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData06DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData06DOS), kEoB2FinaleAnimData06DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData07DOS[6] = {
+ { 0x05, 0, 208, 80, 4, 0, 0, 128, 6, 56 },
+ { 0x05, 0, 208, 80, 4, 0, 6, 128, 6, 56 },
+ { 0x05, 0, 208, 80, 4, 0, 12, 128, 6, 56 },
+ { 0x05, 0, 208, 80, 4, 0, 18, 128, 6, 56 },
+ { 0x05, 0, 208, 80, 4, 0, 24, 128, 6, 56 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData07DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData07DOS), kEoB2FinaleAnimData07DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData08DOS[3] = {
+ { 0x05, 0, 224, 56, 3, 0, 0, 184, 4, 16 },
+ { 0x05, 0, 224, 56, 0, 0, 4, 184, 4, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData08DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData08DOS), kEoB2FinaleAnimData08DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData09DOS[8] = {
+ { 0x01, 1, -10, 40, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 1, 0, 40, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 1, 10, 40, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 1, 20, 40, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 1, 30, 40, 2, 0, 0, 0, 0, 0 },
+ { 0x01, 1, 40, 40, 2, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 48, 40, 2, 0, 0, 0, 0, 0 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData09DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData09DOS), kEoB2FinaleAnimData09DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData10DOS[14] = {
+ { 0x05, 1, 8, 40, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 24, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 3, 0, 12, 80, 1, 16 },
+ { 0x05, 1, 8, 40, 0, 0, 32, 80, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 28, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 3, 0, 13, 80, 1, 16 },
+ { 0x05, 1, 8, 40, 0, 0, 24, 80, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 32, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 3, 0, 14, 80, 1, 16 },
+ { 0x06, 8, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 0, 40, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 12, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 128, 12, 24 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData10DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData10DOS), kEoB2FinaleAnimData10DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData11DOS[18] = {
+ { 0x05, 1, 40, 32, 0, 0, 16, 40, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 18, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 0, 0, 0, 152, 12, 24 },
+ { 0x05, 1, 8, 40, 0, 0, 24, 80, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 32, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 0, 0, 14, 80, 1, 16 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x05, 1, 8, 40, 0, 0, 24, 80, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 32, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 3, 0, 14, 80, 1, 16 },
+ { 0x05, 1, 8, 40, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 24, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 3, 0, 12, 80, 1, 16 },
+ { 0x05, 1, 8, 40, 0, 0, 16, 80, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 36, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 3, 0, 15, 80, 1, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData11DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData11DOS), kEoB2FinaleAnimData11DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData12DOS[23] = {
+ { 0x05, 1, 40, 32, 0, 0, 16, 40, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 18, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 0, 0, 0, 152, 12, 24 },
+ { 0x05, 1, 8, 40, 0, 0, 24, 80, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 32, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 0, 0, 14, 80, 1, 16 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 8, 40, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 24, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 3, 0, 12, 80, 1, 16 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 8, 40, 0, 0, 16, 80, 8, 80 },
+ { 0x05, 1, 280, 96, 0, 0, 36, 160, 4, 40 },
+ { 0x05, 1, 96, 96, 3, 0, 15, 80, 1, 16 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData12DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData12DOS), kEoB2FinaleAnimData12DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData13DOS[23] = {
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 1, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x06, 9, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 0, 0, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 0, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 80, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 16, 0, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 6, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 104, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 0, 40, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 12, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 128, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData13DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData13DOS), kEoB2FinaleAnimData13DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData14DOS[24] = {
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 1, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x06, 9, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 0, 0, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 0, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 80, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 16, 0, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 6, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 104, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x06, 9, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 0, 40, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 12, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 128, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData14DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData14DOS), kEoB2FinaleAnimData14DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData15DOS[19] = {
+ { 0x05, 1, 40, 32, 0, 0, 0, 0, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 0, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 80, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 168, 16, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 16, 0, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 6, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 104, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 9, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 1, 40, 32, 0, 0, 0, 40, 16, 40 },
+ { 0x05, 1, 248, 88, 0, 0, 12, 176, 6, 24 },
+ { 0x05, 1, 96, 80, 3, 0, 0, 128, 12, 24 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData15DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData15DOS), kEoB2FinaleAnimData15DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData16DOS[13] = {
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 1, 168, 16, 3, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 2, 168, 16, 3, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0x06, 15, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x02, 3, 168, 16, 3, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 168, 16, 0, 0, 32, 0, 8, 80 },
+ { 0x05, 0, 232, 16, 0, 0, 32, 80, 8, 80 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData16DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData16DOS), kEoB2FinaleAnimData16DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData17DOS[20] = {
+ { 0x05, 0, 168, 16, 1, 0, 0, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 0, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 0, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 0, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 0, 16, 80 },
+ { 0x06, 10, 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 0x05, 0, 168, 16, 3, 0, 0, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 16, 0, 16, 80 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData17DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData17DOS), kEoB2FinaleAnimData17DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData18DOS[28] = {
+ { 0x05, 0, 168, 16, 1, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 16, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 16, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 0, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 0, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 16, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 16, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 3, 0, 16, 0, 16, 80 },
+ { 0x05, 0, 168, 16, 1, 0, 0, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 2, 0, 16, 80, 16, 80 },
+ { 0x05, 0, 168, 16, 0, 0, 16, 80, 16, 80 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData18DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData18DOS), kEoB2FinaleAnimData18DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData19DOS[7] = {
+ { 0x05, 0, 80, 80, 4, 0, 0, 128, 6, 56 },
+ { 0x05, 0, 80, 80, 4, 0, 6, 128, 6, 56 },
+ { 0x05, 0, 80, 80, 4, 0, 12, 128, 6, 56 },
+ { 0x05, 0, 80, 80, 4, 0, 18, 128, 6, 56 },
+ { 0x05, 0, 80, 80, 4, 0, 24, 128, 6, 56 },
+ { 0x05, 0, 80, 80, 4, 0, 30, 128, 6, 56 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData19DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData19DOS), kEoB2FinaleAnimData19DOS };
+
+static const DarkMoonAnimCommand kEoB2FinaleAnimData20DOS[3] = {
+ { 0x05, 0, 96, 56, 3, 0, 0, 184, 4, 16 },
+ { 0x05, 0, 96, 56, 0, 0, 4, 184, 4, 16 },
+ { 0xFF, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonAnimCommandProvider kEoB2FinaleAnimData20DOSProvider = { ARRAYSIZE(kEoB2FinaleAnimData20DOS), kEoB2FinaleAnimData20DOS };
+
+static const DarkMoonShapeDef kEoB2FinaleShapes00DOS[4] = {
+ { -1, 16, 0, 11, 48 },
+ { -2, 28, 80, 8, 48 },
+ { -3, 9, 0, 5, 40 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2FinaleShapes00DOSProvider = { ARRAYSIZE(kEoB2FinaleShapes00DOS), kEoB2FinaleShapes00DOS };
+
+static const DarkMoonShapeDef kEoB2FinaleShapes03DOS[3] = {
+ { -1, 30, 0, 8, 96 },
+ { -2, 30, 104, 10, 96 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2FinaleShapes03DOSProvider = { ARRAYSIZE(kEoB2FinaleShapes03DOS), kEoB2FinaleShapes03DOS };
+
+static const DarkMoonShapeDef kEoB2FinaleShapes07DOS[4] = {
+ { 1, 0, 0, 16, 72 },
+ { 2, 16, 0, 16, 72 },
+ { 3, 0, 72, 16, 72 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2FinaleShapes07DOSProvider = { ARRAYSIZE(kEoB2FinaleShapes07DOS), kEoB2FinaleShapes07DOS };
+
+static const DarkMoonShapeDef kEoB2FinaleShapes09DOS[9] = {
+ { 0, 0, 0, 32, 16 },
+ { 2, 0, 36, 35, 41 },
+ { 3, 0, 77, 24, 17 },
+ { 4, 0, 94, 15, 33 },
+ { 5, 24, 77, 10, 17 },
+ { 6, 16, 99, 23, 69 },
+ { -10, 0, 136, 8, 64 },
+ { -11, 8, 136, 8, 64 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2FinaleShapes09DOSProvider = { ARRAYSIZE(kEoB2FinaleShapes09DOS), kEoB2FinaleShapes09DOS };
+
+static const DarkMoonShapeDef kEoB2FinaleShapes10DOS[4] = {
+ { 1, 0, 0, 40, 30 },
+ { 15, 9, 37, 21, 48 },
+ { 16, 16, 88, 6, 56 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const DarkMoonShapeDefProvider kEoB2FinaleShapes10DOSProvider = { ARRAYSIZE(kEoB2FinaleShapes10DOS), kEoB2FinaleShapes10DOS };
+
+static const byte kEoB2NpcShapeDataDOS[24] = {
+ 0x00, 0x00, 0x00, 0x05, 0x39, 0x00, 0x00, 0xFF,
+ 0x00, 0x00, 0x64, 0x05, 0x4F, 0x00, 0x00, 0xFF,
+ 0x00, 0x00, 0x39, 0x06, 0x2B, 0x00, 0x00, 0xFF
+};
+
+static const ByteProvider kEoB2NpcShapeDataDOSProvider = { ARRAYSIZE(kEoB2NpcShapeDataDOS), kEoB2NpcShapeDataDOS };
+
+static const byte kEoB2ClassModifierFlagsDOS[15] = {
+ 0x01, 0x20, 0x10, 0x02, 0x04, 0x08, 0x05, 0x09,
+ 0x03, 0x0B, 0x0A, 0x0C, 0x07, 0x05, 0x06
+};
+
+static const ByteProvider kEoB2ClassModifierFlagsDOSProvider = { ARRAYSIZE(kEoB2ClassModifierFlagsDOS), kEoB2ClassModifierFlagsDOS };
+
+static const byte kEoB2MonsterStepTable02DOS[8] = {
+ 0xE0, 0xE1, 0x01, 0x21, 0x20, 0x1F, 0xFF, 0xDF
+};
+
+static const ByteProvider kEoB2MonsterStepTable02DOSProvider = { ARRAYSIZE(kEoB2MonsterStepTable02DOS), kEoB2MonsterStepTable02DOS };
+
+static const byte kEoB2MonsterStepTable1DOS[16] = {
+ 0x01, 0xE0, 0x00, 0x00, 0x00, 0x20, 0x01, 0x00,
+ 0x00, 0x00, 0xFF, 0x20, 0xFF, 0x00, 0x00, 0xE0
+};
+
+static const ByteProvider kEoB2MonsterStepTable1DOSProvider = { ARRAYSIZE(kEoB2MonsterStepTable1DOS), kEoB2MonsterStepTable1DOS };
+
+static const byte kEoB2MonsterStepTable2DOS[8] = {
+ 0x07, 0xFA, 0x05, 0xFC, 0x03, 0xFE, 0x01, 0x00
+};
+
+static const ByteProvider kEoB2MonsterStepTable2DOSProvider = { ARRAYSIZE(kEoB2MonsterStepTable2DOS), kEoB2MonsterStepTable2DOS };
+
+static const byte kEoB2MonsterStepTable3DOS[8] = {
+ 0xF9, 0x06, 0xFB, 0x04, 0xFD, 0x02, 0xFF, 0x00
+};
+
+static const ByteProvider kEoB2MonsterStepTable3DOSProvider = { ARRAYSIZE(kEoB2MonsterStepTable3DOS), kEoB2MonsterStepTable3DOS };
+
+static const byte kEoB2MonsterCloseAttPosTable1DOS[4] = {
+ 0x00, 0x01, 0x03, 0x02
+};
+
+static const ByteProvider kEoB2MonsterCloseAttPosTable1DOSProvider = { ARRAYSIZE(kEoB2MonsterCloseAttPosTable1DOS), kEoB2MonsterCloseAttPosTable1DOS };
+
+static const byte kEoB2MonsterCloseAttPosTable22DOS[16] = {
+ 0x00, 0x01, 0x02, 0x03, 0x00, 0x02, 0x01, 0x03,
+ 0x00, 0x01, 0x02, 0x03, 0x03, 0x01, 0x02, 0x00
+};
+
+static const ByteProvider kEoB2MonsterCloseAttPosTable22DOSProvider = { ARRAYSIZE(kEoB2MonsterCloseAttPosTable22DOS), kEoB2MonsterCloseAttPosTable22DOS };
+
+static const byte kEoB2MonsterCloseAttUnkTableDOS[12] = {
+ 0xFF, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x00, 0x02, 0xFF, 0x01
+};
+
+static const ByteProvider kEoB2MonsterCloseAttUnkTableDOSProvider = { ARRAYSIZE(kEoB2MonsterCloseAttUnkTableDOS), kEoB2MonsterCloseAttUnkTableDOS };
+
+static const byte kEoB2MonsterCloseAttChkTable1DOS[16] = {
+ 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,
+ 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00
+};
+
+static const ByteProvider kEoB2MonsterCloseAttChkTable1DOSProvider = { ARRAYSIZE(kEoB2MonsterCloseAttChkTable1DOS), kEoB2MonsterCloseAttChkTable1DOS };
+
+static const byte kEoB2MonsterCloseAttChkTable2DOS[16] = {
+ 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01,
+ 0x01, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00
+};
+
+static const ByteProvider kEoB2MonsterCloseAttChkTable2DOSProvider = { ARRAYSIZE(kEoB2MonsterCloseAttChkTable2DOS), kEoB2MonsterCloseAttChkTable2DOS };
+
+static const byte kEoB2MonsterCloseAttDstTable1DOS[16] = {
+ 0x02, 0x03, 0x00, 0x01, 0x01, 0x02, 0x03, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x03, 0x00, 0x01, 0x02
+};
+
+static const ByteProvider kEoB2MonsterCloseAttDstTable1DOSProvider = { ARRAYSIZE(kEoB2MonsterCloseAttDstTable1DOS), kEoB2MonsterCloseAttDstTable1DOS };
+
+static const byte kEoB2MonsterCloseAttDstTable2DOS[48] = {
+ 0x01, 0x00, 0x03, 0x02, 0x05, 0x04, 0x00, 0x01,
+ 0x02, 0x03, 0x04, 0x05, 0x05, 0x03, 0x01, 0x04,
+ 0x02, 0x00, 0x01, 0x03, 0x05, 0x00, 0x02, 0x04,
+ 0x04, 0x05, 0x02, 0x03, 0x00, 0x01, 0x05, 0x04,
+ 0x03, 0x02, 0x01, 0x00, 0x00, 0x02, 0x04, 0x01,
+ 0x03, 0x05, 0x04, 0x02, 0x00, 0x05, 0x03, 0x01
+};
+
+static const ByteProvider kEoB2MonsterCloseAttDstTable2DOSProvider = { ARRAYSIZE(kEoB2MonsterCloseAttDstTable2DOS), kEoB2MonsterCloseAttDstTable2DOS };
+
+static const byte kEoB2MonsterProximityTableDOS[32] = {
+ 0x02, 0x03, 0x00, 0x01, 0x03, 0x02, 0x01, 0x00,
+ 0x00, 0x02, 0x01, 0x03, 0x02, 0x00, 0x03, 0x01,
+ 0x01, 0x00, 0x03, 0x02, 0x00, 0x01, 0x02, 0x03,
+ 0x03, 0x01, 0x00, 0x02, 0x01, 0x03, 0x02, 0x00
+};
+
+static const ByteProvider kEoB2MonsterProximityTableDOSProvider = { ARRAYSIZE(kEoB2MonsterProximityTableDOS), kEoB2MonsterProximityTableDOS };
+
+static const byte kEoB2FindBlockMonstersTableDOS[64] = {
+ 0x04, 0x02, 0x01, 0x03, 0x04, 0x03, 0x00, 0x02,
+ 0x04, 0x00, 0x03, 0x01, 0x04, 0x01, 0x02, 0x00,
+ 0x04, 0x01, 0x02, 0x03, 0x04, 0x00, 0x03, 0x02,
+ 0x04, 0x03, 0x00, 0x01, 0x04, 0x02, 0x01, 0x00,
+ 0x04, 0x02, 0x01, 0x03, 0x04, 0x03, 0x00, 0x02,
+ 0x04, 0x00, 0x03, 0x01, 0x04, 0x01, 0x02, 0x00,
+ 0x04, 0x01, 0x02, 0x03, 0x04, 0x00, 0x03, 0x02,
+ 0x04, 0x03, 0x00, 0x01, 0x04, 0x02, 0x01, 0x00
+};
+
+static const ByteProvider kEoB2FindBlockMonstersTableDOSProvider = { ARRAYSIZE(kEoB2FindBlockMonstersTableDOS), kEoB2FindBlockMonstersTableDOS };
+
+static const byte kEoB2MonsterDirChangeTableDOS[48] = {
+ 0xFF, 0x06, 0x02, 0xFF, 0x04, 0x05, 0x03, 0xFF,
+ 0x00, 0x07, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xDF, 0xFF, 0xE0, 0xFF, 0xE1, 0xFF, 0xFF, 0xFF,
+ 0x01, 0x00, 0x1F, 0x00, 0x20, 0x00, 0x21, 0x00,
+ 0xC0, 0xFF, 0xA0, 0xFF, 0x02, 0x00, 0x03, 0x00,
+ 0x40, 0x00, 0x60, 0x00, 0xFE, 0xFF, 0xFD, 0xFF
+};
+
+static const ByteProvider kEoB2MonsterDirChangeTableDOSProvider = { ARRAYSIZE(kEoB2MonsterDirChangeTableDOS), kEoB2MonsterDirChangeTableDOS };
+
+static const uint16 kEoB2EncodeMonsterDefsDOS[168] = {
+ 0x0000, 0x0000, 0x0007, 0x0060, 0x0007, 0x0028, 0x000C, 0x0038,
+ 0x0013, 0x0028, 0x000C, 0x0038, 0x001F, 0x0000, 0x0007, 0x0060,
+ 0x0000, 0x0060, 0x0007, 0x0060, 0x0007, 0x0060, 0x0007, 0x0060,
+ 0x000E, 0x0060, 0x0005, 0x0038, 0x0007, 0x0000, 0x0007, 0x0028,
+ 0x000E, 0x0000, 0x0007, 0x0028, 0x0013, 0x0060, 0x0005, 0x0038,
+ 0x0018, 0x0060, 0x0005, 0x0038, 0x001D, 0x0060, 0x0005, 0x0038,
+ 0x000E, 0x0098, 0x0003, 0x0020, 0x0011, 0x00A0, 0x0004, 0x0018,
+ 0x0015, 0x00A0, 0x0004, 0x0018, 0x0019, 0x0098, 0x0003, 0x0020,
+ 0x001C, 0x0098, 0x0003, 0x0020, 0x001F, 0x0098, 0x0003, 0x0020,
+ 0x0000, 0x0000, 0x0007, 0x0060, 0x0007, 0x0000, 0x0007, 0x0060,
+ 0x000E, 0x0000, 0x0007, 0x0060, 0x0015, 0x0000, 0x0007, 0x0060,
+ 0x001C, 0x0000, 0x0007, 0x0060, 0x0000, 0x0060, 0x0007, 0x0060,
+ 0x0007, 0x0060, 0x0005, 0x0038, 0x000C, 0x0060, 0x0005, 0x0038,
+ 0x0011, 0x0060, 0x0005, 0x0038, 0x0016, 0x0060, 0x0005, 0x0038,
+ 0x001B, 0x0060, 0x0005, 0x0038, 0x0020, 0x0060, 0x0005, 0x0038,
+ 0x0007, 0x0098, 0x0003, 0x0020, 0x000A, 0x0098, 0x0003, 0x0020,
+ 0x000D, 0x0098, 0x0003, 0x0020, 0x0010, 0x0098, 0x0003, 0x0020,
+ 0x0013, 0x0098, 0x0003, 0x0020, 0x0016, 0x0098, 0x0003, 0x0020,
+ 0x0000, 0x0000, 0x000A, 0x0058, 0x000A, 0x0000, 0x000A, 0x0058,
+ 0x0014, 0x0000, 0x000A, 0x0058, 0x001E, 0x0000, 0x000A, 0x0058,
+ 0x0000, 0x0058, 0x000A, 0x0058, 0x000A, 0x0058, 0x000A, 0x0058
+};
+
+static const Uint16Provider kEoB2EncodeMonsterDefsDOSProvider = { ARRAYSIZE(kEoB2EncodeMonsterDefsDOS), kEoB2EncodeMonsterDefsDOS };
+
+static const EoBCharacter kEoB2NpcPresetsDOS[6] = {
+ { 0x00, 0x01, "Insal",
+ 15, 15, 0, 0, 13, 13, 11, 11, 17, 17, 16, 16, 9, 9,
+ 3, 39, 10, 0, 10, 5, 5, -1, 8, { 6, 0, 0 },
+ { 0x00006ADA, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Calandra",
+ 18, 18, 36, 36, 13, 13, 8, 8, 15, 15, 16, 16, 14, 14,
+ 4, 76, 10, 0, 1, 0, 2, -2, 12, { 9, 0, 0 },
+ { 0x0003DF35, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Shorn",
+ 15, 15, 0, 0, 14, 14, 13, 13, 14, 14, 13, 13, 16, 16,
+ 40, 40, 10, 0, 6, 4, 3, -3, 100, { 8, 0, 0 },
+ { 0x00021730, 0x00000000, 0x00000000 }, 0x00000000,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "San-raal",
+ 11, 11, 0, 0, 18, 18, 13, 13, 14, 14, 16, 16, 9, 9,
+ 28, 28, 10, 0, 2, 3, 5, -4, 100, { 8, 0, 0 },
+ { 0x00017AF0, 0x00000000, 0x00000000 }, 0x096B4566,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Tanglor",
+ 16, 16, 0, 0, 13, 13, 16, 16, 15, 15, 11, 11, 12, 12,
+ 53, 53, 9, 0, 4, 6, 1, -5, 100, { 7, 7, 0 },
+ { 0x00010FC2, 0x00010FC2, 0x00000000 }, 0xFFFFFFFF,
+ { 0x0004, 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0024, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } },
+ { 0x00, 0x01, "Amber",
+ 14, 14, 0, 0, 17, 17, 12, 12, 18, 18, 9, 9, 17, 17,
+ 36, 36, 10, 0, 3, 10, 1, -6, 100, { 7, 7, 0 },
+ { 0x0000FAE6, 0x0000FAE6, 0x00000000 }, 0x00294566,
+ { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000 } }
+};
+
+static const EoBCharacterProvider kEoB2NpcPresetsDOSProvider = { ARRAYSIZE(kEoB2NpcPresetsDOS), kEoB2NpcPresetsDOS };
+
+static const byte kEoB2DreamStepsDOS[14] = {
+ 0x01, 0x02, 0x03, 0x02, 0x01, 0x00, 0x01, 0x02,
+ 0x03, 0x03, 0x02, 0x01, 0x00, 0xFF
+};
+
+static const ByteProvider kEoB2DreamStepsDOSProvider = { ARRAYSIZE(kEoB2DreamStepsDOS), kEoB2DreamStepsDOS };
+
+static const byte kEoB2HornSoundsDOS[4] = {
+ 0x40, 0x41, 0x42, 0x43
+};
+
+static const ByteProvider kEoB2HornSoundsDOSProvider = { ARRAYSIZE(kEoB2HornSoundsDOS), kEoB2HornSoundsDOS };
+
+static const uint16 kEoB2WallOfForceDsXDOS[18] = {
+ 0xFFCC, 0xFFF4, 0x001C, 0x0044, 0x006C, 0x0094, 0x00BC, 0xFFB8,
+ 0xFFF8, 0x0038, 0x0078, 0x00B8, 0xFFC8, 0x0028, 0x0088, 0x0000,
+ 0x0000, 0x0000
+};
+
+static const Uint16Provider kEoB2WallOfForceDsXDOSProvider = { ARRAYSIZE(kEoB2WallOfForceDsXDOS), kEoB2WallOfForceDsXDOS };
+
+static const byte kEoB2WallOfForceDsYDOS[3] = {
+ 0x20, 0x18, 0x10
+};
+
+static const ByteProvider kEoB2WallOfForceDsYDOSProvider = { ARRAYSIZE(kEoB2WallOfForceDsYDOS), kEoB2WallOfForceDsYDOS };
+
+static const byte kEoB2WallOfForceNumWDOS[3] = {
+ 0x01, 0x02, 0x03
+};
+
+static const ByteProvider kEoB2WallOfForceNumWDOSProvider = { ARRAYSIZE(kEoB2WallOfForceNumWDOS), kEoB2WallOfForceNumWDOS };
+
+static const byte kEoB2WallOfForceNumHDOS[3] = {
+ 0x02, 0x06, 0x09
+};
+
+static const ByteProvider kEoB2WallOfForceNumHDOSProvider = { ARRAYSIZE(kEoB2WallOfForceNumHDOS), kEoB2WallOfForceNumHDOS };
+
+static const byte kEoB2WallOfForceShpIdDOS[3] = {
+ 0x04, 0x02, 0x00
+};
+
+static const ByteProvider kEoB2WallOfForceShpIdDOSProvider = { ARRAYSIZE(kEoB2WallOfForceShpIdDOS), kEoB2WallOfForceShpIdDOS };
+
+static const byte kEoB2DscShapeIndexDOS[36] = {
+ 0x01, 0x01, 0x04, 0x0A, 0x04, 0x08, 0x04, 0x01,
+ 0x04, 0xF8, 0x04, 0xF6, 0x00, 0x00, 0x03, 0x09,
+ 0x03, 0x07, 0x03, 0x01, 0x03, 0xF9, 0x03, 0xF7,
+ 0x02, 0x06, 0x02, 0x01, 0x02, 0xFA, 0x01, 0x05,
+ 0x01, 0x01, 0x01, 0xFB
+};
+
+static const ByteProvider kEoB2DscShapeIndexDOSProvider = { ARRAYSIZE(kEoB2DscShapeIndexDOS), kEoB2DscShapeIndexDOS };
+
+static const uint16 kEoB2DscXDOS[18] = {
+ 0xFF70, 0xFFA0, 0xFFD0, 0x0000, 0x0030, 0x0060, 0x0090, 0xFF60,
+ 0xFFB0, 0x0000, 0x0050, 0x00A0, 0xFF80, 0x0000, 0x0080, 0x0000,
+ 0x0000, 0x0000
+};
+
+static const Uint16Provider kEoB2DscXDOSProvider = { ARRAYSIZE(kEoB2DscXDOS), kEoB2DscXDOS };
+
+static const byte kEoB2DscTileIndexDOS[18] = {
+ 0x00, 0x06, 0x01, 0x05, 0x02, 0x04, 0x03, 0x07,
+ 0x0B, 0x08, 0x0A, 0x09, 0x0C, 0x0E, 0x0D, 0x0F,
+ 0x11, 0x10
+};
+
+static const ByteProvider kEoB2DscTileIndexDOSProvider = { ARRAYSIZE(kEoB2DscTileIndexDOS), kEoB2DscTileIndexDOS };
+
+static const byte kEoB2DscUnk2DOS[23] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12
+};
+
+static const ByteProvider kEoB2DscUnk2DOSProvider = { ARRAYSIZE(kEoB2DscUnk2DOS), kEoB2DscUnk2DOS };
+
+static const byte kEoB2DscDimData1DOS[324] = {
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD8, 0xD7, 0xD8, 0xD8, 0x02, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xFE, 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0x03,
+ 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xFE, 0xD8, 0x08,
+ 0xD8, 0xD8, 0xD8, 0xFE, 0xD7, 0x06, 0xD8, 0xD8,
+ 0xFA, 0x03, 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xD8, 0xFD, 0xD7, 0x13, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xF2, 0xD8, 0x14, 0xD8, 0xD8,
+ 0xD8, 0xF0, 0xD7, 0x14, 0xD8, 0xED, 0x10, 0xD8,
+ 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8, 0xEC, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0x14, 0xD8, 0xED,
+ 0xD7, 0xD8, 0xD8, 0x13, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0x06, 0xD8, 0xD8, 0xFA, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xFA, 0xD8, 0x10, 0xD8, 0xFD, 0xD7,
+ 0x13, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xF0, 0xD8, 0xD8,
+ 0xD8, 0xED, 0x10, 0xD8, 0xD8, 0x13, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFD, 0xD8,
+ 0x13, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xED, 0xD8, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8
+};
+
+static const ByteProvider kEoB2DscDimData1DOSProvider = { ARRAYSIZE(kEoB2DscDimData1DOS), kEoB2DscDimData1DOS };
+
+static const byte kEoB2DscDimData2DOS[648] = {
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x02, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x04, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x16, 0x00, 0x00, 0x03,
+ 0x00, 0x16, 0x03, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x16, 0x00, 0x08,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x02,
+ 0x16, 0x00, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x08, 0x0E,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x06, 0x10,
+ 0x00, 0x13, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x0E, 0x16,
+ 0x00, 0x16, 0x00, 0x14, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x16, 0x00, 0x00, 0x14,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x14, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x12, 0x16, 0x14, 0x16, 0x00, 0x16, 0x13, 0x16,
+ 0x16, 0x00, 0x00, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x00, 0x16,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x07, 0x0F,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x03, 0x16, 0x00, 0x16,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16
+};
+
+static const ByteProvider kEoB2DscDimData2DOSProvider = { ARRAYSIZE(kEoB2DscDimData2DOS), kEoB2DscDimData2DOS };
+
+static const byte kEoB2DscBlockMapDOS[12] = {
+ 0x02, 0x03, 0x00, 0x01, 0x01, 0x02, 0x03, 0x00,
+ 0x03, 0x00, 0x01, 0x02
+};
+
+static const ByteProvider kEoB2DscBlockMapDOSProvider = { ARRAYSIZE(kEoB2DscBlockMapDOS), kEoB2DscBlockMapDOS };
+
+static const byte kEoB2DscDimMapDOS[18] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x03
+};
+
+static const ByteProvider kEoB2DscDimMapDOSProvider = { ARRAYSIZE(kEoB2DscDimMapDOS), kEoB2DscDimMapDOS };
+
+static const byte kEoB2DscBlockIndexDOS[72] = {
+ 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xBE,
+ 0xBF, 0xC0, 0xC1, 0xC2, 0xDF, 0xE0, 0xE1, 0xFF,
+ 0x00, 0x01, 0xA3, 0xC3, 0xE3, 0x03, 0x23, 0x43,
+ 0x63, 0xC2, 0xE2, 0x02, 0x22, 0x42, 0xE1, 0x01,
+ 0x21, 0xE0, 0x00, 0x20, 0x63, 0x62, 0x61, 0x60,
+ 0x5F, 0x5E, 0x5D, 0x42, 0x41, 0x40, 0x3F, 0x3E,
+ 0x21, 0x20, 0x1F, 0x01, 0x00, 0xFF, 0x5D, 0x3D,
+ 0x1D, 0xFD, 0xDD, 0xBD, 0x9D, 0x3E, 0x1E, 0xFE,
+ 0xDE, 0xBE, 0x1F, 0xFF, 0xDF, 0x20, 0x00, 0xE0
+};
+
+static const ByteProvider kEoB2DscBlockIndexDOSProvider = { ARRAYSIZE(kEoB2DscBlockIndexDOS), kEoB2DscBlockIndexDOS };
+
diff --git a/devtools/create_kyradat/resources/eob2_dos_english.h b/devtools/create_kyradat/resources/eob2_dos_english.h
new file mode 100644
index 0000000000..1bcf794131
--- /dev/null
+++ b/devtools/create_kyradat/resources/eob2_dos_english.h
@@ -0,0 +1,1347 @@
+static const char *const kEoB2ChargenStrings1DOSEnglish[9] = {
+ "Your party is\rcomplete. Select\rthe PLAY button\ror press 'P' to\rstart the game.",
+ " ",
+ "AC\rHP\rLVL",
+ "%s\r%d\r%d\r%d\r%d\r%d",
+ "%d\r%d",
+ "%d",
+ "%d/%d",
+ "%d/%d/%d",
+ "Select the box of\rthe character you\rwish to create or\rview."
+};
+
+static const StringListProvider kEoB2ChargenStrings1DOSEnglishProvider = { ARRAYSIZE(kEoB2ChargenStrings1DOSEnglish), kEoB2ChargenStrings1DOSEnglish };
+
+static const char *const kEoB2ChargenStrings2DOSEnglish[12] = {
+ "%s",
+ "%d",
+ "%s",
+ "%d",
+ "%d",
+ "%d",
+ "%s",
+ "%d",
+ "SELECT RACE:",
+ "SELECT CLASS:",
+ "SELECT ALIGNMENT:",
+ "Name:"
+};
+
+static const StringListProvider kEoB2ChargenStrings2DOSEnglishProvider = { ARRAYSIZE(kEoB2ChargenStrings2DOSEnglish), kEoB2ChargenStrings2DOSEnglish };
+
+static const char *const kEoB2ChargenStatStringsDOSEnglish[12] = {
+ "STR",
+ "INT",
+ "WIS",
+ "DEX",
+ "CON",
+ "CHA",
+ "STRENGTH",
+ "INTELLIGENCE",
+ "WISDOM",
+ "DEXTERITY",
+ "CONSTITUTION",
+ "CHARISMA"
+};
+
+static const StringListProvider kEoB2ChargenStatStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2ChargenStatStringsDOSEnglish), kEoB2ChargenStatStringsDOSEnglish };
+
+static const char *const kEoB2ChargenRaceSexStringsDOSEnglish[12] = {
+ "HUMAN MALE",
+ "HUMAN FEMALE",
+ "ELF MALE",
+ "ELF FEMALE",
+ "HALF-ELF MALE",
+ "HALF-ELF FEMALE",
+ "DWARF MALE",
+ "DWARF FEMALE",
+ "GNOME MALE",
+ "GNOME FEMALE",
+ "HALFLING MALE",
+ "HALFLING FEMALE"
+};
+
+static const StringListProvider kEoB2ChargenRaceSexStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2ChargenRaceSexStringsDOSEnglish), kEoB2ChargenRaceSexStringsDOSEnglish };
+
+static const char *const kEoB2ChargenClassStringsDOSEnglish[21] = {
+ "FIGHTER",
+ "RANGER",
+ "PALADIN",
+ "MAGE",
+ "CLERIC",
+ "THIEF",
+ "FIGHTER/CLERIC",
+ "FIGHTER/THIEF",
+ "FIGHTER/MAGE",
+ "FIGHTER/MAGE/THIEF",
+ "THIEF/MAGE",
+ "CLERIC/THIEF",
+ "FIGHTER/CLERIC/MAGE",
+ "RANGER/CLERIC",
+ "CLERIC/MAGE",
+ "FIGHTER",
+ "MAGE",
+ "CLERIC",
+ "THIEF",
+ "PALADIN",
+ "RANGER"
+};
+
+static const StringListProvider kEoB2ChargenClassStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2ChargenClassStringsDOSEnglish), kEoB2ChargenClassStringsDOSEnglish };
+
+static const char *const kEoB2ChargenAlignmentStringsDOSEnglish[9] = {
+ "LAWFUL GOOD",
+ "NEUTRAL GOOD",
+ "CHAOTIC GOOD",
+ "LAWFUL NEUTRAL",
+ "TRUE NEUTRAL",
+ "CHAOTIC NEUTRAL",
+ "LAWFUL EVIL",
+ "NEUTRAL EVIL",
+ "CHAOTIC EVIL"
+};
+
+static const StringListProvider kEoB2ChargenAlignmentStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2ChargenAlignmentStringsDOSEnglish), kEoB2ChargenAlignmentStringsDOSEnglish };
+
+static const char *const kEoB2ChargenEnterGameStringsDOSEnglish[1] = {
+ " Entering game.\r Please wait."
+};
+
+static const StringListProvider kEoB2ChargenEnterGameStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2ChargenEnterGameStringsDOSEnglish), kEoB2ChargenEnterGameStringsDOSEnglish };
+
+static const char *const kEoB2PryDoorStringsDOSEnglish[8] = {
+ "\r",
+ "You are not capable of forcing the door.\r",
+ "\x06\x04""You force the door.\r",
+ "\x06\x06""You try to force the door but fail.\r",
+ "You can't put that item there.\r",
+ "The item is too large to fit.\r",
+ "No one is able to pry this door open.\r",
+ "\r"
+};
+
+static const StringListProvider kEoB2PryDoorStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2PryDoorStringsDOSEnglish), kEoB2PryDoorStringsDOSEnglish };
+
+static const char *const kEoB2WarningStringsDOSEnglish[4] = {
+ "You can't go that way.\r",
+ "%s isn't capable of eating food!\r",
+ "That food is rotten! You don't want to eat that!\r",
+ "You may only eat food!\r"
+};
+
+static const StringListProvider kEoB2WarningStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2WarningStringsDOSEnglish), kEoB2WarningStringsDOSEnglish };
+
+static const char *const kEoB2ItemSuffixStringsRingsDOSEnglish[4] = {
+ "Adornment",
+ "Wizardry",
+ "Sustenance",
+ "Feather Fall"
+};
+
+static const StringListProvider kEoB2ItemSuffixStringsRingsDOSEnglishProvider = { ARRAYSIZE(kEoB2ItemSuffixStringsRingsDOSEnglish), kEoB2ItemSuffixStringsRingsDOSEnglish };
+
+static const char *const kEoB2ItemSuffixStringsPotionsDOSEnglish[8] = {
+ "Giant Strength",
+ "Healing",
+ "Extra Healing",
+ "Poison",
+ "Vitality",
+ "Speed",
+ "Invisibility",
+ "Cure Poison"
+};
+
+static const StringListProvider kEoB2ItemSuffixStringsPotionsDOSEnglishProvider = { ARRAYSIZE(kEoB2ItemSuffixStringsPotionsDOSEnglish), kEoB2ItemSuffixStringsPotionsDOSEnglish };
+
+static const char *const kEoB2ItemSuffixStringsWandsDOSEnglish[8] = {
+ "Stick",
+ "Lightning",
+ "Frost",
+ "Curing",
+ "Fireball",
+ "Starfire",
+ "Magic Missile",
+ "Dispel Magic"
+};
+
+static const StringListProvider kEoB2ItemSuffixStringsWandsDOSEnglishProvider = { ARRAYSIZE(kEoB2ItemSuffixStringsWandsDOSEnglish), kEoB2ItemSuffixStringsWandsDOSEnglish };
+
+static const char *const kEoB2RipItemStringsDOSEnglish[3] = {
+ "%s has lost her ",
+ "%s has lost his ",
+ ".\r"
+};
+
+static const StringListProvider kEoB2RipItemStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2RipItemStringsDOSEnglish), kEoB2RipItemStringsDOSEnglish };
+
+static const char *const kEoB2CursedStringDOSEnglish[1] = {
+ "%d Cursed %s"
+};
+
+static const StringListProvider kEoB2CursedStringDOSEnglishProvider = { ARRAYSIZE(kEoB2CursedStringDOSEnglish), kEoB2CursedStringDOSEnglish };
+
+static const char *const kEoB2MagicObjectStringsDOSEnglish[5] = {
+ "Mage Scroll",
+ "Cleric Scroll",
+ "Ring",
+ "Potion",
+ "Wand"
+};
+
+static const StringListProvider kEoB2MagicObjectStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2MagicObjectStringsDOSEnglish), kEoB2MagicObjectStringsDOSEnglish };
+
+static const char *const kEoB2MagicObjectString5DOSEnglish[1] = {
+ "Stick"
+};
+
+static const StringListProvider kEoB2MagicObjectString5DOSEnglishProvider = { ARRAYSIZE(kEoB2MagicObjectString5DOSEnglish), kEoB2MagicObjectString5DOSEnglish };
+
+static const char *const kEoB2PatternSuffixDOSEnglish[1] = {
+ "%s of %s"
+};
+
+static const StringListProvider kEoB2PatternSuffixDOSEnglishProvider = { ARRAYSIZE(kEoB2PatternSuffixDOSEnglish), kEoB2PatternSuffixDOSEnglish };
+
+static const char *const kEoB2PatternGrFix1DOSEnglish[1] = {
+ "%s of %s"
+};
+
+static const StringListProvider kEoB2PatternGrFix1DOSEnglishProvider = { ARRAYSIZE(kEoB2PatternGrFix1DOSEnglish), kEoB2PatternGrFix1DOSEnglish };
+
+static const char *const kEoB2PatternGrFix2DOSEnglish[1] = {
+ "%s of %s"
+};
+
+static const StringListProvider kEoB2PatternGrFix2DOSEnglishProvider = { ARRAYSIZE(kEoB2PatternGrFix2DOSEnglish), kEoB2PatternGrFix2DOSEnglish };
+
+static const char *const kEoB2ValidateArmorStringDOSEnglish[1] = {
+ "%s can't wear that type of armor.\r"
+};
+
+static const StringListProvider kEoB2ValidateArmorStringDOSEnglishProvider = { ARRAYSIZE(kEoB2ValidateArmorStringDOSEnglish), kEoB2ValidateArmorStringDOSEnglish };
+
+static const char *const kEoB2ValidateCursedStringDOSEnglish[1] = {
+ "%s cannot release the weapon! It is cursed!\r"
+};
+
+static const StringListProvider kEoB2ValidateCursedStringDOSEnglishProvider = { ARRAYSIZE(kEoB2ValidateCursedStringDOSEnglish), kEoB2ValidateCursedStringDOSEnglish };
+
+static const char *const kEoB2ValidateNoDropStringDOSEnglish[1] = {
+ "You can't put that item there.\r"
+};
+
+static const StringListProvider kEoB2ValidateNoDropStringDOSEnglishProvider = { ARRAYSIZE(kEoB2ValidateNoDropStringDOSEnglish), kEoB2ValidateNoDropStringDOSEnglish };
+
+static const char *const kEoB2PotionStringsDOSEnglish[2] = {
+ "poisoned",
+ "%s feels %s!\r"
+};
+
+static const StringListProvider kEoB2PotionStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2PotionStringsDOSEnglish), kEoB2PotionStringsDOSEnglish };
+
+static const char *const kEoB2WandStringsDOSEnglish[1] = {
+ "The wand has no apparent magical effect\r"
+};
+
+static const StringListProvider kEoB2WandStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2WandStringsDOSEnglish), kEoB2WandStringsDOSEnglish };
+
+static const char *const kEoB2ItemMisuseStringsDOSEnglish[3] = {
+ " can not use this item.\r",
+ "This item automatically used when worn.\r",
+ "This item is not used in this way.\r"
+};
+
+static const StringListProvider kEoB2ItemMisuseStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2ItemMisuseStringsDOSEnglish), kEoB2ItemMisuseStringsDOSEnglish };
+
+static const char *const kEoB2TakenStringsDOSEnglish[1] = {
+ " taken.\r"
+};
+
+static const StringListProvider kEoB2TakenStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2TakenStringsDOSEnglish), kEoB2TakenStringsDOSEnglish };
+
+static const char *const kEoB2PotionEffectStringsDOSEnglish[8] = {
+ "much stronger",
+ "better",
+ "much better",
+ "ill for a moment",
+ "satiated",
+ "fast and agile",
+ "transparent",
+ "better"
+};
+
+static const StringListProvider kEoB2PotionEffectStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2PotionEffectStringsDOSEnglish), kEoB2PotionEffectStringsDOSEnglish };
+
+static const char *const kEoB2YesNoStringsDOSEnglish[2] = {
+ "yes",
+ "no"
+};
+
+static const StringListProvider kEoB2YesNoStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2YesNoStringsDOSEnglish), kEoB2YesNoStringsDOSEnglish };
+
+static const char *const kEoB2MoreStringsDOSEnglish[1] = {
+ "MORE"
+};
+
+static const StringListProvider kEoB2MoreStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2MoreStringsDOSEnglish), kEoB2MoreStringsDOSEnglish };
+
+static const char *const kEoB2NpcMaxStringsDOSEnglish[1] = {
+ "You may only have six characters in your party. Select the one you wish to drop."
+};
+
+static const StringListProvider kEoB2NpcMaxStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2NpcMaxStringsDOSEnglish), kEoB2NpcMaxStringsDOSEnglish };
+
+static const char *const kEoB2OkStringsDOSEnglish[1] = {
+ "OK"
+};
+
+static const StringListProvider kEoB2OkStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2OkStringsDOSEnglish), kEoB2OkStringsDOSEnglish };
+
+static const char *const kEoB2NpcJoinStringsDOSEnglish[1] = {
+ "%s joins the party.\r"
+};
+
+static const StringListProvider kEoB2NpcJoinStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2NpcJoinStringsDOSEnglish), kEoB2NpcJoinStringsDOSEnglish };
+
+static const char *const kEoB2CancelStringsDOSEnglish[1] = {
+ "CANCEL"
+};
+
+static const StringListProvider kEoB2CancelStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2CancelStringsDOSEnglish), kEoB2CancelStringsDOSEnglish };
+
+static const char *const kEoB2AbortStringsDOSEnglish[1] = {
+ "ABORT"
+};
+
+static const StringListProvider kEoB2AbortStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2AbortStringsDOSEnglish), kEoB2AbortStringsDOSEnglish };
+
+static const char *const kEoB2MenuStringsMainDOSEnglish[8] = {
+ "Select Option:",
+ "Rest Party",
+ "Memorize Spells",
+ "Pray for Spells",
+ "Scribe Scrolls",
+ "Preferences",
+ "Game Options",
+ "Exit"
+};
+
+static const StringListProvider kEoB2MenuStringsMainDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsMainDOSEnglish), kEoB2MenuStringsMainDOSEnglish };
+
+static const char *const kEoB2MenuStringsSaveLoadDOSEnglish[8] = {
+ "Load Game",
+ "Save Game",
+ "Drop Character",
+ "Quit Game",
+ "Game Options:",
+ "\r Game saved.",
+ "Attempts to save your\rgame have failed!",
+ "Cannot load your\rsave game. The\rfile may be corrupt!"
+};
+
+static const StringListProvider kEoB2MenuStringsSaveLoadDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsSaveLoadDOSEnglish), kEoB2MenuStringsSaveLoadDOSEnglish };
+
+static const char *const kEoB2MenuStringsOnOffDOSEnglish[2] = {
+ "ON",
+ "OFF"
+};
+
+static const StringListProvider kEoB2MenuStringsOnOffDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsOnOffDOSEnglish), kEoB2MenuStringsOnOffDOSEnglish };
+
+static const char *const kEoB2MenuStringsSpellsDOSEnglish[17] = {
+ "\r\r Select a character\r from your party who\r would like to learn\r spells.",
+ "\r Your Paladin is \r too low a level\r for spells.",
+ "\r\r The Mage has no\r Spell Book!",
+ "\r\r\r Select a character\r from your party\r who would like to\r pray for spells.",
+ "\r No party members\r are capable of\r praying for new\r spells.",
+ "\r No party members\r are capable of\r memorizing new\r spells.",
+ " An unconscious\r or dead Mage\r cannot memorize\r spells.",
+ " An unconscious\r or dead Cleric\r cannot pray for\r spells.",
+ "1",
+ "2",
+ "3",
+ "4",
+ "5",
+ "Clear",
+ "Spells Available:",
+ "Yes",
+ "No"
+};
+
+static const StringListProvider kEoB2MenuStringsSpellsDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsSpellsDOSEnglish), kEoB2MenuStringsSpellsDOSEnglish };
+
+static const char *const kEoB2MenuStringsRestDOSEnglish[5] = {
+ "\rWill your healers\rheal the party?",
+ " Someone is still\r injured. Rest\r until healed?",
+ "Resting party.",
+ "\r All characters\r are fully\r rested.",
+ " Your party needs\r to rest to gain\r spells."
+};
+
+static const StringListProvider kEoB2MenuStringsRestDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsRestDOSEnglish), kEoB2MenuStringsRestDOSEnglish };
+
+static const char *const kEoB2MenuStringsDropDOSEnglish[1] = {
+ " You cannot have\r less than four\r characters."
+};
+
+static const StringListProvider kEoB2MenuStringsDropDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsDropDOSEnglish), kEoB2MenuStringsDropDOSEnglish };
+
+static const char *const kEoB2MenuStringsExitDOSEnglish[1] = {
+ " Are you sure you\r wish to exit the\r game?"
+};
+
+static const StringListProvider kEoB2MenuStringsExitDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsExitDOSEnglish), kEoB2MenuStringsExitDOSEnglish };
+
+static const char *const kEoB2MenuStringsStarveDOSEnglish[1] = {
+ " Your party is\r starving. Do you\r wish to continue\r resting?"
+};
+
+static const StringListProvider kEoB2MenuStringsStarveDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsStarveDOSEnglish), kEoB2MenuStringsStarveDOSEnglish };
+
+static const char *const kEoB2MenuStringsScribeDOSEnglish[5] = {
+ "Select the scroll(s)\ryou wish to scribe.",
+ "\r\r\r Select a Mage\r from your party\r who would like to\r scribe spells.",
+ " You don't have\r any scolls to be\r scribed.",
+ " You don't have\r any scrolls that\r this Mage needs.",
+ "\r You don't have\r any Mage able to\r scribe scrolls."
+};
+
+static const StringListProvider kEoB2MenuStringsScribeDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsScribeDOSEnglish), kEoB2MenuStringsScribeDOSEnglish };
+
+static const char *const kEoB2MenuStringsDrop2DOSEnglish[3] = {
+ " Select the\r character you\r wish to drop.",
+ " You must specify\r a name for your\r save game!",
+ " Are you sure you\r wish to replace\r your saved game?"
+};
+
+static const StringListProvider kEoB2MenuStringsDrop2DOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsDrop2DOSEnglish), kEoB2MenuStringsDrop2DOSEnglish };
+
+static const char *const kEoB2MenuStringsHeadDOSEnglish[3] = {
+ "Camp:",
+ "Preferences:",
+ "Game Options:"
+};
+
+static const StringListProvider kEoB2MenuStringsHeadDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsHeadDOSEnglish), kEoB2MenuStringsHeadDOSEnglish };
+
+static const char *const kEoB2MenuStringsPoisonDOSEnglish[1] = {
+ "Poisoned party\rmembers may die!\rRest anyway?"
+};
+
+static const StringListProvider kEoB2MenuStringsPoisonDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsPoisonDOSEnglish), kEoB2MenuStringsPoisonDOSEnglish };
+
+static const char *const kEoB2MenuStringsMgcDOSEnglish[2] = {
+ "%-18s %1d",
+ "%d of %d Remaining. "
+};
+
+static const StringListProvider kEoB2MenuStringsMgcDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsMgcDOSEnglish), kEoB2MenuStringsMgcDOSEnglish };
+
+static const char *const kEoB2MenuStringsPrefsDOSEnglish[4] = {
+ "Tunes are %-3s",
+ "Sounds are %-3s",
+ "Bar Graphs are %-3s",
+ "Mouse is %-3s"
+};
+
+static const StringListProvider kEoB2MenuStringsPrefsDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsPrefsDOSEnglish), kEoB2MenuStringsPrefsDOSEnglish };
+
+static const char *const kEoB2MenuStringsRest2DOSEnglish[5] = {
+ "%s gained %s.\r",
+ "%s memorized %s.\r",
+ "%s casts healing on %s.\r",
+ "Hours rested: %-4d",
+ "\r%s\r"
+};
+
+static const StringListProvider kEoB2MenuStringsRest2DOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsRest2DOSEnglish), kEoB2MenuStringsRest2DOSEnglish };
+
+static const char *const kEoB2MenuStringsRest3DOSEnglish[1] = {
+ "\x06\x06""You do not feel it is safe to rest here."
+};
+
+static const StringListProvider kEoB2MenuStringsRest3DOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsRest3DOSEnglish), kEoB2MenuStringsRest3DOSEnglish };
+
+static const char *const kEoB2MenuStringsRest4DOSEnglish[1] = {
+ "\x06\x06""You can't rest here, monsters are near."
+};
+
+static const StringListProvider kEoB2MenuStringsRest4DOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsRest4DOSEnglish), kEoB2MenuStringsRest4DOSEnglish };
+
+static const char *const kEoB2MenuStringsDefeatDOSEnglish[1] = {
+ "\rYour entire party\rhas been defeated!\rWould you like to\rload a previously\rsaved game?"
+};
+
+static const StringListProvider kEoB2MenuStringsDefeatDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsDefeatDOSEnglish), kEoB2MenuStringsDefeatDOSEnglish };
+
+static const char *const kEoB2MenuStringsTransferDOSEnglish[5] = {
+ "You must transfer\rfour party members\rbefore you may play!",
+ "You may only transfer\rfour party members to\rEOB II!",
+ "Items which are not\ruseful or unbalance\rthe game will be\rdeleted.",
+ " \r You do not have\r a mage in your\r party.",
+ " \r You do not have\r a cleric or\r paladin in your\r party."
+};
+
+static const StringListProvider kEoB2MenuStringsTransferDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsTransferDOSEnglish), kEoB2MenuStringsTransferDOSEnglish };
+
+static const char *const kEoB2MenuStringsSpecDOSEnglish[2] = {
+ "As you awaken, you\rdiscover that Insal\rthe thief is gone!",
+ "A quick inventory\rreveals equipment\rhas been stolen!"
+};
+
+static const StringListProvider kEoB2MenuStringsSpecDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuStringsSpecDOSEnglish), kEoB2MenuStringsSpecDOSEnglish };
+
+static const char *const kEoB2MenuYesNoStringsDOSEnglish[2] = {
+ "Yes",
+ "No"
+};
+
+static const StringListProvider kEoB2MenuYesNoStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2MenuYesNoStringsDOSEnglish), kEoB2MenuYesNoStringsDOSEnglish };
+
+static const char *const kEoB2CharGuiStringsHpDOSEnglish[2] = {
+ "HP",
+ "%3d of %-3d"
+};
+
+static const StringListProvider kEoB2CharGuiStringsHpDOSEnglishProvider = { ARRAYSIZE(kEoB2CharGuiStringsHpDOSEnglish), kEoB2CharGuiStringsHpDOSEnglish };
+
+static const char *const kEoB2CharGuiStringsWp2DOSEnglish[3] = {
+ "MISS",
+ "HACK",
+ "BASH"
+};
+
+static const StringListProvider kEoB2CharGuiStringsWp2DOSEnglishProvider = { ARRAYSIZE(kEoB2CharGuiStringsWp2DOSEnglish), kEoB2CharGuiStringsWp2DOSEnglish };
+
+static const char *const kEoB2CharGuiStringsWrDOSEnglish[4] = {
+ "CAN'T",
+ "REACH",
+ "NO",
+ "AMMO"
+};
+
+static const StringListProvider kEoB2CharGuiStringsWrDOSEnglishProvider = { ARRAYSIZE(kEoB2CharGuiStringsWrDOSEnglish), kEoB2CharGuiStringsWrDOSEnglish };
+
+static const char *const kEoB2CharGuiStringsSt2DOSEnglish[7] = {
+ "Swapping",
+ "DEAD",
+ "UNCONSCIOUS",
+ "POISON (SLOW)",
+ "POISONED",
+ "PARALYZED",
+ "PETRIFIED"
+};
+
+static const StringListProvider kEoB2CharGuiStringsSt2DOSEnglishProvider = { ARRAYSIZE(kEoB2CharGuiStringsSt2DOSEnglish), kEoB2CharGuiStringsSt2DOSEnglish };
+
+static const char *const kEoB2CharGuiStringsInDOSEnglish[4] = {
+ "CHARACTER INFO",
+ "ARMOR CLASS",
+ "EXP",
+ "LVL"
+};
+
+static const StringListProvider kEoB2CharGuiStringsInDOSEnglishProvider = { ARRAYSIZE(kEoB2CharGuiStringsInDOSEnglish), kEoB2CharGuiStringsInDOSEnglish };
+
+static const char *const kEoB2CharStatusStrings7DOSEnglish[1] = {
+ "%s no longer has giant strength.\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings7DOSEnglishProvider = { ARRAYSIZE(kEoB2CharStatusStrings7DOSEnglish), kEoB2CharStatusStrings7DOSEnglish };
+
+static const char *const kEoB2CharStatusStrings82DOSEnglish[1] = {
+ "\x06\x06""%s feels the effects of poison!\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings82DOSEnglishProvider = { ARRAYSIZE(kEoB2CharStatusStrings82DOSEnglish), kEoB2CharStatusStrings82DOSEnglish };
+
+static const char *const kEoB2CharStatusStrings9DOSEnglish[1] = {
+ "%s is no longer paralyzed!\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings9DOSEnglishProvider = { ARRAYSIZE(kEoB2CharStatusStrings9DOSEnglish), kEoB2CharStatusStrings9DOSEnglish };
+
+static const char *const kEoB2CharStatusStrings12DOSEnglish[1] = {
+ "%s slows down.\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings12DOSEnglishProvider = { ARRAYSIZE(kEoB2CharStatusStrings12DOSEnglish), kEoB2CharStatusStrings12DOSEnglish };
+
+static const char *const kEoB2CharStatusStrings132DOSEnglish[1] = {
+ "\x06\x06""%s is %s!\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings132DOSEnglishProvider = { ARRAYSIZE(kEoB2CharStatusStrings132DOSEnglish), kEoB2CharStatusStrings132DOSEnglish };
+
+static const char *const kEoB2LevelGainStringsDOSEnglish[1] = {
+ "\x06\x01""%s has gained a level.""\x06\x0F""\r"
+};
+
+static const StringListProvider kEoB2LevelGainStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2LevelGainStringsDOSEnglish), kEoB2LevelGainStringsDOSEnglish };
+
+static const char *const kEoB2BookNumbersDOSEnglish[5] = {
+ "First",
+ "Second",
+ "Third",
+ "Fourth",
+ "Fifth"
+};
+
+static const StringListProvider kEoB2BookNumbersDOSEnglishProvider = { ARRAYSIZE(kEoB2BookNumbersDOSEnglish), kEoB2BookNumbersDOSEnglish };
+
+static const char *const kEoB2MageSpellsListDOSEnglish[33] = {
+ "",
+ "Armor",
+ "Burning Hands",
+ "Detect Magic",
+ "Magic Missile",
+ "Shield",
+ "Shocking Grasp",
+ "Blur",
+ "Detect Invisible",
+ "Imp Identify",
+ "Invisibility",
+ "M's Acid Arrow",
+ "Dispel Magic",
+ "Fireball",
+ "Haste",
+ "Hold Person",
+ "Invisibility 10'",
+ "Lightning Bolt",
+ "Vampiric Touch",
+ "Fear",
+ "Ice Storm",
+ "Imp Invisibility",
+ "Remove Curse",
+ "Cone of Cold",
+ "Hold Monster",
+ "Wall of Force",
+ "Disintegrate",
+ "Flesh to Stone",
+ "Stone to Flesh",
+ "True Seeing",
+ "Finger of Death",
+ "Power Word Stun",
+ "Bigby's Fist"
+};
+
+static const StringListProvider kEoB2MageSpellsListDOSEnglishProvider = { ARRAYSIZE(kEoB2MageSpellsListDOSEnglish), kEoB2MageSpellsListDOSEnglish };
+
+static const char *const kEoB2ClericSpellsListDOSEnglish[30] = {
+ "",
+ "Bless",
+ "Cause Light Wnds",
+ "Cure Light Wnds",
+ "Detect Magic",
+ "Protect-Evil",
+ "Aid",
+ "Flame Blade",
+ "Hold Person",
+ "Slow Poison",
+ "Create Food",
+ "Dispel Magic",
+ "Magical Vestment",
+ "Prayer",
+ "Remove Paralysis",
+ "Cause Serious",
+ "Cure Serious",
+ "Neutral-Poison",
+ "Protect-Evil 10'",
+ "Cause Critical",
+ "Cure Critical",
+ "Flame Strike",
+ "Raise Dead",
+ "Slay Living",
+ "True Seeing",
+ "Harm",
+ "Heal",
+ "Ressurection",
+ "Lay on Hands",
+ "Turn undead"
+};
+
+static const StringListProvider kEoB2ClericSpellsListDOSEnglishProvider = { ARRAYSIZE(kEoB2ClericSpellsListDOSEnglish), kEoB2ClericSpellsListDOSEnglish };
+
+static const char *const kEoB2SpellNamesDOSEnglish[68] = {
+ "armor",
+ "burning hands",
+ "detect magic",
+ "magic missile",
+ "shield",
+ "shocking grasp",
+ "blur",
+ "detect invisibility",
+ "improved identify",
+ "invisibility",
+ "melf's acid arrow",
+ "dispel magic",
+ "fireball",
+ "haste",
+ "Hold Person",
+ "invisibility 10' radius",
+ "lightning bolt",
+ "vampiric touch",
+ "fear",
+ "ice storm",
+ "improved invisibility",
+ "remove curse",
+ "cone of cold",
+ "hold monster",
+ "wall of force",
+ "disintegrate",
+ "flesh to stone",
+ "stone to flesh",
+ "true seeing",
+ "finger of death",
+ "power word stun",
+ "bigby's clenched fist",
+ "bless",
+ "cause light wounds",
+ "cure light wounds",
+ "detect magic",
+ "protection from evil",
+ "aid",
+ "flame blade",
+ "hold person",
+ "slow poison",
+ "create food",
+ "dispel magic",
+ "magical vestment",
+ "prayer",
+ "remove paralysis",
+ "cause serious wounds",
+ "cure serious wounds",
+ "neutralize poison",
+ "protection from evil 10' radius",
+ "cause critical wounds",
+ "cure critical wounds",
+ "flame strike",
+ "raise dead",
+ "slay living",
+ "true seeing",
+ "harm",
+ "heal",
+ "ressurection",
+ "lay on hands",
+ "turn undead",
+ "",
+ "mystic defense",
+ "",
+ "",
+ "",
+ "",
+ ""
+};
+
+static const StringListProvider kEoB2SpellNamesDOSEnglishProvider = { ARRAYSIZE(kEoB2SpellNamesDOSEnglish), kEoB2SpellNamesDOSEnglish };
+
+static const char *const kEoB2MagicStrings1DOSEnglish[6] = {
+ "ABORT SPELL",
+ "ABORT SPELL",
+ "You must have a free hand for this spell.\r",
+ "You can't have two of this spell type active.\r",
+ "%s casts %s.\r",
+ "\rok\r"
+};
+
+static const StringListProvider kEoB2MagicStrings1DOSEnglishProvider = { ARRAYSIZE(kEoB2MagicStrings1DOSEnglish), kEoB2MagicStrings1DOSEnglish };
+
+static const char *const kEoB2MagicStrings2DOSEnglish[5] = {
+ "The spell fails!\r",
+ "%s has been disintegrated!\r",
+ "\x06\x06""The party has been hit by a death spell!\r",
+ "\x06\x06""%s has been hit by cause serious wounds.\r",
+ "PETRIFIED"
+};
+
+static const StringListProvider kEoB2MagicStrings2DOSEnglishProvider = { ARRAYSIZE(kEoB2MagicStrings2DOSEnglish), kEoB2MagicStrings2DOSEnglish };
+
+static const char *const kEoB2MagicStrings3DOSEnglish[5] = {
+ "Cast spell on which character? ",
+ "\rSpell aborted.\r",
+ "%s's %s spell expires.\r",
+ "%s missed the monster.\r",
+ "%s must be in the front ranks to hit!\r"
+};
+
+static const StringListProvider kEoB2MagicStrings3DOSEnglishProvider = { ARRAYSIZE(kEoB2MagicStrings3DOSEnglish), kEoB2MagicStrings3DOSEnglish };
+
+static const char *const kEoB2MagicStrings4DOSEnglish[1] = {
+ "no effect.\r"
+};
+
+static const StringListProvider kEoB2MagicStrings4DOSEnglishProvider = { ARRAYSIZE(kEoB2MagicStrings4DOSEnglish), kEoB2MagicStrings4DOSEnglish };
+
+static const char *const kEoB2MagicStrings6DOSEnglish[1] = {
+ "%s already has an armor class better than AC 6."
+};
+
+static const StringListProvider kEoB2MagicStrings6DOSEnglishProvider = { ARRAYSIZE(kEoB2MagicStrings6DOSEnglish), kEoB2MagicStrings6DOSEnglish };
+
+static const char *const kEoB2MagicStrings7DOSEnglish[2] = {
+ "%s is already under the effect of a %s spell.\r",
+ "The party is already under the effect of a %s spell.\r"
+};
+
+static const StringListProvider kEoB2MagicStrings7DOSEnglishProvider = { ARRAYSIZE(kEoB2MagicStrings7DOSEnglish), kEoB2MagicStrings7DOSEnglish };
+
+static const char *const kEoB2MagicStrings8DOSEnglish[6] = {
+ "The spell fails!\r",
+ "held",
+ "The spell fails!\r",
+ "The spell fails\r",
+ "No monster within reach!\r",
+ "%s is already under the effect of an aid spell.\r"
+};
+
+static const StringListProvider kEoB2MagicStrings8DOSEnglishProvider = { ARRAYSIZE(kEoB2MagicStrings8DOSEnglish), kEoB2MagicStrings8DOSEnglish };
+
+static const byte kEoB2ManDefDOSEnglish[200] = {
+ 0x09, 0x03, 0x04, 0x00, 0x09, 0x0D, 0x02, 0x00,
+ 0x09, 0x07, 0x07, 0x00, 0x14, 0x06, 0x05, 0x00,
+ 0x14, 0x10, 0x06, 0x00, 0x14, 0x1C, 0x03, 0x00,
+ 0x1A, 0x04, 0x06, 0x00, 0x1A, 0x0A, 0x05, 0x00,
+ 0x1A, 0x0C, 0x05, 0x00, 0x15, 0x03, 0x04, 0x00,
+ 0x15, 0x05, 0x05, 0x00, 0x15, 0x0F, 0x02, 0x00,
+ 0x15, 0x14, 0x03, 0x00, 0x15, 0x1B, 0x02, 0x00,
+ 0x15, 0x1D, 0x03, 0x00, 0x23, 0x01, 0x03, 0x00,
+ 0x23, 0x03, 0x03, 0x00, 0x23, 0x08, 0x03, 0x00,
+ 0x23, 0x19, 0x02, 0x00, 0x23, 0x1F, 0x04, 0x00,
+ 0x23, 0x26, 0x04, 0x00, 0x26, 0x03, 0x02, 0x00,
+ 0x26, 0x05, 0x06, 0x00, 0x26, 0x12, 0x03, 0x00,
+ 0x26, 0x18, 0x01, 0x00, 0x26, 0x1E, 0x01, 0x00,
+ 0x26, 0x21, 0x04, 0x00, 0x17, 0x01, 0x03, 0x00,
+ 0x17, 0x03, 0x06, 0x00, 0x17, 0x06, 0x02, 0x00,
+ 0x17, 0x0F, 0x05, 0x00, 0x17, 0x1B, 0x01, 0x00,
+ 0x17, 0x21, 0x06, 0x00, 0x12, 0x03, 0x02, 0x00,
+ 0x12, 0x05, 0x04, 0x00, 0x12, 0x09, 0x02, 0x00,
+ 0x12, 0x0B, 0x04, 0x00, 0x12, 0x0D, 0x06, 0x00,
+ 0x12, 0x0F, 0x03, 0x00, 0x12, 0x11, 0x05, 0x00,
+ 0x12, 0x12, 0x02, 0x00, 0x1F, 0x02, 0x04, 0x00,
+ 0x1F, 0x02, 0x07, 0x00, 0x1F, 0x04, 0x03, 0x00,
+ 0x1F, 0x06, 0x03, 0x00, 0x1F, 0x09, 0x03, 0x00,
+ 0x1F, 0x0A, 0x01, 0x00, 0x1C, 0x03, 0x03, 0x00,
+ 0x1C, 0x04, 0x02, 0x00, 0x1C, 0x05, 0x06, 0x00
+};
+
+static const ByteProvider kEoB2ManDefDOSEnglishProvider = { ARRAYSIZE(kEoB2ManDefDOSEnglish), kEoB2ManDefDOSEnglish };
+
+static const char *const kEoB2ManWordDOSEnglish[51] = {
+ "cursor",
+ "majority",
+ "right",
+ "unusable",
+ "greyed",
+ "thrown",
+ "spellcasters",
+ "button",
+ "characters",
+ "carefree",
+ "practical",
+ "inherit",
+ "while",
+ "combinations",
+ "charm",
+ "individuals",
+ "gestures",
+ "pummel",
+ "paladins",
+ "skill",
+ "advancement",
+ "also",
+ "counters",
+ "knowledge",
+ "greater",
+ "assume",
+ "several",
+ "laying",
+ "reach",
+ "swiftly",
+ "allows",
+ "limited",
+ "jack",
+ "thrown",
+ "weapons",
+ "note",
+ "certain",
+ "damage",
+ "done",
+ "bonus",
+ "may",
+ "over",
+ "box",
+ "put",
+ "portrait",
+ "backpack",
+ "inside",
+ "causes",
+ "until",
+ "outright",
+ ""
+};
+
+static const StringListProvider kEoB2ManWordDOSEnglishProvider = { ARRAYSIZE(kEoB2ManWordDOSEnglish), kEoB2ManWordDOSEnglish };
+
+static const char *const kEoB2ManPromptDOSEnglish[1] = {
+ "\r\r\r\rOn the page with this symbol...\r\rFind line %d\rEnter word %d\r"
+};
+
+static const StringListProvider kEoB2ManPromptDOSEnglishProvider = { ARRAYSIZE(kEoB2ManPromptDOSEnglish), kEoB2ManPromptDOSEnglish };
+
+static const char *const kEoB2MainMenuStringsDOSEnglish[5] = {
+ "LOAD GAME IN PROGRESS\r",
+ "START A NEW PARTY\r",
+ "TRANSFER EOB I PARTY\r",
+ "RUN INTRODUCTION\r",
+ "EXIT TO DOS\r"
+};
+
+static const StringListProvider kEoB2MainMenuStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2MainMenuStringsDOSEnglish), kEoB2MainMenuStringsDOSEnglish };
+
+static const char *const kEoB2TransferStrings1DOSEnglish[2] = {
+ "Level: %d",
+ " / %d"
+};
+
+static const StringListProvider kEoB2TransferStrings1DOSEnglishProvider = { ARRAYSIZE(kEoB2TransferStrings1DOSEnglish), kEoB2TransferStrings1DOSEnglish };
+
+static const char *const kEoB2TransferStrings2DOSEnglish[2] = {
+ "You may only take four characters on your adventure.",
+ "Select OK when you are finished choosing your party."
+};
+
+static const StringListProvider kEoB2TransferStrings2DOSEnglishProvider = { ARRAYSIZE(kEoB2TransferStrings2DOSEnglish), kEoB2TransferStrings2DOSEnglish };
+
+static const char *const kEoB2TransferLabelsDOSEnglish[2] = {
+ "CANCEL",
+ "OK"
+};
+
+static const StringListProvider kEoB2TransferLabelsDOSEnglishProvider = { ARRAYSIZE(kEoB2TransferLabelsDOSEnglish), kEoB2TransferLabelsDOSEnglish };
+
+static const char *const kEoB2IntroStringsDOSEnglish[20] = {
+ "You were settling in for an evening \rby the fire.",
+ "Then a note was slipped to you.",
+ "It was from your friend Khelben \rBlackstaff, Archmage of the city.",
+ "The message was urgent.",
+ "What could Khelben want?",
+ "Welcome, please come in.",
+ "Khelben awaits you in his study.",
+ "Thank you for coming so quickly.",
+ "I am troubled my friend.",
+ "Ancient Evil stirs in the \rTemple Darkmoon.",
+ "I fear for the safety of our city.",
+ "I need your help.",
+ "Three nights ago \rI sent forth a scout.",
+ "She has not yet returned.",
+ "I fear for her safety.",
+ "Take this coin.",
+ "I will use it to contact you.",
+ "You must act quickly.",
+ "I will teleport you near Darkmoon.",
+ "May luck be with you, my friend."
+};
+
+static const StringListProvider kEoB2IntroStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2IntroStringsDOSEnglish), kEoB2IntroStringsDOSEnglish };
+
+static const char *const kEoB2IntroCPSFilesDOSEnglish[13] = {
+ "STREET1.CPS",
+ "STREET2.CPS",
+ "DOORWAY1.CPS",
+ "DOORWAY2.CPS",
+ "WESTWOOD.CPS",
+ "WINDING.CPS",
+ "KHELBAN2.CPS",
+ "KHELBAN1.CPS",
+ "KHELBAN3.CPS",
+ "KHELBAN4.CPS",
+ "COIN.CPS",
+ "KHELBAN5.CPS",
+ "KHELBAN6.CPS"
+};
+
+static const StringListProvider kEoB2IntroCPSFilesDOSEnglishProvider = { ARRAYSIZE(kEoB2IntroCPSFilesDOSEnglish), kEoB2IntroCPSFilesDOSEnglish };
+
+static const char *const kEoB2FinaleStringsDOSEnglish[20] = {
+ "Finally, Dran has been defeated.",
+ "Suddenly, your friend Khelben appears.",
+ "Greetings, my victorious friends.",
+ "You have defeated Dran!",
+ "I did not know Dran was a dragon.",
+ "He must have been over 300 years old!",
+ "His power is gone.",
+ "But Darkmoon is still a source\rof great evil.",
+ "And many of his minions remain.",
+ "Now we must leave this place.",
+ "So my forces can destroy it\ronce and for all.",
+ "Follow me.",
+ "Powerful mages stand ready\rfor the final assault\ron Darkmoon.",
+ "The Temple's evil is very strong.",
+ "It must not be allowed to survive!",
+ "The Temple ceases to exist.",
+ "My friends, our work is done.",
+ "Thank you.",
+ "You have earned my deepest respect.",
+ "We will remember you always."
+};
+
+static const StringListProvider kEoB2FinaleStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2FinaleStringsDOSEnglish), kEoB2FinaleStringsDOSEnglish };
+
+static const byte kEoB2CreditsDataDOSEnglish[2316] = {
+ 0x02, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x02, 0x10, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x02, 0x03, 0x0D, 0x02, 0x04, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x02,
+ 0x06, 0x0D, 0x0D, 0x0D, 0x02, 0x01, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x44, 0x69, 0x72, 0x65,
+ 0x63, 0x74, 0x6F, 0x72, 0x3A, 0x20, 0x42, 0x72,
+ 0x65, 0x74, 0x74, 0x20, 0x57, 0x2E, 0x20, 0x53,
+ 0x70, 0x65, 0x72, 0x72, 0x79, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x4F, 0x72,
+ 0x69, 0x67, 0x69, 0x6E, 0x61, 0x6C, 0x20, 0x43,
+ 0x6F, 0x6E, 0x63, 0x65, 0x70, 0x74, 0x3A, 0x20,
+ 0x50, 0x68, 0x69, 0x6C, 0x69, 0x70, 0x20, 0x57,
+ 0x2E, 0x20, 0x47, 0x6F, 0x72, 0x72, 0x6F, 0x77,
+ 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x42, 0x72, 0x65, 0x74, 0x74, 0x20, 0x57, 0x2E,
+ 0x20, 0x53, 0x70, 0x65, 0x72, 0x72, 0x79, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x47, 0x61, 0x6D,
+ 0x65, 0x20, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6E,
+ 0x3A, 0x20, 0x42, 0x72, 0x65, 0x74, 0x74, 0x20,
+ 0x57, 0x2E, 0x20, 0x53, 0x70, 0x65, 0x72, 0x72,
+ 0x79, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53,
+ 0x2E, 0x20, 0x4D, 0x75, 0x64, 0x72, 0x61, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x42, 0x69, 0x6C, 0x6C, 0x20, 0x53,
+ 0x74, 0x6F, 0x6B, 0x65, 0x73, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x4C, 0x65, 0x61, 0x64, 0x20,
+ 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D,
+ 0x65, 0x72, 0x3A, 0x20, 0x50, 0x68, 0x69, 0x6C,
+ 0x69, 0x70, 0x20, 0x57, 0x2E, 0x20, 0x47, 0x6F,
+ 0x72, 0x72, 0x6F, 0x77, 0x20, 0x20, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x20, 0x20, 0x4C, 0x65, 0x76, 0x65,
+ 0x6C, 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61,
+ 0x6D, 0x6D, 0x65, 0x72, 0x3A, 0x20, 0x42, 0x69,
+ 0x6C, 0x6C, 0x20, 0x53, 0x74, 0x6F, 0x6B, 0x65,
+ 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x41, 0x6D,
+ 0x69, 0x67, 0x61, 0x20, 0x50, 0x72, 0x6F, 0x67,
+ 0x72, 0x61, 0x6D, 0x6D, 0x65, 0x72, 0x3A, 0x20,
+ 0x42, 0x69, 0x6C, 0x6C, 0x20, 0x53, 0x74, 0x6F,
+ 0x6B, 0x65, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x49,
+ 0x6E, 0x74, 0x72, 0x6F, 0x20, 0x26, 0x20, 0x46,
+ 0x69, 0x6E, 0x61, 0x6C, 0x65, 0x20, 0x62, 0x79,
+ 0x3A, 0x20, 0x4A, 0x6F, 0x65, 0x20, 0x42, 0x6F,
+ 0x73, 0x74, 0x69, 0x63, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x41, 0x72, 0x74, 0x20,
+ 0x26, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68, 0x69,
+ 0x63, 0x73, 0x3A, 0x20, 0x52, 0x69, 0x63, 0x6B,
+ 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x41, 0x61, 0x72, 0x6F,
+ 0x6E, 0x20, 0x50, 0x6F, 0x77, 0x65, 0x6C, 0x6C,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4A, 0x6F, 0x73, 0x65,
+ 0x70, 0x68, 0x20, 0x48, 0x65, 0x77, 0x69, 0x74,
+ 0x74, 0x20, 0x49, 0x56, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x6E, 0x20,
+ 0x4F, 0x6C, 0x73, 0x65, 0x6E, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4C, 0x6F, 0x75, 0x69,
+ 0x73, 0x65, 0x20, 0x53, 0x61, 0x6E, 0x64, 0x6F,
+ 0x76, 0x61, 0x6C, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4A, 0x75, 0x64, 0x69,
+ 0x74, 0x68, 0x20, 0x50, 0x65, 0x74, 0x65, 0x72,
+ 0x73, 0x6F, 0x6E, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4D,
+ 0x75, 0x73, 0x69, 0x63, 0x3A, 0x20, 0x46, 0x72,
+ 0x61, 0x6E, 0x6B, 0x20, 0x4B, 0x6C, 0x65, 0x70,
+ 0x61, 0x63, 0x6B, 0x69, 0x20, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x53, 0x6F, 0x75, 0x6E, 0x64, 0x20, 0x45,
+ 0x66, 0x66, 0x65, 0x63, 0x74, 0x73, 0x3A, 0x20,
+ 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53, 0x2E, 0x20,
+ 0x4D, 0x75, 0x64, 0x72, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x44, 0x77, 0x69, 0x67, 0x68, 0x74, 0x20, 0x4F,
+ 0x6B, 0x61, 0x68, 0x61, 0x72, 0x61, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x57, 0x72, 0x69, 0x74, 0x65, 0x72,
+ 0x3A, 0x20, 0x4D, 0x61, 0x72, 0x63, 0x20, 0x43,
+ 0x72, 0x61, 0x6D, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x20, 0x51, 0x75, 0x61, 0x6C, 0x69, 0x74, 0x79,
+ 0x20, 0x41, 0x73, 0x73, 0x75, 0x72, 0x61, 0x6E,
+ 0x63, 0x65, 0x3A, 0x20, 0x47, 0x6C, 0x65, 0x6E,
+ 0x6E, 0x20, 0x53, 0x70, 0x65, 0x72, 0x72, 0x79,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x53, 0x70, 0x65, 0x63,
+ 0x69, 0x61, 0x6C, 0x20, 0x54, 0x68, 0x61, 0x6E,
+ 0x6B, 0x73, 0x20, 0x74, 0x6F, 0x0D, 0x0D, 0x0D,
+ 0x43, 0x68, 0x75, 0x63, 0x6B, 0x20, 0x4B, 0x72,
+ 0x6F, 0x65, 0x67, 0x65, 0x6C, 0x0D, 0x0D, 0x58,
+ 0x61, 0x6E, 0x61, 0x74, 0x68, 0x61, 0x72, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x42, 0x65, 0x68, 0x6F,
+ 0x6C, 0x64, 0x65, 0x72, 0x0D, 0x0D, 0x61, 0x6E,
+ 0x64, 0x0D, 0x0D, 0x4D, 0x69, 0x6B, 0x65, 0x27,
+ 0x73, 0x20, 0x63, 0x61, 0x74, 0x2C, 0x20, 0x53,
+ 0x70, 0x61, 0x72, 0x6B, 0x79, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x50, 0x75, 0x62,
+ 0x6C, 0x69, 0x73, 0x68, 0x65, 0x64, 0x20, 0x62,
+ 0x79, 0x0D, 0x0D, 0x02, 0x02, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x72, 0x6F,
+ 0x64, 0x75, 0x63, 0x65, 0x72, 0x73, 0x3A, 0x20,
+ 0x44, 0x61, 0x6E, 0x20, 0x43, 0x65, 0x72, 0x6D,
+ 0x61, 0x6B, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x47, 0x65, 0x6F, 0x72, 0x67, 0x65, 0x20, 0x4D,
+ 0x61, 0x63, 0x44, 0x6F, 0x6E, 0x61, 0x6C, 0x64,
+ 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20,
+ 0x47, 0x61, 0x6D, 0x65, 0x20, 0x44, 0x65, 0x76,
+ 0x65, 0x6C, 0x6F, 0x70, 0x6D, 0x65, 0x6E, 0x74,
+ 0x3A, 0x20, 0x4E, 0x69, 0x63, 0x68, 0x6F, 0x6C,
+ 0x61, 0x73, 0x20, 0x42, 0x65, 0x6C, 0x69, 0x61,
+ 0x65, 0x66, 0x66, 0x20, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x44, 0x61, 0x76, 0x69, 0x64, 0x20,
+ 0x41, 0x2E, 0x20, 0x4C, 0x75, 0x63, 0x63, 0x61,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x6C,
+ 0x61, 0x79, 0x20, 0x54, 0x65, 0x73, 0x74, 0x65,
+ 0x72, 0x73, 0x3A, 0x20, 0x50, 0x68, 0x69, 0x6C,
+ 0x20, 0x41, 0x6C, 0x6E, 0x65, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4A, 0x6F, 0x68, 0x6E,
+ 0x20, 0x42, 0x6F, 0x6F, 0x63, 0x6B, 0x68, 0x6F,
+ 0x6C, 0x64, 0x74, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x47, 0x6C, 0x65, 0x6E,
+ 0x20, 0x43, 0x75, 0x72, 0x65, 0x74, 0x6F, 0x6E,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4D, 0x61, 0x72, 0x6B,
+ 0x20, 0x48, 0x61, 0x6C, 0x6C, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x42, 0x72, 0x69, 0x61,
+ 0x6E, 0x20, 0x4C, 0x6F, 0x77, 0x65, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x52, 0x6F, 0x62, 0x65,
+ 0x72, 0x74, 0x20, 0x4C, 0x75, 0x70, 0x6F, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x41, 0x6C, 0x61, 0x6E,
+ 0x20, 0x4D, 0x61, 0x72, 0x65, 0x6E, 0x63, 0x6F,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4A, 0x61, 0x73, 0x6F,
+ 0x6E, 0x20, 0x52, 0x61, 0x79, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4A, 0x65, 0x66, 0x66,
+ 0x20, 0x53, 0x68, 0x6F, 0x74, 0x77, 0x65, 0x6C,
+ 0x6C, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x41, 0x6E, 0x64, 0x72,
+ 0x65, 0x20, 0x56, 0x72, 0x69, 0x67, 0x6E, 0x61,
+ 0x75, 0x64, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x43, 0x68, 0x72, 0x69,
+ 0x73, 0x20, 0x57, 0x61, 0x72, 0x73, 0x68, 0x61,
+ 0x75, 0x65, 0x72, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x61, 0x6E, 0x64, 0x20,
+ 0x54, 0x53, 0x43, 0x53, 0x2C, 0x20, 0x49, 0x6E,
+ 0x63, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x54, 0x65, 0x73, 0x74, 0x20, 0x53, 0x75, 0x70,
+ 0x70, 0x6F, 0x72, 0x74, 0x3A, 0x20, 0x4B, 0x79,
+ 0x6D, 0x20, 0x47, 0x6F, 0x79, 0x65, 0x72, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x43, 0x61, 0x73, 0x74, 0x20,
+ 0x6F, 0x66, 0x20, 0x43, 0x68, 0x61, 0x72, 0x61,
+ 0x63, 0x74, 0x65, 0x72, 0x73, 0x0D, 0x0D, 0x0D,
+ 0x54, 0x68, 0x65, 0x20, 0x46, 0x6F, 0x72, 0x63,
+ 0x65, 0x73, 0x20, 0x6F, 0x66, 0x20, 0x44, 0x61,
+ 0x72, 0x6B, 0x6E, 0x65, 0x73, 0x73, 0x0D, 0x0D,
+ 0x0D, 0x44, 0x72, 0x61, 0x6E, 0x20, 0x44, 0x72,
+ 0x61, 0x67, 0x67, 0x6F, 0x72, 0x65, 0x20, 0x28,
+ 0x54, 0x68, 0x65, 0x20, 0x42, 0x69, 0x67, 0x20,
+ 0x42, 0x61, 0x64, 0x20, 0x44, 0x72, 0x61, 0x67,
+ 0x6F, 0x6E, 0x29, 0x0D, 0x0D, 0x4E, 0x61, 0x64,
+ 0x69, 0x61, 0x20, 0x26, 0x20, 0x4A, 0x6F, 0x72,
+ 0x69, 0x6C, 0x20, 0x28, 0x54, 0x68, 0x65, 0x20,
+ 0x54, 0x77, 0x6F, 0x2D, 0x46, 0x61, 0x63, 0x65,
+ 0x64, 0x20, 0x43, 0x6C, 0x65, 0x72, 0x69, 0x63,
+ 0x73, 0x29, 0x0D, 0x0D, 0x44, 0x79, 0x69, 0x6E,
+ 0x67, 0x20, 0x53, 0x65, 0x72, 0x76, 0x61, 0x6E,
+ 0x74, 0x20, 0x28, 0x44, 0x72, 0x61, 0x6E, 0x27,
+ 0x73, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x20,
+ 0x48, 0x61, 0x6E, 0x64, 0x20, 0x4D, 0x61, 0x6E,
+ 0x29, 0x0D, 0x0D, 0x54, 0x72, 0x61, 0x70, 0x70,
+ 0x65, 0x64, 0x20, 0x43, 0x6C, 0x65, 0x72, 0x69,
+ 0x63, 0x20, 0x28, 0x54, 0x68, 0x65, 0x20, 0x52,
+ 0x65, 0x64, 0x20, 0x48, 0x65, 0x72, 0x72, 0x69,
+ 0x6E, 0x67, 0x29, 0x0D, 0x0D, 0x4B, 0x69, 0x6E,
+ 0x67, 0x20, 0x6F, 0x66, 0x20, 0x74, 0x68, 0x65,
+ 0x20, 0x46, 0x72, 0x6F, 0x73, 0x74, 0x20, 0x47,
+ 0x69, 0x61, 0x6E, 0x74, 0x73, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x54, 0x68, 0x65, 0x20, 0x46, 0x6F, 0x72,
+ 0x63, 0x65, 0x73, 0x20, 0x6F, 0x66, 0x20, 0x47,
+ 0x6F, 0x6F, 0x64, 0x0D, 0x0D, 0x0D, 0x4B, 0x68,
+ 0x65, 0x6C, 0x62, 0x65, 0x6E, 0x20, 0x42, 0x6C,
+ 0x61, 0x63, 0x6B, 0x73, 0x74, 0x61, 0x66, 0x66,
+ 0x0D, 0x0D, 0x41, 0x6D, 0x62, 0x65, 0x72, 0x20,
+ 0x28, 0x4B, 0x68, 0x65, 0x6C, 0x62, 0x65, 0x6E,
+ 0x27, 0x73, 0x20, 0x53, 0x63, 0x6F, 0x75, 0x74,
+ 0x29, 0x0D, 0x0D, 0x53, 0x68, 0x6F, 0x72, 0x6E,
+ 0x20, 0x44, 0x69, 0x65, 0x72, 0x67, 0x61, 0x72,
+ 0x20, 0x28, 0x50, 0x65, 0x73, 0x6B, 0x79, 0x20,
+ 0x44, 0x77, 0x61, 0x72, 0x66, 0x29, 0x0D, 0x0D,
+ 0x49, 0x6E, 0x73, 0x61, 0x6C, 0x20, 0x74, 0x68,
+ 0x65, 0x20, 0x54, 0x68, 0x69, 0x65, 0x66, 0x20,
+ 0x28, 0x54, 0x68, 0x65, 0x20, 0x4E, 0x75, 0x69,
+ 0x73, 0x61, 0x6E, 0x63, 0x65, 0x29, 0x0D, 0x0D,
+ 0x43, 0x61, 0x6C, 0x61, 0x6E, 0x64, 0x72, 0x61,
+ 0x20, 0x28, 0x49, 0x72, 0x61, 0x27, 0x73, 0x20,
+ 0x4C, 0x6F, 0x73, 0x74, 0x20, 0x53, 0x69, 0x73,
+ 0x74, 0x65, 0x72, 0x29, 0x0D, 0x0D, 0x41, 0x6C,
+ 0x61, 0x69, 0x6E, 0x20, 0x28, 0x54, 0x68, 0x65,
+ 0x20, 0x41, 0x6E, 0x63, 0x69, 0x65, 0x6E, 0x74,
+ 0x20, 0x4F, 0x6E, 0x65, 0x29, 0x0D, 0x0D, 0x53,
+ 0x61, 0x6E, 0x2D, 0x52, 0x61, 0x61, 0x6C, 0x20,
+ 0x28, 0x44, 0x72, 0x6F, 0x77, 0x20, 0x4D, 0x61,
+ 0x67, 0x65, 0x29, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x01, 0x41, 0x6E, 0x79, 0x20, 0x63,
+ 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72,
+ 0x73, 0x20, 0x69, 0x6E, 0x20, 0x74, 0x68, 0x69,
+ 0x73, 0x20, 0x67, 0x61, 0x6D, 0x65, 0x20, 0x77,
+ 0x68, 0x6F, 0x20, 0x62, 0x65, 0x61, 0x72, 0x0D,
+ 0x01, 0x72, 0x65, 0x73, 0x65, 0x6D, 0x62, 0x6C,
+ 0x61, 0x6E, 0x63, 0x65, 0x20, 0x74, 0x6F, 0x20,
+ 0x70, 0x65, 0x72, 0x73, 0x6F, 0x6E, 0x73, 0x20,
+ 0x6C, 0x69, 0x76, 0x69, 0x6E, 0x67, 0x20, 0x6F,
+ 0x72, 0x0D, 0x01, 0x64, 0x65, 0x61, 0x64, 0x20,
+ 0x61, 0x72, 0x65, 0x20, 0x70, 0x75, 0x72, 0x65,
+ 0x6C, 0x79, 0x20, 0x63, 0x6F, 0x69, 0x6E, 0x63,
+ 0x69, 0x64, 0x65, 0x6E, 0x74, 0x61, 0x6C, 0x2E,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x02, 0x11, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x00
+};
+
+static const ByteProvider kEoB2CreditsDataDOSEnglishProvider = { ARRAYSIZE(kEoB2CreditsDataDOSEnglish), kEoB2CreditsDataDOSEnglish };
+
+static const char *const kEoB2FinaleCPSFilesDOSEnglish[13] = {
+ "DRAGON1.CPS",
+ "DRAGON2.CPS",
+ "HURRY1.CPS",
+ "HURRY2.CPS",
+ "DESTROY0.CPS",
+ "DESTROY1.CPS",
+ "DESTROY2.CPS",
+ "MAGIC.CPS",
+ "DESTROY3.CPS",
+ "CREDITS2.CPS",
+ "CREDITS3.CPS",
+ "HEROES.CPS",
+ "THANKS.CPS"
+};
+
+static const StringListProvider kEoB2FinaleCPSFilesDOSEnglishProvider = { ARRAYSIZE(kEoB2FinaleCPSFilesDOSEnglish), kEoB2FinaleCPSFilesDOSEnglish };
+
+static const char *const kEoB2MonsterDistAttStringsDOSEnglish[5] = {
+ "The party is hit with a psychic mind blast!\r",
+ "paralyzed",
+ "poisoned",
+ "paralyzed",
+ "PETRIFIED"
+};
+
+static const StringListProvider kEoB2MonsterDistAttStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2MonsterDistAttStringsDOSEnglish), kEoB2MonsterDistAttStringsDOSEnglish };
+
+static const char *const kEoB2Npc1StringsDOSEnglish[2] = {
+ "talk",
+ "leave"
+};
+
+static const StringListProvider kEoB2Npc1StringsDOSEnglishProvider = { ARRAYSIZE(kEoB2Npc1StringsDOSEnglish), kEoB2Npc1StringsDOSEnglish };
+
+static const char *const kEoB2Npc2StringsDOSEnglish[2] = {
+ "release him",
+ "leave"
+};
+
+static const StringListProvider kEoB2Npc2StringsDOSEnglishProvider = { ARRAYSIZE(kEoB2Npc2StringsDOSEnglish), kEoB2Npc2StringsDOSEnglish };
+
+static const char *const kEoB2MonsterDustStringsDOSEnglish[1] = {
+ "The monster crumbles to dust!\r"
+};
+
+static const StringListProvider kEoB2MonsterDustStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2MonsterDustStringsDOSEnglish), kEoB2MonsterDustStringsDOSEnglish };
+
+static const char *const kEoB2KheldranStringsDOSEnglish[1] = {
+ " Such trusting whelps!"
+};
+
+static const StringListProvider kEoB2KheldranStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2KheldranStringsDOSEnglish), kEoB2KheldranStringsDOSEnglish };
+
+static const char *const kEoB2HornStringsDOSEnglish[4] = {
+ "A bellowing sound comes from the horn.\r",
+ "A hollow sound comes from the horn.\r",
+ "A melodious sound comes from the horn.\r",
+ "An eerie sound comes from the horn.\r"
+};
+
+static const StringListProvider kEoB2HornStringsDOSEnglishProvider = { ARRAYSIZE(kEoB2HornStringsDOSEnglish), kEoB2HornStringsDOSEnglish };
+
diff --git a/devtools/create_kyradat/resources/eob2_dos_german.h b/devtools/create_kyradat/resources/eob2_dos_german.h
new file mode 100644
index 0000000000..6967eac8a4
--- /dev/null
+++ b/devtools/create_kyradat/resources/eob2_dos_german.h
@@ -0,0 +1,1414 @@
+static const char *const kEoB2ChargenStrings1DOSGerman[9] = {
+ "Die Party ist\rkomplett. W""\x84""hle\rSPIEL oder\rdr""\x81""cke 'P' um\rzu starten.",
+ " ",
+ "RK\rTP\rSTF",
+ "%s\r%d\r%d\r%d\r%d\r%d",
+ "%d\r%d",
+ "%d",
+ "%d/%d",
+ "%d/%d/%d",
+ "W""\x84""hle die Box des\rCharakters, den du\rerschaffen oder\ransehen willst."
+};
+
+static const StringListProvider kEoB2ChargenStrings1DOSGermanProvider = { ARRAYSIZE(kEoB2ChargenStrings1DOSGerman), kEoB2ChargenStrings1DOSGerman };
+
+static const char *const kEoB2ChargenStrings2DOSGerman[12] = {
+ "%s",
+ "%d",
+ "%s",
+ "%d",
+ "%d",
+ "%d",
+ "%s",
+ "%d",
+ "W""\x8E""HLE RASSE:",
+ "W""\x8E""HLE KLASSE:",
+ "W""\x8E""HLE GESINNUNG:",
+ "Name:"
+};
+
+static const StringListProvider kEoB2ChargenStrings2DOSGermanProvider = { ARRAYSIZE(kEoB2ChargenStrings2DOSGerman), kEoB2ChargenStrings2DOSGerman };
+
+static const char *const kEoB2ChargenStatStringsDOSGerman[12] = {
+ "ST""\x8E",
+ "INT",
+ "WEI",
+ "GES",
+ "KON",
+ "CHA",
+ "ST""\x8E""RKE",
+ "INTELLIGENZ",
+ "WEISHEIT",
+ "GESCHICK",
+ "KONSTITUTION",
+ "CHARISMA"
+};
+
+static const StringListProvider kEoB2ChargenStatStringsDOSGermanProvider = { ARRAYSIZE(kEoB2ChargenStatStringsDOSGerman), kEoB2ChargenStatStringsDOSGerman };
+
+static const char *const kEoB2ChargenRaceSexStringsDOSGerman[12] = {
+ "MENSCH, MANN",
+ "MENSCH, FRAU",
+ "ELF, MANN",
+ "ELF, FRAU",
+ "HALB-ELF, MANN",
+ "HALB-ELF, FRAU",
+ "ZWERG, MANN",
+ "ZWERG, FRAU",
+ "GNOM, MANN",
+ "GNOM, FRAU",
+ "HALBLING, MANN",
+ "HALBLING, FRAU"
+};
+
+static const StringListProvider kEoB2ChargenRaceSexStringsDOSGermanProvider = { ARRAYSIZE(kEoB2ChargenRaceSexStringsDOSGerman), kEoB2ChargenRaceSexStringsDOSGerman };
+
+static const char *const kEoB2ChargenClassStringsDOSGerman[21] = {
+ "K""\x8E""MPFER",
+ "WALDL""\x8E""UFER",
+ "PALADIN",
+ "MAGIER",
+ "KLERIKER",
+ "DIEB",
+ "K""\x8E""MPFER/KLERIKER",
+ "K""\x8E""MPFER/DIEB",
+ "K""\x8E""MPFER/MAGIER",
+ "K""\x8E""MPFER/MAGIER/DIEB",
+ "DIEB/MAGIER",
+ "KLERIKER/DIEB",
+ "K""\x8E""MPFER/KLER./MAG.",
+ "WALDL./KLER.",
+ "KLER./MAGIER",
+ "K""\x8E""MPFER",
+ "MAGIER",
+ "KLERIKER",
+ "DIEB",
+ "PALADIN",
+ "WALDL."
+};
+
+static const StringListProvider kEoB2ChargenClassStringsDOSGermanProvider = { ARRAYSIZE(kEoB2ChargenClassStringsDOSGerman), kEoB2ChargenClassStringsDOSGerman };
+
+static const char *const kEoB2ChargenAlignmentStringsDOSGerman[9] = {
+ "RECHTSCH. GUT",
+ "NEUTRAL GUT",
+ "CHAOTISCH GUT",
+ "RECHTSCH. NEUTRAL",
+ "NEUTRAL",
+ "CHAOTISCH NEUTRAL",
+ "RECHTSCH. B""\x99""SE",
+ "NEUTRAL B""\x99""SE",
+ "CHAOTISCH B""\x99""SE"
+};
+
+static const StringListProvider kEoB2ChargenAlignmentStringsDOSGermanProvider = { ARRAYSIZE(kEoB2ChargenAlignmentStringsDOSGerman), kEoB2ChargenAlignmentStringsDOSGerman };
+
+static const char *const kEoB2ChargenEnterGameStringsDOSGerman[1] = {
+ " Lade Spiel.\r Bitte warten."
+};
+
+static const StringListProvider kEoB2ChargenEnterGameStringsDOSGermanProvider = { ARRAYSIZE(kEoB2ChargenEnterGameStringsDOSGerman), kEoB2ChargenEnterGameStringsDOSGerman };
+
+static const char *const kEoB2PryDoorStringsDOSGerman[9] = {
+ "\r",
+ "Ihr k""\x94""nnt die T""\x81""r nicht aufbrechen.\r",
+ "\x06\x04""Ihr brecht die T""\x81""r auf.\r",
+ "\x06\x06""Ihr versucht vergeblich die T""\x81""r gewaltsam zu\r""\x94""ffnen.\r",
+ "Das kann man hier nicht ablegen.\r",
+ "Das passt hier nicht.\r",
+ "Niemand kann die T""\x81""r aufbrechen.\r",
+ "\r",
+ "\r"
+};
+
+static const StringListProvider kEoB2PryDoorStringsDOSGermanProvider = { ARRAYSIZE(kEoB2PryDoorStringsDOSGerman), kEoB2PryDoorStringsDOSGerman };
+
+static const char *const kEoB2WarningStringsDOSGerman[4] = {
+ "Da geht's nicht lang.\r",
+ "%s kann nichts zu sich nehmen!\r",
+ "Das Zeug ist vergammelt! Das will doch kein Mensch essen.\r",
+ "Euch bekommt nur richtige Nahrung!\r"
+};
+
+static const StringListProvider kEoB2WarningStringsDOSGermanProvider = { ARRAYSIZE(kEoB2WarningStringsDOSGerman), kEoB2WarningStringsDOSGerman };
+
+static const char *const kEoB2ItemSuffixStringsRingsDOSGerman[4] = {
+ "s Schmuckes",
+ "r Zauberei",
+ "r Nahrung",
+ "s Federfalls"
+};
+
+static const StringListProvider kEoB2ItemSuffixStringsRingsDOSGermanProvider = { ARRAYSIZE(kEoB2ItemSuffixStringsRingsDOSGerman), kEoB2ItemSuffixStringsRingsDOSGerman };
+
+static const char *const kEoB2ItemSuffixStringsPotionsDOSGerman[8] = {
+ "r Riesenkraft",
+ "r Heilung",
+ "r Extra Heilung",
+ "s Giftes",
+ "r Lebenskraft",
+ "r Geschwindigkeit",
+ "r Unsichtbarkeit",
+ "r Entgiftung"
+};
+
+static const StringListProvider kEoB2ItemSuffixStringsPotionsDOSGermanProvider = { ARRAYSIZE(kEoB2ItemSuffixStringsPotionsDOSGerman), kEoB2ItemSuffixStringsPotionsDOSGerman };
+
+static const char *const kEoB2ItemSuffixStringsWandsDOSGerman[8] = {
+ "r L""\x84""hmung",
+ "s Gewitters",
+ "r K""\x84""lte",
+ "r Heilung",
+ "s Feurballs",
+ "Sternenfeuer",
+ "r Magischen Geschosse",
+ "r gebannten Magie"
+};
+
+static const StringListProvider kEoB2ItemSuffixStringsWandsDOSGermanProvider = { ARRAYSIZE(kEoB2ItemSuffixStringsWandsDOSGerman), kEoB2ItemSuffixStringsWandsDOSGerman };
+
+static const char *const kEoB2RipItemStringsDOSGerman[4] = {
+ "%s verlor: ",
+ "%s verlor: ",
+ ".\r",
+ "%d %s (verflucht) "
+};
+
+static const StringListProvider kEoB2RipItemStringsDOSGermanProvider = { ARRAYSIZE(kEoB2RipItemStringsDOSGerman), kEoB2RipItemStringsDOSGerman };
+
+static const char *const kEoB2CursedStringDOSGerman[1] = {
+ "%d %s (verflucht) "
+};
+
+static const StringListProvider kEoB2CursedStringDOSGermanProvider = { ARRAYSIZE(kEoB2CursedStringDOSGerman), kEoB2CursedStringDOSGerman };
+
+static const char *const kEoB2MagicObjectStringsDOSGerman[5] = {
+ "Magierrolle",
+ "Klerikerrolle",
+ "Ring",
+ "Trank",
+ "Stab"
+};
+
+static const StringListProvider kEoB2MagicObjectStringsDOSGermanProvider = { ARRAYSIZE(kEoB2MagicObjectStringsDOSGerman), kEoB2MagicObjectStringsDOSGerman };
+
+static const char *const kEoB2MagicObjectString5DOSGerman[1] = {
+ "Zepter"
+};
+
+static const StringListProvider kEoB2MagicObjectString5DOSGermanProvider = { ARRAYSIZE(kEoB2MagicObjectString5DOSGerman), kEoB2MagicObjectString5DOSGerman };
+
+static const char *const kEoB2PatternSuffixDOSGerman[1] = {
+ "%s de%s"
+};
+
+static const StringListProvider kEoB2PatternSuffixDOSGermanProvider = { ARRAYSIZE(kEoB2PatternSuffixDOSGerman), kEoB2PatternSuffixDOSGerman };
+
+static const char *const kEoB2PatternGrFix1DOSGerman[1] = {
+ "%s: %s"
+};
+
+static const StringListProvider kEoB2PatternGrFix1DOSGermanProvider = { ARRAYSIZE(kEoB2PatternGrFix1DOSGerman), kEoB2PatternGrFix1DOSGerman };
+
+static const char *const kEoB2PatternGrFix2DOSGerman[1] = {
+ "%s %s"
+};
+
+static const StringListProvider kEoB2PatternGrFix2DOSGermanProvider = { ARRAYSIZE(kEoB2PatternGrFix2DOSGerman), kEoB2PatternGrFix2DOSGerman };
+
+static const char *const kEoB2ValidateArmorStringDOSGerman[1] = {
+ "%s kann diese R""\x81""stungsart nicht tragen.\r"
+};
+
+static const StringListProvider kEoB2ValidateArmorStringDOSGermanProvider = { ARRAYSIZE(kEoB2ValidateArmorStringDOSGerman), kEoB2ValidateArmorStringDOSGerman };
+
+static const char *const kEoB2ValidateCursedStringDOSGerman[1] = {
+ "%s kann die Waffe nicht loslassen! Sie ist verflucht!\r"
+};
+
+static const StringListProvider kEoB2ValidateCursedStringDOSGermanProvider = { ARRAYSIZE(kEoB2ValidateCursedStringDOSGerman), kEoB2ValidateCursedStringDOSGerman };
+
+static const char *const kEoB2ValidateNoDropStringDOSGerman[1] = {
+ "Diesen Gegenstand hier nicht ablegen.\r"
+};
+
+static const StringListProvider kEoB2ValidateNoDropStringDOSGermanProvider = { ARRAYSIZE(kEoB2ValidateNoDropStringDOSGerman), kEoB2ValidateNoDropStringDOSGerman };
+
+static const char *const kEoB2PotionStringsDOSGerman[2] = {
+ "vergiftet",
+ "%s f""\x81""hlt sich %s!\r"
+};
+
+static const StringListProvider kEoB2PotionStringsDOSGermanProvider = { ARRAYSIZE(kEoB2PotionStringsDOSGerman), kEoB2PotionStringsDOSGerman };
+
+static const char *const kEoB2WandStringsDOSGerman[1] = {
+ "Der Stab hat offenbar keinen magischen Effekt\r"
+};
+
+static const StringListProvider kEoB2WandStringsDOSGermanProvider = { ARRAYSIZE(kEoB2WandStringsDOSGerman), kEoB2WandStringsDOSGerman };
+
+static const char *const kEoB2ItemMisuseStringsDOSGerman[3] = {
+ " kann diesen Gegenstand nicht nutzen.\r",
+ "Der Gegenstand wird automatisch beim tragen benutzt.\r",
+ "Das kann man so nicht benutzen.\r"
+};
+
+static const StringListProvider kEoB2ItemMisuseStringsDOSGermanProvider = { ARRAYSIZE(kEoB2ItemMisuseStringsDOSGerman), kEoB2ItemMisuseStringsDOSGerman };
+
+static const char *const kEoB2TakenStringsDOSGerman[1] = {
+ " aufgenommen.\r"
+};
+
+static const StringListProvider kEoB2TakenStringsDOSGermanProvider = { ARRAYSIZE(kEoB2TakenStringsDOSGerman), kEoB2TakenStringsDOSGerman };
+
+static const char *const kEoB2PotionEffectStringsDOSGerman[8] = {
+ "viel st""\x84""rker",
+ "besser",
+ "viel besser",
+ "etwas krank",
+ "pappsatt",
+ "schnell und agil",
+ "transparent",
+ "besser"
+};
+
+static const StringListProvider kEoB2PotionEffectStringsDOSGermanProvider = { ARRAYSIZE(kEoB2PotionEffectStringsDOSGerman), kEoB2PotionEffectStringsDOSGerman };
+
+static const char *const kEoB2YesNoStringsDOSGerman[2] = {
+ "ja",
+ "nein"
+};
+
+static const StringListProvider kEoB2YesNoStringsDOSGermanProvider = { ARRAYSIZE(kEoB2YesNoStringsDOSGerman), kEoB2YesNoStringsDOSGerman };
+
+static const char *const kEoB2MoreStringsDOSGerman[1] = {
+ "MEHR"
+};
+
+static const StringListProvider kEoB2MoreStringsDOSGermanProvider = { ARRAYSIZE(kEoB2MoreStringsDOSGerman), kEoB2MoreStringsDOSGerman };
+
+static const char *const kEoB2NpcMaxStringsDOSGerman[1] = {
+ "Maximal sechs Charaktere pro Party. Wen wollt Ihr entlassen?"
+};
+
+static const StringListProvider kEoB2NpcMaxStringsDOSGermanProvider = { ARRAYSIZE(kEoB2NpcMaxStringsDOSGerman), kEoB2NpcMaxStringsDOSGerman };
+
+static const char *const kEoB2OkStringsDOSGerman[1] = {
+ "OK"
+};
+
+static const StringListProvider kEoB2OkStringsDOSGermanProvider = { ARRAYSIZE(kEoB2OkStringsDOSGerman), kEoB2OkStringsDOSGerman };
+
+static const char *const kEoB2NpcJoinStringsDOSGerman[1] = {
+ "%s wird partymitglied.\r"
+};
+
+static const StringListProvider kEoB2NpcJoinStringsDOSGermanProvider = { ARRAYSIZE(kEoB2NpcJoinStringsDOSGerman), kEoB2NpcJoinStringsDOSGerman };
+
+static const char *const kEoB2CancelStringsDOSGerman[1] = {
+ "ABBR."
+};
+
+static const StringListProvider kEoB2CancelStringsDOSGermanProvider = { ARRAYSIZE(kEoB2CancelStringsDOSGerman), kEoB2CancelStringsDOSGerman };
+
+static const char *const kEoB2AbortStringsDOSGerman[1] = {
+ "ABBR."
+};
+
+static const StringListProvider kEoB2AbortStringsDOSGermanProvider = { ARRAYSIZE(kEoB2AbortStringsDOSGerman), kEoB2AbortStringsDOSGerman };
+
+static const char *const kEoB2MenuStringsMainDOSGerman[8] = {
+ "W""\x84""hle Option:",
+ "Rasten",
+ "Spr""\x81""che merken",
+ "Um Spr""\x81""che beten",
+ "Rollen notieren",
+ "Voreinstellungen",
+ "Spieloptionen",
+ "Ende"
+};
+
+static const StringListProvider kEoB2MenuStringsMainDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsMainDOSGerman), kEoB2MenuStringsMainDOSGerman };
+
+static const char *const kEoB2MenuStringsSaveLoadDOSGerman[8] = {
+ "Spiel laden",
+ "Spiel speichern",
+ "Charakter entl.",
+ "Beenden",
+ "Spieloptionen:",
+ "\r Gespeichert.",
+ "Speicherversuch\rfehlgeschlagen!",
+ "Ladeversuch\rfehlgeschlagen.\rEvtl. Disk-Error!"
+};
+
+static const StringListProvider kEoB2MenuStringsSaveLoadDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsSaveLoadDOSGerman), kEoB2MenuStringsSaveLoadDOSGerman };
+
+static const char *const kEoB2MenuStringsOnOffDOSGerman[2] = {
+ "AN",
+ "AUS"
+};
+
+static const StringListProvider kEoB2MenuStringsOnOffDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsOnOffDOSGerman), kEoB2MenuStringsOnOffDOSGerman };
+
+static const char *const kEoB2MenuStringsSpellsDOSGerman[17] = {
+ "\r\r W""\x84""hlt einen Charak-\r ter aus der Party,\r der Spr""\x81""che lernen\r soll.",
+ "\r Der Paladin ist\r eine Stufe zu nied-\r rig zum zaubern.",
+ "\r\r Der Magier hat\r kein Spruchbuch!",
+ "\r\r\r W""\x84""hlt einen Charak-\r ter aus der Party,\r der f""\x81""r Spr""\x81""che\r beten will.",
+ "\r Niemand in der\r Party ist in der\r Lage, f""\x81""r Spr""\x81""che\r zu beten.",
+ "\r Niemand in der\r Party ist in der\r Lage, sich Spr""\x81""che\r zu merken.",
+ " Jemand der bewu""\xE1""t-\r los oder tot ist\r kann keine Spr""\x81""che\r merken.",
+ " Jemand der bewu""\xE1""t-\r los oder tot ist\r kann nicht um\r Spr""\x81""che beten.",
+ "1",
+ "2",
+ "3",
+ "4",
+ "5",
+ "Neu",
+ "Verf""\x81""gbare Zauber:",
+ "Ja",
+ "Nein"
+};
+
+static const StringListProvider kEoB2MenuStringsSpellsDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsSpellsDOSGerman), kEoB2MenuStringsSpellsDOSGerman };
+
+static const char *const kEoB2MenuStringsRestDOSGerman[5] = {
+ "\rWerden eure Heiler\rdie Party heilen?",
+ " Jemand ist noch\r verletzt. Weiter-\r rasten ?",
+ "Die Party rastet.",
+ "\r Alle Spieler\r sind voll\r ausgeruht.",
+ " Eure Party braucht\r Rast, um Spr""\x81""che\r zu erhalten."
+};
+
+static const StringListProvider kEoB2MenuStringsRestDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsRestDOSGerman), kEoB2MenuStringsRestDOSGerman };
+
+static const char *const kEoB2MenuStringsDropDOSGerman[1] = {
+ " Weniger als vier\r Charaktere sind\r nicht erlaubt."
+};
+
+static const StringListProvider kEoB2MenuStringsDropDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsDropDOSGerman), kEoB2MenuStringsDropDOSGerman };
+
+static const char *const kEoB2MenuStringsExitDOSGerman[1] = {
+ " Ganz bestimmt\r das Spiel\r abbrechen?"
+};
+
+static const StringListProvider kEoB2MenuStringsExitDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsExitDOSGerman), kEoB2MenuStringsExitDOSGerman };
+
+static const char *const kEoB2MenuStringsStarveDOSGerman[1] = {
+ " Eure Party hungert.\r Wollt Ihr weiter\r rasten?"
+};
+
+static const StringListProvider kEoB2MenuStringsStarveDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsStarveDOSGerman), kEoB2MenuStringsStarveDOSGerman };
+
+static const char *const kEoB2MenuStringsScribeDOSGerman[5] = {
+ "W""\x84""hlt die Rolle(n)\rzum notieren.",
+ "\r\r\r W""\x84""hlt den Magier\r aus der Party,\r der Spr""\x81""che\r notieren m""\x94""chte.",
+ " Ihr habt keine\r ""\x81""bertragbaren\r Schriftrollen.",
+ " Ihr habt keine\r Rolle, die dieser\r Magier braucht.",
+ "\r Ihr habt keinen\r Magier, der Rollen\r ""\x81""bertragen kann."
+};
+
+static const StringListProvider kEoB2MenuStringsScribeDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsScribeDOSGerman), kEoB2MenuStringsScribeDOSGerman };
+
+static const char *const kEoB2MenuStringsDrop2DOSGerman[3] = {
+ " W""\x84""hlt den Charak-\r ter, den Ihr\r entfernen m""\x94""chtet.",
+ " Spielst""\x84""nde m""\x81""ssen\r einen Namen haben!",
+ " Ganz sicher den\r alten Spielstand\r ""\x81""berschreiben?"
+};
+
+static const StringListProvider kEoB2MenuStringsDrop2DOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsDrop2DOSGerman), kEoB2MenuStringsDrop2DOSGerman };
+
+static const char *const kEoB2MenuStringsHeadDOSGerman[3] = {
+ "Rast:",
+ "Voreinstellung:",
+ "Spieloptionen:"
+};
+
+static const StringListProvider kEoB2MenuStringsHeadDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsHeadDOSGerman), kEoB2MenuStringsHeadDOSGerman };
+
+static const char *const kEoB2MenuStringsPoisonDOSGerman[1] = {
+ "Vergiftete Spieler\rk""\x94""nnten sterben!\rTrotzdem rasten?"
+};
+
+static const StringListProvider kEoB2MenuStringsPoisonDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsPoisonDOSGerman), kEoB2MenuStringsPoisonDOSGerman };
+
+static const char *const kEoB2MenuStringsMgcDOSGerman[2] = {
+ "%-18s %1d",
+ "%d von %d verf""\x81""gbar. "
+};
+
+static const StringListProvider kEoB2MenuStringsMgcDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsMgcDOSGerman), kEoB2MenuStringsMgcDOSGerman };
+
+static const char *const kEoB2MenuStringsPrefsDOSGerman[4] = {
+ "Musik ist %-3s",
+ "FX sind %-3s",
+ "Balkengrafik: %-3s",
+ "Maus ist %-3s"
+};
+
+static const StringListProvider kEoB2MenuStringsPrefsDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsPrefsDOSGerman), kEoB2MenuStringsPrefsDOSGerman };
+
+static const char *const kEoB2MenuStringsRest2DOSGerman[5] = {
+ "%s erhielt %s.\r",
+ "%s merkt sich %s.\r",
+ "%s heilt %s.\r",
+ "Raststunden: %-4d ",
+ "\r%s\r"
+};
+
+static const StringListProvider kEoB2MenuStringsRest2DOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsRest2DOSGerman), kEoB2MenuStringsRest2DOSGerman };
+
+static const char *const kEoB2MenuStringsRest3DOSGerman[1] = {
+ "\x06\x06""Es ist zu gef""\x84""hrlich hier zu rasten."
+};
+
+static const StringListProvider kEoB2MenuStringsRest3DOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsRest3DOSGerman), kEoB2MenuStringsRest3DOSGerman };
+
+static const char *const kEoB2MenuStringsRest4DOSGerman[1] = {
+ "\x06\x06""In der N""\x84""he von Monstern k""\x94""nnt Ihr nicht rasten."
+};
+
+static const StringListProvider kEoB2MenuStringsRest4DOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsRest4DOSGerman), kEoB2MenuStringsRest4DOSGerman };
+
+static const char *const kEoB2MenuStringsDefeatDOSGerman[1] = {
+ "\rDie gesamte Party\rwurde besiegt!\rEinen alten Spiel-\rstand laden?"
+};
+
+static const StringListProvider kEoB2MenuStringsDefeatDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsDefeatDOSGerman), kEoB2MenuStringsDefeatDOSGerman };
+
+static const char *const kEoB2MenuStringsTransferDOSGerman[5] = {
+ "Mindestens vier\rSpieler vor Spiel-\rbeginn transferieren!",
+ "Nur vier Spieler\rtransferieren!",
+ "Bestimmte Habselig-\rkeiten werden\rgel""\x94""scht.",
+ " \r Kein Magier in\r der Party.",
+ " \r Kein Kleriker\r oder Paladin\r in der Party."
+};
+
+static const StringListProvider kEoB2MenuStringsTransferDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsTransferDOSGerman), kEoB2MenuStringsTransferDOSGerman };
+
+static const char *const kEoB2MenuStringsSpecDOSGerman[2] = {
+ "Beim Aufwachen bem-\rerkt Ihr die Ab-\rwesenheit von Insal!",
+ "Eine kurzer Blick\rzeigt, das Ausr""\x81""st-\rung gestohlen wurde!"
+};
+
+static const StringListProvider kEoB2MenuStringsSpecDOSGermanProvider = { ARRAYSIZE(kEoB2MenuStringsSpecDOSGerman), kEoB2MenuStringsSpecDOSGerman };
+
+static const char *const kEoB2MenuYesNoStringsDOSGerman[2] = {
+ "Ja",
+ "Nein"
+};
+
+static const StringListProvider kEoB2MenuYesNoStringsDOSGermanProvider = { ARRAYSIZE(kEoB2MenuYesNoStringsDOSGerman), kEoB2MenuYesNoStringsDOSGerman };
+
+static const char *const kEoB2CharGuiStringsHpDOSGerman[2] = {
+ "TP",
+ "%3d / %-3d"
+};
+
+static const StringListProvider kEoB2CharGuiStringsHpDOSGermanProvider = { ARRAYSIZE(kEoB2CharGuiStringsHpDOSGerman), kEoB2CharGuiStringsHpDOSGerman };
+
+static const char *const kEoB2CharGuiStringsWp2DOSGerman[3] = {
+ "WUSCH",
+ "HACK",
+ "FATZ"
+};
+
+static const StringListProvider kEoB2CharGuiStringsWp2DOSGermanProvider = { ARRAYSIZE(kEoB2CharGuiStringsWp2DOSGerman), kEoB2CharGuiStringsWp2DOSGerman };
+
+static const char *const kEoB2CharGuiStringsWrDOSGerman[4] = {
+ "ZU",
+ "WEIT",
+ "OHNE",
+ "MUN"
+};
+
+static const StringListProvider kEoB2CharGuiStringsWrDOSGermanProvider = { ARRAYSIZE(kEoB2CharGuiStringsWrDOSGerman), kEoB2CharGuiStringsWrDOSGerman };
+
+static const char *const kEoB2CharGuiStringsSt2DOSGerman[7] = {
+ "TAUSCHE",
+ "TOT",
+ "BEWUSSTLOS",
+ "GIFT (LANGSAM)",
+ "VERGIFTET",
+ "BET""\x8E""UBT",
+ "AUS STEIN"
+};
+
+static const StringListProvider kEoB2CharGuiStringsSt2DOSGermanProvider = { ARRAYSIZE(kEoB2CharGuiStringsSt2DOSGerman), kEoB2CharGuiStringsSt2DOSGerman };
+
+static const char *const kEoB2CharGuiStringsInDOSGerman[4] = {
+ "CHARAKTER INFO",
+ "R""\x9A""STUNGSKL.",
+ "ERF",
+ "STF"
+};
+
+static const StringListProvider kEoB2CharGuiStringsInDOSGermanProvider = { ARRAYSIZE(kEoB2CharGuiStringsInDOSGerman), kEoB2CharGuiStringsInDOSGerman };
+
+static const char *const kEoB2CharStatusStrings7DOSGerman[1] = {
+ "%s hat nicht l""\x84""nger riesenkr""\x84""fte.\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings7DOSGermanProvider = { ARRAYSIZE(kEoB2CharStatusStrings7DOSGerman), kEoB2CharStatusStrings7DOSGerman };
+
+static const char *const kEoB2CharStatusStrings82DOSGerman[1] = {
+ "\x06\x06""%s f""\x81""hlt Gift in sich!\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings82DOSGermanProvider = { ARRAYSIZE(kEoB2CharStatusStrings82DOSGerman), kEoB2CharStatusStrings82DOSGerman };
+
+static const char *const kEoB2CharStatusStrings9DOSGerman[1] = {
+ "%s ist nicht l""\x84""nger bet""\x84""ubt!\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings9DOSGermanProvider = { ARRAYSIZE(kEoB2CharStatusStrings9DOSGerman), kEoB2CharStatusStrings9DOSGerman };
+
+static const char *const kEoB2CharStatusStrings12DOSGerman[1] = {
+ "%s wird langsamer.\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings12DOSGermanProvider = { ARRAYSIZE(kEoB2CharStatusStrings12DOSGerman), kEoB2CharStatusStrings12DOSGerman };
+
+static const char *const kEoB2CharStatusStrings132DOSGerman[1] = {
+ "\x06\x06""%s %s!\r"
+};
+
+static const StringListProvider kEoB2CharStatusStrings132DOSGermanProvider = { ARRAYSIZE(kEoB2CharStatusStrings132DOSGerman), kEoB2CharStatusStrings132DOSGerman };
+
+static const char *const kEoB2LevelGainStringsDOSGerman[1] = {
+ "\x06\x01""%s steigt eine Stufe auf.""\x06\x0F""\r"
+};
+
+static const StringListProvider kEoB2LevelGainStringsDOSGermanProvider = { ARRAYSIZE(kEoB2LevelGainStringsDOSGerman), kEoB2LevelGainStringsDOSGerman };
+
+static const char *const kEoB2BookNumbersDOSGerman[5] = {
+ "Erste",
+ "Zweite",
+ "Dritte",
+ "Vierte",
+ "F""\x81""nfte"
+};
+
+static const StringListProvider kEoB2BookNumbersDOSGermanProvider = { ARRAYSIZE(kEoB2BookNumbersDOSGerman), kEoB2BookNumbersDOSGerman };
+
+static const char *const kEoB2MageSpellsListDOSGerman[33] = {
+ "",
+ "Panzer",
+ "Brennende H""\x84""nde",
+ "Magie entdecken",
+ "Magisch. Geschoss",
+ "Schild",
+ "Schockgriff",
+ "Verschwimmen",
+ "Unsichtb. entd.",
+ "Identifizieren+",
+ "Unsichtbarkeit",
+ "M's S""\x84""urepfeil",
+ "Magie bannen",
+ "Feuerball",
+ "Hast",
+ "Person halten",
+ "Unsichtb. 3m",
+ "Blitzstrahl",
+ "Vampirgriff",
+ "Furcht",
+ "Eissturm",
+ "Unsichtbarkeit+",
+ "Fluch brechen",
+ "K""\x84""ltekegel",
+ "Monster halten",
+ "Kraftfeld",
+ "Aufl""\x94""sung",
+ "Fleisch zu Stein",
+ "Stein zu Fleisch",
+ "Wahrer Blick",
+ "Todesfinger",
+ "Wort:Bet""\x84""ubung",
+ "Bigbys Faust"
+};
+
+static const StringListProvider kEoB2MageSpellsListDOSGermanProvider = { ARRAYSIZE(kEoB2MageSpellsListDOSGerman), kEoB2MageSpellsListDOSGerman };
+
+static const char *const kEoB2ClericSpellsListDOSGerman[30] = {
+ "",
+ "Segen",
+ "Leicht verwunden",
+ "L. Wunden heilen",
+ "Magie entdecken",
+ "Schutz v. B""\x94""sem",
+ "St""\x84""rkung",
+ "Flammenklinge",
+ "Person halten",
+ "Gift verlangs.",
+ "Nahr. erschaffen",
+ "Magie bannen",
+ "Schutzgewand",
+ "Gebet",
+ "L""\x84""hmung aufheben",
+ "Schwer verwunden",
+ "S. Wunden heilen",
+ "Gift neutr.",
+ "Schutz-B""\x94""ses 3m",
+ "Kritisch verw.",
+ "K. Wunden heilen",
+ "Flammenschlag",
+ "Tote erwecken",
+ "Schneller Tod",
+ "Wahrer Blick",
+ "Leid",
+ "Heilung",
+ "Auferstehung",
+ "Handauflegen",
+ "Untote abwenden"
+};
+
+static const StringListProvider kEoB2ClericSpellsListDOSGermanProvider = { ARRAYSIZE(kEoB2ClericSpellsListDOSGerman), kEoB2ClericSpellsListDOSGerman };
+
+static const char *const kEoB2SpellNamesDOSGerman[68] = {
+ "panzer",
+ "brennende H""\x84""nde",
+ "magie entdecken",
+ "magisches Geschoss",
+ "schild",
+ "schockgriff",
+ "verschwimmen",
+ "unsichtbares entdecken",
+ "verbessertes identifizieren",
+ "unsichtbarkeit",
+ "melfs S""\x84""urepfeil",
+ "magie bannen",
+ "feuerball",
+ "hast",
+ "person halten",
+ "unsichtbarkeit 3m",
+ "blitzschlag",
+ "vampirgriff",
+ "furcht",
+ "eissturm",
+ "verbesserte Unsichtbarkeit",
+ "fluch brechen",
+ "k""\x84""ltekegel",
+ "monster halten",
+ "kraftfeld",
+ "aufl""\x94""sung",
+ "fleisch zu stein",
+ "stein zu fleisch",
+ "wahrer Blick",
+ "Todesfinger",
+ "wort der Macht: Bet""\x84""ubung",
+ "bigbys geballte Faust",
+ "segen",
+ "leichte Wunden verursachen",
+ "leichte Wunden heilen",
+ "magie entdecken",
+ "schutz vor B""\x94""sem",
+ "st""\x84""rkung",
+ "flammenklinge",
+ "person halten",
+ "gift verlangsamen",
+ "nahrung erschaffen",
+ "magie bannen",
+ "schutzgewand",
+ "gebet",
+ "l""\x84""hmung aufheben",
+ "schwere wunden verursachen",
+ "schwere wunden heilen",
+ "gift neutralisieren",
+ "schutz vor b""\x94""sem 3m",
+ "kritische wunden verursachen",
+ "kritische wunden heilen",
+ "flammenschlag",
+ "tote erwecken",
+ "schneller tot",
+ "wahrer blick",
+ "leid",
+ "heilung",
+ "auferstehung",
+ "hand auflegen",
+ "untote abwenden",
+ "",
+ "mystische abwehr",
+ "",
+ "",
+ "",
+ "",
+ ""
+};
+
+static const StringListProvider kEoB2SpellNamesDOSGermanProvider = { ARRAYSIZE(kEoB2SpellNamesDOSGerman), kEoB2SpellNamesDOSGerman };
+
+static const char *const kEoB2MagicStrings1DOSGerman[6] = {
+ "ABBRECHEN",
+ "ABBRECHEN",
+ "Man braucht eine freie hand f""\x81""r diesen zauber.\r",
+ "Von diesen Zaubern kann man nur einen aktivieren.\r",
+ "%s zaubert %s.\r",
+ "\rok\r"
+};
+
+static const StringListProvider kEoB2MagicStrings1DOSGermanProvider = { ARRAYSIZE(kEoB2MagicStrings1DOSGerman), kEoB2MagicStrings1DOSGerman };
+
+static const char *const kEoB2MagicStrings2DOSGerman[5] = {
+ "Der Zauber versagt!\r",
+ "%s wurde aufgel""\x94""st!\r",
+ "\x06\x06""Die Party wurde von einem Todeszauber getroffen!\r",
+ "\x06\x06""%s wurde von einem schwer verwunden Zauber getroffen.\r",
+ "AUS STEIN"
+};
+
+static const StringListProvider kEoB2MagicStrings2DOSGermanProvider = { ARRAYSIZE(kEoB2MagicStrings2DOSGerman), kEoB2MagicStrings2DOSGerman };
+
+static const char *const kEoB2MagicStrings3DOSGerman[5] = {
+ "Wen verzaubern? ",
+ "\rSpruch abgebrochen.\r",
+ "%s's %s Zauber l""\x84""sst nach.\r",
+ "%s verfehlt das Monster.\r",
+ "%s muss vorn stehen um zu treffen!\r"
+};
+
+static const StringListProvider kEoB2MagicStrings3DOSGermanProvider = { ARRAYSIZE(kEoB2MagicStrings3DOSGerman), kEoB2MagicStrings3DOSGerman };
+
+static const char *const kEoB2MagicStrings4DOSGerman[1] = {
+ "keine Wirkung.\r"
+};
+
+static const StringListProvider kEoB2MagicStrings4DOSGermanProvider = { ARRAYSIZE(kEoB2MagicStrings4DOSGerman), kEoB2MagicStrings4DOSGerman };
+
+static const char *const kEoB2MagicStrings6DOSGerman[1] = {
+ "%s hat schon eine R""\x81""stunksklasse ""\x81""ber 6."
+};
+
+static const StringListProvider kEoB2MagicStrings6DOSGermanProvider = { ARRAYSIZE(kEoB2MagicStrings6DOSGerman), kEoB2MagicStrings6DOSGerman };
+
+static const char *const kEoB2MagicStrings7DOSGerman[2] = {
+ "%s steht schon unter dem effekt eines %s spruches.\r",
+ "Die Party steht schon unter dem effekt eines %s spruches.\r"
+};
+
+static const StringListProvider kEoB2MagicStrings7DOSGermanProvider = { ARRAYSIZE(kEoB2MagicStrings7DOSGerman), kEoB2MagicStrings7DOSGerman };
+
+static const char *const kEoB2MagicStrings8DOSGerman[6] = {
+ "Der Zauber versagt!\r",
+ "ist gel""\x84""hmt",
+ "Der Zauber versagt!\r",
+ "Der Zauber versagt\r",
+ "Kein Monster in Reichweite!\r",
+ "%s steht bereits unter einem St""\x84""rkungszauber.\r"
+};
+
+static const StringListProvider kEoB2MagicStrings8DOSGermanProvider = { ARRAYSIZE(kEoB2MagicStrings8DOSGerman), kEoB2MagicStrings8DOSGerman };
+
+static const byte kEoB2ManDefDOSGerman[200] = {
+ 0x09, 0x01, 0x03, 0x00, 0x09, 0x01, 0x06, 0x00,
+ 0x09, 0x02, 0x07, 0x00, 0x14, 0x01, 0x01, 0x00,
+ 0x14, 0x02, 0x01, 0x00, 0x14, 0x04, 0x02, 0x00,
+ 0x1A, 0x01, 0x03, 0x00, 0x1A, 0x02, 0x02, 0x00,
+ 0x1A, 0x07, 0x04, 0x00, 0x15, 0x01, 0x02, 0x00,
+ 0x15, 0x01, 0x05, 0x00, 0x15, 0x02, 0x01, 0x00,
+ 0x15, 0x03, 0x04, 0x00, 0x15, 0x04, 0x01, 0x00,
+ 0x15, 0x05, 0x05, 0x00, 0x23, 0x01, 0x02, 0x00,
+ 0x23, 0x01, 0x05, 0x00, 0x23, 0x02, 0x03, 0x00,
+ 0x23, 0x03, 0x01, 0x00, 0x23, 0x06, 0x03, 0x00,
+ 0x23, 0x0A, 0x06, 0x00, 0x26, 0x01, 0x01, 0x00,
+ 0x26, 0x01, 0x03, 0x00, 0x26, 0x01, 0x05, 0x00,
+ 0x26, 0x02, 0x04, 0x00, 0x26, 0x03, 0x02, 0x00,
+ 0x26, 0x04, 0x01, 0x00, 0x17, 0x01, 0x02, 0x00,
+ 0x17, 0x01, 0x04, 0x00, 0x17, 0x01, 0x05, 0x00,
+ 0x17, 0x02, 0x02, 0x00, 0x17, 0x03, 0x03, 0x00,
+ 0x17, 0x07, 0x01, 0x00, 0x12, 0x01, 0x02, 0x00,
+ 0x12, 0x01, 0x07, 0x00, 0x12, 0x03, 0x01, 0x00,
+ 0x12, 0x04, 0x02, 0x00, 0x12, 0x05, 0x02, 0x00,
+ 0x12, 0x06, 0x05, 0x00, 0x12, 0x07, 0x03, 0x00,
+ 0x12, 0x08, 0x01, 0x00, 0x1F, 0x01, 0x05, 0x00,
+ 0x1F, 0x02, 0x06, 0x00, 0x1F, 0x03, 0x02, 0x00,
+ 0x1F, 0x03, 0x01, 0x00, 0x1F, 0x04, 0x01, 0x00,
+ 0x1F, 0x04, 0x03, 0x00, 0x1C, 0x01, 0x01, 0x00,
+ 0x1C, 0x01, 0x03, 0x00, 0x1C, 0x02, 0x01, 0x00
+};
+
+static const ByteProvider kEoB2ManDefDOSGermanProvider = { ARRAYSIZE(kEoB2ManDefDOSGerman), kEoB2ManDefDOSGerman };
+
+static const char *const kEoB2ManWordDOSGerman[51] = {
+ "teil",
+ "geht",
+ "maus",
+ "um",
+ "einer",
+ "kann",
+ "das",
+ "schalter",
+ "der",
+ "einem",
+ "gnome",
+ "magieresistent",
+ "intelligenz",
+ "weisheit",
+ "dieb",
+ "weiter",
+ "setzen",
+ "ein",
+ "magier",
+ "diese",
+ "sind",
+ "eines",
+ "wodurch",
+ "schwerer",
+ "gute",
+ "bonus",
+ "bogen",
+ "und",
+ "dadurch",
+ "oft",
+ "raubt",
+ "keine",
+ "schrift",
+ "waffen",
+ "unterteilt",
+ "vordersten",
+ "nur",
+ "sie",
+ "klassen",
+ "zeigt",
+ "gegen",
+ "mausknopf",
+ "nahrungsbalken",
+ "charakters",
+ "des",
+ "um",
+ "gegenstand",
+ "durch",
+ "spruch",
+ "unsichtbar",
+ ""
+};
+
+static const StringListProvider kEoB2ManWordDOSGermanProvider = { ARRAYSIZE(kEoB2ManWordDOSGerman), kEoB2ManWordDOSGerman };
+
+static const char *const kEoB2ManPromptDOSGerman[1] = {
+ "\r\r\r\rAuf der Seite mit diesem Zeichen...\r\rSuche Zeile %d (ohne ""\x9A""berschrift)\rGib Wort %d ein\r"
+};
+
+static const StringListProvider kEoB2ManPromptDOSGermanProvider = { ARRAYSIZE(kEoB2ManPromptDOSGerman), kEoB2ManPromptDOSGerman };
+
+static const char *const kEoB2MainMenuStringsDOSGerman[5] = {
+ "ALTES SPIEL LADEN\r",
+ "NEUE PARTY ERSTELLEN\r",
+ "EOB I PARTY TRANSFER\r",
+ "INTRO ANSEHEN\r",
+ "ZUR""\x9A""CK ZUM DOS\r"
+};
+
+static const StringListProvider kEoB2MainMenuStringsDOSGermanProvider = { ARRAYSIZE(kEoB2MainMenuStringsDOSGerman), kEoB2MainMenuStringsDOSGerman };
+
+static const char *const kEoB2TransferStrings1DOSGerman[2] = {
+ "Stufe: %d",
+ " / %d"
+};
+
+static const StringListProvider kEoB2TransferStrings1DOSGermanProvider = { ARRAYSIZE(kEoB2TransferStrings1DOSGerman), kEoB2TransferStrings1DOSGerman };
+
+static const char *const kEoB2TransferStrings2DOSGerman[2] = {
+ "Dieses Abenteuer ist nur f""\x81""r vier Charaktere.",
+ "OK w""\x84""hlen, wenn Partyerstellung beendet."
+};
+
+static const StringListProvider kEoB2TransferStrings2DOSGermanProvider = { ARRAYSIZE(kEoB2TransferStrings2DOSGerman), kEoB2TransferStrings2DOSGerman };
+
+static const char *const kEoB2TransferLabelsDOSGerman[2] = {
+ "ABBR.",
+ "OK"
+};
+
+static const StringListProvider kEoB2TransferLabelsDOSGermanProvider = { ARRAYSIZE(kEoB2TransferLabelsDOSGerman), kEoB2TransferLabelsDOSGerman };
+
+static const char *const kEoB2IntroStringsDOSGerman[20] = {
+ "Ihr hattet euch gerade gem""\x81""tlich am \rKamin niedergelassen.",
+ "Da wurde euch eine Botschaft\rzugespielt.",
+ "Sie war von eurem Freund Khelben \rBlackstaff, dem Erzmagier der Stadt.",
+ "Die Mitteilung war dringend.",
+ "Was konnte Khelben nur wollen?",
+ "Willkommen, bitte tretet ein.",
+ "Khelben erwartet euch im Studierzimmer.",
+ "Danke f""\x81""r euer schnelles Kommen.",
+ "Meine Freunde, ich bin besorgt.",
+ "Uralte, b""\x94""se M""\x84""chte rumoren im \rTempel Darkmoon.",
+ "Ich f""\x81""rchte um die Sicherheit \runserer Stadt.",
+ "Ich brauche eure Hilfe...",
+ "Vor drei N""\x84""chten \rentsandte ich einen Kundschafter.",
+ "Sie kam niemals zur""\x81""ck.",
+ "Ich f""\x81""rchte um ihr Leben.",
+ "Nehmt diese M""\x81""nze.",
+ "Mit ihrer Hilfe werde \rich euch erreichen.",
+ "Ihr m""\x81\xE1""t schnell handeln.",
+ "Ich teleportiere euch nun in \rdie N""\x84""he von Darkmoon.",
+ "M""\x94""ge das Gl""\x81""ck auf eurer Seite\rsein, Freunde."
+};
+
+static const StringListProvider kEoB2IntroStringsDOSGermanProvider = { ARRAYSIZE(kEoB2IntroStringsDOSGerman), kEoB2IntroStringsDOSGerman };
+
+static const char *const kEoB2IntroCPSFilesDOSGerman[13] = {
+ "STREET1.CPS",
+ "STREET2.CPS",
+ "DOORWAY1.CPS",
+ "DOORWAY2.CPS",
+ "XESTWOOD.CPS",
+ "WINDING.CPS",
+ "KHELBAN2.CPS",
+ "KHELBAN1.CPS",
+ "KHELBAN3.CPS",
+ "KHELBAN4.CPS",
+ "COIN.CPS",
+ "KHELBAN5.CPS",
+ "KHELBAN6.CPS"
+};
+
+static const StringListProvider kEoB2IntroCPSFilesDOSGermanProvider = { ARRAYSIZE(kEoB2IntroCPSFilesDOSGerman), kEoB2IntroCPSFilesDOSGerman };
+
+static const char *const kEoB2FinaleStringsDOSGerman[20] = {
+ "Nun endlich wurde Dran besiegt.",
+ "Pl""\x94""tzlich erscheint euer Freund \rKhelben.",
+ "Seid gegr""\x81\xE1""t, meine siegreichen \rFreunde.",
+ "Ihr seid die Bezwinger von Dran!",
+ "Ich hatte keine Ahnung, da""\xE1"" \rDran ein Drache war.",
+ "Er mu""\xE1"" ""\x81""ber 300 Jahre alt \rgewesen sein!",
+ "Seine Macht ist vergangen.",
+ "Aber noch immer ist Darkmoon\reine Quelle des B""\x94""sen.",
+ "Und ein Teil seines Gefolges\rexistiert noch.",
+ "Daher m""\x81""ssen wir diesen Platz\rnun verlassen.",
+ "So da""\xE1"" meine Kr""\x84""fte ihn ein\r f""\x81""r allemal\rzerst""\x94""ren k""\x94""nnen.",
+ "Folgt mir.",
+ "M""\x84""chtige Magier sind bereit\rf""\x81""r den letzten Schlag\rgegen Darkmoon.",
+ "Das B""\x94""se im Tempel ist sehr stark.",
+ "Es darf keinesfalls weiter\rbestehen!",
+ "Der Tempel h""\x94""rt auf zu\rexistieren.",
+ "Unsere Arbeit ist nun getan,\rmeine Freunde.",
+ "Seid bedankt.",
+ "Ihr habt Euch meinen tiefen\rRespekt erk""\x84""mpft.",
+ "Wir werden Euch nie vergessen."
+};
+
+static const StringListProvider kEoB2FinaleStringsDOSGermanProvider = { ARRAYSIZE(kEoB2FinaleStringsDOSGerman), kEoB2FinaleStringsDOSGerman };
+
+static const byte kEoB2CreditsDataDOSGerman[2833] = {
+ 0x02, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x02, 0x10, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x02, 0x03, 0x0D, 0x02, 0x04, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x02,
+ 0x06, 0x0D, 0x0D, 0x0D, 0x02, 0x01, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x44, 0x69, 0x72, 0x65,
+ 0x6B, 0x74, 0x6F, 0x72, 0x3A, 0x20, 0x42, 0x72,
+ 0x65, 0x74, 0x74, 0x20, 0x57, 0x2E, 0x20, 0x53,
+ 0x70, 0x65, 0x72, 0x72, 0x79, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x4F,
+ 0x72, 0x69, 0x67, 0x69, 0x6E, 0x61, 0x6C, 0x6B,
+ 0x6F, 0x6E, 0x7A, 0x65, 0x70, 0x74, 0x3A, 0x20,
+ 0x50, 0x68, 0x69, 0x6C, 0x69, 0x70, 0x20, 0x57,
+ 0x2E, 0x20, 0x47, 0x6F, 0x72, 0x72, 0x6F, 0x77,
+ 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x42, 0x72, 0x65, 0x74, 0x74, 0x20, 0x57, 0x2E,
+ 0x20, 0x53, 0x70, 0x65, 0x72, 0x72, 0x79, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x70, 0x69,
+ 0x65, 0x6C, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6E,
+ 0x3A, 0x20, 0x42, 0x72, 0x65, 0x74, 0x74, 0x20,
+ 0x57, 0x2E, 0x20, 0x53, 0x70, 0x65, 0x72, 0x72,
+ 0x79, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53,
+ 0x2E, 0x20, 0x4D, 0x75, 0x64, 0x72, 0x61, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x42, 0x69, 0x6C, 0x6C, 0x20, 0x53,
+ 0x74, 0x6F, 0x6B, 0x65, 0x73, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x72, 0x6F,
+ 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x65, 0x72,
+ 0x65, 0x72, 0x3A, 0x20, 0x50, 0x68, 0x69, 0x6C,
+ 0x69, 0x70, 0x20, 0x57, 0x2E, 0x20, 0x47, 0x6F,
+ 0x72, 0x72, 0x6F, 0x77, 0x20, 0x20, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x4C, 0x65,
+ 0x76, 0x65, 0x6C, 0x70, 0x72, 0x6F, 0x67, 0x72,
+ 0x61, 0x6D, 0x6D, 0x65, 0x3A, 0x20, 0x42, 0x69,
+ 0x6C, 0x6C, 0x20, 0x53, 0x74, 0x6F, 0x6B, 0x65,
+ 0x73, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x09, 0x20,
+ 0x41, 0x6D, 0x69, 0x67, 0x61, 0x20, 0x50, 0x72,
+ 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x3A, 0x20,
+ 0x42, 0x69, 0x6C, 0x6C, 0x20, 0x53, 0x74, 0x6F,
+ 0x6B, 0x65, 0x73, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x49, 0x6E,
+ 0x74, 0x72, 0x6F, 0x20, 0x26, 0x20, 0x46, 0x69,
+ 0x6E, 0x61, 0x6C, 0x65, 0x20, 0x76, 0x6F, 0x6E,
+ 0x3A, 0x20, 0x4A, 0x6F, 0x65, 0x20, 0x42, 0x6F,
+ 0x73, 0x74, 0x69, 0x63, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x41, 0x72,
+ 0x74, 0x20, 0x26, 0x20, 0x47, 0x72, 0x61, 0x66,
+ 0x69, 0x6B, 0x3A, 0x20, 0x52, 0x69, 0x63, 0x6B,
+ 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x41, 0x61, 0x72, 0x6F,
+ 0x6E, 0x20, 0x50, 0x6F, 0x77, 0x65, 0x6C, 0x6C,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4A, 0x6F, 0x73, 0x65,
+ 0x70, 0x68, 0x20, 0x48, 0x65, 0x77, 0x69, 0x74,
+ 0x74, 0x20, 0x49, 0x56, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x52, 0x65, 0x6E, 0x20,
+ 0x4F, 0x6C, 0x73, 0x65, 0x6E, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4C, 0x6F, 0x75, 0x69,
+ 0x73, 0x65, 0x20, 0x53, 0x61, 0x6E, 0x64, 0x6F,
+ 0x76, 0x61, 0x6C, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x4A, 0x75, 0x64, 0x69,
+ 0x74, 0x68, 0x20, 0x50, 0x65, 0x74, 0x65, 0x72,
+ 0x73, 0x6F, 0x6E, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4D,
+ 0x75, 0x73, 0x69, 0x6B, 0x3A, 0x20, 0x46, 0x72,
+ 0x61, 0x6E, 0x6B, 0x20, 0x4B, 0x6C, 0x65, 0x70,
+ 0x61, 0x63, 0x6B, 0x69, 0x20, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x53, 0x6F, 0x75, 0x6E, 0x64, 0x65,
+ 0x66, 0x66, 0x65, 0x6B, 0x74, 0x65, 0x3A, 0x20,
+ 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53, 0x2E, 0x20,
+ 0x4D, 0x75, 0x64, 0x72, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x44, 0x77, 0x69, 0x67, 0x68, 0x74, 0x20, 0x4F,
+ 0x6B, 0x61, 0x68, 0x61, 0x72, 0x61, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x41, 0x75, 0x74, 0x6F, 0x72,
+ 0x3A, 0x20, 0x4D, 0x61, 0x72, 0x63, 0x20, 0x43,
+ 0x72, 0x61, 0x6D, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x20, 0x20, 0x51, 0x75, 0x61, 0x6C, 0x69, 0x74,
+ 0x84, 0x74, 0x73, 0x70, 0x72, 0x81, 0x66, 0x75,
+ 0x6E, 0x67, 0x3A, 0x20, 0x47, 0x6C, 0x65, 0x6E,
+ 0x6E, 0x20, 0x53, 0x70, 0x65, 0x72, 0x72, 0x79,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x53, 0x70, 0x65, 0x63,
+ 0x69, 0x61, 0x6C, 0x20, 0x54, 0x68, 0x61, 0x6E,
+ 0x6B, 0x73, 0x0D, 0x0D, 0x0D, 0x43, 0x68, 0x75,
+ 0x63, 0x6B, 0x20, 0x4B, 0x72, 0x6F, 0x65, 0x67,
+ 0x65, 0x6C, 0x0D, 0x0D, 0x58, 0x61, 0x6E, 0x61,
+ 0x74, 0x68, 0x61, 0x72, 0x20, 0x74, 0x68, 0x65,
+ 0x20, 0x42, 0x65, 0x68, 0x6F, 0x6C, 0x64, 0x65,
+ 0x72, 0x0D, 0x0D, 0x75, 0x6E, 0x64, 0x0D, 0x0D,
+ 0x4D, 0x69, 0x6B, 0x65, 0x27, 0x73, 0x20, 0x63,
+ 0x61, 0x74, 0x2C, 0x20, 0x53, 0x70, 0x61, 0x72,
+ 0x6B, 0x79, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x50, 0x75, 0x62, 0x6C, 0x69, 0x73,
+ 0x68, 0x65, 0x64, 0x20, 0x62, 0x79, 0x0D, 0x0D,
+ 0x02, 0x02, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x50, 0x72, 0x6F, 0x64, 0x75,
+ 0x63, 0x65, 0x72, 0x3A, 0x20, 0x44, 0x61, 0x6E,
+ 0x20, 0x43, 0x65, 0x72, 0x6D, 0x61, 0x6B, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D,
+ 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x47, 0x65, 0x6F,
+ 0x72, 0x67, 0x65, 0x20, 0x4D, 0x61, 0x63, 0x44,
+ 0x6F, 0x6E, 0x61, 0x6C, 0x64, 0x20, 0x20, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x53, 0x70, 0x69,
+ 0x65, 0x6C, 0x65, 0x6E, 0x74, 0x77, 0x69, 0x63,
+ 0x6B, 0x6C, 0x75, 0x6E, 0x67, 0x3A, 0x20, 0x4E,
+ 0x69, 0x63, 0x68, 0x6F, 0x6C, 0x61, 0x73, 0x20,
+ 0x42, 0x65, 0x6C, 0x69, 0x61, 0x65, 0x66, 0x66,
+ 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x44,
+ 0x61, 0x76, 0x69, 0x64, 0x20, 0x41, 0x2E, 0x20,
+ 0x4C, 0x75, 0x63, 0x63, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x53, 0x70, 0x69, 0x65, 0x6C,
+ 0x65, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x3A,
+ 0x20, 0x50, 0x68, 0x69, 0x6C, 0x20, 0x41, 0x6C,
+ 0x6E, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x4A, 0x6F, 0x68, 0x6E, 0x20, 0x42, 0x6F,
+ 0x6F, 0x63, 0x6B, 0x68, 0x6F, 0x6C, 0x64, 0x74,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x47, 0x6C, 0x65, 0x6E, 0x20, 0x43, 0x75,
+ 0x72, 0x65, 0x74, 0x6F, 0x6E, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x4D, 0x61, 0x72, 0x6B, 0x20, 0x48, 0x61,
+ 0x6C, 0x6C, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x42, 0x72, 0x69, 0x61, 0x6E, 0x20, 0x4C,
+ 0x6F, 0x77, 0x65, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x52, 0x6F, 0x62, 0x65, 0x72, 0x74, 0x20,
+ 0x4C, 0x75, 0x70, 0x6F, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x41, 0x6C, 0x61, 0x6E, 0x20, 0x4D, 0x61,
+ 0x72, 0x65, 0x6E, 0x63, 0x6F, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x4A, 0x61, 0x73, 0x6F, 0x6E, 0x20, 0x52,
+ 0x61, 0x79, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x4A, 0x65, 0x66, 0x66, 0x20, 0x53, 0x68,
+ 0x6F, 0x74, 0x77, 0x65, 0x6C, 0x6C, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x41, 0x6E, 0x64, 0x72, 0x65, 0x20, 0x56,
+ 0x72, 0x69, 0x67, 0x6E, 0x61, 0x75, 0x64, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x43, 0x68, 0x72, 0x69, 0x73, 0x20, 0x57,
+ 0x61, 0x72, 0x73, 0x68, 0x61, 0x75, 0x65, 0x72,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x61, 0x6E, 0x64, 0x20, 0x54, 0x53, 0x43,
+ 0x53, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D, 0x0D, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x65, 0x73,
+ 0x74, 0x20, 0x53, 0x75, 0x70, 0x70, 0x6F, 0x72,
+ 0x74, 0x3A, 0x20, 0x4B, 0x79, 0x6D, 0x20, 0x47,
+ 0x6F, 0x79, 0x65, 0x72, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x20, 0x20, 0x44,
+ 0x65, 0x75, 0x74, 0x73, 0x63, 0x68, 0x65, 0x20,
+ 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x3A,
+ 0x20, 0x53, 0x6F, 0x66, 0x74, 0x67, 0x6F, 0x6C,
+ 0x64, 0x20, 0x47, 0x6D, 0x62, 0x48, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50,
+ 0x72, 0x6F, 0x64, 0x75, 0x63, 0x65, 0x72, 0x3A,
+ 0x20, 0x54, 0x68, 0x6F, 0x6D, 0x61, 0x73, 0x20,
+ 0x42, 0x72, 0x6F, 0x63, 0x6B, 0x68, 0x61, 0x67,
+ 0x65, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x4C, 0x65,
+ 0x76, 0x65, 0x6C, 0x20, 0x75, 0x2E, 0x20, 0x48,
+ 0x61, 0x6E, 0x64, 0x62, 0x75, 0x63, 0x68, 0x3A,
+ 0x20, 0x4A, 0x61, 0x73, 0x70, 0x65, 0x72, 0x20,
+ 0x42, 0x6F, 0x6E, 0x67, 0x65, 0x72, 0x74, 0x7A,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x53, 0x70, 0x69, 0x65, 0x6C,
+ 0x65, 0x74, 0x65, 0x73, 0x74, 0x65, 0x72, 0x3A,
+ 0x20, 0x53, 0x63, 0x68, 0x69, 0x65, 0x76, 0x69,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x41, 0x6C, 0x65, 0x78, 0x61, 0x6E, 0x64,
+ 0x65, 0x72, 0x20, 0x42, 0x6F, 0x68, 0x6C, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x4D, 0x61, 0x72, 0x6B, 0x75, 0x73, 0x20,
+ 0x4C, 0x75, 0x64, 0x6F, 0x6C, 0x66, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x54, 0x68, 0x6F, 0x72, 0x73, 0x74, 0x65,
+ 0x6E, 0x20, 0x4E, 0x65, 0x75, 0x6D, 0x61, 0x6E,
+ 0x6E, 0x20, 0x20, 0x0D, 0x0D, 0x20, 0x20, 0x20,
+ 0x20, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6C,
+ 0x20, 0x54, 0x68, 0x61, 0x6E, 0x6B, 0x73, 0x3A,
+ 0x20, 0x4A, 0x94, 0x72, 0x67, 0x20, 0x47, 0x72,
+ 0x84, 0x66, 0x69, 0x6E, 0x67, 0x68, 0x6F, 0x6C,
+ 0x74, 0x20, 0x20, 0x0D, 0x0D, 0x09, 0x09, 0x09,
+ 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x20,
+ 0x4B, 0x72, 0x69, 0x73, 0x74, 0x69, 0x6E, 0x20,
+ 0x44, 0x6F, 0x64, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x0D, 0x09, 0x09, 0x09, 0x09,
+ 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x20, 0x54,
+ 0x68, 0x6F, 0x72, 0x62, 0x65, 0x6E, 0x20, 0x57,
+ 0x94, 0x68, 0x6C, 0x65, 0x72, 0x20, 0x20, 0x20,
+ 0x20, 0x0D, 0x0D, 0x09, 0x09, 0x09, 0x09, 0x09,
+ 0x09, 0x09, 0x09, 0x09, 0x09, 0x20, 0x42, 0x65,
+ 0x72, 0x6E, 0x61, 0x72, 0x64, 0x20, 0x4D, 0x6F,
+ 0x72, 0x65, 0x6C, 0x6C, 0x20, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x75,
+ 0x73, 0x61, 0x6E, 0x6E, 0x65, 0x20, 0x44, 0x69,
+ 0x65, 0x63, 0x6B, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x56, 0x6F,
+ 0x6C, 0x6B, 0x65, 0x72, 0x20, 0x45, 0x6C, 0x6F,
+ 0x65, 0x73, 0x73, 0x65, 0x72, 0x20, 0x20, 0x20,
+ 0x0D, 0x0D, 0x75, 0x6E, 0x64, 0x20, 0x64, 0x65,
+ 0x72, 0x20, 0x44, 0x72, 0x61, 0x63, 0x68, 0x65,
+ 0x6E, 0x74, 0x94, 0x74, 0x65, 0x72, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x43, 0x61, 0x73, 0x74, 0x20,
+ 0x6F, 0x66, 0x20, 0x43, 0x68, 0x61, 0x72, 0x61,
+ 0x63, 0x74, 0x65, 0x72, 0x73, 0x0D, 0x0D, 0x0D,
+ 0x44, 0x69, 0x65, 0x20, 0x4D, 0x84, 0x63, 0x68,
+ 0x74, 0x65, 0x20, 0x64, 0x65, 0x73, 0x20, 0x42,
+ 0x94, 0x73, 0x65, 0x6E, 0x0D, 0x0D, 0x0D, 0x44,
+ 0x72, 0x61, 0x6E, 0x20, 0x44, 0x72, 0x61, 0x67,
+ 0x67, 0x6F, 0x72, 0x65, 0x20, 0x28, 0x44, 0x65,
+ 0x72, 0x20, 0x67, 0x72, 0x6F, 0xE1, 0x65, 0x20,
+ 0x62, 0x94, 0x73, 0x65, 0x20, 0x44, 0x72, 0x61,
+ 0x63, 0x68, 0x65, 0x29, 0x0D, 0x0D, 0x4E, 0x61,
+ 0x64, 0x69, 0x61, 0x20, 0x26, 0x20, 0x4A, 0x6F,
+ 0x72, 0x69, 0x6C, 0x20, 0x28, 0x44, 0x69, 0x65,
+ 0x20, 0x62, 0x94, 0x73, 0x65, 0x6E, 0x20, 0x4B,
+ 0x6C, 0x65, 0x72, 0x69, 0x6B, 0x65, 0x72, 0x29,
+ 0x0D, 0x0D, 0x44, 0x69, 0x65, 0x6E, 0x65, 0x72,
+ 0x20, 0x28, 0x44, 0x72, 0x61, 0x6E, 0x73, 0x20,
+ 0x62, 0x94, 0x73, 0x65, 0x20, 0x72, 0x65, 0x63,
+ 0x68, 0x74, 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64,
+ 0x29, 0x0D, 0x0D, 0x4B, 0x6C, 0x65, 0x72, 0x69,
+ 0x6B, 0x65, 0x72, 0x20, 0x28, 0x44, 0x65, 0x72,
+ 0x20, 0x66, 0x69, 0x65, 0x73, 0x65, 0x20, 0x72,
+ 0x6F, 0x74, 0x65, 0x20, 0x48, 0x65, 0x72, 0x69,
+ 0x6E, 0x67, 0x29, 0x0D, 0x0D, 0x44, 0x65, 0x72,
+ 0x20, 0x4B, 0x94, 0x6E, 0x69, 0x67, 0x20, 0x64,
+ 0x65, 0x72, 0x20, 0x46, 0x72, 0x6F, 0x73, 0x74,
+ 0x72, 0x69, 0x65, 0x73, 0x65, 0x6E, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x44, 0x69, 0x65, 0x20, 0x4D, 0x84,
+ 0x63, 0x68, 0x74, 0x65, 0x20, 0x64, 0x65, 0x73,
+ 0x20, 0x47, 0x75, 0x74, 0x65, 0x6E, 0x0D, 0x0D,
+ 0x0D, 0x4B, 0x68, 0x65, 0x6C, 0x62, 0x65, 0x6E,
+ 0x20, 0x42, 0x6C, 0x61, 0x63, 0x6B, 0x73, 0x74,
+ 0x61, 0x66, 0x66, 0x0D, 0x0D, 0x41, 0x6D, 0x62,
+ 0x65, 0x72, 0x20, 0x28, 0x4B, 0x68, 0x65, 0x6C,
+ 0x62, 0x65, 0x6E, 0x73, 0x20, 0x4B, 0x75, 0x6E,
+ 0x64, 0x73, 0x63, 0x68, 0x61, 0x66, 0x74, 0x65,
+ 0x72, 0x29, 0x0D, 0x0D, 0x53, 0x68, 0x6F, 0x72,
+ 0x6E, 0x20, 0x44, 0x69, 0x65, 0x72, 0x67, 0x61,
+ 0x72, 0x20, 0x28, 0x6C, 0x84, 0x73, 0x74, 0x69,
+ 0x67, 0x65, 0x72, 0x20, 0x5A, 0x77, 0x65, 0x72,
+ 0x67, 0x29, 0x0D, 0x0D, 0x49, 0x6E, 0x73, 0x61,
+ 0x6C, 0x20, 0x64, 0x65, 0x72, 0x20, 0x44, 0x69,
+ 0x65, 0x62, 0x20, 0x28, 0x44, 0x69, 0x65, 0x20,
+ 0x50, 0x6C, 0x61, 0x67, 0x65, 0x29, 0x0D, 0x0D,
+ 0x43, 0x61, 0x6C, 0x61, 0x6E, 0x64, 0x72, 0x61,
+ 0x20, 0x28, 0x49, 0x72, 0x61, 0x73, 0x20, 0x76,
+ 0x65, 0x72, 0x6C, 0x6F, 0x72, 0x65, 0x6E, 0x65,
+ 0x20, 0x53, 0x63, 0x68, 0x77, 0x65, 0x73, 0x74,
+ 0x65, 0x72, 0x29, 0x0D, 0x0D, 0x41, 0x6C, 0x61,
+ 0x69, 0x6E, 0x20, 0x28, 0x44, 0x65, 0x72, 0x20,
+ 0x55, 0x72, 0x61, 0x6C, 0x74, 0x65, 0x29, 0x0D,
+ 0x0D, 0x53, 0x61, 0x6E, 0x2D, 0x52, 0x61, 0x61,
+ 0x6C, 0x20, 0x28, 0x44, 0x75, 0x6E, 0x6B, 0x65,
+ 0x6C, 0x65, 0x6C, 0x66, 0x65, 0x6E, 0x6D, 0x61,
+ 0x67, 0x69, 0x65, 0x72, 0x29, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x01, 0x4A, 0x65, 0x64,
+ 0x65, 0x20, 0x8E, 0x68, 0x6E, 0x6C, 0x69, 0x63,
+ 0x68, 0x6B, 0x65, 0x69, 0x74, 0x20, 0x76, 0x6F,
+ 0x6E, 0x20, 0x43, 0x68, 0x61, 0x72, 0x61, 0x6B,
+ 0x74, 0x65, 0x72, 0x65, 0x6E, 0x2C, 0x0D, 0x01,
+ 0x6F, 0x62, 0x20, 0x54, 0x6F, 0x74, 0x20, 0x6F,
+ 0x64, 0x65, 0x72, 0x20, 0x4C, 0x65, 0x62, 0x65,
+ 0x6E, 0x64, 0x69, 0x67, 0x2C, 0x20, 0x77, 0x84,
+ 0x72, 0x65, 0x20, 0x72, 0x65, 0x69, 0x6E, 0x0D,
+ 0x01, 0x7A, 0x75, 0x66, 0x84, 0x6C, 0x6C, 0x69,
+ 0x67, 0x20, 0x75, 0x6E, 0x64, 0x20, 0x75, 0x6E,
+ 0x62, 0x65, 0x61, 0x62, 0x73, 0x69, 0x63, 0x68,
+ 0x74, 0x69, 0x67, 0x74, 0x2E, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x02, 0x11, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x00
+};
+
+static const ByteProvider kEoB2CreditsDataDOSGermanProvider = { ARRAYSIZE(kEoB2CreditsDataDOSGerman), kEoB2CreditsDataDOSGerman };
+
+static const char *const kEoB2FinaleCPSFilesDOSGerman[13] = {
+ "DRAGON1.CPS",
+ "DRAGON2.CPS",
+ "HURRY1.CPS",
+ "HURRY2.CPS",
+ "DESTROY0.CPS",
+ "DESTROY1.CPS",
+ "DESTROY2.CPS",
+ "MAGIC.CPS",
+ "DESTROY3.CPS",
+ "XREDITS2.CPS",
+ "CREDITS3.CPS",
+ "XEROES.CPS",
+ "THANKS.CPS"
+};
+
+static const StringListProvider kEoB2FinaleCPSFilesDOSGermanProvider = { ARRAYSIZE(kEoB2FinaleCPSFilesDOSGerman), kEoB2FinaleCPSFilesDOSGerman };
+
+static const char *const kEoB2MonsterDistAttStringsDOSGerman[5] = {
+ "Die Party wurde von einem psychischen Abgriff getroffen!\r",
+ "paralysiert",
+ "vergiftet",
+ "bet""\x84""ubt",
+ "aus stein"
+};
+
+static const StringListProvider kEoB2MonsterDistAttStringsDOSGermanProvider = { ARRAYSIZE(kEoB2MonsterDistAttStringsDOSGerman), kEoB2MonsterDistAttStringsDOSGerman };
+
+static const char *const kEoB2Npc1StringsDOSGerman[2] = {
+ "reden",
+ "weiter"
+};
+
+static const StringListProvider kEoB2Npc1StringsDOSGermanProvider = { ARRAYSIZE(kEoB2Npc1StringsDOSGerman), kEoB2Npc1StringsDOSGerman };
+
+static const char *const kEoB2Npc2StringsDOSGerman[2] = {
+ "Freilassen",
+ "Weiterziehen"
+};
+
+static const StringListProvider kEoB2Npc2StringsDOSGermanProvider = { ARRAYSIZE(kEoB2Npc2StringsDOSGerman), kEoB2Npc2StringsDOSGerman };
+
+static const char *const kEoB2MonsterDustStringsDOSGerman[1] = {
+ "Das Monster vergeht zu Staub!\r"
+};
+
+static const StringListProvider kEoB2MonsterDustStringsDOSGermanProvider = { ARRAYSIZE(kEoB2MonsterDustStringsDOSGerman), kEoB2MonsterDustStringsDOSGerman };
+
+static const char *const kEoB2KheldranStringsDOSGerman[1] = {
+ " Diese Narren!"
+};
+
+static const StringListProvider kEoB2KheldranStringsDOSGermanProvider = { ARRAYSIZE(kEoB2KheldranStringsDOSGerman), kEoB2KheldranStringsDOSGerman };
+
+static const char *const kEoB2HornStringsDOSGerman[4] = {
+ "Ein br""\x81""llendes Ger""\x84""usch kommt aus dem Horn.\r",
+ "Ein hohler Ton dringt aus dem Horn.\r",
+ "Ein melodischer Ton klingt aus dem Horn.\r",
+ "Ein unheimliches Ger""\x84""usch kommt aus dem Horn.\r"
+};
+
+static const StringListProvider kEoB2HornStringsDOSGermanProvider = { ARRAYSIZE(kEoB2HornStringsDOSGerman), kEoB2HornStringsDOSGerman };
+
diff --git a/devtools/create_kyradat/resources/hof_dos.h b/devtools/create_kyradat/resources/hof_dos.h
new file mode 100644
index 0000000000..a90acd4803
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos.h
@@ -0,0 +1,769 @@
+static const char *const k2SeqplayPakFilesDOS[3] = {
+ "INTROGEN.PAK",
+ "INTROVOC.PAK",
+ "VOC.PAK"
+};
+
+static const StringListProvider k2SeqplayPakFilesDOSProvider = { ARRAYSIZE(k2SeqplayPakFilesDOS), k2SeqplayPakFilesDOS };
+
+static const char *const k2SeqplaySfxFilesDOS[33] = {
+ "intro1",
+ "intro2",
+ "intro3",
+ "intro4",
+ "intro5",
+ "intro6",
+ "intro7",
+ "intro8",
+ "intro9",
+ "intro10",
+ "intro11",
+ "intro12",
+ "glow",
+ "asong",
+ "crowcaw",
+ "eyerub2",
+ "pluck3",
+ "rodnreel",
+ "frog1",
+ "scavmov2",
+ "lambmom3",
+ "lambkid1",
+ "thunder2",
+ "thunder3",
+ "wind6",
+ "h2odrop2",
+ "gasleak",
+ "polgulp1",
+ "hndslap1",
+ "burp1",
+ "scream1",
+ "theend",
+ ""
+};
+
+static const StringListProvider k2SeqplaySfxFilesDOSProvider = { ARRAYSIZE(k2SeqplaySfxFilesDOS), k2SeqplaySfxFilesDOS };
+
+static const char *const k2SeqplayIntroTracksDOS[2] = {
+ "k2intro",
+ "k2intro"
+};
+
+static const StringListProvider k2SeqplayIntroTracksDOSProvider = { ARRAYSIZE(k2SeqplayIntroTracksDOS), k2SeqplayIntroTracksDOS };
+
+static const char *const k2SeqplayFinaleTracksDOS[2] = {
+ "k2finale",
+ "k2finale"
+};
+
+static const StringListProvider k2SeqplayFinaleTracksDOSProvider = { ARRAYSIZE(k2SeqplayFinaleTracksDOS), k2SeqplayFinaleTracksDOS };
+
+static const HoFSequence k2SeqplaySeqDataDOSSeq[16] = {
+ { 0x0002, "", "virgin.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0064, 0, 0, 0x001E },
+ { 0x0001, "westwood.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0012, 0x0006, 0, 0, 0x00A0 },
+ { 0x0001, "title.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001A, 0x0006, 0, 0, 0x000A },
+ { 0x0002, "", "over.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "library.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "hand.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x005A },
+ { 0x0001, "point.wsa", "", 4, 8, 0xFFFF, 0xFFFF, 0x0000, 0x0026, 0x0007, 0, 0, 0x00C8 },
+ { 0x0001, "zanfaun.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0033, 0x0010, 0, 0, 0x00F0 },
+ { 0x0001, "funters.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "ferb.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x0010, 0, 0, 0x001E },
+ { 0x0001, "fish.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0038, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "fheep.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "farmer.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0016, 0x000C, 0, 0, 0x0064 },
+ { 0x0001, "fuards.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0018, 0x000E, 0, 0, 0x001E },
+ { 0x0001, "firates.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0025, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "frash.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000C, 0x000A, 0, 0, 0x0154 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSSeqNestedControl7[18] = {
+ { 0, 10 },
+ { 1, 10 },
+ { 2, 10 },
+ { 3, 10 },
+ { 4, 10 },
+ { 5, 10 },
+ { 6, 10 },
+ { 7, 10 },
+ { 8, 10 },
+ { 9, 10 },
+ { 8, 10 },
+ { 7, 10 },
+ { 6, 10 },
+ { 5, 40 },
+ { 4, 10 },
+ { 3, 10 },
+ { 2, 10 },
+ { 1, 10 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSSeqNestedControl10[17] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 6 },
+ { 6, 6 },
+ { 7, 6 },
+ { 8, 6 },
+ { 9, 6 },
+ { 10, 6 },
+ { 11, 6 },
+ { 11, 12 },
+ { 12, 12 },
+ { 13, 12 },
+ { 12, 12 },
+ { 11, 12 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSSeqNestedControl11[9] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 64 },
+ { 5, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSSeqNestedControl12[16] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSSeqNestedControl13[5] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 1, 6 },
+ { 0, 1 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSSeqNestedControl14[8] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 2, 6 },
+ { 1, 6 }
+};
+
+static const HoFNestedSequence k2SeqplaySeqDataDOSSeqNested[15] = {
+ { 0x000C, "figgle.wsa", 0, 3, 60, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over1.wsa", 0, 10, 10, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over2.wsa", 0, 11, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "forest.wsa", 0, 22, 6, 0, 0, 0, NULL, 1, 3 },
+ { 0x0008, "dragon.wsa", 0, 11, 6, 0, 0, 0, NULL, 2, 0 },
+ { 0x0002, "darm.wsa", 0, 19, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "library.wsa", 0, 33, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x002A, "library.wsa", 0, 18, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSSeqNestedControl7), k2SeqplaySeqDataDOSSeqNestedControl7, 0, 0 },
+ { 0x000A, "marco.wsa", 0, 37, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "hand1a.wsa", 0, 34, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x002A, "hand1b.wsa", 0, 16, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSSeqNestedControl10), k2SeqplaySeqDataDOSSeqNestedControl10, 0, 0 },
+ { 0x002A, "hand1c.wsa", 0, 9, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSSeqNestedControl11), k2SeqplaySeqDataDOSSeqNestedControl11, 0, 0 },
+ { 0x002C, "hand2.wsa", 0, 2, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSSeqNestedControl12), k2SeqplaySeqDataDOSSeqNestedControl12, 5, 0 },
+ { 0x002C, "hand3.wsa", 0, 4, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSSeqNestedControl13), k2SeqplaySeqDataDOSSeqNestedControl13, 5, 0 },
+ { 0x002C, "hand4.wsa", 0, 8, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSSeqNestedControl14), k2SeqplaySeqDataDOSSeqNestedControl14, 5, 0 }
+};
+
+static const HoFSequenceProvider k2SeqplaySeqDataDOSProvider = { ARRAYSIZE(k2SeqplaySeqDataDOSSeq), k2SeqplaySeqDataDOSSeq, ARRAYSIZE(k2SeqplaySeqDataDOSSeqNested), k2SeqplaySeqDataDOSSeqNested };
+
+static const char *const k2IngamePakFilesDOS[108] = {
+ "MISC_EMC.PAK",
+ "VOC.PAK",
+ "MISC_CPS.PAK",
+ "OTHER.PAK",
+ "COST1_SH.PAK",
+ "COST2_SH.PAK",
+ "COST3_SH.PAK",
+ "COST4_SH.PAK",
+ "COST5_SH.PAK",
+ "COST6_SH.PAK",
+ "COST7_SH.PAK",
+ "COST8_SH.PAK",
+ "COST9_SH.PAK",
+ "DRIVERS.PAK",
+ "CAULDRON.PAK",
+ "AUDIO.PAK",
+ "ALLEY.PAK",
+ "ALTAR.PAK",
+ "ANCHOR.PAK",
+ "BRIDGE.PAK",
+ "CELLAR.PAK",
+ "CLEARNG.PAK",
+ "CLIFF.PAK",
+ "CLOSE.PAK",
+ "CRICKET.PAK",
+ "CROC.PAK",
+ "DINOA.PAK",
+ "DINOB.PAK",
+ "DINOC.PAK",
+ "DINOD.PAK",
+ "DOCK.PAK",
+ "DOOR.PAK",
+ "FALL.PAK",
+ "FATE.PAK",
+ "FERRY.PAK",
+ "FIGHT.PAK",
+ "FISHER.PAK",
+ "FLOAT.PAK",
+ "FLYTRAP.PAK",
+ "FOOT.PAK",
+ "GARDEN.PAK",
+ "GEARS.PAK",
+ "GNARL.PAK",
+ "HANOI.PAK",
+ "HOLE.PAK",
+ "INCAVE.PAK",
+ "INGATE.PAK",
+ "INHERB.PAK",
+ "INHOME.PAK",
+ "INJAIL.PAK",
+ "INSHOP.PAK",
+ "INSTORE.PAK",
+ "ISLE.PAK",
+ "JUNGLE.PAK",
+ "MARKHME.PAK",
+ "MEADOW.PAK",
+ "MYSTRM.PAK",
+ "NEST.PAK",
+ "ONBOAT.PAK",
+ "OUTCAVE.PAK",
+ "OUTFARM.PAK",
+ "OUTGATE.PAK",
+ "OUTHERB.PAK",
+ "OUTHOME.PAK",
+ "PHONE_A.PAK",
+ "PHONE_B.PAK",
+ "PHONE_C.PAK",
+ "PHONE_D.PAK",
+ "QUICK.PAK",
+ "RAINA.PAK",
+ "RAINB.PAK",
+ "RAT.PAK",
+ "ROAD.PAK",
+ "ROPE.PAK",
+ "SCORCH.PAK",
+ "SKULL.PAK",
+ "SKY.PAK",
+ "STATION.PAK",
+ "STREET.PAK",
+ "SULFUR.PAK",
+ "TAVERN.PAK",
+ "TIMBER.PAK",
+ "TRAM.PAK",
+ "TREE.PAK",
+ "VOLC_A.PAK",
+ "VOLC_B.PAK",
+ "VOLC_C.PAK",
+ "VOLC_D.PAK",
+ "VOLC_E.PAK",
+ "VOLC_F.PAK",
+ "VOLC_G.PAK",
+ "VOLC_H.PAK",
+ "VOLC_I.PAK",
+ "VOLC_J.PAK",
+ "VOLC_K.PAK",
+ "VOLC_L.PAK",
+ "VOLC_M.PAK",
+ "VOLC_N.PAK",
+ "VOLC_O.PAK",
+ "VOLC_P.PAK",
+ "VOLCANO.PAK",
+ "WHARF.PAK",
+ "WHEEL.PAK",
+ "GEARS2.PAK",
+ "GEARS3.PAK",
+ "OUTCAVE2.PAK",
+ "INJAIL2.PAK",
+ "TREE2.PAK"
+};
+
+static const StringListProvider k2IngamePakFilesDOSProvider = { ARRAYSIZE(k2IngamePakFilesDOS), k2IngamePakFilesDOS };
+
+static const char *const k2IngameSfxFilesDOS[178] = {
+ "ALCHEMY2",
+ "BIGSLAM",
+ "BITE1",
+ "BLINK1",
+ "BOING1",
+ "BUBBLE1",
+ "BUBBLE2",
+ "BURP1",
+ "BUTTON6",
+ "CAULDRN2",
+ "CHEST",
+ "CLOTHES1",
+ "CROCLAF4",
+ "CRY1",
+ "CRY2",
+ "DOORMTCL",
+ "DOORMTOP",
+ "DOORWDCL",
+ "DOORWDOP",
+ "DRUM1",
+ "DRUM2",
+ "DRUM3",
+ "DRUM4",
+ "DRUM5",
+ "DRUM6",
+ "DRUM7",
+ "EYERUB2",
+ "FALL1",
+ "FALL3",
+ "FNGRSNAP",
+ "FORMSPL1",
+ "FROG1",
+ "FROGMIX2",
+ "GASLEAK",
+ "GLOWY1",
+ "GOOD3",
+ "GOOD5",
+ "GROWTWIG",
+ "H2ODROP2",
+ "H2OPLANT",
+ "HACHUCKD",
+ "HAYFALL2",
+ "HAYSRCH4",
+ "ICECUBE",
+ "KEYOPEN",
+ "LAMBKID1",
+ "LAMBMOM3",
+ "LAUGH1",
+ "LAUGH3",
+ "LAUGH4",
+ "LIZLISP",
+ "MAKESPL1",
+ "MSTDOOM1",
+ "ORCMOVE",
+ "PLUCK3",
+ "POLGULP1",
+ "PORTCUL",
+ "POURH20",
+ "RIP2",
+ "RODNREEL",
+ "ROWBOAT1",
+ "RUCKUS1",
+ "SCAVMOV2",
+ "SCRATCH1",
+ "SNAKSPEL",
+ "SNEEZE1",
+ "SNIFF1",
+ "SNOREIN3",
+ "SNOROUT",
+ "SPLASH1",
+ "SQUEAK1",
+ "SQUEAK2",
+ "SQUEAK3",
+ "SQUISH1",
+ "SQUISH2",
+ "STEAM",
+ "STEAM3",
+ "STRETCH1",
+ "SWING",
+ "TREZA1",
+ "TURNPAG2",
+ "TWIGSNAP",
+ "UGH1",
+ "WHEEL4",
+ "WINGS1",
+ "YAWN1",
+ "ZOOM5",
+ "FILBOTL",
+ "H2OPOUR1",
+ "JAILDOR1",
+ "JAILLOK1",
+ "CASHREG1",
+ "SWISH1",
+ "TURNBOAT",
+ "CLAPPING",
+ "CRUNCH1",
+ "WHEEL6",
+ "LITEMAG",
+ "SHELDOWN",
+ "SHELSLID",
+ "ZOW2",
+ "ZANLOOP1",
+ "SCREECH2",
+ "PANTING",
+ "TREX1",
+ "TREX5",
+ "TREX3",
+ "QUAKE",
+ "WRINGH2O",
+ "SPLAT2",
+ "OCEAN1",
+ "SPLAT3",
+ "CROCLAF5",
+ "FALL5",
+ "ZCMON2",
+ "ZWAIT3",
+ "ZNO2",
+ "CROCLAF7",
+ "CRICKET1",
+ "FIREBRTH",
+ "COW2",
+ "SAP2",
+ "PMTLHI",
+ "FROGSIGH",
+ "CRICEND",
+ "CRY3",
+ "CRY4",
+ "SHROOM1",
+ "DRIP1",
+ "SWIM4",
+ "CUCKOO2",
+ "PUNCH1",
+ "SNORT3",
+ "STAMPER2",
+ "WALLFALL",
+ "WOODFAL1",
+ "SPRAY1",
+ "OHNO1",
+ "YAHOO1",
+ "YIPEE1",
+ "WIND1",
+ "WIND3",
+ "WIND6",
+ "BLOWUP2",
+ "BOATLOP2",
+ "ZGIGGL1",
+ "ZCOUGH1",
+ "CRUSH",
+ "ALARM3",
+ "APPLEAT",
+ "BABYCRY1",
+ "BABYLAF1",
+ "BABYLIK1",
+ "GEARMX3",
+ "GLASBRK2",
+ "HANDKIL1",
+ "HNDSLAP1",
+ "ICEPICK1",
+ "KISS3",
+ "LOLIFAL1",
+ "PAGEBURN",
+ "PRTYHORN",
+ "SCREAM1",
+ "SPARKHIT",
+ "SPRING2",
+ "ZANLAND1",
+ "BIGBOW",
+ "BOWFORM",
+ "BULBHIT",
+ "EYELITE",
+ "ROOFBOW",
+ "FBIGFOT1",
+ "BIGFOOT4",
+ "DORSTNCL",
+ "CROWCAW",
+ "THUNDER2",
+ "THUNDER3",
+ "TOILET"
+};
+
+static const StringListProvider k2IngameSfxFilesDOSProvider = { ARRAYSIZE(k2IngameSfxFilesDOS), k2IngameSfxFilesDOS };
+
+static const byte k2IngameSfxIndexDOS[856] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0x47, 0x00, 0x05, 0x00, 0x22, 0x00, 0x00, 0x00,
+ 0x1F, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
+ 0x36, 0x00, 0x05, 0x00, 0x07, 0x00, 0x00, 0x00,
+ 0x3F, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x45, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00,
+ 0x7B, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00,
+ 0x3C, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00,
+ 0x4E, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x00, 0x00, 0x43, 0x00, 0x04, 0x00,
+ 0x56, 0x00, 0x00, 0x00, 0x40, 0x00, 0x05, 0x00,
+ 0x40, 0x00, 0x05, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x64, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00,
+ 0x12, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00,
+ 0x1D, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x49, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00,
+ 0x09, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
+ 0x0D, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
+ 0x0C, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00,
+ 0x21, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
+ 0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0x1B, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
+ 0x15, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
+ 0x19, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00,
+ 0x1A, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
+ 0x2A, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00,
+ 0x2D, 0x00, 0x00, 0x00, 0x27, 0x00, 0x05, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x46, 0x00, 0x05, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
+ 0x34, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
+ 0x4F, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
+ 0x0F, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x78, 0x00, 0x06, 0x00,
+ 0x50, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x33, 0x00, 0x06, 0x00, 0x3A, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x1E, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00,
+ 0x23, 0x00, 0x05, 0x00, 0x24, 0x00, 0x05, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
+ 0x48, 0x00, 0x05, 0x00, 0x20, 0x00, 0x00, 0x00,
+ 0x63, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x7A, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00,
+ 0x10, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00,
+ 0x5D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00,
+ 0x30, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
+ 0x61, 0x00, 0x05, 0x00, 0x58, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x65, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00,
+ 0x67, 0x00, 0x00, 0x00, 0x68, 0x00, 0x05, 0x00,
+ 0x69, 0x00, 0x05, 0x00, 0x6A, 0x00, 0x05, 0x00,
+ 0x01, 0x00, 0x05, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x90, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x6F, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x7F, 0x00, 0x06, 0x00, 0x7D, 0x00, 0x00, 0x00,
+ 0x7E, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x80, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00,
+ 0x84, 0x00, 0x00, 0x00, 0x83, 0x00, 0x00, 0x00,
+ 0x82, 0x00, 0x05, 0x00, 0x86, 0x00, 0x00, 0x00,
+ 0x88, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00,
+ 0x8A, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00,
+ 0x87, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x00, 0x00,
+ 0x8D, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x00, 0x00,
+ 0x8F, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00,
+ 0x93, 0x00, 0x05, 0x00, 0x94, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0x96, 0x00, 0x05, 0x00,
+ 0x97, 0x00, 0x00, 0x00, 0x98, 0x00, 0x04, 0x00,
+ 0x99, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00, 0x00,
+ 0x9B, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00,
+ 0x9D, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x00, 0x00,
+ 0x9F, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00,
+ 0xA1, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00,
+ 0xA3, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00,
+ 0xA5, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x00,
+ 0xA7, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00,
+ 0xA9, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00, 0x00,
+ 0xAB, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x00, 0x00,
+ 0xAD, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x05, 0x00,
+ 0xAF, 0x00, 0x00, 0x00, 0xB0, 0x00, 0x00, 0x00,
+ 0xB1, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k2IngameSfxIndexDOSProvider = { ARRAYSIZE(k2IngameSfxIndexDOS), k2IngameSfxIndexDOS };
+
+static const char *const k2IngameTracksDOS[15] = {
+ "K2TEST1",
+ "K2TEST2",
+ "K2TEST3",
+ "K2TEST4",
+ "K2TEST5",
+ "K2TEST6",
+ "K2TEST7",
+ "K2TEST8",
+ "K2TEST9",
+ "K2TEST10",
+ "K2TEST11",
+ "K2TEST12",
+ "K2TEST13",
+ "K2TEST14",
+ "K2TEST15"
+};
+
+static const StringListProvider k2IngameTracksDOSProvider = { ARRAYSIZE(k2IngameTracksDOS), k2IngameTracksDOS };
+
+static const byte k2IngameTalkObjIndexDOS[120] = {
+ 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6C, 0x65,
+ 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00,
+ 0x18, 0x00, 0x26, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04, 0x00,
+ 0x05, 0x00, 0x06, 0x00, 0x07, 0x00, 0x08, 0x00,
+ 0x09, 0x00, 0x0A, 0x00, 0x11, 0x00, 0x12, 0x00,
+ 0x13, 0x00, 0x14, 0x00, 0x15, 0x00, 0x2A, 0x00,
+ 0x17, 0x00, 0x18, 0x00, 0x19, 0x00, 0x1A, 0x00,
+ 0x1B, 0x00, 0x1C, 0x00, 0x1D, 0x00, 0x1E, 0x00,
+ 0x1F, 0x00, 0x20, 0x00, 0x21, 0x00, 0x22, 0x00,
+ 0x23, 0x00, 0x24, 0x00, 0x30, 0x00, 0x35, 0x00,
+ 0x36, 0x00, 0x37, 0x00, 0x39, 0x00, 0x3A, 0x00,
+ 0x3B, 0x00, 0x3D, 0x00, 0x3E, 0x00, 0x3F, 0x00,
+ 0x40, 0x00, 0x41, 0x00, 0x42, 0x00, 0x43, 0x00,
+ 0x44, 0x00, 0x45, 0x00, 0x46, 0x00, 0x47, 0x00
+};
+
+static const ByteProvider k2IngameTalkObjIndexDOSProvider = { ARRAYSIZE(k2IngameTalkObjIndexDOS), k2IngameTalkObjIndexDOS };
+
+static const FrameControl k2IngameShapeAnimDataDOS0FrameControl[12] = {
+ { 0x0006, 0x00F0 },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS1FrameControl[6] = {
+ { 0x0002, 0x012C },
+ { 0x002D, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002F, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002D, 0x012C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS2FrameControl[6] = {
+ { 0x000B, 0x0258 },
+ { 0x0030, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0032, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0030, 0x0005 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS3FrameControl[4] = {
+ { 0x001C, 0x0014 },
+ { 0x004E, 0x0014 },
+ { 0x004F, 0x0014 },
+ { 0x0050, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS4FrameControl[4] = {
+ { 0x0017, 0x0007 },
+ { 0x0051, 0x0007 },
+ { 0x0052, 0x0007 },
+ { 0x0053, 0x0007 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS5FrameControl[4] = {
+ { 0x0016, 0x0014 },
+ { 0x0054, 0x0014 },
+ { 0x0055, 0x0014 },
+ { 0x0056, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS6FrameControl[4] = {
+ { 0x003A, 0x003C },
+ { 0x0057, 0x003C },
+ { 0x0058, 0x003C },
+ { 0x0059, 0x003C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS7FrameControl[4] = {
+ { 0x001A, 0x0032 },
+ { 0x005A, 0x0032 },
+ { 0x005B, 0x0032 },
+ { 0x005C, 0x0032 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS8FrameControl[4] = {
+ { 0x006D, 0x000C },
+ { 0x006E, 0x000C },
+ { 0x006F, 0x000C },
+ { 0x0070, 0x000C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS9FrameControl[4] = {
+ { 0x0079, 0x0008 },
+ { 0x007A, 0x0008 },
+ { 0x007B, 0x0008 },
+ { 0x007C, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS10FrameControl[4] = {
+ { 0x007E, 0x0008 },
+ { 0x007F, 0x0008 },
+ { 0x0080, 0x0008 },
+ { 0x0081, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS11FrameControl[6] = {
+ { 0x0091, 0x01A4 },
+ { 0x0092, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0094, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0092, 0x0004 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS12FrameControl[4] = {
+ { 0x0095, 0x0006 },
+ { 0x0096, 0x0006 },
+ { 0x0097, 0x0006 },
+ { 0x0098, 0x0006 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOS13FrameControl[4] = {
+ { 0x0099, 0x002D },
+ { 0x009A, 0x002D },
+ { 0x009B, 0x002D },
+ { 0x009C, 0x002D }
+};
+
+static const ItemAnimDefinition k2IngameShapeAnimDataDOS[14] = {
+ { 6, 12, k2IngameShapeAnimDataDOS0FrameControl },
+ { 2, 6, k2IngameShapeAnimDataDOS1FrameControl },
+ { 11, 6, k2IngameShapeAnimDataDOS2FrameControl },
+ { 28, 4, k2IngameShapeAnimDataDOS3FrameControl },
+ { 23, 4, k2IngameShapeAnimDataDOS4FrameControl },
+ { 22, 4, k2IngameShapeAnimDataDOS5FrameControl },
+ { 58, 4, k2IngameShapeAnimDataDOS6FrameControl },
+ { 26, 4, k2IngameShapeAnimDataDOS7FrameControl },
+ { 109, 4, k2IngameShapeAnimDataDOS8FrameControl },
+ { 121, 4, k2IngameShapeAnimDataDOS9FrameControl },
+ { 126, 4, k2IngameShapeAnimDataDOS10FrameControl },
+ { 145, 6, k2IngameShapeAnimDataDOS11FrameControl },
+ { 149, 4, k2IngameShapeAnimDataDOS12FrameControl },
+ { 153, 4, k2IngameShapeAnimDataDOS13FrameControl }
+};
+
+static const ItemAnimDefinitionProvider k2IngameShapeAnimDataDOSProvider = { ARRAYSIZE(k2IngameShapeAnimDataDOS), k2IngameShapeAnimDataDOS };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cd.h b/devtools/create_kyradat/resources/hof_dos_cd.h
new file mode 100644
index 0000000000..17c401c254
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cd.h
@@ -0,0 +1,1035 @@
+static const char *const k2SeqplayPakFilesDOSCD[6] = {
+ "INTROGEN.PAK",
+ "TALKENG.PAK",
+ "TALKFRE.PAK",
+ "TALKGER.PAK",
+ "VOC.PAK",
+ "INTROTLK.PAK"
+};
+
+static const StringListProvider k2SeqplayPakFilesDOSCDProvider = { ARRAYSIZE(k2SeqplayPakFilesDOSCD), k2SeqplayPakFilesDOSCD };
+
+static const byte k2SeqplayCreditsDOSCD[2792] = {
+ 0x0D, 0x0D, 0x02, 0x54, 0x48, 0x45, 0x20, 0x50,
+ 0x4C, 0x41, 0x59, 0x45, 0x52, 0x53, 0x0D, 0x0D,
+ 0x03, 0x5A, 0x61, 0x6E, 0x74, 0x68, 0x69, 0x61,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x42, 0x4F, 0x4E,
+ 0x4E, 0x49, 0x45, 0x20, 0x4C, 0x59, 0x4E, 0x4E,
+ 0x20, 0x54, 0x4F, 0x55, 0x50, 0x53, 0x0D, 0x03,
+ 0x46, 0x61, 0x75, 0x6E, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x45, 0x4C, 0x45, 0x4E, 0x41, 0x20, 0x46,
+ 0x45, 0x52, 0x52, 0x41, 0x4E, 0x54, 0x45, 0x0D,
+ 0x03, 0x4D, 0x61, 0x72, 0x6B, 0x6F, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x45, 0x52, 0x49, 0x43, 0x20,
+ 0x52, 0x41, 0x4E, 0x44, 0x41, 0x4C, 0x4C, 0x0D,
+ 0x03, 0x4E, 0x61, 0x72, 0x72, 0x61, 0x74, 0x6F,
+ 0x72, 0x20, 0x20, 0x20, 0x05, 0x04, 0x48, 0x69,
+ 0x73, 0x20, 0x52, 0x6F, 0x79, 0x61, 0x6C, 0x20,
+ 0x48, 0x69, 0x67, 0x68, 0x6E, 0x65, 0x73, 0x73,
+ 0x0D, 0x05, 0x04, 0x42, 0x52, 0x41, 0x4E, 0x44,
+ 0x4F, 0x4E, 0x2C, 0x20, 0x4B, 0x69, 0x6E, 0x67,
+ 0x20, 0x6F, 0x66, 0x0D, 0x05, 0x04, 0x4B, 0x79,
+ 0x72, 0x61, 0x6E, 0x64, 0x69, 0x61, 0x2C, 0x20,
+ 0x44, 0x65, 0x66, 0x65, 0x6E, 0x64, 0x65, 0x72,
+ 0x20, 0x6F, 0x66, 0x0D, 0x05, 0x04, 0x74, 0x68,
+ 0x65, 0x20, 0x4B, 0x79, 0x72, 0x61, 0x67, 0x65,
+ 0x6D, 0x2C, 0x20, 0x56, 0x61, 0x6E, 0x71, 0x75,
+ 0x69, 0x73, 0x68, 0x65, 0x72, 0x0D, 0x05, 0x04,
+ 0x6F, 0x66, 0x20, 0x4D, 0x61, 0x6C, 0x63, 0x6F,
+ 0x6C, 0x6D, 0x2C, 0x20, 0x50, 0x61, 0x74, 0x72,
+ 0x6F, 0x6E, 0x20, 0x6F, 0x66, 0x0D, 0x05, 0x04,
+ 0x74, 0x68, 0x65, 0x20, 0x41, 0x72, 0x74, 0x73,
+ 0x2C, 0x20, 0x57, 0x65, 0x61, 0x72, 0x65, 0x72,
+ 0x20, 0x6F, 0x66, 0x20, 0x74, 0x68, 0x65, 0x0D,
+ 0x05, 0x04, 0x53, 0x61, 0x6E, 0x64, 0x61, 0x6C,
+ 0x2C, 0x20, 0x61, 0x6E, 0x64, 0x20, 0x4D, 0x61,
+ 0x6A, 0x6F, 0x72, 0x69, 0x74, 0x79, 0x0D, 0x05,
+ 0x04, 0x53, 0x74, 0x6F, 0x63, 0x6B, 0x20, 0x4F,
+ 0x77, 0x6E, 0x65, 0x72, 0x20, 0x61, 0x6E, 0x64,
+ 0x20, 0x43, 0x45, 0x4F, 0x20, 0x6F, 0x66, 0x0D,
+ 0x05, 0x04, 0x54, 0x69, 0x6D, 0x62, 0x65, 0x72,
+ 0x6D, 0x69, 0x73, 0x74, 0x20, 0x43, 0x61, 0x73,
+ 0x75, 0x61, 0x6C, 0x0D, 0x05, 0x04, 0x46, 0x6F,
+ 0x6F, 0x74, 0x77, 0x65, 0x61, 0x72, 0x2C, 0x20,
+ 0x49, 0x6E, 0x63, 0x2E, 0x0D, 0x03, 0x54, 0x68,
+ 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4D, 0x49, 0x43, 0x48, 0x41,
+ 0x45, 0x4C, 0x20, 0x4B, 0x55, 0x43, 0x41, 0x4E,
+ 0x0D, 0x0D, 0x0D, 0x02, 0x44, 0x41, 0x52, 0x4B,
+ 0x4D, 0x4F, 0x4F, 0x52, 0x20, 0x53, 0x57, 0x41,
+ 0x4D, 0x50, 0x0D, 0x0D, 0x03, 0x48, 0x65, 0x72,
+ 0x62, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x43,
+ 0x48, 0x41, 0x52, 0x4C, 0x45, 0x53, 0x20, 0x4D,
+ 0x4F, 0x53, 0x48, 0x45, 0x52, 0x0D, 0x03, 0x42,
+ 0x72, 0x65, 0x75, 0x74, 0x68, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x42, 0x52, 0x49, 0x41, 0x4E,
+ 0x20, 0x53, 0x54, 0x52, 0x4F, 0x4D, 0x0D, 0x03,
+ 0x53, 0x77, 0x61, 0x6D, 0x70, 0x20, 0x52, 0x61,
+ 0x74, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x45,
+ 0x52, 0x49, 0x43, 0x20, 0x4D, 0x41, 0x52, 0x54,
+ 0x49, 0x4E, 0x0D, 0x03, 0x44, 0x72, 0x61, 0x67,
+ 0x6F, 0x6E, 0x66, 0x6C, 0x79, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x43, 0x4C, 0x49, 0x46, 0x46,
+ 0x20, 0x4C, 0x41, 0x57, 0x52, 0x45, 0x4E, 0x43,
+ 0x45, 0x0D, 0x03, 0x46, 0x69, 0x73, 0x68, 0x65,
+ 0x72, 0x6D, 0x61, 0x6E, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x45, 0x52, 0x49, 0x43, 0x20, 0x4D,
+ 0x41, 0x52, 0x54, 0x49, 0x4E, 0x0D, 0x03, 0x4F,
+ 0x74, 0x68, 0x65, 0x72, 0x20, 0x46, 0x69, 0x73,
+ 0x68, 0x65, 0x72, 0x6D, 0x61, 0x6E, 0x20, 0x20,
+ 0x20, 0x20, 0x05, 0x04, 0x52, 0x41, 0x59, 0x20,
+ 0x46, 0x41, 0x56, 0x45, 0x52, 0x4F, 0x0D, 0x03,
+ 0x54, 0x6F, 0x61, 0x64, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x4D, 0x41, 0x52, 0x43, 0x55, 0x53,
+ 0x20, 0x56, 0x41, 0x55, 0x47, 0x48, 0x4E, 0x0D,
+ 0x03, 0x4F, 0x74, 0x68, 0x65, 0x72, 0x20, 0x54,
+ 0x6F, 0x61, 0x64, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x42, 0x49, 0x4C, 0x4C, 0x20, 0x43, 0x4F,
+ 0x4C, 0x4C, 0x49, 0x4E, 0x53, 0x0D, 0x03, 0x54,
+ 0x68, 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x4D, 0x41, 0x52,
+ 0x49, 0x41, 0x20, 0x44, 0x45, 0x4C, 0x20, 0x4D,
+ 0x41, 0x52, 0x20, 0x4C, 0x45, 0x47, 0x47, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x4D, 0x4F, 0x52, 0x4E, 0x49,
+ 0x4E, 0x47, 0x4D, 0x49, 0x53, 0x54, 0x20, 0x56,
+ 0x41, 0x4C, 0x4C, 0x45, 0x59, 0x0D, 0x0D, 0x03,
+ 0x46, 0x61, 0x72, 0x6D, 0x65, 0x72, 0x20, 0x47,
+ 0x72, 0x65, 0x65, 0x6E, 0x62, 0x65, 0x72, 0x72,
+ 0x79, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x45,
+ 0x52, 0x49, 0x43, 0x20, 0x4D, 0x41, 0x52, 0x54,
+ 0x49, 0x4E, 0x0D, 0x03, 0x47, 0x68, 0x6F, 0x73,
+ 0x74, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x4D,
+ 0x41, 0x52, 0x43, 0x55, 0x53, 0x20, 0x56, 0x41,
+ 0x55, 0x47, 0x48, 0x4E, 0x0D, 0x03, 0x53, 0x63,
+ 0x61, 0x72, 0x65, 0x63, 0x72, 0x6F, 0x77, 0x20,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x4D, 0x41, 0x52,
+ 0x43, 0x55, 0x53, 0x20, 0x56, 0x41, 0x55, 0x47,
+ 0x48, 0x4E, 0x0D, 0x03, 0x46, 0x61, 0x74, 0x20,
+ 0x47, 0x75, 0x61, 0x72, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4D, 0x49, 0x43, 0x48, 0x41,
+ 0x45, 0x4C, 0x20, 0x4C, 0x45, 0x47, 0x47, 0x0D,
+ 0x03, 0x53, 0x6B, 0x69, 0x6E, 0x6E, 0x79, 0x20,
+ 0x47, 0x75, 0x61, 0x72, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x52, 0x49, 0x43, 0x4B, 0x20,
+ 0x22, 0x43, 0x4F, 0x43, 0x4F, 0x22, 0x20, 0x47,
+ 0x55, 0x53, 0x48, 0x0D, 0x03, 0x54, 0x68, 0x65,
+ 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4D, 0x49, 0x43, 0x48, 0x41,
+ 0x45, 0x4C, 0x20, 0x47, 0x52, 0x41, 0x59, 0x46,
+ 0x4F, 0x52, 0x44, 0x0D, 0x0D, 0x0D, 0x02, 0x54,
+ 0x4F, 0x57, 0x4E, 0x45, 0x20, 0x4F, 0x46, 0x20,
+ 0x48, 0x49, 0x47, 0x48, 0x4D, 0x4F, 0x4F, 0x4E,
+ 0x0D, 0x0D, 0x03, 0x53, 0x68, 0x65, 0x72, 0x69,
+ 0x66, 0x66, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04,
+ 0x52, 0x41, 0x59, 0x20, 0x46, 0x41, 0x56, 0x45,
+ 0x52, 0x4F, 0x0D, 0x03, 0x43, 0x61, 0x70, 0x27,
+ 0x6E, 0x20, 0x42, 0x6F, 0x62, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x42, 0x52, 0x49, 0x41, 0x4E,
+ 0x20, 0x53, 0x54, 0x52, 0x4F, 0x4D, 0x0D, 0x03,
+ 0x4F, 0x63, 0x74, 0x6F, 0x70, 0x75, 0x73, 0x20,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x43, 0x4C, 0x49,
+ 0x46, 0x46, 0x20, 0x4C, 0x41, 0x57, 0x52, 0x45,
+ 0x4E, 0x43, 0x45, 0x0D, 0x03, 0x50, 0x69, 0x72,
+ 0x61, 0x74, 0x65, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x44, 0x4F, 0x55, 0x47, 0x20, 0x42, 0x41,
+ 0x4B, 0x45, 0x52, 0x0D, 0x03, 0x4F, 0x74, 0x68,
+ 0x65, 0x72, 0x20, 0x50, 0x69, 0x72, 0x61, 0x74,
+ 0x65, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x45,
+ 0x52, 0x49, 0x43, 0x20, 0x4D, 0x41, 0x52, 0x54,
+ 0x49, 0x4E, 0x0D, 0x03, 0x41, 0x6E, 0x6F, 0x74,
+ 0x68, 0x65, 0x72, 0x20, 0x50, 0x69, 0x72, 0x61,
+ 0x74, 0x65, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04,
+ 0x45, 0x52, 0x49, 0x43, 0x20, 0x52, 0x41, 0x4E,
+ 0x44, 0x41, 0x4C, 0x4C, 0x0D, 0x03, 0x53, 0x71,
+ 0x75, 0x61, 0x77, 0x6B, 0x79, 0x20, 0x74, 0x68,
+ 0x65, 0x20, 0x50, 0x61, 0x72, 0x72, 0x6F, 0x74,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x43, 0x4C,
+ 0x49, 0x46, 0x46, 0x20, 0x4C, 0x41, 0x57, 0x52,
+ 0x45, 0x4E, 0x43, 0x45, 0x0D, 0x03, 0x53, 0x61,
+ 0x69, 0x6C, 0x6F, 0x72, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x54, 0x49, 0x4D, 0x20, 0x43, 0x4C,
+ 0x41, 0x52, 0x4B, 0x0D, 0x03, 0x4F, 0x74, 0x68,
+ 0x65, 0x72, 0x20, 0x53, 0x61, 0x69, 0x6C, 0x6F,
+ 0x72, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x4D,
+ 0x41, 0x52, 0x43, 0x55, 0x53, 0x20, 0x56, 0x41,
+ 0x55, 0x47, 0x48, 0x4E, 0x0D, 0x03, 0x54, 0x68,
+ 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20,
+ 0x20, 0x20, 0x05, 0x04, 0x4A, 0x45, 0x4E, 0x4E,
+ 0x59, 0x20, 0x4B, 0x55, 0x43, 0x41, 0x4E, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x56, 0x4F, 0x4C, 0x43, 0x41,
+ 0x4E, 0x49, 0x41, 0x0D, 0x0D, 0x03, 0x4A, 0x65,
+ 0x73, 0x73, 0x69, 0x63, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4A, 0x55, 0x4C, 0x49, 0x45,
+ 0x20, 0x43, 0x48, 0x49, 0x52, 0x49, 0x4C, 0x41,
+ 0x0D, 0x03, 0x53, 0x6D, 0x61, 0x72, 0x6D, 0x79,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x44, 0x4F,
+ 0x55, 0x47, 0x20, 0x42, 0x41, 0x4B, 0x45, 0x52,
+ 0x0D, 0x03, 0x42, 0x75, 0x72, 0x65, 0x61, 0x75,
+ 0x63, 0x72, 0x61, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x45, 0x52, 0x49, 0x43, 0x20, 0x52,
+ 0x41, 0x4E, 0x44, 0x41, 0x4C, 0x4C, 0x0D, 0x03,
+ 0x42, 0x75, 0x72, 0x65, 0x61, 0x75, 0x63, 0x72,
+ 0x61, 0x74, 0x72, 0x65, 0x73, 0x73, 0x20, 0x20,
+ 0x20, 0x20, 0x05, 0x04, 0x4A, 0x55, 0x4C, 0x49,
+ 0x45, 0x20, 0x42, 0x41, 0x4C, 0x53, 0x41, 0x4D,
+ 0x4F, 0x0D, 0x03, 0x4D, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x44, 0x45, 0x4E, 0x49, 0x53,
+ 0x45, 0x20, 0x53, 0x43, 0x48, 0x41, 0x46, 0x45,
+ 0x52, 0x0D, 0x03, 0x50, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4B, 0x45, 0x4E, 0x4E, 0x45,
+ 0x54, 0x48, 0x20, 0x4A, 0x2E, 0x20, 0x4B, 0x55,
+ 0x43, 0x41, 0x4E, 0x0D, 0x03, 0x54, 0x68, 0x65,
+ 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x52, 0x41, 0x4D, 0x49, 0x4E,
+ 0x20, 0x46, 0x41, 0x54, 0x48, 0x49, 0x45, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x45, 0x4E, 0x43, 0x48, 0x41,
+ 0x4E, 0x54, 0x45, 0x44, 0x20, 0x46, 0x4F, 0x52,
+ 0x45, 0x53, 0x54, 0x0D, 0x0D, 0x03, 0x4B, 0x6E,
+ 0x69, 0x67, 0x68, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x45, 0x52, 0x49, 0x43, 0x20,
+ 0x4D, 0x41, 0x52, 0x54, 0x49, 0x4E, 0x0D, 0x03,
+ 0x50, 0x65, 0x74, 0x72, 0x69, 0x66, 0x69, 0x65,
+ 0x64, 0x20, 0x54, 0x72, 0x65, 0x65, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x44, 0x4F, 0x55,
+ 0x47, 0x20, 0x42, 0x41, 0x4B, 0x45, 0x52, 0x0D,
+ 0x03, 0x55, 0x6E, 0x69, 0x6F, 0x6E, 0x20, 0x53,
+ 0x71, 0x75, 0x69, 0x72, 0x72, 0x65, 0x6C, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x54, 0x49,
+ 0x4D, 0x20, 0x43, 0x4C, 0x41, 0x52, 0x4B, 0x0D,
+ 0x03, 0x4D, 0x79, 0x73, 0x74, 0x69, 0x63, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x43, 0x48,
+ 0x41, 0x52, 0x4C, 0x45, 0x53, 0x20, 0x4D, 0x4F,
+ 0x53, 0x48, 0x45, 0x52, 0x0D, 0x03, 0x4F, 0x74,
+ 0x68, 0x65, 0x72, 0x20, 0x4D, 0x79, 0x73, 0x74,
+ 0x69, 0x63, 0x20, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x43, 0x4F, 0x4E, 0x4E, 0x45, 0x52, 0x20,
+ 0x46, 0x52, 0x45, 0x46, 0x46, 0x20, 0x43, 0x4F,
+ 0x43, 0x48, 0x52, 0x41, 0x4E, 0x0D, 0x03, 0x54,
+ 0x68, 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x4C, 0x59,
+ 0x4E, 0x44, 0x41, 0x20, 0x57, 0x41, 0x53, 0x4B,
+ 0x4F, 0x4D, 0x0D, 0x0D, 0x0D, 0x02, 0x41, 0x4C,
+ 0x50, 0x49, 0x4E, 0x49, 0x41, 0x0D, 0x0D, 0x03,
+ 0x41, 0x62, 0x6F, 0x6D, 0x69, 0x6E, 0x61, 0x62,
+ 0x6C, 0x65, 0x20, 0x53, 0x6E, 0x6F, 0x77, 0x6D,
+ 0x61, 0x6E, 0x20, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x44, 0x4F, 0x55, 0x47, 0x20, 0x42, 0x41,
+ 0x4B, 0x45, 0x52, 0x0D, 0x03, 0x4D, 0x6F, 0x6D,
+ 0x6D, 0x79, 0x20, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x44, 0x45, 0x4E, 0x49, 0x53, 0x45, 0x20,
+ 0x53, 0x43, 0x48, 0x41, 0x46, 0x45, 0x52, 0x0D,
+ 0x03, 0x42, 0x61, 0x62, 0x79, 0x20, 0x41, 0x6C,
+ 0x62, 0x65, 0x72, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x54, 0x48, 0x45, 0x4F, 0x44,
+ 0x4F, 0x52, 0x45, 0x20, 0x4D, 0x4F, 0x52, 0x52,
+ 0x49, 0x53, 0x0D, 0x03, 0x48, 0x75, 0x6E, 0x74,
+ 0x65, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x42, 0x49, 0x4C, 0x4C, 0x20, 0x43, 0x4F,
+ 0x4C, 0x4C, 0x49, 0x4E, 0x53, 0x0D, 0x03, 0x4F,
+ 0x74, 0x68, 0x65, 0x72, 0x20, 0x48, 0x75, 0x6E,
+ 0x74, 0x65, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x42, 0x4F, 0x42, 0x20, 0x42, 0x4C,
+ 0x4F, 0x4D, 0x47, 0x52, 0x45, 0x4E, 0x0D, 0x03,
+ 0x46, 0x6F, 0x6F, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x53, 0x50, 0x45, 0x45, 0x44,
+ 0x59, 0x20, 0x44, 0x41, 0x57, 0x4E, 0x20, 0x48,
+ 0x55, 0x4E, 0x54, 0x5A, 0x49, 0x4E, 0x47, 0x45,
+ 0x52, 0x0D, 0x03, 0x53, 0x74, 0x75, 0x6E, 0x74,
+ 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x05, 0x04, 0x44, 0x41, 0x4E, 0x49,
+ 0x45, 0x4C, 0x20, 0x4B, 0x55, 0x43, 0x41, 0x4E,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x02, 0x54, 0x48, 0x45, 0x20, 0x48, 0x41, 0x4E,
+ 0x44, 0x20, 0x4F, 0x46, 0x20, 0x46, 0x41, 0x54,
+ 0x45, 0x0D, 0x02, 0x54, 0x45, 0x41, 0x4D, 0x20,
+ 0x43, 0x44, 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x43,
+ 0x6F, 0x64, 0x65, 0x6A, 0x61, 0x6D, 0x6D, 0x65,
+ 0x72, 0x73, 0x0D, 0x02, 0x4D, 0x49, 0x4B, 0x45,
+ 0x20, 0x61, 0x6E, 0x64, 0x20, 0x4D, 0x49, 0x4B,
+ 0x45, 0x0D, 0x0D, 0x02, 0x56, 0x6F, 0x63, 0x61,
+ 0x6C, 0x20, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x69, 0x6F, 0x6E, 0x20, 0x62, 0x79, 0x0D, 0x02,
+ 0x4A, 0x4F, 0x45, 0x20, 0x4B, 0x55, 0x43, 0x41,
+ 0x4E, 0x0D, 0x0D, 0x02, 0x44, 0x69, 0x67, 0x69,
+ 0x74, 0x61, 0x6C, 0x20, 0x53, 0x61, 0x6D, 0x70,
+ 0x6C, 0x69, 0x6E, 0x67, 0x20, 0x62, 0x79, 0x0D,
+ 0x02, 0x50, 0x41, 0x54, 0x20, 0x43, 0x4F, 0x4C,
+ 0x4C, 0x49, 0x4E, 0x53, 0x20, 0x61, 0x6E, 0x64,
+ 0x20, 0x44, 0x57, 0x49, 0x47, 0x48, 0x54, 0x20,
+ 0x4F, 0x4B, 0x41, 0x48, 0x41, 0x52, 0x41, 0x0D,
+ 0x0D, 0x02, 0x41, 0x75, 0x64, 0x69, 0x6F, 0x20,
+ 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6F,
+ 0x6E, 0x20, 0x62, 0x79, 0x0D, 0x02, 0x50, 0x41,
+ 0x55, 0x4C, 0x20, 0x4D, 0x55, 0x44, 0x52, 0x41,
+ 0x0D, 0x0D, 0x02, 0x52, 0x65, 0x63, 0x6F, 0x72,
+ 0x64, 0x65, 0x64, 0x20, 0x61, 0x6E, 0x64, 0x20,
+ 0x45, 0x6E, 0x67, 0x69, 0x6E, 0x65, 0x65, 0x72,
+ 0x65, 0x64, 0x20, 0x62, 0x79, 0x0D, 0x02, 0x54,
+ 0x4F, 0x54, 0x4F, 0x20, 0x5A, 0x41, 0x52, 0x41,
+ 0x20, 0x61, 0x74, 0x20, 0x4D, 0x69, 0x64, 0x69,
+ 0x57, 0x6F, 0x72, 0x6B, 0x73, 0x0D, 0x0D, 0x02,
+ 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6C, 0x20,
+ 0x54, 0x65, 0x63, 0x68, 0x6E, 0x6F, 0x2D, 0x57,
+ 0x69, 0x7A, 0x61, 0x72, 0x64, 0x72, 0x79, 0x20,
+ 0x62, 0x79, 0x0D, 0x02, 0x53, 0x43, 0x4F, 0x54,
+ 0x54, 0x20, 0x42, 0x4F, 0x57, 0x45, 0x4E, 0x2C,
+ 0x20, 0x44, 0x41, 0x56, 0x49, 0x44, 0x20, 0x44,
+ 0x45, 0x54, 0x54, 0x4D, 0x45, 0x52, 0x2C, 0x0D,
+ 0x02, 0x61, 0x6E, 0x64, 0x20, 0x4A, 0x4F, 0x45,
+ 0x20, 0x42, 0x4F, 0x53, 0x54, 0x49, 0x43, 0x0D,
+ 0x0D, 0x02, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76,
+ 0x69, 0x73, 0x69, 0x6E, 0x67, 0x20, 0x50, 0x72,
+ 0x6F, 0x64, 0x75, 0x63, 0x65, 0x72, 0x0D, 0x02,
+ 0x52, 0x49, 0x43, 0x4B, 0x20, 0x47, 0x55, 0x53,
+ 0x48, 0x0D, 0x0D, 0x02, 0x50, 0x72, 0x6F, 0x64,
+ 0x75, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x20, 0x41,
+ 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6E, 0x74,
+ 0x0D, 0x02, 0x44, 0x41, 0x56, 0x49, 0x44, 0x20,
+ 0x50, 0x4F, 0x4B, 0x4F, 0x52, 0x4E, 0x59, 0x0D,
+ 0x0D, 0x02, 0x50, 0x72, 0x6F, 0x64, 0x75, 0x63,
+ 0x74, 0x20, 0x43, 0x6F, 0x6F, 0x72, 0x64, 0x69,
+ 0x6E, 0x61, 0x74, 0x6F, 0x72, 0x0D, 0x02, 0x4A,
+ 0x45, 0x46, 0x46, 0x20, 0x5A, 0x49, 0x45, 0x4C,
+ 0x0D, 0x0D, 0x02, 0x51, 0x75, 0x61, 0x6C, 0x69,
+ 0x74, 0x79, 0x20, 0x41, 0x73, 0x73, 0x75, 0x72,
+ 0x61, 0x6E, 0x63, 0x65, 0x0D, 0x02, 0x47, 0x4C,
+ 0x45, 0x4E, 0x4E, 0x20, 0x22, 0x47, 0x4C, 0x45,
+ 0x4E, 0x4E, 0x42, 0x4F, 0x22, 0x20, 0x53, 0x50,
+ 0x45, 0x52, 0x52, 0x59, 0x0D, 0x02, 0x42, 0x52,
+ 0x41, 0x44, 0x20, 0x22, 0x53, 0x54, 0x49, 0x4E,
+ 0x47, 0x22, 0x20, 0x52, 0x4F, 0x42, 0x45, 0x52,
+ 0x54, 0x53, 0x0D, 0x02, 0x43, 0x48, 0x41, 0x44,
+ 0x20, 0x53, 0x4F, 0x41, 0x52, 0x45, 0x53, 0x0D,
+ 0x02, 0x43, 0x48, 0x52, 0x49, 0x53, 0x20, 0x4D,
+ 0x63, 0x46, 0x41, 0x52, 0x4C, 0x41, 0x4E, 0x44,
+ 0x0D, 0x02, 0x43, 0x48, 0x52, 0x49, 0x53, 0x20,
+ 0x22, 0x44, 0x4F, 0x4F, 0x4D, 0x22, 0x20, 0x52,
+ 0x55, 0x42, 0x59, 0x4F, 0x52, 0x0D, 0x02, 0x44,
+ 0x41, 0x56, 0x45, 0x20, 0x4D, 0x41, 0x58, 0x45,
+ 0x59, 0x0D, 0x02, 0x4A, 0x45, 0x46, 0x46, 0x20,
+ 0x42, 0x55, 0x43, 0x43, 0x45, 0x4C, 0x4C, 0x41,
+ 0x54, 0x4F, 0x0D, 0x02, 0x4A, 0x45, 0x53, 0x53,
+ 0x45, 0x20, 0x22, 0x4C, 0x41, 0x52, 0x47, 0x45,
+ 0x59, 0x22, 0x20, 0x43, 0x4C, 0x45, 0x4D, 0x49,
+ 0x54, 0x0D, 0x02, 0x4A, 0x4F, 0x48, 0x4E, 0x20,
+ 0x53, 0x57, 0x45, 0x45, 0x4E, 0x59, 0x0D, 0x02,
+ 0x4A, 0x4F, 0x4E, 0x20, 0x57, 0x49, 0x4C, 0x4C,
+ 0x49, 0x41, 0x4D, 0x53, 0x0D, 0x02, 0x4B, 0x45,
+ 0x4E, 0x4E, 0x45, 0x54, 0x48, 0x20, 0x22, 0x45,
+ 0x58, 0x54, 0x45, 0x52, 0x4D, 0x49, 0x4E, 0x41,
+ 0x54, 0x4F, 0x52, 0x22, 0x20, 0x44, 0x55, 0x4E,
+ 0x4E, 0x45, 0x0D, 0x02, 0x4D, 0x49, 0x4B, 0x45,
+ 0x20, 0x22, 0x44, 0x41, 0x52, 0x4B, 0x4E, 0x49,
+ 0x47, 0x48, 0x54, 0x22, 0x20, 0x4C, 0x49, 0x47,
+ 0x48, 0x54, 0x4E, 0x45, 0x52, 0x0D, 0x02, 0x4D,
+ 0x49, 0x54, 0x43, 0x48, 0x20, 0x46, 0x45, 0x4C,
+ 0x44, 0x4D, 0x41, 0x4E, 0x0D, 0x02, 0x50, 0x41,
+ 0x55, 0x4C, 0x20, 0x53, 0x48, 0x4F, 0x45, 0x4E,
+ 0x45, 0x52, 0x0D, 0x02, 0x53, 0x43, 0x4F, 0x54,
+ 0x54, 0x20, 0x4D, 0x41, 0x4E, 0x4E, 0x49, 0x4E,
+ 0x47, 0x0D, 0x02, 0x54, 0x49, 0x4D, 0x20, 0x22,
+ 0x44, 0x41, 0x52, 0x4B, 0x57, 0x4F, 0x4C, 0x46,
+ 0x22, 0x20, 0x46, 0x52, 0x49, 0x54, 0x5A, 0x0D,
+ 0x02, 0x54, 0x52, 0x4F, 0x59, 0x20, 0x4C, 0x45,
+ 0x4F, 0x4E, 0x41, 0x52, 0x44, 0x0D, 0x0D, 0x02,
+ 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6C, 0x20,
+ 0x54, 0x68, 0x61, 0x6E, 0x6B, 0x73, 0x20, 0x74,
+ 0x6F, 0x0D, 0x02, 0x42, 0x41, 0x52, 0x42, 0x41,
+ 0x52, 0x41, 0x20, 0x52, 0x49, 0x43, 0x48, 0x4D,
+ 0x41, 0x4E, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x41, 0x6E, 0x79, 0x20, 0x72,
+ 0x65, 0x73, 0x65, 0x6D, 0x62, 0x6C, 0x61, 0x6E,
+ 0x63, 0x65, 0x20, 0x69, 0x6E, 0x20, 0x74, 0x68,
+ 0x69, 0x73, 0x20, 0x67, 0x61, 0x6D, 0x65, 0x20,
+ 0x74, 0x6F, 0x20, 0x0D, 0x02, 0x70, 0x65, 0x72,
+ 0x73, 0x6F, 0x6E, 0x73, 0x20, 0x6F, 0x72, 0x20,
+ 0x61, 0x70, 0x70, 0x65, 0x6E, 0x64, 0x61, 0x67,
+ 0x65, 0x73, 0x2C, 0x20, 0x6C, 0x69, 0x76, 0x69,
+ 0x6E, 0x67, 0x20, 0x6F, 0x72, 0x0D, 0x02, 0x64,
+ 0x65, 0x61, 0x64, 0x2C, 0x20, 0x69, 0x73, 0x20,
+ 0x70, 0x75, 0x72, 0x65, 0x6C, 0x79, 0x20, 0x63,
+ 0x6F, 0x69, 0x6E, 0x63, 0x69, 0x64, 0x65, 0x6E,
+ 0x74, 0x61, 0x6C, 0x2E, 0x0D, 0x0D, 0x02, 0x43,
+ 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74,
+ 0x20, 0x28, 0x43, 0x29, 0x20, 0x31, 0x39, 0x39,
+ 0x34, 0x2C, 0x20, 0x57, 0x65, 0x73, 0x74, 0x77,
+ 0x6F, 0x6F, 0x64, 0x20, 0x53, 0x74, 0x75, 0x64,
+ 0x69, 0x6F, 0x73, 0x2C, 0x20, 0x49, 0x6E, 0x63,
+ 0x2E, 0x0D, 0x02, 0x41, 0x6C, 0x6C, 0x20, 0x72,
+ 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2E, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x00
+};
+
+static const ByteProvider k2SeqplayCreditsDOSCDProvider = { ARRAYSIZE(k2SeqplayCreditsDOSCD), k2SeqplayCreditsDOSCD };
+
+static const char *const k2SeqplayCreditsSpecialDOSCD[2] = {
+ "Codejammers",
+ "MIKE and MIKE"
+};
+
+static const StringListProvider k2SeqplayCreditsSpecialDOSCDProvider = { ARRAYSIZE(k2SeqplayCreditsSpecialDOSCD), k2SeqplayCreditsSpecialDOSCD };
+
+static const char *const k2SeqplaySfxFilesDOSCD[48] = {
+ "eintro1",
+ "eintro2",
+ "eintro3",
+ "eintro4",
+ "eintro5",
+ "eintro6",
+ "eintro7",
+ "eintro8",
+ "eintro9",
+ "eintro10",
+ "eintro11",
+ "eintro12",
+ "eglow",
+ "0000210",
+ "0000130",
+ "0000180",
+ "0000160",
+ "asong",
+ "crowcaw",
+ "eyerub2",
+ "pluck3",
+ "rodnreel",
+ "frog1",
+ "scavmov2",
+ "lambmom3",
+ "lambkid1",
+ "thunder2",
+ "thunder3",
+ "wind6",
+ "h2odrop2",
+ "gasleak",
+ "polgulp1",
+ "hndslap1",
+ "burp1",
+ "0000220",
+ "0000230",
+ "0000250",
+ "0000260",
+ "0000270",
+ "0000280",
+ "0000290",
+ "0000300",
+ "0000310",
+ "0000320",
+ "0000330",
+ "scream1",
+ "theend",
+ ""
+};
+
+static const StringListProvider k2SeqplaySfxFilesDOSCDProvider = { ARRAYSIZE(k2SeqplaySfxFilesDOSCD), k2SeqplaySfxFilesDOSCD };
+
+static const HoFSequence k2SeqplaySeqDataDOSCDSeq[16] = {
+ { 0x0002, "", "virgin.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0064, 0, 0, 0x001E },
+ { 0x0001, "westwood.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0012, 0x0006, 0, 0, 0x00A0 },
+ { 0x0001, "title.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001A, 0x0006, 0, 0, 0x000A },
+ { 0x0002, "", "over.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "library.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "hand.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x005A },
+ { 0x0001, "point.wsa", "", 4, 8, 0xFFFF, 0xFFFF, 0x0000, 0x0026, 0x0007, 0, 0, 0x00C8 },
+ { 0x0001, "zanfaun.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0033, 0x0010, 0, 0, 0x00F0 },
+ { 0x0001, "funters.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "ferb.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x0010, 0, 0, 0x001E },
+ { 0x0001, "fish.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0038, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "fheep.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "farmer.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0016, 0x000C, 0, 0, 0x0064 },
+ { 0x0001, "fuards.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0018, 0x000E, 0, 0, 0x001E },
+ { 0x0001, "firates.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0025, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "frash.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000C, 0x000A, 0, 0, 0x0154 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDSeqNestedControl7[18] = {
+ { 0, 10 },
+ { 1, 10 },
+ { 2, 10 },
+ { 3, 10 },
+ { 4, 10 },
+ { 5, 10 },
+ { 6, 10 },
+ { 7, 10 },
+ { 8, 10 },
+ { 9, 10 },
+ { 8, 10 },
+ { 7, 10 },
+ { 6, 10 },
+ { 5, 40 },
+ { 4, 10 },
+ { 3, 10 },
+ { 2, 10 },
+ { 1, 10 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDSeqNestedControl10[17] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 6 },
+ { 6, 6 },
+ { 7, 6 },
+ { 8, 6 },
+ { 9, 6 },
+ { 10, 6 },
+ { 11, 6 },
+ { 11, 12 },
+ { 12, 12 },
+ { 13, 12 },
+ { 12, 12 },
+ { 11, 12 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDSeqNestedControl11[9] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 64 },
+ { 5, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDSeqNestedControl12[16] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDSeqNestedControl13[5] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 1, 6 },
+ { 0, 1 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDSeqNestedControl14[8] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 2, 6 },
+ { 1, 6 }
+};
+
+static const HoFNestedSequence k2SeqplaySeqDataDOSCDSeqNested[15] = {
+ { 0x000C, "figgle.wsa", 0, 3, 60, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over1.wsa", 0, 10, 10, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over2.wsa", 0, 11, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "forest.wsa", 0, 22, 6, 0, 0, 0, NULL, 1, 3 },
+ { 0x0008, "dragon.wsa", 0, 11, 6, 0, 0, 0, NULL, 2, 0 },
+ { 0x0002, "darm.wsa", 0, 19, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "library.wsa", 0, 33, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x002A, "library.wsa", 0, 18, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDSeqNestedControl7), k2SeqplaySeqDataDOSCDSeqNestedControl7, 0, 0 },
+ { 0x000A, "marco.wsa", 0, 37, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "hand1a.wsa", 0, 34, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x002A, "hand1b.wsa", 0, 16, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDSeqNestedControl10), k2SeqplaySeqDataDOSCDSeqNestedControl10, 0, 0 },
+ { 0x002A, "hand1c.wsa", 0, 9, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDSeqNestedControl11), k2SeqplaySeqDataDOSCDSeqNestedControl11, 0, 0 },
+ { 0x002C, "hand2.wsa", 0, 2, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDSeqNestedControl12), k2SeqplaySeqDataDOSCDSeqNestedControl12, 5, 0 },
+ { 0x002C, "hand3.wsa", 0, 4, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDSeqNestedControl13), k2SeqplaySeqDataDOSCDSeqNestedControl13, 5, 0 },
+ { 0x002C, "hand4.wsa", 0, 8, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDSeqNestedControl14), k2SeqplaySeqDataDOSCDSeqNestedControl14, 5, 0 }
+};
+
+static const HoFSequenceProvider k2SeqplaySeqDataDOSCDProvider = { ARRAYSIZE(k2SeqplaySeqDataDOSCDSeq), k2SeqplaySeqDataDOSCDSeq, ARRAYSIZE(k2SeqplaySeqDataDOSCDSeqNested), k2SeqplaySeqDataDOSCDSeqNested };
+
+static const char *const k2SeqplayIntroTracksDOSCD[1] = {
+ "k2intro"
+};
+
+static const StringListProvider k2SeqplayIntroTracksDOSCDProvider = { ARRAYSIZE(k2SeqplayIntroTracksDOSCD), k2SeqplayIntroTracksDOSCD };
+
+static const char *const k2SeqplayFinaleTracksDOSCD[1] = {
+ "k2finale"
+};
+
+static const StringListProvider k2SeqplayFinaleTracksDOSCDProvider = { ARRAYSIZE(k2SeqplayFinaleTracksDOSCD), k2SeqplayFinaleTracksDOSCD };
+
+static const char *const k2IngameSfxFilesDOSCD[178] = {
+ "ALCHEMY2",
+ "BIGSLAM",
+ "BITE1",
+ "BLINK1",
+ "BOING1",
+ "BUBBLE1",
+ "BUBBLE2",
+ "BURP1",
+ "BUTTON6",
+ "CAULDRN2",
+ "CHEST",
+ "CLOTHES1",
+ "CROCLAF4",
+ "CRY1",
+ "CRY2",
+ "DOORMTCL",
+ "DOORMTOP",
+ "DOORWDCL",
+ "DOORWDOP",
+ "DRUM1",
+ "DRUM2",
+ "DRUM3",
+ "DRUM4",
+ "DRUM5",
+ "DRUM6",
+ "DRUM7",
+ "EYERUB2",
+ "FALL1",
+ "FALL3",
+ "FNGRSNAP",
+ "FORMSPL1",
+ "FROG1",
+ "FROGMIX2",
+ "GASLEAK",
+ "GLOWY1",
+ "GOOD3",
+ "GOOD5",
+ "GROWTWIG",
+ "H2ODROP2",
+ "H2OPLANT",
+ "HACHUCKD",
+ "HAYFALL2",
+ "HAYSRCH4",
+ "ICECUBE",
+ "KEYOPEN",
+ "LAMBKID1",
+ "LAMBMOM3",
+ "LAUGH1",
+ "LAUGH3",
+ "LAUGH4",
+ "LIZLISP",
+ "MAKESPL1",
+ "MSTDOOM1",
+ "ORCMOVE",
+ "PLUCK3",
+ "POLGULP1",
+ "PORTCUL",
+ "POURH20",
+ "RIP2",
+ "RODNREEL",
+ "ROWBOAT1",
+ "RUCKUS1",
+ "SCAVMOV2",
+ "SCRATCH1",
+ "SNAKSPEL",
+ "SNEEZE1",
+ "SNIFF1",
+ "SNOREIN3",
+ "SNOROUT",
+ "SPLASH1",
+ "SQUEAK1",
+ "SQUEAK2",
+ "SQUEAK3",
+ "SQUISH1",
+ "SQUISH2",
+ "STEAM",
+ "STEAM3",
+ "STRETCH1",
+ "SWING",
+ "TREZA1",
+ "TURNPAG2",
+ "TWIGSNAP",
+ "UGH1",
+ "WHEEL4",
+ "WINGS1",
+ "YAWN1",
+ "ZOOM5",
+ "FILBOTL",
+ "H2OPOUR1",
+ "JAILDOR1",
+ "JAILLOK1",
+ "CASHREG1",
+ "SWISH1",
+ "TURNBOAT",
+ "CLAPPING",
+ "CRUNCH1",
+ "WHEEL6",
+ "LITEMAG",
+ "SHELDOWN",
+ "SHELSLID",
+ "ZOW2",
+ "ZANLOOP1",
+ "SCREECH2",
+ "PANTING",
+ "TREX1",
+ "TREX5",
+ "TREX3",
+ "QUAKE",
+ "WRINGH2O",
+ "SPLAT2",
+ "OCEAN1",
+ "SPLAT3",
+ "CROCLAF5",
+ "FALL5",
+ "ZCMON2",
+ "ZWAIT3",
+ "ZNO2",
+ "CROCLAF7",
+ "CRICKET1",
+ "FIREBRTH",
+ "COW2",
+ "SAP2",
+ "PMTLHI",
+ "FROGSIGH",
+ "CRICEND",
+ "CRY3",
+ "CRY4",
+ "SHROOM1",
+ "DRIP1",
+ "SWIM4",
+ "CUCKOO2",
+ "PUNCH1",
+ "SNORT3",
+ "STAMPER2",
+ "WALLFALL",
+ "WOODFAL1",
+ "SPRAY1",
+ "OHNO1",
+ "YAHOO1",
+ "YIPEE1",
+ "WIND1",
+ "WIND3",
+ "WIND6",
+ "BLOWUP2",
+ "BOATLOP2",
+ "ZGIGGL1",
+ "ZCOUGH1",
+ "CRUSH",
+ "ALARM3",
+ "APPLEAT",
+ "BABYCRY1",
+ "BABYLAF1",
+ "BABYLIK1",
+ "GEARMX3",
+ "GLASBRK2",
+ "HANDKIL1",
+ "HNDSLAP1",
+ "ICEPICK1",
+ "KISS3",
+ "LOLIFAL1",
+ "PAGEBURN",
+ "PRTYHORN",
+ "SCREAM1",
+ "SPARKHIT",
+ "SPRING2",
+ "ZANLAND1",
+ "BIGBOW",
+ "BOWFORM",
+ "BULBHIT",
+ "EYELITE",
+ "ROOFBOW",
+ "FBIGFOT1",
+ "BIGFOOT4",
+ "DORSTNCL",
+ "CROWCAW",
+ "THUNDER2",
+ "THUNDER3",
+ "TOILET"
+};
+
+static const StringListProvider k2IngameSfxFilesDOSCDProvider = { ARRAYSIZE(k2IngameSfxFilesDOSCD), k2IngameSfxFilesDOSCD };
+
+static const byte k2IngameSfxIndexDOSCD[856] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0x47, 0x00, 0x05, 0x00, 0x22, 0x00, 0x00, 0x00,
+ 0x1F, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
+ 0x36, 0x00, 0x05, 0x00, 0x07, 0x00, 0x00, 0x00,
+ 0x3F, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x45, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00,
+ 0x7B, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00,
+ 0x3C, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00,
+ 0x4E, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x00, 0x00, 0x43, 0x00, 0x04, 0x00,
+ 0x56, 0x00, 0x00, 0x00, 0x40, 0x00, 0x05, 0x00,
+ 0x40, 0x00, 0x05, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x64, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00,
+ 0x12, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00,
+ 0x1D, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x49, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00,
+ 0x09, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
+ 0x0D, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
+ 0x0C, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00,
+ 0x21, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
+ 0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0x1B, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
+ 0x15, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
+ 0x19, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00,
+ 0x1A, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
+ 0x2A, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00,
+ 0x2D, 0x00, 0x00, 0x00, 0x27, 0x00, 0x05, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x46, 0x00, 0x05, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
+ 0x34, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
+ 0x4F, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
+ 0x0F, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x78, 0x00, 0x06, 0x00,
+ 0x50, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x33, 0x00, 0x06, 0x00, 0x3A, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x1E, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00,
+ 0x23, 0x00, 0x05, 0x00, 0x24, 0x00, 0x05, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
+ 0x48, 0x00, 0x05, 0x00, 0x20, 0x00, 0x00, 0x00,
+ 0x63, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x7A, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00,
+ 0x10, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00,
+ 0x5D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00,
+ 0x30, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
+ 0x61, 0x00, 0x05, 0x00, 0x58, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x65, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00,
+ 0x67, 0x00, 0x00, 0x00, 0x68, 0x00, 0x05, 0x00,
+ 0x69, 0x00, 0x05, 0x00, 0x6A, 0x00, 0x05, 0x00,
+ 0x01, 0x00, 0x05, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x90, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x6F, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x7F, 0x00, 0x06, 0x00, 0x7D, 0x00, 0x00, 0x00,
+ 0x7E, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x80, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00,
+ 0x84, 0x00, 0x00, 0x00, 0x83, 0x00, 0x00, 0x00,
+ 0x82, 0x00, 0x05, 0x00, 0x86, 0x00, 0x00, 0x00,
+ 0x88, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00,
+ 0x8A, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00,
+ 0x87, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x00, 0x00,
+ 0x8D, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x00, 0x00,
+ 0x8F, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00,
+ 0x93, 0x00, 0x05, 0x00, 0x94, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0x96, 0x00, 0x05, 0x00,
+ 0x97, 0x00, 0x00, 0x00, 0x98, 0x00, 0x04, 0x00,
+ 0x99, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00, 0x00,
+ 0x9B, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00,
+ 0x9D, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x00, 0x00,
+ 0x9F, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00,
+ 0xA1, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00,
+ 0xA3, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00,
+ 0xA5, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x00,
+ 0xA7, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00,
+ 0xA9, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00, 0x00,
+ 0xAB, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x00, 0x00,
+ 0xAD, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x05, 0x00,
+ 0xAF, 0x00, 0x00, 0x00, 0xB0, 0x00, 0x00, 0x00,
+ 0xB1, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k2IngameSfxIndexDOSCDProvider = { ARRAYSIZE(k2IngameSfxIndexDOSCD), k2IngameSfxIndexDOSCD };
+
+static const char *const k2IngameTracksDOSCD[15] = {
+ "K2TEST1",
+ "K2TEST2",
+ "K2TEST3",
+ "K2TEST4",
+ "K2TEST5",
+ "K2TEST6",
+ "K2TEST7",
+ "K2TEST8",
+ "K2TEST9",
+ "K2TEST10",
+ "K2TEST11",
+ "K2TEST12",
+ "K2TEST13",
+ "K2TEST14",
+ "K2TEST15"
+};
+
+static const StringListProvider k2IngameTracksDOSCDProvider = { ARRAYSIZE(k2IngameTracksDOSCD), k2IngameTracksDOSCD };
+
+static const byte k2IngameTalkObjIndexDOSCD[132] = {
+ 0x20, 0x43, 0x6F, 0x72, 0x72, 0x75, 0x70, 0x74,
+ 0x21, 0x21, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x12, 0x00, 0x18, 0x00, 0x26, 0x00, 0x41, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x04, 0x00, 0x05, 0x00, 0x06, 0x00, 0x07, 0x00,
+ 0x08, 0x00, 0x09, 0x00, 0x0A, 0x00, 0x11, 0x00,
+ 0x12, 0x00, 0x13, 0x00, 0x14, 0x00, 0x15, 0x00,
+ 0x2A, 0x00, 0x17, 0x00, 0x18, 0x00, 0x19, 0x00,
+ 0x1A, 0x00, 0x1B, 0x00, 0x1C, 0x00, 0x1D, 0x00,
+ 0x1E, 0x00, 0x1F, 0x00, 0x20, 0x00, 0x21, 0x00,
+ 0x22, 0x00, 0x23, 0x00, 0x24, 0x00, 0x30, 0x00,
+ 0x35, 0x00, 0x36, 0x00, 0x37, 0x00, 0x39, 0x00,
+ 0x3A, 0x00, 0x3B, 0x00, 0x3D, 0x00, 0x3E, 0x00,
+ 0x3F, 0x00, 0x40, 0x00, 0x41, 0x00, 0x42, 0x00,
+ 0x43, 0x00, 0x44, 0x00, 0x45, 0x00, 0x46, 0x00,
+ 0x47, 0x00, 0x5B, 0x00, 0x69, 0x00, 0x6E, 0x00,
+ 0x72, 0x00, 0x76, 0x00
+};
+
+static const ByteProvider k2IngameTalkObjIndexDOSCDProvider = { ARRAYSIZE(k2IngameTalkObjIndexDOSCD), k2IngameTalkObjIndexDOSCD };
+
+static const FrameControl k2IngameShapeAnimDataDOSCD0FrameControl[12] = {
+ { 0x0006, 0x00F0 },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD1FrameControl[6] = {
+ { 0x0002, 0x012C },
+ { 0x002D, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002F, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002D, 0x012C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD2FrameControl[6] = {
+ { 0x000B, 0x0258 },
+ { 0x0030, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0032, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0030, 0x0005 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD3FrameControl[4] = {
+ { 0x001C, 0x0014 },
+ { 0x004E, 0x0014 },
+ { 0x004F, 0x0014 },
+ { 0x0050, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD4FrameControl[4] = {
+ { 0x0017, 0x0007 },
+ { 0x0051, 0x0007 },
+ { 0x0052, 0x0007 },
+ { 0x0053, 0x0007 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD5FrameControl[4] = {
+ { 0x0016, 0x0014 },
+ { 0x0054, 0x0014 },
+ { 0x0055, 0x0014 },
+ { 0x0056, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD6FrameControl[4] = {
+ { 0x003A, 0x003C },
+ { 0x0057, 0x003C },
+ { 0x0058, 0x003C },
+ { 0x0059, 0x003C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD7FrameControl[4] = {
+ { 0x001A, 0x0032 },
+ { 0x005A, 0x0032 },
+ { 0x005B, 0x0032 },
+ { 0x005C, 0x0032 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD8FrameControl[4] = {
+ { 0x006D, 0x000C },
+ { 0x006E, 0x000C },
+ { 0x006F, 0x000C },
+ { 0x0070, 0x000C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD9FrameControl[4] = {
+ { 0x0079, 0x0008 },
+ { 0x007A, 0x0008 },
+ { 0x007B, 0x0008 },
+ { 0x007C, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD10FrameControl[4] = {
+ { 0x007E, 0x0008 },
+ { 0x007F, 0x0008 },
+ { 0x0080, 0x0008 },
+ { 0x0081, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD11FrameControl[6] = {
+ { 0x0091, 0x01A4 },
+ { 0x0092, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0094, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0092, 0x0004 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD12FrameControl[4] = {
+ { 0x0095, 0x0006 },
+ { 0x0096, 0x0006 },
+ { 0x0097, 0x0006 },
+ { 0x0098, 0x0006 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCD13FrameControl[4] = {
+ { 0x0099, 0x002D },
+ { 0x009A, 0x002D },
+ { 0x009B, 0x002D },
+ { 0x009C, 0x002D }
+};
+
+static const ItemAnimDefinition k2IngameShapeAnimDataDOSCD[14] = {
+ { 6, 12, k2IngameShapeAnimDataDOSCD0FrameControl },
+ { 2, 6, k2IngameShapeAnimDataDOSCD1FrameControl },
+ { 11, 6, k2IngameShapeAnimDataDOSCD2FrameControl },
+ { 28, 4, k2IngameShapeAnimDataDOSCD3FrameControl },
+ { 23, 4, k2IngameShapeAnimDataDOSCD4FrameControl },
+ { 22, 4, k2IngameShapeAnimDataDOSCD5FrameControl },
+ { 58, 4, k2IngameShapeAnimDataDOSCD6FrameControl },
+ { 26, 4, k2IngameShapeAnimDataDOSCD7FrameControl },
+ { 109, 4, k2IngameShapeAnimDataDOSCD8FrameControl },
+ { 121, 4, k2IngameShapeAnimDataDOSCD9FrameControl },
+ { 126, 4, k2IngameShapeAnimDataDOSCD10FrameControl },
+ { 145, 6, k2IngameShapeAnimDataDOSCD11FrameControl },
+ { 149, 4, k2IngameShapeAnimDataDOSCD12FrameControl },
+ { 153, 4, k2IngameShapeAnimDataDOSCD13FrameControl }
+};
+
+static const ItemAnimDefinitionProvider k2IngameShapeAnimDataDOSCDProvider = { ARRAYSIZE(k2IngameShapeAnimDataDOSCD), k2IngameShapeAnimDataDOSCD };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cd_english.h b/devtools/create_kyradat/resources/hof_dos_cd_english.h
new file mode 100644
index 0000000000..88db113a4a
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cd_english.h
@@ -0,0 +1,128 @@
+static const char *const k2SeqplayStringsDOSCDEnglish[104] = {
+ "Kyrandia is disappearing!",
+ "Rock by rock...",
+ "...and tree by tree.",
+ "Kyrandia ceases to exist!",
+ "The Royal Mystics are baffled.",
+ "Every reference has been consulted.",
+ "Even Marko and his new valet have been allowed into the conference.",
+ "Luckily, the Hand was experienced in these matters.",
+ "And finally a plan was approved...",
+ "...that required a magic Anchor Stone...",
+ "...to be retrieved from the center of the world.",
+ "Zanthia, youngest of the Kyrandian Mystics, has been selected to retrieve the Stone.",
+ "Thank you for playing The Hand of Fate.",
+ "This should be enough blueberries to open a portal to the center of the world.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! All my equipment has been stolen!",
+ " DUMMY STRING... ",
+ "If they think I'm going to walk all the way down there, they're nuts!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hurry up Faun!",
+ "Boy, that was a close call!",
+ "You said it pal. I, for one, am never going hunting again!",
+ "Ribbit.",
+ "How many times do I have to tell you? You're a toad.",
+ "Oh no! We're out of cheese!",
+ "Let's try this earwax. It's orange.",
+ "Mommy, when do I get the ivy?",
+ "Get out of here, shoo!",
+ "You cut, and I'll choose.",
+ "No. You cut and I'll choose.",
+ "I still say it was derivative drivel.",
+ "Aw, you still wouldn't recognize iambic pentameter if it bit you on the butt!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Direction & Design",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Mike Grayford",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "DUMMY STRING... ",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Quality Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulations!",
+ "Thank you for playing The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Joe Kucan's Hair by",
+ "Theodore A. Morris",
+ "Load a game",
+ "Introduction",
+ "Start a new game",
+ "Exit the game",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Thank you for playing \"The Hand of Fate.\"\n"
+};
+
+static const StringListProvider k2SeqplayStringsDOSCDEnglishProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDEnglish), k2SeqplayStringsDOSCDEnglish };
+
+static const char *const k2SeqplayTlkFilesDOSCDEnglish[14] = {
+ "EINTRO1",
+ "EINTRO2",
+ "EINTRO3",
+ "EINTRO4",
+ "EINTRO5",
+ "EINTRO6",
+ "EINTRO7",
+ "EINTRO8",
+ "EINTRO9",
+ "EINTRO10",
+ "EINTRO11",
+ "EINTRO12",
+ "EGLOW",
+ ""
+};
+
+static const StringListProvider k2SeqplayTlkFilesDOSCDEnglishProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDEnglish), k2SeqplayTlkFilesDOSCDEnglish };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cd_french.h b/devtools/create_kyradat/resources/hof_dos_cd_french.h
new file mode 100644
index 0000000000..fbfdbe9984
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cd_french.h
@@ -0,0 +1,128 @@
+static const char *const k2SeqplayStringsDOSCDFrench[104] = {
+ "Kyrandia est en train de dispara""\x8C""tre!",
+ "Pierre apr""\x8A""s pierre...",
+ "Arbre apr""\x8A""s arbre.",
+ "Kyrandia va cesser d'exister!",
+ "Les Grands Mystiques Royaux sont perplexes...",
+ "Ils ont consult""\x82"" tous les ouvrages!",
+ "M""\x88""me Marko et son nouveau valet ont ""\x82""t""\x82"" admis dans la conf""\x82""rence.",
+ "Heureusement, la Main connaissait bien ce sujet.",
+ "Un plan fut finalement approuv""\x82""...",
+ "Il n""\x82""cessitait une Ancre de Pierre magique...",
+ "Qu'il fallait aller chercher au centre du monde!",
+ "Zanthia, la plus jeune des Mystiques de Kyrandia, a ""\x82""t""\x82"" choisie pour r""\x82""cup""\x82""rer cette pierre.",
+ "Merci d'avoir jou""\x82"" ""\x85"" The Hand of Fate.",
+ "Je devrais avoir assez de myrtilles pour ouvrir un portail vers le centre du monde...",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "H""\x82""! On m'a vol""\x82"" tout mon ""\x82""quipement!",
+ " DUMMY STRING... ",
+ "S'ils croient que je vais y aller ""\x85"" pied, ils peuvent toujours courir!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Vite, Faun!",
+ "Mon vieux, nous l'avons ""\x82""chapp""\x82"" belle!",
+ "Tu l'as dit! En ce qui me concerne, j'abandonne la chasse!",
+ "Crooa.",
+ "Combien de fois faudra-t-il que je te le dise? Tu n'es qu'un sale crapaud!",
+ "Oh non! Nous n'avons plus de fromage!",
+ "On n'a qu'""\x85"" essayer ""\x87""a. C'est orange.",
+ "Maman, quand est-ce qu'on mangera du lierre?",
+ "Sortez d'ici! Allez! Filez!",
+ "Tu coupes, et je choisis.",
+ "Non. TU coupes et JE choisis.",
+ "Je maintiens que c'""\x82""tait du radotage sans int""\x82""r""\x88""t.",
+ "Tu ne reconna""\x8C""trais toujours pas un po""\x8A""me ""\x8B""ambique, m""\x88""me s'il te mordait les fesses!",
+ "Producteur Ex""\x82""cutif",
+ "Brett W. Sperry",
+ "Con""\x87""u et Dirig""\x82"" par",
+ "Rick Gush",
+ "Programmeur Principal",
+ "Michael Legg",
+ "Direction Artistique",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Graphiste principal",
+ "Rick Parks",
+ "Programmation acrobatie",
+ "Philip W. Gorrow",
+ "Michael Grayford",
+ "Mark McCubbin",
+ "Graphistes",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "DUMMY STRING... ",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Musique et sons",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Tests de Qualit""\x82",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Pierre Cardin",
+ "Conception du Manuel,",
+ "Emballage & Ex""\x82""cution",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "F""\x82""licitations!",
+ "Merci d'avoir jou""\x82"" ""\x85"" The Hand of Fate!",
+ "Programmeur invit""\x82",
+ "Coordination Production",
+ "Scott Duckett",
+ "Testeurs - Irvine",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Williams",
+ "Chris Toft",
+ "Adaptation fran""\x87""aise",
+ "Art Of Words",
+ "Charger une partie",
+ "Introduction",
+ "Nouvelle Partie",
+ "Quitter le jeu",
+ "Remerciements sp""\x82""ciaux",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Merci d'avoir jou""\x82"" ""\x85""\"The Hand of Fate.\"\n"
+};
+
+static const StringListProvider k2SeqplayStringsDOSCDFrenchProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDFrench), k2SeqplayStringsDOSCDFrench };
+
+static const char *const k2SeqplayTlkFilesDOSCDFrench[14] = {
+ "FINTRO1",
+ "FINTRO2",
+ "FINTRO3",
+ "FINTRO4",
+ "FINTRO5",
+ "FINTRO6",
+ "FINTRO7",
+ "FINTRO8",
+ "FINTRO9",
+ "FINTRO10",
+ "FINTRO11",
+ "FINTRO12",
+ "FGLOW",
+ ""
+};
+
+static const StringListProvider k2SeqplayTlkFilesDOSCDFrenchProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDFrench), k2SeqplayTlkFilesDOSCDFrench };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cd_german.h b/devtools/create_kyradat/resources/hof_dos_cd_german.h
new file mode 100644
index 0000000000..e6120040d2
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cd_german.h
@@ -0,0 +1,128 @@
+static const char *const k2SeqplayStringsDOSCDGerman[104] = {
+ "Kyrandia l""\x94""st sich auf!",
+ "Stein f""\x81""r Stein...",
+ "...und Baum f""\x81""r Baum.",
+ "Kyrandia h""\x94""rt auf zu existieren!",
+ "Die k""\x94""niglichen Mystiker sind verzweifelt.",
+ "Jede Informationsquelle wurde zu Rate gezogen.",
+ "Sogar Marko und sein neuer Kammerdiener durften den Konferenzen beiwohnen.",
+ "Gl""\x81""cklicherweise, hatte die Hand Erfahrungen in solchen Dingen.",
+ "Und letztendlich konnte man sich auf einen Plan einigen.",
+ "Zu dessen Durchf""\x81""hrung es eines magischen Ankerstein bedarf...",
+ "...der aus der Mitte der Welt geholt werden mu""\xE1"".",
+ "Zanthia, j""\x81""ngste der kyrandianischen Mystiker, wurde ausgew""\x84""hlt, um diesen Stein zu holen.",
+ "Vielen Dank, da""\xE1"" Du die Hand des Schicksals spielst.",
+ "Dies sollten gen""\x81""gend Blaubeeren sein, um ein Portal zur Mitte der Erde zu ""\x94""ffnen.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! Meine gesamte Ausr""\x81""stung wurde gestohlen!",
+ " DUMMY STRING... ",
+ "Wenn die glauben, da""\xE1"" ich den ganzen Weg nach unten laufe, haben die sich aber in den Finger geschnitten!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Beeile Dich, Faun!",
+ "Junge, Junge das war aber knapp!",
+ "Da hast Du recht, Kumpel. Ich werde nie wieder jagen gehen!",
+ "Quuaaak.",
+ "Wie oft mu""\xE1"" ich es Dir noch sagen? Du bist eine Kr""\x94""te.",
+ "Oh nein! Der K""\x84""se ist alle!",
+ "Versuchen wir es mal mit dem Ohrenwachs. Es ist orange.",
+ "Mama, wann bekomme ich das Efeu?",
+ "Husch husch, komm hier raus!",
+ "Du schneidest, und ich suche aus.",
+ "Nein. Du schneidest und ich werde aussuchen.",
+ "Ich bin immernoch der\rMeinung, da""\xE1"" er es nur\rso dahingeplappert hat.",
+ "Argh, Du w""\x81""rdest ein jambisches Pentameter nicht erkennen, wenn es Dich in den Hintern bei""\xE1""en w""\x81""rde!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Director & Designer",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Michael Grayford",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "DUMMY STRING... ",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Quality Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Black Pete",
+ "Manual, Package Design",
+ "& Fulfillment by",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Unseren Gl""\x81""ckw""\x81""nsch!",
+ "Vielen Dank, da""\xE1"" Sie The Hand of Fate gespielt haben!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Ants! Ants! Ants!",
+ "Ted Morris",
+ "Spielstand laden",
+ "Intro",
+ "Neues Spiel starten",
+ "Spiel beenden",
+ "Vielen Dank an",
+ "tom schmidt",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Vielen Dank, da""\xE1"" Sie \"The Hand of Fate\" gespielt haben.\n"
+};
+
+static const StringListProvider k2SeqplayStringsDOSCDGermanProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDGerman), k2SeqplayStringsDOSCDGerman };
+
+static const char *const k2SeqplayTlkFilesDOSCDGerman[14] = {
+ "GINTRO1",
+ "GINTRO2",
+ "GINTRO3",
+ "GINTRO4",
+ "GINTRO5",
+ "GINTRO6",
+ "GINTRO7",
+ "GINTRO8",
+ "GINTRO9",
+ "GINTRO10",
+ "GINTRO11",
+ "GINTRO12",
+ "GGLOW",
+ ""
+};
+
+static const StringListProvider k2SeqplayTlkFilesDOSCDGermanProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDGerman), k2SeqplayTlkFilesDOSCDGerman };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cd_italian.h b/devtools/create_kyradat/resources/hof_dos_cd_italian.h
new file mode 100644
index 0000000000..0b2789af4b
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cd_italian.h
@@ -0,0 +1,128 @@
+static const char *const k2SeqplayStringsDOSCDItalian[104] = {
+ "Kyrandia sta svanendo!",
+ "Roccia dopo roccia...",
+ "...ed albero dopo albero.",
+ "Kyrandia cessa di esistere!",
+ "I mistici Reali sono sconcertati.",
+ "Ogni libro ""\x8A"" stato consultato.",
+ "Perfino Marko ed il suo nuovo aiutante sono stati invitati alla conferenza.",
+ "Fortunatamente, la Mano era ferrata in materia.",
+ "E finalmente un piano ""\x8A"" stato approvato.",
+ "Bisogna recuperare un'Ancora di pietra",
+ "dal centro della terra.",
+ "Zanthia, la pi""\x97"" giovane trai Mistici, ""\x8A"" stata scelta per recuperare l'artefatto.",
+ "Grazie per aver giocato a Hand of Fate.",
+ "Questi mirtilli dovrebbero bastare ad aprire un portale per il centro della terra.",
+ "X",
+ "X",
+ "Hey! Hanno rubato tutto il mio equipaggiamento!",
+ "X",
+ "Se pensano che vada fin laggi""\x97"" a piedi, si sbagliano di grosso!",
+ "X",
+ "X",
+ "Sbrigati Fauno!",
+ "Ragazzi, c'""\x8A"" mancato un pelo!",
+ "Puoi dirlo forte. Io ho chiuso con la caccia!",
+ "Ribbit.",
+ "Quante volte devo dirtelo? Sei un rospo.",
+ "Oh no! Abbiamo finito il formaggio!",
+ "Proviamo con questo cerume. E' arancione.",
+ "Mamy, mi dai l'edera?",
+ "Via di qui, scio'!",
+ "Tu taglio, e io scelgo.",
+ "No. TU tagli e IO scelgo.",
+ "Sono sempre convinto che fosse un'emerita cretinata.",
+ "Non riconosceresti un pentametro in verso giambico nemmeno se ti mordesse le chiappe!",
+ "Produttore Esecutivo",
+ "Brett W. Sperry",
+ "Direzione&Progetto",
+ "Rick Gush",
+ "Capo Programmatore",
+ "Michael Legg",
+ "Supervisione Artistica",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Artista",
+ "Rick Parks",
+ "Codice aggiuntivo",
+ "Philip W. Gorrow",
+ "Mike Grayford",
+ "Mark McCubbin",
+ "Artisti",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "X",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Musica & Suoni",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Controllo Qualit""\x85",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manuale, Confezione",
+ "& Realizzazione",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulazioni!",
+ "Grazie per aver giocato a Hand of Fate!",
+ "Codice extra",
+ " contatti ",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Capelli di Joe Kucan di",
+ " Theodore A. Morris",
+ "Carica un gioco",
+ "Introduzione",
+ "Inizia nuovo gioco",
+ "Esci dal gioco",
+ "Ringraziamenti speciali a",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Grazie per aver giocato a \"The Hand of Fate.\"\n "
+};
+
+static const StringListProvider k2SeqplayStringsDOSCDItalianProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDItalian), k2SeqplayStringsDOSCDItalian };
+
+static const char *const k2SeqplayTlkFilesDOSCDItalian[14] = {
+ "EINTRO1",
+ "EINTRO2",
+ "EINTRO3",
+ "EINTRO4",
+ "EINTRO5",
+ "EINTRO6",
+ "EINTRO7",
+ "EINTRO8",
+ "EINTRO9",
+ "EINTRO10",
+ "EINTRO11",
+ "EINTRO12",
+ "EGLOW",
+ ""
+};
+
+static const StringListProvider k2SeqplayTlkFilesDOSCDItalianProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDItalian), k2SeqplayTlkFilesDOSCDItalian };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cd_russian.h b/devtools/create_kyradat/resources/hof_dos_cd_russian.h
new file mode 100644
index 0000000000..e29beb4d3d
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cd_russian.h
@@ -0,0 +1,128 @@
+static const char *const k2SeqplayStringsDOSCDRussian[104] = {
+ "Kyrandia is disappearing!",
+ "Rock by rock...",
+ "...and tree by tree.",
+ "Kyrandia ceases to exist!",
+ "The Royal Mystics are baffled.",
+ "Every reference has been consulted.",
+ "Even Marko and his new valet have been allowed into the conference.",
+ "Luckily, the Hand was experienced in these matters.",
+ "And finally a plan was approved...",
+ "...that required a magic Anchor Stone...",
+ "...to be retrieved from the center of the world.",
+ "Zanthia, youngest of the Kyrandian Mystics, has been selected to retrieve the Stone.",
+ "Thank you for playing The Hand of Fate.",
+ "This should be enough blueberries to open a portal to the center of the world.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! All my equipment has been stolen!",
+ " DUMMY STRING... ",
+ "If they think I'm going to walk all the way down there, they're nuts!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hurry up Faun!",
+ "Boy, that was a close call!",
+ "You said it pal. I, for one, am never going hunting again!",
+ "Ribbit.",
+ "How many times do I have to tell you? You're a toad.",
+ "Oh no! We're out of cheese!",
+ "Let's try this earwax. It's orange.",
+ "Mommy, when do I get the ivy?",
+ "Get out of here, shoo!",
+ "You cut, and I'll choose.",
+ "No. You cut and I'll choose.",
+ "I still say it was derivative drivel.",
+ "Aw, you still wouldn't recognize iambic pentameter if it bit you on the butt!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Direction & Design",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Mike Grayford",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "DUMMY STRING... ",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Quality Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulations!",
+ "Thank you for playing The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Joe Kucan's Hair by",
+ "Theodore A. Morris",
+ "\xC7\xE0\xE3\xF0\xF3\xE7\xE8\xF2\xFC"" ""\xE8\xE3\xF0\xF3",
+ "\xC2\xE2\xE5\xE4\xE5\xED\xE8\xE5",
+ "\xCD\xE0\xF7\xE0\xF2\xFC"" ""\xED\xEE\xE2\xF3\xFE"" ""\xE8\xE3\xF0\xF3",
+ "\xC2\xFB\xE9\xF2\xE8"" ""\xE8\xE7"" ""\xE8\xE3\xF0\xFB",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Thank you for playing \"The Hand of Fate.\"\n"
+};
+
+static const StringListProvider k2SeqplayStringsDOSCDRussianProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDRussian), k2SeqplayStringsDOSCDRussian };
+
+static const char *const k2SeqplayTlkFilesDOSCDRussian[14] = {
+ "EINTRO1",
+ "EINTRO2",
+ "EINTRO3",
+ "EINTRO4",
+ "EINTRO5",
+ "EINTRO6",
+ "EINTRO7",
+ "EINTRO8",
+ "EINTRO9",
+ "EINTRO10",
+ "EINTRO11",
+ "EINTRO12",
+ "EGLOW",
+ ""
+};
+
+static const StringListProvider k2SeqplayTlkFilesDOSCDRussianProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDRussian), k2SeqplayTlkFilesDOSCDRussian };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cddemo.h b/devtools/create_kyradat/resources/hof_dos_cddemo.h
new file mode 100644
index 0000000000..229184853a
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cddemo.h
@@ -0,0 +1,1035 @@
+static const char *const k2SeqplayPakFilesDOSCDDemo[6] = {
+ "INTROGEN.PAK",
+ "TALKENG.PAK",
+ "TALKFRE.PAK",
+ "TALKGER.PAK",
+ "VOC.PAK",
+ "INTROTLK.PAK"
+};
+
+static const StringListProvider k2SeqplayPakFilesDOSCDDemoProvider = { ARRAYSIZE(k2SeqplayPakFilesDOSCDDemo), k2SeqplayPakFilesDOSCDDemo };
+
+static const byte k2SeqplayCreditsDOSCDDemo[2792] = {
+ 0x0D, 0x0D, 0x02, 0x54, 0x48, 0x45, 0x20, 0x50,
+ 0x4C, 0x41, 0x59, 0x45, 0x52, 0x53, 0x0D, 0x0D,
+ 0x03, 0x5A, 0x61, 0x6E, 0x74, 0x68, 0x69, 0x61,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x42, 0x4F, 0x4E,
+ 0x4E, 0x49, 0x45, 0x20, 0x4C, 0x59, 0x4E, 0x4E,
+ 0x20, 0x54, 0x4F, 0x55, 0x50, 0x53, 0x0D, 0x03,
+ 0x46, 0x61, 0x75, 0x6E, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x45, 0x4C, 0x45, 0x4E, 0x41, 0x20, 0x46,
+ 0x45, 0x52, 0x52, 0x41, 0x4E, 0x54, 0x45, 0x0D,
+ 0x03, 0x4D, 0x61, 0x72, 0x6B, 0x6F, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x45, 0x52, 0x49, 0x43, 0x20,
+ 0x52, 0x41, 0x4E, 0x44, 0x41, 0x4C, 0x4C, 0x0D,
+ 0x03, 0x4E, 0x61, 0x72, 0x72, 0x61, 0x74, 0x6F,
+ 0x72, 0x20, 0x20, 0x20, 0x05, 0x04, 0x48, 0x69,
+ 0x73, 0x20, 0x52, 0x6F, 0x79, 0x61, 0x6C, 0x20,
+ 0x48, 0x69, 0x67, 0x68, 0x6E, 0x65, 0x73, 0x73,
+ 0x0D, 0x05, 0x04, 0x42, 0x52, 0x41, 0x4E, 0x44,
+ 0x4F, 0x4E, 0x2C, 0x20, 0x4B, 0x69, 0x6E, 0x67,
+ 0x20, 0x6F, 0x66, 0x0D, 0x05, 0x04, 0x4B, 0x79,
+ 0x72, 0x61, 0x6E, 0x64, 0x69, 0x61, 0x2C, 0x20,
+ 0x44, 0x65, 0x66, 0x65, 0x6E, 0x64, 0x65, 0x72,
+ 0x20, 0x6F, 0x66, 0x0D, 0x05, 0x04, 0x74, 0x68,
+ 0x65, 0x20, 0x4B, 0x79, 0x72, 0x61, 0x67, 0x65,
+ 0x6D, 0x2C, 0x20, 0x56, 0x61, 0x6E, 0x71, 0x75,
+ 0x69, 0x73, 0x68, 0x65, 0x72, 0x0D, 0x05, 0x04,
+ 0x6F, 0x66, 0x20, 0x4D, 0x61, 0x6C, 0x63, 0x6F,
+ 0x6C, 0x6D, 0x2C, 0x20, 0x50, 0x61, 0x74, 0x72,
+ 0x6F, 0x6E, 0x20, 0x6F, 0x66, 0x0D, 0x05, 0x04,
+ 0x74, 0x68, 0x65, 0x20, 0x41, 0x72, 0x74, 0x73,
+ 0x2C, 0x20, 0x57, 0x65, 0x61, 0x72, 0x65, 0x72,
+ 0x20, 0x6F, 0x66, 0x20, 0x74, 0x68, 0x65, 0x0D,
+ 0x05, 0x04, 0x53, 0x61, 0x6E, 0x64, 0x61, 0x6C,
+ 0x2C, 0x20, 0x61, 0x6E, 0x64, 0x20, 0x4D, 0x61,
+ 0x6A, 0x6F, 0x72, 0x69, 0x74, 0x79, 0x0D, 0x05,
+ 0x04, 0x53, 0x74, 0x6F, 0x63, 0x6B, 0x20, 0x4F,
+ 0x77, 0x6E, 0x65, 0x72, 0x20, 0x61, 0x6E, 0x64,
+ 0x20, 0x43, 0x45, 0x4F, 0x20, 0x6F, 0x66, 0x0D,
+ 0x05, 0x04, 0x54, 0x69, 0x6D, 0x62, 0x65, 0x72,
+ 0x6D, 0x69, 0x73, 0x74, 0x20, 0x43, 0x61, 0x73,
+ 0x75, 0x61, 0x6C, 0x0D, 0x05, 0x04, 0x46, 0x6F,
+ 0x6F, 0x74, 0x77, 0x65, 0x61, 0x72, 0x2C, 0x20,
+ 0x49, 0x6E, 0x63, 0x2E, 0x0D, 0x03, 0x54, 0x68,
+ 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4D, 0x49, 0x43, 0x48, 0x41,
+ 0x45, 0x4C, 0x20, 0x4B, 0x55, 0x43, 0x41, 0x4E,
+ 0x0D, 0x0D, 0x0D, 0x02, 0x44, 0x41, 0x52, 0x4B,
+ 0x4D, 0x4F, 0x4F, 0x52, 0x20, 0x53, 0x57, 0x41,
+ 0x4D, 0x50, 0x0D, 0x0D, 0x03, 0x48, 0x65, 0x72,
+ 0x62, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x43,
+ 0x48, 0x41, 0x52, 0x4C, 0x45, 0x53, 0x20, 0x4D,
+ 0x4F, 0x53, 0x48, 0x45, 0x52, 0x0D, 0x03, 0x42,
+ 0x72, 0x65, 0x75, 0x74, 0x68, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x42, 0x52, 0x49, 0x41, 0x4E,
+ 0x20, 0x53, 0x54, 0x52, 0x4F, 0x4D, 0x0D, 0x03,
+ 0x53, 0x77, 0x61, 0x6D, 0x70, 0x20, 0x52, 0x61,
+ 0x74, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x45,
+ 0x52, 0x49, 0x43, 0x20, 0x4D, 0x41, 0x52, 0x54,
+ 0x49, 0x4E, 0x0D, 0x03, 0x44, 0x72, 0x61, 0x67,
+ 0x6F, 0x6E, 0x66, 0x6C, 0x79, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x43, 0x4C, 0x49, 0x46, 0x46,
+ 0x20, 0x4C, 0x41, 0x57, 0x52, 0x45, 0x4E, 0x43,
+ 0x45, 0x0D, 0x03, 0x46, 0x69, 0x73, 0x68, 0x65,
+ 0x72, 0x6D, 0x61, 0x6E, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x45, 0x52, 0x49, 0x43, 0x20, 0x4D,
+ 0x41, 0x52, 0x54, 0x49, 0x4E, 0x0D, 0x03, 0x4F,
+ 0x74, 0x68, 0x65, 0x72, 0x20, 0x46, 0x69, 0x73,
+ 0x68, 0x65, 0x72, 0x6D, 0x61, 0x6E, 0x20, 0x20,
+ 0x20, 0x20, 0x05, 0x04, 0x52, 0x41, 0x59, 0x20,
+ 0x46, 0x41, 0x56, 0x45, 0x52, 0x4F, 0x0D, 0x03,
+ 0x54, 0x6F, 0x61, 0x64, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x4D, 0x41, 0x52, 0x43, 0x55, 0x53,
+ 0x20, 0x56, 0x41, 0x55, 0x47, 0x48, 0x4E, 0x0D,
+ 0x03, 0x4F, 0x74, 0x68, 0x65, 0x72, 0x20, 0x54,
+ 0x6F, 0x61, 0x64, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x42, 0x49, 0x4C, 0x4C, 0x20, 0x43, 0x4F,
+ 0x4C, 0x4C, 0x49, 0x4E, 0x53, 0x0D, 0x03, 0x54,
+ 0x68, 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x4D, 0x41, 0x52,
+ 0x49, 0x41, 0x20, 0x44, 0x45, 0x4C, 0x20, 0x4D,
+ 0x41, 0x52, 0x20, 0x4C, 0x45, 0x47, 0x47, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x4D, 0x4F, 0x52, 0x4E, 0x49,
+ 0x4E, 0x47, 0x4D, 0x49, 0x53, 0x54, 0x20, 0x56,
+ 0x41, 0x4C, 0x4C, 0x45, 0x59, 0x0D, 0x0D, 0x03,
+ 0x46, 0x61, 0x72, 0x6D, 0x65, 0x72, 0x20, 0x47,
+ 0x72, 0x65, 0x65, 0x6E, 0x62, 0x65, 0x72, 0x72,
+ 0x79, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x45,
+ 0x52, 0x49, 0x43, 0x20, 0x4D, 0x41, 0x52, 0x54,
+ 0x49, 0x4E, 0x0D, 0x03, 0x47, 0x68, 0x6F, 0x73,
+ 0x74, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x4D,
+ 0x41, 0x52, 0x43, 0x55, 0x53, 0x20, 0x56, 0x41,
+ 0x55, 0x47, 0x48, 0x4E, 0x0D, 0x03, 0x53, 0x63,
+ 0x61, 0x72, 0x65, 0x63, 0x72, 0x6F, 0x77, 0x20,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x4D, 0x41, 0x52,
+ 0x43, 0x55, 0x53, 0x20, 0x56, 0x41, 0x55, 0x47,
+ 0x48, 0x4E, 0x0D, 0x03, 0x46, 0x61, 0x74, 0x20,
+ 0x47, 0x75, 0x61, 0x72, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4D, 0x49, 0x43, 0x48, 0x41,
+ 0x45, 0x4C, 0x20, 0x4C, 0x45, 0x47, 0x47, 0x0D,
+ 0x03, 0x53, 0x6B, 0x69, 0x6E, 0x6E, 0x79, 0x20,
+ 0x47, 0x75, 0x61, 0x72, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x52, 0x49, 0x43, 0x4B, 0x20,
+ 0x22, 0x43, 0x4F, 0x43, 0x4F, 0x22, 0x20, 0x47,
+ 0x55, 0x53, 0x48, 0x0D, 0x03, 0x54, 0x68, 0x65,
+ 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4D, 0x49, 0x43, 0x48, 0x41,
+ 0x45, 0x4C, 0x20, 0x47, 0x52, 0x41, 0x59, 0x46,
+ 0x4F, 0x52, 0x44, 0x0D, 0x0D, 0x0D, 0x02, 0x54,
+ 0x4F, 0x57, 0x4E, 0x45, 0x20, 0x4F, 0x46, 0x20,
+ 0x48, 0x49, 0x47, 0x48, 0x4D, 0x4F, 0x4F, 0x4E,
+ 0x0D, 0x0D, 0x03, 0x53, 0x68, 0x65, 0x72, 0x69,
+ 0x66, 0x66, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04,
+ 0x52, 0x41, 0x59, 0x20, 0x46, 0x41, 0x56, 0x45,
+ 0x52, 0x4F, 0x0D, 0x03, 0x43, 0x61, 0x70, 0x27,
+ 0x6E, 0x20, 0x42, 0x6F, 0x62, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x42, 0x52, 0x49, 0x41, 0x4E,
+ 0x20, 0x53, 0x54, 0x52, 0x4F, 0x4D, 0x0D, 0x03,
+ 0x4F, 0x63, 0x74, 0x6F, 0x70, 0x75, 0x73, 0x20,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x43, 0x4C, 0x49,
+ 0x46, 0x46, 0x20, 0x4C, 0x41, 0x57, 0x52, 0x45,
+ 0x4E, 0x43, 0x45, 0x0D, 0x03, 0x50, 0x69, 0x72,
+ 0x61, 0x74, 0x65, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x44, 0x4F, 0x55, 0x47, 0x20, 0x42, 0x41,
+ 0x4B, 0x45, 0x52, 0x0D, 0x03, 0x4F, 0x74, 0x68,
+ 0x65, 0x72, 0x20, 0x50, 0x69, 0x72, 0x61, 0x74,
+ 0x65, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x45,
+ 0x52, 0x49, 0x43, 0x20, 0x4D, 0x41, 0x52, 0x54,
+ 0x49, 0x4E, 0x0D, 0x03, 0x41, 0x6E, 0x6F, 0x74,
+ 0x68, 0x65, 0x72, 0x20, 0x50, 0x69, 0x72, 0x61,
+ 0x74, 0x65, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04,
+ 0x45, 0x52, 0x49, 0x43, 0x20, 0x52, 0x41, 0x4E,
+ 0x44, 0x41, 0x4C, 0x4C, 0x0D, 0x03, 0x53, 0x71,
+ 0x75, 0x61, 0x77, 0x6B, 0x79, 0x20, 0x74, 0x68,
+ 0x65, 0x20, 0x50, 0x61, 0x72, 0x72, 0x6F, 0x74,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x43, 0x4C,
+ 0x49, 0x46, 0x46, 0x20, 0x4C, 0x41, 0x57, 0x52,
+ 0x45, 0x4E, 0x43, 0x45, 0x0D, 0x03, 0x53, 0x61,
+ 0x69, 0x6C, 0x6F, 0x72, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x54, 0x49, 0x4D, 0x20, 0x43, 0x4C,
+ 0x41, 0x52, 0x4B, 0x0D, 0x03, 0x4F, 0x74, 0x68,
+ 0x65, 0x72, 0x20, 0x53, 0x61, 0x69, 0x6C, 0x6F,
+ 0x72, 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x4D,
+ 0x41, 0x52, 0x43, 0x55, 0x53, 0x20, 0x56, 0x41,
+ 0x55, 0x47, 0x48, 0x4E, 0x0D, 0x03, 0x54, 0x68,
+ 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20,
+ 0x20, 0x20, 0x05, 0x04, 0x4A, 0x45, 0x4E, 0x4E,
+ 0x59, 0x20, 0x4B, 0x55, 0x43, 0x41, 0x4E, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x56, 0x4F, 0x4C, 0x43, 0x41,
+ 0x4E, 0x49, 0x41, 0x0D, 0x0D, 0x03, 0x4A, 0x65,
+ 0x73, 0x73, 0x69, 0x63, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4A, 0x55, 0x4C, 0x49, 0x45,
+ 0x20, 0x43, 0x48, 0x49, 0x52, 0x49, 0x4C, 0x41,
+ 0x0D, 0x03, 0x53, 0x6D, 0x61, 0x72, 0x6D, 0x79,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x44, 0x4F,
+ 0x55, 0x47, 0x20, 0x42, 0x41, 0x4B, 0x45, 0x52,
+ 0x0D, 0x03, 0x42, 0x75, 0x72, 0x65, 0x61, 0x75,
+ 0x63, 0x72, 0x61, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x45, 0x52, 0x49, 0x43, 0x20, 0x52,
+ 0x41, 0x4E, 0x44, 0x41, 0x4C, 0x4C, 0x0D, 0x03,
+ 0x42, 0x75, 0x72, 0x65, 0x61, 0x75, 0x63, 0x72,
+ 0x61, 0x74, 0x72, 0x65, 0x73, 0x73, 0x20, 0x20,
+ 0x20, 0x20, 0x05, 0x04, 0x4A, 0x55, 0x4C, 0x49,
+ 0x45, 0x20, 0x42, 0x41, 0x4C, 0x53, 0x41, 0x4D,
+ 0x4F, 0x0D, 0x03, 0x4D, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x44, 0x45, 0x4E, 0x49, 0x53,
+ 0x45, 0x20, 0x53, 0x43, 0x48, 0x41, 0x46, 0x45,
+ 0x52, 0x0D, 0x03, 0x50, 0x61, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4B, 0x45, 0x4E, 0x4E, 0x45,
+ 0x54, 0x48, 0x20, 0x4A, 0x2E, 0x20, 0x4B, 0x55,
+ 0x43, 0x41, 0x4E, 0x0D, 0x03, 0x54, 0x68, 0x65,
+ 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x52, 0x41, 0x4D, 0x49, 0x4E,
+ 0x20, 0x46, 0x41, 0x54, 0x48, 0x49, 0x45, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x45, 0x4E, 0x43, 0x48, 0x41,
+ 0x4E, 0x54, 0x45, 0x44, 0x20, 0x46, 0x4F, 0x52,
+ 0x45, 0x53, 0x54, 0x0D, 0x0D, 0x03, 0x4B, 0x6E,
+ 0x69, 0x67, 0x68, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x45, 0x52, 0x49, 0x43, 0x20,
+ 0x4D, 0x41, 0x52, 0x54, 0x49, 0x4E, 0x0D, 0x03,
+ 0x50, 0x65, 0x74, 0x72, 0x69, 0x66, 0x69, 0x65,
+ 0x64, 0x20, 0x54, 0x72, 0x65, 0x65, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x05, 0x04, 0x44, 0x4F, 0x55,
+ 0x47, 0x20, 0x42, 0x41, 0x4B, 0x45, 0x52, 0x0D,
+ 0x03, 0x55, 0x6E, 0x69, 0x6F, 0x6E, 0x20, 0x53,
+ 0x71, 0x75, 0x69, 0x72, 0x72, 0x65, 0x6C, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x54, 0x49,
+ 0x4D, 0x20, 0x43, 0x4C, 0x41, 0x52, 0x4B, 0x0D,
+ 0x03, 0x4D, 0x79, 0x73, 0x74, 0x69, 0x63, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x43, 0x48,
+ 0x41, 0x52, 0x4C, 0x45, 0x53, 0x20, 0x4D, 0x4F,
+ 0x53, 0x48, 0x45, 0x52, 0x0D, 0x03, 0x4F, 0x74,
+ 0x68, 0x65, 0x72, 0x20, 0x4D, 0x79, 0x73, 0x74,
+ 0x69, 0x63, 0x20, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x43, 0x4F, 0x4E, 0x4E, 0x45, 0x52, 0x20,
+ 0x46, 0x52, 0x45, 0x46, 0x46, 0x20, 0x43, 0x4F,
+ 0x43, 0x48, 0x52, 0x41, 0x4E, 0x0D, 0x03, 0x54,
+ 0x68, 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x05, 0x04, 0x4C, 0x59,
+ 0x4E, 0x44, 0x41, 0x20, 0x57, 0x41, 0x53, 0x4B,
+ 0x4F, 0x4D, 0x0D, 0x0D, 0x0D, 0x02, 0x41, 0x4C,
+ 0x50, 0x49, 0x4E, 0x49, 0x41, 0x0D, 0x0D, 0x03,
+ 0x41, 0x62, 0x6F, 0x6D, 0x69, 0x6E, 0x61, 0x62,
+ 0x6C, 0x65, 0x20, 0x53, 0x6E, 0x6F, 0x77, 0x6D,
+ 0x61, 0x6E, 0x20, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x44, 0x4F, 0x55, 0x47, 0x20, 0x42, 0x41,
+ 0x4B, 0x45, 0x52, 0x0D, 0x03, 0x4D, 0x6F, 0x6D,
+ 0x6D, 0x79, 0x20, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x44, 0x45, 0x4E, 0x49, 0x53, 0x45, 0x20,
+ 0x53, 0x43, 0x48, 0x41, 0x46, 0x45, 0x52, 0x0D,
+ 0x03, 0x42, 0x61, 0x62, 0x79, 0x20, 0x41, 0x6C,
+ 0x62, 0x65, 0x72, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x54, 0x48, 0x45, 0x4F, 0x44,
+ 0x4F, 0x52, 0x45, 0x20, 0x4D, 0x4F, 0x52, 0x52,
+ 0x49, 0x53, 0x0D, 0x03, 0x48, 0x75, 0x6E, 0x74,
+ 0x65, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20, 0x05,
+ 0x04, 0x42, 0x49, 0x4C, 0x4C, 0x20, 0x43, 0x4F,
+ 0x4C, 0x4C, 0x49, 0x4E, 0x53, 0x0D, 0x03, 0x4F,
+ 0x74, 0x68, 0x65, 0x72, 0x20, 0x48, 0x75, 0x6E,
+ 0x74, 0x65, 0x72, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x05, 0x04, 0x42, 0x4F, 0x42, 0x20, 0x42, 0x4C,
+ 0x4F, 0x4D, 0x47, 0x52, 0x45, 0x4E, 0x0D, 0x03,
+ 0x46, 0x6F, 0x6F, 0x74, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x53, 0x50, 0x45, 0x45, 0x44,
+ 0x59, 0x20, 0x44, 0x41, 0x57, 0x4E, 0x20, 0x48,
+ 0x55, 0x4E, 0x54, 0x5A, 0x49, 0x4E, 0x47, 0x45,
+ 0x52, 0x0D, 0x03, 0x53, 0x74, 0x75, 0x6E, 0x74,
+ 0x20, 0x48, 0x61, 0x6E, 0x64, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x05, 0x04, 0x44, 0x41, 0x4E, 0x49,
+ 0x45, 0x4C, 0x20, 0x4B, 0x55, 0x43, 0x41, 0x4E,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x02, 0x54, 0x48, 0x45, 0x20, 0x48, 0x41, 0x4E,
+ 0x44, 0x20, 0x4F, 0x46, 0x20, 0x46, 0x41, 0x54,
+ 0x45, 0x0D, 0x02, 0x54, 0x45, 0x41, 0x4D, 0x20,
+ 0x43, 0x44, 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x43,
+ 0x6F, 0x64, 0x65, 0x6A, 0x61, 0x6D, 0x6D, 0x65,
+ 0x72, 0x73, 0x0D, 0x02, 0x4D, 0x49, 0x4B, 0x45,
+ 0x20, 0x61, 0x6E, 0x64, 0x20, 0x4D, 0x49, 0x4B,
+ 0x45, 0x0D, 0x0D, 0x02, 0x56, 0x6F, 0x63, 0x61,
+ 0x6C, 0x20, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x69, 0x6F, 0x6E, 0x20, 0x62, 0x79, 0x0D, 0x02,
+ 0x4A, 0x4F, 0x45, 0x20, 0x4B, 0x55, 0x43, 0x41,
+ 0x4E, 0x0D, 0x0D, 0x02, 0x44, 0x69, 0x67, 0x69,
+ 0x74, 0x61, 0x6C, 0x20, 0x53, 0x61, 0x6D, 0x70,
+ 0x6C, 0x69, 0x6E, 0x67, 0x20, 0x62, 0x79, 0x0D,
+ 0x02, 0x50, 0x41, 0x54, 0x20, 0x43, 0x4F, 0x4C,
+ 0x4C, 0x49, 0x4E, 0x53, 0x20, 0x61, 0x6E, 0x64,
+ 0x20, 0x44, 0x57, 0x49, 0x47, 0x48, 0x54, 0x20,
+ 0x4F, 0x4B, 0x41, 0x48, 0x41, 0x52, 0x41, 0x0D,
+ 0x0D, 0x02, 0x41, 0x75, 0x64, 0x69, 0x6F, 0x20,
+ 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6F,
+ 0x6E, 0x20, 0x62, 0x79, 0x0D, 0x02, 0x50, 0x41,
+ 0x55, 0x4C, 0x20, 0x4D, 0x55, 0x44, 0x52, 0x41,
+ 0x0D, 0x0D, 0x02, 0x52, 0x65, 0x63, 0x6F, 0x72,
+ 0x64, 0x65, 0x64, 0x20, 0x61, 0x6E, 0x64, 0x20,
+ 0x45, 0x6E, 0x67, 0x69, 0x6E, 0x65, 0x65, 0x72,
+ 0x65, 0x64, 0x20, 0x62, 0x79, 0x0D, 0x02, 0x54,
+ 0x4F, 0x54, 0x4F, 0x20, 0x5A, 0x41, 0x52, 0x41,
+ 0x20, 0x61, 0x74, 0x20, 0x4D, 0x69, 0x64, 0x69,
+ 0x57, 0x6F, 0x72, 0x6B, 0x73, 0x0D, 0x0D, 0x02,
+ 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6C, 0x20,
+ 0x54, 0x65, 0x63, 0x68, 0x6E, 0x6F, 0x2D, 0x57,
+ 0x69, 0x7A, 0x61, 0x72, 0x64, 0x72, 0x79, 0x20,
+ 0x62, 0x79, 0x0D, 0x02, 0x53, 0x43, 0x4F, 0x54,
+ 0x54, 0x20, 0x42, 0x4F, 0x57, 0x45, 0x4E, 0x2C,
+ 0x20, 0x44, 0x41, 0x56, 0x49, 0x44, 0x20, 0x44,
+ 0x45, 0x54, 0x54, 0x4D, 0x45, 0x52, 0x2C, 0x0D,
+ 0x02, 0x61, 0x6E, 0x64, 0x20, 0x4A, 0x4F, 0x45,
+ 0x20, 0x42, 0x4F, 0x53, 0x54, 0x49, 0x43, 0x0D,
+ 0x0D, 0x02, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76,
+ 0x69, 0x73, 0x69, 0x6E, 0x67, 0x20, 0x50, 0x72,
+ 0x6F, 0x64, 0x75, 0x63, 0x65, 0x72, 0x0D, 0x02,
+ 0x52, 0x49, 0x43, 0x4B, 0x20, 0x47, 0x55, 0x53,
+ 0x48, 0x0D, 0x0D, 0x02, 0x50, 0x72, 0x6F, 0x64,
+ 0x75, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x20, 0x41,
+ 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6E, 0x74,
+ 0x0D, 0x02, 0x44, 0x41, 0x56, 0x49, 0x44, 0x20,
+ 0x50, 0x4F, 0x4B, 0x4F, 0x52, 0x4E, 0x59, 0x0D,
+ 0x0D, 0x02, 0x50, 0x72, 0x6F, 0x64, 0x75, 0x63,
+ 0x74, 0x20, 0x43, 0x6F, 0x6F, 0x72, 0x64, 0x69,
+ 0x6E, 0x61, 0x74, 0x6F, 0x72, 0x0D, 0x02, 0x4A,
+ 0x45, 0x46, 0x46, 0x20, 0x5A, 0x49, 0x45, 0x4C,
+ 0x0D, 0x0D, 0x02, 0x51, 0x75, 0x61, 0x6C, 0x69,
+ 0x74, 0x79, 0x20, 0x41, 0x73, 0x73, 0x75, 0x72,
+ 0x61, 0x6E, 0x63, 0x65, 0x0D, 0x02, 0x47, 0x4C,
+ 0x45, 0x4E, 0x4E, 0x20, 0x22, 0x47, 0x4C, 0x45,
+ 0x4E, 0x4E, 0x42, 0x4F, 0x22, 0x20, 0x53, 0x50,
+ 0x45, 0x52, 0x52, 0x59, 0x0D, 0x02, 0x42, 0x52,
+ 0x41, 0x44, 0x20, 0x22, 0x53, 0x54, 0x49, 0x4E,
+ 0x47, 0x22, 0x20, 0x52, 0x4F, 0x42, 0x45, 0x52,
+ 0x54, 0x53, 0x0D, 0x02, 0x43, 0x48, 0x41, 0x44,
+ 0x20, 0x53, 0x4F, 0x41, 0x52, 0x45, 0x53, 0x0D,
+ 0x02, 0x43, 0x48, 0x52, 0x49, 0x53, 0x20, 0x4D,
+ 0x63, 0x46, 0x41, 0x52, 0x4C, 0x41, 0x4E, 0x44,
+ 0x0D, 0x02, 0x43, 0x48, 0x52, 0x49, 0x53, 0x20,
+ 0x22, 0x44, 0x4F, 0x4F, 0x4D, 0x22, 0x20, 0x52,
+ 0x55, 0x42, 0x59, 0x4F, 0x52, 0x0D, 0x02, 0x44,
+ 0x41, 0x56, 0x45, 0x20, 0x4D, 0x41, 0x58, 0x45,
+ 0x59, 0x0D, 0x02, 0x4A, 0x45, 0x46, 0x46, 0x20,
+ 0x42, 0x55, 0x43, 0x43, 0x45, 0x4C, 0x4C, 0x41,
+ 0x54, 0x4F, 0x0D, 0x02, 0x4A, 0x45, 0x53, 0x53,
+ 0x45, 0x20, 0x22, 0x4C, 0x41, 0x52, 0x47, 0x45,
+ 0x59, 0x22, 0x20, 0x43, 0x4C, 0x45, 0x4D, 0x49,
+ 0x54, 0x0D, 0x02, 0x4A, 0x4F, 0x48, 0x4E, 0x20,
+ 0x53, 0x57, 0x45, 0x45, 0x4E, 0x59, 0x0D, 0x02,
+ 0x4A, 0x4F, 0x4E, 0x20, 0x57, 0x49, 0x4C, 0x4C,
+ 0x49, 0x41, 0x4D, 0x53, 0x0D, 0x02, 0x4B, 0x45,
+ 0x4E, 0x4E, 0x45, 0x54, 0x48, 0x20, 0x22, 0x45,
+ 0x58, 0x54, 0x45, 0x52, 0x4D, 0x49, 0x4E, 0x41,
+ 0x54, 0x4F, 0x52, 0x22, 0x20, 0x44, 0x55, 0x4E,
+ 0x4E, 0x45, 0x0D, 0x02, 0x4D, 0x49, 0x4B, 0x45,
+ 0x20, 0x22, 0x44, 0x41, 0x52, 0x4B, 0x4E, 0x49,
+ 0x47, 0x48, 0x54, 0x22, 0x20, 0x4C, 0x49, 0x47,
+ 0x48, 0x54, 0x4E, 0x45, 0x52, 0x0D, 0x02, 0x4D,
+ 0x49, 0x54, 0x43, 0x48, 0x20, 0x46, 0x45, 0x4C,
+ 0x44, 0x4D, 0x41, 0x4E, 0x0D, 0x02, 0x50, 0x41,
+ 0x55, 0x4C, 0x20, 0x53, 0x48, 0x4F, 0x45, 0x4E,
+ 0x45, 0x52, 0x0D, 0x02, 0x53, 0x43, 0x4F, 0x54,
+ 0x54, 0x20, 0x4D, 0x41, 0x4E, 0x4E, 0x49, 0x4E,
+ 0x47, 0x0D, 0x02, 0x54, 0x49, 0x4D, 0x20, 0x22,
+ 0x44, 0x41, 0x52, 0x4B, 0x57, 0x4F, 0x4C, 0x46,
+ 0x22, 0x20, 0x46, 0x52, 0x49, 0x54, 0x5A, 0x0D,
+ 0x02, 0x54, 0x52, 0x4F, 0x59, 0x20, 0x4C, 0x45,
+ 0x4F, 0x4E, 0x41, 0x52, 0x44, 0x0D, 0x0D, 0x02,
+ 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6C, 0x20,
+ 0x54, 0x68, 0x61, 0x6E, 0x6B, 0x73, 0x20, 0x74,
+ 0x6F, 0x0D, 0x02, 0x42, 0x41, 0x52, 0x42, 0x41,
+ 0x52, 0x41, 0x20, 0x52, 0x49, 0x43, 0x48, 0x4D,
+ 0x41, 0x4E, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x41, 0x6E, 0x79, 0x20, 0x72,
+ 0x65, 0x73, 0x65, 0x6D, 0x62, 0x6C, 0x61, 0x6E,
+ 0x63, 0x65, 0x20, 0x69, 0x6E, 0x20, 0x74, 0x68,
+ 0x69, 0x73, 0x20, 0x67, 0x61, 0x6D, 0x65, 0x20,
+ 0x74, 0x6F, 0x20, 0x0D, 0x02, 0x70, 0x65, 0x72,
+ 0x73, 0x6F, 0x6E, 0x73, 0x20, 0x6F, 0x72, 0x20,
+ 0x61, 0x70, 0x70, 0x65, 0x6E, 0x64, 0x61, 0x67,
+ 0x65, 0x73, 0x2C, 0x20, 0x6C, 0x69, 0x76, 0x69,
+ 0x6E, 0x67, 0x20, 0x6F, 0x72, 0x0D, 0x02, 0x64,
+ 0x65, 0x61, 0x64, 0x2C, 0x20, 0x69, 0x73, 0x20,
+ 0x70, 0x75, 0x72, 0x65, 0x6C, 0x79, 0x20, 0x63,
+ 0x6F, 0x69, 0x6E, 0x63, 0x69, 0x64, 0x65, 0x6E,
+ 0x74, 0x61, 0x6C, 0x2E, 0x0D, 0x0D, 0x02, 0x43,
+ 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74,
+ 0x20, 0x28, 0x43, 0x29, 0x20, 0x31, 0x39, 0x39,
+ 0x34, 0x2C, 0x20, 0x57, 0x65, 0x73, 0x74, 0x77,
+ 0x6F, 0x6F, 0x64, 0x20, 0x53, 0x74, 0x75, 0x64,
+ 0x69, 0x6F, 0x73, 0x2C, 0x20, 0x49, 0x6E, 0x63,
+ 0x2E, 0x0D, 0x02, 0x41, 0x6C, 0x6C, 0x20, 0x72,
+ 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2E, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x00
+};
+
+static const ByteProvider k2SeqplayCreditsDOSCDDemoProvider = { ARRAYSIZE(k2SeqplayCreditsDOSCDDemo), k2SeqplayCreditsDOSCDDemo };
+
+static const char *const k2SeqplayCreditsSpecialDOSCDDemo[2] = {
+ "Codejammers",
+ "MIKE and MIKE"
+};
+
+static const StringListProvider k2SeqplayCreditsSpecialDOSCDDemoProvider = { ARRAYSIZE(k2SeqplayCreditsSpecialDOSCDDemo), k2SeqplayCreditsSpecialDOSCDDemo };
+
+static const char *const k2SeqplaySfxFilesDOSCDDemo[48] = {
+ "eintro1",
+ "eintro2",
+ "eintro3",
+ "eintro4",
+ "eintro5",
+ "eintro6",
+ "eintro7",
+ "eintro8",
+ "eintro9",
+ "eintro10",
+ "eintro11",
+ "eintro12",
+ "eglow",
+ "0000210",
+ "0000130",
+ "0000180",
+ "0000160",
+ "asong",
+ "crowcaw",
+ "eyerub2",
+ "pluck3",
+ "rodnreel",
+ "frog1",
+ "scavmov2",
+ "lambmom3",
+ "lambkid1",
+ "thunder2",
+ "thunder3",
+ "wind6",
+ "h2odrop2",
+ "gasleak",
+ "polgulp1",
+ "hndslap1",
+ "burp1",
+ "0000220",
+ "0000230",
+ "0000250",
+ "0000260",
+ "0000270",
+ "0000280",
+ "0000290",
+ "0000300",
+ "0000310",
+ "0000320",
+ "0000330",
+ "scream1",
+ "theend",
+ ""
+};
+
+static const StringListProvider k2SeqplaySfxFilesDOSCDDemoProvider = { ARRAYSIZE(k2SeqplaySfxFilesDOSCDDemo), k2SeqplaySfxFilesDOSCDDemo };
+
+static const HoFSequence k2SeqplaySeqDataDOSCDDemoSeq[16] = {
+ { 0x0002, "", "virgin.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0064, 0, 0, 0x001E },
+ { 0x0001, "westwood.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0012, 0x0006, 0, 0, 0x00A0 },
+ { 0x0001, "title.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001A, 0x0006, 0, 0, 0x000A },
+ { 0x0002, "", "over.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "library.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "hand.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x005A },
+ { 0x0001, "point.wsa", "", 4, 8, 0xFFFF, 0xFFFF, 0x0000, 0x0026, 0x0007, 0, 0, 0x00C8 },
+ { 0x0001, "zanfaun.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0033, 0x0010, 0, 0, 0x00F0 },
+ { 0x0001, "funters.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "ferb.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x0010, 0, 0, 0x001E },
+ { 0x0001, "fish.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0038, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "fheep.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "farmer.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0016, 0x000C, 0, 0, 0x0064 },
+ { 0x0001, "fuards.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0018, 0x000E, 0, 0, 0x001E },
+ { 0x0001, "firates.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0025, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "frash.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000C, 0x000A, 0, 0, 0x0154 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDDemoSeqNestedControl7[18] = {
+ { 0, 10 },
+ { 1, 10 },
+ { 2, 10 },
+ { 3, 10 },
+ { 4, 10 },
+ { 5, 10 },
+ { 6, 10 },
+ { 7, 10 },
+ { 8, 10 },
+ { 9, 10 },
+ { 8, 10 },
+ { 7, 10 },
+ { 6, 10 },
+ { 5, 40 },
+ { 4, 10 },
+ { 3, 10 },
+ { 2, 10 },
+ { 1, 10 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDDemoSeqNestedControl10[17] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 6 },
+ { 6, 6 },
+ { 7, 6 },
+ { 8, 6 },
+ { 9, 6 },
+ { 10, 6 },
+ { 11, 6 },
+ { 11, 12 },
+ { 12, 12 },
+ { 13, 12 },
+ { 12, 12 },
+ { 11, 12 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDDemoSeqNestedControl11[9] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 64 },
+ { 5, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDDemoSeqNestedControl12[16] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDDemoSeqNestedControl13[5] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 1, 6 },
+ { 0, 1 }
+};
+
+static const FrameControl k2SeqplaySeqDataDOSCDDemoSeqNestedControl14[8] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 2, 6 },
+ { 1, 6 }
+};
+
+static const HoFNestedSequence k2SeqplaySeqDataDOSCDDemoSeqNested[15] = {
+ { 0x000C, "figgle.wsa", 0, 3, 60, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over1.wsa", 0, 10, 10, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over2.wsa", 0, 11, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "forest.wsa", 0, 22, 6, 0, 0, 0, NULL, 1, 3 },
+ { 0x0008, "dragon.wsa", 0, 11, 6, 0, 0, 0, NULL, 2, 0 },
+ { 0x0002, "darm.wsa", 0, 19, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "library.wsa", 0, 33, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x002A, "library.wsa", 0, 18, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDDemoSeqNestedControl7), k2SeqplaySeqDataDOSCDDemoSeqNestedControl7, 0, 0 },
+ { 0x000A, "marco.wsa", 0, 37, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "hand1a.wsa", 0, 34, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x002A, "hand1b.wsa", 0, 16, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDDemoSeqNestedControl10), k2SeqplaySeqDataDOSCDDemoSeqNestedControl10, 0, 0 },
+ { 0x002A, "hand1c.wsa", 0, 9, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDDemoSeqNestedControl11), k2SeqplaySeqDataDOSCDDemoSeqNestedControl11, 0, 0 },
+ { 0x002C, "hand2.wsa", 0, 2, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDDemoSeqNestedControl12), k2SeqplaySeqDataDOSCDDemoSeqNestedControl12, 5, 0 },
+ { 0x002C, "hand3.wsa", 0, 4, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDDemoSeqNestedControl13), k2SeqplaySeqDataDOSCDDemoSeqNestedControl13, 5, 0 },
+ { 0x002C, "hand4.wsa", 0, 8, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataDOSCDDemoSeqNestedControl14), k2SeqplaySeqDataDOSCDDemoSeqNestedControl14, 5, 0 }
+};
+
+static const HoFSequenceProvider k2SeqplaySeqDataDOSCDDemoProvider = { ARRAYSIZE(k2SeqplaySeqDataDOSCDDemoSeq), k2SeqplaySeqDataDOSCDDemoSeq, ARRAYSIZE(k2SeqplaySeqDataDOSCDDemoSeqNested), k2SeqplaySeqDataDOSCDDemoSeqNested };
+
+static const char *const k2SeqplayIntroTracksDOSCDDemo[1] = {
+ "k2intro"
+};
+
+static const StringListProvider k2SeqplayIntroTracksDOSCDDemoProvider = { ARRAYSIZE(k2SeqplayIntroTracksDOSCDDemo), k2SeqplayIntroTracksDOSCDDemo };
+
+static const char *const k2SeqplayFinaleTracksDOSCDDemo[1] = {
+ "k2finale"
+};
+
+static const StringListProvider k2SeqplayFinaleTracksDOSCDDemoProvider = { ARRAYSIZE(k2SeqplayFinaleTracksDOSCDDemo), k2SeqplayFinaleTracksDOSCDDemo };
+
+static const char *const k2IngameSfxFilesDOSCDDemo[178] = {
+ "ALCHEMY2",
+ "BIGSLAM",
+ "BITE1",
+ "BLINK1",
+ "BOING1",
+ "BUBBLE1",
+ "BUBBLE2",
+ "BURP1",
+ "BUTTON6",
+ "CAULDRN2",
+ "CHEST",
+ "CLOTHES1",
+ "CROCLAF4",
+ "CRY1",
+ "CRY2",
+ "DOORMTCL",
+ "DOORMTOP",
+ "DOORWDCL",
+ "DOORWDOP",
+ "DRUM1",
+ "DRUM2",
+ "DRUM3",
+ "DRUM4",
+ "DRUM5",
+ "DRUM6",
+ "DRUM7",
+ "EYERUB2",
+ "FALL1",
+ "FALL3",
+ "FNGRSNAP",
+ "FORMSPL1",
+ "FROG1",
+ "FROGMIX2",
+ "GASLEAK",
+ "GLOWY1",
+ "GOOD3",
+ "GOOD5",
+ "GROWTWIG",
+ "H2ODROP2",
+ "H2OPLANT",
+ "HACHUCKD",
+ "HAYFALL2",
+ "HAYSRCH4",
+ "ICECUBE",
+ "KEYOPEN",
+ "LAMBKID1",
+ "LAMBMOM3",
+ "LAUGH1",
+ "LAUGH3",
+ "LAUGH4",
+ "LIZLISP",
+ "MAKESPL1",
+ "MSTDOOM1",
+ "ORCMOVE",
+ "PLUCK3",
+ "POLGULP1",
+ "PORTCUL",
+ "POURH20",
+ "RIP2",
+ "RODNREEL",
+ "ROWBOAT1",
+ "RUCKUS1",
+ "SCAVMOV2",
+ "SCRATCH1",
+ "SNAKSPEL",
+ "SNEEZE1",
+ "SNIFF1",
+ "SNOREIN3",
+ "SNOROUT",
+ "SPLASH1",
+ "SQUEAK1",
+ "SQUEAK2",
+ "SQUEAK3",
+ "SQUISH1",
+ "SQUISH2",
+ "STEAM",
+ "STEAM3",
+ "STRETCH1",
+ "SWING",
+ "TREZA1",
+ "TURNPAG2",
+ "TWIGSNAP",
+ "UGH1",
+ "WHEEL4",
+ "WINGS1",
+ "YAWN1",
+ "ZOOM5",
+ "FILBOTL",
+ "H2OPOUR1",
+ "JAILDOR1",
+ "JAILLOK1",
+ "CASHREG1",
+ "SWISH1",
+ "TURNBOAT",
+ "CLAPPING",
+ "CRUNCH1",
+ "WHEEL6",
+ "LITEMAG",
+ "SHELDOWN",
+ "SHELSLID",
+ "ZOW2",
+ "ZANLOOP1",
+ "SCREECH2",
+ "PANTING",
+ "TREX1",
+ "TREX5",
+ "TREX3",
+ "QUAKE",
+ "WRINGH2O",
+ "SPLAT2",
+ "OCEAN1",
+ "SPLAT3",
+ "CROCLAF5",
+ "FALL5",
+ "ZCMON2",
+ "ZWAIT3",
+ "ZNO2",
+ "CROCLAF7",
+ "CRICKET1",
+ "FIREBRTH",
+ "COW2",
+ "SAP2",
+ "PMTLHI",
+ "FROGSIGH",
+ "CRICEND",
+ "CRY3",
+ "CRY4",
+ "SHROOM1",
+ "DRIP1",
+ "SWIM4",
+ "CUCKOO2",
+ "PUNCH1",
+ "SNORT3",
+ "STAMPER2",
+ "WALLFALL",
+ "WOODFAL1",
+ "SPRAY1",
+ "OHNO1",
+ "YAHOO1",
+ "YIPEE1",
+ "WIND1",
+ "WIND3",
+ "WIND6",
+ "BLOWUP2",
+ "BOATLOP2",
+ "ZGIGGL1",
+ "ZCOUGH1",
+ "CRUSH",
+ "ALARM3",
+ "APPLEAT",
+ "BABYCRY1",
+ "BABYLAF1",
+ "BABYLIK1",
+ "GEARMX3",
+ "GLASBRK2",
+ "HANDKIL1",
+ "HNDSLAP1",
+ "ICEPICK1",
+ "KISS3",
+ "LOLIFAL1",
+ "PAGEBURN",
+ "PRTYHORN",
+ "SCREAM1",
+ "SPARKHIT",
+ "SPRING2",
+ "ZANLAND1",
+ "BIGBOW",
+ "BOWFORM",
+ "BULBHIT",
+ "EYELITE",
+ "ROOFBOW",
+ "FBIGFOT1",
+ "BIGFOOT4",
+ "DORSTNCL",
+ "CROWCAW",
+ "THUNDER2",
+ "THUNDER3",
+ "TOILET"
+};
+
+static const StringListProvider k2IngameSfxFilesDOSCDDemoProvider = { ARRAYSIZE(k2IngameSfxFilesDOSCDDemo), k2IngameSfxFilesDOSCDDemo };
+
+static const byte k2IngameSfxIndexDOSCDDemo[856] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0x47, 0x00, 0x05, 0x00, 0x22, 0x00, 0x00, 0x00,
+ 0x1F, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
+ 0x36, 0x00, 0x05, 0x00, 0x07, 0x00, 0x00, 0x00,
+ 0x3F, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x45, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00,
+ 0x7B, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00,
+ 0x3C, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00,
+ 0x4E, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x00, 0x00, 0x43, 0x00, 0x04, 0x00,
+ 0x56, 0x00, 0x00, 0x00, 0x40, 0x00, 0x05, 0x00,
+ 0x40, 0x00, 0x05, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x64, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00,
+ 0x12, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00,
+ 0x1D, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x49, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00,
+ 0x09, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
+ 0x0D, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
+ 0x0C, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00,
+ 0x21, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
+ 0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0x1B, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
+ 0x15, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
+ 0x19, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00,
+ 0x1A, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
+ 0x2A, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00,
+ 0x2D, 0x00, 0x00, 0x00, 0x27, 0x00, 0x05, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x46, 0x00, 0x05, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
+ 0x34, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
+ 0x4F, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
+ 0x0F, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x78, 0x00, 0x06, 0x00,
+ 0x50, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x33, 0x00, 0x06, 0x00, 0x3A, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x1E, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00,
+ 0x23, 0x00, 0x05, 0x00, 0x24, 0x00, 0x05, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
+ 0x48, 0x00, 0x05, 0x00, 0x20, 0x00, 0x00, 0x00,
+ 0x63, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x7A, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00,
+ 0x10, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00,
+ 0x5D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00,
+ 0x30, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
+ 0x61, 0x00, 0x05, 0x00, 0x58, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x65, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00,
+ 0x67, 0x00, 0x00, 0x00, 0x68, 0x00, 0x05, 0x00,
+ 0x69, 0x00, 0x05, 0x00, 0x6A, 0x00, 0x05, 0x00,
+ 0x01, 0x00, 0x05, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x90, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x6F, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x7F, 0x00, 0x06, 0x00, 0x7D, 0x00, 0x00, 0x00,
+ 0x7E, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x80, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00,
+ 0x84, 0x00, 0x00, 0x00, 0x83, 0x00, 0x00, 0x00,
+ 0x82, 0x00, 0x05, 0x00, 0x86, 0x00, 0x00, 0x00,
+ 0x88, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00,
+ 0x8A, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00,
+ 0x87, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x00, 0x00,
+ 0x8D, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x00, 0x00,
+ 0x8F, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00,
+ 0x93, 0x00, 0x05, 0x00, 0x94, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0x96, 0x00, 0x05, 0x00,
+ 0x97, 0x00, 0x00, 0x00, 0x98, 0x00, 0x04, 0x00,
+ 0x99, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00, 0x00,
+ 0x9B, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00,
+ 0x9D, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x00, 0x00,
+ 0x9F, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00,
+ 0xA1, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00,
+ 0xA3, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00,
+ 0xA5, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x00,
+ 0xA7, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00,
+ 0xA9, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00, 0x00,
+ 0xAB, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x00, 0x00,
+ 0xAD, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x05, 0x00,
+ 0xAF, 0x00, 0x00, 0x00, 0xB0, 0x00, 0x00, 0x00,
+ 0xB1, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k2IngameSfxIndexDOSCDDemoProvider = { ARRAYSIZE(k2IngameSfxIndexDOSCDDemo), k2IngameSfxIndexDOSCDDemo };
+
+static const char *const k2IngameTracksDOSCDDemo[15] = {
+ "K2TEST1",
+ "K2TEST2",
+ "K2TEST3",
+ "K2TEST4",
+ "K2TEST5",
+ "K2TEST6",
+ "K2TEST7",
+ "K2TEST8",
+ "K2TEST9",
+ "K2TEST10",
+ "K2TEST11",
+ "K2TEST12",
+ "K2TEST13",
+ "K2TEST14",
+ "K2TEST15"
+};
+
+static const StringListProvider k2IngameTracksDOSCDDemoProvider = { ARRAYSIZE(k2IngameTracksDOSCDDemo), k2IngameTracksDOSCDDemo };
+
+static const byte k2IngameTalkObjIndexDOSCDDemo[132] = {
+ 0x20, 0x43, 0x6F, 0x72, 0x72, 0x75, 0x70, 0x74,
+ 0x21, 0x21, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x12, 0x00, 0x18, 0x00, 0x26, 0x00, 0x41, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x04, 0x00, 0x05, 0x00, 0x06, 0x00, 0x07, 0x00,
+ 0x08, 0x00, 0x09, 0x00, 0x0A, 0x00, 0x11, 0x00,
+ 0x12, 0x00, 0x13, 0x00, 0x14, 0x00, 0x15, 0x00,
+ 0x2A, 0x00, 0x17, 0x00, 0x18, 0x00, 0x19, 0x00,
+ 0x1A, 0x00, 0x1B, 0x00, 0x1C, 0x00, 0x1D, 0x00,
+ 0x1E, 0x00, 0x1F, 0x00, 0x20, 0x00, 0x21, 0x00,
+ 0x22, 0x00, 0x23, 0x00, 0x24, 0x00, 0x30, 0x00,
+ 0x35, 0x00, 0x36, 0x00, 0x37, 0x00, 0x39, 0x00,
+ 0x3A, 0x00, 0x3B, 0x00, 0x3D, 0x00, 0x3E, 0x00,
+ 0x3F, 0x00, 0x40, 0x00, 0x41, 0x00, 0x42, 0x00,
+ 0x43, 0x00, 0x44, 0x00, 0x45, 0x00, 0x46, 0x00,
+ 0x47, 0x00, 0x5B, 0x00, 0x69, 0x00, 0x6E, 0x00,
+ 0x72, 0x00, 0x76, 0x00
+};
+
+static const ByteProvider k2IngameTalkObjIndexDOSCDDemoProvider = { ARRAYSIZE(k2IngameTalkObjIndexDOSCDDemo), k2IngameTalkObjIndexDOSCDDemo };
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo0FrameControl[12] = {
+ { 0x0006, 0x00F0 },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo1FrameControl[6] = {
+ { 0x0002, 0x012C },
+ { 0x002D, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002F, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002D, 0x012C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo2FrameControl[6] = {
+ { 0x000B, 0x0258 },
+ { 0x0030, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0032, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0030, 0x0005 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo3FrameControl[4] = {
+ { 0x001C, 0x0014 },
+ { 0x004E, 0x0014 },
+ { 0x004F, 0x0014 },
+ { 0x0050, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo4FrameControl[4] = {
+ { 0x0017, 0x0007 },
+ { 0x0051, 0x0007 },
+ { 0x0052, 0x0007 },
+ { 0x0053, 0x0007 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo5FrameControl[4] = {
+ { 0x0016, 0x0014 },
+ { 0x0054, 0x0014 },
+ { 0x0055, 0x0014 },
+ { 0x0056, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo6FrameControl[4] = {
+ { 0x003A, 0x003C },
+ { 0x0057, 0x003C },
+ { 0x0058, 0x003C },
+ { 0x0059, 0x003C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo7FrameControl[4] = {
+ { 0x001A, 0x0032 },
+ { 0x005A, 0x0032 },
+ { 0x005B, 0x0032 },
+ { 0x005C, 0x0032 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo8FrameControl[4] = {
+ { 0x006D, 0x000C },
+ { 0x006E, 0x000C },
+ { 0x006F, 0x000C },
+ { 0x0070, 0x000C }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo9FrameControl[4] = {
+ { 0x0079, 0x0008 },
+ { 0x007A, 0x0008 },
+ { 0x007B, 0x0008 },
+ { 0x007C, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo10FrameControl[4] = {
+ { 0x007E, 0x0008 },
+ { 0x007F, 0x0008 },
+ { 0x0080, 0x0008 },
+ { 0x0081, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo11FrameControl[6] = {
+ { 0x0091, 0x01A4 },
+ { 0x0092, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0094, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0092, 0x0004 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo12FrameControl[4] = {
+ { 0x0095, 0x0006 },
+ { 0x0096, 0x0006 },
+ { 0x0097, 0x0006 },
+ { 0x0098, 0x0006 }
+};
+
+static const FrameControl k2IngameShapeAnimDataDOSCDDemo13FrameControl[4] = {
+ { 0x0099, 0x002D },
+ { 0x009A, 0x002D },
+ { 0x009B, 0x002D },
+ { 0x009C, 0x002D }
+};
+
+static const ItemAnimDefinition k2IngameShapeAnimDataDOSCDDemo[14] = {
+ { 6, 12, k2IngameShapeAnimDataDOSCDDemo0FrameControl },
+ { 2, 6, k2IngameShapeAnimDataDOSCDDemo1FrameControl },
+ { 11, 6, k2IngameShapeAnimDataDOSCDDemo2FrameControl },
+ { 28, 4, k2IngameShapeAnimDataDOSCDDemo3FrameControl },
+ { 23, 4, k2IngameShapeAnimDataDOSCDDemo4FrameControl },
+ { 22, 4, k2IngameShapeAnimDataDOSCDDemo5FrameControl },
+ { 58, 4, k2IngameShapeAnimDataDOSCDDemo6FrameControl },
+ { 26, 4, k2IngameShapeAnimDataDOSCDDemo7FrameControl },
+ { 109, 4, k2IngameShapeAnimDataDOSCDDemo8FrameControl },
+ { 121, 4, k2IngameShapeAnimDataDOSCDDemo9FrameControl },
+ { 126, 4, k2IngameShapeAnimDataDOSCDDemo10FrameControl },
+ { 145, 6, k2IngameShapeAnimDataDOSCDDemo11FrameControl },
+ { 149, 4, k2IngameShapeAnimDataDOSCDDemo12FrameControl },
+ { 153, 4, k2IngameShapeAnimDataDOSCDDemo13FrameControl }
+};
+
+static const ItemAnimDefinitionProvider k2IngameShapeAnimDataDOSCDDemoProvider = { ARRAYSIZE(k2IngameShapeAnimDataDOSCDDemo), k2IngameShapeAnimDataDOSCDDemo };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cddemo_english.h b/devtools/create_kyradat/resources/hof_dos_cddemo_english.h
new file mode 100644
index 0000000000..4b6293363a
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cddemo_english.h
@@ -0,0 +1,139 @@
+static const char *const k2SeqplayStringsDOSCDDemoEnglish[104] = {
+ "Kyrandia is disappearing!",
+ "Rock by rock...",
+ "...and tree by tree.",
+ "Kyrandia ceases to exist!",
+ "The Royal Mystics are baffled.",
+ "Every reference has been consulted.",
+ "Even Marko and his new valet have been allowed into the conference.",
+ "Luckily, the Hand was experienced in these matters.",
+ "And finally a plan was approved...",
+ "...that required a magic Anchor Stone...",
+ "...to be retrieved from the center of the world.",
+ "Zanthia, youngest of the Kyrandian Mystics, has been selected to retrieve the Stone.",
+ "Thank you for playing The Hand of Fate.",
+ "This should be enough blueberries to open a portal to the center of the world.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! All my equipment has been stolen!",
+ " DUMMY STRING... ",
+ "If they think I'm going to walk all the way down there, they're nuts!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hurry up Faun!",
+ "Boy, that was a close call!",
+ "You said it pal. I, for one, am never going hunting again!",
+ "Ribbit.",
+ "How many times do I have to tell you? You're a toad.",
+ "Oh no! We're out of cheese!",
+ "Let's try this earwax. It's orange.",
+ "Mommy, when do I get the ivy?",
+ "Get out of here, shoo!",
+ "You cut, and I'll choose.",
+ "No. You cut and I'll choose.",
+ "I still say it was derivative drivel.",
+ "Aw, you still wouldn't recognize iambic pentameter if it bit you on the butt!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Direction & Design",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Mike Grayford",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "DUMMY STRING... ",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Quality Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulations!",
+ "Thank you for playing The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Joe Kucan's Hair by",
+ "Theodore A. Morris",
+ "Load a game",
+ "Introduction",
+ "Start a new game",
+ "Exit the game",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Thank you for playing \"The Hand of Fate.\"\n"
+};
+
+static const StringListProvider k2SeqplayStringsDOSCDDemoEnglishProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDDemoEnglish), k2SeqplayStringsDOSCDDemoEnglish };
+
+static const char *const k2SeqplayTlkFilesDOSCDDemoEnglish[14] = {
+ "EINTRO1",
+ "EINTRO2",
+ "EINTRO3",
+ "EINTRO4",
+ "EINTRO5",
+ "EINTRO6",
+ "EINTRO7",
+ "EINTRO8",
+ "EINTRO9",
+ "EINTRO10",
+ "EINTRO11",
+ "EINTRO12",
+ "EGLOW",
+ ""
+};
+
+static const StringListProvider k2SeqplayTlkFilesDOSCDDemoEnglishProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDDemoEnglish), k2SeqplayTlkFilesDOSCDDemoEnglish };
+
+static const char *const k2IngameTlkDemoStringsDOSCDDemoEnglish[6] = {
+ "Congratulations! Thank you for guiding",
+ "Zanthia safely through Darkmoor Swamp.",
+ "To continue her adventures, look for",
+ "Kyrandia 2: The Hand of Fate on PC",
+ "CD-ROM or floppy disk, at your local",
+ "software store."
+};
+
+static const StringListProvider k2IngameTlkDemoStringsDOSCDDemoEnglishProvider = { ARRAYSIZE(k2IngameTlkDemoStringsDOSCDDemoEnglish), k2IngameTlkDemoStringsDOSCDDemoEnglish };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cddemo_french.h b/devtools/create_kyradat/resources/hof_dos_cddemo_french.h
new file mode 100644
index 0000000000..399cf2e287
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cddemo_french.h
@@ -0,0 +1,139 @@
+static const char *const k2SeqplayStringsDOSCDDemoFrench[104] = {
+ "Kyrandia est en train de dispara""\x8C""tre!",
+ "Pierre apr""\x8A""s pierre...",
+ "Arbre apr""\x8A""s arbre.",
+ "Kyrandia va cesser d'exister!",
+ "Les Grands Mystiques Royaux sont perplexes...",
+ "Ils ont consult""\x82"" tous les ouvrages!",
+ "M""\x88""me Marko et son nouveau valet ont ""\x82""t""\x82"" admis dans la conf""\x82""rence.",
+ "Heureusement, la Main connaissait bien ce sujet.",
+ "Un plan fut finalement approuv""\x82""...",
+ "Il n""\x82""cessitait une Ancre de Pierre magique...",
+ "Qu'il fallait aller chercher au centre du monde!",
+ "Zanthia, la plus jeune des Mystiques de Kyrandia, a ""\x82""t""\x82"" choisie pour r""\x82""cup""\x82""rer cette pierre.",
+ "Merci d'avoir jou""\x82"" ""\x85"" The Hand of Fate.",
+ "Je devrais avoir assez de myrtilles pour ouvrir un portail vers le centre du monde...",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "H""\x82""! On m'a vol""\x82"" tout mon ""\x82""quipement!",
+ " DUMMY STRING... ",
+ "S'ils croient que je vais y aller ""\x85"" pied, ils peuvent toujours courir!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Vite, Faun!",
+ "Mon vieux, nous l'avons ""\x82""chapp""\x82"" belle!",
+ "Tu l'as dit! En ce qui me concerne, j'abandonne la chasse!",
+ "Crooa.",
+ "Combien de fois faudra-t-il que je te le dise? Tu n'es qu'un sale crapaud!",
+ "Oh non! Nous n'avons plus de fromage!",
+ "On n'a qu'""\x85"" essayer ""\x87""a. C'est orange.",
+ "Maman, quand est-ce qu'on mangera du lierre?",
+ "Sortez d'ici! Allez! Filez!",
+ "Tu coupes, et je choisis.",
+ "Non. TU coupes et JE choisis.",
+ "Je maintiens que c'""\x82""tait du radotage sans int""\x82""r""\x88""t.",
+ "Tu ne reconna""\x8C""trais toujours pas un po""\x8A""me ""\x8B""ambique, m""\x88""me s'il te mordait les fesses!",
+ "Producteur Ex""\x82""cutif",
+ "Brett W. Sperry",
+ "Con""\x87""u et Dirig""\x82"" par",
+ "Rick Gush",
+ "Programmeur Principal",
+ "Michael Legg",
+ "Direction Artistique",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Graphiste principal",
+ "Rick Parks",
+ "Programmation acrobatie",
+ "Philip W. Gorrow",
+ "Michael Grayford",
+ "Mark McCubbin",
+ "Graphistes",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "DUMMY STRING... ",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Musique et sons",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Tests de Qualit""\x82",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Pierre Cardin",
+ "Conception du Manuel,",
+ "Emballage & Ex""\x82""cution",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "F""\x82""licitations!",
+ "Merci d'avoir jou""\x82"" ""\x85"" The Hand of Fate!",
+ "Programmeur invit""\x82",
+ "Coordination Production",
+ "Scott Duckett",
+ "Testeurs - Irvine",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Williams",
+ "Chris Toft",
+ "Adaptation fran""\x87""aise",
+ "Art Of Words",
+ "Charger une partie",
+ "Introduction",
+ "Nouvelle Partie",
+ "Quitter le jeu",
+ "Remerciements sp""\x82""ciaux",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Merci d'avoir jou""\x82"" ""\x85""\"The Hand of Fate.\"\n"
+};
+
+static const StringListProvider k2SeqplayStringsDOSCDDemoFrenchProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDDemoFrench), k2SeqplayStringsDOSCDDemoFrench };
+
+static const char *const k2SeqplayTlkFilesDOSCDDemoFrench[14] = {
+ "FINTRO1",
+ "FINTRO2",
+ "FINTRO3",
+ "FINTRO4",
+ "FINTRO5",
+ "FINTRO6",
+ "FINTRO7",
+ "FINTRO8",
+ "FINTRO9",
+ "FINTRO10",
+ "FINTRO11",
+ "FINTRO12",
+ "FGLOW",
+ ""
+};
+
+static const StringListProvider k2SeqplayTlkFilesDOSCDDemoFrenchProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDDemoFrench), k2SeqplayTlkFilesDOSCDDemoFrench };
+
+static const char *const k2IngameTlkDemoStringsDOSCDDemoFrench[6] = {
+ "F""\x82""licitations! Merci d'avoir guider",
+ "Zanthia a travers le marals de Darkmoor.",
+ "Pour continuer votre aventure, allez vous",
+ "procurer la version CD-ROM de The Hand of",
+ "Fate chez votre revendeur.",
+ " "
+};
+
+static const StringListProvider k2IngameTlkDemoStringsDOSCDDemoFrenchProvider = { ARRAYSIZE(k2IngameTlkDemoStringsDOSCDDemoFrench), k2IngameTlkDemoStringsDOSCDDemoFrench };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_cddemo_german.h b/devtools/create_kyradat/resources/hof_dos_cddemo_german.h
new file mode 100644
index 0000000000..e32c88de40
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_cddemo_german.h
@@ -0,0 +1,139 @@
+static const char *const k2SeqplayStringsDOSCDDemoGerman[104] = {
+ "Kyrandia l""\x94""st sich auf!",
+ "Stein f""\x81""r Stein...",
+ "...und Baum f""\x81""r Baum.",
+ "Kyrandia h""\x94""rt auf zu existieren!",
+ "Die k""\x94""niglichen Mystiker sind verzweifelt.",
+ "Jede Informationsquelle wurde zu Rate gezogen.",
+ "Sogar Marko und sein neuer Kammerdiener durften den Konferenzen beiwohnen.",
+ "Gl""\x81""cklicherweise, hatte die Hand Erfahrungen in solchen Dingen.",
+ "Und letztendlich konnte man sich auf einen Plan einigen.",
+ "Zu dessen Durchf""\x81""hrung es eines magischen Ankerstein bedarf...",
+ "...der aus der Mitte der Welt geholt werden mu""\xE1"".",
+ "Zanthia, j""\x81""ngste der kyrandianischen Mystiker, wurde ausgew""\x84""hlt, um diesen Stein zu holen.",
+ "Vielen Dank, da""\xE1"" Du die Hand des Schicksals spielst.",
+ "Dies sollten gen""\x81""gend Blaubeeren sein, um ein Portal zur Mitte der Erde zu ""\x94""ffnen.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! Meine gesamte Ausr""\x81""stung wurde gestohlen!",
+ " DUMMY STRING... ",
+ "Wenn die glauben, da""\xE1"" ich den ganzen Weg nach unten laufe, haben die sich aber in den Finger geschnitten!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Beeile Dich, Faun!",
+ "Junge, Junge das war aber knapp!",
+ "Da hast Du recht, Kumpel. Ich werde nie wieder jagen gehen!",
+ "Quuaaak.",
+ "Wie oft mu""\xE1"" ich es Dir noch sagen? Du bist eine Kr""\x94""te.",
+ "Oh nein! Der K""\x84""se ist alle!",
+ "Versuchen wir es mal mit dem Ohrenwachs. Es ist orange.",
+ "Mama, wann bekomme ich das Efeu?",
+ "Husch husch, komm hier raus!",
+ "Du schneidest, und ich suche aus.",
+ "Nein. Du schneidest und ich werde aussuchen.",
+ "Ich bin immernoch der\rMeinung, da""\xE1"" er es nur\rso dahingeplappert hat.",
+ "Argh, Du w""\x81""rdest ein jambisches Pentameter nicht erkennen, wenn es Dich in den Hintern bei""\xE1""en w""\x81""rde!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Director & Designer",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Michael Grayford",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "DUMMY STRING... ",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Quality Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Black Pete",
+ "Manual, Package Design",
+ "& Fulfillment by",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Unseren Gl""\x81""ckw""\x81""nsch!",
+ "Vielen Dank, da""\xE1"" Sie The Hand of Fate gespielt haben!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Ants! Ants! Ants!",
+ "Ted Morris",
+ "Spielstand laden",
+ "Intro",
+ "Neues Spiel starten",
+ "Spiel beenden",
+ "Vielen Dank an",
+ "tom schmidt",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Vielen Dank, da""\xE1"" Sie \"The Hand of Fate\" gespielt haben.\n"
+};
+
+static const StringListProvider k2SeqplayStringsDOSCDDemoGermanProvider = { ARRAYSIZE(k2SeqplayStringsDOSCDDemoGerman), k2SeqplayStringsDOSCDDemoGerman };
+
+static const char *const k2SeqplayTlkFilesDOSCDDemoGerman[14] = {
+ "GINTRO1",
+ "GINTRO2",
+ "GINTRO3",
+ "GINTRO4",
+ "GINTRO5",
+ "GINTRO6",
+ "GINTRO7",
+ "GINTRO8",
+ "GINTRO9",
+ "GINTRO10",
+ "GINTRO11",
+ "GINTRO12",
+ "GGLOW",
+ ""
+};
+
+static const StringListProvider k2SeqplayTlkFilesDOSCDDemoGermanProvider = { ARRAYSIZE(k2SeqplayTlkFilesDOSCDDemoGerman), k2SeqplayTlkFilesDOSCDDemoGerman };
+
+static const char *const k2IngameTlkDemoStringsDOSCDDemoGerman[6] = {
+ "Herzlichen Gl""\x81""ckwunsch! Wir danken Dir,",
+ "da""\xE1"" Du Zanthia sicher durch Darkmoor",
+ "Swamp geleitet hast. Du kannst ihr",
+ "Abenteuer auf der The Hand of Fate",
+ "CD-ROM fortf""\x81""hren. Erkundige Dich bei",
+ "Deinem H""\x84""ndler nach dieser CD-ROM."
+};
+
+static const StringListProvider k2IngameTlkDemoStringsDOSCDDemoGermanProvider = { ARRAYSIZE(k2IngameTlkDemoStringsDOSCDDemoGerman), k2IngameTlkDemoStringsDOSCDDemoGerman };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_demo.h b/devtools/create_kyradat/resources/hof_dos_demo.h
new file mode 100644
index 0000000000..00e8d3ff05
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_demo.h
@@ -0,0 +1,77 @@
+static const char *const k2SeqplayPakFilesDOSDemo[2] = {
+ "GENERAL.PAK",
+ "VOC.PAK"
+};
+
+static const StringListProvider k2SeqplayPakFilesDOSDemoProvider = { ARRAYSIZE(k2SeqplayPakFilesDOSDemo), k2SeqplayPakFilesDOSDemo };
+
+static const HoFSequence k2SeqplaySeqDataDOSDemoSeq[8] = {
+ { 0x0002, "", "virgin.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0064, 0, 0, 0x001E },
+ { 0x0001, "westwood.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0012, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "title.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001A, 0x0006, 0, 0, 0x0064 },
+ { 0x0001, "hill.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0082, 0x0007, 0, 0, 0x001E },
+ { 0x0003, "outhome.wsa", "outhome.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x009A, 0x0005, 0, 0, 0x001E },
+ { 0x0001, "wharf.wsa", "", 5, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001C, 0x000A, 0, 0, 0x001E },
+ { 0x0001, "dinob.wsa", "", 5, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0004, 0x0008, 0, 0, 0x001E },
+ { 0x0002, "", "fisher.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0FA0, 0, 0, 0x0004 }
+};
+
+static const HoFNestedSequence k2SeqplaySeqDataDOSDemoSeqNested[5] = {
+ { 0x0002, "wharf2.wsa", 0, 70, 1, 0, 0, 0, NULL, 0, 0 },
+ { 0x0002, "dinob2.wsa", 0, 80, 2, 0, 0, 0, NULL, 0, 0 },
+ { 0x0004, "water.wsa", 0, 11, 4, 0, 0, 0, NULL, 0, 0 },
+ { 0x0004, "bail.wsa", 0, 16, 24, 0, 0, 0, NULL, 0, 0 },
+ { 0x0004, "dig.wsa", 0, 12, 18, 0, 0, 0, NULL, 0, 0 }
+};
+
+static const HoFSequenceProvider k2SeqplaySeqDataDOSDemoProvider = { ARRAYSIZE(k2SeqplaySeqDataDOSDemoSeq), k2SeqplaySeqDataDOSDemoSeq, ARRAYSIZE(k2SeqplaySeqDataDOSDemoSeqNested), k2SeqplaySeqDataDOSDemoSeqNested };
+
+static const char *const k2SeqplaySfxFilesDOSDemo[20] = {
+ "bigslam",
+ "clothes1",
+ "doormtop",
+ "fngrsnap",
+ "frogmix2",
+ "frogsigh",
+ "h2odrop2",
+ "orcmove",
+ "rowboat1",
+ "squish1",
+ "stretch1",
+ "ocean1",
+ "splash1",
+ "trex1",
+ "trex3",
+ "trex5",
+ "zno2",
+ "big",
+ "dreamer",
+ ""
+};
+
+static const StringListProvider k2SeqplaySfxFilesDOSDemoProvider = { ARRAYSIZE(k2SeqplaySfxFilesDOSDemo), k2SeqplaySfxFilesDOSDemo };
+
+static const char *const k2SeqplayIntroTracksDOSDemo[2] = {
+ "k2_demo",
+ "k2_demo"
+};
+
+static const StringListProvider k2SeqplayIntroTracksDOSDemoProvider = { ARRAYSIZE(k2SeqplayIntroTracksDOSDemo), k2SeqplayIntroTracksDOSDemo };
+
+static const HoFSeqItemAnimData k2SeqplayShapeAnimDataDOSDemo[4] = {
+ { 0, 67,
+ { 0x0000, 0x0001, 0x0002, 0x0003, 0x0002, 0x0001, 0x0000, 0x0001, 0x0002, 0x0003,
+ 0x0002, 0x0001, 0x0000, 0x0001, 0x0002, 0x0003, 0x0002, 0x0001, 0x0000, 0x0000 } },
+ { 4, 109,
+ { 0x0000, 0x0001, 0x0002, 0x0003, 0x0000, 0x0001, 0x0002, 0x0003, 0x0000, 0x0001,
+ 0x0002, 0x0003, 0x0000, 0x0001, 0x0002, 0x0003, 0x0000, 0x0001, 0x0002, 0x0003 } },
+ { 8, 145,
+ { 0x0000, 0x0001, 0x0002, 0x0003, 0x0003, 0x0002, 0x0001, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 } },
+ { 12, 180,
+ { 0x0000, 0x0001, 0x0002, 0x0003, 0x0000, 0x0001, 0x0002, 0x0003, 0x0000, 0x0001,
+ 0x0002, 0x0003, 0x0000, 0x0001, 0x0002, 0x0003, 0x0000, 0x0001, 0x0002, 0x0003 } }
+};
+
+static const HoFSeqItemAnimDataProvider k2SeqplayShapeAnimDataDOSDemoProvider = { ARRAYSIZE(k2SeqplayShapeAnimDataDOSDemo), k2SeqplayShapeAnimDataDOSDemo };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_english.h b/devtools/create_kyradat/resources/hof_dos_english.h
new file mode 100644
index 0000000000..35ba8eac15
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_english.h
@@ -0,0 +1,108 @@
+static const char *const k2SeqplayStringsDOSEnglish[103] = {
+ "Kyrandia is disappearing!",
+ "Rock by rock,",
+ "And tree by tree.",
+ "Kyrandia ceases to exist!",
+ "The Royal Mystics are baffled.",
+ "Every reference has been consulted.",
+ "Even Marko and his new valet, have been allowed into the conference.",
+ "Luckily, the Hand was experienced in these matters.",
+ "And finally a plan was approved,",
+ "That required a magic Anchor Stone,",
+ "To be retrieved from the center of the world.",
+ "Zanthia, youngest of the Kyrandian Mystics, has been selected to retrieve the Stone.",
+ "Thank you for playing The Hand of Fate.",
+ "This should be enough blueberries to open a portal to the center of the world.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! All my equipment has been stolen!",
+ " DUMMY STRING... ",
+ "If they think I'm going to walk all the way down there, they're nuts!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hurry up Faun!",
+ "Boy, that was a close call!",
+ "You said it pal. I, for one, am never going hunting again!",
+ "Ribbit.",
+ "How many times do I have to tell you? You're a toad.",
+ "Oh no! We're out of cheese!",
+ "Let's try this earwax. It's orange.",
+ "Mommy, when do I get the ivy?",
+ "Get out of here, shoo!",
+ "You cut, and I'll choose.",
+ "No. You cut and I'll choose.",
+ "I still say it was derivative drivel.",
+ "Aw, you still wouldn't recognize iambic pentameter if it bit you on the butt!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Designed & Directed by",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Matt Collins",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Qualilty Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulations!",
+ "Thank you for playing The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Chris's Hair by",
+ "Cumulo Nimbus",
+ "Load a game",
+ "Introduction",
+ "Start a new game",
+ "Exit the game",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne"
+};
+
+static const StringListProvider k2SeqplayStringsDOSEnglishProvider = { ARRAYSIZE(k2SeqplayStringsDOSEnglish), k2SeqplayStringsDOSEnglish };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_french.h b/devtools/create_kyradat/resources/hof_dos_french.h
new file mode 100644
index 0000000000..fc21dc0601
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_french.h
@@ -0,0 +1,108 @@
+static const char *const k2SeqplayStringsDOSFrench[103] = {
+ "Kyrandia est en train de dispara""\x8C""tre!",
+ "Pierre apr""\x8A""s pierre...",
+ "Arbre apr""\x8A""s arbre.",
+ "Kyrandia va cesser d'exister!",
+ "Les Grands Mystiques Royaux sont perplexes...",
+ "Ils ont consult""\x82"" tous les ouvrages!",
+ "M""\x88""me Marko et son nouveau valet ont ""\x82""t""\x82"" admis dans la conf""\x82""rence.",
+ "Heureusement, la Main connaissait bien ce sujet.",
+ "Un plan fut finalement approuv""\x82""...",
+ "Il n""\x82""cessitait une Ancre de Pierre magique...",
+ "Qu'il fallait aller chercher... au centre du monde!",
+ "Zanthia, la plus jeune des Mystiques de Kyrandia, a ""\x82""t""\x82"" choisie pour r""\x82""cup""\x82""rer cette pierre.",
+ "Merci d'avoir jou""\x82"" ""\x85"" The Hand of Fate.",
+ "Je devrais avoir assez de myrtilles pour ouvrir un portail vers le centre du monde...",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "H""\x82""! On m'a vol""\x82"" tout mon ""\x82""quipement!",
+ " DUMMY STRING... ",
+ "S'ils croient que je vais y aller ""\x85"" pied, ils peuvent toujours courir!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Vite, Faun!",
+ "Mon vieux, nous l'avons ""\x82""chapp""\x82"" belle!",
+ "Tu l'as dit! En ce qui me concerne, j'abandonne la chasse!",
+ "Crooa.",
+ "Combien de fois faudra-t-il que je te le dise? Tu n'es qu'un sale crapaud!",
+ "Oh non! Nous n'avons plus de fromage!",
+ "On n'a qu'""\x85"" essayer ""\x87""a. C'est orange.",
+ "Maman, quand est-ce qu'on mangera du lierre?",
+ "Sortez d'ici! Allez! Filez!",
+ "Tu coupes, et je choisis.",
+ "Non. TU coupes et JE choisis.",
+ "Je maintiens que c'""\x82""tait du radotage sans int""\x82""r""\x88""t.",
+ "Tu ne reconna""\x8C""trais toujours pas un po""\x8A""me ""\x8B""ambique, m""\x88""me s'il te mordait les fesses!",
+ "Producteur Ex""\x82""cutif",
+ "Brett W. Sperry",
+ "Con""\x87""u et Dirig""\x82"" par",
+ "Rick Gush",
+ "Programmeur Principal",
+ "Michael Legg",
+ "Direction Artistique",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Graphiste principal",
+ "Rick Parks",
+ "Programmation acrobatie",
+ "Philip W. Gorrow",
+ "Michael Grayford",
+ "Mark McCubbin",
+ "Graphistes",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Musique et sons:",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Tests de Qualit""\x82",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Pierre Cardin",
+ "Conception du Manuel,",
+ "Emballage & Ex""\x82""cution",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "F""\x82""licitations!",
+ "Merci d'avoir jou""\x82"" ""\x85"" The Hand of Fate!",
+ "Programmeur invit""\x82",
+ "Coordination Production",
+ "Scott Duckett",
+ "Testeurs - Irvine",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Williams",
+ "Chris Toft",
+ "Adaptation fran""\x87""aise:",
+ "Art Of Words",
+ "Charger une partie",
+ "Introduction",
+ "Nouvelle Partie",
+ "Quitter le jeu",
+ "Remerciements sp""\x82""ciaux",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne"
+};
+
+static const StringListProvider k2SeqplayStringsDOSFrenchProvider = { ARRAYSIZE(k2SeqplayStringsDOSFrench), k2SeqplayStringsDOSFrench };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_german.h b/devtools/create_kyradat/resources/hof_dos_german.h
new file mode 100644
index 0000000000..8529ed03da
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_german.h
@@ -0,0 +1,108 @@
+static const char *const k2SeqplayStringsDOSGerman[103] = {
+ "Kyrandia l""\x94""st sich auf!",
+ "Stein f""\x81""r Stein,",
+ "Und Baum f""\x81""r Baum.",
+ "Kyrandia h""\x94""rt auf zu existieren!",
+ "Die k""\x94""niglichen Mystiker sind verzweifelt.",
+ "Jede Informationsquelle wurde zu Rate gezogen.",
+ "Sogar Marko und sein neuer Kammerdiener durften den Konferenzen beiwohnen.",
+ "Gl""\x81""cklicherweise, hatte die Hand Erfahrungen in solchen Dingen.",
+ "Und letztendlich konnte man sich auf einen Plan einigen,",
+ "Zu dessen Durchf""\x81""hrung es eines magischen Ankerstein bedarf,",
+ "Der aus der Mitte der Welt geholt werden mu""\xE1"".",
+ "Zanthia, j""\x81""ngste der kyrandianischen Mystiker, wurde ausgew""\x84""hlt, um diesen Stein zu holen.",
+ "Vielen Dank, da""\xE1"" Du die Hand des Schicksals spielst.",
+ "Dies sollten gen""\x81""gend Blaubeeren sein, um ein Portal zur Mitte der Erde zu ""\x94""ffnen.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! Meine gesamte Ausr""\x81""stung wurde gestohlen!",
+ " DUMMY STRING... ",
+ "Wenn die glauben, da""\xE1"" ich den ganzen Weg nach unten laufe, haben die sich aber in den Finger geschnitten!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Beeile Dich, Faun!",
+ "Junge, Junge das war aber knapp!",
+ "Da hast Du recht, Kumpel. Ich werde nie wieder jagen gehen!",
+ "Quuaaak.",
+ "Wie oft mu""\xE1"" ich es Dir noch sagen? Du bist eine Kr""\x94""te.",
+ "Oh nein! Der K""\x84""se ist alle!",
+ "Versuchen wir es mal mit dem Ohrenwachs. Es ist orange.",
+ "Mama, wann bekomme ich das Efeu?",
+ "Husch husch, komm hier raus!",
+ "Du schneidest, und ich suche aus.",
+ "Nein. Du schneidest und ich werde aussuchen.",
+ "Ich bin immernoch der\rMeinung, da""\xE1"" er es nur\rso dahingeplappert hat.",
+ "Argh, Du w""\x81""rdest ein jambisches Pentameter nicht erkennen, wenn es Dich in den Hintern bei""\xE1""en w""\x81""rde!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Director & Designer",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Michael Grayford",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Quality Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Black Pete",
+ "Manual, Package Design",
+ "& Fulfillment by",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Unseren Gl""\x81""ckw""\x81""nsch!",
+ "Vielen Dank, da""\xE1"" Sie The Hand of Fate gespielt haben!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Ants! Ants! Ants!",
+ "Ted Morris",
+ "Spielstand laden",
+ "Intro",
+ "Neues Spiel starten",
+ "Spiel beenden",
+ "Vielen Dank an",
+ "tom schmidt",
+ "Tim Fritz",
+ "Kenny Dunne"
+};
+
+static const StringListProvider k2SeqplayStringsDOSGermanProvider = { ARRAYSIZE(k2SeqplayStringsDOSGerman), k2SeqplayStringsDOSGerman };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_italian.h b/devtools/create_kyradat/resources/hof_dos_italian.h
new file mode 100644
index 0000000000..825c6231f2
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_italian.h
@@ -0,0 +1,108 @@
+static const char *const k2SeqplayStringsDOSItalian[103] = {
+ "Kyrandia sta scomparendo!",
+ "Roccia dopo roccia...",
+ "...e albero dopo albero.",
+ "Kyrandia cessa di esistere!",
+ "I Mistici Reali sono sconcertati.",
+ "Ogni testo ""\x8A"" stato consultato.",
+ "Perfino Marko e il suo nuovo assistente sono stati invitati alla conferenza.",
+ "Per fortuna, Mano ha esperienza in queste situazioni.",
+ "E finalmente un piano viene approvato...",
+ "...occorre un'Ancora magica di Pietra...",
+ "...da recuperare al centro della terra.",
+ "Zanthia, la pi""\x97"" giovane tra i Mistici di Kyrandia, ""\x8A"" stata scelta per recuperare la Pietra.",
+ "Grazie per aver giocato a The Hand of Fate.",
+ "Questi mirtilli dovrebbero bastare ad aprire un portale per il centro della terra.",
+ " MY ",
+ " MY ",
+ "Hey! Hanno rubato tutto il mio equipaggiamento!",
+ " MY ",
+ "Se pensano che ci arrivi a piedi fin laggi""\x97"", sono proprio dei pazzi!",
+ " MY ",
+ " DUMMY STRNG... ",
+ "Muoviti Fauno!",
+ "C'""\x8A"" mancato un pelo!",
+ "L'hai detto amico. Io ho smesso con la caccia!",
+ "Ribbit.",
+ "Quante volte devo dirtelo? Sei un rospo.",
+ "Oh no! Abbiamo finito il formaggio!",
+ "Proviamo con questo cerume. E' arancione.",
+ "Mami, non ""\x8A"" che alla fine mi trasformano in un golf?",
+ "Via di qui, shoo!",
+ "Tu tagli, e io scelgo.",
+ "No. Tu tagli e io scelgo.",
+ "Sono sempre convinta che si trattasse di un'assoluta cretinata.",
+ "Aw, non capirai mai niente di poesia. Facciamoci un'altra birra che ""\x8A"" meglio!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Director",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Matt Collins",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Qualilty Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulazioni!",
+ "Grazie per aver giocato a The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Chris's Hair by",
+ "Cumulo Nimbus",
+ "Carica gioco",
+ "Introduzione",
+ "Nuovo gioco",
+ "Esci",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne"
+};
+
+static const StringListProvider k2SeqplayStringsDOSItalianProvider = { ARRAYSIZE(k2SeqplayStringsDOSItalian), k2SeqplayStringsDOSItalian };
+
diff --git a/devtools/create_kyradat/resources/hof_dos_russian.h b/devtools/create_kyradat/resources/hof_dos_russian.h
new file mode 100644
index 0000000000..12df4ed31e
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_dos_russian.h
@@ -0,0 +1,133 @@
+static const char *const k2SeqplayStringsDOSRussian[128] = {
+ "K""\x18""pa""\x1D\x16\x18""~ ""\x18""c\\e""\x17""ae""\x1F""!",
+ "Ka""\x1C\x1D\x18""...",
+ "\x0F""epe""\x14""{~...",
+ "K""\x18""pa""\x1D\x16\x18\x18"" c#opo ""\x1D""e c""\x1F""a""\x1D""e""\x1F""!",
+ "Bo""\x10""]e""\x13\x1D\x18""#""\x18"" c""\x13\x18\x1F""` c ""\x1F""o""\x10""#y.",
+ "\x06\x16""e""\x1F"" ""\x1D""ay\\""\x1D""a~ ""\x16\x18""c#ycc""\x18""~.",
+ "\x0F""a""\x7F""e Map#o ""\x18"" e""\x15""o ""\x1D""o""\x14""`""\x19"" c""\x10""y""\x15""a, ""\x1E""p""\x18\x15\x10""a]e""\x1D""` ""\x1D""a o""\x13""cy""\x7F\x16""e""\x1D\x18""e.",
+ "K c\\ac""\x1F""{}, Py#a ""\x18\x1C""ee""\x1F"" o""\x1E""`""\x1F"" ""\x14"" |""\x1F\x18""x ""\x16""e""\x10""ax.",
+ "\x06"", ""\x1D""a#o""\x1D""e[, y""\x1F\x14""ep""\x7F\x16""e""\x1D"" ""\x1E\x10""a""\x1D"",",
+ "\x16\x10""~ #o""\x1F""opo""\x15""o ""\x1D""y""\x7F""e""\x1D"" ""\x12""#op""\x1D""`""\x19"" Ka""\x1C""e""\x1D""{,",
+ "\x18\x17\x14\x10""e\\e""\x1D\x1D""`""\x19"" ""\x18\x17"" [e""\x1D\x1F""pa ""\x17""e""\x1C\x10\x18"".",
+ "Ha""\x19\x1F\x18"" #a""\x1C""e""\x1D""{ ""\x1E""pe""\x16""c""\x1F""o""\x18\x1F"" ""\x05""a""\x1D""[""\x18\x18"", ca""\x1C""o""\x19"" ""\x1C\x10""a""\x16""]e""\x19"" ""\x14""o""\x10""]e""\x13\x1D\x18""[e K""\x18""pa""\x1D\x16\x18\x18"".",
+ "Thank you for playing The Hand of Fate.",
+ "\x08""o""\x1D""a""\x16""o""\x13\x18\x1F""{c~ ""\x1C\x1D""o""\x15""o c""\x18\x1D\x18""x ~""\x15""o""\x16"", \\""\x1F""o""\x13""` o""\x1F""#p`""\x1F""{ ""\x1E""op""\x1F""a""\x10"" ""\x14"" [e""\x1D\x1F""pe ""\x17""e""\x1C\x10\x18"".",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "O""\x19""! Bce o""\x13""opy""\x16""o""\x14""a""\x1D\x18""e y#pa""\x16""e""\x1D""o!",
+ " DUMMY STRING... ",
+ "Ec""\x10\x18"" o""\x1D\x18"" ""\x16""y""\x1C""a}""\x1F"", \\""\x1F""o ~ ""\x1E""o""\x19\x16""y ""\x1F""y""\x16""a ""\x1E""e]#o""\x1C"", ""\x1F""o o""\x1D\x18"" co]""\x10\x18"" c y""\x1C""a!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Topo""\x1E\x18""c{ \nay""\x1D""!",
+ "Ha |""\x1F""o""\x1F"" pa""\x17"" ""\x1E""po""\x1D""ec""\x10""o!",
+ "\x12"" ""\x13""o""\x10""{]e ""\x1D""a oxo""\x1F""y ""\x1D""e ""\x1E""o""\x19\x16""y!",
+ "K""\x14""a-#""\x14""a",
+ "C#o""\x10""{#o pa""\x17"" ""\x1F""e""\x13""e ""\x15""o""\x14""op""\x18\x1F""{? T` ""\x7F""a""\x13""a.",
+ "O ""\x1D""e""\x1F""! \t ""\x1D""ac\r#o""\x1D""\\""\x18\x10""c~ c`p!",
+ "\x08""o""\x1E""po""\x13""y""\x19"" y]""\x1D""y} cepy. O""\x1D""a opa""\x1D\x7F""e""\x14""a~.",
+ "Ma""\x1C""a, #o""\x15\x16""a ""\x1C\x1D""e\r""\x16""a""\x16""y""\x1F"" ""\x1E\x10""}^a?",
+ "K`]! K`]! ""\x01""yyy!",
+ "T` pa""\x17""pe""\x7F""{, a ~ ""\x14""`""\x13""epy.",
+ "He""\x1F"". T` pa""\x17""pe""\x7F""{, a ~ ""\x14""`""\x13""epy.",
+ "\x12"" ""\x14""ce ""\x7F""e y""\x1F\x14""ep""\x7F\x16""a}, \\""\x1F""o |""\x1F""o \\e""\x1E""yxa.",
+ "A, ""\x1F""` ""\x14""ce e^e ""\x1D""e ""\x1C""o""\x7F""e]{\rpac""\x1E""o""\x17\x1D""a""\x1F""{ ~""\x1C\x13\x18""\\ec#""\x18\x19"" ""\x1E""e""\x1D\x1F""a""\x1C""e""\x1F""p!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Designed & Directed by",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Matt Collins",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Qualilty Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "\x08""o""\x17\x16""pa""\x14\x10""~e""\x1C""!",
+ "\x08""epe""\x14""o""\x16"": Tapac Ka""\x1F""#o""\x14"". K""\x18""e""\x14"". 296-19-77.",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Chris's Hair by",
+ "Cumulo Nimbus",
+ "\x05""a""\x15""py""\x17\x18\x1F""{",
+ "B""\x14""e""\x16""e""\x1D\x18""e",
+ "Ho""\x14""a~ ""\x18\x15""pa",
+ "B`""\x19\x1F\x18"" ""\x18\x17"" ""\x18\x15""p`",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+};
+
+static const StringListProvider k2SeqplayStringsDOSRussianProvider = { ARRAYSIZE(k2SeqplayStringsDOSRussian), k2SeqplayStringsDOSRussian };
+
diff --git a/devtools/create_kyradat/resources/hof_fmtowns.h b/devtools/create_kyradat/resources/hof_fmtowns.h
new file mode 100644
index 0000000000..b254946492
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_fmtowns.h
@@ -0,0 +1,716 @@
+static const char *const k2SeqplayPakFilesFMTowns[4] = {
+ "INTROGEN.PAK",
+ "INTROVOC.PAK",
+ "VOC.PAK",
+ "WSCORE.PAK"
+};
+
+static const StringListProvider k2SeqplayPakFilesFMTownsProvider = { ARRAYSIZE(k2SeqplayPakFilesFMTowns), k2SeqplayPakFilesFMTowns };
+
+static const char *const k2SeqplaySfxFilesFMTowns[33] = {
+ "intro1",
+ "intro2",
+ "intro3",
+ "intro4",
+ "intro5",
+ "intro6",
+ "intro7",
+ "intro8",
+ "intro9",
+ "intro10",
+ "intro11",
+ "intro12",
+ "glow",
+ "asong",
+ "crowcaw",
+ "eyerub2",
+ "pluck3",
+ "rodnreel",
+ "frog1",
+ "scavmov2",
+ "lambmom3",
+ "lambkid1",
+ "thunder2",
+ "thunder3",
+ "wind6",
+ "h2odrop2",
+ "gasleak",
+ "polgulp1",
+ "hndslap1",
+ "burp1",
+ "scream1",
+ "theend",
+ ""
+};
+
+static const StringListProvider k2SeqplaySfxFilesFMTownsProvider = { ARRAYSIZE(k2SeqplaySfxFilesFMTowns), k2SeqplaySfxFilesFMTowns };
+
+static const HoFSequence k2SeqplaySeqDataFMTownsSeq[16] = {
+ { 0x0002, "", "virgin.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0064, 0, 0, 0x001E },
+ { 0x0001, "westwood.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0012, 0x000C, 0, 0, 0x00A0 },
+ { 0x0001, "title.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001A, 0x000C, 0, 0, 0x000A },
+ { 0x0002, "", "over.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "library.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "hand.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x005A },
+ { 0x0001, "point.wsa", "", 4, 8, 0xFFFF, 0xFFFF, 0x0000, 0x0026, 0x0007, 0, 0, 0x00C8 },
+ { 0x0001, "zanfaun.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0033, 0x0010, 0, 0, 0x00F0 },
+ { 0x0001, "funters.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "ferb.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x0010, 0, 0, 0x001E },
+ { 0x0001, "fish.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0038, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "fheep.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "farmer.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0016, 0x000C, 0, 0, 0x0064 },
+ { 0x0001, "fuards.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0018, 0x000E, 0, 0, 0x001E },
+ { 0x0001, "firates.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0025, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "frash.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000C, 0x000A, 0, 0, 0x0154 }
+};
+
+static const FrameControl k2SeqplaySeqDataFMTownsSeqNestedControl7[18] = {
+ { 0, 10 },
+ { 1, 10 },
+ { 2, 10 },
+ { 3, 10 },
+ { 4, 10 },
+ { 5, 10 },
+ { 6, 10 },
+ { 7, 10 },
+ { 8, 10 },
+ { 9, 10 },
+ { 8, 10 },
+ { 7, 10 },
+ { 6, 10 },
+ { 5, 40 },
+ { 4, 10 },
+ { 3, 10 },
+ { 2, 10 },
+ { 1, 10 }
+};
+
+static const FrameControl k2SeqplaySeqDataFMTownsSeqNestedControl10[17] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 6 },
+ { 6, 6 },
+ { 7, 6 },
+ { 8, 6 },
+ { 9, 6 },
+ { 10, 6 },
+ { 11, 6 },
+ { 11, 12 },
+ { 12, 12 },
+ { 13, 12 },
+ { 12, 12 },
+ { 11, 12 }
+};
+
+static const FrameControl k2SeqplaySeqDataFMTownsSeqNestedControl11[9] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 64 },
+ { 5, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataFMTownsSeqNestedControl12[16] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataFMTownsSeqNestedControl13[5] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 1, 6 },
+ { 0, 1 }
+};
+
+static const FrameControl k2SeqplaySeqDataFMTownsSeqNestedControl14[8] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 2, 6 },
+ { 1, 6 }
+};
+
+static const HoFNestedSequence k2SeqplaySeqDataFMTownsSeqNested[15] = {
+ { 0x000C, "figgle.wsa", 0, 3, 60, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over1.wsa", 0, 10, 10, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over2.wsa", 0, 11, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "forest.wsa", 0, 22, 6, 0, 0, 0, NULL, 1, 3 },
+ { 0x0008, "dragon.wsa", 0, 11, 6, 0, 0, 0, NULL, 2, 0 },
+ { 0x0002, "darm.wsa", 0, 19, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "library.wsa", 0, 33, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x002A, "library.wsa", 0, 18, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataFMTownsSeqNestedControl7), k2SeqplaySeqDataFMTownsSeqNestedControl7, 0, 0 },
+ { 0x000A, "marco.wsa", 0, 37, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "hand1a.wsa", 0, 34, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x002A, "hand1b.wsa", 0, 16, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataFMTownsSeqNestedControl10), k2SeqplaySeqDataFMTownsSeqNestedControl10, 0, 0 },
+ { 0x002A, "hand1c.wsa", 0, 9, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataFMTownsSeqNestedControl11), k2SeqplaySeqDataFMTownsSeqNestedControl11, 0, 0 },
+ { 0x002C, "hand2.wsa", 0, 2, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataFMTownsSeqNestedControl12), k2SeqplaySeqDataFMTownsSeqNestedControl12, 5, 0 },
+ { 0x002C, "hand3.wsa", 0, 4, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataFMTownsSeqNestedControl13), k2SeqplaySeqDataFMTownsSeqNestedControl13, 5, 0 },
+ { 0x002C, "hand4.wsa", 0, 8, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataFMTownsSeqNestedControl14), k2SeqplaySeqDataFMTownsSeqNestedControl14, 5, 0 }
+};
+
+static const HoFSequenceProvider k2SeqplaySeqDataFMTownsProvider = { ARRAYSIZE(k2SeqplaySeqDataFMTownsSeq), k2SeqplaySeqDataFMTownsSeq, ARRAYSIZE(k2SeqplaySeqDataFMTownsSeqNested), k2SeqplaySeqDataFMTownsSeqNested };
+
+static const byte k2SeqplayIntroCDAFMTowns[24] = {
+ 0x03, 0x00, 0x01, 0x00, 0x04, 0x00, 0x02, 0x00,
+ 0x05, 0x00, 0x03, 0x00, 0x06, 0x00, 0x04, 0x00,
+ 0x07, 0x00, 0x05, 0x00, 0x08, 0x00, 0x06, 0x00
+};
+
+static const ByteProvider k2SeqplayIntroCDAFMTownsProvider = { ARRAYSIZE(k2SeqplayIntroCDAFMTowns), k2SeqplayIntroCDAFMTowns };
+
+static const byte k2SeqplayFinaleCDAFMTowns[8] = {
+ 0x03, 0x00, 0x53, 0x00, 0x04, 0x00, 0x54, 0x00
+};
+
+static const ByteProvider k2SeqplayFinaleCDAFMTownsProvider = { ARRAYSIZE(k2SeqplayFinaleCDAFMTowns), k2SeqplayFinaleCDAFMTowns };
+
+static const char *const k2IngamePakFilesFMTowns[20] = {
+ "MISC_EMC.PAK",
+ "VOC.PAK",
+ "MISC_CPS.PAK",
+ "OTHER.PAK",
+ "COST1_SH.PAK",
+ "COST2_SH.PAK",
+ "COST3_SH.PAK",
+ "COST4_SH.PAK",
+ "COST5_SH.PAK",
+ "COST6_SH.PAK",
+ "COST7_SH.PAK",
+ "COST8_SH.PAK",
+ "COST9_SH.PAK",
+ "CAULDRON.PAK",
+ "WSCORE.PAK",
+ "HOFCH_1.PAK",
+ "HOFCH_2.PAK",
+ "HOFCH_3.PAK",
+ "HOFCH_4.PAK",
+ "HOFCH_5.PAK"
+};
+
+static const StringListProvider k2IngamePakFilesFMTownsProvider = { ARRAYSIZE(k2IngamePakFilesFMTowns), k2IngamePakFilesFMTowns };
+
+static const char *const k2IngameSfxFilesFMTowns[179] = {
+ "ALCHEMY2",
+ "BIGSLAM",
+ "BITE1",
+ "BLINK1",
+ "BOING1",
+ "BUBBLE1",
+ "BUBBLE2",
+ "BURP1",
+ "BUTTON6",
+ "CAULDRN2",
+ "CHEST",
+ "CLOTHES1",
+ "CROCLAF4",
+ "CRY1",
+ "CRY2",
+ "DOORMTCL",
+ "DOORMTOP",
+ "DOORWDCL",
+ "DOORWDOP",
+ "DRUM1",
+ "DRUM2",
+ "DRUM3",
+ "DRUM4",
+ "DRUM5",
+ "DRUM6",
+ "DRUM7",
+ "EYERUB2",
+ "FALL1",
+ "FALL3",
+ "FNGRSNAP",
+ "FORMSPL1",
+ "FROG1",
+ "FROGMIX2",
+ "GASLEAK",
+ "GLOWY1",
+ "GOOD3",
+ "GOOD5",
+ "GROWTWIG",
+ "H2ODROP2",
+ "H2OPLANT",
+ "HACHUCKD",
+ "HAYFALL2",
+ "HAYSRCH4",
+ "ICECUBE",
+ "KEYOPEN",
+ "LAMBKID1",
+ "LAMBMOM3",
+ "LAUGH1",
+ "LAUGH3",
+ "LAUGH4",
+ "LIZLISP",
+ "MAKESPL1",
+ "MSTDOOM1",
+ "ORCMOVE",
+ "PLUCK3",
+ "POLGULP1",
+ "PORTCUL",
+ "POURH20",
+ "RIP2",
+ "RODNREEL",
+ "ROWBOAT1",
+ "RUCKUS1",
+ "SCAVMOV2",
+ "SCRATCH1",
+ "SNAKSPEL",
+ "SNEEZE1",
+ "SNIFF1",
+ "SNOREIN3",
+ "SNOROUT",
+ "SPLASH1",
+ "SQUEAK1",
+ "SQUEAK2",
+ "SQUEAK3",
+ "SQUISH1",
+ "SQUISH2",
+ "STEAM",
+ "STEAM3",
+ "STRETCH1",
+ "SWING",
+ "TREZA1",
+ "TURNPAG2",
+ "TWIGSNAP",
+ "UGH1",
+ "WHEEL4",
+ "WINGS1",
+ "YAWN1",
+ "ZOOM5",
+ "FILBOTL",
+ "H2OPOUR1",
+ "JAILDOR1",
+ "JAILLOK1",
+ "CASHREG1",
+ "SWISH1",
+ "TURNBOAT",
+ "CLAPPING",
+ "CRUNCH1",
+ "WHEEL6",
+ "LITEMAG",
+ "SHELDOWN",
+ "SHELSLID",
+ "ZOW2",
+ "ZANLOOP1",
+ "SCREECH2",
+ "PANTING",
+ "TREX1",
+ "TREX5",
+ "TREX3",
+ "QUAKE",
+ "WRINGH2O",
+ "SPLAT2",
+ "OCEAN1",
+ "SPLAT3",
+ "CROCLAF5",
+ "FALL5",
+ "ZCMON2",
+ "ZWAIT3",
+ "ZNO2",
+ "CROCLAF7",
+ "CRICKET1",
+ "FIREBRTH",
+ "COW2",
+ "SAP2",
+ "PMTLHI",
+ "FROGSIGH",
+ "CRICEND",
+ "CRY3",
+ "CRY4",
+ "SHROOM1",
+ "DRIP1",
+ "SWIM4",
+ "CUCKOO2",
+ "PUNCH1",
+ "SNORT3",
+ "STAMPER2",
+ "WALLFALL",
+ "WOODFAL1",
+ "SPRAY1",
+ "OHNO1",
+ "YAHOO1",
+ "YIPEE1",
+ "WIND1",
+ "WIND3",
+ "WIND6",
+ "BLOWUP2",
+ "BOATLOP2",
+ "ZGIGGL1",
+ "ZCOUGH1",
+ "CRUSH",
+ "ALARM3",
+ "APPLEAT",
+ "BABYCRY1",
+ "BABYLAF1",
+ "BABYLIK1",
+ "GEARMX3",
+ "GLASBRK2",
+ "HANDKIL1",
+ "HNDSLAP1",
+ "ICEPICK1",
+ "KISS3",
+ "LOLIFAL1",
+ "PAGEBURN",
+ "PRTYHORN",
+ "SCREAM1",
+ "SPARKHIT",
+ "SPRING2",
+ "ZANLAND1",
+ "BIGBOW",
+ "BOWFORM",
+ "BULBHIT",
+ "EYELITE",
+ "ROOFBOW",
+ "FBIGFOT1",
+ "BIGFOOT4",
+ "DORSTNCL",
+ "CROWCAW",
+ "THUNDER2",
+ "THUNDER3",
+ "TOILET",
+ ""
+};
+
+static const StringListProvider k2IngameSfxFilesFMTownsProvider = { ARRAYSIZE(k2IngameSfxFilesFMTowns), k2IngameSfxFilesFMTowns };
+
+static const byte k2IngameSfxIndexFMTowns[856] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0x47, 0x00, 0x05, 0x00, 0x22, 0x00, 0x00, 0x00,
+ 0x1F, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
+ 0x36, 0x00, 0x05, 0x00, 0x07, 0x00, 0x00, 0x00,
+ 0x3F, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x45, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00,
+ 0x7B, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00,
+ 0x3C, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00,
+ 0x4E, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x00, 0x00, 0x43, 0x00, 0x04, 0x00,
+ 0x56, 0x00, 0x00, 0x00, 0x40, 0x00, 0x05, 0x00,
+ 0x40, 0x00, 0x05, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x64, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00,
+ 0x12, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00,
+ 0x1D, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x49, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00,
+ 0x09, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
+ 0x0D, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
+ 0x0C, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00,
+ 0x21, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
+ 0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0x1B, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
+ 0x15, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
+ 0x19, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00,
+ 0x1A, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
+ 0x2A, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00,
+ 0x2D, 0x00, 0x00, 0x00, 0x27, 0x00, 0x05, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x46, 0x00, 0x05, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
+ 0x34, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
+ 0x4F, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
+ 0x0F, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x78, 0x00, 0x06, 0x00,
+ 0x50, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x33, 0x00, 0x06, 0x00, 0x3A, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x1E, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00,
+ 0x23, 0x00, 0x05, 0x00, 0x24, 0x00, 0x05, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
+ 0x48, 0x00, 0x05, 0x00, 0x20, 0x00, 0x00, 0x00,
+ 0x63, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x7A, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00,
+ 0x10, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00,
+ 0x5D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00,
+ 0x30, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
+ 0x61, 0x00, 0x05, 0x00, 0x58, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x65, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00,
+ 0x67, 0x00, 0x00, 0x00, 0x68, 0x00, 0x05, 0x00,
+ 0x69, 0x00, 0x05, 0x00, 0x6A, 0x00, 0x05, 0x00,
+ 0x01, 0x00, 0x05, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x90, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x6F, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x09, 0x00, 0x06, 0x00, 0x7D, 0x00, 0x00, 0x00,
+ 0x7E, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x80, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00,
+ 0x84, 0x00, 0x00, 0x00, 0x83, 0x00, 0x00, 0x00,
+ 0x82, 0x00, 0x05, 0x00, 0x86, 0x00, 0x00, 0x00,
+ 0x88, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00,
+ 0x8A, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00,
+ 0x87, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x00, 0x00,
+ 0x8D, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x00, 0x00,
+ 0x8F, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00,
+ 0x93, 0x00, 0x05, 0x00, 0x94, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0x96, 0x00, 0x05, 0x00,
+ 0x97, 0x00, 0x00, 0x00, 0x98, 0x00, 0x04, 0x00,
+ 0x99, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00, 0x00,
+ 0x9B, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00,
+ 0x9D, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x00, 0x00,
+ 0x9F, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00,
+ 0xA1, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00,
+ 0xA3, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00,
+ 0xA5, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x00,
+ 0xA7, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00,
+ 0xA9, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00, 0x00,
+ 0xAB, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x00, 0x00,
+ 0xAD, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x05, 0x00,
+ 0xAF, 0x00, 0x00, 0x00, 0xB0, 0x00, 0x00, 0x00,
+ 0xB1, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k2IngameSfxIndexFMTownsProvider = { ARRAYSIZE(k2IngameSfxIndexFMTowns), k2IngameSfxIndexFMTowns };
+
+static const byte k2IngameCDAFMTowns[304] = {
+ 0x02, 0x00, 0x07, 0x00, 0x03, 0x00, 0x08, 0x00,
+ 0x04, 0x00, 0x09, 0x00, 0x07, 0x00, 0x0A, 0x00,
+ 0x0C, 0x00, 0x0B, 0x00, 0x0D, 0x00, 0x0C, 0x00,
+ 0x0E, 0x00, 0x0D, 0x00, 0x0F, 0x00, 0x0E, 0x00,
+ 0x10, 0x00, 0x0F, 0x00, 0x12, 0x00, 0x10, 0x00,
+ 0x13, 0x00, 0x11, 0x00, 0x15, 0x00, 0x12, 0x00,
+ 0x17, 0x00, 0x13, 0x00, 0x18, 0x00, 0x14, 0x00,
+ 0x19, 0x00, 0x15, 0x00, 0x1A, 0x00, 0x16, 0x00,
+ 0x1B, 0x00, 0x17, 0x00, 0x1C, 0x00, 0x18, 0x00,
+ 0x1D, 0x00, 0x19, 0x00, 0x1E, 0x00, 0x1A, 0x00,
+ 0x1F, 0x00, 0x1B, 0x00, 0x21, 0x00, 0x1C, 0x00,
+ 0x22, 0x00, 0x1D, 0x00, 0x23, 0x00, 0x1E, 0x00,
+ 0x24, 0x00, 0x1F, 0x00, 0x25, 0x00, 0x20, 0x00,
+ 0x26, 0x00, 0x21, 0x00, 0x27, 0x00, 0x22, 0x00,
+ 0x28, 0x00, 0x23, 0x00, 0x29, 0x00, 0x24, 0x00,
+ 0x2A, 0x00, 0x25, 0x00, 0x2B, 0x00, 0x26, 0x00,
+ 0x2C, 0x00, 0x27, 0x00, 0x2D, 0x00, 0x28, 0x00,
+ 0x2E, 0x00, 0x29, 0x00, 0x2F, 0x00, 0x2A, 0x00,
+ 0x30, 0x00, 0x2B, 0x00, 0x31, 0x00, 0x2C, 0x00,
+ 0x32, 0x00, 0x2D, 0x00, 0x33, 0x00, 0x2E, 0x00,
+ 0x34, 0x00, 0x2F, 0x00, 0x35, 0x00, 0x30, 0x00,
+ 0x36, 0x00, 0x31, 0x00, 0x37, 0x00, 0x32, 0x00,
+ 0x38, 0x00, 0x33, 0x00, 0x39, 0x00, 0x34, 0x00,
+ 0x3A, 0x00, 0x35, 0x00, 0x3B, 0x00, 0x36, 0x00,
+ 0x3C, 0x00, 0x37, 0x00, 0x3D, 0x00, 0x38, 0x00,
+ 0x3E, 0x00, 0x39, 0x00, 0x3F, 0x00, 0x3A, 0x00,
+ 0x40, 0x00, 0x3B, 0x00, 0x41, 0x00, 0x3C, 0x00,
+ 0x42, 0x00, 0x3D, 0x00, 0x43, 0x00, 0x3E, 0x00,
+ 0x44, 0x00, 0x3F, 0x00, 0x45, 0x00, 0x40, 0x00,
+ 0x46, 0x00, 0x41, 0x00, 0x47, 0x00, 0x42, 0x00,
+ 0x48, 0x00, 0x43, 0x00, 0x49, 0x00, 0x44, 0x00,
+ 0x4A, 0x00, 0x45, 0x00, 0x4B, 0x00, 0x46, 0x00,
+ 0x4C, 0x00, 0x47, 0x00, 0x4D, 0x00, 0x48, 0x00,
+ 0x4E, 0x00, 0x49, 0x00, 0x4F, 0x00, 0x4A, 0x00,
+ 0x50, 0x00, 0x4B, 0x00, 0x51, 0x00, 0x4C, 0x00,
+ 0x52, 0x00, 0x4D, 0x00, 0x53, 0x00, 0x4E, 0x00,
+ 0x54, 0x00, 0x4F, 0x00, 0x55, 0x00, 0x50, 0x00,
+ 0x56, 0x00, 0x51, 0x00, 0x57, 0x00, 0x52, 0x00
+};
+
+static const ByteProvider k2IngameCDAFMTownsProvider = { ARRAYSIZE(k2IngameCDAFMTowns), k2IngameCDAFMTowns };
+
+static const byte k2IngameTalkObjIndexFMTowns[122] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00,
+ 0x18, 0x00, 0x26, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04, 0x00,
+ 0x05, 0x00, 0x06, 0x00, 0x07, 0x00, 0x08, 0x00,
+ 0x09, 0x00, 0x0A, 0x00, 0x11, 0x00, 0x12, 0x00,
+ 0x13, 0x00, 0x14, 0x00, 0x15, 0x00, 0x2A, 0x00,
+ 0x17, 0x00, 0x18, 0x00, 0x19, 0x00, 0x1A, 0x00,
+ 0x1B, 0x00, 0x1C, 0x00, 0x1D, 0x00, 0x1E, 0x00,
+ 0x1F, 0x00, 0x20, 0x00, 0x21, 0x00, 0x22, 0x00,
+ 0x23, 0x00, 0x24, 0x00, 0x30, 0x00, 0x35, 0x00,
+ 0x36, 0x00, 0x37, 0x00, 0x39, 0x00, 0x3A, 0x00,
+ 0x3B, 0x00, 0x3D, 0x00, 0x3E, 0x00, 0x3F, 0x00,
+ 0x40, 0x00, 0x41, 0x00, 0x42, 0x00, 0x43, 0x00,
+ 0x44, 0x00, 0x45, 0x00, 0x46, 0x00, 0x47, 0x00,
+ 0x00, 0x00
+};
+
+static const ByteProvider k2IngameTalkObjIndexFMTownsProvider = { ARRAYSIZE(k2IngameTalkObjIndexFMTowns), k2IngameTalkObjIndexFMTowns };
+
+static const char *const k2IngameTimJpStringsFMTowns[4] = {
+ "Yippee!",
+ "\x82\xE2\x82\xC1\x82\xBD\x81""[""\x81""I",
+ "Hop on!",
+ "\x82\xB3\x82\xA0\x81""A""\x8D""s""\x82\xB1\x82\xA4\x82\xE6\x81""I"
+};
+
+static const StringListProvider k2IngameTimJpStringsFMTownsProvider = { ARRAYSIZE(k2IngameTimJpStringsFMTowns), k2IngameTimJpStringsFMTowns };
+
+static const FrameControl k2IngameShapeAnimDataFMTowns0FrameControl[12] = {
+ { 0x0006, 0x00F0 },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns1FrameControl[6] = {
+ { 0x0002, 0x012C },
+ { 0x002D, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002F, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002D, 0x012C }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns2FrameControl[6] = {
+ { 0x000B, 0x0258 },
+ { 0x0030, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0032, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0030, 0x0005 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns3FrameControl[4] = {
+ { 0x001C, 0x0014 },
+ { 0x004E, 0x0014 },
+ { 0x004F, 0x0014 },
+ { 0x0050, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns4FrameControl[4] = {
+ { 0x0017, 0x0007 },
+ { 0x0051, 0x0007 },
+ { 0x0052, 0x0007 },
+ { 0x0053, 0x0007 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns5FrameControl[4] = {
+ { 0x0016, 0x0014 },
+ { 0x0054, 0x0014 },
+ { 0x0055, 0x0014 },
+ { 0x0056, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns6FrameControl[4] = {
+ { 0x003A, 0x003C },
+ { 0x0057, 0x003C },
+ { 0x0058, 0x003C },
+ { 0x0059, 0x003C }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns7FrameControl[4] = {
+ { 0x001A, 0x0032 },
+ { 0x005A, 0x0032 },
+ { 0x005B, 0x0032 },
+ { 0x005C, 0x0032 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns8FrameControl[4] = {
+ { 0x006D, 0x000C },
+ { 0x006E, 0x000C },
+ { 0x006F, 0x000C },
+ { 0x0070, 0x000C }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns9FrameControl[4] = {
+ { 0x0079, 0x0008 },
+ { 0x007A, 0x0008 },
+ { 0x007B, 0x0008 },
+ { 0x007C, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns10FrameControl[4] = {
+ { 0x007E, 0x0008 },
+ { 0x007F, 0x0008 },
+ { 0x0080, 0x0008 },
+ { 0x0081, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns11FrameControl[6] = {
+ { 0x0091, 0x01A4 },
+ { 0x0092, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0094, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0092, 0x0004 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns12FrameControl[4] = {
+ { 0x0095, 0x0006 },
+ { 0x0096, 0x0006 },
+ { 0x0097, 0x0006 },
+ { 0x0098, 0x0006 }
+};
+
+static const FrameControl k2IngameShapeAnimDataFMTowns13FrameControl[4] = {
+ { 0x0099, 0x002D },
+ { 0x009A, 0x002D },
+ { 0x009B, 0x002D },
+ { 0x009C, 0x002D }
+};
+
+static const ItemAnimDefinition k2IngameShapeAnimDataFMTowns[14] = {
+ { 6, 12, k2IngameShapeAnimDataFMTowns0FrameControl },
+ { 2, 6, k2IngameShapeAnimDataFMTowns1FrameControl },
+ { 11, 6, k2IngameShapeAnimDataFMTowns2FrameControl },
+ { 28, 4, k2IngameShapeAnimDataFMTowns3FrameControl },
+ { 23, 4, k2IngameShapeAnimDataFMTowns4FrameControl },
+ { 22, 4, k2IngameShapeAnimDataFMTowns5FrameControl },
+ { 58, 4, k2IngameShapeAnimDataFMTowns6FrameControl },
+ { 26, 4, k2IngameShapeAnimDataFMTowns7FrameControl },
+ { 109, 4, k2IngameShapeAnimDataFMTowns8FrameControl },
+ { 121, 4, k2IngameShapeAnimDataFMTowns9FrameControl },
+ { 126, 4, k2IngameShapeAnimDataFMTowns10FrameControl },
+ { 145, 6, k2IngameShapeAnimDataFMTowns11FrameControl },
+ { 149, 4, k2IngameShapeAnimDataFMTowns12FrameControl },
+ { 153, 4, k2IngameShapeAnimDataFMTowns13FrameControl }
+};
+
+static const ItemAnimDefinitionProvider k2IngameShapeAnimDataFMTownsProvider = { ARRAYSIZE(k2IngameShapeAnimDataFMTowns), k2IngameShapeAnimDataFMTowns };
+
diff --git a/devtools/create_kyradat/resources/hof_fmtowns_english.h b/devtools/create_kyradat/resources/hof_fmtowns_english.h
new file mode 100644
index 0000000000..e2904c70ad
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_fmtowns_english.h
@@ -0,0 +1,110 @@
+static const char *const k2SeqplayStringsFMTownsEnglish[105] = {
+ "Kyrandia is disappearing!",
+ "Rock by rock,",
+ "And tree by tree.",
+ "Kyrandia ceases to exist!",
+ "The Royal Mystics are baffled.",
+ "Every reference has been consulted.",
+ "Even Marko and his new valet, have been allowed into the conference.",
+ "Luckily, the Hand was experienced in these matters.",
+ "And finally a plan was approved,",
+ "That required a magic Anchor Stone,",
+ "To be retrieved from the center of the world.",
+ "Zanthia, youngest of the Kyrandian Mystics, has been selected to retrieve the Stone.",
+ "Thank you for playing The Hand of Fate.",
+ "This should be enough blueberries to open a portal to the center of the world.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! All my equipment has been stolen!",
+ " DUMMY STRING... ",
+ "If they think I'm going to walk all the way down there, they're nuts!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hurry up Faun!",
+ "Boy, that was a close call!",
+ "You said it pal. I, for one, am never going hunting again!",
+ "Ribbit.",
+ "How many times do I have to tell you? You're a toad.",
+ "Oh no! We're out of cheese!",
+ "Let's try this earwax. It's orange.",
+ "Mommy, when do I get the ivy?",
+ "Get out of here, shoo!",
+ "You cut, and I'll choose.",
+ "No. You cut and I'll choose.",
+ "I still say it was derivative drivel.",
+ "Aw, you still wouldn't recognize iambic pentameter if it bit you on the butt!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Designed & Directed by",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Matt Collins",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Qualilty Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulations!",
+ "Thank you for playing The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Chris's Hair by",
+ "Cumulo Nimbus",
+ "Load a game",
+ "Introduction",
+ "Start a new game",
+ "Exit the game",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Yukio Sekiguchi (Japan)",
+ "Takeshi Abo (Japan)"
+};
+
+static const StringListProvider k2SeqplayStringsFMTownsEnglishProvider = { ARRAYSIZE(k2SeqplayStringsFMTownsEnglish), k2SeqplayStringsFMTownsEnglish };
+
diff --git a/devtools/create_kyradat/resources/hof_fmtowns_japanese.h b/devtools/create_kyradat/resources/hof_fmtowns_japanese.h
new file mode 100644
index 0000000000..4029b01d03
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_fmtowns_japanese.h
@@ -0,0 +1,110 @@
+static const char *const k2SeqplayStringsFMTownsJapanese[105] = {
+ "\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xAA\x8F\xC1\x82\xA6\x82\xC4\x82\xA2\x82\xAD\x81""I",
+ "\x8A\xE2\x81""X""\x82\xE2\x81""A",
+ "\x96\xD8\x81""X""\x82\xDC\x82\xC5\x82\xE0\x81""B",
+ "\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xF0\x8B""~""\x82\xED\x82\xC8\x82\xAF\x82\xEA\x82\xCE\x82\xC8\x82\xE7\x82\xC8\x82\xA2\x81""I",
+ "\x96\x82\x8F""p""\x8E""t""\x82\xBD\x82\xBF\x82\xCD\x94""Y""\x82\xF1\x82\xBE\x81""B",
+ "\x82\xA0\x82\xE7\x82\xE4\x82\xE9\x91\xCE\x8D\xF4\x82\xAA\x8B\xA6\x8B""c""\x82\xB3\x82\xEA\x82\xBD\x82\xAA\x81""E""\x81""E""\x81""E",
+ "\x83""}""\x83\x8B\x83""R""\x82\xC6\x83""n""\x83\x93\x83""h""\x82\xAA\x81""A""\x82\xB1\x82\xCC\x96\xE2\x91\xE8\x82\xF0\x94""C""\x82\xB3\x82\xEA\x82\xBD\x81""B",
+ "\x83""n""\x83\x93\x83""h""\x82\xAA\x94\xAD\x88\xC4\x82\xB5\x82\xC4\x81""A",
+ "\x82\xC2\x82\xA2\x82\xC9\x81""A""\x89\xF0\x8C\x88\x8D\xF4\x82\xAA\x8C\x88\x92\xE8\x82\xB5\x82\xBD\x81""B",
+ "\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xF0\x8B""~""\x82\xA4\x82\xC9\x82\xCD\x81""A",
+ "\x90\xA2\x8A""E""\x82\xCC\x92\x86\x90""S""\x82\xC9\x82\xA0\x82\xE9\x81""h""\x96\x82\x96""@""\x82\xCC\x82\xA2\x82\xA9\x82\xE8\x90\xCE\x81""h""\x82\xAA\x95""K""\x97""v""\x82\xBE\x81""B",
+ "\x83""U""\x83\x93\x83""V""\x83""A""\x81""A""\x8C""N""\x82\xAA\x8D\xCC\x82\xE8\x82\xC9\x8D""s""\x82\xAD\x82\xCC\x82\xBE\x81""B",
+ "Thank you for playing The Hand of Fate.",
+ "\x90\xA2\x8A""E""\x82\xCC\x92\x86\x90""S""\x82\xD6\x8D""s""\x82\xAD\x82\xC9\x82\xCD\x81""A""\x83""u""\x83\x8B\x81""[""\x83""x""\x83\x8A\x81""[""\x82\xE0\x95""K""\x97""v""\x82\xBE\x82\xC6\x8E""v""\x82\xA4\x82\xED\x81""B",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "\x82\xA0\x82\x9F\x81""A""\x8E\x84\x82\xCC\x8E\x9D\x82\xBF\x95\xA8\x82\xAA\x82\xB7\x82\xD7\x82\xC4\x93\x90\x82\xDC\x82\xEA\x82\xC4\x82\xA2\x82\xE9\x81""I",
+ " DUMMY STRING... ",
+ "\x82\xBE\x82\xC1\x82\xC4\x81""A""\x90\xA2\x8A""E""\x82\xCC\x92\x86\x90""S""\x82\xDC\x82\xC5\x95\xE0\x82\xA2\x82\xC4\x8D""s""\x82\xAD\x82\xC8\x82\xF1\x82\xC4\x81""A""\x8B""C""\x82\xAA\x89\x93\x82\xAD\x82\xC8\x82\xE9\x82\xB6\x82\xE1\x82\xC8\x82\xA2\x81""I",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "\x8B""}""\x82\xAE\x82\xCC\x82\xE6\x81""A""\x83""t""\x83""H""\x81""[""\x83\x93\x81""I",
+ "\x82\xE2\x82\xC1\x82\xCF\x82\xE8\x81""A""\x97\x88\x82\xE9\x82\xF1\x82\xB6\x82\xE1\x82\xC8\x82\xA9\x82\xC1\x82\xBD\x81""I",
+ "\x82\xE0\x82\xA4\x81""A""\x93\xF1\x93""x""\x82\xC6\x97\xC2\x82\xC9\x8D""s""\x82\xA9\x82\xCB\x82\xA6\x81""I",
+ "\x83""Q""\x83\x8D\x83""Q""\x81""[""\x83\x8D\x81""B",
+ "\x8A""^""\x82\xCC\x8E""q""\x82\xCD\x8A""^""\x82\xBE\x81""B""\x81""@",
+ "\x82\xC8\x82\xF1\x82\xBE\x81""A""\x82\xE0\x82\xA4\x83""`""\x81""[""\x83""Y""\x82\xCD\x82\xC8\x82\xA2\x82\xBC\x81""I",
+ "\x82\xE6\x82\xB5\x81""A""\x83""I""\x83\x8C\x83\x93\x83""W""\x82\xCC\x94\xE7\x82\xC5\x82\xE2\x82\xEB\x82\xA4\x81""B",
+ "\x83""}""\x83""}""\x81""A""\x96""l""\x82\xCC\x96\xD1\x82\xE0\x82\xD3\x82\xB3\x82\xD3\x82\xB3\x81""H",
+ "\x82\xA8\x82\xA2\x82\xB1\x82\xE7\x81""A""\x82\xB1\x82\xB1\x82\xA9\x82\xE7\x8F""o""\x82\xC4\x8D""s""\x82\xAF\x81""I",
+ "\x82\xA8\x91""O""\x82\xAA\x94\xBC\x95\xAA\x82\xC9\x90\xD8\x82\xEA\x82\xE6\x81""A""\x89\xB4\x82\xAA\x91""I""\x82\xD4\x82\xA9\x82\xE7\x82\xB3\x81""B",
+ "\x82\xA2\x82\xE2\x81""A""\x82\xA8\x91""O""\x82\xAA\x94\xBC\x95\xAA\x82\xC9\x90\xD8\x82\xEA\x82\xCE\x81""A""\x89\xB4\x82\xAA\x91""I""\x82\xD4\x81""B",
+ "\x89\xB4\x82\xCD\x82\xDC\x82\xBE\x81""A""\x94""[""\x93\xBE\x82\xB5\x82\xBF\x82\xE1\x82\xA2\x82\xC8\x82\xA2\x82\xBA\x81""B",
+ "\x82\xA2\x82\xA2\x89\xC1\x8C\xB8\x82\xC9\x82\xB5\x82\xEB\x81""A""\x82\xDC\x82\xBD\x89\xA3\x82\xE9\x82\xBC\x81""I",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Designed & Directed by",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Matt Collins",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Qualilty Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulations!",
+ "Thank you for playing The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Chris's Hair by",
+ "Cumulo Nimbus",
+ "\x83""f""\x81""[""\x83""^""\x82\xF0\x83\x8D\x81""[""\x83""h""\x82\xB7\x82\xE9",
+ "\x83""C""\x83\x93\x83""g""\x83\x8D\x83""_""\x83""N""\x83""V""\x83\x87\x83\x93",
+ "\x90""V""\x82\xBD\x82\xC9\x83""Q""\x81""[""\x83\x80\x82\xF0\x8E""n""\x82\xDF\x82\xE9",
+ "\x83""Q""\x81""[""\x83\x80\x82\xF0\x8F""I""\x97\xB9\x82\xB7\x82\xE9",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Yukio Sekiguchi (Japan)",
+ "Takeshi Abo (Japan)"
+};
+
+static const StringListProvider k2SeqplayStringsFMTownsJapaneseProvider = { ARRAYSIZE(k2SeqplayStringsFMTownsJapanese), k2SeqplayStringsFMTownsJapanese };
+
diff --git a/devtools/create_kyradat/resources/hof_pc98.h b/devtools/create_kyradat/resources/hof_pc98.h
new file mode 100644
index 0000000000..3ff072f5e9
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_pc98.h
@@ -0,0 +1,656 @@
+static const char *const k2SeqplayPakFilesPC98[3] = {
+ "INTROGEN.PAK",
+ "INTROVOC.PAK",
+ "VOC.PAK"
+};
+
+static const StringListProvider k2SeqplayPakFilesPC98Provider = { ARRAYSIZE(k2SeqplayPakFilesPC98), k2SeqplayPakFilesPC98 };
+
+static const char *const k2SeqplaySfxFilesPC98[33] = {
+ "intro1",
+ "intro2",
+ "intro3",
+ "intro4",
+ "intro5",
+ "intro6",
+ "intro7",
+ "intro8",
+ "intro9",
+ "intro10",
+ "intro11",
+ "intro12",
+ "glow",
+ "asong",
+ "crowcaw",
+ "eyerub2",
+ "pluck3",
+ "rodnreel",
+ "frog1",
+ "scavmov2",
+ "lambmom3",
+ "lambkid1",
+ "thunder2",
+ "thunder3",
+ "wind6",
+ "h2odrop2",
+ "gasleak",
+ "polgulp1",
+ "hndslap1",
+ "burp1",
+ "scream1",
+ "theend",
+ ""
+};
+
+static const StringListProvider k2SeqplaySfxFilesPC98Provider = { ARRAYSIZE(k2SeqplaySfxFilesPC98), k2SeqplaySfxFilesPC98 };
+
+static const HoFSequence k2SeqplaySeqDataPC98Seq[16] = {
+ { 0x0002, "", "virgin.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0064, 0, 0, 0x001E },
+ { 0x0001, "westwood.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0012, 0x000C, 0, 0, 0x00A0 },
+ { 0x0001, "title.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001A, 0x000C, 0, 0, 0x000A },
+ { 0x0002, "", "over.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "library.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x001E },
+ { 0x0002, "", "hand.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0E10, 0, 0, 0x005A },
+ { 0x0001, "point.wsa", "", 4, 8, 0xFFFF, 0xFFFF, 0x0000, 0x0026, 0x0007, 0, 0, 0x00C8 },
+ { 0x0001, "zanfaun.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0033, 0x0010, 0, 0, 0x00F0 },
+ { 0x0001, "funters.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "ferb.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x001B, 0x0010, 0, 0, 0x001E },
+ { 0x0001, "fish.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0038, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "fheep.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000B, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "farmer.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0016, 0x000C, 0, 0, 0x0064 },
+ { 0x0001, "fuards.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0018, 0x000E, 0, 0, 0x001E },
+ { 0x0001, "firates.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0025, 0x000C, 0, 0, 0x001E },
+ { 0x0001, "frash.wsa", "", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x000C, 0x000A, 0, 0, 0x0154 }
+};
+
+static const FrameControl k2SeqplaySeqDataPC98SeqNestedControl7[18] = {
+ { 0, 10 },
+ { 1, 10 },
+ { 2, 10 },
+ { 3, 10 },
+ { 4, 10 },
+ { 5, 10 },
+ { 6, 10 },
+ { 7, 10 },
+ { 8, 10 },
+ { 9, 10 },
+ { 8, 10 },
+ { 7, 10 },
+ { 6, 10 },
+ { 5, 40 },
+ { 4, 10 },
+ { 3, 10 },
+ { 2, 10 },
+ { 1, 10 }
+};
+
+static const FrameControl k2SeqplaySeqDataPC98SeqNestedControl10[17] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 6 },
+ { 6, 6 },
+ { 7, 6 },
+ { 8, 6 },
+ { 9, 6 },
+ { 10, 6 },
+ { 11, 6 },
+ { 11, 12 },
+ { 12, 12 },
+ { 13, 12 },
+ { 12, 12 },
+ { 11, 12 }
+};
+
+static const FrameControl k2SeqplaySeqDataPC98SeqNestedControl11[9] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 5, 64 },
+ { 5, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataPC98SeqNestedControl12[16] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 },
+ { 0, 6 },
+ { 1, 6 }
+};
+
+static const FrameControl k2SeqplaySeqDataPC98SeqNestedControl13[5] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 1, 6 },
+ { 0, 1 }
+};
+
+static const FrameControl k2SeqplaySeqDataPC98SeqNestedControl14[8] = {
+ { 0, 6 },
+ { 1, 6 },
+ { 2, 6 },
+ { 3, 6 },
+ { 4, 6 },
+ { 3, 6 },
+ { 2, 6 },
+ { 1, 6 }
+};
+
+static const HoFNestedSequence k2SeqplaySeqDataPC98SeqNested[15] = {
+ { 0x000C, "figgle.wsa", 0, 3, 60, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over1.wsa", 0, 10, 10, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "over2.wsa", 0, 11, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x0008, "forest.wsa", 0, 22, 6, 0, 0, 0, NULL, 1, 3 },
+ { 0x0008, "dragon.wsa", 0, 11, 6, 0, 0, 0, NULL, 2, 0 },
+ { 0x0002, "darm.wsa", 0, 19, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "library.wsa", 0, 33, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x002A, "library.wsa", 0, 18, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataPC98SeqNestedControl7), k2SeqplaySeqDataPC98SeqNestedControl7, 0, 0 },
+ { 0x000A, "marco.wsa", 0, 37, 9, 0, 0, 0, NULL, 4, 0 },
+ { 0x0002, "hand1a.wsa", 0, 34, 9, 0, 0, 0, NULL, 0, 0 },
+ { 0x002A, "hand1b.wsa", 0, 16, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataPC98SeqNestedControl10), k2SeqplaySeqDataPC98SeqNestedControl10, 0, 0 },
+ { 0x002A, "hand1c.wsa", 0, 9, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataPC98SeqNestedControl11), k2SeqplaySeqDataPC98SeqNestedControl11, 0, 0 },
+ { 0x002C, "hand2.wsa", 0, 2, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataPC98SeqNestedControl12), k2SeqplaySeqDataPC98SeqNestedControl12, 5, 0 },
+ { 0x002C, "hand3.wsa", 0, 4, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataPC98SeqNestedControl13), k2SeqplaySeqDataPC98SeqNestedControl13, 5, 0 },
+ { 0x002C, "hand4.wsa", 0, 8, 9, 0, 0, ARRAYSIZE(k2SeqplaySeqDataPC98SeqNestedControl14), k2SeqplaySeqDataPC98SeqNestedControl14, 5, 0 }
+};
+
+static const HoFSequenceProvider k2SeqplaySeqDataPC98Provider = { ARRAYSIZE(k2SeqplaySeqDataPC98Seq), k2SeqplaySeqDataPC98Seq, ARRAYSIZE(k2SeqplaySeqDataPC98SeqNested), k2SeqplaySeqDataPC98SeqNested };
+
+static const char *const k2IngamePakFilesPC98[20] = {
+ "MISC_EMC.PAK",
+ "VOC.PAK",
+ "MISC_CPS.PAK",
+ "OTHER.PAK",
+ "COST1_SH.PAK",
+ "COST2_SH.PAK",
+ "COST3_SH.PAK",
+ "COST4_SH.PAK",
+ "COST5_SH.PAK",
+ "COST6_SH.PAK",
+ "COST7_SH.PAK",
+ "COST8_SH.PAK",
+ "COST9_SH.PAK",
+ "CAULDRON.PAK",
+ "AUDIO.PAK",
+ "HOFCH_1.PAK",
+ "HOFCH_2.PAK",
+ "HOFCH_3.PAK",
+ "HOFCH_4.PAK",
+ "HOFCH_5.PAK"
+};
+
+static const StringListProvider k2IngamePakFilesPC98Provider = { ARRAYSIZE(k2IngamePakFilesPC98), k2IngamePakFilesPC98 };
+
+static const char *const k2IngameSfxFilesPC98[178] = {
+ "ALCHEMY2",
+ "BIGSLAM",
+ "BITE1",
+ "BLINK1",
+ "BOING1",
+ "BUBBLE1",
+ "BUBBLE2",
+ "BURP1",
+ "BUTTON6",
+ "CAULDRN2",
+ "CHEST",
+ "CLOTHES1",
+ "CROCLAF4",
+ "CRY1",
+ "CRY2",
+ "DOORMTCL",
+ "DOORMTOP",
+ "DOORWDCL",
+ "DOORWDOP",
+ "DRUM1",
+ "DRUM2",
+ "DRUM3",
+ "DRUM4",
+ "DRUM5",
+ "DRUM6",
+ "DRUM7",
+ "EYERUB2",
+ "FALL1",
+ "FALL3",
+ "FNGRSNAP",
+ "FORMSPL1",
+ "FROG1",
+ "FROGMIX2",
+ "GASLEAK",
+ "GLOWY1",
+ "GOOD3",
+ "GOOD5",
+ "GROWTWIG",
+ "H2ODROP2",
+ "H2OPLANT",
+ "HACHUCKD",
+ "HAYFALL2",
+ "HAYSRCH4",
+ "ICECUBE",
+ "KEYOPEN",
+ "LAMBKID1",
+ "LAMBMOM3",
+ "LAUGH1",
+ "LAUGH3",
+ "LAUGH4",
+ "LIZLISP",
+ "MAKESPL1",
+ "MSTDOOM1",
+ "ORCMOVE",
+ "PLUCK3",
+ "POLGULP1",
+ "PORTCUL",
+ "POURH20",
+ "RIP2",
+ "RODNREEL",
+ "ROWBOAT1",
+ "RUCKUS1",
+ "SCAVMOV2",
+ "SCRATCH1",
+ "SNAKSPEL",
+ "SNEEZE1",
+ "SNIFF1",
+ "SNOREIN3",
+ "SNOROUT",
+ "SPLASH1",
+ "SQUEAK1",
+ "SQUEAK2",
+ "SQUEAK3",
+ "SQUISH1",
+ "SQUISH2",
+ "STEAM",
+ "STEAM3",
+ "STRETCH1",
+ "SWING",
+ "TREZA1",
+ "TURNPAG2",
+ "TWIGSNAP",
+ "UGH1",
+ "WHEEL4",
+ "WINGS1",
+ "YAWN1",
+ "ZOOM5",
+ "FILBOTL",
+ "H2OPOUR1",
+ "JAILDOR1",
+ "JAILLOK1",
+ "CASHREG1",
+ "SWISH1",
+ "TURNBOAT",
+ "CLAPPING",
+ "CRUNCH1",
+ "WHEEL6",
+ "LITEMAG",
+ "SHELDOWN",
+ "SHELSLID",
+ "ZOW2",
+ "ZANLOOP1",
+ "SCREECH2",
+ "PANTING",
+ "TREX1",
+ "TREX5",
+ "TREX3",
+ "QUAKE",
+ "WRINGH2O",
+ "SPLAT2",
+ "OCEAN1",
+ "SPLAT3",
+ "CROCLAF5",
+ "FALL5",
+ "ZCMON2",
+ "ZWAIT3",
+ "ZNO2",
+ "CROCLAF7",
+ "CRICKET1",
+ "FIREBRTH",
+ "COW2",
+ "SAP2",
+ "PMTLHI",
+ "FROGSIGH",
+ "CRICEND",
+ "CRY3",
+ "CRY4",
+ "SHROOM1",
+ "DRIP1",
+ "SWIM4",
+ "CUCKOO2",
+ "PUNCH1",
+ "SNORT3",
+ "STAMPER2",
+ "WALLFALL",
+ "WOODFAL1",
+ "SPRAY1",
+ "OHNO1",
+ "YAHOO1",
+ "YIPEE1",
+ "WIND1",
+ "WIND3",
+ "WIND6",
+ "BLOWUP2",
+ "BOATLOP2",
+ "ZGIGGL1",
+ "ZCOUGH1",
+ "CRUSH",
+ "ALARM3",
+ "APPLEAT",
+ "BABYCRY1",
+ "BABYLAF1",
+ "BABYLIK1",
+ "GEARMX3",
+ "GLASBRK2",
+ "HANDKIL1",
+ "HNDSLAP1",
+ "ICEPICK1",
+ "KISS3",
+ "LOLIFAL1",
+ "PAGEBURN",
+ "PRTYHORN",
+ "SCREAM1",
+ "SPARKHIT",
+ "SPRING2",
+ "ZANLAND1",
+ "BIGBOW",
+ "BOWFORM",
+ "BULBHIT",
+ "EYELITE",
+ "ROOFBOW",
+ "FBIGFOT1",
+ "BIGFOOT4",
+ "DORSTNCL",
+ "CROWCAW",
+ "THUNDER2",
+ "THUNDER3",
+ "TOILET"
+};
+
+static const StringListProvider k2IngameSfxFilesPC98Provider = { ARRAYSIZE(k2IngameSfxFilesPC98), k2IngameSfxFilesPC98 };
+
+static const byte k2IngameSfxIndexPC98[856] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0x47, 0x00, 0x05, 0x00, 0x22, 0x00, 0x00, 0x00,
+ 0x1F, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
+ 0x36, 0x00, 0x05, 0x00, 0x07, 0x00, 0x00, 0x00,
+ 0x3F, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x45, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00,
+ 0x7B, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00,
+ 0x3C, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00,
+ 0x4E, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x00, 0x00, 0x43, 0x00, 0x04, 0x00,
+ 0x56, 0x00, 0x00, 0x00, 0x40, 0x00, 0x05, 0x00,
+ 0x40, 0x00, 0x05, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x64, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00,
+ 0x12, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
+ 0x37, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00,
+ 0x1D, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x49, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00,
+ 0x09, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
+ 0x0D, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
+ 0x0C, 0x00, 0x00, 0x00, 0x4B, 0x00, 0x00, 0x00,
+ 0x21, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
+ 0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0x1B, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
+ 0x15, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
+ 0x19, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00,
+ 0x1A, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
+ 0x2A, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00, 0x00,
+ 0x2D, 0x00, 0x00, 0x00, 0x27, 0x00, 0x05, 0x00,
+ 0x25, 0x00, 0x00, 0x00, 0x46, 0x00, 0x05, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
+ 0x34, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
+ 0x4F, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
+ 0x0F, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x78, 0x00, 0x06, 0x00,
+ 0x50, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x33, 0x00, 0x06, 0x00, 0x3A, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x1E, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00,
+ 0x23, 0x00, 0x05, 0x00, 0x24, 0x00, 0x05, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
+ 0x48, 0x00, 0x05, 0x00, 0x20, 0x00, 0x00, 0x00,
+ 0x63, 0x00, 0x00, 0x00, 0x62, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x7A, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00,
+ 0x10, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00,
+ 0x5D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00,
+ 0x30, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
+ 0x61, 0x00, 0x05, 0x00, 0x58, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x65, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00, 0x00,
+ 0x67, 0x00, 0x00, 0x00, 0x68, 0x00, 0x05, 0x00,
+ 0x69, 0x00, 0x05, 0x00, 0x6A, 0x00, 0x05, 0x00,
+ 0x01, 0x00, 0x05, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x90, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x6F, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x09, 0x00, 0x06, 0x00, 0x7D, 0x00, 0x00, 0x00,
+ 0x7E, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x80, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00,
+ 0x84, 0x00, 0x00, 0x00, 0x83, 0x00, 0x00, 0x00,
+ 0x82, 0x00, 0x05, 0x00, 0x86, 0x00, 0x00, 0x00,
+ 0x88, 0x00, 0x00, 0x00, 0x89, 0x00, 0x00, 0x00,
+ 0x8A, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00,
+ 0x87, 0x00, 0x00, 0x00, 0x8C, 0x00, 0x00, 0x00,
+ 0x8D, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x00, 0x00,
+ 0x8F, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00,
+ 0x93, 0x00, 0x05, 0x00, 0x94, 0x00, 0x00, 0x00,
+ 0x5F, 0x00, 0x00, 0x00, 0x96, 0x00, 0x05, 0x00,
+ 0x97, 0x00, 0x00, 0x00, 0x98, 0x00, 0x04, 0x00,
+ 0x99, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00, 0x00,
+ 0x9B, 0x00, 0x00, 0x00, 0x9C, 0x00, 0x00, 0x00,
+ 0x9D, 0x00, 0x00, 0x00, 0x9E, 0x00, 0x00, 0x00,
+ 0x9F, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00,
+ 0xA1, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00, 0x00,
+ 0xA3, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00,
+ 0xA5, 0x00, 0x00, 0x00, 0xA6, 0x00, 0x00, 0x00,
+ 0xA7, 0x00, 0x00, 0x00, 0xA8, 0x00, 0x00, 0x00,
+ 0xA9, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00, 0x00,
+ 0xAB, 0x00, 0x00, 0x00, 0xAC, 0x00, 0x00, 0x00,
+ 0xAD, 0x00, 0x00, 0x00, 0xAE, 0x00, 0x05, 0x00,
+ 0xAF, 0x00, 0x00, 0x00, 0xB0, 0x00, 0x00, 0x00,
+ 0xB1, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k2IngameSfxIndexPC98Provider = { ARRAYSIZE(k2IngameSfxIndexPC98), k2IngameSfxIndexPC98 };
+
+static const byte k2IngameTalkObjIndexPC98[120] = {
+ 0x6B, 0x6D, 0x25, 0x30, 0x32, 0x64, 0x2E, 0x32,
+ 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00,
+ 0x18, 0x00, 0x26, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04, 0x00,
+ 0x05, 0x00, 0x06, 0x00, 0x07, 0x00, 0x08, 0x00,
+ 0x09, 0x00, 0x0A, 0x00, 0x11, 0x00, 0x12, 0x00,
+ 0x13, 0x00, 0x14, 0x00, 0x15, 0x00, 0x2A, 0x00,
+ 0x17, 0x00, 0x18, 0x00, 0x19, 0x00, 0x1A, 0x00,
+ 0x1B, 0x00, 0x1C, 0x00, 0x1D, 0x00, 0x1E, 0x00,
+ 0x1F, 0x00, 0x20, 0x00, 0x21, 0x00, 0x22, 0x00,
+ 0x23, 0x00, 0x24, 0x00, 0x30, 0x00, 0x35, 0x00,
+ 0x36, 0x00, 0x37, 0x00, 0x39, 0x00, 0x3A, 0x00,
+ 0x3B, 0x00, 0x3D, 0x00, 0x3E, 0x00, 0x3F, 0x00,
+ 0x40, 0x00, 0x41, 0x00, 0x42, 0x00, 0x43, 0x00,
+ 0x44, 0x00, 0x45, 0x00, 0x46, 0x00, 0x47, 0x00
+};
+
+static const ByteProvider k2IngameTalkObjIndexPC98Provider = { ARRAYSIZE(k2IngameTalkObjIndexPC98), k2IngameTalkObjIndexPC98 };
+
+static const char *const k2IngameTimJpStringsPC98[4] = {
+ "Yippee!",
+ "\x82\xE2\x82\xC1\x82\xBD\x81""[""\x81""I",
+ "Hop on!",
+ "\x82\xB3\x82\xA0\x81""A""\x8D""s""\x82\xB1\x82\xA4\x82\xE6\x81""I"
+};
+
+static const StringListProvider k2IngameTimJpStringsPC98Provider = { ARRAYSIZE(k2IngameTimJpStringsPC98), k2IngameTimJpStringsPC98 };
+
+static const FrameControl k2IngameShapeAnimDataPC980FrameControl[12] = {
+ { 0x0006, 0x00F0 },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E },
+ { 0x0006, 0x000E },
+ { 0x002A, 0x000E },
+ { 0x002B, 0x000E },
+ { 0x002C, 0x000E }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC981FrameControl[6] = {
+ { 0x0002, 0x012C },
+ { 0x002D, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002F, 0x012C },
+ { 0x002E, 0x012C },
+ { 0x002D, 0x012C }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC982FrameControl[6] = {
+ { 0x000B, 0x0258 },
+ { 0x0030, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0032, 0x0005 },
+ { 0x0031, 0x0005 },
+ { 0x0030, 0x0005 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC983FrameControl[4] = {
+ { 0x001C, 0x0014 },
+ { 0x004E, 0x0014 },
+ { 0x004F, 0x0014 },
+ { 0x0050, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC984FrameControl[4] = {
+ { 0x0017, 0x0007 },
+ { 0x0051, 0x0007 },
+ { 0x0052, 0x0007 },
+ { 0x0053, 0x0007 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC985FrameControl[4] = {
+ { 0x0016, 0x0014 },
+ { 0x0054, 0x0014 },
+ { 0x0055, 0x0014 },
+ { 0x0056, 0x0014 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC986FrameControl[4] = {
+ { 0x003A, 0x003C },
+ { 0x0057, 0x003C },
+ { 0x0058, 0x003C },
+ { 0x0059, 0x003C }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC987FrameControl[4] = {
+ { 0x001A, 0x0032 },
+ { 0x005A, 0x0032 },
+ { 0x005B, 0x0032 },
+ { 0x005C, 0x0032 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC988FrameControl[4] = {
+ { 0x006D, 0x000C },
+ { 0x006E, 0x000C },
+ { 0x006F, 0x000C },
+ { 0x0070, 0x000C }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC989FrameControl[4] = {
+ { 0x0079, 0x0008 },
+ { 0x007A, 0x0008 },
+ { 0x007B, 0x0008 },
+ { 0x007C, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC9810FrameControl[4] = {
+ { 0x007E, 0x0008 },
+ { 0x007F, 0x0008 },
+ { 0x0080, 0x0008 },
+ { 0x0081, 0x0008 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC9811FrameControl[6] = {
+ { 0x0091, 0x01A4 },
+ { 0x0092, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0094, 0x0004 },
+ { 0x0093, 0x0004 },
+ { 0x0092, 0x0004 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC9812FrameControl[4] = {
+ { 0x0095, 0x0006 },
+ { 0x0096, 0x0006 },
+ { 0x0097, 0x0006 },
+ { 0x0098, 0x0006 }
+};
+
+static const FrameControl k2IngameShapeAnimDataPC9813FrameControl[4] = {
+ { 0x0099, 0x002D },
+ { 0x009A, 0x002D },
+ { 0x009B, 0x002D },
+ { 0x009C, 0x002D }
+};
+
+static const ItemAnimDefinition k2IngameShapeAnimDataPC98[14] = {
+ { 6, 12, k2IngameShapeAnimDataPC980FrameControl },
+ { 2, 6, k2IngameShapeAnimDataPC981FrameControl },
+ { 11, 6, k2IngameShapeAnimDataPC982FrameControl },
+ { 28, 4, k2IngameShapeAnimDataPC983FrameControl },
+ { 23, 4, k2IngameShapeAnimDataPC984FrameControl },
+ { 22, 4, k2IngameShapeAnimDataPC985FrameControl },
+ { 58, 4, k2IngameShapeAnimDataPC986FrameControl },
+ { 26, 4, k2IngameShapeAnimDataPC987FrameControl },
+ { 109, 4, k2IngameShapeAnimDataPC988FrameControl },
+ { 121, 4, k2IngameShapeAnimDataPC989FrameControl },
+ { 126, 4, k2IngameShapeAnimDataPC9810FrameControl },
+ { 145, 6, k2IngameShapeAnimDataPC9811FrameControl },
+ { 149, 4, k2IngameShapeAnimDataPC9812FrameControl },
+ { 153, 4, k2IngameShapeAnimDataPC9813FrameControl }
+};
+
+static const ItemAnimDefinitionProvider k2IngameShapeAnimDataPC98Provider = { ARRAYSIZE(k2IngameShapeAnimDataPC98), k2IngameShapeAnimDataPC98 };
+
diff --git a/devtools/create_kyradat/resources/hof_pc98_english.h b/devtools/create_kyradat/resources/hof_pc98_english.h
new file mode 100644
index 0000000000..8d121ec2d5
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_pc98_english.h
@@ -0,0 +1,110 @@
+static const char *const k2SeqplayStringsPC98English[105] = {
+ "Kyrandia is disappearing!",
+ "Rock by rock,",
+ "And tree by tree.",
+ "Kyrandia ceases to exist!",
+ "The Royal Mystics are baffled.",
+ "Every reference has been consulted.",
+ "Even Marko and his new valet, have been allowed into the conference.",
+ "Luckily, the Hand was experienced in these matters.",
+ "And finally a plan was approved,",
+ "That required a magic Anchor Stone,",
+ "To be retrieved from the center of the world.",
+ "Zanthia, youngest of the Kyrandian Mystics, has been selected to retrieve the Stone.",
+ "Thank you for playing The Hand of Fate.",
+ "This should be enough blueberries to open a portal to the center of the world.",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hey! All my equipment has been stolen!",
+ " DUMMY STRING... ",
+ "If they think I'm going to walk all the way down there, they're nuts!",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "Hurry up Faun!",
+ "Boy, that was a close call!",
+ "You said it pal. I, for one, am never going hunting again!",
+ "Ribbit.",
+ "How many times do I have to tell you? You're a toad.",
+ "Oh no! We're out of cheese!",
+ "Let's try this earwax. It's orange.",
+ "Mommy, when do I get the ivy?",
+ "Get out of here, shoo!",
+ "You cut, and I'll choose.",
+ "No. You cut and I'll choose.",
+ "I still say it was derivative drivel.",
+ "Aw, you still wouldn't recognize iambic pentameter if it bit you on the butt!",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Designed & Directed by",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Matt Collins",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Qualilty Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulations!",
+ "Thank you for playing The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Chris's Hair by",
+ "Cumulo Nimbus",
+ "Load a game",
+ "Introduction",
+ "Start a new game",
+ "Exit the game",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Yukio Sekiguchi (Japan)",
+ "Takeshi Abo (Japan)"
+};
+
+static const StringListProvider k2SeqplayStringsPC98EnglishProvider = { ARRAYSIZE(k2SeqplayStringsPC98English), k2SeqplayStringsPC98English };
+
diff --git a/devtools/create_kyradat/resources/hof_pc98_japanese.h b/devtools/create_kyradat/resources/hof_pc98_japanese.h
new file mode 100644
index 0000000000..3ea4e5df96
--- /dev/null
+++ b/devtools/create_kyradat/resources/hof_pc98_japanese.h
@@ -0,0 +1,110 @@
+static const char *const k2SeqplayStringsPC98Japanese[105] = {
+ "\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xAA\x8F\xC1\x82\xA6\x82\xC4\x82\xA2\x82\xAD\x81""I",
+ "\x8A\xE2\x81""X""\x82\xE2\x81""A",
+ "\x96\xD8\x81""X""\x82\xDC\x82\xC5\x82\xE0\x81""B",
+ "\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xF0\x8B""~""\x82\xED\x82\xC8\x82\xAF\x82\xEA\x82\xCE\x82\xC8\x82\xE7\x82\xC8\x82\xA2\x81""I",
+ "\x96\x82\x8F""p""\x8E""t""\x82\xBD\x82\xBF\x82\xCD\x94""Y""\x82\xF1\x82\xBE\x81""B",
+ "\x82\xA0\x82\xE7\x82\xE4\x82\xE9\x91\xCE\x8D\xF4\x82\xAA\x8B\xA6\x8B""c""\x82\xB3\x82\xEA\x82\xBD\x82\xAA\x81""E""\x81""E""\x81""E",
+ "\x83""}""\x83\x8B\x83""R""\x82\xC6\x83""n""\x83\x93\x83""h""\x82\xAA\x81""A""\x82\xB1\x82\xCC\x96\xE2\x91\xE8\x82\xF0\x94""C""\x82\xB3\x82\xEA\x82\xBD\x81""B",
+ "\x83""n""\x83\x93\x83""h""\x82\xAA\x94\xAD\x88\xC4\x82\xB5\x82\xC4\x81""A",
+ "\x82\xC2\x82\xA2\x82\xC9\x81""A""\x89\xF0\x8C\x88\x8D\xF4\x82\xAA\x8C\x88\x92\xE8\x82\xB5\x82\xBD\x81""B",
+ "\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xF0\x8B""~""\x82\xA4\x82\xC9\x82\xCD\x81""A",
+ "\x90\xA2\x8A""E""\x82\xCC\x92\x86\x90""S""\x82\xC9\x82\xA0\x82\xE9\x81""h""\x96\x82\x96""@""\x82\xCC\x82\xA2\x82\xA9\x82\xE8\x90\xCE\x81""h""\x82\xAA\x95""K""\x97""v""\x82\xBE\x81""B",
+ "\x83""U""\x83\x93\x83""V""\x83""A""\x81""A""\x8C""N""\x82\xAA\x8D\xCC\x82\xE8\x82\xC9\x8D""s""\x82\xAD\x82\xCC\x82\xBE\x81""B",
+ "Thank you for playing The Hand of Fate.",
+ "\x90\xA2\x8A""E""\x82\xCC\x92\x86\x90""S""\x82\xD6\x8D""s""\x82\xAD\x82\xC9\x82\xCD\x81""A""\x83""u""\x83\x8B\x81""[""\x83""x""\x83\x8A\x81""[""\x82\xE0\x95""K""\x97""v""\x82\xBE\x82\xC6\x8E""v""\x82\xA4\x82\xED\x81""B",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "\x82\xA0\x82\x9F\x81""A""\x8E\x84\x82\xCC\x8E\x9D\x82\xBF\x95\xA8\x82\xAA\x82\xB7\x82\xD7\x82\xC4\x93\x90\x82\xDC\x82\xEA\x82\xC4\x82\xA2\x82\xE9\x81""I",
+ " DUMMY STRING... ",
+ "\x82\xBE\x82\xC1\x82\xC4\x81""A""\x90\xA2\x8A""E""\x82\xCC\x92\x86\x90""S""\x82\xDC\x82\xC5\x95\xE0\x82\xA2\x82\xC4\x8D""s""\x82\xAD\x82\xC8\x82\xF1\x82\xC4\x81""A""\x8B""C""\x82\xAA\x89\x93\x82\xAD\x82\xC8\x82\xE9\x82\xB6\x82\xE1\x82\xC8\x82\xA2\x81""I",
+ " DUMMY STRING... ",
+ " DUMMY STRING... ",
+ "\x8B""}""\x82\xAE\x82\xCC\x82\xE6\x81""A""\x83""t""\x83""H""\x81""[""\x83\x93\x81""I",
+ "\x82\xE2\x82\xC1\x82\xCF\x82\xE8\x81""A""\x97\x88\x82\xE9\x82\xF1\x82\xB6\x82\xE1\x82\xC8\x82\xA9\x82\xC1\x82\xBD\x81""I",
+ "\x82\xE0\x82\xA4\x81""A""\x93\xF1\x93""x""\x82\xC6\x97\xC2\x82\xC9\x8D""s""\x82\xA9\x82\xCB\x82\xA6\x81""I",
+ "\x83""Q""\x83\x8D\x83""Q""\x81""[""\x83\x8D\x81""B",
+ "\x8A""^""\x82\xCC\x8E""q""\x82\xCD\x8A""^""\x82\xBE\x81""B""\x81""@",
+ "\x82\xC8\x82\xF1\x82\xBE\x81""A""\x82\xE0\x82\xA4\x83""`""\x81""[""\x83""Y""\x82\xCD\x82\xC8\x82\xA2\x82\xBC\x81""I",
+ "\x82\xE6\x82\xB5\x81""A""\x83""I""\x83\x8C\x83\x93\x83""W""\x82\xCC\x94\xE7\x82\xC5\x82\xE2\x82\xEB\x82\xA4\x81""B",
+ "\x83""}""\x83""}""\x81""A""\x96""l""\x82\xCC\x96\xD1\x82\xE0\x82\xD3\x82\xB3\x82\xD3\x82\xB3\x81""H",
+ "\x82\xA8\x82\xA2\x82\xB1\x82\xE7\x81""A""\x82\xB1\x82\xB1\x82\xA9\x82\xE7\x8F""o""\x82\xC4\x8D""s""\x82\xAF\x81""I",
+ "\x82\xA8\x91""O""\x82\xAA\x94\xBC\x95\xAA\x82\xC9\x90\xD8\x82\xEA\x82\xE6\x81""A""\x89\xB4\x82\xAA\x91""I""\x82\xD4\x82\xA9\x82\xE7\x82\xB3\x81""B",
+ "\x82\xA2\x82\xE2\x81""A""\x82\xA8\x91""O""\x82\xAA\x94\xBC\x95\xAA\x82\xC9\x90\xD8\x82\xEA\x82\xCE\x81""A""\x89\xB4\x82\xAA\x91""I""\x82\xD4\x81""B",
+ "\x89\xB4\x82\xCD\x82\xDC\x82\xBE\x81""A""\x94""[""\x93\xBE\x82\xB5\x82\xBF\x82\xE1\x82\xA2\x82\xC8\x82\xA2\x82\xBA\x81""B",
+ "\x82\xA2\x82\xA2\x89\xC1\x8C\xB8\x82\xC9\x82\xB5\x82\xEB\x81""A""\x82\xDC\x82\xBD\x89\xA3\x82\xE9\x82\xBC\x81""I",
+ "Executive Producer",
+ "Brett W. Sperry",
+ "Designed & Directed by",
+ "Rick Gush",
+ "Lead Programmer",
+ "Michael Legg",
+ "Art Management",
+ "Louis Castle",
+ "Joseph B. Hewitt IV",
+ "Lead Artist",
+ "Rick Parks",
+ "Additional Coding by",
+ "Philip W. Gorrow",
+ "Matt Collins",
+ "Mark McCubbin",
+ "Artists",
+ "Cameron Chun",
+ "Cary Averett",
+ "Cindy Chinn",
+ "Elie Arabian",
+ "Fei Cheng",
+ "Ferby Miguel",
+ "Frank Mendeola",
+ "Jack Martin",
+ "Jerry Moore",
+ "",
+ "Judith Peterson",
+ "Larry Miller",
+ "Lenny Lee",
+ "Louise Sandoval",
+ "Ren Olsen",
+ "Music & Sounds by",
+ "Paul Mudra",
+ "Frank Klepacki",
+ "Dwight Okahara",
+ "Pat Collins",
+ "Qualilty Assurance by",
+ "Glenn Sperry",
+ "Michael Lightner",
+ "William Foster",
+ "Jesse Clemit",
+ "Jeff Fillhaber",
+ "Manual, Package Design",
+ "& Fulfillment",
+ "Eydie Laramore",
+ "Lisa Marcinko",
+ "Lauren Rifkin",
+ "Congratulations!",
+ "Thank you for playing The Hand of Fate!",
+ "Guest Coding",
+ "Producer Liaison",
+ "Scott Duckett",
+ "Irvine Testers",
+ "Chris McFarland",
+ "Paul Moore",
+ "Chad Soares",
+ "Jared Brinkley",
+ "Jon Willliams",
+ "Chris Toft",
+ "Chris's Hair by",
+ "Cumulo Nimbus",
+ "\x83""f""\x81""[""\x83""^""\x82\xF0\x83\x8D\x81""[""\x83""h""\x82\xB7\x82\xE9",
+ "\x83""C""\x83\x93\x83""g""\x83\x8D\x83""_""\x83""N""\x83""V""\x83\x87\x83\x93",
+ "\x90""V""\x82\xBD\x82\xC9\x83""Q""\x81""[""\x83\x80\x82\xF0\x8E""n""\x82\xDF\x82\xE9",
+ "\x83""Q""\x81""[""\x83\x80\x82\xF0\x8F""I""\x97\xB9\x82\xB7\x82\xE9",
+ "Special Thanks to",
+ "Sake Joe Bostic-san",
+ "Tim Fritz",
+ "Kenny Dunne",
+ "Yukio Sekiguchi (Japan)",
+ "Takeshi Abo (Japan)"
+};
+
+static const StringListProvider k2SeqplayStringsPC98JapaneseProvider = { ARRAYSIZE(k2SeqplayStringsPC98Japanese), k2SeqplayStringsPC98Japanese };
+
diff --git a/devtools/create_kyradat/resources/lok_amiga.h b/devtools/create_kyradat/resources/lok_amiga.h
new file mode 100644
index 0000000000..4cfa275a55
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_amiga.h
@@ -0,0 +1,1763 @@
+static const byte k1KallakWritingSeqAmiga[2036] = {
+ 0x00, 0x00, 0x01, 0x1A, 0x0E, 0x1B, 0x17, 0x00,
+ 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x00, 0x00, 0x0C,
+ 0x00, 0x19, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x95, 0x00, 0x20, 0x09, 0x0F,
+ 0x2E, 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x04,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x20,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x05,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01, 0x7F,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0A,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00, 0x14,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0B,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01, 0x6D,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x10,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x20,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00, 0x63,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x15,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00, 0x1F,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00, 0x76,
+ 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00, 0x19,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00, 0x16,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1D,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00, 0x1F,
+ 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x2F, 0x02,
+ 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x01,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x02,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x05,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01, 0x7F,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0A,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00, 0x14,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0B,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01, 0x6D,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x10,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x20,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00, 0x63,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x15,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00, 0x1F,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00, 0x76,
+ 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00, 0x19,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00, 0x16,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1D,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00, 0x1F,
+ 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x30, 0x02,
+ 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x01,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x02,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x03,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x04, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x8D, 0x00, 0x20, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x05, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x88, 0x00, 0x14, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x07, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x08, 0x00, 0x00, 0x10, 0x05, 0x00, 0x82,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x09,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x7C, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0B, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x79, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x76, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01, 0x73,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02, 0x70,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0F,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x6A, 0x00, 0x20, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x11, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x67, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x12, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x65, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x13, 0x00, 0x00, 0x10, 0x05, 0x01, 0x63,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x14,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x63, 0x00, 0x20,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x15, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x65, 0x00, 0x1F, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x16, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x6A, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x17, 0x00, 0x00, 0x10, 0x05, 0x00, 0x70,
+ 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00, 0x18,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x17,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x19, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x7C, 0x00, 0x16, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x82, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00, 0x88,
+ 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1C,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x1D,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x93, 0x00, 0x1F, 0x07, 0x06,
+ 0x00, 0x1C, 0x06, 0x3C, 0x00, 0x1B, 0x0F, 0x31,
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x95, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x00, 0x00, 0x00, 0x10, 0x05, 0x00, 0x95, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x93, 0x00, 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x05, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x07, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0D, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x6A, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x06, 0x3C, 0x00, 0x02,
+ 0x00, 0x1E, 0x00, 0x00, 0x10, 0x08, 0x12, 0x06,
+ 0x1E, 0x00, 0x0A, 0x01, 0x02, 0x00, 0x1F, 0x00,
+ 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02, 0x00, 0x20,
+ 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02, 0x00,
+ 0x21, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02,
+ 0x00, 0x22, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00,
+ 0x0B, 0x01, 0x02, 0x00, 0x18, 0x1F, 0x06, 0x0A,
+ 0x00, 0x02, 0x00, 0x23, 0x00, 0x00, 0x10, 0x07,
+ 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x24, 0x00,
+ 0x00, 0x10, 0x07, 0x14, 0x00, 0x02, 0x00, 0x25,
+ 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x18, 0x1F,
+ 0x02, 0x00, 0x26, 0x00, 0x00, 0x10, 0x07, 0x14,
+ 0x00, 0x02, 0x00, 0x27, 0x00, 0x00, 0x10, 0x07,
+ 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x28, 0x00,
+ 0x00, 0x10, 0x08, 0x06, 0x3C, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x13, 0x1C, 0x19, 0x01, 0x06, 0x3C,
+ 0x00, 0x01, 0x00, 0x1D
+};
+
+static const ByteProvider k1KallakWritingSeqAmigaProvider = { ARRAYSIZE(k1KallakWritingSeqAmiga), k1KallakWritingSeqAmiga };
+
+static const byte k1MalcolmTreeSeqAmiga[532] = {
+ 0x00, 0x01, 0x00, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x00, 0x00, 0x0D, 0x01,
+ 0x09, 0x02, 0x01, 0x00, 0x00, 0x00, 0x10, 0x19,
+ 0x03, 0x09, 0x18, 0x1E, 0x14, 0x18, 0x1F, 0x0A,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x00,
+ 0x1F, 0x00, 0x18, 0x19, 0x0A, 0x01, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x0B, 0x01, 0x0F, 0x00, 0x18,
+ 0x26, 0x10, 0x1F, 0x50, 0x00, 0x2D, 0x05, 0x0A,
+ 0x02, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x02,
+ 0x10, 0x00, 0x11, 0x18, 0x1F, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x18, 0x24, 0x18, 0x1F,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x1E, 0x0A,
+ 0x03, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x03,
+ 0x15, 0x00, 0x10, 0x16, 0x50, 0x00, 0x2D, 0x05,
+ 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x18, 0x1E, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x1A, 0x18,
+ 0x1E, 0x0A, 0x05, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x05, 0x09, 0x00, 0x11, 0x0A, 0x06, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x06, 0x14, 0x00,
+ 0x18, 0x1A, 0x18, 0x1F, 0x10, 0x17, 0x50, 0x00,
+ 0x2D, 0x05, 0x06, 0x3C, 0x00, 0x0A, 0x07, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x07, 0x06, 0x00,
+ 0x18, 0x1E, 0x06, 0x1E, 0x00, 0x10, 0x18, 0x50,
+ 0x00, 0x2D, 0x05, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0A, 0x08, 0x04, 0x01, 0x06, 0x06,
+ 0x00, 0x04, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x08, 0x01, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x06, 0x78, 0x00, 0x0A, 0x09, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x0B, 0x09, 0x04, 0x00, 0x18,
+ 0x1B, 0x0A, 0x0A, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x0A, 0x09, 0x00, 0x06, 0x14, 0x00, 0x10,
+ 0x19, 0x50, 0x00, 0x2D, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0A,
+ 0x0B, 0x03, 0x01, 0x06, 0x06, 0x00, 0x04, 0x01,
+ 0x06, 0x06, 0x00, 0x04, 0x01, 0x06, 0x06, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x0B, 0x01, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x10, 0x1A, 0x50,
+ 0x00, 0x2D, 0x05, 0x0A, 0x0C, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x0C, 0x12, 0x00, 0x03, 0x01,
+ 0x01, 0x01, 0x11, 0x15, 0x00, 0x02, 0x00, 0x02,
+ 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x10, 0x10,
+ 0x1C, 0x50, 0x00, 0x2D, 0x05, 0x06, 0x1E, 0x00,
+ 0x03, 0x02, 0x03, 0x02, 0x06, 0x06, 0x00, 0x11,
+ 0x18, 0x1C, 0x0A, 0x0F, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x0B, 0x0F, 0x0D, 0x00, 0x10, 0x1D, 0x50,
+ 0x00, 0x2D, 0x05, 0x0A, 0x10, 0x03, 0x02, 0x06,
+ 0x06, 0x00, 0x03, 0x02, 0x06, 0x06, 0x00, 0x03,
+ 0x02, 0x06, 0x06, 0x00, 0x04, 0x02, 0x06, 0x06,
+ 0x00, 0x04, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02,
+ 0x06, 0x06, 0x00, 0x0B, 0x10, 0x02, 0x00, 0x10,
+ 0x1E, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x11, 0x03,
+ 0x02, 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x03, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02,
+ 0x06, 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B, 0x11, 0x02,
+ 0x00, 0x06, 0xB4, 0x00, 0x13, 0x19, 0x01, 0x01,
+ 0x01, 0x01, 0x02, 0x1D
+};
+
+static const ByteProvider k1MalcolmTreeSeqAmigaProvider = { ARRAYSIZE(k1MalcolmTreeSeqAmiga), k1MalcolmTreeSeqAmiga };
+
+static const byte k1WestwoodLogoSeqAmiga[77] = {
+ 0x19, 0x02, 0x00, 0x03, 0x01, 0x1A, 0x02, 0x03,
+ 0x00, 0x00, 0x00, 0x00, 0x16, 0x01, 0x06, 0x06,
+ 0x00, 0x06, 0x3C, 0x00, 0x18, 0x14, 0x0A, 0x00,
+ 0x03, 0x03, 0x16, 0x01, 0x0B, 0x00, 0x08, 0x00,
+ 0x06, 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03,
+ 0x03, 0x16, 0x01, 0x0B, 0x01, 0x0B, 0x00, 0x06,
+ 0x78, 0x00, 0x18, 0x14, 0x02, 0x03, 0x0A, 0x00,
+ 0x00, 0x00, 0x16, 0x01, 0x06, 0x06, 0x00, 0x0A,
+ 0x02, 0x04, 0x03, 0x16, 0x01, 0x0B, 0x02, 0x09,
+ 0x00, 0x13, 0x01, 0x03, 0x1D
+};
+
+static const ByteProvider k1WestwoodLogoSeqAmigaProvider = { ARRAYSIZE(k1WestwoodLogoSeqAmiga), k1WestwoodLogoSeqAmiga };
+
+static const byte k1KyrandiaLogoSeqAmiga[92] = {
+ 0x15, 0x00, 0x02, 0x00, 0x06, 0x01, 0x1A, 0x02,
+ 0x06, 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06,
+ 0x06, 0x00, 0x18, 0x14, 0x16, 0x04, 0x0A, 0x00,
+ 0x03, 0x06, 0x16, 0x00, 0x0B, 0x00, 0x0B, 0x00,
+ 0x06, 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03,
+ 0x06, 0x16, 0x00, 0x0B, 0x01, 0x0F, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x02, 0x04, 0x06,
+ 0x16, 0x00, 0x0B, 0x02, 0x0F, 0x00, 0x02, 0x06,
+ 0x0D, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06, 0x06,
+ 0x00, 0x06, 0x78, 0x00, 0x18, 0x14, 0x0A, 0x02,
+ 0x04, 0x06, 0x16, 0x00, 0x0B, 0x02, 0x0C, 0x00,
+ 0x13, 0x01, 0x06, 0x1D
+};
+
+static const ByteProvider k1KyrandiaLogoSeqAmigaProvider = { ARRAYSIZE(k1KyrandiaLogoSeqAmiga), k1KyrandiaLogoSeqAmiga };
+
+static const byte k1KallakMalcolmSeqAmiga[635] = {
+ 0x00, 0x04, 0x01, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x00, 0x00, 0x0D, 0x00,
+ 0x0C, 0x03, 0x17, 0x00, 0x00, 0x88, 0x3F, 0x01,
+ 0xC7, 0x00, 0x02, 0x19, 0x05, 0x02, 0x04, 0x00,
+ 0x10, 0x00, 0x3A, 0x09, 0x14, 0x18, 0x23, 0x0A,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x00,
+ 0x22, 0x00, 0x11, 0x10, 0x02, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x01, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x01, 0x07, 0x00, 0x06, 0x3C, 0x00, 0x11,
+ 0x10, 0x03, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x02,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x02, 0x17,
+ 0x00, 0x06, 0x3C, 0x00, 0x11, 0x10, 0x04, 0x50,
+ 0x00, 0x3A, 0x05, 0x0A, 0x03, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x03, 0x0A, 0x00, 0x06, 0x3C,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x11, 0x11, 0x10, 0x05, 0xF0, 0x00, 0x3A, 0x05,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x06, 0x3C, 0x00, 0x11,
+ 0x10, 0x06, 0xF0, 0x00, 0x3A, 0x05, 0x0A, 0x04,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x04, 0x12,
+ 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x06, 0x78, 0x00, 0x11, 0x10, 0x07, 0xF0, 0x00,
+ 0x3A, 0x05, 0x0A, 0x05, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x05, 0x11, 0x00, 0x06, 0x3C, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x11, 0x11, 0x10, 0x08, 0x50, 0x00,
+ 0x3A, 0x05, 0x0A, 0x06, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x06, 0x07, 0x00, 0x06, 0x3C, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x11,
+ 0x10, 0x09, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x07,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x07, 0x0A,
+ 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x11, 0x10, 0x0A, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x08, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x08, 0x10, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x11, 0x11, 0x10, 0x0B, 0xF0,
+ 0x00, 0x3A, 0x05, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x11, 0x10, 0x0C, 0xF0, 0x00,
+ 0x3A, 0x05, 0x0A, 0x09, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x09, 0x0E, 0x00, 0x06, 0x3C, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x11, 0x11,
+ 0x10, 0x0D, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x0A,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0A, 0x0E,
+ 0x00, 0x06, 0x3C, 0x00, 0x0A, 0x0B, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x0B, 0x02, 0x00, 0x18,
+ 0x20, 0x0A, 0x0C, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x0C, 0x06, 0x00, 0x18, 0x21, 0x0A, 0x0D,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0D, 0x0C,
+ 0x00, 0x18, 0x22, 0x0A, 0x0E, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x0E, 0x0B, 0x00, 0x11, 0x10,
+ 0x0E, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x0F, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0F, 0x09, 0x00,
+ 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x11, 0x10, 0x0F, 0x50, 0x00, 0x3A, 0x05, 0x0A,
+ 0x10, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x10,
+ 0x09, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x11, 0x10, 0x10, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x11, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x11, 0x0F, 0x00, 0x06, 0x3C, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x11, 0x10, 0x11, 0x50,
+ 0x00, 0x3A, 0x05, 0x0A, 0x12, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x12, 0x14, 0x00, 0x06, 0x3C,
+ 0x00, 0x0A, 0x13, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x13, 0x06, 0x00, 0x18, 0x23, 0x0A, 0x13,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x13, 0x07,
+ 0x00, 0x11, 0x06, 0x3C, 0x00, 0x13, 0x19, 0x01,
+ 0x01, 0x04, 0x1D
+};
+
+static const ByteProvider k1KallakMalcolmSeqAmigaProvider = { ARRAYSIZE(k1KallakMalcolmSeqAmiga), k1KallakMalcolmSeqAmiga };
+
+static const byte k1ForestSeqAmiga[734] = {
+ 0x00, 0x05, 0x01, 0x00, 0x07, 0x01, 0x1A, 0x02,
+ 0x07, 0x00, 0x00, 0x00, 0x08, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x0A, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x0B, 0x00, 0x41, 0x00,
+ 0x18, 0x16, 0x03, 0x07, 0x02, 0x05, 0x01, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x02, 0x05, 0x03, 0x98, 0x00,
+ 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x02, 0x05, 0x01, 0x98, 0x00, 0x38,
+ 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x00, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0A, 0x05,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x05, 0x0E, 0x00, 0x18, 0x16, 0x03, 0x07, 0x02,
+ 0x05, 0x01, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x03, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x01,
+ 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x04, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x05, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x06, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09,
+ 0x00, 0x18, 0x25, 0x0A, 0x00, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x0A, 0x06, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B, 0x06, 0x0E,
+ 0x00, 0x18, 0x17, 0x0A, 0x01, 0x0C, 0x04, 0x03,
+ 0x07, 0x03, 0x05, 0x16, 0x02, 0x16, 0x03, 0x06,
+ 0x09, 0x00, 0x0B, 0x01, 0x0D, 0x00, 0x18, 0x25,
+ 0x0A, 0x07, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09,
+ 0x00, 0x0B, 0x07, 0x0E, 0x00, 0x18, 0x18, 0x03,
+ 0x07, 0x03, 0x05, 0x16, 0x02, 0x16, 0x03, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x03, 0x05, 0x16, 0x02,
+ 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x06, 0x12,
+ 0x00, 0x18, 0x25, 0x0A, 0x02, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x02, 0x07, 0x00, 0x0A, 0x03, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B, 0x03, 0x0F,
+ 0x00, 0x13, 0x01, 0x07, 0x01, 0x05, 0x1D, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x03, 0xEC, 0x00, 0x00,
+ 0x00, 0x4A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x32, 0x00, 0x00, 0x00, 0x2E, 0x00, 0x00,
+ 0x00, 0x2A, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00,
+ 0x00, 0x22, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00,
+ 0x01, 0x46, 0x00, 0x00, 0x01, 0x42, 0x00, 0x00,
+ 0x01, 0x3E, 0x00, 0x00, 0x01, 0x3A, 0x00, 0x00,
+ 0x01, 0x36, 0x00, 0x00, 0x01, 0x32, 0x00, 0x00,
+ 0x01, 0x2E, 0x00, 0x00, 0x01, 0x2A, 0x00, 0x00,
+ 0x01, 0x26, 0x00, 0x00, 0x01, 0x22, 0x00, 0x00,
+ 0x01, 0x1E, 0x00, 0x00, 0x01, 0x1A, 0x00, 0x00,
+ 0x01, 0x16, 0x00, 0x00, 0x01, 0x12, 0x00, 0x00,
+ 0x01, 0x0E, 0x00, 0x00, 0x01, 0x0A, 0x00, 0x00,
+ 0x01, 0x06, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00,
+ 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFA, 0x00, 0x00,
+ 0x00, 0xF6, 0x00, 0x00, 0x00, 0xF2, 0x00, 0x00,
+ 0x00, 0xEE, 0x00, 0x00, 0x00, 0xEA, 0x00, 0x00,
+ 0x00, 0xE6, 0x00, 0x00, 0x00, 0xE2, 0x00, 0x00,
+ 0x00, 0xDE, 0x00, 0x00, 0x00, 0xDA, 0x00, 0x00,
+ 0x00, 0xD6, 0x00, 0x00, 0x00, 0xD2, 0x00, 0x00,
+ 0x00, 0xCE, 0x00, 0x00, 0x00, 0xCA, 0x00, 0x00,
+ 0x00, 0xC6, 0x00, 0x00, 0x00, 0xC2, 0x00, 0x00,
+ 0x00, 0xBE, 0x00, 0x00, 0x00, 0xBA, 0x00, 0x00,
+ 0x00, 0xB6, 0x00, 0x00, 0x00, 0xB2, 0x00, 0x00,
+ 0x00, 0xAE, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00,
+ 0x00, 0xA6, 0x00, 0x00, 0x00, 0xA2, 0x00, 0x00,
+ 0x00, 0x9E, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00,
+ 0x00, 0x96, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00,
+ 0x00, 0x8E, 0x00, 0x00, 0x00, 0x8A, 0x00, 0x00,
+ 0x00, 0x86, 0x00, 0x00, 0x00, 0x82, 0x00, 0x00,
+ 0x00, 0x7E, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00,
+ 0x00, 0x72, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x00,
+ 0x00, 0x6A, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00,
+ 0x00, 0x62, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x00,
+ 0x00, 0x5A, 0x00, 0x00, 0x00, 0x56, 0x00, 0x00,
+ 0x00, 0x52, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00,
+ 0x00, 0x4A, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00,
+ 0x00, 0x42, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00,
+ 0x00, 0x3A, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x03, 0xF2, 0x00, 0x00,
+ 0x03, 0xEA, 0x00, 0x00, 0x00, 0x08
+};
+
+static const ByteProvider k1ForestSeqAmigaProvider = { ARRAYSIZE(k1ForestSeqAmiga), k1ForestSeqAmiga };
+
+static const char *const k1IntroCPSStringsAmiga[2] = {
+ "malkal.cps",
+ "tree.cps"
+};
+
+static const StringListProvider k1IntroCPSStringsAmigaProvider = { ARRAYSIZE(k1IntroCPSStringsAmiga), k1IntroCPSStringsAmiga };
+
+static const char *const k1IntroWSAStringsAmiga[11] = {
+ "kallak.wsa",
+ "tree1.wsa",
+ "tree2.wsa",
+ "westwood.wsa",
+ "mal-kal.wsa",
+ "destruct.wsa",
+ "kyrandia.wsa",
+ "shore.wsa",
+ "reunion.wsa",
+ "reuniont.wsa",
+ "latern.wsa"
+};
+
+static const StringListProvider k1IntroWSAStringsAmigaProvider = { ARRAYSIZE(k1IntroWSAStringsAmiga), k1IntroWSAStringsAmiga };
+
+static const char *const k1IntroCOLStringsAmiga[4] = {
+ "kallak.col",
+ "tree_exp.col",
+ "ww.col",
+ "mal-kal.col"
+};
+
+static const StringListProvider k1IntroCOLStringsAmigaProvider = { ARRAYSIZE(k1IntroCOLStringsAmiga), k1IntroCOLStringsAmiga };
+
+static const Room k1RoomListAmiga[246] = {
+ { 30, 0xFFFF, 0xFFFF, 0x0001, 0xFFFF },
+ { 71, 0xFFFF, 0xFFFF, 0x0005, 0xFFFF },
+ { 44, 0xFFFF, 0x0003, 0xFFFF, 0xFFFF },
+ { 72, 0xFFFF, 0xFFFF, 0x000E, 0xFFFF },
+ { 48, 0xFFFF, 0x0005, 0xFFFF, 0x000E },
+ { 74, 0xFFFF, 0x000A, 0xFFFF, 0x0004 },
+ { 46, 0xFFFF, 0x000F, 0xFFFF, 0x000B },
+ { 75, 0xFFFF, 0x0009, 0xFFFF, 0x0018 },
+ { 13, 0xFFFF, 0x000C, 0xFFFF, 0x000A },
+ { 5, 0x000D, 0xFFFF, 0xFFFF, 0x0007 },
+ { 84, 0xFFFF, 0x0008, 0xFFFF, 0x0005 },
+ { 37, 0xFFFF, 0x0006, 0x000C, 0x0010 },
+ { 51, 0x000B, 0xFFFF, 0x000D, 0x0008 },
+ { 23, 0x000C, 0xFFFF, 0x0009, 0xFFFF },
+ { 25, 0x0003, 0x0004, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0x0006 },
+ { 86, 0xFFFF, 0x000B, 0xFFFF, 0xFFFF },
+ { 84, 0xFFFF, 0x0022, 0x0017, 0x0016 },
+ { 51, 0x0020, 0x0014, 0x0024, 0x0015 },
+ { 85, 0x0014, 0x0019, 0xFFFF, 0x0024 },
+ { 33, 0x001C, 0xFFFF, 0x0013, 0x0012 },
+ { 31, 0x0022, 0x0012, 0xFFFF, 0x0017 },
+ { 25, 0x001F, 0x0011, 0xFFFF, 0xFFFF },
+ { 25, 0x0011, 0x0015, 0xFFFF, 0xFFFF },
+ { 2, 0xFFFF, 0x0007, 0xFFFF, 0x001A },
+ { 82, 0xFFFF, 0x006D, 0xFFFF, 0x0013 },
+ { 77, 0xFFFF, 0x0018, 0x0021, 0xFFFF },
+ { 15, 0xFFFF, 0x001A, 0xFFFF, 0xFFFF },
+ { 16, 0xFFFF, 0xFFFF, 0x0014, 0x0020 },
+ { 19, 0xFFFF, 0x0021, 0xFFFF, 0x001F },
+ { 12, 0xFFFF, 0xFFFF, 0x0020, 0x0021 },
+ { 7, 0x0023, 0x001D, 0x0016, 0xFFFF },
+ { 20, 0x001E, 0x001C, 0x0012, 0x0022 },
+ { 17, 0x001A, 0x001E, 0x0022, 0x001D },
+ { 22, 0x0021, 0x0020, 0x0015, 0x0011 },
+ { 24, 0xFFFF, 0xFFFF, 0x001F, 0xFFFF },
+ { 32, 0x0012, 0x0013, 0xFFFF, 0xFFFF },
+ { 87, 0xFFFF, 0x0026, 0xFFFF, 0xFFFF },
+ { 8, 0xFFFF, 0x0027, 0xFFFF, 0x0025 },
+ { 88, 0xFFFF, 0x0035, 0x0037, 0x0026 },
+ { 35, 0xFFFF, 0x0036, 0x0038, 0xFFFF },
+ { 47, 0xFFFF, 0xFFFF, 0x003B, 0xFFFF },
+ { 28, 0x0035, 0x002B, 0x002F, 0x0037 },
+ { 36, 0xFFFF, 0x002C, 0xFFFF, 0x002A },
+ { 78, 0xFFFF, 0xFFFF, 0xFFFF, 0x002B },
+ { 10, 0xFFFF, 0xFFFF, 0xFFFF, 0x002C },
+ { 51, 0x0037, 0x002F, 0x0040, 0x003C },
+ { 38, 0x002A, 0x003D, 0x0041, 0x002E },
+ { 81, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 41, 0xFFFF, 0xFFFF, 0x0069, 0xFFFF },
+ { 50, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 49, 0xFFFF, 0xFFFF, 0x0054, 0xFFFF },
+ { 105, 0xFFFF, 0xFFFF, 0x002A, 0x0027 },
+ { 105, 0xFFFF, 0xFFFF, 0x0039, 0x0028 },
+ { 37, 0x0027, 0x002A, 0x002E, 0x0049 },
+ { 34, 0x0028, 0x0039, 0xFFFF, 0xFFFF },
+ { 51, 0x0036, 0x003A, 0xFFFF, 0x0038 },
+ { 84, 0xFFFF, 0x003B, 0xFFFF, 0x0039 },
+ { 1, 0x0029, 0xFFFF, 0x003E, 0x003A },
+ { 37, 0x0049, 0x002E, 0x003F, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0x002F },
+ { 34, 0x003B, 0x003F, 0xFFFF, 0xFFFF },
+ { 85, 0x003C, 0x0040, 0xFFFF, 0x003E },
+ { 106, 0x002E, 0x0041, 0xFFFF, 0x003F },
+ { 33, 0x002F, 0xFFFF, 0xFFFF, 0x0040 },
+ { 60, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 3, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 26, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 0, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 25, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 23, 0xFFFF, 0x0037, 0x003C, 0xFFFF },
+ { 6, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 51, 0x0063, 0x0067, 0x006B, 0x0066 },
+ { 66, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 67, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 62, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 65, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0x0056, 0x005A, 0x005E, 0xFFFF },
+ { 6, 0xFFFF, 0x0052, 0x0056, 0xFFFF },
+ { 4, 0xFFFF, 0x0053, 0x0057, 0x0051 },
+ { 3, 0xFFFF, 0x0054, 0xFFFF, 0x0052 },
+ { 37, 0x0034, 0x0055, 0x0058, 0x0053 },
+ { 11, 0xFFFF, 0xFFFF, 0x0059, 0x0054 },
+ { 37, 0x0051, 0x0057, 0x0050, 0xFFFF },
+ { 51, 0x0052, 0xFFFF, 0x005A, 0x0056 },
+ { 51, 0x0054, 0x0059, 0x005C, 0xFFFF },
+ { 1, 0x0055, 0xFFFF, 0x005D, 0x0058 },
+ { 106, 0x0057, 0x005B, 0xFFFF, 0x0050 },
+ { 85, 0xFFFF, 0x005C, 0xFFFF, 0x005A },
+ { 37, 0x0058, 0x005D, 0x005F, 0x005B },
+ { 33, 0x0059, 0xFFFF, 0xFFFF, 0x005C },
+ { 51, 0x0050, 0xFFFF, 0x0061, 0xFFFF },
+ { 51, 0x005C, 0xFFFF, 0x0064, 0xFFFF },
+ { 37, 0xFFFF, 0x0061, 0x0065, 0xFFFF },
+ { 51, 0x005E, 0x0062, 0xFFFF, 0x0060 },
+ { 84, 0xFFFF, 0x0063, 0x0066, 0x0061 },
+ { 84, 0xFFFF, 0x0064, 0x004B, 0x0062 },
+ { 33, 0x005F, 0xFFFF, 0x0067, 0x0063 },
+ { 51, 0x0060, 0xFFFF, 0x0068, 0xFFFF },
+ { 37, 0x0062, 0x004B, 0x006A, 0xFFFF },
+ { 1, 0x0064, 0xFFFF, 0x006C, 0x004B },
+ { 34, 0x0065, 0x0069, 0xFFFF, 0xFFFF },
+ { 51, 0x0031, 0x006A, 0xFFFF, 0x0068 },
+ { 85, 0x0066, 0x006B, 0xFFFF, 0x0069 },
+ { 106, 0x004B, 0x006C, 0xFFFF, 0x006A },
+ { 33, 0x0067, 0xFFFF, 0xFFFF, 0x006B },
+ { 55, 0x00C4, 0x00C5, 0xFFFF, 0x0019 },
+ { 52, 0xFFFF, 0x00C1, 0xFFFF, 0x0096 },
+ { 64, 0xFFFF, 0x00BF, 0xFFFF, 0x008C },
+ { 57, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 54, 0x00AF, 0xFFFF, 0x00B7, 0x00AC },
+ { 53, 0x0078, 0xFFFF, 0x0079, 0xFFFF },
+ { 29, 0xFFFF, 0x00BB, 0xFFFF, 0x00C5 },
+ { 69, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 76, 0x00C6, 0xFFFF, 0xFFFF, 0x00B1 },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x0025, 0x0072, 0xFFFF },
+ { 58, 0x0072, 0x007B, 0x00BB, 0xFFFF },
+ { 58, 0xFFFF, 0x007F, 0x007B, 0xFFFF },
+ { 59, 0x007A, 0xFFFF, 0x007C, 0x0079 },
+ { 58, 0x007B, 0x0081, 0x00BC, 0xFFFF },
+ { 58, 0x00BC, 0x0083, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x0085, 0x007F, 0xFFFF },
+ { 59, 0x007E, 0x0086, 0x0080, 0x007A },
+ { 58, 0x007F, 0x00BD, 0x0081, 0xFFFF },
+ { 59, 0x0080, 0x0087, 0x0082, 0x007C },
+ { 58, 0x0081, 0xFFFF, 0x0083, 0x00BC },
+ { 59, 0x0082, 0x0089, 0x0084, 0x007D },
+ { 58, 0x0083, 0x008A, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x008B, 0x0086, 0x007E },
+ { 58, 0x0085, 0x008C, 0x00BD, 0x007F },
+ { 58, 0x00BD, 0x008E, 0x0088, 0x0081 },
+ { 59, 0x0087, 0xFFFF, 0x0089, 0xFFFF },
+ { 58, 0x0088, 0x0090, 0x008A, 0x0083 },
+ { 59, 0x0089, 0x0091, 0xFFFF, 0x0084 },
+ { 58, 0xFFFF, 0x0092, 0x008C, 0x0085 },
+ { 59, 0x008B, 0x006F, 0x008D, 0x0086 },
+ { 58, 0x008C, 0x0093, 0x008E, 0x00BD },
+ { 59, 0x008D, 0xFFFF, 0xFFFF, 0x0087 },
+ { 58, 0xFFFF, 0x00BE, 0x0090, 0xFFFF },
+ { 59, 0x008F, 0x0095, 0x0091, 0x0089 },
+ { 58, 0x0090, 0x0096, 0xFFFF, 0x008A },
+ { 59, 0xFFFF, 0x0098, 0xFFFF, 0x008B },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0x008D },
+ { 58, 0xFFFF, 0x009A, 0x00BE, 0xFFFF },
+ { 58, 0x00BE, 0xFFFF, 0x0096, 0x0090 },
+ { 59, 0x0095, 0x006E, 0x0097, 0x0091 },
+ { 58, 0x0096, 0x009D, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x009E, 0x00BF, 0x0092 },
+ { 58, 0x00BF, 0x00A0, 0x009A, 0xFFFF },
+ { 59, 0x0099, 0xFFFF, 0x009B, 0x0094 },
+ { 58, 0x009A, 0xFFFF, 0x009C, 0xFFFF },
+ { 59, 0x009B, 0x00A2, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x00A3, 0xFFFF, 0x0097 },
+ { 59, 0xFFFF, 0xFFFF, 0x009F, 0x0098 },
+ { 58, 0x009E, 0x00A4, 0x00A0, 0x00BF },
+ { 59, 0x009F, 0x00A5, 0xFFFF, 0x0099 },
+ { 58, 0xFFFF, 0x00A6, 0x00C0, 0xFFFF },
+ { 58, 0x00C0, 0x00A8, 0xFFFF, 0x009C },
+ { 58, 0x00C1, 0xFFFF, 0xFFFF, 0x009D },
+ { 59, 0xFFFF, 0x00AA, 0x00A5, 0x009F },
+ { 58, 0x00A4, 0x00AB, 0x00A6, 0x00A0 },
+ { 59, 0x00A5, 0x00AC, 0x00A7, 0x00A1 },
+ { 58, 0x00A6, 0xFFFF, 0xFFFF, 0x00C0 },
+ { 59, 0xFFFF, 0x00AD, 0x00A9, 0x00A2 },
+ { 58, 0x00A8, 0x00AE, 0xFFFF, 0x00C1 },
+ { 58, 0xFFFF, 0xFFFF, 0x00AB, 0x00A4 },
+ { 59, 0x00AA, 0x00AF, 0x00AC, 0x00A5 },
+ { 58, 0x00AB, 0x0071, 0x00C2, 0x00A6 },
+ { 58, 0xFFFF, 0x00B0, 0x00AE, 0x00A8 },
+ { 59, 0x00AD, 0xFFFF, 0xFFFF, 0x00A9 },
+ { 58, 0xFFFF, 0x00C3, 0x0071, 0x00AB },
+ { 59, 0xFFFF, 0xFFFF, 0x00B1, 0x00AD },
+ { 58, 0x00B0, 0x0075, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0x00C3, 0xFFFF, 0x00B4, 0xFFFF },
+ { 59, 0x00B3, 0x00BA, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0x0071, 0xFFFF, 0xFFFF, 0x00C2 },
+ { 58, 0xFFFF, 0xFFFF, 0x00B9, 0xFFFF },
+ { 59, 0x00B8, 0xFFFF, 0xFFFF, 0x00C3 },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0x00B4 },
+ { 59, 0x0079, 0xFFFF, 0xFFFF, 0x0073 },
+ { 59, 0x007C, 0x0082, 0x007D, 0xFFFF },
+ { 59, 0x0086, 0x008D, 0x0087, 0x0080 },
+ { 59, 0x0094, 0xFFFF, 0x0095, 0x008F },
+ { 59, 0x0098, 0x009F, 0x0099, 0x006F },
+ { 59, 0x00A1, 0x00A7, 0x00A2, 0xFFFF },
+ { 59, 0xFFFF, 0x00A9, 0x00A3, 0x006E },
+ { 59, 0x00AC, 0x00B7, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x00B9, 0x00B3, 0x00AF },
+ { 59, 0xFFFF, 0xFFFF, 0x006D, 0xFFFF },
+ { 58, 0xFFFF, 0x0073, 0xFFFF, 0x006D },
+ { 59, 0xFFFF, 0xFFFF, 0x0075, 0xFFFF },
+ { 94, 0xFFFF, 0x00C8, 0xFFFF, 0xFFFF },
+ { 43, 0x00C9, 0x00CB, 0x00CA, 0x00C7 },
+ { 51, 0xFFFF, 0xFFFF, 0x00C8, 0xFFFF },
+ { 37, 0x00C8, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 79, 0xFFFF, 0xFFFF, 0xFFFF, 0x00C8 },
+ { 80, 0xFFFF, 0xFFFF, 0x00CB, 0x00CD },
+ { 97, 0x00E3, 0x00D4, 0x00CC, 0x00D3 },
+ { 103, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 100, 0xFFFF, 0x00CE, 0x00D5, 0xFFFF },
+ { 98, 0xFFFF, 0xFFFF, 0xFFFF, 0x00D7 },
+ { 101, 0xFFFF, 0x00D2, 0x00CE, 0xFFFF },
+ { 99, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 93, 0x00D5, 0x00CD, 0xFFFF, 0xFFFF },
+ { 93, 0x00D6, 0xFFFF, 0xFFFF, 0x00CD },
+ { 93, 0x00CF, 0x00CE, 0x00D3, 0xFFFF },
+ { 93, 0x00D7, 0xFFFF, 0x00D4, 0x00CE },
+ { 93, 0xFFFF, 0x00D0, 0x00D6, 0x00CE },
+ { 93, 0x00DA, 0x00E3, 0xFFFF, 0xFFFF },
+ { 93, 0x00DB, 0xFFFF, 0xFFFF, 0x00E3 },
+ { 93, 0xFFFF, 0x00E4, 0x00D8, 0x00E2 },
+ { 93, 0xFFFF, 0x00E1, 0x00D9, 0x00E4 },
+ { 93, 0xFFFF, 0x00E4, 0xFFFF, 0x00DF },
+ { 93, 0xFFFF, 0x00E0, 0xFFFF, 0x00E4 },
+ { 93, 0xFFFF, 0xFFFF, 0x00E4, 0xFFFF },
+ { 91, 0xFFFF, 0x00DC, 0xFFFF, 0xFFFF },
+ { 90, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DD },
+ { 92, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DB },
+ { 95, 0xFFFF, 0x00DA, 0xFFFF, 0xFFFF },
+ { 96, 0xFFFF, 0x00D9, 0x00CD, 0x00D8 },
+ { 89, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00E6, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00EA, 0x00E8, 0x00E5 },
+ { 102, 0xFFFF, 0x00E8, 0x00EB, 0xFFFF },
+ { 102, 0x00E6, 0xFFFF, 0xFFFF, 0x00E7 },
+ { 102, 0xFFFF, 0xFFFF, 0x00ED, 0xFFFF },
+ { 102, 0xFFFF, 0xFFFF, 0xFFFF, 0x00E6 },
+ { 102, 0x00E7, 0x00EC, 0x00EF, 0xFFFF },
+ { 102, 0xFFFF, 0x00ED, 0x00F0, 0x00EB },
+ { 102, 0x00E9, 0x00EE, 0x00F1, 0x00EC },
+ { 102, 0xFFFF, 0xFFFF, 0x00F2, 0x00ED },
+ { 102, 0x00EB, 0x00F0, 0xFFFF, 0xFFFF },
+ { 102, 0x00EC, 0x00F1, 0x00F3, 0x00EF },
+ { 102, 0x00ED, 0xFFFF, 0x00F4, 0x00F0 },
+ { 102, 0x00EE, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0x00F0, 0x00F4, 0xFFFF, 0xFFFF },
+ { 102, 0x00F1, 0x00F5, 0xFFFF, 0x00F3 },
+ { 102, 0xFFFF, 0xFFFF, 0x00CF, 0x00F4 }
+};
+
+static const RoomProvider k1RoomListAmigaProvider = { ARRAYSIZE(k1RoomListAmiga), k1RoomListAmiga };
+
+static const char *const k1RoomFilenamesAmiga[107] = {
+ "CLIFFB",
+ "XEDGEB",
+ "CAVEB",
+ "NCLIFF",
+ "NCLIFFB",
+ "CAVE",
+ "NWCLIFF",
+ "OAKS",
+ "PLATEAU",
+ "POTHUT",
+ "POTION",
+ "NWCLIFB",
+ "SONG",
+ "SORROW",
+ "SPELHUT",
+ "SPELL",
+ "SPRING",
+ "SQUARE",
+ "STUMP",
+ "TEMPLE",
+ "WELL",
+ "WILLOW",
+ "WISE",
+ "XEDGE",
+ "RUBY",
+ "ZROCK",
+ "ZROCKB",
+ "FORESTD",
+ "FOUNTN",
+ "GATECV",
+ "GEMCUT",
+ "CLIFF",
+ "DEAD",
+ "EDGE",
+ "EDGEB",
+ "FALLS",
+ "FORESTC",
+ "FORESTB",
+ "GLADE",
+ "GEMHUT",
+ "ALGAE",
+ "MIX",
+ "BRIDGE",
+ "GRAVE",
+ "HEALER",
+ "HEALHUT",
+ "ALTAR",
+ "BURN",
+ "SICKWIL",
+ "LAGOON",
+ "MAPLE",
+ "FORESTA",
+ "ARCH",
+ "CHASM",
+ "EMCAV",
+ "ENTER",
+ "FLOWERS",
+ "GEMSLOT",
+ "GEN_CAV",
+ "GENCAVB",
+ "GOLDEN",
+ "GOLDENB",
+ "ICE",
+ "MARKET",
+ "MOONCAV",
+ "MSHCAV",
+ "POOL",
+ "SEASONS",
+ "SHRINE",
+ "TREECAV",
+ "EXTGEM",
+ "GEM",
+ "EXTHEAL",
+ "BASE",
+ "TRUNK",
+ "BROKEN",
+ "LAVA",
+ "EXTSPEL",
+ "EXTPOT",
+ "CASTLE",
+ "CGATE",
+ "LEPHOLE",
+ "DRAGON",
+ "XEDGEC",
+ "FNORTH",
+ "FSOUTH",
+ "FGOWEST",
+ "PLTCAVE",
+ "BONKBG",
+ "BALCONY",
+ "DARMS",
+ "BRINS",
+ "ALCHEMY",
+ "GENHALL",
+ "LANDING",
+ "BELROOM",
+ "UPSTAIR",
+ "DNSTAIR",
+ "KITCHEN",
+ "KYRAGEM",
+ "LIBRARY",
+ "FOYER",
+ "CATACOM",
+ "GRTHALL",
+ "FESTSTH",
+ "FWSTSTH",
+ "FSOUTHB"
+};
+
+static const StringListProvider k1RoomFilenamesAmigaProvider = { ARRAYSIZE(k1RoomFilenamesAmiga), k1RoomFilenamesAmiga };
+
+static const char *const k1CharacterImageFilenamesAmiga[20] = {
+ "BRANDON.CPS",
+ "DAPHNE.CPS",
+ "MERITH.CPS",
+ "HERMAN.CPS",
+ "SMALL.CPS",
+ "MALCOM.CPS",
+ "DRINK.CPS",
+ "SHRINK.CPS",
+ "HEALBR1.CPS",
+ "HEALBR2.CPS",
+ "SNOW1A.CPS",
+ "SNOW2A.CPS",
+ "BRANWILL.CPS",
+ "FLUTE1.CPS",
+ "FLUTE2.CPS",
+ "POISON1.CPS",
+ "POISON2.CPS",
+ "TELEKIN.CPS",
+ "BRANSTON.CPS",
+ "POISON.CPS"
+};
+
+static const StringListProvider k1CharacterImageFilenamesAmigaProvider = { ARRAYSIZE(k1CharacterImageFilenamesAmiga), k1CharacterImageFilenamesAmiga };
+
+static const Shape k1DefaultShapesAmiga[166] = {
+ { 0, 0, 0, 3, 48, -12, -48 },
+ { 0, 3, 0, 3, 48, -12, -48 },
+ { 0, 6, 0, 3, 48, -12, -48 },
+ { 0, 9, 0, 3, 48, -12, -48 },
+ { 0, 12, 0, 3, 48, -12, -48 },
+ { 0, 15, 0, 3, 48, -12, -48 },
+ { 0, 18, 0, 3, 48, -12, -48 },
+ { 0, 21, 0, 3, 48, -12, -48 },
+ { 0, 24, 0, 3, 48, -12, -48 },
+ { 0, 27, 0, 3, 48, -12, -48 },
+ { 0, 0, 51, 2, 11, -2, -8 },
+ { 0, 2, 51, 2, 11, -2, -8 },
+ { 0, 4, 51, 2, 11, -2, -8 },
+ { 0, 6, 51, 2, 11, -2, -8 },
+ { 0, 8, 51, 2, 11, -2, -8 },
+ { 0, 10, 51, 2, 11, -2, -8 },
+ { 0, 12, 51, 2, 11, -2, -8 },
+ { 0, 14, 51, 2, 11, -2, -8 },
+ { 0, 16, 51, 2, 11, -2, -8 },
+ { 0, 18, 51, 2, 11, -2, -8 },
+ { 0, 20, 51, 2, 11, -2, -8 },
+ { 0, 22, 51, 2, 11, -2, -8 },
+ { 0, 0, 80, 3, 48, -12, -48 },
+ { 0, 3, 80, 3, 48, -12, -48 },
+ { 0, 6, 80, 3, 48, -12, -48 },
+ { 0, 9, 80, 3, 48, -12, -48 },
+ { 0, 12, 80, 3, 48, -12, -48 },
+ { 0, 15, 80, 3, 48, -12, -48 },
+ { 0, 0, 129, 3, 48, -12, -48 },
+ { 0, 3, 129, 3, 48, -12, -48 },
+ { 0, 6, 129, 3, 48, -12, -48 },
+ { 0, 9, 129, 3, 48, -12, -48 },
+ { 0, 12, 129, 3, 48, -12, -48 },
+ { 0, 15, 129, 3, 48, -12, -48 },
+ { 2, 0, 0, 3, 48, -12, -48 },
+ { 2, 3, 0, 3, 48, -12, -48 },
+ { 2, 6, 0, 3, 48, -12, -48 },
+ { 2, 9, 0, 3, 48, -12, -48 },
+ { 2, 12, 0, 3, 48, -12, -48 },
+ { 2, 15, 0, 3, 48, -12, -48 },
+ { 2, 18, 0, 3, 48, -12, -48 },
+ { 2, 21, 0, 3, 48, -12, -48 },
+ { 2, 24, 0, 3, 48, -12, -48 },
+ { 2, 27, 0, 3, 48, -12, -48 },
+ { 2, 30, 10, 3, 38, -16, -38 },
+ { 2, 27, 48, 4, 40, -8, -40 },
+ { 2, 0, 51, 2, 11, -4, 0 },
+ { 2, 2, 51, 2, 11, -4, 0 },
+ { 2, 4, 51, 2, 11, -4, 0 },
+ { 2, 6, 51, 2, 11, -4, 0 },
+ { 2, 8, 51, 2, 11, -4, 0 },
+ { 2, 10, 51, 2, 11, -4, 0 },
+ { 2, 12, 51, 2, 11, -4, 0 },
+ { 2, 14, 51, 2, 11, -4, 0 },
+ { 2, 16, 51, 2, 11, -4, 0 },
+ { 2, 18, 51, 2, 11, -4, 0 },
+ { 2, 20, 51, 2, 11, -4, 0 },
+ { 2, 22, 51, 2, 11, -4, 0 },
+ { 255, 0, 80, 3, 48, -12, -48 },
+ { 255, 3, 80, 3, 48, -12, -48 },
+ { 255, 6, 80, 3, 48, -12, -48 },
+ { 255, 9, 80, 3, 48, -12, -48 },
+ { 255, 12, 80, 3, 48, -12, -48 },
+ { 255, 15, 80, 3, 48, -12, -48 },
+ { 255, 0, 129, 3, 48, -12, -48 },
+ { 255, 3, 129, 3, 48, -12, -48 },
+ { 255, 6, 129, 3, 48, -12, -48 },
+ { 255, 9, 129, 3, 48, -12, -48 },
+ { 255, 12, 129, 3, 48, -12, -48 },
+ { 255, 15, 129, 3, 48, -12, -48 },
+ { 3, 0, 0, 3, 48, -12, -46 },
+ { 3, 3, 0, 3, 48, -12, -48 },
+ { 3, 6, 0, 3, 48, -12, -48 },
+ { 3, 9, 0, 3, 48, -12, -48 },
+ { 3, 12, 0, 3, 48, -12, -48 },
+ { 3, 15, 0, 3, 48, -12, -48 },
+ { 3, 18, 0, 3, 48, -12, -48 },
+ { 3, 21, 0, 3, 48, -12, -48 },
+ { 3, 24, 0, 3, 48, -12, -48 },
+ { 3, 27, 0, 3, 48, -12, -46 },
+ { 3, 30, 0, 3, 48, -14, -47 },
+ { 3, 39, 199, 1, 1, -12, -48 },
+ { 3, 0, 51, 2, 11, 0, -7 },
+ { 3, 2, 51, 2, 11, 0, -7 },
+ { 3, 4, 51, 2, 11, 0, -7 },
+ { 3, 6, 51, 2, 11, 0, -7 },
+ { 3, 8, 51, 2, 11, 0, -7 },
+ { 3, 10, 51, 2, 11, 0, -7 },
+ { 3, 12, 51, 2, 11, 0, -7 },
+ { 3, 14, 51, 2, 11, 0, -7 },
+ { 3, 16, 51, 2, 11, 0, -7 },
+ { 3, 18, 51, 2, 11, 0, -7 },
+ { 3, 20, 51, 2, 11, 0, -7 },
+ { 3, 22, 51, 2, 11, 0, -7 },
+ { 3, 0, 80, 3, 48, -12, -48 },
+ { 3, 3, 80, 3, 48, -12, -48 },
+ { 3, 6, 80, 3, 48, -12, -48 },
+ { 3, 9, 80, 3, 48, -12, -48 },
+ { 3, 12, 80, 3, 48, -12, -48 },
+ { 3, 15, 80, 3, 48, -12, -48 },
+ { 3, 0, 129, 3, 48, -12, -48 },
+ { 3, 3, 129, 3, 48, -12, -48 },
+ { 3, 6, 129, 3, 48, -12, -48 },
+ { 3, 9, 129, 3, 48, -12, -48 },
+ { 3, 12, 129, 3, 48, -12, -48 },
+ { 3, 15, 129, 3, 48, -12, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1DefaultShapesAmigaProvider = { ARRAYSIZE(k1DefaultShapesAmiga), k1DefaultShapesAmiga };
+
+static const byte k1AmuleteAnimSeqAmiga[42] = {
+ 0x00, 0x01, 0x02, 0x01, 0x03, 0x04, 0x03, 0x01,
+ 0x02, 0x03, 0x04, 0x05, 0x06, 0x05, 0x04, 0x05,
+ 0x07, 0x08, 0x07, 0x08, 0x09, 0x08, 0x09, 0x07,
+ 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
+ 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+ 0x16, 0xFF
+};
+
+static const ByteProvider k1AmuleteAnimSeqAmigaProvider = { ARRAYSIZE(k1AmuleteAnimSeqAmiga), k1AmuleteAnimSeqAmiga };
+
+static const Shape k1Healing1ShapesAmiga[22] = {
+ { 8, 0, 0, 3, 48, -12, -48 },
+ { 8, 3, 0, 3, 48, -12, -48 },
+ { 8, 6, 0, 3, 48, -12, -48 },
+ { 8, 9, 0, 3, 48, -12, -48 },
+ { 8, 12, 0, 3, 48, -12, -48 },
+ { 8, 15, 0, 3, 48, -12, -48 },
+ { 8, 18, 0, 3, 48, -12, -48 },
+ { 8, 21, 0, 3, 48, -12, -48 },
+ { 8, 24, 0, 3, 48, -12, -48 },
+ { 8, 27, 0, 3, 48, -12, -48 },
+ { 8, 30, 0, 3, 48, -12, -48 },
+ { 8, 33, 0, 3, 48, -12, -48 },
+ { 8, 0, 48, 3, 48, -12, -48 },
+ { 8, 3, 48, 3, 48, -12, -48 },
+ { 8, 6, 48, 3, 48, -12, -48 },
+ { 8, 9, 48, 3, 48, -12, -48 },
+ { 8, 12, 48, 3, 48, -12, -48 },
+ { 8, 15, 48, 3, 48, -12, -48 },
+ { 8, 18, 48, 3, 48, -12, -48 },
+ { 8, 21, 48, 3, 48, -12, -48 },
+ { 8, 24, 48, 3, 48, -12, -48 },
+ { 8, 27, 48, 3, 48, -12, -48 }
+};
+
+static const ShapeProvider k1Healing1ShapesAmigaProvider = { ARRAYSIZE(k1Healing1ShapesAmiga), k1Healing1ShapesAmiga };
+
+static const Shape k1Healing2ShapesAmiga[30] = {
+ { 9, 0, 0, 3, 48, -11, -48 },
+ { 9, 3, 0, 3, 48, -11, -48 },
+ { 9, 6, 0, 3, 48, -11, -48 },
+ { 9, 9, 0, 3, 48, -11, -48 },
+ { 9, 12, 0, 3, 48, -11, -48 },
+ { 9, 15, 0, 3, 48, -11, -48 },
+ { 9, 18, 0, 3, 48, -11, -48 },
+ { 9, 21, 0, 3, 48, -11, -48 },
+ { 9, 24, 0, 3, 48, -11, -48 },
+ { 9, 27, 0, 3, 48, -11, -48 },
+ { 9, 30, 0, 3, 48, -11, -48 },
+ { 9, 33, 0, 3, 48, -11, -48 },
+ { 9, 0, 48, 3, 48, -11, -48 },
+ { 9, 3, 48, 3, 48, -11, -48 },
+ { 9, 6, 48, 3, 48, -11, -48 },
+ { 9, 9, 48, 3, 48, -11, -48 },
+ { 9, 12, 48, 3, 48, -11, -48 },
+ { 9, 15, 48, 3, 48, -11, -48 },
+ { 9, 18, 48, 3, 48, -11, -48 },
+ { 9, 21, 48, 3, 48, -11, -48 },
+ { 9, 24, 48, 3, 48, -11, -48 },
+ { 9, 27, 48, 3, 48, -11, -48 },
+ { 9, 30, 48, 3, 48, -11, -48 },
+ { 9, 33, 48, 3, 48, -11, -48 },
+ { 9, 0, 96, 3, 48, -11, -48 },
+ { 9, 3, 96, 3, 48, -11, -48 },
+ { 9, 6, 96, 3, 48, -11, -48 },
+ { 9, 9, 96, 3, 48, -11, -48 },
+ { 9, 12, 96, 3, 48, -11, -48 },
+ { 9, 15, 96, 3, 48, -11, -48 }
+};
+
+static const ShapeProvider k1Healing2ShapesAmigaProvider = { ARRAYSIZE(k1Healing2ShapesAmiga), k1Healing2ShapesAmiga };
+
+static const Shape k1PoisonDeathShapesAmiga[20] = {
+ { 19, 0, 0, 8, 48, -31, -48 },
+ { 19, 8, 0, 8, 48, -31, -48 },
+ { 19, 16, 0, 8, 48, -31, -48 },
+ { 19, 24, 0, 8, 48, -31, -48 },
+ { 19, 32, 0, 8, 48, -31, -48 },
+ { 19, 0, 48, 8, 48, -31, -48 },
+ { 19, 8, 48, 8, 48, -31, -48 },
+ { 19, 16, 48, 8, 48, -31, -48 },
+ { 19, 24, 48, 8, 48, -31, -48 },
+ { 19, 32, 48, 8, 48, -31, -48 },
+ { 19, 0, 96, 8, 48, -31, -48 },
+ { 19, 8, 96, 8, 48, -31, -48 },
+ { 19, 16, 96, 8, 48, -31, -48 },
+ { 19, 24, 96, 8, 48, -31, -48 },
+ { 19, 32, 96, 8, 48, -31, -48 },
+ { 19, 0, 144, 8, 48, -31, -48 },
+ { 19, 8, 144, 8, 48, -31, -48 },
+ { 19, 16, 144, 8, 48, -31, -48 },
+ { 19, 24, 144, 8, 48, -31, -48 },
+ { 19, 32, 144, 8, 48, -31, -48 }
+};
+
+static const ShapeProvider k1PoisonDeathShapesAmigaProvider = { ARRAYSIZE(k1PoisonDeathShapesAmiga), k1PoisonDeathShapesAmiga };
+
+static const Shape k1FluteShapesAmiga[36] = {
+ { 13, 0, 0, 3, 75, -12, -75 },
+ { 13, 3, 0, 3, 75, -12, -75 },
+ { 13, 6, 0, 3, 75, -12, -75 },
+ { 13, 9, 0, 3, 75, -12, -75 },
+ { 13, 12, 0, 3, 75, -12, -75 },
+ { 13, 15, 0, 3, 75, -12, -75 },
+ { 13, 18, 0, 3, 75, -12, -75 },
+ { 13, 21, 0, 3, 75, -12, -75 },
+ { 13, 24, 0, 3, 75, -12, -75 },
+ { 13, 27, 0, 3, 75, -12, -75 },
+ { 13, 30, 0, 3, 75, -12, -75 },
+ { 13, 33, 0, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 13, 0, 75, 3, 75, -12, -75 },
+ { 13, 3, 75, 3, 75, -12, -75 },
+ { 13, 6, 75, 3, 75, -12, -75 },
+ { 13, 9, 75, 3, 75, -12, -75 },
+ { 13, 12, 75, 3, 75, -12, -75 },
+ { 13, 15, 75, 3, 75, -12, -75 },
+ { 13, 18, 75, 3, 75, -12, -75 },
+ { 13, 21, 75, 3, 75, -12, -75 },
+ { 13, 24, 75, 3, 75, -12, -75 },
+ { 13, 27, 75, 3, 75, -12, -75 },
+ { 13, 30, 75, 3, 75, -12, -75 },
+ { 13, 33, 75, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 14, 0, 0, 3, 75, -12, -75 },
+ { 14, 3, 0, 3, 75, -12, -75 },
+ { 14, 6, 0, 3, 75, -12, -75 },
+ { 14, 9, 0, 3, 75, -12, -75 },
+ { 14, 12, 0, 3, 75, -12, -75 },
+ { 14, 15, 0, 3, 75, -12, -75 },
+ { 14, 18, 0, 3, 75, -12, -75 },
+ { 14, 21, 0, 3, 75, -12, -75 },
+ { 14, 24, 0, 3, 75, -12, -75 },
+ { 14, 27, 0, 3, 75, -12, -75 }
+};
+
+static const ShapeProvider k1FluteShapesAmigaProvider = { ARRAYSIZE(k1FluteShapesAmiga), k1FluteShapesAmiga };
+
+static const Shape k1Winter1ShapesAmiga[7] = {
+ { 10, 5, 0, 5, 66, -20, -65 },
+ { 10, 10, 0, 5, 66, -20, -65 },
+ { 10, 15, 0, 5, 66, -20, -65 },
+ { 10, 20, 0, 5, 66, -20, -65 },
+ { 10, 25, 0, 5, 66, -20, -65 },
+ { 10, 30, 0, 5, 66, -20, -65 },
+ { 10, 35, 0, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter1ShapesAmigaProvider = { ARRAYSIZE(k1Winter1ShapesAmiga), k1Winter1ShapesAmiga };
+
+static const Shape k1Winter2ShapesAmiga[35] = {
+ { 10, 0, 66, 5, 66, -20, -65 },
+ { 10, 5, 66, 5, 66, -20, -65 },
+ { 10, 10, 66, 5, 66, -20, -65 },
+ { 10, 15, 66, 5, 66, -20, -65 },
+ { 10, 20, 66, 5, 66, -20, -65 },
+ { 10, 25, 66, 5, 66, -20, -65 },
+ { 10, 30, 66, 5, 66, -20, -65 },
+ { 10, 35, 66, 5, 66, -20, -65 },
+ { 10, 0, 132, 5, 66, -20, -65 },
+ { 10, 5, 132, 5, 66, -20, -65 },
+ { 10, 10, 132, 5, 66, -20, -65 },
+ { 10, 15, 132, 5, 66, -20, -65 },
+ { 10, 20, 132, 5, 66, -20, -65 },
+ { 10, 25, 132, 5, 66, -20, -65 },
+ { 10, 30, 132, 5, 66, -20, -65 },
+ { 10, 35, 132, 5, 66, -20, -65 },
+ { 11, 0, 0, 5, 66, -20, -65 },
+ { 11, 5, 0, 5, 66, -20, -65 },
+ { 11, 10, 0, 5, 66, -20, -65 },
+ { 11, 15, 0, 5, 66, -20, -65 },
+ { 11, 20, 0, 5, 66, -20, -65 },
+ { 11, 25, 0, 5, 66, -20, -65 },
+ { 11, 30, 0, 5, 66, -20, -65 },
+ { 11, 35, 0, 5, 66, -20, -65 },
+ { 11, 0, 66, 5, 66, -20, -65 },
+ { 11, 5, 66, 5, 66, -20, -65 },
+ { 11, 10, 66, 5, 66, -20, -65 },
+ { 11, 15, 66, 5, 66, -20, -65 },
+ { 11, 20, 66, 5, 66, -20, -65 },
+ { 11, 25, 66, 5, 66, -20, -65 },
+ { 11, 30, 66, 5, 66, -20, -65 },
+ { 11, 35, 66, 5, 66, -20, -65 },
+ { 11, 0, 132, 5, 66, -20, -65 },
+ { 11, 5, 132, 5, 66, -20, -65 },
+ { 11, 10, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter2ShapesAmigaProvider = { ARRAYSIZE(k1Winter2ShapesAmiga), k1Winter2ShapesAmiga };
+
+static const Shape k1Winter3ShapesAmiga[4] = {
+ { 11, 15, 132, 5, 66, -20, -65 },
+ { 11, 20, 132, 5, 66, -20, -65 },
+ { 11, 25, 132, 5, 66, -20, -65 },
+ { 11, 30, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter3ShapesAmigaProvider = { ARRAYSIZE(k1Winter3ShapesAmiga), k1Winter3ShapesAmiga };
+
+static const Shape k1DrinkShapesAmiga[15] = {
+ { 6, 0, 0, 4, 48, -20, -48 },
+ { 6, 4, 0, 4, 48, -20, -48 },
+ { 6, 8, 0, 4, 48, -20, -48 },
+ { 6, 12, 0, 4, 48, -20, -48 },
+ { 6, 16, 0, 4, 48, -20, -48 },
+ { 6, 20, 0, 5, 48, -20, -48 },
+ { 6, 0, 48, 5, 54, -20, -54 },
+ { 6, 5, 48, 5, 54, -20, -54 },
+ { 6, 10, 48, 5, 54, -20, -54 },
+ { 7, 0, 0, 3, 43, -12, -43 },
+ { 7, 3, 3, 2, 40, -8, -40 },
+ { 7, 5, 7, 2, 36, -8, -36 },
+ { 7, 7, 10, 2, 33, -8, -33 },
+ { 7, 9, 12, 2, 31, -8, -31 },
+ { 7, 11, 15, 2, 28, -8, -28 }
+};
+
+static const ShapeProvider k1DrinkShapesAmigaProvider = { ARRAYSIZE(k1DrinkShapesAmiga), k1DrinkShapesAmiga };
+
+static const Shape k1WispShapesAmiga[26] = {
+ { 12, 0, 0, 5, 48, -20, -48 },
+ { 12, 5, 0, 5, 48, -20, -48 },
+ { 12, 10, 0, 5, 48, -20, -48 },
+ { 12, 15, 0, 5, 48, -20, -48 },
+ { 12, 20, 0, 5, 48, -20, -48 },
+ { 12, 25, 0, 5, 48, -20, -48 },
+ { 12, 30, 0, 5, 48, -20, -48 },
+ { 12, 35, 0, 5, 48, -20, -48 },
+ { 12, 0, 48, 5, 48, -20, -48 },
+ { 12, 5, 48, 5, 48, -20, -48 },
+ { 12, 10, 48, 5, 48, -20, -48 },
+ { 12, 15, 48, 5, 48, -20, -48 },
+ { 12, 20, 48, 5, 48, -20, -48 },
+ { 12, 25, 48, 5, 48, -20, -48 },
+ { 12, 30, 48, 5, 48, -20, -48 },
+ { 12, 35, 48, 5, 48, -20, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 }
+};
+
+static const ShapeProvider k1WispShapesAmigaProvider = { ARRAYSIZE(k1WispShapesAmiga), k1WispShapesAmiga };
+
+static const Shape k1MagicAnimShapesAmiga[5] = {
+ { 17, 0, 0, 8, 49, -32, -49 },
+ { 17, 8, 0, 8, 49, -32, -49 },
+ { 17, 16, 0, 8, 49, -32, -49 },
+ { 17, 24, 0, 8, 49, -32, -49 },
+ { 17, 32, 0, 8, 49, -32, -49 }
+};
+
+static const ShapeProvider k1MagicAnimShapesAmigaProvider = { ARRAYSIZE(k1MagicAnimShapesAmiga), k1MagicAnimShapesAmiga };
+
+static const Shape k1BranStoneShapesAmiga[15] = {
+ { 18, 0, 0, 5, 51, -20, -50 },
+ { 18, 5, 0, 5, 51, -20, -50 },
+ { 18, 10, 0, 5, 51, -20, -50 },
+ { 18, 15, 0, 5, 51, -20, -50 },
+ { 18, 20, 0, 5, 51, -20, -50 },
+ { 18, 25, 0, 5, 51, -20, -50 },
+ { 18, 30, 0, 5, 51, -20, -50 },
+ { 18, 35, 0, 5, 51, -20, -50 },
+ { 18, 0, 51, 5, 51, -20, -50 },
+ { 18, 5, 51, 5, 51, -20, -50 },
+ { 18, 10, 51, 5, 51, -20, -50 },
+ { 18, 15, 51, 5, 51, -20, -50 },
+ { 18, 20, 51, 5, 51, -20, -50 },
+ { 18, 25, 51, 5, 51, -20, -50 },
+ { 0, 0, 3, 242, 0, 0, 3 }
+};
+
+static const ShapeProvider k1BranStoneShapesAmigaProvider = { ARRAYSIZE(k1BranStoneShapesAmiga), k1BranStoneShapesAmiga };
+
+static const byte k1OutroReunionSeqAmiga[1354] = {
+ 0x1A, 0x00, 0x08, 0x01, 0x06, 0x01, 0x00, 0x02,
+ 0x08, 0x00, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x14, 0x0A, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x10, 0x20, 0x5A, 0x00,
+ 0x3A, 0x04, 0x02, 0x08, 0x0D, 0x50, 0x00, 0x43,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x0E, 0x50, 0x00,
+ 0x43, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0C, 0x50,
+ 0x00, 0x43, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0B,
+ 0x50, 0x00, 0x43, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x0C, 0x50, 0x00, 0x43, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x0D, 0x50, 0x00, 0x43, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x0E, 0x50, 0x00, 0x43, 0x07, 0x10,
+ 0x00, 0x0A, 0x01, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x01, 0x04, 0x00, 0x10, 0x21, 0x5A, 0x00,
+ 0x3A, 0x04, 0x0A, 0x02, 0x02, 0x08, 0x14, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x02, 0x01, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x10, 0x22, 0x5A, 0x00,
+ 0x3A, 0x04, 0x0A, 0x03, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x03, 0x0B, 0x00, 0x10, 0x23, 0x78,
+ 0x00, 0x3A, 0x1F, 0x0A, 0x03, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x0B, 0x03, 0x05, 0x00, 0x06, 0x28,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x43, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x43,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00,
+ 0x43, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50,
+ 0x00, 0x43, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E,
+ 0x50, 0x00, 0x43, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x2D, 0x50, 0x00, 0x43, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x24,
+ 0x5A, 0x00, 0x3A, 0x04, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x34,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x35, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x36, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x37, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x36,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x37, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x06,
+ 0x0A, 0x00, 0x10, 0x25, 0x5A, 0x00, 0x3A, 0x04,
+ 0x02, 0x08, 0x33, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x36, 0x50, 0x00,
+ 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x37, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x34, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x33, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x35, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x36, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x37, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x10, 0x26,
+ 0x78, 0x00, 0x3A, 0x1F, 0x02, 0x08, 0x38, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x39,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x3A, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x38, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x3B, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x06, 0x0A, 0x00, 0x02, 0x08, 0x39, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x38,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x39, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x3A, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x06, 0x3C, 0x00, 0x11, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x32,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x31, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x30, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x2F, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x02, 0x08,
+ 0x2E, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x41, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x42,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x43, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x44, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x45, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x46, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x27, 0x5A,
+ 0x00, 0x3A, 0x04, 0x02, 0x08, 0x4E, 0x50, 0x00,
+ 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x4F, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x50,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x51, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x52, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x53, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x54, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x55, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x06, 0x78, 0x00, 0x10, 0x28,
+ 0x78, 0x00, 0x3A, 0x1F, 0x0A, 0x05, 0x02, 0x08,
+ 0x59, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x5A, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x5B, 0x50, 0x00, 0x43, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x5C, 0x50, 0x00, 0x43, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x5D, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x0B, 0x05, 0x01, 0x00, 0x06,
+ 0x28, 0x00, 0x10, 0x29, 0x78, 0x00, 0x3A, 0x1F,
+ 0x0A, 0x06, 0x02, 0x08, 0x59, 0x50, 0x00, 0x43,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x5A, 0x50, 0x00,
+ 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5B, 0x50,
+ 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5C,
+ 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x5D, 0x50, 0x00, 0x43, 0x07, 0x08, 0x00, 0x0B,
+ 0x06, 0x01, 0x00, 0x06, 0x28, 0x00, 0x10, 0x2A,
+ 0x78, 0x00, 0x3A, 0x1F, 0x02, 0x08, 0x5E, 0x50,
+ 0x00, 0x43, 0x07, 0x10, 0x00, 0x02, 0x08, 0x63,
+ 0x50, 0x00, 0x43, 0x07, 0x10, 0x00, 0x06, 0xB4,
+ 0x00, 0x11, 0x00, 0x09, 0x01, 0x18, 0x69, 0x02,
+ 0x09, 0x00, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x09, 0x01, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x18, 0x74, 0x02, 0x09, 0x02, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x09, 0x03, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x18, 0x75, 0x02,
+ 0x09, 0x04, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x09, 0x05, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x10, 0x2B, 0x96, 0x00, 0x23, 0x22, 0x0A,
+ 0x06, 0x02, 0x09, 0x07, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x09, 0x08, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x09, 0x09, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x09, 0x0A, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x09, 0x0B,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x09,
+ 0x0C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x09, 0x0D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x0B, 0x06, 0x01, 0x00, 0x06, 0x1E, 0x00, 0x10,
+ 0x2C, 0x96, 0x00, 0x23, 0x22, 0x0A, 0x06, 0x02,
+ 0x09, 0x07, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x09, 0x08, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x09, 0x09, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x09, 0x0A, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x09, 0x0B, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x09, 0x0C, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x09, 0x0D,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x0B, 0x06,
+ 0x01, 0x00, 0x06, 0x1E, 0x00, 0x10, 0x2D, 0x96,
+ 0x00, 0x23, 0x22, 0x0A, 0x06, 0x02, 0x09, 0x07,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x09,
+ 0x08, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x09, 0x09, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x09, 0x0A, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x09, 0x0B, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x09, 0x0C, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x09, 0x0D, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01, 0x00,
+ 0x06, 0x1E, 0x00, 0x02, 0x09, 0x0E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x09, 0x0F, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x06, 0x14, 0x00,
+ 0x02, 0x09, 0x10, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x09, 0x11, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x06, 0x78, 0x00, 0x13, 0x01, 0x08,
+ 0x1D, 0x00
+};
+
+static const ByteProvider k1OutroReunionSeqAmigaProvider = { ARRAYSIZE(k1OutroReunionSeqAmiga), k1OutroReunionSeqAmiga };
+
+static const AmigaSfxTable k1AmigaIntroSFXTableAmiga[40] = {
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 25, 9516, 110, 0 },
+ { 60, 25, 9516, 110, 0 },
+ { 60, 25, 9516, 110, 0 },
+ { 60, 19, 7057, 110, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 22, 9847, 110, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 23, 4504, 110, 0 },
+ { 60, 25, 9516, 110, 0 },
+ { 60, 24, 8913, 110, 0 },
+ { 60, 25, 9516, 110, 0 },
+ { 69, 3, 548, 110, 0 },
+ { 60, 22, 9847, 110, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 }
+};
+
+static const AmigaSfxTableProvider k1AmigaIntroSFXTableAmigaProvider = { ARRAYSIZE(k1AmigaIntroSFXTableAmiga), k1AmigaIntroSFXTableAmiga };
+
+static const AmigaSfxTable k1AmigaGameSFXTableAmiga[120] = {
+ { 0, 0, 0, 0, 0 },
+ { 1, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 19, 342, 120, 2 },
+ { 60, 20, 10028, 120, 2 },
+ { 60, 21, 7057, 120, 2 },
+ { 60, 22, 7831, 120, 2 },
+ { 60, 23, 4651, 120, 2 },
+ { 60, 22, 7831, 120, 2 },
+ { 69, 3, 548, 120, 2 },
+ { 60, 22, 7831, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 25, 9516, 120, 2 },
+ { 44, 4, 2320, 120, 2 },
+ { 60, 25, 9516, 120, 2 },
+ { 60, 26, 15083, 120, 2 },
+ { 37, 27, 5003, 120, 2 },
+ { 24, 3, 3922, 120, 2 },
+ { 62, 28, 1570, 120, 2 },
+ { 59, 28, 1876, 120, 2 },
+ { 22, 3, 8303, 120, 2 },
+ { 60, 25, 9516, 120, 2 },
+ { 60, 29, 2538, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 20, 10028, 120, 2 },
+ { 60, 30, 878, 120, 2 },
+ { 60, 23, 4651, 120, 2 },
+ { 78, 11, 2449, 120, 2 },
+ { 71, 27, 700, 120, 2 },
+ { 76, 27, 529, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 19, 342, 120, 2 },
+ { 60, 19, 342, 120, 2 },
+ { 60, 31, 3742, 120, 2 },
+ { 60, 32, 268, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 25, 9516, 120, 2 },
+ { 60, 33, 3964, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 42, 11, 19527, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 27, 1320, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 44, 4, 2320, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 34, 2798, 120, 2 },
+ { 60, 22, 7831, 120, 2 },
+ { 60, 21, 7057, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 20, 10028, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 34, 2798, 120, 2 },
+ { 60, 20, 10028, 120, 2 },
+ { 50, 35, 5145, 156, 2 },
+ { 60, 25, 5916, 120, 2 },
+ { 60, 20, 10028, 120, 2 },
+ { 62, 28, 1570, 120, 2 },
+ { 67, 19, 513, 120, 2 },
+ { 60, 36, 4675, 90, 2 },
+ { 62, 32, 238, 120, 2 },
+ { 60, 25, 9516, 120, 2 },
+ { 41, 4, 6634, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 32, 268, 120, 2 },
+ { 60, 37, 12470, 120, 2 },
+ { 60, 25, 9516, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 22, 7831, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 26, 15083, 120, 2 },
+ { 27, 4, 14835, 120, 2 },
+ { 48, 35, 5785, 80, 2 },
+ { 60, 21, 7057, 120, 2 },
+ { 41, 6, 6634, 80, 2 },
+ { 60, 25, 9516, 120, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 26, 15083, 120, 2 },
+ { 60, 25, 9516, 120, 2 },
+ { 60, 38, 1811, 120, 2 },
+ { 60, 38, 1811, 120, 2 },
+ { 60, 20, 10028, 120, 2 },
+ { 48, 35, 5785, 80, 2 },
+ { 48, 35, 5785, 80, 2 },
+ { 0, 0, 0, 0, 0 },
+ { 60, 19, 342, 120, 2 }
+};
+
+static const AmigaSfxTableProvider k1AmigaGameSFXTableAmigaProvider = { ARRAYSIZE(k1AmigaGameSFXTableAmiga), k1AmigaGameSFXTableAmiga };
+
diff --git a/devtools/create_kyradat/resources/lok_amiga_english.h b/devtools/create_kyradat/resources/lok_amiga_english.h
new file mode 100644
index 0000000000..c157f4a0b0
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_amiga_english.h
@@ -0,0 +1,497 @@
+static const char *const k1IntroStringsAmigaEnglish[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Greetings, Kallak...",
+ "...Powerful leader of the Royal Mystics!",
+ "Did I frighten you?",
+ "Malcolm!",
+ "I heard yesterday of your escape.",
+ "And have expected you before now.",
+ "Why would I rush?",
+ "I rule this land!",
+ "Your puny curse restrains me naught.",
+ "So, slay me now!",
+ "I have little magic left.",
+ "I mean to harm you, have no doubt...",
+ "...Now you are stone...",
+ "...Yet I leave your eyes.",
+ "I shed no tears for Kyrandia...",
+ "...But cannot deny you yours.",
+ "Malcolm the Jester has broken free!",
+ "He now controls the Kyragem...",
+ "...source of all magic in Kyrandia!",
+ "",
+ "How dare you trip ME!",
+ "But no, something special for you...",
+ "A humorous hex!",
+ "But I shall give fair warning.",
+ "Don't jump on THAT tree!",
+ "Don't climb up THAT tree little squirrel!",
+ "Boo!",
+ "Tis funnier that way...",
+ "...Is it not?",
+ "Ha ha ha...",
+ "Aren't fingers wonderful?",
+ "It's great to be alive!",
+ "Brandon!",
+ "Grandfather! We did it!",
+ "No! YOU did it!",
+ "Long live King Brandon!",
+ "Long live the Royal Mystics!",
+ "Now, let's go put Kyrandia back together!",
+ "Good idea!",
+ "As my first Royal Proclamation...",
+ "I name sandals as the official footwear of Kyrandia!",
+ "Well done, Brandon!",
+ "The Land no longer weeps...",
+ "And your friends have been restored!",
+ "Dear Brynn...",
+ "Malcolm has broken free!",
+ "Soon he will come for me.",
+ "Please help Brandon...",
+ ""
+};
+
+static const StringListProvider k1IntroStringsAmigaEnglishProvider = { ARRAYSIZE(k1IntroStringsAmigaEnglish), k1IntroStringsAmigaEnglish };
+
+static const char *const k1ItemNamesAmigaEnglish[82] = {
+ "Garnet",
+ "Amethyst",
+ "Aquamarine",
+ "Diamond",
+ "Emerald",
+ "Pearl",
+ "Ruby",
+ "Peridot",
+ "Sapphire",
+ "Opal",
+ "Topaz",
+ "Onyx",
+ "Sunstone",
+ "Moonstone",
+ "Rainbowstone",
+ "Lodestone",
+ "Rose",
+ "Tulip",
+ "Orchid",
+ "Silver Rose",
+ "Silver Statuette",
+ "Silver Coin",
+ "Gold Coin",
+ "Gold Ring",
+ "Royal Chalice",
+ "Pinecone",
+ "Acorn",
+ "Walnut",
+ "Everglowing Fireberries",
+ "Fireberries",
+ "Fish",
+ "Fish Bone",
+ "Mutton Leg",
+ "Bone",
+ "Apple",
+ "Apple Core",
+ "Blueberries",
+ "Mushroom",
+ "Note",
+ "Marble",
+ "Saw",
+ "Ankh",
+ "Feather",
+ "Egg",
+ "Leaf",
+ "Shamrock",
+ "Fallen Star",
+ "Crystal Ball",
+ "Teardrop",
+ "Mirror",
+ "Ice Shard",
+ "Flute",
+ "Hourglass",
+ "Iron Key",
+ "Jade Key",
+ "Obsidion Key",
+ "Red Potion",
+ "Blue Potion",
+ "Yellow Potion",
+ "Green Potion",
+ "Orange Potion",
+ "Purple Potion",
+ "Potion of Rainbows",
+ "Fresh Water",
+ "Salt Water",
+ "Mineral Water",
+ "Magical Water",
+ "Empty Flask",
+ "Scroll",
+ "Parchment scrap",
+ "Red Magestone",
+ "Orange Magestone",
+ "Yellow Magestone",
+ "Green Magestone",
+ "Blue-Green Magestone",
+ "Blue Magestone",
+ "Purple Magestone",
+ "Heavy rock",
+ "Royal Crown",
+ "Royal Sceptre",
+ "Gold key",
+ "Unknown item"
+};
+
+static const StringListProvider k1ItemNamesAmigaEnglishProvider = { ARRAYSIZE(k1ItemNamesAmigaEnglish), k1ItemNamesAmigaEnglish };
+
+static const char *const k1TakenStringsAmigaEnglish[1] = {
+ " taken."
+};
+
+static const StringListProvider k1TakenStringsAmigaEnglishProvider = { ARRAYSIZE(k1TakenStringsAmigaEnglish), k1TakenStringsAmigaEnglish };
+
+static const char *const k1PlacedStringsAmigaEnglish[1] = {
+ " placed."
+};
+
+static const StringListProvider k1PlacedStringsAmigaEnglishProvider = { ARRAYSIZE(k1PlacedStringsAmigaEnglish), k1PlacedStringsAmigaEnglish };
+
+static const char *const k1DroppedStringsAmigaEnglish[1] = {
+ " dropped."
+};
+
+static const StringListProvider k1DroppedStringsAmigaEnglishProvider = { ARRAYSIZE(k1DroppedStringsAmigaEnglish), k1DroppedStringsAmigaEnglish };
+
+static const char *const k1NoDropStringsAmigaEnglish[2] = {
+ "You can't drop any more items in this scene.",
+ "You can't put that there."
+};
+
+static const StringListProvider k1NoDropStringsAmigaEnglishProvider = { ARRAYSIZE(k1NoDropStringsAmigaEnglish), k1NoDropStringsAmigaEnglish };
+
+static const char *const k1PutDownStringAmigaEnglish[1] = {
+ "Maybe I'd better put this down first."
+};
+
+static const StringListProvider k1PutDownStringAmigaEnglishProvider = { ARRAYSIZE(k1PutDownStringAmigaEnglish), k1PutDownStringAmigaEnglish };
+
+static const char *const k1WaitAmuletStringAmigaEnglish[1] = {
+ "I guess I'll have to wait for my Amulet to regain its power."
+};
+
+static const StringListProvider k1WaitAmuletStringAmigaEnglishProvider = { ARRAYSIZE(k1WaitAmuletStringAmigaEnglish), k1WaitAmuletStringAmigaEnglish };
+
+static const char *const k1BlackJewelStringAmigaEnglish[1] = {
+ "It's a jewel, but why is it black?"
+};
+
+static const StringListProvider k1BlackJewelStringAmigaEnglishProvider = { ARRAYSIZE(k1BlackJewelStringAmigaEnglish), k1BlackJewelStringAmigaEnglish };
+
+static const char *const k1HealingTipStringAmigaEnglish[1] = {
+ "Gee, this could come in handy if I get hurt."
+};
+
+static const StringListProvider k1HealingTipStringAmigaEnglishProvider = { ARRAYSIZE(k1HealingTipStringAmigaEnglish), k1HealingTipStringAmigaEnglish };
+
+static const char *const k1PoisonGoneStringAmigaEnglish[2] = {
+ "Amazing!",
+ "The effects of the poison are gone!"
+};
+
+static const StringListProvider k1PoisonGoneStringAmigaEnglishProvider = { ARRAYSIZE(k1PoisonGoneStringAmigaEnglish), k1PoisonGoneStringAmigaEnglish };
+
+static const char *const k1ThePoisonStringsAmigaEnglish[4] = {
+ "The poison...",
+ "I can't breathe...",
+ "I don't feel so good...",
+ "That snake must\rbe poisonous!"
+};
+
+static const StringListProvider k1ThePoisonStringsAmigaEnglishProvider = { ARRAYSIZE(k1ThePoisonStringsAmigaEnglish), k1ThePoisonStringsAmigaEnglish };
+
+static const char *const k1FluteStringsAmigaEnglish[2] = {
+ "Not very impressive sounding.",
+ "That last note sure was high!"
+};
+
+static const StringListProvider k1FluteStringsAmigaEnglishProvider = { ARRAYSIZE(k1FluteStringsAmigaEnglish), k1FluteStringsAmigaEnglish };
+
+static const char *const k1WispJewelStringsAmigaEnglish[3] = {
+ "I'm not really feeling up to it right now.",
+ "I probably should put down my ",
+ ", first."
+};
+
+static const StringListProvider k1WispJewelStringsAmigaEnglishProvider = { ARRAYSIZE(k1WispJewelStringsAmigaEnglish), k1WispJewelStringsAmigaEnglish };
+
+static const char *const k1MagicJewelStringsAmigaEnglish[1] = {
+ "That felt strange."
+};
+
+static const StringListProvider k1MagicJewelStringsAmigaEnglishProvider = { ARRAYSIZE(k1MagicJewelStringsAmigaEnglish), k1MagicJewelStringsAmigaEnglish };
+
+static const char *const k1FlaskFullStringAmigaEnglish[1] = {
+ "This flask is already full."
+};
+
+static const StringListProvider k1FlaskFullStringAmigaEnglishProvider = { ARRAYSIZE(k1FlaskFullStringAmigaEnglish), k1FlaskFullStringAmigaEnglish };
+
+static const char *const k1FullFlaskStringAmigaEnglish[4] = {
+ "The flask is now filled\rwith fresh, sparkling water.",
+ "The flask is now filled\rwith salt water.",
+ "The flask is now filled\rwith mineral water.",
+ "Magic water."
+};
+
+static const StringListProvider k1FullFlaskStringAmigaEnglishProvider = { ARRAYSIZE(k1FullFlaskStringAmigaEnglish), k1FullFlaskStringAmigaEnglish };
+
+static const char *const k1OutroHomeStringAmigaEnglish[1] = {
+ "Home"
+};
+
+static const StringListProvider k1OutroHomeStringAmigaEnglishProvider = { ARRAYSIZE(k1OutroHomeStringAmigaEnglish), k1OutroHomeStringAmigaEnglish };
+
+static const char *const k1VeryCleverStringAmigaEnglish[1] = {
+ "Very clever! But your feeble efforts are futile."
+};
+
+static const StringListProvider k1VeryCleverStringAmigaEnglishProvider = { ARRAYSIZE(k1VeryCleverStringAmigaEnglish), k1VeryCleverStringAmigaEnglish };
+
+static const char *const k1GUIStringsAmigaEnglish[60] = {
+ "The Legend of Kyrandia",
+ "Load a game",
+ "Save this game",
+ "Game controls",
+ "Quit playing",
+ "Resume game",
+ "Game Controls",
+ "Which game would you like to reload?",
+ "Select a position to save to:",
+ "[ EMPTY SLOT ]",
+ "Cancel",
+ "Enter a description of your saved game:",
+ "Save",
+ "Rest in peace, Brandon.",
+ "Are you sure you want to quit playing?",
+ "XXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "Main menu",
+ "on",
+ "off",
+ "Yes",
+ "No",
+ "",
+ "\x01""Y""\xD6",
+ "\x01""Y""\xDE",
+ "\x01""Y""\xE4",
+ "\x01""Y""\xEC",
+ "\x01""Y""\xF2",
+ "\x01""Y""\xD6",
+ "\x01""Y""\xE4",
+ "\x01""Y""\xEC",
+ "\x01""Y""\xFA""Walk speed ",
+ "Text speed ",
+ "Music is ",
+ "Sounds are "
+};
+
+static const StringListProvider k1GUIStringsAmigaEnglishProvider = { ARRAYSIZE(k1GUIStringsAmigaEnglish), k1GUIStringsAmigaEnglish };
+
+static const char *const k1NewGameStringAmigaEnglish[1] = {
+ "[ START A NEW GAME ]"
+};
+
+static const StringListProvider k1NewGameStringAmigaEnglishProvider = { ARRAYSIZE(k1NewGameStringAmigaEnglish), k1NewGameStringAmigaEnglish };
+
+static const char *const k1ConfigStringsAmigaEnglish[6] = {
+ "slowest",
+ "slow",
+ "normal",
+ "fast",
+ "fastest",
+ "clickable"
+};
+
+static const StringListProvider k1ConfigStringsAmigaEnglishProvider = { ARRAYSIZE(k1ConfigStringsAmigaEnglish), k1ConfigStringsAmigaEnglish };
+
+static const byte k1CreditsStringsAmigaEnglish[1228] = {
+ 0x05, 0x46, 0x61, 0x62, 0x6C, 0x65, 0x73, 0x20,
+ 0x26, 0x20, 0x46, 0x69, 0x65, 0x6E, 0x64, 0x73,
+ 0x0D, 0x05, 0x42, 0x6F, 0x6F, 0x6B, 0x20, 0x49,
+ 0x0D, 0x05, 0x54, 0x48, 0x45, 0x20, 0x4C, 0x45,
+ 0x47, 0x45, 0x4E, 0x44, 0x20, 0x4F, 0x46, 0x20,
+ 0x4B, 0x59, 0x52, 0x41, 0x4E, 0x44, 0x49, 0x41,
+ 0x0D, 0x0D, 0x05, 0x50, 0x75, 0x62, 0x6C, 0x69,
+ 0x73, 0x68, 0x65, 0x64, 0x20, 0x62, 0x79, 0x0D,
+ 0x05, 0x57, 0x65, 0x73, 0x74, 0x77, 0x6F, 0x6F,
+ 0x64, 0x20, 0x53, 0x74, 0x75, 0x64, 0x69, 0x6F,
+ 0x73, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x03, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x6F, 0x72, 0x3A, 0x04, 0x42, 0x72, 0x65, 0x74,
+ 0x74, 0x20, 0x57, 0x2E, 0x20, 0x53, 0x70, 0x65,
+ 0x72, 0x72, 0x79, 0x0D, 0x0D, 0x03, 0x44, 0x65,
+ 0x73, 0x69, 0x67, 0x6E, 0x3A, 0x04, 0x4D, 0x69,
+ 0x63, 0x68, 0x61, 0x65, 0x6C, 0x20, 0x4C, 0x65,
+ 0x67, 0x67, 0x0D, 0x04, 0x52, 0x69, 0x63, 0x6B,
+ 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73, 0x0D, 0x04,
+ 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53, 0x2E, 0x20,
+ 0x4D, 0x75, 0x64, 0x72, 0x61, 0x0D, 0x0D, 0x03,
+ 0x4C, 0x65, 0x61, 0x64, 0x20, 0x50, 0x72, 0x6F,
+ 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x65, 0x72, 0x3A,
+ 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C,
+ 0x20, 0x4C, 0x65, 0x67, 0x67, 0x0D, 0x0D, 0x03,
+ 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x50,
+ 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x65,
+ 0x72, 0x3A, 0x04, 0x53, 0x63, 0x6F, 0x74, 0x74,
+ 0x20, 0x42, 0x6F, 0x77, 0x65, 0x6E, 0x0D, 0x0D,
+ 0x03, 0x41, 0x6D, 0x69, 0x67, 0x61, 0x20, 0x50,
+ 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x65,
+ 0x72, 0x3A, 0x04, 0x42, 0x69, 0x6C, 0x6C, 0x20,
+ 0x53, 0x74, 0x6F, 0x6B, 0x65, 0x73, 0x0D, 0x0D,
+ 0x03, 0x49, 0x6E, 0x74, 0x72, 0x6F, 0x20, 0x26,
+ 0x20, 0x46, 0x69, 0x6E, 0x61, 0x6C, 0x65, 0x3A,
+ 0x04, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x6F,
+ 0x70, 0x68, 0x65, 0x72, 0x20, 0x59, 0x61, 0x74,
+ 0x65, 0x73, 0x0D, 0x0D, 0x03, 0x41, 0x72, 0x74,
+ 0x20, 0x26, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68,
+ 0x69, 0x63, 0x73, 0x3A, 0x04, 0x52, 0x69, 0x63,
+ 0x6B, 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73, 0x0D,
+ 0x04, 0x52, 0x65, 0x6E, 0x20, 0x4F, 0x6C, 0x73,
+ 0x65, 0x6E, 0x0D, 0x04, 0x4C, 0x6F, 0x75, 0x69,
+ 0x73, 0x65, 0x20, 0x53, 0x61, 0x6E, 0x64, 0x6F,
+ 0x76, 0x61, 0x6C, 0x0D, 0x04, 0x4A, 0x6F, 0x73,
+ 0x65, 0x70, 0x68, 0x20, 0x48, 0x65, 0x77, 0x69,
+ 0x74, 0x74, 0x20, 0x49, 0x56, 0x0D, 0x04, 0x4A,
+ 0x75, 0x64, 0x69, 0x74, 0x68, 0x20, 0x50, 0x65,
+ 0x74, 0x65, 0x72, 0x73, 0x6F, 0x6E, 0x0D, 0x04,
+ 0x41, 0x61, 0x72, 0x6F, 0x6E, 0x20, 0x50, 0x6F,
+ 0x77, 0x65, 0x6C, 0x6C, 0x0D, 0x04, 0x45, 0x6C,
+ 0x69, 0x65, 0x20, 0x41, 0x72, 0x61, 0x62, 0x69,
+ 0x61, 0x6E, 0x0D, 0x04, 0x45, 0x72, 0x69, 0x63,
+ 0x20, 0x53, 0x68, 0x75, 0x6C, 0x74, 0x73, 0x0D,
+ 0x0D, 0x03, 0x41, 0x75, 0x64, 0x69, 0x6F, 0x20,
+ 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6F, 0x72,
+ 0x3A, 0x04, 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53,
+ 0x2E, 0x20, 0x4D, 0x75, 0x64, 0x72, 0x61, 0x0D,
+ 0x0D, 0x03, 0x4D, 0x75, 0x73, 0x69, 0x63, 0x3A,
+ 0x04, 0x46, 0x72, 0x61, 0x6E, 0x6B, 0x20, 0x4B,
+ 0x6C, 0x65, 0x70, 0x61, 0x63, 0x6B, 0x69, 0x0D,
+ 0x0D, 0x03, 0x53, 0x6F, 0x75, 0x6E, 0x64, 0x20,
+ 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x73, 0x3A,
+ 0x04, 0x44, 0x77, 0x69, 0x67, 0x68, 0x74, 0x20,
+ 0x4F, 0x6B, 0x61, 0x68, 0x61, 0x72, 0x61, 0x0D,
+ 0x0D, 0x03, 0x57, 0x72, 0x69, 0x74, 0x65, 0x72,
+ 0x3A, 0x04, 0x22, 0x43, 0x6F, 0x63, 0x6F, 0x22,
+ 0x0D, 0x0D, 0x03, 0x51, 0x75, 0x61, 0x6C, 0x69,
+ 0x74, 0x79, 0x20, 0x41, 0x73, 0x73, 0x75, 0x72,
+ 0x61, 0x6E, 0x63, 0x65, 0x3A, 0x04, 0x47, 0x6C,
+ 0x65, 0x6E, 0x6E, 0x20, 0x53, 0x70, 0x65, 0x72,
+ 0x72, 0x79, 0x0D, 0x04, 0x4D, 0x61, 0x74, 0x74,
+ 0x20, 0x43, 0x6F, 0x6C, 0x6C, 0x69, 0x6E, 0x73,
+ 0x0D, 0x04, 0x42, 0x69, 0x6C, 0x6C, 0x20, 0x46,
+ 0x6F, 0x73, 0x74, 0x65, 0x72, 0x0D, 0x04, 0x4D,
+ 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C, 0x20, 0x4C,
+ 0x69, 0x67, 0x68, 0x74, 0x6E, 0x65, 0x72, 0x0D,
+ 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C,
+ 0x20, 0x47, 0x61, 0x74, 0x65, 0x72, 0x0D, 0x04,
+ 0x45, 0x75, 0x67, 0x65, 0x6E, 0x65, 0x20, 0x4D,
+ 0x61, 0x72, 0x74, 0x69, 0x6E, 0x0D, 0x04, 0x4D,
+ 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C, 0x20, 0x47,
+ 0x6C, 0x6F, 0x73, 0x65, 0x63, 0x6B, 0x69, 0x0D,
+ 0x04, 0x4A, 0x75, 0x73, 0x74, 0x69, 0x6E, 0x20,
+ 0x4E, 0x6F, 0x72, 0x72, 0x0D, 0x04, 0x54, 0x6F,
+ 0x70, 0x20, 0x53, 0x74, 0x61, 0x72, 0x20, 0x54,
+ 0x65, 0x73, 0x74, 0x69, 0x6E, 0x67, 0x0D, 0x04,
+ 0x54, 0x65, 0x73, 0x74, 0x69, 0x6E, 0x67, 0x20,
+ 0x31, 0x2C, 0x32, 0x2C, 0x33, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x05, 0x53, 0x70, 0x65, 0x63, 0x69,
+ 0x61, 0x6C, 0x20, 0x54, 0x68, 0x61, 0x6E, 0x6B,
+ 0x73, 0x20, 0x74, 0x6F, 0x0D, 0x05, 0x4C, 0x79,
+ 0x6C, 0x65, 0x20, 0x4A, 0x2E, 0x20, 0x48, 0x61,
+ 0x6C, 0x6C, 0x0D, 0x05, 0x44, 0x61, 0x76, 0x69,
+ 0x64, 0x20, 0x42, 0x69, 0x73, 0x68, 0x6F, 0x70,
+ 0x0D, 0x05, 0x22, 0x54, 0x68, 0x65, 0x20, 0x44,
+ 0x6F, 0x63, 0x22, 0x0D, 0x05, 0x61, 0x6E, 0x64,
+ 0x0D, 0x05, 0x46, 0x69, 0x72, 0x65, 0x62, 0x65,
+ 0x72, 0x72, 0x79, 0x20, 0x47, 0x72, 0x65, 0x65,
+ 0x6E, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x05, 0x43, 0x41, 0x53, 0x54, 0x20, 0x4F,
+ 0x46, 0x20, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43,
+ 0x54, 0x45, 0x52, 0x53, 0x0D, 0x0D, 0x05, 0x4D,
+ 0x61, 0x6C, 0x63, 0x6F, 0x6C, 0x6D, 0x20, 0x74,
+ 0x68, 0x65, 0x20, 0x4A, 0x65, 0x73, 0x74, 0x65,
+ 0x72, 0x0D, 0x05, 0x42, 0x72, 0x61, 0x6E, 0x64,
+ 0x6F, 0x6E, 0x20, 0x74, 0x68, 0x65, 0x20, 0x42,
+ 0x6F, 0x6C, 0x64, 0x0D, 0x05, 0x42, 0x72, 0x61,
+ 0x6E, 0x64, 0x79, 0x77, 0x69, 0x6E, 0x65, 0x20,
+ 0x61, 0x6E, 0x64, 0x20, 0x44, 0x61, 0x72, 0x6D,
+ 0x0D, 0x05, 0x50, 0x72, 0x69, 0x65, 0x73, 0x74,
+ 0x65, 0x73, 0x73, 0x20, 0x42, 0x72, 0x79, 0x6E,
+ 0x6E, 0x0D, 0x05, 0x5A, 0x61, 0x6E, 0x74, 0x68,
+ 0x69, 0x61, 0x2C, 0x20, 0x4C, 0x61, 0x64, 0x79,
+ 0x20, 0x6F, 0x66, 0x20, 0x41, 0x6C, 0x63, 0x68,
+ 0x65, 0x6D, 0x79, 0x0D, 0x05, 0x48, 0x65, 0x72,
+ 0x6D, 0x61, 0x6E, 0x20, 0x74, 0x68, 0x65, 0x20,
+ 0x48, 0x61, 0x6E, 0x64, 0x79, 0x6D, 0x61, 0x6E,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x05,
+ 0x41, 0x6E, 0x79, 0x20, 0x63, 0x68, 0x61, 0x72,
+ 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x20, 0x69,
+ 0x6E, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x67,
+ 0x61, 0x6D, 0x65, 0x20, 0x77, 0x68, 0x6F, 0x20,
+ 0x62, 0x65, 0x61, 0x72, 0x0D, 0x05, 0x72, 0x65,
+ 0x73, 0x65, 0x6D, 0x62, 0x6C, 0x61, 0x6E, 0x63,
+ 0x65, 0x20, 0x74, 0x6F, 0x20, 0x70, 0x65, 0x72,
+ 0x73, 0x6F, 0x6E, 0x73, 0x20, 0x6C, 0x69, 0x76,
+ 0x69, 0x6E, 0x67, 0x20, 0x6F, 0x72, 0x0D, 0x05,
+ 0x64, 0x65, 0x61, 0x64, 0x20, 0x61, 0x72, 0x65,
+ 0x20, 0x70, 0x75, 0x72, 0x65, 0x6C, 0x79, 0x20,
+ 0x63, 0x6F, 0x69, 0x6E, 0x63, 0x69, 0x64, 0x65,
+ 0x6E, 0x74, 0x61, 0x6C, 0x2E, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x05, 0x4D, 0x61, 0x78, 0x54, 0x72,
+ 0x61, 0x78, 0xE2, 0x20, 0x6D, 0x75, 0x73, 0x69,
+ 0x63, 0x20, 0x73, 0x6F, 0x66, 0x74, 0x77, 0x61,
+ 0x72, 0x65, 0x0D, 0x05, 0x20, 0xE3, 0x20, 0x31,
+ 0x39, 0x39, 0x32, 0x20, 0x53, 0x79, 0x6C, 0x76,
+ 0x61, 0x6E, 0x20, 0x54, 0x65, 0x63, 0x68, 0x6E,
+ 0x69, 0x63, 0x61, 0x6C, 0x20, 0x41, 0x72, 0x74,
+ 0x73, 0x0D, 0x05, 0x4C, 0x69, 0x63, 0x65, 0x6E,
+ 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74,
+ 0x68, 0x65, 0x20, 0x44, 0x72, 0x65, 0x61, 0x6D,
+ 0x65, 0x72, 0x73, 0x20, 0x47, 0x75, 0x69, 0x6C,
+ 0x64, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x05, 0x43, 0x6F,
+ 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20,
+ 0x28, 0x43, 0x29, 0x20, 0x31, 0x39, 0x39, 0x32,
+ 0x2C, 0x20, 0x57, 0x65, 0x73, 0x74, 0x77, 0x6F,
+ 0x6F, 0x64, 0x20, 0x53, 0x74, 0x75, 0x64, 0x69,
+ 0x6F, 0x73, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E,
+ 0x0D, 0x05, 0x41, 0x6C, 0x6C, 0x20, 0x72, 0x69,
+ 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73,
+ 0x65, 0x72, 0x76, 0x65, 0x64, 0x2E, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x00, 0x00
+};
+
+static const ByteProvider k1CreditsStringsAmigaEnglishProvider = { ARRAYSIZE(k1CreditsStringsAmigaEnglish), k1CreditsStringsAmigaEnglish };
+
diff --git a/devtools/create_kyradat/resources/lok_amiga_german.h b/devtools/create_kyradat/resources/lok_amiga_german.h
new file mode 100644
index 0000000000..ff9090ab2a
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_amiga_german.h
@@ -0,0 +1,492 @@
+static const char *const k1IntroStringsAmigaGerman[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Sei gegr""\x81\xE1""t, Kallak...",
+ "...M""\x84""chtiger Anf""\x81""hrer der k""\x94""niglichen Mystiker!",
+ "Habe ich dich erschreckt?",
+ "Malcolm!",
+ "Ich habe gestern von deiner Flucht geh""\x94""rt.",
+ "Ich habe dich fr""\x81""her erwartet.",
+ "Warum sollte ich mich beeilen?",
+ "Ich herrsche ""\x81""ber dieses Land!",
+ "Dein mickriger Fluch h""\x84""lt mich nicht zur""\x81""ck.",
+ "So, erschlag mich doch!",
+ "Ich habe nur noch wenig Magie ""\x81""brig.",
+ "Ich werde dir zu Leibe r""\x81""cken, zweifle blo""\xE1"" nicht daran...",
+ "...du bist jetzt aus Stein...",
+ "...Ich lassen dir allein deine Augen.",
+ "F""\x81""r Kyrandia vergie""\xE1""e ich nicht eine Tr""\x84""ne...",
+ "...aber deine will ich dir nicht nehmen.",
+ "Malcolm der Hofnarr ist ausgebrochen!",
+ "Er beherrscht nun den Kyragem...",
+ "...die Quelle aller Magie in Kyrandia!",
+ "",
+ "Wie kannst du es wagen, MICH umzuwerfen!",
+ "Nicht doch, etwas Besonderes f""\x81""r dich...",
+ "Was f""\x81""r ein l""\x84""cherlicher Fluch!",
+ "Ich warne dich vorher.",
+ "Springe nicht auf DIESEN Baum!",
+ "Klettre nicht auf diesen Baum, kleines Eichh""\x94""rnchen!",
+ "Buuh!",
+ "So ist es viel lustiger...",
+ "...nicht wahr?",
+ "Ha ha ha...",
+ "Sind Finger nicht 'was Tolles?",
+ "Es ist gro""\xE1""artig, am Leben zu sein!",
+ "Brandon!",
+ "Gro""\xE1""vater! Wir haben es geschafft!",
+ "Nein! DU hast es geschafft!",
+ "Lang lebe K""\x94""nig Brandon!",
+ "Lang leben die k""\x94""niglichen Mystiker!",
+ "Bauen wir Kyrandia wieder auf!",
+ "Eine gute Idee!",
+ "Als meine erste k""\x94""nigliche Proklamation,...",
+ "...erkl""\x84""re ich Sandalen zur offiziellen Fu""\xE1""bekleidung Kyrandias!",
+ "Sehr weise, Brandon!",
+ "Das Land ist nicht l""\x84""nger in Trauer!",
+ "Und deine Freunde sind gerettet.",
+ "Liebe Brynn...",
+ "Malcolm ist ausgebrochen!",
+ "Er wird bald zu mir kommen.",
+ "Bitte hilf Brandon...",
+ ""
+};
+
+static const StringListProvider k1IntroStringsAmigaGermanProvider = { ARRAYSIZE(k1IntroStringsAmigaGerman), k1IntroStringsAmigaGerman };
+
+static const char *const k1ItemNamesAmigaGerman[82] = {
+ "Granat",
+ "Amethyst",
+ "Aquamarin",
+ "Diamant",
+ "Smaragd",
+ "Perle",
+ "Rubin",
+ "Peridot",
+ "Saphir",
+ "Opal",
+ "Topas",
+ "Onyx",
+ "Sonnenstein",
+ "Mondstein",
+ "Regenbogenstein",
+ "Magnetstein",
+ "Rose",
+ "Tulpe",
+ "Orchidee",
+ "Silberne Rose",
+ "Silberne Statuette",
+ "Silberm""\x81""nze",
+ "Goldm""\x81""nze",
+ "Goldring",
+ "Der Kelch des K""\x94""nigs",
+ "Kienapfel",
+ "Eichel",
+ "Walnu""\xE1",
+ "Immerleuchtende Feuerbeeren",
+ "Feuerbeeren",
+ "Fisch",
+ "Fischgr""\x84""te",
+ "Hammelkeule",
+ "Knochen",
+ "Apfel",
+ "Apfelgriebsch",
+ "Heidelbeeren",
+ "Pilz",
+ "Notiz",
+ "Murmel",
+ "S""\x84""ge",
+ "Henkelkreuz",
+ "Feder",
+ "Ei",
+ "Blatt",
+ "Kleeblatt",
+ "Sternschnuppe",
+ "Kristallkugel",
+ "Tr""\x84""ne",
+ "Spiegel",
+ "Eisst""\x81""ck",
+ "Fl""\x94""te",
+ "Sanduhr",
+ "Eisenschl""\x81""ssel",
+ "Jadeschl""\x81""ssel",
+ "Obsidianschl""\x81""ssel",
+ "Roter Trank",
+ "Blauer Trank",
+ "Gelber Trank",
+ "Gr""\x81""ner Trank",
+ "Oranger Trank",
+ "Violetter Trank",
+ "Regenbogentrank",
+ "S""\x81\xE1""wasser",
+ "Salzwasser",
+ "Mineralwasser",
+ "Magisches Wasser",
+ "Leere Flasche",
+ "Schriftrolle",
+ "Pergamentfetzen",
+ "Roter Weisenstein",
+ "Oranger Weisenstein",
+ "Gelber Weisenstein",
+ "Gr""\x81""ner Weisenstein",
+ "T""\x81""rkiser Weisenstein",
+ "Blauer Weisenstein",
+ "Violetter Weisenstein",
+ "Schwerer Stein",
+ "K""\x94""nigliche Krone",
+ "K""\x94""nigliches Zepter",
+ "Goldschl""\x81""ssel",
+ "Unbekannter Gegenstand"
+};
+
+static const StringListProvider k1ItemNamesAmigaGermanProvider = { ARRAYSIZE(k1ItemNamesAmigaGerman), k1ItemNamesAmigaGerman };
+
+static const char *const k1TakenStringsAmigaGerman[1] = {
+ " aufgenommen."
+};
+
+static const StringListProvider k1TakenStringsAmigaGermanProvider = { ARRAYSIZE(k1TakenStringsAmigaGerman), k1TakenStringsAmigaGerman };
+
+static const char *const k1PlacedStringsAmigaGerman[1] = {
+ " abgelegt."
+};
+
+static const StringListProvider k1PlacedStringsAmigaGermanProvider = { ARRAYSIZE(k1PlacedStringsAmigaGerman), k1PlacedStringsAmigaGerman };
+
+static const char *const k1DroppedStringsAmigaGerman[1] = {
+ " fallengelassen."
+};
+
+static const StringListProvider k1DroppedStringsAmigaGermanProvider = { ARRAYSIZE(k1DroppedStringsAmigaGerman), k1DroppedStringsAmigaGerman };
+
+static const char *const k1NoDropStringsAmigaGerman[2] = {
+ "Hier kann nichts mehr abgelegt werden.",
+ "Das kann hier nicht abgelegt werden."
+};
+
+static const StringListProvider k1NoDropStringsAmigaGermanProvider = { ARRAYSIZE(k1NoDropStringsAmigaGerman), k1NoDropStringsAmigaGerman };
+
+static const char *const k1PutDownStringAmigaGerman[1] = {
+ "Vielleicht sollte ich es erst hinlegen."
+};
+
+static const StringListProvider k1PutDownStringAmigaGermanProvider = { ARRAYSIZE(k1PutDownStringAmigaGerman), k1PutDownStringAmigaGerman };
+
+static const char *const k1WaitAmuletStringAmigaGerman[1] = {
+ "I nehme an, ich mu""\xE1"" warten, bis mein Amulett seine Kraft wiedererlangt."
+};
+
+static const StringListProvider k1WaitAmuletStringAmigaGermanProvider = { ARRAYSIZE(k1WaitAmuletStringAmigaGerman), k1WaitAmuletStringAmigaGerman };
+
+static const char *const k1BlackJewelStringAmigaGerman[1] = {
+ "Es ist ein Edelstein, aber warum ist er schwarz?"
+};
+
+static const StringListProvider k1BlackJewelStringAmigaGermanProvider = { ARRAYSIZE(k1BlackJewelStringAmigaGerman), k1BlackJewelStringAmigaGerman };
+
+static const char *const k1HealingTipStringAmigaGerman[1] = {
+ "Mann, das kann ganz n""\x81""tzlich sein, falls ich mich verletze!"
+};
+
+static const StringListProvider k1HealingTipStringAmigaGermanProvider = { ARRAYSIZE(k1HealingTipStringAmigaGerman), k1HealingTipStringAmigaGerman };
+
+static const char *const k1PoisonGoneStringAmigaGerman[2] = {
+ "Erstaunlich!",
+ "Die Wirkung des Giftes hat nachgelassen!"
+};
+
+static const StringListProvider k1PoisonGoneStringAmigaGermanProvider = { ARRAYSIZE(k1PoisonGoneStringAmigaGerman), k1PoisonGoneStringAmigaGerman };
+
+static const char *const k1ThePoisonStringsAmigaGerman[4] = {
+ "Das Gift...",
+ "Ich kann nicht atmen...",
+ "Ich f""\x81""hle mich nicht besonders wohl...",
+ "Die Schlange mu""\xE1"" \rgiftig gewesen sein!"
+};
+
+static const StringListProvider k1ThePoisonStringsAmigaGermanProvider = { ARRAYSIZE(k1ThePoisonStringsAmigaGerman), k1ThePoisonStringsAmigaGerman };
+
+static const char *const k1FluteStringsAmigaGerman[2] = {
+ "Klingt nicht besonders beeindruckend.",
+ "Die letzte Note war hoch!"
+};
+
+static const StringListProvider k1FluteStringsAmigaGermanProvider = { ARRAYSIZE(k1FluteStringsAmigaGerman), k1FluteStringsAmigaGerman };
+
+static const char *const k1WispJewelStringsAmigaGerman[3] = {
+ "Im Moment f""\x81""hle ich mich dazu nicht in der Lage.",
+ "Ich mu""\xE1"" wahrscheinlich erst mein(e)...",
+ "ablegen."
+};
+
+static const StringListProvider k1WispJewelStringsAmigaGermanProvider = { ARRAYSIZE(k1WispJewelStringsAmigaGerman), k1WispJewelStringsAmigaGerman };
+
+static const char *const k1MagicJewelStringsAmigaGerman[1] = {
+ "Das war eigenartig."
+};
+
+static const StringListProvider k1MagicJewelStringsAmigaGermanProvider = { ARRAYSIZE(k1MagicJewelStringsAmigaGerman), k1MagicJewelStringsAmigaGerman };
+
+static const char *const k1FlaskFullStringAmigaGerman[1] = {
+ "Die Flasche ist bereits voll."
+};
+
+static const StringListProvider k1FlaskFullStringAmigaGermanProvider = { ARRAYSIZE(k1FlaskFullStringAmigaGerman), k1FlaskFullStringAmigaGerman };
+
+static const char *const k1FullFlaskStringAmigaGerman[4] = {
+ "Die Flasche ist jetzt mit \rfrischem, klarem Wasser gef""\x81""llt.",
+ "Die Flasche ist jetzt mit \rSalzwasser gef""\x81""llt.",
+ "Die Flasche ist jetzt mit \rMineralwasser gef""\x81""llt.",
+ "Magisches Wasser."
+};
+
+static const StringListProvider k1FullFlaskStringAmigaGermanProvider = { ARRAYSIZE(k1FullFlaskStringAmigaGerman), k1FullFlaskStringAmigaGerman };
+
+static const char *const k1OutroHomeStringAmigaGerman[1] = {
+ "Ab nach Hause"
+};
+
+static const StringListProvider k1OutroHomeStringAmigaGermanProvider = { ARRAYSIZE(k1OutroHomeStringAmigaGerman), k1OutroHomeStringAmigaGerman };
+
+static const char *const k1VeryCleverStringAmigaGerman[1] = {
+ "Sehr clever! Aber nichtige Versuche sind zum Scheitern verurteilt."
+};
+
+static const StringListProvider k1VeryCleverStringAmigaGermanProvider = { ARRAYSIZE(k1VeryCleverStringAmigaGerman), k1VeryCleverStringAmigaGerman };
+
+static const char *const k1GUIStringsAmigaGerman[49] = {
+ "Die Legende von Kyrandia",
+ "Ein Spiel laden",
+ "Dieses Spiel sichern",
+ "Spielsteuerungen",
+ "Spiel beenden",
+ "Spiel wieder aufnehmen",
+ "Spielsteuerungen",
+ "Welches Spiel soll noch einmal geladen werden?",
+ "W""\x84""hlen Sie den Platz zum Sichern aus.",
+ "[ LEERER PLATZ ]",
+ "Abbrechen",
+ "Beschreibung des gesicherten Spiels eingeben.",
+ "Sichern",
+ "Ruhe in Frieden, Brandon.",
+ "Soll das Spiel wirklich beendet werden?",
+ "XXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "Hauptmen""\x81",
+ "An",
+ "Aus",
+ "Ja",
+ "Nein",
+ "",
+ "\x01""[""\xA2",
+ "\x01""[""\xB2",
+ "\x01""[""\xBA",
+ "\x01""[""\xC2",
+ "\x01""[""\xCA",
+ "\x01""[""\xA2",
+ "\x01""[""\xBA",
+ "\x01""[""\xC2",
+ "\x01""[""\xDA""Schrittempo",
+ "Textgeschwindigkeit",
+ "Die Musik ist",
+ "Die Soundeffekte sind"
+};
+
+static const StringListProvider k1GUIStringsAmigaGermanProvider = { ARRAYSIZE(k1GUIStringsAmigaGerman), k1GUIStringsAmigaGerman };
+
+static const char *const k1NewGameStringAmigaGerman[1] = {
+ "[ EIN NEUES SPIEL ANFANGEN ]"
+};
+
+static const StringListProvider k1NewGameStringAmigaGermanProvider = { ARRAYSIZE(k1NewGameStringAmigaGerman), k1NewGameStringAmigaGerman };
+
+static const char *const k1ConfigStringsAmigaGerman[6] = {
+ "am langsamsten",
+ "langsam",
+ "normal",
+ "schnell",
+ "am schnellsten",
+ "anklickbar"
+};
+
+static const StringListProvider k1ConfigStringsAmigaGermanProvider = { ARRAYSIZE(k1ConfigStringsAmigaGerman), k1ConfigStringsAmigaGerman };
+
+static const byte k1CreditsStringsAmigaGerman[1275] = {
+ 0x05, 0x46, 0x61, 0x62, 0x6C, 0x65, 0x73, 0x20,
+ 0x26, 0x20, 0x46, 0x69, 0x65, 0x6E, 0x64, 0x73,
+ 0x0D, 0x05, 0x42, 0x6F, 0x6F, 0x6B, 0x20, 0x49,
+ 0x0D, 0x05, 0x54, 0x48, 0x45, 0x20, 0x4C, 0x45,
+ 0x47, 0x45, 0x4E, 0x44, 0x20, 0x4F, 0x46, 0x20,
+ 0x4B, 0x59, 0x52, 0x41, 0x4E, 0x44, 0x49, 0x41,
+ 0x0D, 0x0D, 0x05, 0x56, 0x65, 0x72, 0x94, 0x66,
+ 0x66, 0x65, 0x6E, 0x74, 0x6C, 0x69, 0x63, 0x68,
+ 0x74, 0x20, 0x76, 0x6F, 0x6E, 0x0D, 0x05, 0x57,
+ 0x65, 0x73, 0x74, 0x77, 0x6F, 0x6F, 0x64, 0x20,
+ 0x53, 0x74, 0x75, 0x64, 0x69, 0x6F, 0x73, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x03,
+ 0x52, 0x65, 0x67, 0x69, 0x65, 0x3A, 0x04, 0x42,
+ 0x72, 0x65, 0x74, 0x74, 0x20, 0x57, 0x2E, 0x20,
+ 0x53, 0x70, 0x65, 0x72, 0x72, 0x79, 0x0D, 0x0D,
+ 0x03, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6E, 0x3A,
+ 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C,
+ 0x20, 0x4C, 0x65, 0x67, 0x67, 0x0D, 0x04, 0x52,
+ 0x69, 0x63, 0x6B, 0x20, 0x50, 0x61, 0x72, 0x6B,
+ 0x73, 0x0D, 0x04, 0x50, 0x61, 0x75, 0x6C, 0x20,
+ 0x53, 0x2E, 0x20, 0x4D, 0x75, 0x64, 0x72, 0x61,
+ 0x0D, 0x0D, 0x03, 0x50, 0x72, 0x6F, 0x67, 0x72,
+ 0x61, 0x6D, 0x6D, 0x69, 0x65, 0x72, 0x75, 0x6E,
+ 0x67, 0x73, 0x6C, 0x65, 0x69, 0x74, 0x75, 0x6E,
+ 0x67, 0x3A, 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61,
+ 0x65, 0x6C, 0x20, 0x4C, 0x65, 0x67, 0x67, 0x0D,
+ 0x0D, 0x03, 0x54, 0x65, 0x78, 0x74, 0x70, 0x72,
+ 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x69, 0x65,
+ 0x72, 0x65, 0x72, 0x3A, 0x04, 0x53, 0x63, 0x6F,
+ 0x74, 0x74, 0x20, 0x42, 0x6F, 0x77, 0x65, 0x6E,
+ 0x0D, 0x0D, 0x03, 0x41, 0x6D, 0x69, 0x67, 0x61,
+ 0x2D, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D,
+ 0x6D, 0x69, 0x65, 0x72, 0x65, 0x72, 0x3A, 0x04,
+ 0x42, 0x69, 0x6C, 0x6C, 0x20, 0x53, 0x74, 0x6F,
+ 0x6B, 0x65, 0x73, 0x0D, 0x0D, 0x03, 0x56, 0x6F,
+ 0x72, 0x2D, 0x20, 0x75, 0x6E, 0x64, 0x20, 0x4E,
+ 0x61, 0x63, 0x68, 0x73, 0x70, 0x61, 0x6E, 0x6E,
+ 0x3A, 0x04, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74,
+ 0x6F, 0x70, 0x68, 0x65, 0x72, 0x20, 0x59, 0x61,
+ 0x74, 0x65, 0x73, 0x0D, 0x0D, 0x03, 0x4B, 0x81,
+ 0x6E, 0x73, 0x74, 0x6C, 0x65, 0x72, 0x69, 0x73,
+ 0x63, 0x68, 0x65, 0x20, 0x47, 0x65, 0x73, 0x74,
+ 0x61, 0x6C, 0x74, 0x75, 0x6E, 0x67, 0x3A, 0x04,
+ 0x52, 0x69, 0x63, 0x6B, 0x20, 0x50, 0x61, 0x72,
+ 0x6B, 0x73, 0x0D, 0x04, 0x52, 0x65, 0x6E, 0x20,
+ 0x4F, 0x6C, 0x73, 0x65, 0x6E, 0x0D, 0x04, 0x4C,
+ 0x6F, 0x75, 0x69, 0x73, 0x65, 0x20, 0x53, 0x61,
+ 0x6E, 0x64, 0x6F, 0x76, 0x61, 0x6C, 0x0D, 0x04,
+ 0x4A, 0x6F, 0x73, 0x65, 0x70, 0x68, 0x20, 0x48,
+ 0x65, 0x77, 0x69, 0x74, 0x74, 0x20, 0x49, 0x56,
+ 0x0D, 0x04, 0x4A, 0x75, 0x64, 0x69, 0x74, 0x68,
+ 0x20, 0x50, 0x65, 0x74, 0x65, 0x72, 0x73, 0x6F,
+ 0x6E, 0x0D, 0x04, 0x41, 0x61, 0x72, 0x6F, 0x6E,
+ 0x20, 0x50, 0x6F, 0x77, 0x65, 0x6C, 0x6C, 0x0D,
+ 0x04, 0x45, 0x6C, 0x69, 0x65, 0x20, 0x41, 0x72,
+ 0x61, 0x62, 0x69, 0x61, 0x6E, 0x0D, 0x04, 0x45,
+ 0x72, 0x69, 0x63, 0x20, 0x53, 0x68, 0x75, 0x6C,
+ 0x74, 0x73, 0x0D, 0x0D, 0x03, 0x54, 0x6F, 0x6E,
+ 0x72, 0x65, 0x67, 0x69, 0x65, 0x3A, 0x04, 0x50,
+ 0x61, 0x75, 0x6C, 0x20, 0x53, 0x2E, 0x20, 0x4D,
+ 0x75, 0x64, 0x72, 0x61, 0x0D, 0x0D, 0x03, 0x4D,
+ 0x75, 0x73, 0x69, 0x6B, 0x3A, 0x04, 0x46, 0x72,
+ 0x61, 0x6E, 0x6B, 0x20, 0x4B, 0x6C, 0x65, 0x70,
+ 0x61, 0x63, 0x6B, 0x69, 0x0D, 0x0D, 0x03, 0x53,
+ 0x6F, 0x75, 0x6E, 0x64, 0x65, 0x66, 0x66, 0x65,
+ 0x6B, 0x74, 0x65, 0x3A, 0x04, 0x44, 0x77, 0x69,
+ 0x67, 0x68, 0x74, 0x20, 0x4F, 0x6B, 0x61, 0x68,
+ 0x61, 0x72, 0x61, 0x0D, 0x0D, 0x03, 0x41, 0x75,
+ 0x74, 0x6F, 0x72, 0x3A, 0x04, 0x22, 0x43, 0x6F,
+ 0x63, 0x6F, 0x22, 0x0D, 0x0D, 0x03, 0x51, 0x75,
+ 0x61, 0x6C, 0x69, 0x74, 0x84, 0x74, 0x73, 0x73,
+ 0x69, 0x63, 0x68, 0x65, 0x72, 0x75, 0x6E, 0x67,
+ 0x3A, 0x04, 0x47, 0x6C, 0x65, 0x6E, 0x6E, 0x20,
+ 0x53, 0x70, 0x65, 0x72, 0x72, 0x79, 0x0D, 0x04,
+ 0x4D, 0x61, 0x74, 0x74, 0x20, 0x43, 0x6F, 0x6C,
+ 0x6C, 0x69, 0x6E, 0x73, 0x0D, 0x04, 0x42, 0x69,
+ 0x6C, 0x6C, 0x20, 0x46, 0x6F, 0x73, 0x74, 0x65,
+ 0x72, 0x0D, 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61,
+ 0x65, 0x6C, 0x20, 0x4C, 0x69, 0x67, 0x68, 0x74,
+ 0x6E, 0x65, 0x72, 0x0D, 0x04, 0x4D, 0x69, 0x63,
+ 0x68, 0x61, 0x65, 0x6C, 0x20, 0x47, 0x61, 0x74,
+ 0x65, 0x72, 0x0D, 0x04, 0x45, 0x75, 0x67, 0x65,
+ 0x6E, 0x65, 0x20, 0x4D, 0x61, 0x72, 0x74, 0x69,
+ 0x6E, 0x0D, 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61,
+ 0x65, 0x6C, 0x20, 0x47, 0x6C, 0x6F, 0x73, 0x65,
+ 0x63, 0x6B, 0x69, 0x0D, 0x04, 0x4A, 0x75, 0x73,
+ 0x74, 0x69, 0x6E, 0x20, 0x4E, 0x6F, 0x72, 0x72,
+ 0x0D, 0x04, 0x54, 0x6F, 0x70, 0x20, 0x53, 0x74,
+ 0x61, 0x72, 0x20, 0x54, 0x65, 0x73, 0x74, 0x69,
+ 0x6E, 0x67, 0x0D, 0x04, 0x54, 0x65, 0x73, 0x74,
+ 0x69, 0x6E, 0x67, 0x20, 0x31, 0x2C, 0x20, 0x32,
+ 0x2C, 0x20, 0x33, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x05, 0x42, 0x65, 0x73, 0x6F, 0x6E, 0x64, 0x65,
+ 0x72, 0x65, 0x72, 0x20, 0x44, 0x61, 0x6E, 0x6B,
+ 0x20, 0x67, 0x69, 0x6C, 0x74, 0x3A, 0x0D, 0x05,
+ 0x4C, 0x79, 0x6C, 0x65, 0x20, 0x4A, 0x2E, 0x20,
+ 0x48, 0x61, 0x6C, 0x6C, 0x0D, 0x05, 0x44, 0x61,
+ 0x76, 0x69, 0x64, 0x20, 0x42, 0x69, 0x73, 0x68,
+ 0x6F, 0x70, 0x0D, 0x05, 0x22, 0x54, 0x68, 0x65,
+ 0x20, 0x44, 0x6F, 0x63, 0x22, 0x0D, 0x05, 0x75,
+ 0x6E, 0x64, 0x0D, 0x05, 0x53, 0x50, 0x52, 0x4F,
+ 0x43, 0x4B, 0x45, 0x54, 0x53, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x05, 0x4D, 0x49,
+ 0x54, 0x57, 0x49, 0x52, 0x4B, 0x45, 0x4E, 0x44,
+ 0x45, 0x20, 0x46, 0x49, 0x47, 0x55, 0x52, 0x45,
+ 0x4E, 0x0D, 0x0D, 0x05, 0x4D, 0x61, 0x6C, 0x63,
+ 0x6F, 0x6C, 0x6D, 0x20, 0x64, 0x65, 0x72, 0x20,
+ 0x48, 0x6F, 0x66, 0x6E, 0x61, 0x72, 0x72, 0x0D,
+ 0x05, 0x42, 0x72, 0x61, 0x6E, 0x64, 0x6F, 0x6E,
+ 0x20, 0x64, 0x65, 0x72, 0x20, 0x4B, 0x81, 0x68,
+ 0x6E, 0x65, 0x0D, 0x05, 0x42, 0x72, 0x61, 0x6E,
+ 0x64, 0x79, 0x77, 0x69, 0x6E, 0x65, 0x20, 0x75,
+ 0x6E, 0x64, 0x20, 0x44, 0x61, 0x72, 0x6D, 0x0D,
+ 0x05, 0x50, 0x72, 0x69, 0x65, 0x73, 0x74, 0x65,
+ 0x72, 0x69, 0x6E, 0x20, 0x42, 0x72, 0x79, 0x6E,
+ 0x6E, 0x0D, 0x05, 0x5A, 0x61, 0x6E, 0x74, 0x68,
+ 0x69, 0x61, 0x2C, 0x20, 0x64, 0x69, 0x65, 0x20,
+ 0x4C, 0x61, 0x64, 0x79, 0x20, 0x64, 0x65, 0x72,
+ 0x20, 0x41, 0x6C, 0x63, 0x68, 0x65, 0x6D, 0x69,
+ 0x65, 0x0D, 0x05, 0x48, 0x65, 0x72, 0x6D, 0x61,
+ 0x6E, 0x20, 0x64, 0x65, 0x72, 0x20, 0x47, 0x65,
+ 0x73, 0x63, 0x68, 0x69, 0x63, 0x6B, 0x74, 0x65,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x05,
+ 0x41, 0x6C, 0x6C, 0x65, 0x20, 0x8E, 0x68, 0x6E,
+ 0x6C, 0x69, 0x63, 0x68, 0x6B, 0x65, 0x69, 0x74,
+ 0x65, 0x6E, 0x20, 0x76, 0x6F, 0x6E, 0x20, 0x69,
+ 0x6D, 0x20, 0x53, 0x70, 0x69, 0x65, 0x6C, 0x20,
+ 0x61, 0x75, 0x66, 0x74, 0x72, 0x65, 0x74, 0x65,
+ 0x6E, 0x64, 0x65, 0x6E, 0x0D, 0x05, 0x46, 0x69,
+ 0x67, 0x75, 0x72, 0x65, 0x6E, 0x20, 0x6D, 0x69,
+ 0x74, 0x20, 0x6C, 0x65, 0x62, 0x65, 0x6E, 0x64,
+ 0x65, 0x6E, 0x20, 0x6F, 0x64, 0x65, 0x72, 0x20,
+ 0x76, 0x65, 0x72, 0x73, 0x74, 0x6F, 0x72, 0x62,
+ 0x65, 0x6E, 0x65, 0x6E, 0x0D, 0x05, 0x50, 0x65,
+ 0x72, 0x73, 0x6F, 0x6E, 0x65, 0x6E, 0x20, 0x73,
+ 0x69, 0x6E, 0x64, 0x20, 0x72, 0x65, 0x69, 0x6E,
+ 0x20, 0x7A, 0x75, 0x66, 0x8E, 0x6C, 0x6C, 0x69,
+ 0x67, 0x2E, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x05,
+ 0x4D, 0x61, 0x78, 0x54, 0x72, 0x61, 0x78, 0xE2,
+ 0x20, 0x6D, 0x75, 0x73, 0x69, 0x63, 0x20, 0x73,
+ 0x6F, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x0D,
+ 0x05, 0x20, 0xE3, 0x20, 0x31, 0x39, 0x39, 0x32,
+ 0x20, 0x53, 0x79, 0x6C, 0x76, 0x61, 0x6E, 0x20,
+ 0x54, 0x65, 0x63, 0x68, 0x6E, 0x69, 0x63, 0x61,
+ 0x6C, 0x20, 0x41, 0x72, 0x74, 0x73, 0x0D, 0x05,
+ 0x4C, 0x69, 0x63, 0x65, 0x6E, 0x73, 0x65, 0x64,
+ 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20,
+ 0x44, 0x72, 0x65, 0x61, 0x6D, 0x65, 0x72, 0x73,
+ 0x20, 0x47, 0x75, 0x69, 0x6C, 0x64, 0x2C, 0x20,
+ 0x49, 0x6E, 0x63, 0x2E, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x05, 0x43, 0x6F, 0x70, 0x79, 0x72,
+ 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x63, 0x29,
+ 0x20, 0x31, 0x39, 0x39, 0x32, 0x2C, 0x20, 0x57,
+ 0x65, 0x73, 0x74, 0x77, 0x6F, 0x6F, 0x64, 0x20,
+ 0x53, 0x74, 0x75, 0x64, 0x69, 0x6F, 0x73, 0x2C,
+ 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x0D, 0x05, 0x41,
+ 0x6C, 0x6C, 0x65, 0x20, 0x52, 0x65, 0x63, 0x68,
+ 0x74, 0x65, 0x20, 0x56, 0x6F, 0x72, 0x62, 0x65,
+ 0x68, 0x61, 0x6C, 0x74, 0x65, 0x6E, 0x2E, 0x0D,
+ 0x0D, 0x0D, 0x0D
+};
+
+static const ByteProvider k1CreditsStringsAmigaGermanProvider = { ARRAYSIZE(k1CreditsStringsAmigaGerman), k1CreditsStringsAmigaGerman };
+
diff --git a/devtools/create_kyradat/resources/lok_dos.h b/devtools/create_kyradat/resources/lok_dos.h
new file mode 100644
index 0000000000..e8d987fe1b
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos.h
@@ -0,0 +1,1925 @@
+static const byte k1KallakWritingSeqDOS[2037] = {
+ 0x00, 0x00, 0x01, 0x0E, 0x1A, 0x1B, 0x17, 0x00,
+ 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C,
+ 0x00, 0x19, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x95, 0x00, 0x20, 0x09, 0x14,
+ 0x0F, 0x2E, 0x02, 0x00, 0x01, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x10, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x63, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x15, 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x19, 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00,
+ 0x16, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x2F,
+ 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x02, 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x05, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x8A, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x10, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x63, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x15, 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x19, 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00,
+ 0x16, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x30,
+ 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x02, 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x04, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x05, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x88, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x08, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x82, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x09, 0x00, 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0B, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x79, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x76, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x70, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x11, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x65, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x13, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x14, 0x00, 0x00, 0x10, 0x05, 0x00, 0x63, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x15, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x65, 0x00, 0x1F, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x16, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x17, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x70, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x18, 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00,
+ 0x17, 0x07, 0x06, 0x00, 0x02, 0x00, 0x19, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00, 0x16, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x17, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x88, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x93, 0x00, 0x1F, 0x07,
+ 0x06, 0x00, 0x1C, 0x06, 0x3C, 0x00, 0x1B, 0x0F,
+ 0x31, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x95, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x10, 0x05, 0x00, 0x95,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x01,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x05,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x06,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x07, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x08, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0D,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x6A, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x06, 0x3C, 0x00,
+ 0x02, 0x00, 0x1E, 0x00, 0x00, 0x10, 0x08, 0x12,
+ 0x06, 0x1E, 0x00, 0x0A, 0x01, 0x02, 0x00, 0x1F,
+ 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02, 0x00,
+ 0x20, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02,
+ 0x00, 0x21, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00,
+ 0x02, 0x00, 0x22, 0x00, 0x00, 0x10, 0x07, 0x0A,
+ 0x00, 0x0B, 0x01, 0x02, 0x00, 0x18, 0x1F, 0x06,
+ 0x0A, 0x00, 0x02, 0x00, 0x23, 0x00, 0x00, 0x10,
+ 0x07, 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x24,
+ 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x02, 0x00,
+ 0x25, 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x18,
+ 0x1F, 0x02, 0x00, 0x26, 0x00, 0x00, 0x10, 0x07,
+ 0x14, 0x00, 0x02, 0x00, 0x27, 0x00, 0x00, 0x10,
+ 0x07, 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x28,
+ 0x00, 0x00, 0x10, 0x08, 0x06, 0x3C, 0x00, 0x18,
+ 0x1E, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18,
+ 0x1E, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x13, 0x1C, 0x19, 0x01, 0x06,
+ 0x3C, 0x00, 0x01, 0x00, 0x1D
+};
+
+static const ByteProvider k1KallakWritingSeqDOSProvider = { ARRAYSIZE(k1KallakWritingSeqDOS), k1KallakWritingSeqDOS };
+
+static const byte k1MalcolmTreeSeqDOS[534] = {
+ 0x00, 0x01, 0x00, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C, 0x01,
+ 0x0D, 0x01, 0x09, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x10, 0x19, 0x03, 0x09, 0x18, 0x1E, 0x14, 0x18,
+ 0x1F, 0x0A, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x00, 0x1F, 0x00, 0x18, 0x19, 0x0A, 0x01,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x01, 0x0F,
+ 0x00, 0x18, 0x26, 0x10, 0x1F, 0x50, 0x00, 0x2D,
+ 0x05, 0x0A, 0x02, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x02, 0x10, 0x00, 0x11, 0x18, 0x1F, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x24,
+ 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18,
+ 0x1E, 0x0A, 0x03, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x03, 0x15, 0x00, 0x10, 0x16, 0x50, 0x00,
+ 0x2D, 0x05, 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x18, 0x1E, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18,
+ 0x1A, 0x18, 0x1E, 0x0A, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x05, 0x09, 0x00, 0x11, 0x0A,
+ 0x06, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x06,
+ 0x14, 0x00, 0x18, 0x1A, 0x18, 0x1F, 0x10, 0x17,
+ 0x50, 0x00, 0x2D, 0x05, 0x06, 0x3C, 0x00, 0x0A,
+ 0x07, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x07,
+ 0x06, 0x00, 0x18, 0x1E, 0x06, 0x1E, 0x00, 0x10,
+ 0x18, 0x50, 0x00, 0x2D, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0A, 0x08, 0x04, 0x01,
+ 0x06, 0x06, 0x00, 0x04, 0x01, 0x06, 0x06, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x08, 0x01, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x06, 0x78, 0x00, 0x0A, 0x09,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x09, 0x04,
+ 0x00, 0x18, 0x1B, 0x0A, 0x0A, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x0A, 0x09, 0x00, 0x06, 0x14,
+ 0x00, 0x10, 0x19, 0x50, 0x00, 0x2D, 0x05, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x0A, 0x0B, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x04, 0x01, 0x06, 0x06, 0x00, 0x04, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x0B, 0x01, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x10,
+ 0x1A, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x0C, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x0C, 0x12, 0x00,
+ 0x03, 0x01, 0x01, 0x01, 0x11, 0x15, 0x00, 0x02,
+ 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00,
+ 0x10, 0x10, 0x1C, 0x50, 0x00, 0x2D, 0x05, 0x06,
+ 0x3C, 0x00, 0x03, 0x02, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x11, 0x18, 0x1C, 0x0A, 0x0F, 0x03, 0x02,
+ 0x06, 0x06, 0x00, 0x0B, 0x0F, 0x0D, 0x00, 0x10,
+ 0x1D, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x10, 0x03,
+ 0x02, 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x03, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02,
+ 0x06, 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B, 0x10, 0x02,
+ 0x00, 0x10, 0x1E, 0x50, 0x00, 0x2D, 0x05, 0x0A,
+ 0x11, 0x03, 0x02, 0x06, 0x06, 0x00, 0x03, 0x02,
+ 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02, 0x06,
+ 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B,
+ 0x11, 0x02, 0x00, 0x06, 0xB4, 0x00, 0x13, 0x19,
+ 0x01, 0x01, 0x01, 0x01, 0x02, 0x1D
+};
+
+static const ByteProvider k1MalcolmTreeSeqDOSProvider = { ARRAYSIZE(k1MalcolmTreeSeqDOS), k1MalcolmTreeSeqDOS };
+
+static const byte k1WestwoodLogoSeqDOS[75] = {
+ 0x00, 0x03, 0x01, 0x1A, 0x02, 0x03, 0x00, 0x00,
+ 0x00, 0x00, 0x16, 0x01, 0x06, 0x06, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x14, 0x0A, 0x00, 0x03, 0x03,
+ 0x16, 0x01, 0x0B, 0x00, 0x08, 0x00, 0x06, 0x3C,
+ 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03, 0x03, 0x16,
+ 0x01, 0x0B, 0x01, 0x0B, 0x00, 0x06, 0x78, 0x00,
+ 0x18, 0x14, 0x02, 0x03, 0x0A, 0x00, 0x00, 0x00,
+ 0x16, 0x01, 0x06, 0x06, 0x00, 0x0A, 0x02, 0x04,
+ 0x03, 0x16, 0x01, 0x0B, 0x02, 0x09, 0x00, 0x13,
+ 0x01, 0x03, 0x1D
+};
+
+static const ByteProvider k1WestwoodLogoSeqDOSProvider = { ARRAYSIZE(k1WestwoodLogoSeqDOS), k1WestwoodLogoSeqDOS };
+
+static const byte k1KyrandiaLogoSeqDOS[92] = {
+ 0x15, 0x00, 0x02, 0x00, 0x06, 0x01, 0x1A, 0x02,
+ 0x06, 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06,
+ 0x06, 0x00, 0x18, 0x14, 0x16, 0x04, 0x0A, 0x00,
+ 0x03, 0x06, 0x16, 0x00, 0x0B, 0x00, 0x0B, 0x00,
+ 0x06, 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03,
+ 0x06, 0x16, 0x00, 0x0B, 0x01, 0x0F, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x02, 0x04, 0x06,
+ 0x16, 0x00, 0x0B, 0x02, 0x0F, 0x00, 0x02, 0x06,
+ 0x0D, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06, 0x06,
+ 0x00, 0x06, 0x78, 0x00, 0x18, 0x14, 0x0A, 0x02,
+ 0x04, 0x06, 0x16, 0x00, 0x0B, 0x02, 0x0C, 0x00,
+ 0x13, 0x01, 0x06, 0x1D
+};
+
+static const ByteProvider k1KyrandiaLogoSeqDOSProvider = { ARRAYSIZE(k1KyrandiaLogoSeqDOS), k1KyrandiaLogoSeqDOS };
+
+static const byte k1KallakMalcolmSeqDOS[619] = {
+ 0x00, 0x04, 0x01, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C, 0x03,
+ 0x0D, 0x00, 0x17, 0x00, 0x00, 0x88, 0x3F, 0x01,
+ 0xC7, 0x0C, 0x02, 0x19, 0x00, 0x02, 0x04, 0x00,
+ 0x10, 0x00, 0x3A, 0x09, 0x19, 0x00, 0x19, 0x05,
+ 0x14, 0x18, 0x23, 0x0A, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x00, 0x22, 0x00, 0x10, 0x02,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x01, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x01, 0x07, 0x00, 0x06,
+ 0x3C, 0x00, 0x10, 0x03, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x02, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x02, 0x17, 0x00, 0x06, 0x3C, 0x00, 0x10, 0x04,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x03, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x03, 0x0A, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x10, 0x05, 0xF0, 0x00, 0x3A, 0x0F, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x06, 0x3C, 0x00, 0x10, 0x06,
+ 0xF0, 0x00, 0x3A, 0x0F, 0x0A, 0x04, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x04, 0x12, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x06, 0x78,
+ 0x00, 0x10, 0x07, 0xF0, 0x00, 0x3A, 0x0F, 0x0A,
+ 0x05, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x05,
+ 0x11, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x10,
+ 0x08, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x06, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x06, 0x07, 0x00,
+ 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x10, 0x09, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x07, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x07, 0x0A, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x10, 0x0A, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x08, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x08, 0x10, 0x00, 0x06, 0x3C, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x0B, 0xF0, 0x00,
+ 0x3A, 0x0F, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x10, 0x0C, 0xF0, 0x00, 0x3A, 0x0F,
+ 0x0A, 0x09, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x09, 0x0E, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x0D, 0x50, 0x00,
+ 0x3A, 0x05, 0x0A, 0x0A, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x0A, 0x0E, 0x00, 0x06, 0x3C, 0x00,
+ 0x0A, 0x0B, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x0B, 0x02, 0x00, 0x18, 0x20, 0x0A, 0x0C, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0C, 0x06, 0x00,
+ 0x18, 0x21, 0x0A, 0x0D, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x0D, 0x0C, 0x00, 0x18, 0x22, 0x0A,
+ 0x0E, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0E,
+ 0x0B, 0x00, 0x10, 0x0E, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x0F, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x0F, 0x09, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x10, 0x0F, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x10, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x10, 0x09, 0x00, 0x06, 0x3C, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x10, 0x50, 0x00,
+ 0x3A, 0x05, 0x0A, 0x11, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x11, 0x0F, 0x00, 0x06, 0x3C, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x10, 0x11, 0x50,
+ 0x00, 0x3A, 0x05, 0x0A, 0x12, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x12, 0x14, 0x00, 0x06, 0x3C,
+ 0x00, 0x0A, 0x13, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x13, 0x06, 0x00, 0x18, 0x23, 0x0A, 0x13,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x13, 0x07,
+ 0x00, 0x11, 0x06, 0x3C, 0x00, 0x13, 0x19, 0x01,
+ 0x01, 0x04, 0x1D
+};
+
+static const ByteProvider k1KallakMalcolmSeqDOSProvider = { ARRAYSIZE(k1KallakMalcolmSeqDOS), k1KallakMalcolmSeqDOS };
+
+static const byte k1ForestSeqDOS[405] = {
+ 0x00, 0x05, 0x01, 0x00, 0x07, 0x01, 0x1A, 0x02,
+ 0x07, 0x00, 0x00, 0x00, 0x08, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x0A, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x0B, 0x00, 0x41, 0x00,
+ 0x18, 0x16, 0x03, 0x07, 0x02, 0x05, 0x01, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x02, 0x05, 0x03, 0x98, 0x00,
+ 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x02, 0x05, 0x01, 0x98, 0x00, 0x38,
+ 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x00, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0A, 0x05,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x05, 0x0E, 0x00, 0x18, 0x16, 0x03, 0x07, 0x02,
+ 0x05, 0x01, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x03, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x01,
+ 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x04, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x05, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x06, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09,
+ 0x00, 0x18, 0x25, 0x0A, 0x00, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x0A, 0x06, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B, 0x06, 0x0E,
+ 0x00, 0x18, 0x17, 0x0A, 0x01, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x01, 0x0D, 0x00, 0x18, 0x25, 0x0A, 0x07,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x07, 0x0E, 0x00, 0x18, 0x18, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x03, 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x06, 0x12, 0x00, 0x18,
+ 0x25, 0x0A, 0x02, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0B, 0x02,
+ 0x07, 0x00, 0x0A, 0x03, 0x03, 0x07, 0x16, 0x02,
+ 0x06, 0x09, 0x00, 0x0B, 0x03, 0x0F, 0x00, 0x13,
+ 0x01, 0x07, 0x01, 0x05, 0x1D
+};
+
+static const ByteProvider k1ForestSeqDOSProvider = { ARRAYSIZE(k1ForestSeqDOS), k1ForestSeqDOS };
+
+static const char *const k1IntroCPSStringsDOS[2] = {
+ "gemcut.cps",
+ "tree.cps"
+};
+
+static const StringListProvider k1IntroCPSStringsDOSProvider = { ARRAYSIZE(k1IntroCPSStringsDOS), k1IntroCPSStringsDOS };
+
+static const char *const k1IntroCOLStringsDOS[4] = {
+ "kallak.col",
+ "tree_exp.col",
+ "ww.col",
+ "mal-kal.col"
+};
+
+static const StringListProvider k1IntroCOLStringsDOSProvider = { ARRAYSIZE(k1IntroCOLStringsDOS), k1IntroCOLStringsDOS };
+
+static const char *const k1IntroWSAStringsDOS[11] = {
+ "kallak.wsa",
+ "tree1.wsa",
+ "tree2.wsa",
+ "westwood.wsa",
+ "mal-kal.wsa",
+ "destruct.wsa",
+ "kyrandia.wsa",
+ "shore.wsa",
+ "reunion.wsa",
+ "reuniont.wsa",
+ "latern.wsa"
+};
+
+static const StringListProvider k1IntroWSAStringsDOSProvider = { ARRAYSIZE(k1IntroWSAStringsDOS), k1IntroWSAStringsDOS };
+
+static const Room k1RoomListDOS[246] = {
+ { 30, 0xFFFF, 0xFFFF, 0x0001, 0xFFFF },
+ { 71, 0xFFFF, 0xFFFF, 0x0005, 0xFFFF },
+ { 44, 0xFFFF, 0x0003, 0xFFFF, 0xFFFF },
+ { 72, 0xFFFF, 0xFFFF, 0x000E, 0xFFFF },
+ { 48, 0xFFFF, 0x0005, 0xFFFF, 0x000E },
+ { 74, 0xFFFF, 0x000A, 0xFFFF, 0x0004 },
+ { 46, 0xFFFF, 0x000F, 0xFFFF, 0x000B },
+ { 75, 0xFFFF, 0x0009, 0xFFFF, 0x0018 },
+ { 13, 0xFFFF, 0x000C, 0xFFFF, 0x000A },
+ { 5, 0x000D, 0xFFFF, 0xFFFF, 0x0007 },
+ { 84, 0xFFFF, 0x0008, 0xFFFF, 0x0005 },
+ { 37, 0xFFFF, 0x0006, 0x000C, 0x0010 },
+ { 51, 0x000B, 0xFFFF, 0x000D, 0x0008 },
+ { 23, 0x000C, 0xFFFF, 0x0009, 0xFFFF },
+ { 25, 0x0003, 0x0004, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0x0006 },
+ { 86, 0xFFFF, 0x000B, 0xFFFF, 0xFFFF },
+ { 84, 0xFFFF, 0x0022, 0x0017, 0x0016 },
+ { 51, 0x0020, 0x0014, 0x0024, 0x0015 },
+ { 85, 0x0014, 0x0019, 0xFFFF, 0x0024 },
+ { 33, 0x001C, 0xFFFF, 0x0013, 0x0012 },
+ { 31, 0x0022, 0x0012, 0xFFFF, 0x0017 },
+ { 25, 0x001F, 0x0011, 0xFFFF, 0xFFFF },
+ { 25, 0x0011, 0x0015, 0xFFFF, 0xFFFF },
+ { 2, 0xFFFF, 0x0007, 0xFFFF, 0x001A },
+ { 82, 0xFFFF, 0x006D, 0xFFFF, 0x0013 },
+ { 77, 0xFFFF, 0x0018, 0x0021, 0xFFFF },
+ { 15, 0xFFFF, 0x001A, 0xFFFF, 0xFFFF },
+ { 16, 0xFFFF, 0xFFFF, 0x0014, 0x0020 },
+ { 19, 0xFFFF, 0x0021, 0xFFFF, 0x001F },
+ { 12, 0xFFFF, 0xFFFF, 0x0020, 0x0021 },
+ { 7, 0x0023, 0x001D, 0x0016, 0xFFFF },
+ { 20, 0x001E, 0x001C, 0x0012, 0x0022 },
+ { 17, 0x001A, 0x001E, 0x0022, 0x001D },
+ { 22, 0x0021, 0x0020, 0x0015, 0x0011 },
+ { 24, 0xFFFF, 0xFFFF, 0x001F, 0xFFFF },
+ { 32, 0x0012, 0x0013, 0xFFFF, 0xFFFF },
+ { 87, 0xFFFF, 0x0026, 0xFFFF, 0xFFFF },
+ { 8, 0xFFFF, 0x0027, 0xFFFF, 0x0025 },
+ { 88, 0xFFFF, 0x0035, 0x0037, 0x0026 },
+ { 35, 0xFFFF, 0x0036, 0x0038, 0xFFFF },
+ { 47, 0xFFFF, 0xFFFF, 0x003B, 0xFFFF },
+ { 28, 0x0035, 0x002B, 0x002F, 0x0037 },
+ { 36, 0xFFFF, 0x002C, 0xFFFF, 0x002A },
+ { 78, 0xFFFF, 0xFFFF, 0xFFFF, 0x002B },
+ { 10, 0xFFFF, 0xFFFF, 0xFFFF, 0x002C },
+ { 51, 0x0037, 0x002F, 0x0040, 0x003C },
+ { 38, 0x002A, 0x003D, 0x0041, 0x002E },
+ { 81, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 41, 0xFFFF, 0xFFFF, 0x0069, 0xFFFF },
+ { 50, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 49, 0xFFFF, 0xFFFF, 0x0054, 0xFFFF },
+ { 105, 0xFFFF, 0xFFFF, 0x002A, 0x0027 },
+ { 105, 0xFFFF, 0xFFFF, 0x0039, 0x0028 },
+ { 37, 0x0027, 0x002A, 0x002E, 0x0049 },
+ { 34, 0x0028, 0x0039, 0xFFFF, 0xFFFF },
+ { 51, 0x0036, 0x003A, 0xFFFF, 0x0038 },
+ { 84, 0xFFFF, 0x003B, 0xFFFF, 0x0039 },
+ { 1, 0x0029, 0xFFFF, 0x003E, 0x003A },
+ { 37, 0x0049, 0x002E, 0x003F, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0x002F },
+ { 34, 0x003B, 0x003F, 0xFFFF, 0xFFFF },
+ { 85, 0x003C, 0x0040, 0xFFFF, 0x003E },
+ { 106, 0x002E, 0x0041, 0xFFFF, 0x003F },
+ { 33, 0x002F, 0xFFFF, 0xFFFF, 0x0040 },
+ { 60, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 3, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 26, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 0, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 25, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 23, 0xFFFF, 0x0037, 0x003C, 0xFFFF },
+ { 6, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 51, 0x0063, 0x0067, 0x006B, 0x0066 },
+ { 66, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 67, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 62, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 65, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0x0056, 0x005A, 0x005E, 0xFFFF },
+ { 6, 0xFFFF, 0x0052, 0x0056, 0xFFFF },
+ { 4, 0xFFFF, 0x0053, 0x0057, 0x0051 },
+ { 3, 0xFFFF, 0x0054, 0xFFFF, 0x0052 },
+ { 37, 0x0034, 0x0055, 0x0058, 0x0053 },
+ { 11, 0xFFFF, 0xFFFF, 0x0059, 0x0054 },
+ { 37, 0x0051, 0x0057, 0x0050, 0xFFFF },
+ { 51, 0x0052, 0xFFFF, 0x005A, 0x0056 },
+ { 51, 0x0054, 0x0059, 0x005C, 0xFFFF },
+ { 1, 0x0055, 0xFFFF, 0x005D, 0x0058 },
+ { 106, 0x0057, 0x005B, 0xFFFF, 0x0050 },
+ { 85, 0xFFFF, 0x005C, 0xFFFF, 0x005A },
+ { 37, 0x0058, 0x005D, 0x005F, 0x005B },
+ { 33, 0x0059, 0xFFFF, 0xFFFF, 0x005C },
+ { 51, 0x0050, 0xFFFF, 0x0061, 0xFFFF },
+ { 51, 0x005C, 0xFFFF, 0x0064, 0xFFFF },
+ { 37, 0xFFFF, 0x0061, 0x0065, 0xFFFF },
+ { 51, 0x005E, 0x0062, 0xFFFF, 0x0060 },
+ { 84, 0xFFFF, 0x0063, 0x0066, 0x0061 },
+ { 84, 0xFFFF, 0x0064, 0x004B, 0x0062 },
+ { 33, 0x005F, 0xFFFF, 0x0067, 0x0063 },
+ { 51, 0x0060, 0xFFFF, 0x0068, 0xFFFF },
+ { 37, 0x0062, 0x004B, 0x006A, 0xFFFF },
+ { 1, 0x0064, 0xFFFF, 0x006C, 0x004B },
+ { 34, 0x0065, 0x0069, 0xFFFF, 0xFFFF },
+ { 51, 0x0031, 0x006A, 0xFFFF, 0x0068 },
+ { 85, 0x0066, 0x006B, 0xFFFF, 0x0069 },
+ { 106, 0x004B, 0x006C, 0xFFFF, 0x006A },
+ { 33, 0x0067, 0xFFFF, 0xFFFF, 0x006B },
+ { 55, 0x00C4, 0x00C5, 0xFFFF, 0x0019 },
+ { 52, 0xFFFF, 0x00C1, 0xFFFF, 0x0096 },
+ { 64, 0xFFFF, 0x00BF, 0xFFFF, 0x008C },
+ { 57, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 54, 0x00AF, 0xFFFF, 0x00B7, 0x00AC },
+ { 53, 0x0078, 0xFFFF, 0x0079, 0xFFFF },
+ { 29, 0xFFFF, 0x00BB, 0xFFFF, 0x00C5 },
+ { 69, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 76, 0x00C6, 0xFFFF, 0xFFFF, 0x00B1 },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x0025, 0x0072, 0xFFFF },
+ { 58, 0x0072, 0x007B, 0x00BB, 0xFFFF },
+ { 58, 0xFFFF, 0x007F, 0x007B, 0xFFFF },
+ { 59, 0x007A, 0xFFFF, 0x007C, 0x0079 },
+ { 58, 0x007B, 0x0081, 0x00BC, 0xFFFF },
+ { 58, 0x00BC, 0x0083, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x0085, 0x007F, 0xFFFF },
+ { 59, 0x007E, 0x0086, 0x0080, 0x007A },
+ { 58, 0x007F, 0x00BD, 0x0081, 0xFFFF },
+ { 59, 0x0080, 0x0087, 0x0082, 0x007C },
+ { 58, 0x0081, 0xFFFF, 0x0083, 0x00BC },
+ { 59, 0x0082, 0x0089, 0x0084, 0x007D },
+ { 58, 0x0083, 0x008A, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x008B, 0x0086, 0x007E },
+ { 58, 0x0085, 0x008C, 0x00BD, 0x007F },
+ { 58, 0x00BD, 0x008E, 0x0088, 0x0081 },
+ { 59, 0x0087, 0xFFFF, 0x0089, 0xFFFF },
+ { 58, 0x0088, 0x0090, 0x008A, 0x0083 },
+ { 59, 0x0089, 0x0091, 0xFFFF, 0x0084 },
+ { 58, 0xFFFF, 0x0092, 0x008C, 0x0085 },
+ { 59, 0x008B, 0x006F, 0x008D, 0x0086 },
+ { 58, 0x008C, 0x0093, 0x008E, 0x00BD },
+ { 59, 0x008D, 0xFFFF, 0xFFFF, 0x0087 },
+ { 58, 0xFFFF, 0x00BE, 0x0090, 0xFFFF },
+ { 59, 0x008F, 0x0095, 0x0091, 0x0089 },
+ { 58, 0x0090, 0x0096, 0xFFFF, 0x008A },
+ { 59, 0xFFFF, 0x0098, 0xFFFF, 0x008B },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0x008D },
+ { 58, 0xFFFF, 0x009A, 0x00BE, 0xFFFF },
+ { 58, 0x00BE, 0xFFFF, 0x0096, 0x0090 },
+ { 59, 0x0095, 0x006E, 0x0097, 0x0091 },
+ { 58, 0x0096, 0x009D, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x009E, 0x00BF, 0x0092 },
+ { 58, 0x00BF, 0x00A0, 0x009A, 0xFFFF },
+ { 59, 0x0099, 0xFFFF, 0x009B, 0x0094 },
+ { 58, 0x009A, 0xFFFF, 0x009C, 0xFFFF },
+ { 59, 0x009B, 0x00A2, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x00A3, 0xFFFF, 0x0097 },
+ { 59, 0xFFFF, 0xFFFF, 0x009F, 0x0098 },
+ { 58, 0x009E, 0x00A4, 0x00A0, 0x00BF },
+ { 59, 0x009F, 0x00A5, 0xFFFF, 0x0099 },
+ { 58, 0xFFFF, 0x00A6, 0x00C0, 0xFFFF },
+ { 58, 0x00C0, 0x00A8, 0xFFFF, 0x009C },
+ { 58, 0x00C1, 0xFFFF, 0xFFFF, 0x009D },
+ { 59, 0xFFFF, 0x00AA, 0x00A5, 0x009F },
+ { 58, 0x00A4, 0x00AB, 0x00A6, 0x00A0 },
+ { 59, 0x00A5, 0x00AC, 0x00A7, 0x00A1 },
+ { 58, 0x00A6, 0xFFFF, 0xFFFF, 0x00C0 },
+ { 59, 0xFFFF, 0x00AD, 0x00A9, 0x00A2 },
+ { 58, 0x00A8, 0x00AE, 0xFFFF, 0x00C1 },
+ { 58, 0xFFFF, 0xFFFF, 0x00AB, 0x00A4 },
+ { 59, 0x00AA, 0x00AF, 0x00AC, 0x00A5 },
+ { 58, 0x00AB, 0x0071, 0x00C2, 0x00A6 },
+ { 58, 0xFFFF, 0x00B0, 0x00AE, 0x00A8 },
+ { 59, 0x00AD, 0xFFFF, 0xFFFF, 0x00A9 },
+ { 58, 0xFFFF, 0x00C3, 0x0071, 0x00AB },
+ { 59, 0xFFFF, 0xFFFF, 0x00B1, 0x00AD },
+ { 58, 0x00B0, 0x0075, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0x00C3, 0xFFFF, 0x00B4, 0xFFFF },
+ { 59, 0x00B3, 0x00BA, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0x0071, 0xFFFF, 0xFFFF, 0x00C2 },
+ { 58, 0xFFFF, 0xFFFF, 0x00B9, 0xFFFF },
+ { 59, 0x00B8, 0xFFFF, 0xFFFF, 0x00C3 },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0x00B4 },
+ { 59, 0x0079, 0xFFFF, 0xFFFF, 0x0073 },
+ { 59, 0x007C, 0x0082, 0x007D, 0xFFFF },
+ { 59, 0x0086, 0x008D, 0x0087, 0x0080 },
+ { 59, 0x0094, 0xFFFF, 0x0095, 0x008F },
+ { 59, 0x0098, 0x009F, 0x0099, 0x006F },
+ { 59, 0x00A1, 0x00A7, 0x00A2, 0xFFFF },
+ { 59, 0xFFFF, 0x00A9, 0x00A3, 0x006E },
+ { 59, 0x00AC, 0x00B7, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x00B9, 0x00B3, 0x00AF },
+ { 59, 0xFFFF, 0xFFFF, 0x006D, 0xFFFF },
+ { 58, 0xFFFF, 0x0073, 0xFFFF, 0x006D },
+ { 59, 0xFFFF, 0xFFFF, 0x0075, 0xFFFF },
+ { 94, 0xFFFF, 0x00C8, 0xFFFF, 0xFFFF },
+ { 43, 0x00C9, 0x00CB, 0x00CA, 0x00C7 },
+ { 51, 0xFFFF, 0xFFFF, 0x00C8, 0xFFFF },
+ { 37, 0x00C8, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 79, 0xFFFF, 0xFFFF, 0xFFFF, 0x00C8 },
+ { 80, 0xFFFF, 0xFFFF, 0x00CB, 0x00CD },
+ { 97, 0x00E3, 0x00D4, 0x00CC, 0x00D3 },
+ { 103, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 100, 0xFFFF, 0x00CE, 0x00D5, 0xFFFF },
+ { 98, 0xFFFF, 0xFFFF, 0xFFFF, 0x00D7 },
+ { 101, 0xFFFF, 0x00D2, 0x00CE, 0xFFFF },
+ { 99, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 93, 0x00D5, 0x00CD, 0xFFFF, 0xFFFF },
+ { 93, 0x00D6, 0xFFFF, 0xFFFF, 0x00CD },
+ { 93, 0x00CF, 0x00CE, 0x00D3, 0xFFFF },
+ { 93, 0x00D7, 0xFFFF, 0x00D4, 0x00CE },
+ { 93, 0xFFFF, 0x00D0, 0x00D6, 0x00CE },
+ { 93, 0x00DA, 0x00E3, 0xFFFF, 0xFFFF },
+ { 93, 0x00DB, 0xFFFF, 0xFFFF, 0x00E3 },
+ { 93, 0xFFFF, 0x00E4, 0x00D8, 0x00E2 },
+ { 93, 0xFFFF, 0x00E1, 0x00D9, 0x00E4 },
+ { 93, 0xFFFF, 0x00E4, 0xFFFF, 0x00DF },
+ { 93, 0xFFFF, 0x00E0, 0xFFFF, 0x00E4 },
+ { 93, 0xFFFF, 0xFFFF, 0x00E4, 0xFFFF },
+ { 91, 0xFFFF, 0x00DC, 0xFFFF, 0xFFFF },
+ { 90, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DD },
+ { 92, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DB },
+ { 95, 0xFFFF, 0x00DA, 0xFFFF, 0xFFFF },
+ { 96, 0xFFFF, 0x00D9, 0x00CD, 0x00D8 },
+ { 89, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00E6, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00EA, 0x00E8, 0x00E5 },
+ { 102, 0xFFFF, 0x00E8, 0x00EB, 0xFFFF },
+ { 102, 0x00E6, 0xFFFF, 0xFFFF, 0x00E7 },
+ { 102, 0xFFFF, 0xFFFF, 0x00ED, 0xFFFF },
+ { 102, 0xFFFF, 0xFFFF, 0xFFFF, 0x00E6 },
+ { 102, 0x00E7, 0x00EC, 0x00EF, 0xFFFF },
+ { 102, 0xFFFF, 0x00ED, 0x00F0, 0x00EB },
+ { 102, 0x00E9, 0x00EE, 0x00F1, 0x00EC },
+ { 102, 0xFFFF, 0xFFFF, 0x00F2, 0x00ED },
+ { 102, 0x00EB, 0x00F0, 0xFFFF, 0xFFFF },
+ { 102, 0x00EC, 0x00F1, 0x00F3, 0x00EF },
+ { 102, 0x00ED, 0xFFFF, 0x00F4, 0x00F0 },
+ { 102, 0x00EE, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0x00F0, 0x00F4, 0xFFFF, 0xFFFF },
+ { 102, 0x00F1, 0x00F5, 0xFFFF, 0x00F3 },
+ { 102, 0xFFFF, 0xFFFF, 0x00CF, 0x00F4 }
+};
+
+static const RoomProvider k1RoomListDOSProvider = { ARRAYSIZE(k1RoomListDOS), k1RoomListDOS };
+
+static const char *const k1RoomFilenamesDOS[107] = {
+ "CLIFFB",
+ "XEDGEB",
+ "CAVEB",
+ "NCLIFF",
+ "NCLIFFB",
+ "CAVE",
+ "NWCLIFF",
+ "OAKS",
+ "PLATEAU",
+ "POTHUT",
+ "POTION",
+ "NWCLIFB",
+ "SONG",
+ "SORROW",
+ "SPELHUT",
+ "SPELL",
+ "SPRING",
+ "SQUARE",
+ "STUMP",
+ "TEMPLE",
+ "WELL",
+ "WILLOW",
+ "WISE",
+ "XEDGE",
+ "RUBY",
+ "ZROCK",
+ "ZROCKB",
+ "FORESTD",
+ "FOUNTN",
+ "GATECV",
+ "GEMCUT",
+ "CLIFF",
+ "DEAD",
+ "EDGE",
+ "EDGEB",
+ "FALLS",
+ "FORESTC",
+ "FORESTB",
+ "GLADE",
+ "GEMHUT",
+ "ALGAE",
+ "MIX",
+ "BRIDGE",
+ "GRAVE",
+ "HEALER",
+ "HEALHUT",
+ "ALTAR",
+ "BURN",
+ "SICKWIL",
+ "LAGOON",
+ "MAPLE",
+ "FORESTA",
+ "ARCH",
+ "CHASM",
+ "EMCAV",
+ "ENTER",
+ "FLOWERS",
+ "GEMSLOT",
+ "GEN_CAV",
+ "GENCAVB",
+ "GOLDEN",
+ "GOLDENB",
+ "ICE",
+ "MARKET",
+ "MOONCAV",
+ "MSHCAV",
+ "POOL",
+ "SEASONS",
+ "SHRINE",
+ "TREECAV",
+ "EXTGEM",
+ "GEM",
+ "EXTHEAL",
+ "BASE",
+ "TRUNK",
+ "BROKEN",
+ "LAVA",
+ "EXTSPEL",
+ "EXTPOT",
+ "CASTLE",
+ "CGATE",
+ "LEPHOLE",
+ "DRAGON",
+ "XEDGEC",
+ "FNORTH",
+ "FSOUTH",
+ "FGOWEST",
+ "PLTCAVE",
+ "BONKBG",
+ "BALCONY",
+ "DARMS",
+ "BRINS",
+ "ALCHEMY",
+ "GENHALL",
+ "LANDING",
+ "BELROOM",
+ "UPSTAIR",
+ "DNSTAIR",
+ "KITCHEN",
+ "KYRAGEM",
+ "LIBRARY",
+ "FOYER",
+ "CATACOM",
+ "GRTHALL",
+ "FESTSTH",
+ "FWSTSTH",
+ "FSOUTHB"
+};
+
+static const StringListProvider k1RoomFilenamesDOSProvider = { ARRAYSIZE(k1RoomFilenamesDOS), k1RoomFilenamesDOS };
+
+static const char *const k1CharacterImageFilenamesDOS[20] = {
+ "BRANDON.CPS",
+ "DAPHNE.CPS",
+ "MERITH.CPS",
+ "HERMAN.CPS",
+ "SMALL.CPS",
+ "MALCOM.CPS",
+ "DRINK.CPS",
+ "SHRINK.CPS",
+ "HEALBR1.CPS",
+ "HEALBR2.CPS",
+ "SNOW1A.CPS",
+ "SNOW2A.CPS",
+ "BRANWILL.CPS",
+ "FLUTE1.CPS",
+ "FLUTE2.CPS",
+ "POISON1.CPS",
+ "POISON2.CPS",
+ "TELEKIN.CPS",
+ "BRANSTON.CPS",
+ "POISON.CPS"
+};
+
+static const StringListProvider k1CharacterImageFilenamesDOSProvider = { ARRAYSIZE(k1CharacterImageFilenamesDOS), k1CharacterImageFilenamesDOS };
+
+static const Shape k1DefaultShapesDOS[166] = {
+ { 0, 0, 0, 3, 48, -12, -48 },
+ { 0, 3, 0, 3, 48, -12, -48 },
+ { 0, 6, 0, 3, 48, -12, -48 },
+ { 0, 9, 0, 3, 48, -12, -48 },
+ { 0, 12, 0, 3, 48, -12, -48 },
+ { 0, 15, 0, 3, 48, -12, -48 },
+ { 0, 18, 0, 3, 48, -12, -48 },
+ { 0, 21, 0, 3, 48, -12, -48 },
+ { 0, 24, 0, 3, 48, -12, -48 },
+ { 0, 27, 0, 3, 48, -12, -48 },
+ { 0, 0, 51, 2, 11, -2, -8 },
+ { 0, 2, 51, 2, 11, -2, -8 },
+ { 0, 4, 51, 2, 11, -2, -8 },
+ { 0, 6, 51, 2, 11, -2, -8 },
+ { 0, 8, 51, 2, 11, -2, -8 },
+ { 0, 10, 51, 2, 11, -2, -8 },
+ { 0, 12, 51, 2, 11, -2, -8 },
+ { 0, 14, 51, 2, 11, -2, -8 },
+ { 0, 16, 51, 2, 11, -2, -8 },
+ { 0, 18, 51, 2, 11, -2, -8 },
+ { 0, 20, 51, 2, 11, -2, -8 },
+ { 0, 22, 51, 2, 11, -2, -8 },
+ { 0, 0, 80, 3, 48, -12, -48 },
+ { 0, 3, 80, 3, 48, -12, -48 },
+ { 0, 6, 80, 3, 48, -12, -48 },
+ { 0, 9, 80, 3, 48, -12, -48 },
+ { 0, 12, 80, 3, 48, -12, -48 },
+ { 0, 15, 80, 3, 48, -12, -48 },
+ { 0, 0, 129, 3, 48, -12, -48 },
+ { 0, 3, 129, 3, 48, -12, -48 },
+ { 0, 6, 129, 3, 48, -12, -48 },
+ { 0, 9, 129, 3, 48, -12, -48 },
+ { 0, 12, 129, 3, 48, -12, -48 },
+ { 0, 15, 129, 3, 48, -12, -48 },
+ { 2, 0, 0, 3, 48, -12, -48 },
+ { 2, 3, 0, 3, 48, -12, -48 },
+ { 2, 6, 0, 3, 48, -12, -48 },
+ { 2, 9, 0, 3, 48, -12, -48 },
+ { 2, 12, 0, 3, 48, -12, -48 },
+ { 2, 15, 0, 3, 48, -12, -48 },
+ { 2, 18, 0, 3, 48, -12, -48 },
+ { 2, 21, 0, 3, 48, -12, -48 },
+ { 2, 24, 0, 3, 48, -12, -48 },
+ { 2, 27, 0, 3, 48, -12, -48 },
+ { 2, 30, 10, 3, 38, -16, -38 },
+ { 2, 27, 48, 4, 40, -8, -40 },
+ { 2, 0, 51, 2, 11, -4, 0 },
+ { 2, 2, 51, 2, 11, -4, 0 },
+ { 2, 4, 51, 2, 11, -4, 0 },
+ { 2, 6, 51, 2, 11, -4, 0 },
+ { 2, 8, 51, 2, 11, -4, 0 },
+ { 2, 10, 51, 2, 11, -4, 0 },
+ { 2, 12, 51, 2, 11, -4, 0 },
+ { 2, 14, 51, 2, 11, -4, 0 },
+ { 2, 16, 51, 2, 11, -4, 0 },
+ { 2, 18, 51, 2, 11, -4, 0 },
+ { 2, 20, 51, 2, 11, -4, 0 },
+ { 2, 22, 51, 2, 11, -4, 0 },
+ { 255, 0, 80, 3, 48, -12, -48 },
+ { 255, 3, 80, 3, 48, -12, -48 },
+ { 255, 6, 80, 3, 48, -12, -48 },
+ { 255, 9, 80, 3, 48, -12, -48 },
+ { 255, 12, 80, 3, 48, -12, -48 },
+ { 255, 15, 80, 3, 48, -12, -48 },
+ { 255, 0, 129, 3, 48, -12, -48 },
+ { 255, 3, 129, 3, 48, -12, -48 },
+ { 255, 6, 129, 3, 48, -12, -48 },
+ { 255, 9, 129, 3, 48, -12, -48 },
+ { 255, 12, 129, 3, 48, -12, -48 },
+ { 255, 15, 129, 3, 48, -12, -48 },
+ { 3, 0, 0, 3, 48, -12, -46 },
+ { 3, 3, 0, 3, 48, -12, -48 },
+ { 3, 6, 0, 3, 48, -12, -48 },
+ { 3, 9, 0, 3, 48, -12, -48 },
+ { 3, 12, 0, 3, 48, -12, -48 },
+ { 3, 15, 0, 3, 48, -12, -48 },
+ { 3, 18, 0, 3, 48, -12, -48 },
+ { 3, 21, 0, 3, 48, -12, -48 },
+ { 3, 24, 0, 3, 48, -12, -48 },
+ { 3, 27, 0, 3, 48, -12, -46 },
+ { 3, 30, 0, 3, 48, -14, -47 },
+ { 3, 39, 199, 1, 1, -12, -48 },
+ { 3, 0, 51, 2, 11, 0, -7 },
+ { 3, 2, 51, 2, 11, 0, -7 },
+ { 3, 4, 51, 2, 11, 0, -7 },
+ { 3, 6, 51, 2, 11, 0, -7 },
+ { 3, 8, 51, 2, 11, 0, -7 },
+ { 3, 10, 51, 2, 11, 0, -7 },
+ { 3, 12, 51, 2, 11, 0, -7 },
+ { 3, 14, 51, 2, 11, 0, -7 },
+ { 3, 16, 51, 2, 11, 0, -7 },
+ { 3, 18, 51, 2, 11, 0, -7 },
+ { 3, 20, 51, 2, 11, 0, -7 },
+ { 3, 22, 51, 2, 11, 0, -7 },
+ { 3, 0, 80, 3, 48, -12, -48 },
+ { 3, 3, 80, 3, 48, -12, -48 },
+ { 3, 6, 80, 3, 48, -12, -48 },
+ { 3, 9, 80, 3, 48, -12, -48 },
+ { 3, 12, 80, 3, 48, -12, -48 },
+ { 3, 15, 80, 3, 48, -12, -48 },
+ { 3, 0, 129, 3, 48, -12, -48 },
+ { 3, 3, 129, 3, 48, -12, -48 },
+ { 3, 6, 129, 3, 48, -12, -48 },
+ { 3, 9, 129, 3, 48, -12, -48 },
+ { 3, 12, 129, 3, 48, -12, -48 },
+ { 3, 15, 129, 3, 48, -12, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1DefaultShapesDOSProvider = { ARRAYSIZE(k1DefaultShapesDOS), k1DefaultShapesDOS };
+
+static const byte k1AmuleteAnimSeqDOS[42] = {
+ 0x00, 0x01, 0x02, 0x01, 0x03, 0x04, 0x03, 0x01,
+ 0x02, 0x03, 0x04, 0x05, 0x06, 0x05, 0x04, 0x05,
+ 0x07, 0x08, 0x07, 0x08, 0x09, 0x08, 0x09, 0x07,
+ 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
+ 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+ 0x16, 0xFF
+};
+
+static const ByteProvider k1AmuleteAnimSeqDOSProvider = { ARRAYSIZE(k1AmuleteAnimSeqDOS), k1AmuleteAnimSeqDOS };
+
+static const byte k1SpecialPalette1DOS[21] = {
+ 0x36, 0x25, 0x1C, 0x31, 0x21, 0x19, 0x2C, 0x1D,
+ 0x16, 0x27, 0x19, 0x13, 0x22, 0x16, 0x11, 0x1D,
+ 0x12, 0x0D, 0x18, 0x0F, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette1DOSProvider = { ARRAYSIZE(k1SpecialPalette1DOS), k1SpecialPalette1DOS };
+
+static const byte k1SpecialPalette2DOS[51] = {
+ 0x03, 0x03, 0x00, 0x37, 0x29, 0x1D, 0x33, 0x25,
+ 0x1A, 0x2D, 0x21, 0x17, 0x2A, 0x1D, 0x13, 0x26,
+ 0x19, 0x11, 0x22, 0x16, 0x0E, 0x1E, 0x12, 0x0C,
+ 0x1A, 0x0F, 0x0A, 0x16, 0x0C, 0x08, 0x12, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x2D, 0x1E, 0x13, 0x27,
+ 0x19, 0x0F, 0x22, 0x14, 0x0C, 0x1C, 0x11, 0x0A,
+ 0x17, 0x0C, 0x08
+};
+
+static const ByteProvider k1SpecialPalette2DOSProvider = { ARRAYSIZE(k1SpecialPalette2DOS), k1SpecialPalette2DOS };
+
+static const byte k1SpecialPalette3DOS[51] = {
+ 0x03, 0x03, 0x00, 0x25, 0x30, 0x1B, 0x24, 0x2C,
+ 0x18, 0x23, 0x29, 0x15, 0x22, 0x25, 0x12, 0x21,
+ 0x22, 0x11, 0x1F, 0x1D, 0x0D, 0x1B, 0x18, 0x0B,
+ 0x18, 0x13, 0x0A, 0x14, 0x0E, 0x08, 0x11, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x21, 0x22, 0x11, 0x1D,
+ 0x1C, 0x0C, 0x19, 0x15, 0x0A, 0x15, 0x0F, 0x08,
+ 0x11, 0x0A, 0x05
+};
+
+static const ByteProvider k1SpecialPalette3DOSProvider = { ARRAYSIZE(k1SpecialPalette3DOS), k1SpecialPalette3DOS };
+
+static const byte k1SpecialPalette4DOS[51] = {
+ 0x06, 0x03, 0x01, 0x33, 0x25, 0x0A, 0x2F, 0x21,
+ 0x0A, 0x2B, 0x1D, 0x08, 0x28, 0x1A, 0x08, 0x24,
+ 0x17, 0x06, 0x21, 0x22, 0x06, 0x1D, 0x11, 0x05,
+ 0x19, 0x0E, 0x05, 0x16, 0x0B, 0x03, 0x12, 0x0A,
+ 0x03, 0x0F, 0x08, 0x03, 0x28, 0x1A, 0x08, 0x22,
+ 0x15, 0x05, 0x1D, 0x11, 0x05, 0x17, 0x0C, 0x03,
+ 0x12, 0x0A, 0x03
+};
+
+static const ByteProvider k1SpecialPalette4DOSProvider = { ARRAYSIZE(k1SpecialPalette4DOS), k1SpecialPalette4DOS };
+
+static const byte k1SpecialPalette5DOS[51] = {
+ 0x03, 0x03, 0x00, 0x2A, 0x1D, 0x13, 0x27, 0x1A,
+ 0x11, 0x24, 0x18, 0x0F, 0x21, 0x15, 0x0D, 0x1E,
+ 0x13, 0x0C, 0x1C, 0x11, 0x0A, 0x19, 0x0F, 0x0A,
+ 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06, 0x11, 0x08,
+ 0x05, 0x0E, 0x08, 0x05, 0x1C, 0x11, 0x0A, 0x19,
+ 0x0E, 0x08, 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06,
+ 0x11, 0x08, 0x05
+};
+
+static const ByteProvider k1SpecialPalette5DOSProvider = { ARRAYSIZE(k1SpecialPalette5DOS), k1SpecialPalette5DOS };
+
+static const byte k1SpecialPalette6DOS[51] = {
+ 0x00, 0x08, 0x01, 0x00, 0x1E, 0x00, 0x00, 0x1B,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x17, 0x00, 0x00,
+ 0x14, 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x0A,
+ 0x00, 0x00, 0x08, 0x00, 0x13, 0x21, 0x0F, 0x11,
+ 0x1F, 0x0D, 0x0E, 0x1D, 0x0C, 0x0C, 0x1B, 0x0B,
+ 0x0A, 0x19, 0x0A
+};
+
+static const ByteProvider k1SpecialPalette6DOSProvider = { ARRAYSIZE(k1SpecialPalette6DOS), k1SpecialPalette6DOS };
+
+static const byte k1SpecialPalette7DOS[54] = {
+ 0x05, 0x2B, 0x00, 0x00, 0x22, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x16, 0x01, 0x00, 0x12, 0x03, 0x00,
+ 0x0F, 0x01, 0x00, 0x0B, 0x03, 0x0A, 0x19, 0x0A,
+ 0x2D, 0x2D, 0x32, 0x29, 0x29, 0x2D, 0x25, 0x25,
+ 0x2B, 0x1F, 0x1F, 0x26, 0x1B, 0x1B, 0x22, 0x14,
+ 0x16, 0x1D, 0x11, 0x11, 0x18, 0x0D, 0x0D, 0x14,
+ 0x0A, 0x0A, 0x0F, 0x06, 0x06, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette7DOSProvider = { ARRAYSIZE(k1SpecialPalette7DOS), k1SpecialPalette7DOS };
+
+static const byte k1SpecialPalette8DOS[54] = {
+ 0x12, 0x37, 0x3F, 0x14, 0x31, 0x3F, 0x14, 0x29,
+ 0x3F, 0x14, 0x22, 0x3F, 0x14, 0x1B, 0x3F, 0x14,
+ 0x14, 0x3F, 0x0E, 0x0F, 0x37, 0x14, 0x29, 0x3F,
+ 0x2F, 0x3F, 0x3D, 0x26, 0x3F, 0x3F, 0x15, 0x3F,
+ 0x3F, 0x14, 0x3B, 0x3F, 0x12, 0x37, 0x3F, 0x14,
+ 0x31, 0x3F, 0x14, 0x29, 0x3F, 0x14, 0x22, 0x3F,
+ 0x14, 0x1B, 0x3F, 0x14, 0x14, 0x3F
+};
+
+static const ByteProvider k1SpecialPalette8DOSProvider = { ARRAYSIZE(k1SpecialPalette8DOS), k1SpecialPalette8DOS };
+
+static const byte k1SpecialPalette9DOS[45] = {
+ 0x36, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2F, 0x00,
+ 0x00, 0x2C, 0x00, 0x00, 0x29, 0x00, 0x00, 0x26,
+ 0x00, 0x00, 0x23, 0x00, 0x00, 0x20, 0x00, 0x00,
+ 0x1C, 0x00, 0x00, 0x19, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x0D,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette9DOSProvider = { ARRAYSIZE(k1SpecialPalette9DOS), k1SpecialPalette9DOS };
+
+static const byte k1SpecialPalette10DOS[45] = {
+ 0x29, 0x00, 0x00, 0x26, 0x00, 0x00, 0x24, 0x00,
+ 0x00, 0x22, 0x00, 0x00, 0x20, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x15, 0x00, 0x00, 0x12, 0x00,
+ 0x00, 0x11, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x0C,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette10DOSProvider = { ARRAYSIZE(k1SpecialPalette10DOS), k1SpecialPalette10DOS };
+
+static const byte k1SpecialPalette11DOS[45] = {
+ 0x20, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00,
+ 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00, 0x18,
+ 0x00, 0x00, 0x16, 0x00, 0x00, 0x15, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette11DOSProvider = { ARRAYSIZE(k1SpecialPalette11DOS), k1SpecialPalette11DOS };
+
+static const byte k1SpecialPalette12DOS[45] = {
+ 0x19, 0x00, 0x00, 0x18, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x15, 0x00, 0x00, 0x14, 0x00, 0x00, 0x13,
+ 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00, 0x00,
+ 0x11, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0E, 0x00,
+ 0x00, 0x0D, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette12DOSProvider = { ARRAYSIZE(k1SpecialPalette12DOS), k1SpecialPalette12DOS };
+
+static const byte k1SpecialPalette13DOS[45] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette13DOSProvider = { ARRAYSIZE(k1SpecialPalette13DOS), k1SpecialPalette13DOS };
+
+static const byte k1SpecialPalette14DOS[60] = {
+ 0x0E, 0x28, 0x3F, 0x0C, 0x24, 0x3B, 0x0A, 0x20,
+ 0x38, 0x0A, 0x1C, 0x34, 0x08, 0x19, 0x31, 0x08,
+ 0x15, 0x2D, 0x05, 0x13, 0x2A, 0x05, 0x11, 0x27,
+ 0x03, 0x0D, 0x24, 0x03, 0x0A, 0x20, 0x03, 0x08,
+ 0x1D, 0x01, 0x06, 0x19, 0x01, 0x05, 0x16, 0x00,
+ 0x03, 0x13, 0x00, 0x01, 0x0F, 0x00, 0x01, 0x0C,
+ 0x00, 0x00, 0x08, 0x00, 0x00, 0x05, 0x00, 0x00,
+ 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette14DOSProvider = { ARRAYSIZE(k1SpecialPalette14DOS), k1SpecialPalette14DOS };
+
+static const byte k1SpecialPalette15DOS[45] = {
+ 0x24, 0x00, 0x39, 0x21, 0x00, 0x36, 0x1F, 0x00,
+ 0x32, 0x1C, 0x00, 0x2D, 0x1A, 0x00, 0x2A, 0x17,
+ 0x00, 0x26, 0x15, 0x00, 0x22, 0x12, 0x00, 0x1E,
+ 0x11, 0x00, 0x1A, 0x0E, 0x00, 0x16, 0x0B, 0x00,
+ 0x12, 0x0A, 0x00, 0x0F, 0x06, 0x00, 0x0B, 0x05,
+ 0x00, 0x08, 0x01, 0x00, 0x03
+};
+
+static const ByteProvider k1SpecialPalette15DOSProvider = { ARRAYSIZE(k1SpecialPalette15DOS), k1SpecialPalette15DOS };
+
+static const byte k1SpecialPalette16DOS[33] = {
+ 0x00, 0x3F, 0x3F, 0x00, 0x38, 0x38, 0x00, 0x34,
+ 0x34, 0x00, 0x30, 0x30, 0x00, 0x2D, 0x2D, 0x00,
+ 0x29, 0x29, 0x00, 0x25, 0x25, 0x00, 0x1F, 0x1F,
+ 0x00, 0x1B, 0x1B, 0x00, 0x16, 0x16, 0x00, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette16DOSProvider = { ARRAYSIZE(k1SpecialPalette16DOS), k1SpecialPalette16DOS };
+
+static const byte k1SpecialPalette17DOS[33] = {
+ 0x3B, 0x3B, 0x3B, 0x36, 0x36, 0x36, 0x32, 0x32,
+ 0x32, 0x2D, 0x2D, 0x2D, 0x2A, 0x2A, 0x2A, 0x26,
+ 0x26, 0x26, 0x21, 0x21, 0x21, 0x1D, 0x1D, 0x1D,
+ 0x19, 0x19, 0x19, 0x15, 0x15, 0x15, 0x11, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette17DOSProvider = { ARRAYSIZE(k1SpecialPalette17DOS), k1SpecialPalette17DOS };
+
+static const byte k1SpecialPalette18DOS[21] = {
+ 0x0F, 0x23, 0x1C, 0x2A, 0x36, 0x3F, 0x24, 0x2F,
+ 0x38, 0x1F, 0x2A, 0x32, 0x1A, 0x24, 0x2B, 0x15,
+ 0x1E, 0x25, 0x11, 0x19, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette18DOSProvider = { ARRAYSIZE(k1SpecialPalette18DOS), k1SpecialPalette18DOS };
+
+static const byte k1SpecialPalette19DOS[21] = {
+ 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00,
+ 0x38, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00,
+ 0x00, 0x25, 0x00, 0x00, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette19DOSProvider = { ARRAYSIZE(k1SpecialPalette19DOS), k1SpecialPalette19DOS };
+
+static const byte k1SpecialPalette20DOS[21] = {
+ 0x26, 0x1B, 0x1B, 0x3F, 0x34, 0x34, 0x3B, 0x2F,
+ 0x2F, 0x39, 0x2B, 0x2B, 0x36, 0x26, 0x27, 0x33,
+ 0x22, 0x23, 0x31, 0x1F, 0x20
+};
+
+static const ByteProvider k1SpecialPalette20DOSProvider = { ARRAYSIZE(k1SpecialPalette20DOS), k1SpecialPalette20DOS };
+
+static const byte k1SpecialPalette21DOS[21] = {
+ 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x38, 0x00,
+ 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x25,
+ 0x00, 0x00, 0x1F, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette21DOSProvider = { ARRAYSIZE(k1SpecialPalette21DOS), k1SpecialPalette21DOS };
+
+static const byte k1SpecialPalette22DOS[21] = {
+ 0x1F, 0x1F, 0x0C, 0x3F, 0x3F, 0x21, 0x3B, 0x3B,
+ 0x1F, 0x37, 0x37, 0x1D, 0x34, 0x34, 0x1B, 0x30,
+ 0x30, 0x19, 0x2D, 0x2D, 0x17
+};
+
+static const ByteProvider k1SpecialPalette22DOSProvider = { ARRAYSIZE(k1SpecialPalette22DOS), k1SpecialPalette22DOS };
+
+static const byte k1SpecialPalette23DOS[21] = {
+ 0x1F, 0x1F, 0x00, 0x3F, 0x3F, 0x00, 0x3B, 0x3B,
+ 0x00, 0x37, 0x37, 0x00, 0x34, 0x34, 0x00, 0x30,
+ 0x30, 0x00, 0x2D, 0x2D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette23DOSProvider = { ARRAYSIZE(k1SpecialPalette23DOS), k1SpecialPalette23DOS };
+
+static const byte k1SpecialPalette24DOS[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D,
+ 0x0D, 0x1B, 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18,
+ 0x0A, 0x08, 0x17, 0x08, 0x08, 0x16, 0x08, 0x08,
+ 0x15, 0x06, 0x06, 0x14, 0x06, 0x06, 0x11, 0x06
+};
+
+static const ByteProvider k1SpecialPalette24DOSProvider = { ARRAYSIZE(k1SpecialPalette24DOS), k1SpecialPalette24DOS };
+
+static const byte k1SpecialPalette25DOS[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x36, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D, 0x1B,
+ 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18, 0x0A, 0x0A,
+ 0x18, 0x0A, 0x0A, 0x18, 0x0A, 0x06, 0x14, 0x06
+};
+
+static const ByteProvider k1SpecialPalette25DOSProvider = { ARRAYSIZE(k1SpecialPalette25DOS), k1SpecialPalette25DOS };
+
+static const byte k1SpecialPalette26DOS[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x11,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0A,
+ 0x19, 0x0A, 0x0A, 0x19, 0x0A, 0x06, 0x13, 0x06
+};
+
+static const ByteProvider k1SpecialPalette26DOSProvider = { ARRAYSIZE(k1SpecialPalette26DOS), k1SpecialPalette26DOS };
+
+static const byte k1SpecialPalette27DOS[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x19, 0x0C, 0x0D, 0x19, 0x0C, 0x08, 0x16, 0x08
+};
+
+static const ByteProvider k1SpecialPalette27DOSProvider = { ARRAYSIZE(k1SpecialPalette27DOS), k1SpecialPalette27DOS };
+
+static const byte k1SpecialPalette28DOS[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x1B, 0x0C, 0x0D, 0x1B, 0x0C, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette28DOSProvider = { ARRAYSIZE(k1SpecialPalette28DOS), k1SpecialPalette28DOS };
+
+static const byte k1SpecialPalette29DOS[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E,
+ 0x1D, 0x0D, 0x0E, 0x1D, 0x0D, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette29DOSProvider = { ARRAYSIZE(k1SpecialPalette29DOS), k1SpecialPalette29DOS };
+
+static const byte k1SpecialPalette30DOS[60] = {
+ 0x1E, 0x1D, 0x3F, 0x1A, 0x19, 0x3F, 0x14, 0x12,
+ 0x3B, 0x12, 0x11, 0x37, 0x11, 0x11, 0x33, 0x0F,
+ 0x0E, 0x2F, 0x0E, 0x0D, 0x2C, 0x0D, 0x0C, 0x28,
+ 0x0B, 0x0B, 0x24, 0x0A, 0x0A, 0x20, 0x0A, 0x0A,
+ 0x1D, 0x05, 0x05, 0x18, 0x03, 0x03, 0x13, 0x01,
+ 0x01, 0x11, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x05,
+ 0x00, 0x0A, 0x1A, 0x00, 0x0F, 0x13, 0x00, 0x14,
+ 0x11, 0x0F, 0x0D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette30DOSProvider = { ARRAYSIZE(k1SpecialPalette30DOS), k1SpecialPalette30DOS };
+
+static const byte k1SpecialPalette31DOS[39] = {
+ 0x2B, 0x19, 0x34, 0x27, 0x17, 0x30, 0x23, 0x14,
+ 0x2C, 0x20, 0x12, 0x27, 0x1C, 0x11, 0x23, 0x18,
+ 0x0E, 0x1E, 0x15, 0x0C, 0x1A, 0x11, 0x0A, 0x15,
+ 0x0E, 0x08, 0x11, 0x0A, 0x05, 0x0C, 0x06, 0x03,
+ 0x08, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette31DOSProvider = { ARRAYSIZE(k1SpecialPalette31DOS), k1SpecialPalette31DOS };
+
+static const byte k1SpecialPalette32DOS[39] = {
+ 0x12, 0x12, 0x16, 0x11, 0x11, 0x14, 0x0F, 0x0F,
+ 0x12, 0x0D, 0x0D, 0x11, 0x0B, 0x0B, 0x0E, 0x0A,
+ 0x0A, 0x0C, 0x08, 0x08, 0x0A, 0x08, 0x08, 0x08,
+ 0x05, 0x05, 0x06, 0x05, 0x05, 0x05, 0x03, 0x03,
+ 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette32DOSProvider = { ARRAYSIZE(k1SpecialPalette32DOS), k1SpecialPalette32DOS };
+
+static const byte k1SpecialPalette33DOS[60] = {
+ 0x3F, 0x3D, 0x2F, 0x3F, 0x3D, 0x29, 0x3F, 0x3D,
+ 0x23, 0x3F, 0x3D, 0x1D, 0x3F, 0x3B, 0x17, 0x3F,
+ 0x3B, 0x11, 0x3F, 0x3B, 0x0B, 0x3F, 0x3B, 0x05,
+ 0x3F, 0x3B, 0x00, 0x3D, 0x38, 0x00, 0x3B, 0x34,
+ 0x00, 0x39, 0x33, 0x00, 0x39, 0x30, 0x00, 0x37,
+ 0x2D, 0x00, 0x36, 0x2B, 0x00, 0x34, 0x28, 0x00,
+ 0x33, 0x26, 0x00, 0x32, 0x24, 0x00, 0x30, 0x22,
+ 0x00, 0x2F, 0x20, 0x00
+};
+
+static const ByteProvider k1SpecialPalette33DOSProvider = { ARRAYSIZE(k1SpecialPalette33DOS), k1SpecialPalette33DOS };
+
+static const Shape k1Healing1ShapesDOS[22] = {
+ { 8, 0, 0, 3, 48, -12, -48 },
+ { 8, 3, 0, 3, 48, -12, -48 },
+ { 8, 6, 0, 3, 48, -12, -48 },
+ { 8, 9, 0, 3, 48, -12, -48 },
+ { 8, 12, 0, 3, 48, -12, -48 },
+ { 8, 15, 0, 3, 48, -12, -48 },
+ { 8, 18, 0, 3, 48, -12, -48 },
+ { 8, 21, 0, 3, 48, -12, -48 },
+ { 8, 24, 0, 3, 48, -12, -48 },
+ { 8, 27, 0, 3, 48, -12, -48 },
+ { 8, 30, 0, 3, 48, -12, -48 },
+ { 8, 33, 0, 3, 48, -12, -48 },
+ { 8, 0, 48, 3, 48, -12, -48 },
+ { 8, 3, 48, 3, 48, -12, -48 },
+ { 8, 6, 48, 3, 48, -12, -48 },
+ { 8, 9, 48, 3, 48, -12, -48 },
+ { 8, 12, 48, 3, 48, -12, -48 },
+ { 8, 15, 48, 3, 48, -12, -48 },
+ { 8, 18, 48, 3, 48, -12, -48 },
+ { 8, 21, 48, 3, 48, -12, -48 },
+ { 8, 24, 48, 3, 48, -12, -48 },
+ { 8, 27, 48, 3, 48, -12, -48 }
+};
+
+static const ShapeProvider k1Healing1ShapesDOSProvider = { ARRAYSIZE(k1Healing1ShapesDOS), k1Healing1ShapesDOS };
+
+static const Shape k1Healing2ShapesDOS[30] = {
+ { 9, 0, 0, 3, 48, -11, -48 },
+ { 9, 3, 0, 3, 48, -11, -48 },
+ { 9, 6, 0, 3, 48, -11, -48 },
+ { 9, 9, 0, 3, 48, -11, -48 },
+ { 9, 12, 0, 3, 48, -11, -48 },
+ { 9, 15, 0, 3, 48, -11, -48 },
+ { 9, 18, 0, 3, 48, -11, -48 },
+ { 9, 21, 0, 3, 48, -11, -48 },
+ { 9, 24, 0, 3, 48, -11, -48 },
+ { 9, 27, 0, 3, 48, -11, -48 },
+ { 9, 30, 0, 3, 48, -11, -48 },
+ { 9, 33, 0, 3, 48, -11, -48 },
+ { 9, 0, 48, 3, 48, -11, -48 },
+ { 9, 3, 48, 3, 48, -11, -48 },
+ { 9, 6, 48, 3, 48, -11, -48 },
+ { 9, 9, 48, 3, 48, -11, -48 },
+ { 9, 12, 48, 3, 48, -11, -48 },
+ { 9, 15, 48, 3, 48, -11, -48 },
+ { 9, 18, 48, 3, 48, -11, -48 },
+ { 9, 21, 48, 3, 48, -11, -48 },
+ { 9, 24, 48, 3, 48, -11, -48 },
+ { 9, 27, 48, 3, 48, -11, -48 },
+ { 9, 30, 48, 3, 48, -11, -48 },
+ { 9, 33, 48, 3, 48, -11, -48 },
+ { 9, 0, 96, 3, 48, -11, -48 },
+ { 9, 3, 96, 3, 48, -11, -48 },
+ { 9, 6, 96, 3, 48, -11, -48 },
+ { 9, 9, 96, 3, 48, -11, -48 },
+ { 9, 12, 96, 3, 48, -11, -48 },
+ { 9, 15, 96, 3, 48, -11, -48 }
+};
+
+static const ShapeProvider k1Healing2ShapesDOSProvider = { ARRAYSIZE(k1Healing2ShapesDOS), k1Healing2ShapesDOS };
+
+static const Shape k1PoisonDeathShapesDOS[20] = {
+ { 19, 0, 0, 8, 48, -31, -48 },
+ { 19, 8, 0, 8, 48, -31, -48 },
+ { 19, 16, 0, 8, 48, -31, -48 },
+ { 19, 24, 0, 8, 48, -31, -48 },
+ { 19, 32, 0, 8, 48, -31, -48 },
+ { 19, 0, 48, 8, 48, -31, -48 },
+ { 19, 8, 48, 8, 48, -31, -48 },
+ { 19, 16, 48, 8, 48, -31, -48 },
+ { 19, 24, 48, 8, 48, -31, -48 },
+ { 19, 32, 48, 8, 48, -31, -48 },
+ { 19, 0, 96, 8, 48, -31, -48 },
+ { 19, 8, 96, 8, 48, -31, -48 },
+ { 19, 16, 96, 8, 48, -31, -48 },
+ { 19, 24, 96, 8, 48, -31, -48 },
+ { 19, 32, 96, 8, 48, -31, -48 },
+ { 19, 0, 144, 8, 48, -31, -48 },
+ { 19, 8, 144, 8, 48, -31, -48 },
+ { 19, 16, 144, 8, 48, -31, -48 },
+ { 19, 24, 144, 8, 48, -31, -48 },
+ { 19, 32, 144, 8, 48, -31, -48 }
+};
+
+static const ShapeProvider k1PoisonDeathShapesDOSProvider = { ARRAYSIZE(k1PoisonDeathShapesDOS), k1PoisonDeathShapesDOS };
+
+static const Shape k1FluteShapesDOS[36] = {
+ { 13, 0, 0, 3, 75, -12, -75 },
+ { 13, 3, 0, 3, 75, -12, -75 },
+ { 13, 6, 0, 3, 75, -12, -75 },
+ { 13, 9, 0, 3, 75, -12, -75 },
+ { 13, 12, 0, 3, 75, -12, -75 },
+ { 13, 15, 0, 3, 75, -12, -75 },
+ { 13, 18, 0, 3, 75, -12, -75 },
+ { 13, 21, 0, 3, 75, -12, -75 },
+ { 13, 24, 0, 3, 75, -12, -75 },
+ { 13, 27, 0, 3, 75, -12, -75 },
+ { 13, 30, 0, 3, 75, -12, -75 },
+ { 13, 33, 0, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 13, 0, 75, 3, 75, -12, -75 },
+ { 13, 3, 75, 3, 75, -12, -75 },
+ { 13, 6, 75, 3, 75, -12, -75 },
+ { 13, 9, 75, 3, 75, -12, -75 },
+ { 13, 12, 75, 3, 75, -12, -75 },
+ { 13, 15, 75, 3, 75, -12, -75 },
+ { 13, 18, 75, 3, 75, -12, -75 },
+ { 13, 21, 75, 3, 75, -12, -75 },
+ { 13, 24, 75, 3, 75, -12, -75 },
+ { 13, 27, 75, 3, 75, -12, -75 },
+ { 13, 30, 75, 3, 75, -12, -75 },
+ { 13, 33, 75, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 14, 0, 0, 3, 75, -12, -75 },
+ { 14, 3, 0, 3, 75, -12, -75 },
+ { 14, 6, 0, 3, 75, -12, -75 },
+ { 14, 9, 0, 3, 75, -12, -75 },
+ { 14, 12, 0, 3, 75, -12, -75 },
+ { 14, 15, 0, 3, 75, -12, -75 },
+ { 14, 18, 0, 3, 75, -12, -75 },
+ { 14, 21, 0, 3, 75, -12, -75 },
+ { 14, 24, 0, 3, 75, -12, -75 },
+ { 14, 27, 0, 3, 75, -12, -75 }
+};
+
+static const ShapeProvider k1FluteShapesDOSProvider = { ARRAYSIZE(k1FluteShapesDOS), k1FluteShapesDOS };
+
+static const Shape k1Winter1ShapesDOS[7] = {
+ { 10, 5, 0, 5, 66, -20, -65 },
+ { 10, 10, 0, 5, 66, -20, -65 },
+ { 10, 15, 0, 5, 66, -20, -65 },
+ { 10, 20, 0, 5, 66, -20, -65 },
+ { 10, 25, 0, 5, 66, -20, -65 },
+ { 10, 30, 0, 5, 66, -20, -65 },
+ { 10, 35, 0, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter1ShapesDOSProvider = { ARRAYSIZE(k1Winter1ShapesDOS), k1Winter1ShapesDOS };
+
+static const Shape k1Winter2ShapesDOS[35] = {
+ { 10, 0, 66, 5, 66, -20, -65 },
+ { 10, 5, 66, 5, 66, -20, -65 },
+ { 10, 10, 66, 5, 66, -20, -65 },
+ { 10, 15, 66, 5, 66, -20, -65 },
+ { 10, 20, 66, 5, 66, -20, -65 },
+ { 10, 25, 66, 5, 66, -20, -65 },
+ { 10, 30, 66, 5, 66, -20, -65 },
+ { 10, 35, 66, 5, 66, -20, -65 },
+ { 10, 0, 132, 5, 66, -20, -65 },
+ { 10, 5, 132, 5, 66, -20, -65 },
+ { 10, 10, 132, 5, 66, -20, -65 },
+ { 10, 15, 132, 5, 66, -20, -65 },
+ { 10, 20, 132, 5, 66, -20, -65 },
+ { 10, 25, 132, 5, 66, -20, -65 },
+ { 10, 30, 132, 5, 66, -20, -65 },
+ { 10, 35, 132, 5, 66, -20, -65 },
+ { 11, 0, 0, 5, 66, -20, -65 },
+ { 11, 5, 0, 5, 66, -20, -65 },
+ { 11, 10, 0, 5, 66, -20, -65 },
+ { 11, 15, 0, 5, 66, -20, -65 },
+ { 11, 20, 0, 5, 66, -20, -65 },
+ { 11, 25, 0, 5, 66, -20, -65 },
+ { 11, 30, 0, 5, 66, -20, -65 },
+ { 11, 35, 0, 5, 66, -20, -65 },
+ { 11, 0, 66, 5, 66, -20, -65 },
+ { 11, 5, 66, 5, 66, -20, -65 },
+ { 11, 10, 66, 5, 66, -20, -65 },
+ { 11, 15, 66, 5, 66, -20, -65 },
+ { 11, 20, 66, 5, 66, -20, -65 },
+ { 11, 25, 66, 5, 66, -20, -65 },
+ { 11, 30, 66, 5, 66, -20, -65 },
+ { 11, 35, 66, 5, 66, -20, -65 },
+ { 11, 0, 132, 5, 66, -20, -65 },
+ { 11, 5, 132, 5, 66, -20, -65 },
+ { 11, 10, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter2ShapesDOSProvider = { ARRAYSIZE(k1Winter2ShapesDOS), k1Winter2ShapesDOS };
+
+static const Shape k1Winter3ShapesDOS[4] = {
+ { 11, 15, 132, 5, 66, -20, -65 },
+ { 11, 20, 132, 5, 66, -20, -65 },
+ { 11, 25, 132, 5, 66, -20, -65 },
+ { 11, 30, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter3ShapesDOSProvider = { ARRAYSIZE(k1Winter3ShapesDOS), k1Winter3ShapesDOS };
+
+static const Shape k1DrinkShapesDOS[15] = {
+ { 6, 0, 0, 4, 48, -20, -48 },
+ { 6, 4, 0, 4, 48, -20, -48 },
+ { 6, 8, 0, 4, 48, -20, -48 },
+ { 6, 12, 0, 4, 48, -20, -48 },
+ { 6, 16, 0, 4, 48, -20, -48 },
+ { 6, 20, 0, 5, 48, -20, -48 },
+ { 6, 0, 48, 5, 54, -20, -54 },
+ { 6, 5, 48, 5, 54, -20, -54 },
+ { 6, 10, 48, 5, 54, -20, -54 },
+ { 7, 0, 0, 3, 43, -12, -43 },
+ { 7, 3, 3, 2, 40, -8, -40 },
+ { 7, 5, 7, 2, 36, -8, -36 },
+ { 7, 7, 10, 2, 33, -8, -33 },
+ { 7, 9, 12, 2, 31, -8, -31 },
+ { 7, 11, 15, 2, 28, -8, -28 }
+};
+
+static const ShapeProvider k1DrinkShapesDOSProvider = { ARRAYSIZE(k1DrinkShapesDOS), k1DrinkShapesDOS };
+
+static const Shape k1WispShapesDOS[26] = {
+ { 12, 0, 0, 5, 48, -20, -48 },
+ { 12, 5, 0, 5, 48, -20, -48 },
+ { 12, 10, 0, 5, 48, -20, -48 },
+ { 12, 15, 0, 5, 48, -20, -48 },
+ { 12, 20, 0, 5, 48, -20, -48 },
+ { 12, 25, 0, 5, 48, -20, -48 },
+ { 12, 30, 0, 5, 48, -20, -48 },
+ { 12, 35, 0, 5, 48, -20, -48 },
+ { 12, 0, 48, 5, 48, -20, -48 },
+ { 12, 5, 48, 5, 48, -20, -48 },
+ { 12, 10, 48, 5, 48, -20, -48 },
+ { 12, 15, 48, 5, 48, -20, -48 },
+ { 12, 20, 48, 5, 48, -20, -48 },
+ { 12, 25, 48, 5, 48, -20, -48 },
+ { 12, 30, 48, 5, 48, -20, -48 },
+ { 12, 35, 48, 5, 48, -20, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 }
+};
+
+static const ShapeProvider k1WispShapesDOSProvider = { ARRAYSIZE(k1WispShapesDOS), k1WispShapesDOS };
+
+static const Shape k1MagicAnimShapesDOS[5] = {
+ { 17, 0, 0, 8, 49, -32, -49 },
+ { 17, 8, 0, 8, 49, -32, -49 },
+ { 17, 16, 0, 8, 49, -32, -49 },
+ { 17, 24, 0, 8, 49, -32, -49 },
+ { 17, 32, 0, 8, 49, -32, -49 }
+};
+
+static const ShapeProvider k1MagicAnimShapesDOSProvider = { ARRAYSIZE(k1MagicAnimShapesDOS), k1MagicAnimShapesDOS };
+
+static const Shape k1BranStoneShapesDOS[15] = {
+ { 18, 0, 0, 5, 51, -20, -50 },
+ { 18, 5, 0, 5, 51, -20, -50 },
+ { 18, 10, 0, 5, 51, -20, -50 },
+ { 18, 15, 0, 5, 51, -20, -50 },
+ { 18, 20, 0, 5, 51, -20, -50 },
+ { 18, 25, 0, 5, 51, -20, -50 },
+ { 18, 30, 0, 5, 51, -20, -50 },
+ { 18, 35, 0, 5, 51, -20, -50 },
+ { 18, 0, 51, 5, 51, -20, -50 },
+ { 18, 5, 51, 5, 51, -20, -50 },
+ { 18, 10, 51, 5, 51, -20, -50 },
+ { 18, 15, 51, 5, 51, -20, -50 },
+ { 18, 20, 51, 5, 51, -20, -50 },
+ { 18, 25, 51, 5, 51, -20, -50 },
+ { 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1BranStoneShapesDOSProvider = { ARRAYSIZE(k1BranStoneShapesDOS), k1BranStoneShapesDOS };
+
+static const byte k1OutroReunionSeqDOS[1351] = {
+ 0x1A, 0x00, 0x08, 0x01, 0x06, 0x01, 0x00, 0x02,
+ 0x08, 0x00, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x14, 0x0A, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x10, 0x20, 0x5A, 0x00,
+ 0x3A, 0x02, 0x02, 0x08, 0x0D, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x0E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0C, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0B,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x0C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x0D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x0E, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x0A, 0x01, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x01, 0x04, 0x00, 0x10, 0x21, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0A, 0x02, 0x02, 0x08, 0x14, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x02, 0x01, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x10, 0x22, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0A, 0x03, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x03, 0x0B, 0x00, 0x10, 0x23, 0x78,
+ 0x00, 0x3A, 0x0F, 0x0A, 0x03, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x0B, 0x03, 0x05, 0x00, 0x06, 0x28,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x2D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x24,
+ 0x5A, 0x00, 0x3A, 0x02, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x34,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x35, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x36, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x37, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x36,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x37, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x06,
+ 0x0A, 0x00, 0x10, 0x25, 0x5A, 0x00, 0x3A, 0x02,
+ 0x02, 0x08, 0x33, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x36, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x37, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x34, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x33, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x36, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x37, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x10, 0x26,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x38, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x39,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x3A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x38, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x3B, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x06, 0x0A, 0x00, 0x02, 0x08, 0x39, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x38,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x39, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x3A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x06, 0x3C, 0x00, 0x11, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x32,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x31, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x02, 0x08,
+ 0x2E, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x41, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x42,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x43, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x44, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x45, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x46, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x27, 0x5A,
+ 0x00, 0x3A, 0x02, 0x02, 0x08, 0x4E, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x4F, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x50,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x51, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x52, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x53, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x54, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x55, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x78, 0x00, 0x10, 0x28,
+ 0x78, 0x00, 0x3A, 0x0F, 0x0A, 0x05, 0x02, 0x08,
+ 0x59, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x5A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x5B, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x5C, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x5D, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x0B, 0x05, 0x01, 0x00, 0x06,
+ 0x28, 0x00, 0x10, 0x29, 0x78, 0x00, 0x3A, 0x0F,
+ 0x0A, 0x06, 0x02, 0x08, 0x59, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x5A, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5B, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5C,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x5D, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x0B,
+ 0x06, 0x01, 0x00, 0x06, 0x28, 0x00, 0x10, 0x2A,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x5E, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x63,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x06, 0x5A,
+ 0x00, 0x11, 0x18, 0x69, 0x02, 0x08, 0x64, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x65,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x18, 0x74,
+ 0x02, 0x08, 0x66, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x67, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x18, 0x75, 0x02, 0x08, 0x68, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x69,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x10, 0x2B,
+ 0x96, 0x00, 0x1C, 0x22, 0x0A, 0x06, 0x02, 0x08,
+ 0x6B, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x6C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x6D, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x6E, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x70, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x71, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01,
+ 0x00, 0x06, 0x1E, 0x00, 0x10, 0x2C, 0x96, 0x00,
+ 0x1C, 0x22, 0x0A, 0x06, 0x02, 0x08, 0x6B, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6C,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x6D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x6E, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x70, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x71, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01, 0x00, 0x06,
+ 0x1E, 0x00, 0x10, 0x2D, 0x96, 0x00, 0x1C, 0x22,
+ 0x0A, 0x06, 0x02, 0x08, 0x6B, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x6C, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6D, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6E,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x6F, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x70, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x71, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x0B, 0x06, 0x01, 0x00, 0x06, 0x1E, 0x00,
+ 0x02, 0x08, 0x72, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x73, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x06, 0x14, 0x00, 0x02, 0x08, 0x74,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x75, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x06,
+ 0x78, 0x00, 0x13, 0x0E, 0x01, 0x08, 0x1D
+};
+
+static const ByteProvider k1OutroReunionSeqDOSProvider = { ARRAYSIZE(k1OutroReunionSeqDOS), k1OutroReunionSeqDOS };
+
+static const char *const k1AudioTracksDOS[8] = {
+ "KYRA1A",
+ "KYRA1B",
+ "KYRA2A",
+ "KYRA3A",
+ "KYRA4A",
+ "KYRA4B",
+ "KYRA5A",
+ "KYRA5B"
+};
+
+static const StringListProvider k1AudioTracksDOSProvider = { ARRAYSIZE(k1AudioTracksDOS), k1AudioTracksDOS };
+
+static const char *const k1AudioTracks2DOS[1] = {
+ "kyramisc"
+};
+
+static const StringListProvider k1AudioTracks2DOSProvider = { ARRAYSIZE(k1AudioTracks2DOS), k1AudioTracks2DOS };
+
+static const char *const k1AudioTracksIntroDOS[1] = {
+ "intro"
+};
+
+static const StringListProvider k1AudioTracksIntroDOSProvider = { ARRAYSIZE(k1AudioTracksIntroDOS), k1AudioTracksIntroDOS };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_cd.h b/devtools/create_kyradat/resources/lok_dos_cd.h
new file mode 100644
index 0000000000..9550d53d61
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_cd.h
@@ -0,0 +1,1997 @@
+static const byte k1KallakWritingSeqDOSCD[2053] = {
+ 0x00, 0x00, 0x01, 0x11, 0x1D, 0x1A, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0F, 0x00,
+ 0x24, 0x2B, 0x24, 0x2C, 0x24, 0x2D, 0x24, 0x2E,
+ 0x1C, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x95, 0x00, 0x20, 0x0A, 0x17, 0x22,
+ 0x2B, 0x1E, 0x12, 0x2E, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x90, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x20, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x05, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x8A, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x06, 0x00, 0x00, 0x10, 0x05, 0x02, 0x88, 0x00,
+ 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00,
+ 0x07, 0x00, 0x00, 0x10, 0x05, 0x01, 0x85, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x08, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x20, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x7F, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x7C, 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x79, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x0C, 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00,
+ 0x20, 0x08, 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x0E, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x70, 0x00, 0x14, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x6D, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x6A, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00,
+ 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65, 0x00,
+ 0x14, 0x08, 0x06, 0x00, 0x02, 0x00, 0x13, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x63, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x14, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x63, 0x00, 0x20, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x15, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x65, 0x00, 0x1F, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x16, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x1D, 0x08, 0x06, 0x00, 0x02, 0x00, 0x17, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x70, 0x00, 0x19, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x18, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x76, 0x00, 0x17, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x19, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x7C, 0x00, 0x16, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x1A, 0x00, 0x00, 0x10, 0x05, 0x00, 0x82, 0x00,
+ 0x17, 0x08, 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x88, 0x00, 0x19, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x8D, 0x00, 0x1D, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x93, 0x00, 0x1F, 0x08, 0x06, 0x00, 0x1F, 0x22,
+ 0x2C, 0x1E, 0x12, 0x2F, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x94, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x1B, 0x1D, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x93, 0x00, 0x14, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x04, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x20, 0x08,
+ 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x05, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x06, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x88, 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x07, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x85, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x08, 0x00, 0x00, 0x10, 0x05, 0x00, 0x82, 0x00,
+ 0x20, 0x08, 0x06, 0x00, 0x02, 0x00, 0x09, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x7C, 0x00, 0x14, 0x08, 0x06, 0x00,
+ 0x1B, 0x1D, 0x02, 0x00, 0x0B, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x79, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00,
+ 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02, 0x70, 0x00,
+ 0x14, 0x08, 0x06, 0x00, 0x02, 0x00, 0x0F, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x6A, 0x00, 0x20, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x67, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x65, 0x00, 0x14, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x13, 0x00, 0x00, 0x10, 0x05, 0x01, 0x63, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x14, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x63, 0x00, 0x20, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x15, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x65, 0x00, 0x1F, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x16, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x6A, 0x00, 0x1D, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x17, 0x00, 0x00, 0x10, 0x05, 0x00, 0x70, 0x00,
+ 0x19, 0x08, 0x06, 0x00, 0x02, 0x00, 0x18, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x17, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x19, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x7C, 0x00, 0x16, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x82, 0x00, 0x17, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00, 0x88, 0x00,
+ 0x19, 0x08, 0x06, 0x00, 0x02, 0x00, 0x1C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x1D, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x93, 0x00, 0x1F, 0x08, 0x06, 0x00,
+ 0x1F, 0x22, 0x2D, 0x1E, 0x12, 0x30, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x93, 0x00, 0x14, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x90, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x04, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x8D, 0x00, 0x20, 0x08, 0x06, 0x00,
+ 0x1B, 0x1D, 0x02, 0x00, 0x05, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x06, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x88, 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x07, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x85, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x08, 0x00, 0x00, 0x10, 0x05, 0x00, 0x82, 0x00,
+ 0x20, 0x08, 0x06, 0x00, 0x02, 0x00, 0x09, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x7C, 0x00, 0x14, 0x08, 0x06, 0x00,
+ 0x1B, 0x1D, 0x02, 0x00, 0x0B, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x79, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00,
+ 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02, 0x70, 0x00,
+ 0x14, 0x08, 0x06, 0x00, 0x02, 0x00, 0x0F, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x6A, 0x00, 0x20, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x67, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x65, 0x00, 0x14, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x13, 0x00, 0x00, 0x10, 0x05, 0x01, 0x63, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x14, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x63, 0x00, 0x20, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x15, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x65, 0x00, 0x1F, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x16, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x6A, 0x00, 0x1D, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x17, 0x00, 0x00, 0x10, 0x05, 0x00, 0x70, 0x00,
+ 0x19, 0x08, 0x06, 0x00, 0x02, 0x00, 0x18, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x17, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x19, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x7C, 0x00, 0x16, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x82, 0x00, 0x17, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00, 0x88, 0x00,
+ 0x19, 0x08, 0x06, 0x00, 0x02, 0x00, 0x1C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x1D, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x93, 0x00, 0x1F, 0x08, 0x06, 0x00,
+ 0x1F, 0x07, 0x3C, 0x00, 0x22, 0x2E, 0x1E, 0x12,
+ 0x31, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x95, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x10, 0x05, 0x00, 0x95,
+ 0x00, 0x20, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02,
+ 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94,
+ 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x01,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B,
+ 0x08, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x08, 0x06,
+ 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x93, 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B,
+ 0x1D, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x90, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02,
+ 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x20, 0x08, 0x06, 0x00, 0x02, 0x00, 0x05,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B,
+ 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x06,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14,
+ 0x08, 0x06, 0x00, 0x02, 0x00, 0x07, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x08, 0x06,
+ 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x08, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x82, 0x00, 0x20, 0x08, 0x06,
+ 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x7F, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02,
+ 0x00, 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C,
+ 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02,
+ 0x00, 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79,
+ 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x0C,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20,
+ 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x0D,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B,
+ 0x08, 0x06, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x70, 0x00, 0x14, 0x08, 0x06,
+ 0x00, 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x6D, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x1B,
+ 0x1D, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x6A, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02,
+ 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67,
+ 0x00, 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02,
+ 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65,
+ 0x00, 0x14, 0x08, 0x06, 0x00, 0x07, 0x3C, 0x00,
+ 0x02, 0x00, 0x1E, 0x00, 0x00, 0x10, 0x09, 0x15,
+ 0x07, 0x1E, 0x00, 0x0B, 0x01, 0x02, 0x00, 0x1F,
+ 0x00, 0x00, 0x10, 0x08, 0x0A, 0x00, 0x02, 0x00,
+ 0x20, 0x00, 0x00, 0x10, 0x08, 0x0A, 0x00, 0x02,
+ 0x00, 0x21, 0x00, 0x00, 0x10, 0x08, 0x0A, 0x00,
+ 0x02, 0x00, 0x22, 0x00, 0x00, 0x10, 0x08, 0x0A,
+ 0x00, 0x0C, 0x01, 0x02, 0x00, 0x1B, 0x1F, 0x07,
+ 0x0A, 0x00, 0x02, 0x00, 0x23, 0x00, 0x00, 0x10,
+ 0x08, 0x14, 0x00, 0x1B, 0x1E, 0x02, 0x00, 0x24,
+ 0x00, 0x00, 0x10, 0x08, 0x14, 0x00, 0x02, 0x00,
+ 0x25, 0x00, 0x00, 0x10, 0x08, 0x14, 0x00, 0x1B,
+ 0x1F, 0x02, 0x00, 0x26, 0x00, 0x00, 0x10, 0x08,
+ 0x14, 0x00, 0x02, 0x00, 0x27, 0x00, 0x00, 0x10,
+ 0x08, 0x14, 0x00, 0x1B, 0x1E, 0x02, 0x00, 0x28,
+ 0x00, 0x00, 0x10, 0x09, 0x07, 0x3C, 0x00, 0x1B,
+ 0x1E, 0x03, 0x00, 0x08, 0x06, 0x00, 0x1B, 0x1E,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08,
+ 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03,
+ 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06,
+ 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x1B, 0x1E,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08,
+ 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03,
+ 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06,
+ 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00,
+ 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x1B, 0x1E, 0x03,
+ 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06,
+ 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00,
+ 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08,
+ 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x1B,
+ 0x1E, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00,
+ 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08,
+ 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03,
+ 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06,
+ 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00,
+ 0x08, 0x06, 0x00, 0x16, 0x1F, 0x1C, 0x01, 0x07,
+ 0x3C, 0x00, 0x01, 0x00, 0x20
+};
+
+static const ByteProvider k1KallakWritingSeqDOSCDProvider = { ARRAYSIZE(k1KallakWritingSeqDOSCD), k1KallakWritingSeqDOSCD };
+
+static const byte k1MalcolmTreeSeqDOSCD[560] = {
+ 0x23, 0x00, 0x01, 0x00, 0x1D, 0x11, 0x24, 0x1C,
+ 0x24, 0x13, 0x24, 0x14, 0x24, 0x15, 0x24, 0x16,
+ 0x24, 0x17, 0x24, 0x19, 0x24, 0x1B, 0x1A, 0x00,
+ 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0F,
+ 0x01, 0x10, 0x01, 0x0A, 0x02, 0x01, 0x00, 0x00,
+ 0x00, 0x10, 0x1C, 0x03, 0x0A, 0x1B, 0x1E, 0x17,
+ 0x1B, 0x1F, 0x0B, 0x00, 0x03, 0x01, 0x07, 0x06,
+ 0x00, 0x0C, 0x00, 0x1F, 0x00, 0x1B, 0x19, 0x0B,
+ 0x01, 0x03, 0x01, 0x07, 0x06, 0x00, 0x0C, 0x01,
+ 0x0D, 0x00, 0x22, 0x1C, 0x13, 0x1F, 0x50, 0x00,
+ 0x2D, 0x05, 0x03, 0x01, 0x07, 0x06, 0x00, 0x03,
+ 0x01, 0x07, 0x06, 0x00, 0x0B, 0x02, 0x03, 0x01,
+ 0x07, 0x06, 0x00, 0x0C, 0x02, 0x10, 0x00, 0x14,
+ 0x1B, 0x1F, 0x03, 0x01, 0x07, 0x06, 0x00, 0x03,
+ 0x01, 0x07, 0x06, 0x00, 0x03, 0x01, 0x07, 0x06,
+ 0x00, 0x1B, 0x24, 0x1B, 0x1F, 0x03, 0x01, 0x07,
+ 0x06, 0x00, 0x1B, 0x1E, 0x0B, 0x03, 0x03, 0x01,
+ 0x07, 0x06, 0x00, 0x0C, 0x03, 0x15, 0x00, 0x22,
+ 0x13, 0x13, 0x16, 0x50, 0x00, 0x2D, 0x05, 0x1B,
+ 0x1F, 0x0B, 0x04, 0x03, 0x01, 0x07, 0x04, 0x00,
+ 0x0C, 0x04, 0x08, 0x00, 0x02, 0x01, 0x64, 0x00,
+ 0x00, 0x10, 0x1B, 0x1A, 0x1B, 0x1E, 0x0B, 0x05,
+ 0x03, 0x01, 0x07, 0x04, 0x00, 0x0C, 0x05, 0x09,
+ 0x00, 0x14, 0x06, 0x3C, 0x00, 0x13, 0x17, 0x50,
+ 0x00, 0x2D, 0x05, 0x0B, 0x06, 0x03, 0x01, 0x07,
+ 0x04, 0x00, 0x0C, 0x06, 0x09, 0x00, 0x22, 0x14,
+ 0x07, 0x1E, 0x00, 0x0B, 0x06, 0x03, 0x01, 0x07,
+ 0x04, 0x00, 0x0C, 0x06, 0x09, 0x00, 0x1B, 0x1A,
+ 0x1B, 0x1F, 0x0B, 0x07, 0x03, 0x01, 0x07, 0x04,
+ 0x00, 0x0C, 0x07, 0x06, 0x00, 0x1B, 0x1E, 0x07,
+ 0x1E, 0x00, 0x22, 0x15, 0x13, 0x18, 0x50, 0x00,
+ 0x2D, 0x05, 0x03, 0x01, 0x07, 0x06, 0x00, 0x03,
+ 0x01, 0x07, 0x06, 0x00, 0x03, 0x01, 0x07, 0x06,
+ 0x00, 0x0B, 0x08, 0x04, 0x01, 0x07, 0x06, 0x00,
+ 0x04, 0x01, 0x07, 0x06, 0x00, 0x03, 0x01, 0x07,
+ 0x06, 0x00, 0x03, 0x01, 0x07, 0x06, 0x00, 0x0D,
+ 0x08, 0x01, 0x00, 0x03, 0x01, 0x07, 0x06, 0x00,
+ 0x06, 0x78, 0x00, 0x0B, 0x09, 0x03, 0x01, 0x07,
+ 0x06, 0x00, 0x0C, 0x09, 0x04, 0x00, 0x1B, 0x1B,
+ 0x0B, 0x0A, 0x03, 0x01, 0x07, 0x06, 0x00, 0x0C,
+ 0x0A, 0x09, 0x00, 0x06, 0x14, 0x00, 0x22, 0x16,
+ 0x13, 0x19, 0x50, 0x00, 0x2D, 0x05, 0x03, 0x01,
+ 0x07, 0x06, 0x00, 0x03, 0x01, 0x07, 0x06, 0x00,
+ 0x0B, 0x0B, 0x03, 0x01, 0x07, 0x06, 0x00, 0x04,
+ 0x01, 0x07, 0x06, 0x00, 0x04, 0x01, 0x07, 0x06,
+ 0x00, 0x03, 0x01, 0x07, 0x06, 0x00, 0x03, 0x01,
+ 0x07, 0x06, 0x00, 0x0C, 0x0B, 0x01, 0x00, 0x03,
+ 0x01, 0x07, 0x06, 0x00, 0x03, 0x01, 0x07, 0x06,
+ 0x00, 0x03, 0x01, 0x07, 0x06, 0x00, 0x22, 0x17,
+ 0x13, 0x1A, 0x50, 0x00, 0x2D, 0x05, 0x0B, 0x0C,
+ 0x03, 0x01, 0x07, 0x06, 0x00, 0x0C, 0x0C, 0x12,
+ 0x00, 0x03, 0x01, 0x01, 0x01, 0x14, 0x18, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00,
+ 0x00, 0x10, 0x22, 0x19, 0x13, 0x1C, 0x50, 0x00,
+ 0x2D, 0x05, 0x06, 0x3C, 0x00, 0x03, 0x02, 0x03,
+ 0x02, 0x07, 0x06, 0x00, 0x14, 0x1B, 0x1C, 0x0B,
+ 0x0F, 0x03, 0x02, 0x07, 0x06, 0x00, 0x0C, 0x0F,
+ 0x0D, 0x00, 0x22, 0x1B, 0x13, 0x1D, 0x50, 0x00,
+ 0x2D, 0x05, 0x0B, 0x10, 0x03, 0x02, 0x07, 0x04,
+ 0x00, 0x03, 0x02, 0x07, 0x04, 0x00, 0x03, 0x02,
+ 0x07, 0x04, 0x00, 0x04, 0x02, 0x07, 0x04, 0x00,
+ 0x04, 0x02, 0x07, 0x04, 0x00, 0x04, 0x02, 0x07,
+ 0x04, 0x00, 0x0D, 0x10, 0x02, 0x00, 0x13, 0x1E,
+ 0x50, 0x00, 0x2D, 0x05, 0x0B, 0x11, 0x03, 0x02,
+ 0x07, 0x04, 0x00, 0x03, 0x02, 0x07, 0x04, 0x00,
+ 0x03, 0x02, 0x07, 0x04, 0x00, 0x04, 0x02, 0x07,
+ 0x04, 0x00, 0x04, 0x02, 0x07, 0x04, 0x00, 0x04,
+ 0x02, 0x07, 0x04, 0x00, 0x0D, 0x11, 0x01, 0x00,
+ 0x03, 0x02, 0x07, 0x04, 0x00, 0x07, 0xB4, 0x00,
+ 0x16, 0x1C, 0x01, 0x01, 0x01, 0x01, 0x02, 0x20
+};
+
+static const ByteProvider k1MalcolmTreeSeqDOSCDProvider = { ARRAYSIZE(k1MalcolmTreeSeqDOSCD), k1MalcolmTreeSeqDOSCD };
+
+static const byte k1WestwoodLogoSeqDOSCD[75] = {
+ 0x00, 0x03, 0x01, 0x1D, 0x02, 0x03, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x01, 0x07, 0x06, 0x00, 0x07,
+ 0x3C, 0x00, 0x1B, 0x14, 0x0B, 0x00, 0x03, 0x03,
+ 0x19, 0x01, 0x0C, 0x00, 0x08, 0x00, 0x07, 0x3C,
+ 0x00, 0x1B, 0x27, 0x0B, 0x01, 0x03, 0x03, 0x19,
+ 0x01, 0x0C, 0x01, 0x0B, 0x00, 0x07, 0x78, 0x00,
+ 0x1B, 0x14, 0x02, 0x03, 0x0A, 0x00, 0x00, 0x00,
+ 0x19, 0x01, 0x07, 0x06, 0x00, 0x0B, 0x02, 0x04,
+ 0x03, 0x19, 0x01, 0x0C, 0x02, 0x09, 0x00, 0x16,
+ 0x01, 0x03, 0x20
+};
+
+static const ByteProvider k1WestwoodLogoSeqDOSCDProvider = { ARRAYSIZE(k1WestwoodLogoSeqDOSCD), k1WestwoodLogoSeqDOSCD };
+
+static const byte k1KyrandiaLogoSeqDOSCD[166] = {
+ 0x18, 0x00, 0x02, 0x00, 0x06, 0x01, 0x1D, 0x02,
+ 0x06, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x07,
+ 0x06, 0x00, 0x19, 0x04, 0x03, 0x06, 0x19, 0x00,
+ 0x03, 0x06, 0x19, 0x00, 0x03, 0x06, 0x19, 0x00,
+ 0x03, 0x06, 0x19, 0x00, 0x03, 0x06, 0x19, 0x00,
+ 0x03, 0x06, 0x19, 0x00, 0x0B, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x03, 0x06, 0x19, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x03, 0x06, 0x19, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x03, 0x06, 0x19, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x03, 0x06, 0x19, 0x00, 0x1B, 0x27,
+ 0x0B, 0x01, 0x03, 0x06, 0x19, 0x00, 0x0C, 0x01,
+ 0x07, 0x00, 0x06, 0xF0, 0x00, 0x1B, 0x27, 0x0B,
+ 0x02, 0x04, 0x06, 0x19, 0x00, 0x0C, 0x02, 0x0F,
+ 0x00, 0x07, 0x78, 0x00, 0x07, 0xB4, 0x00, 0x24,
+ 0x37, 0x24, 0x38, 0x24, 0x39, 0x24, 0x3A, 0x24,
+ 0x3B, 0x24, 0x3C, 0x02, 0x06, 0x0D, 0x00, 0x00,
+ 0x00, 0x19, 0x00, 0x07, 0x06, 0x00, 0x07, 0x3C,
+ 0x00, 0x22, 0x1C, 0x1B, 0x14, 0x0B, 0x02, 0x04,
+ 0x06, 0x19, 0x00, 0x0C, 0x02, 0x0C, 0x00, 0x07,
+ 0x78, 0x00, 0x16, 0x01, 0x06, 0x20
+};
+
+static const ByteProvider k1KyrandiaLogoSeqDOSCDProvider = { ARRAYSIZE(k1KyrandiaLogoSeqDOSCD), k1KyrandiaLogoSeqDOSCD };
+
+static const byte k1KallakMalcolmSeqDOSCD[696] = {
+ 0x00, 0x04, 0x01, 0x1D, 0x24, 0x00, 0x24, 0x01,
+ 0x24, 0x02, 0x24, 0x0B, 0x24, 0x0C, 0x11, 0x1A,
+ 0x00, 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00,
+ 0x0F, 0x03, 0x10, 0x00, 0x1A, 0x00, 0x00, 0x88,
+ 0x3F, 0x01, 0xC7, 0x0C, 0x02, 0x1C, 0x00, 0x02,
+ 0x04, 0x00, 0x10, 0x00, 0x3A, 0x0A, 0x1C, 0x00,
+ 0x1C, 0x05, 0x17, 0x1B, 0x23, 0x0B, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x0C, 0x00, 0x23, 0x00,
+ 0x22, 0x00, 0x13, 0x02, 0x50, 0x00, 0x3A, 0x05,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x0B, 0x01, 0x03, 0x04, 0x08, 0x0E,
+ 0x00, 0x0C, 0x01, 0x04, 0x00, 0x06, 0x3C, 0x00,
+ 0x22, 0x01, 0x13, 0x03, 0x50, 0x00, 0x3A, 0x05,
+ 0x0B, 0x02, 0x03, 0x04, 0x08, 0x06, 0x00, 0x0C,
+ 0x02, 0x18, 0x00, 0x06, 0x3C, 0x00, 0x22, 0x02,
+ 0x13, 0x04, 0x50, 0x00, 0x3A, 0x05, 0x0B, 0x03,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C, 0x03, 0x0A,
+ 0x00, 0x06, 0x3C, 0x00, 0x24, 0x04, 0x24, 0x05,
+ 0x24, 0x03, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x22, 0x03, 0x13, 0x05,
+ 0xF0, 0x00, 0x3A, 0x0F, 0x03, 0x04, 0x08, 0x0A,
+ 0x00, 0x03, 0x04, 0x08, 0x0A, 0x00, 0x03, 0x04,
+ 0x08, 0x0A, 0x00, 0x03, 0x04, 0x08, 0x0A, 0x00,
+ 0x03, 0x04, 0x08, 0x0A, 0x00, 0x07, 0x1E, 0x00,
+ 0x22, 0x04, 0x13, 0x06, 0xF0, 0x00, 0x3A, 0x0F,
+ 0x0B, 0x04, 0x03, 0x04, 0x08, 0x05, 0x00, 0x0C,
+ 0x04, 0x12, 0x00, 0x07, 0x14, 0x00, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x06, 0x3C, 0x00,
+ 0x22, 0x05, 0x13, 0x07, 0xF0, 0x00, 0x3A, 0x0F,
+ 0x0B, 0x05, 0x03, 0x04, 0x08, 0x05, 0x00, 0x0C,
+ 0x05, 0x12, 0x00, 0x06, 0x3C, 0x00, 0x24, 0x06,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x22, 0x06, 0x13, 0x08, 0x50, 0x00,
+ 0x3A, 0x05, 0x0B, 0x06, 0x03, 0x04, 0x08, 0x08,
+ 0x00, 0x0C, 0x06, 0x07, 0x00, 0x06, 0x3C, 0x00,
+ 0x24, 0x07, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x22, 0x07, 0x13, 0x09,
+ 0x50, 0x00, 0x3A, 0x05, 0x03, 0x04, 0x08, 0x07,
+ 0x00, 0x0B, 0x07, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x0C, 0x07, 0x0A, 0x00, 0x06, 0x3C, 0x00, 0x22,
+ 0x08, 0x03, 0x04, 0x08, 0x07, 0x00, 0x13, 0x0A,
+ 0x50, 0x00, 0x3A, 0x05, 0x0B, 0x08, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x0C, 0x08, 0x0F, 0x00, 0x06,
+ 0x3C, 0x00, 0x24, 0x0A, 0x22, 0x09, 0x13, 0x0B,
+ 0xF0, 0x00, 0x3A, 0x0F, 0x03, 0x04, 0x08, 0x07,
+ 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08, 0x07,
+ 0x00, 0x07, 0x3C, 0x00, 0x22, 0x0A, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x13, 0x0C, 0xF0, 0x00, 0x3A,
+ 0x0F, 0x0B, 0x09, 0x03, 0x04, 0x08, 0x05, 0x00,
+ 0x0C, 0x09, 0x0F, 0x00, 0x06, 0x3C, 0x00, 0x24,
+ 0x0B, 0x24, 0x0C, 0x24, 0x0D, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08, 0x07,
+ 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x22, 0x0B, 0x13, 0x0D, 0x50,
+ 0x00, 0x3A, 0x05, 0x0B, 0x0A, 0x03, 0x04, 0x08,
+ 0x08, 0x00, 0x0C, 0x0A, 0x0E, 0x00, 0x06, 0x3C,
+ 0x00, 0x0B, 0x0B, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x0C, 0x0B, 0x02, 0x00, 0x1B, 0x20, 0x0B, 0x0C,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C, 0x0C, 0x06,
+ 0x00, 0x1B, 0x21, 0x0B, 0x0D, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x0C, 0x0D, 0x0C, 0x00, 0x1B, 0x22,
+ 0x0B, 0x0E, 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C,
+ 0x0E, 0x0B, 0x00, 0x22, 0x0C, 0x13, 0x0E, 0x50,
+ 0x00, 0x3A, 0x05, 0x0B, 0x0F, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x0C, 0x0F, 0x09, 0x00, 0x06, 0x3C,
+ 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x22, 0x0D,
+ 0x13, 0x0F, 0x50, 0x00, 0x3A, 0x05, 0x0B, 0x10,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C, 0x10, 0x09,
+ 0x00, 0x06, 0x3C, 0x00, 0x24, 0x0E, 0x24, 0x0F,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x22, 0x0E, 0x13,
+ 0x10, 0x50, 0x00, 0x3A, 0x05, 0x0B, 0x11, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x0C, 0x11, 0x0F, 0x00,
+ 0x06, 0x3C, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x22, 0x0F, 0x13, 0x11, 0x50, 0x00, 0x3A, 0x05,
+ 0x0B, 0x12, 0x03, 0x04, 0x08, 0x05, 0x00, 0x0C,
+ 0x12, 0x14, 0x00, 0x07, 0x3C, 0x00, 0x0B, 0x13,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C, 0x13, 0x06,
+ 0x00, 0x1B, 0x23, 0x22, 0x1C, 0x0B, 0x13, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x0C, 0x13, 0x06, 0x00,
+ 0x02, 0x04, 0x45, 0x10, 0x00, 0x3A, 0x14, 0x07,
+ 0x78, 0x00, 0x16, 0x1C, 0x01, 0x01, 0x04, 0x20
+};
+
+static const ByteProvider k1KallakMalcolmSeqDOSCDProvider = { ARRAYSIZE(k1KallakMalcolmSeqDOSCD), k1KallakMalcolmSeqDOSCD };
+
+static const byte k1ForestSeqDOSCD[627] = {
+ 0x00, 0x05, 0x01, 0x00, 0x07, 0x01, 0x1D, 0x02,
+ 0x07, 0x00, 0x00, 0x00, 0x08, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x0B, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x0C, 0x00, 0x0F, 0x00,
+ 0x22, 0x37, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07,
+ 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x1B, 0x16, 0x03, 0x07,
+ 0x02, 0x05, 0x01, 0x98, 0x00, 0x38, 0x19, 0x02,
+ 0x19, 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x02,
+ 0x05, 0x03, 0x98, 0x00, 0x38, 0x19, 0x02, 0x19,
+ 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x01, 0x98, 0x00, 0x38, 0x19, 0x02, 0x19, 0x03,
+ 0x07, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x19, 0x02, 0x19, 0x03, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07,
+ 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02,
+ 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x22,
+ 0x38, 0x0B, 0x09, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x0C, 0x09, 0x21, 0x00, 0x1B, 0x16,
+ 0x03, 0x07, 0x02, 0x05, 0x01, 0x98, 0x00, 0x38,
+ 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x03, 0x98, 0x00, 0x38, 0x19,
+ 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x03, 0x07,
+ 0x02, 0x05, 0x01, 0x98, 0x00, 0x38, 0x19, 0x02,
+ 0x19, 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x02,
+ 0x05, 0x04, 0x98, 0x00, 0x38, 0x19, 0x02, 0x19,
+ 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02,
+ 0x07, 0x09, 0x00, 0x22, 0x39, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x05, 0x98, 0x00, 0x38, 0x19, 0x02, 0x19, 0x03,
+ 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x02, 0x05, 0x06, 0x98, 0x00,
+ 0x38, 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x1B, 0x25,
+ 0x0B, 0x00, 0x03, 0x07, 0x03, 0x05, 0x19, 0x02,
+ 0x19, 0x03, 0x07, 0x09, 0x00, 0x0C, 0x00, 0x09,
+ 0x00, 0x0B, 0x06, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x0C, 0x06, 0x0E, 0x00, 0x22, 0x3A,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07,
+ 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x1B, 0x17, 0x0B, 0x01,
+ 0x03, 0x07, 0x03, 0x05, 0x19, 0x02, 0x19, 0x03,
+ 0x07, 0x09, 0x00, 0x0C, 0x01, 0x0D, 0x00, 0x1B,
+ 0x25, 0x0B, 0x07, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x0C, 0x07, 0x08, 0x00, 0x03, 0x07,
+ 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02,
+ 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x1B, 0x18, 0x03, 0x07, 0x03, 0x05,
+ 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x22,
+ 0x3B, 0x03, 0x07, 0x03, 0x05, 0x19, 0x02, 0x19,
+ 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x03, 0x05,
+ 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x03, 0x05, 0x19, 0x02, 0x19, 0x03, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x03, 0x05, 0x19, 0x02,
+ 0x19, 0x03, 0x07, 0x09, 0x00, 0x07, 0x12, 0x00,
+ 0x1B, 0x25, 0x0B, 0x02, 0x03, 0x07, 0x03, 0x05,
+ 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x0C,
+ 0x02, 0x07, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x22, 0x3C,
+ 0x0B, 0x03, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x0C, 0x03, 0x23, 0x00, 0x16, 0x01, 0x07,
+ 0x01, 0x05, 0x20
+};
+
+static const ByteProvider k1ForestSeqDOSCDProvider = { ARRAYSIZE(k1ForestSeqDOSCD), k1ForestSeqDOSCD };
+
+static const char *const k1IntroCPSStringsDOSCD[2] = {
+ "gemcuti.cps",
+ "tree.cps"
+};
+
+static const StringListProvider k1IntroCPSStringsDOSCDProvider = { ARRAYSIZE(k1IntroCPSStringsDOSCD), k1IntroCPSStringsDOSCD };
+
+static const char *const k1IntroCOLStringsDOSCD[4] = {
+ "kallak.col",
+ "tree_exp.col",
+ "ww.col",
+ "mal-kal.col"
+};
+
+static const StringListProvider k1IntroCOLStringsDOSCDProvider = { ARRAYSIZE(k1IntroCOLStringsDOSCD), k1IntroCOLStringsDOSCD };
+
+static const char *const k1IntroWSAStringsDOSCD[11] = {
+ "kallak.wsa",
+ "tree1.wsa",
+ "tree2.wsa",
+ "westwood.wsa",
+ "mal-kal.wsa",
+ "destruct.wsa",
+ "kyrandia.wsa",
+ "shore.wsa",
+ "reunion.wsa",
+ "reuniont.wsa",
+ "latern.wsa"
+};
+
+static const StringListProvider k1IntroWSAStringsDOSCDProvider = { ARRAYSIZE(k1IntroWSAStringsDOSCD), k1IntroWSAStringsDOSCD };
+
+static const Room k1RoomListDOSCD[246] = {
+ { 30, 0xFFFF, 0xFFFF, 0x0001, 0xFFFF },
+ { 71, 0xFFFF, 0xFFFF, 0x0005, 0xFFFF },
+ { 44, 0xFFFF, 0x0003, 0xFFFF, 0xFFFF },
+ { 72, 0xFFFF, 0xFFFF, 0x000E, 0xFFFF },
+ { 48, 0xFFFF, 0x0005, 0xFFFF, 0x000E },
+ { 74, 0xFFFF, 0x000A, 0xFFFF, 0x0004 },
+ { 46, 0xFFFF, 0x000F, 0xFFFF, 0x000B },
+ { 75, 0xFFFF, 0x0009, 0xFFFF, 0x0018 },
+ { 13, 0xFFFF, 0x000C, 0xFFFF, 0x000A },
+ { 5, 0x000D, 0xFFFF, 0xFFFF, 0x0007 },
+ { 84, 0xFFFF, 0x0008, 0xFFFF, 0x0005 },
+ { 37, 0xFFFF, 0x0006, 0x000C, 0x0010 },
+ { 51, 0x000B, 0xFFFF, 0x000D, 0x0008 },
+ { 23, 0x000C, 0xFFFF, 0x0009, 0xFFFF },
+ { 25, 0x0003, 0x0004, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0x0006 },
+ { 86, 0xFFFF, 0x000B, 0xFFFF, 0xFFFF },
+ { 84, 0xFFFF, 0x0022, 0x0017, 0x0016 },
+ { 51, 0x0020, 0x0014, 0x0024, 0x0015 },
+ { 85, 0x0014, 0x0019, 0xFFFF, 0x0024 },
+ { 33, 0x001C, 0xFFFF, 0x0013, 0x0012 },
+ { 31, 0x0022, 0x0012, 0xFFFF, 0x0017 },
+ { 25, 0x001F, 0x0011, 0xFFFF, 0xFFFF },
+ { 25, 0x0011, 0x0015, 0xFFFF, 0xFFFF },
+ { 2, 0xFFFF, 0x0007, 0xFFFF, 0x001A },
+ { 82, 0xFFFF, 0x006D, 0xFFFF, 0x0013 },
+ { 77, 0xFFFF, 0x0018, 0x0021, 0xFFFF },
+ { 15, 0xFFFF, 0x001A, 0xFFFF, 0xFFFF },
+ { 16, 0xFFFF, 0xFFFF, 0x0014, 0x0020 },
+ { 19, 0xFFFF, 0x0021, 0xFFFF, 0x001F },
+ { 12, 0xFFFF, 0xFFFF, 0x0020, 0x0021 },
+ { 7, 0x0023, 0x001D, 0x0016, 0xFFFF },
+ { 20, 0x001E, 0x001C, 0x0012, 0x0022 },
+ { 17, 0x001A, 0x001E, 0x0022, 0x001D },
+ { 22, 0x0021, 0x0020, 0x0015, 0x0011 },
+ { 24, 0xFFFF, 0xFFFF, 0x001F, 0xFFFF },
+ { 32, 0x0012, 0x0013, 0xFFFF, 0xFFFF },
+ { 87, 0xFFFF, 0x0026, 0xFFFF, 0xFFFF },
+ { 8, 0xFFFF, 0x0027, 0xFFFF, 0x0025 },
+ { 88, 0xFFFF, 0x0035, 0x0037, 0x0026 },
+ { 35, 0xFFFF, 0x0036, 0x0038, 0xFFFF },
+ { 47, 0xFFFF, 0xFFFF, 0x003B, 0xFFFF },
+ { 28, 0x0035, 0x002B, 0x002F, 0x0037 },
+ { 36, 0xFFFF, 0x002C, 0xFFFF, 0x002A },
+ { 78, 0xFFFF, 0xFFFF, 0xFFFF, 0x002B },
+ { 10, 0xFFFF, 0xFFFF, 0xFFFF, 0x002C },
+ { 51, 0x0037, 0x002F, 0x0040, 0x003C },
+ { 38, 0x002A, 0x003D, 0x0041, 0x002E },
+ { 81, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 41, 0xFFFF, 0xFFFF, 0x0069, 0xFFFF },
+ { 50, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 49, 0xFFFF, 0xFFFF, 0x0054, 0xFFFF },
+ { 105, 0xFFFF, 0xFFFF, 0x002A, 0x0027 },
+ { 105, 0xFFFF, 0xFFFF, 0x0039, 0x0028 },
+ { 37, 0x0027, 0x002A, 0x002E, 0x0049 },
+ { 34, 0x0028, 0x0039, 0xFFFF, 0xFFFF },
+ { 51, 0x0036, 0x003A, 0xFFFF, 0x0038 },
+ { 84, 0xFFFF, 0x003B, 0xFFFF, 0x0039 },
+ { 1, 0x0029, 0xFFFF, 0x003E, 0x003A },
+ { 37, 0x0049, 0x002E, 0x003F, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0x002F },
+ { 34, 0x003B, 0x003F, 0xFFFF, 0xFFFF },
+ { 85, 0x003C, 0x0040, 0xFFFF, 0x003E },
+ { 106, 0x002E, 0x0041, 0xFFFF, 0x003F },
+ { 33, 0x002F, 0xFFFF, 0xFFFF, 0x0040 },
+ { 60, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 3, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 26, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 0, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 25, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 23, 0xFFFF, 0x0037, 0x003C, 0xFFFF },
+ { 6, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 51, 0x0063, 0x0067, 0x006B, 0x0066 },
+ { 66, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 67, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 62, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 65, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0x0056, 0x005A, 0x005E, 0xFFFF },
+ { 6, 0xFFFF, 0x0052, 0x0056, 0xFFFF },
+ { 4, 0xFFFF, 0x0053, 0x0057, 0x0051 },
+ { 3, 0xFFFF, 0x0054, 0xFFFF, 0x0052 },
+ { 37, 0x0034, 0x0055, 0x0058, 0x0053 },
+ { 11, 0xFFFF, 0xFFFF, 0x0059, 0x0054 },
+ { 37, 0x0051, 0x0057, 0x0050, 0xFFFF },
+ { 51, 0x0052, 0xFFFF, 0x005A, 0x0056 },
+ { 51, 0x0054, 0x0059, 0x005C, 0xFFFF },
+ { 1, 0x0055, 0xFFFF, 0x005D, 0x0058 },
+ { 106, 0x0057, 0x005B, 0xFFFF, 0x0050 },
+ { 85, 0xFFFF, 0x005C, 0xFFFF, 0x005A },
+ { 37, 0x0058, 0x005D, 0x005F, 0x005B },
+ { 33, 0x0059, 0xFFFF, 0xFFFF, 0x005C },
+ { 51, 0x0050, 0xFFFF, 0x0061, 0xFFFF },
+ { 51, 0x005C, 0xFFFF, 0x0064, 0xFFFF },
+ { 37, 0xFFFF, 0x0061, 0x0065, 0xFFFF },
+ { 51, 0x005E, 0x0062, 0xFFFF, 0x0060 },
+ { 84, 0xFFFF, 0x0063, 0x0066, 0x0061 },
+ { 84, 0xFFFF, 0x0064, 0x004B, 0x0062 },
+ { 33, 0x005F, 0xFFFF, 0x0067, 0x0063 },
+ { 51, 0x0060, 0xFFFF, 0x0068, 0xFFFF },
+ { 37, 0x0062, 0x004B, 0x006A, 0xFFFF },
+ { 1, 0x0064, 0xFFFF, 0x006C, 0x004B },
+ { 34, 0x0065, 0x0069, 0xFFFF, 0xFFFF },
+ { 51, 0x0031, 0x006A, 0xFFFF, 0x0068 },
+ { 85, 0x0066, 0x006B, 0xFFFF, 0x0069 },
+ { 106, 0x004B, 0x006C, 0xFFFF, 0x006A },
+ { 33, 0x0067, 0xFFFF, 0xFFFF, 0x006B },
+ { 55, 0x00C4, 0x00C5, 0xFFFF, 0x0019 },
+ { 52, 0xFFFF, 0x00C1, 0xFFFF, 0x0096 },
+ { 64, 0xFFFF, 0x00BF, 0xFFFF, 0x008C },
+ { 57, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 54, 0x00AF, 0xFFFF, 0x00B7, 0x00AC },
+ { 53, 0x0078, 0xFFFF, 0x0079, 0xFFFF },
+ { 29, 0xFFFF, 0x00BB, 0xFFFF, 0x00C5 },
+ { 69, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 76, 0x00C6, 0xFFFF, 0xFFFF, 0x00B1 },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x0025, 0x0072, 0xFFFF },
+ { 58, 0x0072, 0x007B, 0x00BB, 0xFFFF },
+ { 58, 0xFFFF, 0x007F, 0x007B, 0xFFFF },
+ { 59, 0x007A, 0xFFFF, 0x007C, 0x0079 },
+ { 58, 0x007B, 0x0081, 0x00BC, 0xFFFF },
+ { 58, 0x00BC, 0x0083, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x0085, 0x007F, 0xFFFF },
+ { 59, 0x007E, 0x0086, 0x0080, 0x007A },
+ { 58, 0x007F, 0x00BD, 0x0081, 0xFFFF },
+ { 59, 0x0080, 0x0087, 0x0082, 0x007C },
+ { 58, 0x0081, 0xFFFF, 0x0083, 0x00BC },
+ { 59, 0x0082, 0x0089, 0x0084, 0x007D },
+ { 58, 0x0083, 0x008A, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x008B, 0x0086, 0x007E },
+ { 58, 0x0085, 0x008C, 0x00BD, 0x007F },
+ { 58, 0x00BD, 0x008E, 0x0088, 0x0081 },
+ { 59, 0x0087, 0xFFFF, 0x0089, 0xFFFF },
+ { 58, 0x0088, 0x0090, 0x008A, 0x0083 },
+ { 59, 0x0089, 0x0091, 0xFFFF, 0x0084 },
+ { 58, 0xFFFF, 0x0092, 0x008C, 0x0085 },
+ { 59, 0x008B, 0x006F, 0x008D, 0x0086 },
+ { 58, 0x008C, 0x0093, 0x008E, 0x00BD },
+ { 59, 0x008D, 0xFFFF, 0xFFFF, 0x0087 },
+ { 58, 0xFFFF, 0x00BE, 0x0090, 0xFFFF },
+ { 59, 0x008F, 0x0095, 0x0091, 0x0089 },
+ { 58, 0x0090, 0x0096, 0xFFFF, 0x008A },
+ { 59, 0xFFFF, 0x0098, 0xFFFF, 0x008B },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0x008D },
+ { 58, 0xFFFF, 0x009A, 0x00BE, 0xFFFF },
+ { 58, 0x00BE, 0xFFFF, 0x0096, 0x0090 },
+ { 59, 0x0095, 0x006E, 0x0097, 0x0091 },
+ { 58, 0x0096, 0x009D, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x009E, 0x00BF, 0x0092 },
+ { 58, 0x00BF, 0x00A0, 0x009A, 0xFFFF },
+ { 59, 0x0099, 0xFFFF, 0x009B, 0x0094 },
+ { 58, 0x009A, 0xFFFF, 0x009C, 0xFFFF },
+ { 59, 0x009B, 0x00A2, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x00A3, 0xFFFF, 0x0097 },
+ { 59, 0xFFFF, 0xFFFF, 0x009F, 0x0098 },
+ { 58, 0x009E, 0x00A4, 0x00A0, 0x00BF },
+ { 59, 0x009F, 0x00A5, 0xFFFF, 0x0099 },
+ { 58, 0xFFFF, 0x00A6, 0x00C0, 0xFFFF },
+ { 58, 0x00C0, 0x00A8, 0xFFFF, 0x009C },
+ { 58, 0x00C1, 0xFFFF, 0xFFFF, 0x009D },
+ { 59, 0xFFFF, 0x00AA, 0x00A5, 0x009F },
+ { 58, 0x00A4, 0x00AB, 0x00A6, 0x00A0 },
+ { 59, 0x00A5, 0x00AC, 0x00A7, 0x00A1 },
+ { 58, 0x00A6, 0xFFFF, 0xFFFF, 0x00C0 },
+ { 59, 0xFFFF, 0x00AD, 0x00A9, 0x00A2 },
+ { 58, 0x00A8, 0x00AE, 0xFFFF, 0x00C1 },
+ { 58, 0xFFFF, 0xFFFF, 0x00AB, 0x00A4 },
+ { 59, 0x00AA, 0x00AF, 0x00AC, 0x00A5 },
+ { 58, 0x00AB, 0x0071, 0x00C2, 0x00A6 },
+ { 58, 0xFFFF, 0x00B0, 0x00AE, 0x00A8 },
+ { 59, 0x00AD, 0xFFFF, 0xFFFF, 0x00A9 },
+ { 58, 0xFFFF, 0x00C3, 0x0071, 0x00AB },
+ { 59, 0xFFFF, 0xFFFF, 0x00B1, 0x00AD },
+ { 58, 0x00B0, 0x0075, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0x00C3, 0xFFFF, 0x00B4, 0xFFFF },
+ { 59, 0x00B3, 0x00BA, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0x0071, 0xFFFF, 0xFFFF, 0x00C2 },
+ { 58, 0xFFFF, 0xFFFF, 0x00B9, 0xFFFF },
+ { 59, 0x00B8, 0xFFFF, 0xFFFF, 0x00C3 },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0x00B4 },
+ { 59, 0x0079, 0xFFFF, 0xFFFF, 0x0073 },
+ { 59, 0x007C, 0x0082, 0x007D, 0xFFFF },
+ { 59, 0x0086, 0x008D, 0x0087, 0x0080 },
+ { 59, 0x0094, 0xFFFF, 0x0095, 0x008F },
+ { 59, 0x0098, 0x009F, 0x0099, 0x006F },
+ { 59, 0x00A1, 0x00A7, 0x00A2, 0xFFFF },
+ { 59, 0xFFFF, 0x00A9, 0x00A3, 0x006E },
+ { 59, 0x00AC, 0x00B7, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x00B9, 0x00B3, 0x00AF },
+ { 59, 0xFFFF, 0xFFFF, 0x006D, 0xFFFF },
+ { 58, 0xFFFF, 0x0073, 0xFFFF, 0x006D },
+ { 59, 0xFFFF, 0xFFFF, 0x0075, 0xFFFF },
+ { 94, 0xFFFF, 0x00C8, 0xFFFF, 0xFFFF },
+ { 43, 0x00C9, 0x00CB, 0x00CA, 0x00C7 },
+ { 51, 0xFFFF, 0xFFFF, 0x00C8, 0xFFFF },
+ { 37, 0x00C8, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 79, 0xFFFF, 0xFFFF, 0xFFFF, 0x00C8 },
+ { 80, 0xFFFF, 0xFFFF, 0x00CB, 0x00CD },
+ { 97, 0x00E3, 0x00D4, 0x00CC, 0x00D3 },
+ { 103, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 100, 0xFFFF, 0x00CE, 0x00D5, 0xFFFF },
+ { 98, 0xFFFF, 0xFFFF, 0xFFFF, 0x00D7 },
+ { 101, 0xFFFF, 0x00D2, 0x00CE, 0xFFFF },
+ { 99, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 93, 0x00D5, 0x00CD, 0xFFFF, 0xFFFF },
+ { 93, 0x00D6, 0xFFFF, 0xFFFF, 0x00CD },
+ { 93, 0x00CF, 0x00CE, 0x00D3, 0xFFFF },
+ { 93, 0x00D7, 0xFFFF, 0x00D4, 0x00CE },
+ { 93, 0xFFFF, 0x00D0, 0x00D6, 0x00CE },
+ { 93, 0x00DA, 0x00E3, 0xFFFF, 0xFFFF },
+ { 93, 0x00DB, 0xFFFF, 0xFFFF, 0x00E3 },
+ { 93, 0xFFFF, 0x00E4, 0x00D8, 0x00E2 },
+ { 93, 0xFFFF, 0x00E1, 0x00D9, 0x00E4 },
+ { 93, 0xFFFF, 0x00E4, 0xFFFF, 0x00DF },
+ { 93, 0xFFFF, 0x00E0, 0xFFFF, 0x00E4 },
+ { 93, 0xFFFF, 0xFFFF, 0x00E4, 0xFFFF },
+ { 91, 0xFFFF, 0x00DC, 0xFFFF, 0xFFFF },
+ { 90, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DD },
+ { 92, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DB },
+ { 95, 0xFFFF, 0x00DA, 0xFFFF, 0xFFFF },
+ { 96, 0xFFFF, 0x00D9, 0x00CD, 0x00D8 },
+ { 89, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00E6, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00EA, 0x00E8, 0x00E5 },
+ { 102, 0xFFFF, 0x00E8, 0x00EB, 0xFFFF },
+ { 102, 0x00E6, 0xFFFF, 0xFFFF, 0x00E7 },
+ { 102, 0xFFFF, 0xFFFF, 0x00ED, 0xFFFF },
+ { 102, 0xFFFF, 0xFFFF, 0xFFFF, 0x00E6 },
+ { 102, 0x00E7, 0x00EC, 0x00EF, 0xFFFF },
+ { 102, 0xFFFF, 0x00ED, 0x00F0, 0x00EB },
+ { 102, 0x00E9, 0x00EE, 0x00F1, 0x00EC },
+ { 102, 0xFFFF, 0xFFFF, 0x00F2, 0x00ED },
+ { 102, 0x00EB, 0x00F0, 0xFFFF, 0xFFFF },
+ { 102, 0x00EC, 0x00F1, 0x00F3, 0x00EF },
+ { 102, 0x00ED, 0xFFFF, 0x00F4, 0x00F0 },
+ { 102, 0x00EE, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0x00F0, 0x00F4, 0xFFFF, 0xFFFF },
+ { 102, 0x00F1, 0x00F5, 0xFFFF, 0x00F3 },
+ { 102, 0xFFFF, 0xFFFF, 0x00CF, 0x00F4 }
+};
+
+static const RoomProvider k1RoomListDOSCDProvider = { ARRAYSIZE(k1RoomListDOSCD), k1RoomListDOSCD };
+
+static const char *const k1RoomFilenamesDOSCD[107] = {
+ "CLIFFB",
+ "XEDGEB",
+ "CAVEB",
+ "NCLIFF",
+ "NCLIFFB",
+ "CAVE",
+ "NWCLIFF",
+ "OAKS",
+ "PLATEAU",
+ "POTHUT",
+ "POTION",
+ "NWCLIFB",
+ "SONG",
+ "SORROW",
+ "SPELHUT",
+ "SPELL",
+ "SPRING",
+ "SQUARE",
+ "STUMP",
+ "TEMPLE",
+ "WELL",
+ "WILLOW",
+ "WISE",
+ "XEDGE",
+ "RUBY",
+ "ZROCK",
+ "ZROCKB",
+ "FORESTD",
+ "FOUNTN",
+ "GATECV",
+ "GEMCUT",
+ "CLIFF",
+ "DEAD",
+ "EDGE",
+ "EDGEB",
+ "FALLS",
+ "FORESTC",
+ "FORESTB",
+ "GLADE",
+ "GEMHUT",
+ "ALGAE",
+ "MIX",
+ "BRIDGE",
+ "GRAVE",
+ "HEALER",
+ "HEALHUT",
+ "ALTAR",
+ "BURN",
+ "SICKWIL",
+ "LAGOON",
+ "MAPLE",
+ "FORESTA",
+ "ARCH",
+ "CHASM",
+ "EMCAV",
+ "ENTER",
+ "FLOWERS",
+ "GEMSLOT",
+ "GEN_CAV",
+ "GENCAVB",
+ "GOLDEN",
+ "GOLDENB",
+ "ICE",
+ "MARKET",
+ "MOONCAV",
+ "MSHCAV",
+ "POOL",
+ "SEASONS",
+ "SHRINE",
+ "TREECAV",
+ "EXTGEM",
+ "GEM",
+ "EXTHEAL",
+ "BASE",
+ "TRUNK",
+ "BROKEN",
+ "LAVA",
+ "EXTSPEL",
+ "EXTPOT",
+ "CASTLE",
+ "CGATE",
+ "LEPHOLE",
+ "DRAGON",
+ "XEDGEC",
+ "FNORTH",
+ "FSOUTH",
+ "FGOWEST",
+ "PLTCAVE",
+ "BONKBG",
+ "BALCONY",
+ "DARMS",
+ "BRINS",
+ "ALCHEMY",
+ "GENHALL",
+ "LANDING",
+ "BELROOM",
+ "UPSTAIR",
+ "DNSTAIR",
+ "KITCHEN",
+ "KYRAGEM",
+ "LIBRARY",
+ "FOYER",
+ "CATACOM",
+ "GRTHALL",
+ "FESTSTH",
+ "FWSTSTH",
+ "FSOUTHB"
+};
+
+static const StringListProvider k1RoomFilenamesDOSCDProvider = { ARRAYSIZE(k1RoomFilenamesDOSCD), k1RoomFilenamesDOSCD };
+
+static const char *const k1CharacterImageFilenamesDOSCD[20] = {
+ "BRANDON.CPS",
+ "DAPHNE.CPS",
+ "MERITH.CPS",
+ "HERMAN.CPS",
+ "SMALL.CPS",
+ "MALCOM.CPS",
+ "DRINK.CPS",
+ "SHRINK.CPS",
+ "HEALBR1.CPS",
+ "HEALBR2.CPS",
+ "SNOW1A.CPS",
+ "SNOW2A.CPS",
+ "BRANWILL.CPS",
+ "FLUTE1.CPS",
+ "FLUTE2.CPS",
+ "POISON1.CPS",
+ "POISON2.CPS",
+ "TELEKIN.CPS",
+ "BRANSTON.CPS",
+ "POISON.CPS"
+};
+
+static const StringListProvider k1CharacterImageFilenamesDOSCDProvider = { ARRAYSIZE(k1CharacterImageFilenamesDOSCD), k1CharacterImageFilenamesDOSCD };
+
+static const Shape k1DefaultShapesDOSCD[166] = {
+ { 0, 0, 0, 3, 48, -12, -48 },
+ { 0, 3, 0, 3, 48, -12, -48 },
+ { 0, 6, 0, 3, 48, -12, -48 },
+ { 0, 9, 0, 3, 48, -12, -48 },
+ { 0, 12, 0, 3, 48, -12, -48 },
+ { 0, 15, 0, 3, 48, -12, -48 },
+ { 0, 18, 0, 3, 48, -12, -48 },
+ { 0, 21, 0, 3, 48, -12, -48 },
+ { 0, 24, 0, 3, 48, -12, -48 },
+ { 0, 27, 0, 3, 48, -12, -48 },
+ { 0, 0, 51, 2, 11, -2, -8 },
+ { 0, 2, 51, 2, 11, -2, -8 },
+ { 0, 4, 51, 2, 11, -2, -8 },
+ { 0, 6, 51, 2, 11, -2, -8 },
+ { 0, 8, 51, 2, 11, -2, -8 },
+ { 0, 10, 51, 2, 11, -2, -8 },
+ { 0, 12, 51, 2, 11, -2, -8 },
+ { 0, 14, 51, 2, 11, -2, -8 },
+ { 0, 16, 51, 2, 11, -2, -8 },
+ { 0, 18, 51, 2, 11, -2, -8 },
+ { 0, 20, 51, 2, 11, -2, -8 },
+ { 0, 22, 51, 2, 11, -2, -8 },
+ { 0, 0, 80, 3, 48, -12, -48 },
+ { 0, 3, 80, 3, 48, -12, -48 },
+ { 0, 6, 80, 3, 48, -12, -48 },
+ { 0, 9, 80, 3, 48, -12, -48 },
+ { 0, 12, 80, 3, 48, -12, -48 },
+ { 0, 15, 80, 3, 48, -12, -48 },
+ { 0, 0, 129, 3, 48, -12, -48 },
+ { 0, 3, 129, 3, 48, -12, -48 },
+ { 0, 6, 129, 3, 48, -12, -48 },
+ { 0, 9, 129, 3, 48, -12, -48 },
+ { 0, 12, 129, 3, 48, -12, -48 },
+ { 0, 15, 129, 3, 48, -12, -48 },
+ { 2, 0, 0, 3, 48, -12, -48 },
+ { 2, 3, 0, 3, 48, -12, -48 },
+ { 2, 6, 0, 3, 48, -12, -48 },
+ { 2, 9, 0, 3, 48, -12, -48 },
+ { 2, 12, 0, 3, 48, -12, -48 },
+ { 2, 15, 0, 3, 48, -12, -48 },
+ { 2, 18, 0, 3, 48, -12, -48 },
+ { 2, 21, 0, 3, 48, -12, -48 },
+ { 2, 24, 0, 3, 48, -12, -48 },
+ { 2, 27, 0, 3, 48, -12, -48 },
+ { 2, 30, 10, 3, 38, -16, -38 },
+ { 2, 27, 48, 4, 40, -8, -40 },
+ { 2, 0, 51, 2, 11, -4, 0 },
+ { 2, 2, 51, 2, 11, -4, 0 },
+ { 2, 4, 51, 2, 11, -4, 0 },
+ { 2, 6, 51, 2, 11, -4, 0 },
+ { 2, 8, 51, 2, 11, -4, 0 },
+ { 2, 10, 51, 2, 11, -4, 0 },
+ { 2, 12, 51, 2, 11, -4, 0 },
+ { 2, 14, 51, 2, 11, -4, 0 },
+ { 2, 16, 51, 2, 11, -4, 0 },
+ { 2, 18, 51, 2, 11, -4, 0 },
+ { 2, 20, 51, 2, 11, -4, 0 },
+ { 2, 22, 51, 2, 11, -4, 0 },
+ { 255, 0, 80, 3, 48, -12, -48 },
+ { 255, 3, 80, 3, 48, -12, -48 },
+ { 255, 6, 80, 3, 48, -12, -48 },
+ { 255, 9, 80, 3, 48, -12, -48 },
+ { 255, 12, 80, 3, 48, -12, -48 },
+ { 255, 15, 80, 3, 48, -12, -48 },
+ { 255, 0, 129, 3, 48, -12, -48 },
+ { 255, 3, 129, 3, 48, -12, -48 },
+ { 255, 6, 129, 3, 48, -12, -48 },
+ { 255, 9, 129, 3, 48, -12, -48 },
+ { 255, 12, 129, 3, 48, -12, -48 },
+ { 255, 15, 129, 3, 48, -12, -48 },
+ { 3, 0, 0, 3, 48, -12, -46 },
+ { 3, 3, 0, 3, 48, -12, -48 },
+ { 3, 6, 0, 3, 48, -12, -48 },
+ { 3, 9, 0, 3, 48, -12, -48 },
+ { 3, 12, 0, 3, 48, -12, -48 },
+ { 3, 15, 0, 3, 48, -12, -48 },
+ { 3, 18, 0, 3, 48, -12, -48 },
+ { 3, 21, 0, 3, 48, -12, -48 },
+ { 3, 24, 0, 3, 48, -12, -48 },
+ { 3, 27, 0, 3, 48, -12, -46 },
+ { 3, 30, 0, 3, 48, -14, -47 },
+ { 3, 39, 199, 1, 1, -12, -48 },
+ { 3, 0, 51, 2, 11, 0, -7 },
+ { 3, 2, 51, 2, 11, 0, -7 },
+ { 3, 4, 51, 2, 11, 0, -7 },
+ { 3, 6, 51, 2, 11, 0, -7 },
+ { 3, 8, 51, 2, 11, 0, -7 },
+ { 3, 10, 51, 2, 11, 0, -7 },
+ { 3, 12, 51, 2, 11, 0, -7 },
+ { 3, 14, 51, 2, 11, 0, -7 },
+ { 3, 16, 51, 2, 11, 0, -7 },
+ { 3, 18, 51, 2, 11, 0, -7 },
+ { 3, 20, 51, 2, 11, 0, -7 },
+ { 3, 22, 51, 2, 11, 0, -7 },
+ { 3, 0, 80, 3, 48, -12, -48 },
+ { 3, 3, 80, 3, 48, -12, -48 },
+ { 3, 6, 80, 3, 48, -12, -48 },
+ { 3, 9, 80, 3, 48, -12, -48 },
+ { 3, 12, 80, 3, 48, -12, -48 },
+ { 3, 15, 80, 3, 48, -12, -48 },
+ { 3, 0, 129, 3, 48, -12, -48 },
+ { 3, 3, 129, 3, 48, -12, -48 },
+ { 3, 6, 129, 3, 48, -12, -48 },
+ { 3, 9, 129, 3, 48, -12, -48 },
+ { 3, 12, 129, 3, 48, -12, -48 },
+ { 3, 15, 129, 3, 48, -12, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1DefaultShapesDOSCDProvider = { ARRAYSIZE(k1DefaultShapesDOSCD), k1DefaultShapesDOSCD };
+
+static const byte k1AmuleteAnimSeqDOSCD[42] = {
+ 0x00, 0x01, 0x02, 0x01, 0x03, 0x04, 0x03, 0x01,
+ 0x02, 0x03, 0x04, 0x05, 0x06, 0x05, 0x04, 0x05,
+ 0x07, 0x08, 0x07, 0x08, 0x09, 0x08, 0x09, 0x07,
+ 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
+ 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+ 0x16, 0xFF
+};
+
+static const ByteProvider k1AmuleteAnimSeqDOSCDProvider = { ARRAYSIZE(k1AmuleteAnimSeqDOSCD), k1AmuleteAnimSeqDOSCD };
+
+static const byte k1SpecialPalette1DOSCD[21] = {
+ 0x36, 0x25, 0x1C, 0x31, 0x21, 0x19, 0x2C, 0x1D,
+ 0x16, 0x27, 0x19, 0x13, 0x22, 0x16, 0x11, 0x1D,
+ 0x12, 0x0D, 0x18, 0x0F, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette1DOSCDProvider = { ARRAYSIZE(k1SpecialPalette1DOSCD), k1SpecialPalette1DOSCD };
+
+static const byte k1SpecialPalette2DOSCD[51] = {
+ 0x03, 0x03, 0x00, 0x37, 0x29, 0x1D, 0x33, 0x25,
+ 0x1A, 0x2D, 0x21, 0x17, 0x2A, 0x1D, 0x13, 0x26,
+ 0x19, 0x11, 0x22, 0x16, 0x0E, 0x1E, 0x12, 0x0C,
+ 0x1A, 0x0F, 0x0A, 0x16, 0x0C, 0x08, 0x12, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x2D, 0x1E, 0x13, 0x27,
+ 0x19, 0x0F, 0x22, 0x14, 0x0C, 0x1C, 0x11, 0x0A,
+ 0x17, 0x0C, 0x08
+};
+
+static const ByteProvider k1SpecialPalette2DOSCDProvider = { ARRAYSIZE(k1SpecialPalette2DOSCD), k1SpecialPalette2DOSCD };
+
+static const byte k1SpecialPalette3DOSCD[51] = {
+ 0x03, 0x03, 0x00, 0x25, 0x30, 0x1B, 0x24, 0x2C,
+ 0x18, 0x23, 0x29, 0x15, 0x22, 0x25, 0x12, 0x21,
+ 0x22, 0x11, 0x1F, 0x1D, 0x0D, 0x1B, 0x18, 0x0B,
+ 0x18, 0x13, 0x0A, 0x14, 0x0E, 0x08, 0x11, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x21, 0x22, 0x11, 0x1D,
+ 0x1C, 0x0C, 0x19, 0x15, 0x0A, 0x15, 0x0F, 0x08,
+ 0x11, 0x0A, 0x05
+};
+
+static const ByteProvider k1SpecialPalette3DOSCDProvider = { ARRAYSIZE(k1SpecialPalette3DOSCD), k1SpecialPalette3DOSCD };
+
+static const byte k1SpecialPalette4DOSCD[51] = {
+ 0x06, 0x03, 0x01, 0x33, 0x25, 0x0A, 0x2F, 0x21,
+ 0x0A, 0x2B, 0x1D, 0x08, 0x28, 0x1A, 0x08, 0x24,
+ 0x17, 0x06, 0x21, 0x22, 0x06, 0x1D, 0x11, 0x05,
+ 0x19, 0x0E, 0x05, 0x16, 0x0B, 0x03, 0x12, 0x0A,
+ 0x03, 0x0F, 0x08, 0x03, 0x28, 0x1A, 0x08, 0x22,
+ 0x15, 0x05, 0x1D, 0x11, 0x05, 0x17, 0x0C, 0x03,
+ 0x12, 0x0A, 0x03
+};
+
+static const ByteProvider k1SpecialPalette4DOSCDProvider = { ARRAYSIZE(k1SpecialPalette4DOSCD), k1SpecialPalette4DOSCD };
+
+static const byte k1SpecialPalette5DOSCD[51] = {
+ 0x03, 0x03, 0x00, 0x2A, 0x1D, 0x13, 0x27, 0x1A,
+ 0x11, 0x24, 0x18, 0x0F, 0x21, 0x15, 0x0D, 0x1E,
+ 0x13, 0x0C, 0x1C, 0x11, 0x0A, 0x19, 0x0F, 0x0A,
+ 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06, 0x11, 0x08,
+ 0x05, 0x0E, 0x08, 0x05, 0x1C, 0x11, 0x0A, 0x19,
+ 0x0E, 0x08, 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06,
+ 0x11, 0x08, 0x05
+};
+
+static const ByteProvider k1SpecialPalette5DOSCDProvider = { ARRAYSIZE(k1SpecialPalette5DOSCD), k1SpecialPalette5DOSCD };
+
+static const byte k1SpecialPalette6DOSCD[51] = {
+ 0x00, 0x08, 0x01, 0x00, 0x1E, 0x00, 0x00, 0x1B,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x17, 0x00, 0x00,
+ 0x14, 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x0A,
+ 0x00, 0x00, 0x08, 0x00, 0x13, 0x21, 0x0F, 0x11,
+ 0x1F, 0x0D, 0x0E, 0x1D, 0x0C, 0x0C, 0x1B, 0x0B,
+ 0x0A, 0x19, 0x0A
+};
+
+static const ByteProvider k1SpecialPalette6DOSCDProvider = { ARRAYSIZE(k1SpecialPalette6DOSCD), k1SpecialPalette6DOSCD };
+
+static const byte k1SpecialPalette7DOSCD[54] = {
+ 0x05, 0x2B, 0x00, 0x00, 0x22, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x16, 0x01, 0x00, 0x12, 0x03, 0x00,
+ 0x0F, 0x01, 0x00, 0x0B, 0x03, 0x0A, 0x19, 0x0A,
+ 0x2D, 0x2D, 0x32, 0x29, 0x29, 0x2D, 0x25, 0x25,
+ 0x2B, 0x1F, 0x1F, 0x26, 0x1B, 0x1B, 0x22, 0x14,
+ 0x16, 0x1D, 0x11, 0x11, 0x18, 0x0D, 0x0D, 0x14,
+ 0x0A, 0x0A, 0x0F, 0x06, 0x06, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette7DOSCDProvider = { ARRAYSIZE(k1SpecialPalette7DOSCD), k1SpecialPalette7DOSCD };
+
+static const byte k1SpecialPalette8DOSCD[54] = {
+ 0x12, 0x37, 0x3F, 0x14, 0x31, 0x3F, 0x14, 0x29,
+ 0x3F, 0x14, 0x22, 0x3F, 0x14, 0x1B, 0x3F, 0x14,
+ 0x14, 0x3F, 0x0E, 0x0F, 0x37, 0x14, 0x29, 0x3F,
+ 0x2F, 0x3F, 0x3D, 0x26, 0x3F, 0x3F, 0x15, 0x3F,
+ 0x3F, 0x14, 0x3B, 0x3F, 0x12, 0x37, 0x3F, 0x14,
+ 0x31, 0x3F, 0x14, 0x29, 0x3F, 0x14, 0x22, 0x3F,
+ 0x14, 0x1B, 0x3F, 0x14, 0x14, 0x3F
+};
+
+static const ByteProvider k1SpecialPalette8DOSCDProvider = { ARRAYSIZE(k1SpecialPalette8DOSCD), k1SpecialPalette8DOSCD };
+
+static const byte k1SpecialPalette9DOSCD[45] = {
+ 0x36, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2F, 0x00,
+ 0x00, 0x2C, 0x00, 0x00, 0x29, 0x00, 0x00, 0x26,
+ 0x00, 0x00, 0x23, 0x00, 0x00, 0x20, 0x00, 0x00,
+ 0x1C, 0x00, 0x00, 0x19, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x0D,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette9DOSCDProvider = { ARRAYSIZE(k1SpecialPalette9DOSCD), k1SpecialPalette9DOSCD };
+
+static const byte k1SpecialPalette10DOSCD[45] = {
+ 0x29, 0x00, 0x00, 0x26, 0x00, 0x00, 0x24, 0x00,
+ 0x00, 0x22, 0x00, 0x00, 0x20, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x15, 0x00, 0x00, 0x12, 0x00,
+ 0x00, 0x11, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x0C,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette10DOSCDProvider = { ARRAYSIZE(k1SpecialPalette10DOSCD), k1SpecialPalette10DOSCD };
+
+static const byte k1SpecialPalette11DOSCD[45] = {
+ 0x20, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00,
+ 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00, 0x18,
+ 0x00, 0x00, 0x16, 0x00, 0x00, 0x15, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette11DOSCDProvider = { ARRAYSIZE(k1SpecialPalette11DOSCD), k1SpecialPalette11DOSCD };
+
+static const byte k1SpecialPalette12DOSCD[45] = {
+ 0x19, 0x00, 0x00, 0x18, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x15, 0x00, 0x00, 0x14, 0x00, 0x00, 0x13,
+ 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00, 0x00,
+ 0x11, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0E, 0x00,
+ 0x00, 0x0D, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette12DOSCDProvider = { ARRAYSIZE(k1SpecialPalette12DOSCD), k1SpecialPalette12DOSCD };
+
+static const byte k1SpecialPalette13DOSCD[45] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette13DOSCDProvider = { ARRAYSIZE(k1SpecialPalette13DOSCD), k1SpecialPalette13DOSCD };
+
+static const byte k1SpecialPalette14DOSCD[60] = {
+ 0x0E, 0x28, 0x3F, 0x0C, 0x24, 0x3B, 0x0A, 0x20,
+ 0x38, 0x0A, 0x1C, 0x34, 0x08, 0x19, 0x31, 0x08,
+ 0x15, 0x2D, 0x05, 0x13, 0x2A, 0x05, 0x11, 0x27,
+ 0x03, 0x0D, 0x24, 0x03, 0x0A, 0x20, 0x03, 0x08,
+ 0x1D, 0x01, 0x06, 0x19, 0x01, 0x05, 0x16, 0x00,
+ 0x03, 0x13, 0x00, 0x01, 0x0F, 0x00, 0x01, 0x0C,
+ 0x00, 0x00, 0x08, 0x00, 0x00, 0x05, 0x00, 0x00,
+ 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette14DOSCDProvider = { ARRAYSIZE(k1SpecialPalette14DOSCD), k1SpecialPalette14DOSCD };
+
+static const byte k1SpecialPalette15DOSCD[45] = {
+ 0x24, 0x00, 0x39, 0x21, 0x00, 0x36, 0x1F, 0x00,
+ 0x32, 0x1C, 0x00, 0x2D, 0x1A, 0x00, 0x2A, 0x17,
+ 0x00, 0x26, 0x15, 0x00, 0x22, 0x12, 0x00, 0x1E,
+ 0x11, 0x00, 0x1A, 0x0E, 0x00, 0x16, 0x0B, 0x00,
+ 0x12, 0x0A, 0x00, 0x0F, 0x06, 0x00, 0x0B, 0x05,
+ 0x00, 0x08, 0x01, 0x00, 0x03
+};
+
+static const ByteProvider k1SpecialPalette15DOSCDProvider = { ARRAYSIZE(k1SpecialPalette15DOSCD), k1SpecialPalette15DOSCD };
+
+static const byte k1SpecialPalette16DOSCD[33] = {
+ 0x00, 0x3F, 0x3F, 0x00, 0x38, 0x38, 0x00, 0x34,
+ 0x34, 0x00, 0x30, 0x30, 0x00, 0x2D, 0x2D, 0x00,
+ 0x29, 0x29, 0x00, 0x25, 0x25, 0x00, 0x1F, 0x1F,
+ 0x00, 0x1B, 0x1B, 0x00, 0x16, 0x16, 0x00, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette16DOSCDProvider = { ARRAYSIZE(k1SpecialPalette16DOSCD), k1SpecialPalette16DOSCD };
+
+static const byte k1SpecialPalette17DOSCD[33] = {
+ 0x3B, 0x3B, 0x3B, 0x36, 0x36, 0x36, 0x32, 0x32,
+ 0x32, 0x2D, 0x2D, 0x2D, 0x2A, 0x2A, 0x2A, 0x26,
+ 0x26, 0x26, 0x21, 0x21, 0x21, 0x1D, 0x1D, 0x1D,
+ 0x19, 0x19, 0x19, 0x15, 0x15, 0x15, 0x11, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette17DOSCDProvider = { ARRAYSIZE(k1SpecialPalette17DOSCD), k1SpecialPalette17DOSCD };
+
+static const byte k1SpecialPalette18DOSCD[21] = {
+ 0x0F, 0x23, 0x1C, 0x2A, 0x36, 0x3F, 0x24, 0x2F,
+ 0x38, 0x1F, 0x2A, 0x32, 0x1A, 0x24, 0x2B, 0x15,
+ 0x1E, 0x25, 0x11, 0x19, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette18DOSCDProvider = { ARRAYSIZE(k1SpecialPalette18DOSCD), k1SpecialPalette18DOSCD };
+
+static const byte k1SpecialPalette19DOSCD[21] = {
+ 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00,
+ 0x38, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00,
+ 0x00, 0x25, 0x00, 0x00, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette19DOSCDProvider = { ARRAYSIZE(k1SpecialPalette19DOSCD), k1SpecialPalette19DOSCD };
+
+static const byte k1SpecialPalette20DOSCD[21] = {
+ 0x26, 0x1B, 0x1B, 0x3F, 0x34, 0x34, 0x3B, 0x2F,
+ 0x2F, 0x39, 0x2B, 0x2B, 0x36, 0x26, 0x27, 0x33,
+ 0x22, 0x23, 0x31, 0x1F, 0x20
+};
+
+static const ByteProvider k1SpecialPalette20DOSCDProvider = { ARRAYSIZE(k1SpecialPalette20DOSCD), k1SpecialPalette20DOSCD };
+
+static const byte k1SpecialPalette21DOSCD[21] = {
+ 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x38, 0x00,
+ 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x25,
+ 0x00, 0x00, 0x1F, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette21DOSCDProvider = { ARRAYSIZE(k1SpecialPalette21DOSCD), k1SpecialPalette21DOSCD };
+
+static const byte k1SpecialPalette22DOSCD[21] = {
+ 0x1F, 0x1F, 0x0C, 0x3F, 0x3F, 0x21, 0x3B, 0x3B,
+ 0x1F, 0x37, 0x37, 0x1D, 0x34, 0x34, 0x1B, 0x30,
+ 0x30, 0x19, 0x2D, 0x2D, 0x17
+};
+
+static const ByteProvider k1SpecialPalette22DOSCDProvider = { ARRAYSIZE(k1SpecialPalette22DOSCD), k1SpecialPalette22DOSCD };
+
+static const byte k1SpecialPalette23DOSCD[21] = {
+ 0x1F, 0x1F, 0x00, 0x3F, 0x3F, 0x00, 0x3B, 0x3B,
+ 0x00, 0x37, 0x37, 0x00, 0x34, 0x34, 0x00, 0x30,
+ 0x30, 0x00, 0x2D, 0x2D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette23DOSCDProvider = { ARRAYSIZE(k1SpecialPalette23DOSCD), k1SpecialPalette23DOSCD };
+
+static const byte k1SpecialPalette24DOSCD[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D,
+ 0x0D, 0x1B, 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18,
+ 0x0A, 0x08, 0x17, 0x08, 0x08, 0x16, 0x08, 0x08,
+ 0x15, 0x06, 0x06, 0x14, 0x06, 0x06, 0x11, 0x06
+};
+
+static const ByteProvider k1SpecialPalette24DOSCDProvider = { ARRAYSIZE(k1SpecialPalette24DOSCD), k1SpecialPalette24DOSCD };
+
+static const byte k1SpecialPalette25DOSCD[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x36, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D, 0x1B,
+ 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18, 0x0A, 0x0A,
+ 0x18, 0x0A, 0x0A, 0x18, 0x0A, 0x06, 0x14, 0x06
+};
+
+static const ByteProvider k1SpecialPalette25DOSCDProvider = { ARRAYSIZE(k1SpecialPalette25DOSCD), k1SpecialPalette25DOSCD };
+
+static const byte k1SpecialPalette26DOSCD[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x11,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0A,
+ 0x19, 0x0A, 0x0A, 0x19, 0x0A, 0x06, 0x13, 0x06
+};
+
+static const ByteProvider k1SpecialPalette26DOSCDProvider = { ARRAYSIZE(k1SpecialPalette26DOSCD), k1SpecialPalette26DOSCD };
+
+static const byte k1SpecialPalette27DOSCD[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x19, 0x0C, 0x0D, 0x19, 0x0C, 0x08, 0x16, 0x08
+};
+
+static const ByteProvider k1SpecialPalette27DOSCDProvider = { ARRAYSIZE(k1SpecialPalette27DOSCD), k1SpecialPalette27DOSCD };
+
+static const byte k1SpecialPalette28DOSCD[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x1B, 0x0C, 0x0D, 0x1B, 0x0C, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette28DOSCDProvider = { ARRAYSIZE(k1SpecialPalette28DOSCD), k1SpecialPalette28DOSCD };
+
+static const byte k1SpecialPalette29DOSCD[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E,
+ 0x1D, 0x0D, 0x0E, 0x1D, 0x0D, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette29DOSCDProvider = { ARRAYSIZE(k1SpecialPalette29DOSCD), k1SpecialPalette29DOSCD };
+
+static const byte k1SpecialPalette30DOSCD[60] = {
+ 0x1E, 0x1D, 0x3F, 0x1A, 0x19, 0x3F, 0x14, 0x12,
+ 0x3B, 0x12, 0x11, 0x37, 0x11, 0x11, 0x33, 0x0F,
+ 0x0E, 0x2F, 0x0E, 0x0D, 0x2C, 0x0D, 0x0C, 0x28,
+ 0x0B, 0x0B, 0x24, 0x0A, 0x0A, 0x20, 0x0A, 0x0A,
+ 0x1D, 0x05, 0x05, 0x18, 0x03, 0x03, 0x13, 0x01,
+ 0x01, 0x11, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x05,
+ 0x00, 0x0A, 0x1A, 0x00, 0x0F, 0x13, 0x00, 0x14,
+ 0x11, 0x0F, 0x0D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette30DOSCDProvider = { ARRAYSIZE(k1SpecialPalette30DOSCD), k1SpecialPalette30DOSCD };
+
+static const byte k1SpecialPalette31DOSCD[39] = {
+ 0x2B, 0x19, 0x34, 0x27, 0x17, 0x30, 0x23, 0x14,
+ 0x2C, 0x20, 0x12, 0x27, 0x1C, 0x11, 0x23, 0x18,
+ 0x0E, 0x1E, 0x15, 0x0C, 0x1A, 0x11, 0x0A, 0x15,
+ 0x0E, 0x08, 0x11, 0x0A, 0x05, 0x0C, 0x06, 0x03,
+ 0x08, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette31DOSCDProvider = { ARRAYSIZE(k1SpecialPalette31DOSCD), k1SpecialPalette31DOSCD };
+
+static const byte k1SpecialPalette32DOSCD[39] = {
+ 0x12, 0x12, 0x16, 0x11, 0x11, 0x14, 0x0F, 0x0F,
+ 0x12, 0x0D, 0x0D, 0x11, 0x0B, 0x0B, 0x0E, 0x0A,
+ 0x0A, 0x0C, 0x08, 0x08, 0x0A, 0x08, 0x08, 0x08,
+ 0x05, 0x05, 0x06, 0x05, 0x05, 0x05, 0x03, 0x03,
+ 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette32DOSCDProvider = { ARRAYSIZE(k1SpecialPalette32DOSCD), k1SpecialPalette32DOSCD };
+
+static const byte k1SpecialPalette33DOSCD[60] = {
+ 0x3F, 0x3D, 0x2F, 0x3F, 0x3D, 0x29, 0x3F, 0x3D,
+ 0x23, 0x3F, 0x3D, 0x1D, 0x3F, 0x3B, 0x17, 0x3F,
+ 0x3B, 0x11, 0x3F, 0x3B, 0x0B, 0x3F, 0x3B, 0x05,
+ 0x3F, 0x3B, 0x00, 0x3D, 0x38, 0x00, 0x3B, 0x34,
+ 0x00, 0x39, 0x33, 0x00, 0x39, 0x30, 0x00, 0x37,
+ 0x2D, 0x00, 0x36, 0x2B, 0x00, 0x34, 0x28, 0x00,
+ 0x33, 0x26, 0x00, 0x32, 0x24, 0x00, 0x30, 0x22,
+ 0x00, 0x2F, 0x20, 0x00
+};
+
+static const ByteProvider k1SpecialPalette33DOSCDProvider = { ARRAYSIZE(k1SpecialPalette33DOSCD), k1SpecialPalette33DOSCD };
+
+static const Shape k1Healing1ShapesDOSCD[22] = {
+ { 8, 0, 0, 3, 48, -12, -48 },
+ { 8, 3, 0, 3, 48, -12, -48 },
+ { 8, 6, 0, 3, 48, -12, -48 },
+ { 8, 9, 0, 3, 48, -12, -48 },
+ { 8, 12, 0, 3, 48, -12, -48 },
+ { 8, 15, 0, 3, 48, -12, -48 },
+ { 8, 18, 0, 3, 48, -12, -48 },
+ { 8, 21, 0, 3, 48, -12, -48 },
+ { 8, 24, 0, 3, 48, -12, -48 },
+ { 8, 27, 0, 3, 48, -12, -48 },
+ { 8, 30, 0, 3, 48, -12, -48 },
+ { 8, 33, 0, 3, 48, -12, -48 },
+ { 8, 0, 48, 3, 48, -12, -48 },
+ { 8, 3, 48, 3, 48, -12, -48 },
+ { 8, 6, 48, 3, 48, -12, -48 },
+ { 8, 9, 48, 3, 48, -12, -48 },
+ { 8, 12, 48, 3, 48, -12, -48 },
+ { 8, 15, 48, 3, 48, -12, -48 },
+ { 8, 18, 48, 3, 48, -12, -48 },
+ { 8, 21, 48, 3, 48, -12, -48 },
+ { 8, 24, 48, 3, 48, -12, -48 },
+ { 8, 27, 48, 3, 48, -12, -48 }
+};
+
+static const ShapeProvider k1Healing1ShapesDOSCDProvider = { ARRAYSIZE(k1Healing1ShapesDOSCD), k1Healing1ShapesDOSCD };
+
+static const Shape k1Healing2ShapesDOSCD[30] = {
+ { 9, 0, 0, 3, 48, -11, -48 },
+ { 9, 3, 0, 3, 48, -11, -48 },
+ { 9, 6, 0, 3, 48, -11, -48 },
+ { 9, 9, 0, 3, 48, -11, -48 },
+ { 9, 12, 0, 3, 48, -11, -48 },
+ { 9, 15, 0, 3, 48, -11, -48 },
+ { 9, 18, 0, 3, 48, -11, -48 },
+ { 9, 21, 0, 3, 48, -11, -48 },
+ { 9, 24, 0, 3, 48, -11, -48 },
+ { 9, 27, 0, 3, 48, -11, -48 },
+ { 9, 30, 0, 3, 48, -11, -48 },
+ { 9, 33, 0, 3, 48, -11, -48 },
+ { 9, 0, 48, 3, 48, -11, -48 },
+ { 9, 3, 48, 3, 48, -11, -48 },
+ { 9, 6, 48, 3, 48, -11, -48 },
+ { 9, 9, 48, 3, 48, -11, -48 },
+ { 9, 12, 48, 3, 48, -11, -48 },
+ { 9, 15, 48, 3, 48, -11, -48 },
+ { 9, 18, 48, 3, 48, -11, -48 },
+ { 9, 21, 48, 3, 48, -11, -48 },
+ { 9, 24, 48, 3, 48, -11, -48 },
+ { 9, 27, 48, 3, 48, -11, -48 },
+ { 9, 30, 48, 3, 48, -11, -48 },
+ { 9, 33, 48, 3, 48, -11, -48 },
+ { 9, 0, 96, 3, 48, -11, -48 },
+ { 9, 3, 96, 3, 48, -11, -48 },
+ { 9, 6, 96, 3, 48, -11, -48 },
+ { 9, 9, 96, 3, 48, -11, -48 },
+ { 9, 12, 96, 3, 48, -11, -48 },
+ { 9, 15, 96, 3, 48, -11, -48 }
+};
+
+static const ShapeProvider k1Healing2ShapesDOSCDProvider = { ARRAYSIZE(k1Healing2ShapesDOSCD), k1Healing2ShapesDOSCD };
+
+static const Shape k1PoisonDeathShapesDOSCD[20] = {
+ { 19, 0, 0, 8, 48, -31, -48 },
+ { 19, 8, 0, 8, 48, -31, -48 },
+ { 19, 16, 0, 8, 48, -31, -48 },
+ { 19, 24, 0, 8, 48, -31, -48 },
+ { 19, 32, 0, 8, 48, -31, -48 },
+ { 19, 0, 48, 8, 48, -31, -48 },
+ { 19, 8, 48, 8, 48, -31, -48 },
+ { 19, 16, 48, 8, 48, -31, -48 },
+ { 19, 24, 48, 8, 48, -31, -48 },
+ { 19, 32, 48, 8, 48, -31, -48 },
+ { 19, 0, 96, 8, 48, -31, -48 },
+ { 19, 8, 96, 8, 48, -31, -48 },
+ { 19, 16, 96, 8, 48, -31, -48 },
+ { 19, 24, 96, 8, 48, -31, -48 },
+ { 19, 32, 96, 8, 48, -31, -48 },
+ { 19, 0, 144, 8, 48, -31, -48 },
+ { 19, 8, 144, 8, 48, -31, -48 },
+ { 19, 16, 144, 8, 48, -31, -48 },
+ { 19, 24, 144, 8, 48, -31, -48 },
+ { 19, 32, 144, 8, 48, -31, -48 }
+};
+
+static const ShapeProvider k1PoisonDeathShapesDOSCDProvider = { ARRAYSIZE(k1PoisonDeathShapesDOSCD), k1PoisonDeathShapesDOSCD };
+
+static const Shape k1FluteShapesDOSCD[36] = {
+ { 13, 0, 0, 3, 75, -12, -75 },
+ { 13, 3, 0, 3, 75, -12, -75 },
+ { 13, 6, 0, 3, 75, -12, -75 },
+ { 13, 9, 0, 3, 75, -12, -75 },
+ { 13, 12, 0, 3, 75, -12, -75 },
+ { 13, 15, 0, 3, 75, -12, -75 },
+ { 13, 18, 0, 3, 75, -12, -75 },
+ { 13, 21, 0, 3, 75, -12, -75 },
+ { 13, 24, 0, 3, 75, -12, -75 },
+ { 13, 27, 0, 3, 75, -12, -75 },
+ { 13, 30, 0, 3, 75, -12, -75 },
+ { 13, 33, 0, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 13, 0, 75, 3, 75, -12, -75 },
+ { 13, 3, 75, 3, 75, -12, -75 },
+ { 13, 6, 75, 3, 75, -12, -75 },
+ { 13, 9, 75, 3, 75, -12, -75 },
+ { 13, 12, 75, 3, 75, -12, -75 },
+ { 13, 15, 75, 3, 75, -12, -75 },
+ { 13, 18, 75, 3, 75, -12, -75 },
+ { 13, 21, 75, 3, 75, -12, -75 },
+ { 13, 24, 75, 3, 75, -12, -75 },
+ { 13, 27, 75, 3, 75, -12, -75 },
+ { 13, 30, 75, 3, 75, -12, -75 },
+ { 13, 33, 75, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 14, 0, 0, 3, 75, -12, -75 },
+ { 14, 3, 0, 3, 75, -12, -75 },
+ { 14, 6, 0, 3, 75, -12, -75 },
+ { 14, 9, 0, 3, 75, -12, -75 },
+ { 14, 12, 0, 3, 75, -12, -75 },
+ { 14, 15, 0, 3, 75, -12, -75 },
+ { 14, 18, 0, 3, 75, -12, -75 },
+ { 14, 21, 0, 3, 75, -12, -75 },
+ { 14, 24, 0, 3, 75, -12, -75 },
+ { 14, 27, 0, 3, 75, -12, -75 }
+};
+
+static const ShapeProvider k1FluteShapesDOSCDProvider = { ARRAYSIZE(k1FluteShapesDOSCD), k1FluteShapesDOSCD };
+
+static const Shape k1Winter1ShapesDOSCD[7] = {
+ { 10, 5, 0, 5, 66, -20, -65 },
+ { 10, 10, 0, 5, 66, -20, -65 },
+ { 10, 15, 0, 5, 66, -20, -65 },
+ { 10, 20, 0, 5, 66, -20, -65 },
+ { 10, 25, 0, 5, 66, -20, -65 },
+ { 10, 30, 0, 5, 66, -20, -65 },
+ { 10, 35, 0, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter1ShapesDOSCDProvider = { ARRAYSIZE(k1Winter1ShapesDOSCD), k1Winter1ShapesDOSCD };
+
+static const Shape k1Winter2ShapesDOSCD[35] = {
+ { 10, 0, 66, 5, 66, -20, -65 },
+ { 10, 10, 66, 5, 66, -20, -65 },
+ { 10, 20, 66, 5, 66, -20, -65 },
+ { 10, 30, 66, 5, 66, -20, -65 },
+ { 10, 0, 132, 5, 66, -20, -65 },
+ { 10, 10, 132, 5, 66, -20, -65 },
+ { 10, 20, 132, 5, 66, -20, -65 },
+ { 10, 30, 132, 5, 66, -20, -65 },
+ { 11, 0, 0, 5, 66, -20, -65 },
+ { 11, 10, 0, 5, 66, -20, -65 },
+ { 11, 20, 0, 5, 66, -20, -65 },
+ { 11, 30, 0, 5, 66, -20, -65 },
+ { 11, 0, 66, 5, 66, -20, -65 },
+ { 11, 10, 66, 5, 66, -20, -65 },
+ { 11, 20, 66, 5, 66, -20, -65 },
+ { 11, 30, 66, 5, 66, -20, -65 },
+ { 11, 0, 132, 5, 66, -20, -65 },
+ { 11, 10, 132, 5, 66, -20, -65 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 },
+ { 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1Winter2ShapesDOSCDProvider = { ARRAYSIZE(k1Winter2ShapesDOSCD), k1Winter2ShapesDOSCD };
+
+static const Shape k1Winter3ShapesDOSCD[4] = {
+ { 11, 15, 132, 5, 66, -20, -65 },
+ { 11, 20, 132, 5, 66, -20, -65 },
+ { 11, 25, 132, 5, 66, -20, -65 },
+ { 11, 30, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter3ShapesDOSCDProvider = { ARRAYSIZE(k1Winter3ShapesDOSCD), k1Winter3ShapesDOSCD };
+
+static const Shape k1DrinkShapesDOSCD[15] = {
+ { 6, 0, 0, 4, 48, -20, -48 },
+ { 6, 4, 0, 4, 48, -20, -48 },
+ { 6, 8, 0, 4, 48, -20, -48 },
+ { 6, 12, 0, 4, 48, -20, -48 },
+ { 6, 16, 0, 4, 48, -20, -48 },
+ { 6, 20, 0, 5, 48, -20, -48 },
+ { 6, 0, 48, 5, 54, -20, -54 },
+ { 6, 5, 48, 5, 54, -20, -54 },
+ { 6, 10, 48, 5, 54, -20, -54 },
+ { 7, 0, 0, 3, 43, -12, -43 },
+ { 7, 3, 3, 2, 40, -8, -40 },
+ { 7, 5, 7, 2, 36, -8, -36 },
+ { 7, 7, 10, 2, 33, -8, -33 },
+ { 7, 9, 12, 2, 31, -8, -31 },
+ { 7, 11, 15, 2, 28, -8, -28 }
+};
+
+static const ShapeProvider k1DrinkShapesDOSCDProvider = { ARRAYSIZE(k1DrinkShapesDOSCD), k1DrinkShapesDOSCD };
+
+static const Shape k1WispShapesDOSCD[26] = {
+ { 12, 0, 0, 5, 48, -20, -48 },
+ { 12, 5, 0, 5, 48, -20, -48 },
+ { 12, 10, 0, 5, 48, -20, -48 },
+ { 12, 15, 0, 5, 48, -20, -48 },
+ { 12, 20, 0, 5, 48, -20, -48 },
+ { 12, 25, 0, 5, 48, -20, -48 },
+ { 12, 30, 0, 5, 48, -20, -48 },
+ { 12, 35, 0, 5, 48, -20, -48 },
+ { 12, 0, 48, 5, 48, -20, -48 },
+ { 12, 5, 48, 5, 48, -20, -48 },
+ { 12, 10, 48, 5, 48, -20, -48 },
+ { 12, 15, 48, 5, 48, -20, -48 },
+ { 12, 20, 48, 5, 48, -20, -48 },
+ { 12, 25, 48, 5, 48, -20, -48 },
+ { 12, 30, 48, 5, 48, -20, -48 },
+ { 12, 35, 48, 5, 48, -20, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 }
+};
+
+static const ShapeProvider k1WispShapesDOSCDProvider = { ARRAYSIZE(k1WispShapesDOSCD), k1WispShapesDOSCD };
+
+static const Shape k1MagicAnimShapesDOSCD[5] = {
+ { 17, 0, 0, 8, 49, -32, -49 },
+ { 17, 8, 0, 8, 49, -32, -49 },
+ { 17, 16, 0, 8, 49, -32, -49 },
+ { 17, 24, 0, 8, 49, -32, -49 },
+ { 17, 32, 0, 8, 49, -32, -49 }
+};
+
+static const ShapeProvider k1MagicAnimShapesDOSCDProvider = { ARRAYSIZE(k1MagicAnimShapesDOSCD), k1MagicAnimShapesDOSCD };
+
+static const Shape k1BranStoneShapesDOSCD[15] = {
+ { 18, 0, 0, 5, 51, -20, -50 },
+ { 18, 5, 0, 5, 51, -20, -50 },
+ { 18, 10, 0, 5, 51, -20, -50 },
+ { 18, 15, 0, 5, 51, -20, -50 },
+ { 18, 20, 0, 5, 51, -20, -50 },
+ { 18, 25, 0, 5, 51, -20, -50 },
+ { 18, 30, 0, 5, 51, -20, -50 },
+ { 18, 35, 0, 5, 51, -20, -50 },
+ { 18, 0, 51, 5, 51, -20, -50 },
+ { 18, 5, 51, 5, 51, -20, -50 },
+ { 18, 10, 51, 5, 51, -20, -50 },
+ { 18, 15, 51, 5, 51, -20, -50 },
+ { 18, 20, 51, 5, 51, -20, -50 },
+ { 18, 25, 51, 5, 51, -20, -50 },
+ { 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1BranStoneShapesDOSCDProvider = { ARRAYSIZE(k1BranStoneShapesDOSCD), k1BranStoneShapesDOSCD };
+
+static const byte k1OutroReunionSeqDOSCD[1509] = {
+ 0x23, 0x21, 0x1D, 0x00, 0x08, 0x01, 0x24, 0x20,
+ 0x24, 0x1D, 0x24, 0x1E, 0x24, 0x1F, 0x06, 0x01,
+ 0x00, 0x02, 0x08, 0x00, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x17, 0x0B, 0x00, 0x03, 0x08, 0x08,
+ 0x08, 0x00, 0x0C, 0x00, 0x09, 0x00, 0x22, 0x1D,
+ 0x13, 0x20, 0x5A, 0x00, 0x3A, 0x02, 0x02, 0x08,
+ 0x0D, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00, 0x02,
+ 0x08, 0x0E, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00,
+ 0x02, 0x08, 0x0C, 0x50, 0x00, 0x22, 0x08, 0x10,
+ 0x00, 0x02, 0x08, 0x0B, 0x50, 0x00, 0x22, 0x08,
+ 0x10, 0x00, 0x02, 0x08, 0x0C, 0x50, 0x00, 0x22,
+ 0x08, 0x10, 0x00, 0x02, 0x08, 0x0D, 0x50, 0x00,
+ 0x22, 0x08, 0x10, 0x00, 0x02, 0x08, 0x0E, 0x50,
+ 0x00, 0x22, 0x08, 0x10, 0x00, 0x0B, 0x01, 0x03,
+ 0x08, 0x08, 0x08, 0x00, 0x0C, 0x01, 0x04, 0x00,
+ 0x22, 0x1E, 0x13, 0x21, 0x5A, 0x00, 0x3A, 0x02,
+ 0x0B, 0x02, 0x02, 0x08, 0x14, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x03, 0x08, 0x08, 0x08, 0x00,
+ 0x03, 0x08, 0x08, 0x08, 0x00, 0x03, 0x08, 0x08,
+ 0x08, 0x00, 0x03, 0x08, 0x08, 0x08, 0x00, 0x0C,
+ 0x02, 0x01, 0x00, 0x03, 0x08, 0x08, 0x08, 0x00,
+ 0x03, 0x08, 0x08, 0x08, 0x00, 0x03, 0x08, 0x08,
+ 0x08, 0x00, 0x22, 0x1F, 0x13, 0x22, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0B, 0x03, 0x03, 0x08, 0x08, 0x08,
+ 0x00, 0x0C, 0x03, 0x0B, 0x00, 0x22, 0x20, 0x13,
+ 0x23, 0x78, 0x00, 0x3A, 0x0F, 0x0B, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x00, 0x0C, 0x03, 0x05, 0x00,
+ 0x07, 0x28, 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00,
+ 0x22, 0x08, 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50,
+ 0x00, 0x22, 0x08, 0x10, 0x00, 0x02, 0x08, 0x2E,
+ 0x50, 0x00, 0x22, 0x08, 0x10, 0x00, 0x02, 0x08,
+ 0x2D, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00, 0x02,
+ 0x08, 0x2E, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00,
+ 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22, 0x08, 0x10,
+ 0x00, 0x02, 0x08, 0x2F, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x30, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x02, 0x08, 0x31, 0x50, 0x00,
+ 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x32, 0x50,
+ 0x00, 0x22, 0x08, 0x08, 0x00, 0x06, 0x0A, 0x00,
+ 0x22, 0x21, 0x13, 0x24, 0x5A, 0x00, 0x3A, 0x02,
+ 0x02, 0x08, 0x33, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x02, 0x08, 0x36, 0x50, 0x00,
+ 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x37, 0x50,
+ 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x35,
+ 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08,
+ 0x34, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x33, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x36, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x37, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x07, 0x0A, 0x00, 0x22, 0x22,
+ 0x13, 0x25, 0x5A, 0x00, 0x3A, 0x02, 0x02, 0x08,
+ 0x33, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x34, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x36, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x37, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x02, 0x08, 0x35, 0x50, 0x00,
+ 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x34, 0x50,
+ 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x33,
+ 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08,
+ 0x35, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x36, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x37, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x07, 0x1E, 0x00, 0x22, 0x23, 0x13, 0x26,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x38, 0x50,
+ 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x39,
+ 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08,
+ 0x3A, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x38, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x3B, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x07, 0x0A, 0x00, 0x02, 0x08, 0x39, 0x50,
+ 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x38,
+ 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08,
+ 0x39, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x3A, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x07, 0x3C, 0x00, 0x14, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x32,
+ 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08,
+ 0x31, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x30, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x2F, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x07, 0x1E, 0x00, 0x02, 0x08,
+ 0x2E, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x41, 0x50,
+ 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08, 0x42,
+ 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08,
+ 0x43, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x44, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x45, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x46, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x07, 0x0A, 0x00, 0x22, 0x24, 0x13,
+ 0x27, 0x78, 0x00, 0x3A, 0x0F, 0x0B, 0x05, 0x02,
+ 0x08, 0x59, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x5A, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x5B, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x5C, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x02, 0x08, 0x5D, 0x50, 0x00,
+ 0x22, 0x08, 0x08, 0x00, 0x0D, 0x05, 0x01, 0x00,
+ 0x02, 0x08, 0x5C, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x06, 0x28, 0x00, 0x24, 0x25, 0x02, 0x08,
+ 0x4E, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x4F, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x22, 0x25, 0x13, 0x28, 0x5A, 0x00, 0x3A, 0x02,
+ 0x02, 0x08, 0x50, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x51, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x55, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x07, 0x3C, 0x00, 0x22, 0x26,
+ 0x13, 0x29, 0x78, 0x00, 0x3A, 0x0F, 0x0B, 0x06,
+ 0x02, 0x08, 0x59, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x02, 0x08, 0x5A, 0x50, 0x00, 0x22, 0x08,
+ 0x08, 0x00, 0x02, 0x08, 0x5B, 0x50, 0x00, 0x22,
+ 0x08, 0x08, 0x00, 0x02, 0x08, 0x5C, 0x50, 0x00,
+ 0x22, 0x08, 0x08, 0x00, 0x0C, 0x06, 0x02, 0x00,
+ 0x07, 0x1E, 0x00, 0x22, 0x27, 0x13, 0x2A, 0x78,
+ 0x00, 0x3A, 0x0F, 0x0B, 0x06, 0x02, 0x08, 0x59,
+ 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02, 0x08,
+ 0x5A, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00, 0x02,
+ 0x08, 0x5B, 0x50, 0x00, 0x22, 0x08, 0x08, 0x00,
+ 0x02, 0x08, 0x5C, 0x50, 0x00, 0x22, 0x08, 0x08,
+ 0x00, 0x0C, 0x06, 0x02, 0x00, 0x02, 0x08, 0x5E,
+ 0x50, 0x00, 0x22, 0x08, 0x10, 0x00, 0x02, 0x08,
+ 0x63, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00, 0x07,
+ 0x3C, 0x00, 0x24, 0x28, 0x14, 0x1B, 0x69, 0x02,
+ 0x08, 0x64, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00,
+ 0x02, 0x08, 0x65, 0x50, 0x00, 0x22, 0x08, 0x10,
+ 0x00, 0x1B, 0x74, 0x02, 0x08, 0x66, 0x50, 0x00,
+ 0x22, 0x08, 0x10, 0x00, 0x02, 0x08, 0x67, 0x50,
+ 0x00, 0x22, 0x08, 0x10, 0x00, 0x1B, 0x75, 0x02,
+ 0x08, 0x68, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00,
+ 0x02, 0x08, 0x69, 0x50, 0x00, 0x22, 0x08, 0x10,
+ 0x00, 0x02, 0x08, 0x6C, 0x50, 0x00, 0x22, 0x08,
+ 0x01, 0x00, 0x22, 0x28, 0x13, 0x2B, 0x96, 0x00,
+ 0x1C, 0x22, 0x0B, 0x06, 0x0E, 0x28, 0x02, 0x08,
+ 0x69, 0x50, 0x00, 0x22, 0x08, 0x06, 0x00, 0x0E,
+ 0x28, 0x02, 0x08, 0x6A, 0x50, 0x00, 0x22, 0x08,
+ 0x06, 0x00, 0x0E, 0x28, 0x02, 0x08, 0x6B, 0x50,
+ 0x00, 0x22, 0x08, 0x06, 0x00, 0x0E, 0x28, 0x02,
+ 0x08, 0x6C, 0x50, 0x00, 0x22, 0x08, 0x06, 0x00,
+ 0x0E, 0x28, 0x02, 0x08, 0x6D, 0x50, 0x00, 0x22,
+ 0x08, 0x06, 0x00, 0x0E, 0x28, 0x02, 0x08, 0x6E,
+ 0x50, 0x00, 0x22, 0x08, 0x06, 0x00, 0x0E, 0x28,
+ 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22, 0x08, 0x06,
+ 0x00, 0x0E, 0x28, 0x02, 0x08, 0x70, 0x50, 0x00,
+ 0x22, 0x08, 0x06, 0x00, 0x0E, 0x28, 0x02, 0x08,
+ 0x71, 0x50, 0x00, 0x22, 0x08, 0x06, 0x00, 0x0D,
+ 0x06, 0x02, 0x00, 0x0E, 0x00, 0x02, 0x08, 0x6C,
+ 0x50, 0x00, 0x22, 0x08, 0x05, 0x00, 0x06, 0x1E,
+ 0x00, 0x22, 0x29, 0x13, 0x2C, 0x96, 0x00, 0x1C,
+ 0x22, 0x0E, 0x00, 0x0B, 0x06, 0x0E, 0x32, 0x02,
+ 0x08, 0x6B, 0x50, 0x00, 0x22, 0x08, 0x06, 0x00,
+ 0x0E, 0x32, 0x02, 0x08, 0x6C, 0x50, 0x00, 0x22,
+ 0x08, 0x06, 0x00, 0x0E, 0x32, 0x02, 0x08, 0x6D,
+ 0x50, 0x00, 0x22, 0x08, 0x06, 0x00, 0x0E, 0x32,
+ 0x02, 0x08, 0x6E, 0x50, 0x00, 0x22, 0x08, 0x06,
+ 0x00, 0x0E, 0x32, 0x02, 0x08, 0x6F, 0x50, 0x00,
+ 0x22, 0x08, 0x06, 0x00, 0x0E, 0x32, 0x02, 0x08,
+ 0x70, 0x50, 0x00, 0x22, 0x08, 0x06, 0x00, 0x0E,
+ 0x32, 0x02, 0x08, 0x71, 0x50, 0x00, 0x22, 0x08,
+ 0x06, 0x00, 0x0D, 0x06, 0x02, 0x00, 0x0E, 0x00,
+ 0x02, 0x08, 0x6C, 0x50, 0x00, 0x22, 0x08, 0x06,
+ 0x00, 0x06, 0x1E, 0x00, 0x22, 0x2A, 0x13, 0x2D,
+ 0x96, 0x00, 0x1C, 0x22, 0x0E, 0x00, 0x0B, 0x06,
+ 0x0E, 0x32, 0x02, 0x08, 0x6B, 0x50, 0x00, 0x22,
+ 0x08, 0x06, 0x00, 0x0E, 0x32, 0x02, 0x08, 0x6C,
+ 0x50, 0x00, 0x22, 0x08, 0x06, 0x00, 0x0E, 0x32,
+ 0x02, 0x08, 0x6D, 0x50, 0x00, 0x22, 0x08, 0x06,
+ 0x00, 0x0E, 0x32, 0x02, 0x08, 0x6E, 0x50, 0x00,
+ 0x22, 0x08, 0x06, 0x00, 0x0E, 0x32, 0x02, 0x08,
+ 0x6F, 0x50, 0x00, 0x22, 0x08, 0x06, 0x00, 0x0E,
+ 0x32, 0x02, 0x08, 0x70, 0x50, 0x00, 0x22, 0x08,
+ 0x06, 0x00, 0x0E, 0x32, 0x02, 0x08, 0x71, 0x50,
+ 0x00, 0x22, 0x08, 0x06, 0x00, 0x0D, 0x06, 0x01,
+ 0x00, 0x0E, 0x00, 0x06, 0x1E, 0x00, 0x02, 0x08,
+ 0x72, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00, 0x02,
+ 0x08, 0x73, 0x50, 0x00, 0x22, 0x08, 0x10, 0x00,
+ 0x07, 0x14, 0x00, 0x02, 0x08, 0x74, 0x50, 0x00,
+ 0x22, 0x08, 0x10, 0x00, 0x02, 0x08, 0x75, 0x50,
+ 0x00, 0x22, 0x08, 0x10, 0x00, 0x07, 0x78, 0x00,
+ 0x16, 0x11, 0x01, 0x08, 0x20
+};
+
+static const ByteProvider k1OutroReunionSeqDOSCDProvider = { ARRAYSIZE(k1OutroReunionSeqDOSCD), k1OutroReunionSeqDOSCD };
+
+static const char *const k1AudioTracksDOSCD[8] = {
+ "KYRA1A",
+ "KYRA1B",
+ "KYRA2A",
+ "KYRA3A",
+ "KYRA4A",
+ "KYRA4B",
+ "KYRA5A",
+ "KYRA5B"
+};
+
+static const StringListProvider k1AudioTracksDOSCDProvider = { ARRAYSIZE(k1AudioTracksDOSCD), k1AudioTracksDOSCD };
+
+static const char *const k1AudioTracks2DOSCD[1] = {
+ "kyramisc"
+};
+
+static const StringListProvider k1AudioTracks2DOSCDProvider = { ARRAYSIZE(k1AudioTracks2DOSCD), k1AudioTracks2DOSCD };
+
+static const char *const k1AudioTracksIntroDOSCD[2] = {
+ "intro",
+ "intro"
+};
+
+static const StringListProvider k1AudioTracksIntroDOSCDProvider = { ARRAYSIZE(k1AudioTracksIntroDOSCD), k1AudioTracksIntroDOSCD };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_cd_english.h b/devtools/create_kyradat/resources/lok_dos_cd_english.h
new file mode 100644
index 0000000000..af695470a3
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_cd_english.h
@@ -0,0 +1,428 @@
+static const char *const k1IntroStringsDOSCDEnglish[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Greetings, Kallak...",
+ "...Powerful leader of the Royal Mystics!",
+ "Did I frighten you?",
+ "Malcolm!",
+ "I heard yesterday of your escape.",
+ "And have expected you before now.",
+ "Why would I rush?",
+ "I rule this land!",
+ "Your puny curse restrains me naught.",
+ "So, slay me now!",
+ "I have little magic left.",
+ "I mean to harm you, have no doubt...",
+ "...Now you are stone...",
+ "...Yet I leave your eyes.",
+ "I shed no tears for Kyrandia...",
+ "...But cannot deny you yours.",
+ "Malcolm the Jester has broken free!",
+ "He now controls the Kyragem...",
+ "...source of all magic in Kyrandia!",
+ "",
+ "How dare you trip ME!",
+ "But no, something special for you...",
+ "A humorous hex!",
+ "But I shall give fair warning.",
+ "Don't jump on THAT tree!",
+ "Don't climb up THAT tree little squirrel!",
+ "Boo!",
+ "Tis funnier that way...",
+ "...Is it not?",
+ "Ha ha ha...",
+ "Aren't fingers wonderful?",
+ "It's great to be alive!",
+ "Brandon!",
+ "Grandfather! We did it!",
+ "No! YOU did it!",
+ "Long live King Brandon!",
+ "Long live the Royal Mystics!",
+ "Now, let's go put Kyrandia back together!",
+ "Good idea!",
+ "As my first Royal Proclamation...",
+ "I name sandals as the official footwear of Kyrandia!",
+ "Well done, Brandon!",
+ "The Land no longer weeps...",
+ "And your friends have been restored!",
+ "Dear Brynn...",
+ "Malcolm has broken free!",
+ "Soon he will come for me.",
+ "Please help Brandon...",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSCDEnglishProvider = { ARRAYSIZE(k1IntroStringsDOSCDEnglish), k1IntroStringsDOSCDEnglish };
+
+static const char *const k1ItemNamesDOSCDEnglish[107] = {
+ "Garnet",
+ "Amethyst",
+ "Aquamarine",
+ "Diamond",
+ "Emerald",
+ "Pearl",
+ "Ruby",
+ "Peridot",
+ "Sapphire",
+ "Opal",
+ "Topaz",
+ "Onyx",
+ "Sunstone",
+ "Moonstone",
+ "Rainbowstone",
+ "Lodestone",
+ "Rose",
+ "Tulip",
+ "Orchid",
+ "Silver Rose",
+ "Silver Statuette",
+ "Silver Coin",
+ "Gold Coin",
+ "Gold Ring",
+ "Royal Chalice",
+ "Pinecone",
+ "Acorn",
+ "Walnut",
+ "Everglowing Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fish",
+ "Fish Bone",
+ "Mutton Leg",
+ "Bone",
+ "Apple",
+ "Apple Core",
+ "Blueberries",
+ "Mushroom",
+ "Note",
+ "Marble",
+ "Saw",
+ "Ankh",
+ "Feather",
+ "Egg",
+ "Leaf",
+ "Shamrock",
+ "Fallen Star",
+ "Crystal Ball",
+ "Teardrop",
+ "Mirror",
+ "Ice Shard",
+ "Flute",
+ "Hourglass",
+ "Iron Key",
+ "Jade Key",
+ "Obsidion Key",
+ "Red Potion",
+ "Red Potion",
+ "Blue Potion",
+ "Blue Potion",
+ "Yellow Potion",
+ "Yellow Potion",
+ "Green Potion",
+ "Orange Potion",
+ "Purple Potion",
+ "Potion of Rainbows",
+ "Fresh Water",
+ "Fresh Water",
+ "Salt Water",
+ "Salt Water",
+ "Mineral Water",
+ "Mineral Water",
+ "Magical Water",
+ "Magical Water",
+ "Empty Flask",
+ "Empty Flask",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Red Magestone",
+ "Orange Magestone",
+ "Yellow Magestone",
+ "Green Magestone",
+ "Blue-Green Magestone",
+ "Blue Magestone",
+ "Purple Magestone",
+ "Heavy rock",
+ "Royal Crown",
+ "Royal Sceptre",
+ "Gold key",
+ "Unknown item"
+};
+
+static const StringListProvider k1ItemNamesDOSCDEnglishProvider = { ARRAYSIZE(k1ItemNamesDOSCDEnglish), k1ItemNamesDOSCDEnglish };
+
+static const char *const k1TakenStringsDOSCDEnglish[2] = {
+ " taken.",
+ " taken."
+};
+
+static const StringListProvider k1TakenStringsDOSCDEnglishProvider = { ARRAYSIZE(k1TakenStringsDOSCDEnglish), k1TakenStringsDOSCDEnglish };
+
+static const char *const k1PlacedStringsDOSCDEnglish[1] = {
+ " placed."
+};
+
+static const StringListProvider k1PlacedStringsDOSCDEnglishProvider = { ARRAYSIZE(k1PlacedStringsDOSCDEnglish), k1PlacedStringsDOSCDEnglish };
+
+static const char *const k1DroppedStringsDOSCDEnglish[1] = {
+ " dropped."
+};
+
+static const StringListProvider k1DroppedStringsDOSCDEnglishProvider = { ARRAYSIZE(k1DroppedStringsDOSCDEnglish), k1DroppedStringsDOSCDEnglish };
+
+static const char *const k1NoDropStringsDOSCDEnglish[2] = {
+ "You can't drop any more items in this scene.",
+ "You can't put that there."
+};
+
+static const StringListProvider k1NoDropStringsDOSCDEnglishProvider = { ARRAYSIZE(k1NoDropStringsDOSCDEnglish), k1NoDropStringsDOSCDEnglish };
+
+static const char *const k1PutDownStringDOSCDEnglish[1] = {
+ "Maybe I'd better put this down first."
+};
+
+static const StringListProvider k1PutDownStringDOSCDEnglishProvider = { ARRAYSIZE(k1PutDownStringDOSCDEnglish), k1PutDownStringDOSCDEnglish };
+
+static const char *const k1WaitAmuletStringDOSCDEnglish[1] = {
+ "I guess I'll have to wait for my Amulet to regain its power."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSCDEnglishProvider = { ARRAYSIZE(k1WaitAmuletStringDOSCDEnglish), k1WaitAmuletStringDOSCDEnglish };
+
+static const char *const k1BlackJewelStringDOSCDEnglish[1] = {
+ "It's a jewel, but why is it black?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSCDEnglishProvider = { ARRAYSIZE(k1BlackJewelStringDOSCDEnglish), k1BlackJewelStringDOSCDEnglish };
+
+static const char *const k1HealingTipStringDOSCDEnglish[1] = {
+ "Gee, this could come in handy if I get hurt."
+};
+
+static const StringListProvider k1HealingTipStringDOSCDEnglishProvider = { ARRAYSIZE(k1HealingTipStringDOSCDEnglish), k1HealingTipStringDOSCDEnglish };
+
+static const char *const k1PoisonGoneStringDOSCDEnglish[2] = {
+ "Amazing!",
+ "The effects of the poison are gone!"
+};
+
+static const StringListProvider k1PoisonGoneStringDOSCDEnglishProvider = { ARRAYSIZE(k1PoisonGoneStringDOSCDEnglish), k1PoisonGoneStringDOSCDEnglish };
+
+static const char *const k1ThePoisonStringsDOSCDEnglish[4] = {
+ "The poison...",
+ "I can't breathe...",
+ "I don't feel so good...",
+ "That snake must\rbe poisonous!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSCDEnglishProvider = { ARRAYSIZE(k1ThePoisonStringsDOSCDEnglish), k1ThePoisonStringsDOSCDEnglish };
+
+static const char *const k1FluteStringsDOSCDEnglish[40] = {
+ "Not very impressive sounding.",
+ "That last note sure was high!",
+ "\xBA",
+ "\xBA",
+ "",
+ "\x01",
+ "\x01\xB3",
+ "\xB3",
+ "\x06\x04\x08\x03\x06",
+ "\x08\x01\x01",
+ "\x02\x04",
+ "\x05\x02",
+ "\x08\x01\x01",
+ "\x11",
+ "5",
+ "Y",
+ "",
+ "",
+ "",
+ "",
+ "\x15",
+ "9",
+ "]",
+ "",
+ "",
+ "",
+ "",
+ "\x07",
+ ")",
+ "M",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "SHAPE_HORZ_REV",
+ "SHAPE_VERT_REV"
+};
+
+static const StringListProvider k1FluteStringsDOSCDEnglishProvider = { ARRAYSIZE(k1FluteStringsDOSCDEnglish), k1FluteStringsDOSCDEnglish };
+
+static const char *const k1WispJewelStringsDOSCDEnglish[2] = {
+ "I'm not really feeling up to it right now.",
+ "I probably should put down this first."
+};
+
+static const StringListProvider k1WispJewelStringsDOSCDEnglishProvider = { ARRAYSIZE(k1WispJewelStringsDOSCDEnglish), k1WispJewelStringsDOSCDEnglish };
+
+static const char *const k1MagicJewelStringsDOSCDEnglish[1] = {
+ "That felt strange."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSCDEnglishProvider = { ARRAYSIZE(k1MagicJewelStringsDOSCDEnglish), k1MagicJewelStringsDOSCDEnglish };
+
+static const char *const k1FlaskFullStringDOSCDEnglish[1] = {
+ "This flask is already full."
+};
+
+static const StringListProvider k1FlaskFullStringDOSCDEnglishProvider = { ARRAYSIZE(k1FlaskFullStringDOSCDEnglish), k1FlaskFullStringDOSCDEnglish };
+
+static const char *const k1FullFlaskStringDOSCDEnglish[4] = {
+ "The flask is now filled\rwith fresh, sparkling water.",
+ "The flask is now filled\rwith salt water.",
+ "The flask is now filled\rwith mineral water.",
+ "Magic water."
+};
+
+static const StringListProvider k1FullFlaskStringDOSCDEnglishProvider = { ARRAYSIZE(k1FullFlaskStringDOSCDEnglish), k1FullFlaskStringDOSCDEnglish };
+
+static const char *const k1OutroHomeStringDOSCDEnglish[1] = {
+ "Home"
+};
+
+static const StringListProvider k1OutroHomeStringDOSCDEnglishProvider = { ARRAYSIZE(k1OutroHomeStringDOSCDEnglish), k1OutroHomeStringDOSCDEnglish };
+
+static const char *const k1VeryCleverStringDOSCDEnglish[1] = {
+ "Very clever! But your feeble efforts are futile."
+};
+
+static const StringListProvider k1VeryCleverStringDOSCDEnglishProvider = { ARRAYSIZE(k1VeryCleverStringDOSCDEnglish), k1VeryCleverStringDOSCDEnglish };
+
+static const char *const k1GUIStringsDOSCDEnglish[81] = {
+ "The Legend of Kyrandia",
+ "Load a game",
+ "Save this game",
+ "Game controls",
+ "Quit playing",
+ "Resume game",
+ "Game Controls",
+ "Which game would you like to reload?",
+ "Select a position to save to:",
+ "[ EMPTY SLOT ]",
+ "Cancel",
+ "Enter a description of your saved game:",
+ "Save",
+ "Rest in peace, Brandon.",
+ "Are you sure you want to quit playing?",
+ "XXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "Main menu",
+ "on",
+ "off",
+ "Yes",
+ "No",
+ "\xCD\x0E\x17""+""\xD5\x0E\x17""+""\xDA\x0E\x17""+""\xE1\x0E\x17""+""\xE6\x0E\x17""+""\xEE\x0E\x17""+""\xF8\x0E\x17""+""\x03\x0F\x17""+""\x10\x0F\x17""+""\x18\x0F\x17""+""\x1F\x0F\x17""+$""\x0F\x17""+Walk speed ",
+ "Text speed ",
+ "Music is ",
+ "Sounds are ",
+ "Voice / Text"
+};
+
+static const StringListProvider k1GUIStringsDOSCDEnglishProvider = { ARRAYSIZE(k1GUIStringsDOSCDEnglish), k1GUIStringsDOSCDEnglish };
+
+static const char *const k1NewGameStringDOSCDEnglish[1] = {
+ "[ START A NEW GAME ]"
+};
+
+static const StringListProvider k1NewGameStringDOSCDEnglishProvider = { ARRAYSIZE(k1NewGameStringDOSCDEnglish), k1NewGameStringDOSCDEnglish };
+
+static const char *const k1ConfigStringsDOSCDEnglish[12] = {
+ "slowest",
+ "slow",
+ "normal",
+ "fast",
+ "fastest",
+ "Text only",
+ "Voice only",
+ "Voice & Text",
+ "slowest",
+ "normal",
+ "fast",
+ "clickable"
+};
+
+static const StringListProvider k1ConfigStringsDOSCDEnglishProvider = { ARRAYSIZE(k1ConfigStringsDOSCDEnglish), k1ConfigStringsDOSCDEnglish };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_cd_french.h b/devtools/create_kyradat/resources/lok_dos_cd_french.h
new file mode 100644
index 0000000000..cf45a2fb28
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_cd_french.h
@@ -0,0 +1,349 @@
+static const char *const k1IntroStringsDOSCDFrench[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Salut Kallak...",
+ "...Puissant Chef de l'Ordre des Mystiques Royaux!",
+ "Je t'ai fait peur?",
+ "Malcolm!",
+ "On m'a dit hier que tu t'""\x82""tais ""\x82""vad""\x82"".",
+ "Je t'attendais depuis longtemps.",
+ "Pourquoi me serais-je press""\x82""?",
+ "C'est moi qui gouverne ce pays!",
+ "Ton faible sort n'a pas d'effet sur moi.",
+ "Tue-moi maintenant!",
+ "Il ne me reste pas beaucoup de pouvoirs magiques.",
+ "Je veux te faire du mal, sois-en s""\x96""r...",
+ "...Maintenant, tu es transform""\x82"" en pierre...",
+ "...mais je te laisse tes yeux.",
+ "Je ne verse aucune larme pour Kyrandia...",
+ "...mais je ne peux pas te refuser les tiennes.",
+ "Malcolm le Bouffon est libre!",
+ "Il contr""\x93""le la Kyragemme maintenant...",
+ "...source de tous les pouvoirs magiques de Kyrandia!",
+ "",
+ "Comment oses-tu ME faire tr""\x82""bucher!",
+ "Mais non, quelque chose de sp""\x82""cial pour toi...",
+ "Un sort humoristique!",
+ "Mais je pr""\x82""viendrai.",
+ "Ne saute pas sur CET arbre!",
+ "Ne grimpe pas sur CET arbre, petit ""\x82""cureuil!",
+ "Hou!",
+ "C'est plus marrant comme ""\x87""a...",
+ "...n'est-ce pas?",
+ "Ha ha ha...",
+ "Les doigts ne sont-ils pas une chose merveilleuse?",
+ "C'est super d'""\x88""tre en vie!",
+ "Brandon!",
+ "Grand-P""\x8A""re! On y est arriv""\x82""!",
+ "Non! TU y es arriv""\x82""!",
+ "Longue vie au Roi Brandon!",
+ "Longue vie ""\x85"" l'Ordre des Mystiques Royaux!",
+ "Retournons mettre de l'ordre dans Kyrandia!",
+ "Bonne id""\x82""e!",
+ "En tant que Roi...",
+ "je d""\x82""clare que les sandales sont d""\x82""sormais les souliers officiels ""\x85"" Kyrandia!",
+ "Bien jou""\x82"", Brandon!",
+ "La Terre ne pleure plus...",
+ "Et tu as retrouv""\x82"" tes amis!",
+ "Ma Ch""\x8A""re Brynn...",
+ "Malcolm s'est ""\x82""vad""\x82""!",
+ "Il viendra me chercher bient""\x93""t.",
+ "S'il te pla""\x8C""t Brandon, aide-moi...",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSCDFrenchProvider = { ARRAYSIZE(k1IntroStringsDOSCDFrench), k1IntroStringsDOSCDFrench };
+
+static const char *const k1ItemNamesDOSCDFrench[108] = {
+ "Grenat",
+ "Am""\x82""thyste",
+ "Aigue-marine",
+ "Diamant",
+ "Emeraude",
+ "Perle",
+ "Rubis",
+ "Olivine",
+ "Saphir",
+ "Opale",
+ "Topaze",
+ "Onyx",
+ "Aventurine",
+ "Pierre de Lune",
+ "Pierre d'Iris",
+ "Magn""\x82""tite",
+ "Rose",
+ "Tulipe",
+ "Orchid""\x82""e",
+ "Rose d'argent",
+ "Statuette d'argent",
+ "Pi""\x8A""ce d'argent",
+ "Pi""\x8A""ce d'or",
+ "Bague en or",
+ "Calice royal",
+ "Pomme de pin",
+ "Gland",
+ "Noix",
+ "Baie de feu luisantes",
+ "Baie de feu",
+ "Baie de feu",
+ "Baie de feu",
+ "Baie de feu",
+ "Baie de feu",
+ "Poisson",
+ "Ar""\x88""te",
+ "Gigot de mouton",
+ "Os",
+ "Pomme",
+ "Trognon de pomme",
+ "Myrtille",
+ "Champignon",
+ "Note",
+ "Bille",
+ "Scie",
+ "Croix ans""\x82""e",
+ "Plume",
+ "Oeuf",
+ "Feuille",
+ "Tr""\x8A""fle",
+ "Etoile bris""\x82""e",
+ "Boule de cristal",
+ "Larme",
+ "Miroir",
+ "Tesson de glace",
+ "Fl""\x96""te",
+ "Sablier",
+ "Cl""\x82"" m""\x82""tallique",
+ "Cl""\x82"" de jade",
+ "Cl""\x82"" obsidion",
+ "Potion rouge",
+ "Potion rouge",
+ "Potion bleue",
+ "Potion bleue",
+ "Potion jaune",
+ "Potion jaune",
+ "Potion verte",
+ "Potion orange",
+ "Potion violette",
+ "Potion d'arcs-en-ciel",
+ "Eau fraiche",
+ "Eau fraiche",
+ "Eau sal""\x82""e",
+ "Eau sal""\x82""e",
+ "Eau min""\x82""rale",
+ "Eau min""\x82""rale",
+ "Eau magique",
+ "Eau magique",
+ "Gourde vide",
+ "Gourde vide",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Morceau de parchemin",
+ "Morceau de parchemin",
+ "Morceau de parchemin",
+ "Morceau de parchemin",
+ "Morceau de parchemin",
+ "Pierre magique rouge",
+ "Pierre magique orange",
+ "Pierre magique jaune",
+ "Pierre magique verte",
+ "Pierre magique turquoise",
+ "Pierre magique bleue",
+ "Pierre magique violette",
+ "Rocher lourd",
+ "Couronne royale",
+ "Sceptre royal",
+ "Cl""\x82"" en or",
+ "Objet inconnu",
+ ""
+};
+
+static const StringListProvider k1ItemNamesDOSCDFrenchProvider = { ARRAYSIZE(k1ItemNamesDOSCDFrench), k1ItemNamesDOSCDFrench };
+
+static const char *const k1TakenStringsDOSCDFrench[4] = {
+ " prise.",
+ " pris.",
+ " prise.",
+ " pris."
+};
+
+static const StringListProvider k1TakenStringsDOSCDFrenchProvider = { ARRAYSIZE(k1TakenStringsDOSCDFrench), k1TakenStringsDOSCDFrench };
+
+static const char *const k1PlacedStringsDOSCDFrench[2] = {
+ " plac""\x82""e.",
+ " plac""\x82""."
+};
+
+static const StringListProvider k1PlacedStringsDOSCDFrenchProvider = { ARRAYSIZE(k1PlacedStringsDOSCDFrench), k1PlacedStringsDOSCDFrench };
+
+static const char *const k1DroppedStringsDOSCDFrench[2] = {
+ " l""\x83""ch""\x82""e.",
+ " l""\x83""ch""\x82""."
+};
+
+static const StringListProvider k1DroppedStringsDOSCDFrenchProvider = { ARRAYSIZE(k1DroppedStringsDOSCDFrench), k1DroppedStringsDOSCDFrench };
+
+static const char *const k1NoDropStringsDOSCDFrench[2] = {
+ "Vous ne pouvez pas l""\x83""cher autre chose ici.",
+ "Vous ne pouvez pas mettre ""\x87""a l""\x85""."
+};
+
+static const StringListProvider k1NoDropStringsDOSCDFrenchProvider = { ARRAYSIZE(k1NoDropStringsDOSCDFrench), k1NoDropStringsDOSCDFrench };
+
+static const char *const k1PutDownStringDOSCDFrench[1] = {
+ "Il faudrait peut-""\x88""tre que je pose ""\x87""a d'abord."
+};
+
+static const StringListProvider k1PutDownStringDOSCDFrenchProvider = { ARRAYSIZE(k1PutDownStringDOSCDFrench), k1PutDownStringDOSCDFrench };
+
+static const char *const k1WaitAmuletStringDOSCDFrench[1] = {
+ "Je suppose qu'il me faut attendre que mon amulette retrouve son pouvoir."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSCDFrenchProvider = { ARRAYSIZE(k1WaitAmuletStringDOSCDFrench), k1WaitAmuletStringDOSCDFrench };
+
+static const char *const k1BlackJewelStringDOSCDFrench[1] = {
+ "C'est un bijou, mais pourquoi est-il noir?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSCDFrenchProvider = { ARRAYSIZE(k1BlackJewelStringDOSCDFrench), k1BlackJewelStringDOSCDFrench };
+
+static const char *const k1HealingTipStringDOSCDFrench[1] = {
+ "Hue, ""\x87""a pourrait bien m'""\x88""tre utile si je suis bless""\x82""."
+};
+
+static const StringListProvider k1HealingTipStringDOSCDFrenchProvider = { ARRAYSIZE(k1HealingTipStringDOSCDFrench), k1HealingTipStringDOSCDFrench };
+
+static const char *const k1PoisonGoneStringDOSCDFrench[2] = {
+ "G""\x82""nial!",
+ "Les effets du poison ont disparu!"
+};
+
+static const StringListProvider k1PoisonGoneStringDOSCDFrenchProvider = { ARRAYSIZE(k1PoisonGoneStringDOSCDFrench), k1PoisonGoneStringDOSCDFrench };
+
+static const char *const k1ThePoisonStringsDOSCDFrench[4] = {
+ "Le poison...",
+ "Je ne peux plus respirer...",
+ "Je ne me sens pas tr""\x8A""s bien...",
+ "Ce serpent doit ""\x88""tre \rvenimeux!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSCDFrenchProvider = { ARRAYSIZE(k1ThePoisonStringsDOSCDFrench), k1ThePoisonStringsDOSCDFrench };
+
+static const char *const k1FluteStringsDOSCDFrench[2] = {
+ "\x80""a ne sonne pas tr""\x8A""s bien.",
+ "Cette derni""\x8A""re note ""\x82""tait vraiment aigue!"
+};
+
+static const StringListProvider k1FluteStringsDOSCDFrenchProvider = { ARRAYSIZE(k1FluteStringsDOSCDFrench), k1FluteStringsDOSCDFrench };
+
+static const char *const k1WispJewelStringsDOSCDFrench[2] = {
+ "Je ne m'en sens pas vraiment capable maintenant.",
+ "Je devrait poser mon, ma, mes "
+};
+
+static const StringListProvider k1WispJewelStringsDOSCDFrenchProvider = { ARRAYSIZE(k1WispJewelStringsDOSCDFrench), k1WispJewelStringsDOSCDFrench };
+
+static const char *const k1MagicJewelStringsDOSCDFrench[1] = {
+ "C'""\x82""tait bizarre."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSCDFrenchProvider = { ARRAYSIZE(k1MagicJewelStringsDOSCDFrench), k1MagicJewelStringsDOSCDFrench };
+
+static const char *const k1FlaskFullStringDOSCDFrench[1] = {
+ "Cette gourde est d""\x82""j""\x85"" pleine."
+};
+
+static const StringListProvider k1FlaskFullStringDOSCDFrenchProvider = { ARRAYSIZE(k1FlaskFullStringDOSCDFrench), k1FlaskFullStringDOSCDFrench };
+
+static const char *const k1FullFlaskStringDOSCDFrench[4] = {
+ "La gourde est remplie \rd'eau gazeuse fra""\x8C""che.",
+ "La gourde est remplie \rd'eau sal""\x82""e.",
+ "La gourde est remplie \rd'eau min""\x82""rale.",
+ "Eau magique."
+};
+
+static const StringListProvider k1FullFlaskStringDOSCDFrenchProvider = { ARRAYSIZE(k1FullFlaskStringDOSCDFrench), k1FullFlaskStringDOSCDFrench };
+
+static const char *const k1OutroHomeStringDOSCDFrench[1] = {
+ "Maison"
+};
+
+static const StringListProvider k1OutroHomeStringDOSCDFrenchProvider = { ARRAYSIZE(k1OutroHomeStringDOSCDFrench), k1OutroHomeStringDOSCDFrench };
+
+static const char *const k1VeryCleverStringDOSCDFrench[1] = {
+ "Malin! Mais vos efforts restent vains."
+};
+
+static const StringListProvider k1VeryCleverStringDOSCDFrenchProvider = { ARRAYSIZE(k1VeryCleverStringDOSCDFrench), k1VeryCleverStringDOSCDFrench };
+
+static const char *const k1GUIStringsDOSCDFrench[35] = {
+ "The Legend of Kyrandia",
+ "Charger un jeu",
+ "Sauvegarder ce jeu",
+ "Contr""\x93""les du jeu",
+ "Quitter le jeu",
+ "Reprendre le jeu",
+ "Contr""\x93""les du jeu",
+ "Quel jeu voulez-vous re-charger?",
+ "S""\x82""lectionnez une position o""\x97"" sauvegarder:",
+ "[ EMPLACEMENT VIDE ]",
+ "Annuler",
+ "Entrez description de votre jeu sauvegard""\x82"".",
+ "Sauvegarder",
+ "Repose en paix, Brandon.",
+ "Vous voulez vraiment quitter le jeu?",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "Menu principal",
+ "activ""\x82",
+ "d""\x82""sactiv""\x82",
+ "Oui",
+ "Non",
+ "?""\x0F"")+I""\x0F"")+N""\x0F"")+U""\x0F"")+\\""\x0F"")+h""\x0F"")+y""\x0F"")+""\x89\x0F"")+""\x97\x0F"")+""\xA1\x0F"")+""\xA8\x0F"")+""\xAF\x0F"")+Vitesse de d""\x82""placement",
+ "Vitesse du texte",
+ "La musique est ",
+ "Les sons sont ",
+ "Voix/Texte"
+};
+
+static const StringListProvider k1GUIStringsDOSCDFrenchProvider = { ARRAYSIZE(k1GUIStringsDOSCDFrench), k1GUIStringsDOSCDFrench };
+
+static const char *const k1NewGameStringDOSCDFrench[1] = {
+ "[ COMMENCER UN NOUVEAU JEU ]"
+};
+
+static const StringListProvider k1NewGameStringDOSCDFrenchProvider = { ARRAYSIZE(k1NewGameStringDOSCDFrench), k1NewGameStringDOSCDFrench };
+
+static const char *const k1ConfigStringsDOSCDFrench[12] = {
+ "plus lent",
+ "lent",
+ "normal",
+ "rapide",
+ "plus rapide",
+ "Texte uniquement",
+ "Voix uniquement",
+ "Voix et Texte",
+ "plus lent",
+ "normal",
+ "rapide",
+ "cliquable"
+};
+
+static const StringListProvider k1ConfigStringsDOSCDFrenchProvider = { ARRAYSIZE(k1ConfigStringsDOSCDFrench), k1ConfigStringsDOSCDFrench };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_cd_german.h b/devtools/create_kyradat/resources/lok_dos_cd_german.h
new file mode 100644
index 0000000000..a462362e81
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_cd_german.h
@@ -0,0 +1,370 @@
+static const char *const k1IntroStringsDOSCDGerman[52] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Sei gegr""\x81\xE1""t, Kallak...",
+ "...M""\x84""chtiger Anf""\x81""hrer der k""\x94""niglichen Mystiker!",
+ "Habe ich dich erschreckt?",
+ "Malcolm!",
+ "Ich habe gestern von deiner Flucht geh""\x94""rt.",
+ "Ich habe dich fr""\x81""her erwartet.",
+ "Warum sollte ich mich beeilen?",
+ "Ich herrsche ""\x81""ber dieses Land!",
+ "Dein mickriger Fluch h""\x84""lt mich nicht zur""\x81""ck.",
+ "So, erschlag mich doch!",
+ "Ich habe nur noch wenig Magie ""\x81""brig.",
+ "Ich werde dir zu Leibe r""\x81""cken, zweifle blo""\xE1"" nicht daran...",
+ "...du bist jetzt aus Stein...",
+ "...Ich lasse dir allein deine Augen.",
+ "F""\x81""r Kyrandia vergie""\xE1""e ich nicht eine Tr""\x84""ne...",
+ "...aber deine will ich dir nicht nehmen.",
+ "Malcolm der Hofnarr ist ausgebrochen!",
+ "Er beherrscht nun den Kyragem...",
+ "...die Quelle aller Magie in Kyrandia!",
+ "",
+ "Wie kannst du es wagen, MICH umzuwerfen!",
+ "Nicht doch, etwas Besonderes f""\x81""r dich...",
+ "Was f""\x81""r ein l""\x84""cherlicher Fluch!",
+ "Ich warne dich vorher.",
+ "Springe nicht auf DIESEN Baum!",
+ "Klettre nicht auf diesen Baum, kleines Eichh""\x94""rnchen!",
+ "Buuh!",
+ "So ist es viel lustiger...",
+ "...nicht wahr?",
+ "Ha ha ha...",
+ "Sind Finger nicht 'was Tolles?",
+ "Es ist gro""\xE1""artig, am Leben zu sein!",
+ "Brandon!",
+ "Gro""\xE1""vater! Wir haben es geschafft!",
+ "Nein! DU hast es geschafft!",
+ "Lang lebe K""\x94""nig Brandon!",
+ "Lang leben die k""\x94""niglichen Mystiker!",
+ "Bauen wir Kyrandia wieder auf!",
+ "Eine gute Idee!",
+ "Als meine erste k""\x94""nigliche Proklamation,...",
+ "...erkl""\x84""re ich Sandalen zur offiziellen Fu""\xE1""bekleidung Kyrandias!",
+ "Sehr weise, Brandon!",
+ "Das Land ist nicht l""\x84""nger in Trauer!",
+ "Und deine Freunde sind gerettet.",
+ "Liebe Brynn...",
+ "Malcolm ist ausgebrochen!",
+ "Er wird bald zu mir kommen.",
+ "Bitte hilf Brandon...",
+ "",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSCDGermanProvider = { ARRAYSIZE(k1IntroStringsDOSCDGerman), k1IntroStringsDOSCDGerman };
+
+static const char *const k1ItemNamesDOSCDGerman[108] = {
+ "Granat",
+ "Amethyst",
+ "Aquamarin",
+ "Diamant",
+ "Smaragd",
+ "Perle",
+ "Rubin",
+ "Peridot",
+ "Saphir",
+ "Opal",
+ "Topas",
+ "Onyx",
+ "Sonnenstein",
+ "Mondstein",
+ "Regenbogenstein",
+ "Magnetstein",
+ "Rose",
+ "Tulpe",
+ "Orchidee",
+ "Silberne Rose",
+ "Silberne Statuette",
+ "Silberm""\x81""nze",
+ "Goldm""\x81""nze",
+ "Goldring",
+ "Der Kelch des K""\x94""nigs",
+ "Kienapfel",
+ "Eichel",
+ "Walnu""\xE1",
+ "Immerleuchtende Feuerbeeren",
+ "Feuerbeeren",
+ "Feuerbeeren",
+ "Feuerbeeren",
+ "Feuerbeeren",
+ "Feuerbeeren",
+ "Fisch",
+ "Fischgr""\x84""te",
+ "Hammelkeule",
+ "Knochen",
+ "Apfel",
+ "Apfelgriebsch",
+ "Heidelbeeren",
+ "Pilz",
+ "Notiz",
+ "Murmel",
+ "S""\x84""ge",
+ "Henkelkreuz",
+ "Feder",
+ "Ei",
+ "Blatt",
+ "Kleeblatt",
+ "Sternschnuppe",
+ "Kristallkugel",
+ "Tr""\x84""ne",
+ "Spiegel",
+ "Eisst""\x81""ck",
+ "Fl""\x94""te",
+ "Sanduhr",
+ "Eisenschl""\x81""ssel",
+ "Jadeschl""\x81""ssel",
+ "Obsidianschl""\x81""ssel",
+ "Roter Trank",
+ "Roter Trank",
+ "Blauer Trank",
+ "Blauer Trank",
+ "Gelber Trank",
+ "Gelber Trank",
+ "Gr""\x81""ner Trank",
+ "Oranger Trank",
+ "Violetter Trank",
+ "Regenbogentrank",
+ "S""\x81\xE1""wasser",
+ "S""\x81\xE1""wasser",
+ "Salzwasser",
+ "Salzwasser",
+ "Mineralwasser",
+ "Mineralwasser",
+ "Magisches Wasser",
+ "Magisches Wasser",
+ "Leere Flasche",
+ "Leere Flasche",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Pergamentfetzen",
+ "Pergamentfetzen",
+ "Pergamentfetzen",
+ "Pergamentfetzen",
+ "Pergamentfetzen",
+ "Roter Weisenstein",
+ "Oranger Weisenstein",
+ "Gelber Weisenstein",
+ "Gr""\x81""ner Weisenstein",
+ "T""\x81""rkiser Weisenstein",
+ "Blauer Weisenstein",
+ "Violetter Weisenstein",
+ "Schwerer Stein",
+ "K""\x94""nigliche Krone",
+ "K""\x94""nigliches Zepter",
+ "Goldschl""\x81""ssel",
+ "Unbekannter Gegenstand",
+ ""
+};
+
+static const StringListProvider k1ItemNamesDOSCDGermanProvider = { ARRAYSIZE(k1ItemNamesDOSCDGerman), k1ItemNamesDOSCDGerman };
+
+static const char *const k1TakenStringsDOSCDGerman[2] = {
+ " aufgenommen.",
+ " aufgenommen."
+};
+
+static const StringListProvider k1TakenStringsDOSCDGermanProvider = { ARRAYSIZE(k1TakenStringsDOSCDGerman), k1TakenStringsDOSCDGerman };
+
+static const char *const k1PlacedStringsDOSCDGerman[1] = {
+ " abgelegt."
+};
+
+static const StringListProvider k1PlacedStringsDOSCDGermanProvider = { ARRAYSIZE(k1PlacedStringsDOSCDGerman), k1PlacedStringsDOSCDGerman };
+
+static const char *const k1DroppedStringsDOSCDGerman[1] = {
+ " fallengelassen."
+};
+
+static const StringListProvider k1DroppedStringsDOSCDGermanProvider = { ARRAYSIZE(k1DroppedStringsDOSCDGerman), k1DroppedStringsDOSCDGerman };
+
+static const char *const k1NoDropStringsDOSCDGerman[2] = {
+ "Hier kann nichts mehr abgelegt werden.",
+ "Das kann hier nicht abgelegt werden."
+};
+
+static const StringListProvider k1NoDropStringsDOSCDGermanProvider = { ARRAYSIZE(k1NoDropStringsDOSCDGerman), k1NoDropStringsDOSCDGerman };
+
+static const char *const k1PutDownStringDOSCDGerman[1] = {
+ "Vielleicht sollte ich es erst hinlegen."
+};
+
+static const StringListProvider k1PutDownStringDOSCDGermanProvider = { ARRAYSIZE(k1PutDownStringDOSCDGerman), k1PutDownStringDOSCDGerman };
+
+static const char *const k1WaitAmuletStringDOSCDGerman[1] = {
+ "I nehme an, ich mu""\xE1"" warten, bis mein Amulett seine Kraft wiedererlangt."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSCDGermanProvider = { ARRAYSIZE(k1WaitAmuletStringDOSCDGerman), k1WaitAmuletStringDOSCDGerman };
+
+static const char *const k1BlackJewelStringDOSCDGerman[1] = {
+ "Es ist ein Edelstein, aber warum ist er schwarz?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSCDGermanProvider = { ARRAYSIZE(k1BlackJewelStringDOSCDGerman), k1BlackJewelStringDOSCDGerman };
+
+static const char *const k1HealingTipStringDOSCDGerman[1] = {
+ "Mann, das kann ganz n""\x81""tzlich sein, falls ich mich verletze!"
+};
+
+static const StringListProvider k1HealingTipStringDOSCDGermanProvider = { ARRAYSIZE(k1HealingTipStringDOSCDGerman), k1HealingTipStringDOSCDGerman };
+
+static const char *const k1PoisonGoneStringDOSCDGerman[2] = {
+ "Erstaunlich!",
+ "Die Wirkung des Giftes hat nachgelassen!"
+};
+
+static const StringListProvider k1PoisonGoneStringDOSCDGermanProvider = { ARRAYSIZE(k1PoisonGoneStringDOSCDGerman), k1PoisonGoneStringDOSCDGerman };
+
+static const char *const k1ThePoisonStringsDOSCDGerman[4] = {
+ "Das Gift...",
+ "Ich kann nicht atmen...",
+ "Ich f""\x81""hle mich nicht besonders wohl...",
+ "Die Schlange mu""\xE1"" \rgiftig gewesen sein!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSCDGermanProvider = { ARRAYSIZE(k1ThePoisonStringsDOSCDGerman), k1ThePoisonStringsDOSCDGerman };
+
+static const char *const k1FluteStringsDOSCDGerman[2] = {
+ "Klingt nicht besonders beeindruckend.",
+ "Die letzte Note war hoch!"
+};
+
+static const StringListProvider k1FluteStringsDOSCDGermanProvider = { ARRAYSIZE(k1FluteStringsDOSCDGerman), k1FluteStringsDOSCDGerman };
+
+static const char *const k1WispJewelStringsDOSCDGerman[2] = {
+ "Im Moment f""\x81""hle ich mich dazu nicht in der Lage.",
+ "Ich mu""\xE1"" wahrscheinlich erst mein(e)..."
+};
+
+static const StringListProvider k1WispJewelStringsDOSCDGermanProvider = { ARRAYSIZE(k1WispJewelStringsDOSCDGerman), k1WispJewelStringsDOSCDGerman };
+
+static const char *const k1MagicJewelStringsDOSCDGerman[1] = {
+ "Das war eigenartig."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSCDGermanProvider = { ARRAYSIZE(k1MagicJewelStringsDOSCDGerman), k1MagicJewelStringsDOSCDGerman };
+
+static const char *const k1FlaskFullStringDOSCDGerman[1] = {
+ "Die Flasche ist bereits voll."
+};
+
+static const StringListProvider k1FlaskFullStringDOSCDGermanProvider = { ARRAYSIZE(k1FlaskFullStringDOSCDGerman), k1FlaskFullStringDOSCDGerman };
+
+static const char *const k1FullFlaskStringDOSCDGerman[4] = {
+ "Die Flasche ist jetzt mit \rfrischem, klarem Wasser gef""\x81""llt.",
+ "Die Flasche ist jetzt mit \rSalzwasser gef""\x81""llt.",
+ "Die Flasche ist jetzt mit \rMineralwasser gef""\x81""llt.",
+ "Magisches Wasser."
+};
+
+static const StringListProvider k1FullFlaskStringDOSCDGermanProvider = { ARRAYSIZE(k1FullFlaskStringDOSCDGerman), k1FullFlaskStringDOSCDGerman };
+
+static const char *const k1OutroHomeStringDOSCDGerman[1] = {
+ "Ab nach Hause"
+};
+
+static const StringListProvider k1OutroHomeStringDOSCDGermanProvider = { ARRAYSIZE(k1OutroHomeStringDOSCDGerman), k1OutroHomeStringDOSCDGerman };
+
+static const char *const k1VeryCleverStringDOSCDGerman[1] = {
+ "Sehr clever! Aber nichtige Versuche sind zum Scheitern verurteilt."
+};
+
+static const StringListProvider k1VeryCleverStringDOSCDGermanProvider = { ARRAYSIZE(k1VeryCleverStringDOSCDGerman), k1VeryCleverStringDOSCDGerman };
+
+static const char *const k1GUIStringsDOSCDGerman[59] = {
+ "Die Legende von Kyrandia",
+ "Ein Spiel laden",
+ "Dieses Spiel sichern",
+ "Spielsteuerungen",
+ "Spiel beenden",
+ "Spiel wieder aufnehmen",
+ "Spielsteuerungen",
+ "Welches Spiel soll noch einmal geladen werden?",
+ "W""\x84""hlen Sie den Platz zum Sichern aus.",
+ "[ LEERER PLATZ ]",
+ "Abbrechen",
+ "Beschreibung des gesicherten Spiels eingeben.",
+ "Sichern",
+ "Ruhe in Frieden, Brandon.",
+ "Soll das Spiel wirklich beendet werden?",
+ "XXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "Hauptmen""\x81",
+ "An",
+ "Aus",
+ "Ja",
+ "Nein",
+ "c""\x0F\x17""+r""\x0F\x17""+z""\x0F\x17""+""\x81\x0F\x17""+""\x89\x0F\x17""+""\x98\x0F\x17""+""\xA1\x0F\x17""+""\xAD\x0F\x17""+""\xBC\x0F\x17""+""\xCB\x0F\x17""+""\xD2\x0F\x17""+""\xDA\x0F\x17""+Schrittempo",
+ "Textgeschwindigkeit",
+ "Die Musik ist",
+ "Die Soundeffekte sind",
+ "Stimmen/Text"
+};
+
+static const StringListProvider k1GUIStringsDOSCDGermanProvider = { ARRAYSIZE(k1GUIStringsDOSCDGerman), k1GUIStringsDOSCDGerman };
+
+static const char *const k1NewGameStringDOSCDGerman[1] = {
+ "[ EIN NEUES SPIEL ANFANGEN ]"
+};
+
+static const StringListProvider k1NewGameStringDOSCDGermanProvider = { ARRAYSIZE(k1NewGameStringDOSCDGerman), k1NewGameStringDOSCDGerman };
+
+static const char *const k1ConfigStringsDOSCDGerman[12] = {
+ "am langsamsten",
+ "langsam",
+ "normal",
+ "schnell",
+ "am schnellsten",
+ "Nur Text",
+ "Nur Stimmen",
+ "Stimmen & Text",
+ "am langsamsten",
+ "normal",
+ "schnell",
+ "anklickbar"
+};
+
+static const StringListProvider k1ConfigStringsDOSCDGermanProvider = { ARRAYSIZE(k1ConfigStringsDOSCDGerman), k1ConfigStringsDOSCDGerman };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_cd_italian.h b/devtools/create_kyradat/resources/lok_dos_cd_italian.h
new file mode 100644
index 0000000000..0fa8ee66e3
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_cd_italian.h
@@ -0,0 +1,346 @@
+static const char *const k1IntroStringsDOSCDItalian[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Salute, Kallak.",
+ "...Potente guida dei Mistici Reali! ",
+ "Ti ho spaventato? ",
+ "Malcolm!",
+ "Ho saputo ieri della tua fuga. ",
+ "E ti stavo aspettando. ",
+ "Dovrei forse aver fretta? ",
+ "Io governo queste terre, ora! ",
+ "La vostra magia mi fa il solletico. ",
+ "Allora uccidimi! ",
+ "Ma sappi che ho ancora qualche asso nella manica.",
+ "Avevo intenzione di fartela pagare... ",
+ "...Ora ti ho trasformato in pietra ",
+ "...tutto tranne i tuoi occhi ",
+ "Non verso lacrime per Kyrandia... ",
+ "...per""\x95"" non posso negarti le tue. ",
+ "Malcolm il Buffone ""\x8A"" libero! ",
+ "Ora controlla la Kyragemma... ",
+ "..\nfonte di tutta la magia di Kyrandia! ",
+ "",
+ "Come hai osato farmi lo sgambetto! ",
+ "Anzi, ho qualcosa di speciale per te... ",
+ "Un bel trucchetto! ",
+ "Ma ti avverto... ",
+ "Non saltare sull'albero! ",
+ "Non saltare su QUESTO albero, piccoletto! ",
+ "Boo!",
+ "Cos""\x8D"" ""\x8A"" pi""\x97"" divertente! ",
+ "...non credete? ",
+ "Ha ha HA...",
+ "Le mie dita! Riesco a muoverle! ",
+ "E' bello essere VIVI! ",
+ "Brandon!",
+ "NONNO!!! Ce l'abbiamo fatta!",
+ "NO! Ce l'HAI fatta! ",
+ "Lunga vita al R""\x8A"" Brandon! ",
+ "Lunga vita ai Mistici Reali! ",
+ "Ed ora, Ricostruiamo Kyrandia insieme! ",
+ "Ben detto! ",
+ "Come prima cosa...",
+ "...proclamo i Sandali, calzatura ufficiale di Kyrandia!!! ",
+ "Ben fatto, Brandon!",
+ "La terra non piange pi""\x97""...",
+ "Ci hai salvato tutti! ",
+ "Cara Brynn... ",
+ "Malcolm ""\x8A"" fuggito! ",
+ "Presto verr""\x85"" a prendermi. ",
+ "Ti prego, aiuta Brandon... ",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSCDItalianProvider = { ARRAYSIZE(k1IntroStringsDOSCDItalian), k1IntroStringsDOSCDItalian };
+
+static const char *const k1ItemNamesDOSCDItalian[107] = {
+ "Biglia",
+ "Ametista",
+ "Acquamarina",
+ "Diamante",
+ "Smeraldo",
+ "Perla",
+ "Rubino",
+ "Olivina",
+ "Zaffiro",
+ "Opale",
+ "Topazio",
+ "Onice",
+ "Pietra di Sole",
+ "Pietra di Luna",
+ "Pietra di Arcobaleno",
+ "Magnetite",
+ "Rosa",
+ "Tulipano",
+ "Orchidea",
+ "Rosa d'Argento",
+ "Statuetta d'Argento",
+ "Moneta d'Argento",
+ "Moneta d'Oro",
+ "Anello d'Oro",
+ "Calice Reale",
+ "Pigna",
+ "Ghianda",
+ "Noce",
+ "BaccheInfuocate perenni",
+ "Baccheinfuocate",
+ "Baccheinfuocate",
+ "Baccheinfuocate",
+ "Baccheinfuocate",
+ "Baccheinfuocate",
+ "Pesce",
+ "Lisca di Pesce",
+ "Zampa di Montone",
+ "Osso",
+ "Mela",
+ "Torsolo di Mela",
+ "Mirtilli",
+ "Fungo",
+ "Messaggio",
+ "Marmo",
+ "Sega",
+ "Croce Ansata Egiziana",
+ "Piuma",
+ "Uovo",
+ "Foglia",
+ "Trifoglio",
+ "Stella Cadente",
+ "Sfera di Cristallo",
+ "Lacrima",
+ "Specchio",
+ "Ghiacciolo",
+ "Flauto",
+ "Clessidra",
+ "Chiave di Ferro",
+ "Chiave di Giada",
+ "Chiave id Ossidiana",
+ "Pozione Rossa",
+ "Pozione Rossa",
+ "Pozione Blu",
+ "Pozione Blu",
+ "Pozione Gialla",
+ "Pozione Gialla",
+ "Pozione Verde",
+ "Pozione Arancione",
+ "Pozione Viola",
+ "Pozione Arcobaleno",
+ "Acqua Fresca",
+ "Acqua Fresca",
+ "Acqua Salata",
+ "Acqua Salata",
+ "Acqua Minerale",
+ "Acqua Minerale",
+ "Acqua Magica",
+ "Acqua Magica",
+ "Bottiglietta vuota",
+ "Bottiglietta Vuota",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pezzo",
+ "Pezzo",
+ "Pezzo",
+ "Pezzo",
+ "Pezzo",
+ "Magipietra Rossa",
+ "Magipietra Arancione",
+ "Magipietra Gialla",
+ "Magipietra Verde",
+ "Magipietra Blu-Verde",
+ "Magipietra Blu",
+ "Magipietra Porpora",
+ "Roccia pesante",
+ "Corona Reale",
+ "Scettro Reale",
+ "Chiave d'Oro",
+ "?????"
+};
+
+static const StringListProvider k1ItemNamesDOSCDItalianProvider = { ARRAYSIZE(k1ItemNamesDOSCDItalian), k1ItemNamesDOSCDItalian };
+
+static const char *const k1TakenStringsDOSCDItalian[2] = {
+ " su ",
+ " su "
+};
+
+static const StringListProvider k1TakenStringsDOSCDItalianProvider = { ARRAYSIZE(k1TakenStringsDOSCDItalian), k1TakenStringsDOSCDItalian };
+
+static const char *const k1PlacedStringsDOSCDItalian[2] = {
+ " giu' ",
+ " giu' "
+};
+
+static const StringListProvider k1PlacedStringsDOSCDItalianProvider = { ARRAYSIZE(k1PlacedStringsDOSCDItalian), k1PlacedStringsDOSCDItalian };
+
+static const char *const k1DroppedStringsDOSCDItalian[2] = {
+ " giu' ",
+ " giu' "
+};
+
+static const StringListProvider k1DroppedStringsDOSCDItalianProvider = { ARRAYSIZE(k1DroppedStringsDOSCDItalian), k1DroppedStringsDOSCDItalian };
+
+static const char *const k1NoDropStringsDOSCDItalian[2] = {
+ "Non puoi pi""\x97"" lasciare nulla qui. ",
+ "Non puoi metterlo l""\x8D"". "
+};
+
+static const StringListProvider k1NoDropStringsDOSCDItalianProvider = { ARRAYSIZE(k1NoDropStringsDOSCDItalian), k1NoDropStringsDOSCDItalian };
+
+static const char *const k1PutDownStringDOSCDItalian[1] = {
+ "Forse devo prima mettere gi""\x97"" questo. "
+};
+
+static const StringListProvider k1PutDownStringDOSCDItalianProvider = { ARRAYSIZE(k1PutDownStringDOSCDItalian), k1PutDownStringDOSCDItalian };
+
+static const char *const k1WaitAmuletStringDOSCDItalian[1] = {
+ "Credo di dover attendere che l'amuleto racquisti i suoi poteri. "
+};
+
+static const StringListProvider k1WaitAmuletStringDOSCDItalianProvider = { ARRAYSIZE(k1WaitAmuletStringDOSCDItalian), k1WaitAmuletStringDOSCDItalian };
+
+static const char *const k1BlackJewelStringDOSCDItalian[1] = {
+ "E' un gioiello, ma perch""\x8A"" mai ""\x8A"" nero? "
+};
+
+static const StringListProvider k1BlackJewelStringDOSCDItalianProvider = { ARRAYSIZE(k1BlackJewelStringDOSCDItalian), k1BlackJewelStringDOSCDItalian };
+
+static const char *const k1HealingTipStringDOSCDItalian[1] = {
+ "Grande, mi pu""\x95"" essere utile in caso mi dovessi ferire"
+};
+
+static const StringListProvider k1HealingTipStringDOSCDItalianProvider = { ARRAYSIZE(k1HealingTipStringDOSCDItalian), k1HealingTipStringDOSCDItalian };
+
+static const char *const k1PoisonGoneStringDOSCDItalian[2] = {
+ "Grande!",
+ "L'effetto del veleno ""\x8A"" sparito! "
+};
+
+static const StringListProvider k1PoisonGoneStringDOSCDItalianProvider = { ARRAYSIZE(k1PoisonGoneStringDOSCDItalian), k1PoisonGoneStringDOSCDItalian };
+
+static const char *const k1ThePoisonStringsDOSCDItalian[4] = {
+ "Il veleno...",
+ "Non riesco a respirare... ",
+ "Non mi sento molto bene... ",
+ "\xAD""E' un serpente velenoso! "
+};
+
+static const StringListProvider k1ThePoisonStringsDOSCDItalianProvider = { ARRAYSIZE(k1ThePoisonStringsDOSCDItalian), k1ThePoisonStringsDOSCDItalian };
+
+static const char *const k1FluteStringsDOSCDItalian[2] = {
+ "Non ha un gran bel suono..",
+ "Quest'ultima nota era piuttosto ALTINA! "
+};
+
+static const StringListProvider k1FluteStringsDOSCDItalianProvider = { ARRAYSIZE(k1FluteStringsDOSCDItalian), k1FluteStringsDOSCDItalian };
+
+static const char *const k1WispJewelStringsDOSCDItalian[2] = {
+ "Non credo sia il caso in questo momento. ",
+ "Dovrei prima posare questo. "
+};
+
+static const StringListProvider k1WispJewelStringsDOSCDItalianProvider = { ARRAYSIZE(k1WispJewelStringsDOSCDItalian), k1WispJewelStringsDOSCDItalian };
+
+static const char *const k1MagicJewelStringsDOSCDItalian[1] = {
+ "Mi sento strano."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSCDItalianProvider = { ARRAYSIZE(k1MagicJewelStringsDOSCDItalian), k1MagicJewelStringsDOSCDItalian };
+
+static const char *const k1FlaskFullStringDOSCDItalian[1] = {
+ "La Bottiglia ""\x8A"" gi""\xA0"" piena "
+};
+
+static const StringListProvider k1FlaskFullStringDOSCDItalianProvider = { ARRAYSIZE(k1FlaskFullStringDOSCDItalian), k1FlaskFullStringDOSCDItalian };
+
+static const char *const k1FullFlaskStringDOSCDItalian[4] = {
+ "La bottiglietta ""\x8A"" piena\rdi acqua gassata ",
+ "L'ampolla contiene acqua salata ",
+ "L'ampolla contiene acqua minerale ",
+ "Acqua magica"
+};
+
+static const StringListProvider k1FullFlaskStringDOSCDItalianProvider = { ARRAYSIZE(k1FullFlaskStringDOSCDItalian), k1FullFlaskStringDOSCDItalian };
+
+static const char *const k1OutroHomeStringDOSCDItalian[1] = {
+ "Casa "
+};
+
+static const StringListProvider k1OutroHomeStringDOSCDItalianProvider = { ARRAYSIZE(k1OutroHomeStringDOSCDItalian), k1OutroHomeStringDOSCDItalian };
+
+static const char *const k1VeryCleverStringDOSCDItalian[1] = {
+ "Intelligente! ma ""\x8A"" tutto inutile... "
+};
+
+static const StringListProvider k1VeryCleverStringDOSCDItalianProvider = { ARRAYSIZE(k1VeryCleverStringDOSCDItalian), k1VeryCleverStringDOSCDItalian };
+
+static const char *const k1GUIStringsDOSCDItalian[35] = {
+ "The Legend of Kyrandia",
+ "Caricare Gioco",
+ " Salvare Gioco ",
+ " Impostazioni ",
+ " Uscire ",
+ " Torna al Gioco ",
+ " Impostazioni ",
+ "Quale partita vuoi caricare? ",
+ "Seleziona una posizione: ",
+ "[ SPAZIO VUOTO ] ",
+ " Esci ",
+ "Immettere una descrizione per il gioco: ",
+ " OK ",
+ "Riposa in pace Brandon. ",
+ " Sei sicuro di voler uscire? ",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ " Indietro ",
+ "ON ",
+ "OFF ",
+ "Si ",
+ "No ",
+ "?""\x0F"")+F""\x0F"")+L""\x0F"")+T""\x0F"")+[""\x0F"")+h""\x0F"")+y""\x0F"")+""\x89\x0F"")+""\x97\x0F"")+""\x9D\x0F"")+""\xA5\x0F"")+""\xAC\x0F"")+Velocit""\x85"" Camminata ",
+ "Velocit""\x85"" Testo ",
+ "Musica ",
+ "Effetti Sonori",
+ "Voce/Testo"
+};
+
+static const StringListProvider k1GUIStringsDOSCDItalianProvider = { ARRAYSIZE(k1GUIStringsDOSCDItalian), k1GUIStringsDOSCDItalian };
+
+static const char *const k1NewGameStringDOSCDItalian[1] = {
+ "[COMINCIARE UN NUOVO GIOCO] "
+};
+
+static const StringListProvider k1NewGameStringDOSCDItalianProvider = { ARRAYSIZE(k1NewGameStringDOSCDItalian), k1NewGameStringDOSCDItalian };
+
+static const char *const k1ConfigStringsDOSCDItalian[12] = {
+ "Lumaca",
+ "Lenta",
+ "Normale",
+ "Veloce",
+ "Molto Veloce",
+ "Solamente Testo ",
+ "Solamente Voce ",
+ "Voce e Testo ",
+ "Lenta",
+ "Normale",
+ "Veloce",
+ "Cliccabile "
+};
+
+static const StringListProvider k1ConfigStringsDOSCDItalianProvider = { ARRAYSIZE(k1ConfigStringsDOSCDItalian), k1ConfigStringsDOSCDItalian };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_cddemo.h b/devtools/create_kyradat/resources/lok_dos_cddemo.h
new file mode 100644
index 0000000000..b2c4ce9863
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_cddemo.h
@@ -0,0 +1,593 @@
+static const byte k1KallakWritingSeqDOSCDDemo[2053] = {
+ 0x00, 0x00, 0x01, 0x11, 0x1D, 0x1A, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0F, 0x00,
+ 0x24, 0x2B, 0x24, 0x2C, 0x24, 0x2D, 0x24, 0x2E,
+ 0x1C, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x95, 0x00, 0x20, 0x0A, 0x17, 0x22,
+ 0x2B, 0x1E, 0x12, 0x2E, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x90, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x20, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x05, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x8A, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x06, 0x00, 0x00, 0x10, 0x05, 0x02, 0x88, 0x00,
+ 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00,
+ 0x07, 0x00, 0x00, 0x10, 0x05, 0x01, 0x85, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x08, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x20, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x7F, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x7C, 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x79, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x0C, 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00,
+ 0x20, 0x08, 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x0E, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x70, 0x00, 0x14, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x6D, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x6A, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00,
+ 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65, 0x00,
+ 0x14, 0x08, 0x06, 0x00, 0x02, 0x00, 0x13, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x63, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x14, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x63, 0x00, 0x20, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x15, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x65, 0x00, 0x1F, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x16, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x1D, 0x08, 0x06, 0x00, 0x02, 0x00, 0x17, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x70, 0x00, 0x19, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x18, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x76, 0x00, 0x17, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x19, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x7C, 0x00, 0x16, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x1A, 0x00, 0x00, 0x10, 0x05, 0x00, 0x82, 0x00,
+ 0x17, 0x08, 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x88, 0x00, 0x19, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x8D, 0x00, 0x1D, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x93, 0x00, 0x1F, 0x08, 0x06, 0x00, 0x1F, 0x22,
+ 0x2C, 0x1E, 0x12, 0x2F, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x94, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x1B, 0x1D, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x93, 0x00, 0x14, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x04, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x20, 0x08,
+ 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x05, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x06, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x88, 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x07, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x85, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x08, 0x00, 0x00, 0x10, 0x05, 0x00, 0x82, 0x00,
+ 0x20, 0x08, 0x06, 0x00, 0x02, 0x00, 0x09, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x7C, 0x00, 0x14, 0x08, 0x06, 0x00,
+ 0x1B, 0x1D, 0x02, 0x00, 0x0B, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x79, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00,
+ 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02, 0x70, 0x00,
+ 0x14, 0x08, 0x06, 0x00, 0x02, 0x00, 0x0F, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x6A, 0x00, 0x20, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x67, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x65, 0x00, 0x14, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x13, 0x00, 0x00, 0x10, 0x05, 0x01, 0x63, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x14, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x63, 0x00, 0x20, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x15, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x65, 0x00, 0x1F, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x16, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x6A, 0x00, 0x1D, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x17, 0x00, 0x00, 0x10, 0x05, 0x00, 0x70, 0x00,
+ 0x19, 0x08, 0x06, 0x00, 0x02, 0x00, 0x18, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x17, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x19, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x7C, 0x00, 0x16, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x82, 0x00, 0x17, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00, 0x88, 0x00,
+ 0x19, 0x08, 0x06, 0x00, 0x02, 0x00, 0x1C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x1D, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x93, 0x00, 0x1F, 0x08, 0x06, 0x00,
+ 0x1F, 0x22, 0x2D, 0x1E, 0x12, 0x30, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x01, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x93, 0x00, 0x14, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x90, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x04, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x8D, 0x00, 0x20, 0x08, 0x06, 0x00,
+ 0x1B, 0x1D, 0x02, 0x00, 0x05, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x06, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x88, 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x07, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x85, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x08, 0x00, 0x00, 0x10, 0x05, 0x00, 0x82, 0x00,
+ 0x20, 0x08, 0x06, 0x00, 0x02, 0x00, 0x09, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x7C, 0x00, 0x14, 0x08, 0x06, 0x00,
+ 0x1B, 0x1D, 0x02, 0x00, 0x0B, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x79, 0x00, 0x1B, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00,
+ 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02, 0x70, 0x00,
+ 0x14, 0x08, 0x06, 0x00, 0x02, 0x00, 0x0F, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00, 0x1B, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x6A, 0x00, 0x20, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x67, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D,
+ 0x02, 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x65, 0x00, 0x14, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x13, 0x00, 0x00, 0x10, 0x05, 0x01, 0x63, 0x00,
+ 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x14, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x63, 0x00, 0x20, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x15, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x65, 0x00, 0x1F, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x16, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x6A, 0x00, 0x1D, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x17, 0x00, 0x00, 0x10, 0x05, 0x00, 0x70, 0x00,
+ 0x19, 0x08, 0x06, 0x00, 0x02, 0x00, 0x18, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x17, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x19, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x7C, 0x00, 0x16, 0x08, 0x06, 0x00,
+ 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x82, 0x00, 0x17, 0x08, 0x06, 0x00, 0x02, 0x00,
+ 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00, 0x88, 0x00,
+ 0x19, 0x08, 0x06, 0x00, 0x02, 0x00, 0x1C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x1D, 0x08,
+ 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x93, 0x00, 0x1F, 0x08, 0x06, 0x00,
+ 0x1F, 0x07, 0x3C, 0x00, 0x22, 0x2E, 0x1E, 0x12,
+ 0x31, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x95, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x10, 0x05, 0x00, 0x95,
+ 0x00, 0x20, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02,
+ 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94,
+ 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x01,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B,
+ 0x08, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x08, 0x06,
+ 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x93, 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B,
+ 0x1D, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x90, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02,
+ 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x20, 0x08, 0x06, 0x00, 0x02, 0x00, 0x05,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B,
+ 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x06,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14,
+ 0x08, 0x06, 0x00, 0x02, 0x00, 0x07, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x08, 0x06,
+ 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x08, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x82, 0x00, 0x20, 0x08, 0x06,
+ 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x7F, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02,
+ 0x00, 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C,
+ 0x00, 0x14, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02,
+ 0x00, 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79,
+ 0x00, 0x1B, 0x08, 0x06, 0x00, 0x02, 0x00, 0x0C,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20,
+ 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02, 0x00, 0x0D,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B,
+ 0x08, 0x06, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x70, 0x00, 0x14, 0x08, 0x06,
+ 0x00, 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x6D, 0x00, 0x1B, 0x08, 0x06, 0x00, 0x1B,
+ 0x1D, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x6A, 0x00, 0x20, 0x08, 0x06, 0x00, 0x02,
+ 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67,
+ 0x00, 0x1B, 0x08, 0x06, 0x00, 0x1B, 0x1D, 0x02,
+ 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65,
+ 0x00, 0x14, 0x08, 0x06, 0x00, 0x07, 0x3C, 0x00,
+ 0x02, 0x00, 0x1E, 0x00, 0x00, 0x10, 0x09, 0x15,
+ 0x07, 0x1E, 0x00, 0x0B, 0x01, 0x02, 0x00, 0x1F,
+ 0x00, 0x00, 0x10, 0x08, 0x0A, 0x00, 0x02, 0x00,
+ 0x20, 0x00, 0x00, 0x10, 0x08, 0x0A, 0x00, 0x02,
+ 0x00, 0x21, 0x00, 0x00, 0x10, 0x08, 0x0A, 0x00,
+ 0x02, 0x00, 0x22, 0x00, 0x00, 0x10, 0x08, 0x0A,
+ 0x00, 0x0C, 0x01, 0x02, 0x00, 0x1B, 0x1F, 0x07,
+ 0x0A, 0x00, 0x02, 0x00, 0x23, 0x00, 0x00, 0x10,
+ 0x08, 0x14, 0x00, 0x1B, 0x1E, 0x02, 0x00, 0x24,
+ 0x00, 0x00, 0x10, 0x08, 0x14, 0x00, 0x02, 0x00,
+ 0x25, 0x00, 0x00, 0x10, 0x08, 0x14, 0x00, 0x1B,
+ 0x1F, 0x02, 0x00, 0x26, 0x00, 0x00, 0x10, 0x08,
+ 0x14, 0x00, 0x02, 0x00, 0x27, 0x00, 0x00, 0x10,
+ 0x08, 0x14, 0x00, 0x1B, 0x1E, 0x02, 0x00, 0x28,
+ 0x00, 0x00, 0x10, 0x09, 0x07, 0x3C, 0x00, 0x1B,
+ 0x1E, 0x03, 0x00, 0x08, 0x06, 0x00, 0x1B, 0x1E,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08,
+ 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03,
+ 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06,
+ 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x1B, 0x1E,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08,
+ 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03,
+ 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06,
+ 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00,
+ 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x1B, 0x1E, 0x03,
+ 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06,
+ 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00,
+ 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08,
+ 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x1B,
+ 0x1E, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00,
+ 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00,
+ 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08,
+ 0x06, 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03,
+ 0x00, 0x08, 0x06, 0x00, 0x03, 0x00, 0x08, 0x06,
+ 0x00, 0x03, 0x00, 0x08, 0x06, 0x00, 0x03, 0x00,
+ 0x08, 0x06, 0x00, 0x16, 0x1F, 0x1C, 0x01, 0x07,
+ 0x3C, 0x00, 0x01, 0x00, 0x20
+};
+
+static const ByteProvider k1KallakWritingSeqDOSCDDemoProvider = { ARRAYSIZE(k1KallakWritingSeqDOSCDDemo), k1KallakWritingSeqDOSCDDemo };
+
+static const byte k1MalcolmTreeSeqDOSCDDemo[560] = {
+ 0x23, 0x00, 0x01, 0x00, 0x1D, 0x11, 0x24, 0x1C,
+ 0x24, 0x13, 0x24, 0x14, 0x24, 0x15, 0x24, 0x16,
+ 0x24, 0x17, 0x24, 0x19, 0x24, 0x1B, 0x1A, 0x00,
+ 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0F,
+ 0x01, 0x10, 0x01, 0x0A, 0x02, 0x01, 0x00, 0x00,
+ 0x00, 0x10, 0x1C, 0x03, 0x0A, 0x1B, 0x1E, 0x17,
+ 0x1B, 0x1F, 0x0B, 0x00, 0x03, 0x01, 0x07, 0x06,
+ 0x00, 0x0C, 0x00, 0x1F, 0x00, 0x1B, 0x19, 0x0B,
+ 0x01, 0x03, 0x01, 0x07, 0x06, 0x00, 0x0C, 0x01,
+ 0x0D, 0x00, 0x22, 0x1C, 0x13, 0x1F, 0x50, 0x00,
+ 0x2D, 0x05, 0x03, 0x01, 0x07, 0x06, 0x00, 0x03,
+ 0x01, 0x07, 0x06, 0x00, 0x0B, 0x02, 0x03, 0x01,
+ 0x07, 0x06, 0x00, 0x0C, 0x02, 0x10, 0x00, 0x14,
+ 0x1B, 0x1F, 0x03, 0x01, 0x07, 0x06, 0x00, 0x03,
+ 0x01, 0x07, 0x06, 0x00, 0x03, 0x01, 0x07, 0x06,
+ 0x00, 0x1B, 0x24, 0x1B, 0x1F, 0x03, 0x01, 0x07,
+ 0x06, 0x00, 0x1B, 0x1E, 0x0B, 0x03, 0x03, 0x01,
+ 0x07, 0x06, 0x00, 0x0C, 0x03, 0x15, 0x00, 0x22,
+ 0x13, 0x13, 0x16, 0x50, 0x00, 0x2D, 0x05, 0x1B,
+ 0x1F, 0x0B, 0x04, 0x03, 0x01, 0x07, 0x04, 0x00,
+ 0x0C, 0x04, 0x08, 0x00, 0x02, 0x01, 0x64, 0x00,
+ 0x00, 0x10, 0x1B, 0x1A, 0x1B, 0x1E, 0x0B, 0x05,
+ 0x03, 0x01, 0x07, 0x04, 0x00, 0x0C, 0x05, 0x09,
+ 0x00, 0x14, 0x06, 0x3C, 0x00, 0x13, 0x17, 0x50,
+ 0x00, 0x2D, 0x05, 0x0B, 0x06, 0x03, 0x01, 0x07,
+ 0x04, 0x00, 0x0C, 0x06, 0x09, 0x00, 0x22, 0x14,
+ 0x07, 0x1E, 0x00, 0x0B, 0x06, 0x03, 0x01, 0x07,
+ 0x04, 0x00, 0x0C, 0x06, 0x09, 0x00, 0x1B, 0x1A,
+ 0x1B, 0x1F, 0x0B, 0x07, 0x03, 0x01, 0x07, 0x04,
+ 0x00, 0x0C, 0x07, 0x06, 0x00, 0x1B, 0x1E, 0x07,
+ 0x1E, 0x00, 0x22, 0x15, 0x13, 0x18, 0x50, 0x00,
+ 0x2D, 0x05, 0x03, 0x01, 0x07, 0x06, 0x00, 0x03,
+ 0x01, 0x07, 0x06, 0x00, 0x03, 0x01, 0x07, 0x06,
+ 0x00, 0x0B, 0x08, 0x04, 0x01, 0x07, 0x06, 0x00,
+ 0x04, 0x01, 0x07, 0x06, 0x00, 0x03, 0x01, 0x07,
+ 0x06, 0x00, 0x03, 0x01, 0x07, 0x06, 0x00, 0x0D,
+ 0x08, 0x01, 0x00, 0x03, 0x01, 0x07, 0x06, 0x00,
+ 0x06, 0x78, 0x00, 0x0B, 0x09, 0x03, 0x01, 0x07,
+ 0x06, 0x00, 0x0C, 0x09, 0x04, 0x00, 0x1B, 0x1B,
+ 0x0B, 0x0A, 0x03, 0x01, 0x07, 0x06, 0x00, 0x0C,
+ 0x0A, 0x09, 0x00, 0x06, 0x14, 0x00, 0x22, 0x16,
+ 0x13, 0x19, 0x50, 0x00, 0x2D, 0x05, 0x03, 0x01,
+ 0x07, 0x06, 0x00, 0x03, 0x01, 0x07, 0x06, 0x00,
+ 0x0B, 0x0B, 0x03, 0x01, 0x07, 0x06, 0x00, 0x04,
+ 0x01, 0x07, 0x06, 0x00, 0x04, 0x01, 0x07, 0x06,
+ 0x00, 0x03, 0x01, 0x07, 0x06, 0x00, 0x03, 0x01,
+ 0x07, 0x06, 0x00, 0x0C, 0x0B, 0x01, 0x00, 0x03,
+ 0x01, 0x07, 0x06, 0x00, 0x03, 0x01, 0x07, 0x06,
+ 0x00, 0x03, 0x01, 0x07, 0x06, 0x00, 0x22, 0x17,
+ 0x13, 0x1A, 0x50, 0x00, 0x2D, 0x05, 0x0B, 0x0C,
+ 0x03, 0x01, 0x07, 0x06, 0x00, 0x0C, 0x0C, 0x12,
+ 0x00, 0x03, 0x01, 0x01, 0x01, 0x14, 0x18, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00,
+ 0x00, 0x10, 0x22, 0x19, 0x13, 0x1C, 0x50, 0x00,
+ 0x2D, 0x05, 0x06, 0x3C, 0x00, 0x03, 0x02, 0x03,
+ 0x02, 0x07, 0x06, 0x00, 0x14, 0x1B, 0x1C, 0x0B,
+ 0x0F, 0x03, 0x02, 0x07, 0x06, 0x00, 0x0C, 0x0F,
+ 0x0D, 0x00, 0x22, 0x1B, 0x13, 0x1D, 0x50, 0x00,
+ 0x2D, 0x05, 0x0B, 0x10, 0x03, 0x02, 0x07, 0x04,
+ 0x00, 0x03, 0x02, 0x07, 0x04, 0x00, 0x03, 0x02,
+ 0x07, 0x04, 0x00, 0x04, 0x02, 0x07, 0x04, 0x00,
+ 0x04, 0x02, 0x07, 0x04, 0x00, 0x04, 0x02, 0x07,
+ 0x04, 0x00, 0x0D, 0x10, 0x02, 0x00, 0x13, 0x1E,
+ 0x50, 0x00, 0x2D, 0x05, 0x0B, 0x11, 0x03, 0x02,
+ 0x07, 0x04, 0x00, 0x03, 0x02, 0x07, 0x04, 0x00,
+ 0x03, 0x02, 0x07, 0x04, 0x00, 0x04, 0x02, 0x07,
+ 0x04, 0x00, 0x04, 0x02, 0x07, 0x04, 0x00, 0x04,
+ 0x02, 0x07, 0x04, 0x00, 0x0D, 0x11, 0x01, 0x00,
+ 0x03, 0x02, 0x07, 0x04, 0x00, 0x07, 0xB4, 0x00,
+ 0x16, 0x1C, 0x01, 0x01, 0x01, 0x01, 0x02, 0x20
+};
+
+static const ByteProvider k1MalcolmTreeSeqDOSCDDemoProvider = { ARRAYSIZE(k1MalcolmTreeSeqDOSCDDemo), k1MalcolmTreeSeqDOSCDDemo };
+
+static const byte k1WestwoodLogoSeqDOSCDDemo[75] = {
+ 0x00, 0x03, 0x01, 0x1D, 0x02, 0x03, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x01, 0x07, 0x06, 0x00, 0x07,
+ 0x3C, 0x00, 0x1B, 0x14, 0x0B, 0x00, 0x03, 0x03,
+ 0x19, 0x01, 0x0C, 0x00, 0x08, 0x00, 0x07, 0x3C,
+ 0x00, 0x1B, 0x27, 0x0B, 0x01, 0x03, 0x03, 0x19,
+ 0x01, 0x0C, 0x01, 0x0B, 0x00, 0x07, 0x78, 0x00,
+ 0x1B, 0x14, 0x02, 0x03, 0x0A, 0x00, 0x00, 0x00,
+ 0x19, 0x01, 0x07, 0x06, 0x00, 0x0B, 0x02, 0x04,
+ 0x03, 0x19, 0x01, 0x0C, 0x02, 0x09, 0x00, 0x16,
+ 0x01, 0x03, 0x20
+};
+
+static const ByteProvider k1WestwoodLogoSeqDOSCDDemoProvider = { ARRAYSIZE(k1WestwoodLogoSeqDOSCDDemo), k1WestwoodLogoSeqDOSCDDemo };
+
+static const byte k1KyrandiaLogoSeqDOSCDDemo[166] = {
+ 0x18, 0x00, 0x02, 0x00, 0x06, 0x01, 0x1D, 0x02,
+ 0x06, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x07,
+ 0x06, 0x00, 0x19, 0x04, 0x03, 0x06, 0x19, 0x00,
+ 0x03, 0x06, 0x19, 0x00, 0x03, 0x06, 0x19, 0x00,
+ 0x03, 0x06, 0x19, 0x00, 0x03, 0x06, 0x19, 0x00,
+ 0x03, 0x06, 0x19, 0x00, 0x0B, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x03, 0x06, 0x19, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x03, 0x06, 0x19, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x03, 0x06, 0x19, 0x00, 0x03, 0x06,
+ 0x19, 0x00, 0x03, 0x06, 0x19, 0x00, 0x1B, 0x27,
+ 0x0B, 0x01, 0x03, 0x06, 0x19, 0x00, 0x0C, 0x01,
+ 0x07, 0x00, 0x06, 0xF0, 0x00, 0x1B, 0x27, 0x0B,
+ 0x02, 0x04, 0x06, 0x19, 0x00, 0x0C, 0x02, 0x0F,
+ 0x00, 0x07, 0x78, 0x00, 0x07, 0xB4, 0x00, 0x24,
+ 0x37, 0x24, 0x38, 0x24, 0x39, 0x24, 0x3A, 0x24,
+ 0x3B, 0x24, 0x3C, 0x02, 0x06, 0x0D, 0x00, 0x00,
+ 0x00, 0x19, 0x00, 0x07, 0x06, 0x00, 0x07, 0x3C,
+ 0x00, 0x22, 0x1C, 0x1B, 0x14, 0x0B, 0x02, 0x04,
+ 0x06, 0x19, 0x00, 0x0C, 0x02, 0x0C, 0x00, 0x07,
+ 0x78, 0x00, 0x16, 0x01, 0x06, 0x20
+};
+
+static const ByteProvider k1KyrandiaLogoSeqDOSCDDemoProvider = { ARRAYSIZE(k1KyrandiaLogoSeqDOSCDDemo), k1KyrandiaLogoSeqDOSCDDemo };
+
+static const byte k1KallakMalcolmSeqDOSCDDemo[696] = {
+ 0x00, 0x04, 0x01, 0x1D, 0x24, 0x00, 0x24, 0x01,
+ 0x24, 0x02, 0x24, 0x0B, 0x24, 0x0C, 0x11, 0x1A,
+ 0x00, 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00,
+ 0x0F, 0x03, 0x10, 0x00, 0x1A, 0x00, 0x00, 0x88,
+ 0x3F, 0x01, 0xC7, 0x0C, 0x02, 0x1C, 0x00, 0x02,
+ 0x04, 0x00, 0x10, 0x00, 0x3A, 0x0A, 0x1C, 0x00,
+ 0x1C, 0x05, 0x17, 0x1B, 0x23, 0x0B, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x0C, 0x00, 0x23, 0x00,
+ 0x22, 0x00, 0x13, 0x02, 0x50, 0x00, 0x3A, 0x05,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x0B, 0x01, 0x03, 0x04, 0x08, 0x0E,
+ 0x00, 0x0C, 0x01, 0x04, 0x00, 0x06, 0x3C, 0x00,
+ 0x22, 0x01, 0x13, 0x03, 0x50, 0x00, 0x3A, 0x05,
+ 0x0B, 0x02, 0x03, 0x04, 0x08, 0x06, 0x00, 0x0C,
+ 0x02, 0x18, 0x00, 0x06, 0x3C, 0x00, 0x22, 0x02,
+ 0x13, 0x04, 0x50, 0x00, 0x3A, 0x05, 0x0B, 0x03,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C, 0x03, 0x0A,
+ 0x00, 0x06, 0x3C, 0x00, 0x24, 0x04, 0x24, 0x05,
+ 0x24, 0x03, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x22, 0x03, 0x13, 0x05,
+ 0xF0, 0x00, 0x3A, 0x0F, 0x03, 0x04, 0x08, 0x0A,
+ 0x00, 0x03, 0x04, 0x08, 0x0A, 0x00, 0x03, 0x04,
+ 0x08, 0x0A, 0x00, 0x03, 0x04, 0x08, 0x0A, 0x00,
+ 0x03, 0x04, 0x08, 0x0A, 0x00, 0x07, 0x1E, 0x00,
+ 0x22, 0x04, 0x13, 0x06, 0xF0, 0x00, 0x3A, 0x0F,
+ 0x0B, 0x04, 0x03, 0x04, 0x08, 0x05, 0x00, 0x0C,
+ 0x04, 0x12, 0x00, 0x07, 0x14, 0x00, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x06, 0x3C, 0x00,
+ 0x22, 0x05, 0x13, 0x07, 0xF0, 0x00, 0x3A, 0x0F,
+ 0x0B, 0x05, 0x03, 0x04, 0x08, 0x05, 0x00, 0x0C,
+ 0x05, 0x12, 0x00, 0x06, 0x3C, 0x00, 0x24, 0x06,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x22, 0x06, 0x13, 0x08, 0x50, 0x00,
+ 0x3A, 0x05, 0x0B, 0x06, 0x03, 0x04, 0x08, 0x08,
+ 0x00, 0x0C, 0x06, 0x07, 0x00, 0x06, 0x3C, 0x00,
+ 0x24, 0x07, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x22, 0x07, 0x13, 0x09,
+ 0x50, 0x00, 0x3A, 0x05, 0x03, 0x04, 0x08, 0x07,
+ 0x00, 0x0B, 0x07, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x0C, 0x07, 0x0A, 0x00, 0x06, 0x3C, 0x00, 0x22,
+ 0x08, 0x03, 0x04, 0x08, 0x07, 0x00, 0x13, 0x0A,
+ 0x50, 0x00, 0x3A, 0x05, 0x0B, 0x08, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x0C, 0x08, 0x0F, 0x00, 0x06,
+ 0x3C, 0x00, 0x24, 0x0A, 0x22, 0x09, 0x13, 0x0B,
+ 0xF0, 0x00, 0x3A, 0x0F, 0x03, 0x04, 0x08, 0x07,
+ 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08, 0x07,
+ 0x00, 0x07, 0x3C, 0x00, 0x22, 0x0A, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x13, 0x0C, 0xF0, 0x00, 0x3A,
+ 0x0F, 0x0B, 0x09, 0x03, 0x04, 0x08, 0x05, 0x00,
+ 0x0C, 0x09, 0x0F, 0x00, 0x06, 0x3C, 0x00, 0x24,
+ 0x0B, 0x24, 0x0C, 0x24, 0x0D, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x03, 0x04, 0x08, 0x07,
+ 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x03, 0x04,
+ 0x08, 0x07, 0x00, 0x22, 0x0B, 0x13, 0x0D, 0x50,
+ 0x00, 0x3A, 0x05, 0x0B, 0x0A, 0x03, 0x04, 0x08,
+ 0x08, 0x00, 0x0C, 0x0A, 0x0E, 0x00, 0x06, 0x3C,
+ 0x00, 0x0B, 0x0B, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x0C, 0x0B, 0x02, 0x00, 0x1B, 0x20, 0x0B, 0x0C,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C, 0x0C, 0x06,
+ 0x00, 0x1B, 0x21, 0x0B, 0x0D, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x0C, 0x0D, 0x0C, 0x00, 0x1B, 0x22,
+ 0x0B, 0x0E, 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C,
+ 0x0E, 0x0B, 0x00, 0x22, 0x0C, 0x13, 0x0E, 0x50,
+ 0x00, 0x3A, 0x05, 0x0B, 0x0F, 0x03, 0x04, 0x08,
+ 0x07, 0x00, 0x0C, 0x0F, 0x09, 0x00, 0x06, 0x3C,
+ 0x00, 0x03, 0x04, 0x08, 0x07, 0x00, 0x22, 0x0D,
+ 0x13, 0x0F, 0x50, 0x00, 0x3A, 0x05, 0x0B, 0x10,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C, 0x10, 0x09,
+ 0x00, 0x06, 0x3C, 0x00, 0x24, 0x0E, 0x24, 0x0F,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x22, 0x0E, 0x13,
+ 0x10, 0x50, 0x00, 0x3A, 0x05, 0x0B, 0x11, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x0C, 0x11, 0x0F, 0x00,
+ 0x06, 0x3C, 0x00, 0x03, 0x04, 0x08, 0x07, 0x00,
+ 0x22, 0x0F, 0x13, 0x11, 0x50, 0x00, 0x3A, 0x05,
+ 0x0B, 0x12, 0x03, 0x04, 0x08, 0x05, 0x00, 0x0C,
+ 0x12, 0x14, 0x00, 0x07, 0x3C, 0x00, 0x0B, 0x13,
+ 0x03, 0x04, 0x08, 0x07, 0x00, 0x0C, 0x13, 0x06,
+ 0x00, 0x1B, 0x23, 0x22, 0x1C, 0x0B, 0x13, 0x03,
+ 0x04, 0x08, 0x07, 0x00, 0x0C, 0x13, 0x06, 0x00,
+ 0x02, 0x04, 0x45, 0x10, 0x00, 0x3A, 0x14, 0x07,
+ 0x78, 0x00, 0x16, 0x1C, 0x01, 0x01, 0x04, 0x20
+};
+
+static const ByteProvider k1KallakMalcolmSeqDOSCDDemoProvider = { ARRAYSIZE(k1KallakMalcolmSeqDOSCDDemo), k1KallakMalcolmSeqDOSCDDemo };
+
+static const byte k1ForestSeqDOSCDDemo[627] = {
+ 0x00, 0x05, 0x01, 0x00, 0x07, 0x01, 0x1D, 0x02,
+ 0x07, 0x00, 0x00, 0x00, 0x08, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x0B, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x0C, 0x00, 0x0F, 0x00,
+ 0x22, 0x37, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07,
+ 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x1B, 0x16, 0x03, 0x07,
+ 0x02, 0x05, 0x01, 0x98, 0x00, 0x38, 0x19, 0x02,
+ 0x19, 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x02,
+ 0x05, 0x03, 0x98, 0x00, 0x38, 0x19, 0x02, 0x19,
+ 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x01, 0x98, 0x00, 0x38, 0x19, 0x02, 0x19, 0x03,
+ 0x07, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x19, 0x02, 0x19, 0x03, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07,
+ 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02,
+ 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x22,
+ 0x38, 0x0B, 0x09, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x0C, 0x09, 0x21, 0x00, 0x1B, 0x16,
+ 0x03, 0x07, 0x02, 0x05, 0x01, 0x98, 0x00, 0x38,
+ 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x03, 0x98, 0x00, 0x38, 0x19,
+ 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x03, 0x07,
+ 0x02, 0x05, 0x01, 0x98, 0x00, 0x38, 0x19, 0x02,
+ 0x19, 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x02,
+ 0x05, 0x04, 0x98, 0x00, 0x38, 0x19, 0x02, 0x19,
+ 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02,
+ 0x07, 0x09, 0x00, 0x22, 0x39, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x05, 0x98, 0x00, 0x38, 0x19, 0x02, 0x19, 0x03,
+ 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x02, 0x05, 0x06, 0x98, 0x00,
+ 0x38, 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x1B, 0x25,
+ 0x0B, 0x00, 0x03, 0x07, 0x03, 0x05, 0x19, 0x02,
+ 0x19, 0x03, 0x07, 0x09, 0x00, 0x0C, 0x00, 0x09,
+ 0x00, 0x0B, 0x06, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x0C, 0x06, 0x0E, 0x00, 0x22, 0x3A,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07,
+ 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x1B, 0x17, 0x0B, 0x01,
+ 0x03, 0x07, 0x03, 0x05, 0x19, 0x02, 0x19, 0x03,
+ 0x07, 0x09, 0x00, 0x0C, 0x01, 0x0D, 0x00, 0x1B,
+ 0x25, 0x0B, 0x07, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x0C, 0x07, 0x08, 0x00, 0x03, 0x07,
+ 0x19, 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19,
+ 0x02, 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02,
+ 0x07, 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x1B, 0x18, 0x03, 0x07, 0x03, 0x05,
+ 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x22,
+ 0x3B, 0x03, 0x07, 0x03, 0x05, 0x19, 0x02, 0x19,
+ 0x03, 0x07, 0x09, 0x00, 0x03, 0x07, 0x03, 0x05,
+ 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x03, 0x05, 0x19, 0x02, 0x19, 0x03, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x03, 0x05, 0x19, 0x02,
+ 0x19, 0x03, 0x07, 0x09, 0x00, 0x07, 0x12, 0x00,
+ 0x1B, 0x25, 0x0B, 0x02, 0x03, 0x07, 0x03, 0x05,
+ 0x19, 0x02, 0x19, 0x03, 0x07, 0x09, 0x00, 0x0C,
+ 0x02, 0x07, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07,
+ 0x09, 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00,
+ 0x03, 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x03,
+ 0x07, 0x19, 0x02, 0x07, 0x09, 0x00, 0x22, 0x3C,
+ 0x0B, 0x03, 0x03, 0x07, 0x19, 0x02, 0x07, 0x09,
+ 0x00, 0x0C, 0x03, 0x23, 0x00, 0x16, 0x01, 0x07,
+ 0x01, 0x05, 0x20
+};
+
+static const ByteProvider k1ForestSeqDOSCDDemoProvider = { ARRAYSIZE(k1ForestSeqDOSCDDemo), k1ForestSeqDOSCDDemo };
+
+static const char *const k1IntroCPSStringsDOSCDDemo[2] = {
+ "gemcuti.cps",
+ "tree.cps"
+};
+
+static const StringListProvider k1IntroCPSStringsDOSCDDemoProvider = { ARRAYSIZE(k1IntroCPSStringsDOSCDDemo), k1IntroCPSStringsDOSCDDemo };
+
+static const char *const k1IntroCOLStringsDOSCDDemo[4] = {
+ "kallak.col",
+ "tree_exp.col",
+ "ww.col",
+ "mal-kal.col"
+};
+
+static const StringListProvider k1IntroCOLStringsDOSCDDemoProvider = { ARRAYSIZE(k1IntroCOLStringsDOSCDDemo), k1IntroCOLStringsDOSCDDemo };
+
+static const char *const k1IntroWSAStringsDOSCDDemo[11] = {
+ "kallak.wsa",
+ "tree1.wsa",
+ "tree2.wsa",
+ "westwood.wsa",
+ "mal-kal.wsa",
+ "destruct.wsa",
+ "kyrandia.wsa",
+ "shore.wsa",
+ "reunion.wsa",
+ "reuniont.wsa",
+ "latern.wsa"
+};
+
+static const StringListProvider k1IntroWSAStringsDOSCDDemoProvider = { ARRAYSIZE(k1IntroWSAStringsDOSCDDemo), k1IntroWSAStringsDOSCDDemo };
+
+static const char *const k1AudioTracksIntroDOSCDDemo[2] = {
+ "intro",
+ "intro"
+};
+
+static const StringListProvider k1AudioTracksIntroDOSCDDemoProvider = { ARRAYSIZE(k1AudioTracksIntroDOSCDDemo), k1AudioTracksIntroDOSCDDemo };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_cddemo_english.h b/devtools/create_kyradat/resources/lok_dos_cddemo_english.h
new file mode 100644
index 0000000000..538bab63b3
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_cddemo_english.h
@@ -0,0 +1,56 @@
+static const char *const k1IntroStringsDOSCDDemoEnglish[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Greetings, Kallak...",
+ "...Powerful leader of the Royal Mystics!",
+ "Did I frighten you?",
+ "Malcolm!",
+ "I heard yesterday of your escape.",
+ "And have expected you before now.",
+ "Why would I rush?",
+ "I rule this land!",
+ "Your puny curse restrains me naught.",
+ "So, slay me now!",
+ "I have little magic left.",
+ "I mean to harm you, have no doubt...",
+ "...Now you are stone...",
+ "...Yet I leave your eyes.",
+ "I shed no tears for Kyrandia...",
+ "...But cannot deny you yours.",
+ "Malcolm the Jester has broken free!",
+ "He now controls the Kyragem...",
+ "...source of all magic in Kyrandia!",
+ "",
+ "How dare you trip ME!",
+ "But no, something special for you...",
+ "A humorous hex!",
+ "But I shall give fair warning.",
+ "Don't jump on THAT tree!",
+ "Don't climb up THAT tree little squirrel!",
+ "Boo!",
+ "Tis funnier that way...",
+ "...Is it not?",
+ "Ha ha ha...",
+ "Aren't fingers wonderful?",
+ "It's great to be alive!",
+ "Brandon!",
+ "Grandfather! We did it!",
+ "No! YOU did it!",
+ "Long live King Brandon!",
+ "Long live the Royal Mystics!",
+ "Now, let's go put Kyrandia back together!",
+ "Good idea!",
+ "As my first Royal Proclamation...",
+ "I name sandals as the official footwear of Kyrandia!",
+ "Well done, Brandon!",
+ "The Land no longer weeps...",
+ "And your friends have been restored!",
+ "Dear Brynn...",
+ "Malcolm has broken free!",
+ "Soon he will come for me.",
+ "Please help Brandon...",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSCDDemoEnglishProvider = { ARRAYSIZE(k1IntroStringsDOSCDDemoEnglish), k1IntroStringsDOSCDDemoEnglish };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_demo.h b/devtools/create_kyradat/resources/lok_dos_demo.h
new file mode 100644
index 0000000000..c8f09337de
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_demo.h
@@ -0,0 +1,112 @@
+static const byte k1WestwoodLogoSeqDOSDemo[68] = {
+ 0x00, 0x02, 0x01, 0x02, 0x02, 0x00, 0x00, 0x00,
+ 0x00, 0x16, 0x01, 0x06, 0x06, 0x00, 0x06, 0x3C,
+ 0x00, 0x0A, 0x00, 0x03, 0x02, 0x16, 0x01, 0x0B,
+ 0x00, 0x08, 0x00, 0x06, 0x3C, 0x00, 0x0A, 0x01,
+ 0x03, 0x02, 0x16, 0x01, 0x0B, 0x01, 0x0B, 0x00,
+ 0x06, 0x78, 0x00, 0x02, 0x02, 0x0A, 0x00, 0x00,
+ 0x00, 0x16, 0x01, 0x06, 0x06, 0x00, 0x0A, 0x02,
+ 0x04, 0x02, 0x16, 0x01, 0x0B, 0x02, 0x09, 0x00,
+ 0x13, 0x01, 0x02, 0x1A
+};
+
+static const ByteProvider k1WestwoodLogoSeqDOSDemoProvider = { ARRAYSIZE(k1WestwoodLogoSeqDOSDemo), k1WestwoodLogoSeqDOSDemo };
+
+static const byte k1KyrandiaLogoSeqDOSDemo[84] = {
+ 0x15, 0x00, 0x02, 0x00, 0x05, 0x01, 0x02, 0x05,
+ 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06, 0x06,
+ 0x00, 0x06, 0x3C, 0x00, 0x0A, 0x00, 0x03, 0x05,
+ 0x16, 0x00, 0x0B, 0x00, 0x0B, 0x00, 0x06, 0x3C,
+ 0x00, 0x0A, 0x01, 0x03, 0x05, 0x16, 0x00, 0x0B,
+ 0x01, 0x0F, 0x00, 0x06, 0x3C, 0x00, 0x0A, 0x02,
+ 0x04, 0x05, 0x16, 0x00, 0x0B, 0x02, 0x0F, 0x00,
+ 0x02, 0x05, 0x0D, 0x00, 0x00, 0x00, 0x16, 0x00,
+ 0x06, 0x06, 0x00, 0x06, 0x78, 0x00, 0x0A, 0x02,
+ 0x04, 0x05, 0x16, 0x00, 0x0B, 0x02, 0x0C, 0x00,
+ 0x13, 0x01, 0x05, 0x1A
+};
+
+static const ByteProvider k1KyrandiaLogoSeqDOSDemoProvider = { ARRAYSIZE(k1KyrandiaLogoSeqDOSDemo), k1KyrandiaLogoSeqDOSDemo };
+
+static const char *const k1IntroCPSStringsDOSDemo[1] = {
+ "mal-kal.cps"
+};
+
+static const StringListProvider k1IntroCPSStringsDOSDemoProvider = { ARRAYSIZE(k1IntroCPSStringsDOSDemo), k1IntroCPSStringsDOSDemo };
+
+static const char *const k1IntroCOLStringsDOSDemo[7] = {
+ "kallak.col",
+ "demo1.col",
+ "demo2.col",
+ "demo3.col",
+ "demo4.col",
+ "ww.col",
+ "mal-kal.col"
+};
+
+static const StringListProvider k1IntroCOLStringsDOSDemoProvider = { ARRAYSIZE(k1IntroCOLStringsDOSDemo), k1IntroCOLStringsDOSDemo };
+
+static const char *const k1IntroWSAStringsDOSDemo[7] = {
+ "kallak.wsa",
+ "demo1.wsa",
+ "westwood.wsa",
+ "demo2.wsa",
+ "demo3.wsa",
+ "kyrandia.wsa",
+ "demo4.wsa"
+};
+
+static const StringListProvider k1IntroWSAStringsDOSDemoProvider = { ARRAYSIZE(k1IntroWSAStringsDOSDemo), k1IntroWSAStringsDOSDemo };
+
+static const byte k1Demo1SeqDOSDemo[38] = {
+ 0x00, 0x01, 0x00, 0x0C, 0x01, 0x02, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x09, 0x14, 0x06, 0x01, 0x00,
+ 0x06, 0x3C, 0x00, 0x0A, 0x00, 0x03, 0x01, 0x06,
+ 0x04, 0x00, 0x0B, 0x00, 0x19, 0x00, 0x06, 0x78,
+ 0x00, 0x13, 0x0E, 0x01, 0x01, 0x1A
+};
+
+static const ByteProvider k1Demo1SeqDOSDemoProvider = { ARRAYSIZE(k1Demo1SeqDOSDemo), k1Demo1SeqDOSDemo };
+
+static const byte k1Demo2SeqDOSDemo[35] = {
+ 0x00, 0x03, 0x00, 0x0C, 0x02, 0x02, 0x03, 0x00,
+ 0x00, 0x00, 0x00, 0x09, 0x14, 0x06, 0x01, 0x00,
+ 0x06, 0x3C, 0x00, 0x0A, 0x00, 0x03, 0x03, 0x06,
+ 0x04, 0x00, 0x0B, 0x00, 0x71, 0x00, 0x13, 0x0E,
+ 0x01, 0x03, 0x1A
+};
+
+static const ByteProvider k1Demo2SeqDOSDemoProvider = { ARRAYSIZE(k1Demo2SeqDOSDemo), k1Demo2SeqDOSDemo };
+
+static const byte k1Demo3SeqDOSDemo[89] = {
+ 0x00, 0x04, 0x00, 0x0C, 0x03, 0x02, 0x04, 0x00,
+ 0x00, 0x00, 0x00, 0x09, 0x14, 0x0A, 0x00, 0x03,
+ 0x04, 0x06, 0x07, 0x00, 0x03, 0x04, 0x06, 0x07,
+ 0x00, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x06,
+ 0x07, 0x00, 0x0B, 0x00, 0x0E, 0x00, 0x03, 0x04,
+ 0x06, 0x07, 0x00, 0x03, 0x04, 0x06, 0x07, 0x00,
+ 0x0A, 0x01, 0x03, 0x04, 0x06, 0x07, 0x00, 0x0B,
+ 0x01, 0x0B, 0x00, 0x0A, 0x02, 0x02, 0x04, 0x0F,
+ 0x00, 0x00, 0x00, 0x06, 0x07, 0x00, 0x03, 0x04,
+ 0x06, 0x07, 0x00, 0x03, 0x04, 0x06, 0x07, 0x00,
+ 0x0B, 0x02, 0x13, 0x00, 0x13, 0x0E, 0x01, 0x04,
+ 0x1A
+};
+
+static const ByteProvider k1Demo3SeqDOSDemoProvider = { ARRAYSIZE(k1Demo3SeqDOSDemo), k1Demo3SeqDOSDemo };
+
+static const byte k1Demo4SeqDOSDemo[32] = {
+ 0x00, 0x06, 0x00, 0x0C, 0x04, 0x02, 0x06, 0x00,
+ 0x00, 0x00, 0x00, 0x09, 0x14, 0x0A, 0x00, 0x03,
+ 0x06, 0x06, 0x04, 0x00, 0x0B, 0x00, 0x39, 0x00,
+ 0x06, 0x5A, 0x00, 0x13, 0x0E, 0x01, 0x06, 0x1A
+};
+
+static const ByteProvider k1Demo4SeqDOSDemoProvider = { ARRAYSIZE(k1Demo4SeqDOSDemo), k1Demo4SeqDOSDemo };
+
+static const char *const k1AudioTracksIntroDOSDemo[1] = {
+ "intro"
+};
+
+static const StringListProvider k1AudioTracksIntroDOSDemoProvider = { ARRAYSIZE(k1AudioTracksIntroDOSDemo), k1AudioTracksIntroDOSDemo };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_demo_english.h b/devtools/create_kyradat/resources/lok_dos_demo_english.h
new file mode 100644
index 0000000000..f974718856
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_demo_english.h
@@ -0,0 +1,37 @@
+static const char *const k1IntroStringsDOSDemoEnglish[32] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Greetings, Kallak,",
+ "Powerful leader of the Royal Mystics!",
+ "Did I frighten you?",
+ "Malcom!",
+ "I heard yesterday of your escape.",
+ "And have expected you before now.",
+ "Why would I rush?",
+ "I rule this land.",
+ "Your puny curse restrains me naught.",
+ "So, slay me now.",
+ "I have little magic left.",
+ "I mean to harm you, have no doubt,",
+ "Now you are stone,",
+ "Yet I leave your eyes.",
+ "I shed no tears for Kyrandia,",
+ "But cannot deny you yours.",
+ "Malcom the jester has broken free.",
+ "He now controls the Kyragem",
+ "source of all magic in Kyrandia.",
+ "",
+ "How dare you trip ME!",
+ "But no,...something special for you.",
+ "A humorous hex!",
+ "But, I am fair!",
+ "And I shall give fair warning!",
+ "Don't climb up THAT tree little squirrel!",
+ "Boo!",
+ "Tis funnier that way,",
+ "Is it not?",
+ "Ha ha ha..."
+};
+
+static const StringListProvider k1IntroStringsDOSDemoEnglishProvider = { ARRAYSIZE(k1IntroStringsDOSDemoEnglish), k1IntroStringsDOSDemoEnglish };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_english.h b/devtools/create_kyradat/resources/lok_dos_english.h
new file mode 100644
index 0000000000..d53bad80af
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_english.h
@@ -0,0 +1,335 @@
+static const char *const k1IntroStringsDOSEnglish[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Greetings, Kallak...",
+ "...Powerful leader of the Royal Mystics!",
+ "Did I frighten you?",
+ "Malcolm!",
+ "I heard yesterday of your escape.",
+ "And have expected you before now.",
+ "Why would I rush?",
+ "I rule this land!",
+ "Your puny curse restrains me naught.",
+ "So, slay me now!",
+ "I have little magic left.",
+ "I mean to harm you, have no doubt...",
+ "...Now you are stone...",
+ "...Yet I leave your eyes.",
+ "I shed no tears for Kyrandia...",
+ "...But cannot deny you yours.",
+ "Malcolm the Jester has broken free!",
+ "He now controls the Kyragem...",
+ "...source of all magic in Kyrandia!",
+ "",
+ "How dare you trip ME!",
+ "But no, something special for you...",
+ "A humorous hex!",
+ "But I shall give fair warning.",
+ "Don't jump on THAT tree!",
+ "Don't climb up THAT tree little squirrel!",
+ "Boo!",
+ "Tis funnier that way...",
+ "...Is it not?",
+ "Ha ha ha...",
+ "Aren't fingers wonderful?",
+ "It's great to be alive!",
+ "Brandon!",
+ "Grandfather! We did it!",
+ "No! YOU did it!",
+ "Long live King Brandon!",
+ "Long live the Royal Mystics!",
+ "Now, let's go put Kyrandia back together!",
+ "Good idea!",
+ "As my first Royal Proclamation...",
+ "I name sandals as the official footwear of Kyrandia!",
+ "Well done, Brandon!",
+ "The Land no longer weeps...",
+ "And your friends have been restored!",
+ "Dear Brynn...",
+ "Malcolm has broken free!",
+ "Soon he will come for me.",
+ "Please help Brandon...",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSEnglishProvider = { ARRAYSIZE(k1IntroStringsDOSEnglish), k1IntroStringsDOSEnglish };
+
+static const char *const k1ItemNamesDOSEnglish[107] = {
+ "Garnet",
+ "Amethyst",
+ "Aquamarine",
+ "Diamond",
+ "Emerald",
+ "Pearl",
+ "Ruby",
+ "Peridot",
+ "Sapphire",
+ "Opal",
+ "Topaz",
+ "Onyx",
+ "Sunstone",
+ "Moonstone",
+ "Rainbowstone",
+ "Lodestone",
+ "Rose",
+ "Tulip",
+ "Orchid",
+ "Silver Rose",
+ "Silver Statuette",
+ "Silver Coin",
+ "Gold Coin",
+ "Gold Ring",
+ "Royal Chalice",
+ "Pinecone",
+ "Acorn",
+ "Walnut",
+ "Everglowing Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fish",
+ "Fish Bone",
+ "Mutton Leg",
+ "Bone",
+ "Apple",
+ "Apple Core",
+ "Blueberries",
+ "Mushroom",
+ "Note",
+ "Marble",
+ "Saw",
+ "Ankh",
+ "Feather",
+ "Egg",
+ "Leaf",
+ "Shamrock",
+ "Fallen Star",
+ "Crystal Ball",
+ "Teardrop",
+ "Mirror",
+ "Ice Shard",
+ "Flute",
+ "Hourglass",
+ "Iron Key",
+ "Jade Key",
+ "Obsidion Key",
+ "Red Potion",
+ "Red Potion",
+ "Blue Potion",
+ "Blue Potion",
+ "Yellow Potion",
+ "Yellow Potion",
+ "Green Potion",
+ "Orange Potion",
+ "Purple Potion",
+ "Potion of Rainbows",
+ "Fresh Water",
+ "Fresh Water",
+ "Salt Water",
+ "Salt Water",
+ "Mineral Water",
+ "Mineral Water",
+ "Magical Water",
+ "Magical Water",
+ "Empty Flask",
+ "Empty Flask",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Red Magestone",
+ "Orange Magestone",
+ "Yellow Magestone",
+ "Green Magestone",
+ "Blue-Green Magestone",
+ "Blue Magestone",
+ "Purple Magestone",
+ "Heavy rock",
+ "Royal Crown",
+ "Royal Sceptre",
+ "Gold key",
+ "Unknown item"
+};
+
+static const StringListProvider k1ItemNamesDOSEnglishProvider = { ARRAYSIZE(k1ItemNamesDOSEnglish), k1ItemNamesDOSEnglish };
+
+static const char *const k1TakenStringsDOSEnglish[2] = {
+ " taken.",
+ " taken."
+};
+
+static const StringListProvider k1TakenStringsDOSEnglishProvider = { ARRAYSIZE(k1TakenStringsDOSEnglish), k1TakenStringsDOSEnglish };
+
+static const char *const k1PlacedStringsDOSEnglish[1] = {
+ " placed."
+};
+
+static const StringListProvider k1PlacedStringsDOSEnglishProvider = { ARRAYSIZE(k1PlacedStringsDOSEnglish), k1PlacedStringsDOSEnglish };
+
+static const char *const k1DroppedStringsDOSEnglish[1] = {
+ " dropped."
+};
+
+static const StringListProvider k1DroppedStringsDOSEnglishProvider = { ARRAYSIZE(k1DroppedStringsDOSEnglish), k1DroppedStringsDOSEnglish };
+
+static const char *const k1NoDropStringsDOSEnglish[2] = {
+ "You can't drop any more items in this scene.",
+ "You can't put that there."
+};
+
+static const StringListProvider k1NoDropStringsDOSEnglishProvider = { ARRAYSIZE(k1NoDropStringsDOSEnglish), k1NoDropStringsDOSEnglish };
+
+static const char *const k1PutDownStringDOSEnglish[1] = {
+ "Maybe I'd better put this down first."
+};
+
+static const StringListProvider k1PutDownStringDOSEnglishProvider = { ARRAYSIZE(k1PutDownStringDOSEnglish), k1PutDownStringDOSEnglish };
+
+static const char *const k1WaitAmuletStringDOSEnglish[1] = {
+ "I guess I'll have to wait for my Amulet to regain its power."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSEnglishProvider = { ARRAYSIZE(k1WaitAmuletStringDOSEnglish), k1WaitAmuletStringDOSEnglish };
+
+static const char *const k1BlackJewelStringDOSEnglish[1] = {
+ "It's a jewel, but why is it black?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSEnglishProvider = { ARRAYSIZE(k1BlackJewelStringDOSEnglish), k1BlackJewelStringDOSEnglish };
+
+static const char *const k1HealingTipStringDOSEnglish[1] = {
+ "Gee, this could come in handy if I get hurt."
+};
+
+static const StringListProvider k1HealingTipStringDOSEnglishProvider = { ARRAYSIZE(k1HealingTipStringDOSEnglish), k1HealingTipStringDOSEnglish };
+
+static const char *const k1PoisonGoneStringDOSEnglish[2] = {
+ "Amazing!",
+ "The effects of the poison are gone!"
+};
+
+static const StringListProvider k1PoisonGoneStringDOSEnglishProvider = { ARRAYSIZE(k1PoisonGoneStringDOSEnglish), k1PoisonGoneStringDOSEnglish };
+
+static const char *const k1ThePoisonStringsDOSEnglish[4] = {
+ "The poison...",
+ "I can't breathe...",
+ "I don't feel so good...",
+ "That snake must\rbe poisonous!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSEnglishProvider = { ARRAYSIZE(k1ThePoisonStringsDOSEnglish), k1ThePoisonStringsDOSEnglish };
+
+static const char *const k1FluteStringsDOSEnglish[2] = {
+ "Not very impressive sounding.",
+ "That last note sure was high!"
+};
+
+static const StringListProvider k1FluteStringsDOSEnglishProvider = { ARRAYSIZE(k1FluteStringsDOSEnglish), k1FluteStringsDOSEnglish };
+
+static const char *const k1WispJewelStringsDOSEnglish[3] = {
+ "I'm not really feeling up to it right now.",
+ "I probably should put down my ",
+ ", first."
+};
+
+static const StringListProvider k1WispJewelStringsDOSEnglishProvider = { ARRAYSIZE(k1WispJewelStringsDOSEnglish), k1WispJewelStringsDOSEnglish };
+
+static const char *const k1MagicJewelStringsDOSEnglish[1] = {
+ "That felt strange."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSEnglishProvider = { ARRAYSIZE(k1MagicJewelStringsDOSEnglish), k1MagicJewelStringsDOSEnglish };
+
+static const char *const k1FlaskFullStringDOSEnglish[1] = {
+ "This flask is already full."
+};
+
+static const StringListProvider k1FlaskFullStringDOSEnglishProvider = { ARRAYSIZE(k1FlaskFullStringDOSEnglish), k1FlaskFullStringDOSEnglish };
+
+static const char *const k1FullFlaskStringDOSEnglish[4] = {
+ "The flask is now filled\rwith fresh, sparkling water.",
+ "The flask is now filled\rwith salt water.",
+ "The flask is now filled\rwith mineral water.",
+ "Magic water."
+};
+
+static const StringListProvider k1FullFlaskStringDOSEnglishProvider = { ARRAYSIZE(k1FullFlaskStringDOSEnglish), k1FullFlaskStringDOSEnglish };
+
+static const char *const k1OutroHomeStringDOSEnglish[1] = {
+ "Home"
+};
+
+static const StringListProvider k1OutroHomeStringDOSEnglishProvider = { ARRAYSIZE(k1OutroHomeStringDOSEnglish), k1OutroHomeStringDOSEnglish };
+
+static const char *const k1VeryCleverStringDOSEnglish[1] = {
+ "Very clever! But your feeble efforts are futile."
+};
+
+static const StringListProvider k1VeryCleverStringDOSEnglishProvider = { ARRAYSIZE(k1VeryCleverStringDOSEnglish), k1VeryCleverStringDOSEnglish };
+
+static const char *const k1GUIStringsDOSEnglish[28] = {
+ "The Legend of Kyrandia",
+ "Load a game",
+ "Save this game",
+ "Game controls",
+ "Quit playing",
+ "Resume game",
+ "Game Controls",
+ "Which game would you like to reload?",
+ "Select a position to save to:",
+ "[ EMPTY SLOT ]",
+ "Cancel",
+ "Enter a description of your saved game:",
+ "Save",
+ "Rest in peace, Brandon.",
+ "Are you sure you want to quit playing?",
+ "XXX",
+ "XXX",
+ "XXXXXXX",
+ "XXXXXXXXX",
+ "Main menu",
+ "on",
+ "off",
+ "Yes",
+ "No",
+ "\x80\x0E\xFF""*""\x88\x0E\xFF""*""\x8D\x0E\xFF""*""\x94\x0E\xFF""*""\x99\x0E\xFF""*""\xA1\x0E\xFF""*""\xA9\x0E\xFF""*""\xB0\x0E\xFF""*""\xB5\x0E\xFF""*Walk speed ",
+ "Text speed ",
+ "Music is ",
+ "Sounds are "
+};
+
+static const StringListProvider k1GUIStringsDOSEnglishProvider = { ARRAYSIZE(k1GUIStringsDOSEnglish), k1GUIStringsDOSEnglish };
+
+static const char *const k1NewGameStringDOSEnglish[1] = {
+ "[ START A NEW GAME ]"
+};
+
+static const StringListProvider k1NewGameStringDOSEnglishProvider = { ARRAYSIZE(k1NewGameStringDOSEnglish), k1NewGameStringDOSEnglish };
+
+static const char *const k1ConfigStringsDOSEnglish[9] = {
+ "slowest",
+ "slow",
+ "normal",
+ "fast",
+ "fastest",
+ "slowest",
+ "normal",
+ "fast",
+ "clickable"
+};
+
+static const StringListProvider k1ConfigStringsDOSEnglishProvider = { ARRAYSIZE(k1ConfigStringsDOSEnglish), k1ConfigStringsDOSEnglish };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_french.h b/devtools/create_kyradat/resources/lok_dos_french.h
new file mode 100644
index 0000000000..c96652102c
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_french.h
@@ -0,0 +1,341 @@
+static const char *const k1IntroStringsDOSFrench[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Salut Kallak...",
+ "...Puissant Chef de l'Ordre des Mystiques Royaux!",
+ "Je t'ai fait peur?",
+ "Malcolm!",
+ "On m'a dit hier que tu t'""\x82""tais ""\x82""vad""\x82"".",
+ "Je t'attendais depuis longtemps.",
+ "Pourquoi me serais-je press""\x82""?",
+ "C'est moi qui gouverne ce pays!",
+ "Ton faible sort n'a pas d'effet sur moi.",
+ "Tue-moi maintenant!",
+ "Il ne me reste pas beaucoup de pouvoirs magiques.",
+ "Je veux te faire du mal, sois-en s""\x96""r...",
+ "...Maintenant, tu es transform""\x82"" en pierre...",
+ "...mais je te laisse tes yeux.",
+ "Je ne verse aucune larme pour Kyrandia...",
+ "...mais je ne peux pas te refuser les tiennes.",
+ "Malcolm le Bouffon est libre!",
+ "Il contr""\x93""le la Kyragemme maintenant...",
+ "...source de tous les pouvoirs magiques de Kyrandia!",
+ "",
+ "Comment oses-tu ME faire tr""\x82""bucher!",
+ "Mais non, quelque chose de sp""\x82""cial pour toi...",
+ "Un sort humoristique!",
+ "Mais je pr""\x82""viendrai.",
+ "Ne saute pas sur CET arbre!",
+ "Ne grimpe pas sur CET arbre, petit ""\x82""cureuil!",
+ "Hou!",
+ "C'est plus marrant comme ""\x87""a...",
+ "...n'est-ce pas?",
+ "Ha ha ha...",
+ "Les doigts ne sont-ils pas une chose merveilleuse?",
+ "C'est super d'""\x88""tre en vie!",
+ "Brandon!",
+ "Grand-P""\x8A""re! On y est arriv""\x82""!",
+ "Non! TU y es arriv""\x82""!",
+ "Longue vie au Roi Brandon!",
+ "Longue vie ""\x85"" l'Ordre des Mystiques Royaux!",
+ "Retournons mettre de l'ordre dans Kyrandia!",
+ "Bonne id""\x82""e!",
+ "En tant que Roi...",
+ "je d""\x82""clare que les sandales sont d""\x82""sormais les souliers officiels ""\x85"" Kyrandia!",
+ "Bien jou""\x82"", Brandon!",
+ "La Terre ne pleure plus...",
+ "Et tu as retrouv""\x82"" tes amis!",
+ "Ma Ch""\x8A""re Brynn...",
+ "Malcolm s'est ""\x82""vad""\x82""!",
+ "Il viendra me chercher bient""\x93""t.",
+ "S'il te pla""\x8C""t Brandon, aide-moi...",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSFrenchProvider = { ARRAYSIZE(k1IntroStringsDOSFrench), k1IntroStringsDOSFrench };
+
+static const char *const k1ItemNamesDOSFrench[108] = {
+ "Grenat",
+ "Am""\x82""thyste",
+ "Aigue-marine",
+ "Diamant",
+ "Emeraude",
+ "Perle",
+ "Rubis",
+ "Olivine",
+ "Saphir",
+ "Opale",
+ "Topaze",
+ "Onyx",
+ "Aventurine",
+ "Pierre de Lune",
+ "Pierre d'Iris",
+ "Magn""\x82""tite",
+ "Rose",
+ "Tulipe",
+ "Orchid""\x82""e",
+ "Rose d'argent",
+ "Statuette d'argent",
+ "Pi""\x8A""ce d'argent",
+ "Pi""\x8A""ce d'or",
+ "Bague en or",
+ "Calice royal",
+ "Pomme de pin",
+ "Gland",
+ "Noix",
+ "Baie de feu luisantes",
+ "Baie de feu",
+ "Baie de feu",
+ "Baie de feu",
+ "Baie de feu",
+ "Baie de feu",
+ "Poisson",
+ "Ar""\x88""te",
+ "Gigot de mouton",
+ "Os",
+ "Pomme",
+ "Trognon de pomme",
+ "Myrtille",
+ "Champignon",
+ "Note",
+ "Bille",
+ "Scie",
+ "Croix ans""\x82""e",
+ "Plume",
+ "Oeuf",
+ "Feuille",
+ "Tr""\x8A""fle",
+ "Etoile bris""\x82""e",
+ "Boule de cristal",
+ "Larme",
+ "Miroir",
+ "Tesson de glace",
+ "Fl""\x96""te",
+ "Sablier",
+ "Cl""\x82"" m""\x82""tallique",
+ "Cl""\x82"" de jade",
+ "Cl""\x82"" obsidion",
+ "Potion rouge",
+ "Potion rouge",
+ "Potion bleue",
+ "Potion bleue",
+ "Potion jaune",
+ "Potion jaune",
+ "Potion verte",
+ "Potion orange",
+ "Potion violette",
+ "Potion d'arcs-en-ciel",
+ "Eau fraiche",
+ "Eau fraiche",
+ "Eau sal""\x82""e",
+ "Eau sal""\x82""e",
+ "Eau min""\x82""rale",
+ "Eau min""\x82""rale",
+ "Eau magique",
+ "Eau magique",
+ "Gourde vide",
+ "Gourde vide",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Parchemin",
+ "Morceau de parchemin",
+ "Morceau de parchemin",
+ "Morceau de parchemin",
+ "Morceau de parchemin",
+ "Morceau de parchemin",
+ "Pierre magique rouge",
+ "Pierre magique orange",
+ "Pierre magique jaune",
+ "Pierre magique verte",
+ "Pierre magique turquoise",
+ "Pierre magique bleue",
+ "Pierre magique violette",
+ "Rocher lourd",
+ "Couronne royale",
+ "Sceptre royal",
+ "Cl""\x82"" en or",
+ "Objet inconnu",
+ ""
+};
+
+static const StringListProvider k1ItemNamesDOSFrenchProvider = { ARRAYSIZE(k1ItemNamesDOSFrench), k1ItemNamesDOSFrench };
+
+static const char *const k1TakenStringsDOSFrench[4] = {
+ " prise.",
+ " pris.",
+ " prise.",
+ " pris."
+};
+
+static const StringListProvider k1TakenStringsDOSFrenchProvider = { ARRAYSIZE(k1TakenStringsDOSFrench), k1TakenStringsDOSFrench };
+
+static const char *const k1PlacedStringsDOSFrench[2] = {
+ " plac""\x82""e.",
+ " plac""\x82""."
+};
+
+static const StringListProvider k1PlacedStringsDOSFrenchProvider = { ARRAYSIZE(k1PlacedStringsDOSFrench), k1PlacedStringsDOSFrench };
+
+static const char *const k1DroppedStringsDOSFrench[2] = {
+ " l""\x83""ch""\x82""e.",
+ " l""\x83""ch""\x82""."
+};
+
+static const StringListProvider k1DroppedStringsDOSFrenchProvider = { ARRAYSIZE(k1DroppedStringsDOSFrench), k1DroppedStringsDOSFrench };
+
+static const char *const k1NoDropStringsDOSFrench[2] = {
+ "Vous ne pouvez pas l""\x83""cher autre chose ici.",
+ "Vous ne pouvez pas mettre ""\x87""a l""\x85""."
+};
+
+static const StringListProvider k1NoDropStringsDOSFrenchProvider = { ARRAYSIZE(k1NoDropStringsDOSFrench), k1NoDropStringsDOSFrench };
+
+static const char *const k1PutDownStringDOSFrench[1] = {
+ "Il faudrait peut-""\x88""tre que je pose ""\x87""a d'abord."
+};
+
+static const StringListProvider k1PutDownStringDOSFrenchProvider = { ARRAYSIZE(k1PutDownStringDOSFrench), k1PutDownStringDOSFrench };
+
+static const char *const k1WaitAmuletStringDOSFrench[1] = {
+ "Je suppose qu'il me faut attendre que mon amulette retrouve son pouvoir."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSFrenchProvider = { ARRAYSIZE(k1WaitAmuletStringDOSFrench), k1WaitAmuletStringDOSFrench };
+
+static const char *const k1BlackJewelStringDOSFrench[1] = {
+ "C'est un bijou, mais pourquoi est-il noir?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSFrenchProvider = { ARRAYSIZE(k1BlackJewelStringDOSFrench), k1BlackJewelStringDOSFrench };
+
+static const char *const k1HealingTipStringDOSFrench[1] = {
+ "Hue, ""\x87""a pourrait bien m'""\x88""tre utile si je suis bless""\x82""."
+};
+
+static const StringListProvider k1HealingTipStringDOSFrenchProvider = { ARRAYSIZE(k1HealingTipStringDOSFrench), k1HealingTipStringDOSFrench };
+
+static const char *const k1PoisonGoneStringDOSFrench[3] = {
+ "G""\x82""nial!",
+ "Les effets du poison ont disparu!",
+ "MBL1ERREUR: Jeu sauvegard""\x82"" d'un autre produit."
+};
+
+static const StringListProvider k1PoisonGoneStringDOSFrenchProvider = { ARRAYSIZE(k1PoisonGoneStringDOSFrench), k1PoisonGoneStringDOSFrench };
+
+static const char *const k1ThePoisonStringsDOSFrench[4] = {
+ "Le poison...",
+ "Je ne peux plus respirer...",
+ "Je ne me sens pas tr""\x8A""s bien...",
+ "Ce serpent doit ""\x88""tre \rvenimeux!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSFrenchProvider = { ARRAYSIZE(k1ThePoisonStringsDOSFrench), k1ThePoisonStringsDOSFrench };
+
+static const char *const k1FluteStringsDOSFrench[2] = {
+ "\x80""a ne sonne pas tr""\x8A""s bien.",
+ "Cette derni""\x8A""re note ""\x82""tait vraiment aigue!"
+};
+
+static const StringListProvider k1FluteStringsDOSFrenchProvider = { ARRAYSIZE(k1FluteStringsDOSFrench), k1FluteStringsDOSFrench };
+
+static const char *const k1WispJewelStringsDOSFrench[3] = {
+ "Je ne m'en sens pas vraiment capable maintenant.",
+ "Je devrait poser mon, ma, mes ",
+ ", d'abord."
+};
+
+static const StringListProvider k1WispJewelStringsDOSFrenchProvider = { ARRAYSIZE(k1WispJewelStringsDOSFrench), k1WispJewelStringsDOSFrench };
+
+static const char *const k1MagicJewelStringsDOSFrench[1] = {
+ "C'""\x82""tait bizarre."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSFrenchProvider = { ARRAYSIZE(k1MagicJewelStringsDOSFrench), k1MagicJewelStringsDOSFrench };
+
+static const char *const k1FlaskFullStringDOSFrench[1] = {
+ "Cette gourde est d""\x82""j""\x85"" pleine."
+};
+
+static const StringListProvider k1FlaskFullStringDOSFrenchProvider = { ARRAYSIZE(k1FlaskFullStringDOSFrench), k1FlaskFullStringDOSFrench };
+
+static const char *const k1FullFlaskStringDOSFrench[4] = {
+ "La gourde est remplie \rd'eau gazeuse fra""\x8C""che.",
+ "La gourde est remplie \rd'eau sal""\x82""e.",
+ "La gourde est remplie \rd'eau min""\x82""rale.",
+ "Eau magique."
+};
+
+static const StringListProvider k1FullFlaskStringDOSFrenchProvider = { ARRAYSIZE(k1FullFlaskStringDOSFrench), k1FullFlaskStringDOSFrench };
+
+static const char *const k1OutroHomeStringDOSFrench[1] = {
+ "Maison"
+};
+
+static const StringListProvider k1OutroHomeStringDOSFrenchProvider = { ARRAYSIZE(k1OutroHomeStringDOSFrench), k1OutroHomeStringDOSFrench };
+
+static const char *const k1VeryCleverStringDOSFrench[1] = {
+ "Malin! Mais vos efforts restent vains."
+};
+
+static const StringListProvider k1VeryCleverStringDOSFrenchProvider = { ARRAYSIZE(k1VeryCleverStringDOSFrench), k1VeryCleverStringDOSFrench };
+
+static const char *const k1GUIStringsDOSFrench[28] = {
+ "The Legend of Kyrandia",
+ "Charger un jeu",
+ "Sauvegarder ce jeu",
+ "Contr""\x93""les du jeu",
+ "Quitter le jeu",
+ "Reprendre le jeu",
+ "Contr""\x93""les du jeu",
+ "Quel jeu voulez-vous re-charger?",
+ "S""\x82""lectionnez une position o""\x97"" sauvegarder:",
+ "[ EMPLACEMENT VIDE ]",
+ "Annuler",
+ "Entrez description de votre jeu sauvegard""\x82"".",
+ "Sauvegarder",
+ "Repose en paix, Brandon.",
+ "Vous voulez vraiment quitter le jeu?",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "Menu principal",
+ "activ""\x82",
+ "d""\x82""sactiv""\x82",
+ "Oui",
+ "Non",
+ "6""\x0F""f+@""\x0F""f+E""\x0F""f+L""\x0F""f+S""\x0F""f+_""\x0F""f+i""\x0F""f+p""\x0F""f+w""\x0F""f+Vitesse de d""\x82""placement",
+ "Vitesse du texte",
+ "La musique est ",
+ "Les sons sont "
+};
+
+static const StringListProvider k1GUIStringsDOSFrenchProvider = { ARRAYSIZE(k1GUIStringsDOSFrench), k1GUIStringsDOSFrench };
+
+static const char *const k1NewGameStringDOSFrench[1] = {
+ "[ COMMENCER UN NOUVEAU JEU ]"
+};
+
+static const StringListProvider k1NewGameStringDOSFrenchProvider = { ARRAYSIZE(k1NewGameStringDOSFrench), k1NewGameStringDOSFrench };
+
+static const char *const k1ConfigStringsDOSFrench[9] = {
+ "plus lent",
+ "lent",
+ "normal",
+ "rapide",
+ "plus rapide",
+ "plus lent",
+ "normal",
+ "rapide",
+ "cliquable"
+};
+
+static const StringListProvider k1ConfigStringsDOSFrenchProvider = { ARRAYSIZE(k1ConfigStringsDOSFrench), k1ConfigStringsDOSFrench };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_german.h b/devtools/create_kyradat/resources/lok_dos_german.h
new file mode 100644
index 0000000000..5a5e9cfd06
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_german.h
@@ -0,0 +1,361 @@
+static const char *const k1IntroStringsDOSGerman[52] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Sei gegr""\x81\xE1""t, Kallak...",
+ "...M""\x84""chtiger Anf""\x81""hrer der k""\x94""niglichen Mystiker!",
+ "Habe ich dich erschreckt?",
+ "Malcolm!",
+ "Ich habe gestern von deiner Flucht geh""\x94""rt.",
+ "Ich habe dich fr""\x81""her erwartet.",
+ "Warum sollte ich mich beeilen?",
+ "Ich herrsche ""\x81""ber dieses Land!",
+ "Dein mickriger Fluch h""\x84""lt mich nicht zur""\x81""ck.",
+ "So, erschlag mich doch!",
+ "Ich habe nur noch wenig Magie ""\x81""brig.",
+ "Ich werde dir zu Leibe r""\x81""cken, zweifle blo""\xE1"" nicht daran...",
+ "...du bist jetzt aus Stein...",
+ "...Ich lasse dir allein deine Augen.",
+ "F""\x81""r Kyrandia vergie""\xE1""e ich nicht eine Tr""\x84""ne...",
+ "...aber deine will ich dir nicht nehmen.",
+ "Malcolm der Hofnarr ist ausgebrochen!",
+ "Er beherrscht nun den Kyragem...",
+ "...die Quelle aller Magie in Kyrandia!",
+ "",
+ "Wie kannst du es wagen, MICH umzuwerfen!",
+ "Nicht doch, etwas Besonderes f""\x81""r dich...",
+ "Was f""\x81""r ein l""\x84""cherlicher Fluch!",
+ "Ich warne dich vorher.",
+ "Springe nicht auf DIESEN Baum!",
+ "Klettre nicht auf diesen Baum, kleines Eichh""\x94""rnchen!",
+ "Buuh!",
+ "So ist es viel lustiger...",
+ "...nicht wahr?",
+ "Ha ha ha...",
+ "Sind Finger nicht 'was Tolles?",
+ "Es ist gro""\xE1""artig, am Leben zu sein!",
+ "Brandon!",
+ "Gro""\xE1""vater! Wir haben es geschafft!",
+ "Nein! DU hast es geschafft!",
+ "Lang lebe K""\x94""nig Brandon!",
+ "Lang leben die k""\x94""niglichen Mystiker!",
+ "Bauen wir Kyrandia wieder auf!",
+ "Eine gute Idee!",
+ "Als meine erste k""\x94""nigliche Proklamation,...",
+ "...erkl""\x84""re ich Sandalen zur offiziellen Fu""\xE1""bekleidung Kyrandias!",
+ "Sehr weise, Brandon!",
+ "Das Land ist nicht l""\x84""nger in Trauer!",
+ "Und deine Freunde sind gerettet.",
+ "Liebe Brynn...",
+ "Malcolm ist ausgebrochen!",
+ "Er wird bald zu mir kommen.",
+ "Bitte hilf Brandon...",
+ "",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSGermanProvider = { ARRAYSIZE(k1IntroStringsDOSGerman), k1IntroStringsDOSGerman };
+
+static const char *const k1ItemNamesDOSGerman[108] = {
+ "Granat",
+ "Amethyst",
+ "Aquamarin",
+ "Diamant",
+ "Smaragd",
+ "Perle",
+ "Rubin",
+ "Peridot",
+ "Saphir",
+ "Opal",
+ "Topas",
+ "Onyx",
+ "Sonnenstein",
+ "Mondstein",
+ "Regenbogenstein",
+ "Magnetstein",
+ "Rose",
+ "Tulpe",
+ "Orchidee",
+ "Silberne Rose",
+ "Silberne Statuette",
+ "Silberm""\x81""nze",
+ "Goldm""\x81""nze",
+ "Goldring",
+ "Der Kelch des K""\x94""nigs",
+ "Kienapfel",
+ "Eichel",
+ "Walnu""\xE1",
+ "Immerleuchtende Feuerbeeren",
+ "Feuerbeeren",
+ "Feuerbeeren",
+ "Feuerbeeren",
+ "Feuerbeeren",
+ "Feuerbeeren",
+ "Fisch",
+ "Fischgr""\x84""te",
+ "Hammelkeule",
+ "Knochen",
+ "Apfel",
+ "Apfelgriebsch",
+ "Heidelbeeren",
+ "Pilz",
+ "Notiz",
+ "Murmel",
+ "S""\x84""ge",
+ "Henkelkreuz",
+ "Feder",
+ "Ei",
+ "Blatt",
+ "Kleeblatt",
+ "Sternschnuppe",
+ "Kristallkugel",
+ "Tr""\x84""ne",
+ "Spiegel",
+ "Eisst""\x81""ck",
+ "Fl""\x94""te",
+ "Sanduhr",
+ "Eisenschl""\x81""ssel",
+ "Jadeschl""\x81""ssel",
+ "Obsidianschl""\x81""ssel",
+ "Roter Trank",
+ "Roter Trank",
+ "Blauer Trank",
+ "Blauer Trank",
+ "Gelber Trank",
+ "Gelber Trank",
+ "Gr""\x81""ner Trank",
+ "Oranger Trank",
+ "Violetter Trank",
+ "Regenbogentrank",
+ "S""\x81\xE1""wasser",
+ "S""\x81\xE1""wasser",
+ "Salzwasser",
+ "Salzwasser",
+ "Mineralwasser",
+ "Mineralwasser",
+ "Magisches Wasser",
+ "Magisches Wasser",
+ "Leere Flasche",
+ "Leere Flasche",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Schriftrolle",
+ "Pergamentfetzen",
+ "Pergamentfetzen",
+ "Pergamentfetzen",
+ "Pergamentfetzen",
+ "Pergamentfetzen",
+ "Roter Weisenstein",
+ "Oranger Weisenstein",
+ "Gelber Weisenstein",
+ "Gr""\x81""ner Weisenstein",
+ "T""\x81""rkiser Weisenstein",
+ "Blauer Weisenstein",
+ "Violetter Weisenstein",
+ "Schwerer Stein",
+ "K""\x94""nigliche Krone",
+ "K""\x94""nigliches Zepter",
+ "Goldschl""\x81""ssel",
+ "Unbekannter Gegenstand",
+ ""
+};
+
+static const StringListProvider k1ItemNamesDOSGermanProvider = { ARRAYSIZE(k1ItemNamesDOSGerman), k1ItemNamesDOSGerman };
+
+static const char *const k1TakenStringsDOSGerman[2] = {
+ " aufgenommen.",
+ " aufgenommen."
+};
+
+static const StringListProvider k1TakenStringsDOSGermanProvider = { ARRAYSIZE(k1TakenStringsDOSGerman), k1TakenStringsDOSGerman };
+
+static const char *const k1PlacedStringsDOSGerman[1] = {
+ " abgelegt."
+};
+
+static const StringListProvider k1PlacedStringsDOSGermanProvider = { ARRAYSIZE(k1PlacedStringsDOSGerman), k1PlacedStringsDOSGerman };
+
+static const char *const k1DroppedStringsDOSGerman[1] = {
+ " fallengelassen."
+};
+
+static const StringListProvider k1DroppedStringsDOSGermanProvider = { ARRAYSIZE(k1DroppedStringsDOSGerman), k1DroppedStringsDOSGerman };
+
+static const char *const k1NoDropStringsDOSGerman[2] = {
+ "Hier kann nichts mehr abgelegt werden.",
+ "Das kann hier nicht abgelegt werden."
+};
+
+static const StringListProvider k1NoDropStringsDOSGermanProvider = { ARRAYSIZE(k1NoDropStringsDOSGerman), k1NoDropStringsDOSGerman };
+
+static const char *const k1PutDownStringDOSGerman[1] = {
+ "Vielleicht sollte ich es erst hinlegen."
+};
+
+static const StringListProvider k1PutDownStringDOSGermanProvider = { ARRAYSIZE(k1PutDownStringDOSGerman), k1PutDownStringDOSGerman };
+
+static const char *const k1WaitAmuletStringDOSGerman[1] = {
+ "I nehme an, ich mu""\xE1"" warten, bis mein Amulett seine Kraft wiedererlangt."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSGermanProvider = { ARRAYSIZE(k1WaitAmuletStringDOSGerman), k1WaitAmuletStringDOSGerman };
+
+static const char *const k1BlackJewelStringDOSGerman[1] = {
+ "Es ist ein Edelstein, aber warum ist er schwarz?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSGermanProvider = { ARRAYSIZE(k1BlackJewelStringDOSGerman), k1BlackJewelStringDOSGerman };
+
+static const char *const k1HealingTipStringDOSGerman[1] = {
+ "Mann, das kann ganz n""\x81""tzlich sein, falls ich mich verletze!"
+};
+
+static const StringListProvider k1HealingTipStringDOSGermanProvider = { ARRAYSIZE(k1HealingTipStringDOSGerman), k1HealingTipStringDOSGerman };
+
+static const char *const k1PoisonGoneStringDOSGerman[2] = {
+ "Erstaunlich!",
+ "Die Wirkung des Giftes hat nachgelassen!"
+};
+
+static const StringListProvider k1PoisonGoneStringDOSGermanProvider = { ARRAYSIZE(k1PoisonGoneStringDOSGerman), k1PoisonGoneStringDOSGerman };
+
+static const char *const k1ThePoisonStringsDOSGerman[4] = {
+ "Das Gift...",
+ "Ich kann nicht atmen...",
+ "Ich f""\x81""hle mich nicht besonders wohl...",
+ "Die Schlange mu""\xE1"" \rgiftig gewesen sein!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSGermanProvider = { ARRAYSIZE(k1ThePoisonStringsDOSGerman), k1ThePoisonStringsDOSGerman };
+
+static const char *const k1FluteStringsDOSGerman[2] = {
+ "Klingt nicht besonders beeindruckend.",
+ "Die letzte Note war hoch!"
+};
+
+static const StringListProvider k1FluteStringsDOSGermanProvider = { ARRAYSIZE(k1FluteStringsDOSGerman), k1FluteStringsDOSGerman };
+
+static const char *const k1WispJewelStringsDOSGerman[3] = {
+ "Im Moment f""\x81""hle ich mich dazu nicht in der Lage.",
+ "Ich mu""\xE1"" wahrscheinlich erst mein(e)...",
+ "ablegen."
+};
+
+static const StringListProvider k1WispJewelStringsDOSGermanProvider = { ARRAYSIZE(k1WispJewelStringsDOSGerman), k1WispJewelStringsDOSGerman };
+
+static const char *const k1MagicJewelStringsDOSGerman[1] = {
+ "Das war eigenartig."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSGermanProvider = { ARRAYSIZE(k1MagicJewelStringsDOSGerman), k1MagicJewelStringsDOSGerman };
+
+static const char *const k1FlaskFullStringDOSGerman[1] = {
+ "Die Flasche ist bereits voll."
+};
+
+static const StringListProvider k1FlaskFullStringDOSGermanProvider = { ARRAYSIZE(k1FlaskFullStringDOSGerman), k1FlaskFullStringDOSGerman };
+
+static const char *const k1FullFlaskStringDOSGerman[4] = {
+ "Die Flasche ist jetzt mit \rfrischem, klarem Wasser gef""\x81""llt.",
+ "Die Flasche ist jetzt mit \rSalzwasser gef""\x81""llt.",
+ "Die Flasche ist jetzt mit \rMineralwasser gef""\x81""llt.",
+ "Magisches Wasser."
+};
+
+static const StringListProvider k1FullFlaskStringDOSGermanProvider = { ARRAYSIZE(k1FullFlaskStringDOSGerman), k1FullFlaskStringDOSGerman };
+
+static const char *const k1OutroHomeStringDOSGerman[1] = {
+ "Ab nach Hause"
+};
+
+static const StringListProvider k1OutroHomeStringDOSGermanProvider = { ARRAYSIZE(k1OutroHomeStringDOSGerman), k1OutroHomeStringDOSGerman };
+
+static const char *const k1VeryCleverStringDOSGerman[1] = {
+ "Sehr clever! Aber nichtige Versuche sind zum Scheitern verurteilt."
+};
+
+static const StringListProvider k1VeryCleverStringDOSGermanProvider = { ARRAYSIZE(k1VeryCleverStringDOSGerman), k1VeryCleverStringDOSGerman };
+
+static const char *const k1GUIStringsDOSGerman[52] = {
+ "Die Legende von Kyrandia",
+ "Ein Spiel laden",
+ "Dieses Spiel sichern",
+ "Spielsteuerungen",
+ "Spiel beenden",
+ "Spiel wieder aufnehmen",
+ "Spielsteuerungen",
+ "Welches Spiel soll noch einmal geladen werden?",
+ "W""\x84""hlen Sie den Platz zum Sichern aus.",
+ "[ LEERER PLATZ ]",
+ "Abbrechen",
+ "Beschreibung des gesicherten Spiels eingeben.",
+ "Sichern",
+ "Ruhe in Frieden, Brandon.",
+ "Soll das Spiel wirklich beendet werden?",
+ "XXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXXXXXXXXXX",
+ "XXXXXXXXXXXXXXXXX",
+ "Hauptmen""\x81",
+ "An",
+ "Aus",
+ "Ja",
+ "Nein",
+ "V""\x0F""R+e""\x0F""R+m""\x0F""R+t""\x0F""R+|""\x0F""R+""\x8B\x0F""R+""\x9A\x0F""R+""\xA1\x0F""R+""\xA9\x0F""R+Schrittempo",
+ "Textgeschwindigkeit",
+ "Die Musik ist",
+ "Die Soundeffekte sind"
+};
+
+static const StringListProvider k1GUIStringsDOSGermanProvider = { ARRAYSIZE(k1GUIStringsDOSGerman), k1GUIStringsDOSGerman };
+
+static const char *const k1NewGameStringDOSGerman[1] = {
+ "[ EIN NEUES SPIEL ANFANGEN ]"
+};
+
+static const StringListProvider k1NewGameStringDOSGermanProvider = { ARRAYSIZE(k1NewGameStringDOSGerman), k1NewGameStringDOSGerman };
+
+static const char *const k1ConfigStringsDOSGerman[9] = {
+ "am langsamsten",
+ "langsam",
+ "normal",
+ "schnell",
+ "am schnellsten",
+ "am langsamsten",
+ "normal",
+ "schnell",
+ "anklickbar"
+};
+
+static const StringListProvider k1ConfigStringsDOSGermanProvider = { ARRAYSIZE(k1ConfigStringsDOSGerman), k1ConfigStringsDOSGerman };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_italian.h b/devtools/create_kyradat/resources/lok_dos_italian.h
new file mode 100644
index 0000000000..65991769e5
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_italian.h
@@ -0,0 +1,366 @@
+static const char *const k1IntroStringsDOSItalian[50] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Salute, Kallak...",
+ "...Potente capo dei Mistici reali!",
+ "Ti ho spaventato?",
+ "Malcolm!",
+ "Ieri ho saputo della tua fuga.",
+ "E ti aspettavo prima di adesso.",
+ "Perch""\x82"" affrettarmi?",
+ "Sono io che governo questa terra!",
+ "La tua gracile maledizione non mi ha trattenuto affatto.",
+ "Quindi, uccidimi adesso!",
+ "Mi ""\x8A"" rimasta poca magia.",
+ "Intendo danneggiarti, non ho dubbi...",
+ "...Adesso tu sei di pietra...",
+ "...tuttavia, lascio i tuoi occhi.",
+ "Non ho versato alcuna lacrima per Kyrandia...",
+ "Ma non posso negarti le tue.",
+ "Malcolm il buffone si ""\x8A"" liberato!",
+ "Adesso ha il controllo della GemmaKyra...",
+ "...fonte di tutta la magia in Kyrandia!",
+ "",
+ "Come osi farMi lo sgambetto?",
+ "Ma niente, qualcosa di speciale per te...",
+ "Un malocchio spassoso!",
+ "Dar""\x95"" un giusto avvertimento.",
+ "Non saltare su QUELL'albero!",
+ "Non salire su QUELL'albero piccolo scoiattolo!",
+ "Bo!",
+ "E' divertente in questo modo...",
+ "...non ""\x8A"" vero?",
+ "Ah ah ah...",
+ "Non sono fantastiche le dita?",
+ "E' meraviglioso essere vivo!",
+ "Brandon!",
+ "Nonno! Ce l'abbiamo fatta!",
+ "No! TU ce l'hai fatta!",
+ "Lunga vita a Re Brandon!",
+ "Lunga vita ai Mistici Reali!",
+ "Adesso, rimettiamo insieme Kyrandia!",
+ "Buona idea!",
+ "Come mia prima Proclamazione Reale...",
+ "Nomino i sandali la calzatura ufficiale di Kyrandia!",
+ "Ben fatto, Brandon!",
+ "La Terra non versa pi""\x97"" lacrime...",
+ "E i tuoi amici sono stati recuperati!",
+ "Caro Brynn...",
+ "Malcolm si ""\x8A"" liberato!",
+ "Presto mi verr""\x85"" a cercare.",
+ "Per favore aiuta Brandon..."
+};
+
+static const StringListProvider k1IntroStringsDOSItalianProvider = { ARRAYSIZE(k1IntroStringsDOSItalian), k1IntroStringsDOSItalian };
+
+static const char *const k1ItemNamesDOSItalian[107] = {
+ "Granito rosso",
+ "Ametista",
+ "Acquamarina",
+ "Diamante",
+ "Smeraldo",
+ "Perla",
+ "Rubino",
+ "Olivina",
+ "Zaffiro",
+ "Opale",
+ "Topazio",
+ "Onice",
+ "Pietra Solare",
+ "Pietra Lunare",
+ "Pietra-arcobaleno",
+ "Magnetite",
+ "Rosa",
+ "Tulipano",
+ "Orchidea",
+ "Rosa d'Argento",
+ "Statuetta d'Argento",
+ "Moneta d'Argento",
+ "Moneta d'Oro",
+ "Anello d'Oro",
+ "Calice Reale",
+ "Pigna",
+ "Ghianda",
+ "Noce",
+ "Baccheinfuocate Sempreardenti",
+ "Baccheinfuocate",
+ "Baccheinfuocate",
+ "Baccheinfuocate",
+ "Baccheinfuocate",
+ "Baccheinfuocate",
+ "Pesce",
+ "Lisca di Pesce",
+ "Zampa di Montone",
+ "Osso",
+ "Mela",
+ "Torsolo di Mela",
+ "Mirtilli",
+ "Fungo",
+ "Nota",
+ "Marmo",
+ "Sega",
+ "Croce ansata",
+ "Piuma",
+ "Uovo",
+ "Foglia",
+ "Trifoglio",
+ "Stella Cadente",
+ "Sfera di Cristallo",
+ "Lacrima",
+ "Specchio",
+ "Frammento di ghiaccio",
+ "Flauto",
+ "Clessidra",
+ "Chiave di Ferro",
+ "Chiave di Giada",
+ "Chiave di Ossidione",
+ "Pozione Rossa",
+ "Pozione Rossa",
+ "Pozione Azzurra",
+ "Pozione Azzurra",
+ "Pozione Gialla",
+ "Pozione Gialla",
+ "Pozione Verde",
+ "Pozione Arancione",
+ "Pozione viola",
+ "Pozione di Arcobaleni",
+ "Acqua Fresca",
+ "Acqua Fresca",
+ "Acqua Salata",
+ "Acqua Salata",
+ "Acqua Minerale",
+ "Acqua Minerale",
+ "Acqua Magica",
+ "Acqua Magica",
+ "Bottiglietta Vuota",
+ "Bottiglietta Vuota",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Pergamena",
+ "Frammento di Pergamena",
+ "Frammento di Pergamena",
+ "Frammento di Pergamena",
+ "Frammento di Pergamena",
+ "Frammento di Pergamena",
+ "Pietramagica Rossa",
+ "Pietramagica Arancione",
+ "Pietramagica Gialla",
+ "Pietramagica Verde",
+ "Pietramagica Verde-Azzurra",
+ "Pietramagica Azzurra",
+ "Pietramagica Viola",
+ "Roccia Pesante",
+ "Corona Reale",
+ "Scettro Reale",
+ "Chiave d'oro",
+ "Articolo non conosciuto"
+};
+
+static const StringListProvider k1ItemNamesDOSItalianProvider = { ARRAYSIZE(k1ItemNamesDOSItalian), k1ItemNamesDOSItalian };
+
+static const char *const k1TakenStringsDOSItalian[2] = {
+ " - preso.",
+ " - preso."
+};
+
+static const StringListProvider k1TakenStringsDOSItalianProvider = { ARRAYSIZE(k1TakenStringsDOSItalian), k1TakenStringsDOSItalian };
+
+static const char *const k1PlacedStringsDOSItalian[1] = {
+ " - piazzato."
+};
+
+static const StringListProvider k1PlacedStringsDOSItalianProvider = { ARRAYSIZE(k1PlacedStringsDOSItalian), k1PlacedStringsDOSItalian };
+
+static const char *const k1DroppedStringsDOSItalian[1] = {
+ " - caduto."
+};
+
+static const StringListProvider k1DroppedStringsDOSItalianProvider = { ARRAYSIZE(k1DroppedStringsDOSItalian), k1DroppedStringsDOSItalian };
+
+static const char *const k1NoDropStringsDOSItalian[2] = {
+ "Qui, non ci puoi lasciare altri oggetti.",
+ "Non lo puoi mettere laggiu."
+};
+
+static const StringListProvider k1NoDropStringsDOSItalianProvider = { ARRAYSIZE(k1NoDropStringsDOSItalian), k1NoDropStringsDOSItalian };
+
+static const char *const k1PutDownStringDOSItalian[1] = {
+ "Forse prima sarebbe meglio che mettessi gi""\x97"" questo."
+};
+
+static const StringListProvider k1PutDownStringDOSItalianProvider = { ARRAYSIZE(k1PutDownStringDOSItalian), k1PutDownStringDOSItalian };
+
+static const char *const k1WaitAmuletStringDOSItalian[1] = {
+ "Suppongo che dovr""\x95"" aspettare che il mio Amuleto riacquisti il suo potere."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSItalianProvider = { ARRAYSIZE(k1WaitAmuletStringDOSItalian), k1WaitAmuletStringDOSItalian };
+
+static const char *const k1BlackJewelStringDOSItalian[1] = {
+ "E' un gioiello, ma perch""\x82"" ""\x8A"" nero?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSItalianProvider = { ARRAYSIZE(k1BlackJewelStringDOSItalian), k1BlackJewelStringDOSItalian };
+
+static const char *const k1HealingTipStringDOSItalian[1] = {
+ "Accidenti, questo potrebbe essere utile nel caso fossi ferito."
+};
+
+static const StringListProvider k1HealingTipStringDOSItalianProvider = { ARRAYSIZE(k1HealingTipStringDOSItalian), k1HealingTipStringDOSItalian };
+
+static const char *const k1PoisonGoneStringDOSItalian[2] = {
+ "Incredibile!",
+ "Gli effetti del veleno sono scomparsi!"
+};
+
+static const StringListProvider k1PoisonGoneStringDOSItalianProvider = { ARRAYSIZE(k1PoisonGoneStringDOSItalian), k1PoisonGoneStringDOSItalian };
+
+static const char *const k1ThePoisonStringsDOSItalian[4] = {
+ "Il veleno...",
+ "Non posso respirare...",
+ "Non mi sento molto bene...",
+ "Quel serpente deve\ressere velenoso!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSItalianProvider = { ARRAYSIZE(k1ThePoisonStringsDOSItalian), k1ThePoisonStringsDOSItalian };
+
+static const char *const k1FluteStringsDOSItalian[2] = {
+ "Un suono non molto impressionante.",
+ "Quell'ultima nota era sicuramente acuta!"
+};
+
+static const StringListProvider k1FluteStringsDOSItalianProvider = { ARRAYSIZE(k1FluteStringsDOSItalian), k1FluteStringsDOSItalian };
+
+static const char *const k1WispJewelStringsDOSItalian[3] = {
+ "Non mi sento effettivamente in grado di farlo, per adesso.",
+ "Probabilmente dovrei metter gi""\x97"" il mio",
+ ", per prima cosa."
+};
+
+static const StringListProvider k1WispJewelStringsDOSItalianProvider = { ARRAYSIZE(k1WispJewelStringsDOSItalian), k1WispJewelStringsDOSItalian };
+
+static const char *const k1MagicJewelStringsDOSItalian[1] = {
+ "Questo mi ""\x8A"" sembrato strano."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSItalianProvider = { ARRAYSIZE(k1MagicJewelStringsDOSItalian), k1MagicJewelStringsDOSItalian };
+
+static const char *const k1FlaskFullStringDOSItalian[1] = {
+ "Questa bottiglietta ""\x8A"" gi""\x85"" piena."
+};
+
+static const StringListProvider k1FlaskFullStringDOSItalianProvider = { ARRAYSIZE(k1FlaskFullStringDOSItalian), k1FlaskFullStringDOSItalian };
+
+static const char *const k1FullFlaskStringDOSItalian[4] = {
+ "Adesso la bottiglietta ""\x8A"" riempita\rcon acqua fresca e gasata.",
+ "Adesso la bottiglietta ""\x8A"" riempita\rcon acqua salata.",
+ "Adesso la bottiglietta ""\x8A"" riempita\rcon acqua minerale.",
+ "Acqua magica."
+};
+
+static const StringListProvider k1FullFlaskStringDOSItalianProvider = { ARRAYSIZE(k1FullFlaskStringDOSItalian), k1FullFlaskStringDOSItalian };
+
+static const char *const k1OutroHomeStringDOSItalian[1] = {
+ "Casa"
+};
+
+static const StringListProvider k1OutroHomeStringDOSItalianProvider = { ARRAYSIZE(k1OutroHomeStringDOSItalian), k1OutroHomeStringDOSItalian };
+
+static const char *const k1VeryCleverStringDOSItalian[1] = {
+ "Molto intelligente! Ma i tuoi deboli sforzi sono vani."
+};
+
+static const StringListProvider k1VeryCleverStringDOSItalianProvider = { ARRAYSIZE(k1VeryCleverStringDOSItalian), k1VeryCleverStringDOSItalian };
+
+static const char *const k1GUIStringsDOSItalian[60] = {
+ "The Legend of Kyrandia",
+ "Carica un gioco",
+ "Salva questo gioco",
+ "Comandi di Gioco",
+ "Abbandona il gioco",
+ "Ricomincia il gioco",
+ "Comandi di gioco",
+ "Quale gioco desideri ricaricare?",
+ "Seleziona una posizione da salvare:",
+ "[ GRIGLIA VUOTA ]",
+ "Annulla",
+ "Inserisci descrizione del tuo gioco salvato:",
+ "Salva",
+ "Riposa in pace, Brandon.",
+ "Sei sicuro di voler abbandonare il gioco?",
+ "XXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "Menu principale",
+ "acceso",
+ "spento",
+ "Si",
+ "No",
+ "_""\x0F""T+k""\x0F""T+q""\x0F""T+y""\x0F""T+""\x80\x0F""T+""\x8D\x0F""T+""\x99\x0F""T+""\xA1\x0F""T+""\xA8\x0F""T+Velocit""\x85"" di movimento",
+ "Velocit""\x85"" del testo",
+ "Musica ""\x8A",
+ "Suoni sono"
+};
+
+static const StringListProvider k1GUIStringsDOSItalianProvider = { ARRAYSIZE(k1GUIStringsDOSItalian), k1GUIStringsDOSItalian };
+
+static const char *const k1NewGameStringDOSItalian[1] = {
+ "[ INIZIARE UN NUOVO GIOCO ]"
+};
+
+static const StringListProvider k1NewGameStringDOSItalianProvider = { ARRAYSIZE(k1NewGameStringDOSItalian), k1NewGameStringDOSItalian };
+
+static const char *const k1ConfigStringsDOSItalian[9] = {
+ "molto lento",
+ "lento",
+ "normale",
+ "veloce",
+ "molto veloce",
+ "molto lento",
+ "normale",
+ "veloce",
+ "cliccabile"
+};
+
+static const StringListProvider k1ConfigStringsDOSItalianProvider = { ARRAYSIZE(k1ConfigStringsDOSItalian), k1ConfigStringsDOSItalian };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_oldfloppy.h b/devtools/create_kyradat/resources/lok_dos_oldfloppy.h
new file mode 100644
index 0000000000..e19cb5a6ef
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_oldfloppy.h
@@ -0,0 +1,1911 @@
+static const byte k1KallakWritingSeqDOSOldFloppy[2037] = {
+ 0x00, 0x00, 0x01, 0x0E, 0x1A, 0x1B, 0x17, 0x00,
+ 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C,
+ 0x00, 0x19, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x95, 0x00, 0x20, 0x09, 0x14,
+ 0x0F, 0x2E, 0x02, 0x00, 0x01, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x10, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x63, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x15, 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x19, 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00,
+ 0x16, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x2F,
+ 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x02, 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x05, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x8A, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x10, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x63, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x15, 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x19, 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00,
+ 0x16, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x30,
+ 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x02, 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x04, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x05, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x88, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x08, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x82, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x09, 0x00, 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0B, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x79, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x76, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x70, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x11, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x65, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x13, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x14, 0x00, 0x00, 0x10, 0x05, 0x00, 0x63, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x15, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x65, 0x00, 0x1F, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x16, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x17, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x70, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x18, 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00,
+ 0x17, 0x07, 0x06, 0x00, 0x02, 0x00, 0x19, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00, 0x16, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x17, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x88, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x93, 0x00, 0x1F, 0x07,
+ 0x06, 0x00, 0x1C, 0x06, 0x3C, 0x00, 0x1B, 0x0F,
+ 0x31, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x95, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x10, 0x05, 0x00, 0x95,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x01,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x05,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x06,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x07, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x08, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0D,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x6A, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x06, 0x3C, 0x00,
+ 0x02, 0x00, 0x1E, 0x00, 0x00, 0x10, 0x08, 0x12,
+ 0x06, 0x1E, 0x00, 0x0A, 0x01, 0x02, 0x00, 0x1F,
+ 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02, 0x00,
+ 0x20, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02,
+ 0x00, 0x21, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00,
+ 0x02, 0x00, 0x22, 0x00, 0x00, 0x10, 0x07, 0x0A,
+ 0x00, 0x0B, 0x01, 0x02, 0x00, 0x18, 0x1F, 0x06,
+ 0x0A, 0x00, 0x02, 0x00, 0x23, 0x00, 0x00, 0x10,
+ 0x07, 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x24,
+ 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x02, 0x00,
+ 0x25, 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x18,
+ 0x1F, 0x02, 0x00, 0x26, 0x00, 0x00, 0x10, 0x07,
+ 0x14, 0x00, 0x02, 0x00, 0x27, 0x00, 0x00, 0x10,
+ 0x07, 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x28,
+ 0x00, 0x00, 0x10, 0x08, 0x06, 0x3C, 0x00, 0x18,
+ 0x1E, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18,
+ 0x1E, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x13, 0x1C, 0x19, 0x01, 0x06,
+ 0x3C, 0x00, 0x01, 0x00, 0x1D
+};
+
+static const ByteProvider k1KallakWritingSeqDOSOldFloppyProvider = { ARRAYSIZE(k1KallakWritingSeqDOSOldFloppy), k1KallakWritingSeqDOSOldFloppy };
+
+static const byte k1MalcolmTreeSeqDOSOldFloppy[534] = {
+ 0x00, 0x01, 0x00, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C, 0x01,
+ 0x0D, 0x01, 0x09, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x10, 0x19, 0x03, 0x09, 0x18, 0x1E, 0x14, 0x18,
+ 0x1F, 0x0A, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x00, 0x1F, 0x00, 0x18, 0x19, 0x0A, 0x01,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x01, 0x0F,
+ 0x00, 0x18, 0x26, 0x10, 0x1F, 0x50, 0x00, 0x2D,
+ 0x05, 0x0A, 0x02, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x02, 0x10, 0x00, 0x11, 0x18, 0x1F, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x24,
+ 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18,
+ 0x1E, 0x0A, 0x03, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x03, 0x15, 0x00, 0x10, 0x16, 0x50, 0x00,
+ 0x2D, 0x05, 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x18, 0x1E, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18,
+ 0x1A, 0x18, 0x1E, 0x0A, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x05, 0x09, 0x00, 0x11, 0x0A,
+ 0x06, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x06,
+ 0x14, 0x00, 0x18, 0x1A, 0x18, 0x1F, 0x10, 0x17,
+ 0x50, 0x00, 0x2D, 0x05, 0x06, 0x3C, 0x00, 0x0A,
+ 0x07, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x07,
+ 0x06, 0x00, 0x18, 0x1E, 0x06, 0x1E, 0x00, 0x10,
+ 0x18, 0x50, 0x00, 0x2D, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0A, 0x08, 0x04, 0x01,
+ 0x06, 0x06, 0x00, 0x04, 0x01, 0x06, 0x06, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x08, 0x01, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x06, 0x78, 0x00, 0x0A, 0x09,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x09, 0x04,
+ 0x00, 0x18, 0x1B, 0x0A, 0x0A, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x0A, 0x09, 0x00, 0x06, 0x14,
+ 0x00, 0x10, 0x19, 0x50, 0x00, 0x2D, 0x05, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x0A, 0x0B, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x04, 0x01, 0x06, 0x06, 0x00, 0x04, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x0B, 0x01, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x10,
+ 0x1A, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x0C, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x0C, 0x12, 0x00,
+ 0x03, 0x01, 0x01, 0x01, 0x11, 0x15, 0x00, 0x02,
+ 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00,
+ 0x10, 0x10, 0x1C, 0x50, 0x00, 0x2D, 0x05, 0x06,
+ 0x3C, 0x00, 0x03, 0x02, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x11, 0x18, 0x1C, 0x0A, 0x0F, 0x03, 0x02,
+ 0x06, 0x06, 0x00, 0x0B, 0x0F, 0x0D, 0x00, 0x10,
+ 0x1D, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x10, 0x03,
+ 0x02, 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x03, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02,
+ 0x06, 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B, 0x10, 0x02,
+ 0x00, 0x10, 0x1E, 0x50, 0x00, 0x2D, 0x05, 0x0A,
+ 0x11, 0x03, 0x02, 0x06, 0x06, 0x00, 0x03, 0x02,
+ 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02, 0x06,
+ 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B,
+ 0x11, 0x02, 0x00, 0x06, 0xB4, 0x00, 0x13, 0x19,
+ 0x01, 0x01, 0x01, 0x01, 0x02, 0x1D
+};
+
+static const ByteProvider k1MalcolmTreeSeqDOSOldFloppyProvider = { ARRAYSIZE(k1MalcolmTreeSeqDOSOldFloppy), k1MalcolmTreeSeqDOSOldFloppy };
+
+static const byte k1WestwoodLogoSeqDOSOldFloppy[75] = {
+ 0x00, 0x03, 0x01, 0x1A, 0x02, 0x03, 0x00, 0x00,
+ 0x00, 0x00, 0x16, 0x01, 0x06, 0x06, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x14, 0x0A, 0x00, 0x03, 0x03,
+ 0x16, 0x01, 0x0B, 0x00, 0x08, 0x00, 0x06, 0x3C,
+ 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03, 0x03, 0x16,
+ 0x01, 0x0B, 0x01, 0x0B, 0x00, 0x06, 0x78, 0x00,
+ 0x18, 0x14, 0x02, 0x03, 0x0A, 0x00, 0x00, 0x00,
+ 0x16, 0x01, 0x06, 0x06, 0x00, 0x0A, 0x02, 0x04,
+ 0x03, 0x16, 0x01, 0x0B, 0x02, 0x09, 0x00, 0x13,
+ 0x01, 0x03, 0x1D
+};
+
+static const ByteProvider k1WestwoodLogoSeqDOSOldFloppyProvider = { ARRAYSIZE(k1WestwoodLogoSeqDOSOldFloppy), k1WestwoodLogoSeqDOSOldFloppy };
+
+static const byte k1KyrandiaLogoSeqDOSOldFloppy[92] = {
+ 0x15, 0x00, 0x02, 0x00, 0x06, 0x01, 0x1A, 0x02,
+ 0x06, 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06,
+ 0x06, 0x00, 0x18, 0x14, 0x16, 0x04, 0x0A, 0x00,
+ 0x03, 0x06, 0x16, 0x00, 0x0B, 0x00, 0x0B, 0x00,
+ 0x06, 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03,
+ 0x06, 0x16, 0x00, 0x0B, 0x01, 0x0F, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x02, 0x04, 0x06,
+ 0x16, 0x00, 0x0B, 0x02, 0x0F, 0x00, 0x02, 0x06,
+ 0x0D, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06, 0x06,
+ 0x00, 0x06, 0x78, 0x00, 0x18, 0x14, 0x0A, 0x02,
+ 0x04, 0x06, 0x16, 0x00, 0x0B, 0x02, 0x0C, 0x00,
+ 0x13, 0x01, 0x06, 0x1D
+};
+
+static const ByteProvider k1KyrandiaLogoSeqDOSOldFloppyProvider = { ARRAYSIZE(k1KyrandiaLogoSeqDOSOldFloppy), k1KyrandiaLogoSeqDOSOldFloppy };
+
+static const byte k1KallakMalcolmSeqDOSOldFloppy[615] = {
+ 0x00, 0x04, 0x01, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C, 0x03,
+ 0x0D, 0x00, 0x17, 0x00, 0x00, 0x88, 0x3F, 0x01,
+ 0xC7, 0x0C, 0x02, 0x19, 0x05, 0x02, 0x04, 0x00,
+ 0x10, 0x00, 0x3A, 0x09, 0x14, 0x18, 0x23, 0x0A,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x00,
+ 0x22, 0x00, 0x10, 0x02, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x01, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x01, 0x07, 0x00, 0x06, 0x3C, 0x00, 0x10, 0x03,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x02, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x02, 0x17, 0x00, 0x06,
+ 0x3C, 0x00, 0x10, 0x04, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x03, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x03, 0x0A, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x10, 0x05, 0xF0,
+ 0x00, 0x3A, 0x0F, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x06,
+ 0x3C, 0x00, 0x10, 0x06, 0xF0, 0x00, 0x3A, 0x0F,
+ 0x0A, 0x04, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x04, 0x12, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x06, 0x78, 0x00, 0x10, 0x07, 0xF0,
+ 0x00, 0x3A, 0x0F, 0x0A, 0x05, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x05, 0x11, 0x00, 0x06, 0x3C,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x10, 0x08, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x06, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x06, 0x07, 0x00, 0x06, 0x3C, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x10, 0x09,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x07, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x07, 0x0A, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x10,
+ 0x0A, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x08, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x08, 0x10, 0x00,
+ 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x10, 0x0B, 0xF0, 0x00, 0x3A, 0x0F, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x06, 0x3C,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x10, 0x0C,
+ 0xF0, 0x00, 0x3A, 0x0F, 0x0A, 0x09, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x09, 0x0E, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x10, 0x0D, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x0A,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0A, 0x0E,
+ 0x00, 0x06, 0x3C, 0x00, 0x0A, 0x0B, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x0B, 0x02, 0x00, 0x18,
+ 0x20, 0x0A, 0x0C, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x0C, 0x06, 0x00, 0x18, 0x21, 0x0A, 0x0D,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0D, 0x0C,
+ 0x00, 0x18, 0x22, 0x0A, 0x0E, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x0E, 0x0B, 0x00, 0x10, 0x0E,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x0F, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x0F, 0x09, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x10,
+ 0x0F, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x10, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x10, 0x09, 0x00,
+ 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x10, 0x10, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x11,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x11, 0x0F,
+ 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x10, 0x11, 0x50, 0x00, 0x3A, 0x05, 0x0A,
+ 0x12, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x12,
+ 0x14, 0x00, 0x06, 0x3C, 0x00, 0x0A, 0x13, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x13, 0x06, 0x00,
+ 0x18, 0x23, 0x0A, 0x13, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x13, 0x07, 0x00, 0x11, 0x06, 0x3C,
+ 0x00, 0x13, 0x19, 0x01, 0x01, 0x04, 0x1D
+};
+
+static const ByteProvider k1KallakMalcolmSeqDOSOldFloppyProvider = { ARRAYSIZE(k1KallakMalcolmSeqDOSOldFloppy), k1KallakMalcolmSeqDOSOldFloppy };
+
+static const byte k1ForestSeqDOSOldFloppy[405] = {
+ 0x00, 0x05, 0x01, 0x00, 0x07, 0x01, 0x1A, 0x02,
+ 0x07, 0x00, 0x00, 0x00, 0x08, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x0A, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x0B, 0x00, 0x41, 0x00,
+ 0x18, 0x16, 0x03, 0x07, 0x02, 0x05, 0x01, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x02, 0x05, 0x03, 0x98, 0x00,
+ 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x02, 0x05, 0x01, 0x98, 0x00, 0x38,
+ 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x00, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0A, 0x05,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x05, 0x0E, 0x00, 0x18, 0x16, 0x03, 0x07, 0x02,
+ 0x05, 0x01, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x03, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x01,
+ 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x04, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x05, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x06, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09,
+ 0x00, 0x18, 0x25, 0x0A, 0x00, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x0A, 0x06, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B, 0x06, 0x0E,
+ 0x00, 0x18, 0x17, 0x0A, 0x01, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x01, 0x0D, 0x00, 0x18, 0x25, 0x0A, 0x07,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x07, 0x0E, 0x00, 0x18, 0x18, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x03, 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x06, 0x12, 0x00, 0x18,
+ 0x25, 0x0A, 0x02, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0B, 0x02,
+ 0x07, 0x00, 0x0A, 0x03, 0x03, 0x07, 0x16, 0x02,
+ 0x06, 0x09, 0x00, 0x0B, 0x03, 0x0F, 0x00, 0x13,
+ 0x01, 0x07, 0x01, 0x05, 0x1D
+};
+
+static const ByteProvider k1ForestSeqDOSOldFloppyProvider = { ARRAYSIZE(k1ForestSeqDOSOldFloppy), k1ForestSeqDOSOldFloppy };
+
+static const char *const k1IntroCPSStringsDOSOldFloppy[2] = {
+ "mal-kal.cps",
+ "tree.cps"
+};
+
+static const StringListProvider k1IntroCPSStringsDOSOldFloppyProvider = { ARRAYSIZE(k1IntroCPSStringsDOSOldFloppy), k1IntroCPSStringsDOSOldFloppy };
+
+static const char *const k1IntroCOLStringsDOSOldFloppy[4] = {
+ "kallak.col",
+ "tree_exp.col",
+ "ww.col",
+ "mal-kal.col"
+};
+
+static const StringListProvider k1IntroCOLStringsDOSOldFloppyProvider = { ARRAYSIZE(k1IntroCOLStringsDOSOldFloppy), k1IntroCOLStringsDOSOldFloppy };
+
+static const char *const k1IntroWSAStringsDOSOldFloppy[11] = {
+ "kallak.wsa",
+ "tree1.wsa",
+ "tree2.wsa",
+ "westwood.wsa",
+ "mal-kal.wsa",
+ "destruct.wsa",
+ "kyrandia.wsa",
+ "shore.wsa",
+ "reunion.wsa",
+ "reuniont.wsa",
+ "latern.wsa"
+};
+
+static const StringListProvider k1IntroWSAStringsDOSOldFloppyProvider = { ARRAYSIZE(k1IntroWSAStringsDOSOldFloppy), k1IntroWSAStringsDOSOldFloppy };
+
+static const Room k1RoomListDOSOldFloppy[246] = {
+ { 30, 0xFFFF, 0xFFFF, 0x0001, 0xFFFF },
+ { 71, 0xFFFF, 0xFFFF, 0x0005, 0xFFFF },
+ { 44, 0xFFFF, 0x0003, 0xFFFF, 0xFFFF },
+ { 72, 0xFFFF, 0xFFFF, 0x000E, 0xFFFF },
+ { 48, 0xFFFF, 0x0005, 0xFFFF, 0x000E },
+ { 74, 0xFFFF, 0x000A, 0xFFFF, 0x0004 },
+ { 46, 0xFFFF, 0x000F, 0xFFFF, 0x000B },
+ { 75, 0xFFFF, 0x0009, 0xFFFF, 0x0018 },
+ { 13, 0xFFFF, 0x000C, 0xFFFF, 0x000A },
+ { 5, 0x000D, 0xFFFF, 0xFFFF, 0x0007 },
+ { 84, 0xFFFF, 0x0008, 0xFFFF, 0x0005 },
+ { 37, 0xFFFF, 0x0006, 0x000C, 0x0010 },
+ { 51, 0x000B, 0xFFFF, 0x000D, 0x0008 },
+ { 23, 0x000C, 0xFFFF, 0x0009, 0xFFFF },
+ { 25, 0x0003, 0x0004, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0x0006 },
+ { 86, 0xFFFF, 0x000B, 0xFFFF, 0xFFFF },
+ { 84, 0xFFFF, 0x0022, 0x0017, 0x0016 },
+ { 51, 0x0020, 0x0014, 0x0024, 0x0015 },
+ { 85, 0x0014, 0x0019, 0xFFFF, 0x0024 },
+ { 33, 0x001C, 0xFFFF, 0x0013, 0x0012 },
+ { 31, 0x0022, 0x0012, 0xFFFF, 0x0017 },
+ { 25, 0x001F, 0x0011, 0xFFFF, 0xFFFF },
+ { 25, 0x0011, 0x0015, 0xFFFF, 0xFFFF },
+ { 2, 0xFFFF, 0x0007, 0xFFFF, 0x001A },
+ { 82, 0xFFFF, 0x006D, 0xFFFF, 0x0013 },
+ { 77, 0xFFFF, 0x0018, 0x0021, 0xFFFF },
+ { 15, 0xFFFF, 0x001A, 0xFFFF, 0xFFFF },
+ { 16, 0xFFFF, 0xFFFF, 0x0014, 0x0020 },
+ { 19, 0xFFFF, 0x0021, 0xFFFF, 0x001F },
+ { 12, 0xFFFF, 0xFFFF, 0x0020, 0x0021 },
+ { 7, 0x0023, 0x001D, 0x0016, 0xFFFF },
+ { 20, 0x001E, 0x001C, 0x0012, 0x0022 },
+ { 17, 0x001A, 0x001E, 0x0022, 0x001D },
+ { 22, 0x0021, 0x0020, 0x0015, 0x0011 },
+ { 24, 0xFFFF, 0xFFFF, 0x001F, 0xFFFF },
+ { 32, 0x0012, 0x0013, 0xFFFF, 0xFFFF },
+ { 87, 0xFFFF, 0x0026, 0xFFFF, 0xFFFF },
+ { 8, 0xFFFF, 0x0027, 0xFFFF, 0x0025 },
+ { 88, 0xFFFF, 0x0035, 0x0037, 0x0026 },
+ { 35, 0xFFFF, 0x0036, 0x0038, 0xFFFF },
+ { 47, 0xFFFF, 0xFFFF, 0x003B, 0xFFFF },
+ { 28, 0x0035, 0x002B, 0x002F, 0x0037 },
+ { 36, 0xFFFF, 0x002C, 0xFFFF, 0x002A },
+ { 78, 0xFFFF, 0xFFFF, 0xFFFF, 0x002B },
+ { 10, 0xFFFF, 0xFFFF, 0xFFFF, 0x002C },
+ { 51, 0x0037, 0x002F, 0x0040, 0x003C },
+ { 38, 0x002A, 0x003D, 0x0041, 0x002E },
+ { 81, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 41, 0xFFFF, 0xFFFF, 0x0069, 0xFFFF },
+ { 50, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 49, 0xFFFF, 0xFFFF, 0x0054, 0xFFFF },
+ { 105, 0xFFFF, 0xFFFF, 0x002A, 0x0027 },
+ { 105, 0xFFFF, 0xFFFF, 0x0039, 0x0028 },
+ { 51, 0x0027, 0x002A, 0x002E, 0x0049 },
+ { 34, 0x0028, 0x0039, 0xFFFF, 0xFFFF },
+ { 51, 0x0036, 0x003A, 0xFFFF, 0x0038 },
+ { 84, 0xFFFF, 0x003B, 0xFFFF, 0x0039 },
+ { 37, 0x0029, 0xFFFF, 0x003E, 0x003A },
+ { 37, 0x0049, 0x002E, 0x003F, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0x002F },
+ { 34, 0x003B, 0x003F, 0xFFFF, 0xFFFF },
+ { 85, 0x003C, 0x0040, 0xFFFF, 0x003E },
+ { 106, 0x002E, 0x0041, 0xFFFF, 0x003F },
+ { 33, 0x002F, 0xFFFF, 0xFFFF, 0x0040 },
+ { 60, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 3, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 26, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 0, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 25, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 23, 0xFFFF, 0x0037, 0x003C, 0xFFFF },
+ { 6, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 51, 0x0063, 0x0067, 0x006B, 0x0066 },
+ { 66, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 67, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 62, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 65, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0x0056, 0x005A, 0x005E, 0xFFFF },
+ { 6, 0xFFFF, 0x0052, 0x0056, 0xFFFF },
+ { 4, 0xFFFF, 0x0053, 0x0057, 0x0051 },
+ { 3, 0xFFFF, 0x0054, 0xFFFF, 0x0052 },
+ { 37, 0x0034, 0x0055, 0x0058, 0x0053 },
+ { 11, 0xFFFF, 0xFFFF, 0x0059, 0x0054 },
+ { 37, 0x0051, 0x0057, 0x0050, 0xFFFF },
+ { 51, 0x0052, 0xFFFF, 0x005A, 0x0056 },
+ { 51, 0x0054, 0x0059, 0x005C, 0xFFFF },
+ { 1, 0x0055, 0xFFFF, 0x005D, 0x0058 },
+ { 106, 0x0057, 0x005B, 0xFFFF, 0x0050 },
+ { 85, 0xFFFF, 0x005C, 0xFFFF, 0x005A },
+ { 37, 0x0058, 0x005D, 0x005F, 0x005B },
+ { 33, 0x0059, 0xFFFF, 0xFFFF, 0x005C },
+ { 51, 0x0050, 0xFFFF, 0x0061, 0xFFFF },
+ { 51, 0x005C, 0xFFFF, 0x0064, 0xFFFF },
+ { 37, 0xFFFF, 0x0061, 0x0065, 0xFFFF },
+ { 51, 0x005E, 0x0062, 0xFFFF, 0x0060 },
+ { 84, 0xFFFF, 0x0063, 0x0066, 0x0061 },
+ { 84, 0xFFFF, 0x0064, 0x004B, 0x0062 },
+ { 33, 0x005F, 0xFFFF, 0x0067, 0x0063 },
+ { 51, 0x0060, 0xFFFF, 0x0068, 0xFFFF },
+ { 37, 0x0062, 0x004B, 0x006A, 0xFFFF },
+ { 1, 0x0064, 0xFFFF, 0x006C, 0x004B },
+ { 34, 0x0065, 0x0069, 0xFFFF, 0xFFFF },
+ { 51, 0x0031, 0x006A, 0xFFFF, 0x0068 },
+ { 85, 0x0066, 0x006B, 0xFFFF, 0x0069 },
+ { 106, 0x004B, 0x006C, 0xFFFF, 0x006A },
+ { 33, 0x0067, 0xFFFF, 0xFFFF, 0x006B },
+ { 55, 0x00C4, 0x00C5, 0xFFFF, 0x0019 },
+ { 52, 0xFFFF, 0x00C1, 0xFFFF, 0x0096 },
+ { 64, 0xFFFF, 0x00BF, 0xFFFF, 0x008C },
+ { 57, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 54, 0x00AF, 0xFFFF, 0x00B7, 0x00AC },
+ { 53, 0x0078, 0xFFFF, 0x0079, 0xFFFF },
+ { 29, 0xFFFF, 0x00BB, 0xFFFF, 0x00C5 },
+ { 69, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 76, 0x00C6, 0xFFFF, 0xFFFF, 0x00B1 },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x0025, 0x0072, 0xFFFF },
+ { 58, 0x0072, 0x007B, 0x00BB, 0xFFFF },
+ { 58, 0xFFFF, 0x007F, 0x007B, 0xFFFF },
+ { 59, 0x007A, 0xFFFF, 0x007C, 0x0079 },
+ { 58, 0x007B, 0x0081, 0x00BC, 0xFFFF },
+ { 58, 0x00BC, 0x0083, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x0085, 0x007F, 0xFFFF },
+ { 59, 0x007E, 0x0086, 0x0080, 0x007A },
+ { 58, 0x007F, 0x00BD, 0x0081, 0xFFFF },
+ { 59, 0x0080, 0x0087, 0x0082, 0x007C },
+ { 58, 0x0081, 0xFFFF, 0x0083, 0x00BC },
+ { 59, 0x0082, 0x0089, 0x0084, 0x007D },
+ { 58, 0x0083, 0x008A, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x008B, 0x0086, 0x007E },
+ { 58, 0x0085, 0x008C, 0x00BD, 0x007F },
+ { 58, 0x00BD, 0x008E, 0x0088, 0x0081 },
+ { 59, 0x0087, 0xFFFF, 0x0089, 0xFFFF },
+ { 58, 0x0088, 0x0090, 0x008A, 0x0083 },
+ { 59, 0x0089, 0x0091, 0xFFFF, 0x0084 },
+ { 58, 0xFFFF, 0x0092, 0x008C, 0x0085 },
+ { 59, 0x008B, 0x006F, 0x008D, 0x0086 },
+ { 58, 0x008C, 0x0093, 0x008E, 0x00BD },
+ { 59, 0x008D, 0xFFFF, 0xFFFF, 0x0087 },
+ { 58, 0xFFFF, 0x00BE, 0x0090, 0xFFFF },
+ { 59, 0x008F, 0x0095, 0x0091, 0x0089 },
+ { 58, 0x0090, 0x0096, 0xFFFF, 0x008A },
+ { 59, 0xFFFF, 0x0098, 0xFFFF, 0x008B },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0x008D },
+ { 58, 0xFFFF, 0x009A, 0x00BE, 0xFFFF },
+ { 58, 0x00BE, 0xFFFF, 0x0096, 0x0090 },
+ { 59, 0x0095, 0x006E, 0x0097, 0x0091 },
+ { 58, 0x0096, 0x009D, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x009E, 0x00BF, 0x0092 },
+ { 58, 0x00BF, 0x00A0, 0x009A, 0xFFFF },
+ { 59, 0x0099, 0xFFFF, 0x009B, 0x0094 },
+ { 58, 0x009A, 0xFFFF, 0x009C, 0xFFFF },
+ { 59, 0x009B, 0x00A2, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x00A3, 0xFFFF, 0x0097 },
+ { 59, 0xFFFF, 0xFFFF, 0x009F, 0x0098 },
+ { 58, 0x009E, 0x00A4, 0x00A0, 0x00BF },
+ { 59, 0x009F, 0x00A5, 0xFFFF, 0x0099 },
+ { 58, 0xFFFF, 0x00A6, 0x00C0, 0xFFFF },
+ { 58, 0x00C0, 0x00A8, 0xFFFF, 0x009C },
+ { 58, 0x00C1, 0xFFFF, 0xFFFF, 0x009D },
+ { 59, 0xFFFF, 0x00AA, 0x00A5, 0x009F },
+ { 58, 0x00A4, 0x00AB, 0x00A6, 0x00A0 },
+ { 59, 0x00A5, 0x00AC, 0x00A7, 0x00A1 },
+ { 58, 0x00A6, 0xFFFF, 0xFFFF, 0x00C0 },
+ { 59, 0xFFFF, 0x00AD, 0x00A9, 0x00A2 },
+ { 58, 0x00A8, 0x00AE, 0xFFFF, 0x00C1 },
+ { 58, 0xFFFF, 0xFFFF, 0x00AB, 0x00A4 },
+ { 59, 0x00AA, 0x00AF, 0x00AC, 0x00A5 },
+ { 58, 0x00AB, 0x0071, 0x00C2, 0x00A6 },
+ { 58, 0xFFFF, 0x00B0, 0x00AE, 0x00A8 },
+ { 59, 0x00AD, 0xFFFF, 0xFFFF, 0x00A9 },
+ { 58, 0xFFFF, 0x00C3, 0x0071, 0x00AB },
+ { 59, 0xFFFF, 0xFFFF, 0x00B1, 0x00AD },
+ { 58, 0x00B0, 0x0075, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0x00C3, 0xFFFF, 0x00B4, 0xFFFF },
+ { 59, 0x00B3, 0x00BA, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0x0071, 0xFFFF, 0xFFFF, 0x00C2 },
+ { 58, 0xFFFF, 0xFFFF, 0x00B9, 0xFFFF },
+ { 59, 0x00B8, 0xFFFF, 0xFFFF, 0x00C3 },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0x00B4 },
+ { 59, 0x0079, 0xFFFF, 0xFFFF, 0x0073 },
+ { 59, 0x007C, 0x0082, 0x007D, 0xFFFF },
+ { 59, 0x0086, 0x008D, 0x0087, 0x0080 },
+ { 59, 0x0094, 0xFFFF, 0x0095, 0x008F },
+ { 59, 0x0098, 0x009F, 0x0099, 0x006F },
+ { 59, 0x00A1, 0x00A7, 0x00A2, 0xFFFF },
+ { 59, 0xFFFF, 0x00A9, 0x00A3, 0x006E },
+ { 59, 0x00AC, 0x00B7, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x00B9, 0x00B3, 0x00AF },
+ { 59, 0xFFFF, 0xFFFF, 0x006D, 0xFFFF },
+ { 58, 0xFFFF, 0x0073, 0xFFFF, 0x006D },
+ { 59, 0xFFFF, 0xFFFF, 0x0075, 0xFFFF },
+ { 94, 0xFFFF, 0x00C8, 0xFFFF, 0xFFFF },
+ { 43, 0x00C9, 0x00CB, 0x00CA, 0x00C7 },
+ { 51, 0xFFFF, 0xFFFF, 0x00C8, 0xFFFF },
+ { 37, 0x00C8, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 79, 0xFFFF, 0xFFFF, 0xFFFF, 0x00C8 },
+ { 80, 0xFFFF, 0xFFFF, 0x00CB, 0x00CD },
+ { 97, 0x00E3, 0x00D4, 0x00CC, 0x00D3 },
+ { 103, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 100, 0xFFFF, 0x00CE, 0x00D5, 0xFFFF },
+ { 98, 0xFFFF, 0xFFFF, 0xFFFF, 0x00D7 },
+ { 101, 0xFFFF, 0x00D2, 0x00CE, 0xFFFF },
+ { 99, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 93, 0x00D5, 0x00CD, 0xFFFF, 0xFFFF },
+ { 93, 0x00D6, 0xFFFF, 0xFFFF, 0x00CD },
+ { 93, 0x00CF, 0x00CE, 0x00D3, 0xFFFF },
+ { 93, 0x00D7, 0xFFFF, 0x00D4, 0x00CE },
+ { 93, 0xFFFF, 0x00D0, 0x00D6, 0x00CE },
+ { 93, 0x00DA, 0x00E3, 0xFFFF, 0xFFFF },
+ { 93, 0x00DB, 0xFFFF, 0xFFFF, 0x00E3 },
+ { 93, 0xFFFF, 0x00E4, 0x00D8, 0x00E2 },
+ { 93, 0xFFFF, 0x00E1, 0x00D9, 0x00E4 },
+ { 93, 0xFFFF, 0x00E4, 0xFFFF, 0x00DF },
+ { 93, 0xFFFF, 0x00E0, 0xFFFF, 0x00E4 },
+ { 93, 0xFFFF, 0xFFFF, 0x00E4, 0xFFFF },
+ { 91, 0xFFFF, 0x00DC, 0xFFFF, 0xFFFF },
+ { 90, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DD },
+ { 92, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DB },
+ { 95, 0xFFFF, 0x00DA, 0xFFFF, 0xFFFF },
+ { 96, 0xFFFF, 0x00D9, 0x00CD, 0x00D8 },
+ { 89, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00E6, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00EA, 0x00E8, 0x00E5 },
+ { 102, 0xFFFF, 0x00E8, 0x00EB, 0xFFFF },
+ { 102, 0x00E6, 0xFFFF, 0xFFFF, 0x00E7 },
+ { 102, 0xFFFF, 0xFFFF, 0x00ED, 0xFFFF },
+ { 102, 0xFFFF, 0xFFFF, 0xFFFF, 0x00E6 },
+ { 102, 0x00E7, 0x00EC, 0x00EF, 0xFFFF },
+ { 102, 0xFFFF, 0x00ED, 0x00F0, 0x00EB },
+ { 102, 0x00E9, 0x00EE, 0x00F1, 0x00EC },
+ { 102, 0xFFFF, 0xFFFF, 0x00F2, 0x00ED },
+ { 102, 0x00EB, 0x00F0, 0xFFFF, 0xFFFF },
+ { 102, 0x00EC, 0x00F1, 0x00F3, 0x00EF },
+ { 102, 0x00ED, 0xFFFF, 0x00F4, 0x00F0 },
+ { 102, 0x00EE, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0x00F0, 0x00F4, 0xFFFF, 0xFFFF },
+ { 102, 0x00F1, 0x00F5, 0xFFFF, 0x00F3 },
+ { 102, 0xFFFF, 0xFFFF, 0x00CF, 0x00F4 }
+};
+
+static const RoomProvider k1RoomListDOSOldFloppyProvider = { ARRAYSIZE(k1RoomListDOSOldFloppy), k1RoomListDOSOldFloppy };
+
+static const char *const k1RoomFilenamesDOSOldFloppy[107] = {
+ "CLIFFB",
+ "XEDGEB",
+ "CAVEB",
+ "NCLIFF",
+ "NCLIFFB",
+ "CAVE",
+ "NWCLIFF",
+ "OAKS",
+ "PLATEAU",
+ "POTHUT",
+ "POTION",
+ "NWCLIFB",
+ "SONG",
+ "SORROW",
+ "SPELHUT",
+ "SPELL",
+ "SPRING",
+ "SQUARE",
+ "STUMP",
+ "TEMPLE",
+ "WELL",
+ "WILLOW",
+ "WISE",
+ "XEDGE",
+ "RUBY",
+ "ZROCK",
+ "ZROCKB",
+ "FORESTD",
+ "FOUNTN",
+ "GATECV",
+ "GEMCUT",
+ "CLIFF",
+ "DEAD",
+ "EDGE",
+ "EDGEB",
+ "FALLS",
+ "FORESTC",
+ "FORESTB",
+ "GLADE",
+ "GEMHUT",
+ "ALGAE",
+ "MIX",
+ "BRIDGE",
+ "GRAVE",
+ "HEALER",
+ "HEALHUT",
+ "ALTAR",
+ "BURN",
+ "SICKWIL",
+ "LAGOON",
+ "MAPLE",
+ "FORESTA",
+ "ARCH",
+ "CHASM",
+ "EMCAV",
+ "ENTER",
+ "FLOWERS",
+ "GEMSLOT",
+ "GEN_CAV",
+ "GENCAVB",
+ "GOLDEN",
+ "GOLDENB",
+ "ICE",
+ "MARKET",
+ "MOONCAV",
+ "MSHCAV",
+ "POOL",
+ "SEASONS",
+ "SHRINE",
+ "TREECAV",
+ "EXTGEM",
+ "GEM",
+ "EXTHEAL",
+ "BASE",
+ "TRUNK",
+ "BROKEN",
+ "LAVA",
+ "EXTSPEL",
+ "EXTPOT",
+ "CASTLE",
+ "CGATE",
+ "LEPHOLE",
+ "DRAGON",
+ "XEDGEC",
+ "FNORTH",
+ "FSOUTH",
+ "FGOWEST",
+ "PLTCAVE",
+ "BONKBG",
+ "BALCONY",
+ "DARMS",
+ "BRINS",
+ "ALCHEMY",
+ "GENHALL",
+ "LANDING",
+ "BELROOM",
+ "UPSTAIR",
+ "DNSTAIR",
+ "KITCHEN",
+ "KYRAGEM",
+ "LIBRARY",
+ "FOYER",
+ "CATACOM",
+ "GRTHALL",
+ "FESTSTH",
+ "FWSTSTH",
+ "FSOUTHB"
+};
+
+static const StringListProvider k1RoomFilenamesDOSOldFloppyProvider = { ARRAYSIZE(k1RoomFilenamesDOSOldFloppy), k1RoomFilenamesDOSOldFloppy };
+
+static const char *const k1CharacterImageFilenamesDOSOldFloppy[20] = {
+ "BRANDON.CPS",
+ "DAPHNE.CPS",
+ "MERITH.CPS",
+ "HERMAN.CPS",
+ "SMALL.CPS",
+ "MALCOM.CPS",
+ "DRINK.CPS",
+ "SHRINK.CPS",
+ "HEALBR1.CPS",
+ "HEALBR2.CPS",
+ "SNOW1A.CPS",
+ "SNOW2A.CPS",
+ "BRANWILL.CPS",
+ "FLUTE1.CPS",
+ "FLUTE2.CPS",
+ "POISON1.CPS",
+ "POISON2.CPS",
+ "TELEKIN.CPS",
+ "BRANSTON.CPS",
+ "POISON.CPS"
+};
+
+static const StringListProvider k1CharacterImageFilenamesDOSOldFloppyProvider = { ARRAYSIZE(k1CharacterImageFilenamesDOSOldFloppy), k1CharacterImageFilenamesDOSOldFloppy };
+
+static const Shape k1DefaultShapesDOSOldFloppy[166] = {
+ { 0, 0, 0, 3, 48, -12, -48 },
+ { 0, 3, 0, 3, 48, -12, -48 },
+ { 0, 6, 0, 3, 48, -12, -48 },
+ { 0, 9, 0, 3, 48, -12, -48 },
+ { 0, 12, 0, 3, 48, -12, -48 },
+ { 0, 15, 0, 3, 48, -12, -48 },
+ { 0, 18, 0, 3, 48, -12, -48 },
+ { 0, 21, 0, 3, 48, -12, -48 },
+ { 0, 24, 0, 3, 48, -12, -48 },
+ { 0, 27, 0, 3, 48, -12, -48 },
+ { 0, 0, 51, 2, 11, -2, -8 },
+ { 0, 2, 51, 2, 11, -2, -8 },
+ { 0, 4, 51, 2, 11, -2, -8 },
+ { 0, 6, 51, 2, 11, -2, -8 },
+ { 0, 8, 51, 2, 11, -2, -8 },
+ { 0, 10, 51, 2, 11, -2, -8 },
+ { 0, 12, 51, 2, 11, -2, -8 },
+ { 0, 14, 51, 2, 11, -2, -8 },
+ { 0, 16, 51, 2, 11, -2, -8 },
+ { 0, 18, 51, 2, 11, -2, -8 },
+ { 0, 20, 51, 2, 11, -2, -8 },
+ { 0, 22, 51, 2, 11, -2, -8 },
+ { 0, 0, 80, 3, 48, -12, -48 },
+ { 0, 3, 80, 3, 48, -12, -48 },
+ { 0, 6, 80, 3, 48, -12, -48 },
+ { 0, 9, 80, 3, 48, -12, -48 },
+ { 0, 12, 80, 3, 48, -12, -48 },
+ { 0, 15, 80, 3, 48, -12, -48 },
+ { 0, 0, 129, 3, 48, -12, -48 },
+ { 0, 3, 129, 3, 48, -12, -48 },
+ { 0, 6, 129, 3, 48, -12, -48 },
+ { 0, 9, 129, 3, 48, -12, -48 },
+ { 0, 12, 129, 3, 48, -12, -48 },
+ { 0, 15, 129, 3, 48, -12, -48 },
+ { 2, 0, 0, 3, 48, -12, -48 },
+ { 2, 3, 0, 3, 48, -12, -48 },
+ { 2, 6, 0, 3, 48, -12, -48 },
+ { 2, 9, 0, 3, 48, -12, -48 },
+ { 2, 12, 0, 3, 48, -12, -48 },
+ { 2, 15, 0, 3, 48, -12, -48 },
+ { 2, 18, 0, 3, 48, -12, -48 },
+ { 2, 21, 0, 3, 48, -12, -48 },
+ { 2, 24, 0, 3, 48, -12, -48 },
+ { 2, 27, 0, 3, 48, -12, -48 },
+ { 2, 30, 10, 3, 38, -16, -38 },
+ { 2, 27, 48, 4, 40, -8, -40 },
+ { 2, 0, 51, 2, 11, -4, 0 },
+ { 2, 2, 51, 2, 11, -4, 0 },
+ { 2, 4, 51, 2, 11, -4, 0 },
+ { 2, 6, 51, 2, 11, -4, 0 },
+ { 2, 8, 51, 2, 11, -4, 0 },
+ { 2, 10, 51, 2, 11, -4, 0 },
+ { 2, 12, 51, 2, 11, -4, 0 },
+ { 2, 14, 51, 2, 11, -4, 0 },
+ { 2, 16, 51, 2, 11, -4, 0 },
+ { 2, 18, 51, 2, 11, -4, 0 },
+ { 2, 20, 51, 2, 11, -4, 0 },
+ { 2, 22, 51, 2, 11, -4, 0 },
+ { 255, 0, 80, 3, 48, -12, -48 },
+ { 255, 3, 80, 3, 48, -12, -48 },
+ { 255, 6, 80, 3, 48, -12, -48 },
+ { 255, 9, 80, 3, 48, -12, -48 },
+ { 255, 12, 80, 3, 48, -12, -48 },
+ { 255, 15, 80, 3, 48, -12, -48 },
+ { 255, 0, 129, 3, 48, -12, -48 },
+ { 255, 3, 129, 3, 48, -12, -48 },
+ { 255, 6, 129, 3, 48, -12, -48 },
+ { 255, 9, 129, 3, 48, -12, -48 },
+ { 255, 12, 129, 3, 48, -12, -48 },
+ { 255, 15, 129, 3, 48, -12, -48 },
+ { 3, 0, 0, 3, 48, -12, -46 },
+ { 3, 3, 0, 3, 48, -12, -48 },
+ { 3, 6, 0, 3, 48, -12, -48 },
+ { 3, 9, 0, 3, 48, -12, -48 },
+ { 3, 12, 0, 3, 48, -12, -48 },
+ { 3, 15, 0, 3, 48, -12, -48 },
+ { 3, 18, 0, 3, 48, -12, -48 },
+ { 3, 21, 0, 3, 48, -12, -48 },
+ { 3, 24, 0, 3, 48, -12, -48 },
+ { 3, 27, 0, 3, 48, -12, -46 },
+ { 3, 30, 0, 3, 48, -14, -47 },
+ { 3, 39, 199, 1, 1, -12, -48 },
+ { 3, 0, 51, 2, 11, 0, -7 },
+ { 3, 2, 51, 2, 11, 0, -7 },
+ { 3, 4, 51, 2, 11, 0, -7 },
+ { 3, 6, 51, 2, 11, 0, -7 },
+ { 3, 8, 51, 2, 11, 0, -7 },
+ { 3, 10, 51, 2, 11, 0, -7 },
+ { 3, 12, 51, 2, 11, 0, -7 },
+ { 3, 14, 51, 2, 11, 0, -7 },
+ { 3, 16, 51, 2, 11, 0, -7 },
+ { 3, 18, 51, 2, 11, 0, -7 },
+ { 3, 20, 51, 2, 11, 0, -7 },
+ { 3, 22, 51, 2, 11, 0, -7 },
+ { 3, 0, 80, 3, 48, -12, -48 },
+ { 3, 3, 80, 3, 48, -12, -48 },
+ { 3, 6, 80, 3, 48, -12, -48 },
+ { 3, 9, 80, 3, 48, -12, -48 },
+ { 3, 12, 80, 3, 48, -12, -48 },
+ { 3, 15, 80, 3, 48, -12, -48 },
+ { 3, 0, 129, 3, 48, -12, -48 },
+ { 3, 3, 129, 3, 48, -12, -48 },
+ { 3, 6, 129, 3, 48, -12, -48 },
+ { 3, 9, 129, 3, 48, -12, -48 },
+ { 3, 12, 129, 3, 48, -12, -48 },
+ { 3, 15, 129, 3, 48, -12, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1DefaultShapesDOSOldFloppyProvider = { ARRAYSIZE(k1DefaultShapesDOSOldFloppy), k1DefaultShapesDOSOldFloppy };
+
+static const byte k1AmuleteAnimSeqDOSOldFloppy[42] = {
+ 0x00, 0x01, 0x02, 0x01, 0x03, 0x04, 0x03, 0x01,
+ 0x02, 0x03, 0x04, 0x05, 0x06, 0x05, 0x04, 0x05,
+ 0x07, 0x08, 0x07, 0x08, 0x09, 0x08, 0x09, 0x07,
+ 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
+ 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+ 0x16, 0xFF
+};
+
+static const ByteProvider k1AmuleteAnimSeqDOSOldFloppyProvider = { ARRAYSIZE(k1AmuleteAnimSeqDOSOldFloppy), k1AmuleteAnimSeqDOSOldFloppy };
+
+static const byte k1SpecialPalette1DOSOldFloppy[21] = {
+ 0x36, 0x25, 0x1C, 0x31, 0x21, 0x19, 0x2C, 0x1D,
+ 0x16, 0x27, 0x19, 0x13, 0x22, 0x16, 0x11, 0x1D,
+ 0x12, 0x0D, 0x18, 0x0F, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette1DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette1DOSOldFloppy), k1SpecialPalette1DOSOldFloppy };
+
+static const byte k1SpecialPalette2DOSOldFloppy[51] = {
+ 0x03, 0x03, 0x00, 0x37, 0x29, 0x1D, 0x33, 0x25,
+ 0x1A, 0x2D, 0x21, 0x17, 0x2A, 0x1D, 0x13, 0x26,
+ 0x19, 0x11, 0x22, 0x16, 0x0E, 0x1E, 0x12, 0x0C,
+ 0x1A, 0x0F, 0x0A, 0x16, 0x0C, 0x08, 0x12, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x2D, 0x1E, 0x13, 0x27,
+ 0x19, 0x0F, 0x22, 0x14, 0x0C, 0x1C, 0x11, 0x0A,
+ 0x17, 0x0C, 0x08
+};
+
+static const ByteProvider k1SpecialPalette2DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette2DOSOldFloppy), k1SpecialPalette2DOSOldFloppy };
+
+static const byte k1SpecialPalette3DOSOldFloppy[51] = {
+ 0x03, 0x03, 0x00, 0x25, 0x30, 0x1B, 0x24, 0x2C,
+ 0x18, 0x23, 0x29, 0x15, 0x22, 0x25, 0x12, 0x21,
+ 0x22, 0x11, 0x1F, 0x1D, 0x0D, 0x1B, 0x18, 0x0B,
+ 0x18, 0x13, 0x0A, 0x14, 0x0E, 0x08, 0x11, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x21, 0x22, 0x11, 0x1D,
+ 0x1C, 0x0C, 0x19, 0x15, 0x0A, 0x15, 0x0F, 0x08,
+ 0x11, 0x0A, 0x05
+};
+
+static const ByteProvider k1SpecialPalette3DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette3DOSOldFloppy), k1SpecialPalette3DOSOldFloppy };
+
+static const byte k1SpecialPalette4DOSOldFloppy[51] = {
+ 0x06, 0x03, 0x01, 0x33, 0x25, 0x0A, 0x2F, 0x21,
+ 0x0A, 0x2B, 0x1D, 0x08, 0x28, 0x1A, 0x08, 0x24,
+ 0x17, 0x06, 0x21, 0x22, 0x06, 0x1D, 0x11, 0x05,
+ 0x19, 0x0E, 0x05, 0x16, 0x0B, 0x03, 0x12, 0x0A,
+ 0x03, 0x0F, 0x08, 0x03, 0x28, 0x1A, 0x08, 0x22,
+ 0x15, 0x05, 0x1D, 0x11, 0x05, 0x17, 0x0C, 0x03,
+ 0x12, 0x0A, 0x03
+};
+
+static const ByteProvider k1SpecialPalette4DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette4DOSOldFloppy), k1SpecialPalette4DOSOldFloppy };
+
+static const byte k1SpecialPalette5DOSOldFloppy[51] = {
+ 0x03, 0x03, 0x00, 0x2A, 0x1D, 0x13, 0x27, 0x1A,
+ 0x11, 0x24, 0x18, 0x0F, 0x21, 0x15, 0x0D, 0x1E,
+ 0x13, 0x0C, 0x1C, 0x11, 0x0A, 0x19, 0x0F, 0x0A,
+ 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06, 0x11, 0x08,
+ 0x05, 0x0E, 0x08, 0x05, 0x1C, 0x11, 0x0A, 0x19,
+ 0x0E, 0x08, 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06,
+ 0x11, 0x08, 0x05
+};
+
+static const ByteProvider k1SpecialPalette5DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette5DOSOldFloppy), k1SpecialPalette5DOSOldFloppy };
+
+static const byte k1SpecialPalette6DOSOldFloppy[51] = {
+ 0x00, 0x08, 0x01, 0x00, 0x1E, 0x00, 0x00, 0x1B,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x17, 0x00, 0x00,
+ 0x14, 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x0A,
+ 0x00, 0x00, 0x08, 0x00, 0x13, 0x21, 0x0F, 0x11,
+ 0x1F, 0x0D, 0x0E, 0x1D, 0x0C, 0x0C, 0x1B, 0x0B,
+ 0x0A, 0x19, 0x0A
+};
+
+static const ByteProvider k1SpecialPalette6DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette6DOSOldFloppy), k1SpecialPalette6DOSOldFloppy };
+
+static const byte k1SpecialPalette7DOSOldFloppy[54] = {
+ 0x05, 0x2B, 0x00, 0x00, 0x22, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x16, 0x01, 0x00, 0x12, 0x03, 0x00,
+ 0x0F, 0x01, 0x00, 0x0B, 0x03, 0x0A, 0x19, 0x0A,
+ 0x2D, 0x2D, 0x32, 0x29, 0x29, 0x2D, 0x25, 0x25,
+ 0x2B, 0x1F, 0x1F, 0x26, 0x1B, 0x1B, 0x22, 0x14,
+ 0x16, 0x1D, 0x11, 0x11, 0x18, 0x0D, 0x0D, 0x14,
+ 0x0A, 0x0A, 0x0F, 0x06, 0x06, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette7DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette7DOSOldFloppy), k1SpecialPalette7DOSOldFloppy };
+
+static const byte k1SpecialPalette8DOSOldFloppy[54] = {
+ 0x12, 0x37, 0x3F, 0x14, 0x31, 0x3F, 0x14, 0x29,
+ 0x3F, 0x14, 0x22, 0x3F, 0x14, 0x1B, 0x3F, 0x14,
+ 0x14, 0x3F, 0x0E, 0x0F, 0x37, 0x14, 0x29, 0x3F,
+ 0x2F, 0x3F, 0x3D, 0x26, 0x3F, 0x3F, 0x15, 0x3F,
+ 0x3F, 0x14, 0x3B, 0x3F, 0x12, 0x37, 0x3F, 0x14,
+ 0x31, 0x3F, 0x14, 0x29, 0x3F, 0x14, 0x22, 0x3F,
+ 0x14, 0x1B, 0x3F, 0x14, 0x14, 0x3F
+};
+
+static const ByteProvider k1SpecialPalette8DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette8DOSOldFloppy), k1SpecialPalette8DOSOldFloppy };
+
+static const byte k1SpecialPalette9DOSOldFloppy[45] = {
+ 0x36, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2F, 0x00,
+ 0x00, 0x2C, 0x00, 0x00, 0x29, 0x00, 0x00, 0x26,
+ 0x00, 0x00, 0x23, 0x00, 0x00, 0x20, 0x00, 0x00,
+ 0x1C, 0x00, 0x00, 0x19, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x0D,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette9DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette9DOSOldFloppy), k1SpecialPalette9DOSOldFloppy };
+
+static const byte k1SpecialPalette10DOSOldFloppy[45] = {
+ 0x29, 0x00, 0x00, 0x26, 0x00, 0x00, 0x24, 0x00,
+ 0x00, 0x22, 0x00, 0x00, 0x20, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x15, 0x00, 0x00, 0x12, 0x00,
+ 0x00, 0x11, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x0C,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette10DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette10DOSOldFloppy), k1SpecialPalette10DOSOldFloppy };
+
+static const byte k1SpecialPalette11DOSOldFloppy[45] = {
+ 0x20, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00,
+ 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00, 0x18,
+ 0x00, 0x00, 0x16, 0x00, 0x00, 0x15, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette11DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette11DOSOldFloppy), k1SpecialPalette11DOSOldFloppy };
+
+static const byte k1SpecialPalette12DOSOldFloppy[45] = {
+ 0x19, 0x00, 0x00, 0x18, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x15, 0x00, 0x00, 0x14, 0x00, 0x00, 0x13,
+ 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00, 0x00,
+ 0x11, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0E, 0x00,
+ 0x00, 0x0D, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette12DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette12DOSOldFloppy), k1SpecialPalette12DOSOldFloppy };
+
+static const byte k1SpecialPalette13DOSOldFloppy[45] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette13DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette13DOSOldFloppy), k1SpecialPalette13DOSOldFloppy };
+
+static const byte k1SpecialPalette14DOSOldFloppy[60] = {
+ 0x0E, 0x28, 0x3F, 0x0C, 0x24, 0x3B, 0x0A, 0x20,
+ 0x38, 0x0A, 0x1C, 0x34, 0x08, 0x19, 0x31, 0x08,
+ 0x15, 0x2D, 0x05, 0x13, 0x2A, 0x05, 0x11, 0x27,
+ 0x03, 0x0D, 0x24, 0x03, 0x0A, 0x20, 0x03, 0x08,
+ 0x1D, 0x01, 0x06, 0x19, 0x01, 0x05, 0x16, 0x00,
+ 0x03, 0x13, 0x00, 0x01, 0x0F, 0x00, 0x01, 0x0C,
+ 0x00, 0x00, 0x08, 0x00, 0x00, 0x05, 0x00, 0x00,
+ 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette14DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette14DOSOldFloppy), k1SpecialPalette14DOSOldFloppy };
+
+static const byte k1SpecialPalette15DOSOldFloppy[45] = {
+ 0x24, 0x00, 0x39, 0x21, 0x00, 0x36, 0x1F, 0x00,
+ 0x32, 0x1C, 0x00, 0x2D, 0x1A, 0x00, 0x2A, 0x17,
+ 0x00, 0x26, 0x15, 0x00, 0x22, 0x12, 0x00, 0x1E,
+ 0x11, 0x00, 0x1A, 0x0E, 0x00, 0x16, 0x0B, 0x00,
+ 0x12, 0x0A, 0x00, 0x0F, 0x06, 0x00, 0x0B, 0x05,
+ 0x00, 0x08, 0x01, 0x00, 0x03
+};
+
+static const ByteProvider k1SpecialPalette15DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette15DOSOldFloppy), k1SpecialPalette15DOSOldFloppy };
+
+static const byte k1SpecialPalette16DOSOldFloppy[33] = {
+ 0x00, 0x3F, 0x3F, 0x00, 0x38, 0x38, 0x00, 0x34,
+ 0x34, 0x00, 0x30, 0x30, 0x00, 0x2D, 0x2D, 0x00,
+ 0x29, 0x29, 0x00, 0x25, 0x25, 0x00, 0x1F, 0x1F,
+ 0x00, 0x1B, 0x1B, 0x00, 0x16, 0x16, 0x00, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette16DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette16DOSOldFloppy), k1SpecialPalette16DOSOldFloppy };
+
+static const byte k1SpecialPalette17DOSOldFloppy[33] = {
+ 0x3B, 0x3B, 0x3B, 0x36, 0x36, 0x36, 0x32, 0x32,
+ 0x32, 0x2D, 0x2D, 0x2D, 0x2A, 0x2A, 0x2A, 0x26,
+ 0x26, 0x26, 0x21, 0x21, 0x21, 0x1D, 0x1D, 0x1D,
+ 0x19, 0x19, 0x19, 0x15, 0x15, 0x15, 0x11, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette17DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette17DOSOldFloppy), k1SpecialPalette17DOSOldFloppy };
+
+static const byte k1SpecialPalette18DOSOldFloppy[21] = {
+ 0x0F, 0x23, 0x1C, 0x2A, 0x36, 0x3F, 0x24, 0x2F,
+ 0x38, 0x1F, 0x2A, 0x32, 0x1A, 0x24, 0x2B, 0x15,
+ 0x1E, 0x25, 0x11, 0x19, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette18DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette18DOSOldFloppy), k1SpecialPalette18DOSOldFloppy };
+
+static const byte k1SpecialPalette19DOSOldFloppy[21] = {
+ 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00,
+ 0x38, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00,
+ 0x00, 0x25, 0x00, 0x00, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette19DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette19DOSOldFloppy), k1SpecialPalette19DOSOldFloppy };
+
+static const byte k1SpecialPalette20DOSOldFloppy[21] = {
+ 0x26, 0x1B, 0x1B, 0x3F, 0x34, 0x34, 0x3B, 0x2F,
+ 0x2F, 0x39, 0x2B, 0x2B, 0x36, 0x26, 0x27, 0x33,
+ 0x22, 0x23, 0x31, 0x1F, 0x20
+};
+
+static const ByteProvider k1SpecialPalette20DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette20DOSOldFloppy), k1SpecialPalette20DOSOldFloppy };
+
+static const byte k1SpecialPalette21DOSOldFloppy[21] = {
+ 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x38, 0x00,
+ 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x25,
+ 0x00, 0x00, 0x1F, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette21DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette21DOSOldFloppy), k1SpecialPalette21DOSOldFloppy };
+
+static const byte k1SpecialPalette22DOSOldFloppy[21] = {
+ 0x1F, 0x1F, 0x0C, 0x3F, 0x3F, 0x21, 0x3B, 0x3B,
+ 0x1F, 0x37, 0x37, 0x1D, 0x34, 0x34, 0x1B, 0x30,
+ 0x30, 0x19, 0x2D, 0x2D, 0x17
+};
+
+static const ByteProvider k1SpecialPalette22DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette22DOSOldFloppy), k1SpecialPalette22DOSOldFloppy };
+
+static const byte k1SpecialPalette23DOSOldFloppy[21] = {
+ 0x1F, 0x1F, 0x00, 0x3F, 0x3F, 0x00, 0x3B, 0x3B,
+ 0x00, 0x37, 0x37, 0x00, 0x34, 0x34, 0x00, 0x30,
+ 0x30, 0x00, 0x2D, 0x2D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette23DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette23DOSOldFloppy), k1SpecialPalette23DOSOldFloppy };
+
+static const byte k1SpecialPalette24DOSOldFloppy[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D,
+ 0x0D, 0x1B, 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18,
+ 0x0A, 0x08, 0x17, 0x08, 0x08, 0x16, 0x08, 0x08,
+ 0x15, 0x06, 0x06, 0x14, 0x06, 0x06, 0x11, 0x06
+};
+
+static const ByteProvider k1SpecialPalette24DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette24DOSOldFloppy), k1SpecialPalette24DOSOldFloppy };
+
+static const byte k1SpecialPalette25DOSOldFloppy[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x36, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D, 0x1B,
+ 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18, 0x0A, 0x0A,
+ 0x18, 0x0A, 0x0A, 0x18, 0x0A, 0x06, 0x14, 0x06
+};
+
+static const ByteProvider k1SpecialPalette25DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette25DOSOldFloppy), k1SpecialPalette25DOSOldFloppy };
+
+static const byte k1SpecialPalette26DOSOldFloppy[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x11,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0A,
+ 0x19, 0x0A, 0x0A, 0x19, 0x0A, 0x06, 0x13, 0x06
+};
+
+static const ByteProvider k1SpecialPalette26DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette26DOSOldFloppy), k1SpecialPalette26DOSOldFloppy };
+
+static const byte k1SpecialPalette27DOSOldFloppy[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x19, 0x0C, 0x0D, 0x19, 0x0C, 0x08, 0x16, 0x08
+};
+
+static const ByteProvider k1SpecialPalette27DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette27DOSOldFloppy), k1SpecialPalette27DOSOldFloppy };
+
+static const byte k1SpecialPalette28DOSOldFloppy[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x1B, 0x0C, 0x0D, 0x1B, 0x0C, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette28DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette28DOSOldFloppy), k1SpecialPalette28DOSOldFloppy };
+
+static const byte k1SpecialPalette29DOSOldFloppy[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E,
+ 0x1D, 0x0D, 0x0E, 0x1D, 0x0D, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette29DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette29DOSOldFloppy), k1SpecialPalette29DOSOldFloppy };
+
+static const byte k1SpecialPalette30DOSOldFloppy[60] = {
+ 0x1E, 0x1D, 0x3F, 0x1A, 0x19, 0x3F, 0x14, 0x12,
+ 0x3B, 0x12, 0x11, 0x37, 0x11, 0x11, 0x33, 0x0F,
+ 0x0E, 0x2F, 0x0E, 0x0D, 0x2C, 0x0D, 0x0C, 0x28,
+ 0x0B, 0x0B, 0x24, 0x0A, 0x0A, 0x20, 0x0A, 0x0A,
+ 0x1D, 0x05, 0x05, 0x18, 0x03, 0x03, 0x13, 0x01,
+ 0x01, 0x11, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x05,
+ 0x00, 0x0A, 0x1A, 0x00, 0x0F, 0x13, 0x00, 0x14,
+ 0x11, 0x0F, 0x0D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette30DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette30DOSOldFloppy), k1SpecialPalette30DOSOldFloppy };
+
+static const byte k1SpecialPalette31DOSOldFloppy[39] = {
+ 0x2B, 0x19, 0x34, 0x27, 0x17, 0x30, 0x23, 0x14,
+ 0x2C, 0x20, 0x12, 0x27, 0x1C, 0x11, 0x23, 0x18,
+ 0x0E, 0x1E, 0x15, 0x0C, 0x1A, 0x11, 0x0A, 0x15,
+ 0x0E, 0x08, 0x11, 0x0A, 0x05, 0x0C, 0x06, 0x03,
+ 0x08, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette31DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette31DOSOldFloppy), k1SpecialPalette31DOSOldFloppy };
+
+static const byte k1SpecialPalette32DOSOldFloppy[39] = {
+ 0x12, 0x12, 0x16, 0x11, 0x11, 0x14, 0x0F, 0x0F,
+ 0x12, 0x0D, 0x0D, 0x11, 0x0B, 0x0B, 0x0E, 0x0A,
+ 0x0A, 0x0C, 0x08, 0x08, 0x0A, 0x08, 0x08, 0x08,
+ 0x05, 0x05, 0x06, 0x05, 0x05, 0x05, 0x03, 0x03,
+ 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette32DOSOldFloppyProvider = { ARRAYSIZE(k1SpecialPalette32DOSOldFloppy), k1SpecialPalette32DOSOldFloppy };
+
+static const Shape k1Healing1ShapesDOSOldFloppy[22] = {
+ { 8, 0, 0, 3, 48, -12, -48 },
+ { 8, 3, 0, 3, 48, -12, -48 },
+ { 8, 6, 0, 3, 48, -12, -48 },
+ { 8, 9, 0, 3, 48, -12, -48 },
+ { 8, 12, 0, 3, 48, -12, -48 },
+ { 8, 15, 0, 3, 48, -12, -48 },
+ { 8, 18, 0, 3, 48, -12, -48 },
+ { 8, 21, 0, 3, 48, -12, -48 },
+ { 8, 24, 0, 3, 48, -12, -48 },
+ { 8, 27, 0, 3, 48, -12, -48 },
+ { 8, 30, 0, 3, 48, -12, -48 },
+ { 8, 33, 0, 3, 48, -12, -48 },
+ { 8, 0, 48, 3, 48, -12, -48 },
+ { 8, 3, 48, 3, 48, -12, -48 },
+ { 8, 6, 48, 3, 48, -12, -48 },
+ { 8, 9, 48, 3, 48, -12, -48 },
+ { 8, 12, 48, 3, 48, -12, -48 },
+ { 8, 15, 48, 3, 48, -12, -48 },
+ { 8, 18, 48, 3, 48, -12, -48 },
+ { 8, 21, 48, 3, 48, -12, -48 },
+ { 8, 24, 48, 3, 48, -12, -48 },
+ { 8, 27, 48, 3, 48, -12, -48 }
+};
+
+static const ShapeProvider k1Healing1ShapesDOSOldFloppyProvider = { ARRAYSIZE(k1Healing1ShapesDOSOldFloppy), k1Healing1ShapesDOSOldFloppy };
+
+static const Shape k1Healing2ShapesDOSOldFloppy[30] = {
+ { 9, 0, 0, 3, 48, -11, -48 },
+ { 9, 3, 0, 3, 48, -11, -48 },
+ { 9, 6, 0, 3, 48, -11, -48 },
+ { 9, 9, 0, 3, 48, -11, -48 },
+ { 9, 12, 0, 3, 48, -11, -48 },
+ { 9, 15, 0, 3, 48, -11, -48 },
+ { 9, 18, 0, 3, 48, -11, -48 },
+ { 9, 21, 0, 3, 48, -11, -48 },
+ { 9, 24, 0, 3, 48, -11, -48 },
+ { 9, 27, 0, 3, 48, -11, -48 },
+ { 9, 30, 0, 3, 48, -11, -48 },
+ { 9, 33, 0, 3, 48, -11, -48 },
+ { 9, 0, 48, 3, 48, -11, -48 },
+ { 9, 3, 48, 3, 48, -11, -48 },
+ { 9, 6, 48, 3, 48, -11, -48 },
+ { 9, 9, 48, 3, 48, -11, -48 },
+ { 9, 12, 48, 3, 48, -11, -48 },
+ { 9, 15, 48, 3, 48, -11, -48 },
+ { 9, 18, 48, 3, 48, -11, -48 },
+ { 9, 21, 48, 3, 48, -11, -48 },
+ { 9, 24, 48, 3, 48, -11, -48 },
+ { 9, 27, 48, 3, 48, -11, -48 },
+ { 9, 30, 48, 3, 48, -11, -48 },
+ { 9, 33, 48, 3, 48, -11, -48 },
+ { 9, 0, 96, 3, 48, -11, -48 },
+ { 9, 3, 96, 3, 48, -11, -48 },
+ { 9, 6, 96, 3, 48, -11, -48 },
+ { 9, 9, 96, 3, 48, -11, -48 },
+ { 9, 12, 96, 3, 48, -11, -48 },
+ { 9, 15, 96, 3, 48, -11, -48 }
+};
+
+static const ShapeProvider k1Healing2ShapesDOSOldFloppyProvider = { ARRAYSIZE(k1Healing2ShapesDOSOldFloppy), k1Healing2ShapesDOSOldFloppy };
+
+static const Shape k1PoisonDeathShapesDOSOldFloppy[20] = {
+ { 19, 0, 0, 8, 48, -32, -48 },
+ { 19, 8, 0, 8, 48, -32, -48 },
+ { 19, 16, 0, 8, 48, -32, -48 },
+ { 19, 24, 0, 8, 48, -32, -48 },
+ { 19, 32, 0, 8, 48, -32, -48 },
+ { 19, 0, 48, 8, 48, -32, -48 },
+ { 19, 8, 48, 8, 48, -32, -48 },
+ { 19, 16, 48, 8, 48, -32, -48 },
+ { 19, 24, 48, 8, 48, -32, -48 },
+ { 19, 32, 48, 8, 48, -32, -48 },
+ { 19, 0, 96, 8, 48, -32, -48 },
+ { 19, 8, 96, 8, 48, -32, -48 },
+ { 19, 16, 96, 8, 48, -32, -48 },
+ { 19, 24, 96, 8, 48, -32, -48 },
+ { 19, 32, 96, 8, 48, -32, -48 },
+ { 19, 0, 144, 8, 48, -32, -48 },
+ { 19, 8, 144, 8, 48, -32, -48 },
+ { 19, 16, 144, 8, 48, -32, -48 },
+ { 19, 24, 144, 8, 48, -32, -48 },
+ { 19, 32, 144, 8, 48, -32, -48 }
+};
+
+static const ShapeProvider k1PoisonDeathShapesDOSOldFloppyProvider = { ARRAYSIZE(k1PoisonDeathShapesDOSOldFloppy), k1PoisonDeathShapesDOSOldFloppy };
+
+static const Shape k1FluteShapesDOSOldFloppy[36] = {
+ { 13, 0, 0, 3, 75, -12, -75 },
+ { 13, 3, 0, 3, 75, -12, -75 },
+ { 13, 6, 0, 3, 75, -12, -75 },
+ { 13, 9, 0, 3, 75, -12, -75 },
+ { 13, 12, 0, 3, 75, -12, -75 },
+ { 13, 15, 0, 3, 75, -12, -75 },
+ { 13, 18, 0, 3, 75, -12, -75 },
+ { 13, 21, 0, 3, 75, -12, -75 },
+ { 13, 24, 0, 3, 75, -12, -75 },
+ { 13, 27, 0, 3, 75, -12, -75 },
+ { 13, 30, 0, 3, 75, -12, -75 },
+ { 13, 33, 0, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 13, 0, 75, 3, 75, -12, -75 },
+ { 13, 3, 75, 3, 75, -12, -75 },
+ { 13, 6, 75, 3, 75, -12, -75 },
+ { 13, 9, 75, 3, 75, -12, -75 },
+ { 13, 12, 75, 3, 75, -12, -75 },
+ { 13, 15, 75, 3, 75, -12, -75 },
+ { 13, 18, 75, 3, 75, -12, -75 },
+ { 13, 21, 75, 3, 75, -12, -75 },
+ { 13, 24, 75, 3, 75, -12, -75 },
+ { 13, 27, 75, 3, 75, -12, -75 },
+ { 13, 30, 75, 3, 75, -12, -75 },
+ { 13, 33, 75, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 14, 0, 0, 3, 75, -12, -75 },
+ { 14, 3, 0, 3, 75, -12, -75 },
+ { 14, 6, 0, 3, 75, -12, -75 },
+ { 14, 9, 0, 3, 75, -12, -75 },
+ { 14, 12, 0, 3, 75, -12, -75 },
+ { 14, 15, 0, 3, 75, -12, -75 },
+ { 14, 18, 0, 3, 75, -12, -75 },
+ { 14, 21, 0, 3, 75, -12, -75 },
+ { 14, 24, 0, 3, 75, -12, -75 },
+ { 14, 27, 0, 3, 75, -12, -75 }
+};
+
+static const ShapeProvider k1FluteShapesDOSOldFloppyProvider = { ARRAYSIZE(k1FluteShapesDOSOldFloppy), k1FluteShapesDOSOldFloppy };
+
+static const Shape k1Winter1ShapesDOSOldFloppy[7] = {
+ { 10, 5, 0, 5, 66, -20, -65 },
+ { 10, 10, 0, 5, 66, -20, -65 },
+ { 10, 15, 0, 5, 66, -20, -65 },
+ { 10, 20, 0, 5, 66, -20, -65 },
+ { 10, 25, 0, 5, 66, -20, -65 },
+ { 10, 30, 0, 5, 66, -20, -65 },
+ { 10, 35, 0, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter1ShapesDOSOldFloppyProvider = { ARRAYSIZE(k1Winter1ShapesDOSOldFloppy), k1Winter1ShapesDOSOldFloppy };
+
+static const Shape k1Winter2ShapesDOSOldFloppy[35] = {
+ { 10, 0, 66, 5, 66, -20, -65 },
+ { 10, 5, 66, 5, 66, -20, -65 },
+ { 10, 10, 66, 5, 66, -20, -65 },
+ { 10, 15, 66, 5, 66, -20, -65 },
+ { 10, 20, 66, 5, 66, -20, -65 },
+ { 10, 25, 66, 5, 66, -20, -65 },
+ { 10, 30, 66, 5, 66, -20, -65 },
+ { 10, 35, 66, 5, 66, -20, -65 },
+ { 10, 0, 132, 5, 66, -20, -65 },
+ { 10, 5, 132, 5, 66, -20, -65 },
+ { 10, 10, 132, 5, 66, -20, -65 },
+ { 10, 15, 132, 5, 66, -20, -65 },
+ { 10, 20, 132, 5, 66, -20, -65 },
+ { 10, 25, 132, 5, 66, -20, -65 },
+ { 10, 30, 132, 5, 66, -20, -65 },
+ { 10, 35, 132, 5, 66, -20, -65 },
+ { 11, 0, 0, 5, 66, -20, -65 },
+ { 11, 5, 0, 5, 66, -20, -65 },
+ { 11, 10, 0, 5, 66, -20, -65 },
+ { 11, 15, 0, 5, 66, -20, -65 },
+ { 11, 20, 0, 5, 66, -20, -65 },
+ { 11, 25, 0, 5, 66, -20, -65 },
+ { 11, 30, 0, 5, 66, -20, -65 },
+ { 11, 35, 0, 5, 66, -20, -65 },
+ { 11, 0, 66, 5, 66, -20, -65 },
+ { 11, 5, 66, 5, 66, -20, -65 },
+ { 11, 10, 66, 5, 66, -20, -65 },
+ { 11, 15, 66, 5, 66, -20, -65 },
+ { 11, 20, 66, 5, 66, -20, -65 },
+ { 11, 25, 66, 5, 66, -20, -65 },
+ { 11, 30, 66, 5, 66, -20, -65 },
+ { 11, 35, 66, 5, 66, -20, -65 },
+ { 11, 0, 132, 5, 66, -20, -65 },
+ { 11, 5, 132, 5, 66, -20, -65 },
+ { 11, 10, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter2ShapesDOSOldFloppyProvider = { ARRAYSIZE(k1Winter2ShapesDOSOldFloppy), k1Winter2ShapesDOSOldFloppy };
+
+static const Shape k1Winter3ShapesDOSOldFloppy[4] = {
+ { 11, 15, 132, 5, 66, -20, -65 },
+ { 11, 20, 132, 5, 66, -20, -65 },
+ { 11, 25, 132, 5, 66, -20, -65 },
+ { 11, 30, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter3ShapesDOSOldFloppyProvider = { ARRAYSIZE(k1Winter3ShapesDOSOldFloppy), k1Winter3ShapesDOSOldFloppy };
+
+static const Shape k1DrinkShapesDOSOldFloppy[15] = {
+ { 6, 0, 0, 4, 48, -20, -48 },
+ { 6, 4, 0, 4, 48, -20, -48 },
+ { 6, 8, 0, 4, 48, -20, -48 },
+ { 6, 12, 0, 4, 48, -20, -48 },
+ { 6, 16, 0, 4, 48, -20, -48 },
+ { 6, 20, 0, 5, 48, -20, -48 },
+ { 6, 0, 48, 5, 54, -20, -54 },
+ { 6, 5, 48, 5, 54, -20, -54 },
+ { 6, 10, 48, 5, 54, -20, -54 },
+ { 7, 0, 0, 3, 43, -12, -43 },
+ { 7, 3, 3, 2, 40, -8, -40 },
+ { 7, 5, 7, 2, 36, -8, -36 },
+ { 7, 7, 10, 2, 33, -8, -33 },
+ { 7, 9, 12, 2, 31, -8, -31 },
+ { 7, 11, 15, 2, 28, -8, -28 }
+};
+
+static const ShapeProvider k1DrinkShapesDOSOldFloppyProvider = { ARRAYSIZE(k1DrinkShapesDOSOldFloppy), k1DrinkShapesDOSOldFloppy };
+
+static const Shape k1WispShapesDOSOldFloppy[26] = {
+ { 12, 0, 0, 5, 48, -20, -48 },
+ { 12, 5, 0, 5, 48, -20, -48 },
+ { 12, 10, 0, 5, 48, -20, -48 },
+ { 12, 15, 0, 5, 48, -20, -48 },
+ { 12, 20, 0, 5, 48, -20, -48 },
+ { 12, 25, 0, 5, 48, -20, -48 },
+ { 12, 30, 0, 5, 48, -20, -48 },
+ { 12, 35, 0, 5, 48, -20, -48 },
+ { 12, 0, 48, 5, 48, -20, -48 },
+ { 12, 5, 48, 5, 48, -20, -48 },
+ { 12, 10, 48, 5, 48, -20, -48 },
+ { 12, 15, 48, 5, 48, -20, -48 },
+ { 12, 20, 48, 5, 48, -20, -48 },
+ { 12, 25, 48, 5, 48, -20, -48 },
+ { 12, 30, 48, 5, 48, -20, -48 },
+ { 12, 35, 48, 5, 48, -20, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 }
+};
+
+static const ShapeProvider k1WispShapesDOSOldFloppyProvider = { ARRAYSIZE(k1WispShapesDOSOldFloppy), k1WispShapesDOSOldFloppy };
+
+static const Shape k1MagicAnimShapesDOSOldFloppy[5] = {
+ { 17, 0, 0, 8, 49, -32, -49 },
+ { 17, 8, 0, 8, 49, -32, -49 },
+ { 17, 16, 0, 8, 49, -32, -49 },
+ { 17, 24, 0, 8, 49, -32, -49 },
+ { 17, 32, 0, 8, 49, -32, -49 }
+};
+
+static const ShapeProvider k1MagicAnimShapesDOSOldFloppyProvider = { ARRAYSIZE(k1MagicAnimShapesDOSOldFloppy), k1MagicAnimShapesDOSOldFloppy };
+
+static const Shape k1BranStoneShapesDOSOldFloppy[15] = {
+ { 18, 0, 0, 5, 51, -20, -50 },
+ { 18, 5, 0, 5, 51, -20, -50 },
+ { 18, 10, 0, 5, 51, -20, -50 },
+ { 18, 15, 0, 5, 51, -20, -50 },
+ { 18, 20, 0, 5, 51, -20, -50 },
+ { 18, 25, 0, 5, 51, -20, -50 },
+ { 18, 30, 0, 5, 51, -20, -50 },
+ { 18, 35, 0, 5, 51, -20, -50 },
+ { 18, 0, 51, 5, 51, -20, -50 },
+ { 18, 5, 51, 5, 51, -20, -50 },
+ { 18, 10, 51, 5, 51, -20, -50 },
+ { 18, 15, 51, 5, 51, -20, -50 },
+ { 18, 20, 51, 5, 51, -20, -50 },
+ { 18, 25, 51, 5, 51, -20, -50 },
+ { 0, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1BranStoneShapesDOSOldFloppyProvider = { ARRAYSIZE(k1BranStoneShapesDOSOldFloppy), k1BranStoneShapesDOSOldFloppy };
+
+static const byte k1OutroReunionSeqDOSOldFloppy[1351] = {
+ 0x1A, 0x00, 0x08, 0x01, 0x06, 0x01, 0x00, 0x02,
+ 0x08, 0x00, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x14, 0x0A, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x10, 0x20, 0x5A, 0x00,
+ 0x3A, 0x02, 0x02, 0x08, 0x0D, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x0E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0C, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0B,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x0C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x0D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x0E, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x0A, 0x01, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x01, 0x04, 0x00, 0x10, 0x21, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0A, 0x02, 0x02, 0x08, 0x14, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x02, 0x01, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x10, 0x22, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0A, 0x03, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x03, 0x0B, 0x00, 0x10, 0x23, 0x78,
+ 0x00, 0x3A, 0x0F, 0x0A, 0x03, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x0B, 0x03, 0x05, 0x00, 0x06, 0x28,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x2D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x24,
+ 0x5A, 0x00, 0x3A, 0x02, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x34,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x35, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x36, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x37, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x36,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x37, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x06,
+ 0x0A, 0x00, 0x10, 0x25, 0x5A, 0x00, 0x3A, 0x02,
+ 0x02, 0x08, 0x33, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x36, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x37, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x34, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x33, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x36, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x37, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x10, 0x26,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x38, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x39,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x3A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x38, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x3B, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x06, 0x0A, 0x00, 0x02, 0x08, 0x39, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x38,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x39, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x3A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x06, 0x3C, 0x00, 0x11, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x32,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x31, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x02, 0x08,
+ 0x2E, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x41, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x42,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x43, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x44, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x45, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x46, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x27, 0x5A,
+ 0x00, 0x3A, 0x02, 0x02, 0x08, 0x4E, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x4F, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x50,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x51, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x52, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x53, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x54, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x55, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x3C, 0x00, 0x10, 0x28,
+ 0x78, 0x00, 0x3A, 0x0F, 0x0A, 0x05, 0x02, 0x08,
+ 0x59, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x5A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x5B, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x5C, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x5D, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x0B, 0x05, 0x01, 0x00, 0x06,
+ 0x28, 0x00, 0x10, 0x29, 0x78, 0x00, 0x3A, 0x0F,
+ 0x0A, 0x06, 0x02, 0x08, 0x59, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x5A, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5B, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5C,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x5D, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x0B,
+ 0x06, 0x01, 0x00, 0x06, 0x28, 0x00, 0x10, 0x2A,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x5E, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x63,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x06, 0x5A,
+ 0x00, 0x11, 0x18, 0x69, 0x02, 0x08, 0x64, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x65,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x18, 0x74,
+ 0x02, 0x08, 0x66, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x67, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x18, 0x75, 0x02, 0x08, 0x68, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x69,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x10, 0x2B,
+ 0x96, 0x00, 0x1C, 0x22, 0x0A, 0x06, 0x02, 0x08,
+ 0x6B, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x6C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x6D, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x6E, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x70, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x71, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01,
+ 0x00, 0x06, 0x1E, 0x00, 0x10, 0x2C, 0x96, 0x00,
+ 0x1C, 0x22, 0x0A, 0x06, 0x02, 0x08, 0x6B, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6C,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x6D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x6E, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x70, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x71, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01, 0x00, 0x06,
+ 0x1E, 0x00, 0x10, 0x2D, 0x96, 0x00, 0x1C, 0x22,
+ 0x0A, 0x06, 0x02, 0x08, 0x6B, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x6C, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6D, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6E,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x6F, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x70, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x71, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x0B, 0x06, 0x01, 0x00, 0x06, 0x1E, 0x00,
+ 0x02, 0x08, 0x72, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x73, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x06, 0x14, 0x00, 0x02, 0x08, 0x74,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x75, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x06,
+ 0x78, 0x00, 0x13, 0x0E, 0x01, 0x08, 0x1D
+};
+
+static const ByteProvider k1OutroReunionSeqDOSOldFloppyProvider = { ARRAYSIZE(k1OutroReunionSeqDOSOldFloppy), k1OutroReunionSeqDOSOldFloppy };
+
+static const char *const k1AudioTracksDOSOldFloppy[8] = {
+ "KYRA1A",
+ "KYRA1B",
+ "KYRA2A",
+ "KYRA3A",
+ "KYRA4A",
+ "KYRA4B",
+ "KYRA5A",
+ "KYRA5B"
+};
+
+static const StringListProvider k1AudioTracksDOSOldFloppyProvider = { ARRAYSIZE(k1AudioTracksDOSOldFloppy), k1AudioTracksDOSOldFloppy };
+
+static const char *const k1AudioTracks2DOSOldFloppy[1] = {
+ "kyramisc"
+};
+
+static const StringListProvider k1AudioTracks2DOSOldFloppyProvider = { ARRAYSIZE(k1AudioTracks2DOSOldFloppy), k1AudioTracks2DOSOldFloppy };
+
+static const char *const k1AudioTracksIntroDOSOldFloppy[1] = {
+ "intro"
+};
+
+static const StringListProvider k1AudioTracksIntroDOSOldFloppyProvider = { ARRAYSIZE(k1AudioTracksIntroDOSOldFloppy), k1AudioTracksIntroDOSOldFloppy };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_oldfloppy_russian.h b/devtools/create_kyradat/resources/lok_dos_oldfloppy_russian.h
new file mode 100644
index 0000000000..d0afaf6c50
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_oldfloppy_russian.h
@@ -0,0 +1,328 @@
+static const char *const k1IntroStringsDOSOldFloppyRussian[51] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "\x08""p""\x18\x14""e""\x1F"", Ka""\x1B\x1B""a""\x1A""...",
+ "...""\x08""o""\x14""e""\x1B\x18\x1F""e""\x1B""{ Kopo""\x1B""e""\x14""c""\x1A""o""\x19"" Ma""\x15\x18\x18""!",
+ "\x12"" ""\x1D""e ""\x18""c""\x1E""y""\x15""a""\x1B"" ""\x1F""e""\x13""~?",
+ "Ma""\x1B\x1A""o""\x1B\x1C""!",
+ "\x12"" ""\x14""\\epa y""\x17\x1D""a""\x1B"" o ""\x1F\x14""oe""\x1C"" ""\x1E""o""\x13""e""\x15""e...",
+ "... ""\x18"" o""\x7F\x18\x16""a""\x1B"" ""\x1F""e""\x13""~ y""\x14\x18\x16""e""\x1F""{.",
+ "K \\e""\x1C""y c""\x1E""e]""\x18\x1F""{?",
+ "\x12"" ""\x17\x16""ec{ ""\x02""oc""\x1E""o""\x16\x18\x1D""!",
+ "T""\x14""oe ""\x1E""po""\x1A\x1B""~""\x1F\x18""e ""\x1C""e""\x1D""~ ""\x1D""e y""\x16""ep""\x7F\x18\x1F"".",
+ "Ta""\x1A"" y""\x13""e""\x19"" ""\x1C""e""\x1D""~!",
+ "\t ""\x1C""e""\x1D""~ oc""\x1F""a""\x1B""ac{ e^e ""\x1C""a""\x15\x18""~",
+ "He co""\x1C\x1D""e""\x14""a""\x19""c~...",
+ "...""\x1F""e""\x1E""ep{ ""\x1F""` ""\x1A""a""\x1C""e""\x1D""{...",
+ "...""\x1D""o ~ oc""\x1F""a""\x14\x18\x1B"" ""\x15\x1B""a""\x17""a.",
+ "\x12"" ""\x1D""e ""\x13""y""\x16""y ""\x1E\x1B""a""\x1A""a""\x1F""{ o K""\x18""pa""\x1D\x16\x18\x18""...",
+ "...""\x1D""o ""\x17""a""\x1E""pe""\x1F\x18\x1F""{ ""\x1F""e""\x13""e ""\x1D""e ""\x1C""o""\x15""y.",
+ "Malcolm the Jester has broken free!",
+ "He now controls the Kyragem...",
+ "...source of all magic in Kyrandia!",
+ "",
+ "Ka""\x1A"" ""\x1F""` ""\x1E""oc""\x1C""e""\x1B""!",
+ "Ho ""\x1D\x18""\\e""\x15""o, y ""\x1C""e""\x1D""~ ec""\x1F""{ ""\x1A""oe-\\""\x1F""o...",
+ "Bo""\x1F"" ""\x1A""o""\x1C""e""\x16\x18""~!",
+ "Ho ~ \\ec""\x1F\x1D""o ""\x1E""pe""\x16""y""\x1E""pe""\x7F\x16""a}.",
+ "He ""\x1E""p`""\x15""a""\x19"" ""\x1D""a ""\x10""TO ""\x16""epe""\x14""o!",
+ "He ""\x14\x17\x13\x18""pa""\x19""c~ ""\x1D""a ""\x10""TO ""\x16""epe""\x14""o ""\x13""e""\x1B""o\\""\x1A""a!",
+ "\x02""AB!",
+ "Ta""\x1A"" c""\x1C""e]""\x1D""ee...",
+ "...He ""\x1F""a""\x1A"" ""\x1B\x18""?",
+ "Xa xa xa...",
+ "Pa""\x17\x14""e ""\x1E""a""\x1B""{[` ""\x1D""e ""\x1E""pe""\x1A""pac""\x1D""`",
+ "Ka""\x1A"" ""\x17\x16""opo""\x14""o o""\x7F\x18\x1F""{!",
+ "\x01""p|""\x1D\x16""o""\x1D""!",
+ "\x03""e""\x16""! M` c""\x16""e""\x1B""a""\x1B\x18"" |""\x1F""o!",
+ "He""\x1F""! T` c""\x16""e""\x1B""a""\x1B""!",
+ "\tpa Kopo""\x1B""} ""\x01""p|""\x1D\x16""o""\x1D""y!",
+ "\tpa Kopo""\x1B""e""\x14""c""\x1A""o""\x19"" Ma""\x15\x18\x18""!",
+ "Te""\x1E""ep{ ""\x1C""o""\x7F\x1D""o ""\x17""a""\x1D""~""\x1F""{c~ K""\x18""pa""\x1D\x16\x18""e""\x19"" ""\x14\x1C""ec""\x1F""e!",
+ "O""\x1F\x1B\x18""\\""\x1D""o!",
+ "\x06"" ""\x1C""o""\x19"" ""\x1E""ep""\x14""`""\x19"" Kopo""\x1B""e""\x14""c""\x1A\x18\x19"" \t""\x1A""a""\x17""...",
+ "\x12"" o""\x13""_~""\x14\x1B""~} ca""\x1D\x16""a""\x1B\x18\x18"" o@""\x18""[""\x18""a""\x1B""{""\x1D""o""\x19"" o""\x13""y""\x14""{} K""\x18""pa""\x1D\x16\x18\x18""!",
+ "O""\x1F\x1B\x18""\\""\x1D""o, ""\x01""p|""\x1D\x16""o""\x1D""!",
+ "\x05""e""\x1C\x1B""~ ""\x13""o""\x1B""{]e ""\x1D""e c""\x1F""pa""\x16""ae""\x1F""...",
+ "\x06"" c ""\x1F\x14""o""\x18""x ""\x16""py""\x17""e""\x19"" c""\x1D""~""\x1F""o ""\x17""a""\x1A\x1B""~""\x1F\x18""e!",
+ "\x03""opo""\x15""a~ ""\x01""p""\x18\x1D"".",
+ "Ma""\x1B\x1A""o""\x1B\x1C"" oc""\x14""o""\x13""o""\x16\x18\x1B""c~!",
+ "C""\x1A""opo o""\x1D"" ""\x1E""p""\x18\x16""e""\x1F"" ""\x17""a ""\x1C\x1D""o""\x19"".",
+ "\x08""o""\x1C""o""\x15\x18"" ""\x01""p|""\x1D\x16""o""\x1D""y...",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1IntroStringsDOSOldFloppyRussian), k1IntroStringsDOSOldFloppyRussian };
+
+static const char *const k1ItemNamesDOSOldFloppyRussian[107] = {
+ "\x02""pa""\x1D""a""\x1F",
+ "A""\x1C""e""\x1F\x18""c""\x1F",
+ "A""\x1A\x14""a""\x1C""ap""\x18\x1D",
+ "A""\x1B\x1C""a""\x17",
+ "\x06\x17""y""\x1C""py""\x16",
+ "\x04""e""\x1C""\\y""\x7F\x18\x1D""a",
+ "Py""\x13\x18\x1D",
+ "\x08""ep""\x18\x16""o""\x1F",
+ "Ca""\x1E""@""\x18""p",
+ "O""\x1E""a""\x1B",
+ "To""\x1E""a""\x17",
+ "O""\x1D\x18\x1A""c",
+ "Co""\x1B\x1D""e\\""\x1D""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "\x07""y""\x1D\x1D""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "Pa""\x16""y""\x7F\x1D""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "Ko""\x1C\x1E""ac",
+ "Po""\x17""a",
+ "T}""\x1B""{""\x1E""a""\x1D",
+ "Opx""\x18\x16""e~",
+ "Cepe""\x13""p~""\x1D\x1D""a~ po""\x17""a",
+ "Cepe""\x13""p~""\x1D\x1D""a~ c""\x1F""a""\x1F""ye""\x1F\x1A""a",
+ "Cepe""\x13""p~""\x1D\x1D""a~ ""\x1C""o""\x1D""e""\x1F""a",
+ "\x05""o""\x1B""o""\x1F""a~ ""\x1C""o""\x1D""e""\x1F""a",
+ "\x05""o""\x1B""o""\x1F""oe ""\x1A""o""\x1B""{[o",
+ "Kopo""\x1B""e""\x14""c""\x1A""a~ \\a]a",
+ "\x0E\x18""]""\x1A""a",
+ "\x04""e""\x1B""y""\x16""{",
+ "Opex",
+ "Be\\""\x1D""oc""\x18""~}^""\x18""e ~""\x15""o""\x16""`",
+ "O""\x15\x1D""e""\x1D\x1D""`e ~""\x15""o""\x16""`",
+ "O""\x15\x1D""e""\x1D\x1D""`e ~""\x15""o""\x16""`",
+ "O""\x15\x1D""e""\x1D\x1D""`e ~""\x15""o""\x16""`",
+ "O""\x15\x1D""e""\x1D\x1D""`e ~""\x15""o""\x16""`",
+ "O""\x15\x1D""e""\x1D\x1D""`e ~""\x15""o""\x16""`",
+ "P`""\x13""a",
+ "C""\x1A""e""\x1B""e""\x1F"" p`""\x13""`",
+ "\x01""apa""\x1D""{~ ""\x1D""o""\x15""a",
+ "Koc""\x1F""{",
+ "\x12\x13\x1B""o""\x1A""o",
+ "O""\x15""p`""\x17""o""\x1A",
+ "C""\x18\x1D\x18""e ~""\x15""o""\x16""`",
+ "\x02""p""\x18\x13",
+ "\x05""a""\x1E\x18""c""\x1A""a",
+ "Mpa""\x1C""op",
+ "\x08\x18\x1B""a",
+ "A""\x1D\x1A",
+ "\x08""epo",
+ "\x12\x19""[o",
+ "\x07\x18""c""\x1F",
+ "Tp""\x18\x1B\x18""c""\x1F\x1D\x18\x1A",
+ "\t""\x1E""a""\x14""]a~ ""\x17\x14""e""\x17\x16""a",
+ "Xpyc""\x1F""a""\x1B""{""\x1D""`""\x19"" ]ap",
+ "C""\x1B""e""\x17""a",
+ "\x05""ep""\x1A""a""\x1B""o",
+ "\x07""{""\x16\x18\x1D\x1A""a",
+ "\n""\x1B""e""\x19\x1F""a",
+ "\x08""eco\\""\x1D""`e \\ac`",
+ "\x04""e""\x1B""e""\x17\x1D""`""\x19"" ""\x1A\x1B""}\\",
+ "He@p""\x18\x1F""o""\x14""`""\x19"" ""\x1A\x1B""}\\",
+ "O""\x13""c""\x18\x16\x18""a""\x1D""o""\x14""`""\x19"" ""\x1A\x1B""}\\",
+ "Kpac""\x1D""oe ""\x17""e""\x1B""{e",
+ "Kpac""\x1D""oe ""\x17""e""\x1B""{e",
+ "C""\x18\x1D""ee ""\x17""e""\x1B""{e",
+ "C""\x18\x1D""ee ""\x17""e""\x1B""{e",
+ "\x04""e""\x1B\x1F""oe ""\x17""e""\x1B""{e",
+ "\x04""e""\x1B\x1F""oe ""\x17""e""\x1B""{e",
+ "\x05""e""\x1B""e""\x1D""oe ""\x17""e""\x1B""{e",
+ "Opa""\x1D\x7F""e""\x14""oe ""\x17""e""\x1B""{e",
+ "\x08""yp""\x1E""yp""\x1D""oe ""\x17""e""\x1B""{e",
+ "Pa""\x16""y""\x7F\x1D""oe ""\x17""e""\x1B""{e",
+ "C""\x14""e""\x7F""a~ Bo""\x16""a",
+ "C""\x14""e""\x7F""a~ Bo""\x16""a",
+ "Co""\x1B""e""\x1D""a~ ""\x14""o""\x16""a",
+ "Co""\x1B""e""\x1D""a~ ""\x14""o""\x16""a",
+ "M""\x18\x1D""epa""\x1B""{""\x1D""a~ ""\x14""o""\x16""a",
+ "M""\x18\x1D""epa""\x1B""{""\x1D""a~ ""\x14""o""\x16""a",
+ "Bo""\x1B""]e""\x13\x1D""a~ ""\x14""o""\x16""a",
+ "Bo""\x1B""]e""\x13\x1D""a~ ""\x14""o""\x16""a",
+ "\x08""yc""\x1F""a~ @""\x1B""~""\x15""a",
+ "\x08""yc""\x1F""a~ @""\x1B""~""\x15""a",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "C""\x14\x18\x1F""o""\x1A",
+ "\x08""ep""\x15""a""\x1C""e""\x1D\x1F",
+ "\x08""ep""\x15""a""\x1C""e""\x1D\x1F",
+ "\x08""ep""\x15""a""\x1C""e""\x1D\x1F",
+ "\x08""ep""\x15""a""\x1C""e""\x1D\x1F",
+ "\x08""ep""\x15""a""\x1C""e""\x1D\x1F",
+ "Kpac""\x1D""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "Opa""\x1D\x7F""e""\x14""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "\x04""e""\x1B\x1F""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "\x05""e""\x1B""e""\x1D""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "C""\x18\x1D""e-""\x17""e""\x1B""e""\x1D""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "C""\x18\x1D\x18\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "\x08""yp""\x1E""yp""\x1D""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "T~""\x7F""e""\x1B""`""\x19"" ""\x1A""a""\x1C""e""\x1D""{",
+ "Kopo""\x1B""e""\x14""c""\x1A""a~ ""\x1A""opo""\x1D""a",
+ "Kopo""\x1B""e""\x14""c""\x1A\x18\x19"" c""\x1A\x18\x1E""e""\x1F""p",
+ "\x05""o""\x1B""o""\x1F""o""\x19"" ""\x1A\x1B""}\\",
+ "?"
+};
+
+static const StringListProvider k1ItemNamesDOSOldFloppyRussianProvider = { ARRAYSIZE(k1ItemNamesDOSOldFloppyRussian), k1ItemNamesDOSOldFloppyRussian };
+
+static const char *const k1TakenStringsDOSOldFloppyRussian[2] = {
+ " - ""\x14\x17""~""\x1B",
+ " - ""\x14\x17""~""\x1B"
+};
+
+static const StringListProvider k1TakenStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1TakenStringsDOSOldFloppyRussian), k1TakenStringsDOSOldFloppyRussian };
+
+static const char *const k1PlacedStringsDOSOldFloppyRussian[1] = {
+ " y ""\x1C""e""\x1D""~."
+};
+
+static const StringListProvider k1PlacedStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1PlacedStringsDOSOldFloppyRussian), k1PlacedStringsDOSOldFloppyRussian };
+
+static const char *const k1DroppedStringsDOSOldFloppyRussian[1] = {
+ " - ""\x13""poc""\x18\x1B"
+};
+
+static const StringListProvider k1DroppedStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1DroppedStringsDOSOldFloppyRussian), k1DroppedStringsDOSOldFloppyRussian };
+
+static const char *const k1PutDownStringDOSOldFloppyRussian[1] = {
+ "Ha""\x14""ep""\x1D""o ""\x1B""y\\]e |""\x1F""o ""\x14\x1D""a\\a""\x1B""e ""\x1E""o""\x1B""o""\x7F\x18\x1F""{."
+};
+
+static const StringListProvider k1PutDownStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1PutDownStringDOSOldFloppyRussian), k1PutDownStringDOSOldFloppyRussian };
+
+static const char *const k1WaitAmuletStringDOSOldFloppyRussian[1] = {
+ "Ha""\x14""ep""\x1D""oe ""\x1D""a""\x16""o ""\x1E""o""\x16""o""\x7F\x16""a""\x1F""{, ""\x1E""o""\x1A""a A""\x1C""y""\x1B""e""\x1F"" ""\x14""occ""\x1F""a""\x1D""o""\x14\x18\x1F"" c""\x14""o} c""\x18\x1B""y."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1WaitAmuletStringDOSOldFloppyRussian), k1WaitAmuletStringDOSOldFloppyRussian };
+
+static const char *const k1BlackJewelStringDOSOldFloppyRussian[1] = {
+ "\x10\x1F""o ""\x1A""a""\x1C""e""\x1D""{, ""\x1D""o ""\x1E""o\\e""\x1C""y o""\x1D"" \\ep""\x1D""`""\x19""?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1BlackJewelStringDOSOldFloppyRussian), k1BlackJewelStringDOSOldFloppyRussian };
+
+static const char *const k1HealingTipStringDOSOldFloppyRussian[1] = {
+ "\x10\x1F""o ""\x1C""o""\x7F""e""\x1F"" ""\x1E""p""\x18\x15""o""\x16\x18\x1F""c~, ec""\x1B\x18"" ~ ""\x17""a""\x13""o""\x1B""e}."
+};
+
+static const StringListProvider k1HealingTipStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1HealingTipStringDOSOldFloppyRussian), k1HealingTipStringDOSOldFloppyRussian };
+
+static const char *const k1PoisonGoneStringDOSOldFloppyRussian[2] = {
+ "\x05\x16""opo""\x14""o!",
+ "\x03""e""\x19""c""\x1F\x14\x18""e o""\x1F""pa""\x14""` ""\x1E""pe""\x1A""pa""\x1F\x18\x1B""oc{!"
+};
+
+static const StringListProvider k1PoisonGoneStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1PoisonGoneStringDOSOldFloppyRussian), k1PoisonGoneStringDOSOldFloppyRussian };
+
+static const char *const k1ThePoisonStringsDOSOldFloppyRussian[4] = {
+ "O""\x1F""pa""\x14""a...",
+ "He ""\x1C""o""\x15""y ""\x16""`]a""\x1F""{...",
+ "M""\x1D""e ""\x1D""exopo]o...",
+ "\x10\x1F""a ""\x17\x1C""e~\r~""\x16""o""\x14\x18\x1F""a!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1ThePoisonStringsDOSOldFloppyRussian), k1ThePoisonStringsDOSOldFloppyRussian };
+
+static const char *const k1FluteStringsDOSOldFloppyRussian[2] = {
+ "Not very impressive sounding.",
+ "That last note sure was high!"
+};
+
+static const StringListProvider k1FluteStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1FluteStringsDOSOldFloppyRussian), k1FluteStringsDOSOldFloppyRussian };
+
+static const char *const k1WispJewelStringsDOSOldFloppyRussian[3] = {
+ "I'm not really feeling up to it right now.",
+ "Ha""\x14""ep""\x1D""oe ~ ""\x16""o""\x1B\x7F""e""\x1D"" ""\x1E""o""\x1B""o""\x7F\x18\x1F""{ ",
+ ",c""\x1D""a\\a""\x1B""a"
+};
+
+static const StringListProvider k1WispJewelStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1WispJewelStringsDOSOldFloppyRussian), k1WispJewelStringsDOSOldFloppyRussian };
+
+static const char *const k1MagicJewelStringsDOSOldFloppyRussian[1] = {
+ "C""\x1F""pa""\x1D\x1D""oe \\y""\x14""c""\x1F\x14""o."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1MagicJewelStringsDOSOldFloppyRussian), k1MagicJewelStringsDOSOldFloppyRussian };
+
+static const char *const k1FlaskFullStringDOSOldFloppyRussian[1] = {
+ "\x10\x1F""a @""\x1B""~""\x7F\x1A""a y""\x7F""e ""\x17""a""\x1E""o""\x1B\x1D""e""\x1D""a."
+};
+
+static const StringListProvider k1FlaskFullStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1FlaskFullStringDOSOldFloppyRussian), k1FlaskFullStringDOSOldFloppyRussian };
+
+static const char *const k1FullFlaskStringDOSOldFloppyRussian[4] = {
+ "\n""\x1B""~""\x7F\x1A""a ""\x1F""e""\x1E""ep{ ""\x1E""o""\x1B\x1D""a\red\rc""\x14""e""\x7F""e""\x19"", c""\x14""ep""\x1A""a }^e""\x19"" ""\x14""o""\x16""o""\x19"".",
+ "\n""\x1B""~""\x7F\x1A""a ""\x1F""e""\x1E""ep{ ""\x1E""o""\x1B\x1D""a\red\rco""\x1B""e""\x1D""o""\x19"" ""\x14""o""\x16""o""\x19"".",
+ "\n""\x1B""~""\x7F\x1A""a ""\x1F""e""\x1E""ep{ ""\x1E""o""\x1B\x1D""a\red\r""\x1C\x18\x1D""epa""\x1B""{""\x1D""o""\x19"" ""\x14""o""\x16""o""\x19"".",
+ " o""\x1B""]. ""\x14""o""\x16""o""\x19""."
+};
+
+static const StringListProvider k1FullFlaskStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1FullFlaskStringDOSOldFloppyRussian), k1FullFlaskStringDOSOldFloppyRussian };
+
+static const char *const k1OutroHomeStringDOSOldFloppyRussian[1] = {
+ "\x03""o""\x1C""a"
+};
+
+static const StringListProvider k1OutroHomeStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1OutroHomeStringDOSOldFloppyRussian), k1OutroHomeStringDOSOldFloppyRussian };
+
+static const char *const k1VeryCleverStringDOSOldFloppyRussian[1] = {
+ "Very clever! But your feeble efforts are futile."
+};
+
+static const StringListProvider k1VeryCleverStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1VeryCleverStringDOSOldFloppyRussian), k1VeryCleverStringDOSOldFloppyRussian };
+
+static const char *const k1GUIStringsDOSOldFloppyRussian[28] = {
+ "\x07""e""\x15""e""\x1D\x16""a K""\x18""pa""\x1D\x16\x18\x18",
+ "\x05""a""\x15""py""\x17\x18\x1F""{",
+ "Coxpa""\x1D\x18\x1F""{ ""\x18\x15""py",
+ "\t""\x1E""pa""\x14\x1B""e""\x1D\x18""e",
+ "\x05""a""\x1A""o""\x1D""\\""\x18\x1F""{",
+ "\x08""po""\x16""o""\x1B\x7F\x18\x1F""{",
+ "\t""\x1E""pa""\x14\x1B""e""\x1D\x18""e",
+ "Ka""\x1A""y} ""\x18\x15""py B` xo""\x1F\x18\x1F""e ""\x17""a""\x15""py""\x17\x18\x1F""{?",
+ "B`""\x13""ep""\x18\x1F""e ""\x1E""o""\x17\x18""[""\x18""} coxpa""\x1D""e""\x1D\x18""~:",
+ "< ""\x08""\tCTO >",
+ "O""\x1F\x1C""e""\x1D""a",
+ "B""\x14""e""\x16\x18\x1F""e o""\x1E\x18""ca""\x1D\x18""e coxpa""\x1D""~e""\x1C""o""\x19"" ""\x18\x15""p`:",
+ "Save",
+ "C""\x1E\x18"" c""\x1E""o""\x1A""o""\x19\x1D""o, ""\x01""p|""\x1D\x16""o""\x1D"".",
+ "B` y""\x14""epe""\x1D""`, \\""\x1F""o xo""\x1F\x18\x1F""e ""\x17""a""\x1A""o""\x1D""\\""\x18\x1F""{ ""\x18\x15""py?",
+ "XXX",
+ "XXX",
+ "XXXXXXX",
+ "XXXXXXXXX",
+ "\x02\x1B""a""\x14"".""\x1C""e""\x1D""}",
+ "on",
+ "\x1D""e""\x1F",
+ "\x03""a ",
+ "No",
+ "\x10\x0F\xE0""(""\x18\x0F\xE0""(""\x1D\x0F\xE0""($""\x0F\xE0""()""\x0F\xE0""(1""\x0F\xE0""(9""\x0F\xE0""(@""\x0F\xE0""(E""\x0F\xE0""(""\x03\x14\x18\x7F""e""\x1D\x18""e ",
+ "Te""\x1A""c""\x1F"" ",
+ "My""\x17""`""\x1A""a ",
+ "\x05\x14""y""\x1A\x18"" ",
+};
+
+static const StringListProvider k1GUIStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1GUIStringsDOSOldFloppyRussian), k1GUIStringsDOSOldFloppyRussian };
+
+static const char *const k1NewGameStringDOSOldFloppyRussian[1] = {
+ "< HOBA""\x12"" ""\x06\x02""PA >"
+};
+
+static const StringListProvider k1NewGameStringDOSOldFloppyRussianProvider = { ARRAYSIZE(k1NewGameStringDOSOldFloppyRussian), k1NewGameStringDOSOldFloppyRussian };
+
+static const char *const k1ConfigStringsDOSOldFloppyRussian[9] = {
+ "\x1C\x18\x1D\x18\x1C""y""\x1C",
+ "\x1C""e""\x16\x1B",
+ "\x1D""op""\x1C""a""\x1B",
+ "\x13""`c""\x1F",
+ "\x1C""a""\x1A""c. ",
+ "\x1C\x18\x1D\x18\x1C""y""\x1C",
+ "\x1D""op""\x1C""a""\x1B",
+ "\x13""`c""\x1F",
+ "\x1E""o ""\x1A\x1B\x18\x1A""y "
+};
+
+static const StringListProvider k1ConfigStringsDOSOldFloppyRussianProvider = { ARRAYSIZE(k1ConfigStringsDOSOldFloppyRussian), k1ConfigStringsDOSOldFloppyRussian };
+
diff --git a/devtools/create_kyradat/resources/lok_dos_spanish.h b/devtools/create_kyradat/resources/lok_dos_spanish.h
new file mode 100644
index 0000000000..40e5bbb53e
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_dos_spanish.h
@@ -0,0 +1,333 @@
+static const char *const k1IntroStringsDOSSpanish[53] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Buenas Kallak...",
+ "...""\xAD""Poderoso jefe de la Orden de los M""\xA1""sticos reales!",
+ "\xA8""Te he asustado?",
+ "\xAD""Malcolm!",
+ "Me enter""\x82"" ayer de tu fuga.",
+ "Y te estaba esperando desde hace un rato.",
+ "\xA8""Por qu""\x82"" me iba a dar prisa?",
+ "\xAD""Soy yo el que gobierna este pa""\xA1""s!",
+ "Tu d""\x82""bil maleficio no me atemoriza.",
+ "\xAD""Anda, m""\xA0""tame de una vez!",
+ "Me queda poco poder m""\xA0""gico.",
+ "No te quepa ninguna duda de que vengo a hacerte da""\xA4""o...",
+ "...Ahora eres de piedra...",
+ "...pero he respetado tus ojos.",
+ "No he derramado ni una l""\xA0""grima por Kyrandia...",
+ "...pero no voy a negarte el placer de las tuyas.",
+ "\xAD""Malcolm el Buf""\xA2""n est""\xA0"" en libertad!",
+ "Y es ""\x82""l quien ahora controla la Kyragema...",
+ "...fuente de toda la magia de Kyrandia!",
+ "",
+ "\xAD""C""\xA2""mo te atreves a tropezar conmigo!",
+ "En absoluto, he reservado algo especial para ti...",
+ "\xAD""Un hechizo humor""\xA1""stico!",
+ "Pero te advertir""\x82"" honestamente.",
+ "\xAD""No saltes a ESE ""\xA0""rbol!",
+ "\xAD""No te subas a ESE ""\xA0""rbol ardillita!",
+ "\xAD""Buuu!",
+ "Es requete divertido de este modo...",
+ "...""\xA8""Verdad?",
+ "Ja ja ja...",
+ "\xA8""Verdad que los dedos son una maravilla?",
+ "\xAD""Es estupendo estar vivo!",
+ "\xAD""Brandon!",
+ "\xAD""Abuelo! ""\xAD""Lo hemos conseguido!",
+ "\xAD""No! ""\xAD""TU lo has hecho!",
+ "\xAD""Larga vida al rey Brandon!",
+ "\xAD""Larga vida a los M""\xA1""sticos reales!",
+ "\xAD""Ahora vamos a reconstruir Kyrandia!",
+ "\xAD""Buena idea!",
+ "En mi primera proclamaci""\xA2""n como rey...",
+ "\xAD""Declaro las sandalias como calzado oficial de Kyrandia!",
+ "\xAD""Bien hecho, Brandon!",
+ "La Tierra no sufre m""\xA0""s...",
+ "\xAD""Y tus amigos han regresado!",
+ "Querida Brynn...",
+ "\xAD""Malcolm se ha fugado!",
+ "Pronto vendr""\xA0"" a por m""\xA1"".",
+ "Por favor, ayuda a Brandon...",
+ "",
+ "",
+ ""
+};
+
+static const StringListProvider k1IntroStringsDOSSpanishProvider = { ARRAYSIZE(k1IntroStringsDOSSpanish), k1IntroStringsDOSSpanish };
+
+static const char *const k1ItemNamesDOSSpanish[107] = {
+ "Granate",
+ "Amatista",
+ "Aguamarina",
+ "Diamante",
+ "Esmeralda",
+ "Perla",
+ "Rub""\xA1",
+ "Peridot",
+ "Zafiro",
+ "Opalo",
+ "Topacio",
+ "Onix",
+ "Piedra Solar",
+ "Piedra Lunar",
+ "Piedra Arco Iris",
+ "Piedra Magn""\x82""tica",
+ "Rosa",
+ "Tulip""\xA0""n",
+ "Orqu""\xA1""dea",
+ "Rosa de plata",
+ "Estatua de plata",
+ "Moneda de Plata",
+ "Moneda de oro",
+ "Anillo de oro",
+ "C""\xA0""liz real",
+ "Pi""\xA4""a pi""\xA4""onera",
+ "Bellota",
+ "Nuez",
+ "Fogofrutas brillantes",
+ "Fogofrutas",
+ "Fogofrutas",
+ "Fogofrutas",
+ "Fogofrutas",
+ "Fogofrutas",
+ "Pescado",
+ "Espina de pescado",
+ "Pierna de Cordero",
+ "Hueso",
+ "Manzana",
+ "Coraz""\xA2""n de Manzana",
+ "Ar""\xA0""ndanos",
+ "Champi""\xA4\xA2""n",
+ "Nota",
+ "Canica",
+ "Serrucho",
+ "Cruz de vida",
+ "Pluma",
+ "Huevo",
+ "Hoja",
+ "Tr""\x82""bol",
+ "Estrella Ca""\xA1""da",
+ "Bola de cristal",
+ "L""\xA0""grima",
+ "Espejo",
+ "Trozo de hielo",
+ "Flauta",
+ "Reloj de arena",
+ "Llave de hierro",
+ "Llave de jade",
+ "Llave de obsidiana",
+ "Poci""\xA2""n roja",
+ "Poci""\xA2""n roja",
+ "Poci""\xA2""n azul",
+ "Poci""\xA2""n azul",
+ "Poci""\xA2""n amarilla",
+ "Poci""\xA2""n amarilla",
+ "Poci""\xA2""n verde",
+ "Poci""\xA2""n naranja",
+ "Poci""\xA2""n morada",
+ "Poci""\xA2""n Arco Iris",
+ "Agua fresca",
+ "Agua fresca",
+ "Agua salada",
+ "Agua salada",
+ "Agua mineral",
+ "Agua mineral",
+ "Agua m""\xA0""gica",
+ "Agua m""\xA0""gica",
+ "Frasco vac""\xA1""o",
+ "Frasco vac""\xA1""o",
+ "Pergamino",
+ "Pergamino",
+ "Pergamino",
+ "Pergamino",
+ "Pergamino",
+ "Pergamino",
+ "Pergamino",
+ "Pergamino",
+ "Pergamino",
+ "Pergamino",
+ "Pedazo de pergamino",
+ "Pedazo de pergamino",
+ "Pedazo de pergamino",
+ "Pedazo de pergamino",
+ "Pedazo de pergamino",
+ "Piedra m""\xA0""gica roja",
+ "Piedra m""\xA0""gica naranja",
+ "Piedra m""\xA0""gica amarilla",
+ "Piedra m""\xA0""gica verde",
+ "Piedra m""\xA0""gica turquesa",
+ "Piedra m""\xA0""gica azul",
+ "Piedra m""\xA0""gica morada",
+ "Roca pesada",
+ "Corona real",
+ "Cetro real",
+ "Llave de oro",
+ "Objeto desconocido"
+};
+
+static const StringListProvider k1ItemNamesDOSSpanishProvider = { ARRAYSIZE(k1ItemNamesDOSSpanish), k1ItemNamesDOSSpanish };
+
+static const char *const k1TakenStringsDOSSpanish[2] = {
+ " en mano.",
+ " en mano."
+};
+
+static const StringListProvider k1TakenStringsDOSSpanishProvider = { ARRAYSIZE(k1TakenStringsDOSSpanish), k1TakenStringsDOSSpanish };
+
+static const char *const k1PlacedStringsDOSSpanish[1] = {
+ " en reserva."
+};
+
+static const StringListProvider k1PlacedStringsDOSSpanishProvider = { ARRAYSIZE(k1PlacedStringsDOSSpanish), k1PlacedStringsDOSSpanish };
+
+static const char *const k1DroppedStringsDOSSpanish[1] = {
+ " fuera."
+};
+
+static const StringListProvider k1DroppedStringsDOSSpanishProvider = { ARRAYSIZE(k1DroppedStringsDOSSpanish), k1DroppedStringsDOSSpanish };
+
+static const char *const k1NoDropStringsDOSSpanish[2] = {
+ "No puedes dejar m""\xA0""s objetos aqu""\xA1"".",
+ "No puedes colocar eso ah""\xA1""."
+};
+
+static const StringListProvider k1NoDropStringsDOSSpanishProvider = { ARRAYSIZE(k1NoDropStringsDOSSpanish), k1NoDropStringsDOSSpanish };
+
+static const char *const k1PutDownStringDOSSpanish[1] = {
+ "Mejor ser""\xA0"" que deposite esto antes que nada."
+};
+
+static const StringListProvider k1PutDownStringDOSSpanishProvider = { ARRAYSIZE(k1PutDownStringDOSSpanish), k1PutDownStringDOSSpanish };
+
+static const char *const k1WaitAmuletStringDOSSpanish[1] = {
+ "Supongo que tendr""\x82"" que esperar a que mi amuleto recobre su poder."
+};
+
+static const StringListProvider k1WaitAmuletStringDOSSpanishProvider = { ARRAYSIZE(k1WaitAmuletStringDOSSpanish), k1WaitAmuletStringDOSSpanish };
+
+static const char *const k1BlackJewelStringDOSSpanish[1] = {
+ "Es una joya, pero ""\xA8""por qu""\x82"" es negra?"
+};
+
+static const StringListProvider k1BlackJewelStringDOSSpanishProvider = { ARRAYSIZE(k1BlackJewelStringDOSSpanish), k1BlackJewelStringDOSSpanish };
+
+static const char *const k1HealingTipStringDOSSpanish[1] = {
+ "Oye, esto me ser""\xA0"" ""\xA3""til si me hago da""\xA4""o."
+};
+
+static const StringListProvider k1HealingTipStringDOSSpanishProvider = { ARRAYSIZE(k1HealingTipStringDOSSpanish), k1HealingTipStringDOSSpanish };
+
+static const char *const k1PoisonGoneStringDOSSpanish[2] = {
+ "\xAD""Genial!",
+ "\xAD""Han desaparecido los efectos del veneno!"
+};
+
+static const StringListProvider k1PoisonGoneStringDOSSpanishProvider = { ARRAYSIZE(k1PoisonGoneStringDOSSpanish), k1PoisonGoneStringDOSSpanish };
+
+static const char *const k1ThePoisonStringsDOSSpanish[4] = {
+ "El veneno...",
+ "No puedo respirar...",
+ "No me siento bien...",
+ "\xAD""Esa serpiente debe ser\rvenenosa!"
+};
+
+static const StringListProvider k1ThePoisonStringsDOSSpanishProvider = { ARRAYSIZE(k1ThePoisonStringsDOSSpanish), k1ThePoisonStringsDOSSpanish };
+
+static const char *const k1FluteStringsDOSSpanish[2] = {
+ "No es un sonido muy impresionante que digamos.",
+ "\xAD""Fijo que la ""\xA3""ltima nota era alta!"
+};
+
+static const StringListProvider k1FluteStringsDOSSpanishProvider = { ARRAYSIZE(k1FluteStringsDOSSpanish), k1FluteStringsDOSSpanish };
+
+static const char *const k1WispJewelStringsDOSSpanish[3] = {
+ "No me siento con fuerzas para hacerlo ahora mismo.",
+ "Deber""\xA1""a poner en el suelo mi ",
+ ", lo primero."
+};
+
+static const StringListProvider k1WispJewelStringsDOSSpanishProvider = { ARRAYSIZE(k1WispJewelStringsDOSSpanish), k1WispJewelStringsDOSSpanish };
+
+static const char *const k1MagicJewelStringsDOSSpanish[1] = {
+ "Eso sienta raro."
+};
+
+static const StringListProvider k1MagicJewelStringsDOSSpanishProvider = { ARRAYSIZE(k1MagicJewelStringsDOSSpanish), k1MagicJewelStringsDOSSpanish };
+
+static const char *const k1FlaskFullStringDOSSpanish[1] = {
+ "Este frasco ya est""\xA0"" lleno."
+};
+
+static const StringListProvider k1FlaskFullStringDOSSpanishProvider = { ARRAYSIZE(k1FlaskFullStringDOSSpanish), k1FlaskFullStringDOSSpanish };
+
+static const char *const k1FullFlaskStringDOSSpanish[4] = {
+ "Ahora el frasco est""\xA0"" lleno\rde agua fresca y espumosa.",
+ "Ahora el frasco est""\xA0"" lleno\rde agua salada.",
+ "Ahora el frasco est""\xA0"" lleno\rde agua mineral.",
+ "Agua m""\xA0""gica."
+};
+
+static const StringListProvider k1FullFlaskStringDOSSpanishProvider = { ARRAYSIZE(k1FullFlaskStringDOSSpanish), k1FullFlaskStringDOSSpanish };
+
+static const char *const k1OutroHomeStringDOSSpanish[1] = {
+ "Casa"
+};
+
+static const StringListProvider k1OutroHomeStringDOSSpanishProvider = { ARRAYSIZE(k1OutroHomeStringDOSSpanish), k1OutroHomeStringDOSSpanish };
+
+static const char *const k1VeryCleverStringDOSSpanish[1] = {
+ "\xAD""Muy listo!, pero tus in""\xA3""tiles esfuerzos son en vano."
+};
+
+static const StringListProvider k1VeryCleverStringDOSSpanishProvider = { ARRAYSIZE(k1VeryCleverStringDOSSpanish), k1VeryCleverStringDOSSpanish };
+
+static const char *const k1GUIStringsDOSSpanish[24] = {
+ "The Legend of Kyrandia",
+ "Cargar un juego",
+ "Salvar este juego",
+ "Controles de juego",
+ "Abandonar el juego",
+ "Reanudar el juego",
+ "Controles de juego",
+ "\xA8""Qu""\x82"" juego deseas recargar?",
+ "Seleccionar una posici""\xA2""n para salvar:",
+ "[ RANURA VACIA ]",
+ "Abandonar",
+ "Introduce una descripci""\xA2""n de tu juego salvado.",
+ "Salvar",
+ "Descansa en paz, Brandon.",
+ "\xA8""Est""\xA0""s seguro de que deseas Abandonar el juego?",
+ "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXMen""\xA3"" principal",
+ "activado",
+ "desactivado",
+ "S""\xA1",
+ "No",
+ "0""\x0F""R+:""\x0F""R+@""\x0F""R+G""\x0F""R+N""\x0F""R+Y""\x0F""R+c""\x0F""R+j""\x0F""R+q""\x0F""R+Velocidad al paso",
+ "Velocidad de texto",
+ "La m""\xA3""sica en ",
+ "Los sonidos en "
+};
+
+static const StringListProvider k1GUIStringsDOSSpanishProvider = { ARRAYSIZE(k1GUIStringsDOSSpanish), k1GUIStringsDOSSpanish };
+
+static const char *const k1NewGameStringDOSSpanish[1] = {
+ "[ INICIAR UN JUEGO NUEVO ]"
+};
+
+static const StringListProvider k1NewGameStringDOSSpanishProvider = { ARRAYSIZE(k1NewGameStringDOSSpanish), k1NewGameStringDOSSpanish };
+
+static const char *const k1ConfigStringsDOSSpanish[9] = {
+ "muy lento",
+ "lento",
+ "normal",
+ "r""\xA0""pido",
+ "muy r""\xA0""pido",
+ "muy lento",
+ "normal",
+ "r""\xA0""pido",
+ "pulsable"
+};
+
+static const StringListProvider k1ConfigStringsDOSSpanishProvider = { ARRAYSIZE(k1ConfigStringsDOSSpanish), k1ConfigStringsDOSSpanish };
+
diff --git a/devtools/create_kyradat/resources/lok_fmtowns.h b/devtools/create_kyradat/resources/lok_fmtowns.h
new file mode 100644
index 0000000000..7491f45a67
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_fmtowns.h
@@ -0,0 +1,11637 @@
+static const byte k1KallakWritingSeqFMTowns[2039] = {
+ 0x00, 0x00, 0x01, 0x0E, 0x1A, 0x1B, 0x17, 0x00,
+ 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C,
+ 0x00, 0x19, 0x39, 0x02, 0x00, 0x00, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x95, 0x00, 0x20, 0x09, 0x14,
+ 0x0F, 0x2E, 0x02, 0x00, 0x01, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x10, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x63, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x15, 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x19, 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00,
+ 0x16, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x2F,
+ 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x02, 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x05, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x8A, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x10, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x63, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x15, 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x19, 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00,
+ 0x16, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x30,
+ 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x02, 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x04, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x05, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x88, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x08, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x82, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x09, 0x00, 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0B, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x79, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x76, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x70, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x11, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x65, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x13, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x14, 0x00, 0x00, 0x10, 0x05, 0x00, 0x63, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x15, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x65, 0x00, 0x1F, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x16, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x17, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x70, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x18, 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00,
+ 0x17, 0x07, 0x06, 0x00, 0x02, 0x00, 0x19, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00, 0x16, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x17, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x88, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x93, 0x00, 0x1F, 0x07,
+ 0x06, 0x00, 0x1C, 0x06, 0x3C, 0x00, 0x1B, 0x0F,
+ 0x31, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x95, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x10, 0x05, 0x00, 0x95,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x01,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x05,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x06,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x07, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x08, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0D,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x6A, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x06, 0x3C, 0x00,
+ 0x02, 0x00, 0x1E, 0x00, 0x00, 0x10, 0x08, 0x12,
+ 0x06, 0x1E, 0x00, 0x0A, 0x01, 0x02, 0x00, 0x1F,
+ 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02, 0x00,
+ 0x20, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02,
+ 0x00, 0x21, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00,
+ 0x02, 0x00, 0x22, 0x00, 0x00, 0x10, 0x07, 0x0A,
+ 0x00, 0x0B, 0x01, 0x02, 0x00, 0x18, 0x1F, 0x06,
+ 0x0A, 0x00, 0x02, 0x00, 0x23, 0x00, 0x00, 0x10,
+ 0x07, 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x24,
+ 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x02, 0x00,
+ 0x25, 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x18,
+ 0x1F, 0x02, 0x00, 0x26, 0x00, 0x00, 0x10, 0x07,
+ 0x14, 0x00, 0x02, 0x00, 0x27, 0x00, 0x00, 0x10,
+ 0x07, 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x28,
+ 0x00, 0x00, 0x10, 0x08, 0x06, 0x3C, 0x00, 0x18,
+ 0x1E, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18,
+ 0x1E, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x13, 0x1C, 0x19, 0x01, 0x0E,
+ 0x06, 0x3C, 0x00, 0x13, 0x01, 0x00, 0x1D
+};
+
+static const ByteProvider k1KallakWritingSeqFMTownsProvider = { ARRAYSIZE(k1KallakWritingSeqFMTowns), k1KallakWritingSeqFMTowns };
+
+static const byte k1MalcolmTreeSeqFMTowns[536] = {
+ 0x00, 0x01, 0x00, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C, 0x01,
+ 0x0D, 0x01, 0x09, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x10, 0x19, 0x38, 0x09, 0x18, 0x1E, 0x14, 0x18,
+ 0x1F, 0x0A, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x00, 0x1F, 0x00, 0x18, 0x19, 0x0A, 0x01,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x01, 0x0F,
+ 0x00, 0x18, 0x26, 0x10, 0x1F, 0x50, 0x00, 0x2D,
+ 0x05, 0x0A, 0x02, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x02, 0x10, 0x00, 0x11, 0x18, 0x1F, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x24,
+ 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18,
+ 0x1E, 0x0A, 0x03, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x03, 0x15, 0x00, 0x10, 0x16, 0x50, 0x00,
+ 0x2D, 0x05, 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x18, 0x1E, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18,
+ 0x1A, 0x18, 0x1E, 0x0A, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x05, 0x09, 0x00, 0x11, 0x0A,
+ 0x06, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x06,
+ 0x14, 0x00, 0x18, 0x1A, 0x18, 0x1F, 0x10, 0x17,
+ 0x50, 0x00, 0x2D, 0x05, 0x06, 0x3C, 0x00, 0x0A,
+ 0x07, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x07,
+ 0x06, 0x00, 0x18, 0x1E, 0x06, 0x1E, 0x00, 0x10,
+ 0x18, 0x50, 0x00, 0x2D, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0A, 0x08, 0x04, 0x01,
+ 0x06, 0x06, 0x00, 0x04, 0x01, 0x06, 0x06, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x08, 0x01, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x06, 0x78, 0x00, 0x0A, 0x09,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x09, 0x04,
+ 0x00, 0x18, 0x1B, 0x0A, 0x0A, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x0A, 0x09, 0x00, 0x06, 0x14,
+ 0x00, 0x10, 0x19, 0x50, 0x00, 0x2D, 0x05, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x0A, 0x0B, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x04, 0x01, 0x06, 0x06, 0x00, 0x04, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x0B, 0x01, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x10,
+ 0x1A, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x0C, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x0C, 0x12, 0x00,
+ 0x03, 0x01, 0x01, 0x01, 0x11, 0x15, 0x00, 0x02,
+ 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00,
+ 0x10, 0x10, 0x1C, 0x50, 0x00, 0x2D, 0x05, 0x06,
+ 0x3C, 0x00, 0x03, 0x02, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x11, 0x18, 0x1C, 0x0A, 0x0F, 0x03, 0x02,
+ 0x06, 0x06, 0x00, 0x0B, 0x0F, 0x0D, 0x00, 0x10,
+ 0x1D, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x10, 0x03,
+ 0x02, 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x03, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02,
+ 0x06, 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B, 0x10, 0x02,
+ 0x00, 0x10, 0x1E, 0x50, 0x00, 0x2D, 0x05, 0x0A,
+ 0x11, 0x03, 0x02, 0x06, 0x06, 0x00, 0x03, 0x02,
+ 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02, 0x06,
+ 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B,
+ 0x11, 0x02, 0x00, 0x06, 0xB4, 0x00, 0x13, 0x19,
+ 0x01, 0x0E, 0x01, 0x01, 0x13, 0x01, 0x02, 0x1D
+};
+
+static const ByteProvider k1MalcolmTreeSeqFMTownsProvider = { ARRAYSIZE(k1MalcolmTreeSeqFMTowns), k1MalcolmTreeSeqFMTowns };
+
+static const byte k1WestwoodLogoSeqFMTowns[75] = {
+ 0x00, 0x03, 0x01, 0x1A, 0x02, 0x03, 0x00, 0x00,
+ 0x00, 0x00, 0x16, 0x01, 0x06, 0x06, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x14, 0x0A, 0x00, 0x03, 0x03,
+ 0x16, 0x01, 0x0B, 0x00, 0x08, 0x00, 0x06, 0x3C,
+ 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03, 0x03, 0x16,
+ 0x01, 0x0B, 0x01, 0x0B, 0x00, 0x06, 0x78, 0x00,
+ 0x18, 0x14, 0x02, 0x03, 0x0A, 0x00, 0x00, 0x00,
+ 0x16, 0x01, 0x06, 0x06, 0x00, 0x0A, 0x02, 0x04,
+ 0x03, 0x16, 0x01, 0x0B, 0x02, 0x09, 0x00, 0x13,
+ 0x01, 0x03, 0x1D
+};
+
+static const ByteProvider k1WestwoodLogoSeqFMTownsProvider = { ARRAYSIZE(k1WestwoodLogoSeqFMTowns), k1WestwoodLogoSeqFMTowns };
+
+static const byte k1KyrandiaLogoSeqFMTowns[92] = {
+ 0x15, 0x00, 0x02, 0x00, 0x06, 0x01, 0x1A, 0x02,
+ 0x06, 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06,
+ 0x06, 0x00, 0x18, 0x14, 0x16, 0x04, 0x0A, 0x00,
+ 0x03, 0x06, 0x16, 0x00, 0x0B, 0x00, 0x0B, 0x00,
+ 0x06, 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03,
+ 0x06, 0x16, 0x00, 0x0B, 0x01, 0x0F, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x02, 0x04, 0x06,
+ 0x16, 0x00, 0x0B, 0x02, 0x0F, 0x00, 0x02, 0x06,
+ 0x0D, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06, 0x06,
+ 0x00, 0x06, 0x78, 0x00, 0x18, 0x14, 0x0A, 0x02,
+ 0x04, 0x06, 0x16, 0x00, 0x0B, 0x02, 0x0C, 0x00,
+ 0x13, 0x01, 0x06, 0x1D
+};
+
+static const ByteProvider k1KyrandiaLogoSeqFMTownsProvider = { ARRAYSIZE(k1KyrandiaLogoSeqFMTowns), k1KyrandiaLogoSeqFMTowns };
+
+static const byte k1KallakMalcolmSeqFMTowns[621] = {
+ 0x00, 0x04, 0x01, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C, 0x03,
+ 0x0D, 0x00, 0x17, 0x00, 0x00, 0x88, 0x3F, 0x01,
+ 0xC7, 0x0C, 0x02, 0x19, 0x00, 0x02, 0x04, 0x00,
+ 0x10, 0x00, 0x3A, 0x09, 0x19, 0x00, 0x19, 0x3A,
+ 0x14, 0x18, 0x23, 0x0A, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x00, 0x22, 0x00, 0x10, 0x02,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x01, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x01, 0x07, 0x00, 0x06,
+ 0x3C, 0x00, 0x10, 0x03, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x02, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x02, 0x17, 0x00, 0x06, 0x3C, 0x00, 0x10, 0x04,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x03, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x03, 0x0A, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x10, 0x05, 0xF0, 0x00, 0x3A, 0x0F, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x06, 0x3C, 0x00, 0x10, 0x06,
+ 0xF0, 0x00, 0x3A, 0x0F, 0x0A, 0x04, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x04, 0x12, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x06, 0x78,
+ 0x00, 0x10, 0x07, 0xF0, 0x00, 0x3A, 0x0F, 0x0A,
+ 0x05, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x05,
+ 0x11, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x10,
+ 0x08, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x06, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x06, 0x07, 0x00,
+ 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x10, 0x09, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x07, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x07, 0x0A, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x10, 0x0A, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x08, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x08, 0x10, 0x00, 0x06, 0x3C, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x0B, 0xF0, 0x00,
+ 0x3A, 0x0F, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x10, 0x0C, 0xF0, 0x00, 0x3A, 0x0F,
+ 0x0A, 0x09, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x09, 0x0E, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x0D, 0x50, 0x00,
+ 0x3A, 0x05, 0x0A, 0x0A, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x0A, 0x0E, 0x00, 0x06, 0x3C, 0x00,
+ 0x0A, 0x0B, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x0B, 0x02, 0x00, 0x18, 0x20, 0x0A, 0x0C, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0C, 0x06, 0x00,
+ 0x18, 0x21, 0x0A, 0x0D, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x0D, 0x0C, 0x00, 0x18, 0x22, 0x0A,
+ 0x0E, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0E,
+ 0x0B, 0x00, 0x10, 0x0E, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x0F, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x0F, 0x09, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x10, 0x0F, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x10, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x10, 0x09, 0x00, 0x06, 0x3C, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x10, 0x50, 0x00,
+ 0x3A, 0x05, 0x0A, 0x11, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x11, 0x0F, 0x00, 0x06, 0x3C, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x10, 0x11, 0x50,
+ 0x00, 0x3A, 0x05, 0x0A, 0x12, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x12, 0x14, 0x00, 0x06, 0x3C,
+ 0x00, 0x0A, 0x13, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x13, 0x06, 0x00, 0x18, 0x23, 0x0A, 0x13,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x13, 0x07,
+ 0x00, 0x11, 0x06, 0x3C, 0x00, 0x13, 0x19, 0x01,
+ 0x0E, 0x13, 0x01, 0x04, 0x1D
+};
+
+static const ByteProvider k1KallakMalcolmSeqFMTownsProvider = { ARRAYSIZE(k1KallakMalcolmSeqFMTowns), k1KallakMalcolmSeqFMTowns };
+
+static const byte k1ForestSeqFMTowns[406] = {
+ 0x00, 0x05, 0x01, 0x00, 0x07, 0x01, 0x1A, 0x02,
+ 0x07, 0x00, 0x00, 0x00, 0x08, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x0A, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x0B, 0x00, 0x41, 0x00,
+ 0x18, 0x16, 0x03, 0x07, 0x02, 0x05, 0x01, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x02, 0x05, 0x03, 0x98, 0x00,
+ 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x02, 0x05, 0x01, 0x98, 0x00, 0x38,
+ 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x00, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0A, 0x05,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x05, 0x0E, 0x00, 0x18, 0x16, 0x03, 0x07, 0x02,
+ 0x05, 0x01, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x03, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x01,
+ 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x04, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x05, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x06, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09,
+ 0x00, 0x18, 0x25, 0x0A, 0x00, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x0A, 0x06, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B, 0x06, 0x0E,
+ 0x00, 0x18, 0x17, 0x0A, 0x01, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x01, 0x0D, 0x00, 0x18, 0x25, 0x0A, 0x07,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x07, 0x0E, 0x00, 0x18, 0x18, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x03, 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x06, 0x12, 0x00, 0x18,
+ 0x25, 0x0A, 0x02, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0B, 0x02,
+ 0x07, 0x00, 0x0A, 0x03, 0x03, 0x07, 0x16, 0x02,
+ 0x06, 0x09, 0x00, 0x0B, 0x03, 0x0F, 0x00, 0x13,
+ 0x13, 0x01, 0x07, 0x01, 0x05, 0x1D
+};
+
+static const ByteProvider k1ForestSeqFMTownsProvider = { ARRAYSIZE(k1ForestSeqFMTowns), k1ForestSeqFMTowns };
+
+static const char *const k1IntroCPSStringsFMTowns[2] = {
+ "gemcut.cps",
+ "tree.cps"
+};
+
+static const StringListProvider k1IntroCPSStringsFMTownsProvider = { ARRAYSIZE(k1IntroCPSStringsFMTowns), k1IntroCPSStringsFMTowns };
+
+static const char *const k1IntroCOLStringsFMTowns[4] = {
+ "kallak.col",
+ "tree_exp.col",
+ "ww.col",
+ "mal-kal.col"
+};
+
+static const StringListProvider k1IntroCOLStringsFMTownsProvider = { ARRAYSIZE(k1IntroCOLStringsFMTowns), k1IntroCOLStringsFMTowns };
+
+static const char *const k1IntroWSAStringsFMTowns[11] = {
+ "kallak.wsa",
+ "tree1.wsa",
+ "tree2.wsa",
+ "westwood.wsa",
+ "mal-kal.wsa",
+ "destruct.wsa",
+ "kyrandia.wsa",
+ "shore.wsa",
+ "reunion.wsa",
+ "reuniont.wsa",
+ "latern.wsa"
+};
+
+static const StringListProvider k1IntroWSAStringsFMTownsProvider = { ARRAYSIZE(k1IntroWSAStringsFMTowns), k1IntroWSAStringsFMTowns };
+
+static const Room k1RoomListFMTowns[246] = {
+ { 30, 0xFFFF, 0xFFFF, 0x0001, 0xFFFF },
+ { 71, 0xFFFF, 0xFFFF, 0x0005, 0xFFFF },
+ { 44, 0xFFFF, 0x0003, 0xFFFF, 0xFFFF },
+ { 72, 0xFFFF, 0xFFFF, 0x000E, 0xFFFF },
+ { 48, 0xFFFF, 0x0005, 0xFFFF, 0x000E },
+ { 74, 0xFFFF, 0x000A, 0xFFFF, 0x0004 },
+ { 46, 0xFFFF, 0x000F, 0xFFFF, 0x000B },
+ { 75, 0xFFFF, 0x0009, 0xFFFF, 0x0018 },
+ { 13, 0xFFFF, 0x000C, 0xFFFF, 0x000A },
+ { 5, 0x000D, 0xFFFF, 0xFFFF, 0x0007 },
+ { 84, 0xFFFF, 0x0008, 0xFFFF, 0x0005 },
+ { 37, 0xFFFF, 0x0006, 0x000C, 0x0010 },
+ { 51, 0x000B, 0xFFFF, 0x000D, 0x0008 },
+ { 23, 0x000C, 0xFFFF, 0x0009, 0xFFFF },
+ { 25, 0x0003, 0x0004, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0x0006 },
+ { 86, 0xFFFF, 0x000B, 0xFFFF, 0xFFFF },
+ { 84, 0xFFFF, 0x0022, 0x0017, 0x0016 },
+ { 51, 0x0020, 0x0014, 0x0024, 0x0015 },
+ { 85, 0x0014, 0x0019, 0xFFFF, 0x0024 },
+ { 33, 0x001C, 0xFFFF, 0x0013, 0x0012 },
+ { 31, 0x0022, 0x0012, 0xFFFF, 0x0017 },
+ { 25, 0x001F, 0x0011, 0xFFFF, 0xFFFF },
+ { 25, 0x0011, 0x0015, 0xFFFF, 0xFFFF },
+ { 2, 0xFFFF, 0x0007, 0xFFFF, 0x001A },
+ { 82, 0xFFFF, 0x006D, 0xFFFF, 0x0013 },
+ { 77, 0xFFFF, 0x0018, 0x0021, 0xFFFF },
+ { 15, 0xFFFF, 0x001A, 0xFFFF, 0xFFFF },
+ { 16, 0xFFFF, 0xFFFF, 0x0014, 0x0020 },
+ { 19, 0xFFFF, 0x0021, 0xFFFF, 0x001F },
+ { 12, 0xFFFF, 0xFFFF, 0x0020, 0x0021 },
+ { 7, 0x0023, 0x001D, 0x0016, 0xFFFF },
+ { 20, 0x001E, 0x001C, 0x0012, 0x0022 },
+ { 17, 0x001A, 0x001E, 0x0022, 0x001D },
+ { 22, 0x0021, 0x0020, 0x0015, 0x0011 },
+ { 24, 0xFFFF, 0xFFFF, 0x001F, 0xFFFF },
+ { 32, 0x0012, 0x0013, 0xFFFF, 0xFFFF },
+ { 87, 0xFFFF, 0x0026, 0xFFFF, 0xFFFF },
+ { 8, 0xFFFF, 0x0027, 0xFFFF, 0x0025 },
+ { 88, 0xFFFF, 0x0035, 0x0037, 0x0026 },
+ { 35, 0xFFFF, 0x0036, 0x0038, 0xFFFF },
+ { 47, 0xFFFF, 0xFFFF, 0x003B, 0xFFFF },
+ { 28, 0x0035, 0x002B, 0x002F, 0x0037 },
+ { 36, 0xFFFF, 0x002C, 0xFFFF, 0x002A },
+ { 78, 0xFFFF, 0xFFFF, 0xFFFF, 0x002B },
+ { 10, 0xFFFF, 0xFFFF, 0xFFFF, 0x002C },
+ { 51, 0x0037, 0x002F, 0x0040, 0x003C },
+ { 38, 0x002A, 0x003D, 0x0041, 0x002E },
+ { 81, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 41, 0xFFFF, 0xFFFF, 0x0069, 0xFFFF },
+ { 50, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 49, 0xFFFF, 0xFFFF, 0x0054, 0xFFFF },
+ { 105, 0xFFFF, 0xFFFF, 0x002A, 0x0027 },
+ { 105, 0xFFFF, 0xFFFF, 0x0039, 0x0028 },
+ { 37, 0x0027, 0x002A, 0x002E, 0x0049 },
+ { 34, 0x0028, 0x0039, 0xFFFF, 0xFFFF },
+ { 51, 0x0036, 0x003A, 0xFFFF, 0x0038 },
+ { 84, 0xFFFF, 0x003B, 0xFFFF, 0x0039 },
+ { 1, 0x0029, 0xFFFF, 0x003E, 0x003A },
+ { 37, 0x0049, 0x002E, 0x003F, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0x002F },
+ { 34, 0x003B, 0x003F, 0xFFFF, 0xFFFF },
+ { 85, 0x003C, 0x0040, 0xFFFF, 0x003E },
+ { 106, 0x002E, 0x0041, 0xFFFF, 0x003F },
+ { 33, 0x002F, 0xFFFF, 0xFFFF, 0x0040 },
+ { 60, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 3, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 26, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 0, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 25, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 23, 0xFFFF, 0x0037, 0x003C, 0xFFFF },
+ { 6, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 51, 0x0063, 0x0067, 0x006B, 0x0066 },
+ { 66, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 67, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 62, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 65, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0x0056, 0x005A, 0x005E, 0xFFFF },
+ { 6, 0xFFFF, 0x0052, 0x0056, 0xFFFF },
+ { 4, 0xFFFF, 0x0053, 0x0057, 0x0051 },
+ { 3, 0xFFFF, 0x0054, 0xFFFF, 0x0052 },
+ { 37, 0x0034, 0x0055, 0x0058, 0x0053 },
+ { 11, 0xFFFF, 0xFFFF, 0x0059, 0x0054 },
+ { 37, 0x0051, 0x0057, 0x0050, 0xFFFF },
+ { 51, 0x0052, 0xFFFF, 0x005A, 0x0056 },
+ { 51, 0x0054, 0x0059, 0x005C, 0xFFFF },
+ { 1, 0x0055, 0xFFFF, 0x005D, 0x0058 },
+ { 106, 0x0057, 0x005B, 0xFFFF, 0x0050 },
+ { 85, 0xFFFF, 0x005C, 0xFFFF, 0x005A },
+ { 37, 0x0058, 0x005D, 0x005F, 0x005B },
+ { 33, 0x0059, 0xFFFF, 0xFFFF, 0x005C },
+ { 51, 0x0050, 0xFFFF, 0x0061, 0xFFFF },
+ { 51, 0x005C, 0xFFFF, 0x0064, 0xFFFF },
+ { 37, 0xFFFF, 0x0061, 0x0065, 0xFFFF },
+ { 51, 0x005E, 0x0062, 0xFFFF, 0x0060 },
+ { 84, 0xFFFF, 0x0063, 0x0066, 0x0061 },
+ { 84, 0xFFFF, 0x0064, 0x004B, 0x0062 },
+ { 33, 0x005F, 0xFFFF, 0x0067, 0x0063 },
+ { 51, 0x0060, 0xFFFF, 0x0068, 0xFFFF },
+ { 37, 0x0062, 0x004B, 0x006A, 0xFFFF },
+ { 1, 0x0064, 0xFFFF, 0x006C, 0x004B },
+ { 34, 0x0065, 0x0069, 0xFFFF, 0xFFFF },
+ { 51, 0x0031, 0x006A, 0xFFFF, 0x0068 },
+ { 85, 0x0066, 0x006B, 0xFFFF, 0x0069 },
+ { 106, 0x004B, 0x006C, 0xFFFF, 0x006A },
+ { 33, 0x0067, 0xFFFF, 0xFFFF, 0x006B },
+ { 55, 0x00C4, 0x00C5, 0xFFFF, 0x0019 },
+ { 52, 0xFFFF, 0x00C1, 0xFFFF, 0x0096 },
+ { 64, 0xFFFF, 0x00BF, 0xFFFF, 0x008C },
+ { 57, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 54, 0x00AF, 0xFFFF, 0x00B7, 0x00AC },
+ { 53, 0x0078, 0xFFFF, 0x0079, 0xFFFF },
+ { 29, 0xFFFF, 0x00BB, 0xFFFF, 0x00C5 },
+ { 69, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 76, 0x00C6, 0xFFFF, 0xFFFF, 0x00B1 },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x0025, 0x0072, 0xFFFF },
+ { 58, 0x0072, 0x007B, 0x00BB, 0xFFFF },
+ { 58, 0xFFFF, 0x007F, 0x007B, 0xFFFF },
+ { 59, 0x007A, 0xFFFF, 0x007C, 0x0079 },
+ { 58, 0x007B, 0x0081, 0x00BC, 0xFFFF },
+ { 58, 0x00BC, 0x0083, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x0085, 0x007F, 0xFFFF },
+ { 59, 0x007E, 0x0086, 0x0080, 0x007A },
+ { 58, 0x007F, 0x00BD, 0x0081, 0xFFFF },
+ { 59, 0x0080, 0x0087, 0x0082, 0x007C },
+ { 58, 0x0081, 0xFFFF, 0x0083, 0x00BC },
+ { 59, 0x0082, 0x0089, 0x0084, 0x007D },
+ { 58, 0x0083, 0x008A, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x008B, 0x0086, 0x007E },
+ { 58, 0x0085, 0x008C, 0x00BD, 0x007F },
+ { 58, 0x00BD, 0x008E, 0x0088, 0x0081 },
+ { 59, 0x0087, 0xFFFF, 0x0089, 0xFFFF },
+ { 58, 0x0088, 0x0090, 0x008A, 0x0083 },
+ { 59, 0x0089, 0x0091, 0xFFFF, 0x0084 },
+ { 58, 0xFFFF, 0x0092, 0x008C, 0x0085 },
+ { 59, 0x008B, 0x006F, 0x008D, 0x0086 },
+ { 58, 0x008C, 0x0093, 0x008E, 0x00BD },
+ { 59, 0x008D, 0xFFFF, 0xFFFF, 0x0087 },
+ { 58, 0xFFFF, 0x00BE, 0x0090, 0xFFFF },
+ { 59, 0x008F, 0x0095, 0x0091, 0x0089 },
+ { 58, 0x0090, 0x0096, 0xFFFF, 0x008A },
+ { 59, 0xFFFF, 0x0098, 0xFFFF, 0x008B },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0x008D },
+ { 58, 0xFFFF, 0x009A, 0x00BE, 0xFFFF },
+ { 58, 0x00BE, 0xFFFF, 0x0096, 0x0090 },
+ { 59, 0x0095, 0x006E, 0x0097, 0x0091 },
+ { 58, 0x0096, 0x009D, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x009E, 0x00BF, 0x0092 },
+ { 58, 0x00BF, 0x00A0, 0x009A, 0xFFFF },
+ { 59, 0x0099, 0xFFFF, 0x009B, 0x0094 },
+ { 58, 0x009A, 0xFFFF, 0x009C, 0xFFFF },
+ { 59, 0x009B, 0x00A2, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x00A3, 0xFFFF, 0x0097 },
+ { 59, 0xFFFF, 0xFFFF, 0x009F, 0x0098 },
+ { 58, 0x009E, 0x00A4, 0x00A0, 0x00BF },
+ { 59, 0x009F, 0x00A5, 0xFFFF, 0x0099 },
+ { 58, 0xFFFF, 0x00A6, 0x00C0, 0xFFFF },
+ { 58, 0x00C0, 0x00A8, 0xFFFF, 0x009C },
+ { 58, 0x00C1, 0xFFFF, 0xFFFF, 0x009D },
+ { 59, 0xFFFF, 0x00AA, 0x00A5, 0x009F },
+ { 58, 0x00A4, 0x00AB, 0x00A6, 0x00A0 },
+ { 59, 0x00A5, 0x00AC, 0x00A7, 0x00A1 },
+ { 58, 0x00A6, 0xFFFF, 0xFFFF, 0x00C0 },
+ { 59, 0xFFFF, 0x00AD, 0x00A9, 0x00A2 },
+ { 58, 0x00A8, 0x00AE, 0xFFFF, 0x00C1 },
+ { 58, 0xFFFF, 0xFFFF, 0x00AB, 0x00A4 },
+ { 59, 0x00AA, 0x00AF, 0x00AC, 0x00A5 },
+ { 58, 0x00AB, 0x0071, 0x00C2, 0x00A6 },
+ { 58, 0xFFFF, 0x00B0, 0x00AE, 0x00A8 },
+ { 59, 0x00AD, 0xFFFF, 0xFFFF, 0x00A9 },
+ { 58, 0xFFFF, 0x00C3, 0x0071, 0x00AB },
+ { 59, 0xFFFF, 0xFFFF, 0x00B1, 0x00AD },
+ { 58, 0x00B0, 0x0075, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0x00C3, 0xFFFF, 0x00B4, 0xFFFF },
+ { 59, 0x00B3, 0x00BA, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0x0071, 0xFFFF, 0xFFFF, 0x00C2 },
+ { 58, 0xFFFF, 0xFFFF, 0x00B9, 0xFFFF },
+ { 59, 0x00B8, 0xFFFF, 0xFFFF, 0x00C3 },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0x00B4 },
+ { 59, 0x0079, 0xFFFF, 0xFFFF, 0x0073 },
+ { 59, 0x007C, 0x0082, 0x007D, 0xFFFF },
+ { 59, 0x0086, 0x008D, 0x0087, 0x0080 },
+ { 59, 0x0094, 0xFFFF, 0x0095, 0x008F },
+ { 59, 0x0098, 0x009F, 0x0099, 0x006F },
+ { 59, 0x00A1, 0x00A7, 0x00A2, 0xFFFF },
+ { 59, 0xFFFF, 0x00A9, 0x00A3, 0x006E },
+ { 59, 0x00AC, 0x00B7, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x00B9, 0x00B3, 0x00AF },
+ { 59, 0xFFFF, 0xFFFF, 0x006D, 0xFFFF },
+ { 58, 0xFFFF, 0x0073, 0xFFFF, 0x006D },
+ { 59, 0xFFFF, 0xFFFF, 0x0075, 0xFFFF },
+ { 94, 0xFFFF, 0x00C8, 0xFFFF, 0xFFFF },
+ { 43, 0x00C9, 0x00CB, 0x00CA, 0x00C7 },
+ { 51, 0xFFFF, 0xFFFF, 0x00C8, 0xFFFF },
+ { 37, 0x00C8, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 79, 0xFFFF, 0xFFFF, 0xFFFF, 0x00C8 },
+ { 80, 0xFFFF, 0xFFFF, 0x00CB, 0x00CD },
+ { 97, 0x00E3, 0x00D4, 0x00CC, 0x00D3 },
+ { 103, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 100, 0xFFFF, 0x00CE, 0x00D5, 0xFFFF },
+ { 98, 0xFFFF, 0xFFFF, 0xFFFF, 0x00D7 },
+ { 101, 0xFFFF, 0x00D2, 0x00CE, 0xFFFF },
+ { 99, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 93, 0x00D5, 0x00CD, 0xFFFF, 0xFFFF },
+ { 93, 0x00D6, 0xFFFF, 0xFFFF, 0x00CD },
+ { 93, 0x00CF, 0x00CE, 0x00D3, 0xFFFF },
+ { 93, 0x00D7, 0xFFFF, 0x00D4, 0x00CE },
+ { 93, 0xFFFF, 0x00D0, 0x00D6, 0x00CE },
+ { 93, 0x00DA, 0x00E3, 0xFFFF, 0xFFFF },
+ { 93, 0x00DB, 0xFFFF, 0xFFFF, 0x00E3 },
+ { 93, 0xFFFF, 0x00E4, 0x00D8, 0x00E2 },
+ { 93, 0xFFFF, 0x00E1, 0x00D9, 0x00E4 },
+ { 93, 0xFFFF, 0x00E4, 0xFFFF, 0x00DF },
+ { 93, 0xFFFF, 0x00E0, 0xFFFF, 0x00E4 },
+ { 93, 0xFFFF, 0xFFFF, 0x00E4, 0xFFFF },
+ { 91, 0xFFFF, 0x00DC, 0xFFFF, 0xFFFF },
+ { 90, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DD },
+ { 92, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DB },
+ { 95, 0xFFFF, 0x00DA, 0xFFFF, 0xFFFF },
+ { 96, 0xFFFF, 0x00D9, 0x00CD, 0x00D8 },
+ { 89, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00E6, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00EA, 0x00E8, 0x00E5 },
+ { 102, 0xFFFF, 0x00E8, 0x00EB, 0xFFFF },
+ { 102, 0x00E6, 0xFFFF, 0xFFFF, 0x00E7 },
+ { 102, 0xFFFF, 0xFFFF, 0x00ED, 0xFFFF },
+ { 102, 0xFFFF, 0xFFFF, 0xFFFF, 0x00E6 },
+ { 102, 0x00E7, 0x00EC, 0x00EF, 0xFFFF },
+ { 102, 0xFFFF, 0x00ED, 0x00F0, 0x00EB },
+ { 102, 0x00E9, 0x00EE, 0x00F1, 0x00EC },
+ { 102, 0xFFFF, 0xFFFF, 0x00F2, 0x00ED },
+ { 102, 0x00EB, 0x00F0, 0xFFFF, 0xFFFF },
+ { 102, 0x00EC, 0x00F1, 0x00F3, 0x00EF },
+ { 102, 0x00ED, 0xFFFF, 0x00F4, 0x00F0 },
+ { 102, 0x00EE, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0x00F0, 0x00F4, 0xFFFF, 0xFFFF },
+ { 102, 0x00F1, 0x00F5, 0xFFFF, 0x00F3 },
+ { 102, 0xFFFF, 0xFFFF, 0x00CF, 0x00F4 }
+};
+
+static const RoomProvider k1RoomListFMTownsProvider = { ARRAYSIZE(k1RoomListFMTowns), k1RoomListFMTowns };
+
+static const char *const k1RoomFilenamesFMTowns[107] = {
+ "CLIFFB",
+ "XEDGEB",
+ "CAVEB",
+ "NCLIFF",
+ "NCLIFFB",
+ "CAVE",
+ "NWCLIFF",
+ "OAKS",
+ "PLATEAU",
+ "POTHUT",
+ "POTION",
+ "NWCLIFB",
+ "SONG",
+ "SORROW",
+ "SPELHUT",
+ "SPELL",
+ "SPRING",
+ "SQUARE",
+ "STUMP",
+ "TEMPLE",
+ "WELL",
+ "WILLOW",
+ "WISE",
+ "XEDGE",
+ "RUBY",
+ "ZROCK",
+ "ZROCKB",
+ "FORESTD",
+ "FOUNTN",
+ "GATECV",
+ "GEMCUT",
+ "CLIFF",
+ "DEAD",
+ "EDGE",
+ "EDGEB",
+ "FALLS",
+ "FORESTC",
+ "FORESTB",
+ "GLADE",
+ "GEMHUT",
+ "ALGAE",
+ "MIX",
+ "BRIDGE",
+ "GRAVE",
+ "HEALER",
+ "HEALHUT",
+ "ALTAR",
+ "BURN",
+ "SICKWIL",
+ "LAGOON",
+ "MAPLE",
+ "FORESTA",
+ "ARCH",
+ "CHASM",
+ "EMCAV",
+ "ENTER",
+ "FLOWERS",
+ "GEMSLOT",
+ "GEN_CAV",
+ "GENCAVB",
+ "GOLDEN",
+ "GOLDENB",
+ "ICE",
+ "MARKET",
+ "MOONCAV",
+ "MSHCAV",
+ "POOL",
+ "SEASONS",
+ "SHRINE",
+ "TREECAV",
+ "EXTGEM",
+ "GEM",
+ "EXTHEAL",
+ "BASE",
+ "TRUNK",
+ "BROKEN",
+ "LAVA",
+ "EXTSPEL",
+ "EXTPOT",
+ "CASTLE",
+ "CGATE",
+ "LEPHOLE",
+ "DRAGON",
+ "XEDGEC",
+ "FNORTH",
+ "FSOUTH",
+ "FGOWEST",
+ "PLTCAVE",
+ "BONKBG",
+ "BALCONY",
+ "DARMS",
+ "BRINS",
+ "ALCHEMY",
+ "GENHALL",
+ "LANDING",
+ "BELROOM",
+ "UPSTAIR",
+ "DNSTAIR",
+ "KITCHEN",
+ "KYRAGEM",
+ "LIBRARY",
+ "FOYER",
+ "CATACOM",
+ "GRTHALL",
+ "FESTSTH",
+ "FWSTSTH",
+ "FSOUTHB"
+};
+
+static const StringListProvider k1RoomFilenamesFMTownsProvider = { ARRAYSIZE(k1RoomFilenamesFMTowns), k1RoomFilenamesFMTowns };
+
+static const char *const k1CharacterImageFilenamesFMTowns[20] = {
+ "BRANDON.CPS",
+ "DAPHNE.CPS",
+ "MERITH.CPS",
+ "HERMAN.CPS",
+ "SMALL.CPS",
+ "MALCOM.CPS",
+ "DRINK.CPS",
+ "SHRINK.CPS",
+ "HEALBR1.CPS",
+ "HEALBR2.CPS",
+ "SNOW1A.CPS",
+ "SNOW2A.CPS",
+ "BRANWILL.CPS",
+ "FLUTE1.CPS",
+ "FLUTE2.CPS",
+ "POISON1.CPS",
+ "POISON2.CPS",
+ "TELEKIN.CPS",
+ "BRANSTON.CPS",
+ "POISON.CPS"
+};
+
+static const StringListProvider k1CharacterImageFilenamesFMTownsProvider = { ARRAYSIZE(k1CharacterImageFilenamesFMTowns), k1CharacterImageFilenamesFMTowns };
+
+static const Shape k1DefaultShapesFMTowns[166] = {
+ { 0, 0, 0, 3, 48, -12, -48 },
+ { 0, 3, 0, 3, 48, -12, -48 },
+ { 0, 6, 0, 3, 48, -12, -48 },
+ { 0, 9, 0, 3, 48, -12, -48 },
+ { 0, 12, 0, 3, 48, -12, -48 },
+ { 0, 15, 0, 3, 48, -12, -48 },
+ { 0, 18, 0, 3, 48, -12, -48 },
+ { 0, 21, 0, 3, 48, -12, -48 },
+ { 0, 24, 0, 3, 48, -12, -48 },
+ { 0, 27, 0, 3, 48, -12, -48 },
+ { 0, 0, 51, 2, 11, -2, -8 },
+ { 0, 2, 51, 2, 11, -2, -8 },
+ { 0, 4, 51, 2, 11, -2, -8 },
+ { 0, 6, 51, 2, 11, -2, -8 },
+ { 0, 8, 51, 2, 11, -2, -8 },
+ { 0, 10, 51, 2, 11, -2, -8 },
+ { 0, 12, 51, 2, 11, -2, -8 },
+ { 0, 14, 51, 2, 11, -2, -8 },
+ { 0, 16, 51, 2, 11, -2, -8 },
+ { 0, 18, 51, 2, 11, -2, -8 },
+ { 0, 20, 51, 2, 11, -2, -8 },
+ { 0, 22, 51, 2, 11, -2, -8 },
+ { 0, 0, 80, 3, 48, -12, -48 },
+ { 0, 3, 80, 3, 48, -12, -48 },
+ { 0, 6, 80, 3, 48, -12, -48 },
+ { 0, 9, 80, 3, 48, -12, -48 },
+ { 0, 12, 80, 3, 48, -12, -48 },
+ { 0, 15, 80, 3, 48, -12, -48 },
+ { 0, 0, 129, 3, 48, -12, -48 },
+ { 0, 3, 129, 3, 48, -12, -48 },
+ { 0, 6, 129, 3, 48, -12, -48 },
+ { 0, 9, 129, 3, 48, -12, -48 },
+ { 0, 12, 129, 3, 48, -12, -48 },
+ { 0, 15, 129, 3, 48, -12, -48 },
+ { 2, 0, 0, 3, 48, -12, -48 },
+ { 2, 3, 0, 3, 48, -12, -48 },
+ { 2, 6, 0, 3, 48, -12, -48 },
+ { 2, 9, 0, 3, 48, -12, -48 },
+ { 2, 12, 0, 3, 48, -12, -48 },
+ { 2, 15, 0, 3, 48, -12, -48 },
+ { 2, 18, 0, 3, 48, -12, -48 },
+ { 2, 21, 0, 3, 48, -12, -48 },
+ { 2, 24, 0, 3, 48, -12, -48 },
+ { 2, 27, 0, 3, 48, -12, -48 },
+ { 2, 30, 10, 3, 38, -16, -38 },
+ { 2, 27, 48, 4, 40, -8, -40 },
+ { 2, 0, 51, 2, 11, -4, 0 },
+ { 2, 2, 51, 2, 11, -4, 0 },
+ { 2, 4, 51, 2, 11, -4, 0 },
+ { 2, 6, 51, 2, 11, -4, 0 },
+ { 2, 8, 51, 2, 11, -4, 0 },
+ { 2, 10, 51, 2, 11, -4, 0 },
+ { 2, 12, 51, 2, 11, -4, 0 },
+ { 2, 14, 51, 2, 11, -4, 0 },
+ { 2, 16, 51, 2, 11, -4, 0 },
+ { 2, 18, 51, 2, 11, -4, 0 },
+ { 2, 20, 51, 2, 11, -4, 0 },
+ { 2, 22, 51, 2, 11, -4, 0 },
+ { 255, 0, 80, 3, 48, -12, -48 },
+ { 255, 3, 80, 3, 48, -12, -48 },
+ { 255, 6, 80, 3, 48, -12, -48 },
+ { 255, 9, 80, 3, 48, -12, -48 },
+ { 255, 12, 80, 3, 48, -12, -48 },
+ { 255, 15, 80, 3, 48, -12, -48 },
+ { 255, 0, 129, 3, 48, -12, -48 },
+ { 255, 3, 129, 3, 48, -12, -48 },
+ { 255, 6, 129, 3, 48, -12, -48 },
+ { 255, 9, 129, 3, 48, -12, -48 },
+ { 255, 12, 129, 3, 48, -12, -48 },
+ { 255, 15, 129, 3, 48, -12, -48 },
+ { 3, 0, 0, 3, 48, -12, -46 },
+ { 3, 3, 0, 3, 48, -12, -48 },
+ { 3, 6, 0, 3, 48, -12, -48 },
+ { 3, 9, 0, 3, 48, -12, -48 },
+ { 3, 12, 0, 3, 48, -12, -48 },
+ { 3, 15, 0, 3, 48, -12, -48 },
+ { 3, 18, 0, 3, 48, -12, -48 },
+ { 3, 21, 0, 3, 48, -12, -48 },
+ { 3, 24, 0, 3, 48, -12, -48 },
+ { 3, 27, 0, 3, 48, -12, -46 },
+ { 3, 30, 0, 3, 48, -14, -47 },
+ { 3, 39, 199, 1, 1, -12, -48 },
+ { 3, 0, 51, 2, 11, 0, -7 },
+ { 3, 2, 51, 2, 11, 0, -7 },
+ { 3, 4, 51, 2, 11, 0, -7 },
+ { 3, 6, 51, 2, 11, 0, -7 },
+ { 3, 8, 51, 2, 11, 0, -7 },
+ { 3, 10, 51, 2, 11, 0, -7 },
+ { 3, 12, 51, 2, 11, 0, -7 },
+ { 3, 14, 51, 2, 11, 0, -7 },
+ { 3, 16, 51, 2, 11, 0, -7 },
+ { 3, 18, 51, 2, 11, 0, -7 },
+ { 3, 20, 51, 2, 11, 0, -7 },
+ { 3, 22, 51, 2, 11, 0, -7 },
+ { 3, 0, 80, 3, 48, -12, -48 },
+ { 3, 3, 80, 3, 48, -12, -48 },
+ { 3, 6, 80, 3, 48, -12, -48 },
+ { 3, 9, 80, 3, 48, -12, -48 },
+ { 3, 12, 80, 3, 48, -12, -48 },
+ { 3, 15, 80, 3, 48, -12, -48 },
+ { 3, 0, 129, 3, 48, -12, -48 },
+ { 3, 3, 129, 3, 48, -12, -48 },
+ { 3, 6, 129, 3, 48, -12, -48 },
+ { 3, 9, 129, 3, 48, -12, -48 },
+ { 3, 12, 129, 3, 48, -12, -48 },
+ { 3, 15, 129, 3, 48, -12, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1DefaultShapesFMTownsProvider = { ARRAYSIZE(k1DefaultShapesFMTowns), k1DefaultShapesFMTowns };
+
+static const byte k1AmuleteAnimSeqFMTowns[42] = {
+ 0x00, 0x01, 0x02, 0x01, 0x03, 0x04, 0x03, 0x01,
+ 0x02, 0x03, 0x04, 0x05, 0x06, 0x05, 0x04, 0x05,
+ 0x07, 0x08, 0x07, 0x08, 0x09, 0x08, 0x09, 0x07,
+ 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
+ 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+ 0x16, 0xFF
+};
+
+static const ByteProvider k1AmuleteAnimSeqFMTownsProvider = { ARRAYSIZE(k1AmuleteAnimSeqFMTowns), k1AmuleteAnimSeqFMTowns };
+
+static const byte k1SpecialPalette1FMTowns[21] = {
+ 0x36, 0x25, 0x1C, 0x31, 0x21, 0x19, 0x2C, 0x1D,
+ 0x16, 0x27, 0x19, 0x13, 0x22, 0x16, 0x11, 0x1D,
+ 0x12, 0x0D, 0x18, 0x0F, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette1FMTownsProvider = { ARRAYSIZE(k1SpecialPalette1FMTowns), k1SpecialPalette1FMTowns };
+
+static const byte k1SpecialPalette2FMTowns[51] = {
+ 0x03, 0x03, 0x00, 0x37, 0x29, 0x1D, 0x33, 0x25,
+ 0x1A, 0x2D, 0x21, 0x17, 0x2A, 0x1D, 0x13, 0x26,
+ 0x19, 0x11, 0x22, 0x16, 0x0E, 0x1E, 0x12, 0x0C,
+ 0x1A, 0x0F, 0x0A, 0x16, 0x0C, 0x08, 0x12, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x2D, 0x1E, 0x13, 0x27,
+ 0x19, 0x0F, 0x22, 0x14, 0x0C, 0x1C, 0x11, 0x0A,
+ 0x17, 0x0C, 0x08
+};
+
+static const ByteProvider k1SpecialPalette2FMTownsProvider = { ARRAYSIZE(k1SpecialPalette2FMTowns), k1SpecialPalette2FMTowns };
+
+static const byte k1SpecialPalette3FMTowns[51] = {
+ 0x03, 0x03, 0x00, 0x25, 0x30, 0x1B, 0x24, 0x2C,
+ 0x18, 0x23, 0x29, 0x15, 0x22, 0x25, 0x12, 0x21,
+ 0x22, 0x11, 0x1F, 0x1D, 0x0D, 0x1B, 0x18, 0x0B,
+ 0x18, 0x13, 0x0A, 0x14, 0x0E, 0x08, 0x11, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x21, 0x22, 0x11, 0x1D,
+ 0x1C, 0x0C, 0x19, 0x15, 0x0A, 0x15, 0x0F, 0x08,
+ 0x11, 0x0A, 0x05
+};
+
+static const ByteProvider k1SpecialPalette3FMTownsProvider = { ARRAYSIZE(k1SpecialPalette3FMTowns), k1SpecialPalette3FMTowns };
+
+static const byte k1SpecialPalette4FMTowns[51] = {
+ 0x06, 0x03, 0x01, 0x33, 0x25, 0x0A, 0x2F, 0x21,
+ 0x0A, 0x2B, 0x1D, 0x08, 0x28, 0x1A, 0x08, 0x24,
+ 0x17, 0x06, 0x21, 0x22, 0x06, 0x1D, 0x11, 0x05,
+ 0x19, 0x0E, 0x05, 0x16, 0x0B, 0x03, 0x12, 0x0A,
+ 0x03, 0x0F, 0x08, 0x03, 0x28, 0x1A, 0x08, 0x22,
+ 0x15, 0x05, 0x1D, 0x11, 0x05, 0x17, 0x0C, 0x03,
+ 0x12, 0x0A, 0x03
+};
+
+static const ByteProvider k1SpecialPalette4FMTownsProvider = { ARRAYSIZE(k1SpecialPalette4FMTowns), k1SpecialPalette4FMTowns };
+
+static const byte k1SpecialPalette5FMTowns[51] = {
+ 0x03, 0x03, 0x00, 0x2A, 0x1D, 0x13, 0x27, 0x1A,
+ 0x11, 0x24, 0x18, 0x0F, 0x21, 0x15, 0x0D, 0x1E,
+ 0x13, 0x0C, 0x1C, 0x11, 0x0A, 0x19, 0x0F, 0x0A,
+ 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06, 0x11, 0x08,
+ 0x05, 0x0E, 0x08, 0x05, 0x1C, 0x11, 0x0A, 0x19,
+ 0x0E, 0x08, 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06,
+ 0x11, 0x08, 0x05
+};
+
+static const ByteProvider k1SpecialPalette5FMTownsProvider = { ARRAYSIZE(k1SpecialPalette5FMTowns), k1SpecialPalette5FMTowns };
+
+static const byte k1SpecialPalette6FMTowns[51] = {
+ 0x00, 0x08, 0x01, 0x00, 0x1E, 0x00, 0x00, 0x1B,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x17, 0x00, 0x00,
+ 0x14, 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x0A,
+ 0x00, 0x00, 0x08, 0x00, 0x13, 0x21, 0x0F, 0x11,
+ 0x1F, 0x0D, 0x0E, 0x1D, 0x0C, 0x0C, 0x1B, 0x0B,
+ 0x0A, 0x19, 0x0A
+};
+
+static const ByteProvider k1SpecialPalette6FMTownsProvider = { ARRAYSIZE(k1SpecialPalette6FMTowns), k1SpecialPalette6FMTowns };
+
+static const byte k1SpecialPalette7FMTowns[54] = {
+ 0x05, 0x2B, 0x00, 0x00, 0x22, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x16, 0x01, 0x00, 0x12, 0x03, 0x00,
+ 0x0F, 0x01, 0x00, 0x0B, 0x03, 0x0A, 0x19, 0x0A,
+ 0x2D, 0x2D, 0x32, 0x29, 0x29, 0x2D, 0x25, 0x25,
+ 0x2B, 0x1F, 0x1F, 0x26, 0x1B, 0x1B, 0x22, 0x14,
+ 0x16, 0x1D, 0x11, 0x11, 0x18, 0x0D, 0x0D, 0x14,
+ 0x0A, 0x0A, 0x0F, 0x06, 0x06, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette7FMTownsProvider = { ARRAYSIZE(k1SpecialPalette7FMTowns), k1SpecialPalette7FMTowns };
+
+static const byte k1SpecialPalette8FMTowns[54] = {
+ 0x12, 0x37, 0x3F, 0x14, 0x31, 0x3F, 0x14, 0x29,
+ 0x3F, 0x14, 0x22, 0x3F, 0x14, 0x1B, 0x3F, 0x14,
+ 0x14, 0x3F, 0x0E, 0x0F, 0x37, 0x14, 0x29, 0x3F,
+ 0x2F, 0x3F, 0x3D, 0x26, 0x3F, 0x3F, 0x15, 0x3F,
+ 0x3F, 0x14, 0x3B, 0x3F, 0x12, 0x37, 0x3F, 0x14,
+ 0x31, 0x3F, 0x14, 0x29, 0x3F, 0x14, 0x22, 0x3F,
+ 0x14, 0x1B, 0x3F, 0x14, 0x14, 0x3F
+};
+
+static const ByteProvider k1SpecialPalette8FMTownsProvider = { ARRAYSIZE(k1SpecialPalette8FMTowns), k1SpecialPalette8FMTowns };
+
+static const byte k1SpecialPalette9FMTowns[45] = {
+ 0x36, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2F, 0x00,
+ 0x00, 0x2C, 0x00, 0x00, 0x29, 0x00, 0x00, 0x26,
+ 0x00, 0x00, 0x23, 0x00, 0x00, 0x20, 0x00, 0x00,
+ 0x1C, 0x00, 0x00, 0x19, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x0D,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette9FMTownsProvider = { ARRAYSIZE(k1SpecialPalette9FMTowns), k1SpecialPalette9FMTowns };
+
+static const byte k1SpecialPalette10FMTowns[45] = {
+ 0x29, 0x00, 0x00, 0x26, 0x00, 0x00, 0x24, 0x00,
+ 0x00, 0x22, 0x00, 0x00, 0x20, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x15, 0x00, 0x00, 0x12, 0x00,
+ 0x00, 0x11, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x0C,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette10FMTownsProvider = { ARRAYSIZE(k1SpecialPalette10FMTowns), k1SpecialPalette10FMTowns };
+
+static const byte k1SpecialPalette11FMTowns[45] = {
+ 0x20, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00,
+ 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00, 0x18,
+ 0x00, 0x00, 0x16, 0x00, 0x00, 0x15, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette11FMTownsProvider = { ARRAYSIZE(k1SpecialPalette11FMTowns), k1SpecialPalette11FMTowns };
+
+static const byte k1SpecialPalette12FMTowns[45] = {
+ 0x19, 0x00, 0x00, 0x18, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x15, 0x00, 0x00, 0x14, 0x00, 0x00, 0x13,
+ 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00, 0x00,
+ 0x11, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0E, 0x00,
+ 0x00, 0x0D, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette12FMTownsProvider = { ARRAYSIZE(k1SpecialPalette12FMTowns), k1SpecialPalette12FMTowns };
+
+static const byte k1SpecialPalette13FMTowns[45] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette13FMTownsProvider = { ARRAYSIZE(k1SpecialPalette13FMTowns), k1SpecialPalette13FMTowns };
+
+static const byte k1SpecialPalette14FMTowns[60] = {
+ 0x0E, 0x28, 0x3F, 0x0C, 0x24, 0x3B, 0x0A, 0x20,
+ 0x38, 0x0A, 0x1C, 0x34, 0x08, 0x19, 0x31, 0x08,
+ 0x15, 0x2D, 0x05, 0x13, 0x2A, 0x05, 0x11, 0x27,
+ 0x03, 0x0D, 0x24, 0x03, 0x0A, 0x20, 0x03, 0x08,
+ 0x1D, 0x01, 0x06, 0x19, 0x01, 0x05, 0x16, 0x00,
+ 0x03, 0x13, 0x00, 0x01, 0x0F, 0x00, 0x01, 0x0C,
+ 0x00, 0x00, 0x08, 0x00, 0x00, 0x05, 0x00, 0x00,
+ 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette14FMTownsProvider = { ARRAYSIZE(k1SpecialPalette14FMTowns), k1SpecialPalette14FMTowns };
+
+static const byte k1SpecialPalette15FMTowns[45] = {
+ 0x24, 0x00, 0x39, 0x21, 0x00, 0x36, 0x1F, 0x00,
+ 0x32, 0x1C, 0x00, 0x2D, 0x1A, 0x00, 0x2A, 0x17,
+ 0x00, 0x26, 0x15, 0x00, 0x22, 0x12, 0x00, 0x1E,
+ 0x11, 0x00, 0x1A, 0x0E, 0x00, 0x16, 0x0B, 0x00,
+ 0x12, 0x0A, 0x00, 0x0F, 0x06, 0x00, 0x0B, 0x05,
+ 0x00, 0x08, 0x01, 0x00, 0x03
+};
+
+static const ByteProvider k1SpecialPalette15FMTownsProvider = { ARRAYSIZE(k1SpecialPalette15FMTowns), k1SpecialPalette15FMTowns };
+
+static const byte k1SpecialPalette16FMTowns[33] = {
+ 0x00, 0x3F, 0x3F, 0x00, 0x38, 0x38, 0x00, 0x34,
+ 0x34, 0x00, 0x30, 0x30, 0x00, 0x2D, 0x2D, 0x00,
+ 0x29, 0x29, 0x00, 0x25, 0x25, 0x00, 0x1F, 0x1F,
+ 0x00, 0x1B, 0x1B, 0x00, 0x16, 0x16, 0x00, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette16FMTownsProvider = { ARRAYSIZE(k1SpecialPalette16FMTowns), k1SpecialPalette16FMTowns };
+
+static const byte k1SpecialPalette17FMTowns[33] = {
+ 0x3B, 0x3B, 0x3B, 0x36, 0x36, 0x36, 0x32, 0x32,
+ 0x32, 0x2D, 0x2D, 0x2D, 0x2A, 0x2A, 0x2A, 0x26,
+ 0x26, 0x26, 0x21, 0x21, 0x21, 0x1D, 0x1D, 0x1D,
+ 0x19, 0x19, 0x19, 0x15, 0x15, 0x15, 0x11, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette17FMTownsProvider = { ARRAYSIZE(k1SpecialPalette17FMTowns), k1SpecialPalette17FMTowns };
+
+static const byte k1SpecialPalette18FMTowns[21] = {
+ 0x0F, 0x23, 0x1C, 0x2A, 0x36, 0x3F, 0x24, 0x2F,
+ 0x38, 0x1F, 0x2A, 0x32, 0x1A, 0x24, 0x2B, 0x15,
+ 0x1E, 0x25, 0x11, 0x19, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette18FMTownsProvider = { ARRAYSIZE(k1SpecialPalette18FMTowns), k1SpecialPalette18FMTowns };
+
+static const byte k1SpecialPalette19FMTowns[21] = {
+ 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00,
+ 0x38, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00,
+ 0x00, 0x25, 0x00, 0x00, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette19FMTownsProvider = { ARRAYSIZE(k1SpecialPalette19FMTowns), k1SpecialPalette19FMTowns };
+
+static const byte k1SpecialPalette20FMTowns[21] = {
+ 0x26, 0x1B, 0x1B, 0x3F, 0x34, 0x34, 0x3B, 0x2F,
+ 0x2F, 0x39, 0x2B, 0x2B, 0x36, 0x26, 0x27, 0x33,
+ 0x22, 0x23, 0x31, 0x1F, 0x20
+};
+
+static const ByteProvider k1SpecialPalette20FMTownsProvider = { ARRAYSIZE(k1SpecialPalette20FMTowns), k1SpecialPalette20FMTowns };
+
+static const byte k1SpecialPalette21FMTowns[21] = {
+ 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x38, 0x00,
+ 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x25,
+ 0x00, 0x00, 0x1F, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette21FMTownsProvider = { ARRAYSIZE(k1SpecialPalette21FMTowns), k1SpecialPalette21FMTowns };
+
+static const byte k1SpecialPalette22FMTowns[21] = {
+ 0x1F, 0x1F, 0x0C, 0x3F, 0x3F, 0x21, 0x3B, 0x3B,
+ 0x1F, 0x37, 0x37, 0x1D, 0x34, 0x34, 0x1B, 0x30,
+ 0x30, 0x19, 0x2D, 0x2D, 0x17
+};
+
+static const ByteProvider k1SpecialPalette22FMTownsProvider = { ARRAYSIZE(k1SpecialPalette22FMTowns), k1SpecialPalette22FMTowns };
+
+static const byte k1SpecialPalette23FMTowns[21] = {
+ 0x1F, 0x1F, 0x00, 0x3F, 0x3F, 0x00, 0x3B, 0x3B,
+ 0x00, 0x37, 0x37, 0x00, 0x34, 0x34, 0x00, 0x30,
+ 0x30, 0x00, 0x2D, 0x2D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette23FMTownsProvider = { ARRAYSIZE(k1SpecialPalette23FMTowns), k1SpecialPalette23FMTowns };
+
+static const byte k1SpecialPalette24FMTowns[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D,
+ 0x0D, 0x1B, 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18,
+ 0x0A, 0x08, 0x17, 0x08, 0x08, 0x16, 0x08, 0x08,
+ 0x15, 0x06, 0x06, 0x14, 0x06, 0x06, 0x11, 0x06
+};
+
+static const ByteProvider k1SpecialPalette24FMTownsProvider = { ARRAYSIZE(k1SpecialPalette24FMTowns), k1SpecialPalette24FMTowns };
+
+static const byte k1SpecialPalette25FMTowns[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x36, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D, 0x1B,
+ 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18, 0x0A, 0x0A,
+ 0x18, 0x0A, 0x0A, 0x18, 0x0A, 0x06, 0x14, 0x06
+};
+
+static const ByteProvider k1SpecialPalette25FMTownsProvider = { ARRAYSIZE(k1SpecialPalette25FMTowns), k1SpecialPalette25FMTowns };
+
+static const byte k1SpecialPalette26FMTowns[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x11,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0A,
+ 0x19, 0x0A, 0x0A, 0x19, 0x0A, 0x06, 0x13, 0x06
+};
+
+static const ByteProvider k1SpecialPalette26FMTownsProvider = { ARRAYSIZE(k1SpecialPalette26FMTowns), k1SpecialPalette26FMTowns };
+
+static const byte k1SpecialPalette27FMTowns[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x19, 0x0C, 0x0D, 0x19, 0x0C, 0x08, 0x16, 0x08
+};
+
+static const ByteProvider k1SpecialPalette27FMTownsProvider = { ARRAYSIZE(k1SpecialPalette27FMTowns), k1SpecialPalette27FMTowns };
+
+static const byte k1SpecialPalette28FMTowns[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x1B, 0x0C, 0x0D, 0x1B, 0x0C, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette28FMTownsProvider = { ARRAYSIZE(k1SpecialPalette28FMTowns), k1SpecialPalette28FMTowns };
+
+static const byte k1SpecialPalette29FMTowns[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E,
+ 0x1D, 0x0D, 0x0E, 0x1D, 0x0D, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette29FMTownsProvider = { ARRAYSIZE(k1SpecialPalette29FMTowns), k1SpecialPalette29FMTowns };
+
+static const byte k1SpecialPalette30FMTowns[60] = {
+ 0x1E, 0x1D, 0x3F, 0x1A, 0x19, 0x3F, 0x14, 0x12,
+ 0x3B, 0x12, 0x11, 0x37, 0x11, 0x11, 0x33, 0x0F,
+ 0x0E, 0x2F, 0x0E, 0x0D, 0x2C, 0x0D, 0x0C, 0x28,
+ 0x0B, 0x0B, 0x24, 0x0A, 0x0A, 0x20, 0x0A, 0x0A,
+ 0x1D, 0x05, 0x05, 0x18, 0x03, 0x03, 0x13, 0x01,
+ 0x01, 0x11, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x05,
+ 0x00, 0x0A, 0x1A, 0x00, 0x0F, 0x13, 0x00, 0x14,
+ 0x11, 0x0F, 0x0D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette30FMTownsProvider = { ARRAYSIZE(k1SpecialPalette30FMTowns), k1SpecialPalette30FMTowns };
+
+static const byte k1SpecialPalette31FMTowns[39] = {
+ 0x2B, 0x19, 0x34, 0x27, 0x17, 0x30, 0x23, 0x14,
+ 0x2C, 0x20, 0x12, 0x27, 0x1C, 0x11, 0x23, 0x18,
+ 0x0E, 0x1E, 0x15, 0x0C, 0x1A, 0x11, 0x0A, 0x15,
+ 0x0E, 0x08, 0x11, 0x0A, 0x05, 0x0C, 0x06, 0x03,
+ 0x08, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette31FMTownsProvider = { ARRAYSIZE(k1SpecialPalette31FMTowns), k1SpecialPalette31FMTowns };
+
+static const byte k1SpecialPalette32FMTowns[39] = {
+ 0x12, 0x12, 0x16, 0x11, 0x11, 0x14, 0x0F, 0x0F,
+ 0x12, 0x0D, 0x0D, 0x11, 0x0B, 0x0B, 0x0E, 0x0A,
+ 0x0A, 0x0C, 0x08, 0x08, 0x0A, 0x08, 0x08, 0x08,
+ 0x05, 0x05, 0x06, 0x05, 0x05, 0x05, 0x03, 0x03,
+ 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette32FMTownsProvider = { ARRAYSIZE(k1SpecialPalette32FMTowns), k1SpecialPalette32FMTowns };
+
+static const byte k1SpecialPalette33FMTowns[60] = {
+ 0x3F, 0x3D, 0x2F, 0x3F, 0x3D, 0x29, 0x3F, 0x3D,
+ 0x23, 0x3F, 0x3D, 0x1D, 0x3F, 0x3B, 0x17, 0x3F,
+ 0x3B, 0x11, 0x3F, 0x3B, 0x0B, 0x3F, 0x3B, 0x05,
+ 0x3F, 0x3B, 0x00, 0x3D, 0x38, 0x00, 0x3B, 0x34,
+ 0x00, 0x39, 0x33, 0x00, 0x39, 0x30, 0x00, 0x37,
+ 0x2D, 0x00, 0x36, 0x2B, 0x00, 0x34, 0x28, 0x00,
+ 0x33, 0x26, 0x00, 0x32, 0x24, 0x00, 0x30, 0x22,
+ 0x00, 0x2F, 0x20, 0x00
+};
+
+static const ByteProvider k1SpecialPalette33FMTownsProvider = { ARRAYSIZE(k1SpecialPalette33FMTowns), k1SpecialPalette33FMTowns };
+
+static const Shape k1Healing1ShapesFMTowns[22] = {
+ { 8, 0, 0, 3, 48, -12, -48 },
+ { 8, 3, 0, 3, 48, -12, -48 },
+ { 8, 6, 0, 3, 48, -12, -48 },
+ { 8, 9, 0, 3, 48, -12, -48 },
+ { 8, 12, 0, 3, 48, -12, -48 },
+ { 8, 15, 0, 3, 48, -12, -48 },
+ { 8, 18, 0, 3, 48, -12, -48 },
+ { 8, 21, 0, 3, 48, -12, -48 },
+ { 8, 24, 0, 3, 48, -12, -48 },
+ { 8, 27, 0, 3, 48, -12, -48 },
+ { 8, 30, 0, 3, 48, -12, -48 },
+ { 8, 33, 0, 3, 48, -12, -48 },
+ { 8, 0, 48, 3, 48, -12, -48 },
+ { 8, 3, 48, 3, 48, -12, -48 },
+ { 8, 6, 48, 3, 48, -12, -48 },
+ { 8, 9, 48, 3, 48, -12, -48 },
+ { 8, 12, 48, 3, 48, -12, -48 },
+ { 8, 15, 48, 3, 48, -12, -48 },
+ { 8, 18, 48, 3, 48, -12, -48 },
+ { 8, 21, 48, 3, 48, -12, -48 },
+ { 8, 24, 48, 3, 48, -12, -48 },
+ { 8, 27, 48, 3, 48, -12, -48 }
+};
+
+static const ShapeProvider k1Healing1ShapesFMTownsProvider = { ARRAYSIZE(k1Healing1ShapesFMTowns), k1Healing1ShapesFMTowns };
+
+static const Shape k1Healing2ShapesFMTowns[30] = {
+ { 9, 0, 0, 3, 48, -11, -48 },
+ { 9, 3, 0, 3, 48, -11, -48 },
+ { 9, 6, 0, 3, 48, -11, -48 },
+ { 9, 9, 0, 3, 48, -11, -48 },
+ { 9, 12, 0, 3, 48, -11, -48 },
+ { 9, 15, 0, 3, 48, -11, -48 },
+ { 9, 18, 0, 3, 48, -11, -48 },
+ { 9, 21, 0, 3, 48, -11, -48 },
+ { 9, 24, 0, 3, 48, -11, -48 },
+ { 9, 27, 0, 3, 48, -11, -48 },
+ { 9, 30, 0, 3, 48, -11, -48 },
+ { 9, 33, 0, 3, 48, -11, -48 },
+ { 9, 0, 48, 3, 48, -11, -48 },
+ { 9, 3, 48, 3, 48, -11, -48 },
+ { 9, 6, 48, 3, 48, -11, -48 },
+ { 9, 9, 48, 3, 48, -11, -48 },
+ { 9, 12, 48, 3, 48, -11, -48 },
+ { 9, 15, 48, 3, 48, -11, -48 },
+ { 9, 18, 48, 3, 48, -11, -48 },
+ { 9, 21, 48, 3, 48, -11, -48 },
+ { 9, 24, 48, 3, 48, -11, -48 },
+ { 9, 27, 48, 3, 48, -11, -48 },
+ { 9, 30, 48, 3, 48, -11, -48 },
+ { 9, 33, 48, 3, 48, -11, -48 },
+ { 9, 0, 96, 3, 48, -11, -48 },
+ { 9, 3, 96, 3, 48, -11, -48 },
+ { 9, 6, 96, 3, 48, -11, -48 },
+ { 9, 9, 96, 3, 48, -11, -48 },
+ { 9, 12, 96, 3, 48, -11, -48 },
+ { 9, 15, 96, 3, 48, -11, -48 }
+};
+
+static const ShapeProvider k1Healing2ShapesFMTownsProvider = { ARRAYSIZE(k1Healing2ShapesFMTowns), k1Healing2ShapesFMTowns };
+
+static const Shape k1PoisonDeathShapesFMTowns[20] = {
+ { 19, 0, 0, 8, 48, -31, -48 },
+ { 19, 8, 0, 8, 48, -31, -48 },
+ { 19, 16, 0, 8, 48, -31, -48 },
+ { 19, 24, 0, 8, 48, -31, -48 },
+ { 19, 32, 0, 8, 48, -31, -48 },
+ { 19, 0, 48, 8, 48, -31, -48 },
+ { 19, 8, 48, 8, 48, -31, -48 },
+ { 19, 16, 48, 8, 48, -31, -48 },
+ { 19, 24, 48, 8, 48, -31, -48 },
+ { 19, 32, 48, 8, 48, -31, -48 },
+ { 19, 0, 96, 8, 48, -31, -48 },
+ { 19, 8, 96, 8, 48, -31, -48 },
+ { 19, 16, 96, 8, 48, -31, -48 },
+ { 19, 24, 96, 8, 48, -31, -48 },
+ { 19, 32, 96, 8, 48, -31, -48 },
+ { 19, 0, 144, 8, 48, -31, -48 },
+ { 19, 8, 144, 8, 48, -31, -48 },
+ { 19, 16, 144, 8, 48, -31, -48 },
+ { 19, 24, 144, 8, 48, -31, -48 },
+ { 19, 32, 144, 8, 48, -31, -48 }
+};
+
+static const ShapeProvider k1PoisonDeathShapesFMTownsProvider = { ARRAYSIZE(k1PoisonDeathShapesFMTowns), k1PoisonDeathShapesFMTowns };
+
+static const Shape k1FluteShapesFMTowns[36] = {
+ { 13, 0, 0, 3, 75, -12, -75 },
+ { 13, 3, 0, 3, 75, -12, -75 },
+ { 13, 6, 0, 3, 75, -12, -75 },
+ { 13, 9, 0, 3, 75, -12, -75 },
+ { 13, 12, 0, 3, 75, -12, -75 },
+ { 13, 15, 0, 3, 75, -12, -75 },
+ { 13, 18, 0, 3, 75, -12, -75 },
+ { 13, 21, 0, 3, 75, -12, -75 },
+ { 13, 24, 0, 3, 75, -12, -75 },
+ { 13, 27, 0, 3, 75, -12, -75 },
+ { 13, 30, 0, 3, 75, -12, -75 },
+ { 13, 33, 0, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 13, 0, 75, 3, 75, -12, -75 },
+ { 13, 3, 75, 3, 75, -12, -75 },
+ { 13, 6, 75, 3, 75, -12, -75 },
+ { 13, 9, 75, 3, 75, -12, -75 },
+ { 13, 12, 75, 3, 75, -12, -75 },
+ { 13, 15, 75, 3, 75, -12, -75 },
+ { 13, 18, 75, 3, 75, -12, -75 },
+ { 13, 21, 75, 3, 75, -12, -75 },
+ { 13, 24, 75, 3, 75, -12, -75 },
+ { 13, 27, 75, 3, 75, -12, -75 },
+ { 13, 30, 75, 3, 75, -12, -75 },
+ { 13, 33, 75, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 14, 0, 0, 3, 75, -12, -75 },
+ { 14, 3, 0, 3, 75, -12, -75 },
+ { 14, 6, 0, 3, 75, -12, -75 },
+ { 14, 9, 0, 3, 75, -12, -75 },
+ { 14, 12, 0, 3, 75, -12, -75 },
+ { 14, 15, 0, 3, 75, -12, -75 },
+ { 14, 18, 0, 3, 75, -12, -75 },
+ { 14, 21, 0, 3, 75, -12, -75 },
+ { 14, 24, 0, 3, 75, -12, -75 },
+ { 14, 27, 0, 3, 75, -12, -75 }
+};
+
+static const ShapeProvider k1FluteShapesFMTownsProvider = { ARRAYSIZE(k1FluteShapesFMTowns), k1FluteShapesFMTowns };
+
+static const Shape k1Winter1ShapesFMTowns[7] = {
+ { 10, 5, 0, 5, 66, -20, -65 },
+ { 10, 10, 0, 5, 66, -20, -65 },
+ { 10, 15, 0, 5, 66, -20, -65 },
+ { 10, 20, 0, 5, 66, -20, -65 },
+ { 10, 25, 0, 5, 66, -20, -65 },
+ { 10, 30, 0, 5, 66, -20, -65 },
+ { 10, 35, 0, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter1ShapesFMTownsProvider = { ARRAYSIZE(k1Winter1ShapesFMTowns), k1Winter1ShapesFMTowns };
+
+static const Shape k1Winter2ShapesFMTowns[35] = {
+ { 10, 0, 66, 5, 66, -20, -65 },
+ { 10, 5, 66, 5, 66, -20, -65 },
+ { 10, 10, 66, 5, 66, -20, -65 },
+ { 10, 15, 66, 5, 66, -20, -65 },
+ { 10, 20, 66, 5, 66, -20, -65 },
+ { 10, 25, 66, 5, 66, -20, -65 },
+ { 10, 30, 66, 5, 66, -20, -65 },
+ { 10, 35, 66, 5, 66, -20, -65 },
+ { 10, 0, 132, 5, 66, -20, -65 },
+ { 10, 5, 132, 5, 66, -20, -65 },
+ { 10, 10, 132, 5, 66, -20, -65 },
+ { 10, 15, 132, 5, 66, -20, -65 },
+ { 10, 20, 132, 5, 66, -20, -65 },
+ { 10, 25, 132, 5, 66, -20, -65 },
+ { 10, 30, 132, 5, 66, -20, -65 },
+ { 10, 35, 132, 5, 66, -20, -65 },
+ { 11, 0, 0, 5, 66, -20, -65 },
+ { 11, 5, 0, 5, 66, -20, -65 },
+ { 11, 10, 0, 5, 66, -20, -65 },
+ { 11, 15, 0, 5, 66, -20, -65 },
+ { 11, 20, 0, 5, 66, -20, -65 },
+ { 11, 25, 0, 5, 66, -20, -65 },
+ { 11, 30, 0, 5, 66, -20, -65 },
+ { 11, 35, 0, 5, 66, -20, -65 },
+ { 11, 0, 66, 5, 66, -20, -65 },
+ { 11, 5, 66, 5, 66, -20, -65 },
+ { 11, 10, 66, 5, 66, -20, -65 },
+ { 11, 15, 66, 5, 66, -20, -65 },
+ { 11, 20, 66, 5, 66, -20, -65 },
+ { 11, 25, 66, 5, 66, -20, -65 },
+ { 11, 30, 66, 5, 66, -20, -65 },
+ { 11, 35, 66, 5, 66, -20, -65 },
+ { 11, 0, 132, 5, 66, -20, -65 },
+ { 11, 5, 132, 5, 66, -20, -65 },
+ { 11, 10, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter2ShapesFMTownsProvider = { ARRAYSIZE(k1Winter2ShapesFMTowns), k1Winter2ShapesFMTowns };
+
+static const Shape k1Winter3ShapesFMTowns[4] = {
+ { 11, 15, 132, 5, 66, -20, -65 },
+ { 11, 20, 132, 5, 66, -20, -65 },
+ { 11, 25, 132, 5, 66, -20, -65 },
+ { 11, 30, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter3ShapesFMTownsProvider = { ARRAYSIZE(k1Winter3ShapesFMTowns), k1Winter3ShapesFMTowns };
+
+static const Shape k1DrinkShapesFMTowns[15] = {
+ { 6, 0, 0, 4, 48, -20, -48 },
+ { 6, 4, 0, 4, 48, -20, -48 },
+ { 6, 8, 0, 4, 48, -20, -48 },
+ { 6, 12, 0, 4, 48, -20, -48 },
+ { 6, 16, 0, 4, 48, -20, -48 },
+ { 6, 20, 0, 5, 48, -20, -48 },
+ { 6, 0, 48, 5, 54, -20, -54 },
+ { 6, 5, 48, 5, 54, -20, -54 },
+ { 6, 10, 48, 5, 54, -20, -54 },
+ { 0, 7, 0, 0, 3, 43, -12 },
+ { 213, 7, 3, 3, 2, 40, -8 },
+ { 216, 7, 5, 7, 2, 36, -8 },
+ { 220, 7, 7, 10, 2, 33, -8 },
+ { 223, 7, 9, 12, 2, 31, -8 },
+ { 225, 7, 11, 15, 2, 28, -8 }
+};
+
+static const ShapeProvider k1DrinkShapesFMTownsProvider = { ARRAYSIZE(k1DrinkShapesFMTowns), k1DrinkShapesFMTowns };
+
+static const Shape k1WispShapesFMTowns[26] = {
+ { 12, 0, 0, 5, 48, -20, -48 },
+ { 12, 5, 0, 5, 48, -20, -48 },
+ { 12, 10, 0, 5, 48, -20, -48 },
+ { 12, 15, 0, 5, 48, -20, -48 },
+ { 12, 20, 0, 5, 48, -20, -48 },
+ { 12, 25, 0, 5, 48, -20, -48 },
+ { 12, 30, 0, 5, 48, -20, -48 },
+ { 12, 35, 0, 5, 48, -20, -48 },
+ { 12, 0, 48, 5, 48, -20, -48 },
+ { 12, 5, 48, 5, 48, -20, -48 },
+ { 12, 10, 48, 5, 48, -20, -48 },
+ { 12, 15, 48, 5, 48, -20, -48 },
+ { 12, 20, 48, 5, 48, -20, -48 },
+ { 12, 25, 48, 5, 48, -20, -48 },
+ { 12, 30, 48, 5, 48, -20, -48 },
+ { 12, 35, 48, 5, 48, -20, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 }
+};
+
+static const ShapeProvider k1WispShapesFMTownsProvider = { ARRAYSIZE(k1WispShapesFMTowns), k1WispShapesFMTowns };
+
+static const Shape k1MagicAnimShapesFMTowns[5] = {
+ { 17, 0, 0, 8, 49, -32, -49 },
+ { 17, 8, 0, 8, 49, -32, -49 },
+ { 17, 16, 0, 8, 49, -32, -49 },
+ { 17, 24, 0, 8, 49, -32, -49 },
+ { 17, 32, 0, 8, 49, -32, -49 }
+};
+
+static const ShapeProvider k1MagicAnimShapesFMTownsProvider = { ARRAYSIZE(k1MagicAnimShapesFMTowns), k1MagicAnimShapesFMTowns };
+
+static const Shape k1BranStoneShapesFMTowns[14] = {
+ { 18, 0, 0, 5, 51, -20, -50 },
+ { 18, 5, 0, 5, 51, -20, -50 },
+ { 18, 10, 0, 5, 51, -20, -50 },
+ { 18, 15, 0, 5, 51, -20, -50 },
+ { 18, 20, 0, 5, 51, -20, -50 },
+ { 18, 25, 0, 5, 51, -20, -50 },
+ { 18, 30, 0, 5, 51, -20, -50 },
+ { 18, 35, 0, 5, 51, -20, -50 },
+ { 18, 0, 51, 5, 51, -20, -50 },
+ { 18, 5, 51, 5, 51, -20, -50 },
+ { 18, 10, 51, 5, 51, -20, -50 },
+ { 18, 15, 51, 5, 51, -20, -50 },
+ { 18, 20, 51, 5, 51, -20, -50 },
+ { 18, 25, 51, 5, 51, -20, -50 }
+};
+
+static const ShapeProvider k1BranStoneShapesFMTownsProvider = { ARRAYSIZE(k1BranStoneShapesFMTowns), k1BranStoneShapesFMTowns };
+
+static const byte k1OutroReunionSeqFMTowns[1351] = {
+ 0x1A, 0x00, 0x08, 0x01, 0x06, 0x01, 0x00, 0x02,
+ 0x08, 0x00, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x14, 0x0A, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x10, 0x20, 0x5A, 0x00,
+ 0x3A, 0x02, 0x02, 0x08, 0x0D, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x0E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0C, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0B,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x0C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x0D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x0E, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x0A, 0x01, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x01, 0x04, 0x00, 0x10, 0x21, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0A, 0x02, 0x02, 0x08, 0x14, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x02, 0x01, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x10, 0x22, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0A, 0x03, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x03, 0x0B, 0x00, 0x10, 0x23, 0x78,
+ 0x00, 0x3A, 0x0F, 0x0A, 0x03, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x0B, 0x03, 0x05, 0x00, 0x06, 0x28,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x2D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x24,
+ 0x5A, 0x00, 0x3A, 0x02, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x34,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x35, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x36, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x37, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x36,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x37, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x06,
+ 0x0A, 0x00, 0x10, 0x25, 0x5A, 0x00, 0x3A, 0x02,
+ 0x02, 0x08, 0x33, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x36, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x37, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x34, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x33, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x36, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x37, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x10, 0x26,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x38, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x39,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x3A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x38, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x3B, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x06, 0x0A, 0x00, 0x02, 0x08, 0x39, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x38,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x39, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x3A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x06, 0x3C, 0x00, 0x11, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x32,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x31, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x02, 0x08,
+ 0x2E, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x41, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x42,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x43, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x44, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x45, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x46, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x27, 0x5A,
+ 0x00, 0x3A, 0x02, 0x02, 0x08, 0x4E, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x4F, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x50,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x51, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x52, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x53, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x54, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x55, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x78, 0x00, 0x10, 0x28,
+ 0x78, 0x00, 0x3A, 0x0F, 0x0A, 0x05, 0x02, 0x08,
+ 0x59, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x5A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x5B, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x5C, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x5D, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x0B, 0x05, 0x01, 0x00, 0x06,
+ 0x28, 0x00, 0x10, 0x29, 0x78, 0x00, 0x3A, 0x0F,
+ 0x0A, 0x06, 0x02, 0x08, 0x59, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x5A, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5B, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5C,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x5D, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x0B,
+ 0x06, 0x01, 0x00, 0x06, 0x28, 0x00, 0x10, 0x2A,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x5E, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x63,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x06, 0xB4,
+ 0x00, 0x11, 0x18, 0x69, 0x02, 0x08, 0x64, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x65,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x18, 0x74,
+ 0x02, 0x08, 0x66, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x67, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x18, 0x75, 0x02, 0x08, 0x68, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x69,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x10, 0x2B,
+ 0x96, 0x00, 0x1C, 0x22, 0x0A, 0x06, 0x02, 0x08,
+ 0x6B, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x6C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x6D, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x6E, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x70, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x71, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01,
+ 0x00, 0x06, 0x1E, 0x00, 0x10, 0x2C, 0x96, 0x00,
+ 0x1C, 0x22, 0x0A, 0x06, 0x02, 0x08, 0x6B, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6C,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x6D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x6E, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x70, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x71, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01, 0x00, 0x06,
+ 0x1E, 0x00, 0x10, 0x2D, 0x96, 0x00, 0x1C, 0x22,
+ 0x0A, 0x06, 0x02, 0x08, 0x6B, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x6C, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6D, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6E,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x6F, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x70, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x71, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x0B, 0x06, 0x01, 0x00, 0x06, 0x1E, 0x00,
+ 0x02, 0x08, 0x72, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x73, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x06, 0x14, 0x00, 0x02, 0x08, 0x74,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x75, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x06,
+ 0x78, 0x00, 0x13, 0x0E, 0x01, 0x08, 0x1D
+};
+
+static const ByteProvider k1OutroReunionSeqFMTownsProvider = { ARRAYSIZE(k1OutroReunionSeqFMTowns), k1OutroReunionSeqFMTowns };
+
+static const byte k1TownsMusicFadeTableFMTowns[1416] = {
+ 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00,
+ 0x6E, 0x00, 0x00, 0x00, 0x32, 0x00, 0x32, 0x00,
+ 0x24, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6A, 0x00, 0x70, 0x00, 0x70, 0x00, 0x64, 0x00,
+ 0x64, 0x00, 0x00, 0x00, 0x32, 0x00, 0x30, 0x00,
+ 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x68, 0x00, 0x6C, 0x00, 0x6C, 0x00,
+ 0x6C, 0x00, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x66, 0x00, 0x64, 0x00, 0x64, 0x00,
+ 0x62, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6A, 0x00, 0x6A, 0x00, 0x66, 0x00, 0x66, 0x00,
+ 0x66, 0x00, 0x6A, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x72, 0x00, 0x6A, 0x00, 0x6A, 0x00,
+ 0x6A, 0x00, 0x6A, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x6A, 0x00,
+ 0x6A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x68, 0x00, 0x68, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x6A, 0x00, 0x6C, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x2E, 0x00, 0x2A, 0x00,
+ 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x6C, 0x00, 0x6C, 0x00, 0x70, 0x00,
+ 0x70, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00,
+ 0x66, 0x00, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6A, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x62, 0x00, 0x62, 0x00, 0x62, 0x00, 0x64, 0x00,
+ 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x64, 0x00, 0x64, 0x00, 0x70, 0x00, 0x62, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x30, 0x00, 0x28, 0x00,
+ 0x20, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x68, 0x00, 0x68, 0x00, 0x62, 0x00,
+ 0x62, 0x00, 0x00, 0x00, 0x28, 0x00, 0x28, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x74, 0x00, 0x74, 0x00, 0x74, 0x00, 0x74, 0x00,
+ 0x74, 0x00, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x68, 0x00, 0x68, 0x00, 0x68, 0x00,
+ 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x5A, 0x00,
+ 0x5C, 0x00, 0x00, 0x00, 0x28, 0x00, 0x24, 0x00,
+ 0x28, 0x00, 0x2C, 0x00, 0x14, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x6A, 0x00,
+ 0x6A, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x50, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x66, 0x00, 0x66, 0x00, 0x62, 0x00, 0x6E, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00,
+ 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x64, 0x00, 0x64, 0x00, 0x64, 0x00, 0x64, 0x00,
+ 0x64, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x70, 0x00, 0x66, 0x00, 0x66, 0x00,
+ 0x66, 0x00, 0x00, 0x00, 0x28, 0x00, 0x28, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6A, 0x00, 0x6A, 0x00, 0x72, 0x00, 0x72, 0x00,
+ 0x72, 0x00, 0x00, 0x00, 0x32, 0x00, 0x2A, 0x00,
+ 0x1E, 0x00, 0x34, 0x00, 0x1E, 0x00, 0x28, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x62, 0x00, 0x6C, 0x00, 0x62, 0x00,
+ 0x62, 0x00, 0x62, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x6E, 0x00, 0x70, 0x00, 0x6C, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00,
+ 0x70, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x46, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x76, 0x00, 0x76, 0x00, 0x76, 0x00, 0x76, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x69, 0x00, 0x64, 0x00, 0x69, 0x00, 0x64, 0x00,
+ 0x69, 0x00, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x66, 0x00, 0x66, 0x00,
+ 0x66, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00,
+ 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00,
+ 0x6E, 0x00, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00, 0x6E, 0x00,
+ 0x6E, 0x00, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x66, 0x00, 0x66, 0x00, 0x66, 0x00, 0x66, 0x00,
+ 0x66, 0x00, 0x66, 0x00, 0x38, 0x00, 0x24, 0x00,
+ 0x14, 0x00, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00, 0x6C, 0x00,
+ 0x6C, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x76, 0x00, 0x64, 0x00, 0x6A, 0x00, 0x6A, 0x00,
+ 0x6A, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00,
+ 0x70, 0x00, 0x70, 0x00, 0x4C, 0x00, 0x4C, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x66, 0x00, 0x66, 0x00, 0x68, 0x00, 0x5E, 0x00,
+ 0x78, 0x00, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x68, 0x00, 0x68, 0x00, 0x68, 0x00,
+ 0x68, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1TownsMusicFadeTableFMTownsProvider = { ARRAYSIZE(k1TownsMusicFadeTableFMTowns), k1TownsMusicFadeTableFMTowns };
+
+static const byte k1TownsSFXwdTableFMTowns[75266] = {
+ 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0A, 0x00,
+ 0x02, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x12, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x16, 0x00, 0x02, 0x00, 0x05, 0x00, 0x1A, 0x00,
+ 0x03, 0x00, 0x07, 0x00, 0x1E, 0x00, 0x04, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x02, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x02, 0x00, 0x00, 0x00, 0xF6, 0xFF,
+ 0x02, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x02, 0x00,
+ 0x01, 0x00, 0xEE, 0xFF, 0x02, 0x00, 0x03, 0x00,
+ 0xEA, 0xFF, 0x02, 0x00, 0x05, 0x00, 0xE6, 0xFF,
+ 0x03, 0x00, 0x07, 0x00, 0xE2, 0xFF, 0x04, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0A, 0x00,
+ 0x06, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x06, 0x00,
+ 0x01, 0x00, 0x12, 0x00, 0x06, 0x00, 0x03, 0x00,
+ 0x16, 0x00, 0x07, 0x00, 0x05, 0x00, 0x1A, 0x00,
+ 0x0A, 0x00, 0x07, 0x00, 0x1E, 0x00, 0x0C, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x06, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x06, 0x00, 0x00, 0x00, 0xF6, 0xFF,
+ 0x06, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x06, 0x00,
+ 0x01, 0x00, 0xEE, 0xFF, 0x06, 0x00, 0x03, 0x00,
+ 0xEA, 0xFF, 0x07, 0x00, 0x05, 0x00, 0xE6, 0xFF,
+ 0x0A, 0x00, 0x07, 0x00, 0xE2, 0xFF, 0x0C, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x0A, 0x00,
+ 0x01, 0x00, 0x12, 0x00, 0x0B, 0x00, 0x03, 0x00,
+ 0x16, 0x00, 0x0D, 0x00, 0x05, 0x00, 0x1A, 0x00,
+ 0x11, 0x00, 0x07, 0x00, 0x1E, 0x00, 0x15, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x0A, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x0A, 0x00, 0x00, 0x00, 0xF6, 0xFF,
+ 0x0A, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x0A, 0x00,
+ 0x01, 0x00, 0xEE, 0xFF, 0x0B, 0x00, 0x03, 0x00,
+ 0xEA, 0xFF, 0x0D, 0x00, 0x05, 0x00, 0xE6, 0xFF,
+ 0x11, 0x00, 0x07, 0x00, 0xE2, 0xFF, 0x15, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x0A, 0x00,
+ 0x0E, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x0E, 0x00,
+ 0x01, 0x00, 0x12, 0x00, 0x0F, 0x00, 0x03, 0x00,
+ 0x16, 0x00, 0x12, 0x00, 0x05, 0x00, 0x1A, 0x00,
+ 0x18, 0x00, 0x07, 0x00, 0x1E, 0x00, 0x1D, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x0E, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x0E, 0x00, 0x00, 0x00, 0xF6, 0xFF,
+ 0x0E, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x0E, 0x00,
+ 0x01, 0x00, 0xEE, 0xFF, 0x0F, 0x00, 0x03, 0x00,
+ 0xEA, 0xFF, 0x12, 0x00, 0x05, 0x00, 0xE6, 0xFF,
+ 0x18, 0x00, 0x07, 0x00, 0xE2, 0xFF, 0x1D, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x12, 0x00, 0x02, 0x00,
+ 0x06, 0x00, 0x12, 0x00, 0x02, 0x00, 0x0A, 0x00,
+ 0x12, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x12, 0x00,
+ 0x04, 0x00, 0x12, 0x00, 0x15, 0x00, 0x06, 0x00,
+ 0x16, 0x00, 0x19, 0x00, 0x08, 0x00, 0x1A, 0x00,
+ 0x1F, 0x00, 0x0A, 0x00, 0x1E, 0x00, 0x26, 0x00,
+ 0x02, 0x00, 0xFE, 0xFF, 0x12, 0x00, 0x02, 0x00,
+ 0xFA, 0xFF, 0x12, 0x00, 0x02, 0x00, 0xF6, 0xFF,
+ 0x12, 0x00, 0x02, 0x00, 0xF2, 0xFF, 0x12, 0x00,
+ 0x04, 0x00, 0xEE, 0xFF, 0x15, 0x00, 0x06, 0x00,
+ 0xEA, 0xFF, 0x19, 0x00, 0x08, 0x00, 0xE6, 0xFF,
+ 0x1F, 0x00, 0x0A, 0x00, 0xE2, 0xFF, 0x26, 0x00,
+ 0x04, 0x00, 0x02, 0x00, 0x16, 0x00, 0x04, 0x00,
+ 0x06, 0x00, 0x16, 0x00, 0x04, 0x00, 0x0A, 0x00,
+ 0x16, 0x00, 0x04, 0x00, 0x0E, 0x00, 0x16, 0x00,
+ 0x06, 0x00, 0x12, 0x00, 0x19, 0x00, 0x08, 0x00,
+ 0x16, 0x00, 0x1E, 0x00, 0x0A, 0x00, 0x1A, 0x00,
+ 0x26, 0x00, 0x0C, 0x00, 0x1E, 0x00, 0x2E, 0x00,
+ 0x04, 0x00, 0xFE, 0xFF, 0x16, 0x00, 0x04, 0x00,
+ 0xFA, 0xFF, 0x16, 0x00, 0x04, 0x00, 0xF6, 0xFF,
+ 0x16, 0x00, 0x04, 0x00, 0xF2, 0xFF, 0x16, 0x00,
+ 0x06, 0x00, 0xEE, 0xFF, 0x19, 0x00, 0x08, 0x00,
+ 0xEA, 0xFF, 0x1E, 0x00, 0x0A, 0x00, 0xE6, 0xFF,
+ 0x26, 0x00, 0x0C, 0x00, 0xE2, 0xFF, 0x2E, 0x00,
+ 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00, 0x06, 0x00,
+ 0x06, 0x00, 0x1A, 0x00, 0x06, 0x00, 0x0A, 0x00,
+ 0x1A, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x1A, 0x00,
+ 0x08, 0x00, 0x12, 0x00, 0x1E, 0x00, 0x0A, 0x00,
+ 0x16, 0x00, 0x24, 0x00, 0x0C, 0x00, 0x1A, 0x00,
+ 0x2D, 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x37, 0x00,
+ 0x06, 0x00, 0xFE, 0xFF, 0x1A, 0x00, 0x06, 0x00,
+ 0xFA, 0xFF, 0x1A, 0x00, 0x06, 0x00, 0xF6, 0xFF,
+ 0x1A, 0x00, 0x06, 0x00, 0xF2, 0xFF, 0x1A, 0x00,
+ 0x08, 0x00, 0xEE, 0xFF, 0x1E, 0x00, 0x0A, 0x00,
+ 0xEA, 0xFF, 0x24, 0x00, 0x0C, 0x00, 0xE6, 0xFF,
+ 0x2D, 0x00, 0x0E, 0x00, 0xE2, 0xFF, 0x37, 0x00,
+ 0x08, 0x00, 0x02, 0x00, 0x1E, 0x00, 0x08, 0x00,
+ 0x06, 0x00, 0x1E, 0x00, 0x08, 0x00, 0x0A, 0x00,
+ 0x1E, 0x00, 0x08, 0x00, 0x0E, 0x00, 0x1E, 0x00,
+ 0x0A, 0x00, 0x12, 0x00, 0x22, 0x00, 0x0C, 0x00,
+ 0x16, 0x00, 0x29, 0x00, 0x0E, 0x00, 0x1A, 0x00,
+ 0x34, 0x00, 0x10, 0x00, 0x1E, 0x00, 0x3F, 0x00,
+ 0x08, 0x00, 0xFE, 0xFF, 0x1E, 0x00, 0x08, 0x00,
+ 0xFA, 0xFF, 0x1E, 0x00, 0x08, 0x00, 0xF6, 0xFF,
+ 0x1E, 0x00, 0x08, 0x00, 0xF2, 0xFF, 0x1E, 0x00,
+ 0x0A, 0x00, 0xEE, 0xFF, 0x22, 0x00, 0x0C, 0x00,
+ 0xEA, 0xFF, 0x29, 0x00, 0x0E, 0x00, 0xE6, 0xFF,
+ 0x34, 0x00, 0x10, 0x00, 0xE2, 0xFF, 0x3F, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0xFE, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xFE, 0xFF, 0x00, 0x00, 0x0A, 0x00,
+ 0xFE, 0xFF, 0x00, 0x00, 0x0E, 0x00, 0xFE, 0xFF,
+ 0x01, 0x00, 0x12, 0x00, 0xFE, 0xFF, 0x03, 0x00,
+ 0x16, 0x00, 0xFE, 0xFF, 0x05, 0x00, 0x1A, 0x00,
+ 0xFD, 0xFF, 0x07, 0x00, 0x1E, 0x00, 0xFC, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xFE, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xFE, 0xFF, 0x00, 0x00, 0xF6, 0xFF,
+ 0xFE, 0xFF, 0x00, 0x00, 0xF2, 0xFF, 0xFE, 0xFF,
+ 0x01, 0x00, 0xEE, 0xFF, 0xFE, 0xFF, 0x03, 0x00,
+ 0xEA, 0xFF, 0xFE, 0xFF, 0x05, 0x00, 0xE6, 0xFF,
+ 0xFD, 0xFF, 0x07, 0x00, 0xE2, 0xFF, 0xFC, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xFA, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xFA, 0xFF, 0x00, 0x00, 0x0A, 0x00,
+ 0xFA, 0xFF, 0x00, 0x00, 0x0E, 0x00, 0xFA, 0xFF,
+ 0x01, 0x00, 0x12, 0x00, 0xFA, 0xFF, 0x03, 0x00,
+ 0x16, 0x00, 0xF9, 0xFF, 0x05, 0x00, 0x1A, 0x00,
+ 0xF6, 0xFF, 0x07, 0x00, 0x1E, 0x00, 0xF4, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xFA, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xFA, 0xFF, 0x00, 0x00, 0xF6, 0xFF,
+ 0xFA, 0xFF, 0x00, 0x00, 0xF2, 0xFF, 0xFA, 0xFF,
+ 0x01, 0x00, 0xEE, 0xFF, 0xFA, 0xFF, 0x03, 0x00,
+ 0xEA, 0xFF, 0xF9, 0xFF, 0x05, 0x00, 0xE6, 0xFF,
+ 0xF6, 0xFF, 0x07, 0x00, 0xE2, 0xFF, 0xF4, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xF6, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xF6, 0xFF, 0x00, 0x00, 0x0A, 0x00,
+ 0xF6, 0xFF, 0x00, 0x00, 0x0E, 0x00, 0xF6, 0xFF,
+ 0x01, 0x00, 0x12, 0x00, 0xF5, 0xFF, 0x03, 0x00,
+ 0x16, 0x00, 0xF3, 0xFF, 0x05, 0x00, 0x1A, 0x00,
+ 0xEF, 0xFF, 0x07, 0x00, 0x1E, 0x00, 0xEB, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xF6, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xF6, 0xFF, 0x00, 0x00, 0xF6, 0xFF,
+ 0xF6, 0xFF, 0x00, 0x00, 0xF2, 0xFF, 0xF6, 0xFF,
+ 0x01, 0x00, 0xEE, 0xFF, 0xF5, 0xFF, 0x03, 0x00,
+ 0xEA, 0xFF, 0xF3, 0xFF, 0x05, 0x00, 0xE6, 0xFF,
+ 0xEF, 0xFF, 0x07, 0x00, 0xE2, 0xFF, 0xEB, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xF2, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xF2, 0xFF, 0x00, 0x00, 0x0A, 0x00,
+ 0xF2, 0xFF, 0x00, 0x00, 0x0E, 0x00, 0xF2, 0xFF,
+ 0x01, 0x00, 0x12, 0x00, 0xF1, 0xFF, 0x03, 0x00,
+ 0x16, 0x00, 0xEE, 0xFF, 0x05, 0x00, 0x1A, 0x00,
+ 0xE8, 0xFF, 0x07, 0x00, 0x1E, 0x00, 0xE3, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xF2, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xF2, 0xFF, 0x00, 0x00, 0xF6, 0xFF,
+ 0xF2, 0xFF, 0x00, 0x00, 0xF2, 0xFF, 0xF2, 0xFF,
+ 0x01, 0x00, 0xEE, 0xFF, 0xF1, 0xFF, 0x03, 0x00,
+ 0xEA, 0xFF, 0xEE, 0xFF, 0x05, 0x00, 0xE6, 0xFF,
+ 0xE8, 0xFF, 0x07, 0x00, 0xE2, 0xFF, 0xE3, 0xFF,
+ 0x02, 0x00, 0x02, 0x00, 0xEE, 0xFF, 0x02, 0x00,
+ 0x06, 0x00, 0xEE, 0xFF, 0x02, 0x00, 0x0A, 0x00,
+ 0xEE, 0xFF, 0x02, 0x00, 0x0E, 0x00, 0xEE, 0xFF,
+ 0x04, 0x00, 0x12, 0x00, 0xEB, 0xFF, 0x06, 0x00,
+ 0x16, 0x00, 0xE7, 0xFF, 0x08, 0x00, 0x1A, 0x00,
+ 0xE1, 0xFF, 0x0A, 0x00, 0x1E, 0x00, 0xDA, 0xFF,
+ 0x02, 0x00, 0xFE, 0xFF, 0xEE, 0xFF, 0x02, 0x00,
+ 0xFA, 0xFF, 0xEE, 0xFF, 0x02, 0x00, 0xF6, 0xFF,
+ 0xEE, 0xFF, 0x02, 0x00, 0xF2, 0xFF, 0xEE, 0xFF,
+ 0x04, 0x00, 0xEE, 0xFF, 0xEB, 0xFF, 0x06, 0x00,
+ 0xEA, 0xFF, 0xE7, 0xFF, 0x08, 0x00, 0xE6, 0xFF,
+ 0xE1, 0xFF, 0x0A, 0x00, 0xE2, 0xFF, 0xDA, 0xFF,
+ 0x04, 0x00, 0x02, 0x00, 0xEA, 0xFF, 0x04, 0x00,
+ 0x06, 0x00, 0xEA, 0xFF, 0x04, 0x00, 0x0A, 0x00,
+ 0xEA, 0xFF, 0x04, 0x00, 0x0E, 0x00, 0xEA, 0xFF,
+ 0x06, 0x00, 0x12, 0x00, 0xE7, 0xFF, 0x08, 0x00,
+ 0x16, 0x00, 0xE2, 0xFF, 0x0A, 0x00, 0x1A, 0x00,
+ 0xDA, 0xFF, 0x0C, 0x00, 0x1E, 0x00, 0xD2, 0xFF,
+ 0x04, 0x00, 0xFE, 0xFF, 0xEA, 0xFF, 0x04, 0x00,
+ 0xFA, 0xFF, 0xEA, 0xFF, 0x04, 0x00, 0xF6, 0xFF,
+ 0xEA, 0xFF, 0x04, 0x00, 0xF2, 0xFF, 0xEA, 0xFF,
+ 0x06, 0x00, 0xEE, 0xFF, 0xE7, 0xFF, 0x08, 0x00,
+ 0xEA, 0xFF, 0xE2, 0xFF, 0x0A, 0x00, 0xE6, 0xFF,
+ 0xDA, 0xFF, 0x0C, 0x00, 0xE2, 0xFF, 0xD2, 0xFF,
+ 0x06, 0x00, 0x02, 0x00, 0xE6, 0xFF, 0x06, 0x00,
+ 0x06, 0x00, 0xE6, 0xFF, 0x06, 0x00, 0x0A, 0x00,
+ 0xE6, 0xFF, 0x06, 0x00, 0x0E, 0x00, 0xE6, 0xFF,
+ 0x08, 0x00, 0x12, 0x00, 0xE2, 0xFF, 0x0A, 0x00,
+ 0x16, 0x00, 0xDC, 0xFF, 0x0C, 0x00, 0x1A, 0x00,
+ 0xD3, 0xFF, 0x0E, 0x00, 0x1E, 0x00, 0xC9, 0xFF,
+ 0x06, 0x00, 0xFE, 0xFF, 0xE6, 0xFF, 0x06, 0x00,
+ 0xFA, 0xFF, 0xE6, 0xFF, 0x06, 0x00, 0xF6, 0xFF,
+ 0xE6, 0xFF, 0x06, 0x00, 0xF2, 0xFF, 0xE6, 0xFF,
+ 0x08, 0x00, 0xEE, 0xFF, 0xE2, 0xFF, 0x0A, 0x00,
+ 0xEA, 0xFF, 0xDC, 0xFF, 0x0C, 0x00, 0xE6, 0xFF,
+ 0xD3, 0xFF, 0x0E, 0x00, 0xE2, 0xFF, 0xC9, 0xFF,
+ 0x08, 0x00, 0x02, 0x00, 0xE2, 0xFF, 0x08, 0x00,
+ 0x06, 0x00, 0xE2, 0xFF, 0x08, 0x00, 0x0A, 0x00,
+ 0xE2, 0xFF, 0x08, 0x00, 0x0E, 0x00, 0xE2, 0xFF,
+ 0x0A, 0x00, 0x12, 0x00, 0xDE, 0xFF, 0x0C, 0x00,
+ 0x16, 0x00, 0xD7, 0xFF, 0x0E, 0x00, 0x1A, 0x00,
+ 0xCC, 0xFF, 0x10, 0x00, 0x1E, 0x00, 0xC1, 0xFF,
+ 0x08, 0x00, 0xFE, 0xFF, 0xE2, 0xFF, 0x08, 0x00,
+ 0xFA, 0xFF, 0xE2, 0xFF, 0x08, 0x00, 0xF6, 0xFF,
+ 0xE2, 0xFF, 0x08, 0x00, 0xF2, 0xFF, 0xE2, 0xFF,
+ 0x0A, 0x00, 0xEE, 0xFF, 0xDE, 0xFF, 0x0C, 0x00,
+ 0xEA, 0xFF, 0xD7, 0xFF, 0x0E, 0x00, 0xE6, 0xFF,
+ 0xCC, 0xFF, 0x10, 0x00, 0xE2, 0xFF, 0xC1, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0A, 0x00,
+ 0x02, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x02, 0x00,
+ 0x02, 0x00, 0x13, 0x00, 0x02, 0x00, 0x04, 0x00,
+ 0x17, 0x00, 0x03, 0x00, 0x06, 0x00, 0x1B, 0x00,
+ 0x03, 0x00, 0x08, 0x00, 0x1F, 0x00, 0x04, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x02, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x02, 0x00, 0x00, 0x00, 0xF6, 0xFF,
+ 0x02, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x02, 0x00,
+ 0x02, 0x00, 0xED, 0xFF, 0x02, 0x00, 0x04, 0x00,
+ 0xE9, 0xFF, 0x03, 0x00, 0x06, 0x00, 0xE5, 0xFF,
+ 0x03, 0x00, 0x08, 0x00, 0xE1, 0xFF, 0x04, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0A, 0x00,
+ 0x06, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x06, 0x00,
+ 0x02, 0x00, 0x13, 0x00, 0x07, 0x00, 0x04, 0x00,
+ 0x17, 0x00, 0x09, 0x00, 0x06, 0x00, 0x1B, 0x00,
+ 0x0A, 0x00, 0x08, 0x00, 0x1F, 0x00, 0x0D, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x06, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x06, 0x00, 0x00, 0x00, 0xF6, 0xFF,
+ 0x06, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x06, 0x00,
+ 0x02, 0x00, 0xED, 0xFF, 0x07, 0x00, 0x04, 0x00,
+ 0xE9, 0xFF, 0x09, 0x00, 0x06, 0x00, 0xE5, 0xFF,
+ 0x0A, 0x00, 0x08, 0x00, 0xE1, 0xFF, 0x0D, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x0A, 0x00,
+ 0x02, 0x00, 0x13, 0x00, 0x0C, 0x00, 0x04, 0x00,
+ 0x17, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x1B, 0x00,
+ 0x12, 0x00, 0x08, 0x00, 0x1F, 0x00, 0x16, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x0A, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x0A, 0x00, 0x00, 0x00, 0xF6, 0xFF,
+ 0x0A, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x0A, 0x00,
+ 0x02, 0x00, 0xED, 0xFF, 0x0C, 0x00, 0x04, 0x00,
+ 0xE9, 0xFF, 0x0F, 0x00, 0x06, 0x00, 0xE5, 0xFF,
+ 0x12, 0x00, 0x08, 0x00, 0xE1, 0xFF, 0x16, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x0A, 0x00,
+ 0x0E, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x0E, 0x00,
+ 0x02, 0x00, 0x13, 0x00, 0x11, 0x00, 0x04, 0x00,
+ 0x17, 0x00, 0x15, 0x00, 0x06, 0x00, 0x1B, 0x00,
+ 0x19, 0x00, 0x08, 0x00, 0x1F, 0x00, 0x1F, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x0E, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x0E, 0x00, 0x00, 0x00, 0xF6, 0xFF,
+ 0x0E, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x0E, 0x00,
+ 0x02, 0x00, 0xED, 0xFF, 0x11, 0x00, 0x04, 0x00,
+ 0xE9, 0xFF, 0x15, 0x00, 0x06, 0x00, 0xE5, 0xFF,
+ 0x19, 0x00, 0x08, 0x00, 0xE1, 0xFF, 0x1F, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x12, 0x00, 0x02, 0x00,
+ 0x06, 0x00, 0x12, 0x00, 0x02, 0x00, 0x0A, 0x00,
+ 0x12, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x12, 0x00,
+ 0x05, 0x00, 0x13, 0x00, 0x17, 0x00, 0x07, 0x00,
+ 0x17, 0x00, 0x1C, 0x00, 0x09, 0x00, 0x1B, 0x00,
+ 0x22, 0x00, 0x0B, 0x00, 0x1F, 0x00, 0x29, 0x00,
+ 0x02, 0x00, 0xFE, 0xFF, 0x12, 0x00, 0x02, 0x00,
+ 0xFA, 0xFF, 0x12, 0x00, 0x02, 0x00, 0xF6, 0xFF,
+ 0x12, 0x00, 0x02, 0x00, 0xF2, 0xFF, 0x12, 0x00,
+ 0x05, 0x00, 0xED, 0xFF, 0x17, 0x00, 0x07, 0x00,
+ 0xE9, 0xFF, 0x1C, 0x00, 0x09, 0x00, 0xE5, 0xFF,
+ 0x22, 0x00, 0x0B, 0x00, 0xE1, 0xFF, 0x29, 0x00,
+ 0x04, 0x00, 0x02, 0x00, 0x16, 0x00, 0x04, 0x00,
+ 0x06, 0x00, 0x16, 0x00, 0x04, 0x00, 0x0A, 0x00,
+ 0x16, 0x00, 0x04, 0x00, 0x0E, 0x00, 0x16, 0x00,
+ 0x07, 0x00, 0x13, 0x00, 0x1C, 0x00, 0x09, 0x00,
+ 0x17, 0x00, 0x22, 0x00, 0x0B, 0x00, 0x1B, 0x00,
+ 0x29, 0x00, 0x0D, 0x00, 0x1F, 0x00, 0x32, 0x00,
+ 0x04, 0x00, 0xFE, 0xFF, 0x16, 0x00, 0x04, 0x00,
+ 0xFA, 0xFF, 0x16, 0x00, 0x04, 0x00, 0xF6, 0xFF,
+ 0x16, 0x00, 0x04, 0x00, 0xF2, 0xFF, 0x16, 0x00,
+ 0x07, 0x00, 0xED, 0xFF, 0x1C, 0x00, 0x09, 0x00,
+ 0xE9, 0xFF, 0x22, 0x00, 0x0B, 0x00, 0xE5, 0xFF,
+ 0x29, 0x00, 0x0D, 0x00, 0xE1, 0xFF, 0x32, 0x00,
+ 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00, 0x06, 0x00,
+ 0x06, 0x00, 0x1A, 0x00, 0x06, 0x00, 0x0A, 0x00,
+ 0x1A, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x1A, 0x00,
+ 0x09, 0x00, 0x13, 0x00, 0x21, 0x00, 0x0B, 0x00,
+ 0x17, 0x00, 0x28, 0x00, 0x0D, 0x00, 0x1B, 0x00,
+ 0x31, 0x00, 0x0F, 0x00, 0x1F, 0x00, 0x3B, 0x00,
+ 0x06, 0x00, 0xFE, 0xFF, 0x1A, 0x00, 0x06, 0x00,
+ 0xFA, 0xFF, 0x1A, 0x00, 0x06, 0x00, 0xF6, 0xFF,
+ 0x1A, 0x00, 0x06, 0x00, 0xF2, 0xFF, 0x1A, 0x00,
+ 0x09, 0x00, 0xED, 0xFF, 0x21, 0x00, 0x0B, 0x00,
+ 0xE9, 0xFF, 0x28, 0x00, 0x0D, 0x00, 0xE5, 0xFF,
+ 0x31, 0x00, 0x0F, 0x00, 0xE1, 0xFF, 0x3B, 0x00,
+ 0x08, 0x00, 0x02, 0x00, 0x1E, 0x00, 0x08, 0x00,
+ 0x06, 0x00, 0x1E, 0x00, 0x08, 0x00, 0x0A, 0x00,
+ 0x1E, 0x00, 0x08, 0x00, 0x0E, 0x00, 0x1E, 0x00,
+ 0x0B, 0x00, 0x13, 0x00, 0x26, 0x00, 0x0D, 0x00,
+ 0x17, 0x00, 0x2E, 0x00, 0x0F, 0x00, 0x1B, 0x00,
+ 0x38, 0x00, 0x11, 0x00, 0x1F, 0x00, 0x44, 0x00,
+ 0x08, 0x00, 0xFE, 0xFF, 0x1E, 0x00, 0x08, 0x00,
+ 0xFA, 0xFF, 0x1E, 0x00, 0x08, 0x00, 0xF6, 0xFF,
+ 0x1E, 0x00, 0x08, 0x00, 0xF2, 0xFF, 0x1E, 0x00,
+ 0x0B, 0x00, 0xED, 0xFF, 0x26, 0x00, 0x0D, 0x00,
+ 0xE9, 0xFF, 0x2E, 0x00, 0x0F, 0x00, 0xE5, 0xFF,
+ 0x38, 0x00, 0x11, 0x00, 0xE1, 0xFF, 0x44, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0xFE, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xFE, 0xFF, 0x00, 0x00, 0x0A, 0x00,
+ 0xFE, 0xFF, 0x00, 0x00, 0x0E, 0x00, 0xFE, 0xFF,
+ 0x02, 0x00, 0x13, 0x00, 0xFE, 0xFF, 0x04, 0x00,
+ 0x17, 0x00, 0xFD, 0xFF, 0x06, 0x00, 0x1B, 0x00,
+ 0xFD, 0xFF, 0x08, 0x00, 0x1F, 0x00, 0xFC, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xFE, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xFE, 0xFF, 0x00, 0x00, 0xF6, 0xFF,
+ 0xFE, 0xFF, 0x00, 0x00, 0xF2, 0xFF, 0xFE, 0xFF,
+ 0x02, 0x00, 0xED, 0xFF, 0xFE, 0xFF, 0x04, 0x00,
+ 0xE9, 0xFF, 0xFD, 0xFF, 0x06, 0x00, 0xE5, 0xFF,
+ 0xFD, 0xFF, 0x08, 0x00, 0xE1, 0xFF, 0xFC, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xFA, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xFA, 0xFF, 0x00, 0x00, 0x0A, 0x00,
+ 0xFA, 0xFF, 0x00, 0x00, 0x0E, 0x00, 0xFA, 0xFF,
+ 0x02, 0x00, 0x13, 0x00, 0xF9, 0xFF, 0x04, 0x00,
+ 0x17, 0x00, 0xF7, 0xFF, 0x06, 0x00, 0x1B, 0x00,
+ 0xF6, 0xFF, 0x08, 0x00, 0x1F, 0x00, 0xF3, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xFA, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xFA, 0xFF, 0x00, 0x00, 0xF6, 0xFF,
+ 0xFA, 0xFF, 0x00, 0x00, 0xF2, 0xFF, 0xFA, 0xFF,
+ 0x02, 0x00, 0xED, 0xFF, 0xF9, 0xFF, 0x04, 0x00,
+ 0xE9, 0xFF, 0xF7, 0xFF, 0x06, 0x00, 0xE5, 0xFF,
+ 0xF6, 0xFF, 0x08, 0x00, 0xE1, 0xFF, 0xF3, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xF6, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xF6, 0xFF, 0x00, 0x00, 0x0A, 0x00,
+ 0xF6, 0xFF, 0x00, 0x00, 0x0E, 0x00, 0xF6, 0xFF,
+ 0x02, 0x00, 0x13, 0x00, 0xF4, 0xFF, 0x04, 0x00,
+ 0x17, 0x00, 0xF1, 0xFF, 0x06, 0x00, 0x1B, 0x00,
+ 0xEE, 0xFF, 0x08, 0x00, 0x1F, 0x00, 0xEA, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xF6, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xF6, 0xFF, 0x00, 0x00, 0xF6, 0xFF,
+ 0xF6, 0xFF, 0x00, 0x00, 0xF2, 0xFF, 0xF6, 0xFF,
+ 0x02, 0x00, 0xED, 0xFF, 0xF4, 0xFF, 0x04, 0x00,
+ 0xE9, 0xFF, 0xF1, 0xFF, 0x06, 0x00, 0xE5, 0xFF,
+ 0xEE, 0xFF, 0x08, 0x00, 0xE1, 0xFF, 0xEA, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xF2, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xF2, 0xFF, 0x00, 0x00, 0x0A, 0x00,
+ 0xF2, 0xFF, 0x00, 0x00, 0x0E, 0x00, 0xF2, 0xFF,
+ 0x02, 0x00, 0x13, 0x00, 0xEF, 0xFF, 0x04, 0x00,
+ 0x17, 0x00, 0xEB, 0xFF, 0x06, 0x00, 0x1B, 0x00,
+ 0xE7, 0xFF, 0x08, 0x00, 0x1F, 0x00, 0xE1, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xF2, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xF2, 0xFF, 0x00, 0x00, 0xF6, 0xFF,
+ 0xF2, 0xFF, 0x00, 0x00, 0xF2, 0xFF, 0xF2, 0xFF,
+ 0x02, 0x00, 0xED, 0xFF, 0xEF, 0xFF, 0x04, 0x00,
+ 0xE9, 0xFF, 0xEB, 0xFF, 0x06, 0x00, 0xE5, 0xFF,
+ 0xE7, 0xFF, 0x08, 0x00, 0xE1, 0xFF, 0xE1, 0xFF,
+ 0x02, 0x00, 0x02, 0x00, 0xEE, 0xFF, 0x02, 0x00,
+ 0x06, 0x00, 0xEE, 0xFF, 0x02, 0x00, 0x0A, 0x00,
+ 0xEE, 0xFF, 0x02, 0x00, 0x0E, 0x00, 0xEE, 0xFF,
+ 0x05, 0x00, 0x13, 0x00, 0xE9, 0xFF, 0x07, 0x00,
+ 0x17, 0x00, 0xE4, 0xFF, 0x09, 0x00, 0x1B, 0x00,
+ 0xDE, 0xFF, 0x0B, 0x00, 0x1F, 0x00, 0xD7, 0xFF,
+ 0x02, 0x00, 0xFE, 0xFF, 0xEE, 0xFF, 0x02, 0x00,
+ 0xFA, 0xFF, 0xEE, 0xFF, 0x02, 0x00, 0xF6, 0xFF,
+ 0xEE, 0xFF, 0x02, 0x00, 0xF2, 0xFF, 0xEE, 0xFF,
+ 0x05, 0x00, 0xED, 0xFF, 0xE9, 0xFF, 0x07, 0x00,
+ 0xE9, 0xFF, 0xE4, 0xFF, 0x09, 0x00, 0xE5, 0xFF,
+ 0xDE, 0xFF, 0x0B, 0x00, 0xE1, 0xFF, 0xD7, 0xFF,
+ 0x04, 0x00, 0x02, 0x00, 0xEA, 0xFF, 0x04, 0x00,
+ 0x06, 0x00, 0xEA, 0xFF, 0x04, 0x00, 0x0A, 0x00,
+ 0xEA, 0xFF, 0x04, 0x00, 0x0E, 0x00, 0xEA, 0xFF,
+ 0x07, 0x00, 0x13, 0x00, 0xE4, 0xFF, 0x09, 0x00,
+ 0x17, 0x00, 0xDE, 0xFF, 0x0B, 0x00, 0x1B, 0x00,
+ 0xD7, 0xFF, 0x0D, 0x00, 0x1F, 0x00, 0xCE, 0xFF,
+ 0x04, 0x00, 0xFE, 0xFF, 0xEA, 0xFF, 0x04, 0x00,
+ 0xFA, 0xFF, 0xEA, 0xFF, 0x04, 0x00, 0xF6, 0xFF,
+ 0xEA, 0xFF, 0x04, 0x00, 0xF2, 0xFF, 0xEA, 0xFF,
+ 0x07, 0x00, 0xED, 0xFF, 0xE4, 0xFF, 0x09, 0x00,
+ 0xE9, 0xFF, 0xDE, 0xFF, 0x0B, 0x00, 0xE5, 0xFF,
+ 0xD7, 0xFF, 0x0D, 0x00, 0xE1, 0xFF, 0xCE, 0xFF,
+ 0x06, 0x00, 0x02, 0x00, 0xE6, 0xFF, 0x06, 0x00,
+ 0x06, 0x00, 0xE6, 0xFF, 0x06, 0x00, 0x0A, 0x00,
+ 0xE6, 0xFF, 0x06, 0x00, 0x0E, 0x00, 0xE6, 0xFF,
+ 0x09, 0x00, 0x13, 0x00, 0xDF, 0xFF, 0x0B, 0x00,
+ 0x17, 0x00, 0xD8, 0xFF, 0x0D, 0x00, 0x1B, 0x00,
+ 0xCF, 0xFF, 0x0F, 0x00, 0x1F, 0x00, 0xC5, 0xFF,
+ 0x06, 0x00, 0xFE, 0xFF, 0xE6, 0xFF, 0x06, 0x00,
+ 0xFA, 0xFF, 0xE6, 0xFF, 0x06, 0x00, 0xF6, 0xFF,
+ 0xE6, 0xFF, 0x06, 0x00, 0xF2, 0xFF, 0xE6, 0xFF,
+ 0x09, 0x00, 0xED, 0xFF, 0xDF, 0xFF, 0x0B, 0x00,
+ 0xE9, 0xFF, 0xD8, 0xFF, 0x0D, 0x00, 0xE5, 0xFF,
+ 0xCF, 0xFF, 0x0F, 0x00, 0xE1, 0xFF, 0xC5, 0xFF,
+ 0x08, 0x00, 0x02, 0x00, 0xE2, 0xFF, 0x08, 0x00,
+ 0x06, 0x00, 0xE2, 0xFF, 0x08, 0x00, 0x0A, 0x00,
+ 0xE2, 0xFF, 0x08, 0x00, 0x0E, 0x00, 0xE2, 0xFF,
+ 0x0B, 0x00, 0x13, 0x00, 0xDA, 0xFF, 0x0D, 0x00,
+ 0x17, 0x00, 0xD2, 0xFF, 0x0F, 0x00, 0x1B, 0x00,
+ 0xC8, 0xFF, 0x11, 0x00, 0x1F, 0x00, 0xBC, 0xFF,
+ 0x08, 0x00, 0xFE, 0xFF, 0xE2, 0xFF, 0x08, 0x00,
+ 0xFA, 0xFF, 0xE2, 0xFF, 0x08, 0x00, 0xF6, 0xFF,
+ 0xE2, 0xFF, 0x08, 0x00, 0xF2, 0xFF, 0xE2, 0xFF,
+ 0x0B, 0x00, 0xED, 0xFF, 0xDA, 0xFF, 0x0D, 0x00,
+ 0xE9, 0xFF, 0xD2, 0xFF, 0x0F, 0x00, 0xE5, 0xFF,
+ 0xC8, 0xFF, 0x11, 0x00, 0xE1, 0xFF, 0xBC, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0B, 0x00,
+ 0x02, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x15, 0x00, 0x02, 0x00, 0x05, 0x00,
+ 0x19, 0x00, 0x03, 0x00, 0x07, 0x00, 0x1E, 0x00,
+ 0x04, 0x00, 0x09, 0x00, 0x22, 0x00, 0x05, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x02, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x02, 0x00, 0x00, 0x00, 0xF5, 0xFF,
+ 0x02, 0x00, 0x00, 0x00, 0xF1, 0xFF, 0x02, 0x00,
+ 0x03, 0x00, 0xEB, 0xFF, 0x02, 0x00, 0x05, 0x00,
+ 0xE7, 0xFF, 0x03, 0x00, 0x07, 0x00, 0xE2, 0xFF,
+ 0x04, 0x00, 0x09, 0x00, 0xDE, 0xFF, 0x05, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0B, 0x00,
+ 0x06, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x06, 0x00,
+ 0x03, 0x00, 0x15, 0x00, 0x07, 0x00, 0x05, 0x00,
+ 0x19, 0x00, 0x0A, 0x00, 0x07, 0x00, 0x1E, 0x00,
+ 0x0C, 0x00, 0x09, 0x00, 0x22, 0x00, 0x0F, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x06, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x06, 0x00, 0x00, 0x00, 0xF5, 0xFF,
+ 0x06, 0x00, 0x00, 0x00, 0xF1, 0xFF, 0x06, 0x00,
+ 0x03, 0x00, 0xEB, 0xFF, 0x07, 0x00, 0x05, 0x00,
+ 0xE7, 0xFF, 0x0A, 0x00, 0x07, 0x00, 0xE2, 0xFF,
+ 0x0C, 0x00, 0x09, 0x00, 0xDE, 0xFF, 0x0F, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0B, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x0A, 0x00,
+ 0x03, 0x00, 0x15, 0x00, 0x0D, 0x00, 0x05, 0x00,
+ 0x19, 0x00, 0x11, 0x00, 0x07, 0x00, 0x1E, 0x00,
+ 0x15, 0x00, 0x09, 0x00, 0x22, 0x00, 0x19, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x0A, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x0A, 0x00, 0x00, 0x00, 0xF5, 0xFF,
+ 0x0A, 0x00, 0x00, 0x00, 0xF1, 0xFF, 0x0A, 0x00,
+ 0x03, 0x00, 0xEB, 0xFF, 0x0D, 0x00, 0x05, 0x00,
+ 0xE7, 0xFF, 0x11, 0x00, 0x07, 0x00, 0xE2, 0xFF,
+ 0x15, 0x00, 0x09, 0x00, 0xDE, 0xFF, 0x19, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x06, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x0B, 0x00,
+ 0x0E, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x0E, 0x00,
+ 0x03, 0x00, 0x15, 0x00, 0x12, 0x00, 0x05, 0x00,
+ 0x19, 0x00, 0x18, 0x00, 0x07, 0x00, 0x1E, 0x00,
+ 0x1D, 0x00, 0x09, 0x00, 0x22, 0x00, 0x23, 0x00,
+ 0x00, 0x00, 0xFE, 0xFF, 0x0E, 0x00, 0x00, 0x00,
+ 0xFA, 0xFF, 0x0E, 0x00, 0x00, 0x00, 0xF5, 0xFF,
+ 0x0E, 0x00, 0x00, 0x00, 0xF1, 0xFF, 0x0E, 0x00,
+ 0x03, 0x00, 0xEB, 0xFF, 0x12, 0x00, 0x05, 0x00,
+ 0xE7, 0xFF, 0x18, 0x00, 0x07, 0x00, 0xE2, 0xFF,
+ 0x1D, 0x00, 0x09, 0x00, 0xDE, 0xFF, 0x23, 0x00,
+ 0x03, 0x00, 0x02, 0x00, 0x13, 0x00, 0x03, 0x00,
+ 0x06, 0x00, 0x13, 0x00, 0x03, 0x00, 0x0B, 0x00,
+ 0x13, 0x00, 0x03, 0x00, 0x0F, 0x00, 0x13, 0x00,
+ 0x06, 0x00, 0x15, 0x00, 0x19, 0x00, 0x08, 0x00,
+ 0x19, 0x00, 0x1F, 0x00, 0x0A, 0x00, 0x1E, 0x00,
+ 0x26, 0x00, 0x0C, 0x00, 0x22, 0x00, 0x2E, 0x00,
+ 0x03, 0x00, 0xFE, 0xFF, 0x13, 0x00, 0x03, 0x00,
+ 0xFA, 0xFF, 0x13, 0x00, 0x03, 0x00, 0xF5, 0xFF,
+ 0x13, 0x00, 0x03, 0x00, 0xF1, 0xFF, 0x13, 0x00,
+ 0x06, 0x00, 0xEB, 0xFF, 0x19, 0x00, 0x08, 0x00,
+ 0xE7, 0xFF, 0x1F, 0x00, 0x0A, 0x00, 0xE2, 0xFF,
+ 0x26, 0x00, 0x0C, 0x00, 0xDE, 0xFF, 0x2E, 0x00,
+ 0x05, 0x00, 0x02, 0x00, 0x17, 0x00, 0x05, 0x00,
+ 0x06, 0x00, 0x17, 0x00, 0x05, 0x00, 0x0B, 0x00,
+ 0x17, 0x00, 0x05, 0x00, 0x0F, 0x00, 0x17, 0x00,
+ 0x08, 0x00, 0x15, 0x00, 0x1E, 0x00, 0x0A, 0x00,
+ 0x19, 0x00, 0x26, 0x00, 0x0C, 0x00, 0x1E, 0x00,
+ 0x2E, 0x00, 0x0E, 0x00, 0x22, 0x00, 0x38, 0x00,
+ 0x05, 0x00, 0xFE, 0xFF, 0x17, 0x00, 0x05, 0x00,
+ 0xFA, 0xFF, 0x17, 0x00, 0x05, 0x00, 0xF5, 0xFF,
+ 0x17, 0x00, 0x05, 0x00, 0xF1, 0xFF, 0x17, 0x00,
+ 0x08, 0x00, 0xEB, 0xFF, 0x1E, 0x00, 0x0A, 0x00,
+ 0xE7, 0xFF, 0x26, 0x00, 0x0C, 0x00, 0xE2, 0xFF,
+ 0x2E, 0x00, 0x0E, 0x00, 0xDE, 0xFF, 0x38, 0x00,
+ 0x07, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x07, 0x00,
+ 0x06, 0x00, 0x1B, 0x00, 0x07, 0x00, 0x0B, 0x00,
+ 0x1B, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x1B, 0x00,
+ 0x0A, 0x00, 0x15, 0x00, 0x24, 0x00, 0x0C, 0x00,
+ 0x19, 0x00, 0x2D, 0x00, 0x0E, 0x00, 0x1E, 0x00,
+ 0x37, 0x00, 0x10, 0x00, 0x22, 0x00, 0x42, 0x00,
+ 0x07, 0x00, 0xFE, 0xFF, 0x1B, 0x00, 0x07, 0x00,
+ 0xFA, 0xFF, 0x1B, 0x00, 0x07, 0x00, 0xF5, 0xFF,
+ 0x1B, 0x00, 0x07, 0x00, 0xF1, 0xFF, 0x1B, 0x00,
+ 0x0A, 0x00, 0xEB, 0xFF, 0x24, 0x00, 0x0C, 0x00,
+ 0xE7, 0xFF, 0x2D, 0x00, 0x0E, 0x00, 0xE2, 0xFF,
+ 0x37, 0x00, 0x10, 0x00, 0xDE, 0xFF, 0x42, 0x00,
+ 0x09, 0x00, 0x02, 0x00, 0x1F, 0x00, 0x09, 0x00,
+ 0x06, 0x00, 0x1F, 0x00, 0x09, 0x00, 0x0B, 0x00,
+ 0x1F, 0x00, 0x09, 0x00, 0x0F, 0x00, 0x1F, 0x00,
+ 0x0C, 0x00, 0x15, 0x00, 0x29, 0x00, 0x0E, 0x00,
+ 0x19, 0x00, 0x34, 0x00, 0x10, 0x00, 0x1E, 0x00,
+ 0x3F, 0x00, 0x12, 0x00, 0x22, 0x00, 0x4C, 0x00,
+ 0x09, 0x00, 0xFE, 0xFF, 0x1F, 0x00, 0x09, 0x00,
+ 0xFA, 0xFF, 0x1F, 0x00, 0x09, 0x00, 0xF5, 0xFF,
+ 0x1F, 0x00, 0x09, 0x00, 0xF1, 0xFF, 0x1F, 0x00,
+ 0x0C, 0x00, 0xEB, 0xFF, 0x29, 0x00, 0x0E, 0x00,
+ 0xE7, 0xFF, 0x34, 0x00, 0x10, 0x00, 0xE2, 0xFF,
+ 0x3F, 0x00, 0x12, 0x00, 0xDE, 0xFF, 0x4C, 0x00,
+ 0x00, 0x00, 0x02, 0x00, 0xFE, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xFE, 0xFF, 0x00, 0x00, 0x0B, 0x00,
+ 0xFE, 0xFF, 0x00, 0x00, 0x0F, 0x00, 0xFE, 0xFF,
+ 0x03, 0x00, 0x15, 0x00, 0xFE, 0xFF, 0x05, 0x00,
+ 0x19, 0x00, 0xFD, 0xFF, 0x07, 0x00, 0x1E, 0x00,
+ 0xFC, 0xFF, 0x09, 0x00, 0x22, 0x00, 0xFB, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xFE, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xFE, 0xFF, 0x00, 0x00, 0xF5, 0xFF,
+ 0xFE, 0xFF, 0x00, 0x00, 0xF1, 0xFF, 0xFE, 0xFF,
+ 0x03, 0x00, 0xEB, 0xFF, 0xFE, 0xFF, 0x05, 0x00,
+ 0xE7, 0xFF, 0xFD, 0xFF, 0x07, 0x00, 0xE2, 0xFF,
+ 0xFC, 0xFF, 0x09, 0x00, 0xDE, 0xFF, 0xFB, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xFA, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xFA, 0xFF, 0x00, 0x00, 0x0B, 0x00,
+ 0xFA, 0xFF, 0x00, 0x00, 0x0F, 0x00, 0xFA, 0xFF,
+ 0x03, 0x00, 0x15, 0x00, 0xF9, 0xFF, 0x05, 0x00,
+ 0x19, 0x00, 0xF6, 0xFF, 0x07, 0x00, 0x1E, 0x00,
+ 0xF4, 0xFF, 0x09, 0x00, 0x22, 0x00, 0xF1, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xFA, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xFA, 0xFF, 0x00, 0x00, 0xF5, 0xFF,
+ 0xFA, 0xFF, 0x00, 0x00, 0xF1, 0xFF, 0xFA, 0xFF,
+ 0x03, 0x00, 0xEB, 0xFF, 0xF9, 0xFF, 0x05, 0x00,
+ 0xE7, 0xFF, 0xF6, 0xFF, 0x07, 0x00, 0xE2, 0xFF,
+ 0xF4, 0xFF, 0x09, 0x00, 0xDE, 0xFF, 0xF1, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xF6, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xF6, 0xFF, 0x00, 0x00, 0x0B, 0x00,
+ 0xF6, 0xFF, 0x00, 0x00, 0x0F, 0x00, 0xF6, 0xFF,
+ 0x03, 0x00, 0x15, 0x00, 0xF3, 0xFF, 0x05, 0x00,
+ 0x19, 0x00, 0xEF, 0xFF, 0x07, 0x00, 0x1E, 0x00,
+ 0xEB, 0xFF, 0x09, 0x00, 0x22, 0x00, 0xE7, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xF6, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xF6, 0xFF, 0x00, 0x00, 0xF5, 0xFF,
+ 0xF6, 0xFF, 0x00, 0x00, 0xF1, 0xFF, 0xF6, 0xFF,
+ 0x03, 0x00, 0xEB, 0xFF, 0xF3, 0xFF, 0x05, 0x00,
+ 0xE7, 0xFF, 0xEF, 0xFF, 0x07, 0x00, 0xE2, 0xFF,
+ 0xEB, 0xFF, 0x09, 0x00, 0xDE, 0xFF, 0xE7, 0xFF,
+ 0x00, 0x00, 0x02, 0x00, 0xF2, 0xFF, 0x00, 0x00,
+ 0x06, 0x00, 0xF2, 0xFF, 0x00, 0x00, 0x0B, 0x00,
+ 0xF2, 0xFF, 0x00, 0x00, 0x0F, 0x00, 0xF2, 0xFF,
+ 0x03, 0x00, 0x15, 0x00, 0xEE, 0xFF, 0x05, 0x00,
+ 0x19, 0x00, 0xE8, 0xFF, 0x07, 0x00, 0x1E, 0x00,
+ 0xE3, 0xFF, 0x09, 0x00, 0x22, 0x00, 0xDD, 0xFF,
+ 0x00, 0x00, 0xFE, 0xFF, 0xF2, 0xFF, 0x00, 0x00,
+ 0xFA, 0xFF, 0xF2, 0xFF, 0x00, 0x00, 0xF5, 0xFF,
+ 0xF2, 0xFF, 0x00, 0x00, 0xF1, 0xFF, 0xF2, 0xFF,
+ 0x03, 0x00, 0xEB, 0xFF, 0xEE, 0xFF, 0x05, 0x00,
+ 0xE7, 0xFF, 0xE8, 0xFF, 0x07, 0x00, 0xE2, 0xFF,
+ 0xE3, 0xFF, 0x09, 0x00, 0xDE, 0xFF, 0xDD, 0xFF,
+ 0x03, 0x00, 0x02, 0x00, 0xED, 0xFF, 0x03, 0x00,
+ 0x06, 0x00, 0xED, 0xFF, 0x03, 0x00, 0x0B, 0x00,
+ 0xED, 0xFF, 0x03, 0x00, 0x0F, 0x00, 0xED, 0xFF,
+ 0x06, 0x00, 0x15, 0x00, 0xE7, 0xFF, 0x08, 0x00,
+ 0x19, 0x00, 0xE1, 0xFF, 0x0A, 0x00, 0x1E, 0x00,
+ 0xDA, 0xFF, 0x0C, 0x00, 0x22, 0x00, 0xD2, 0xFF,
+ 0x03, 0x00, 0xFE, 0xFF, 0xED, 0xFF, 0x03, 0x00,
+ 0xFA, 0xFF, 0xED, 0xFF, 0x03, 0x00, 0xF5, 0xFF,
+ 0xED, 0xFF, 0x03, 0x00, 0xF1, 0xFF, 0xED, 0xFF,
+ 0x06, 0x00, 0xEB, 0xFF, 0xE7, 0xFF, 0x08, 0x00,
+ 0xE7, 0xFF, 0xE1, 0xFF, 0x0A, 0x00, 0xE2, 0xFF,
+ 0xDA, 0xFF, 0x0C, 0x00, 0xDE, 0xFF, 0xD2, 0xFF,
+ 0x05, 0x00, 0x02, 0x00, 0xE9, 0xFF, 0x05, 0x00,
+ 0x06, 0x00, 0xE9, 0xFF, 0x05, 0x00, 0x0B, 0x00,
+ 0xE9, 0xFF, 0x05, 0x00, 0x0F, 0x00, 0xE9, 0xFF,
+ 0x08, 0x00, 0x15, 0x00, 0xE2, 0xFF, 0x0A, 0x00,
+ 0x19, 0x00, 0xDA, 0xFF, 0x0C, 0x00, 0x1E, 0x00,
+ 0xD2, 0xFF, 0x0E, 0x00, 0x22, 0x00, 0xC8, 0xFF,
+ 0x05, 0x00, 0xFE, 0xFF, 0xE9, 0xFF, 0x05, 0x00,
+ 0xFA, 0xFF, 0xE9, 0xFF, 0x05, 0x00, 0xF5, 0xFF,
+ 0xE9, 0xFF, 0x05, 0x00, 0xF1, 0xFF, 0xE9, 0xFF,
+ 0x08, 0x00, 0xEB, 0xFF, 0xE2, 0xFF, 0x0A, 0x00,
+ 0xE7, 0xFF, 0xDA, 0xFF, 0x0C, 0x00, 0xE2, 0xFF,
+ 0xD2, 0xFF, 0x0E, 0x00, 0xDE, 0xFF, 0xC8, 0xFF,
+ 0x07, 0x00, 0x02, 0x00, 0xE5, 0xFF, 0x07, 0x00,
+ 0x06, 0x00, 0xE5, 0xFF, 0x07, 0x00, 0x0B, 0x00,
+ 0xE5, 0xFF, 0x07, 0x00, 0x0F, 0x00, 0xE5, 0xFF,
+ 0x0A, 0x00, 0x15, 0x00, 0xDC, 0xFF, 0x0C, 0x00,
+ 0x19, 0x00, 0xD3, 0xFF, 0x0E, 0x00, 0x1E, 0x00,
+ 0xC9, 0xFF, 0x10, 0x00, 0x22, 0x00, 0xBE, 0xFF,
+ 0x07, 0x00, 0xFE, 0xFF, 0xE5, 0xFF, 0x07, 0x00,
+ 0xFA, 0xFF, 0xE5, 0xFF, 0x07, 0x00, 0xF5, 0xFF,
+ 0xE5, 0xFF, 0x07, 0x00, 0xF1, 0xFF, 0xE5, 0xFF,
+ 0x0A, 0x00, 0xEB, 0xFF, 0xDC, 0xFF, 0x0C, 0x00,
+ 0xE7, 0xFF, 0xD3, 0xFF, 0x0E, 0x00, 0xE2, 0xFF,
+ 0xC9, 0xFF, 0x10, 0x00, 0xDE, 0xFF, 0xBE, 0xFF,
+ 0x09, 0x00, 0x02, 0x00, 0xE1, 0xFF, 0x09, 0x00,
+ 0x06, 0x00, 0xE1, 0xFF, 0x09, 0x00, 0x0B, 0x00,
+ 0xE1, 0xFF, 0x09, 0x00, 0x0F, 0x00, 0xE1, 0xFF,
+ 0x0C, 0x00, 0x15, 0x00, 0xD7, 0xFF, 0x0E, 0x00,
+ 0x19, 0x00, 0xCC, 0xFF, 0x10, 0x00, 0x1E, 0x00,
+ 0xC1, 0xFF, 0x12, 0x00, 0x22, 0x00, 0xB4, 0xFF,
+ 0x09, 0x00, 0xFE, 0xFF, 0xE1, 0xFF, 0x09, 0x00,
+ 0xFA, 0xFF, 0xE1, 0xFF, 0x09, 0x00, 0xF5, 0xFF,
+ 0xE1, 0xFF, 0x09, 0x00, 0xF1, 0xFF, 0xE1, 0xFF,
+ 0x0C, 0x00, 0xEB, 0xFF, 0xD7, 0xFF, 0x0E, 0x00,
+ 0xE7, 0xFF, 0xCC, 0xFF, 0x10, 0x00, 0xE2, 0xFF,
+ 0xC1, 0xFF, 0x12, 0x00, 0xDE, 0xFF, 0xB4, 0xFF,
+ 0x01, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00,
+ 0x07, 0x00, 0x02, 0x00, 0x01, 0x00, 0x0C, 0x00,
+ 0x02, 0x00, 0x01, 0x00, 0x11, 0x00, 0x02, 0x00,
+ 0x04, 0x00, 0x17, 0x00, 0x03, 0x00, 0x06, 0x00,
+ 0x1C, 0x00, 0x03, 0x00, 0x08, 0x00, 0x21, 0x00,
+ 0x04, 0x00, 0x0A, 0x00, 0x26, 0x00, 0x05, 0x00,
+ 0x01, 0x00, 0xFE, 0xFF, 0x02, 0x00, 0x01, 0x00,
+ 0xF9, 0xFF, 0x02, 0x00, 0x01, 0x00, 0xF4, 0xFF,
+ 0x02, 0x00, 0x01, 0x00, 0xEF, 0xFF, 0x02, 0x00,
+ 0x04, 0x00, 0xE9, 0xFF, 0x03, 0x00, 0x06, 0x00,
+ 0xE4, 0xFF, 0x03, 0x00, 0x08, 0x00, 0xDF, 0xFF,
+ 0x04, 0x00, 0x0A, 0x00, 0xDA, 0xFF, 0x05, 0x00,
+ 0x01, 0x00, 0x02, 0x00, 0x06, 0x00, 0x01, 0x00,
+ 0x07, 0x00, 0x06, 0x00, 0x01, 0x00, 0x0C, 0x00,
+ 0x06, 0x00, 0x01, 0x00, 0x11, 0x00, 0x06, 0x00,
+ 0x04, 0x00, 0x17, 0x00, 0x09, 0x00, 0x06, 0x00,
+ 0x1C, 0x00, 0x0A, 0x00, 0x08, 0x00, 0x21, 0x00,
+ 0x0D, 0x00, 0x0A, 0x00, 0x26, 0x00, 0x10, 0x00,
+ 0x01, 0x00, 0xFE, 0xFF, 0x06, 0x00, 0x01, 0x00,
+ 0xF9, 0xFF, 0x06, 0x00, 0x01, 0x00, 0xF4, 0xFF,
+ 0x06, 0x00, 0x01, 0x00, 0xEF, 0xFF, 0x06, 0x00,
+ 0x04, 0x00, 0xE9, 0xFF, 0x09, 0x00, 0x06, 0x00,
+ 0xE4, 0xFF, 0x0A, 0x00, 0x08, 0x00, 0xDF, 0xFF,
+ 0x0D, 0x00, 0x0A, 0x00, 0xDA, 0xFF, 0x10, 0x00,
+ 0x01, 0x00, 0x02, 0x00, 0x0B, 0x00, 0x01, 0x00,
+ 0x07, 0x00, 0x0B, 0x00, 0x01, 0x00, 0x0C, 0x00,
+ 0x0B, 0x00, 0x01, 0x00, 0x11, 0x00, 0x0B, 0x00,
+ 0x04, 0x00, 0x17, 0x00, 0x0F, 0x00, 0x06, 0x00,
+ 0x1C, 0x00, 0x12, 0x00, 0x08, 0x00, 0x21, 0x00,
+ 0x16, 0x00, 0x0A, 0x00, 0x26, 0x00, 0x1B, 0x00,
+ 0x01, 0x00, 0xFE, 0xFF, 0x0B, 0x00, 0x01, 0x00,
+ 0xF9, 0xFF, 0x0B, 0x00, 0x01, 0x00, 0xF4, 0xFF,
+ 0x0B, 0x00, 0x01, 0x00, 0xEF, 0xFF, 0x0B, 0x00,
+ 0x04, 0x00, 0xE9, 0xFF, 0x0F, 0x00, 0x06, 0x00,
+ 0xE4, 0xFF, 0x12, 0x00, 0x08, 0x00, 0xDF, 0xFF,
+ 0x16, 0x00, 0x0A, 0x00, 0xDA, 0xFF, 0x1B, 0x00,
+ 0x01, 0x00, 0x02, 0x00, 0x0F, 0x00, 0x01, 0x00,
+ 0x07, 0x00, 0x0F, 0x00, 0x01, 0x00, 0x0C, 0x00,
+ 0x0F, 0x00, 0x01, 0x00, 0x11, 0x00, 0x0F, 0x00,
+ 0x04, 0x00, 0x17, 0x00, 0x15, 0x00, 0x06, 0x00,
+ 0x1C, 0x00, 0x19, 0x00, 0x08, 0x00, 0x21, 0x00,
+ 0x1F, 0x00, 0x0A, 0x00, 0x26, 0x00, 0x26, 0x00,
+ 0x01, 0x00, 0xFE, 0xFF, 0x0F, 0x00, 0x01, 0x00,
+ 0xF9, 0xFF, 0x0F, 0x00, 0x01, 0x00, 0xF4, 0xFF,
+ 0x0F, 0x00, 0x01, 0x00, 0xEF, 0xFF, 0x0F, 0x00,
+ 0x04, 0x00, 0xE9, 0xFF, 0x15, 0x00, 0x06, 0x00,
+ 0xE4, 0xFF, 0x19, 0x00, 0x08, 0x00, 0xDF, 0xFF,
+ 0x1F, 0x00, 0x0A, 0x00, 0xDA, 0xFF, 0x26, 0x00,
+ 0x04, 0x00, 0x02, 0x00, 0x15, 0x00, 0x04, 0x00,
+ 0x07, 0x00, 0x15, 0x00, 0x04, 0x00, 0x0C, 0x00,
+ 0x15, 0x00, 0x04, 0x00, 0x11, 0x00, 0x15, 0x00,
+ 0x07, 0x00, 0x17, 0x00, 0x1C, 0x00, 0x09, 0x00,
+ 0x1C, 0x00, 0x22, 0x00, 0x0B, 0x00, 0x21, 0x00,
+ 0x29, 0x00, 0x0D, 0x00, 0x26, 0x00, 0x32, 0x00,
+ 0x04, 0x00, 0xFE, 0xFF, 0x15, 0x00, 0x04, 0x00,
+ 0xF9, 0xFF, 0x15, 0x00, 0x04, 0x00, 0xF4, 0xFF,
+ 0x15, 0x00, 0x04, 0x00, 0xEF, 0xFF, 0x15, 0x00,
+ 0x07, 0x00, 0xE9, 0xFF, 0x1C, 0x00, 0x09, 0x00,
+ 0xE4, 0xFF, 0x22, 0x00, 0x0B, 0x00, 0xDF, 0xFF,
+ 0x29, 0x00, 0x0D, 0x00, 0xDA, 0xFF, 0x32, 0x00,
+ 0x06, 0x00, 0x02, 0x00, 0x19, 0x00, 0x06, 0x00,
+ 0x07, 0x00, 0x19, 0x00, 0x06, 0x00, 0x0C, 0x00,
+ 0x19, 0x00, 0x06, 0x00, 0x11, 0x00, 0x19, 0x00,
+ 0x09, 0x00, 0x17, 0x00, 0x22, 0x00, 0x0B, 0x00,
+ 0x1C, 0x00, 0x29, 0x00, 0x0D, 0x00, 0x21, 0x00,
+ 0x32, 0x00, 0x0F, 0x00, 0x26, 0x00, 0x3D, 0x00,
+ 0x06, 0x00, 0xFE, 0xFF, 0x19, 0x00, 0x06, 0x00,
+ 0xF9, 0xFF, 0x19, 0x00, 0x06, 0x00, 0xF4, 0xFF,
+ 0x19, 0x00, 0x06, 0x00, 0xEF, 0xFF, 0x19, 0x00,
+ 0x09, 0x00, 0xE9, 0xFF, 0x22, 0x00, 0x0B, 0x00,
+ 0xE4, 0xFF, 0x29, 0x00, 0x0D, 0x00, 0xDF, 0xFF,
+ 0x32, 0x00, 0x0F, 0x00, 0xDA, 0xFF, 0x3D, 0x00,
+ 0x08, 0x00, 0x02, 0x00, 0x1E, 0x00, 0x08, 0x00,
+ 0x07, 0x00, 0x1E, 0x00, 0x08, 0x00, 0x0C, 0x00,
+ 0x1E, 0x00, 0x08, 0x00, 0x11, 0x00, 0x1E, 0x00,
+ 0x0B, 0x00, 0x17, 0x00, 0x28, 0x00, 0x0D, 0x00,
+ 0x1C, 0x00, 0x31, 0x00, 0x0F, 0x00, 0x21, 0x00,
+ 0x3B, 0x00, 0x11, 0x00, 0x26, 0x00, 0x48, 0x00,
+ 0x08, 0x00, 0xFE, 0xFF, 0x1E, 0x00, 0x08, 0x00,
+ 0xF9, 0xFF, 0x1E, 0x00, 0x08, 0x00, 0xF4, 0xFF,
+ 0x1E, 0x00, 0x08, 0x00, 0xEF, 0xFF, 0x1E, 0x00,
+ 0x0B, 0x00, 0xE9, 0xFF, 0x28, 0x00, 0x0D, 0x00,
+ 0xE4, 0xFF, 0x31, 0x00, 0x0F, 0x00, 0xDF, 0xFF,
+ 0x3B, 0x00, 0x11, 0x00, 0xDA, 0xFF, 0x48, 0x00,
+ 0x0A, 0x00, 0x02, 0x00, 0x22, 0x00, 0x0A, 0x00,
+ 0x07, 0x00, 0x22, 0x00, 0x0A, 0x00, 0x0C, 0x00,
+ 0x22, 0x00, 0x0A, 0x00, 0x11, 0x00, 0x22, 0x00,
+ 0x0D, 0x00, 0x17, 0x00, 0x2E, 0x00, 0x0F, 0x00,
+ 0x1C, 0x00, 0x38, 0x00, 0x11, 0x00, 0x21, 0x00,
+ 0x44, 0x00, 0x13, 0x00, 0x26, 0x00, 0x53, 0x00,
+ 0x0A, 0x00, 0xFE, 0xFF, 0x22, 0x00, 0x0A, 0x00,
+ 0xF9, 0xFF, 0x22, 0x00, 0x0A, 0x00, 0xF4, 0xFF,
+ 0x22, 0x00, 0x0A, 0x00, 0xEF, 0xFF, 0x22, 0x00,
+ 0x0D, 0x00, 0xE9, 0xFF, 0x2E, 0x00, 0x0F, 0x00,
+ 0xE4, 0xFF, 0x38, 0x00, 0x11, 0x00, 0xDF, 0xFF,
+ 0x44, 0x00, 0x13, 0x00, 0xDA, 0xFF, 0x53, 0x00,
+ 0x01, 0x00, 0x02, 0x00, 0xFE, 0xFF, 0x01, 0x00,
+ 0x07, 0x00, 0xFE, 0xFF, 0x01, 0x00, 0x0C, 0x00,
+ 0xFE, 0xFF, 0x01, 0x00, 0x11, 0x00, 0xFE, 0xFF,
+ 0x04, 0x00, 0x17, 0x00, 0xFD, 0xFF, 0x06, 0x00,
+ 0x1C, 0x00, 0xFD, 0xFF, 0x08, 0x00, 0x21, 0x00,
+ 0xFC, 0xFF, 0x0A, 0x00, 0x26, 0x00, 0xFB, 0xFF,
+ 0x01, 0x00, 0xFE, 0xFF, 0xFE, 0xFF, 0x01, 0x00,
+ 0xF9, 0xFF, 0xFE, 0xFF, 0x01, 0x00, 0xF4, 0xFF,
+ 0xFE, 0xFF, 0x01, 0x00, 0xEF, 0xFF, 0xFE, 0xFF,
+ 0x04, 0x00, 0xE9, 0xFF, 0xFD, 0xFF, 0x06, 0x00,
+ 0xE4, 0xFF, 0xFD, 0xFF, 0x08, 0x00, 0xDF, 0xFF,
+ 0xFC, 0xFF, 0x0A, 0x00, 0xDA, 0xFF, 0xFB, 0xFF,
+ 0x01, 0x00, 0x02, 0x00, 0xFA, 0xFF, 0x01, 0x00,
+ 0x07, 0x00, 0xFA, 0xFF, 0x01, 0x00, 0x0C, 0x00,
+ 0xFA, 0xFF, 0x01, 0x00, 0x11, 0x00, 0xFA, 0xFF,
+ 0x04, 0x00, 0x17, 0x00, 0xF7, 0xFF, 0x06, 0x00,
+ 0x1C, 0x00, 0xF6, 0xFF, 0x08, 0x00, 0x21, 0x00,
+ 0xF3, 0xFF, 0x0A, 0x00, 0x26, 0x00, 0xF0, 0xFF,
+ 0x01, 0x00, 0xFE, 0xFF, 0xFA, 0xFF, 0x01, 0x00,
+ 0xF9, 0xFF, 0xFA, 0xFF, 0x01, 0x00, 0xF4, 0xFF,
+ 0xFA, 0xFF, 0x01, 0x00, 0xEF, 0xFF, 0xFA, 0xFF,
+ 0x04, 0x00, 0xE9, 0xFF, 0xF7, 0xFF, 0x06, 0x00,
+ 0xE4, 0xFF, 0xF6, 0xFF, 0x08, 0x00, 0xDF, 0xFF,
+ 0xF3, 0xFF, 0x0A, 0x00, 0xDA, 0xFF, 0xF0, 0xFF,
+ 0x01, 0x00, 0x02, 0x00, 0xF5, 0xFF, 0x01, 0x00,
+ 0x07, 0x00, 0xF5, 0xFF, 0x01, 0x00, 0x0C, 0x00,
+ 0xF5, 0xFF, 0x01, 0x00, 0x11, 0x00, 0xF5, 0xFF,
+ 0x04, 0x00, 0x17, 0x00, 0xF1, 0xFF, 0x06, 0x00,
+ 0x1C, 0x00, 0xEE, 0xFF, 0x08, 0x00, 0x21, 0x00,
+ 0xEA, 0xFF, 0x0A, 0x00, 0x26, 0x00, 0xE5, 0xFF,
+ 0x01, 0x00, 0xFE, 0xFF, 0xF5, 0xFF, 0x01, 0x00,
+ 0xF9, 0xFF, 0xF5, 0xFF, 0x01, 0x00, 0xF4, 0xFF,
+ 0xF5, 0xFF, 0x01, 0x00, 0xEF, 0xFF, 0xF5, 0xFF,
+ 0x04, 0x00, 0xE9, 0xFF, 0xF1, 0xFF, 0x06, 0x00,
+ 0xE4, 0xFF, 0xEE, 0xFF, 0x08, 0x00, 0xDF, 0xFF,
+ 0xEA, 0xFF, 0x0A, 0x00, 0xDA, 0xFF, 0xE5, 0xFF,
+ 0x01, 0x00, 0x02, 0x00, 0xF1, 0xFF, 0x01, 0x00,
+ 0x07, 0x00, 0xF1, 0xFF, 0x01, 0x00, 0x0C, 0x00,
+ 0xF1, 0xFF, 0x01, 0x00, 0x11, 0x00, 0xF1, 0xFF,
+ 0x04, 0x00, 0x17, 0x00, 0xEB, 0xFF, 0x06, 0x00,
+ 0x1C, 0x00, 0xE7, 0xFF, 0x08, 0x00, 0x21, 0x00,
+ 0xE1, 0xFF, 0x0A, 0x00, 0x26, 0x00, 0xDA, 0xFF,
+ 0x01, 0x00, 0xFE, 0xFF, 0xF1, 0xFF, 0x01, 0x00,
+ 0xF9, 0xFF, 0xF1, 0xFF, 0x01, 0x00, 0xF4, 0xFF,
+ 0xF1, 0xFF, 0x01, 0x00, 0xEF, 0xFF, 0xF1, 0xFF,
+ 0x04, 0x00, 0xE9, 0xFF, 0xEB, 0xFF, 0x06, 0x00,
+ 0xE4, 0xFF, 0xE7, 0xFF, 0x08, 0x00, 0xDF, 0xFF,
+ 0xE1, 0xFF, 0x0A, 0x00, 0xDA, 0xFF, 0xDA, 0xFF,
+ 0x04, 0x00, 0x02, 0x00, 0xEB, 0xFF, 0x04, 0x00,
+ 0x07, 0x00, 0xEB, 0xFF, 0x04, 0x00, 0x0C, 0x00,
+ 0xEB, 0xFF, 0x04, 0x00, 0x11, 0x00, 0xEB, 0xFF,
+ 0x07, 0x00, 0x17, 0x00, 0xE4, 0xFF, 0x09, 0x00,
+ 0x1C, 0x00, 0xDE, 0xFF, 0x0B, 0x00, 0x21, 0x00,
+ 0xD7, 0xFF, 0x0D, 0x00, 0x26, 0x00, 0xCE, 0xFF,
+ 0x04, 0x00, 0xFE, 0xFF, 0xEB, 0xFF, 0x04, 0x00,
+ 0xF9, 0xFF, 0xEB, 0xFF, 0x04, 0x00, 0xF4, 0xFF,
+ 0xEB, 0xFF, 0x04, 0x00, 0xEF, 0xFF, 0xEB, 0xFF,
+ 0x07, 0x00, 0xE9, 0xFF, 0xE4, 0xFF, 0x09, 0x00,
+ 0xE4, 0xFF, 0xDE, 0xFF, 0x0B, 0x00, 0xDF, 0xFF,
+ 0xD7, 0xFF, 0x0D, 0x00, 0xDA, 0xFF, 0xCE, 0xFF,
+ 0x06, 0x00, 0x02, 0x00, 0xE7, 0xFF, 0x06, 0x00,
+ 0x07, 0x00, 0xE7, 0xFF, 0x06, 0x00, 0x0C, 0x00,
+ 0xE7, 0xFF, 0x06, 0x00, 0x11, 0x00, 0xE7, 0xFF,
+ 0x09, 0x00, 0x17, 0x00, 0xDE, 0xFF, 0x0B, 0x00,
+ 0x1C, 0x00, 0xD7, 0xFF, 0x0D, 0x00, 0x21, 0x00,
+ 0xCE, 0xFF, 0x0F, 0x00, 0x26, 0x00, 0xC3, 0xFF,
+ 0x06, 0x00, 0xFE, 0xFF, 0xE7, 0xFF, 0x06, 0x00,
+ 0xF9, 0xFF, 0xE7, 0xFF, 0x06, 0x00, 0xF4, 0xFF,
+ 0xE7, 0xFF, 0x06, 0x00, 0xEF, 0xFF, 0xE7, 0xFF,
+ 0x09, 0x00, 0xE9, 0xFF, 0xDE, 0xFF, 0x0B, 0x00,
+ 0xE4, 0xFF, 0xD7, 0xFF, 0x0D, 0x00, 0xDF, 0xFF,
+ 0xCE, 0xFF, 0x0F, 0x00, 0xDA, 0xFF, 0xC3, 0xFF,
+ 0x08, 0x00, 0x02, 0x00, 0xE2, 0xFF, 0x08, 0x00,
+ 0x07, 0x00, 0xE2, 0xFF, 0x08, 0x00, 0x0C, 0x00,
+ 0xE2, 0xFF, 0x08, 0x00, 0x11, 0x00, 0xE2, 0xFF,
+ 0x0B, 0x00, 0x17, 0x00, 0xD8, 0xFF, 0x0D, 0x00,
+ 0x1C, 0x00, 0xCF, 0xFF, 0x0F, 0x00, 0x21, 0x00,
+ 0xC5, 0xFF, 0x11, 0x00, 0x26, 0x00, 0xB8, 0xFF,
+ 0x08, 0x00, 0xFE, 0xFF, 0xE2, 0xFF, 0x08, 0x00,
+ 0xF9, 0xFF, 0xE2, 0xFF, 0x08, 0x00, 0xF4, 0xFF,
+ 0xE2, 0xFF, 0x08, 0x00, 0xEF, 0xFF, 0xE2, 0xFF,
+ 0x0B, 0x00, 0xE9, 0xFF, 0xD8, 0xFF, 0x0D, 0x00,
+ 0xE4, 0xFF, 0xCF, 0xFF, 0x0F, 0x00, 0xDF, 0xFF,
+ 0xC5, 0xFF, 0x11, 0x00, 0xDA, 0xFF, 0xB8, 0xFF,
+ 0x0A, 0x00, 0x02, 0x00, 0xDE, 0xFF, 0x0A, 0x00,
+ 0x07, 0x00, 0xDE, 0xFF, 0x0A, 0x00, 0x0C, 0x00,
+ 0xDE, 0xFF, 0x0A, 0x00, 0x11, 0x00, 0xDE, 0xFF,
+ 0x0D, 0x00, 0x17, 0x00, 0xD2, 0xFF, 0x0F, 0x00,
+ 0x1C, 0x00, 0xC8, 0xFF, 0x11, 0x00, 0x21, 0x00,
+ 0xBC, 0xFF, 0x13, 0x00, 0x26, 0x00, 0xAD, 0xFF,
+ 0x0A, 0x00, 0xFE, 0xFF, 0xDE, 0xFF, 0x0A, 0x00,
+ 0xF9, 0xFF, 0xDE, 0xFF, 0x0A, 0x00, 0xF4, 0xFF,
+ 0xDE, 0xFF, 0x0A, 0x00, 0xEF, 0xFF, 0xDE, 0xFF,
+ 0x0D, 0x00, 0xE9, 0xFF, 0xD2, 0xFF, 0x0F, 0x00,
+ 0xE4, 0xFF, 0xC8, 0xFF, 0x11, 0x00, 0xDF, 0xFF,
+ 0xBC, 0xFF, 0x13, 0x00, 0xDA, 0xFF, 0xAD, 0xFF,
+ 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x07, 0x00, 0x02, 0x00, 0x02, 0x00, 0x0D, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x12, 0x00, 0x02, 0x00,
+ 0x05, 0x00, 0x19, 0x00, 0x03, 0x00, 0x07, 0x00,
+ 0x1E, 0x00, 0x04, 0x00, 0x09, 0x00, 0x24, 0x00,
+ 0x05, 0x00, 0x0B, 0x00, 0x29, 0x00, 0x06, 0x00,
+ 0x02, 0x00, 0xFE, 0xFF, 0x02, 0x00, 0x02, 0x00,
+ 0xF9, 0xFF, 0x02, 0x00, 0x02, 0x00, 0xF3, 0xFF,
+ 0x02, 0x00, 0x02, 0x00, 0xEE, 0xFF, 0x02, 0x00,
+ 0x05, 0x00, 0xE7, 0xFF, 0x03, 0x00, 0x07, 0x00,
+ 0xE2, 0xFF, 0x04, 0x00, 0x09, 0x00, 0xDC, 0xFF,
+ 0x05, 0x00, 0x0B, 0x00, 0xD7, 0xFF, 0x06, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x07, 0x00, 0x02, 0x00,
+ 0x07, 0x00, 0x07, 0x00, 0x02, 0x00, 0x0D, 0x00,
+ 0x07, 0x00, 0x02, 0x00, 0x12, 0x00, 0x07, 0x00,
+ 0x05, 0x00, 0x19, 0x00, 0x0A, 0x00, 0x07, 0x00,
+ 0x1E, 0x00, 0x0C, 0x00, 0x09, 0x00, 0x24, 0x00,
+ 0x0F, 0x00, 0x0B, 0x00, 0x29, 0x00, 0x12, 0x00,
+ 0x02, 0x00, 0xFE, 0xFF, 0x07, 0x00, 0x02, 0x00,
+ 0xF9, 0xFF, 0x07, 0x00, 0x02, 0x00, 0xF3, 0xFF,
+ 0x07, 0x00, 0x02, 0x00, 0xEE, 0xFF, 0x07, 0x00,
+ 0x05, 0x00, 0xE7, 0xFF, 0x0A, 0x00, 0x07, 0x00,
+ 0xE2, 0xFF, 0x0C, 0x00, 0x09, 0x00, 0xDC, 0xFF,
+ 0x0F, 0x00, 0x0B, 0x00, 0xD7, 0xFF, 0x12, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x0C, 0x00, 0x02, 0x00,
+ 0x07, 0x00, 0x0C, 0x00, 0x02, 0x00, 0x0D, 0x00,
+ 0x0C, 0x00, 0x02, 0x00, 0x12, 0x00, 0x0C, 0x00,
+ 0x05, 0x00, 0x19, 0x00, 0x11, 0x00, 0x07, 0x00,
+ 0x1E, 0x00, 0x15, 0x00, 0x09, 0x00, 0x24, 0x00,
+ 0x19, 0x00, 0x0B, 0x00, 0x29, 0x00, 0x1F, 0x00,
+ 0x02, 0x00, 0xFE, 0xFF, 0x0C, 0x00, 0x02, 0x00,
+ 0xF9, 0xFF, 0x0C, 0x00, 0x02, 0x00, 0xF3, 0xFF,
+ 0x0C, 0x00, 0x02, 0x00, 0xEE, 0xFF, 0x0C, 0x00,
+ 0x05, 0x00, 0xE7, 0xFF, 0x11, 0x00, 0x07, 0x00,
+ 0xE2, 0xFF, 0x15, 0x00, 0x09, 0x00, 0xDC, 0xFF,
+ 0x19, 0x00, 0x0B, 0x00, 0xD7, 0xFF, 0x1F, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0x11, 0x00, 0x02, 0x00,
+ 0x07, 0x00, 0x11, 0x00, 0x02, 0x00, 0x0D, 0x00,
+ 0x11, 0x00, 0x02, 0x00, 0x12, 0x00, 0x11, 0x00,
+ 0x05, 0x00, 0x19, 0x00, 0x18, 0x00, 0x07, 0x00,
+ 0x1E, 0x00, 0x1D, 0x00, 0x09, 0x00, 0x24, 0x00,
+ 0x23, 0x00, 0x0B, 0x00, 0x29, 0x00, 0x2B, 0x00,
+ 0x02, 0x00, 0xFE, 0xFF, 0x11, 0x00, 0x02, 0x00,
+ 0xF9, 0xFF, 0x11, 0x00, 0x02, 0x00, 0xF3, 0xFF,
+ 0x11, 0x00, 0x02, 0x00, 0xEE, 0xFF, 0x11, 0x00,
+ 0x05, 0x00, 0xE7, 0xFF, 0x18, 0x00, 0x07, 0x00,
+ 0xE2, 0xFF, 0x1D, 0x00, 0x09, 0x00, 0xDC, 0xFF,
+ 0x23, 0x00, 0x0B, 0x00, 0xD7, 0xFF, 0x2B, 0x00,
+ 0x05, 0x00, 0x02, 0x00, 0x17, 0x00, 0x05, 0x00,
+ 0x07, 0x00, 0x17, 0x00, 0x05, 0x00, 0x0D, 0x00,
+ 0x17, 0x00, 0x05, 0x00, 0x12, 0x00, 0x17, 0x00,
+ 0x08, 0x00, 0x19, 0x00, 0x1F, 0x00, 0x0A, 0x00,
+ 0x1E, 0x00, 0x26, 0x00, 0x0C, 0x00, 0x24, 0x00,
+ 0x2E, 0x00, 0x0E, 0x00, 0x29, 0x00, 0x38, 0x00,
+ 0x05, 0x00, 0xFE, 0xFF, 0x17, 0x00, 0x05, 0x00,
+ 0xF9, 0xFF, 0x17, 0x00, 0x05, 0x00, 0xF3, 0xFF,
+ 0x17, 0x00, 0x05, 0x00, 0xEE, 0xFF, 0x17, 0x00,
+ 0x08, 0x00, 0xE7, 0xFF, 0x1F, 0x00, 0x0A, 0x00,
+ 0xE2, 0xFF, 0x26, 0x00, 0x0C, 0x00, 0xDC, 0xFF,
+ 0x2E, 0x00, 0x0E, 0x00, 0xD7, 0xFF, 0x38, 0x00,
+ 0x07, 0x00, 0x02, 0x00, 0x1C, 0x00, 0x07, 0x00,
+ 0x07, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x0D, 0x00,
+ 0x1C, 0x00, 0x07, 0x00, 0x12, 0x00, 0x1C, 0x00,
+ 0x0A, 0x00, 0x19, 0x00, 0x26, 0x00, 0x0C, 0x00,
+ 0x1E, 0x00, 0x2E, 0x00, 0x0E, 0x00, 0x24, 0x00,
+ 0x38, 0x00, 0x10, 0x00, 0x29, 0x00, 0x44, 0x00,
+ 0x07, 0x00, 0xFE, 0xFF, 0x1C, 0x00, 0x07, 0x00,
+ 0xF9, 0xFF, 0x1C, 0x00, 0x07, 0x00, 0xF3, 0xFF,
+ 0x1C, 0x00, 0x07, 0x00, 0xEE, 0xFF, 0x1C, 0x00,
+ 0x0A, 0x00, 0xE7, 0xFF, 0x26, 0x00, 0x0C, 0x00,
+ 0xE2, 0xFF, 0x2E, 0x00, 0x0E, 0x00, 0xDC, 0xFF,
+ 0x38, 0x00, 0x10, 0x00, 0xD7, 0xFF, 0x44, 0x00,
+ 0x09, 0x00, 0x02, 0x00, 0x21, 0x00, 0x09, 0x00,
+ 0x07, 0x00, 0x21, 0x00, 0x09, 0x00, 0x0D, 0x00,
+ 0x21, 0x00, 0x09, 0x00, 0x12, 0x00, 0x21, 0x00,
+ 0x0C, 0x00, 0x19, 0x00, 0x2D, 0x00, 0x0E, 0x00,
+ 0x1E, 0x00, 0x37, 0x00, 0x10, 0x00, 0x24, 0x00,
+ 0x42, 0x00, 0x12, 0x00, 0x29, 0x00, 0x51, 0x00,
+ 0x09, 0x00, 0xFE, 0xFF, 0x21, 0x00, 0x09, 0x00,
+ 0xF9, 0xFF, 0x21, 0x00, 0x09, 0x00, 0xF3, 0xFF,
+ 0x21, 0x00, 0x09, 0x00, 0xEE, 0xFF, 0x21, 0x00,
+ 0x0C, 0x00, 0xE7, 0xFF, 0x2D, 0x00, 0x0E, 0x00,
+ 0xE2, 0xFF, 0x37, 0x00, 0x10, 0x00, 0xDC, 0xFF,
+ 0x42, 0x00, 0x12, 0x00, 0xD7, 0xFF, 0x51, 0x00,
+ 0x0B, 0x00, 0x02, 0x00, 0x26, 0x00, 0x0B, 0x00,
+ 0x07, 0x00, 0x26, 0x00, 0x0B, 0x00, 0x0D, 0x00,
+ 0x26, 0x00, 0x0B, 0x00, 0x12, 0x00, 0x26, 0x00,
+ 0x0E, 0x00, 0x19, 0x00, 0x34, 0x00, 0x10, 0x00,
+ 0x1E, 0x00, 0x3F, 0x00, 0x12, 0x00, 0x24, 0x00,
+ 0x4C, 0x00, 0x14, 0x00, 0x29, 0x00, 0x5D, 0x00,
+ 0x0B, 0x00, 0xFE, 0xFF, 0x26, 0x00, 0x0B, 0x00,
+ 0xF9, 0xFF, 0x26, 0x00, 0x0B, 0x00, 0xF3, 0xFF,
+ 0x26, 0x00, 0x0B, 0x00, 0xEE, 0xFF, 0x26, 0x00,
+ 0x0E, 0x00, 0xE7, 0xFF, 0x34, 0x00, 0x10, 0x00,
+ 0xE2, 0xFF, 0x3F, 0x00, 0x12, 0x00, 0xDC, 0xFF,
+ 0x4C, 0x00, 0x14, 0x00, 0xD7, 0xFF, 0x5D, 0x00,
+ 0x02, 0x00, 0x02, 0x00, 0xFE, 0xFF, 0x02, 0x00,
+ 0x07, 0x00, 0xFE, 0xFF, 0x02, 0x00, 0x0D, 0x00,
+ 0xFE, 0xFF, 0x02, 0x00, 0x12, 0x00, 0xFE, 0xFF,
+ 0x05, 0x00, 0x19, 0x00, 0xFD, 0xFF, 0x07, 0x00,
+ 0x1E, 0x00, 0xFC, 0xFF, 0x09, 0x00, 0x24, 0x00,
+ 0xFB, 0xFF, 0x0B, 0x00, 0x29, 0x00, 0xFA, 0xFF,
+ 0x02, 0x00, 0xFE, 0xFF, 0xFE, 0xFF, 0x02, 0x00,
+ 0xF9, 0xFF, 0xFE, 0xFF, 0x02, 0x00, 0xF3, 0xFF,
+ 0xFE, 0xFF, 0x02, 0x00, 0xEE, 0xFF, 0xFE, 0xFF,
+ 0x05, 0x00, 0xE7, 0xFF, 0xFD, 0xFF, 0x07, 0x00,
+ 0xE2, 0xFF, 0xFC, 0xFF, 0x09, 0x00, 0xDC, 0xFF,
+ 0xFB, 0xFF, 0x0B, 0x00, 0xD7, 0xFF, 0xFA, 0xFF,
+ 0x02, 0x00, 0x02, 0x00, 0xF9, 0xFF, 0x02, 0x00,
+ 0x07, 0x00, 0xF9, 0xFF, 0x02, 0x00, 0x0D, 0x00,
+ 0xF9, 0xFF, 0x02, 0x00, 0x12, 0x00, 0xF9, 0xFF,
+ 0x05, 0x00, 0x19, 0x00, 0xF6, 0xFF, 0x07, 0x00,
+ 0x1E, 0x00, 0xF4, 0xFF, 0x09, 0x00, 0x24, 0x00,
+ 0xF1, 0xFF, 0x0B, 0x00, 0x29, 0x00, 0xEE, 0xFF,
+ 0x02, 0x00, 0xFE, 0xFF, 0xF9, 0xFF, 0x02, 0x00,
+ 0xF9, 0xFF, 0xF9, 0xFF, 0x02, 0x00, 0xF3, 0xFF,
+ 0xF9, 0xFF, 0x02, 0x00, 0xEE, 0xFF, 0xF9, 0xFF,
+ 0x05, 0x00, 0xE7, 0xFF, 0xF6, 0xFF, 0x07, 0x00,
+ 0xE2, 0xFF, 0xF4, 0xFF, 0x09, 0x00, 0xDC, 0xFF,
+ 0xF1, 0xFF, 0x0B, 0x00, 0xD7, 0xFF, 0xEE, 0xFF,
+ 0x02, 0x00, 0x02, 0x00, 0xF4, 0xFF, 0x02, 0x00,
+ 0x07, 0x00, 0xF4, 0xFF, 0x02, 0x00, 0x0D, 0x00,
+ 0xF4, 0xFF, 0x02, 0x00, 0x12, 0x00, 0xF4, 0xFF,
+ 0x05, 0x00, 0x19, 0x00, 0xEF, 0xFF, 0x07, 0x00,
+ 0x1E, 0x00, 0xEB, 0xFF, 0x09, 0x00, 0x24, 0x00,
+ 0xE7, 0xFF, 0x0B, 0x00, 0x29, 0x00, 0xE1, 0xFF,
+ 0x02, 0x00, 0xFE, 0xFF, 0xF4, 0xFF, 0x02, 0x00,
+ 0xF9, 0xFF, 0xF4, 0xFF, 0x02, 0x00, 0xF3, 0xFF,
+ 0xF4, 0xFF, 0x02, 0x00, 0xEE, 0xFF, 0xF4, 0xFF,
+ 0x05, 0x00, 0xE7, 0xFF, 0xEF, 0xFF, 0x07, 0x00,
+ 0xE2, 0xFF, 0xEB, 0xFF, 0x09, 0x00, 0xDC, 0xFF,
+ 0xE7, 0xFF, 0x0B, 0x00, 0xD7, 0xFF, 0xE1, 0xFF,
+ 0x02, 0x00, 0x02, 0x00, 0xEF, 0xFF, 0x02, 0x00,
+ 0x07, 0x00, 0xEF, 0xFF, 0x02, 0x00, 0x0D, 0x00,
+ 0xEF, 0xFF, 0x02, 0x00, 0x12, 0x00, 0xEF, 0xFF,
+ 0x05, 0x00, 0x19, 0x00, 0xE8, 0xFF, 0x07, 0x00,
+ 0x1E, 0x00, 0xE3, 0xFF, 0x09, 0x00, 0x24, 0x00,
+ 0xDD, 0xFF, 0x0B, 0x00, 0x29, 0x00, 0xD5, 0xFF,
+ 0x02, 0x00, 0xFE, 0xFF, 0xEF, 0xFF, 0x02, 0x00,
+ 0xF9, 0xFF, 0xEF, 0xFF, 0x02, 0x00, 0xF3, 0xFF,
+ 0xEF, 0xFF, 0x02, 0x00, 0xEE, 0xFF, 0xEF, 0xFF,
+ 0x05, 0x00, 0xE7, 0xFF, 0xE8, 0xFF, 0x07, 0x00,
+ 0xE2, 0xFF, 0xE3, 0xFF, 0x09, 0x00, 0xDC, 0xFF,
+ 0xDD, 0xFF, 0x0B, 0x00, 0xD7, 0xFF, 0xD5, 0xFF,
+ 0x05, 0x00, 0x02, 0x00, 0xE9, 0xFF, 0x05, 0x00,
+ 0x07, 0x00, 0xE9, 0xFF, 0x05, 0x00, 0x0D, 0x00,
+ 0xE9, 0xFF, 0x05, 0x00, 0x12, 0x00, 0xE9, 0xFF,
+ 0x08, 0x00, 0x19, 0x00, 0xE1, 0xFF, 0x0A, 0x00,
+ 0x1E, 0x00, 0xDA, 0xFF, 0x0C, 0x00, 0x24, 0x00,
+ 0xD2, 0xFF, 0x0E, 0x00, 0x29, 0x00, 0xC8, 0xFF,
+ 0x05, 0x00, 0xFE, 0xFF, 0xE9, 0xFF, 0x05, 0x00,
+ 0xF9, 0xFF, 0xE9, 0xFF, 0x05, 0x00, 0xF3, 0xFF,
+ 0xE9, 0xFF, 0x05, 0x00, 0xEE, 0xFF, 0xE9, 0xFF,
+ 0x08, 0x00, 0xE7, 0xFF, 0xE1, 0xFF, 0x0A, 0x00,
+ 0xE2, 0xFF, 0xDA, 0xFF, 0x0C, 0x00, 0xDC, 0xFF,
+ 0xD2, 0xFF, 0x0E, 0x00, 0xD7, 0xFF, 0xC8, 0xFF,
+ 0x07, 0x00, 0x02, 0x00, 0xE4, 0xFF, 0x07, 0x00,
+ 0x07, 0x00, 0xE4, 0xFF, 0x07, 0x00, 0x0D, 0x00,
+ 0xE4, 0xFF, 0x07, 0x00, 0x12, 0x00, 0xE4, 0xFF,
+ 0x0A, 0x00, 0x19, 0x00, 0xDA, 0xFF, 0x0C, 0x00,
+ 0x1E, 0x00, 0xD2, 0xFF, 0x0E, 0x00, 0x24, 0x00,
+ 0xC8, 0xFF, 0x10, 0x00, 0x29, 0x00, 0xBC, 0xFF,
+ 0x07, 0x00, 0xFE, 0xFF, 0xE4, 0xFF, 0x07, 0x00,
+ 0xF9, 0xFF, 0xE4, 0xFF, 0x07, 0x00, 0xF3, 0xFF,
+ 0xE4, 0xFF, 0x07, 0x00, 0xEE, 0xFF, 0xE4, 0xFF,
+ 0x0A, 0x00, 0xE7, 0xFF, 0xDA, 0xFF, 0x0C, 0x00,
+ 0xE2, 0xFF, 0xD2, 0xFF, 0x0E, 0x00, 0xDC, 0xFF,
+ 0xC8, 0xFF, 0x10, 0x00, 0xD7, 0xFF, 0xBC, 0xFF,
+ 0x09, 0x00, 0x02, 0x00, 0xDF, 0xFF, 0x09, 0x00,
+ 0x07, 0x00, 0xDF, 0xFF, 0x09, 0x00, 0x0D, 0x00,
+ 0xDF, 0xFF, 0x09, 0x00, 0x12, 0x00, 0xDF, 0xFF,
+ 0x0C, 0x00, 0x19, 0x00, 0xD3, 0xFF, 0x0E, 0x00,
+ 0x1E, 0x00, 0xC9, 0xFF, 0x10, 0x00, 0x24, 0x00,
+ 0xBE, 0xFF, 0x12, 0x00, 0x29, 0x00, 0xAF, 0xFF,
+ 0x09, 0x00, 0xFE, 0xFF, 0xDF, 0xFF, 0x09, 0x00,
+ 0xF9, 0xFF, 0xDF, 0xFF, 0x09, 0x00, 0xF3, 0xFF,
+ 0xDF, 0xFF, 0x09, 0x00, 0xEE, 0xFF, 0xDF, 0xFF,
+ 0x0C, 0x00, 0xE7, 0xFF, 0xD3, 0xFF, 0x0E, 0x00,
+ 0xE2, 0xFF, 0xC9, 0xFF, 0x10, 0x00, 0xDC, 0xFF,
+ 0xBE, 0xFF, 0x12, 0x00, 0xD7, 0xFF, 0xAF, 0xFF,
+ 0x0B, 0x00, 0x02, 0x00, 0xDA, 0xFF, 0x0B, 0x00,
+ 0x07, 0x00, 0xDA, 0xFF, 0x0B, 0x00, 0x0D, 0x00,
+ 0xDA, 0xFF, 0x0B, 0x00, 0x12, 0x00, 0xDA, 0xFF,
+ 0x0E, 0x00, 0x19, 0x00, 0xCC, 0xFF, 0x10, 0x00,
+ 0x1E, 0x00, 0xC1, 0xFF, 0x12, 0x00, 0x24, 0x00,
+ 0xB4, 0xFF, 0x14, 0x00, 0x29, 0x00, 0xA3, 0xFF,
+ 0x0B, 0x00, 0xFE, 0xFF, 0xDA, 0xFF, 0x0B, 0x00,
+ 0xF9, 0xFF, 0xDA, 0xFF, 0x0B, 0x00, 0xF3, 0xFF,
+ 0xDA, 0xFF, 0x0B, 0x00, 0xEE, 0xFF, 0xDA, 0xFF,
+ 0x0E, 0x00, 0xE7, 0xFF, 0xCC, 0xFF, 0x10, 0x00,
+ 0xE2, 0xFF, 0xC1, 0xFF, 0x12, 0x00, 0xDC, 0xFF,
+ 0xB4, 0xFF, 0x14, 0x00, 0xD7, 0xFF, 0xA3, 0xFF,
+ 0x03, 0x00, 0x03, 0x00, 0x02, 0x00, 0x03, 0x00,
+ 0x09, 0x00, 0x02, 0x00, 0x03, 0x00, 0x0F, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x15, 0x00, 0x02, 0x00,
+ 0x06, 0x00, 0x1C, 0x00, 0x03, 0x00, 0x08, 0x00,
+ 0x22, 0x00, 0x04, 0x00, 0x0A, 0x00, 0x28, 0x00,
+ 0x05, 0x00, 0x0C, 0x00, 0x2E, 0x00, 0x06, 0x00,
+ 0x03, 0x00, 0xFD, 0xFF, 0x02, 0x00, 0x03, 0x00,
+ 0xF7, 0xFF, 0x02, 0x00, 0x03, 0x00, 0xF1, 0xFF,
+ 0x02, 0x00, 0x03, 0x00, 0xEB, 0xFF, 0x02, 0x00,
+ 0x06, 0x00, 0xE4, 0xFF, 0x03, 0x00, 0x08, 0x00,
+ 0xDE, 0xFF, 0x04, 0x00, 0x0A, 0x00, 0xD8, 0xFF,
+ 0x05, 0x00, 0x0C, 0x00, 0xD2, 0xFF, 0x06, 0x00,
+ 0x03, 0x00, 0x03, 0x00, 0x07, 0x00, 0x03, 0x00,
+ 0x09, 0x00, 0x07, 0x00, 0x03, 0x00, 0x0F, 0x00,
+ 0x07, 0x00, 0x03, 0x00, 0x15, 0x00, 0x07, 0x00,
+ 0x06, 0x00, 0x1C, 0x00, 0x0A, 0x00, 0x08, 0x00,
+ 0x22, 0x00, 0x0D, 0x00, 0x0A, 0x00, 0x28, 0x00,
+ 0x10, 0x00, 0x0C, 0x00, 0x2E, 0x00, 0x13, 0x00,
+ 0x03, 0x00, 0xFD, 0xFF, 0x07, 0x00, 0x03, 0x00,
+ 0xF7, 0xFF, 0x07, 0x00, 0x03, 0x00, 0xF1, 0xFF,
+ 0x07, 0x00, 0x03, 0x00, 0xEB, 0xFF, 0x07, 0x00,
+ 0x06, 0x00, 0xE4, 0xFF, 0x0A, 0x00, 0x08, 0x00,
+ 0xDE, 0xFF, 0x0D, 0x00, 0x0A, 0x00, 0xD8, 0xFF,
+ 0x10, 0x00, 0x0C, 0x00, 0xD2, 0xFF, 0x13, 0x00,
+ 0x03, 0x00, 0x03, 0x00, 0x0D, 0x00, 0x03, 0x00,
+ 0x09, 0x00, 0x0D, 0x00, 0x03, 0x00, 0x0F, 0x00,
+ 0x0D, 0x00, 0x03, 0x00, 0x15, 0x00, 0x0D, 0x00,
+ 0x06, 0x00, 0x1C, 0x00, 0x12, 0x00, 0x08, 0x00,
+ 0x22, 0x00, 0x16, 0x00, 0x0A, 0x00, 0x28, 0x00,
+ 0x1B, 0x00, 0x0C, 0x00, 0x2E, 0x00, 0x21, 0x00,
+ 0x03, 0x00, 0xFD, 0xFF, 0x0D, 0x00, 0x03, 0x00,
+ 0xF7, 0xFF, 0x0D, 0x00, 0x03, 0x00, 0xF1, 0xFF,
+ 0x0D, 0x00, 0x03, 0x00, 0xEB, 0xFF, 0x0D, 0x00,
+ 0x06, 0x00, 0xE4, 0xFF, 0x12, 0x00, 0x08, 0x00,
+ 0xDE, 0xFF, 0x16, 0x00, 0x0A, 0x00, 0xD8, 0xFF,
+ 0x1B, 0x00, 0x0C, 0x00, 0xD2, 0xFF, 0x21, 0x00,
+ 0x03, 0x00, 0x03, 0x00, 0x12, 0x00, 0x03, 0x00,
+ 0x09, 0x00, 0x12, 0x00, 0x03, 0x00, 0x0F, 0x00,
+ 0x12, 0x00, 0x03, 0x00, 0x15, 0x00, 0x12, 0x00,
+ 0x06, 0x00, 0x1C, 0x00, 0x19, 0x00, 0x08, 0x00,
+ 0x22, 0x00, 0x1F, 0x00, 0x0A, 0x00, 0x28, 0x00,
+ 0x26, 0x00, 0x0C, 0x00, 0x2E, 0x00, 0x2E, 0x00,
+ 0x03, 0x00, 0xFD, 0xFF, 0x12, 0x00, 0x03, 0x00,
+ 0xF7, 0xFF, 0x12, 0x00, 0x03, 0x00, 0xF1, 0xFF,
+ 0x12, 0x00, 0x03, 0x00, 0xEB, 0xFF, 0x12, 0x00,
+ 0x06, 0x00, 0xE4, 0xFF, 0x19, 0x00, 0x08, 0x00,
+ 0xDE, 0xFF, 0x1F, 0x00, 0x0A, 0x00, 0xD8, 0xFF,
+ 0x26, 0x00, 0x0C, 0x00, 0xD2, 0xFF, 0x2E, 0x00,
+ 0x06, 0x00, 0x03, 0x00, 0x19, 0x00, 0x06, 0x00,
+ 0x09, 0x00, 0x19, 0x00, 0x06, 0x00, 0x0F, 0x00,
+ 0x19, 0x00, 0x06, 0x00, 0x15, 0x00, 0x19, 0x00,
+ 0x09, 0x00, 0x1C, 0x00, 0x22, 0x00, 0x0B, 0x00,
+ 0x22, 0x00, 0x29, 0x00, 0x0D, 0x00, 0x28, 0x00,
+ 0x32, 0x00, 0x0F, 0x00, 0x2E, 0x00, 0x3D, 0x00,
+ 0x06, 0x00, 0xFD, 0xFF, 0x19, 0x00, 0x06, 0x00,
+ 0xF7, 0xFF, 0x19, 0x00, 0x06, 0x00, 0xF1, 0xFF,
+ 0x19, 0x00, 0x06, 0x00, 0xEB, 0xFF, 0x19, 0x00,
+ 0x09, 0x00, 0xE4, 0xFF, 0x22, 0x00, 0x0B, 0x00,
+ 0xDE, 0xFF, 0x29, 0x00, 0x0D, 0x00, 0xD8, 0xFF,
+ 0x32, 0x00, 0x0F, 0x00, 0xD2, 0xFF, 0x3D, 0x00,
+ 0x08, 0x00, 0x03, 0x00, 0x1E, 0x00, 0x08, 0x00,
+ 0x09, 0x00, 0x1E, 0x00, 0x08, 0x00, 0x0F, 0x00,
+ 0x1E, 0x00, 0x08, 0x00, 0x15, 0x00, 0x1E, 0x00,
+ 0x0B, 0x00, 0x1C, 0x00, 0x29, 0x00, 0x0D, 0x00,
+ 0x22, 0x00, 0x32, 0x00, 0x0F, 0x00, 0x28, 0x00,
+ 0x3D, 0x00, 0x11, 0x00, 0x2E, 0x00, 0x4A, 0x00,
+ 0x08, 0x00, 0xFD, 0xFF, 0x1E, 0x00, 0x08, 0x00,
+ 0xF7, 0xFF, 0x1E, 0x00, 0x08, 0x00, 0xF1, 0xFF,
+ 0x1E, 0x00, 0x08, 0x00, 0xEB, 0xFF, 0x1E, 0x00,
+ 0x0B, 0x00, 0xE4, 0xFF, 0x29, 0x00, 0x0D, 0x00,
+ 0xDE, 0xFF, 0x32, 0x00, 0x0F, 0x00, 0xD8, 0xFF,
+ 0x3D, 0x00, 0x11, 0x00, 0xD2, 0xFF, 0x4A, 0x00,
+ 0x0A, 0x00, 0x03, 0x00, 0x24, 0x00, 0x0A, 0x00,
+ 0x09, 0x00, 0x24, 0x00, 0x0A, 0x00, 0x0F, 0x00,
+ 0x24, 0x00, 0x0A, 0x00, 0x15, 0x00, 0x24, 0x00,
+ 0x0D, 0x00, 0x1C, 0x00, 0x31, 0x00, 0x0F, 0x00,
+ 0x22, 0x00, 0x3B, 0x00, 0x11, 0x00, 0x28, 0x00,
+ 0x48, 0x00, 0x13, 0x00, 0x2E, 0x00, 0x58, 0x00,
+ 0x0A, 0x00, 0xFD, 0xFF, 0x24, 0x00, 0x0A, 0x00,
+ 0xF7, 0xFF, 0x24, 0x00, 0x0A, 0x00, 0xF1, 0xFF,
+ 0x24, 0x00, 0x0A, 0x00, 0xEB, 0xFF, 0x24, 0x00,
+ 0x0D, 0x00, 0xE4, 0xFF, 0x31, 0x00, 0x0F, 0x00,
+ 0xDE, 0xFF, 0x3B, 0x00, 0x11, 0x00, 0xD8, 0xFF,
+ 0x48, 0x00, 0x13, 0x00, 0xD2, 0xFF, 0x58, 0x00,
+ 0x0C, 0x00, 0x03, 0x00, 0x29, 0x00, 0x0C, 0x00,
+ 0x09, 0x00, 0x29, 0x00, 0x0C, 0x00, 0x0F, 0x00,
+ 0x29, 0x00, 0x0C, 0x00, 0x15, 0x00, 0x29, 0x00,
+ 0x0F, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x11, 0x00,
+ 0x22, 0x00, 0x44, 0x00, 0x13, 0x00, 0x28, 0x00,
+ 0x53, 0x00, 0x15, 0x00, 0x2E, 0x00, 0x65, 0x00,
+ 0x0C, 0x00, 0xFD, 0xFF, 0x29, 0x00, 0x0C, 0x00,
+ 0xF7, 0xFF, 0x29, 0x00, 0x0C, 0x00, 0xF1, 0xFF,
+ 0x29, 0x00, 0x0C, 0x00, 0xEB, 0xFF, 0x29, 0x00,
+ 0x0F, 0x00, 0xE4, 0xFF, 0x38, 0x00, 0x11, 0x00,
+ 0xDE, 0xFF, 0x44, 0x00, 0x13, 0x00, 0xD8, 0xFF,
+ 0x53, 0x00, 0x15, 0x00, 0xD2, 0xFF, 0x65, 0x00,
+ 0x03, 0x00, 0x03, 0x00, 0xFE, 0xFF, 0x03, 0x00,
+ 0x09, 0x00, 0xFE, 0xFF, 0x03, 0x00, 0x0F, 0x00,
+ 0xFE, 0xFF, 0x03, 0x00, 0x15, 0x00, 0xFE, 0xFF,
+ 0x06, 0x00, 0x1C, 0x00, 0xFD, 0xFF, 0x08, 0x00,
+ 0x22, 0x00, 0xFC, 0xFF, 0x0A, 0x00, 0x28, 0x00,
+ 0xFB, 0xFF, 0x0C, 0x00, 0x2E, 0x00, 0xFA, 0xFF,
+ 0x03, 0x00, 0xFD, 0xFF, 0xFE, 0xFF, 0x03, 0x00,
+ 0xF7, 0xFF, 0xFE, 0xFF, 0x03, 0x00, 0xF1, 0xFF,
+ 0xFE, 0xFF, 0x03, 0x00, 0xEB, 0xFF, 0xFE, 0xFF,
+ 0x06, 0x00, 0xE4, 0xFF, 0xFD, 0xFF, 0x08, 0x00,
+ 0xDE, 0xFF, 0xFC, 0xFF, 0x0A, 0x00, 0xD8, 0xFF,
+ 0xFB, 0xFF, 0x0C, 0x00, 0xD2, 0xFF, 0xFA, 0xFF,
+ 0x03, 0x00, 0x03, 0x00, 0xF9, 0xFF, 0x03, 0x00,
+ 0x09, 0x00, 0xF9, 0xFF, 0x03, 0x00, 0x0F, 0x00,
+ 0xF9, 0xFF, 0x03, 0x00, 0x15, 0x00, 0xF9, 0xFF,
+ 0x06, 0x00, 0x1C, 0x00, 0xF6, 0xFF, 0x08, 0x00,
+ 0x22, 0x00, 0xF3, 0xFF, 0x0A, 0x00, 0x28, 0x00,
+ 0xF0, 0xFF, 0x0C, 0x00, 0x2E, 0x00, 0xED, 0xFF,
+ 0x03, 0x00, 0xFD, 0xFF, 0xF9, 0xFF, 0x03, 0x00,
+ 0xF7, 0xFF, 0xF9, 0xFF, 0x03, 0x00, 0xF1, 0xFF,
+ 0xF9, 0xFF, 0x03, 0x00, 0xEB, 0xFF, 0xF9, 0xFF,
+ 0x06, 0x00, 0xE4, 0xFF, 0xF6, 0xFF, 0x08, 0x00,
+ 0xDE, 0xFF, 0xF3, 0xFF, 0x0A, 0x00, 0xD8, 0xFF,
+ 0xF0, 0xFF, 0x0C, 0x00, 0xD2, 0xFF, 0xED, 0xFF,
+ 0x03, 0x00, 0x03, 0x00, 0xF3, 0xFF, 0x03, 0x00,
+ 0x09, 0x00, 0xF3, 0xFF, 0x03, 0x00, 0x0F, 0x00,
+ 0xF3, 0xFF, 0x03, 0x00, 0x15, 0x00, 0xF3, 0xFF,
+ 0x06, 0x00, 0x1C, 0x00, 0xEE, 0xFF, 0x08, 0x00,
+ 0x22, 0x00, 0xEA, 0xFF, 0x0A, 0x00, 0x28, 0x00,
+ 0xE5, 0xFF, 0x0C, 0x00, 0x2E, 0x00, 0xDF, 0xFF,
+ 0x03, 0x00, 0xFD, 0xFF, 0xF3, 0xFF, 0x03, 0x00,
+ 0xF7, 0xFF, 0xF3, 0xFF, 0x03, 0x00, 0xF1, 0xFF,
+ 0xF3, 0xFF, 0x03, 0x00, 0xEB, 0xFF, 0xF3, 0xFF,
+ 0x06, 0x00, 0xE4, 0xFF, 0xEE, 0xFF, 0x08, 0x00,
+ 0xDE, 0xFF, 0xEA, 0xFF, 0x0A, 0x00, 0xD8, 0xFF,
+ 0xE5, 0xFF, 0x0C, 0x00, 0xD2, 0xFF, 0xDF, 0xFF,
+ 0x03, 0x00, 0x03, 0x00, 0xEE, 0xFF, 0x03, 0x00,
+ 0x09, 0x00, 0xEE, 0xFF, 0x03, 0x00, 0x0F, 0x00,
+ 0xEE, 0xFF, 0x03, 0x00, 0x15, 0x00, 0xEE, 0xFF,
+ 0x06, 0x00, 0x1C, 0x00, 0xE7, 0xFF, 0x08, 0x00,
+ 0x22, 0x00, 0xE1, 0xFF, 0x0A, 0x00, 0x28, 0x00,
+ 0xDA, 0xFF, 0x0C, 0x00, 0x2E, 0x00, 0xD2, 0xFF,
+ 0x03, 0x00, 0xFD, 0xFF, 0xEE, 0xFF, 0x03, 0x00,
+ 0xF7, 0xFF, 0xEE, 0xFF, 0x03, 0x00, 0xF1, 0xFF,
+ 0xEE, 0xFF, 0x03, 0x00, 0xEB, 0xFF, 0xEE, 0xFF,
+ 0x06, 0x00, 0xE4, 0xFF, 0xE7, 0xFF, 0x08, 0x00,
+ 0xDE, 0xFF, 0xE1, 0xFF, 0x0A, 0x00, 0xD8, 0xFF,
+ 0xDA, 0xFF, 0x0C, 0x00, 0xD2, 0xFF, 0xD2, 0xFF,
+ 0x06, 0x00, 0x03, 0x00, 0xE7, 0xFF, 0x06, 0x00,
+ 0x09, 0x00, 0xE7, 0xFF, 0x06, 0x00, 0x0F, 0x00,
+ 0xE7, 0xFF, 0x06, 0x00, 0x15, 0x00, 0xE7, 0xFF,
+ 0x09, 0x00, 0x1C, 0x00, 0xDE, 0xFF, 0x0B, 0x00,
+ 0x22, 0x00, 0xD7, 0xFF, 0x0D, 0x00, 0x28, 0x00,
+ 0xCE, 0xFF, 0x0F, 0x00, 0x2E, 0x00, 0xC3, 0xFF,
+ 0x06, 0x00, 0xFD, 0xFF, 0xE7, 0xFF, 0x06, 0x00,
+ 0xF7, 0xFF, 0xE7, 0xFF, 0x06, 0x00, 0xF1, 0xFF,
+ 0xE7, 0xFF, 0x06, 0x00, 0xEB, 0xFF, 0xE7, 0xFF,
+ 0x09, 0x00, 0xE4, 0xFF, 0xDE, 0xFF, 0x0B, 0x00,
+ 0xDE, 0xFF, 0xD7, 0xFF, 0x0D, 0x00, 0xD8, 0xFF,
+ 0xCE, 0xFF, 0x0F, 0x00, 0xD2, 0xFF, 0xC3, 0xFF,
+ 0x08, 0x00, 0x03, 0x00, 0xE2, 0xFF, 0x08, 0x00,
+ 0x09, 0x00, 0xE2, 0xFF, 0x08, 0x00, 0x0F, 0x00,
+ 0xE2, 0xFF, 0x08, 0x00, 0x15, 0x00, 0xE2, 0xFF,
+ 0x0B, 0x00, 0x1C, 0x00, 0xD7, 0xFF, 0x0D, 0x00,
+ 0x22, 0x00, 0xCE, 0xFF, 0x0F, 0x00, 0x28, 0x00,
+ 0xC3, 0xFF, 0x11, 0x00, 0x2E, 0x00, 0xB6, 0xFF,
+ 0x08, 0x00, 0xFD, 0xFF, 0xE2, 0xFF, 0x08, 0x00,
+ 0xF7, 0xFF, 0xE2, 0xFF, 0x08, 0x00, 0xF1, 0xFF,
+ 0xE2, 0xFF, 0x08, 0x00, 0xEB, 0xFF, 0xE2, 0xFF,
+ 0x0B, 0x00, 0xE4, 0xFF, 0xD7, 0xFF, 0x0D, 0x00,
+ 0xDE, 0xFF, 0xCE, 0xFF, 0x0F, 0x00, 0xD8, 0xFF,
+ 0xC3, 0xFF, 0x11, 0x00, 0xD2, 0xFF, 0xB6, 0xFF,
+ 0x0A, 0x00, 0x03, 0x00, 0xDC, 0xFF, 0x0A, 0x00,
+ 0x09, 0x00, 0xDC, 0xFF, 0x0A, 0x00, 0x0F, 0x00,
+ 0xDC, 0xFF, 0x0A, 0x00, 0x15, 0x00, 0xDC, 0xFF,
+ 0x0D, 0x00, 0x1C, 0x00, 0xCF, 0xFF, 0x0F, 0x00,
+ 0x22, 0x00, 0xC5, 0xFF, 0x11, 0x00, 0x28, 0x00,
+ 0xB8, 0xFF, 0x13, 0x00, 0x2E, 0x00, 0xA8, 0xFF,
+ 0x0A, 0x00, 0xFD, 0xFF, 0xDC, 0xFF, 0x0A, 0x00,
+ 0xF7, 0xFF, 0xDC, 0xFF, 0x0A, 0x00, 0xF1, 0xFF,
+ 0xDC, 0xFF, 0x0A, 0x00, 0xEB, 0xFF, 0xDC, 0xFF,
+ 0x0D, 0x00, 0xE4, 0xFF, 0xCF, 0xFF, 0x0F, 0x00,
+ 0xDE, 0xFF, 0xC5, 0xFF, 0x11, 0x00, 0xD8, 0xFF,
+ 0xB8, 0xFF, 0x13, 0x00, 0xD2, 0xFF, 0xA8, 0xFF,
+ 0x0C, 0x00, 0x03, 0x00, 0xD7, 0xFF, 0x0C, 0x00,
+ 0x09, 0x00, 0xD7, 0xFF, 0x0C, 0x00, 0x0F, 0x00,
+ 0xD7, 0xFF, 0x0C, 0x00, 0x15, 0x00, 0xD7, 0xFF,
+ 0x0F, 0x00, 0x1C, 0x00, 0xC8, 0xFF, 0x11, 0x00,
+ 0x22, 0x00, 0xBC, 0xFF, 0x13, 0x00, 0x28, 0x00,
+ 0xAD, 0xFF, 0x15, 0x00, 0x2E, 0x00, 0x9B, 0xFF,
+ 0x0C, 0x00, 0xFD, 0xFF, 0xD7, 0xFF, 0x0C, 0x00,
+ 0xF7, 0xFF, 0xD7, 0xFF, 0x0C, 0x00, 0xF1, 0xFF,
+ 0xD7, 0xFF, 0x0C, 0x00, 0xEB, 0xFF, 0xD7, 0xFF,
+ 0x0F, 0x00, 0xE4, 0xFF, 0xC8, 0xFF, 0x11, 0x00,
+ 0xDE, 0xFF, 0xBC, 0xFF, 0x13, 0x00, 0xD8, 0xFF,
+ 0xAD, 0xFF, 0x15, 0x00, 0xD2, 0xFF, 0x9B, 0xFF,
+ 0x04, 0x00, 0x03, 0x00, 0x03, 0x00, 0x04, 0x00,
+ 0x0A, 0x00, 0x03, 0x00, 0x04, 0x00, 0x11, 0x00,
+ 0x03, 0x00, 0x04, 0x00, 0x18, 0x00, 0x03, 0x00,
+ 0x07, 0x00, 0x1F, 0x00, 0x04, 0x00, 0x09, 0x00,
+ 0x26, 0x00, 0x05, 0x00, 0x0B, 0x00, 0x2D, 0x00,
+ 0x06, 0x00, 0x0D, 0x00, 0x34, 0x00, 0x07, 0x00,
+ 0x04, 0x00, 0xFD, 0xFF, 0x03, 0x00, 0x04, 0x00,
+ 0xF6, 0xFF, 0x03, 0x00, 0x04, 0x00, 0xEF, 0xFF,
+ 0x03, 0x00, 0x04, 0x00, 0xE8, 0xFF, 0x03, 0x00,
+ 0x07, 0x00, 0xE1, 0xFF, 0x04, 0x00, 0x09, 0x00,
+ 0xDA, 0xFF, 0x05, 0x00, 0x0B, 0x00, 0xD3, 0xFF,
+ 0x06, 0x00, 0x0D, 0x00, 0xCC, 0xFF, 0x07, 0x00,
+ 0x04, 0x00, 0x03, 0x00, 0x09, 0x00, 0x04, 0x00,
+ 0x0A, 0x00, 0x09, 0x00, 0x04, 0x00, 0x11, 0x00,
+ 0x09, 0x00, 0x04, 0x00, 0x18, 0x00, 0x09, 0x00,
+ 0x07, 0x00, 0x1F, 0x00, 0x0C, 0x00, 0x09, 0x00,
+ 0x26, 0x00, 0x0F, 0x00, 0x0B, 0x00, 0x2D, 0x00,
+ 0x12, 0x00, 0x0D, 0x00, 0x34, 0x00, 0x16, 0x00,
+ 0x04, 0x00, 0xFD, 0xFF, 0x09, 0x00, 0x04, 0x00,
+ 0xF6, 0xFF, 0x09, 0x00, 0x04, 0x00, 0xEF, 0xFF,
+ 0x09, 0x00, 0x04, 0x00, 0xE8, 0xFF, 0x09, 0x00,
+ 0x07, 0x00, 0xE1, 0xFF, 0x0C, 0x00, 0x09, 0x00,
+ 0xDA, 0xFF, 0x0F, 0x00, 0x0B, 0x00, 0xD3, 0xFF,
+ 0x12, 0x00, 0x0D, 0x00, 0xCC, 0xFF, 0x16, 0x00,
+ 0x04, 0x00, 0x03, 0x00, 0x0F, 0x00, 0x04, 0x00,
+ 0x0A, 0x00, 0x0F, 0x00, 0x04, 0x00, 0x11, 0x00,
+ 0x0F, 0x00, 0x04, 0x00, 0x18, 0x00, 0x0F, 0x00,
+ 0x07, 0x00, 0x1F, 0x00, 0x15, 0x00, 0x09, 0x00,
+ 0x26, 0x00, 0x19, 0x00, 0x0B, 0x00, 0x2D, 0x00,
+ 0x1F, 0x00, 0x0D, 0x00, 0x34, 0x00, 0x25, 0x00,
+ 0x04, 0x00, 0xFD, 0xFF, 0x0F, 0x00, 0x04, 0x00,
+ 0xF6, 0xFF, 0x0F, 0x00, 0x04, 0x00, 0xEF, 0xFF,
+ 0x0F, 0x00, 0x04, 0x00, 0xE8, 0xFF, 0x0F, 0x00,
+ 0x07, 0x00, 0xE1, 0xFF, 0x15, 0x00, 0x09, 0x00,
+ 0xDA, 0xFF, 0x19, 0x00, 0x0B, 0x00, 0xD3, 0xFF,
+ 0x1F, 0x00, 0x0D, 0x00, 0xCC, 0xFF, 0x25, 0x00,
+ 0x04, 0x00, 0x03, 0x00, 0x15, 0x00, 0x04, 0x00,
+ 0x0A, 0x00, 0x15, 0x00, 0x04, 0x00, 0x11, 0x00,
+ 0x15, 0x00, 0x04, 0x00, 0x18, 0x00, 0x15, 0x00,
+ 0x07, 0x00, 0x1F, 0x00, 0x1D, 0x00, 0x09, 0x00,
+ 0x26, 0x00, 0x23, 0x00, 0x0B, 0x00, 0x2D, 0x00,
+ 0x2B, 0x00, 0x0D, 0x00, 0x34, 0x00, 0x34, 0x00,
+ 0x04, 0x00, 0xFD, 0xFF, 0x15, 0x00, 0x04, 0x00,
+ 0xF6, 0xFF, 0x15, 0x00, 0x04, 0x00, 0xEF, 0xFF,
+ 0x15, 0x00, 0x04, 0x00, 0xE8, 0xFF, 0x15, 0x00,
+ 0x07, 0x00, 0xE1, 0xFF, 0x1D, 0x00, 0x09, 0x00,
+ 0xDA, 0xFF, 0x23, 0x00, 0x0B, 0x00, 0xD3, 0xFF,
+ 0x2B, 0x00, 0x0D, 0x00, 0xCC, 0xFF, 0x34, 0x00,
+ 0x07, 0x00, 0x03, 0x00, 0x1C, 0x00, 0x07, 0x00,
+ 0x0A, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x11, 0x00,
+ 0x1C, 0x00, 0x07, 0x00, 0x18, 0x00, 0x1C, 0x00,
+ 0x0A, 0x00, 0x1F, 0x00, 0x26, 0x00, 0x0C, 0x00,
+ 0x26, 0x00, 0x2E, 0x00, 0x0E, 0x00, 0x2D, 0x00,
+ 0x38, 0x00, 0x10, 0x00, 0x34, 0x00, 0x43, 0x00,
+ 0x07, 0x00, 0xFD, 0xFF, 0x1C, 0x00, 0x07, 0x00,
+ 0xF6, 0xFF, 0x1C, 0x00, 0x07, 0x00, 0xEF, 0xFF,
+ 0x1C, 0x00, 0x07, 0x00, 0xE8, 0xFF, 0x1C, 0x00,
+ 0x0A, 0x00, 0xE1, 0xFF, 0x26, 0x00, 0x0C, 0x00,
+ 0xDA, 0xFF, 0x2E, 0x00, 0x0E, 0x00, 0xD3, 0xFF,
+ 0x38, 0x00, 0x10, 0x00, 0xCC, 0xFF, 0x43, 0x00,
+ 0x09, 0x00, 0x03, 0x00, 0x22, 0x00, 0x09, 0x00,
+ 0x0A, 0x00, 0x22, 0x00, 0x09, 0x00, 0x11, 0x00,
+ 0x22, 0x00, 0x09, 0x00, 0x18, 0x00, 0x22, 0x00,
+ 0x0C, 0x00, 0x1F, 0x00, 0x2E, 0x00, 0x0E, 0x00,
+ 0x26, 0x00, 0x38, 0x00, 0x10, 0x00, 0x2D, 0x00,
+ 0x44, 0x00, 0x12, 0x00, 0x34, 0x00, 0x52, 0x00,
+ 0x09, 0x00, 0xFD, 0xFF, 0x22, 0x00, 0x09, 0x00,
+ 0xF6, 0xFF, 0x22, 0x00, 0x09, 0x00, 0xEF, 0xFF,
+ 0x22, 0x00, 0x09, 0x00, 0xE8, 0xFF, 0x22, 0x00,
+ 0x0C, 0x00, 0xE1, 0xFF, 0x2E, 0x00, 0x0E, 0x00,
+ 0xDA, 0xFF, 0x38, 0x00, 0x10, 0x00, 0xD3, 0xFF,
+ 0x44, 0x00, 0x12, 0x00, 0xCC, 0xFF, 0x52, 0x00,
+ 0x0B, 0x00, 0x03, 0x00, 0x28, 0x00, 0x0B, 0x00,
+ 0x0A, 0x00, 0x28, 0x00, 0x0B, 0x00, 0x11, 0x00,
+ 0x28, 0x00, 0x0B, 0x00, 0x18, 0x00, 0x28, 0x00,
+ 0x0E, 0x00, 0x1F, 0x00, 0x37, 0x00, 0x10, 0x00,
+ 0x26, 0x00, 0x42, 0x00, 0x12, 0x00, 0x2D, 0x00,
+ 0x51, 0x00, 0x14, 0x00, 0x34, 0x00, 0x61, 0x00,
+ 0x0B, 0x00, 0xFD, 0xFF, 0x28, 0x00, 0x0B, 0x00,
+ 0xF6, 0xFF, 0x28, 0x00, 0x0B, 0x00, 0xEF, 0xFF,
+ 0x28, 0x00, 0x0B, 0x00, 0xE8, 0xFF, 0x28, 0x00,
+ 0x0E, 0x00, 0xE1, 0xFF, 0x37, 0x00, 0x10, 0x00,
+ 0xDA, 0xFF, 0x42, 0x00, 0x12, 0x00, 0xD3, 0xFF,
+ 0x51, 0x00, 0x14, 0x00, 0xCC, 0xFF, 0x61, 0x00,
+ 0x0D, 0x00, 0x03, 0x00, 0x2E, 0x00, 0x0D, 0x00,
+ 0x0A, 0x00, 0x2E, 0x00, 0x0D, 0x00, 0x11, 0x00,
+ 0x2E, 0x00, 0x0D, 0x00, 0x18, 0x00, 0x2E, 0x00,
+ 0x10, 0x00, 0x1F, 0x00, 0x3F, 0x00, 0x12, 0x00,
+ 0x26, 0x00, 0x4C, 0x00, 0x14, 0x00, 0x2D, 0x00,
+ 0x5D, 0x00, 0x16, 0x00, 0x34, 0x00, 0x70, 0x00,
+ 0x0D, 0x00, 0xFD, 0xFF, 0x2E, 0x00, 0x0D, 0x00,
+ 0xF6, 0xFF, 0x2E, 0x00, 0x0D, 0x00, 0xEF, 0xFF,
+ 0x2E, 0x00, 0x0D, 0x00, 0xE8, 0xFF, 0x2E, 0x00,
+ 0x10, 0x00, 0xE1, 0xFF, 0x3F, 0x00, 0x12, 0x00,
+ 0xDA, 0xFF, 0x4C, 0x00, 0x14, 0x00, 0xD3, 0xFF,
+ 0x5D, 0x00, 0x16, 0x00, 0xCC, 0xFF, 0x70, 0x00,
+ 0x04, 0x00, 0x03, 0x00, 0xFD, 0xFF, 0x04, 0x00,
+ 0x0A, 0x00, 0xFD, 0xFF, 0x04, 0x00, 0x11, 0x00,
+ 0xFD, 0xFF, 0x04, 0x00, 0x18, 0x00, 0xFD, 0xFF,
+ 0x07, 0x00, 0x1F, 0x00, 0xFC, 0xFF, 0x09, 0x00,
+ 0x26, 0x00, 0xFB, 0xFF, 0x0B, 0x00, 0x2D, 0x00,
+ 0xFA, 0xFF, 0x0D, 0x00, 0x34, 0x00, 0xF9, 0xFF,
+ 0x04, 0x00, 0xFD, 0xFF, 0xFD, 0xFF, 0x04, 0x00,
+ 0xF6, 0xFF, 0xFD, 0xFF, 0x04, 0x00, 0xEF, 0xFF,
+ 0xFD, 0xFF, 0x04, 0x00, 0xE8, 0xFF, 0xFD, 0xFF,
+ 0x07, 0x00, 0xE1, 0xFF, 0xFC, 0xFF, 0x09, 0x00,
+ 0xDA, 0xFF, 0xFB, 0xFF, 0x0B, 0x00, 0xD3, 0xFF,
+ 0xFA, 0xFF, 0x0D, 0x00, 0xCC, 0xFF, 0xF9, 0xFF,
+ 0x04, 0x00, 0x03, 0x00, 0xF7, 0xFF, 0x04, 0x00,
+ 0x0A, 0x00, 0xF7, 0xFF, 0x04, 0x00, 0x11, 0x00,
+ 0xF7, 0xFF, 0x04, 0x00, 0x18, 0x00, 0xF7, 0xFF,
+ 0x07, 0x00, 0x1F, 0x00, 0xF4, 0xFF, 0x09, 0x00,
+ 0x26, 0x00, 0xF1, 0xFF, 0x0B, 0x00, 0x2D, 0x00,
+ 0xEE, 0xFF, 0x0D, 0x00, 0x34, 0x00, 0xEA, 0xFF,
+ 0x04, 0x00, 0xFD, 0xFF, 0xF7, 0xFF, 0x04, 0x00,
+ 0xF6, 0xFF, 0xF7, 0xFF, 0x04, 0x00, 0xEF, 0xFF,
+ 0xF7, 0xFF, 0x04, 0x00, 0xE8, 0xFF, 0xF7, 0xFF,
+ 0x07, 0x00, 0xE1, 0xFF, 0xF4, 0xFF, 0x09, 0x00,
+ 0xDA, 0xFF, 0xF1, 0xFF, 0x0B, 0x00, 0xD3, 0xFF,
+ 0xEE, 0xFF, 0x0D, 0x00, 0xCC, 0xFF, 0xEA, 0xFF,
+ 0x04, 0x00, 0x03, 0x00, 0xF1, 0xFF, 0x04, 0x00,
+ 0x0A, 0x00, 0xF1, 0xFF, 0x04, 0x00, 0x11, 0x00,
+ 0xF1, 0xFF, 0x04, 0x00, 0x18, 0x00, 0xF1, 0xFF,
+ 0x07, 0x00, 0x1F, 0x00, 0xEB, 0xFF, 0x09, 0x00,
+ 0x26, 0x00, 0xE7, 0xFF, 0x0B, 0x00, 0x2D, 0x00,
+ 0xE1, 0xFF, 0x0D, 0x00, 0x34, 0x00, 0xDB, 0xFF,
+ 0x04, 0x00, 0xFD, 0xFF, 0xF1, 0xFF, 0x04, 0x00,
+ 0xF6, 0xFF, 0xF1, 0xFF, 0x04, 0x00, 0xEF, 0xFF,
+ 0xF1, 0xFF, 0x04, 0x00, 0xE8, 0xFF, 0xF1, 0xFF,
+ 0x07, 0x00, 0xE1, 0xFF, 0xEB, 0xFF, 0x09, 0x00,
+ 0xDA, 0xFF, 0xE7, 0xFF, 0x0B, 0x00, 0xD3, 0xFF,
+ 0xE1, 0xFF, 0x0D, 0x00, 0xCC, 0xFF, 0xDB, 0xFF,
+ 0x04, 0x00, 0x03, 0x00, 0xEB, 0xFF, 0x04, 0x00,
+ 0x0A, 0x00, 0xEB, 0xFF, 0x04, 0x00, 0x11, 0x00,
+ 0xEB, 0xFF, 0x04, 0x00, 0x18, 0x00, 0xEB, 0xFF,
+ 0x07, 0x00, 0x1F, 0x00, 0xE3, 0xFF, 0x09, 0x00,
+ 0x26, 0x00, 0xDD, 0xFF, 0x0B, 0x00, 0x2D, 0x00,
+ 0xD5, 0xFF, 0x0D, 0x00, 0x34, 0x00, 0xCC, 0xFF,
+ 0x04, 0x00, 0xFD, 0xFF, 0xEB, 0xFF, 0x04, 0x00,
+ 0xF6, 0xFF, 0xEB, 0xFF, 0x04, 0x00, 0xEF, 0xFF,
+ 0xEB, 0xFF, 0x04, 0x00, 0xE8, 0xFF, 0xEB, 0xFF,
+ 0x07, 0x00, 0xE1, 0xFF, 0xE3, 0xFF, 0x09, 0x00,
+ 0xDA, 0xFF, 0xDD, 0xFF, 0x0B, 0x00, 0xD3, 0xFF,
+ 0xD5, 0xFF, 0x0D, 0x00, 0xCC, 0xFF, 0xCC, 0xFF,
+ 0x07, 0x00, 0x03, 0x00, 0xE4, 0xFF, 0x07, 0x00,
+ 0x0A, 0x00, 0xE4, 0xFF, 0x07, 0x00, 0x11, 0x00,
+ 0xE4, 0xFF, 0x07, 0x00, 0x18, 0x00, 0xE4, 0xFF,
+ 0x0A, 0x00, 0x1F, 0x00, 0xDA, 0xFF, 0x0C, 0x00,
+ 0x26, 0x00, 0xD2, 0xFF, 0x0E, 0x00, 0x2D, 0x00,
+ 0xC8, 0xFF, 0x10, 0x00, 0x34, 0x00, 0xBD, 0xFF,
+ 0x07, 0x00, 0xFD, 0xFF, 0xE4, 0xFF, 0x07, 0x00,
+ 0xF6, 0xFF, 0xE4, 0xFF, 0x07, 0x00, 0xEF, 0xFF,
+ 0xE4, 0xFF, 0x07, 0x00, 0xE8, 0xFF, 0xE4, 0xFF,
+ 0x0A, 0x00, 0xE1, 0xFF, 0xDA, 0xFF, 0x0C, 0x00,
+ 0xDA, 0xFF, 0xD2, 0xFF, 0x0E, 0x00, 0xD3, 0xFF,
+ 0xC8, 0xFF, 0x10, 0x00, 0xCC, 0xFF, 0xBD, 0xFF,
+ 0x09, 0x00, 0x03, 0x00, 0xDE, 0xFF, 0x09, 0x00,
+ 0x0A, 0x00, 0xDE, 0xFF, 0x09, 0x00, 0x11, 0x00,
+ 0xDE, 0xFF, 0x09, 0x00, 0x18, 0x00, 0xDE, 0xFF,
+ 0x0C, 0x00, 0x1F, 0x00, 0xD2, 0xFF, 0x0E, 0x00,
+ 0x26, 0x00, 0xC8, 0xFF, 0x10, 0x00, 0x2D, 0x00,
+ 0xBC, 0xFF, 0x12, 0x00, 0x34, 0x00, 0xAE, 0xFF,
+ 0x09, 0x00, 0xFD, 0xFF, 0xDE, 0xFF, 0x09, 0x00,
+ 0xF6, 0xFF, 0xDE, 0xFF, 0x09, 0x00, 0xEF, 0xFF,
+ 0xDE, 0xFF, 0x09, 0x00, 0xE8, 0xFF, 0xDE, 0xFF,
+ 0x0C, 0x00, 0xE1, 0xFF, 0xD2, 0xFF, 0x0E, 0x00,
+ 0xDA, 0xFF, 0xC8, 0xFF, 0x10, 0x00, 0xD3, 0xFF,
+ 0xBC, 0xFF, 0x12, 0x00, 0xCC, 0xFF, 0xAE, 0xFF,
+ 0x0B, 0x00, 0x03, 0x00, 0xD8, 0xFF, 0x0B, 0x00,
+ 0x0A, 0x00, 0xD8, 0xFF, 0x0B, 0x00, 0x11, 0x00,
+ 0xD8, 0xFF, 0x0B, 0x00, 0x18, 0x00, 0xD8, 0xFF,
+ 0x0E, 0x00, 0x1F, 0x00, 0xC9, 0xFF, 0x10, 0x00,
+ 0x26, 0x00, 0xBE, 0xFF, 0x12, 0x00, 0x2D, 0x00,
+ 0xAF, 0xFF, 0x14, 0x00, 0x34, 0x00, 0x9F, 0xFF,
+ 0x0B, 0x00, 0xFD, 0xFF, 0xD8, 0xFF, 0x0B, 0x00,
+ 0xF6, 0xFF, 0xD8, 0xFF, 0x0B, 0x00, 0xEF, 0xFF,
+ 0xD8, 0xFF, 0x0B, 0x00, 0xE8, 0xFF, 0xD8, 0xFF,
+ 0x0E, 0x00, 0xE1, 0xFF, 0xC9, 0xFF, 0x10, 0x00,
+ 0xDA, 0xFF, 0xBE, 0xFF, 0x12, 0x00, 0xD3, 0xFF,
+ 0xAF, 0xFF, 0x14, 0x00, 0xCC, 0xFF, 0x9F, 0xFF,
+ 0x0D, 0x00, 0x03, 0x00, 0xD2, 0xFF, 0x0D, 0x00,
+ 0x0A, 0x00, 0xD2, 0xFF, 0x0D, 0x00, 0x11, 0x00,
+ 0xD2, 0xFF, 0x0D, 0x00, 0x18, 0x00, 0xD2, 0xFF,
+ 0x10, 0x00, 0x1F, 0x00, 0xC1, 0xFF, 0x12, 0x00,
+ 0x26, 0x00, 0xB4, 0xFF, 0x14, 0x00, 0x2D, 0x00,
+ 0xA3, 0xFF, 0x16, 0x00, 0x34, 0x00, 0x90, 0xFF,
+ 0x0D, 0x00, 0xFD, 0xFF, 0xD2, 0xFF, 0x0D, 0x00,
+ 0xF6, 0xFF, 0xD2, 0xFF, 0x0D, 0x00, 0xEF, 0xFF,
+ 0xD2, 0xFF, 0x0D, 0x00, 0xE8, 0xFF, 0xD2, 0xFF,
+ 0x10, 0x00, 0xE1, 0xFF, 0xC1, 0xFF, 0x12, 0x00,
+ 0xDA, 0xFF, 0xB4, 0xFF, 0x14, 0x00, 0xD3, 0xFF,
+ 0xA3, 0xFF, 0x16, 0x00, 0xCC, 0xFF, 0x90, 0xFF,
+ 0x05, 0x00, 0x03, 0x00, 0x03, 0x00, 0x05, 0x00,
+ 0x0A, 0x00, 0x03, 0x00, 0x05, 0x00, 0x12, 0x00,
+ 0x03, 0x00, 0x05, 0x00, 0x19, 0x00, 0x03, 0x00,
+ 0x08, 0x00, 0x22, 0x00, 0x04, 0x00, 0x0A, 0x00,
+ 0x29, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x31, 0x00,
+ 0x06, 0x00, 0x0E, 0x00, 0x38, 0x00, 0x08, 0x00,
+ 0x05, 0x00, 0xFD, 0xFF, 0x03, 0x00, 0x05, 0x00,
+ 0xF6, 0xFF, 0x03, 0x00, 0x05, 0x00, 0xEE, 0xFF,
+ 0x03, 0x00, 0x05, 0x00, 0xE7, 0xFF, 0x03, 0x00,
+ 0x08, 0x00, 0xDE, 0xFF, 0x04, 0x00, 0x0A, 0x00,
+ 0xD7, 0xFF, 0x05, 0x00, 0x0C, 0x00, 0xCF, 0xFF,
+ 0x06, 0x00, 0x0E, 0x00, 0xC8, 0xFF, 0x08, 0x00,
+ 0x05, 0x00, 0x03, 0x00, 0x0A, 0x00, 0x05, 0x00,
+ 0x0A, 0x00, 0x0A, 0x00, 0x05, 0x00, 0x12, 0x00,
+ 0x0A, 0x00, 0x05, 0x00, 0x19, 0x00, 0x0A, 0x00,
+ 0x08, 0x00, 0x22, 0x00, 0x0D, 0x00, 0x0A, 0x00,
+ 0x29, 0x00, 0x10, 0x00, 0x0C, 0x00, 0x31, 0x00,
+ 0x13, 0x00, 0x0E, 0x00, 0x38, 0x00, 0x18, 0x00,
+ 0x05, 0x00, 0xFD, 0xFF, 0x0A, 0x00, 0x05, 0x00,
+ 0xF6, 0xFF, 0x0A, 0x00, 0x05, 0x00, 0xEE, 0xFF,
+ 0x0A, 0x00, 0x05, 0x00, 0xE7, 0xFF, 0x0A, 0x00,
+ 0x08, 0x00, 0xDE, 0xFF, 0x0D, 0x00, 0x0A, 0x00,
+ 0xD7, 0xFF, 0x10, 0x00, 0x0C, 0x00, 0xCF, 0xFF,
+ 0x13, 0x00, 0x0E, 0x00, 0xC8, 0xFF, 0x18, 0x00,
+ 0x05, 0x00, 0x03, 0x00, 0x11, 0x00, 0x05, 0x00,
+ 0x0A, 0x00, 0x11, 0x00, 0x05, 0x00, 0x12, 0x00,
+ 0x11, 0x00, 0x05, 0x00, 0x19, 0x00, 0x11, 0x00,
+ 0x08, 0x00, 0x22, 0x00, 0x16, 0x00, 0x0A, 0x00,
+ 0x29, 0x00, 0x1B, 0x00, 0x0C, 0x00, 0x31, 0x00,
+ 0x21, 0x00, 0x0E, 0x00, 0x38, 0x00, 0x29, 0x00,
+ 0x05, 0x00, 0xFD, 0xFF, 0x11, 0x00, 0x05, 0x00,
+ 0xF6, 0xFF, 0x11, 0x00, 0x05, 0x00, 0xEE, 0xFF,
+ 0x11, 0x00, 0x05, 0x00, 0xE7, 0xFF, 0x11, 0x00,
+ 0x08, 0x00, 0xDE, 0xFF, 0x16, 0x00, 0x0A, 0x00,
+ 0xD7, 0xFF, 0x1B, 0x00, 0x0C, 0x00, 0xCF, 0xFF,
+ 0x21, 0x00, 0x0E, 0x00, 0xC8, 0xFF, 0x29, 0x00,
+ 0x05, 0x00, 0x03, 0x00, 0x18, 0x00, 0x05, 0x00,
+ 0x0A, 0x00, 0x18, 0x00, 0x05, 0x00, 0x12, 0x00,
+ 0x18, 0x00, 0x05, 0x00, 0x19, 0x00, 0x18, 0x00,
+ 0x08, 0x00, 0x22, 0x00, 0x1F, 0x00, 0x0A, 0x00,
+ 0x29, 0x00, 0x26, 0x00, 0x0C, 0x00, 0x31, 0x00,
+ 0x2E, 0x00, 0x0E, 0x00, 0x38, 0x00, 0x39, 0x00,
+ 0x05, 0x00, 0xFD, 0xFF, 0x18, 0x00, 0x05, 0x00,
+ 0xF6, 0xFF, 0x18, 0x00, 0x05, 0x00, 0xEE, 0xFF,
+ 0x18, 0x00, 0x05, 0x00, 0xE7, 0xFF, 0x18, 0x00,
+ 0x08, 0x00, 0xDE, 0xFF, 0x1F, 0x00, 0x0A, 0x00,
+ 0xD7, 0xFF, 0x26, 0x00, 0x0C, 0x00, 0xCF, 0xFF,
+ 0x2E, 0x00, 0x0E, 0x00, 0xC8, 0xFF, 0x39, 0x00,
+ 0x08, 0x00, 0x03, 0x00, 0x1F, 0x00, 0x08, 0x00,
+ 0x0A, 0x00, 0x1F, 0x00, 0x08, 0x00, 0x12, 0x00,
+ 0x1F, 0x00, 0x08, 0x00, 0x19, 0x00, 0x1F, 0x00,
+ 0x0B, 0x00, 0x22, 0x00, 0x29, 0x00, 0x0D, 0x00,
+ 0x29, 0x00, 0x32, 0x00, 0x0F, 0x00, 0x31, 0x00,
+ 0x3D, 0x00, 0x11, 0x00, 0x38, 0x00, 0x4A, 0x00,
+ 0x08, 0x00, 0xFD, 0xFF, 0x1F, 0x00, 0x08, 0x00,
+ 0xF6, 0xFF, 0x1F, 0x00, 0x08, 0x00, 0xEE, 0xFF,
+ 0x1F, 0x00, 0x08, 0x00, 0xE7, 0xFF, 0x1F, 0x00,
+ 0x0B, 0x00, 0xDE, 0xFF, 0x29, 0x00, 0x0D, 0x00,
+ 0xD7, 0xFF, 0x32, 0x00, 0x0F, 0x00, 0xCF, 0xFF,
+ 0x3D, 0x00, 0x11, 0x00, 0xC8, 0xFF, 0x4A, 0x00,
+ 0x0A, 0x00, 0x03, 0x00, 0x26, 0x00, 0x0A, 0x00,
+ 0x0A, 0x00, 0x26, 0x00, 0x0A, 0x00, 0x12, 0x00,
+ 0x26, 0x00, 0x0A, 0x00, 0x19, 0x00, 0x26, 0x00,
+ 0x0D, 0x00, 0x22, 0x00, 0x32, 0x00, 0x0F, 0x00,
+ 0x29, 0x00, 0x3D, 0x00, 0x11, 0x00, 0x31, 0x00,
+ 0x4A, 0x00, 0x13, 0x00, 0x38, 0x00, 0x5A, 0x00,
+ 0x0A, 0x00, 0xFD, 0xFF, 0x26, 0x00, 0x0A, 0x00,
+ 0xF6, 0xFF, 0x26, 0x00, 0x0A, 0x00, 0xEE, 0xFF,
+ 0x26, 0x00, 0x0A, 0x00, 0xE7, 0xFF, 0x26, 0x00,
+ 0x0D, 0x00, 0xDE, 0xFF, 0x32, 0x00, 0x0F, 0x00,
+ 0xD7, 0xFF, 0x3D, 0x00, 0x11, 0x00, 0xCF, 0xFF,
+ 0x4A, 0x00, 0x13, 0x00, 0xC8, 0xFF, 0x5A, 0x00,
+ 0x0C, 0x00, 0x03, 0x00, 0x2D, 0x00, 0x0C, 0x00,
+ 0x0A, 0x00, 0x2D, 0x00, 0x0C, 0x00, 0x12, 0x00,
+ 0x2D, 0x00, 0x0C, 0x00, 0x19, 0x00, 0x2D, 0x00,
+ 0x0F, 0x00, 0x22, 0x00, 0x3B, 0x00, 0x11, 0x00,
+ 0x29, 0x00, 0x48, 0x00, 0x13, 0x00, 0x31, 0x00,
+ 0x58, 0x00, 0x15, 0x00, 0x38, 0x00, 0x6B, 0x00,
+ 0x0C, 0x00, 0xFD, 0xFF, 0x2D, 0x00, 0x0C, 0x00,
+ 0xF6, 0xFF, 0x2D, 0x00, 0x0C, 0x00, 0xEE, 0xFF,
+ 0x2D, 0x00, 0x0C, 0x00, 0xE7, 0xFF, 0x2D, 0x00,
+ 0x0F, 0x00, 0xDE, 0xFF, 0x3B, 0x00, 0x11, 0x00,
+ 0xD7, 0xFF, 0x48, 0x00, 0x13, 0x00, 0xCF, 0xFF,
+ 0x58, 0x00, 0x15, 0x00, 0xC8, 0xFF, 0x6B, 0x00,
+ 0x0E, 0x00, 0x03, 0x00, 0x34, 0x00, 0x0E, 0x00,
+ 0x0A, 0x00, 0x34, 0x00, 0x0E, 0x00, 0x12, 0x00,
+ 0x34, 0x00, 0x0E, 0x00, 0x19, 0x00, 0x34, 0x00,
+ 0x11, 0x00, 0x22, 0x00, 0x44, 0x00, 0x13, 0x00,
+ 0x29, 0x00, 0x53, 0x00, 0x15, 0x00, 0x31, 0x00,
+ 0x65, 0x00, 0x17, 0x00, 0x38, 0x00, 0x7B, 0x00,
+ 0x0E, 0x00, 0xFD, 0xFF, 0x34, 0x00, 0x0E, 0x00,
+ 0xF6, 0xFF, 0x34, 0x00, 0x0E, 0x00, 0xEE, 0xFF,
+ 0x34, 0x00, 0x0E, 0x00, 0xE7, 0xFF, 0x34, 0x00,
+ 0x11, 0x00, 0xDE, 0xFF, 0x44, 0x00, 0x13, 0x00,
+ 0xD7, 0xFF, 0x53, 0x00, 0x15, 0x00, 0xCF, 0xFF,
+ 0x65, 0x00, 0x17, 0x00, 0xC8, 0xFF, 0x7B, 0x00,
+ 0x05, 0x00, 0x03, 0x00, 0xFD, 0xFF, 0x05, 0x00,
+ 0x0A, 0x00, 0xFD, 0xFF, 0x05, 0x00, 0x12, 0x00,
+ 0xFD, 0xFF, 0x05, 0x00, 0x19, 0x00, 0xFD, 0xFF,
+ 0x08, 0x00, 0x22, 0x00, 0xFC, 0xFF, 0x0A, 0x00,
+ 0x29, 0x00, 0xFB, 0xFF, 0x0C, 0x00, 0x31, 0x00,
+ 0xFA, 0xFF, 0x0E, 0x00, 0x38, 0x00, 0xF8, 0xFF,
+ 0x05, 0x00, 0xFD, 0xFF, 0xFD, 0xFF, 0x05, 0x00,
+ 0xF6, 0xFF, 0xFD, 0xFF, 0x05, 0x00, 0xEE, 0xFF,
+ 0xFD, 0xFF, 0x05, 0x00, 0xE7, 0xFF, 0xFD, 0xFF,
+ 0x08, 0x00, 0xDE, 0xFF, 0xFC, 0xFF, 0x0A, 0x00,
+ 0xD7, 0xFF, 0xFB, 0xFF, 0x0C, 0x00, 0xCF, 0xFF,
+ 0xFA, 0xFF, 0x0E, 0x00, 0xC8, 0xFF, 0xF8, 0xFF,
+ 0x05, 0x00, 0x03, 0x00, 0xF6, 0xFF, 0x05, 0x00,
+ 0x0A, 0x00, 0xF6, 0xFF, 0x05, 0x00, 0x12, 0x00,
+ 0xF6, 0xFF, 0x05, 0x00, 0x19, 0x00, 0xF6, 0xFF,
+ 0x08, 0x00, 0x22, 0x00, 0xF3, 0xFF, 0x0A, 0x00,
+ 0x29, 0x00, 0xF0, 0xFF, 0x0C, 0x00, 0x31, 0x00,
+ 0xED, 0xFF, 0x0E, 0x00, 0x38, 0x00, 0xE8, 0xFF,
+ 0x05, 0x00, 0xFD, 0xFF, 0xF6, 0xFF, 0x05, 0x00,
+ 0xF6, 0xFF, 0xF6, 0xFF, 0x05, 0x00, 0xEE, 0xFF,
+ 0xF6, 0xFF, 0x05, 0x00, 0xE7, 0xFF, 0xF6, 0xFF,
+ 0x08, 0x00, 0xDE, 0xFF, 0xF3, 0xFF, 0x0A, 0x00,
+ 0xD7, 0xFF, 0xF0, 0xFF, 0x0C, 0x00, 0xCF, 0xFF,
+ 0xED, 0xFF, 0x0E, 0x00, 0xC8, 0xFF, 0xE8, 0xFF,
+ 0x05, 0x00, 0x03, 0x00, 0xEF, 0xFF, 0x05, 0x00,
+ 0x0A, 0x00, 0xEF, 0xFF, 0x05, 0x00, 0x12, 0x00,
+ 0xEF, 0xFF, 0x05, 0x00, 0x19, 0x00, 0xEF, 0xFF,
+ 0x08, 0x00, 0x22, 0x00, 0xEA, 0xFF, 0x0A, 0x00,
+ 0x29, 0x00, 0xE5, 0xFF, 0x0C, 0x00, 0x31, 0x00,
+ 0xDF, 0xFF, 0x0E, 0x00, 0x38, 0x00, 0xD7, 0xFF,
+ 0x05, 0x00, 0xFD, 0xFF, 0xEF, 0xFF, 0x05, 0x00,
+ 0xF6, 0xFF, 0xEF, 0xFF, 0x05, 0x00, 0xEE, 0xFF,
+ 0xEF, 0xFF, 0x05, 0x00, 0xE7, 0xFF, 0xEF, 0xFF,
+ 0x08, 0x00, 0xDE, 0xFF, 0xEA, 0xFF, 0x0A, 0x00,
+ 0xD7, 0xFF, 0xE5, 0xFF, 0x0C, 0x00, 0xCF, 0xFF,
+ 0xDF, 0xFF, 0x0E, 0x00, 0xC8, 0xFF, 0xD7, 0xFF,
+ 0x05, 0x00, 0x03, 0x00, 0xE8, 0xFF, 0x05, 0x00,
+ 0x0A, 0x00, 0xE8, 0xFF, 0x05, 0x00, 0x12, 0x00,
+ 0xE8, 0xFF, 0x05, 0x00, 0x19, 0x00, 0xE8, 0xFF,
+ 0x08, 0x00, 0x22, 0x00, 0xE1, 0xFF, 0x0A, 0x00,
+ 0x29, 0x00, 0xDA, 0xFF, 0x0C, 0x00, 0x31, 0x00,
+ 0xD2, 0xFF, 0x0E, 0x00, 0x38, 0x00, 0xC7, 0xFF,
+ 0x05, 0x00, 0xFD, 0xFF, 0xE8, 0xFF, 0x05, 0x00,
+ 0xF6, 0xFF, 0xE8, 0xFF, 0x05, 0x00, 0xEE, 0xFF,
+ 0xE8, 0xFF, 0x05, 0x00, 0xE7, 0xFF, 0xE8, 0xFF,
+ 0x08, 0x00, 0xDE, 0xFF, 0xE1, 0xFF, 0x0A, 0x00,
+ 0xD7, 0xFF, 0xDA, 0xFF, 0x0C, 0x00, 0xCF, 0xFF,
+ 0xD2, 0xFF, 0x0E, 0x00, 0xC8, 0xFF, 0xC7, 0xFF,
+ 0x08, 0x00, 0x03, 0x00, 0xE1, 0xFF, 0x08, 0x00,
+ 0x0A, 0x00, 0xE1, 0xFF, 0x08, 0x00, 0x12, 0x00,
+ 0xE1, 0xFF, 0x08, 0x00, 0x19, 0x00, 0xE1, 0xFF,
+ 0x0B, 0x00, 0x22, 0x00, 0xD7, 0xFF, 0x0D, 0x00,
+ 0x29, 0x00, 0xCE, 0xFF, 0x0F, 0x00, 0x31, 0x00,
+ 0xC3, 0xFF, 0x11, 0x00, 0x38, 0x00, 0xB6, 0xFF,
+ 0x08, 0x00, 0xFD, 0xFF, 0xE1, 0xFF, 0x08, 0x00,
+ 0xF6, 0xFF, 0xE1, 0xFF, 0x08, 0x00, 0xEE, 0xFF,
+ 0xE1, 0xFF, 0x08, 0x00, 0xE7, 0xFF, 0xE1, 0xFF,
+ 0x0B, 0x00, 0xDE, 0xFF, 0xD7, 0xFF, 0x0D, 0x00,
+ 0xD7, 0xFF, 0xCE, 0xFF, 0x0F, 0x00, 0xCF, 0xFF,
+ 0xC3, 0xFF, 0x11, 0x00, 0xC8, 0xFF, 0xB6, 0xFF,
+ 0x0A, 0x00, 0x03, 0x00, 0xDA, 0xFF, 0x0A, 0x00,
+ 0x0A, 0x00, 0xDA, 0xFF, 0x0A, 0x00, 0x12, 0x00,
+ 0xDA, 0xFF, 0x0A, 0x00, 0x19, 0x00, 0xDA, 0xFF,
+ 0x0D, 0x00, 0x22, 0x00, 0xCE, 0xFF, 0x0F, 0x00,
+ 0x29, 0x00, 0xC3, 0xFF, 0x11, 0x00, 0x31, 0x00,
+ 0xB6, 0xFF, 0x13, 0x00, 0x38, 0x00, 0xA6, 0xFF,
+ 0x0A, 0x00, 0xFD, 0xFF, 0xDA, 0xFF, 0x0A, 0x00,
+ 0xF6, 0xFF, 0xDA, 0xFF, 0x0A, 0x00, 0xEE, 0xFF,
+ 0xDA, 0xFF, 0x0A, 0x00, 0xE7, 0xFF, 0xDA, 0xFF,
+ 0x0D, 0x00, 0xDE, 0xFF, 0xCE, 0xFF, 0x0F, 0x00,
+ 0xD7, 0xFF, 0xC3, 0xFF, 0x11, 0x00, 0xCF, 0xFF,
+ 0xB6, 0xFF, 0x13, 0x00, 0xC8, 0xFF, 0xA6, 0xFF,
+ 0x0C, 0x00, 0x03, 0x00, 0xD3, 0xFF, 0x0C, 0x00,
+ 0x0A, 0x00, 0xD3, 0xFF, 0x0C, 0x00, 0x12, 0x00,
+ 0xD3, 0xFF, 0x0C, 0x00, 0x19, 0x00, 0xD3, 0xFF,
+ 0x0F, 0x00, 0x22, 0x00, 0xC5, 0xFF, 0x11, 0x00,
+ 0x29, 0x00, 0xB8, 0xFF, 0x13, 0x00, 0x31, 0x00,
+ 0xA8, 0xFF, 0x15, 0x00, 0x38, 0x00, 0x95, 0xFF,
+ 0x0C, 0x00, 0xFD, 0xFF, 0xD3, 0xFF, 0x0C, 0x00,
+ 0xF6, 0xFF, 0xD3, 0xFF, 0x0C, 0x00, 0xEE, 0xFF,
+ 0xD3, 0xFF, 0x0C, 0x00, 0xE7, 0xFF, 0xD3, 0xFF,
+ 0x0F, 0x00, 0xDE, 0xFF, 0xC5, 0xFF, 0x11, 0x00,
+ 0xD7, 0xFF, 0xB8, 0xFF, 0x13, 0x00, 0xCF, 0xFF,
+ 0xA8, 0xFF, 0x15, 0x00, 0xC8, 0xFF, 0x95, 0xFF,
+ 0x0E, 0x00, 0x03, 0x00, 0xCC, 0xFF, 0x0E, 0x00,
+ 0x0A, 0x00, 0xCC, 0xFF, 0x0E, 0x00, 0x12, 0x00,
+ 0xCC, 0xFF, 0x0E, 0x00, 0x19, 0x00, 0xCC, 0xFF,
+ 0x11, 0x00, 0x22, 0x00, 0xBC, 0xFF, 0x13, 0x00,
+ 0x29, 0x00, 0xAD, 0xFF, 0x15, 0x00, 0x31, 0x00,
+ 0x9B, 0xFF, 0x17, 0x00, 0x38, 0x00, 0x85, 0xFF,
+ 0x0E, 0x00, 0xFD, 0xFF, 0xCC, 0xFF, 0x0E, 0x00,
+ 0xF6, 0xFF, 0xCC, 0xFF, 0x0E, 0x00, 0xEE, 0xFF,
+ 0xCC, 0xFF, 0x0E, 0x00, 0xE7, 0xFF, 0xCC, 0xFF,
+ 0x11, 0x00, 0xDE, 0xFF, 0xBC, 0xFF, 0x13, 0x00,
+ 0xD7, 0xFF, 0xAD, 0xFF, 0x15, 0x00, 0xCF, 0xFF,
+ 0x9B, 0xFF, 0x17, 0x00, 0xC8, 0xFF, 0x85, 0xFF,
+ 0x06, 0x00, 0x04, 0x00, 0x03, 0x00, 0x06, 0x00,
+ 0x0C, 0x00, 0x03, 0x00, 0x06, 0x00, 0x15, 0x00,
+ 0x03, 0x00, 0x06, 0x00, 0x1D, 0x00, 0x03, 0x00,
+ 0x09, 0x00, 0x26, 0x00, 0x05, 0x00, 0x0B, 0x00,
+ 0x2E, 0x00, 0x06, 0x00, 0x0D, 0x00, 0x37, 0x00,
+ 0x07, 0x00, 0x0F, 0x00, 0x3F, 0x00, 0x09, 0x00,
+ 0x06, 0x00, 0xFC, 0xFF, 0x03, 0x00, 0x06, 0x00,
+ 0xF4, 0xFF, 0x03, 0x00, 0x06, 0x00, 0xEB, 0xFF,
+ 0x03, 0x00, 0x06, 0x00, 0xE3, 0xFF, 0x03, 0x00,
+ 0x09, 0x00, 0xDA, 0xFF, 0x05, 0x00, 0x0B, 0x00,
+ 0xD2, 0xFF, 0x06, 0x00, 0x0D, 0x00, 0xC9, 0xFF,
+ 0x07, 0x00, 0x0F, 0x00, 0xC1, 0xFF, 0x09, 0x00,
+ 0x06, 0x00, 0x04, 0x00, 0x0A, 0x00, 0x06, 0x00,
+ 0x0C, 0x00, 0x0A, 0x00, 0x06, 0x00, 0x15, 0x00,
+ 0x0A, 0x00, 0x06, 0x00, 0x1D, 0x00, 0x0A, 0x00,
+ 0x09, 0x00, 0x26, 0x00, 0x0F, 0x00, 0x0B, 0x00,
+ 0x2E, 0x00, 0x12, 0x00, 0x0D, 0x00, 0x37, 0x00,
+ 0x16, 0x00, 0x0F, 0x00, 0x3F, 0x00, 0x1B, 0x00,
+ 0x06, 0x00, 0xFC, 0xFF, 0x0A, 0x00, 0x06, 0x00,
+ 0xF4, 0xFF, 0x0A, 0x00, 0x06, 0x00, 0xEB, 0xFF,
+ 0x0A, 0x00, 0x06, 0x00, 0xE3, 0xFF, 0x0A, 0x00,
+ 0x09, 0x00, 0xDA, 0xFF, 0x0F, 0x00, 0x0B, 0x00,
+ 0xD2, 0xFF, 0x12, 0x00, 0x0D, 0x00, 0xC9, 0xFF,
+ 0x16, 0x00, 0x0F, 0x00, 0xC1, 0xFF, 0x1B, 0x00,
+ 0x06, 0x00, 0x04, 0x00, 0x12, 0x00, 0x06, 0x00,
+ 0x0C, 0x00, 0x12, 0x00, 0x06, 0x00, 0x15, 0x00,
+ 0x12, 0x00, 0x06, 0x00, 0x1D, 0x00, 0x12, 0x00,
+ 0x09, 0x00, 0x26, 0x00, 0x19, 0x00, 0x0B, 0x00,
+ 0x2E, 0x00, 0x1F, 0x00, 0x0D, 0x00, 0x37, 0x00,
+ 0x25, 0x00, 0x0F, 0x00, 0x3F, 0x00, 0x2D, 0x00,
+ 0x06, 0x00, 0xFC, 0xFF, 0x12, 0x00, 0x06, 0x00,
+ 0xF4, 0xFF, 0x12, 0x00, 0x06, 0x00, 0xEB, 0xFF,
+ 0x12, 0x00, 0x06, 0x00, 0xE3, 0xFF, 0x12, 0x00,
+ 0x09, 0x00, 0xDA, 0xFF, 0x19, 0x00, 0x0B, 0x00,
+ 0xD2, 0xFF, 0x1F, 0x00, 0x0D, 0x00, 0xC9, 0xFF,
+ 0x25, 0x00, 0x0F, 0x00, 0xC1, 0xFF, 0x2D, 0x00,
+ 0x06, 0x00, 0x04, 0x00, 0x19, 0x00, 0x06, 0x00,
+ 0x0C, 0x00, 0x19, 0x00, 0x06, 0x00, 0x15, 0x00,
+ 0x19, 0x00, 0x06, 0x00, 0x1D, 0x00, 0x19, 0x00,
+ 0x09, 0x00, 0x26, 0x00, 0x23, 0x00, 0x0B, 0x00,
+ 0x2E, 0x00, 0x2B, 0x00, 0x0D, 0x00, 0x37, 0x00,
+ 0x34, 0x00, 0x0F, 0x00, 0x3F, 0x00, 0x3F, 0x00,
+ 0x06, 0x00, 0xFC, 0xFF, 0x19, 0x00, 0x06, 0x00,
+ 0xF4, 0xFF, 0x19, 0x00, 0x06, 0x00, 0xEB, 0xFF,
+ 0x19, 0x00, 0x06, 0x00, 0xE3, 0xFF, 0x19, 0x00,
+ 0x09, 0x00, 0xDA, 0xFF, 0x23, 0x00, 0x0B, 0x00,
+ 0xD2, 0xFF, 0x2B, 0x00, 0x0D, 0x00, 0xC9, 0xFF,
+ 0x34, 0x00, 0x0F, 0x00, 0xC1, 0xFF, 0x3F, 0x00,
+ 0x09, 0x00, 0x04, 0x00, 0x22, 0x00, 0x09, 0x00,
+ 0x0C, 0x00, 0x22, 0x00, 0x09, 0x00, 0x15, 0x00,
+ 0x22, 0x00, 0x09, 0x00, 0x1D, 0x00, 0x22, 0x00,
+ 0x0C, 0x00, 0x26, 0x00, 0x2E, 0x00, 0x0E, 0x00,
+ 0x2E, 0x00, 0x38, 0x00, 0x10, 0x00, 0x37, 0x00,
+ 0x43, 0x00, 0x12, 0x00, 0x3F, 0x00, 0x52, 0x00,
+ 0x09, 0x00, 0xFC, 0xFF, 0x22, 0x00, 0x09, 0x00,
+ 0xF4, 0xFF, 0x22, 0x00, 0x09, 0x00, 0xEB, 0xFF,
+ 0x22, 0x00, 0x09, 0x00, 0xE3, 0xFF, 0x22, 0x00,
+ 0x0C, 0x00, 0xDA, 0xFF, 0x2E, 0x00, 0x0E, 0x00,
+ 0xD2, 0xFF, 0x38, 0x00, 0x10, 0x00, 0xC9, 0xFF,
+ 0x43, 0x00, 0x12, 0x00, 0xC1, 0xFF, 0x52, 0x00,
+ 0x0B, 0x00, 0x04, 0x00, 0x29, 0x00, 0x0B, 0x00,
+ 0x0C, 0x00, 0x29, 0x00, 0x0B, 0x00, 0x15, 0x00,
+ 0x29, 0x00, 0x0B, 0x00, 0x1D, 0x00, 0x29, 0x00,
+ 0x0E, 0x00, 0x26, 0x00, 0x38, 0x00, 0x10, 0x00,
+ 0x2E, 0x00, 0x44, 0x00, 0x12, 0x00, 0x37, 0x00,
+ 0x52, 0x00, 0x14, 0x00, 0x3F, 0x00, 0x64, 0x00,
+ 0x0B, 0x00, 0xFC, 0xFF, 0x29, 0x00, 0x0B, 0x00,
+ 0xF4, 0xFF, 0x29, 0x00, 0x0B, 0x00, 0xEB, 0xFF,
+ 0x29, 0x00, 0x0B, 0x00, 0xE3, 0xFF, 0x29, 0x00,
+ 0x0E, 0x00, 0xDA, 0xFF, 0x38, 0x00, 0x10, 0x00,
+ 0xD2, 0xFF, 0x44, 0x00, 0x12, 0x00, 0xC9, 0xFF,
+ 0x52, 0x00, 0x14, 0x00, 0xC1, 0xFF, 0x64, 0x00,
+ 0x0D, 0x00, 0x04, 0x00, 0x31, 0x00, 0x0D, 0x00,
+ 0x0C, 0x00, 0x31, 0x00, 0x0D, 0x00, 0x15, 0x00,
+ 0x31, 0x00, 0x0D, 0x00, 0x1D, 0x00, 0x31, 0x00,
+ 0x10, 0x00, 0x26, 0x00, 0x42, 0x00, 0x12, 0x00,
+ 0x2E, 0x00, 0x51, 0x00, 0x14, 0x00, 0x37, 0x00,
+ 0x61, 0x00, 0x16, 0x00, 0x3F, 0x00, 0x76, 0x00,
+ 0x0D, 0x00, 0xFC, 0xFF, 0x31, 0x00, 0x0D, 0x00,
+ 0xF4, 0xFF, 0x31, 0x00, 0x0D, 0x00, 0xEB, 0xFF,
+ 0x31, 0x00, 0x0D, 0x00, 0xE3, 0xFF, 0x31, 0x00,
+ 0x10, 0x00, 0xDA, 0xFF, 0x42, 0x00, 0x12, 0x00,
+ 0xD2, 0xFF, 0x51, 0x00, 0x14, 0x00, 0xC9, 0xFF,
+ 0x61, 0x00, 0x16, 0x00, 0xC1, 0xFF, 0x76, 0x00,
+ 0x0F, 0x00, 0x04, 0x00, 0x38, 0x00, 0x0F, 0x00,
+ 0x0C, 0x00, 0x38, 0x00, 0x0F, 0x00, 0x15, 0x00,
+ 0x38, 0x00, 0x0F, 0x00, 0x1D, 0x00, 0x38, 0x00,
+ 0x12, 0x00, 0x26, 0x00, 0x4C, 0x00, 0x14, 0x00,
+ 0x2E, 0x00, 0x5D, 0x00, 0x16, 0x00, 0x37, 0x00,
+ 0x70, 0x00, 0x18, 0x00, 0x3F, 0x00, 0x88, 0x00,
+ 0x0F, 0x00, 0xFC, 0xFF, 0x38, 0x00, 0x0F, 0x00,
+ 0xF4, 0xFF, 0x38, 0x00, 0x0F, 0x00, 0xEB, 0xFF,
+ 0x38, 0x00, 0x0F, 0x00, 0xE3, 0xFF, 0x38, 0x00,
+ 0x12, 0x00, 0xDA, 0xFF, 0x4C, 0x00, 0x14, 0x00,
+ 0xD2, 0xFF, 0x5D, 0x00, 0x16, 0x00, 0xC9, 0xFF,
+ 0x70, 0x00, 0x18, 0x00, 0xC1, 0xFF, 0x88, 0x00,
+ 0x06, 0x00, 0x04, 0x00, 0xFD, 0xFF, 0x06, 0x00,
+ 0x0C, 0x00, 0xFD, 0xFF, 0x06, 0x00, 0x15, 0x00,
+ 0xFD, 0xFF, 0x06, 0x00, 0x1D, 0x00, 0xFD, 0xFF,
+ 0x09, 0x00, 0x26, 0x00, 0xFB, 0xFF, 0x0B, 0x00,
+ 0x2E, 0x00, 0xFA, 0xFF, 0x0D, 0x00, 0x37, 0x00,
+ 0xF9, 0xFF, 0x0F, 0x00, 0x3F, 0x00, 0xF7, 0xFF,
+ 0x06, 0x00, 0xFC, 0xFF, 0xFD, 0xFF, 0x06, 0x00,
+ 0xF4, 0xFF, 0xFD, 0xFF, 0x06, 0x00, 0xEB, 0xFF,
+ 0xFD, 0xFF, 0x06, 0x00, 0xE3, 0xFF, 0xFD, 0xFF,
+ 0x09, 0x00, 0xDA, 0xFF, 0xFB, 0xFF, 0x0B, 0x00,
+ 0xD2, 0xFF, 0xFA, 0xFF, 0x0D, 0x00, 0xC9, 0xFF,
+ 0xF9, 0xFF, 0x0F, 0x00, 0xC1, 0xFF, 0xF7, 0xFF,
+ 0x06, 0x00, 0x04, 0x00, 0xF6, 0xFF, 0x06, 0x00,
+ 0x0C, 0x00, 0xF6, 0xFF, 0x06, 0x00, 0x15, 0x00,
+ 0xF6, 0xFF, 0x06, 0x00, 0x1D, 0x00, 0xF6, 0xFF,
+ 0x09, 0x00, 0x26, 0x00, 0xF1, 0xFF, 0x0B, 0x00,
+ 0x2E, 0x00, 0xEE, 0xFF, 0x0D, 0x00, 0x37, 0x00,
+ 0xEA, 0xFF, 0x0F, 0x00, 0x3F, 0x00, 0xE5, 0xFF,
+ 0x06, 0x00, 0xFC, 0xFF, 0xF6, 0xFF, 0x06, 0x00,
+ 0xF4, 0xFF, 0xF6, 0xFF, 0x06, 0x00, 0xEB, 0xFF,
+ 0xF6, 0xFF, 0x06, 0x00, 0xE3, 0xFF, 0xF6, 0xFF,
+ 0x09, 0x00, 0xDA, 0xFF, 0xF1, 0xFF, 0x0B, 0x00,
+ 0xD2, 0xFF, 0xEE, 0xFF, 0x0D, 0x00, 0xC9, 0xFF,
+ 0xEA, 0xFF, 0x0F, 0x00, 0xC1, 0xFF, 0xE5, 0xFF,
+ 0x06, 0x00, 0x04, 0x00, 0xEE, 0xFF, 0x06, 0x00,
+ 0x0C, 0x00, 0xEE, 0xFF, 0x06, 0x00, 0x15, 0x00,
+ 0xEE, 0xFF, 0x06, 0x00, 0x1D, 0x00, 0xEE, 0xFF,
+ 0x09, 0x00, 0x26, 0x00, 0xE7, 0xFF, 0x0B, 0x00,
+ 0x2E, 0x00, 0xE1, 0xFF, 0x0D, 0x00, 0x37, 0x00,
+ 0xDB, 0xFF, 0x0F, 0x00, 0x3F, 0x00, 0xD3, 0xFF,
+ 0x06, 0x00, 0xFC, 0xFF, 0xEE, 0xFF, 0x06, 0x00,
+ 0xF4, 0xFF, 0xEE, 0xFF, 0x06, 0x00, 0xEB, 0xFF,
+ 0xEE, 0xFF, 0x06, 0x00, 0xE3, 0xFF, 0xEE, 0xFF,
+ 0x09, 0x00, 0xDA, 0xFF, 0xE7, 0xFF, 0x0B, 0x00,
+ 0xD2, 0xFF, 0xE1, 0xFF, 0x0D, 0x00, 0xC9, 0xFF,
+ 0xDB, 0xFF, 0x0F, 0x00, 0xC1, 0xFF, 0xD3, 0xFF,
+ 0x06, 0x00, 0x04, 0x00, 0xE7, 0xFF, 0x06, 0x00,
+ 0x0C, 0x00, 0xE7, 0xFF, 0x06, 0x00, 0x15, 0x00,
+ 0xE7, 0xFF, 0x06, 0x00, 0x1D, 0x00, 0xE7, 0xFF,
+ 0x09, 0x00, 0x26, 0x00, 0xDD, 0xFF, 0x0B, 0x00,
+ 0x2E, 0x00, 0xD5, 0xFF, 0x0D, 0x00, 0x37, 0x00,
+ 0xCC, 0xFF, 0x0F, 0x00, 0x3F, 0x00, 0xC1, 0xFF,
+ 0x06, 0x00, 0xFC, 0xFF, 0xE7, 0xFF, 0x06, 0x00,
+ 0xF4, 0xFF, 0xE7, 0xFF, 0x06, 0x00, 0xEB, 0xFF,
+ 0xE7, 0xFF, 0x06, 0x00, 0xE3, 0xFF, 0xE7, 0xFF,
+ 0x09, 0x00, 0xDA, 0xFF, 0xDD, 0xFF, 0x0B, 0x00,
+ 0xD2, 0xFF, 0xD5, 0xFF, 0x0D, 0x00, 0xC9, 0xFF,
+ 0xCC, 0xFF, 0x0F, 0x00, 0xC1, 0xFF, 0xC1, 0xFF,
+ 0x09, 0x00, 0x04, 0x00, 0xDE, 0xFF, 0x09, 0x00,
+ 0x0C, 0x00, 0xDE, 0xFF, 0x09, 0x00, 0x15, 0x00,
+ 0xDE, 0xFF, 0x09, 0x00, 0x1D, 0x00, 0xDE, 0xFF,
+ 0x0C, 0x00, 0x26, 0x00, 0xD2, 0xFF, 0x0E, 0x00,
+ 0x2E, 0x00, 0xC8, 0xFF, 0x10, 0x00, 0x37, 0x00,
+ 0xBD, 0xFF, 0x12, 0x00, 0x3F, 0x00, 0xAE, 0xFF,
+ 0x09, 0x00, 0xFC, 0xFF, 0xDE, 0xFF, 0x09, 0x00,
+ 0xF4, 0xFF, 0xDE, 0xFF, 0x09, 0x00, 0xEB, 0xFF,
+ 0xDE, 0xFF, 0x09, 0x00, 0xE3, 0xFF, 0xDE, 0xFF,
+ 0x0C, 0x00, 0xDA, 0xFF, 0xD2, 0xFF, 0x0E, 0x00,
+ 0xD2, 0xFF, 0xC8, 0xFF, 0x10, 0x00, 0xC9, 0xFF,
+ 0xBD, 0xFF, 0x12, 0x00, 0xC1, 0xFF, 0xAE, 0xFF,
+ 0x0B, 0x00, 0x04, 0x00, 0xD7, 0xFF, 0x0B, 0x00,
+ 0x0C, 0x00, 0xD7, 0xFF, 0x0B, 0x00, 0x15, 0x00,
+ 0xD7, 0xFF, 0x0B, 0x00, 0x1D, 0x00, 0xD7, 0xFF,
+ 0x0E, 0x00, 0x26, 0x00, 0xC8, 0xFF, 0x10, 0x00,
+ 0x2E, 0x00, 0xBC, 0xFF, 0x12, 0x00, 0x37, 0x00,
+ 0xAE, 0xFF, 0x14, 0x00, 0x3F, 0x00, 0x9C, 0xFF,
+ 0x0B, 0x00, 0xFC, 0xFF, 0xD7, 0xFF, 0x0B, 0x00,
+ 0xF4, 0xFF, 0xD7, 0xFF, 0x0B, 0x00, 0xEB, 0xFF,
+ 0xD7, 0xFF, 0x0B, 0x00, 0xE3, 0xFF, 0xD7, 0xFF,
+ 0x0E, 0x00, 0xDA, 0xFF, 0xC8, 0xFF, 0x10, 0x00,
+ 0xD2, 0xFF, 0xBC, 0xFF, 0x12, 0x00, 0xC9, 0xFF,
+ 0xAE, 0xFF, 0x14, 0x00, 0xC1, 0xFF, 0x9C, 0xFF,
+ 0x0D, 0x00, 0x04, 0x00, 0xCF, 0xFF, 0x0D, 0x00,
+ 0x0C, 0x00, 0xCF, 0xFF, 0x0D, 0x00, 0x15, 0x00,
+ 0xCF, 0xFF, 0x0D, 0x00, 0x1D, 0x00, 0xCF, 0xFF,
+ 0x10, 0x00, 0x26, 0x00, 0xBE, 0xFF, 0x12, 0x00,
+ 0x2E, 0x00, 0xAF, 0xFF, 0x14, 0x00, 0x37, 0x00,
+ 0x9F, 0xFF, 0x16, 0x00, 0x3F, 0x00, 0x8A, 0xFF,
+ 0x0D, 0x00, 0xFC, 0xFF, 0xCF, 0xFF, 0x0D, 0x00,
+ 0xF4, 0xFF, 0xCF, 0xFF, 0x0D, 0x00, 0xEB, 0xFF,
+ 0xCF, 0xFF, 0x0D, 0x00, 0xE3, 0xFF, 0xCF, 0xFF,
+ 0x10, 0x00, 0xDA, 0xFF, 0xBE, 0xFF, 0x12, 0x00,
+ 0xD2, 0xFF, 0xAF, 0xFF, 0x14, 0x00, 0xC9, 0xFF,
+ 0x9F, 0xFF, 0x16, 0x00, 0xC1, 0xFF, 0x8A, 0xFF,
+ 0x0F, 0x00, 0x04, 0x00, 0xC8, 0xFF, 0x0F, 0x00,
+ 0x0C, 0x00, 0xC8, 0xFF, 0x0F, 0x00, 0x15, 0x00,
+ 0xC8, 0xFF, 0x0F, 0x00, 0x1D, 0x00, 0xC8, 0xFF,
+ 0x12, 0x00, 0x26, 0x00, 0xB4, 0xFF, 0x14, 0x00,
+ 0x2E, 0x00, 0xA3, 0xFF, 0x16, 0x00, 0x37, 0x00,
+ 0x90, 0xFF, 0x18, 0x00, 0x3F, 0x00, 0x78, 0xFF,
+ 0x0F, 0x00, 0xFC, 0xFF, 0xC8, 0xFF, 0x0F, 0x00,
+ 0xF4, 0xFF, 0xC8, 0xFF, 0x0F, 0x00, 0xEB, 0xFF,
+ 0xC8, 0xFF, 0x0F, 0x00, 0xE3, 0xFF, 0xC8, 0xFF,
+ 0x12, 0x00, 0xDA, 0xFF, 0xB4, 0xFF, 0x14, 0x00,
+ 0xD2, 0xFF, 0xA3, 0xFF, 0x16, 0x00, 0xC9, 0xFF,
+ 0x90, 0xFF, 0x18, 0x00, 0xC1, 0xFF, 0x78, 0xFF,
+ 0x07, 0x00, 0x04, 0x00, 0x04, 0x00, 0x07, 0x00,
+ 0x0D, 0x00, 0x04, 0x00, 0x07, 0x00, 0x16, 0x00,
+ 0x04, 0x00, 0x07, 0x00, 0x1F, 0x00, 0x04, 0x00,
+ 0x0A, 0x00, 0x29, 0x00, 0x05, 0x00, 0x0C, 0x00,
+ 0x32, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x3B, 0x00,
+ 0x08, 0x00, 0x10, 0x00, 0x44, 0x00, 0x0A, 0x00,
+ 0x07, 0x00, 0xFC, 0xFF, 0x04, 0x00, 0x07, 0x00,
+ 0xF3, 0xFF, 0x04, 0x00, 0x07, 0x00, 0xEA, 0xFF,
+ 0x04, 0x00, 0x07, 0x00, 0xE1, 0xFF, 0x04, 0x00,
+ 0x0A, 0x00, 0xD7, 0xFF, 0x05, 0x00, 0x0C, 0x00,
+ 0xCE, 0xFF, 0x06, 0x00, 0x0E, 0x00, 0xC5, 0xFF,
+ 0x08, 0x00, 0x10, 0x00, 0xBC, 0xFF, 0x0A, 0x00,
+ 0x07, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x07, 0x00,
+ 0x0D, 0x00, 0x0C, 0x00, 0x07, 0x00, 0x16, 0x00,
+ 0x0C, 0x00, 0x07, 0x00, 0x1F, 0x00, 0x0C, 0x00,
+ 0x0A, 0x00, 0x29, 0x00, 0x10, 0x00, 0x0C, 0x00,
+ 0x32, 0x00, 0x13, 0x00, 0x0E, 0x00, 0x3B, 0x00,
+ 0x18, 0x00, 0x10, 0x00, 0x44, 0x00, 0x1E, 0x00,
+ 0x07, 0x00, 0xFC, 0xFF, 0x0C, 0x00, 0x07, 0x00,
+ 0xF3, 0xFF, 0x0C, 0x00, 0x07, 0x00, 0xEA, 0xFF,
+ 0x0C, 0x00, 0x07, 0x00, 0xE1, 0xFF, 0x0C, 0x00,
+ 0x0A, 0x00, 0xD7, 0xFF, 0x10, 0x00, 0x0C, 0x00,
+ 0xCE, 0xFF, 0x13, 0x00, 0x0E, 0x00, 0xC5, 0xFF,
+ 0x18, 0x00, 0x10, 0x00, 0xBC, 0xFF, 0x1E, 0x00,
+ 0x07, 0x00, 0x04, 0x00, 0x15, 0x00, 0x07, 0x00,
+ 0x0D, 0x00, 0x15, 0x00, 0x07, 0x00, 0x16, 0x00,
+ 0x15, 0x00, 0x07, 0x00, 0x1F, 0x00, 0x15, 0x00,
+ 0x0A, 0x00, 0x29, 0x00, 0x1B, 0x00, 0x0C, 0x00,
+ 0x32, 0x00, 0x21, 0x00, 0x0E, 0x00, 0x3B, 0x00,
+ 0x29, 0x00, 0x10, 0x00, 0x44, 0x00, 0x32, 0x00,
+ 0x07, 0x00, 0xFC, 0xFF, 0x15, 0x00, 0x07, 0x00,
+ 0xF3, 0xFF, 0x15, 0x00, 0x07, 0x00, 0xEA, 0xFF,
+ 0x15, 0x00, 0x07, 0x00, 0xE1, 0xFF, 0x15, 0x00,
+ 0x0A, 0x00, 0xD7, 0xFF, 0x1B, 0x00, 0x0C, 0x00,
+ 0xCE, 0xFF, 0x21, 0x00, 0x0E, 0x00, 0xC5, 0xFF,
+ 0x29, 0x00, 0x10, 0x00, 0xBC, 0xFF, 0x32, 0x00,
+ 0x07, 0x00, 0x04, 0x00, 0x1D, 0x00, 0x07, 0x00,
+ 0x0D, 0x00, 0x1D, 0x00, 0x07, 0x00, 0x16, 0x00,
+ 0x1D, 0x00, 0x07, 0x00, 0x1F, 0x00, 0x1D, 0x00,
+ 0x0A, 0x00, 0x29, 0x00, 0x26, 0x00, 0x0C, 0x00,
+ 0x32, 0x00, 0x2E, 0x00, 0x0E, 0x00, 0x3B, 0x00,
+ 0x39, 0x00, 0x10, 0x00, 0x44, 0x00, 0x46, 0x00,
+ 0x07, 0x00, 0xFC, 0xFF, 0x1D, 0x00, 0x07, 0x00,
+ 0xF3, 0xFF, 0x1D, 0x00, 0x07, 0x00, 0xEA, 0xFF,
+ 0x1D, 0x00, 0x07, 0x00, 0xE1, 0xFF, 0x1D, 0x00,
+ 0x0A, 0x00, 0xD7, 0xFF, 0x26, 0x00, 0x0C, 0x00,
+ 0xCE, 0xFF, 0x2E, 0x00, 0x0E, 0x00, 0xC5, 0xFF,
+ 0x39, 0x00, 0x10, 0x00, 0xBC, 0xFF, 0x46, 0x00,
+ 0x0A, 0x00, 0x04, 0x00, 0x26, 0x00, 0x0A, 0x00,
+ 0x0D, 0x00, 0x26, 0x00, 0x0A, 0x00, 0x16, 0x00,
+ 0x26, 0x00, 0x0A, 0x00, 0x1F, 0x00, 0x26, 0x00,
+ 0x0D, 0x00, 0x29, 0x00, 0x32, 0x00, 0x0F, 0x00,
+ 0x32, 0x00, 0x3D, 0x00, 0x11, 0x00, 0x3B, 0x00,
+ 0x4A, 0x00, 0x13, 0x00, 0x44, 0x00, 0x5A, 0x00,
+ 0x0A, 0x00, 0xFC, 0xFF, 0x26, 0x00, 0x0A, 0x00,
+ 0xF3, 0xFF, 0x26, 0x00, 0x0A, 0x00, 0xEA, 0xFF,
+ 0x26, 0x00, 0x0A, 0x00, 0xE1, 0xFF, 0x26, 0x00,
+ 0x0D, 0x00, 0xD7, 0xFF, 0x32, 0x00, 0x0F, 0x00,
+ 0xCE, 0xFF, 0x3D, 0x00, 0x11, 0x00, 0xC5, 0xFF,
+ 0x4A, 0x00, 0x13, 0x00, 0xBC, 0xFF, 0x5A, 0x00,
+ 0x0C, 0x00, 0x04, 0x00, 0x2E, 0x00, 0x0C, 0x00,
+ 0x0D, 0x00, 0x2E, 0x00, 0x0C, 0x00, 0x16, 0x00,
+ 0x2E, 0x00, 0x0C, 0x00, 0x1F, 0x00, 0x2E, 0x00,
+ 0x0F, 0x00, 0x29, 0x00, 0x3D, 0x00, 0x11, 0x00,
+ 0x32, 0x00, 0x4A, 0x00, 0x13, 0x00, 0x3B, 0x00,
+ 0x5A, 0x00, 0x15, 0x00, 0x44, 0x00, 0x6E, 0x00,
+ 0x0C, 0x00, 0xFC, 0xFF, 0x2E, 0x00, 0x0C, 0x00,
+ 0xF3, 0xFF, 0x2E, 0x00, 0x0C, 0x00, 0xEA, 0xFF,
+ 0x2E, 0x00, 0x0C, 0x00, 0xE1, 0xFF, 0x2E, 0x00,
+ 0x0F, 0x00, 0xD7, 0xFF, 0x3D, 0x00, 0x11, 0x00,
+ 0xCE, 0xFF, 0x4A, 0x00, 0x13, 0x00, 0xC5, 0xFF,
+ 0x5A, 0x00, 0x15, 0x00, 0xBC, 0xFF, 0x6E, 0x00,
+ 0x0E, 0x00, 0x04, 0x00, 0x37, 0x00, 0x0E, 0x00,
+ 0x0D, 0x00, 0x37, 0x00, 0x0E, 0x00, 0x16, 0x00,
+ 0x37, 0x00, 0x0E, 0x00, 0x1F, 0x00, 0x37, 0x00,
+ 0x11, 0x00, 0x29, 0x00, 0x48, 0x00, 0x13, 0x00,
+ 0x32, 0x00, 0x58, 0x00, 0x15, 0x00, 0x3B, 0x00,
+ 0x6B, 0x00, 0x17, 0x00, 0x44, 0x00, 0x82, 0x00,
+ 0x0E, 0x00, 0xFC, 0xFF, 0x37, 0x00, 0x0E, 0x00,
+ 0xF3, 0xFF, 0x37, 0x00, 0x0E, 0x00, 0xEA, 0xFF,
+ 0x37, 0x00, 0x0E, 0x00, 0xE1, 0xFF, 0x37, 0x00,
+ 0x11, 0x00, 0xD7, 0xFF, 0x48, 0x00, 0x13, 0x00,
+ 0xCE, 0xFF, 0x58, 0x00, 0x15, 0x00, 0xC5, 0xFF,
+ 0x6B, 0x00, 0x17, 0x00, 0xBC, 0xFF, 0x82, 0x00,
+ 0x10, 0x00, 0x04, 0x00, 0x3F, 0x00, 0x10, 0x00,
+ 0x0D, 0x00, 0x3F, 0x00, 0x10, 0x00, 0x16, 0x00,
+ 0x3F, 0x00, 0x10, 0x00, 0x1F, 0x00, 0x3F, 0x00,
+ 0x13, 0x00, 0x29, 0x00, 0x53, 0x00, 0x15, 0x00,
+ 0x32, 0x00, 0x65, 0x00, 0x17, 0x00, 0x3B, 0x00,
+ 0x7B, 0x00, 0x19, 0x00, 0x44, 0x00, 0x96, 0x00,
+ 0x10, 0x00, 0xFC, 0xFF, 0x3F, 0x00, 0x10, 0x00,
+ 0xF3, 0xFF, 0x3F, 0x00, 0x10, 0x00, 0xEA, 0xFF,
+ 0x3F, 0x00, 0x10, 0x00, 0xE1, 0xFF, 0x3F, 0x00,
+ 0x13, 0x00, 0xD7, 0xFF, 0x53, 0x00, 0x15, 0x00,
+ 0xCE, 0xFF, 0x65, 0x00, 0x17, 0x00, 0xC5, 0xFF,
+ 0x7B, 0x00, 0x19, 0x00, 0xBC, 0xFF, 0x96, 0x00,
+ 0x07, 0x00, 0x04, 0x00, 0xFC, 0xFF, 0x07, 0x00,
+ 0x0D, 0x00, 0xFC, 0xFF, 0x07, 0x00, 0x16, 0x00,
+ 0xFC, 0xFF, 0x07, 0x00, 0x1F, 0x00, 0xFC, 0xFF,
+ 0x0A, 0x00, 0x29, 0x00, 0xFB, 0xFF, 0x0C, 0x00,
+ 0x32, 0x00, 0xFA, 0xFF, 0x0E, 0x00, 0x3B, 0x00,
+ 0xF8, 0xFF, 0x10, 0x00, 0x44, 0x00, 0xF6, 0xFF,
+ 0x07, 0x00, 0xFC, 0xFF, 0xFC, 0xFF, 0x07, 0x00,
+ 0xF3, 0xFF, 0xFC, 0xFF, 0x07, 0x00, 0xEA, 0xFF,
+ 0xFC, 0xFF, 0x07, 0x00, 0xE1, 0xFF, 0xFC, 0xFF,
+ 0x0A, 0x00, 0xD7, 0xFF, 0xFB, 0xFF, 0x0C, 0x00,
+ 0xCE, 0xFF, 0xFA, 0xFF, 0x0E, 0x00, 0xC5, 0xFF,
+ 0xF8, 0xFF, 0x10, 0x00, 0xBC, 0xFF, 0xF6, 0xFF,
+ 0x07, 0x00, 0x04, 0x00, 0xF4, 0xFF, 0x07, 0x00,
+ 0x0D, 0x00, 0xF4, 0xFF, 0x07, 0x00, 0x16, 0x00,
+ 0xF4, 0xFF, 0x07, 0x00, 0x1F, 0x00, 0xF4, 0xFF,
+ 0x0A, 0x00, 0x29, 0x00, 0xF0, 0xFF, 0x0C, 0x00,
+ 0x32, 0x00, 0xED, 0xFF, 0x0E, 0x00, 0x3B, 0x00,
+ 0xE8, 0xFF, 0x10, 0x00, 0x44, 0x00, 0xE2, 0xFF,
+ 0x07, 0x00, 0xFC, 0xFF, 0xF4, 0xFF, 0x07, 0x00,
+ 0xF3, 0xFF, 0xF4, 0xFF, 0x07, 0x00, 0xEA, 0xFF,
+ 0xF4, 0xFF, 0x07, 0x00, 0xE1, 0xFF, 0xF4, 0xFF,
+ 0x0A, 0x00, 0xD7, 0xFF, 0xF0, 0xFF, 0x0C, 0x00,
+ 0xCE, 0xFF, 0xED, 0xFF, 0x0E, 0x00, 0xC5, 0xFF,
+ 0xE8, 0xFF, 0x10, 0x00, 0xBC, 0xFF, 0xE2, 0xFF,
+ 0x07, 0x00, 0x04, 0x00, 0xEB, 0xFF, 0x07, 0x00,
+ 0x0D, 0x00, 0xEB, 0xFF, 0x07, 0x00, 0x16, 0x00,
+ 0xEB, 0xFF, 0x07, 0x00, 0x1F, 0x00, 0xEB, 0xFF,
+ 0x0A, 0x00, 0x29, 0x00, 0xE5, 0xFF, 0x0C, 0x00,
+ 0x32, 0x00, 0xDF, 0xFF, 0x0E, 0x00, 0x3B, 0x00,
+ 0xD7, 0xFF, 0x10, 0x00, 0x44, 0x00, 0xCE, 0xFF,
+ 0x07, 0x00, 0xFC, 0xFF, 0xEB, 0xFF, 0x07, 0x00,
+ 0xF3, 0xFF, 0xEB, 0xFF, 0x07, 0x00, 0xEA, 0xFF,
+ 0xEB, 0xFF, 0x07, 0x00, 0xE1, 0xFF, 0xEB, 0xFF,
+ 0x0A, 0x00, 0xD7, 0xFF, 0xE5, 0xFF, 0x0C, 0x00,
+ 0xCE, 0xFF, 0xDF, 0xFF, 0x0E, 0x00, 0xC5, 0xFF,
+ 0xD7, 0xFF, 0x10, 0x00, 0xBC, 0xFF, 0xCE, 0xFF,
+ 0x07, 0x00, 0x04, 0x00, 0xE3, 0xFF, 0x07, 0x00,
+ 0x0D, 0x00, 0xE3, 0xFF, 0x07, 0x00, 0x16, 0x00,
+ 0xE3, 0xFF, 0x07, 0x00, 0x1F, 0x00, 0xE3, 0xFF,
+ 0x0A, 0x00, 0x29, 0x00, 0xDA, 0xFF, 0x0C, 0x00,
+ 0x32, 0x00, 0xD2, 0xFF, 0x0E, 0x00, 0x3B, 0x00,
+ 0xC7, 0xFF, 0x10, 0x00, 0x44, 0x00, 0xBA, 0xFF,
+ 0x07, 0x00, 0xFC, 0xFF, 0xE3, 0xFF, 0x07, 0x00,
+ 0xF3, 0xFF, 0xE3, 0xFF, 0x07, 0x00, 0xEA, 0xFF,
+ 0xE3, 0xFF, 0x07, 0x00, 0xE1, 0xFF, 0xE3, 0xFF,
+ 0x0A, 0x00, 0xD7, 0xFF, 0xDA, 0xFF, 0x0C, 0x00,
+ 0xCE, 0xFF, 0xD2, 0xFF, 0x0E, 0x00, 0xC5, 0xFF,
+ 0xC7, 0xFF, 0x10, 0x00, 0xBC, 0xFF, 0xBA, 0xFF,
+ 0x0A, 0x00, 0x04, 0x00, 0xDA, 0xFF, 0x0A, 0x00,
+ 0x0D, 0x00, 0xDA, 0xFF, 0x0A, 0x00, 0x16, 0x00,
+ 0xDA, 0xFF, 0x0A, 0x00, 0x1F, 0x00, 0xDA, 0xFF,
+ 0x0D, 0x00, 0x29, 0x00, 0xCE, 0xFF, 0x0F, 0x00,
+ 0x32, 0x00, 0xC3, 0xFF, 0x11, 0x00, 0x3B, 0x00,
+ 0xB6, 0xFF, 0x13, 0x00, 0x44, 0x00, 0xA6, 0xFF,
+ 0x0A, 0x00, 0xFC, 0xFF, 0xDA, 0xFF, 0x0A, 0x00,
+ 0xF3, 0xFF, 0xDA, 0xFF, 0x0A, 0x00, 0xEA, 0xFF,
+ 0xDA, 0xFF, 0x0A, 0x00, 0xE1, 0xFF, 0xDA, 0xFF,
+ 0x0D, 0x00, 0xD7, 0xFF, 0xCE, 0xFF, 0x0F, 0x00,
+ 0xCE, 0xFF, 0xC3, 0xFF, 0x11, 0x00, 0xC5, 0xFF,
+ 0xB6, 0xFF, 0x13, 0x00, 0xBC, 0xFF, 0xA6, 0xFF,
+ 0x0C, 0x00, 0x04, 0x00, 0xD2, 0xFF, 0x0C, 0x00,
+ 0x0D, 0x00, 0xD2, 0xFF, 0x0C, 0x00, 0x16, 0x00,
+ 0xD2, 0xFF, 0x0C, 0x00, 0x1F, 0x00, 0xD2, 0xFF,
+ 0x0F, 0x00, 0x29, 0x00, 0xC3, 0xFF, 0x11, 0x00,
+ 0x32, 0x00, 0xB6, 0xFF, 0x13, 0x00, 0x3B, 0x00,
+ 0xA6, 0xFF, 0x15, 0x00, 0x44, 0x00, 0x92, 0xFF,
+ 0x0C, 0x00, 0xFC, 0xFF, 0xD2, 0xFF, 0x0C, 0x00,
+ 0xF3, 0xFF, 0xD2, 0xFF, 0x0C, 0x00, 0xEA, 0xFF,
+ 0xD2, 0xFF, 0x0C, 0x00, 0xE1, 0xFF, 0xD2, 0xFF,
+ 0x0F, 0x00, 0xD7, 0xFF, 0xC3, 0xFF, 0x11, 0x00,
+ 0xCE, 0xFF, 0xB6, 0xFF, 0x13, 0x00, 0xC5, 0xFF,
+ 0xA6, 0xFF, 0x15, 0x00, 0xBC, 0xFF, 0x92, 0xFF,
+ 0x0E, 0x00, 0x04, 0x00, 0xC9, 0xFF, 0x0E, 0x00,
+ 0x0D, 0x00, 0xC9, 0xFF, 0x0E, 0x00, 0x16, 0x00,
+ 0xC9, 0xFF, 0x0E, 0x00, 0x1F, 0x00, 0xC9, 0xFF,
+ 0x11, 0x00, 0x29, 0x00, 0xB8, 0xFF, 0x13, 0x00,
+ 0x32, 0x00, 0xA8, 0xFF, 0x15, 0x00, 0x3B, 0x00,
+ 0x95, 0xFF, 0x17, 0x00, 0x44, 0x00, 0x7E, 0xFF,
+ 0x0E, 0x00, 0xFC, 0xFF, 0xC9, 0xFF, 0x0E, 0x00,
+ 0xF3, 0xFF, 0xC9, 0xFF, 0x0E, 0x00, 0xEA, 0xFF,
+ 0xC9, 0xFF, 0x0E, 0x00, 0xE1, 0xFF, 0xC9, 0xFF,
+ 0x11, 0x00, 0xD7, 0xFF, 0xB8, 0xFF, 0x13, 0x00,
+ 0xCE, 0xFF, 0xA8, 0xFF, 0x15, 0x00, 0xC5, 0xFF,
+ 0x95, 0xFF, 0x17, 0x00, 0xBC, 0xFF, 0x7E, 0xFF,
+ 0x10, 0x00, 0x04, 0x00, 0xC1, 0xFF, 0x10, 0x00,
+ 0x0D, 0x00, 0xC1, 0xFF, 0x10, 0x00, 0x16, 0x00,
+ 0xC1, 0xFF, 0x10, 0x00, 0x1F, 0x00, 0xC1, 0xFF,
+ 0x13, 0x00, 0x29, 0x00, 0xAD, 0xFF, 0x15, 0x00,
+ 0x32, 0x00, 0x9B, 0xFF, 0x17, 0x00, 0x3B, 0x00,
+ 0x85, 0xFF, 0x19, 0x00, 0x44, 0x00, 0x6A, 0xFF,
+ 0x10, 0x00, 0xFC, 0xFF, 0xC1, 0xFF, 0x10, 0x00,
+ 0xF3, 0xFF, 0xC1, 0xFF, 0x10, 0x00, 0xEA, 0xFF,
+ 0xC1, 0xFF, 0x10, 0x00, 0xE1, 0xFF, 0xC1, 0xFF,
+ 0x13, 0x00, 0xD7, 0xFF, 0xAD, 0xFF, 0x15, 0x00,
+ 0xCE, 0xFF, 0x9B, 0xFF, 0x17, 0x00, 0xC5, 0xFF,
+ 0x85, 0xFF, 0x19, 0x00, 0xBC, 0xFF, 0x6A, 0xFF,
+ 0x08, 0x00, 0x05, 0x00, 0x04, 0x00, 0x08, 0x00,
+ 0x0F, 0x00, 0x04, 0x00, 0x08, 0x00, 0x19, 0x00,
+ 0x04, 0x00, 0x08, 0x00, 0x23, 0x00, 0x04, 0x00,
+ 0x0B, 0x00, 0x2E, 0x00, 0x06, 0x00, 0x0D, 0x00,
+ 0x38, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x42, 0x00,
+ 0x09, 0x00, 0x11, 0x00, 0x4C, 0x00, 0x0B, 0x00,
+ 0x08, 0x00, 0xFB, 0xFF, 0x04, 0x00, 0x08, 0x00,
+ 0xF1, 0xFF, 0x04, 0x00, 0x08, 0x00, 0xE7, 0xFF,
+ 0x04, 0x00, 0x08, 0x00, 0xDD, 0xFF, 0x04, 0x00,
+ 0x0B, 0x00, 0xD2, 0xFF, 0x06, 0x00, 0x0D, 0x00,
+ 0xC8, 0xFF, 0x07, 0x00, 0x0F, 0x00, 0xBE, 0xFF,
+ 0x09, 0x00, 0x11, 0x00, 0xB4, 0xFF, 0x0B, 0x00,
+ 0x08, 0x00, 0x05, 0x00, 0x0D, 0x00, 0x08, 0x00,
+ 0x0F, 0x00, 0x0D, 0x00, 0x08, 0x00, 0x19, 0x00,
+ 0x0D, 0x00, 0x08, 0x00, 0x23, 0x00, 0x0D, 0x00,
+ 0x0B, 0x00, 0x2E, 0x00, 0x12, 0x00, 0x0D, 0x00,
+ 0x38, 0x00, 0x16, 0x00, 0x0F, 0x00, 0x42, 0x00,
+ 0x1B, 0x00, 0x11, 0x00, 0x4C, 0x00, 0x21, 0x00,
+ 0x08, 0x00, 0xFB, 0xFF, 0x0D, 0x00, 0x08, 0x00,
+ 0xF1, 0xFF, 0x0D, 0x00, 0x08, 0x00, 0xE7, 0xFF,
+ 0x0D, 0x00, 0x08, 0x00, 0xDD, 0xFF, 0x0D, 0x00,
+ 0x0B, 0x00, 0xD2, 0xFF, 0x12, 0x00, 0x0D, 0x00,
+ 0xC8, 0xFF, 0x16, 0x00, 0x0F, 0x00, 0xBE, 0xFF,
+ 0x1B, 0x00, 0x11, 0x00, 0xB4, 0xFF, 0x21, 0x00,
+ 0x08, 0x00, 0x05, 0x00, 0x16, 0x00, 0x08, 0x00,
+ 0x0F, 0x00, 0x16, 0x00, 0x08, 0x00, 0x19, 0x00,
+ 0x16, 0x00, 0x08, 0x00, 0x23, 0x00, 0x16, 0x00,
+ 0x0B, 0x00, 0x2E, 0x00, 0x1F, 0x00, 0x0D, 0x00,
+ 0x38, 0x00, 0x25, 0x00, 0x0F, 0x00, 0x42, 0x00,
+ 0x2D, 0x00, 0x11, 0x00, 0x4C, 0x00, 0x37, 0x00,
+ 0x08, 0x00, 0xFB, 0xFF, 0x16, 0x00, 0x08, 0x00,
+ 0xF1, 0xFF, 0x16, 0x00, 0x08, 0x00, 0xE7, 0xFF,
+ 0x16, 0x00, 0x08, 0x00, 0xDD, 0xFF, 0x16, 0x00,
+ 0x0B, 0x00, 0xD2, 0xFF, 0x1F, 0x00, 0x0D, 0x00,
+ 0xC8, 0xFF, 0x25, 0x00, 0x0F, 0x00, 0xBE, 0xFF,
+ 0x2D, 0x00, 0x11, 0x00, 0xB4, 0xFF, 0x37, 0x00,
+ 0x08, 0x00, 0x05, 0x00, 0x1F, 0x00, 0x08, 0x00,
+ 0x0F, 0x00, 0x1F, 0x00, 0x08, 0x00, 0x19, 0x00,
+ 0x1F, 0x00, 0x08, 0x00, 0x23, 0x00, 0x1F, 0x00,
+ 0x0B, 0x00, 0x2E, 0x00, 0x2B, 0x00, 0x0D, 0x00,
+ 0x38, 0x00, 0x34, 0x00, 0x0F, 0x00, 0x42, 0x00,
+ 0x3F, 0x00, 0x11, 0x00, 0x4C, 0x00, 0x4D, 0x00,
+ 0x08, 0x00, 0xFB, 0xFF, 0x1F, 0x00, 0x08, 0x00,
+ 0xF1, 0xFF, 0x1F, 0x00, 0x08, 0x00, 0xE7, 0xFF,
+ 0x1F, 0x00, 0x08, 0x00, 0xDD, 0xFF, 0x1F, 0x00,
+ 0x0B, 0x00, 0xD2, 0xFF, 0x2B, 0x00, 0x0D, 0x00,
+ 0xC8, 0xFF, 0x34, 0x00, 0x0F, 0x00, 0xBE, 0xFF,
+ 0x3F, 0x00, 0x11, 0x00, 0xB4, 0xFF, 0x4D, 0x00,
+ 0x0B, 0x00, 0x05, 0x00, 0x29, 0x00, 0x0B, 0x00,
+ 0x0F, 0x00, 0x29, 0x00, 0x0B, 0x00, 0x19, 0x00,
+ 0x29, 0x00, 0x0B, 0x00, 0x23, 0x00, 0x29, 0x00,
+ 0x0E, 0x00, 0x2E, 0x00, 0x38, 0x00, 0x10, 0x00,
+ 0x38, 0x00, 0x43, 0x00, 0x12, 0x00, 0x42, 0x00,
+ 0x52, 0x00, 0x14, 0x00, 0x4C, 0x00, 0x63, 0x00,
+ 0x0B, 0x00, 0xFB, 0xFF, 0x29, 0x00, 0x0B, 0x00,
+ 0xF1, 0xFF, 0x29, 0x00, 0x0B, 0x00, 0xE7, 0xFF,
+ 0x29, 0x00, 0x0B, 0x00, 0xDD, 0xFF, 0x29, 0x00,
+ 0x0E, 0x00, 0xD2, 0xFF, 0x38, 0x00, 0x10, 0x00,
+ 0xC8, 0xFF, 0x43, 0x00, 0x12, 0x00, 0xBE, 0xFF,
+ 0x52, 0x00, 0x14, 0x00, 0xB4, 0xFF, 0x63, 0x00,
+ 0x0D, 0x00, 0x05, 0x00, 0x32, 0x00, 0x0D, 0x00,
+ 0x0F, 0x00, 0x32, 0x00, 0x0D, 0x00, 0x19, 0x00,
+ 0x32, 0x00, 0x0D, 0x00, 0x23, 0x00, 0x32, 0x00,
+ 0x10, 0x00, 0x2E, 0x00, 0x44, 0x00, 0x12, 0x00,
+ 0x38, 0x00, 0x52, 0x00, 0x14, 0x00, 0x42, 0x00,
+ 0x64, 0x00, 0x16, 0x00, 0x4C, 0x00, 0x79, 0x00,
+ 0x0D, 0x00, 0xFB, 0xFF, 0x32, 0x00, 0x0D, 0x00,
+ 0xF1, 0xFF, 0x32, 0x00, 0x0D, 0x00, 0xE7, 0xFF,
+ 0x32, 0x00, 0x0D, 0x00, 0xDD, 0xFF, 0x32, 0x00,
+ 0x10, 0x00, 0xD2, 0xFF, 0x44, 0x00, 0x12, 0x00,
+ 0xC8, 0xFF, 0x52, 0x00, 0x14, 0x00, 0xBE, 0xFF,
+ 0x64, 0x00, 0x16, 0x00, 0xB4, 0xFF, 0x79, 0x00,
+ 0x0F, 0x00, 0x05, 0x00, 0x3B, 0x00, 0x0F, 0x00,
+ 0x0F, 0x00, 0x3B, 0x00, 0x0F, 0x00, 0x19, 0x00,
+ 0x3B, 0x00, 0x0F, 0x00, 0x23, 0x00, 0x3B, 0x00,
+ 0x12, 0x00, 0x2E, 0x00, 0x51, 0x00, 0x14, 0x00,
+ 0x38, 0x00, 0x61, 0x00, 0x16, 0x00, 0x42, 0x00,
+ 0x76, 0x00, 0x18, 0x00, 0x4C, 0x00, 0x8F, 0x00,
+ 0x0F, 0x00, 0xFB, 0xFF, 0x3B, 0x00, 0x0F, 0x00,
+ 0xF1, 0xFF, 0x3B, 0x00, 0x0F, 0x00, 0xE7, 0xFF,
+ 0x3B, 0x00, 0x0F, 0x00, 0xDD, 0xFF, 0x3B, 0x00,
+ 0x12, 0x00, 0xD2, 0xFF, 0x51, 0x00, 0x14, 0x00,
+ 0xC8, 0xFF, 0x61, 0x00, 0x16, 0x00, 0xBE, 0xFF,
+ 0x76, 0x00, 0x18, 0x00, 0xB4, 0xFF, 0x8F, 0x00,
+ 0x11, 0x00, 0x05, 0x00, 0x44, 0x00, 0x11, 0x00,
+ 0x0F, 0x00, 0x44, 0x00, 0x11, 0x00, 0x19, 0x00,
+ 0x44, 0x00, 0x11, 0x00, 0x23, 0x00, 0x44, 0x00,
+ 0x14, 0x00, 0x2E, 0x00, 0x5D, 0x00, 0x16, 0x00,
+ 0x38, 0x00, 0x70, 0x00, 0x18, 0x00, 0x42, 0x00,
+ 0x88, 0x00, 0x1A, 0x00, 0x4C, 0x00, 0xA5, 0x00,
+ 0x11, 0x00, 0xFB, 0xFF, 0x44, 0x00, 0x11, 0x00,
+ 0xF1, 0xFF, 0x44, 0x00, 0x11, 0x00, 0xE7, 0xFF,
+ 0x44, 0x00, 0x11, 0x00, 0xDD, 0xFF, 0x44, 0x00,
+ 0x14, 0x00, 0xD2, 0xFF, 0x5D, 0x00, 0x16, 0x00,
+ 0xC8, 0xFF, 0x70, 0x00, 0x18, 0x00, 0xBE, 0xFF,
+ 0x88, 0x00, 0x1A, 0x00, 0xB4, 0xFF, 0xA5, 0x00,
+ 0x08, 0x00, 0x05, 0x00, 0xFC, 0xFF, 0x08, 0x00,
+ 0x0F, 0x00, 0xFC, 0xFF, 0x08, 0x00, 0x19, 0x00,
+ 0xFC, 0xFF, 0x08, 0x00, 0x23, 0x00, 0xFC, 0xFF,
+ 0x0B, 0x00, 0x2E, 0x00, 0xFA, 0xFF, 0x0D, 0x00,
+ 0x38, 0x00, 0xF9, 0xFF, 0x0F, 0x00, 0x42, 0x00,
+ 0xF7, 0xFF, 0x11, 0x00, 0x4C, 0x00, 0xF5, 0xFF,
+ 0x08, 0x00, 0xFB, 0xFF, 0xFC, 0xFF, 0x08, 0x00,
+ 0xF1, 0xFF, 0xFC, 0xFF, 0x08, 0x00, 0xE7, 0xFF,
+ 0xFC, 0xFF, 0x08, 0x00, 0xDD, 0xFF, 0xFC, 0xFF,
+ 0x0B, 0x00, 0xD2, 0xFF, 0xFA, 0xFF, 0x0D, 0x00,
+ 0xC8, 0xFF, 0xF9, 0xFF, 0x0F, 0x00, 0xBE, 0xFF,
+ 0xF7, 0xFF, 0x11, 0x00, 0xB4, 0xFF, 0xF5, 0xFF,
+ 0x08, 0x00, 0x05, 0x00, 0xF3, 0xFF, 0x08, 0x00,
+ 0x0F, 0x00, 0xF3, 0xFF, 0x08, 0x00, 0x19, 0x00,
+ 0xF3, 0xFF, 0x08, 0x00, 0x23, 0x00, 0xF3, 0xFF,
+ 0x0B, 0x00, 0x2E, 0x00, 0xEE, 0xFF, 0x0D, 0x00,
+ 0x38, 0x00, 0xEA, 0xFF, 0x0F, 0x00, 0x42, 0x00,
+ 0xE5, 0xFF, 0x11, 0x00, 0x4C, 0x00, 0xDF, 0xFF,
+ 0x08, 0x00, 0xFB, 0xFF, 0xF3, 0xFF, 0x08, 0x00,
+ 0xF1, 0xFF, 0xF3, 0xFF, 0x08, 0x00, 0xE7, 0xFF,
+ 0xF3, 0xFF, 0x08, 0x00, 0xDD, 0xFF, 0xF3, 0xFF,
+ 0x0B, 0x00, 0xD2, 0xFF, 0xEE, 0xFF, 0x0D, 0x00,
+ 0xC8, 0xFF, 0xEA, 0xFF, 0x0F, 0x00, 0xBE, 0xFF,
+ 0xE5, 0xFF, 0x11, 0x00, 0xB4, 0xFF, 0xDF, 0xFF,
+ 0x08, 0x00, 0x05, 0x00, 0xEA, 0xFF, 0x08, 0x00,
+ 0x0F, 0x00, 0xEA, 0xFF, 0x08, 0x00, 0x19, 0x00,
+ 0xEA, 0xFF, 0x08, 0x00, 0x23, 0x00, 0xEA, 0xFF,
+ 0x0B, 0x00, 0x2E, 0x00, 0xE1, 0xFF, 0x0D, 0x00,
+ 0x38, 0x00, 0xDB, 0xFF, 0x0F, 0x00, 0x42, 0x00,
+ 0xD3, 0xFF, 0x11, 0x00, 0x4C, 0x00, 0xC9, 0xFF,
+ 0x08, 0x00, 0xFB, 0xFF, 0xEA, 0xFF, 0x08, 0x00,
+ 0xF1, 0xFF, 0xEA, 0xFF, 0x08, 0x00, 0xE7, 0xFF,
+ 0xEA, 0xFF, 0x08, 0x00, 0xDD, 0xFF, 0xEA, 0xFF,
+ 0x0B, 0x00, 0xD2, 0xFF, 0xE1, 0xFF, 0x0D, 0x00,
+ 0xC8, 0xFF, 0xDB, 0xFF, 0x0F, 0x00, 0xBE, 0xFF,
+ 0xD3, 0xFF, 0x11, 0x00, 0xB4, 0xFF, 0xC9, 0xFF,
+ 0x08, 0x00, 0x05, 0x00, 0xE1, 0xFF, 0x08, 0x00,
+ 0x0F, 0x00, 0xE1, 0xFF, 0x08, 0x00, 0x19, 0x00,
+ 0xE1, 0xFF, 0x08, 0x00, 0x23, 0x00, 0xE1, 0xFF,
+ 0x0B, 0x00, 0x2E, 0x00, 0xD5, 0xFF, 0x0D, 0x00,
+ 0x38, 0x00, 0xCC, 0xFF, 0x0F, 0x00, 0x42, 0x00,
+ 0xC1, 0xFF, 0x11, 0x00, 0x4C, 0x00, 0xB3, 0xFF,
+ 0x08, 0x00, 0xFB, 0xFF, 0xE1, 0xFF, 0x08, 0x00,
+ 0xF1, 0xFF, 0xE1, 0xFF, 0x08, 0x00, 0xE7, 0xFF,
+ 0xE1, 0xFF, 0x08, 0x00, 0xDD, 0xFF, 0xE1, 0xFF,
+ 0x0B, 0x00, 0xD2, 0xFF, 0xD5, 0xFF, 0x0D, 0x00,
+ 0xC8, 0xFF, 0xCC, 0xFF, 0x0F, 0x00, 0xBE, 0xFF,
+ 0xC1, 0xFF, 0x11, 0x00, 0xB4, 0xFF, 0xB3, 0xFF,
+ 0x0B, 0x00, 0x05, 0x00, 0xD7, 0xFF, 0x0B, 0x00,
+ 0x0F, 0x00, 0xD7, 0xFF, 0x0B, 0x00, 0x19, 0x00,
+ 0xD7, 0xFF, 0x0B, 0x00, 0x23, 0x00, 0xD7, 0xFF,
+ 0x0E, 0x00, 0x2E, 0x00, 0xC8, 0xFF, 0x10, 0x00,
+ 0x38, 0x00, 0xBD, 0xFF, 0x12, 0x00, 0x42, 0x00,
+ 0xAE, 0xFF, 0x14, 0x00, 0x4C, 0x00, 0x9D, 0xFF,
+ 0x0B, 0x00, 0xFB, 0xFF, 0xD7, 0xFF, 0x0B, 0x00,
+ 0xF1, 0xFF, 0xD7, 0xFF, 0x0B, 0x00, 0xE7, 0xFF,
+ 0xD7, 0xFF, 0x0B, 0x00, 0xDD, 0xFF, 0xD7, 0xFF,
+ 0x0E, 0x00, 0xD2, 0xFF, 0xC8, 0xFF, 0x10, 0x00,
+ 0xC8, 0xFF, 0xBD, 0xFF, 0x12, 0x00, 0xBE, 0xFF,
+ 0xAE, 0xFF, 0x14, 0x00, 0xB4, 0xFF, 0x9D, 0xFF,
+ 0x0D, 0x00, 0x05, 0x00, 0xCE, 0xFF, 0x0D, 0x00,
+ 0x0F, 0x00, 0xCE, 0xFF, 0x0D, 0x00, 0x19, 0x00,
+ 0xCE, 0xFF, 0x0D, 0x00, 0x23, 0x00, 0xCE, 0xFF,
+ 0x10, 0x00, 0x2E, 0x00, 0xBC, 0xFF, 0x12, 0x00,
+ 0x38, 0x00, 0xAE, 0xFF, 0x14, 0x00, 0x42, 0x00,
+ 0x9C, 0xFF, 0x16, 0x00, 0x4C, 0x00, 0x87, 0xFF,
+ 0x0D, 0x00, 0xFB, 0xFF, 0xCE, 0xFF, 0x0D, 0x00,
+ 0xF1, 0xFF, 0xCE, 0xFF, 0x0D, 0x00, 0xE7, 0xFF,
+ 0xCE, 0xFF, 0x0D, 0x00, 0xDD, 0xFF, 0xCE, 0xFF,
+ 0x10, 0x00, 0xD2, 0xFF, 0xBC, 0xFF, 0x12, 0x00,
+ 0xC8, 0xFF, 0xAE, 0xFF, 0x14, 0x00, 0xBE, 0xFF,
+ 0x9C, 0xFF, 0x16, 0x00, 0xB4, 0xFF, 0x87, 0xFF,
+ 0x0F, 0x00, 0x05, 0x00, 0xC5, 0xFF, 0x0F, 0x00,
+ 0x0F, 0x00, 0xC5, 0xFF, 0x0F, 0x00, 0x19, 0x00,
+ 0xC5, 0xFF, 0x0F, 0x00, 0x23, 0x00, 0xC5, 0xFF,
+ 0x12, 0x00, 0x2E, 0x00, 0xAF, 0xFF, 0x14, 0x00,
+ 0x38, 0x00, 0x9F, 0xFF, 0x16, 0x00, 0x42, 0x00,
+ 0x8A, 0xFF, 0x18, 0x00, 0x4C, 0x00, 0x71, 0xFF,
+ 0x0F, 0x00, 0xFB, 0xFF, 0xC5, 0xFF, 0x0F, 0x00,
+ 0xF1, 0xFF, 0xC5, 0xFF, 0x0F, 0x00, 0xE7, 0xFF,
+ 0xC5, 0xFF, 0x0F, 0x00, 0xDD, 0xFF, 0xC5, 0xFF,
+ 0x12, 0x00, 0xD2, 0xFF, 0xAF, 0xFF, 0x14, 0x00,
+ 0xC8, 0xFF, 0x9F, 0xFF, 0x16, 0x00, 0xBE, 0xFF,
+ 0x8A, 0xFF, 0x18, 0x00, 0xB4, 0xFF, 0x71, 0xFF,
+ 0x11, 0x00, 0x05, 0x00, 0xBC, 0xFF, 0x11, 0x00,
+ 0x0F, 0x00, 0xBC, 0xFF, 0x11, 0x00, 0x19, 0x00,
+ 0xBC, 0xFF, 0x11, 0x00, 0x23, 0x00, 0xBC, 0xFF,
+ 0x14, 0x00, 0x2E, 0x00, 0xA3, 0xFF, 0x16, 0x00,
+ 0x38, 0x00, 0x90, 0xFF, 0x18, 0x00, 0x42, 0x00,
+ 0x78, 0xFF, 0x1A, 0x00, 0x4C, 0x00, 0x5B, 0xFF,
+ 0x11, 0x00, 0xFB, 0xFF, 0xBC, 0xFF, 0x11, 0x00,
+ 0xF1, 0xFF, 0xBC, 0xFF, 0x11, 0x00, 0xE7, 0xFF,
+ 0xBC, 0xFF, 0x11, 0x00, 0xDD, 0xFF, 0xBC, 0xFF,
+ 0x14, 0x00, 0xD2, 0xFF, 0xA3, 0xFF, 0x16, 0x00,
+ 0xC8, 0xFF, 0x90, 0xFF, 0x18, 0x00, 0xBE, 0xFF,
+ 0x78, 0xFF, 0x1A, 0x00, 0xB4, 0xFF, 0x5B, 0xFF,
+ 0x09, 0x00, 0x05, 0x00, 0x05, 0x00, 0x09, 0x00,
+ 0x10, 0x00, 0x05, 0x00, 0x09, 0x00, 0x1B, 0x00,
+ 0x05, 0x00, 0x09, 0x00, 0x26, 0x00, 0x05, 0x00,
+ 0x0C, 0x00, 0x32, 0x00, 0x06, 0x00, 0x0E, 0x00,
+ 0x3D, 0x00, 0x08, 0x00, 0x10, 0x00, 0x48, 0x00,
+ 0x0A, 0x00, 0x12, 0x00, 0x53, 0x00, 0x0C, 0x00,
+ 0x09, 0x00, 0xFB, 0xFF, 0x05, 0x00, 0x09, 0x00,
+ 0xF0, 0xFF, 0x05, 0x00, 0x09, 0x00, 0xE5, 0xFF,
+ 0x05, 0x00, 0x09, 0x00, 0xDA, 0xFF, 0x05, 0x00,
+ 0x0C, 0x00, 0xCE, 0xFF, 0x06, 0x00, 0x0E, 0x00,
+ 0xC3, 0xFF, 0x08, 0x00, 0x10, 0x00, 0xB8, 0xFF,
+ 0x0A, 0x00, 0x12, 0x00, 0xAD, 0xFF, 0x0C, 0x00,
+ 0x09, 0x00, 0x05, 0x00, 0x0F, 0x00, 0x09, 0x00,
+ 0x10, 0x00, 0x0F, 0x00, 0x09, 0x00, 0x1B, 0x00,
+ 0x0F, 0x00, 0x09, 0x00, 0x26, 0x00, 0x0F, 0x00,
+ 0x0C, 0x00, 0x32, 0x00, 0x13, 0x00, 0x0E, 0x00,
+ 0x3D, 0x00, 0x18, 0x00, 0x10, 0x00, 0x48, 0x00,
+ 0x1E, 0x00, 0x12, 0x00, 0x53, 0x00, 0x24, 0x00,
+ 0x09, 0x00, 0xFB, 0xFF, 0x0F, 0x00, 0x09, 0x00,
+ 0xF0, 0xFF, 0x0F, 0x00, 0x09, 0x00, 0xE5, 0xFF,
+ 0x0F, 0x00, 0x09, 0x00, 0xDA, 0xFF, 0x0F, 0x00,
+ 0x0C, 0x00, 0xCE, 0xFF, 0x13, 0x00, 0x0E, 0x00,
+ 0xC3, 0xFF, 0x18, 0x00, 0x10, 0x00, 0xB8, 0xFF,
+ 0x1E, 0x00, 0x12, 0x00, 0xAD, 0xFF, 0x24, 0x00,
+ 0x09, 0x00, 0x05, 0x00, 0x19, 0x00, 0x09, 0x00,
+ 0x10, 0x00, 0x19, 0x00, 0x09, 0x00, 0x1B, 0x00,
+ 0x19, 0x00, 0x09, 0x00, 0x26, 0x00, 0x19, 0x00,
+ 0x0C, 0x00, 0x32, 0x00, 0x21, 0x00, 0x0E, 0x00,
+ 0x3D, 0x00, 0x29, 0x00, 0x10, 0x00, 0x48, 0x00,
+ 0x32, 0x00, 0x12, 0x00, 0x53, 0x00, 0x3C, 0x00,
+ 0x09, 0x00, 0xFB, 0xFF, 0x19, 0x00, 0x09, 0x00,
+ 0xF0, 0xFF, 0x19, 0x00, 0x09, 0x00, 0xE5, 0xFF,
+ 0x19, 0x00, 0x09, 0x00, 0xDA, 0xFF, 0x19, 0x00,
+ 0x0C, 0x00, 0xCE, 0xFF, 0x21, 0x00, 0x0E, 0x00,
+ 0xC3, 0xFF, 0x29, 0x00, 0x10, 0x00, 0xB8, 0xFF,
+ 0x32, 0x00, 0x12, 0x00, 0xAD, 0xFF, 0x3C, 0x00,
+ 0x09, 0x00, 0x05, 0x00, 0x23, 0x00, 0x09, 0x00,
+ 0x10, 0x00, 0x23, 0x00, 0x09, 0x00, 0x1B, 0x00,
+ 0x23, 0x00, 0x09, 0x00, 0x26, 0x00, 0x23, 0x00,
+ 0x0C, 0x00, 0x32, 0x00, 0x2E, 0x00, 0x0E, 0x00,
+ 0x3D, 0x00, 0x39, 0x00, 0x10, 0x00, 0x48, 0x00,
+ 0x46, 0x00, 0x12, 0x00, 0x53, 0x00, 0x54, 0x00,
+ 0x09, 0x00, 0xFB, 0xFF, 0x23, 0x00, 0x09, 0x00,
+ 0xF0, 0xFF, 0x23, 0x00, 0x09, 0x00, 0xE5, 0xFF,
+ 0x23, 0x00, 0x09, 0x00, 0xDA, 0xFF, 0x23, 0x00,
+ 0x0C, 0x00, 0xCE, 0xFF, 0x2E, 0x00, 0x0E, 0x00,
+ 0xC3, 0xFF, 0x39, 0x00, 0x10, 0x00, 0xB8, 0xFF,
+ 0x46, 0x00, 0x12, 0x00, 0xAD, 0xFF, 0x54, 0x00,
+ 0x0C, 0x00, 0x05, 0x00, 0x2E, 0x00, 0x0C, 0x00,
+ 0x10, 0x00, 0x2E, 0x00, 0x0C, 0x00, 0x1B, 0x00,
+ 0x2E, 0x00, 0x0C, 0x00, 0x26, 0x00, 0x2E, 0x00,
+ 0x0F, 0x00, 0x32, 0x00, 0x3D, 0x00, 0x11, 0x00,
+ 0x3D, 0x00, 0x4A, 0x00, 0x13, 0x00, 0x48, 0x00,
+ 0x5A, 0x00, 0x15, 0x00, 0x53, 0x00, 0x6D, 0x00,
+ 0x0C, 0x00, 0xFB, 0xFF, 0x2E, 0x00, 0x0C, 0x00,
+ 0xF0, 0xFF, 0x2E, 0x00, 0x0C, 0x00, 0xE5, 0xFF,
+ 0x2E, 0x00, 0x0C, 0x00, 0xDA, 0xFF, 0x2E, 0x00,
+ 0x0F, 0x00, 0xCE, 0xFF, 0x3D, 0x00, 0x11, 0x00,
+ 0xC3, 0xFF, 0x4A, 0x00, 0x13, 0x00, 0xB8, 0xFF,
+ 0x5A, 0x00, 0x15, 0x00, 0xAD, 0xFF, 0x6D, 0x00,
+ 0x0E, 0x00, 0x05, 0x00, 0x38, 0x00, 0x0E, 0x00,
+ 0x10, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x1B, 0x00,
+ 0x38, 0x00, 0x0E, 0x00, 0x26, 0x00, 0x38, 0x00,
+ 0x11, 0x00, 0x32, 0x00, 0x4A, 0x00, 0x13, 0x00,
+ 0x3D, 0x00, 0x5A, 0x00, 0x15, 0x00, 0x48, 0x00,
+ 0x6E, 0x00, 0x17, 0x00, 0x53, 0x00, 0x85, 0x00,
+ 0x0E, 0x00, 0xFB, 0xFF, 0x38, 0x00, 0x0E, 0x00,
+ 0xF0, 0xFF, 0x38, 0x00, 0x0E, 0x00, 0xE5, 0xFF,
+ 0x38, 0x00, 0x0E, 0x00, 0xDA, 0xFF, 0x38, 0x00,
+ 0x11, 0x00, 0xCE, 0xFF, 0x4A, 0x00, 0x13, 0x00,
+ 0xC3, 0xFF, 0x5A, 0x00, 0x15, 0x00, 0xB8, 0xFF,
+ 0x6E, 0x00, 0x17, 0x00, 0xAD, 0xFF, 0x85, 0x00,
+ 0x10, 0x00, 0x05, 0x00, 0x42, 0x00, 0x10, 0x00,
+ 0x10, 0x00, 0x42, 0x00, 0x10, 0x00, 0x1B, 0x00,
+ 0x42, 0x00, 0x10, 0x00, 0x26, 0x00, 0x42, 0x00,
+ 0x13, 0x00, 0x32, 0x00, 0x58, 0x00, 0x15, 0x00,
+ 0x3D, 0x00, 0x6B, 0x00, 0x17, 0x00, 0x48, 0x00,
+ 0x82, 0x00, 0x19, 0x00, 0x53, 0x00, 0x9D, 0x00,
+ 0x10, 0x00, 0xFB, 0xFF, 0x42, 0x00, 0x10, 0x00,
+ 0xF0, 0xFF, 0x42, 0x00, 0x10, 0x00, 0xE5, 0xFF,
+ 0x42, 0x00, 0x10, 0x00, 0xDA, 0xFF, 0x42, 0x00,
+ 0x13, 0x00, 0xCE, 0xFF, 0x58, 0x00, 0x15, 0x00,
+ 0xC3, 0xFF, 0x6B, 0x00, 0x17, 0x00, 0xB8, 0xFF,
+ 0x82, 0x00, 0x19, 0x00, 0xAD, 0xFF, 0x9D, 0x00,
+ 0x12, 0x00, 0x05, 0x00, 0x4C, 0x00, 0x12, 0x00,
+ 0x10, 0x00, 0x4C, 0x00, 0x12, 0x00, 0x1B, 0x00,
+ 0x4C, 0x00, 0x12, 0x00, 0x26, 0x00, 0x4C, 0x00,
+ 0x15, 0x00, 0x32, 0x00, 0x65, 0x00, 0x17, 0x00,
+ 0x3D, 0x00, 0x7B, 0x00, 0x19, 0x00, 0x48, 0x00,
+ 0x96, 0x00, 0x1B, 0x00, 0x53, 0x00, 0xB5, 0x00,
+ 0x12, 0x00, 0xFB, 0xFF, 0x4C, 0x00, 0x12, 0x00,
+ 0xF0, 0xFF, 0x4C, 0x00, 0x12, 0x00, 0xE5, 0xFF,
+ 0x4C, 0x00, 0x12, 0x00, 0xDA, 0xFF, 0x4C, 0x00,
+ 0x15, 0x00, 0xCE, 0xFF, 0x65, 0x00, 0x17, 0x00,
+ 0xC3, 0xFF, 0x7B, 0x00, 0x19, 0x00, 0xB8, 0xFF,
+ 0x96, 0x00, 0x1B, 0x00, 0xAD, 0xFF, 0xB5, 0x00,
+ 0x09, 0x00, 0x05, 0x00, 0xFB, 0xFF, 0x09, 0x00,
+ 0x10, 0x00, 0xFB, 0xFF, 0x09, 0x00, 0x1B, 0x00,
+ 0xFB, 0xFF, 0x09, 0x00, 0x26, 0x00, 0xFB, 0xFF,
+ 0x0C, 0x00, 0x32, 0x00, 0xFA, 0xFF, 0x0E, 0x00,
+ 0x3D, 0x00, 0xF8, 0xFF, 0x10, 0x00, 0x48, 0x00,
+ 0xF6, 0xFF, 0x12, 0x00, 0x53, 0x00, 0xF4, 0xFF,
+ 0x09, 0x00, 0xFB, 0xFF, 0xFB, 0xFF, 0x09, 0x00,
+ 0xF0, 0xFF, 0xFB, 0xFF, 0x09, 0x00, 0xE5, 0xFF,
+ 0xFB, 0xFF, 0x09, 0x00, 0xDA, 0xFF, 0xFB, 0xFF,
+ 0x0C, 0x00, 0xCE, 0xFF, 0xFA, 0xFF, 0x0E, 0x00,
+ 0xC3, 0xFF, 0xF8, 0xFF, 0x10, 0x00, 0xB8, 0xFF,
+ 0xF6, 0xFF, 0x12, 0x00, 0xAD, 0xFF, 0xF4, 0xFF,
+ 0x09, 0x00, 0x05, 0x00, 0xF1, 0xFF, 0x09, 0x00,
+ 0x10, 0x00, 0xF1, 0xFF, 0x09, 0x00, 0x1B, 0x00,
+ 0xF1, 0xFF, 0x09, 0x00, 0x26, 0x00, 0xF1, 0xFF,
+ 0x0C, 0x00, 0x32, 0x00, 0xED, 0xFF, 0x0E, 0x00,
+ 0x3D, 0x00, 0xE8, 0xFF, 0x10, 0x00, 0x48, 0x00,
+ 0xE2, 0xFF, 0x12, 0x00, 0x53, 0x00, 0xDC, 0xFF,
+ 0x09, 0x00, 0xFB, 0xFF, 0xF1, 0xFF, 0x09, 0x00,
+ 0xF0, 0xFF, 0xF1, 0xFF, 0x09, 0x00, 0xE5, 0xFF,
+ 0xF1, 0xFF, 0x09, 0x00, 0xDA, 0xFF, 0xF1, 0xFF,
+ 0x0C, 0x00, 0xCE, 0xFF, 0xED, 0xFF, 0x0E, 0x00,
+ 0xC3, 0xFF, 0xE8, 0xFF, 0x10, 0x00, 0xB8, 0xFF,
+ 0xE2, 0xFF, 0x12, 0x00, 0xAD, 0xFF, 0xDC, 0xFF,
+ 0x09, 0x00, 0x05, 0x00, 0xE7, 0xFF, 0x09, 0x00,
+ 0x10, 0x00, 0xE7, 0xFF, 0x09, 0x00, 0x1B, 0x00,
+ 0xE7, 0xFF, 0x09, 0x00, 0x26, 0x00, 0xE7, 0xFF,
+ 0x0C, 0x00, 0x32, 0x00, 0xDF, 0xFF, 0x0E, 0x00,
+ 0x3D, 0x00, 0xD7, 0xFF, 0x10, 0x00, 0x48, 0x00,
+ 0xCE, 0xFF, 0x12, 0x00, 0x53, 0x00, 0xC4, 0xFF,
+ 0x09, 0x00, 0xFB, 0xFF, 0xE7, 0xFF, 0x09, 0x00,
+ 0xF0, 0xFF, 0xE7, 0xFF, 0x09, 0x00, 0xE5, 0xFF,
+ 0xE7, 0xFF, 0x09, 0x00, 0xDA, 0xFF, 0xE7, 0xFF,
+ 0x0C, 0x00, 0xCE, 0xFF, 0xDF, 0xFF, 0x0E, 0x00,
+ 0xC3, 0xFF, 0xD7, 0xFF, 0x10, 0x00, 0xB8, 0xFF,
+ 0xCE, 0xFF, 0x12, 0x00, 0xAD, 0xFF, 0xC4, 0xFF,
+ 0x09, 0x00, 0x05, 0x00, 0xDD, 0xFF, 0x09, 0x00,
+ 0x10, 0x00, 0xDD, 0xFF, 0x09, 0x00, 0x1B, 0x00,
+ 0xDD, 0xFF, 0x09, 0x00, 0x26, 0x00, 0xDD, 0xFF,
+ 0x0C, 0x00, 0x32, 0x00, 0xD2, 0xFF, 0x0E, 0x00,
+ 0x3D, 0x00, 0xC7, 0xFF, 0x10, 0x00, 0x48, 0x00,
+ 0xBA, 0xFF, 0x12, 0x00, 0x53, 0x00, 0xAC, 0xFF,
+ 0x09, 0x00, 0xFB, 0xFF, 0xDD, 0xFF, 0x09, 0x00,
+ 0xF0, 0xFF, 0xDD, 0xFF, 0x09, 0x00, 0xE5, 0xFF,
+ 0xDD, 0xFF, 0x09, 0x00, 0xDA, 0xFF, 0xDD, 0xFF,
+ 0x0C, 0x00, 0xCE, 0xFF, 0xD2, 0xFF, 0x0E, 0x00,
+ 0xC3, 0xFF, 0xC7, 0xFF, 0x10, 0x00, 0xB8, 0xFF,
+ 0xBA, 0xFF, 0x12, 0x00, 0xAD, 0xFF, 0xAC, 0xFF,
+ 0x0C, 0x00, 0x05, 0x00, 0xD2, 0xFF, 0x0C, 0x00,
+ 0x10, 0x00, 0xD2, 0xFF, 0x0C, 0x00, 0x1B, 0x00,
+ 0xD2, 0xFF, 0x0C, 0x00, 0x26, 0x00, 0xD2, 0xFF,
+ 0x0F, 0x00, 0x32, 0x00, 0xC3, 0xFF, 0x11, 0x00,
+ 0x3D, 0x00, 0xB6, 0xFF, 0x13, 0x00, 0x48, 0x00,
+ 0xA6, 0xFF, 0x15, 0x00, 0x53, 0x00, 0x93, 0xFF,
+ 0x0C, 0x00, 0xFB, 0xFF, 0xD2, 0xFF, 0x0C, 0x00,
+ 0xF0, 0xFF, 0xD2, 0xFF, 0x0C, 0x00, 0xE5, 0xFF,
+ 0xD2, 0xFF, 0x0C, 0x00, 0xDA, 0xFF, 0xD2, 0xFF,
+ 0x0F, 0x00, 0xCE, 0xFF, 0xC3, 0xFF, 0x11, 0x00,
+ 0xC3, 0xFF, 0xB6, 0xFF, 0x13, 0x00, 0xB8, 0xFF,
+ 0xA6, 0xFF, 0x15, 0x00, 0xAD, 0xFF, 0x93, 0xFF,
+ 0x0E, 0x00, 0x05, 0x00, 0xC8, 0xFF, 0x0E, 0x00,
+ 0x10, 0x00, 0xC8, 0xFF, 0x0E, 0x00, 0x1B, 0x00,
+ 0xC8, 0xFF, 0x0E, 0x00, 0x26, 0x00, 0xC8, 0xFF,
+ 0x11, 0x00, 0x32, 0x00, 0xB6, 0xFF, 0x13, 0x00,
+ 0x3D, 0x00, 0xA6, 0xFF, 0x15, 0x00, 0x48, 0x00,
+ 0x92, 0xFF, 0x17, 0x00, 0x53, 0x00, 0x7B, 0xFF,
+ 0x0E, 0x00, 0xFB, 0xFF, 0xC8, 0xFF, 0x0E, 0x00,
+ 0xF0, 0xFF, 0xC8, 0xFF, 0x0E, 0x00, 0xE5, 0xFF,
+ 0xC8, 0xFF, 0x0E, 0x00, 0xDA, 0xFF, 0xC8, 0xFF,
+ 0x11, 0x00, 0xCE, 0xFF, 0xB6, 0xFF, 0x13, 0x00,
+ 0xC3, 0xFF, 0xA6, 0xFF, 0x15, 0x00, 0xB8, 0xFF,
+ 0x92, 0xFF, 0x17, 0x00, 0xAD, 0xFF, 0x7B, 0xFF,
+ 0x10, 0x00, 0x05, 0x00, 0xBE, 0xFF, 0x10, 0x00,
+ 0x10, 0x00, 0xBE, 0xFF, 0x10, 0x00, 0x1B, 0x00,
+ 0xBE, 0xFF, 0x10, 0x00, 0x26, 0x00, 0xBE, 0xFF,
+ 0x13, 0x00, 0x32, 0x00, 0xA8, 0xFF, 0x15, 0x00,
+ 0x3D, 0x00, 0x95, 0xFF, 0x17, 0x00, 0x48, 0x00,
+ 0x7E, 0xFF, 0x19, 0x00, 0x53, 0x00, 0x63, 0xFF,
+ 0x10, 0x00, 0xFB, 0xFF, 0xBE, 0xFF, 0x10, 0x00,
+ 0xF0, 0xFF, 0xBE, 0xFF, 0x10, 0x00, 0xE5, 0xFF,
+ 0xBE, 0xFF, 0x10, 0x00, 0xDA, 0xFF, 0xBE, 0xFF,
+ 0x13, 0x00, 0xCE, 0xFF, 0xA8, 0xFF, 0x15, 0x00,
+ 0xC3, 0xFF, 0x95, 0xFF, 0x17, 0x00, 0xB8, 0xFF,
+ 0x7E, 0xFF, 0x19, 0x00, 0xAD, 0xFF, 0x63, 0xFF,
+ 0x12, 0x00, 0x05, 0x00, 0xB4, 0xFF, 0x12, 0x00,
+ 0x10, 0x00, 0xB4, 0xFF, 0x12, 0x00, 0x1B, 0x00,
+ 0xB4, 0xFF, 0x12, 0x00, 0x26, 0x00, 0xB4, 0xFF,
+ 0x15, 0x00, 0x32, 0x00, 0x9B, 0xFF, 0x17, 0x00,
+ 0x3D, 0x00, 0x85, 0xFF, 0x19, 0x00, 0x48, 0x00,
+ 0x6A, 0xFF, 0x1B, 0x00, 0x53, 0x00, 0x4B, 0xFF,
+ 0x12, 0x00, 0xFB, 0xFF, 0xB4, 0xFF, 0x12, 0x00,
+ 0xF0, 0xFF, 0xB4, 0xFF, 0x12, 0x00, 0xE5, 0xFF,
+ 0xB4, 0xFF, 0x12, 0x00, 0xDA, 0xFF, 0xB4, 0xFF,
+ 0x15, 0x00, 0xCE, 0xFF, 0x9B, 0xFF, 0x17, 0x00,
+ 0xC3, 0xFF, 0x85, 0xFF, 0x19, 0x00, 0xB8, 0xFF,
+ 0x6A, 0xFF, 0x1B, 0x00, 0xAD, 0xFF, 0x4B, 0xFF,
+ 0x0A, 0x00, 0x06, 0x00, 0x05, 0x00, 0x0A, 0x00,
+ 0x12, 0x00, 0x05, 0x00, 0x0A, 0x00, 0x1F, 0x00,
+ 0x05, 0x00, 0x0A, 0x00, 0x2B, 0x00, 0x05, 0x00,
+ 0x0D, 0x00, 0x38, 0x00, 0x07, 0x00, 0x0F, 0x00,
+ 0x44, 0x00, 0x09, 0x00, 0x11, 0x00, 0x51, 0x00,
+ 0x0B, 0x00, 0x13, 0x00, 0x5D, 0x00, 0x0D, 0x00,
+ 0x0A, 0x00, 0xFA, 0xFF, 0x05, 0x00, 0x0A, 0x00,
+ 0xEE, 0xFF, 0x05, 0x00, 0x0A, 0x00, 0xE1, 0xFF,
+ 0x05, 0x00, 0x0A, 0x00, 0xD5, 0xFF, 0x05, 0x00,
+ 0x0D, 0x00, 0xC8, 0xFF, 0x07, 0x00, 0x0F, 0x00,
+ 0xBC, 0xFF, 0x09, 0x00, 0x11, 0x00, 0xAF, 0xFF,
+ 0x0B, 0x00, 0x13, 0x00, 0xA3, 0xFF, 0x0D, 0x00,
+ 0x0A, 0x00, 0x06, 0x00, 0x10, 0x00, 0x0A, 0x00,
+ 0x12, 0x00, 0x10, 0x00, 0x0A, 0x00, 0x1F, 0x00,
+ 0x10, 0x00, 0x0A, 0x00, 0x2B, 0x00, 0x10, 0x00,
+ 0x0D, 0x00, 0x38, 0x00, 0x16, 0x00, 0x0F, 0x00,
+ 0x44, 0x00, 0x1B, 0x00, 0x11, 0x00, 0x51, 0x00,
+ 0x21, 0x00, 0x13, 0x00, 0x5D, 0x00, 0x27, 0x00,
+ 0x0A, 0x00, 0xFA, 0xFF, 0x10, 0x00, 0x0A, 0x00,
+ 0xEE, 0xFF, 0x10, 0x00, 0x0A, 0x00, 0xE1, 0xFF,
+ 0x10, 0x00, 0x0A, 0x00, 0xD5, 0xFF, 0x10, 0x00,
+ 0x0D, 0x00, 0xC8, 0xFF, 0x16, 0x00, 0x0F, 0x00,
+ 0xBC, 0xFF, 0x1B, 0x00, 0x11, 0x00, 0xAF, 0xFF,
+ 0x21, 0x00, 0x13, 0x00, 0xA3, 0xFF, 0x27, 0x00,
+ 0x0A, 0x00, 0x06, 0x00, 0x1B, 0x00, 0x0A, 0x00,
+ 0x12, 0x00, 0x1B, 0x00, 0x0A, 0x00, 0x1F, 0x00,
+ 0x1B, 0x00, 0x0A, 0x00, 0x2B, 0x00, 0x1B, 0x00,
+ 0x0D, 0x00, 0x38, 0x00, 0x25, 0x00, 0x0F, 0x00,
+ 0x44, 0x00, 0x2D, 0x00, 0x11, 0x00, 0x51, 0x00,
+ 0x37, 0x00, 0x13, 0x00, 0x5D, 0x00, 0x42, 0x00,
+ 0x0A, 0x00, 0xFA, 0xFF, 0x1B, 0x00, 0x0A, 0x00,
+ 0xEE, 0xFF, 0x1B, 0x00, 0x0A, 0x00, 0xE1, 0xFF,
+ 0x1B, 0x00, 0x0A, 0x00, 0xD5, 0xFF, 0x1B, 0x00,
+ 0x0D, 0x00, 0xC8, 0xFF, 0x25, 0x00, 0x0F, 0x00,
+ 0xBC, 0xFF, 0x2D, 0x00, 0x11, 0x00, 0xAF, 0xFF,
+ 0x37, 0x00, 0x13, 0x00, 0xA3, 0xFF, 0x42, 0x00,
+ 0x0A, 0x00, 0x06, 0x00, 0x26, 0x00, 0x0A, 0x00,
+ 0x12, 0x00, 0x26, 0x00, 0x0A, 0x00, 0x1F, 0x00,
+ 0x26, 0x00, 0x0A, 0x00, 0x2B, 0x00, 0x26, 0x00,
+ 0x0D, 0x00, 0x38, 0x00, 0x34, 0x00, 0x0F, 0x00,
+ 0x44, 0x00, 0x3F, 0x00, 0x11, 0x00, 0x51, 0x00,
+ 0x4D, 0x00, 0x13, 0x00, 0x5D, 0x00, 0x5C, 0x00,
+ 0x0A, 0x00, 0xFA, 0xFF, 0x26, 0x00, 0x0A, 0x00,
+ 0xEE, 0xFF, 0x26, 0x00, 0x0A, 0x00, 0xE1, 0xFF,
+ 0x26, 0x00, 0x0A, 0x00, 0xD5, 0xFF, 0x26, 0x00,
+ 0x0D, 0x00, 0xC8, 0xFF, 0x34, 0x00, 0x0F, 0x00,
+ 0xBC, 0xFF, 0x3F, 0x00, 0x11, 0x00, 0xAF, 0xFF,
+ 0x4D, 0x00, 0x13, 0x00, 0xA3, 0xFF, 0x5C, 0x00,
+ 0x0D, 0x00, 0x06, 0x00, 0x32, 0x00, 0x0D, 0x00,
+ 0x12, 0x00, 0x32, 0x00, 0x0D, 0x00, 0x1F, 0x00,
+ 0x32, 0x00, 0x0D, 0x00, 0x2B, 0x00, 0x32, 0x00,
+ 0x10, 0x00, 0x38, 0x00, 0x43, 0x00, 0x12, 0x00,
+ 0x44, 0x00, 0x52, 0x00, 0x14, 0x00, 0x51, 0x00,
+ 0x63, 0x00, 0x16, 0x00, 0x5D, 0x00, 0x78, 0x00,
+ 0x0D, 0x00, 0xFA, 0xFF, 0x32, 0x00, 0x0D, 0x00,
+ 0xEE, 0xFF, 0x32, 0x00, 0x0D, 0x00, 0xE1, 0xFF,
+ 0x32, 0x00, 0x0D, 0x00, 0xD5, 0xFF, 0x32, 0x00,
+ 0x10, 0x00, 0xC8, 0xFF, 0x43, 0x00, 0x12, 0x00,
+ 0xBC, 0xFF, 0x52, 0x00, 0x14, 0x00, 0xAF, 0xFF,
+ 0x63, 0x00, 0x16, 0x00, 0xA3, 0xFF, 0x78, 0x00,
+ 0x0F, 0x00, 0x06, 0x00, 0x3D, 0x00, 0x0F, 0x00,
+ 0x12, 0x00, 0x3D, 0x00, 0x0F, 0x00, 0x1F, 0x00,
+ 0x3D, 0x00, 0x0F, 0x00, 0x2B, 0x00, 0x3D, 0x00,
+ 0x12, 0x00, 0x38, 0x00, 0x52, 0x00, 0x14, 0x00,
+ 0x44, 0x00, 0x64, 0x00, 0x16, 0x00, 0x51, 0x00,
+ 0x79, 0x00, 0x18, 0x00, 0x5D, 0x00, 0x92, 0x00,
+ 0x0F, 0x00, 0xFA, 0xFF, 0x3D, 0x00, 0x0F, 0x00,
+ 0xEE, 0xFF, 0x3D, 0x00, 0x0F, 0x00, 0xE1, 0xFF,
+ 0x3D, 0x00, 0x0F, 0x00, 0xD5, 0xFF, 0x3D, 0x00,
+ 0x12, 0x00, 0xC8, 0xFF, 0x52, 0x00, 0x14, 0x00,
+ 0xBC, 0xFF, 0x64, 0x00, 0x16, 0x00, 0xAF, 0xFF,
+ 0x79, 0x00, 0x18, 0x00, 0xA3, 0xFF, 0x92, 0x00,
+ 0x11, 0x00, 0x06, 0x00, 0x48, 0x00, 0x11, 0x00,
+ 0x12, 0x00, 0x48, 0x00, 0x11, 0x00, 0x1F, 0x00,
+ 0x48, 0x00, 0x11, 0x00, 0x2B, 0x00, 0x48, 0x00,
+ 0x14, 0x00, 0x38, 0x00, 0x61, 0x00, 0x16, 0x00,
+ 0x44, 0x00, 0x76, 0x00, 0x18, 0x00, 0x51, 0x00,
+ 0x8F, 0x00, 0x1A, 0x00, 0x5D, 0x00, 0xAD, 0x00,
+ 0x11, 0x00, 0xFA, 0xFF, 0x48, 0x00, 0x11, 0x00,
+ 0xEE, 0xFF, 0x48, 0x00, 0x11, 0x00, 0xE1, 0xFF,
+ 0x48, 0x00, 0x11, 0x00, 0xD5, 0xFF, 0x48, 0x00,
+ 0x14, 0x00, 0xC8, 0xFF, 0x61, 0x00, 0x16, 0x00,
+ 0xBC, 0xFF, 0x76, 0x00, 0x18, 0x00, 0xAF, 0xFF,
+ 0x8F, 0x00, 0x1A, 0x00, 0xA3, 0xFF, 0xAD, 0x00,
+ 0x13, 0x00, 0x06, 0x00, 0x53, 0x00, 0x13, 0x00,
+ 0x12, 0x00, 0x53, 0x00, 0x13, 0x00, 0x1F, 0x00,
+ 0x53, 0x00, 0x13, 0x00, 0x2B, 0x00, 0x53, 0x00,
+ 0x16, 0x00, 0x38, 0x00, 0x70, 0x00, 0x18, 0x00,
+ 0x44, 0x00, 0x88, 0x00, 0x1A, 0x00, 0x51, 0x00,
+ 0xA5, 0x00, 0x1C, 0x00, 0x5D, 0x00, 0xC7, 0x00,
+ 0x13, 0x00, 0xFA, 0xFF, 0x53, 0x00, 0x13, 0x00,
+ 0xEE, 0xFF, 0x53, 0x00, 0x13, 0x00, 0xE1, 0xFF,
+ 0x53, 0x00, 0x13, 0x00, 0xD5, 0xFF, 0x53, 0x00,
+ 0x16, 0x00, 0xC8, 0xFF, 0x70, 0x00, 0x18, 0x00,
+ 0xBC, 0xFF, 0x88, 0x00, 0x1A, 0x00, 0xAF, 0xFF,
+ 0xA5, 0x00, 0x1C, 0x00, 0xA3, 0xFF, 0xC7, 0x00,
+ 0x0A, 0x00, 0x06, 0x00, 0xFB, 0xFF, 0x0A, 0x00,
+ 0x12, 0x00, 0xFB, 0xFF, 0x0A, 0x00, 0x1F, 0x00,
+ 0xFB, 0xFF, 0x0A, 0x00, 0x2B, 0x00, 0xFB, 0xFF,
+ 0x0D, 0x00, 0x38, 0x00, 0xF9, 0xFF, 0x0F, 0x00,
+ 0x44, 0x00, 0xF7, 0xFF, 0x11, 0x00, 0x51, 0x00,
+ 0xF5, 0xFF, 0x13, 0x00, 0x5D, 0x00, 0xF3, 0xFF,
+ 0x0A, 0x00, 0xFA, 0xFF, 0xFB, 0xFF, 0x0A, 0x00,
+ 0xEE, 0xFF, 0xFB, 0xFF, 0x0A, 0x00, 0xE1, 0xFF,
+ 0xFB, 0xFF, 0x0A, 0x00, 0xD5, 0xFF, 0xFB, 0xFF,
+ 0x0D, 0x00, 0xC8, 0xFF, 0xF9, 0xFF, 0x0F, 0x00,
+ 0xBC, 0xFF, 0xF7, 0xFF, 0x11, 0x00, 0xAF, 0xFF,
+ 0xF5, 0xFF, 0x13, 0x00, 0xA3, 0xFF, 0xF3, 0xFF,
+ 0x0A, 0x00, 0x06, 0x00, 0xF0, 0xFF, 0x0A, 0x00,
+ 0x12, 0x00, 0xF0, 0xFF, 0x0A, 0x00, 0x1F, 0x00,
+ 0xF0, 0xFF, 0x0A, 0x00, 0x2B, 0x00, 0xF0, 0xFF,
+ 0x0D, 0x00, 0x38, 0x00, 0xEA, 0xFF, 0x0F, 0x00,
+ 0x44, 0x00, 0xE5, 0xFF, 0x11, 0x00, 0x51, 0x00,
+ 0xDF, 0xFF, 0x13, 0x00, 0x5D, 0x00, 0xD9, 0xFF,
+ 0x0A, 0x00, 0xFA, 0xFF, 0xF0, 0xFF, 0x0A, 0x00,
+ 0xEE, 0xFF, 0xF0, 0xFF, 0x0A, 0x00, 0xE1, 0xFF,
+ 0xF0, 0xFF, 0x0A, 0x00, 0xD5, 0xFF, 0xF0, 0xFF,
+ 0x0D, 0x00, 0xC8, 0xFF, 0xEA, 0xFF, 0x0F, 0x00,
+ 0xBC, 0xFF, 0xE5, 0xFF, 0x11, 0x00, 0xAF, 0xFF,
+ 0xDF, 0xFF, 0x13, 0x00, 0xA3, 0xFF, 0xD9, 0xFF,
+ 0x0A, 0x00, 0x06, 0x00, 0xE5, 0xFF, 0x0A, 0x00,
+ 0x12, 0x00, 0xE5, 0xFF, 0x0A, 0x00, 0x1F, 0x00,
+ 0xE5, 0xFF, 0x0A, 0x00, 0x2B, 0x00, 0xE5, 0xFF,
+ 0x0D, 0x00, 0x38, 0x00, 0xDB, 0xFF, 0x0F, 0x00,
+ 0x44, 0x00, 0xD3, 0xFF, 0x11, 0x00, 0x51, 0x00,
+ 0xC9, 0xFF, 0x13, 0x00, 0x5D, 0x00, 0xBE, 0xFF,
+ 0x0A, 0x00, 0xFA, 0xFF, 0xE5, 0xFF, 0x0A, 0x00,
+ 0xEE, 0xFF, 0xE5, 0xFF, 0x0A, 0x00, 0xE1, 0xFF,
+ 0xE5, 0xFF, 0x0A, 0x00, 0xD5, 0xFF, 0xE5, 0xFF,
+ 0x0D, 0x00, 0xC8, 0xFF, 0xDB, 0xFF, 0x0F, 0x00,
+ 0xBC, 0xFF, 0xD3, 0xFF, 0x11, 0x00, 0xAF, 0xFF,
+ 0xC9, 0xFF, 0x13, 0x00, 0xA3, 0xFF, 0xBE, 0xFF,
+ 0x0A, 0x00, 0x06, 0x00, 0xDA, 0xFF, 0x0A, 0x00,
+ 0x12, 0x00, 0xDA, 0xFF, 0x0A, 0x00, 0x1F, 0x00,
+ 0xDA, 0xFF, 0x0A, 0x00, 0x2B, 0x00, 0xDA, 0xFF,
+ 0x0D, 0x00, 0x38, 0x00, 0xCC, 0xFF, 0x0F, 0x00,
+ 0x44, 0x00, 0xC1, 0xFF, 0x11, 0x00, 0x51, 0x00,
+ 0xB3, 0xFF, 0x13, 0x00, 0x5D, 0x00, 0xA4, 0xFF,
+ 0x0A, 0x00, 0xFA, 0xFF, 0xDA, 0xFF, 0x0A, 0x00,
+ 0xEE, 0xFF, 0xDA, 0xFF, 0x0A, 0x00, 0xE1, 0xFF,
+ 0xDA, 0xFF, 0x0A, 0x00, 0xD5, 0xFF, 0xDA, 0xFF,
+ 0x0D, 0x00, 0xC8, 0xFF, 0xCC, 0xFF, 0x0F, 0x00,
+ 0xBC, 0xFF, 0xC1, 0xFF, 0x11, 0x00, 0xAF, 0xFF,
+ 0xB3, 0xFF, 0x13, 0x00, 0xA3, 0xFF, 0xA4, 0xFF,
+ 0x0D, 0x00, 0x06, 0x00, 0xCE, 0xFF, 0x0D, 0x00,
+ 0x12, 0x00, 0xCE, 0xFF, 0x0D, 0x00, 0x1F, 0x00,
+ 0xCE, 0xFF, 0x0D, 0x00, 0x2B, 0x00, 0xCE, 0xFF,
+ 0x10, 0x00, 0x38, 0x00, 0xBD, 0xFF, 0x12, 0x00,
+ 0x44, 0x00, 0xAE, 0xFF, 0x14, 0x00, 0x51, 0x00,
+ 0x9D, 0xFF, 0x16, 0x00, 0x5D, 0x00, 0x88, 0xFF,
+ 0x0D, 0x00, 0xFA, 0xFF, 0xCE, 0xFF, 0x0D, 0x00,
+ 0xEE, 0xFF, 0xCE, 0xFF, 0x0D, 0x00, 0xE1, 0xFF,
+ 0xCE, 0xFF, 0x0D, 0x00, 0xD5, 0xFF, 0xCE, 0xFF,
+ 0x10, 0x00, 0xC8, 0xFF, 0xBD, 0xFF, 0x12, 0x00,
+ 0xBC, 0xFF, 0xAE, 0xFF, 0x14, 0x00, 0xAF, 0xFF,
+ 0x9D, 0xFF, 0x16, 0x00, 0xA3, 0xFF, 0x88, 0xFF,
+ 0x0F, 0x00, 0x06, 0x00, 0xC3, 0xFF, 0x0F, 0x00,
+ 0x12, 0x00, 0xC3, 0xFF, 0x0F, 0x00, 0x1F, 0x00,
+ 0xC3, 0xFF, 0x0F, 0x00, 0x2B, 0x00, 0xC3, 0xFF,
+ 0x12, 0x00, 0x38, 0x00, 0xAE, 0xFF, 0x14, 0x00,
+ 0x44, 0x00, 0x9C, 0xFF, 0x16, 0x00, 0x51, 0x00,
+ 0x87, 0xFF, 0x18, 0x00, 0x5D, 0x00, 0x6E, 0xFF,
+ 0x0F, 0x00, 0xFA, 0xFF, 0xC3, 0xFF, 0x0F, 0x00,
+ 0xEE, 0xFF, 0xC3, 0xFF, 0x0F, 0x00, 0xE1, 0xFF,
+ 0xC3, 0xFF, 0x0F, 0x00, 0xD5, 0xFF, 0xC3, 0xFF,
+ 0x12, 0x00, 0xC8, 0xFF, 0xAE, 0xFF, 0x14, 0x00,
+ 0xBC, 0xFF, 0x9C, 0xFF, 0x16, 0x00, 0xAF, 0xFF,
+ 0x87, 0xFF, 0x18, 0x00, 0xA3, 0xFF, 0x6E, 0xFF,
+ 0x11, 0x00, 0x06, 0x00, 0xB8, 0xFF, 0x11, 0x00,
+ 0x12, 0x00, 0xB8, 0xFF, 0x11, 0x00, 0x1F, 0x00,
+ 0xB8, 0xFF, 0x11, 0x00, 0x2B, 0x00, 0xB8, 0xFF,
+ 0x14, 0x00, 0x38, 0x00, 0x9F, 0xFF, 0x16, 0x00,
+ 0x44, 0x00, 0x8A, 0xFF, 0x18, 0x00, 0x51, 0x00,
+ 0x71, 0xFF, 0x1A, 0x00, 0x5D, 0x00, 0x53, 0xFF,
+ 0x11, 0x00, 0xFA, 0xFF, 0xB8, 0xFF, 0x11, 0x00,
+ 0xEE, 0xFF, 0xB8, 0xFF, 0x11, 0x00, 0xE1, 0xFF,
+ 0xB8, 0xFF, 0x11, 0x00, 0xD5, 0xFF, 0xB8, 0xFF,
+ 0x14, 0x00, 0xC8, 0xFF, 0x9F, 0xFF, 0x16, 0x00,
+ 0xBC, 0xFF, 0x8A, 0xFF, 0x18, 0x00, 0xAF, 0xFF,
+ 0x71, 0xFF, 0x1A, 0x00, 0xA3, 0xFF, 0x53, 0xFF,
+ 0x13, 0x00, 0x06, 0x00, 0xAD, 0xFF, 0x13, 0x00,
+ 0x12, 0x00, 0xAD, 0xFF, 0x13, 0x00, 0x1F, 0x00,
+ 0xAD, 0xFF, 0x13, 0x00, 0x2B, 0x00, 0xAD, 0xFF,
+ 0x16, 0x00, 0x38, 0x00, 0x90, 0xFF, 0x18, 0x00,
+ 0x44, 0x00, 0x78, 0xFF, 0x1A, 0x00, 0x51, 0x00,
+ 0x5B, 0xFF, 0x1C, 0x00, 0x5D, 0x00, 0x39, 0xFF,
+ 0x13, 0x00, 0xFA, 0xFF, 0xAD, 0xFF, 0x13, 0x00,
+ 0xEE, 0xFF, 0xAD, 0xFF, 0x13, 0x00, 0xE1, 0xFF,
+ 0xAD, 0xFF, 0x13, 0x00, 0xD5, 0xFF, 0xAD, 0xFF,
+ 0x16, 0x00, 0xC8, 0xFF, 0x90, 0xFF, 0x18, 0x00,
+ 0xBC, 0xFF, 0x78, 0xFF, 0x1A, 0x00, 0xAF, 0xFF,
+ 0x5B, 0xFF, 0x1C, 0x00, 0xA3, 0xFF, 0x39, 0xFF,
+ 0x0B, 0x00, 0x06, 0x00, 0x06, 0x00, 0x0B, 0x00,
+ 0x13, 0x00, 0x06, 0x00, 0x0B, 0x00, 0x21, 0x00,
+ 0x06, 0x00, 0x0B, 0x00, 0x2E, 0x00, 0x06, 0x00,
+ 0x0E, 0x00, 0x3D, 0x00, 0x08, 0x00, 0x10, 0x00,
+ 0x4A, 0x00, 0x0A, 0x00, 0x12, 0x00, 0x58, 0x00,
+ 0x0C, 0x00, 0x14, 0x00, 0x65, 0x00, 0x0E, 0x00,
+ 0x0B, 0x00, 0xFA, 0xFF, 0x06, 0x00, 0x0B, 0x00,
+ 0xED, 0xFF, 0x06, 0x00, 0x0B, 0x00, 0xDF, 0xFF,
+ 0x06, 0x00, 0x0B, 0x00, 0xD2, 0xFF, 0x06, 0x00,
+ 0x0E, 0x00, 0xC3, 0xFF, 0x08, 0x00, 0x10, 0x00,
+ 0xB6, 0xFF, 0x0A, 0x00, 0x12, 0x00, 0xA8, 0xFF,
+ 0x0C, 0x00, 0x14, 0x00, 0x9B, 0xFF, 0x0E, 0x00,
+ 0x0B, 0x00, 0x06, 0x00, 0x12, 0x00, 0x0B, 0x00,
+ 0x13, 0x00, 0x12, 0x00, 0x0B, 0x00, 0x21, 0x00,
+ 0x12, 0x00, 0x0B, 0x00, 0x2E, 0x00, 0x12, 0x00,
+ 0x0E, 0x00, 0x3D, 0x00, 0x18, 0x00, 0x10, 0x00,
+ 0x4A, 0x00, 0x1E, 0x00, 0x12, 0x00, 0x58, 0x00,
+ 0x24, 0x00, 0x14, 0x00, 0x65, 0x00, 0x2B, 0x00,
+ 0x0B, 0x00, 0xFA, 0xFF, 0x12, 0x00, 0x0B, 0x00,
+ 0xED, 0xFF, 0x12, 0x00, 0x0B, 0x00, 0xDF, 0xFF,
+ 0x12, 0x00, 0x0B, 0x00, 0xD2, 0xFF, 0x12, 0x00,
+ 0x0E, 0x00, 0xC3, 0xFF, 0x18, 0x00, 0x10, 0x00,
+ 0xB6, 0xFF, 0x1E, 0x00, 0x12, 0x00, 0xA8, 0xFF,
+ 0x24, 0x00, 0x14, 0x00, 0x9B, 0xFF, 0x2B, 0x00,
+ 0x0B, 0x00, 0x06, 0x00, 0x1F, 0x00, 0x0B, 0x00,
+ 0x13, 0x00, 0x1F, 0x00, 0x0B, 0x00, 0x21, 0x00,
+ 0x1F, 0x00, 0x0B, 0x00, 0x2E, 0x00, 0x1F, 0x00,
+ 0x0E, 0x00, 0x3D, 0x00, 0x29, 0x00, 0x10, 0x00,
+ 0x4A, 0x00, 0x32, 0x00, 0x12, 0x00, 0x58, 0x00,
+ 0x3C, 0x00, 0x14, 0x00, 0x65, 0x00, 0x49, 0x00,
+ 0x0B, 0x00, 0xFA, 0xFF, 0x1F, 0x00, 0x0B, 0x00,
+ 0xED, 0xFF, 0x1F, 0x00, 0x0B, 0x00, 0xDF, 0xFF,
+ 0x1F, 0x00, 0x0B, 0x00, 0xD2, 0xFF, 0x1F, 0x00,
+ 0x0E, 0x00, 0xC3, 0xFF, 0x29, 0x00, 0x10, 0x00,
+ 0xB6, 0xFF, 0x32, 0x00, 0x12, 0x00, 0xA8, 0xFF,
+ 0x3C, 0x00, 0x14, 0x00, 0x9B, 0xFF, 0x49, 0x00,
+ 0x0B, 0x00, 0x06, 0x00, 0x2B, 0x00, 0x0B, 0x00,
+ 0x13, 0x00, 0x2B, 0x00, 0x0B, 0x00, 0x21, 0x00,
+ 0x2B, 0x00, 0x0B, 0x00, 0x2E, 0x00, 0x2B, 0x00,
+ 0x0E, 0x00, 0x3D, 0x00, 0x39, 0x00, 0x10, 0x00,
+ 0x4A, 0x00, 0x46, 0x00, 0x12, 0x00, 0x58, 0x00,
+ 0x54, 0x00, 0x14, 0x00, 0x65, 0x00, 0x66, 0x00,
+ 0x0B, 0x00, 0xFA, 0xFF, 0x2B, 0x00, 0x0B, 0x00,
+ 0xED, 0xFF, 0x2B, 0x00, 0x0B, 0x00, 0xDF, 0xFF,
+ 0x2B, 0x00, 0x0B, 0x00, 0xD2, 0xFF, 0x2B, 0x00,
+ 0x0E, 0x00, 0xC3, 0xFF, 0x39, 0x00, 0x10, 0x00,
+ 0xB6, 0xFF, 0x46, 0x00, 0x12, 0x00, 0xA8, 0xFF,
+ 0x54, 0x00, 0x14, 0x00, 0x9B, 0xFF, 0x66, 0x00,
+ 0x0E, 0x00, 0x06, 0x00, 0x38, 0x00, 0x0E, 0x00,
+ 0x13, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x21, 0x00,
+ 0x38, 0x00, 0x0E, 0x00, 0x2E, 0x00, 0x38, 0x00,
+ 0x11, 0x00, 0x3D, 0x00, 0x4A, 0x00, 0x13, 0x00,
+ 0x4A, 0x00, 0x5A, 0x00, 0x15, 0x00, 0x58, 0x00,
+ 0x6D, 0x00, 0x17, 0x00, 0x65, 0x00, 0x84, 0x00,
+ 0x0E, 0x00, 0xFA, 0xFF, 0x38, 0x00, 0x0E, 0x00,
+ 0xED, 0xFF, 0x38, 0x00, 0x0E, 0x00, 0xDF, 0xFF,
+ 0x38, 0x00, 0x0E, 0x00, 0xD2, 0xFF, 0x38, 0x00,
+ 0x11, 0x00, 0xC3, 0xFF, 0x4A, 0x00, 0x13, 0x00,
+ 0xB6, 0xFF, 0x5A, 0x00, 0x15, 0x00, 0xA8, 0xFF,
+ 0x6D, 0x00, 0x17, 0x00, 0x9B, 0xFF, 0x84, 0x00,
+ 0x10, 0x00, 0x06, 0x00, 0x44, 0x00, 0x10, 0x00,
+ 0x13, 0x00, 0x44, 0x00, 0x10, 0x00, 0x21, 0x00,
+ 0x44, 0x00, 0x10, 0x00, 0x2E, 0x00, 0x44, 0x00,
+ 0x13, 0x00, 0x3D, 0x00, 0x5A, 0x00, 0x15, 0x00,
+ 0x4A, 0x00, 0x6E, 0x00, 0x17, 0x00, 0x58, 0x00,
+ 0x85, 0x00, 0x19, 0x00, 0x65, 0x00, 0xA1, 0x00,
+ 0x10, 0x00, 0xFA, 0xFF, 0x44, 0x00, 0x10, 0x00,
+ 0xED, 0xFF, 0x44, 0x00, 0x10, 0x00, 0xDF, 0xFF,
+ 0x44, 0x00, 0x10, 0x00, 0xD2, 0xFF, 0x44, 0x00,
+ 0x13, 0x00, 0xC3, 0xFF, 0x5A, 0x00, 0x15, 0x00,
+ 0xB6, 0xFF, 0x6E, 0x00, 0x17, 0x00, 0xA8, 0xFF,
+ 0x85, 0x00, 0x19, 0x00, 0x9B, 0xFF, 0xA1, 0x00,
+ 0x12, 0x00, 0x06, 0x00, 0x51, 0x00, 0x12, 0x00,
+ 0x13, 0x00, 0x51, 0x00, 0x12, 0x00, 0x21, 0x00,
+ 0x51, 0x00, 0x12, 0x00, 0x2E, 0x00, 0x51, 0x00,
+ 0x15, 0x00, 0x3D, 0x00, 0x6B, 0x00, 0x17, 0x00,
+ 0x4A, 0x00, 0x82, 0x00, 0x19, 0x00, 0x58, 0x00,
+ 0x9D, 0x00, 0x1B, 0x00, 0x65, 0x00, 0xBF, 0x00,
+ 0x12, 0x00, 0xFA, 0xFF, 0x51, 0x00, 0x12, 0x00,
+ 0xED, 0xFF, 0x51, 0x00, 0x12, 0x00, 0xDF, 0xFF,
+ 0x51, 0x00, 0x12, 0x00, 0xD2, 0xFF, 0x51, 0x00,
+ 0x15, 0x00, 0xC3, 0xFF, 0x6B, 0x00, 0x17, 0x00,
+ 0xB6, 0xFF, 0x82, 0x00, 0x19, 0x00, 0xA8, 0xFF,
+ 0x9D, 0x00, 0x1B, 0x00, 0x9B, 0xFF, 0xBF, 0x00,
+ 0x14, 0x00, 0x06, 0x00, 0x5D, 0x00, 0x14, 0x00,
+ 0x13, 0x00, 0x5D, 0x00, 0x14, 0x00, 0x21, 0x00,
+ 0x5D, 0x00, 0x14, 0x00, 0x2E, 0x00, 0x5D, 0x00,
+ 0x17, 0x00, 0x3D, 0x00, 0x7B, 0x00, 0x19, 0x00,
+ 0x4A, 0x00, 0x96, 0x00, 0x1B, 0x00, 0x58, 0x00,
+ 0xB5, 0x00, 0x1D, 0x00, 0x65, 0x00, 0xDC, 0x00,
+ 0x14, 0x00, 0xFA, 0xFF, 0x5D, 0x00, 0x14, 0x00,
+ 0xED, 0xFF, 0x5D, 0x00, 0x14, 0x00, 0xDF, 0xFF,
+ 0x5D, 0x00, 0x14, 0x00, 0xD2, 0xFF, 0x5D, 0x00,
+ 0x17, 0x00, 0xC3, 0xFF, 0x7B, 0x00, 0x19, 0x00,
+ 0xB6, 0xFF, 0x96, 0x00, 0x1B, 0x00, 0xA8, 0xFF,
+ 0xB5, 0x00, 0x1D, 0x00, 0x9B, 0xFF, 0xDC, 0x00,
+ 0x0B, 0x00, 0x06, 0x00, 0xFA, 0xFF, 0x0B, 0x00,
+ 0x13, 0x00, 0xFA, 0xFF, 0x0B, 0x00, 0x21, 0x00,
+ 0xFA, 0xFF, 0x0B, 0x00, 0x2E, 0x00, 0xFA, 0xFF,
+ 0x0E, 0x00, 0x3D, 0x00, 0xF8, 0xFF, 0x10, 0x00,
+ 0x4A, 0x00, 0xF6, 0xFF, 0x12, 0x00, 0x58, 0x00,
+ 0xF4, 0xFF, 0x14, 0x00, 0x65, 0x00, 0xF2, 0xFF,
+ 0x0B, 0x00, 0xFA, 0xFF, 0xFA, 0xFF, 0x0B, 0x00,
+ 0xED, 0xFF, 0xFA, 0xFF, 0x0B, 0x00, 0xDF, 0xFF,
+ 0xFA, 0xFF, 0x0B, 0x00, 0xD2, 0xFF, 0xFA, 0xFF,
+ 0x0E, 0x00, 0xC3, 0xFF, 0xF8, 0xFF, 0x10, 0x00,
+ 0xB6, 0xFF, 0xF6, 0xFF, 0x12, 0x00, 0xA8, 0xFF,
+ 0xF4, 0xFF, 0x14, 0x00, 0x9B, 0xFF, 0xF2, 0xFF,
+ 0x0B, 0x00, 0x06, 0x00, 0xEE, 0xFF, 0x0B, 0x00,
+ 0x13, 0x00, 0xEE, 0xFF, 0x0B, 0x00, 0x21, 0x00,
+ 0xEE, 0xFF, 0x0B, 0x00, 0x2E, 0x00, 0xEE, 0xFF,
+ 0x0E, 0x00, 0x3D, 0x00, 0xE8, 0xFF, 0x10, 0x00,
+ 0x4A, 0x00, 0xE2, 0xFF, 0x12, 0x00, 0x58, 0x00,
+ 0xDC, 0xFF, 0x14, 0x00, 0x65, 0x00, 0xD5, 0xFF,
+ 0x0B, 0x00, 0xFA, 0xFF, 0xEE, 0xFF, 0x0B, 0x00,
+ 0xED, 0xFF, 0xEE, 0xFF, 0x0B, 0x00, 0xDF, 0xFF,
+ 0xEE, 0xFF, 0x0B, 0x00, 0xD2, 0xFF, 0xEE, 0xFF,
+ 0x0E, 0x00, 0xC3, 0xFF, 0xE8, 0xFF, 0x10, 0x00,
+ 0xB6, 0xFF, 0xE2, 0xFF, 0x12, 0x00, 0xA8, 0xFF,
+ 0xDC, 0xFF, 0x14, 0x00, 0x9B, 0xFF, 0xD5, 0xFF,
+ 0x0B, 0x00, 0x06, 0x00, 0xE1, 0xFF, 0x0B, 0x00,
+ 0x13, 0x00, 0xE1, 0xFF, 0x0B, 0x00, 0x21, 0x00,
+ 0xE1, 0xFF, 0x0B, 0x00, 0x2E, 0x00, 0xE1, 0xFF,
+ 0x0E, 0x00, 0x3D, 0x00, 0xD7, 0xFF, 0x10, 0x00,
+ 0x4A, 0x00, 0xCE, 0xFF, 0x12, 0x00, 0x58, 0x00,
+ 0xC4, 0xFF, 0x14, 0x00, 0x65, 0x00, 0xB7, 0xFF,
+ 0x0B, 0x00, 0xFA, 0xFF, 0xE1, 0xFF, 0x0B, 0x00,
+ 0xED, 0xFF, 0xE1, 0xFF, 0x0B, 0x00, 0xDF, 0xFF,
+ 0xE1, 0xFF, 0x0B, 0x00, 0xD2, 0xFF, 0xE1, 0xFF,
+ 0x0E, 0x00, 0xC3, 0xFF, 0xD7, 0xFF, 0x10, 0x00,
+ 0xB6, 0xFF, 0xCE, 0xFF, 0x12, 0x00, 0xA8, 0xFF,
+ 0xC4, 0xFF, 0x14, 0x00, 0x9B, 0xFF, 0xB7, 0xFF,
+ 0x0B, 0x00, 0x06, 0x00, 0xD5, 0xFF, 0x0B, 0x00,
+ 0x13, 0x00, 0xD5, 0xFF, 0x0B, 0x00, 0x21, 0x00,
+ 0xD5, 0xFF, 0x0B, 0x00, 0x2E, 0x00, 0xD5, 0xFF,
+ 0x0E, 0x00, 0x3D, 0x00, 0xC7, 0xFF, 0x10, 0x00,
+ 0x4A, 0x00, 0xBA, 0xFF, 0x12, 0x00, 0x58, 0x00,
+ 0xAC, 0xFF, 0x14, 0x00, 0x65, 0x00, 0x9A, 0xFF,
+ 0x0B, 0x00, 0xFA, 0xFF, 0xD5, 0xFF, 0x0B, 0x00,
+ 0xED, 0xFF, 0xD5, 0xFF, 0x0B, 0x00, 0xDF, 0xFF,
+ 0xD5, 0xFF, 0x0B, 0x00, 0xD2, 0xFF, 0xD5, 0xFF,
+ 0x0E, 0x00, 0xC3, 0xFF, 0xC7, 0xFF, 0x10, 0x00,
+ 0xB6, 0xFF, 0xBA, 0xFF, 0x12, 0x00, 0xA8, 0xFF,
+ 0xAC, 0xFF, 0x14, 0x00, 0x9B, 0xFF, 0x9A, 0xFF,
+ 0x0E, 0x00, 0x06, 0x00, 0xC8, 0xFF, 0x0E, 0x00,
+ 0x13, 0x00, 0xC8, 0xFF, 0x0E, 0x00, 0x21, 0x00,
+ 0xC8, 0xFF, 0x0E, 0x00, 0x2E, 0x00, 0xC8, 0xFF,
+ 0x11, 0x00, 0x3D, 0x00, 0xB6, 0xFF, 0x13, 0x00,
+ 0x4A, 0x00, 0xA6, 0xFF, 0x15, 0x00, 0x58, 0x00,
+ 0x93, 0xFF, 0x17, 0x00, 0x65, 0x00, 0x7C, 0xFF,
+ 0x0E, 0x00, 0xFA, 0xFF, 0xC8, 0xFF, 0x0E, 0x00,
+ 0xED, 0xFF, 0xC8, 0xFF, 0x0E, 0x00, 0xDF, 0xFF,
+ 0xC8, 0xFF, 0x0E, 0x00, 0xD2, 0xFF, 0xC8, 0xFF,
+ 0x11, 0x00, 0xC3, 0xFF, 0xB6, 0xFF, 0x13, 0x00,
+ 0xB6, 0xFF, 0xA6, 0xFF, 0x15, 0x00, 0xA8, 0xFF,
+ 0x93, 0xFF, 0x17, 0x00, 0x9B, 0xFF, 0x7C, 0xFF,
+ 0x10, 0x00, 0x06, 0x00, 0xBC, 0xFF, 0x10, 0x00,
+ 0x13, 0x00, 0xBC, 0xFF, 0x10, 0x00, 0x21, 0x00,
+ 0xBC, 0xFF, 0x10, 0x00, 0x2E, 0x00, 0xBC, 0xFF,
+ 0x13, 0x00, 0x3D, 0x00, 0xA6, 0xFF, 0x15, 0x00,
+ 0x4A, 0x00, 0x92, 0xFF, 0x17, 0x00, 0x58, 0x00,
+ 0x7B, 0xFF, 0x19, 0x00, 0x65, 0x00, 0x5F, 0xFF,
+ 0x10, 0x00, 0xFA, 0xFF, 0xBC, 0xFF, 0x10, 0x00,
+ 0xED, 0xFF, 0xBC, 0xFF, 0x10, 0x00, 0xDF, 0xFF,
+ 0xBC, 0xFF, 0x10, 0x00, 0xD2, 0xFF, 0xBC, 0xFF,
+ 0x13, 0x00, 0xC3, 0xFF, 0xA6, 0xFF, 0x15, 0x00,
+ 0xB6, 0xFF, 0x92, 0xFF, 0x17, 0x00, 0xA8, 0xFF,
+ 0x7B, 0xFF, 0x19, 0x00, 0x9B, 0xFF, 0x5F, 0xFF,
+ 0x12, 0x00, 0x06, 0x00, 0xAF, 0xFF, 0x12, 0x00,
+ 0x13, 0x00, 0xAF, 0xFF, 0x12, 0x00, 0x21, 0x00,
+ 0xAF, 0xFF, 0x12, 0x00, 0x2E, 0x00, 0xAF, 0xFF,
+ 0x15, 0x00, 0x3D, 0x00, 0x95, 0xFF, 0x17, 0x00,
+ 0x4A, 0x00, 0x7E, 0xFF, 0x19, 0x00, 0x58, 0x00,
+ 0x63, 0xFF, 0x1B, 0x00, 0x65, 0x00, 0x41, 0xFF,
+ 0x12, 0x00, 0xFA, 0xFF, 0xAF, 0xFF, 0x12, 0x00,
+ 0xED, 0xFF, 0xAF, 0xFF, 0x12, 0x00, 0xDF, 0xFF,
+ 0xAF, 0xFF, 0x12, 0x00, 0xD2, 0xFF, 0xAF, 0xFF,
+ 0x15, 0x00, 0xC3, 0xFF, 0x95, 0xFF, 0x17, 0x00,
+ 0xB6, 0xFF, 0x7E, 0xFF, 0x19, 0x00, 0xA8, 0xFF,
+ 0x63, 0xFF, 0x1B, 0x00, 0x9B, 0xFF, 0x41, 0xFF,
+ 0x14, 0x00, 0x06, 0x00, 0xA3, 0xFF, 0x14, 0x00,
+ 0x13, 0x00, 0xA3, 0xFF, 0x14, 0x00, 0x21, 0x00,
+ 0xA3, 0xFF, 0x14, 0x00, 0x2E, 0x00, 0xA3, 0xFF,
+ 0x17, 0x00, 0x3D, 0x00, 0x85, 0xFF, 0x19, 0x00,
+ 0x4A, 0x00, 0x6A, 0xFF, 0x1B, 0x00, 0x58, 0x00,
+ 0x4B, 0xFF, 0x1D, 0x00, 0x65, 0x00, 0x24, 0xFF,
+ 0x14, 0x00, 0xFA, 0xFF, 0xA3, 0xFF, 0x14, 0x00,
+ 0xED, 0xFF, 0xA3, 0xFF, 0x14, 0x00, 0xDF, 0xFF,
+ 0xA3, 0xFF, 0x14, 0x00, 0xD2, 0xFF, 0xA3, 0xFF,
+ 0x17, 0x00, 0xC3, 0xFF, 0x85, 0xFF, 0x19, 0x00,
+ 0xB6, 0xFF, 0x6A, 0xFF, 0x1B, 0x00, 0xA8, 0xFF,
+ 0x4B, 0xFF, 0x1D, 0x00, 0x9B, 0xFF, 0x24, 0xFF,
+ 0x0C, 0x00, 0x07, 0x00, 0x06, 0x00, 0x0C, 0x00,
+ 0x16, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x25, 0x00,
+ 0x06, 0x00, 0x0C, 0x00, 0x34, 0x00, 0x06, 0x00,
+ 0x0F, 0x00, 0x43, 0x00, 0x09, 0x00, 0x11, 0x00,
+ 0x52, 0x00, 0x0B, 0x00, 0x13, 0x00, 0x61, 0x00,
+ 0x0D, 0x00, 0x15, 0x00, 0x70, 0x00, 0x10, 0x00,
+ 0x0C, 0x00, 0xF9, 0xFF, 0x06, 0x00, 0x0C, 0x00,
+ 0xEA, 0xFF, 0x06, 0x00, 0x0C, 0x00, 0xDB, 0xFF,
+ 0x06, 0x00, 0x0C, 0x00, 0xCC, 0xFF, 0x06, 0x00,
+ 0x0F, 0x00, 0xBD, 0xFF, 0x09, 0x00, 0x11, 0x00,
+ 0xAE, 0xFF, 0x0B, 0x00, 0x13, 0x00, 0x9F, 0xFF,
+ 0x0D, 0x00, 0x15, 0x00, 0x90, 0xFF, 0x10, 0x00,
+ 0x0C, 0x00, 0x07, 0x00, 0x13, 0x00, 0x0C, 0x00,
+ 0x16, 0x00, 0x13, 0x00, 0x0C, 0x00, 0x25, 0x00,
+ 0x13, 0x00, 0x0C, 0x00, 0x34, 0x00, 0x13, 0x00,
+ 0x0F, 0x00, 0x43, 0x00, 0x1B, 0x00, 0x11, 0x00,
+ 0x52, 0x00, 0x21, 0x00, 0x13, 0x00, 0x61, 0x00,
+ 0x27, 0x00, 0x15, 0x00, 0x70, 0x00, 0x30, 0x00,
+ 0x0C, 0x00, 0xF9, 0xFF, 0x13, 0x00, 0x0C, 0x00,
+ 0xEA, 0xFF, 0x13, 0x00, 0x0C, 0x00, 0xDB, 0xFF,
+ 0x13, 0x00, 0x0C, 0x00, 0xCC, 0xFF, 0x13, 0x00,
+ 0x0F, 0x00, 0xBD, 0xFF, 0x1B, 0x00, 0x11, 0x00,
+ 0xAE, 0xFF, 0x21, 0x00, 0x13, 0x00, 0x9F, 0xFF,
+ 0x27, 0x00, 0x15, 0x00, 0x90, 0xFF, 0x30, 0x00,
+ 0x0C, 0x00, 0x07, 0x00, 0x21, 0x00, 0x0C, 0x00,
+ 0x16, 0x00, 0x21, 0x00, 0x0C, 0x00, 0x25, 0x00,
+ 0x21, 0x00, 0x0C, 0x00, 0x34, 0x00, 0x21, 0x00,
+ 0x0F, 0x00, 0x43, 0x00, 0x2D, 0x00, 0x11, 0x00,
+ 0x52, 0x00, 0x37, 0x00, 0x13, 0x00, 0x61, 0x00,
+ 0x42, 0x00, 0x15, 0x00, 0x70, 0x00, 0x51, 0x00,
+ 0x0C, 0x00, 0xF9, 0xFF, 0x21, 0x00, 0x0C, 0x00,
+ 0xEA, 0xFF, 0x21, 0x00, 0x0C, 0x00, 0xDB, 0xFF,
+ 0x21, 0x00, 0x0C, 0x00, 0xCC, 0xFF, 0x21, 0x00,
+ 0x0F, 0x00, 0xBD, 0xFF, 0x2D, 0x00, 0x11, 0x00,
+ 0xAE, 0xFF, 0x37, 0x00, 0x13, 0x00, 0x9F, 0xFF,
+ 0x42, 0x00, 0x15, 0x00, 0x90, 0xFF, 0x51, 0x00,
+ 0x0C, 0x00, 0x07, 0x00, 0x2E, 0x00, 0x0C, 0x00,
+ 0x16, 0x00, 0x2E, 0x00, 0x0C, 0x00, 0x25, 0x00,
+ 0x2E, 0x00, 0x0C, 0x00, 0x34, 0x00, 0x2E, 0x00,
+ 0x0F, 0x00, 0x43, 0x00, 0x3F, 0x00, 0x11, 0x00,
+ 0x52, 0x00, 0x4D, 0x00, 0x13, 0x00, 0x61, 0x00,
+ 0x5C, 0x00, 0x15, 0x00, 0x70, 0x00, 0x71, 0x00,
+ 0x0C, 0x00, 0xF9, 0xFF, 0x2E, 0x00, 0x0C, 0x00,
+ 0xEA, 0xFF, 0x2E, 0x00, 0x0C, 0x00, 0xDB, 0xFF,
+ 0x2E, 0x00, 0x0C, 0x00, 0xCC, 0xFF, 0x2E, 0x00,
+ 0x0F, 0x00, 0xBD, 0xFF, 0x3F, 0x00, 0x11, 0x00,
+ 0xAE, 0xFF, 0x4D, 0x00, 0x13, 0x00, 0x9F, 0xFF,
+ 0x5C, 0x00, 0x15, 0x00, 0x90, 0xFF, 0x71, 0x00,
+ 0x0F, 0x00, 0x07, 0x00, 0x3D, 0x00, 0x0F, 0x00,
+ 0x16, 0x00, 0x3D, 0x00, 0x0F, 0x00, 0x25, 0x00,
+ 0x3D, 0x00, 0x0F, 0x00, 0x34, 0x00, 0x3D, 0x00,
+ 0x12, 0x00, 0x43, 0x00, 0x52, 0x00, 0x14, 0x00,
+ 0x52, 0x00, 0x63, 0x00, 0x16, 0x00, 0x61, 0x00,
+ 0x78, 0x00, 0x18, 0x00, 0x70, 0x00, 0x92, 0x00,
+ 0x0F, 0x00, 0xF9, 0xFF, 0x3D, 0x00, 0x0F, 0x00,
+ 0xEA, 0xFF, 0x3D, 0x00, 0x0F, 0x00, 0xDB, 0xFF,
+ 0x3D, 0x00, 0x0F, 0x00, 0xCC, 0xFF, 0x3D, 0x00,
+ 0x12, 0x00, 0xBD, 0xFF, 0x52, 0x00, 0x14, 0x00,
+ 0xAE, 0xFF, 0x63, 0x00, 0x16, 0x00, 0x9F, 0xFF,
+ 0x78, 0x00, 0x18, 0x00, 0x90, 0xFF, 0x92, 0x00,
+ 0x11, 0x00, 0x07, 0x00, 0x4A, 0x00, 0x11, 0x00,
+ 0x16, 0x00, 0x4A, 0x00, 0x11, 0x00, 0x25, 0x00,
+ 0x4A, 0x00, 0x11, 0x00, 0x34, 0x00, 0x4A, 0x00,
+ 0x14, 0x00, 0x43, 0x00, 0x64, 0x00, 0x16, 0x00,
+ 0x52, 0x00, 0x79, 0x00, 0x18, 0x00, 0x61, 0x00,
+ 0x92, 0x00, 0x1A, 0x00, 0x70, 0x00, 0xB2, 0x00,
+ 0x11, 0x00, 0xF9, 0xFF, 0x4A, 0x00, 0x11, 0x00,
+ 0xEA, 0xFF, 0x4A, 0x00, 0x11, 0x00, 0xDB, 0xFF,
+ 0x4A, 0x00, 0x11, 0x00, 0xCC, 0xFF, 0x4A, 0x00,
+ 0x14, 0x00, 0xBD, 0xFF, 0x64, 0x00, 0x16, 0x00,
+ 0xAE, 0xFF, 0x79, 0x00, 0x18, 0x00, 0x9F, 0xFF,
+ 0x92, 0x00, 0x1A, 0x00, 0x90, 0xFF, 0xB2, 0x00,
+ 0x13, 0x00, 0x07, 0x00, 0x58, 0x00, 0x13, 0x00,
+ 0x16, 0x00, 0x58, 0x00, 0x13, 0x00, 0x25, 0x00,
+ 0x58, 0x00, 0x13, 0x00, 0x34, 0x00, 0x58, 0x00,
+ 0x16, 0x00, 0x43, 0x00, 0x76, 0x00, 0x18, 0x00,
+ 0x52, 0x00, 0x8F, 0x00, 0x1A, 0x00, 0x61, 0x00,
+ 0xAD, 0x00, 0x1C, 0x00, 0x70, 0x00, 0xD3, 0x00,
+ 0x13, 0x00, 0xF9, 0xFF, 0x58, 0x00, 0x13, 0x00,
+ 0xEA, 0xFF, 0x58, 0x00, 0x13, 0x00, 0xDB, 0xFF,
+ 0x58, 0x00, 0x13, 0x00, 0xCC, 0xFF, 0x58, 0x00,
+ 0x16, 0x00, 0xBD, 0xFF, 0x76, 0x00, 0x18, 0x00,
+ 0xAE, 0xFF, 0x8F, 0x00, 0x1A, 0x00, 0x9F, 0xFF,
+ 0xAD, 0x00, 0x1C, 0x00, 0x90, 0xFF, 0xD3, 0x00,
+ 0x15, 0x00, 0x07, 0x00, 0x65, 0x00, 0x15, 0x00,
+ 0x16, 0x00, 0x65, 0x00, 0x15, 0x00, 0x25, 0x00,
+ 0x65, 0x00, 0x15, 0x00, 0x34, 0x00, 0x65, 0x00,
+ 0x18, 0x00, 0x43, 0x00, 0x88, 0x00, 0x1A, 0x00,
+ 0x52, 0x00, 0xA5, 0x00, 0x1C, 0x00, 0x61, 0x00,
+ 0xC7, 0x00, 0x1E, 0x00, 0x70, 0x00, 0xF3, 0x00,
+ 0x15, 0x00, 0xF9, 0xFF, 0x65, 0x00, 0x15, 0x00,
+ 0xEA, 0xFF, 0x65, 0x00, 0x15, 0x00, 0xDB, 0xFF,
+ 0x65, 0x00, 0x15, 0x00, 0xCC, 0xFF, 0x65, 0x00,
+ 0x18, 0x00, 0xBD, 0xFF, 0x88, 0x00, 0x1A, 0x00,
+ 0xAE, 0xFF, 0xA5, 0x00, 0x1C, 0x00, 0x9F, 0xFF,
+ 0xC7, 0x00, 0x1E, 0x00, 0x90, 0xFF, 0xF3, 0x00,
+ 0x0C, 0x00, 0x07, 0x00, 0xFA, 0xFF, 0x0C, 0x00,
+ 0x16, 0x00, 0xFA, 0xFF, 0x0C, 0x00, 0x25, 0x00,
+ 0xFA, 0xFF, 0x0C, 0x00, 0x34, 0x00, 0xFA, 0xFF,
+ 0x0F, 0x00, 0x43, 0x00, 0xF7, 0xFF, 0x11, 0x00,
+ 0x52, 0x00, 0xF5, 0xFF, 0x13, 0x00, 0x61, 0x00,
+ 0xF3, 0xFF, 0x15, 0x00, 0x70, 0x00, 0xF0, 0xFF,
+ 0x0C, 0x00, 0xF9, 0xFF, 0xFA, 0xFF, 0x0C, 0x00,
+ 0xEA, 0xFF, 0xFA, 0xFF, 0x0C, 0x00, 0xDB, 0xFF,
+ 0xFA, 0xFF, 0x0C, 0x00, 0xCC, 0xFF, 0xFA, 0xFF,
+ 0x0F, 0x00, 0xBD, 0xFF, 0xF7, 0xFF, 0x11, 0x00,
+ 0xAE, 0xFF, 0xF5, 0xFF, 0x13, 0x00, 0x9F, 0xFF,
+ 0xF3, 0xFF, 0x15, 0x00, 0x90, 0xFF, 0xF0, 0xFF,
+ 0x0C, 0x00, 0x07, 0x00, 0xED, 0xFF, 0x0C, 0x00,
+ 0x16, 0x00, 0xED, 0xFF, 0x0C, 0x00, 0x25, 0x00,
+ 0xED, 0xFF, 0x0C, 0x00, 0x34, 0x00, 0xED, 0xFF,
+ 0x0F, 0x00, 0x43, 0x00, 0xE5, 0xFF, 0x11, 0x00,
+ 0x52, 0x00, 0xDF, 0xFF, 0x13, 0x00, 0x61, 0x00,
+ 0xD9, 0xFF, 0x15, 0x00, 0x70, 0x00, 0xD0, 0xFF,
+ 0x0C, 0x00, 0xF9, 0xFF, 0xED, 0xFF, 0x0C, 0x00,
+ 0xEA, 0xFF, 0xED, 0xFF, 0x0C, 0x00, 0xDB, 0xFF,
+ 0xED, 0xFF, 0x0C, 0x00, 0xCC, 0xFF, 0xED, 0xFF,
+ 0x0F, 0x00, 0xBD, 0xFF, 0xE5, 0xFF, 0x11, 0x00,
+ 0xAE, 0xFF, 0xDF, 0xFF, 0x13, 0x00, 0x9F, 0xFF,
+ 0xD9, 0xFF, 0x15, 0x00, 0x90, 0xFF, 0xD0, 0xFF,
+ 0x0C, 0x00, 0x07, 0x00, 0xDF, 0xFF, 0x0C, 0x00,
+ 0x16, 0x00, 0xDF, 0xFF, 0x0C, 0x00, 0x25, 0x00,
+ 0xDF, 0xFF, 0x0C, 0x00, 0x34, 0x00, 0xDF, 0xFF,
+ 0x0F, 0x00, 0x43, 0x00, 0xD3, 0xFF, 0x11, 0x00,
+ 0x52, 0x00, 0xC9, 0xFF, 0x13, 0x00, 0x61, 0x00,
+ 0xBE, 0xFF, 0x15, 0x00, 0x70, 0x00, 0xAF, 0xFF,
+ 0x0C, 0x00, 0xF9, 0xFF, 0xDF, 0xFF, 0x0C, 0x00,
+ 0xEA, 0xFF, 0xDF, 0xFF, 0x0C, 0x00, 0xDB, 0xFF,
+ 0xDF, 0xFF, 0x0C, 0x00, 0xCC, 0xFF, 0xDF, 0xFF,
+ 0x0F, 0x00, 0xBD, 0xFF, 0xD3, 0xFF, 0x11, 0x00,
+ 0xAE, 0xFF, 0xC9, 0xFF, 0x13, 0x00, 0x9F, 0xFF,
+ 0xBE, 0xFF, 0x15, 0x00, 0x90, 0xFF, 0xAF, 0xFF,
+ 0x0C, 0x00, 0x07, 0x00, 0xD2, 0xFF, 0x0C, 0x00,
+ 0x16, 0x00, 0xD2, 0xFF, 0x0C, 0x00, 0x25, 0x00,
+ 0xD2, 0xFF, 0x0C, 0x00, 0x34, 0x00, 0xD2, 0xFF,
+ 0x0F, 0x00, 0x43, 0x00, 0xC1, 0xFF, 0x11, 0x00,
+ 0x52, 0x00, 0xB3, 0xFF, 0x13, 0x00, 0x61, 0x00,
+ 0xA4, 0xFF, 0x15, 0x00, 0x70, 0x00, 0x8F, 0xFF,
+ 0x0C, 0x00, 0xF9, 0xFF, 0xD2, 0xFF, 0x0C, 0x00,
+ 0xEA, 0xFF, 0xD2, 0xFF, 0x0C, 0x00, 0xDB, 0xFF,
+ 0xD2, 0xFF, 0x0C, 0x00, 0xCC, 0xFF, 0xD2, 0xFF,
+ 0x0F, 0x00, 0xBD, 0xFF, 0xC1, 0xFF, 0x11, 0x00,
+ 0xAE, 0xFF, 0xB3, 0xFF, 0x13, 0x00, 0x9F, 0xFF,
+ 0xA4, 0xFF, 0x15, 0x00, 0x90, 0xFF, 0x8F, 0xFF,
+ 0x0F, 0x00, 0x07, 0x00, 0xC3, 0xFF, 0x0F, 0x00,
+ 0x16, 0x00, 0xC3, 0xFF, 0x0F, 0x00, 0x25, 0x00,
+ 0xC3, 0xFF, 0x0F, 0x00, 0x34, 0x00, 0xC3, 0xFF,
+ 0x12, 0x00, 0x43, 0x00, 0xAE, 0xFF, 0x14, 0x00,
+ 0x52, 0x00, 0x9D, 0xFF, 0x16, 0x00, 0x61, 0x00,
+ 0x88, 0xFF, 0x18, 0x00, 0x70, 0x00, 0x6E, 0xFF,
+ 0x0F, 0x00, 0xF9, 0xFF, 0xC3, 0xFF, 0x0F, 0x00,
+ 0xEA, 0xFF, 0xC3, 0xFF, 0x0F, 0x00, 0xDB, 0xFF,
+ 0xC3, 0xFF, 0x0F, 0x00, 0xCC, 0xFF, 0xC3, 0xFF,
+ 0x12, 0x00, 0xBD, 0xFF, 0xAE, 0xFF, 0x14, 0x00,
+ 0xAE, 0xFF, 0x9D, 0xFF, 0x16, 0x00, 0x9F, 0xFF,
+ 0x88, 0xFF, 0x18, 0x00, 0x90, 0xFF, 0x6E, 0xFF,
+ 0x11, 0x00, 0x07, 0x00, 0xB6, 0xFF, 0x11, 0x00,
+ 0x16, 0x00, 0xB6, 0xFF, 0x11, 0x00, 0x25, 0x00,
+ 0xB6, 0xFF, 0x11, 0x00, 0x34, 0x00, 0xB6, 0xFF,
+ 0x14, 0x00, 0x43, 0x00, 0x9C, 0xFF, 0x16, 0x00,
+ 0x52, 0x00, 0x87, 0xFF, 0x18, 0x00, 0x61, 0x00,
+ 0x6E, 0xFF, 0x1A, 0x00, 0x70, 0x00, 0x4E, 0xFF,
+ 0x11, 0x00, 0xF9, 0xFF, 0xB6, 0xFF, 0x11, 0x00,
+ 0xEA, 0xFF, 0xB6, 0xFF, 0x11, 0x00, 0xDB, 0xFF,
+ 0xB6, 0xFF, 0x11, 0x00, 0xCC, 0xFF, 0xB6, 0xFF,
+ 0x14, 0x00, 0xBD, 0xFF, 0x9C, 0xFF, 0x16, 0x00,
+ 0xAE, 0xFF, 0x87, 0xFF, 0x18, 0x00, 0x9F, 0xFF,
+ 0x6E, 0xFF, 0x1A, 0x00, 0x90, 0xFF, 0x4E, 0xFF,
+ 0x13, 0x00, 0x07, 0x00, 0xA8, 0xFF, 0x13, 0x00,
+ 0x16, 0x00, 0xA8, 0xFF, 0x13, 0x00, 0x25, 0x00,
+ 0xA8, 0xFF, 0x13, 0x00, 0x34, 0x00, 0xA8, 0xFF,
+ 0x16, 0x00, 0x43, 0x00, 0x8A, 0xFF, 0x18, 0x00,
+ 0x52, 0x00, 0x71, 0xFF, 0x1A, 0x00, 0x61, 0x00,
+ 0x53, 0xFF, 0x1C, 0x00, 0x70, 0x00, 0x2D, 0xFF,
+ 0x13, 0x00, 0xF9, 0xFF, 0xA8, 0xFF, 0x13, 0x00,
+ 0xEA, 0xFF, 0xA8, 0xFF, 0x13, 0x00, 0xDB, 0xFF,
+ 0xA8, 0xFF, 0x13, 0x00, 0xCC, 0xFF, 0xA8, 0xFF,
+ 0x16, 0x00, 0xBD, 0xFF, 0x8A, 0xFF, 0x18, 0x00,
+ 0xAE, 0xFF, 0x71, 0xFF, 0x1A, 0x00, 0x9F, 0xFF,
+ 0x53, 0xFF, 0x1C, 0x00, 0x90, 0xFF, 0x2D, 0xFF,
+ 0x15, 0x00, 0x07, 0x00, 0x9B, 0xFF, 0x15, 0x00,
+ 0x16, 0x00, 0x9B, 0xFF, 0x15, 0x00, 0x25, 0x00,
+ 0x9B, 0xFF, 0x15, 0x00, 0x34, 0x00, 0x9B, 0xFF,
+ 0x18, 0x00, 0x43, 0x00, 0x78, 0xFF, 0x1A, 0x00,
+ 0x52, 0x00, 0x5B, 0xFF, 0x1C, 0x00, 0x61, 0x00,
+ 0x39, 0xFF, 0x1E, 0x00, 0x70, 0x00, 0x0D, 0xFF,
+ 0x15, 0x00, 0xF9, 0xFF, 0x9B, 0xFF, 0x15, 0x00,
+ 0xEA, 0xFF, 0x9B, 0xFF, 0x15, 0x00, 0xDB, 0xFF,
+ 0x9B, 0xFF, 0x15, 0x00, 0xCC, 0xFF, 0x9B, 0xFF,
+ 0x18, 0x00, 0xBD, 0xFF, 0x78, 0xFF, 0x1A, 0x00,
+ 0xAE, 0xFF, 0x5B, 0xFF, 0x1C, 0x00, 0x9F, 0xFF,
+ 0x39, 0xFF, 0x1E, 0x00, 0x90, 0xFF, 0x0D, 0xFF,
+ 0x0D, 0x00, 0x08, 0x00, 0x07, 0x00, 0x0D, 0x00,
+ 0x18, 0x00, 0x07, 0x00, 0x0D, 0x00, 0x29, 0x00,
+ 0x07, 0x00, 0x0D, 0x00, 0x39, 0x00, 0x07, 0x00,
+ 0x10, 0x00, 0x4A, 0x00, 0x0A, 0x00, 0x12, 0x00,
+ 0x5A, 0x00, 0x0C, 0x00, 0x14, 0x00, 0x6B, 0x00,
+ 0x0E, 0x00, 0x16, 0x00, 0x7B, 0x00, 0x11, 0x00,
+ 0x0D, 0x00, 0xF8, 0xFF, 0x07, 0x00, 0x0D, 0x00,
+ 0xE8, 0xFF, 0x07, 0x00, 0x0D, 0x00, 0xD7, 0xFF,
+ 0x07, 0x00, 0x0D, 0x00, 0xC7, 0xFF, 0x07, 0x00,
+ 0x10, 0x00, 0xB6, 0xFF, 0x0A, 0x00, 0x12, 0x00,
+ 0xA6, 0xFF, 0x0C, 0x00, 0x14, 0x00, 0x95, 0xFF,
+ 0x0E, 0x00, 0x16, 0x00, 0x85, 0xFF, 0x11, 0x00,
+ 0x0D, 0x00, 0x08, 0x00, 0x16, 0x00, 0x0D, 0x00,
+ 0x18, 0x00, 0x16, 0x00, 0x0D, 0x00, 0x29, 0x00,
+ 0x16, 0x00, 0x0D, 0x00, 0x39, 0x00, 0x16, 0x00,
+ 0x10, 0x00, 0x4A, 0x00, 0x1E, 0x00, 0x12, 0x00,
+ 0x5A, 0x00, 0x24, 0x00, 0x14, 0x00, 0x6B, 0x00,
+ 0x2B, 0x00, 0x16, 0x00, 0x7B, 0x00, 0x34, 0x00,
+ 0x0D, 0x00, 0xF8, 0xFF, 0x16, 0x00, 0x0D, 0x00,
+ 0xE8, 0xFF, 0x16, 0x00, 0x0D, 0x00, 0xD7, 0xFF,
+ 0x16, 0x00, 0x0D, 0x00, 0xC7, 0xFF, 0x16, 0x00,
+ 0x10, 0x00, 0xB6, 0xFF, 0x1E, 0x00, 0x12, 0x00,
+ 0xA6, 0xFF, 0x24, 0x00, 0x14, 0x00, 0x95, 0xFF,
+ 0x2B, 0x00, 0x16, 0x00, 0x85, 0xFF, 0x34, 0x00,
+ 0x0D, 0x00, 0x08, 0x00, 0x25, 0x00, 0x0D, 0x00,
+ 0x18, 0x00, 0x25, 0x00, 0x0D, 0x00, 0x29, 0x00,
+ 0x25, 0x00, 0x0D, 0x00, 0x39, 0x00, 0x25, 0x00,
+ 0x10, 0x00, 0x4A, 0x00, 0x32, 0x00, 0x12, 0x00,
+ 0x5A, 0x00, 0x3C, 0x00, 0x14, 0x00, 0x6B, 0x00,
+ 0x49, 0x00, 0x16, 0x00, 0x7B, 0x00, 0x58, 0x00,
+ 0x0D, 0x00, 0xF8, 0xFF, 0x25, 0x00, 0x0D, 0x00,
+ 0xE8, 0xFF, 0x25, 0x00, 0x0D, 0x00, 0xD7, 0xFF,
+ 0x25, 0x00, 0x0D, 0x00, 0xC7, 0xFF, 0x25, 0x00,
+ 0x10, 0x00, 0xB6, 0xFF, 0x32, 0x00, 0x12, 0x00,
+ 0xA6, 0xFF, 0x3C, 0x00, 0x14, 0x00, 0x95, 0xFF,
+ 0x49, 0x00, 0x16, 0x00, 0x85, 0xFF, 0x58, 0x00,
+ 0x0D, 0x00, 0x08, 0x00, 0x34, 0x00, 0x0D, 0x00,
+ 0x18, 0x00, 0x34, 0x00, 0x0D, 0x00, 0x29, 0x00,
+ 0x34, 0x00, 0x0D, 0x00, 0x39, 0x00, 0x34, 0x00,
+ 0x10, 0x00, 0x4A, 0x00, 0x46, 0x00, 0x12, 0x00,
+ 0x5A, 0x00, 0x54, 0x00, 0x14, 0x00, 0x6B, 0x00,
+ 0x66, 0x00, 0x16, 0x00, 0x7B, 0x00, 0x7B, 0x00,
+ 0x0D, 0x00, 0xF8, 0xFF, 0x34, 0x00, 0x0D, 0x00,
+ 0xE8, 0xFF, 0x34, 0x00, 0x0D, 0x00, 0xD7, 0xFF,
+ 0x34, 0x00, 0x0D, 0x00, 0xC7, 0xFF, 0x34, 0x00,
+ 0x10, 0x00, 0xB6, 0xFF, 0x46, 0x00, 0x12, 0x00,
+ 0xA6, 0xFF, 0x54, 0x00, 0x14, 0x00, 0x95, 0xFF,
+ 0x66, 0x00, 0x16, 0x00, 0x85, 0xFF, 0x7B, 0x00,
+ 0x10, 0x00, 0x08, 0x00, 0x43, 0x00, 0x10, 0x00,
+ 0x18, 0x00, 0x43, 0x00, 0x10, 0x00, 0x29, 0x00,
+ 0x43, 0x00, 0x10, 0x00, 0x39, 0x00, 0x43, 0x00,
+ 0x13, 0x00, 0x4A, 0x00, 0x5A, 0x00, 0x15, 0x00,
+ 0x5A, 0x00, 0x6D, 0x00, 0x17, 0x00, 0x6B, 0x00,
+ 0x84, 0x00, 0x19, 0x00, 0x7B, 0x00, 0xA0, 0x00,
+ 0x10, 0x00, 0xF8, 0xFF, 0x43, 0x00, 0x10, 0x00,
+ 0xE8, 0xFF, 0x43, 0x00, 0x10, 0x00, 0xD7, 0xFF,
+ 0x43, 0x00, 0x10, 0x00, 0xC7, 0xFF, 0x43, 0x00,
+ 0x13, 0x00, 0xB6, 0xFF, 0x5A, 0x00, 0x15, 0x00,
+ 0xA6, 0xFF, 0x6D, 0x00, 0x17, 0x00, 0x95, 0xFF,
+ 0x84, 0x00, 0x19, 0x00, 0x85, 0xFF, 0xA0, 0x00,
+ 0x12, 0x00, 0x08, 0x00, 0x52, 0x00, 0x12, 0x00,
+ 0x18, 0x00, 0x52, 0x00, 0x12, 0x00, 0x29, 0x00,
+ 0x52, 0x00, 0x12, 0x00, 0x39, 0x00, 0x52, 0x00,
+ 0x15, 0x00, 0x4A, 0x00, 0x6E, 0x00, 0x17, 0x00,
+ 0x5A, 0x00, 0x85, 0x00, 0x19, 0x00, 0x6B, 0x00,
+ 0xA1, 0x00, 0x1B, 0x00, 0x7B, 0x00, 0xC3, 0x00,
+ 0x12, 0x00, 0xF8, 0xFF, 0x52, 0x00, 0x12, 0x00,
+ 0xE8, 0xFF, 0x52, 0x00, 0x12, 0x00, 0xD7, 0xFF,
+ 0x52, 0x00, 0x12, 0x00, 0xC7, 0xFF, 0x52, 0x00,
+ 0x15, 0x00, 0xB6, 0xFF, 0x6E, 0x00, 0x17, 0x00,
+ 0xA6, 0xFF, 0x85, 0x00, 0x19, 0x00, 0x95, 0xFF,
+ 0xA1, 0x00, 0x1B, 0x00, 0x85, 0xFF, 0xC3, 0x00,
+ 0x14, 0x00, 0x08, 0x00, 0x61, 0x00, 0x14, 0x00,
+ 0x18, 0x00, 0x61, 0x00, 0x14, 0x00, 0x29, 0x00,
+ 0x61, 0x00, 0x14, 0x00, 0x39, 0x00, 0x61, 0x00,
+ 0x17, 0x00, 0x4A, 0x00, 0x82, 0x00, 0x19, 0x00,
+ 0x5A, 0x00, 0x9D, 0x00, 0x1B, 0x00, 0x6B, 0x00,
+ 0xBF, 0x00, 0x1D, 0x00, 0x7B, 0x00, 0xE7, 0x00,
+ 0x14, 0x00, 0xF8, 0xFF, 0x61, 0x00, 0x14, 0x00,
+ 0xE8, 0xFF, 0x61, 0x00, 0x14, 0x00, 0xD7, 0xFF,
+ 0x61, 0x00, 0x14, 0x00, 0xC7, 0xFF, 0x61, 0x00,
+ 0x17, 0x00, 0xB6, 0xFF, 0x82, 0x00, 0x19, 0x00,
+ 0xA6, 0xFF, 0x9D, 0x00, 0x1B, 0x00, 0x95, 0xFF,
+ 0xBF, 0x00, 0x1D, 0x00, 0x85, 0xFF, 0xE7, 0x00,
+ 0x16, 0x00, 0x08, 0x00, 0x70, 0x00, 0x16, 0x00,
+ 0x18, 0x00, 0x70, 0x00, 0x16, 0x00, 0x29, 0x00,
+ 0x70, 0x00, 0x16, 0x00, 0x39, 0x00, 0x70, 0x00,
+ 0x19, 0x00, 0x4A, 0x00, 0x96, 0x00, 0x1B, 0x00,
+ 0x5A, 0x00, 0xB5, 0x00, 0x1D, 0x00, 0x6B, 0x00,
+ 0xDC, 0x00, 0x1F, 0x00, 0x7B, 0x00, 0x0A, 0x01,
+ 0x16, 0x00, 0xF8, 0xFF, 0x70, 0x00, 0x16, 0x00,
+ 0xE8, 0xFF, 0x70, 0x00, 0x16, 0x00, 0xD7, 0xFF,
+ 0x70, 0x00, 0x16, 0x00, 0xC7, 0xFF, 0x70, 0x00,
+ 0x19, 0x00, 0xB6, 0xFF, 0x96, 0x00, 0x1B, 0x00,
+ 0xA6, 0xFF, 0xB5, 0x00, 0x1D, 0x00, 0x95, 0xFF,
+ 0xDC, 0x00, 0x1F, 0x00, 0x85, 0xFF, 0x0A, 0x01,
+ 0x0D, 0x00, 0x08, 0x00, 0xF9, 0xFF, 0x0D, 0x00,
+ 0x18, 0x00, 0xF9, 0xFF, 0x0D, 0x00, 0x29, 0x00,
+ 0xF9, 0xFF, 0x0D, 0x00, 0x39, 0x00, 0xF9, 0xFF,
+ 0x10, 0x00, 0x4A, 0x00, 0xF6, 0xFF, 0x12, 0x00,
+ 0x5A, 0x00, 0xF4, 0xFF, 0x14, 0x00, 0x6B, 0x00,
+ 0xF2, 0xFF, 0x16, 0x00, 0x7B, 0x00, 0xEF, 0xFF,
+ 0x0D, 0x00, 0xF8, 0xFF, 0xF9, 0xFF, 0x0D, 0x00,
+ 0xE8, 0xFF, 0xF9, 0xFF, 0x0D, 0x00, 0xD7, 0xFF,
+ 0xF9, 0xFF, 0x0D, 0x00, 0xC7, 0xFF, 0xF9, 0xFF,
+ 0x10, 0x00, 0xB6, 0xFF, 0xF6, 0xFF, 0x12, 0x00,
+ 0xA6, 0xFF, 0xF4, 0xFF, 0x14, 0x00, 0x95, 0xFF,
+ 0xF2, 0xFF, 0x16, 0x00, 0x85, 0xFF, 0xEF, 0xFF,
+ 0x0D, 0x00, 0x08, 0x00, 0xEA, 0xFF, 0x0D, 0x00,
+ 0x18, 0x00, 0xEA, 0xFF, 0x0D, 0x00, 0x29, 0x00,
+ 0xEA, 0xFF, 0x0D, 0x00, 0x39, 0x00, 0xEA, 0xFF,
+ 0x10, 0x00, 0x4A, 0x00, 0xE2, 0xFF, 0x12, 0x00,
+ 0x5A, 0x00, 0xDC, 0xFF, 0x14, 0x00, 0x6B, 0x00,
+ 0xD5, 0xFF, 0x16, 0x00, 0x7B, 0x00, 0xCC, 0xFF,
+ 0x0D, 0x00, 0xF8, 0xFF, 0xEA, 0xFF, 0x0D, 0x00,
+ 0xE8, 0xFF, 0xEA, 0xFF, 0x0D, 0x00, 0xD7, 0xFF,
+ 0xEA, 0xFF, 0x0D, 0x00, 0xC7, 0xFF, 0xEA, 0xFF,
+ 0x10, 0x00, 0xB6, 0xFF, 0xE2, 0xFF, 0x12, 0x00,
+ 0xA6, 0xFF, 0xDC, 0xFF, 0x14, 0x00, 0x95, 0xFF,
+ 0xD5, 0xFF, 0x16, 0x00, 0x85, 0xFF, 0xCC, 0xFF,
+ 0x0D, 0x00, 0x08, 0x00, 0xDB, 0xFF, 0x0D, 0x00,
+ 0x18, 0x00, 0xDB, 0xFF, 0x0D, 0x00, 0x29, 0x00,
+ 0xDB, 0xFF, 0x0D, 0x00, 0x39, 0x00, 0xDB, 0xFF,
+ 0x10, 0x00, 0x4A, 0x00, 0xCE, 0xFF, 0x12, 0x00,
+ 0x5A, 0x00, 0xC4, 0xFF, 0x14, 0x00, 0x6B, 0x00,
+ 0xB7, 0xFF, 0x16, 0x00, 0x7B, 0x00, 0xA8, 0xFF,
+ 0x0D, 0x00, 0xF8, 0xFF, 0xDB, 0xFF, 0x0D, 0x00,
+ 0xE8, 0xFF, 0xDB, 0xFF, 0x0D, 0x00, 0xD7, 0xFF,
+ 0xDB, 0xFF, 0x0D, 0x00, 0xC7, 0xFF, 0xDB, 0xFF,
+ 0x10, 0x00, 0xB6, 0xFF, 0xCE, 0xFF, 0x12, 0x00,
+ 0xA6, 0xFF, 0xC4, 0xFF, 0x14, 0x00, 0x95, 0xFF,
+ 0xB7, 0xFF, 0x16, 0x00, 0x85, 0xFF, 0xA8, 0xFF,
+ 0x0D, 0x00, 0x08, 0x00, 0xCC, 0xFF, 0x0D, 0x00,
+ 0x18, 0x00, 0xCC, 0xFF, 0x0D, 0x00, 0x29, 0x00,
+ 0xCC, 0xFF, 0x0D, 0x00, 0x39, 0x00, 0xCC, 0xFF,
+ 0x10, 0x00, 0x4A, 0x00, 0xBA, 0xFF, 0x12, 0x00,
+ 0x5A, 0x00, 0xAC, 0xFF, 0x14, 0x00, 0x6B, 0x00,
+ 0x9A, 0xFF, 0x16, 0x00, 0x7B, 0x00, 0x85, 0xFF,
+ 0x0D, 0x00, 0xF8, 0xFF, 0xCC, 0xFF, 0x0D, 0x00,
+ 0xE8, 0xFF, 0xCC, 0xFF, 0x0D, 0x00, 0xD7, 0xFF,
+ 0xCC, 0xFF, 0x0D, 0x00, 0xC7, 0xFF, 0xCC, 0xFF,
+ 0x10, 0x00, 0xB6, 0xFF, 0xBA, 0xFF, 0x12, 0x00,
+ 0xA6, 0xFF, 0xAC, 0xFF, 0x14, 0x00, 0x95, 0xFF,
+ 0x9A, 0xFF, 0x16, 0x00, 0x85, 0xFF, 0x85, 0xFF,
+ 0x10, 0x00, 0x08, 0x00, 0xBD, 0xFF, 0x10, 0x00,
+ 0x18, 0x00, 0xBD, 0xFF, 0x10, 0x00, 0x29, 0x00,
+ 0xBD, 0xFF, 0x10, 0x00, 0x39, 0x00, 0xBD, 0xFF,
+ 0x13, 0x00, 0x4A, 0x00, 0xA6, 0xFF, 0x15, 0x00,
+ 0x5A, 0x00, 0x93, 0xFF, 0x17, 0x00, 0x6B, 0x00,
+ 0x7C, 0xFF, 0x19, 0x00, 0x7B, 0x00, 0x60, 0xFF,
+ 0x10, 0x00, 0xF8, 0xFF, 0xBD, 0xFF, 0x10, 0x00,
+ 0xE8, 0xFF, 0xBD, 0xFF, 0x10, 0x00, 0xD7, 0xFF,
+ 0xBD, 0xFF, 0x10, 0x00, 0xC7, 0xFF, 0xBD, 0xFF,
+ 0x13, 0x00, 0xB6, 0xFF, 0xA6, 0xFF, 0x15, 0x00,
+ 0xA6, 0xFF, 0x93, 0xFF, 0x17, 0x00, 0x95, 0xFF,
+ 0x7C, 0xFF, 0x19, 0x00, 0x85, 0xFF, 0x60, 0xFF,
+ 0x12, 0x00, 0x08, 0x00, 0xAE, 0xFF, 0x12, 0x00,
+ 0x18, 0x00, 0xAE, 0xFF, 0x12, 0x00, 0x29, 0x00,
+ 0xAE, 0xFF, 0x12, 0x00, 0x39, 0x00, 0xAE, 0xFF,
+ 0x15, 0x00, 0x4A, 0x00, 0x92, 0xFF, 0x17, 0x00,
+ 0x5A, 0x00, 0x7B, 0xFF, 0x19, 0x00, 0x6B, 0x00,
+ 0x5F, 0xFF, 0x1B, 0x00, 0x7B, 0x00, 0x3D, 0xFF,
+ 0x12, 0x00, 0xF8, 0xFF, 0xAE, 0xFF, 0x12, 0x00,
+ 0xE8, 0xFF, 0xAE, 0xFF, 0x12, 0x00, 0xD7, 0xFF,
+ 0xAE, 0xFF, 0x12, 0x00, 0xC7, 0xFF, 0xAE, 0xFF,
+ 0x15, 0x00, 0xB6, 0xFF, 0x92, 0xFF, 0x17, 0x00,
+ 0xA6, 0xFF, 0x7B, 0xFF, 0x19, 0x00, 0x95, 0xFF,
+ 0x5F, 0xFF, 0x1B, 0x00, 0x85, 0xFF, 0x3D, 0xFF,
+ 0x14, 0x00, 0x08, 0x00, 0x9F, 0xFF, 0x14, 0x00,
+ 0x18, 0x00, 0x9F, 0xFF, 0x14, 0x00, 0x29, 0x00,
+ 0x9F, 0xFF, 0x14, 0x00, 0x39, 0x00, 0x9F, 0xFF,
+ 0x17, 0x00, 0x4A, 0x00, 0x7E, 0xFF, 0x19, 0x00,
+ 0x5A, 0x00, 0x63, 0xFF, 0x1B, 0x00, 0x6B, 0x00,
+ 0x41, 0xFF, 0x1D, 0x00, 0x7B, 0x00, 0x19, 0xFF,
+ 0x14, 0x00, 0xF8, 0xFF, 0x9F, 0xFF, 0x14, 0x00,
+ 0xE8, 0xFF, 0x9F, 0xFF, 0x14, 0x00, 0xD7, 0xFF,
+ 0x9F, 0xFF, 0x14, 0x00, 0xC7, 0xFF, 0x9F, 0xFF,
+ 0x17, 0x00, 0xB6, 0xFF, 0x7E, 0xFF, 0x19, 0x00,
+ 0xA6, 0xFF, 0x63, 0xFF, 0x1B, 0x00, 0x95, 0xFF,
+ 0x41, 0xFF, 0x1D, 0x00, 0x85, 0xFF, 0x19, 0xFF,
+ 0x16, 0x00, 0x08, 0x00, 0x90, 0xFF, 0x16, 0x00,
+ 0x18, 0x00, 0x90, 0xFF, 0x16, 0x00, 0x29, 0x00,
+ 0x90, 0xFF, 0x16, 0x00, 0x39, 0x00, 0x90, 0xFF,
+ 0x19, 0x00, 0x4A, 0x00, 0x6A, 0xFF, 0x1B, 0x00,
+ 0x5A, 0x00, 0x4B, 0xFF, 0x1D, 0x00, 0x6B, 0x00,
+ 0x24, 0xFF, 0x1F, 0x00, 0x7B, 0x00, 0xF6, 0xFE,
+ 0x16, 0x00, 0xF8, 0xFF, 0x90, 0xFF, 0x16, 0x00,
+ 0xE8, 0xFF, 0x90, 0xFF, 0x16, 0x00, 0xD7, 0xFF,
+ 0x90, 0xFF, 0x16, 0x00, 0xC7, 0xFF, 0x90, 0xFF,
+ 0x19, 0x00, 0xB6, 0xFF, 0x6A, 0xFF, 0x1B, 0x00,
+ 0xA6, 0xFF, 0x4B, 0xFF, 0x1D, 0x00, 0x95, 0xFF,
+ 0x24, 0xFF, 0x1F, 0x00, 0x85, 0xFF, 0xF6, 0xFE,
+ 0x0E, 0x00, 0x09, 0x00, 0x08, 0x00, 0x0E, 0x00,
+ 0x1B, 0x00, 0x08, 0x00, 0x0E, 0x00, 0x2D, 0x00,
+ 0x08, 0x00, 0x0E, 0x00, 0x3F, 0x00, 0x08, 0x00,
+ 0x11, 0x00, 0x52, 0x00, 0x0B, 0x00, 0x13, 0x00,
+ 0x64, 0x00, 0x0D, 0x00, 0x15, 0x00, 0x76, 0x00,
+ 0x10, 0x00, 0x17, 0x00, 0x88, 0x00, 0x13, 0x00,
+ 0x0E, 0x00, 0xF7, 0xFF, 0x08, 0x00, 0x0E, 0x00,
+ 0xE5, 0xFF, 0x08, 0x00, 0x0E, 0x00, 0xD3, 0xFF,
+ 0x08, 0x00, 0x0E, 0x00, 0xC1, 0xFF, 0x08, 0x00,
+ 0x11, 0x00, 0xAE, 0xFF, 0x0B, 0x00, 0x13, 0x00,
+ 0x9C, 0xFF, 0x0D, 0x00, 0x15, 0x00, 0x8A, 0xFF,
+ 0x10, 0x00, 0x17, 0x00, 0x78, 0xFF, 0x13, 0x00,
+ 0x0E, 0x00, 0x09, 0x00, 0x18, 0x00, 0x0E, 0x00,
+ 0x1B, 0x00, 0x18, 0x00, 0x0E, 0x00, 0x2D, 0x00,
+ 0x18, 0x00, 0x0E, 0x00, 0x3F, 0x00, 0x18, 0x00,
+ 0x11, 0x00, 0x52, 0x00, 0x21, 0x00, 0x13, 0x00,
+ 0x64, 0x00, 0x27, 0x00, 0x15, 0x00, 0x76, 0x00,
+ 0x30, 0x00, 0x17, 0x00, 0x88, 0x00, 0x3A, 0x00,
+ 0x0E, 0x00, 0xF7, 0xFF, 0x18, 0x00, 0x0E, 0x00,
+ 0xE5, 0xFF, 0x18, 0x00, 0x0E, 0x00, 0xD3, 0xFF,
+ 0x18, 0x00, 0x0E, 0x00, 0xC1, 0xFF, 0x18, 0x00,
+ 0x11, 0x00, 0xAE, 0xFF, 0x21, 0x00, 0x13, 0x00,
+ 0x9C, 0xFF, 0x27, 0x00, 0x15, 0x00, 0x8A, 0xFF,
+ 0x30, 0x00, 0x17, 0x00, 0x78, 0xFF, 0x3A, 0x00,
+ 0x0E, 0x00, 0x09, 0x00, 0x29, 0x00, 0x0E, 0x00,
+ 0x1B, 0x00, 0x29, 0x00, 0x0E, 0x00, 0x2D, 0x00,
+ 0x29, 0x00, 0x0E, 0x00, 0x3F, 0x00, 0x29, 0x00,
+ 0x11, 0x00, 0x52, 0x00, 0x37, 0x00, 0x13, 0x00,
+ 0x64, 0x00, 0x42, 0x00, 0x15, 0x00, 0x76, 0x00,
+ 0x51, 0x00, 0x17, 0x00, 0x88, 0x00, 0x61, 0x00,
+ 0x0E, 0x00, 0xF7, 0xFF, 0x29, 0x00, 0x0E, 0x00,
+ 0xE5, 0xFF, 0x29, 0x00, 0x0E, 0x00, 0xD3, 0xFF,
+ 0x29, 0x00, 0x0E, 0x00, 0xC1, 0xFF, 0x29, 0x00,
+ 0x11, 0x00, 0xAE, 0xFF, 0x37, 0x00, 0x13, 0x00,
+ 0x9C, 0xFF, 0x42, 0x00, 0x15, 0x00, 0x8A, 0xFF,
+ 0x51, 0x00, 0x17, 0x00, 0x78, 0xFF, 0x61, 0x00,
+ 0x0E, 0x00, 0x09, 0x00, 0x39, 0x00, 0x0E, 0x00,
+ 0x1B, 0x00, 0x39, 0x00, 0x0E, 0x00, 0x2D, 0x00,
+ 0x39, 0x00, 0x0E, 0x00, 0x3F, 0x00, 0x39, 0x00,
+ 0x11, 0x00, 0x52, 0x00, 0x4D, 0x00, 0x13, 0x00,
+ 0x64, 0x00, 0x5C, 0x00, 0x15, 0x00, 0x76, 0x00,
+ 0x71, 0x00, 0x17, 0x00, 0x88, 0x00, 0x88, 0x00,
+ 0x0E, 0x00, 0xF7, 0xFF, 0x39, 0x00, 0x0E, 0x00,
+ 0xE5, 0xFF, 0x39, 0x00, 0x0E, 0x00, 0xD3, 0xFF,
+ 0x39, 0x00, 0x0E, 0x00, 0xC1, 0xFF, 0x39, 0x00,
+ 0x11, 0x00, 0xAE, 0xFF, 0x4D, 0x00, 0x13, 0x00,
+ 0x9C, 0xFF, 0x5C, 0x00, 0x15, 0x00, 0x8A, 0xFF,
+ 0x71, 0x00, 0x17, 0x00, 0x78, 0xFF, 0x88, 0x00,
+ 0x11, 0x00, 0x09, 0x00, 0x4A, 0x00, 0x11, 0x00,
+ 0x1B, 0x00, 0x4A, 0x00, 0x11, 0x00, 0x2D, 0x00,
+ 0x4A, 0x00, 0x11, 0x00, 0x3F, 0x00, 0x4A, 0x00,
+ 0x14, 0x00, 0x52, 0x00, 0x63, 0x00, 0x16, 0x00,
+ 0x64, 0x00, 0x78, 0x00, 0x18, 0x00, 0x76, 0x00,
+ 0x92, 0x00, 0x1A, 0x00, 0x88, 0x00, 0xB0, 0x00,
+ 0x11, 0x00, 0xF7, 0xFF, 0x4A, 0x00, 0x11, 0x00,
+ 0xE5, 0xFF, 0x4A, 0x00, 0x11, 0x00, 0xD3, 0xFF,
+ 0x4A, 0x00, 0x11, 0x00, 0xC1, 0xFF, 0x4A, 0x00,
+ 0x14, 0x00, 0xAE, 0xFF, 0x63, 0x00, 0x16, 0x00,
+ 0x9C, 0xFF, 0x78, 0x00, 0x18, 0x00, 0x8A, 0xFF,
+ 0x92, 0x00, 0x1A, 0x00, 0x78, 0xFF, 0xB0, 0x00,
+ 0x13, 0x00, 0x09, 0x00, 0x5A, 0x00, 0x13, 0x00,
+ 0x1B, 0x00, 0x5A, 0x00, 0x13, 0x00, 0x2D, 0x00,
+ 0x5A, 0x00, 0x13, 0x00, 0x3F, 0x00, 0x5A, 0x00,
+ 0x16, 0x00, 0x52, 0x00, 0x79, 0x00, 0x18, 0x00,
+ 0x64, 0x00, 0x92, 0x00, 0x1A, 0x00, 0x76, 0x00,
+ 0xB2, 0x00, 0x1C, 0x00, 0x88, 0x00, 0xD7, 0x00,
+ 0x13, 0x00, 0xF7, 0xFF, 0x5A, 0x00, 0x13, 0x00,
+ 0xE5, 0xFF, 0x5A, 0x00, 0x13, 0x00, 0xD3, 0xFF,
+ 0x5A, 0x00, 0x13, 0x00, 0xC1, 0xFF, 0x5A, 0x00,
+ 0x16, 0x00, 0xAE, 0xFF, 0x79, 0x00, 0x18, 0x00,
+ 0x9C, 0xFF, 0x92, 0x00, 0x1A, 0x00, 0x8A, 0xFF,
+ 0xB2, 0x00, 0x1C, 0x00, 0x78, 0xFF, 0xD7, 0x00,
+ 0x15, 0x00, 0x09, 0x00, 0x6B, 0x00, 0x15, 0x00,
+ 0x1B, 0x00, 0x6B, 0x00, 0x15, 0x00, 0x2D, 0x00,
+ 0x6B, 0x00, 0x15, 0x00, 0x3F, 0x00, 0x6B, 0x00,
+ 0x18, 0x00, 0x52, 0x00, 0x8F, 0x00, 0x1A, 0x00,
+ 0x64, 0x00, 0xAD, 0x00, 0x1C, 0x00, 0x76, 0x00,
+ 0xD3, 0x00, 0x1E, 0x00, 0x88, 0x00, 0xFE, 0x00,
+ 0x15, 0x00, 0xF7, 0xFF, 0x6B, 0x00, 0x15, 0x00,
+ 0xE5, 0xFF, 0x6B, 0x00, 0x15, 0x00, 0xD3, 0xFF,
+ 0x6B, 0x00, 0x15, 0x00, 0xC1, 0xFF, 0x6B, 0x00,
+ 0x18, 0x00, 0xAE, 0xFF, 0x8F, 0x00, 0x1A, 0x00,
+ 0x9C, 0xFF, 0xAD, 0x00, 0x1C, 0x00, 0x8A, 0xFF,
+ 0xD3, 0x00, 0x1E, 0x00, 0x78, 0xFF, 0xFE, 0x00,
+ 0x17, 0x00, 0x09, 0x00, 0x7B, 0x00, 0x17, 0x00,
+ 0x1B, 0x00, 0x7B, 0x00, 0x17, 0x00, 0x2D, 0x00,
+ 0x7B, 0x00, 0x17, 0x00, 0x3F, 0x00, 0x7B, 0x00,
+ 0x1A, 0x00, 0x52, 0x00, 0xA5, 0x00, 0x1C, 0x00,
+ 0x64, 0x00, 0xC7, 0x00, 0x1E, 0x00, 0x76, 0x00,
+ 0xF3, 0x00, 0x20, 0x00, 0x88, 0x00, 0x25, 0x01,
+ 0x17, 0x00, 0xF7, 0xFF, 0x7B, 0x00, 0x17, 0x00,
+ 0xE5, 0xFF, 0x7B, 0x00, 0x17, 0x00, 0xD3, 0xFF,
+ 0x7B, 0x00, 0x17, 0x00, 0xC1, 0xFF, 0x7B, 0x00,
+ 0x1A, 0x00, 0xAE, 0xFF, 0xA5, 0x00, 0x1C, 0x00,
+ 0x9C, 0xFF, 0xC7, 0x00, 0x1E, 0x00, 0x8A, 0xFF,
+ 0xF3, 0x00, 0x20, 0x00, 0x78, 0xFF, 0x25, 0x01,
+ 0x0E, 0x00, 0x09, 0x00, 0xF8, 0xFF, 0x0E, 0x00,
+ 0x1B, 0x00, 0xF8, 0xFF, 0x0E, 0x00, 0x2D, 0x00,
+ 0xF8, 0xFF, 0x0E, 0x00, 0x3F, 0x00, 0xF8, 0xFF,
+ 0x11, 0x00, 0x52, 0x00, 0xF5, 0xFF, 0x13, 0x00,
+ 0x64, 0x00, 0xF3, 0xFF, 0x15, 0x00, 0x76, 0x00,
+ 0xF0, 0xFF, 0x17, 0x00, 0x88, 0x00, 0xED, 0xFF,
+ 0x0E, 0x00, 0xF7, 0xFF, 0xF8, 0xFF, 0x0E, 0x00,
+ 0xE5, 0xFF, 0xF8, 0xFF, 0x0E, 0x00, 0xD3, 0xFF,
+ 0xF8, 0xFF, 0x0E, 0x00, 0xC1, 0xFF, 0xF8, 0xFF,
+ 0x11, 0x00, 0xAE, 0xFF, 0xF5, 0xFF, 0x13, 0x00,
+ 0x9C, 0xFF, 0xF3, 0xFF, 0x15, 0x00, 0x8A, 0xFF,
+ 0xF0, 0xFF, 0x17, 0x00, 0x78, 0xFF, 0xED, 0xFF,
+ 0x0E, 0x00, 0x09, 0x00, 0xE8, 0xFF, 0x0E, 0x00,
+ 0x1B, 0x00, 0xE8, 0xFF, 0x0E, 0x00, 0x2D, 0x00,
+ 0xE8, 0xFF, 0x0E, 0x00, 0x3F, 0x00, 0xE8, 0xFF,
+ 0x11, 0x00, 0x52, 0x00, 0xDF, 0xFF, 0x13, 0x00,
+ 0x64, 0x00, 0xD9, 0xFF, 0x15, 0x00, 0x76, 0x00,
+ 0xD0, 0xFF, 0x17, 0x00, 0x88, 0x00, 0xC6, 0xFF,
+ 0x0E, 0x00, 0xF7, 0xFF, 0xE8, 0xFF, 0x0E, 0x00,
+ 0xE5, 0xFF, 0xE8, 0xFF, 0x0E, 0x00, 0xD3, 0xFF,
+ 0xE8, 0xFF, 0x0E, 0x00, 0xC1, 0xFF, 0xE8, 0xFF,
+ 0x11, 0x00, 0xAE, 0xFF, 0xDF, 0xFF, 0x13, 0x00,
+ 0x9C, 0xFF, 0xD9, 0xFF, 0x15, 0x00, 0x8A, 0xFF,
+ 0xD0, 0xFF, 0x17, 0x00, 0x78, 0xFF, 0xC6, 0xFF,
+ 0x0E, 0x00, 0x09, 0x00, 0xD7, 0xFF, 0x0E, 0x00,
+ 0x1B, 0x00, 0xD7, 0xFF, 0x0E, 0x00, 0x2D, 0x00,
+ 0xD7, 0xFF, 0x0E, 0x00, 0x3F, 0x00, 0xD7, 0xFF,
+ 0x11, 0x00, 0x52, 0x00, 0xC9, 0xFF, 0x13, 0x00,
+ 0x64, 0x00, 0xBE, 0xFF, 0x15, 0x00, 0x76, 0x00,
+ 0xAF, 0xFF, 0x17, 0x00, 0x88, 0x00, 0x9F, 0xFF,
+ 0x0E, 0x00, 0xF7, 0xFF, 0xD7, 0xFF, 0x0E, 0x00,
+ 0xE5, 0xFF, 0xD7, 0xFF, 0x0E, 0x00, 0xD3, 0xFF,
+ 0xD7, 0xFF, 0x0E, 0x00, 0xC1, 0xFF, 0xD7, 0xFF,
+ 0x11, 0x00, 0xAE, 0xFF, 0xC9, 0xFF, 0x13, 0x00,
+ 0x9C, 0xFF, 0xBE, 0xFF, 0x15, 0x00, 0x8A, 0xFF,
+ 0xAF, 0xFF, 0x17, 0x00, 0x78, 0xFF, 0x9F, 0xFF,
+ 0x0E, 0x00, 0x09, 0x00, 0xC7, 0xFF, 0x0E, 0x00,
+ 0x1B, 0x00, 0xC7, 0xFF, 0x0E, 0x00, 0x2D, 0x00,
+ 0xC7, 0xFF, 0x0E, 0x00, 0x3F, 0x00, 0xC7, 0xFF,
+ 0x11, 0x00, 0x52, 0x00, 0xB3, 0xFF, 0x13, 0x00,
+ 0x64, 0x00, 0xA4, 0xFF, 0x15, 0x00, 0x76, 0x00,
+ 0x8F, 0xFF, 0x17, 0x00, 0x88, 0x00, 0x78, 0xFF,
+ 0x0E, 0x00, 0xF7, 0xFF, 0xC7, 0xFF, 0x0E, 0x00,
+ 0xE5, 0xFF, 0xC7, 0xFF, 0x0E, 0x00, 0xD3, 0xFF,
+ 0xC7, 0xFF, 0x0E, 0x00, 0xC1, 0xFF, 0xC7, 0xFF,
+ 0x11, 0x00, 0xAE, 0xFF, 0xB3, 0xFF, 0x13, 0x00,
+ 0x9C, 0xFF, 0xA4, 0xFF, 0x15, 0x00, 0x8A, 0xFF,
+ 0x8F, 0xFF, 0x17, 0x00, 0x78, 0xFF, 0x78, 0xFF,
+ 0x11, 0x00, 0x09, 0x00, 0xB6, 0xFF, 0x11, 0x00,
+ 0x1B, 0x00, 0xB6, 0xFF, 0x11, 0x00, 0x2D, 0x00,
+ 0xB6, 0xFF, 0x11, 0x00, 0x3F, 0x00, 0xB6, 0xFF,
+ 0x14, 0x00, 0x52, 0x00, 0x9D, 0xFF, 0x16, 0x00,
+ 0x64, 0x00, 0x88, 0xFF, 0x18, 0x00, 0x76, 0x00,
+ 0x6E, 0xFF, 0x1A, 0x00, 0x88, 0x00, 0x50, 0xFF,
+ 0x11, 0x00, 0xF7, 0xFF, 0xB6, 0xFF, 0x11, 0x00,
+ 0xE5, 0xFF, 0xB6, 0xFF, 0x11, 0x00, 0xD3, 0xFF,
+ 0xB6, 0xFF, 0x11, 0x00, 0xC1, 0xFF, 0xB6, 0xFF,
+ 0x14, 0x00, 0xAE, 0xFF, 0x9D, 0xFF, 0x16, 0x00,
+ 0x9C, 0xFF, 0x88, 0xFF, 0x18, 0x00, 0x8A, 0xFF,
+ 0x6E, 0xFF, 0x1A, 0x00, 0x78, 0xFF, 0x50, 0xFF,
+ 0x13, 0x00, 0x09, 0x00, 0xA6, 0xFF, 0x13, 0x00,
+ 0x1B, 0x00, 0xA6, 0xFF, 0x13, 0x00, 0x2D, 0x00,
+ 0xA6, 0xFF, 0x13, 0x00, 0x3F, 0x00, 0xA6, 0xFF,
+ 0x16, 0x00, 0x52, 0x00, 0x87, 0xFF, 0x18, 0x00,
+ 0x64, 0x00, 0x6E, 0xFF, 0x1A, 0x00, 0x76, 0x00,
+ 0x4E, 0xFF, 0x1C, 0x00, 0x88, 0x00, 0x29, 0xFF,
+ 0x13, 0x00, 0xF7, 0xFF, 0xA6, 0xFF, 0x13, 0x00,
+ 0xE5, 0xFF, 0xA6, 0xFF, 0x13, 0x00, 0xD3, 0xFF,
+ 0xA6, 0xFF, 0x13, 0x00, 0xC1, 0xFF, 0xA6, 0xFF,
+ 0x16, 0x00, 0xAE, 0xFF, 0x87, 0xFF, 0x18, 0x00,
+ 0x9C, 0xFF, 0x6E, 0xFF, 0x1A, 0x00, 0x8A, 0xFF,
+ 0x4E, 0xFF, 0x1C, 0x00, 0x78, 0xFF, 0x29, 0xFF,
+ 0x15, 0x00, 0x09, 0x00, 0x95, 0xFF, 0x15, 0x00,
+ 0x1B, 0x00, 0x95, 0xFF, 0x15, 0x00, 0x2D, 0x00,
+ 0x95, 0xFF, 0x15, 0x00, 0x3F, 0x00, 0x95, 0xFF,
+ 0x18, 0x00, 0x52, 0x00, 0x71, 0xFF, 0x1A, 0x00,
+ 0x64, 0x00, 0x53, 0xFF, 0x1C, 0x00, 0x76, 0x00,
+ 0x2D, 0xFF, 0x1E, 0x00, 0x88, 0x00, 0x02, 0xFF,
+ 0x15, 0x00, 0xF7, 0xFF, 0x95, 0xFF, 0x15, 0x00,
+ 0xE5, 0xFF, 0x95, 0xFF, 0x15, 0x00, 0xD3, 0xFF,
+ 0x95, 0xFF, 0x15, 0x00, 0xC1, 0xFF, 0x95, 0xFF,
+ 0x18, 0x00, 0xAE, 0xFF, 0x71, 0xFF, 0x1A, 0x00,
+ 0x9C, 0xFF, 0x53, 0xFF, 0x1C, 0x00, 0x8A, 0xFF,
+ 0x2D, 0xFF, 0x1E, 0x00, 0x78, 0xFF, 0x02, 0xFF,
+ 0x17, 0x00, 0x09, 0x00, 0x85, 0xFF, 0x17, 0x00,
+ 0x1B, 0x00, 0x85, 0xFF, 0x17, 0x00, 0x2D, 0x00,
+ 0x85, 0xFF, 0x17, 0x00, 0x3F, 0x00, 0x85, 0xFF,
+ 0x1A, 0x00, 0x52, 0x00, 0x5B, 0xFF, 0x1C, 0x00,
+ 0x64, 0x00, 0x39, 0xFF, 0x1E, 0x00, 0x76, 0x00,
+ 0x0D, 0xFF, 0x20, 0x00, 0x88, 0x00, 0xDB, 0xFE,
+ 0x17, 0x00, 0xF7, 0xFF, 0x85, 0xFF, 0x17, 0x00,
+ 0xE5, 0xFF, 0x85, 0xFF, 0x17, 0x00, 0xD3, 0xFF,
+ 0x85, 0xFF, 0x17, 0x00, 0xC1, 0xFF, 0x85, 0xFF,
+ 0x1A, 0x00, 0xAE, 0xFF, 0x5B, 0xFF, 0x1C, 0x00,
+ 0x9C, 0xFF, 0x39, 0xFF, 0x1E, 0x00, 0x8A, 0xFF,
+ 0x0D, 0xFF, 0x20, 0x00, 0x78, 0xFF, 0xDB, 0xFE,
+ 0x0F, 0x00, 0x0A, 0x00, 0x09, 0x00, 0x0F, 0x00,
+ 0x1E, 0x00, 0x09, 0x00, 0x0F, 0x00, 0x32, 0x00,
+ 0x09, 0x00, 0x0F, 0x00, 0x46, 0x00, 0x09, 0x00,
+ 0x12, 0x00, 0x5A, 0x00, 0x0C, 0x00, 0x14, 0x00,
+ 0x6E, 0x00, 0x0E, 0x00, 0x16, 0x00, 0x82, 0x00,
+ 0x11, 0x00, 0x18, 0x00, 0x96, 0x00, 0x15, 0x00,
+ 0x0F, 0x00, 0xF6, 0xFF, 0x09, 0x00, 0x0F, 0x00,
+ 0xE2, 0xFF, 0x09, 0x00, 0x0F, 0x00, 0xCE, 0xFF,
+ 0x09, 0x00, 0x0F, 0x00, 0xBA, 0xFF, 0x09, 0x00,
+ 0x12, 0x00, 0xA6, 0xFF, 0x0C, 0x00, 0x14, 0x00,
+ 0x92, 0xFF, 0x0E, 0x00, 0x16, 0x00, 0x7E, 0xFF,
+ 0x11, 0x00, 0x18, 0x00, 0x6A, 0xFF, 0x15, 0x00,
+ 0x0F, 0x00, 0x0A, 0x00, 0x1B, 0x00, 0x0F, 0x00,
+ 0x1E, 0x00, 0x1B, 0x00, 0x0F, 0x00, 0x32, 0x00,
+ 0x1B, 0x00, 0x0F, 0x00, 0x46, 0x00, 0x1B, 0x00,
+ 0x12, 0x00, 0x5A, 0x00, 0x24, 0x00, 0x14, 0x00,
+ 0x6E, 0x00, 0x2B, 0x00, 0x16, 0x00, 0x82, 0x00,
+ 0x34, 0x00, 0x18, 0x00, 0x96, 0x00, 0x40, 0x00,
+ 0x0F, 0x00, 0xF6, 0xFF, 0x1B, 0x00, 0x0F, 0x00,
+ 0xE2, 0xFF, 0x1B, 0x00, 0x0F, 0x00, 0xCE, 0xFF,
+ 0x1B, 0x00, 0x0F, 0x00, 0xBA, 0xFF, 0x1B, 0x00,
+ 0x12, 0x00, 0xA6, 0xFF, 0x24, 0x00, 0x14, 0x00,
+ 0x92, 0xFF, 0x2B, 0x00, 0x16, 0x00, 0x7E, 0xFF,
+ 0x34, 0x00, 0x18, 0x00, 0x6A, 0xFF, 0x40, 0x00,
+ 0x0F, 0x00, 0x0A, 0x00, 0x2D, 0x00, 0x0F, 0x00,
+ 0x1E, 0x00, 0x2D, 0x00, 0x0F, 0x00, 0x32, 0x00,
+ 0x2D, 0x00, 0x0F, 0x00, 0x46, 0x00, 0x2D, 0x00,
+ 0x12, 0x00, 0x5A, 0x00, 0x3C, 0x00, 0x14, 0x00,
+ 0x6E, 0x00, 0x49, 0x00, 0x16, 0x00, 0x82, 0x00,
+ 0x58, 0x00, 0x18, 0x00, 0x96, 0x00, 0x6B, 0x00,
+ 0x0F, 0x00, 0xF6, 0xFF, 0x2D, 0x00, 0x0F, 0x00,
+ 0xE2, 0xFF, 0x2D, 0x00, 0x0F, 0x00, 0xCE, 0xFF,
+ 0x2D, 0x00, 0x0F, 0x00, 0xBA, 0xFF, 0x2D, 0x00,
+ 0x12, 0x00, 0xA6, 0xFF, 0x3C, 0x00, 0x14, 0x00,
+ 0x92, 0xFF, 0x49, 0x00, 0x16, 0x00, 0x7E, 0xFF,
+ 0x58, 0x00, 0x18, 0x00, 0x6A, 0xFF, 0x6B, 0x00,
+ 0x0F, 0x00, 0x0A, 0x00, 0x3F, 0x00, 0x0F, 0x00,
+ 0x1E, 0x00, 0x3F, 0x00, 0x0F, 0x00, 0x32, 0x00,
+ 0x3F, 0x00, 0x0F, 0x00, 0x46, 0x00, 0x3F, 0x00,
+ 0x12, 0x00, 0x5A, 0x00, 0x54, 0x00, 0x14, 0x00,
+ 0x6E, 0x00, 0x66, 0x00, 0x16, 0x00, 0x82, 0x00,
+ 0x7B, 0x00, 0x18, 0x00, 0x96, 0x00, 0x96, 0x00,
+ 0x0F, 0x00, 0xF6, 0xFF, 0x3F, 0x00, 0x0F, 0x00,
+ 0xE2, 0xFF, 0x3F, 0x00, 0x0F, 0x00, 0xCE, 0xFF,
+ 0x3F, 0x00, 0x0F, 0x00, 0xBA, 0xFF, 0x3F, 0x00,
+ 0x12, 0x00, 0xA6, 0xFF, 0x54, 0x00, 0x14, 0x00,
+ 0x92, 0xFF, 0x66, 0x00, 0x16, 0x00, 0x7E, 0xFF,
+ 0x7B, 0x00, 0x18, 0x00, 0x6A, 0xFF, 0x96, 0x00,
+ 0x12, 0x00, 0x0A, 0x00, 0x52, 0x00, 0x12, 0x00,
+ 0x1E, 0x00, 0x52, 0x00, 0x12, 0x00, 0x32, 0x00,
+ 0x52, 0x00, 0x12, 0x00, 0x46, 0x00, 0x52, 0x00,
+ 0x15, 0x00, 0x5A, 0x00, 0x6D, 0x00, 0x17, 0x00,
+ 0x6E, 0x00, 0x84, 0x00, 0x19, 0x00, 0x82, 0x00,
+ 0xA0, 0x00, 0x1B, 0x00, 0x96, 0x00, 0xC2, 0x00,
+ 0x12, 0x00, 0xF6, 0xFF, 0x52, 0x00, 0x12, 0x00,
+ 0xE2, 0xFF, 0x52, 0x00, 0x12, 0x00, 0xCE, 0xFF,
+ 0x52, 0x00, 0x12, 0x00, 0xBA, 0xFF, 0x52, 0x00,
+ 0x15, 0x00, 0xA6, 0xFF, 0x6D, 0x00, 0x17, 0x00,
+ 0x92, 0xFF, 0x84, 0x00, 0x19, 0x00, 0x7E, 0xFF,
+ 0xA0, 0x00, 0x1B, 0x00, 0x6A, 0xFF, 0xC2, 0x00,
+ 0x14, 0x00, 0x0A, 0x00, 0x64, 0x00, 0x14, 0x00,
+ 0x1E, 0x00, 0x64, 0x00, 0x14, 0x00, 0x32, 0x00,
+ 0x64, 0x00, 0x14, 0x00, 0x46, 0x00, 0x64, 0x00,
+ 0x17, 0x00, 0x5A, 0x00, 0x85, 0x00, 0x19, 0x00,
+ 0x6E, 0x00, 0xA1, 0x00, 0x1B, 0x00, 0x82, 0x00,
+ 0xC3, 0x00, 0x1D, 0x00, 0x96, 0x00, 0xED, 0x00,
+ 0x14, 0x00, 0xF6, 0xFF, 0x64, 0x00, 0x14, 0x00,
+ 0xE2, 0xFF, 0x64, 0x00, 0x14, 0x00, 0xCE, 0xFF,
+ 0x64, 0x00, 0x14, 0x00, 0xBA, 0xFF, 0x64, 0x00,
+ 0x17, 0x00, 0xA6, 0xFF, 0x85, 0x00, 0x19, 0x00,
+ 0x92, 0xFF, 0xA1, 0x00, 0x1B, 0x00, 0x7E, 0xFF,
+ 0xC3, 0x00, 0x1D, 0x00, 0x6A, 0xFF, 0xED, 0x00,
+ 0x16, 0x00, 0x0A, 0x00, 0x76, 0x00, 0x16, 0x00,
+ 0x1E, 0x00, 0x76, 0x00, 0x16, 0x00, 0x32, 0x00,
+ 0x76, 0x00, 0x16, 0x00, 0x46, 0x00, 0x76, 0x00,
+ 0x19, 0x00, 0x5A, 0x00, 0x9D, 0x00, 0x1B, 0x00,
+ 0x6E, 0x00, 0xBF, 0x00, 0x1D, 0x00, 0x82, 0x00,
+ 0xE7, 0x00, 0x1F, 0x00, 0x96, 0x00, 0x18, 0x01,
+ 0x16, 0x00, 0xF6, 0xFF, 0x76, 0x00, 0x16, 0x00,
+ 0xE2, 0xFF, 0x76, 0x00, 0x16, 0x00, 0xCE, 0xFF,
+ 0x76, 0x00, 0x16, 0x00, 0xBA, 0xFF, 0x76, 0x00,
+ 0x19, 0x00, 0xA6, 0xFF, 0x9D, 0x00, 0x1B, 0x00,
+ 0x92, 0xFF, 0xBF, 0x00, 0x1D, 0x00, 0x7E, 0xFF,
+ 0xE7, 0x00, 0x1F, 0x00, 0x6A, 0xFF, 0x18, 0x01,
+ 0x18, 0x00, 0x0A, 0x00, 0x88, 0x00, 0x18, 0x00,
+ 0x1E, 0x00, 0x88, 0x00, 0x18, 0x00, 0x32, 0x00,
+ 0x88, 0x00, 0x18, 0x00, 0x46, 0x00, 0x88, 0x00,
+ 0x1B, 0x00, 0x5A, 0x00, 0xB5, 0x00, 0x1D, 0x00,
+ 0x6E, 0x00, 0xDC, 0x00, 0x1F, 0x00, 0x82, 0x00,
+ 0x0A, 0x01, 0x21, 0x00, 0x96, 0x00, 0x43, 0x01,
+ 0x18, 0x00, 0xF6, 0xFF, 0x88, 0x00, 0x18, 0x00,
+ 0xE2, 0xFF, 0x88, 0x00, 0x18, 0x00, 0xCE, 0xFF,
+ 0x88, 0x00, 0x18, 0x00, 0xBA, 0xFF, 0x88, 0x00,
+ 0x1B, 0x00, 0xA6, 0xFF, 0xB5, 0x00, 0x1D, 0x00,
+ 0x92, 0xFF, 0xDC, 0x00, 0x1F, 0x00, 0x7E, 0xFF,
+ 0x0A, 0x01, 0x21, 0x00, 0x6A, 0xFF, 0x43, 0x01,
+ 0x0F, 0x00, 0x0A, 0x00, 0xF7, 0xFF, 0x0F, 0x00,
+ 0x1E, 0x00, 0xF7, 0xFF, 0x0F, 0x00, 0x32, 0x00,
+ 0xF7, 0xFF, 0x0F, 0x00, 0x46, 0x00, 0xF7, 0xFF,
+ 0x12, 0x00, 0x5A, 0x00, 0xF4, 0xFF, 0x14, 0x00,
+ 0x6E, 0x00, 0xF2, 0xFF, 0x16, 0x00, 0x82, 0x00,
+ 0xEF, 0xFF, 0x18, 0x00, 0x96, 0x00, 0xEB, 0xFF,
+ 0x0F, 0x00, 0xF6, 0xFF, 0xF7, 0xFF, 0x0F, 0x00,
+ 0xE2, 0xFF, 0xF7, 0xFF, 0x0F, 0x00, 0xCE, 0xFF,
+ 0xF7, 0xFF, 0x0F, 0x00, 0xBA, 0xFF, 0xF7, 0xFF,
+ 0x12, 0x00, 0xA6, 0xFF, 0xF4, 0xFF, 0x14, 0x00,
+ 0x92, 0xFF, 0xF2, 0xFF, 0x16, 0x00, 0x7E, 0xFF,
+ 0xEF, 0xFF, 0x18, 0x00, 0x6A, 0xFF, 0xEB, 0xFF,
+ 0x0F, 0x00, 0x0A, 0x00, 0xE5, 0xFF, 0x0F, 0x00,
+ 0x1E, 0x00, 0xE5, 0xFF, 0x0F, 0x00, 0x32, 0x00,
+ 0xE5, 0xFF, 0x0F, 0x00, 0x46, 0x00, 0xE5, 0xFF,
+ 0x12, 0x00, 0x5A, 0x00, 0xDC, 0xFF, 0x14, 0x00,
+ 0x6E, 0x00, 0xD5, 0xFF, 0x16, 0x00, 0x82, 0x00,
+ 0xCC, 0xFF, 0x18, 0x00, 0x96, 0x00, 0xC0, 0xFF,
+ 0x0F, 0x00, 0xF6, 0xFF, 0xE5, 0xFF, 0x0F, 0x00,
+ 0xE2, 0xFF, 0xE5, 0xFF, 0x0F, 0x00, 0xCE, 0xFF,
+ 0xE5, 0xFF, 0x0F, 0x00, 0xBA, 0xFF, 0xE5, 0xFF,
+ 0x12, 0x00, 0xA6, 0xFF, 0xDC, 0xFF, 0x14, 0x00,
+ 0x92, 0xFF, 0xD5, 0xFF, 0x16, 0x00, 0x7E, 0xFF,
+ 0xCC, 0xFF, 0x18, 0x00, 0x6A, 0xFF, 0xC0, 0xFF,
+ 0x0F, 0x00, 0x0A, 0x00, 0xD3, 0xFF, 0x0F, 0x00,
+ 0x1E, 0x00, 0xD3, 0xFF, 0x0F, 0x00, 0x32, 0x00,
+ 0xD3, 0xFF, 0x0F, 0x00, 0x46, 0x00, 0xD3, 0xFF,
+ 0x12, 0x00, 0x5A, 0x00, 0xC4, 0xFF, 0x14, 0x00,
+ 0x6E, 0x00, 0xB7, 0xFF, 0x16, 0x00, 0x82, 0x00,
+ 0xA8, 0xFF, 0x18, 0x00, 0x96, 0x00, 0x95, 0xFF,
+ 0x0F, 0x00, 0xF6, 0xFF, 0xD3, 0xFF, 0x0F, 0x00,
+ 0xE2, 0xFF, 0xD3, 0xFF, 0x0F, 0x00, 0xCE, 0xFF,
+ 0xD3, 0xFF, 0x0F, 0x00, 0xBA, 0xFF, 0xD3, 0xFF,
+ 0x12, 0x00, 0xA6, 0xFF, 0xC4, 0xFF, 0x14, 0x00,
+ 0x92, 0xFF, 0xB7, 0xFF, 0x16, 0x00, 0x7E, 0xFF,
+ 0xA8, 0xFF, 0x18, 0x00, 0x6A, 0xFF, 0x95, 0xFF,
+ 0x0F, 0x00, 0x0A, 0x00, 0xC1, 0xFF, 0x0F, 0x00,
+ 0x1E, 0x00, 0xC1, 0xFF, 0x0F, 0x00, 0x32, 0x00,
+ 0xC1, 0xFF, 0x0F, 0x00, 0x46, 0x00, 0xC1, 0xFF,
+ 0x12, 0x00, 0x5A, 0x00, 0xAC, 0xFF, 0x14, 0x00,
+ 0x6E, 0x00, 0x9A, 0xFF, 0x16, 0x00, 0x82, 0x00,
+ 0x85, 0xFF, 0x18, 0x00, 0x96, 0x00, 0x6A, 0xFF,
+ 0x0F, 0x00, 0xF6, 0xFF, 0xC1, 0xFF, 0x0F, 0x00,
+ 0xE2, 0xFF, 0xC1, 0xFF, 0x0F, 0x00, 0xCE, 0xFF,
+ 0xC1, 0xFF, 0x0F, 0x00, 0xBA, 0xFF, 0xC1, 0xFF,
+ 0x12, 0x00, 0xA6, 0xFF, 0xAC, 0xFF, 0x14, 0x00,
+ 0x92, 0xFF, 0x9A, 0xFF, 0x16, 0x00, 0x7E, 0xFF,
+ 0x85, 0xFF, 0x18, 0x00, 0x6A, 0xFF, 0x6A, 0xFF,
+ 0x12, 0x00, 0x0A, 0x00, 0xAE, 0xFF, 0x12, 0x00,
+ 0x1E, 0x00, 0xAE, 0xFF, 0x12, 0x00, 0x32, 0x00,
+ 0xAE, 0xFF, 0x12, 0x00, 0x46, 0x00, 0xAE, 0xFF,
+ 0x15, 0x00, 0x5A, 0x00, 0x93, 0xFF, 0x17, 0x00,
+ 0x6E, 0x00, 0x7C, 0xFF, 0x19, 0x00, 0x82, 0x00,
+ 0x60, 0xFF, 0x1B, 0x00, 0x96, 0x00, 0x3E, 0xFF,
+ 0x12, 0x00, 0xF6, 0xFF, 0xAE, 0xFF, 0x12, 0x00,
+ 0xE2, 0xFF, 0xAE, 0xFF, 0x12, 0x00, 0xCE, 0xFF,
+ 0xAE, 0xFF, 0x12, 0x00, 0xBA, 0xFF, 0xAE, 0xFF,
+ 0x15, 0x00, 0xA6, 0xFF, 0x93, 0xFF, 0x17, 0x00,
+ 0x92, 0xFF, 0x7C, 0xFF, 0x19, 0x00, 0x7E, 0xFF,
+ 0x60, 0xFF, 0x1B, 0x00, 0x6A, 0xFF, 0x3E, 0xFF,
+ 0x14, 0x00, 0x0A, 0x00, 0x9C, 0xFF, 0x14, 0x00,
+ 0x1E, 0x00, 0x9C, 0xFF, 0x14, 0x00, 0x32, 0x00,
+ 0x9C, 0xFF, 0x14, 0x00, 0x46, 0x00, 0x9C, 0xFF,
+ 0x17, 0x00, 0x5A, 0x00, 0x7B, 0xFF, 0x19, 0x00,
+ 0x6E, 0x00, 0x5F, 0xFF, 0x1B, 0x00, 0x82, 0x00,
+ 0x3D, 0xFF, 0x1D, 0x00, 0x96, 0x00, 0x13, 0xFF,
+ 0x14, 0x00, 0xF6, 0xFF, 0x9C, 0xFF, 0x14, 0x00,
+ 0xE2, 0xFF, 0x9C, 0xFF, 0x14, 0x00, 0xCE, 0xFF,
+ 0x9C, 0xFF, 0x14, 0x00, 0xBA, 0xFF, 0x9C, 0xFF,
+ 0x17, 0x00, 0xA6, 0xFF, 0x7B, 0xFF, 0x19, 0x00,
+ 0x92, 0xFF, 0x5F, 0xFF, 0x1B, 0x00, 0x7E, 0xFF,
+ 0x3D, 0xFF, 0x1D, 0x00, 0x6A, 0xFF, 0x13, 0xFF,
+ 0x16, 0x00, 0x0A, 0x00, 0x8A, 0xFF, 0x16, 0x00,
+ 0x1E, 0x00, 0x8A, 0xFF, 0x16, 0x00, 0x32, 0x00,
+ 0x8A, 0xFF, 0x16, 0x00, 0x46, 0x00, 0x8A, 0xFF,
+ 0x19, 0x00, 0x5A, 0x00, 0x63, 0xFF, 0x1B, 0x00,
+ 0x6E, 0x00, 0x41, 0xFF, 0x1D, 0x00, 0x82, 0x00,
+ 0x19, 0xFF, 0x1F, 0x00, 0x96, 0x00, 0xE8, 0xFE,
+ 0x16, 0x00, 0xF6, 0xFF, 0x8A, 0xFF, 0x16, 0x00,
+ 0xE2, 0xFF, 0x8A, 0xFF, 0x16, 0x00, 0xCE, 0xFF,
+ 0x8A, 0xFF, 0x16, 0x00, 0xBA, 0xFF, 0x8A, 0xFF,
+ 0x19, 0x00, 0xA6, 0xFF, 0x63, 0xFF, 0x1B, 0x00,
+ 0x92, 0xFF, 0x41, 0xFF, 0x1D, 0x00, 0x7E, 0xFF,
+ 0x19, 0xFF, 0x1F, 0x00, 0x6A, 0xFF, 0xE8, 0xFE,
+ 0x18, 0x00, 0x0A, 0x00, 0x78, 0xFF, 0x18, 0x00,
+ 0x1E, 0x00, 0x78, 0xFF, 0x18, 0x00, 0x32, 0x00,
+ 0x78, 0xFF, 0x18, 0x00, 0x46, 0x00, 0x78, 0xFF,
+ 0x1B, 0x00, 0x5A, 0x00, 0x4B, 0xFF, 0x1D, 0x00,
+ 0x6E, 0x00, 0x24, 0xFF, 0x1F, 0x00, 0x82, 0x00,
+ 0xF6, 0xFE, 0x21, 0x00, 0x96, 0x00, 0xBD, 0xFE,
+ 0x18, 0x00, 0xF6, 0xFF, 0x78, 0xFF, 0x18, 0x00,
+ 0xE2, 0xFF, 0x78, 0xFF, 0x18, 0x00, 0xCE, 0xFF,
+ 0x78, 0xFF, 0x18, 0x00, 0xBA, 0xFF, 0x78, 0xFF,
+ 0x1B, 0x00, 0xA6, 0xFF, 0x4B, 0xFF, 0x1D, 0x00,
+ 0x92, 0xFF, 0x24, 0xFF, 0x1F, 0x00, 0x7E, 0xFF,
+ 0xF6, 0xFE, 0x21, 0x00, 0x6A, 0xFF, 0xBD, 0xFE,
+ 0x10, 0x00, 0x0B, 0x00, 0x0A, 0x00, 0x10, 0x00,
+ 0x21, 0x00, 0x0A, 0x00, 0x10, 0x00, 0x37, 0x00,
+ 0x0A, 0x00, 0x10, 0x00, 0x4D, 0x00, 0x0A, 0x00,
+ 0x13, 0x00, 0x63, 0x00, 0x0D, 0x00, 0x15, 0x00,
+ 0x79, 0x00, 0x10, 0x00, 0x17, 0x00, 0x8F, 0x00,
+ 0x13, 0x00, 0x19, 0x00, 0xA5, 0x00, 0x17, 0x00,
+ 0x10, 0x00, 0xF5, 0xFF, 0x0A, 0x00, 0x10, 0x00,
+ 0xDF, 0xFF, 0x0A, 0x00, 0x10, 0x00, 0xC9, 0xFF,
+ 0x0A, 0x00, 0x10, 0x00, 0xB3, 0xFF, 0x0A, 0x00,
+ 0x13, 0x00, 0x9D, 0xFF, 0x0D, 0x00, 0x15, 0x00,
+ 0x87, 0xFF, 0x10, 0x00, 0x17, 0x00, 0x71, 0xFF,
+ 0x13, 0x00, 0x19, 0x00, 0x5B, 0xFF, 0x17, 0x00,
+ 0x10, 0x00, 0x0B, 0x00, 0x1E, 0x00, 0x10, 0x00,
+ 0x21, 0x00, 0x1E, 0x00, 0x10, 0x00, 0x37, 0x00,
+ 0x1E, 0x00, 0x10, 0x00, 0x4D, 0x00, 0x1E, 0x00,
+ 0x13, 0x00, 0x63, 0x00, 0x27, 0x00, 0x15, 0x00,
+ 0x79, 0x00, 0x30, 0x00, 0x17, 0x00, 0x8F, 0x00,
+ 0x3A, 0x00, 0x19, 0x00, 0xA5, 0x00, 0x46, 0x00,
+ 0x10, 0x00, 0xF5, 0xFF, 0x1E, 0x00, 0x10, 0x00,
+ 0xDF, 0xFF, 0x1E, 0x00, 0x10, 0x00, 0xC9, 0xFF,
+ 0x1E, 0x00, 0x10, 0x00, 0xB3, 0xFF, 0x1E, 0x00,
+ 0x13, 0x00, 0x9D, 0xFF, 0x27, 0x00, 0x15, 0x00,
+ 0x87, 0xFF, 0x30, 0x00, 0x17, 0x00, 0x71, 0xFF,
+ 0x3A, 0x00, 0x19, 0x00, 0x5B, 0xFF, 0x46, 0x00,
+ 0x10, 0x00, 0x0B, 0x00, 0x32, 0x00, 0x10, 0x00,
+ 0x21, 0x00, 0x32, 0x00, 0x10, 0x00, 0x37, 0x00,
+ 0x32, 0x00, 0x10, 0x00, 0x4D, 0x00, 0x32, 0x00,
+ 0x13, 0x00, 0x63, 0x00, 0x42, 0x00, 0x15, 0x00,
+ 0x79, 0x00, 0x51, 0x00, 0x17, 0x00, 0x8F, 0x00,
+ 0x61, 0x00, 0x19, 0x00, 0xA5, 0x00, 0x76, 0x00,
+ 0x10, 0x00, 0xF5, 0xFF, 0x32, 0x00, 0x10, 0x00,
+ 0xDF, 0xFF, 0x32, 0x00, 0x10, 0x00, 0xC9, 0xFF,
+ 0x32, 0x00, 0x10, 0x00, 0xB3, 0xFF, 0x32, 0x00,
+ 0x13, 0x00, 0x9D, 0xFF, 0x42, 0x00, 0x15, 0x00,
+ 0x87, 0xFF, 0x51, 0x00, 0x17, 0x00, 0x71, 0xFF,
+ 0x61, 0x00, 0x19, 0x00, 0x5B, 0xFF, 0x76, 0x00,
+ 0x10, 0x00, 0x0B, 0x00, 0x46, 0x00, 0x10, 0x00,
+ 0x21, 0x00, 0x46, 0x00, 0x10, 0x00, 0x37, 0x00,
+ 0x46, 0x00, 0x10, 0x00, 0x4D, 0x00, 0x46, 0x00,
+ 0x13, 0x00, 0x63, 0x00, 0x5C, 0x00, 0x15, 0x00,
+ 0x79, 0x00, 0x71, 0x00, 0x17, 0x00, 0x8F, 0x00,
+ 0x88, 0x00, 0x19, 0x00, 0xA5, 0x00, 0xA5, 0x00,
+ 0x10, 0x00, 0xF5, 0xFF, 0x46, 0x00, 0x10, 0x00,
+ 0xDF, 0xFF, 0x46, 0x00, 0x10, 0x00, 0xC9, 0xFF,
+ 0x46, 0x00, 0x10, 0x00, 0xB3, 0xFF, 0x46, 0x00,
+ 0x13, 0x00, 0x9D, 0xFF, 0x5C, 0x00, 0x15, 0x00,
+ 0x87, 0xFF, 0x71, 0x00, 0x17, 0x00, 0x71, 0xFF,
+ 0x88, 0x00, 0x19, 0x00, 0x5B, 0xFF, 0xA5, 0x00,
+ 0x13, 0x00, 0x0B, 0x00, 0x5A, 0x00, 0x13, 0x00,
+ 0x21, 0x00, 0x5A, 0x00, 0x13, 0x00, 0x37, 0x00,
+ 0x5A, 0x00, 0x13, 0x00, 0x4D, 0x00, 0x5A, 0x00,
+ 0x16, 0x00, 0x63, 0x00, 0x78, 0x00, 0x18, 0x00,
+ 0x79, 0x00, 0x92, 0x00, 0x1A, 0x00, 0x8F, 0x00,
+ 0xB0, 0x00, 0x1C, 0x00, 0xA5, 0x00, 0xD5, 0x00,
+ 0x13, 0x00, 0xF5, 0xFF, 0x5A, 0x00, 0x13, 0x00,
+ 0xDF, 0xFF, 0x5A, 0x00, 0x13, 0x00, 0xC9, 0xFF,
+ 0x5A, 0x00, 0x13, 0x00, 0xB3, 0xFF, 0x5A, 0x00,
+ 0x16, 0x00, 0x9D, 0xFF, 0x78, 0x00, 0x18, 0x00,
+ 0x87, 0xFF, 0x92, 0x00, 0x1A, 0x00, 0x71, 0xFF,
+ 0xB0, 0x00, 0x1C, 0x00, 0x5B, 0xFF, 0xD5, 0x00,
+ 0x15, 0x00, 0x0B, 0x00, 0x6E, 0x00, 0x15, 0x00,
+ 0x21, 0x00, 0x6E, 0x00, 0x15, 0x00, 0x37, 0x00,
+ 0x6E, 0x00, 0x15, 0x00, 0x4D, 0x00, 0x6E, 0x00,
+ 0x18, 0x00, 0x63, 0x00, 0x92, 0x00, 0x1A, 0x00,
+ 0x79, 0x00, 0xB2, 0x00, 0x1C, 0x00, 0x8F, 0x00,
+ 0xD7, 0x00, 0x1E, 0x00, 0xA5, 0x00, 0x04, 0x01,
+ 0x15, 0x00, 0xF5, 0xFF, 0x6E, 0x00, 0x15, 0x00,
+ 0xDF, 0xFF, 0x6E, 0x00, 0x15, 0x00, 0xC9, 0xFF,
+ 0x6E, 0x00, 0x15, 0x00, 0xB3, 0xFF, 0x6E, 0x00,
+ 0x18, 0x00, 0x9D, 0xFF, 0x92, 0x00, 0x1A, 0x00,
+ 0x87, 0xFF, 0xB2, 0x00, 0x1C, 0x00, 0x71, 0xFF,
+ 0xD7, 0x00, 0x1E, 0x00, 0x5B, 0xFF, 0x04, 0x01,
+ 0x17, 0x00, 0x0B, 0x00, 0x82, 0x00, 0x17, 0x00,
+ 0x21, 0x00, 0x82, 0x00, 0x17, 0x00, 0x37, 0x00,
+ 0x82, 0x00, 0x17, 0x00, 0x4D, 0x00, 0x82, 0x00,
+ 0x1A, 0x00, 0x63, 0x00, 0xAD, 0x00, 0x1C, 0x00,
+ 0x79, 0x00, 0xD3, 0x00, 0x1E, 0x00, 0x8F, 0x00,
+ 0xFE, 0x00, 0x20, 0x00, 0xA5, 0x00, 0x34, 0x01,
+ 0x17, 0x00, 0xF5, 0xFF, 0x82, 0x00, 0x17, 0x00,
+ 0xDF, 0xFF, 0x82, 0x00, 0x17, 0x00, 0xC9, 0xFF,
+ 0x82, 0x00, 0x17, 0x00, 0xB3, 0xFF, 0x82, 0x00,
+ 0x1A, 0x00, 0x9D, 0xFF, 0xAD, 0x00, 0x1C, 0x00,
+ 0x87, 0xFF, 0xD3, 0x00, 0x1E, 0x00, 0x71, 0xFF,
+ 0xFE, 0x00, 0x20, 0x00, 0x5B, 0xFF, 0x34, 0x01,
+ 0x19, 0x00, 0x0B, 0x00, 0x96, 0x00, 0x19, 0x00,
+ 0x21, 0x00, 0x96, 0x00, 0x19, 0x00, 0x37, 0x00,
+ 0x96, 0x00, 0x19, 0x00, 0x4D, 0x00, 0x96, 0x00,
+ 0x1C, 0x00, 0x63, 0x00, 0xC7, 0x00, 0x1E, 0x00,
+ 0x79, 0x00, 0xF3, 0x00, 0x20, 0x00, 0x8F, 0x00,
+ 0x25, 0x01, 0x22, 0x00, 0xA5, 0x00, 0x63, 0x01,
+ 0x19, 0x00, 0xF5, 0xFF, 0x96, 0x00, 0x19, 0x00,
+ 0xDF, 0xFF, 0x96, 0x00, 0x19, 0x00, 0xC9, 0xFF,
+ 0x96, 0x00, 0x19, 0x00, 0xB3, 0xFF, 0x96, 0x00,
+ 0x1C, 0x00, 0x9D, 0xFF, 0xC7, 0x00, 0x1E, 0x00,
+ 0x87, 0xFF, 0xF3, 0x00, 0x20, 0x00, 0x71, 0xFF,
+ 0x25, 0x01, 0x22, 0x00, 0x5B, 0xFF, 0x63, 0x01,
+ 0x10, 0x00, 0x0B, 0x00, 0xF6, 0xFF, 0x10, 0x00,
+ 0x21, 0x00, 0xF6, 0xFF, 0x10, 0x00, 0x37, 0x00,
+ 0xF6, 0xFF, 0x10, 0x00, 0x4D, 0x00, 0xF6, 0xFF,
+ 0x13, 0x00, 0x63, 0x00, 0xF3, 0xFF, 0x15, 0x00,
+ 0x79, 0x00, 0xF0, 0xFF, 0x17, 0x00, 0x8F, 0x00,
+ 0xED, 0xFF, 0x19, 0x00, 0xA5, 0x00, 0xE9, 0xFF,
+ 0x10, 0x00, 0xF5, 0xFF, 0xF6, 0xFF, 0x10, 0x00,
+ 0xDF, 0xFF, 0xF6, 0xFF, 0x10, 0x00, 0xC9, 0xFF,
+ 0xF6, 0xFF, 0x10, 0x00, 0xB3, 0xFF, 0xF6, 0xFF,
+ 0x13, 0x00, 0x9D, 0xFF, 0xF3, 0xFF, 0x15, 0x00,
+ 0x87, 0xFF, 0xF0, 0xFF, 0x17, 0x00, 0x71, 0xFF,
+ 0xED, 0xFF, 0x19, 0x00, 0x5B, 0xFF, 0xE9, 0xFF,
+ 0x10, 0x00, 0x0B, 0x00, 0xE2, 0xFF, 0x10, 0x00,
+ 0x21, 0x00, 0xE2, 0xFF, 0x10, 0x00, 0x37, 0x00,
+ 0xE2, 0xFF, 0x10, 0x00, 0x4D, 0x00, 0xE2, 0xFF,
+ 0x13, 0x00, 0x63, 0x00, 0xD9, 0xFF, 0x15, 0x00,
+ 0x79, 0x00, 0xD0, 0xFF, 0x17, 0x00, 0x8F, 0x00,
+ 0xC6, 0xFF, 0x19, 0x00, 0xA5, 0x00, 0xBA, 0xFF,
+ 0x10, 0x00, 0xF5, 0xFF, 0xE2, 0xFF, 0x10, 0x00,
+ 0xDF, 0xFF, 0xE2, 0xFF, 0x10, 0x00, 0xC9, 0xFF,
+ 0xE2, 0xFF, 0x10, 0x00, 0xB3, 0xFF, 0xE2, 0xFF,
+ 0x13, 0x00, 0x9D, 0xFF, 0xD9, 0xFF, 0x15, 0x00,
+ 0x87, 0xFF, 0xD0, 0xFF, 0x17, 0x00, 0x71, 0xFF,
+ 0xC6, 0xFF, 0x19, 0x00, 0x5B, 0xFF, 0xBA, 0xFF,
+ 0x10, 0x00, 0x0B, 0x00, 0xCE, 0xFF, 0x10, 0x00,
+ 0x21, 0x00, 0xCE, 0xFF, 0x10, 0x00, 0x37, 0x00,
+ 0xCE, 0xFF, 0x10, 0x00, 0x4D, 0x00, 0xCE, 0xFF,
+ 0x13, 0x00, 0x63, 0x00, 0xBE, 0xFF, 0x15, 0x00,
+ 0x79, 0x00, 0xAF, 0xFF, 0x17, 0x00, 0x8F, 0x00,
+ 0x9F, 0xFF, 0x19, 0x00, 0xA5, 0x00, 0x8A, 0xFF,
+ 0x10, 0x00, 0xF5, 0xFF, 0xCE, 0xFF, 0x10, 0x00,
+ 0xDF, 0xFF, 0xCE, 0xFF, 0x10, 0x00, 0xC9, 0xFF,
+ 0xCE, 0xFF, 0x10, 0x00, 0xB3, 0xFF, 0xCE, 0xFF,
+ 0x13, 0x00, 0x9D, 0xFF, 0xBE, 0xFF, 0x15, 0x00,
+ 0x87, 0xFF, 0xAF, 0xFF, 0x17, 0x00, 0x71, 0xFF,
+ 0x9F, 0xFF, 0x19, 0x00, 0x5B, 0xFF, 0x8A, 0xFF,
+ 0x10, 0x00, 0x0B, 0x00, 0xBA, 0xFF, 0x10, 0x00,
+ 0x21, 0x00, 0xBA, 0xFF, 0x10, 0x00, 0x37, 0x00,
+ 0xBA, 0xFF, 0x10, 0x00, 0x4D, 0x00, 0xBA, 0xFF,
+ 0x13, 0x00, 0x63, 0x00, 0xA4, 0xFF, 0x15, 0x00,
+ 0x79, 0x00, 0x8F, 0xFF, 0x17, 0x00, 0x8F, 0x00,
+ 0x78, 0xFF, 0x19, 0x00, 0xA5, 0x00, 0x5B, 0xFF,
+ 0x10, 0x00, 0xF5, 0xFF, 0xBA, 0xFF, 0x10, 0x00,
+ 0xDF, 0xFF, 0xBA, 0xFF, 0x10, 0x00, 0xC9, 0xFF,
+ 0xBA, 0xFF, 0x10, 0x00, 0xB3, 0xFF, 0xBA, 0xFF,
+ 0x13, 0x00, 0x9D, 0xFF, 0xA4, 0xFF, 0x15, 0x00,
+ 0x87, 0xFF, 0x8F, 0xFF, 0x17, 0x00, 0x71, 0xFF,
+ 0x78, 0xFF, 0x19, 0x00, 0x5B, 0xFF, 0x5B, 0xFF,
+ 0x13, 0x00, 0x0B, 0x00, 0xA6, 0xFF, 0x13, 0x00,
+ 0x21, 0x00, 0xA6, 0xFF, 0x13, 0x00, 0x37, 0x00,
+ 0xA6, 0xFF, 0x13, 0x00, 0x4D, 0x00, 0xA6, 0xFF,
+ 0x16, 0x00, 0x63, 0x00, 0x88, 0xFF, 0x18, 0x00,
+ 0x79, 0x00, 0x6E, 0xFF, 0x1A, 0x00, 0x8F, 0x00,
+ 0x50, 0xFF, 0x1C, 0x00, 0xA5, 0x00, 0x2B, 0xFF,
+ 0x13, 0x00, 0xF5, 0xFF, 0xA6, 0xFF, 0x13, 0x00,
+ 0xDF, 0xFF, 0xA6, 0xFF, 0x13, 0x00, 0xC9, 0xFF,
+ 0xA6, 0xFF, 0x13, 0x00, 0xB3, 0xFF, 0xA6, 0xFF,
+ 0x16, 0x00, 0x9D, 0xFF, 0x88, 0xFF, 0x18, 0x00,
+ 0x87, 0xFF, 0x6E, 0xFF, 0x1A, 0x00, 0x71, 0xFF,
+ 0x50, 0xFF, 0x1C, 0x00, 0x5B, 0xFF, 0x2B, 0xFF,
+ 0x15, 0x00, 0x0B, 0x00, 0x92, 0xFF, 0x15, 0x00,
+ 0x21, 0x00, 0x92, 0xFF, 0x15, 0x00, 0x37, 0x00,
+ 0x92, 0xFF, 0x15, 0x00, 0x4D, 0x00, 0x92, 0xFF,
+ 0x18, 0x00, 0x63, 0x00, 0x6E, 0xFF, 0x1A, 0x00,
+ 0x79, 0x00, 0x4E, 0xFF, 0x1C, 0x00, 0x8F, 0x00,
+ 0x29, 0xFF, 0x1E, 0x00, 0xA5, 0x00, 0xFC, 0xFE,
+ 0x15, 0x00, 0xF5, 0xFF, 0x92, 0xFF, 0x15, 0x00,
+ 0xDF, 0xFF, 0x92, 0xFF, 0x15, 0x00, 0xC9, 0xFF,
+ 0x92, 0xFF, 0x15, 0x00, 0xB3, 0xFF, 0x92, 0xFF,
+ 0x18, 0x00, 0x9D, 0xFF, 0x6E, 0xFF, 0x1A, 0x00,
+ 0x87, 0xFF, 0x4E, 0xFF, 0x1C, 0x00, 0x71, 0xFF,
+ 0x29, 0xFF, 0x1E, 0x00, 0x5B, 0xFF, 0xFC, 0xFE,
+ 0x17, 0x00, 0x0B, 0x00, 0x7E, 0xFF, 0x17, 0x00,
+ 0x21, 0x00, 0x7E, 0xFF, 0x17, 0x00, 0x37, 0x00,
+ 0x7E, 0xFF, 0x17, 0x00, 0x4D, 0x00, 0x7E, 0xFF,
+ 0x1A, 0x00, 0x63, 0x00, 0x53, 0xFF, 0x1C, 0x00,
+ 0x79, 0x00, 0x2D, 0xFF, 0x1E, 0x00, 0x8F, 0x00,
+ 0x02, 0xFF, 0x20, 0x00, 0xA5, 0x00, 0xCC, 0xFE,
+ 0x17, 0x00, 0xF5, 0xFF, 0x7E, 0xFF, 0x17, 0x00,
+ 0xDF, 0xFF, 0x7E, 0xFF, 0x17, 0x00, 0xC9, 0xFF,
+ 0x7E, 0xFF, 0x17, 0x00, 0xB3, 0xFF, 0x7E, 0xFF,
+ 0x1A, 0x00, 0x9D, 0xFF, 0x53, 0xFF, 0x1C, 0x00,
+ 0x87, 0xFF, 0x2D, 0xFF, 0x1E, 0x00, 0x71, 0xFF,
+ 0x02, 0xFF, 0x20, 0x00, 0x5B, 0xFF, 0xCC, 0xFE,
+ 0x19, 0x00, 0x0B, 0x00, 0x6A, 0xFF, 0x19, 0x00,
+ 0x21, 0x00, 0x6A, 0xFF, 0x19, 0x00, 0x37, 0x00,
+ 0x6A, 0xFF, 0x19, 0x00, 0x4D, 0x00, 0x6A, 0xFF,
+ 0x1C, 0x00, 0x63, 0x00, 0x39, 0xFF, 0x1E, 0x00,
+ 0x79, 0x00, 0x0D, 0xFF, 0x20, 0x00, 0x8F, 0x00,
+ 0xDB, 0xFE, 0x22, 0x00, 0xA5, 0x00, 0x9D, 0xFE,
+ 0x19, 0x00, 0xF5, 0xFF, 0x6A, 0xFF, 0x19, 0x00,
+ 0xDF, 0xFF, 0x6A, 0xFF, 0x19, 0x00, 0xC9, 0xFF,
+ 0x6A, 0xFF, 0x19, 0x00, 0xB3, 0xFF, 0x6A, 0xFF,
+ 0x1C, 0x00, 0x9D, 0xFF, 0x39, 0xFF, 0x1E, 0x00,
+ 0x87, 0xFF, 0x0D, 0xFF, 0x20, 0x00, 0x71, 0xFF,
+ 0xDB, 0xFE, 0x22, 0x00, 0x5B, 0xFF, 0x9D, 0xFE,
+ 0x11, 0x00, 0x0C, 0x00, 0x0B, 0x00, 0x11, 0x00,
+ 0x24, 0x00, 0x0B, 0x00, 0x11, 0x00, 0x3C, 0x00,
+ 0x0B, 0x00, 0x11, 0x00, 0x54, 0x00, 0x0B, 0x00,
+ 0x14, 0x00, 0x6D, 0x00, 0x0E, 0x00, 0x16, 0x00,
+ 0x85, 0x00, 0x11, 0x00, 0x18, 0x00, 0x9D, 0x00,
+ 0x15, 0x00, 0x1A, 0x00, 0xB5, 0x00, 0x1A, 0x00,
+ 0x11, 0x00, 0xF4, 0xFF, 0x0B, 0x00, 0x11, 0x00,
+ 0xDC, 0xFF, 0x0B, 0x00, 0x11, 0x00, 0xC4, 0xFF,
+ 0x0B, 0x00, 0x11, 0x00, 0xAC, 0xFF, 0x0B, 0x00,
+ 0x14, 0x00, 0x93, 0xFF, 0x0E, 0x00, 0x16, 0x00,
+ 0x7B, 0xFF, 0x11, 0x00, 0x18, 0x00, 0x63, 0xFF,
+ 0x15, 0x00, 0x1A, 0x00, 0x4B, 0xFF, 0x1A, 0x00,
+ 0x11, 0x00, 0x0C, 0x00, 0x21, 0x00, 0x11, 0x00,
+ 0x24, 0x00, 0x21, 0x00, 0x11, 0x00, 0x3C, 0x00,
+ 0x21, 0x00, 0x11, 0x00, 0x54, 0x00, 0x21, 0x00,
+ 0x14, 0x00, 0x6D, 0x00, 0x2B, 0x00, 0x16, 0x00,
+ 0x85, 0x00, 0x34, 0x00, 0x18, 0x00, 0x9D, 0x00,
+ 0x40, 0x00, 0x1A, 0x00, 0xB5, 0x00, 0x4E, 0x00,
+ 0x11, 0x00, 0xF4, 0xFF, 0x21, 0x00, 0x11, 0x00,
+ 0xDC, 0xFF, 0x21, 0x00, 0x11, 0x00, 0xC4, 0xFF,
+ 0x21, 0x00, 0x11, 0x00, 0xAC, 0xFF, 0x21, 0x00,
+ 0x14, 0x00, 0x93, 0xFF, 0x2B, 0x00, 0x16, 0x00,
+ 0x7B, 0xFF, 0x34, 0x00, 0x18, 0x00, 0x63, 0xFF,
+ 0x40, 0x00, 0x1A, 0x00, 0x4B, 0xFF, 0x4E, 0x00,
+ 0x11, 0x00, 0x0C, 0x00, 0x37, 0x00, 0x11, 0x00,
+ 0x24, 0x00, 0x37, 0x00, 0x11, 0x00, 0x3C, 0x00,
+ 0x37, 0x00, 0x11, 0x00, 0x54, 0x00, 0x37, 0x00,
+ 0x14, 0x00, 0x6D, 0x00, 0x49, 0x00, 0x16, 0x00,
+ 0x85, 0x00, 0x58, 0x00, 0x18, 0x00, 0x9D, 0x00,
+ 0x6B, 0x00, 0x1A, 0x00, 0xB5, 0x00, 0x82, 0x00,
+ 0x11, 0x00, 0xF4, 0xFF, 0x37, 0x00, 0x11, 0x00,
+ 0xDC, 0xFF, 0x37, 0x00, 0x11, 0x00, 0xC4, 0xFF,
+ 0x37, 0x00, 0x11, 0x00, 0xAC, 0xFF, 0x37, 0x00,
+ 0x14, 0x00, 0x93, 0xFF, 0x49, 0x00, 0x16, 0x00,
+ 0x7B, 0xFF, 0x58, 0x00, 0x18, 0x00, 0x63, 0xFF,
+ 0x6B, 0x00, 0x1A, 0x00, 0x4B, 0xFF, 0x82, 0x00,
+ 0x11, 0x00, 0x0C, 0x00, 0x4D, 0x00, 0x11, 0x00,
+ 0x24, 0x00, 0x4D, 0x00, 0x11, 0x00, 0x3C, 0x00,
+ 0x4D, 0x00, 0x11, 0x00, 0x54, 0x00, 0x4D, 0x00,
+ 0x14, 0x00, 0x6D, 0x00, 0x66, 0x00, 0x16, 0x00,
+ 0x85, 0x00, 0x7B, 0x00, 0x18, 0x00, 0x9D, 0x00,
+ 0x96, 0x00, 0x1A, 0x00, 0xB5, 0x00, 0xB6, 0x00,
+ 0x11, 0x00, 0xF4, 0xFF, 0x4D, 0x00, 0x11, 0x00,
+ 0xDC, 0xFF, 0x4D, 0x00, 0x11, 0x00, 0xC4, 0xFF,
+ 0x4D, 0x00, 0x11, 0x00, 0xAC, 0xFF, 0x4D, 0x00,
+ 0x14, 0x00, 0x93, 0xFF, 0x66, 0x00, 0x16, 0x00,
+ 0x7B, 0xFF, 0x7B, 0x00, 0x18, 0x00, 0x63, 0xFF,
+ 0x96, 0x00, 0x1A, 0x00, 0x4B, 0xFF, 0xB6, 0x00,
+ 0x14, 0x00, 0x0C, 0x00, 0x63, 0x00, 0x14, 0x00,
+ 0x24, 0x00, 0x63, 0x00, 0x14, 0x00, 0x3C, 0x00,
+ 0x63, 0x00, 0x14, 0x00, 0x54, 0x00, 0x63, 0x00,
+ 0x17, 0x00, 0x6D, 0x00, 0x84, 0x00, 0x19, 0x00,
+ 0x85, 0x00, 0xA0, 0x00, 0x1B, 0x00, 0x9D, 0x00,
+ 0xC2, 0x00, 0x1D, 0x00, 0xB5, 0x00, 0xEB, 0x00,
+ 0x14, 0x00, 0xF4, 0xFF, 0x63, 0x00, 0x14, 0x00,
+ 0xDC, 0xFF, 0x63, 0x00, 0x14, 0x00, 0xC4, 0xFF,
+ 0x63, 0x00, 0x14, 0x00, 0xAC, 0xFF, 0x63, 0x00,
+ 0x17, 0x00, 0x93, 0xFF, 0x84, 0x00, 0x19, 0x00,
+ 0x7B, 0xFF, 0xA0, 0x00, 0x1B, 0x00, 0x63, 0xFF,
+ 0xC2, 0x00, 0x1D, 0x00, 0x4B, 0xFF, 0xEB, 0x00,
+ 0x16, 0x00, 0x0C, 0x00, 0x79, 0x00, 0x16, 0x00,
+ 0x24, 0x00, 0x79, 0x00, 0x16, 0x00, 0x3C, 0x00,
+ 0x79, 0x00, 0x16, 0x00, 0x54, 0x00, 0x79, 0x00,
+ 0x19, 0x00, 0x6D, 0x00, 0xA1, 0x00, 0x1B, 0x00,
+ 0x85, 0x00, 0xC3, 0x00, 0x1D, 0x00, 0x9D, 0x00,
+ 0xED, 0x00, 0x1F, 0x00, 0xB5, 0x00, 0x1F, 0x01,
+ 0x16, 0x00, 0xF4, 0xFF, 0x79, 0x00, 0x16, 0x00,
+ 0xDC, 0xFF, 0x79, 0x00, 0x16, 0x00, 0xC4, 0xFF,
+ 0x79, 0x00, 0x16, 0x00, 0xAC, 0xFF, 0x79, 0x00,
+ 0x19, 0x00, 0x93, 0xFF, 0xA1, 0x00, 0x1B, 0x00,
+ 0x7B, 0xFF, 0xC3, 0x00, 0x1D, 0x00, 0x63, 0xFF,
+ 0xED, 0x00, 0x1F, 0x00, 0x4B, 0xFF, 0x1F, 0x01,
+ 0x18, 0x00, 0x0C, 0x00, 0x8F, 0x00, 0x18, 0x00,
+ 0x24, 0x00, 0x8F, 0x00, 0x18, 0x00, 0x3C, 0x00,
+ 0x8F, 0x00, 0x18, 0x00, 0x54, 0x00, 0x8F, 0x00,
+ 0x1B, 0x00, 0x6D, 0x00, 0xBF, 0x00, 0x1D, 0x00,
+ 0x85, 0x00, 0xE7, 0x00, 0x1F, 0x00, 0x9D, 0x00,
+ 0x18, 0x01, 0x21, 0x00, 0xB5, 0x00, 0x53, 0x01,
+ 0x18, 0x00, 0xF4, 0xFF, 0x8F, 0x00, 0x18, 0x00,
+ 0xDC, 0xFF, 0x8F, 0x00, 0x18, 0x00, 0xC4, 0xFF,
+ 0x8F, 0x00, 0x18, 0x00, 0xAC, 0xFF, 0x8F, 0x00,
+ 0x1B, 0x00, 0x93, 0xFF, 0xBF, 0x00, 0x1D, 0x00,
+ 0x7B, 0xFF, 0xE7, 0x00, 0x1F, 0x00, 0x63, 0xFF,
+ 0x18, 0x01, 0x21, 0x00, 0x4B, 0xFF, 0x53, 0x01,
+ 0x1A, 0x00, 0x0C, 0x00, 0xA5, 0x00, 0x1A, 0x00,
+ 0x24, 0x00, 0xA5, 0x00, 0x1A, 0x00, 0x3C, 0x00,
+ 0xA5, 0x00, 0x1A, 0x00, 0x54, 0x00, 0xA5, 0x00,
+ 0x1D, 0x00, 0x6D, 0x00, 0xDC, 0x00, 0x1F, 0x00,
+ 0x85, 0x00, 0x0A, 0x01, 0x21, 0x00, 0x9D, 0x00,
+ 0x43, 0x01, 0x23, 0x00, 0xB5, 0x00, 0x87, 0x01,
+ 0x1A, 0x00, 0xF4, 0xFF, 0xA5, 0x00, 0x1A, 0x00,
+ 0xDC, 0xFF, 0xA5, 0x00, 0x1A, 0x00, 0xC4, 0xFF,
+ 0xA5, 0x00, 0x1A, 0x00, 0xAC, 0xFF, 0xA5, 0x00,
+ 0x1D, 0x00, 0x93, 0xFF, 0xDC, 0x00, 0x1F, 0x00,
+ 0x7B, 0xFF, 0x0A, 0x01, 0x21, 0x00, 0x63, 0xFF,
+ 0x43, 0x01, 0x23, 0x00, 0x4B, 0xFF, 0x87, 0x01,
+ 0x11, 0x00, 0x0C, 0x00, 0xF5, 0xFF, 0x11, 0x00,
+ 0x24, 0x00, 0xF5, 0xFF, 0x11, 0x00, 0x3C, 0x00,
+ 0xF5, 0xFF, 0x11, 0x00, 0x54, 0x00, 0xF5, 0xFF,
+ 0x14, 0x00, 0x6D, 0x00, 0xF2, 0xFF, 0x16, 0x00,
+ 0x85, 0x00, 0xEF, 0xFF, 0x18, 0x00, 0x9D, 0x00,
+ 0xEB, 0xFF, 0x1A, 0x00, 0xB5, 0x00, 0xE6, 0xFF,
+ 0x11, 0x00, 0xF4, 0xFF, 0xF5, 0xFF, 0x11, 0x00,
+ 0xDC, 0xFF, 0xF5, 0xFF, 0x11, 0x00, 0xC4, 0xFF,
+ 0xF5, 0xFF, 0x11, 0x00, 0xAC, 0xFF, 0xF5, 0xFF,
+ 0x14, 0x00, 0x93, 0xFF, 0xF2, 0xFF, 0x16, 0x00,
+ 0x7B, 0xFF, 0xEF, 0xFF, 0x18, 0x00, 0x63, 0xFF,
+ 0xEB, 0xFF, 0x1A, 0x00, 0x4B, 0xFF, 0xE6, 0xFF,
+ 0x11, 0x00, 0x0C, 0x00, 0xDF, 0xFF, 0x11, 0x00,
+ 0x24, 0x00, 0xDF, 0xFF, 0x11, 0x00, 0x3C, 0x00,
+ 0xDF, 0xFF, 0x11, 0x00, 0x54, 0x00, 0xDF, 0xFF,
+ 0x14, 0x00, 0x6D, 0x00, 0xD5, 0xFF, 0x16, 0x00,
+ 0x85, 0x00, 0xCC, 0xFF, 0x18, 0x00, 0x9D, 0x00,
+ 0xC0, 0xFF, 0x1A, 0x00, 0xB5, 0x00, 0xB2, 0xFF,
+ 0x11, 0x00, 0xF4, 0xFF, 0xDF, 0xFF, 0x11, 0x00,
+ 0xDC, 0xFF, 0xDF, 0xFF, 0x11, 0x00, 0xC4, 0xFF,
+ 0xDF, 0xFF, 0x11, 0x00, 0xAC, 0xFF, 0xDF, 0xFF,
+ 0x14, 0x00, 0x93, 0xFF, 0xD5, 0xFF, 0x16, 0x00,
+ 0x7B, 0xFF, 0xCC, 0xFF, 0x18, 0x00, 0x63, 0xFF,
+ 0xC0, 0xFF, 0x1A, 0x00, 0x4B, 0xFF, 0xB2, 0xFF,
+ 0x11, 0x00, 0x0C, 0x00, 0xC9, 0xFF, 0x11, 0x00,
+ 0x24, 0x00, 0xC9, 0xFF, 0x11, 0x00, 0x3C, 0x00,
+ 0xC9, 0xFF, 0x11, 0x00, 0x54, 0x00, 0xC9, 0xFF,
+ 0x14, 0x00, 0x6D, 0x00, 0xB7, 0xFF, 0x16, 0x00,
+ 0x85, 0x00, 0xA8, 0xFF, 0x18, 0x00, 0x9D, 0x00,
+ 0x95, 0xFF, 0x1A, 0x00, 0xB5, 0x00, 0x7E, 0xFF,
+ 0x11, 0x00, 0xF4, 0xFF, 0xC9, 0xFF, 0x11, 0x00,
+ 0xDC, 0xFF, 0xC9, 0xFF, 0x11, 0x00, 0xC4, 0xFF,
+ 0xC9, 0xFF, 0x11, 0x00, 0xAC, 0xFF, 0xC9, 0xFF,
+ 0x14, 0x00, 0x93, 0xFF, 0xB7, 0xFF, 0x16, 0x00,
+ 0x7B, 0xFF, 0xA8, 0xFF, 0x18, 0x00, 0x63, 0xFF,
+ 0x95, 0xFF, 0x1A, 0x00, 0x4B, 0xFF, 0x7E, 0xFF,
+ 0x11, 0x00, 0x0C, 0x00, 0xB3, 0xFF, 0x11, 0x00,
+ 0x24, 0x00, 0xB3, 0xFF, 0x11, 0x00, 0x3C, 0x00,
+ 0xB3, 0xFF, 0x11, 0x00, 0x54, 0x00, 0xB3, 0xFF,
+ 0x14, 0x00, 0x6D, 0x00, 0x9A, 0xFF, 0x16, 0x00,
+ 0x85, 0x00, 0x85, 0xFF, 0x18, 0x00, 0x9D, 0x00,
+ 0x6A, 0xFF, 0x1A, 0x00, 0xB5, 0x00, 0x4A, 0xFF,
+ 0x11, 0x00, 0xF4, 0xFF, 0xB3, 0xFF, 0x11, 0x00,
+ 0xDC, 0xFF, 0xB3, 0xFF, 0x11, 0x00, 0xC4, 0xFF,
+ 0xB3, 0xFF, 0x11, 0x00, 0xAC, 0xFF, 0xB3, 0xFF,
+ 0x14, 0x00, 0x93, 0xFF, 0x9A, 0xFF, 0x16, 0x00,
+ 0x7B, 0xFF, 0x85, 0xFF, 0x18, 0x00, 0x63, 0xFF,
+ 0x6A, 0xFF, 0x1A, 0x00, 0x4B, 0xFF, 0x4A, 0xFF,
+ 0x14, 0x00, 0x0C, 0x00, 0x9D, 0xFF, 0x14, 0x00,
+ 0x24, 0x00, 0x9D, 0xFF, 0x14, 0x00, 0x3C, 0x00,
+ 0x9D, 0xFF, 0x14, 0x00, 0x54, 0x00, 0x9D, 0xFF,
+ 0x17, 0x00, 0x6D, 0x00, 0x7C, 0xFF, 0x19, 0x00,
+ 0x85, 0x00, 0x60, 0xFF, 0x1B, 0x00, 0x9D, 0x00,
+ 0x3E, 0xFF, 0x1D, 0x00, 0xB5, 0x00, 0x15, 0xFF,
+ 0x14, 0x00, 0xF4, 0xFF, 0x9D, 0xFF, 0x14, 0x00,
+ 0xDC, 0xFF, 0x9D, 0xFF, 0x14, 0x00, 0xC4, 0xFF,
+ 0x9D, 0xFF, 0x14, 0x00, 0xAC, 0xFF, 0x9D, 0xFF,
+ 0x17, 0x00, 0x93, 0xFF, 0x7C, 0xFF, 0x19, 0x00,
+ 0x7B, 0xFF, 0x60, 0xFF, 0x1B, 0x00, 0x63, 0xFF,
+ 0x3E, 0xFF, 0x1D, 0x00, 0x4B, 0xFF, 0x15, 0xFF,
+ 0x16, 0x00, 0x0C, 0x00, 0x87, 0xFF, 0x16, 0x00,
+ 0x24, 0x00, 0x87, 0xFF, 0x16, 0x00, 0x3C, 0x00,
+ 0x87, 0xFF, 0x16, 0x00, 0x54, 0x00, 0x87, 0xFF,
+ 0x19, 0x00, 0x6D, 0x00, 0x5F, 0xFF, 0x1B, 0x00,
+ 0x85, 0x00, 0x3D, 0xFF, 0x1D, 0x00, 0x9D, 0x00,
+ 0x13, 0xFF, 0x1F, 0x00, 0xB5, 0x00, 0xE1, 0xFE,
+ 0x16, 0x00, 0xF4, 0xFF, 0x87, 0xFF, 0x16, 0x00,
+ 0xDC, 0xFF, 0x87, 0xFF, 0x16, 0x00, 0xC4, 0xFF,
+ 0x87, 0xFF, 0x16, 0x00, 0xAC, 0xFF, 0x87, 0xFF,
+ 0x19, 0x00, 0x93, 0xFF, 0x5F, 0xFF, 0x1B, 0x00,
+ 0x7B, 0xFF, 0x3D, 0xFF, 0x1D, 0x00, 0x63, 0xFF,
+ 0x13, 0xFF, 0x1F, 0x00, 0x4B, 0xFF, 0xE1, 0xFE,
+ 0x18, 0x00, 0x0C, 0x00, 0x71, 0xFF, 0x18, 0x00,
+ 0x24, 0x00, 0x71, 0xFF, 0x18, 0x00, 0x3C, 0x00,
+ 0x71, 0xFF, 0x18, 0x00, 0x54, 0x00, 0x71, 0xFF,
+ 0x1B, 0x00, 0x6D, 0x00, 0x41, 0xFF, 0x1D, 0x00,
+ 0x85, 0x00, 0x19, 0xFF, 0x1F, 0x00, 0x9D, 0x00,
+ 0xE8, 0xFE, 0x21, 0x00, 0xB5, 0x00, 0xAD, 0xFE,
+ 0x18, 0x00, 0xF4, 0xFF, 0x71, 0xFF, 0x18, 0x00,
+ 0xDC, 0xFF, 0x71, 0xFF, 0x18, 0x00, 0xC4, 0xFF,
+ 0x71, 0xFF, 0x18, 0x00, 0xAC, 0xFF, 0x71, 0xFF,
+ 0x1B, 0x00, 0x93, 0xFF, 0x41, 0xFF, 0x1D, 0x00,
+ 0x7B, 0xFF, 0x19, 0xFF, 0x1F, 0x00, 0x63, 0xFF,
+ 0xE8, 0xFE, 0x21, 0x00, 0x4B, 0xFF, 0xAD, 0xFE,
+ 0x1A, 0x00, 0x0C, 0x00, 0x5B, 0xFF, 0x1A, 0x00,
+ 0x24, 0x00, 0x5B, 0xFF, 0x1A, 0x00, 0x3C, 0x00,
+ 0x5B, 0xFF, 0x1A, 0x00, 0x54, 0x00, 0x5B, 0xFF,
+ 0x1D, 0x00, 0x6D, 0x00, 0x24, 0xFF, 0x1F, 0x00,
+ 0x85, 0x00, 0xF6, 0xFE, 0x21, 0x00, 0x9D, 0x00,
+ 0xBD, 0xFE, 0x23, 0x00, 0xB5, 0x00, 0x79, 0xFE,
+ 0x1A, 0x00, 0xF4, 0xFF, 0x5B, 0xFF, 0x1A, 0x00,
+ 0xDC, 0xFF, 0x5B, 0xFF, 0x1A, 0x00, 0xC4, 0xFF,
+ 0x5B, 0xFF, 0x1A, 0x00, 0xAC, 0xFF, 0x5B, 0xFF,
+ 0x1D, 0x00, 0x93, 0xFF, 0x24, 0xFF, 0x1F, 0x00,
+ 0x7B, 0xFF, 0xF6, 0xFE, 0x21, 0x00, 0x63, 0xFF,
+ 0xBD, 0xFE, 0x23, 0x00, 0x4B, 0xFF, 0x79, 0xFE,
+ 0x12, 0x00, 0x0D, 0x00, 0x0C, 0x00, 0x12, 0x00,
+ 0x27, 0x00, 0x0C, 0x00, 0x12, 0x00, 0x42, 0x00,
+ 0x0C, 0x00, 0x12, 0x00, 0x5C, 0x00, 0x0C, 0x00,
+ 0x15, 0x00, 0x78, 0x00, 0x10, 0x00, 0x17, 0x00,
+ 0x92, 0x00, 0x13, 0x00, 0x19, 0x00, 0xAD, 0x00,
+ 0x17, 0x00, 0x1B, 0x00, 0xC7, 0x00, 0x1C, 0x00,
+ 0x12, 0x00, 0xF3, 0xFF, 0x0C, 0x00, 0x12, 0x00,
+ 0xD9, 0xFF, 0x0C, 0x00, 0x12, 0x00, 0xBE, 0xFF,
+ 0x0C, 0x00, 0x12, 0x00, 0xA4, 0xFF, 0x0C, 0x00,
+ 0x15, 0x00, 0x88, 0xFF, 0x10, 0x00, 0x17, 0x00,
+ 0x6E, 0xFF, 0x13, 0x00, 0x19, 0x00, 0x53, 0xFF,
+ 0x17, 0x00, 0x1B, 0x00, 0x39, 0xFF, 0x1C, 0x00,
+ 0x12, 0x00, 0x0D, 0x00, 0x24, 0x00, 0x12, 0x00,
+ 0x27, 0x00, 0x24, 0x00, 0x12, 0x00, 0x42, 0x00,
+ 0x24, 0x00, 0x12, 0x00, 0x5C, 0x00, 0x24, 0x00,
+ 0x15, 0x00, 0x78, 0x00, 0x30, 0x00, 0x17, 0x00,
+ 0x92, 0x00, 0x3A, 0x00, 0x19, 0x00, 0xAD, 0x00,
+ 0x46, 0x00, 0x1B, 0x00, 0xC7, 0x00, 0x55, 0x00,
+ 0x12, 0x00, 0xF3, 0xFF, 0x24, 0x00, 0x12, 0x00,
+ 0xD9, 0xFF, 0x24, 0x00, 0x12, 0x00, 0xBE, 0xFF,
+ 0x24, 0x00, 0x12, 0x00, 0xA4, 0xFF, 0x24, 0x00,
+ 0x15, 0x00, 0x88, 0xFF, 0x30, 0x00, 0x17, 0x00,
+ 0x6E, 0xFF, 0x3A, 0x00, 0x19, 0x00, 0x53, 0xFF,
+ 0x46, 0x00, 0x1B, 0x00, 0x39, 0xFF, 0x55, 0x00,
+ 0x12, 0x00, 0x0D, 0x00, 0x3C, 0x00, 0x12, 0x00,
+ 0x27, 0x00, 0x3C, 0x00, 0x12, 0x00, 0x42, 0x00,
+ 0x3C, 0x00, 0x12, 0x00, 0x5C, 0x00, 0x3C, 0x00,
+ 0x15, 0x00, 0x78, 0x00, 0x51, 0x00, 0x17, 0x00,
+ 0x92, 0x00, 0x61, 0x00, 0x19, 0x00, 0xAD, 0x00,
+ 0x76, 0x00, 0x1B, 0x00, 0xC7, 0x00, 0x8F, 0x00,
+ 0x12, 0x00, 0xF3, 0xFF, 0x3C, 0x00, 0x12, 0x00,
+ 0xD9, 0xFF, 0x3C, 0x00, 0x12, 0x00, 0xBE, 0xFF,
+ 0x3C, 0x00, 0x12, 0x00, 0xA4, 0xFF, 0x3C, 0x00,
+ 0x15, 0x00, 0x88, 0xFF, 0x51, 0x00, 0x17, 0x00,
+ 0x6E, 0xFF, 0x61, 0x00, 0x19, 0x00, 0x53, 0xFF,
+ 0x76, 0x00, 0x1B, 0x00, 0x39, 0xFF, 0x8F, 0x00,
+ 0x12, 0x00, 0x0D, 0x00, 0x54, 0x00, 0x12, 0x00,
+ 0x27, 0x00, 0x54, 0x00, 0x12, 0x00, 0x42, 0x00,
+ 0x54, 0x00, 0x12, 0x00, 0x5C, 0x00, 0x54, 0x00,
+ 0x15, 0x00, 0x78, 0x00, 0x71, 0x00, 0x17, 0x00,
+ 0x92, 0x00, 0x88, 0x00, 0x19, 0x00, 0xAD, 0x00,
+ 0xA5, 0x00, 0x1B, 0x00, 0xC7, 0x00, 0xC8, 0x00,
+ 0x12, 0x00, 0xF3, 0xFF, 0x54, 0x00, 0x12, 0x00,
+ 0xD9, 0xFF, 0x54, 0x00, 0x12, 0x00, 0xBE, 0xFF,
+ 0x54, 0x00, 0x12, 0x00, 0xA4, 0xFF, 0x54, 0x00,
+ 0x15, 0x00, 0x88, 0xFF, 0x71, 0x00, 0x17, 0x00,
+ 0x6E, 0xFF, 0x88, 0x00, 0x19, 0x00, 0x53, 0xFF,
+ 0xA5, 0x00, 0x1B, 0x00, 0x39, 0xFF, 0xC8, 0x00,
+ 0x15, 0x00, 0x0D, 0x00, 0x6D, 0x00, 0x15, 0x00,
+ 0x27, 0x00, 0x6D, 0x00, 0x15, 0x00, 0x42, 0x00,
+ 0x6D, 0x00, 0x15, 0x00, 0x5C, 0x00, 0x6D, 0x00,
+ 0x18, 0x00, 0x78, 0x00, 0x92, 0x00, 0x1A, 0x00,
+ 0x92, 0x00, 0xB0, 0x00, 0x1C, 0x00, 0xAD, 0x00,
+ 0xD5, 0x00, 0x1E, 0x00, 0xC7, 0x00, 0x02, 0x01,
+ 0x15, 0x00, 0xF3, 0xFF, 0x6D, 0x00, 0x15, 0x00,
+ 0xD9, 0xFF, 0x6D, 0x00, 0x15, 0x00, 0xBE, 0xFF,
+ 0x6D, 0x00, 0x15, 0x00, 0xA4, 0xFF, 0x6D, 0x00,
+ 0x18, 0x00, 0x88, 0xFF, 0x92, 0x00, 0x1A, 0x00,
+ 0x6E, 0xFF, 0xB0, 0x00, 0x1C, 0x00, 0x53, 0xFF,
+ 0xD5, 0x00, 0x1E, 0x00, 0x39, 0xFF, 0x02, 0x01,
+ 0x17, 0x00, 0x0D, 0x00, 0x85, 0x00, 0x17, 0x00,
+ 0x27, 0x00, 0x85, 0x00, 0x17, 0x00, 0x42, 0x00,
+ 0x85, 0x00, 0x17, 0x00, 0x5C, 0x00, 0x85, 0x00,
+ 0x1A, 0x00, 0x78, 0x00, 0xB2, 0x00, 0x1C, 0x00,
+ 0x92, 0x00, 0xD7, 0x00, 0x1E, 0x00, 0xAD, 0x00,
+ 0x04, 0x01, 0x20, 0x00, 0xC7, 0x00, 0x3B, 0x01,
+ 0x17, 0x00, 0xF3, 0xFF, 0x85, 0x00, 0x17, 0x00,
+ 0xD9, 0xFF, 0x85, 0x00, 0x17, 0x00, 0xBE, 0xFF,
+ 0x85, 0x00, 0x17, 0x00, 0xA4, 0xFF, 0x85, 0x00,
+ 0x1A, 0x00, 0x88, 0xFF, 0xB2, 0x00, 0x1C, 0x00,
+ 0x6E, 0xFF, 0xD7, 0x00, 0x1E, 0x00, 0x53, 0xFF,
+ 0x04, 0x01, 0x20, 0x00, 0x39, 0xFF, 0x3B, 0x01,
+ 0x19, 0x00, 0x0D, 0x00, 0x9D, 0x00, 0x19, 0x00,
+ 0x27, 0x00, 0x9D, 0x00, 0x19, 0x00, 0x42, 0x00,
+ 0x9D, 0x00, 0x19, 0x00, 0x5C, 0x00, 0x9D, 0x00,
+ 0x1C, 0x00, 0x78, 0x00, 0xD3, 0x00, 0x1E, 0x00,
+ 0x92, 0x00, 0xFE, 0x00, 0x20, 0x00, 0xAD, 0x00,
+ 0x34, 0x01, 0x22, 0x00, 0xC7, 0x00, 0x75, 0x01,
+ 0x19, 0x00, 0xF3, 0xFF, 0x9D, 0x00, 0x19, 0x00,
+ 0xD9, 0xFF, 0x9D, 0x00, 0x19, 0x00, 0xBE, 0xFF,
+ 0x9D, 0x00, 0x19, 0x00, 0xA4, 0xFF, 0x9D, 0x00,
+ 0x1C, 0x00, 0x88, 0xFF, 0xD3, 0x00, 0x1E, 0x00,
+ 0x6E, 0xFF, 0xFE, 0x00, 0x20, 0x00, 0x53, 0xFF,
+ 0x34, 0x01, 0x22, 0x00, 0x39, 0xFF, 0x75, 0x01,
+ 0x1B, 0x00, 0x0D, 0x00, 0xB5, 0x00, 0x1B, 0x00,
+ 0x27, 0x00, 0xB5, 0x00, 0x1B, 0x00, 0x42, 0x00,
+ 0xB5, 0x00, 0x1B, 0x00, 0x5C, 0x00, 0xB5, 0x00,
+ 0x1E, 0x00, 0x78, 0x00, 0xF3, 0x00, 0x20, 0x00,
+ 0x92, 0x00, 0x25, 0x01, 0x22, 0x00, 0xAD, 0x00,
+ 0x63, 0x01, 0x24, 0x00, 0xC7, 0x00, 0xAE, 0x01,
+ 0x1B, 0x00, 0xF3, 0xFF, 0xB5, 0x00, 0x1B, 0x00,
+ 0xD9, 0xFF, 0xB5, 0x00, 0x1B, 0x00, 0xBE, 0xFF,
+ 0xB5, 0x00, 0x1B, 0x00, 0xA4, 0xFF, 0xB5, 0x00,
+ 0x1E, 0x00, 0x88, 0xFF, 0xF3, 0x00, 0x20, 0x00,
+ 0x6E, 0xFF, 0x25, 0x01, 0x22, 0x00, 0x53, 0xFF,
+ 0x63, 0x01, 0x24, 0x00, 0x39, 0xFF, 0xAE, 0x01,
+ 0x12, 0x00, 0x0D, 0x00, 0xF4, 0xFF, 0x12, 0x00,
+ 0x27, 0x00, 0xF4, 0xFF, 0x12, 0x00, 0x42, 0x00,
+ 0xF4, 0xFF, 0x12, 0x00, 0x5C, 0x00, 0xF4, 0xFF,
+ 0x15, 0x00, 0x78, 0x00, 0xF0, 0xFF, 0x17, 0x00,
+ 0x92, 0x00, 0xED, 0xFF, 0x19, 0x00, 0xAD, 0x00,
+ 0xE9, 0xFF, 0x1B, 0x00, 0xC7, 0x00, 0xE4, 0xFF,
+ 0x12, 0x00, 0xF3, 0xFF, 0xF4, 0xFF, 0x12, 0x00,
+ 0xD9, 0xFF, 0xF4, 0xFF, 0x12, 0x00, 0xBE, 0xFF,
+ 0xF4, 0xFF, 0x12, 0x00, 0xA4, 0xFF, 0xF4, 0xFF,
+ 0x15, 0x00, 0x88, 0xFF, 0xF0, 0xFF, 0x17, 0x00,
+ 0x6E, 0xFF, 0xED, 0xFF, 0x19, 0x00, 0x53, 0xFF,
+ 0xE9, 0xFF, 0x1B, 0x00, 0x39, 0xFF, 0xE4, 0xFF,
+ 0x12, 0x00, 0x0D, 0x00, 0xDC, 0xFF, 0x12, 0x00,
+ 0x27, 0x00, 0xDC, 0xFF, 0x12, 0x00, 0x42, 0x00,
+ 0xDC, 0xFF, 0x12, 0x00, 0x5C, 0x00, 0xDC, 0xFF,
+ 0x15, 0x00, 0x78, 0x00, 0xD0, 0xFF, 0x17, 0x00,
+ 0x92, 0x00, 0xC6, 0xFF, 0x19, 0x00, 0xAD, 0x00,
+ 0xBA, 0xFF, 0x1B, 0x00, 0xC7, 0x00, 0xAB, 0xFF,
+ 0x12, 0x00, 0xF3, 0xFF, 0xDC, 0xFF, 0x12, 0x00,
+ 0xD9, 0xFF, 0xDC, 0xFF, 0x12, 0x00, 0xBE, 0xFF,
+ 0xDC, 0xFF, 0x12, 0x00, 0xA4, 0xFF, 0xDC, 0xFF,
+ 0x15, 0x00, 0x88, 0xFF, 0xD0, 0xFF, 0x17, 0x00,
+ 0x6E, 0xFF, 0xC6, 0xFF, 0x19, 0x00, 0x53, 0xFF,
+ 0xBA, 0xFF, 0x1B, 0x00, 0x39, 0xFF, 0xAB, 0xFF,
+ 0x12, 0x00, 0x0D, 0x00, 0xC4, 0xFF, 0x12, 0x00,
+ 0x27, 0x00, 0xC4, 0xFF, 0x12, 0x00, 0x42, 0x00,
+ 0xC4, 0xFF, 0x12, 0x00, 0x5C, 0x00, 0xC4, 0xFF,
+ 0x15, 0x00, 0x78, 0x00, 0xAF, 0xFF, 0x17, 0x00,
+ 0x92, 0x00, 0x9F, 0xFF, 0x19, 0x00, 0xAD, 0x00,
+ 0x8A, 0xFF, 0x1B, 0x00, 0xC7, 0x00, 0x71, 0xFF,
+ 0x12, 0x00, 0xF3, 0xFF, 0xC4, 0xFF, 0x12, 0x00,
+ 0xD9, 0xFF, 0xC4, 0xFF, 0x12, 0x00, 0xBE, 0xFF,
+ 0xC4, 0xFF, 0x12, 0x00, 0xA4, 0xFF, 0xC4, 0xFF,
+ 0x15, 0x00, 0x88, 0xFF, 0xAF, 0xFF, 0x17, 0x00,
+ 0x6E, 0xFF, 0x9F, 0xFF, 0x19, 0x00, 0x53, 0xFF,
+ 0x8A, 0xFF, 0x1B, 0x00, 0x39, 0xFF, 0x71, 0xFF,
+ 0x12, 0x00, 0x0D, 0x00, 0xAC, 0xFF, 0x12, 0x00,
+ 0x27, 0x00, 0xAC, 0xFF, 0x12, 0x00, 0x42, 0x00,
+ 0xAC, 0xFF, 0x12, 0x00, 0x5C, 0x00, 0xAC, 0xFF,
+ 0x15, 0x00, 0x78, 0x00, 0x8F, 0xFF, 0x17, 0x00,
+ 0x92, 0x00, 0x78, 0xFF, 0x19, 0x00, 0xAD, 0x00,
+ 0x5B, 0xFF, 0x1B, 0x00, 0xC7, 0x00, 0x38, 0xFF,
+ 0x12, 0x00, 0xF3, 0xFF, 0xAC, 0xFF, 0x12, 0x00,
+ 0xD9, 0xFF, 0xAC, 0xFF, 0x12, 0x00, 0xBE, 0xFF,
+ 0xAC, 0xFF, 0x12, 0x00, 0xA4, 0xFF, 0xAC, 0xFF,
+ 0x15, 0x00, 0x88, 0xFF, 0x8F, 0xFF, 0x17, 0x00,
+ 0x6E, 0xFF, 0x78, 0xFF, 0x19, 0x00, 0x53, 0xFF,
+ 0x5B, 0xFF, 0x1B, 0x00, 0x39, 0xFF, 0x38, 0xFF,
+ 0x15, 0x00, 0x0D, 0x00, 0x93, 0xFF, 0x15, 0x00,
+ 0x27, 0x00, 0x93, 0xFF, 0x15, 0x00, 0x42, 0x00,
+ 0x93, 0xFF, 0x15, 0x00, 0x5C, 0x00, 0x93, 0xFF,
+ 0x18, 0x00, 0x78, 0x00, 0x6E, 0xFF, 0x1A, 0x00,
+ 0x92, 0x00, 0x50, 0xFF, 0x1C, 0x00, 0xAD, 0x00,
+ 0x2B, 0xFF, 0x1E, 0x00, 0xC7, 0x00, 0xFE, 0xFE,
+ 0x15, 0x00, 0xF3, 0xFF, 0x93, 0xFF, 0x15, 0x00,
+ 0xD9, 0xFF, 0x93, 0xFF, 0x15, 0x00, 0xBE, 0xFF,
+ 0x93, 0xFF, 0x15, 0x00, 0xA4, 0xFF, 0x93, 0xFF,
+ 0x18, 0x00, 0x88, 0xFF, 0x6E, 0xFF, 0x1A, 0x00,
+ 0x6E, 0xFF, 0x50, 0xFF, 0x1C, 0x00, 0x53, 0xFF,
+ 0x2B, 0xFF, 0x1E, 0x00, 0x39, 0xFF, 0xFE, 0xFE,
+ 0x17, 0x00, 0x0D, 0x00, 0x7B, 0xFF, 0x17, 0x00,
+ 0x27, 0x00, 0x7B, 0xFF, 0x17, 0x00, 0x42, 0x00,
+ 0x7B, 0xFF, 0x17, 0x00, 0x5C, 0x00, 0x7B, 0xFF,
+ 0x1A, 0x00, 0x78, 0x00, 0x4E, 0xFF, 0x1C, 0x00,
+ 0x92, 0x00, 0x29, 0xFF, 0x1E, 0x00, 0xAD, 0x00,
+ 0xFC, 0xFE, 0x20, 0x00, 0xC7, 0x00, 0xC5, 0xFE,
+ 0x17, 0x00, 0xF3, 0xFF, 0x7B, 0xFF, 0x17, 0x00,
+ 0xD9, 0xFF, 0x7B, 0xFF, 0x17, 0x00, 0xBE, 0xFF,
+ 0x7B, 0xFF, 0x17, 0x00, 0xA4, 0xFF, 0x7B, 0xFF,
+ 0x1A, 0x00, 0x88, 0xFF, 0x4E, 0xFF, 0x1C, 0x00,
+ 0x6E, 0xFF, 0x29, 0xFF, 0x1E, 0x00, 0x53, 0xFF,
+ 0xFC, 0xFE, 0x20, 0x00, 0x39, 0xFF, 0xC5, 0xFE,
+ 0x19, 0x00, 0x0D, 0x00, 0x63, 0xFF, 0x19, 0x00,
+ 0x27, 0x00, 0x63, 0xFF, 0x19, 0x00, 0x42, 0x00,
+ 0x63, 0xFF, 0x19, 0x00, 0x5C, 0x00, 0x63, 0xFF,
+ 0x1C, 0x00, 0x78, 0x00, 0x2D, 0xFF, 0x1E, 0x00,
+ 0x92, 0x00, 0x02, 0xFF, 0x20, 0x00, 0xAD, 0x00,
+ 0xCC, 0xFE, 0x22, 0x00, 0xC7, 0x00, 0x8B, 0xFE,
+ 0x19, 0x00, 0xF3, 0xFF, 0x63, 0xFF, 0x19, 0x00,
+ 0xD9, 0xFF, 0x63, 0xFF, 0x19, 0x00, 0xBE, 0xFF,
+ 0x63, 0xFF, 0x19, 0x00, 0xA4, 0xFF, 0x63, 0xFF,
+ 0x1C, 0x00, 0x88, 0xFF, 0x2D, 0xFF, 0x1E, 0x00,
+ 0x6E, 0xFF, 0x02, 0xFF, 0x20, 0x00, 0x53, 0xFF,
+ 0xCC, 0xFE, 0x22, 0x00, 0x39, 0xFF, 0x8B, 0xFE,
+ 0x1B, 0x00, 0x0D, 0x00, 0x4B, 0xFF, 0x1B, 0x00,
+ 0x27, 0x00, 0x4B, 0xFF, 0x1B, 0x00, 0x42, 0x00,
+ 0x4B, 0xFF, 0x1B, 0x00, 0x5C, 0x00, 0x4B, 0xFF,
+ 0x1E, 0x00, 0x78, 0x00, 0x0D, 0xFF, 0x20, 0x00,
+ 0x92, 0x00, 0xDB, 0xFE, 0x22, 0x00, 0xAD, 0x00,
+ 0x9D, 0xFE, 0x24, 0x00, 0xC7, 0x00, 0x52, 0xFE,
+ 0x1B, 0x00, 0xF3, 0xFF, 0x4B, 0xFF, 0x1B, 0x00,
+ 0xD9, 0xFF, 0x4B, 0xFF, 0x1B, 0x00, 0xBE, 0xFF,
+ 0x4B, 0xFF, 0x1B, 0x00, 0xA4, 0xFF, 0x4B, 0xFF,
+ 0x1E, 0x00, 0x88, 0xFF, 0x0D, 0xFF, 0x20, 0x00,
+ 0x6E, 0xFF, 0xDB, 0xFE, 0x22, 0x00, 0x53, 0xFF,
+ 0x9D, 0xFE, 0x24, 0x00, 0x39, 0xFF, 0x52, 0xFE,
+ 0x13, 0x00, 0x0E, 0x00, 0x0D, 0x00, 0x13, 0x00,
+ 0x2B, 0x00, 0x0D, 0x00, 0x13, 0x00, 0x49, 0x00,
+ 0x0D, 0x00, 0x13, 0x00, 0x66, 0x00, 0x0D, 0x00,
+ 0x16, 0x00, 0x84, 0x00, 0x11, 0x00, 0x18, 0x00,
+ 0xA1, 0x00, 0x15, 0x00, 0x1A, 0x00, 0xBF, 0x00,
+ 0x1A, 0x00, 0x1C, 0x00, 0xDC, 0x00, 0x1F, 0x00,
+ 0x13, 0x00, 0xF2, 0xFF, 0x0D, 0x00, 0x13, 0x00,
+ 0xD5, 0xFF, 0x0D, 0x00, 0x13, 0x00, 0xB7, 0xFF,
+ 0x0D, 0x00, 0x13, 0x00, 0x9A, 0xFF, 0x0D, 0x00,
+ 0x16, 0x00, 0x7C, 0xFF, 0x11, 0x00, 0x18, 0x00,
+ 0x5F, 0xFF, 0x15, 0x00, 0x1A, 0x00, 0x41, 0xFF,
+ 0x1A, 0x00, 0x1C, 0x00, 0x24, 0xFF, 0x1F, 0x00,
+ 0x13, 0x00, 0x0E, 0x00, 0x27, 0x00, 0x13, 0x00,
+ 0x2B, 0x00, 0x27, 0x00, 0x13, 0x00, 0x49, 0x00,
+ 0x27, 0x00, 0x13, 0x00, 0x66, 0x00, 0x27, 0x00,
+ 0x16, 0x00, 0x84, 0x00, 0x34, 0x00, 0x18, 0x00,
+ 0xA1, 0x00, 0x40, 0x00, 0x1A, 0x00, 0xBF, 0x00,
+ 0x4E, 0x00, 0x1C, 0x00, 0xDC, 0x00, 0x5E, 0x00,
+ 0x13, 0x00, 0xF2, 0xFF, 0x27, 0x00, 0x13, 0x00,
+ 0xD5, 0xFF, 0x27, 0x00, 0x13, 0x00, 0xB7, 0xFF,
+ 0x27, 0x00, 0x13, 0x00, 0x9A, 0xFF, 0x27, 0x00,
+ 0x16, 0x00, 0x7C, 0xFF, 0x34, 0x00, 0x18, 0x00,
+ 0x5F, 0xFF, 0x40, 0x00, 0x1A, 0x00, 0x41, 0xFF,
+ 0x4E, 0x00, 0x1C, 0x00, 0x24, 0xFF, 0x5E, 0x00,
+ 0x13, 0x00, 0x0E, 0x00, 0x42, 0x00, 0x13, 0x00,
+ 0x2B, 0x00, 0x42, 0x00, 0x13, 0x00, 0x49, 0x00,
+ 0x42, 0x00, 0x13, 0x00, 0x66, 0x00, 0x42, 0x00,
+ 0x16, 0x00, 0x84, 0x00, 0x58, 0x00, 0x18, 0x00,
+ 0xA1, 0x00, 0x6B, 0x00, 0x1A, 0x00, 0xBF, 0x00,
+ 0x82, 0x00, 0x1C, 0x00, 0xDC, 0x00, 0x9D, 0x00,
+ 0x13, 0x00, 0xF2, 0xFF, 0x42, 0x00, 0x13, 0x00,
+ 0xD5, 0xFF, 0x42, 0x00, 0x13, 0x00, 0xB7, 0xFF,
+ 0x42, 0x00, 0x13, 0x00, 0x9A, 0xFF, 0x42, 0x00,
+ 0x16, 0x00, 0x7C, 0xFF, 0x58, 0x00, 0x18, 0x00,
+ 0x5F, 0xFF, 0x6B, 0x00, 0x1A, 0x00, 0x41, 0xFF,
+ 0x82, 0x00, 0x1C, 0x00, 0x24, 0xFF, 0x9D, 0x00,
+ 0x13, 0x00, 0x0E, 0x00, 0x5C, 0x00, 0x13, 0x00,
+ 0x2B, 0x00, 0x5C, 0x00, 0x13, 0x00, 0x49, 0x00,
+ 0x5C, 0x00, 0x13, 0x00, 0x66, 0x00, 0x5C, 0x00,
+ 0x16, 0x00, 0x84, 0x00, 0x7B, 0x00, 0x18, 0x00,
+ 0xA1, 0x00, 0x96, 0x00, 0x1A, 0x00, 0xBF, 0x00,
+ 0xB6, 0x00, 0x1C, 0x00, 0xDC, 0x00, 0xDC, 0x00,
+ 0x13, 0x00, 0xF2, 0xFF, 0x5C, 0x00, 0x13, 0x00,
+ 0xD5, 0xFF, 0x5C, 0x00, 0x13, 0x00, 0xB7, 0xFF,
+ 0x5C, 0x00, 0x13, 0x00, 0x9A, 0xFF, 0x5C, 0x00,
+ 0x16, 0x00, 0x7C, 0xFF, 0x7B, 0x00, 0x18, 0x00,
+ 0x5F, 0xFF, 0x96, 0x00, 0x1A, 0x00, 0x41, 0xFF,
+ 0xB6, 0x00, 0x1C, 0x00, 0x24, 0xFF, 0xDC, 0x00,
+ 0x16, 0x00, 0x0E, 0x00, 0x78, 0x00, 0x16, 0x00,
+ 0x2B, 0x00, 0x78, 0x00, 0x16, 0x00, 0x49, 0x00,
+ 0x78, 0x00, 0x16, 0x00, 0x66, 0x00, 0x78, 0x00,
+ 0x19, 0x00, 0x84, 0x00, 0xA0, 0x00, 0x1B, 0x00,
+ 0xA1, 0x00, 0xC2, 0x00, 0x1D, 0x00, 0xBF, 0x00,
+ 0xEB, 0x00, 0x1F, 0x00, 0xDC, 0x00, 0x1C, 0x01,
+ 0x16, 0x00, 0xF2, 0xFF, 0x78, 0x00, 0x16, 0x00,
+ 0xD5, 0xFF, 0x78, 0x00, 0x16, 0x00, 0xB7, 0xFF,
+ 0x78, 0x00, 0x16, 0x00, 0x9A, 0xFF, 0x78, 0x00,
+ 0x19, 0x00, 0x7C, 0xFF, 0xA0, 0x00, 0x1B, 0x00,
+ 0x5F, 0xFF, 0xC2, 0x00, 0x1D, 0x00, 0x41, 0xFF,
+ 0xEB, 0x00, 0x1F, 0x00, 0x24, 0xFF, 0x1C, 0x01,
+ 0x18, 0x00, 0x0E, 0x00, 0x92, 0x00, 0x18, 0x00,
+ 0x2B, 0x00, 0x92, 0x00, 0x18, 0x00, 0x49, 0x00,
+ 0x92, 0x00, 0x18, 0x00, 0x66, 0x00, 0x92, 0x00,
+ 0x1B, 0x00, 0x84, 0x00, 0xC3, 0x00, 0x1D, 0x00,
+ 0xA1, 0x00, 0xED, 0x00, 0x1F, 0x00, 0xBF, 0x00,
+ 0x1F, 0x01, 0x21, 0x00, 0xDC, 0x00, 0x5B, 0x01,
+ 0x18, 0x00, 0xF2, 0xFF, 0x92, 0x00, 0x18, 0x00,
+ 0xD5, 0xFF, 0x92, 0x00, 0x18, 0x00, 0xB7, 0xFF,
+ 0x92, 0x00, 0x18, 0x00, 0x9A, 0xFF, 0x92, 0x00,
+ 0x1B, 0x00, 0x7C, 0xFF, 0xC3, 0x00, 0x1D, 0x00,
+ 0x5F, 0xFF, 0xED, 0x00, 0x1F, 0x00, 0x41, 0xFF,
+ 0x1F, 0x01, 0x21, 0x00, 0x24, 0xFF, 0x5B, 0x01,
+ 0x1A, 0x00, 0x0E, 0x00, 0xAD, 0x00, 0x1A, 0x00,
+ 0x2B, 0x00, 0xAD, 0x00, 0x1A, 0x00, 0x49, 0x00,
+ 0xAD, 0x00, 0x1A, 0x00, 0x66, 0x00, 0xAD, 0x00,
+ 0x1D, 0x00, 0x84, 0x00, 0xE7, 0x00, 0x1F, 0x00,
+ 0xA1, 0x00, 0x18, 0x01, 0x21, 0x00, 0xBF, 0x00,
+ 0x53, 0x01, 0x23, 0x00, 0xDC, 0x00, 0x9A, 0x01,
+ 0x1A, 0x00, 0xF2, 0xFF, 0xAD, 0x00, 0x1A, 0x00,
+ 0xD5, 0xFF, 0xAD, 0x00, 0x1A, 0x00, 0xB7, 0xFF,
+ 0xAD, 0x00, 0x1A, 0x00, 0x9A, 0xFF, 0xAD, 0x00,
+ 0x1D, 0x00, 0x7C, 0xFF, 0xE7, 0x00, 0x1F, 0x00,
+ 0x5F, 0xFF, 0x18, 0x01, 0x21, 0x00, 0x41, 0xFF,
+ 0x53, 0x01, 0x23, 0x00, 0x24, 0xFF, 0x9A, 0x01,
+ 0x1C, 0x00, 0x0E, 0x00, 0xC7, 0x00, 0x1C, 0x00,
+ 0x2B, 0x00, 0xC7, 0x00, 0x1C, 0x00, 0x49, 0x00,
+ 0xC7, 0x00, 0x1C, 0x00, 0x66, 0x00, 0xC7, 0x00,
+ 0x1F, 0x00, 0x84, 0x00, 0x0A, 0x01, 0x21, 0x00,
+ 0xA1, 0x00, 0x43, 0x01, 0x23, 0x00, 0xBF, 0x00,
+ 0x87, 0x01, 0x25, 0x00, 0xDC, 0x00, 0xD9, 0x01,
+ 0x1C, 0x00, 0xF2, 0xFF, 0xC7, 0x00, 0x1C, 0x00,
+ 0xD5, 0xFF, 0xC7, 0x00, 0x1C, 0x00, 0xB7, 0xFF,
+ 0xC7, 0x00, 0x1C, 0x00, 0x9A, 0xFF, 0xC7, 0x00,
+ 0x1F, 0x00, 0x7C, 0xFF, 0x0A, 0x01, 0x21, 0x00,
+ 0x5F, 0xFF, 0x43, 0x01, 0x23, 0x00, 0x41, 0xFF,
+ 0x87, 0x01, 0x25, 0x00, 0x24, 0xFF, 0xD9, 0x01,
+ 0x13, 0x00, 0x0E, 0x00, 0xF3, 0xFF, 0x13, 0x00,
+ 0x2B, 0x00, 0xF3, 0xFF, 0x13, 0x00, 0x49, 0x00,
+ 0xF3, 0xFF, 0x13, 0x00, 0x66, 0x00, 0xF3, 0xFF,
+ 0x16, 0x00, 0x84, 0x00, 0xEF, 0xFF, 0x18, 0x00,
+ 0xA1, 0x00, 0xEB, 0xFF, 0x1A, 0x00, 0xBF, 0x00,
+ 0xE6, 0xFF, 0x1C, 0x00, 0xDC, 0x00, 0xE1, 0xFF,
+ 0x13, 0x00, 0xF2, 0xFF, 0xF3, 0xFF, 0x13, 0x00,
+ 0xD5, 0xFF, 0xF3, 0xFF, 0x13, 0x00, 0xB7, 0xFF,
+ 0xF3, 0xFF, 0x13, 0x00, 0x9A, 0xFF, 0xF3, 0xFF,
+ 0x16, 0x00, 0x7C, 0xFF, 0xEF, 0xFF, 0x18, 0x00,
+ 0x5F, 0xFF, 0xEB, 0xFF, 0x1A, 0x00, 0x41, 0xFF,
+ 0xE6, 0xFF, 0x1C, 0x00, 0x24, 0xFF, 0xE1, 0xFF,
+ 0x13, 0x00, 0x0E, 0x00, 0xD9, 0xFF, 0x13, 0x00,
+ 0x2B, 0x00, 0xD9, 0xFF, 0x13, 0x00, 0x49, 0x00,
+ 0xD9, 0xFF, 0x13, 0x00, 0x66, 0x00, 0xD9, 0xFF,
+ 0x16, 0x00, 0x84, 0x00, 0xCC, 0xFF, 0x18, 0x00,
+ 0xA1, 0x00, 0xC0, 0xFF, 0x1A, 0x00, 0xBF, 0x00,
+ 0xB2, 0xFF, 0x1C, 0x00, 0xDC, 0x00, 0xA2, 0xFF,
+ 0x13, 0x00, 0xF2, 0xFF, 0xD9, 0xFF, 0x13, 0x00,
+ 0xD5, 0xFF, 0xD9, 0xFF, 0x13, 0x00, 0xB7, 0xFF,
+ 0xD9, 0xFF, 0x13, 0x00, 0x9A, 0xFF, 0xD9, 0xFF,
+ 0x16, 0x00, 0x7C, 0xFF, 0xCC, 0xFF, 0x18, 0x00,
+ 0x5F, 0xFF, 0xC0, 0xFF, 0x1A, 0x00, 0x41, 0xFF,
+ 0xB2, 0xFF, 0x1C, 0x00, 0x24, 0xFF, 0xA2, 0xFF,
+ 0x13, 0x00, 0x0E, 0x00, 0xBE, 0xFF, 0x13, 0x00,
+ 0x2B, 0x00, 0xBE, 0xFF, 0x13, 0x00, 0x49, 0x00,
+ 0xBE, 0xFF, 0x13, 0x00, 0x66, 0x00, 0xBE, 0xFF,
+ 0x16, 0x00, 0x84, 0x00, 0xA8, 0xFF, 0x18, 0x00,
+ 0xA1, 0x00, 0x95, 0xFF, 0x1A, 0x00, 0xBF, 0x00,
+ 0x7E, 0xFF, 0x1C, 0x00, 0xDC, 0x00, 0x63, 0xFF,
+ 0x13, 0x00, 0xF2, 0xFF, 0xBE, 0xFF, 0x13, 0x00,
+ 0xD5, 0xFF, 0xBE, 0xFF, 0x13, 0x00, 0xB7, 0xFF,
+ 0xBE, 0xFF, 0x13, 0x00, 0x9A, 0xFF, 0xBE, 0xFF,
+ 0x16, 0x00, 0x7C, 0xFF, 0xA8, 0xFF, 0x18, 0x00,
+ 0x5F, 0xFF, 0x95, 0xFF, 0x1A, 0x00, 0x41, 0xFF,
+ 0x7E, 0xFF, 0x1C, 0x00, 0x24, 0xFF, 0x63, 0xFF,
+ 0x13, 0x00, 0x0E, 0x00, 0xA4, 0xFF, 0x13, 0x00,
+ 0x2B, 0x00, 0xA4, 0xFF, 0x13, 0x00, 0x49, 0x00,
+ 0xA4, 0xFF, 0x13, 0x00, 0x66, 0x00, 0xA4, 0xFF,
+ 0x16, 0x00, 0x84, 0x00, 0x85, 0xFF, 0x18, 0x00,
+ 0xA1, 0x00, 0x6A, 0xFF, 0x1A, 0x00, 0xBF, 0x00,
+ 0x4A, 0xFF, 0x1C, 0x00, 0xDC, 0x00, 0x24, 0xFF,
+ 0x13, 0x00, 0xF2, 0xFF, 0xA4, 0xFF, 0x13, 0x00,
+ 0xD5, 0xFF, 0xA4, 0xFF, 0x13, 0x00, 0xB7, 0xFF,
+ 0xA4, 0xFF, 0x13, 0x00, 0x9A, 0xFF, 0xA4, 0xFF,
+ 0x16, 0x00, 0x7C, 0xFF, 0x85, 0xFF, 0x18, 0x00,
+ 0x5F, 0xFF, 0x6A, 0xFF, 0x1A, 0x00, 0x41, 0xFF,
+ 0x4A, 0xFF, 0x1C, 0x00, 0x24, 0xFF, 0x24, 0xFF,
+ 0x16, 0x00, 0x0E, 0x00, 0x88, 0xFF, 0x16, 0x00,
+ 0x2B, 0x00, 0x88, 0xFF, 0x16, 0x00, 0x49, 0x00,
+ 0x88, 0xFF, 0x16, 0x00, 0x66, 0x00, 0x88, 0xFF,
+ 0x19, 0x00, 0x84, 0x00, 0x60, 0xFF, 0x1B, 0x00,
+ 0xA1, 0x00, 0x3E, 0xFF, 0x1D, 0x00, 0xBF, 0x00,
+ 0x15, 0xFF, 0x1F, 0x00, 0xDC, 0x00, 0xE4, 0xFE,
+ 0x16, 0x00, 0xF2, 0xFF, 0x88, 0xFF, 0x16, 0x00,
+ 0xD5, 0xFF, 0x88, 0xFF, 0x16, 0x00, 0xB7, 0xFF,
+ 0x88, 0xFF, 0x16, 0x00, 0x9A, 0xFF, 0x88, 0xFF,
+ 0x19, 0x00, 0x7C, 0xFF, 0x60, 0xFF, 0x1B, 0x00,
+ 0x5F, 0xFF, 0x3E, 0xFF, 0x1D, 0x00, 0x41, 0xFF,
+ 0x15, 0xFF, 0x1F, 0x00, 0x24, 0xFF, 0xE4, 0xFE,
+ 0x18, 0x00, 0x0E, 0x00, 0x6E, 0xFF, 0x18, 0x00,
+ 0x2B, 0x00, 0x6E, 0xFF, 0x18, 0x00, 0x49, 0x00,
+ 0x6E, 0xFF, 0x18, 0x00, 0x66, 0x00, 0x6E, 0xFF,
+ 0x1B, 0x00, 0x84, 0x00, 0x3D, 0xFF, 0x1D, 0x00,
+ 0xA1, 0x00, 0x13, 0xFF, 0x1F, 0x00, 0xBF, 0x00,
+ 0xE1, 0xFE, 0x21, 0x00, 0xDC, 0x00, 0xA5, 0xFE,
+ 0x18, 0x00, 0xF2, 0xFF, 0x6E, 0xFF, 0x18, 0x00,
+ 0xD5, 0xFF, 0x6E, 0xFF, 0x18, 0x00, 0xB7, 0xFF,
+ 0x6E, 0xFF, 0x18, 0x00, 0x9A, 0xFF, 0x6E, 0xFF,
+ 0x1B, 0x00, 0x7C, 0xFF, 0x3D, 0xFF, 0x1D, 0x00,
+ 0x5F, 0xFF, 0x13, 0xFF, 0x1F, 0x00, 0x41, 0xFF,
+ 0xE1, 0xFE, 0x21, 0x00, 0x24, 0xFF, 0xA5, 0xFE,
+ 0x1A, 0x00, 0x0E, 0x00, 0x53, 0xFF, 0x1A, 0x00,
+ 0x2B, 0x00, 0x53, 0xFF, 0x1A, 0x00, 0x49, 0x00,
+ 0x53, 0xFF, 0x1A, 0x00, 0x66, 0x00, 0x53, 0xFF,
+ 0x1D, 0x00, 0x84, 0x00, 0x19, 0xFF, 0x1F, 0x00,
+ 0xA1, 0x00, 0xE8, 0xFE, 0x21, 0x00, 0xBF, 0x00,
+ 0xAD, 0xFE, 0x23, 0x00, 0xDC, 0x00, 0x66, 0xFE,
+ 0x1A, 0x00, 0xF2, 0xFF, 0x53, 0xFF, 0x1A, 0x00,
+ 0xD5, 0xFF, 0x53, 0xFF, 0x1A, 0x00, 0xB7, 0xFF,
+ 0x53, 0xFF, 0x1A, 0x00, 0x9A, 0xFF, 0x53, 0xFF,
+ 0x1D, 0x00, 0x7C, 0xFF, 0x19, 0xFF, 0x1F, 0x00,
+ 0x5F, 0xFF, 0xE8, 0xFE, 0x21, 0x00, 0x41, 0xFF,
+ 0xAD, 0xFE, 0x23, 0x00, 0x24, 0xFF, 0x66, 0xFE,
+ 0x1C, 0x00, 0x0E, 0x00, 0x39, 0xFF, 0x1C, 0x00,
+ 0x2B, 0x00, 0x39, 0xFF, 0x1C, 0x00, 0x49, 0x00,
+ 0x39, 0xFF, 0x1C, 0x00, 0x66, 0x00, 0x39, 0xFF,
+ 0x1F, 0x00, 0x84, 0x00, 0xF6, 0xFE, 0x21, 0x00,
+ 0xA1, 0x00, 0xBD, 0xFE, 0x23, 0x00, 0xBF, 0x00,
+ 0x79, 0xFE, 0x25, 0x00, 0xDC, 0x00, 0x27, 0xFE,
+ 0x1C, 0x00, 0xF2, 0xFF, 0x39, 0xFF, 0x1C, 0x00,
+ 0xD5, 0xFF, 0x39, 0xFF, 0x1C, 0x00, 0xB7, 0xFF,
+ 0x39, 0xFF, 0x1C, 0x00, 0x9A, 0xFF, 0x39, 0xFF,
+ 0x1F, 0x00, 0x7C, 0xFF, 0xF6, 0xFE, 0x21, 0x00,
+ 0x5F, 0xFF, 0xBD, 0xFE, 0x23, 0x00, 0x41, 0xFF,
+ 0x79, 0xFE, 0x25, 0x00, 0x24, 0xFF, 0x27, 0xFE,
+ 0x14, 0x00, 0x10, 0x00, 0x0E, 0x00, 0x14, 0x00,
+ 0x30, 0x00, 0x0E, 0x00, 0x14, 0x00, 0x51, 0x00,
+ 0x0E, 0x00, 0x14, 0x00, 0x71, 0x00, 0x0E, 0x00,
+ 0x17, 0x00, 0x92, 0x00, 0x13, 0x00, 0x19, 0x00,
+ 0xB2, 0x00, 0x17, 0x00, 0x1B, 0x00, 0xD3, 0x00,
+ 0x1C, 0x00, 0x1D, 0x00, 0xF3, 0x00, 0x22, 0x00,
+ 0x14, 0x00, 0xF0, 0xFF, 0x0E, 0x00, 0x14, 0x00,
+ 0xD0, 0xFF, 0x0E, 0x00, 0x14, 0x00, 0xAF, 0xFF,
+ 0x0E, 0x00, 0x14, 0x00, 0x8F, 0xFF, 0x0E, 0x00,
+ 0x17, 0x00, 0x6E, 0xFF, 0x13, 0x00, 0x19, 0x00,
+ 0x4E, 0xFF, 0x17, 0x00, 0x1B, 0x00, 0x2D, 0xFF,
+ 0x1C, 0x00, 0x1D, 0x00, 0x0D, 0xFF, 0x22, 0x00,
+ 0x14, 0x00, 0x10, 0x00, 0x2B, 0x00, 0x14, 0x00,
+ 0x30, 0x00, 0x2B, 0x00, 0x14, 0x00, 0x51, 0x00,
+ 0x2B, 0x00, 0x14, 0x00, 0x71, 0x00, 0x2B, 0x00,
+ 0x17, 0x00, 0x92, 0x00, 0x3A, 0x00, 0x19, 0x00,
+ 0xB2, 0x00, 0x46, 0x00, 0x1B, 0x00, 0xD3, 0x00,
+ 0x55, 0x00, 0x1D, 0x00, 0xF3, 0x00, 0x67, 0x00,
+ 0x14, 0x00, 0xF0, 0xFF, 0x2B, 0x00, 0x14, 0x00,
+ 0xD0, 0xFF, 0x2B, 0x00, 0x14, 0x00, 0xAF, 0xFF,
+ 0x2B, 0x00, 0x14, 0x00, 0x8F, 0xFF, 0x2B, 0x00,
+ 0x17, 0x00, 0x6E, 0xFF, 0x3A, 0x00, 0x19, 0x00,
+ 0x4E, 0xFF, 0x46, 0x00, 0x1B, 0x00, 0x2D, 0xFF,
+ 0x55, 0x00, 0x1D, 0x00, 0x0D, 0xFF, 0x67, 0x00,
+ 0x14, 0x00, 0x10, 0x00, 0x49, 0x00, 0x14, 0x00,
+ 0x30, 0x00, 0x49, 0x00, 0x14, 0x00, 0x51, 0x00,
+ 0x49, 0x00, 0x14, 0x00, 0x71, 0x00, 0x49, 0x00,
+ 0x17, 0x00, 0x92, 0x00, 0x61, 0x00, 0x19, 0x00,
+ 0xB2, 0x00, 0x76, 0x00, 0x1B, 0x00, 0xD3, 0x00,
+ 0x8F, 0x00, 0x1D, 0x00, 0xF3, 0x00, 0xAD, 0x00,
+ 0x14, 0x00, 0xF0, 0xFF, 0x49, 0x00, 0x14, 0x00,
+ 0xD0, 0xFF, 0x49, 0x00, 0x14, 0x00, 0xAF, 0xFF,
+ 0x49, 0x00, 0x14, 0x00, 0x8F, 0xFF, 0x49, 0x00,
+ 0x17, 0x00, 0x6E, 0xFF, 0x61, 0x00, 0x19, 0x00,
+ 0x4E, 0xFF, 0x76, 0x00, 0x1B, 0x00, 0x2D, 0xFF,
+ 0x8F, 0x00, 0x1D, 0x00, 0x0D, 0xFF, 0xAD, 0x00,
+ 0x14, 0x00, 0x10, 0x00, 0x66, 0x00, 0x14, 0x00,
+ 0x30, 0x00, 0x66, 0x00, 0x14, 0x00, 0x51, 0x00,
+ 0x66, 0x00, 0x14, 0x00, 0x71, 0x00, 0x66, 0x00,
+ 0x17, 0x00, 0x92, 0x00, 0x88, 0x00, 0x19, 0x00,
+ 0xB2, 0x00, 0xA5, 0x00, 0x1B, 0x00, 0xD3, 0x00,
+ 0xC8, 0x00, 0x1D, 0x00, 0xF3, 0x00, 0xF2, 0x00,
+ 0x14, 0x00, 0xF0, 0xFF, 0x66, 0x00, 0x14, 0x00,
+ 0xD0, 0xFF, 0x66, 0x00, 0x14, 0x00, 0xAF, 0xFF,
+ 0x66, 0x00, 0x14, 0x00, 0x8F, 0xFF, 0x66, 0x00,
+ 0x17, 0x00, 0x6E, 0xFF, 0x88, 0x00, 0x19, 0x00,
+ 0x4E, 0xFF, 0xA5, 0x00, 0x1B, 0x00, 0x2D, 0xFF,
+ 0xC8, 0x00, 0x1D, 0x00, 0x0D, 0xFF, 0xF2, 0x00,
+ 0x17, 0x00, 0x10, 0x00, 0x84, 0x00, 0x17, 0x00,
+ 0x30, 0x00, 0x84, 0x00, 0x17, 0x00, 0x51, 0x00,
+ 0x84, 0x00, 0x17, 0x00, 0x71, 0x00, 0x84, 0x00,
+ 0x1A, 0x00, 0x92, 0x00, 0xB0, 0x00, 0x1C, 0x00,
+ 0xB2, 0x00, 0xD5, 0x00, 0x1E, 0x00, 0xD3, 0x00,
+ 0x02, 0x01, 0x20, 0x00, 0xF3, 0x00, 0x39, 0x01,
+ 0x17, 0x00, 0xF0, 0xFF, 0x84, 0x00, 0x17, 0x00,
+ 0xD0, 0xFF, 0x84, 0x00, 0x17, 0x00, 0xAF, 0xFF,
+ 0x84, 0x00, 0x17, 0x00, 0x8F, 0xFF, 0x84, 0x00,
+ 0x1A, 0x00, 0x6E, 0xFF, 0xB0, 0x00, 0x1C, 0x00,
+ 0x4E, 0xFF, 0xD5, 0x00, 0x1E, 0x00, 0x2D, 0xFF,
+ 0x02, 0x01, 0x20, 0x00, 0x0D, 0xFF, 0x39, 0x01,
+ 0x19, 0x00, 0x10, 0x00, 0xA1, 0x00, 0x19, 0x00,
+ 0x30, 0x00, 0xA1, 0x00, 0x19, 0x00, 0x51, 0x00,
+ 0xA1, 0x00, 0x19, 0x00, 0x71, 0x00, 0xA1, 0x00,
+ 0x1C, 0x00, 0x92, 0x00, 0xD7, 0x00, 0x1E, 0x00,
+ 0xB2, 0x00, 0x04, 0x01, 0x20, 0x00, 0xD3, 0x00,
+ 0x3B, 0x01, 0x22, 0x00, 0xF3, 0x00, 0x7E, 0x01,
+ 0x19, 0x00, 0xF0, 0xFF, 0xA1, 0x00, 0x19, 0x00,
+ 0xD0, 0xFF, 0xA1, 0x00, 0x19, 0x00, 0xAF, 0xFF,
+ 0xA1, 0x00, 0x19, 0x00, 0x8F, 0xFF, 0xA1, 0x00,
+ 0x1C, 0x00, 0x6E, 0xFF, 0xD7, 0x00, 0x1E, 0x00,
+ 0x4E, 0xFF, 0x04, 0x01, 0x20, 0x00, 0x2D, 0xFF,
+ 0x3B, 0x01, 0x22, 0x00, 0x0D, 0xFF, 0x7E, 0x01,
+ 0x1B, 0x00, 0x10, 0x00, 0xBF, 0x00, 0x1B, 0x00,
+ 0x30, 0x00, 0xBF, 0x00, 0x1B, 0x00, 0x51, 0x00,
+ 0xBF, 0x00, 0x1B, 0x00, 0x71, 0x00, 0xBF, 0x00,
+ 0x1E, 0x00, 0x92, 0x00, 0xFE, 0x00, 0x20, 0x00,
+ 0xB2, 0x00, 0x34, 0x01, 0x22, 0x00, 0xD3, 0x00,
+ 0x75, 0x01, 0x24, 0x00, 0xF3, 0x00, 0xC4, 0x01,
+ 0x1B, 0x00, 0xF0, 0xFF, 0xBF, 0x00, 0x1B, 0x00,
+ 0xD0, 0xFF, 0xBF, 0x00, 0x1B, 0x00, 0xAF, 0xFF,
+ 0xBF, 0x00, 0x1B, 0x00, 0x8F, 0xFF, 0xBF, 0x00,
+ 0x1E, 0x00, 0x6E, 0xFF, 0xFE, 0x00, 0x20, 0x00,
+ 0x4E, 0xFF, 0x34, 0x01, 0x22, 0x00, 0x2D, 0xFF,
+ 0x75, 0x01, 0x24, 0x00, 0x0D, 0xFF, 0xC4, 0x01,
+ 0x1D, 0x00, 0x10, 0x00, 0xDC, 0x00, 0x1D, 0x00,
+ 0x30, 0x00, 0xDC, 0x00, 0x1D, 0x00, 0x51, 0x00,
+ 0xDC, 0x00, 0x1D, 0x00, 0x71, 0x00, 0xDC, 0x00,
+ 0x20, 0x00, 0x92, 0x00, 0x25, 0x01, 0x22, 0x00,
+ 0xB2, 0x00, 0x63, 0x01, 0x24, 0x00, 0xD3, 0x00,
+ 0xAE, 0x01, 0x26, 0x00, 0xF3, 0x00, 0x09, 0x02,
+ 0x1D, 0x00, 0xF0, 0xFF, 0xDC, 0x00, 0x1D, 0x00,
+ 0xD0, 0xFF, 0xDC, 0x00, 0x1D, 0x00, 0xAF, 0xFF,
+ 0xDC, 0x00, 0x1D, 0x00, 0x8F, 0xFF, 0xDC, 0x00,
+ 0x20, 0x00, 0x6E, 0xFF, 0x25, 0x01, 0x22, 0x00,
+ 0x4E, 0xFF, 0x63, 0x01, 0x24, 0x00, 0x2D, 0xFF,
+ 0xAE, 0x01, 0x26, 0x00, 0x0D, 0xFF, 0x09, 0x02,
+ 0x14, 0x00, 0x10, 0x00, 0xF2, 0xFF, 0x14, 0x00,
+ 0x30, 0x00, 0xF2, 0xFF, 0x14, 0x00, 0x51, 0x00,
+ 0xF2, 0xFF, 0x14, 0x00, 0x71, 0x00, 0xF2, 0xFF,
+ 0x17, 0x00, 0x92, 0x00, 0xED, 0xFF, 0x19, 0x00,
+ 0xB2, 0x00, 0xE9, 0xFF, 0x1B, 0x00, 0xD3, 0x00,
+ 0xE4, 0xFF, 0x1D, 0x00, 0xF3, 0x00, 0xDE, 0xFF,
+ 0x14, 0x00, 0xF0, 0xFF, 0xF2, 0xFF, 0x14, 0x00,
+ 0xD0, 0xFF, 0xF2, 0xFF, 0x14, 0x00, 0xAF, 0xFF,
+ 0xF2, 0xFF, 0x14, 0x00, 0x8F, 0xFF, 0xF2, 0xFF,
+ 0x17, 0x00, 0x6E, 0xFF, 0xED, 0xFF, 0x19, 0x00,
+ 0x4E, 0xFF, 0xE9, 0xFF, 0x1B, 0x00, 0x2D, 0xFF,
+ 0xE4, 0xFF, 0x1D, 0x00, 0x0D, 0xFF, 0xDE, 0xFF,
+ 0x14, 0x00, 0x10, 0x00, 0xD5, 0xFF, 0x14, 0x00,
+ 0x30, 0x00, 0xD5, 0xFF, 0x14, 0x00, 0x51, 0x00,
+ 0xD5, 0xFF, 0x14, 0x00, 0x71, 0x00, 0xD5, 0xFF,
+ 0x17, 0x00, 0x92, 0x00, 0xC6, 0xFF, 0x19, 0x00,
+ 0xB2, 0x00, 0xBA, 0xFF, 0x1B, 0x00, 0xD3, 0x00,
+ 0xAB, 0xFF, 0x1D, 0x00, 0xF3, 0x00, 0x99, 0xFF,
+ 0x14, 0x00, 0xF0, 0xFF, 0xD5, 0xFF, 0x14, 0x00,
+ 0xD0, 0xFF, 0xD5, 0xFF, 0x14, 0x00, 0xAF, 0xFF,
+ 0xD5, 0xFF, 0x14, 0x00, 0x8F, 0xFF, 0xD5, 0xFF,
+ 0x17, 0x00, 0x6E, 0xFF, 0xC6, 0xFF, 0x19, 0x00,
+ 0x4E, 0xFF, 0xBA, 0xFF, 0x1B, 0x00, 0x2D, 0xFF,
+ 0xAB, 0xFF, 0x1D, 0x00, 0x0D, 0xFF, 0x99, 0xFF,
+ 0x14, 0x00, 0x10, 0x00, 0xB7, 0xFF, 0x14, 0x00,
+ 0x30, 0x00, 0xB7, 0xFF, 0x14, 0x00, 0x51, 0x00,
+ 0xB7, 0xFF, 0x14, 0x00, 0x71, 0x00, 0xB7, 0xFF,
+ 0x17, 0x00, 0x92, 0x00, 0x9F, 0xFF, 0x19, 0x00,
+ 0xB2, 0x00, 0x8A, 0xFF, 0x1B, 0x00, 0xD3, 0x00,
+ 0x71, 0xFF, 0x1D, 0x00, 0xF3, 0x00, 0x53, 0xFF,
+ 0x14, 0x00, 0xF0, 0xFF, 0xB7, 0xFF, 0x14, 0x00,
+ 0xD0, 0xFF, 0xB7, 0xFF, 0x14, 0x00, 0xAF, 0xFF,
+ 0xB7, 0xFF, 0x14, 0x00, 0x8F, 0xFF, 0xB7, 0xFF,
+ 0x17, 0x00, 0x6E, 0xFF, 0x9F, 0xFF, 0x19, 0x00,
+ 0x4E, 0xFF, 0x8A, 0xFF, 0x1B, 0x00, 0x2D, 0xFF,
+ 0x71, 0xFF, 0x1D, 0x00, 0x0D, 0xFF, 0x53, 0xFF,
+ 0x14, 0x00, 0x10, 0x00, 0x9A, 0xFF, 0x14, 0x00,
+ 0x30, 0x00, 0x9A, 0xFF, 0x14, 0x00, 0x51, 0x00,
+ 0x9A, 0xFF, 0x14, 0x00, 0x71, 0x00, 0x9A, 0xFF,
+ 0x17, 0x00, 0x92, 0x00, 0x78, 0xFF, 0x19, 0x00,
+ 0xB2, 0x00, 0x5B, 0xFF, 0x1B, 0x00, 0xD3, 0x00,
+ 0x38, 0xFF, 0x1D, 0x00, 0xF3, 0x00, 0x0E, 0xFF,
+ 0x14, 0x00, 0xF0, 0xFF, 0x9A, 0xFF, 0x14, 0x00,
+ 0xD0, 0xFF, 0x9A, 0xFF, 0x14, 0x00, 0xAF, 0xFF,
+ 0x9A, 0xFF, 0x14, 0x00, 0x8F, 0xFF, 0x9A, 0xFF,
+ 0x17, 0x00, 0x6E, 0xFF, 0x78, 0xFF, 0x19, 0x00,
+ 0x4E, 0xFF, 0x5B, 0xFF, 0x1B, 0x00, 0x2D, 0xFF,
+ 0x38, 0xFF, 0x1D, 0x00, 0x0D, 0xFF, 0x0E, 0xFF,
+ 0x17, 0x00, 0x10, 0x00, 0x7C, 0xFF, 0x17, 0x00,
+ 0x30, 0x00, 0x7C, 0xFF, 0x17, 0x00, 0x51, 0x00,
+ 0x7C, 0xFF, 0x17, 0x00, 0x71, 0x00, 0x7C, 0xFF,
+ 0x1A, 0x00, 0x92, 0x00, 0x50, 0xFF, 0x1C, 0x00,
+ 0xB2, 0x00, 0x2B, 0xFF, 0x1E, 0x00, 0xD3, 0x00,
+ 0xFE, 0xFE, 0x20, 0x00, 0xF3, 0x00, 0xC7, 0xFE,
+ 0x17, 0x00, 0xF0, 0xFF, 0x7C, 0xFF, 0x17, 0x00,
+ 0xD0, 0xFF, 0x7C, 0xFF, 0x17, 0x00, 0xAF, 0xFF,
+ 0x7C, 0xFF, 0x17, 0x00, 0x8F, 0xFF, 0x7C, 0xFF,
+ 0x1A, 0x00, 0x6E, 0xFF, 0x50, 0xFF, 0x1C, 0x00,
+ 0x4E, 0xFF, 0x2B, 0xFF, 0x1E, 0x00, 0x2D, 0xFF,
+ 0xFE, 0xFE, 0x20, 0x00, 0x0D, 0xFF, 0xC7, 0xFE,
+ 0x19, 0x00, 0x10, 0x00, 0x5F, 0xFF, 0x19, 0x00,
+ 0x30, 0x00, 0x5F, 0xFF, 0x19, 0x00, 0x51, 0x00,
+ 0x5F, 0xFF, 0x19, 0x00, 0x71, 0x00, 0x5F, 0xFF,
+ 0x1C, 0x00, 0x92, 0x00, 0x29, 0xFF, 0x1E, 0x00,
+ 0xB2, 0x00, 0xFC, 0xFE, 0x20, 0x00, 0xD3, 0x00,
+ 0xC5, 0xFE, 0x22, 0x00, 0xF3, 0x00, 0x82, 0xFE,
+ 0x19, 0x00, 0xF0, 0xFF, 0x5F, 0xFF, 0x19, 0x00,
+ 0xD0, 0xFF, 0x5F, 0xFF, 0x19, 0x00, 0xAF, 0xFF,
+ 0x5F, 0xFF, 0x19, 0x00, 0x8F, 0xFF, 0x5F, 0xFF,
+ 0x1C, 0x00, 0x6E, 0xFF, 0x29, 0xFF, 0x1E, 0x00,
+ 0x4E, 0xFF, 0xFC, 0xFE, 0x20, 0x00, 0x2D, 0xFF,
+ 0xC5, 0xFE, 0x22, 0x00, 0x0D, 0xFF, 0x82, 0xFE,
+ 0x1B, 0x00, 0x10, 0x00, 0x41, 0xFF, 0x1B, 0x00,
+ 0x30, 0x00, 0x41, 0xFF, 0x1B, 0x00, 0x51, 0x00,
+ 0x41, 0xFF, 0x1B, 0x00, 0x71, 0x00, 0x41, 0xFF,
+ 0x1E, 0x00, 0x92, 0x00, 0x02, 0xFF, 0x20, 0x00,
+ 0xB2, 0x00, 0xCC, 0xFE, 0x22, 0x00, 0xD3, 0x00,
+ 0x8B, 0xFE, 0x24, 0x00, 0xF3, 0x00, 0x3C, 0xFE,
+ 0x1B, 0x00, 0xF0, 0xFF, 0x41, 0xFF, 0x1B, 0x00,
+ 0xD0, 0xFF, 0x41, 0xFF, 0x1B, 0x00, 0xAF, 0xFF,
+ 0x41, 0xFF, 0x1B, 0x00, 0x8F, 0xFF, 0x41, 0xFF,
+ 0x1E, 0x00, 0x6E, 0xFF, 0x02, 0xFF, 0x20, 0x00,
+ 0x4E, 0xFF, 0xCC, 0xFE, 0x22, 0x00, 0x2D, 0xFF,
+ 0x8B, 0xFE, 0x24, 0x00, 0x0D, 0xFF, 0x3C, 0xFE,
+ 0x1D, 0x00, 0x10, 0x00, 0x24, 0xFF, 0x1D, 0x00,
+ 0x30, 0x00, 0x24, 0xFF, 0x1D, 0x00, 0x51, 0x00,
+ 0x24, 0xFF, 0x1D, 0x00, 0x71, 0x00, 0x24, 0xFF,
+ 0x20, 0x00, 0x92, 0x00, 0xDB, 0xFE, 0x22, 0x00,
+ 0xB2, 0x00, 0x9D, 0xFE, 0x24, 0x00, 0xD3, 0x00,
+ 0x52, 0xFE, 0x26, 0x00, 0xF3, 0x00, 0xF7, 0xFD,
+ 0x1D, 0x00, 0xF0, 0xFF, 0x24, 0xFF, 0x1D, 0x00,
+ 0xD0, 0xFF, 0x24, 0xFF, 0x1D, 0x00, 0xAF, 0xFF,
+ 0x24, 0xFF, 0x1D, 0x00, 0x8F, 0xFF, 0x24, 0xFF,
+ 0x20, 0x00, 0x6E, 0xFF, 0xDB, 0xFE, 0x22, 0x00,
+ 0x4E, 0xFF, 0x9D, 0xFE, 0x24, 0x00, 0x2D, 0xFF,
+ 0x52, 0xFE, 0x26, 0x00, 0x0D, 0xFF, 0xF7, 0xFD,
+ 0x15, 0x00, 0x11, 0x00, 0x10, 0x00, 0x15, 0x00,
+ 0x34, 0x00, 0x10, 0x00, 0x15, 0x00, 0x58, 0x00,
+ 0x10, 0x00, 0x15, 0x00, 0x7B, 0x00, 0x10, 0x00,
+ 0x18, 0x00, 0xA0, 0x00, 0x15, 0x00, 0x1A, 0x00,
+ 0xC3, 0x00, 0x1A, 0x00, 0x1C, 0x00, 0xE7, 0x00,
+ 0x1F, 0x00, 0x1E, 0x00, 0x0A, 0x01, 0x26, 0x00,
+ 0x15, 0x00, 0xEF, 0xFF, 0x10, 0x00, 0x15, 0x00,
+ 0xCC, 0xFF, 0x10, 0x00, 0x15, 0x00, 0xA8, 0xFF,
+ 0x10, 0x00, 0x15, 0x00, 0x85, 0xFF, 0x10, 0x00,
+ 0x18, 0x00, 0x60, 0xFF, 0x15, 0x00, 0x1A, 0x00,
+ 0x3D, 0xFF, 0x1A, 0x00, 0x1C, 0x00, 0x19, 0xFF,
+ 0x1F, 0x00, 0x1E, 0x00, 0xF6, 0xFE, 0x26, 0x00,
+ 0x15, 0x00, 0x11, 0x00, 0x30, 0x00, 0x15, 0x00,
+ 0x34, 0x00, 0x30, 0x00, 0x15, 0x00, 0x58, 0x00,
+ 0x30, 0x00, 0x15, 0x00, 0x7B, 0x00, 0x30, 0x00,
+ 0x18, 0x00, 0xA0, 0x00, 0x40, 0x00, 0x1A, 0x00,
+ 0xC3, 0x00, 0x4E, 0x00, 0x1C, 0x00, 0xE7, 0x00,
+ 0x5E, 0x00, 0x1E, 0x00, 0x0A, 0x01, 0x72, 0x00,
+ 0x15, 0x00, 0xEF, 0xFF, 0x30, 0x00, 0x15, 0x00,
+ 0xCC, 0xFF, 0x30, 0x00, 0x15, 0x00, 0xA8, 0xFF,
+ 0x30, 0x00, 0x15, 0x00, 0x85, 0xFF, 0x30, 0x00,
+ 0x18, 0x00, 0x60, 0xFF, 0x40, 0x00, 0x1A, 0x00,
+ 0x3D, 0xFF, 0x4E, 0x00, 0x1C, 0x00, 0x19, 0xFF,
+ 0x5E, 0x00, 0x1E, 0x00, 0xF6, 0xFE, 0x72, 0x00,
+ 0x15, 0x00, 0x11, 0x00, 0x51, 0x00, 0x15, 0x00,
+ 0x34, 0x00, 0x51, 0x00, 0x15, 0x00, 0x58, 0x00,
+ 0x51, 0x00, 0x15, 0x00, 0x7B, 0x00, 0x51, 0x00,
+ 0x18, 0x00, 0xA0, 0x00, 0x6B, 0x00, 0x1A, 0x00,
+ 0xC3, 0x00, 0x82, 0x00, 0x1C, 0x00, 0xE7, 0x00,
+ 0x9D, 0x00, 0x1E, 0x00, 0x0A, 0x01, 0xBF, 0x00,
+ 0x15, 0x00, 0xEF, 0xFF, 0x51, 0x00, 0x15, 0x00,
+ 0xCC, 0xFF, 0x51, 0x00, 0x15, 0x00, 0xA8, 0xFF,
+ 0x51, 0x00, 0x15, 0x00, 0x85, 0xFF, 0x51, 0x00,
+ 0x18, 0x00, 0x60, 0xFF, 0x6B, 0x00, 0x1A, 0x00,
+ 0x3D, 0xFF, 0x82, 0x00, 0x1C, 0x00, 0x19, 0xFF,
+ 0x9D, 0x00, 0x1E, 0x00, 0xF6, 0xFE, 0xBF, 0x00,
+ 0x15, 0x00, 0x11, 0x00, 0x71, 0x00, 0x15, 0x00,
+ 0x34, 0x00, 0x71, 0x00, 0x15, 0x00, 0x58, 0x00,
+ 0x71, 0x00, 0x15, 0x00, 0x7B, 0x00, 0x71, 0x00,
+ 0x18, 0x00, 0xA0, 0x00, 0x96, 0x00, 0x1A, 0x00,
+ 0xC3, 0x00, 0xB6, 0x00, 0x1C, 0x00, 0xE7, 0x00,
+ 0xDC, 0x00, 0x1E, 0x00, 0x0A, 0x01, 0x0B, 0x01,
+ 0x15, 0x00, 0xEF, 0xFF, 0x71, 0x00, 0x15, 0x00,
+ 0xCC, 0xFF, 0x71, 0x00, 0x15, 0x00, 0xA8, 0xFF,
+ 0x71, 0x00, 0x15, 0x00, 0x85, 0xFF, 0x71, 0x00,
+ 0x18, 0x00, 0x60, 0xFF, 0x96, 0x00, 0x1A, 0x00,
+ 0x3D, 0xFF, 0xB6, 0x00, 0x1C, 0x00, 0x19, 0xFF,
+ 0xDC, 0x00, 0x1E, 0x00, 0xF6, 0xFE, 0x0B, 0x01,
+ 0x18, 0x00, 0x11, 0x00, 0x92, 0x00, 0x18, 0x00,
+ 0x34, 0x00, 0x92, 0x00, 0x18, 0x00, 0x58, 0x00,
+ 0x92, 0x00, 0x18, 0x00, 0x7B, 0x00, 0x92, 0x00,
+ 0x1B, 0x00, 0xA0, 0x00, 0xC2, 0x00, 0x1D, 0x00,
+ 0xC3, 0x00, 0xEB, 0x00, 0x1F, 0x00, 0xE7, 0x00,
+ 0x1C, 0x01, 0x21, 0x00, 0x0A, 0x01, 0x59, 0x01,
+ 0x18, 0x00, 0xEF, 0xFF, 0x92, 0x00, 0x18, 0x00,
+ 0xCC, 0xFF, 0x92, 0x00, 0x18, 0x00, 0xA8, 0xFF,
+ 0x92, 0x00, 0x18, 0x00, 0x85, 0xFF, 0x92, 0x00,
+ 0x1B, 0x00, 0x60, 0xFF, 0xC2, 0x00, 0x1D, 0x00,
+ 0x3D, 0xFF, 0xEB, 0x00, 0x1F, 0x00, 0x19, 0xFF,
+ 0x1C, 0x01, 0x21, 0x00, 0xF6, 0xFE, 0x59, 0x01,
+ 0x1A, 0x00, 0x11, 0x00, 0xB2, 0x00, 0x1A, 0x00,
+ 0x34, 0x00, 0xB2, 0x00, 0x1A, 0x00, 0x58, 0x00,
+ 0xB2, 0x00, 0x1A, 0x00, 0x7B, 0x00, 0xB2, 0x00,
+ 0x1D, 0x00, 0xA0, 0x00, 0xED, 0x00, 0x1F, 0x00,
+ 0xC3, 0x00, 0x1F, 0x01, 0x21, 0x00, 0xE7, 0x00,
+ 0x5B, 0x01, 0x23, 0x00, 0x0A, 0x01, 0xA5, 0x01,
+ 0x1A, 0x00, 0xEF, 0xFF, 0xB2, 0x00, 0x1A, 0x00,
+ 0xCC, 0xFF, 0xB2, 0x00, 0x1A, 0x00, 0xA8, 0xFF,
+ 0xB2, 0x00, 0x1A, 0x00, 0x85, 0xFF, 0xB2, 0x00,
+ 0x1D, 0x00, 0x60, 0xFF, 0xED, 0x00, 0x1F, 0x00,
+ 0x3D, 0xFF, 0x1F, 0x01, 0x21, 0x00, 0x19, 0xFF,
+ 0x5B, 0x01, 0x23, 0x00, 0xF6, 0xFE, 0xA5, 0x01,
+ 0x1C, 0x00, 0x11, 0x00, 0xD3, 0x00, 0x1C, 0x00,
+ 0x34, 0x00, 0xD3, 0x00, 0x1C, 0x00, 0x58, 0x00,
+ 0xD3, 0x00, 0x1C, 0x00, 0x7B, 0x00, 0xD3, 0x00,
+ 0x1F, 0x00, 0xA0, 0x00, 0x18, 0x01, 0x21, 0x00,
+ 0xC3, 0x00, 0x53, 0x01, 0x23, 0x00, 0xE7, 0x00,
+ 0x9A, 0x01, 0x25, 0x00, 0x0A, 0x01, 0xF2, 0x01,
+ 0x1C, 0x00, 0xEF, 0xFF, 0xD3, 0x00, 0x1C, 0x00,
+ 0xCC, 0xFF, 0xD3, 0x00, 0x1C, 0x00, 0xA8, 0xFF,
+ 0xD3, 0x00, 0x1C, 0x00, 0x85, 0xFF, 0xD3, 0x00,
+ 0x1F, 0x00, 0x60, 0xFF, 0x18, 0x01, 0x21, 0x00,
+ 0x3D, 0xFF, 0x53, 0x01, 0x23, 0x00, 0x19, 0xFF,
+ 0x9A, 0x01, 0x25, 0x00, 0xF6, 0xFE, 0xF2, 0x01,
+ 0x1E, 0x00, 0x11, 0x00, 0xF3, 0x00, 0x1E, 0x00,
+ 0x34, 0x00, 0xF3, 0x00, 0x1E, 0x00, 0x58, 0x00,
+ 0xF3, 0x00, 0x1E, 0x00, 0x7B, 0x00, 0xF3, 0x00,
+ 0x21, 0x00, 0xA0, 0x00, 0x43, 0x01, 0x23, 0x00,
+ 0xC3, 0x00, 0x87, 0x01, 0x25, 0x00, 0xE7, 0x00,
+ 0xD9, 0x01, 0x27, 0x00, 0x0A, 0x01, 0x3E, 0x02,
+ 0x1E, 0x00, 0xEF, 0xFF, 0xF3, 0x00, 0x1E, 0x00,
+ 0xCC, 0xFF, 0xF3, 0x00, 0x1E, 0x00, 0xA8, 0xFF,
+ 0xF3, 0x00, 0x1E, 0x00, 0x85, 0xFF, 0xF3, 0x00,
+ 0x21, 0x00, 0x60, 0xFF, 0x43, 0x01, 0x23, 0x00,
+ 0x3D, 0xFF, 0x87, 0x01, 0x25, 0x00, 0x19, 0xFF,
+ 0xD9, 0x01, 0x27, 0x00, 0xF6, 0xFE, 0x3E, 0x02,
+ 0x15, 0x00, 0x11, 0x00, 0xF0, 0xFF, 0x15, 0x00,
+ 0x34, 0x00, 0xF0, 0xFF, 0x15, 0x00, 0x58, 0x00,
+ 0xF0, 0xFF, 0x15, 0x00, 0x7B, 0x00, 0xF0, 0xFF,
+ 0x18, 0x00, 0xA0, 0x00, 0xEB, 0xFF, 0x1A, 0x00,
+ 0xC3, 0x00, 0xE6, 0xFF, 0x1C, 0x00, 0xE7, 0x00,
+ 0xE1, 0xFF, 0x1E, 0x00, 0x0A, 0x01, 0xDA, 0xFF,
+ 0x15, 0x00, 0xEF, 0xFF, 0xF0, 0xFF, 0x15, 0x00,
+ 0xCC, 0xFF, 0xF0, 0xFF, 0x15, 0x00, 0xA8, 0xFF,
+ 0xF0, 0xFF, 0x15, 0x00, 0x85, 0xFF, 0xF0, 0xFF,
+ 0x18, 0x00, 0x60, 0xFF, 0xEB, 0xFF, 0x1A, 0x00,
+ 0x3D, 0xFF, 0xE6, 0xFF, 0x1C, 0x00, 0x19, 0xFF,
+ 0xE1, 0xFF, 0x1E, 0x00, 0xF6, 0xFE, 0xDA, 0xFF,
+ 0x15, 0x00, 0x11, 0x00, 0xD0, 0xFF, 0x15, 0x00,
+ 0x34, 0x00, 0xD0, 0xFF, 0x15, 0x00, 0x58, 0x00,
+ 0xD0, 0xFF, 0x15, 0x00, 0x7B, 0x00, 0xD0, 0xFF,
+ 0x18, 0x00, 0xA0, 0x00, 0xC0, 0xFF, 0x1A, 0x00,
+ 0xC3, 0x00, 0xB2, 0xFF, 0x1C, 0x00, 0xE7, 0x00,
+ 0xA2, 0xFF, 0x1E, 0x00, 0x0A, 0x01, 0x8E, 0xFF,
+ 0x15, 0x00, 0xEF, 0xFF, 0xD0, 0xFF, 0x15, 0x00,
+ 0xCC, 0xFF, 0xD0, 0xFF, 0x15, 0x00, 0xA8, 0xFF,
+ 0xD0, 0xFF, 0x15, 0x00, 0x85, 0xFF, 0xD0, 0xFF,
+ 0x18, 0x00, 0x60, 0xFF, 0xC0, 0xFF, 0x1A, 0x00,
+ 0x3D, 0xFF, 0xB2, 0xFF, 0x1C, 0x00, 0x19, 0xFF,
+ 0xA2, 0xFF, 0x1E, 0x00, 0xF6, 0xFE, 0x8E, 0xFF,
+ 0x15, 0x00, 0x11, 0x00, 0xAF, 0xFF, 0x15, 0x00,
+ 0x34, 0x00, 0xAF, 0xFF, 0x15, 0x00, 0x58, 0x00,
+ 0xAF, 0xFF, 0x15, 0x00, 0x7B, 0x00, 0xAF, 0xFF,
+ 0x18, 0x00, 0xA0, 0x00, 0x95, 0xFF, 0x1A, 0x00,
+ 0xC3, 0x00, 0x7E, 0xFF, 0x1C, 0x00, 0xE7, 0x00,
+ 0x63, 0xFF, 0x1E, 0x00, 0x0A, 0x01, 0x41, 0xFF,
+ 0x15, 0x00, 0xEF, 0xFF, 0xAF, 0xFF, 0x15, 0x00,
+ 0xCC, 0xFF, 0xAF, 0xFF, 0x15, 0x00, 0xA8, 0xFF,
+ 0xAF, 0xFF, 0x15, 0x00, 0x85, 0xFF, 0xAF, 0xFF,
+ 0x18, 0x00, 0x60, 0xFF, 0x95, 0xFF, 0x1A, 0x00,
+ 0x3D, 0xFF, 0x7E, 0xFF, 0x1C, 0x00, 0x19, 0xFF,
+ 0x63, 0xFF, 0x1E, 0x00, 0xF6, 0xFE, 0x41, 0xFF,
+ 0x15, 0x00, 0x11, 0x00, 0x8F, 0xFF, 0x15, 0x00,
+ 0x34, 0x00, 0x8F, 0xFF, 0x15, 0x00, 0x58, 0x00,
+ 0x8F, 0xFF, 0x15, 0x00, 0x7B, 0x00, 0x8F, 0xFF,
+ 0x18, 0x00, 0xA0, 0x00, 0x6A, 0xFF, 0x1A, 0x00,
+ 0xC3, 0x00, 0x4A, 0xFF, 0x1C, 0x00, 0xE7, 0x00,
+ 0x24, 0xFF, 0x1E, 0x00, 0x0A, 0x01, 0xF5, 0xFE,
+ 0x15, 0x00, 0xEF, 0xFF, 0x8F, 0xFF, 0x15, 0x00,
+ 0xCC, 0xFF, 0x8F, 0xFF, 0x15, 0x00, 0xA8, 0xFF,
+ 0x8F, 0xFF, 0x15, 0x00, 0x85, 0xFF, 0x8F, 0xFF,
+ 0x18, 0x00, 0x60, 0xFF, 0x6A, 0xFF, 0x1A, 0x00,
+ 0x3D, 0xFF, 0x4A, 0xFF, 0x1C, 0x00, 0x19, 0xFF,
+ 0x24, 0xFF, 0x1E, 0x00, 0xF6, 0xFE, 0xF5, 0xFE,
+ 0x18, 0x00, 0x11, 0x00, 0x6E, 0xFF, 0x18, 0x00,
+ 0x34, 0x00, 0x6E, 0xFF, 0x18, 0x00, 0x58, 0x00,
+ 0x6E, 0xFF, 0x18, 0x00, 0x7B, 0x00, 0x6E, 0xFF,
+ 0x1B, 0x00, 0xA0, 0x00, 0x3E, 0xFF, 0x1D, 0x00,
+ 0xC3, 0x00, 0x15, 0xFF, 0x1F, 0x00, 0xE7, 0x00,
+ 0xE4, 0xFE, 0x21, 0x00, 0x0A, 0x01, 0xA7, 0xFE,
+ 0x18, 0x00, 0xEF, 0xFF, 0x6E, 0xFF, 0x18, 0x00,
+ 0xCC, 0xFF, 0x6E, 0xFF, 0x18, 0x00, 0xA8, 0xFF,
+ 0x6E, 0xFF, 0x18, 0x00, 0x85, 0xFF, 0x6E, 0xFF,
+ 0x1B, 0x00, 0x60, 0xFF, 0x3E, 0xFF, 0x1D, 0x00,
+ 0x3D, 0xFF, 0x15, 0xFF, 0x1F, 0x00, 0x19, 0xFF,
+ 0xE4, 0xFE, 0x21, 0x00, 0xF6, 0xFE, 0xA7, 0xFE,
+ 0x1A, 0x00, 0x11, 0x00, 0x4E, 0xFF, 0x1A, 0x00,
+ 0x34, 0x00, 0x4E, 0xFF, 0x1A, 0x00, 0x58, 0x00,
+ 0x4E, 0xFF, 0x1A, 0x00, 0x7B, 0x00, 0x4E, 0xFF,
+ 0x1D, 0x00, 0xA0, 0x00, 0x13, 0xFF, 0x1F, 0x00,
+ 0xC3, 0x00, 0xE1, 0xFE, 0x21, 0x00, 0xE7, 0x00,
+ 0xA5, 0xFE, 0x23, 0x00, 0x0A, 0x01, 0x5B, 0xFE,
+ 0x1A, 0x00, 0xEF, 0xFF, 0x4E, 0xFF, 0x1A, 0x00,
+ 0xCC, 0xFF, 0x4E, 0xFF, 0x1A, 0x00, 0xA8, 0xFF,
+ 0x4E, 0xFF, 0x1A, 0x00, 0x85, 0xFF, 0x4E, 0xFF,
+ 0x1D, 0x00, 0x60, 0xFF, 0x13, 0xFF, 0x1F, 0x00,
+ 0x3D, 0xFF, 0xE1, 0xFE, 0x21, 0x00, 0x19, 0xFF,
+ 0xA5, 0xFE, 0x23, 0x00, 0xF6, 0xFE, 0x5B, 0xFE,
+ 0x1C, 0x00, 0x11, 0x00, 0x2D, 0xFF, 0x1C, 0x00,
+ 0x34, 0x00, 0x2D, 0xFF, 0x1C, 0x00, 0x58, 0x00,
+ 0x2D, 0xFF, 0x1C, 0x00, 0x7B, 0x00, 0x2D, 0xFF,
+ 0x1F, 0x00, 0xA0, 0x00, 0xE8, 0xFE, 0x21, 0x00,
+ 0xC3, 0x00, 0xAD, 0xFE, 0x23, 0x00, 0xE7, 0x00,
+ 0x66, 0xFE, 0x25, 0x00, 0x0A, 0x01, 0x0E, 0xFE,
+ 0x1C, 0x00, 0xEF, 0xFF, 0x2D, 0xFF, 0x1C, 0x00,
+ 0xCC, 0xFF, 0x2D, 0xFF, 0x1C, 0x00, 0xA8, 0xFF,
+ 0x2D, 0xFF, 0x1C, 0x00, 0x85, 0xFF, 0x2D, 0xFF,
+ 0x1F, 0x00, 0x60, 0xFF, 0xE8, 0xFE, 0x21, 0x00,
+ 0x3D, 0xFF, 0xAD, 0xFE, 0x23, 0x00, 0x19, 0xFF,
+ 0x66, 0xFE, 0x25, 0x00, 0xF6, 0xFE, 0x0E, 0xFE,
+ 0x1E, 0x00, 0x11, 0x00, 0x0D, 0xFF, 0x1E, 0x00,
+ 0x34, 0x00, 0x0D, 0xFF, 0x1E, 0x00, 0x58, 0x00,
+ 0x0D, 0xFF, 0x1E, 0x00, 0x7B, 0x00, 0x0D, 0xFF,
+ 0x21, 0x00, 0xA0, 0x00, 0xBD, 0xFE, 0x23, 0x00,
+ 0xC3, 0x00, 0x79, 0xFE, 0x25, 0x00, 0xE7, 0x00,
+ 0x27, 0xFE, 0x27, 0x00, 0x0A, 0x01, 0xC2, 0xFD,
+ 0x1E, 0x00, 0xEF, 0xFF, 0x0D, 0xFF, 0x1E, 0x00,
+ 0xCC, 0xFF, 0x0D, 0xFF, 0x1E, 0x00, 0xA8, 0xFF,
+ 0x0D, 0xFF, 0x1E, 0x00, 0x85, 0xFF, 0x0D, 0xFF,
+ 0x21, 0x00, 0x60, 0xFF, 0xBD, 0xFE, 0x23, 0x00,
+ 0x3D, 0xFF, 0x79, 0xFE, 0x25, 0x00, 0x19, 0xFF,
+ 0x27, 0xFE, 0x27, 0x00, 0xF6, 0xFE, 0xC2, 0xFD,
+ 0x16, 0x00, 0x13, 0x00, 0x11, 0x00, 0x16, 0x00,
+ 0x3A, 0x00, 0x11, 0x00, 0x16, 0x00, 0x61, 0x00,
+ 0x11, 0x00, 0x16, 0x00, 0x88, 0x00, 0x11, 0x00,
+ 0x19, 0x00, 0xB0, 0x00, 0x17, 0x00, 0x1B, 0x00,
+ 0xD7, 0x00, 0x1C, 0x00, 0x1D, 0x00, 0xFE, 0x00,
+ 0x22, 0x00, 0x1F, 0x00, 0x25, 0x01, 0x2A, 0x00,
+ 0x16, 0x00, 0xED, 0xFF, 0x11, 0x00, 0x16, 0x00,
+ 0xC6, 0xFF, 0x11, 0x00, 0x16, 0x00, 0x9F, 0xFF,
+ 0x11, 0x00, 0x16, 0x00, 0x78, 0xFF, 0x11, 0x00,
+ 0x19, 0x00, 0x50, 0xFF, 0x17, 0x00, 0x1B, 0x00,
+ 0x29, 0xFF, 0x1C, 0x00, 0x1D, 0x00, 0x02, 0xFF,
+ 0x22, 0x00, 0x1F, 0x00, 0xDB, 0xFE, 0x2A, 0x00,
+ 0x16, 0x00, 0x13, 0x00, 0x34, 0x00, 0x16, 0x00,
+ 0x3A, 0x00, 0x34, 0x00, 0x16, 0x00, 0x61, 0x00,
+ 0x34, 0x00, 0x16, 0x00, 0x88, 0x00, 0x34, 0x00,
+ 0x19, 0x00, 0xB0, 0x00, 0x46, 0x00, 0x1B, 0x00,
+ 0xD7, 0x00, 0x55, 0x00, 0x1D, 0x00, 0xFE, 0x00,
+ 0x67, 0x00, 0x1F, 0x00, 0x25, 0x01, 0x7E, 0x00,
+ 0x16, 0x00, 0xED, 0xFF, 0x34, 0x00, 0x16, 0x00,
+ 0xC6, 0xFF, 0x34, 0x00, 0x16, 0x00, 0x9F, 0xFF,
+ 0x34, 0x00, 0x16, 0x00, 0x78, 0xFF, 0x34, 0x00,
+ 0x19, 0x00, 0x50, 0xFF, 0x46, 0x00, 0x1B, 0x00,
+ 0x29, 0xFF, 0x55, 0x00, 0x1D, 0x00, 0x02, 0xFF,
+ 0x67, 0x00, 0x1F, 0x00, 0xDB, 0xFE, 0x7E, 0x00,
+ 0x16, 0x00, 0x13, 0x00, 0x58, 0x00, 0x16, 0x00,
+ 0x3A, 0x00, 0x58, 0x00, 0x16, 0x00, 0x61, 0x00,
+ 0x58, 0x00, 0x16, 0x00, 0x88, 0x00, 0x58, 0x00,
+ 0x19, 0x00, 0xB0, 0x00, 0x76, 0x00, 0x1B, 0x00,
+ 0xD7, 0x00, 0x8F, 0x00, 0x1D, 0x00, 0xFE, 0x00,
+ 0xAD, 0x00, 0x1F, 0x00, 0x25, 0x01, 0xD2, 0x00,
+ 0x16, 0x00, 0xED, 0xFF, 0x58, 0x00, 0x16, 0x00,
+ 0xC6, 0xFF, 0x58, 0x00, 0x16, 0x00, 0x9F, 0xFF,
+ 0x58, 0x00, 0x16, 0x00, 0x78, 0xFF, 0x58, 0x00,
+ 0x19, 0x00, 0x50, 0xFF, 0x76, 0x00, 0x1B, 0x00,
+ 0x29, 0xFF, 0x8F, 0x00, 0x1D, 0x00, 0x02, 0xFF,
+ 0xAD, 0x00, 0x1F, 0x00, 0xDB, 0xFE, 0xD2, 0x00,
+ 0x16, 0x00, 0x13, 0x00, 0x7B, 0x00, 0x16, 0x00,
+ 0x3A, 0x00, 0x7B, 0x00, 0x16, 0x00, 0x61, 0x00,
+ 0x7B, 0x00, 0x16, 0x00, 0x88, 0x00, 0x7B, 0x00,
+ 0x19, 0x00, 0xB0, 0x00, 0xA5, 0x00, 0x1B, 0x00,
+ 0xD7, 0x00, 0xC8, 0x00, 0x1D, 0x00, 0xFE, 0x00,
+ 0xF2, 0x00, 0x1F, 0x00, 0x25, 0x01, 0x26, 0x01,
+ 0x16, 0x00, 0xED, 0xFF, 0x7B, 0x00, 0x16, 0x00,
+ 0xC6, 0xFF, 0x7B, 0x00, 0x16, 0x00, 0x9F, 0xFF,
+ 0x7B, 0x00, 0x16, 0x00, 0x78, 0xFF, 0x7B, 0x00,
+ 0x19, 0x00, 0x50, 0xFF, 0xA5, 0x00, 0x1B, 0x00,
+ 0x29, 0xFF, 0xC8, 0x00, 0x1D, 0x00, 0x02, 0xFF,
+ 0xF2, 0x00, 0x1F, 0x00, 0xDB, 0xFE, 0x26, 0x01,
+ 0x19, 0x00, 0x13, 0x00, 0xA0, 0x00, 0x19, 0x00,
+ 0x3A, 0x00, 0xA0, 0x00, 0x19, 0x00, 0x61, 0x00,
+ 0xA0, 0x00, 0x19, 0x00, 0x88, 0x00, 0xA0, 0x00,
+ 0x1C, 0x00, 0xB0, 0x00, 0xD5, 0x00, 0x1E, 0x00,
+ 0xD7, 0x00, 0x02, 0x01, 0x20, 0x00, 0xFE, 0x00,
+ 0x39, 0x01, 0x22, 0x00, 0x25, 0x01, 0x7B, 0x01,
+ 0x19, 0x00, 0xED, 0xFF, 0xA0, 0x00, 0x19, 0x00,
+ 0xC6, 0xFF, 0xA0, 0x00, 0x19, 0x00, 0x9F, 0xFF,
+ 0xA0, 0x00, 0x19, 0x00, 0x78, 0xFF, 0xA0, 0x00,
+ 0x1C, 0x00, 0x50, 0xFF, 0xD5, 0x00, 0x1E, 0x00,
+ 0x29, 0xFF, 0x02, 0x01, 0x20, 0x00, 0x02, 0xFF,
+ 0x39, 0x01, 0x22, 0x00, 0xDB, 0xFE, 0x7B, 0x01,
+ 0x1B, 0x00, 0x13, 0x00, 0xC3, 0x00, 0x1B, 0x00,
+ 0x3A, 0x00, 0xC3, 0x00, 0x1B, 0x00, 0x61, 0x00,
+ 0xC3, 0x00, 0x1B, 0x00, 0x88, 0x00, 0xC3, 0x00,
+ 0x1E, 0x00, 0xB0, 0x00, 0x04, 0x01, 0x20, 0x00,
+ 0xD7, 0x00, 0x3B, 0x01, 0x22, 0x00, 0xFE, 0x00,
+ 0x7E, 0x01, 0x24, 0x00, 0x25, 0x01, 0xCF, 0x01,
+ 0x1B, 0x00, 0xED, 0xFF, 0xC3, 0x00, 0x1B, 0x00,
+ 0xC6, 0xFF, 0xC3, 0x00, 0x1B, 0x00, 0x9F, 0xFF,
+ 0xC3, 0x00, 0x1B, 0x00, 0x78, 0xFF, 0xC3, 0x00,
+ 0x1E, 0x00, 0x50, 0xFF, 0x04, 0x01, 0x20, 0x00,
+ 0x29, 0xFF, 0x3B, 0x01, 0x22, 0x00, 0x02, 0xFF,
+ 0x7E, 0x01, 0x24, 0x00, 0xDB, 0xFE, 0xCF, 0x01,
+ 0x1D, 0x00, 0x13, 0x00, 0xE7, 0x00, 0x1D, 0x00,
+ 0x3A, 0x00, 0xE7, 0x00, 0x1D, 0x00, 0x61, 0x00,
+ 0xE7, 0x00, 0x1D, 0x00, 0x88, 0x00, 0xE7, 0x00,
+ 0x20, 0x00, 0xB0, 0x00, 0x34, 0x01, 0x22, 0x00,
+ 0xD7, 0x00, 0x75, 0x01, 0x24, 0x00, 0xFE, 0x00,
+ 0xC4, 0x01, 0x26, 0x00, 0x25, 0x01, 0x23, 0x02,
+ 0x1D, 0x00, 0xED, 0xFF, 0xE7, 0x00, 0x1D, 0x00,
+ 0xC6, 0xFF, 0xE7, 0x00, 0x1D, 0x00, 0x9F, 0xFF,
+ 0xE7, 0x00, 0x1D, 0x00, 0x78, 0xFF, 0xE7, 0x00,
+ 0x20, 0x00, 0x50, 0xFF, 0x34, 0x01, 0x22, 0x00,
+ 0x29, 0xFF, 0x75, 0x01, 0x24, 0x00, 0x02, 0xFF,
+ 0xC4, 0x01, 0x26, 0x00, 0xDB, 0xFE, 0x23, 0x02,
+ 0x1F, 0x00, 0x13, 0x00, 0x0A, 0x01, 0x1F, 0x00,
+ 0x3A, 0x00, 0x0A, 0x01, 0x1F, 0x00, 0x61, 0x00,
+ 0x0A, 0x01, 0x1F, 0x00, 0x88, 0x00, 0x0A, 0x01,
+ 0x22, 0x00, 0xB0, 0x00, 0x63, 0x01, 0x24, 0x00,
+ 0xD7, 0x00, 0xAE, 0x01, 0x26, 0x00, 0xFE, 0x00,
+ 0x09, 0x02, 0x28, 0x00, 0x25, 0x01, 0x77, 0x02,
+ 0x1F, 0x00, 0xED, 0xFF, 0x0A, 0x01, 0x1F, 0x00,
+ 0xC6, 0xFF, 0x0A, 0x01, 0x1F, 0x00, 0x9F, 0xFF,
+ 0x0A, 0x01, 0x1F, 0x00, 0x78, 0xFF, 0x0A, 0x01,
+ 0x22, 0x00, 0x50, 0xFF, 0x63, 0x01, 0x24, 0x00,
+ 0x29, 0xFF, 0xAE, 0x01, 0x26, 0x00, 0x02, 0xFF,
+ 0x09, 0x02, 0x28, 0x00, 0xDB, 0xFE, 0x77, 0x02,
+ 0x16, 0x00, 0x13, 0x00, 0xEF, 0xFF, 0x16, 0x00,
+ 0x3A, 0x00, 0xEF, 0xFF, 0x16, 0x00, 0x61, 0x00,
+ 0xEF, 0xFF, 0x16, 0x00, 0x88, 0x00, 0xEF, 0xFF,
+ 0x19, 0x00, 0xB0, 0x00, 0xE9, 0xFF, 0x1B, 0x00,
+ 0xD7, 0x00, 0xE4, 0xFF, 0x1D, 0x00, 0xFE, 0x00,
+ 0xDE, 0xFF, 0x1F, 0x00, 0x25, 0x01, 0xD6, 0xFF,
+ 0x16, 0x00, 0xED, 0xFF, 0xEF, 0xFF, 0x16, 0x00,
+ 0xC6, 0xFF, 0xEF, 0xFF, 0x16, 0x00, 0x9F, 0xFF,
+ 0xEF, 0xFF, 0x16, 0x00, 0x78, 0xFF, 0xEF, 0xFF,
+ 0x19, 0x00, 0x50, 0xFF, 0xE9, 0xFF, 0x1B, 0x00,
+ 0x29, 0xFF, 0xE4, 0xFF, 0x1D, 0x00, 0x02, 0xFF,
+ 0xDE, 0xFF, 0x1F, 0x00, 0xDB, 0xFE, 0xD6, 0xFF,
+ 0x16, 0x00, 0x13, 0x00, 0xCC, 0xFF, 0x16, 0x00,
+ 0x3A, 0x00, 0xCC, 0xFF, 0x16, 0x00, 0x61, 0x00,
+ 0xCC, 0xFF, 0x16, 0x00, 0x88, 0x00, 0xCC, 0xFF,
+ 0x19, 0x00, 0xB0, 0x00, 0xBA, 0xFF, 0x1B, 0x00,
+ 0xD7, 0x00, 0xAB, 0xFF, 0x1D, 0x00, 0xFE, 0x00,
+ 0x99, 0xFF, 0x1F, 0x00, 0x25, 0x01, 0x82, 0xFF,
+ 0x16, 0x00, 0xED, 0xFF, 0xCC, 0xFF, 0x16, 0x00,
+ 0xC6, 0xFF, 0xCC, 0xFF, 0x16, 0x00, 0x9F, 0xFF,
+ 0xCC, 0xFF, 0x16, 0x00, 0x78, 0xFF, 0xCC, 0xFF,
+ 0x19, 0x00, 0x50, 0xFF, 0xBA, 0xFF, 0x1B, 0x00,
+ 0x29, 0xFF, 0xAB, 0xFF, 0x1D, 0x00, 0x02, 0xFF,
+ 0x99, 0xFF, 0x1F, 0x00, 0xDB, 0xFE, 0x82, 0xFF,
+ 0x16, 0x00, 0x13, 0x00, 0xA8, 0xFF, 0x16, 0x00,
+ 0x3A, 0x00, 0xA8, 0xFF, 0x16, 0x00, 0x61, 0x00,
+ 0xA8, 0xFF, 0x16, 0x00, 0x88, 0x00, 0xA8, 0xFF,
+ 0x19, 0x00, 0xB0, 0x00, 0x8A, 0xFF, 0x1B, 0x00,
+ 0xD7, 0x00, 0x71, 0xFF, 0x1D, 0x00, 0xFE, 0x00,
+ 0x53, 0xFF, 0x1F, 0x00, 0x25, 0x01, 0x2E, 0xFF,
+ 0x16, 0x00, 0xED, 0xFF, 0xA8, 0xFF, 0x16, 0x00,
+ 0xC6, 0xFF, 0xA8, 0xFF, 0x16, 0x00, 0x9F, 0xFF,
+ 0xA8, 0xFF, 0x16, 0x00, 0x78, 0xFF, 0xA8, 0xFF,
+ 0x19, 0x00, 0x50, 0xFF, 0x8A, 0xFF, 0x1B, 0x00,
+ 0x29, 0xFF, 0x71, 0xFF, 0x1D, 0x00, 0x02, 0xFF,
+ 0x53, 0xFF, 0x1F, 0x00, 0xDB, 0xFE, 0x2E, 0xFF,
+ 0x16, 0x00, 0x13, 0x00, 0x85, 0xFF, 0x16, 0x00,
+ 0x3A, 0x00, 0x85, 0xFF, 0x16, 0x00, 0x61, 0x00,
+ 0x85, 0xFF, 0x16, 0x00, 0x88, 0x00, 0x85, 0xFF,
+ 0x19, 0x00, 0xB0, 0x00, 0x5B, 0xFF, 0x1B, 0x00,
+ 0xD7, 0x00, 0x38, 0xFF, 0x1D, 0x00, 0xFE, 0x00,
+ 0x0E, 0xFF, 0x1F, 0x00, 0x25, 0x01, 0xDA, 0xFE,
+ 0x16, 0x00, 0xED, 0xFF, 0x85, 0xFF, 0x16, 0x00,
+ 0xC6, 0xFF, 0x85, 0xFF, 0x16, 0x00, 0x9F, 0xFF,
+ 0x85, 0xFF, 0x16, 0x00, 0x78, 0xFF, 0x85, 0xFF,
+ 0x19, 0x00, 0x50, 0xFF, 0x5B, 0xFF, 0x1B, 0x00,
+ 0x29, 0xFF, 0x38, 0xFF, 0x1D, 0x00, 0x02, 0xFF,
+ 0x0E, 0xFF, 0x1F, 0x00, 0xDB, 0xFE, 0xDA, 0xFE,
+ 0x19, 0x00, 0x13, 0x00, 0x60, 0xFF, 0x19, 0x00,
+ 0x3A, 0x00, 0x60, 0xFF, 0x19, 0x00, 0x61, 0x00,
+ 0x60, 0xFF, 0x19, 0x00, 0x88, 0x00, 0x60, 0xFF,
+ 0x1C, 0x00, 0xB0, 0x00, 0x2B, 0xFF, 0x1E, 0x00,
+ 0xD7, 0x00, 0xFE, 0xFE, 0x20, 0x00, 0xFE, 0x00,
+ 0xC7, 0xFE, 0x22, 0x00, 0x25, 0x01, 0x85, 0xFE,
+ 0x19, 0x00, 0xED, 0xFF, 0x60, 0xFF, 0x19, 0x00,
+ 0xC6, 0xFF, 0x60, 0xFF, 0x19, 0x00, 0x9F, 0xFF,
+ 0x60, 0xFF, 0x19, 0x00, 0x78, 0xFF, 0x60, 0xFF,
+ 0x1C, 0x00, 0x50, 0xFF, 0x2B, 0xFF, 0x1E, 0x00,
+ 0x29, 0xFF, 0xFE, 0xFE, 0x20, 0x00, 0x02, 0xFF,
+ 0xC7, 0xFE, 0x22, 0x00, 0xDB, 0xFE, 0x85, 0xFE,
+ 0x1B, 0x00, 0x13, 0x00, 0x3D, 0xFF, 0x1B, 0x00,
+ 0x3A, 0x00, 0x3D, 0xFF, 0x1B, 0x00, 0x61, 0x00,
+ 0x3D, 0xFF, 0x1B, 0x00, 0x88, 0x00, 0x3D, 0xFF,
+ 0x1E, 0x00, 0xB0, 0x00, 0xFC, 0xFE, 0x20, 0x00,
+ 0xD7, 0x00, 0xC5, 0xFE, 0x22, 0x00, 0xFE, 0x00,
+ 0x82, 0xFE, 0x24, 0x00, 0x25, 0x01, 0x31, 0xFE,
+ 0x1B, 0x00, 0xED, 0xFF, 0x3D, 0xFF, 0x1B, 0x00,
+ 0xC6, 0xFF, 0x3D, 0xFF, 0x1B, 0x00, 0x9F, 0xFF,
+ 0x3D, 0xFF, 0x1B, 0x00, 0x78, 0xFF, 0x3D, 0xFF,
+ 0x1E, 0x00, 0x50, 0xFF, 0xFC, 0xFE, 0x20, 0x00,
+ 0x29, 0xFF, 0xC5, 0xFE, 0x22, 0x00, 0x02, 0xFF,
+ 0x82, 0xFE, 0x24, 0x00, 0xDB, 0xFE, 0x31, 0xFE,
+ 0x1D, 0x00, 0x13, 0x00, 0x19, 0xFF, 0x1D, 0x00,
+ 0x3A, 0x00, 0x19, 0xFF, 0x1D, 0x00, 0x61, 0x00,
+ 0x19, 0xFF, 0x1D, 0x00, 0x88, 0x00, 0x19, 0xFF,
+ 0x20, 0x00, 0xB0, 0x00, 0xCC, 0xFE, 0x22, 0x00,
+ 0xD7, 0x00, 0x8B, 0xFE, 0x24, 0x00, 0xFE, 0x00,
+ 0x3C, 0xFE, 0x26, 0x00, 0x25, 0x01, 0xDD, 0xFD,
+ 0x1D, 0x00, 0xED, 0xFF, 0x19, 0xFF, 0x1D, 0x00,
+ 0xC6, 0xFF, 0x19, 0xFF, 0x1D, 0x00, 0x9F, 0xFF,
+ 0x19, 0xFF, 0x1D, 0x00, 0x78, 0xFF, 0x19, 0xFF,
+ 0x20, 0x00, 0x50, 0xFF, 0xCC, 0xFE, 0x22, 0x00,
+ 0x29, 0xFF, 0x8B, 0xFE, 0x24, 0x00, 0x02, 0xFF,
+ 0x3C, 0xFE, 0x26, 0x00, 0xDB, 0xFE, 0xDD, 0xFD,
+ 0x1F, 0x00, 0x13, 0x00, 0xF6, 0xFE, 0x1F, 0x00,
+ 0x3A, 0x00, 0xF6, 0xFE, 0x1F, 0x00, 0x61, 0x00,
+ 0xF6, 0xFE, 0x1F, 0x00, 0x88, 0x00, 0xF6, 0xFE,
+ 0x22, 0x00, 0xB0, 0x00, 0x9D, 0xFE, 0x24, 0x00,
+ 0xD7, 0x00, 0x52, 0xFE, 0x26, 0x00, 0xFE, 0x00,
+ 0xF7, 0xFD, 0x28, 0x00, 0x25, 0x01, 0x89, 0xFD,
+ 0x1F, 0x00, 0xED, 0xFF, 0xF6, 0xFE, 0x1F, 0x00,
+ 0xC6, 0xFF, 0xF6, 0xFE, 0x1F, 0x00, 0x9F, 0xFF,
+ 0xF6, 0xFE, 0x1F, 0x00, 0x78, 0xFF, 0xF6, 0xFE,
+ 0x22, 0x00, 0x50, 0xFF, 0x9D, 0xFE, 0x24, 0x00,
+ 0x29, 0xFF, 0x52, 0xFE, 0x26, 0x00, 0x02, 0xFF,
+ 0xF7, 0xFD, 0x28, 0x00, 0xDB, 0xFE, 0x89, 0xFD,
+ 0x17, 0x00, 0x15, 0x00, 0x13, 0x00, 0x17, 0x00,
+ 0x40, 0x00, 0x13, 0x00, 0x17, 0x00, 0x6B, 0x00,
+ 0x13, 0x00, 0x17, 0x00, 0x96, 0x00, 0x13, 0x00,
+ 0x1A, 0x00, 0xC2, 0x00, 0x1A, 0x00, 0x1C, 0x00,
+ 0xED, 0x00, 0x1F, 0x00, 0x1E, 0x00, 0x18, 0x01,
+ 0x26, 0x00, 0x20, 0x00, 0x43, 0x01, 0x2E, 0x00,
+ 0x17, 0x00, 0xEB, 0xFF, 0x13, 0x00, 0x17, 0x00,
+ 0xC0, 0xFF, 0x13, 0x00, 0x17, 0x00, 0x95, 0xFF,
+ 0x13, 0x00, 0x17, 0x00, 0x6A, 0xFF, 0x13, 0x00,
+ 0x1A, 0x00, 0x3E, 0xFF, 0x1A, 0x00, 0x1C, 0x00,
+ 0x13, 0xFF, 0x1F, 0x00, 0x1E, 0x00, 0xE8, 0xFE,
+ 0x26, 0x00, 0x20, 0x00, 0xBD, 0xFE, 0x2E, 0x00,
+ 0x17, 0x00, 0x15, 0x00, 0x3A, 0x00, 0x17, 0x00,
+ 0x40, 0x00, 0x3A, 0x00, 0x17, 0x00, 0x6B, 0x00,
+ 0x3A, 0x00, 0x17, 0x00, 0x96, 0x00, 0x3A, 0x00,
+ 0x1A, 0x00, 0xC2, 0x00, 0x4E, 0x00, 0x1C, 0x00,
+ 0xED, 0x00, 0x5E, 0x00, 0x1E, 0x00, 0x18, 0x01,
+ 0x72, 0x00, 0x20, 0x00, 0x43, 0x01, 0x8A, 0x00,
+ 0x17, 0x00, 0xEB, 0xFF, 0x3A, 0x00, 0x17, 0x00,
+ 0xC0, 0xFF, 0x3A, 0x00, 0x17, 0x00, 0x95, 0xFF,
+ 0x3A, 0x00, 0x17, 0x00, 0x6A, 0xFF, 0x3A, 0x00,
+ 0x1A, 0x00, 0x3E, 0xFF, 0x4E, 0x00, 0x1C, 0x00,
+ 0x13, 0xFF, 0x5E, 0x00, 0x1E, 0x00, 0xE8, 0xFE,
+ 0x72, 0x00, 0x20, 0x00, 0xBD, 0xFE, 0x8A, 0x00,
+ 0x17, 0x00, 0x15, 0x00, 0x61, 0x00, 0x17, 0x00,
+ 0x40, 0x00, 0x61, 0x00, 0x17, 0x00, 0x6B, 0x00,
+ 0x61, 0x00, 0x17, 0x00, 0x96, 0x00, 0x61, 0x00,
+ 0x1A, 0x00, 0xC2, 0x00, 0x82, 0x00, 0x1C, 0x00,
+ 0xED, 0x00, 0x9D, 0x00, 0x1E, 0x00, 0x18, 0x01,
+ 0xBF, 0x00, 0x20, 0x00, 0x43, 0x01, 0xE7, 0x00,
+ 0x17, 0x00, 0xEB, 0xFF, 0x61, 0x00, 0x17, 0x00,
+ 0xC0, 0xFF, 0x61, 0x00, 0x17, 0x00, 0x95, 0xFF,
+ 0x61, 0x00, 0x17, 0x00, 0x6A, 0xFF, 0x61, 0x00,
+ 0x1A, 0x00, 0x3E, 0xFF, 0x82, 0x00, 0x1C, 0x00,
+ 0x13, 0xFF, 0x9D, 0x00, 0x1E, 0x00, 0xE8, 0xFE,
+ 0xBF, 0x00, 0x20, 0x00, 0xBD, 0xFE, 0xE7, 0x00,
+ 0x17, 0x00, 0x15, 0x00, 0x88, 0x00, 0x17, 0x00,
+ 0x40, 0x00, 0x88, 0x00, 0x17, 0x00, 0x6B, 0x00,
+ 0x88, 0x00, 0x17, 0x00, 0x96, 0x00, 0x88, 0x00,
+ 0x1A, 0x00, 0xC2, 0x00, 0xB6, 0x00, 0x1C, 0x00,
+ 0xED, 0x00, 0xDC, 0x00, 0x1E, 0x00, 0x18, 0x01,
+ 0x0B, 0x01, 0x20, 0x00, 0x43, 0x01, 0x43, 0x01,
+ 0x17, 0x00, 0xEB, 0xFF, 0x88, 0x00, 0x17, 0x00,
+ 0xC0, 0xFF, 0x88, 0x00, 0x17, 0x00, 0x95, 0xFF,
+ 0x88, 0x00, 0x17, 0x00, 0x6A, 0xFF, 0x88, 0x00,
+ 0x1A, 0x00, 0x3E, 0xFF, 0xB6, 0x00, 0x1C, 0x00,
+ 0x13, 0xFF, 0xDC, 0x00, 0x1E, 0x00, 0xE8, 0xFE,
+ 0x0B, 0x01, 0x20, 0x00, 0xBD, 0xFE, 0x43, 0x01,
+ 0x1A, 0x00, 0x15, 0x00, 0xB0, 0x00, 0x1A, 0x00,
+ 0x40, 0x00, 0xB0, 0x00, 0x1A, 0x00, 0x6B, 0x00,
+ 0xB0, 0x00, 0x1A, 0x00, 0x96, 0x00, 0xB0, 0x00,
+ 0x1D, 0x00, 0xC2, 0x00, 0xEB, 0x00, 0x1F, 0x00,
+ 0xED, 0x00, 0x1C, 0x01, 0x21, 0x00, 0x18, 0x01,
+ 0x59, 0x01, 0x23, 0x00, 0x43, 0x01, 0xA1, 0x01,
+ 0x1A, 0x00, 0xEB, 0xFF, 0xB0, 0x00, 0x1A, 0x00,
+ 0xC0, 0xFF, 0xB0, 0x00, 0x1A, 0x00, 0x95, 0xFF,
+ 0xB0, 0x00, 0x1A, 0x00, 0x6A, 0xFF, 0xB0, 0x00,
+ 0x1D, 0x00, 0x3E, 0xFF, 0xEB, 0x00, 0x1F, 0x00,
+ 0x13, 0xFF, 0x1C, 0x01, 0x21, 0x00, 0xE8, 0xFE,
+ 0x59, 0x01, 0x23, 0x00, 0xBD, 0xFE, 0xA1, 0x01,
+ 0x1C, 0x00, 0x15, 0x00, 0xD7, 0x00, 0x1C, 0x00,
+ 0x40, 0x00, 0xD7, 0x00, 0x1C, 0x00, 0x6B, 0x00,
+ 0xD7, 0x00, 0x1C, 0x00, 0x96, 0x00, 0xD7, 0x00,
+ 0x1F, 0x00, 0xC2, 0x00, 0x1F, 0x01, 0x21, 0x00,
+ 0xED, 0x00, 0x5B, 0x01, 0x23, 0x00, 0x18, 0x01,
+ 0xA5, 0x01, 0x25, 0x00, 0x43, 0x01, 0xFD, 0x01,
+ 0x1C, 0x00, 0xEB, 0xFF, 0xD7, 0x00, 0x1C, 0x00,
+ 0xC0, 0xFF, 0xD7, 0x00, 0x1C, 0x00, 0x95, 0xFF,
+ 0xD7, 0x00, 0x1C, 0x00, 0x6A, 0xFF, 0xD7, 0x00,
+ 0x1F, 0x00, 0x3E, 0xFF, 0x1F, 0x01, 0x21, 0x00,
+ 0x13, 0xFF, 0x5B, 0x01, 0x23, 0x00, 0xE8, 0xFE,
+ 0xA5, 0x01, 0x25, 0x00, 0xBD, 0xFE, 0xFD, 0x01,
+ 0x1E, 0x00, 0x15, 0x00, 0xFE, 0x00, 0x1E, 0x00,
+ 0x40, 0x00, 0xFE, 0x00, 0x1E, 0x00, 0x6B, 0x00,
+ 0xFE, 0x00, 0x1E, 0x00, 0x96, 0x00, 0xFE, 0x00,
+ 0x21, 0x00, 0xC2, 0x00, 0x53, 0x01, 0x23, 0x00,
+ 0xED, 0x00, 0x9A, 0x01, 0x25, 0x00, 0x18, 0x01,
+ 0xF2, 0x01, 0x27, 0x00, 0x43, 0x01, 0x5A, 0x02,
+ 0x1E, 0x00, 0xEB, 0xFF, 0xFE, 0x00, 0x1E, 0x00,
+ 0xC0, 0xFF, 0xFE, 0x00, 0x1E, 0x00, 0x95, 0xFF,
+ 0xFE, 0x00, 0x1E, 0x00, 0x6A, 0xFF, 0xFE, 0x00,
+ 0x21, 0x00, 0x3E, 0xFF, 0x53, 0x01, 0x23, 0x00,
+ 0x13, 0xFF, 0x9A, 0x01, 0x25, 0x00, 0xE8, 0xFE,
+ 0xF2, 0x01, 0x27, 0x00, 0xBD, 0xFE, 0x5A, 0x02,
+ 0x20, 0x00, 0x15, 0x00, 0x25, 0x01, 0x20, 0x00,
+ 0x40, 0x00, 0x25, 0x01, 0x20, 0x00, 0x6B, 0x00,
+ 0x25, 0x01, 0x20, 0x00, 0x96, 0x00, 0x25, 0x01,
+ 0x23, 0x00, 0xC2, 0x00, 0x87, 0x01, 0x25, 0x00,
+ 0xED, 0x00, 0xD9, 0x01, 0x27, 0x00, 0x18, 0x01,
+ 0x3E, 0x02, 0x29, 0x00, 0x43, 0x01, 0xB6, 0x02,
+ 0x20, 0x00, 0xEB, 0xFF, 0x25, 0x01, 0x20, 0x00,
+ 0xC0, 0xFF, 0x25, 0x01, 0x20, 0x00, 0x95, 0xFF,
+ 0x25, 0x01, 0x20, 0x00, 0x6A, 0xFF, 0x25, 0x01,
+ 0x23, 0x00, 0x3E, 0xFF, 0x87, 0x01, 0x25, 0x00,
+ 0x13, 0xFF, 0xD9, 0x01, 0x27, 0x00, 0xE8, 0xFE,
+ 0x3E, 0x02, 0x29, 0x00, 0xBD, 0xFE, 0xB6, 0x02,
+ 0x17, 0x00, 0x15, 0x00, 0xED, 0xFF, 0x17, 0x00,
+ 0x40, 0x00, 0xED, 0xFF, 0x17, 0x00, 0x6B, 0x00,
+ 0xED, 0xFF, 0x17, 0x00, 0x96, 0x00, 0xED, 0xFF,
+ 0x1A, 0x00, 0xC2, 0x00, 0xE6, 0xFF, 0x1C, 0x00,
+ 0xED, 0x00, 0xE1, 0xFF, 0x1E, 0x00, 0x18, 0x01,
+ 0xDA, 0xFF, 0x20, 0x00, 0x43, 0x01, 0xD2, 0xFF,
+ 0x17, 0x00, 0xEB, 0xFF, 0xED, 0xFF, 0x17, 0x00,
+ 0xC0, 0xFF, 0xED, 0xFF, 0x17, 0x00, 0x95, 0xFF,
+ 0xED, 0xFF, 0x17, 0x00, 0x6A, 0xFF, 0xED, 0xFF,
+ 0x1A, 0x00, 0x3E, 0xFF, 0xE6, 0xFF, 0x1C, 0x00,
+ 0x13, 0xFF, 0xE1, 0xFF, 0x1E, 0x00, 0xE8, 0xFE,
+ 0xDA, 0xFF, 0x20, 0x00, 0xBD, 0xFE, 0xD2, 0xFF,
+ 0x17, 0x00, 0x15, 0x00, 0xC6, 0xFF, 0x17, 0x00,
+ 0x40, 0x00, 0xC6, 0xFF, 0x17, 0x00, 0x6B, 0x00,
+ 0xC6, 0xFF, 0x17, 0x00, 0x96, 0x00, 0xC6, 0xFF,
+ 0x1A, 0x00, 0xC2, 0x00, 0xB2, 0xFF, 0x1C, 0x00,
+ 0xED, 0x00, 0xA2, 0xFF, 0x1E, 0x00, 0x18, 0x01,
+ 0x8E, 0xFF, 0x20, 0x00, 0x43, 0x01, 0x76, 0xFF,
+ 0x17, 0x00, 0xEB, 0xFF, 0xC6, 0xFF, 0x17, 0x00,
+ 0xC0, 0xFF, 0xC6, 0xFF, 0x17, 0x00, 0x95, 0xFF,
+ 0xC6, 0xFF, 0x17, 0x00, 0x6A, 0xFF, 0xC6, 0xFF,
+ 0x1A, 0x00, 0x3E, 0xFF, 0xB2, 0xFF, 0x1C, 0x00,
+ 0x13, 0xFF, 0xA2, 0xFF, 0x1E, 0x00, 0xE8, 0xFE,
+ 0x8E, 0xFF, 0x20, 0x00, 0xBD, 0xFE, 0x76, 0xFF,
+ 0x17, 0x00, 0x15, 0x00, 0x9F, 0xFF, 0x17, 0x00,
+ 0x40, 0x00, 0x9F, 0xFF, 0x17, 0x00, 0x6B, 0x00,
+ 0x9F, 0xFF, 0x17, 0x00, 0x96, 0x00, 0x9F, 0xFF,
+ 0x1A, 0x00, 0xC2, 0x00, 0x7E, 0xFF, 0x1C, 0x00,
+ 0xED, 0x00, 0x63, 0xFF, 0x1E, 0x00, 0x18, 0x01,
+ 0x41, 0xFF, 0x20, 0x00, 0x43, 0x01, 0x19, 0xFF,
+ 0x17, 0x00, 0xEB, 0xFF, 0x9F, 0xFF, 0x17, 0x00,
+ 0xC0, 0xFF, 0x9F, 0xFF, 0x17, 0x00, 0x95, 0xFF,
+ 0x9F, 0xFF, 0x17, 0x00, 0x6A, 0xFF, 0x9F, 0xFF,
+ 0x1A, 0x00, 0x3E, 0xFF, 0x7E, 0xFF, 0x1C, 0x00,
+ 0x13, 0xFF, 0x63, 0xFF, 0x1E, 0x00, 0xE8, 0xFE,
+ 0x41, 0xFF, 0x20, 0x00, 0xBD, 0xFE, 0x19, 0xFF,
+ 0x17, 0x00, 0x15, 0x00, 0x78, 0xFF, 0x17, 0x00,
+ 0x40, 0x00, 0x78, 0xFF, 0x17, 0x00, 0x6B, 0x00,
+ 0x78, 0xFF, 0x17, 0x00, 0x96, 0x00, 0x78, 0xFF,
+ 0x1A, 0x00, 0xC2, 0x00, 0x4A, 0xFF, 0x1C, 0x00,
+ 0xED, 0x00, 0x24, 0xFF, 0x1E, 0x00, 0x18, 0x01,
+ 0xF5, 0xFE, 0x20, 0x00, 0x43, 0x01, 0xBD, 0xFE,
+ 0x17, 0x00, 0xEB, 0xFF, 0x78, 0xFF, 0x17, 0x00,
+ 0xC0, 0xFF, 0x78, 0xFF, 0x17, 0x00, 0x95, 0xFF,
+ 0x78, 0xFF, 0x17, 0x00, 0x6A, 0xFF, 0x78, 0xFF,
+ 0x1A, 0x00, 0x3E, 0xFF, 0x4A, 0xFF, 0x1C, 0x00,
+ 0x13, 0xFF, 0x24, 0xFF, 0x1E, 0x00, 0xE8, 0xFE,
+ 0xF5, 0xFE, 0x20, 0x00, 0xBD, 0xFE, 0xBD, 0xFE,
+ 0x1A, 0x00, 0x15, 0x00, 0x50, 0xFF, 0x1A, 0x00,
+ 0x40, 0x00, 0x50, 0xFF, 0x1A, 0x00, 0x6B, 0x00,
+ 0x50, 0xFF, 0x1A, 0x00, 0x96, 0x00, 0x50, 0xFF,
+ 0x1D, 0x00, 0xC2, 0x00, 0x15, 0xFF, 0x1F, 0x00,
+ 0xED, 0x00, 0xE4, 0xFE, 0x21, 0x00, 0x18, 0x01,
+ 0xA7, 0xFE, 0x23, 0x00, 0x43, 0x01, 0x5F, 0xFE,
+ 0x1A, 0x00, 0xEB, 0xFF, 0x50, 0xFF, 0x1A, 0x00,
+ 0xC0, 0xFF, 0x50, 0xFF, 0x1A, 0x00, 0x95, 0xFF,
+ 0x50, 0xFF, 0x1A, 0x00, 0x6A, 0xFF, 0x50, 0xFF,
+ 0x1D, 0x00, 0x3E, 0xFF, 0x15, 0xFF, 0x1F, 0x00,
+ 0x13, 0xFF, 0xE4, 0xFE, 0x21, 0x00, 0xE8, 0xFE,
+ 0xA7, 0xFE, 0x23, 0x00, 0xBD, 0xFE, 0x5F, 0xFE,
+ 0x1C, 0x00, 0x15, 0x00, 0x29, 0xFF, 0x1C, 0x00,
+ 0x40, 0x00, 0x29, 0xFF, 0x1C, 0x00, 0x6B, 0x00,
+ 0x29, 0xFF, 0x1C, 0x00, 0x96, 0x00, 0x29, 0xFF,
+ 0x1F, 0x00, 0xC2, 0x00, 0xE1, 0xFE, 0x21, 0x00,
+ 0xED, 0x00, 0xA5, 0xFE, 0x23, 0x00, 0x18, 0x01,
+ 0x5B, 0xFE, 0x25, 0x00, 0x43, 0x01, 0x03, 0xFE,
+ 0x1C, 0x00, 0xEB, 0xFF, 0x29, 0xFF, 0x1C, 0x00,
+ 0xC0, 0xFF, 0x29, 0xFF, 0x1C, 0x00, 0x95, 0xFF,
+ 0x29, 0xFF, 0x1C, 0x00, 0x6A, 0xFF, 0x29, 0xFF,
+ 0x1F, 0x00, 0x3E, 0xFF, 0xE1, 0xFE, 0x21, 0x00,
+ 0x13, 0xFF, 0xA5, 0xFE, 0x23, 0x00, 0xE8, 0xFE,
+ 0x5B, 0xFE, 0x25, 0x00, 0xBD, 0xFE, 0x03, 0xFE,
+ 0x1E, 0x00, 0x15, 0x00, 0x02, 0xFF, 0x1E, 0x00,
+ 0x40, 0x00, 0x02, 0xFF, 0x1E, 0x00, 0x6B, 0x00,
+ 0x02, 0xFF, 0x1E, 0x00, 0x96, 0x00, 0x02, 0xFF,
+ 0x21, 0x00, 0xC2, 0x00, 0xAD, 0xFE, 0x23, 0x00,
+ 0xED, 0x00, 0x66, 0xFE, 0x25, 0x00, 0x18, 0x01,
+ 0x0E, 0xFE, 0x27, 0x00, 0x43, 0x01, 0xA6, 0xFD,
+ 0x1E, 0x00, 0xEB, 0xFF, 0x02, 0xFF, 0x1E, 0x00,
+ 0xC0, 0xFF, 0x02, 0xFF, 0x1E, 0x00, 0x95, 0xFF,
+ 0x02, 0xFF, 0x1E, 0x00, 0x6A, 0xFF, 0x02, 0xFF,
+ 0x21, 0x00, 0x3E, 0xFF, 0xAD, 0xFE, 0x23, 0x00,
+ 0x13, 0xFF, 0x66, 0xFE, 0x25, 0x00, 0xE8, 0xFE,
+ 0x0E, 0xFE, 0x27, 0x00, 0xBD, 0xFE, 0xA6, 0xFD,
+ 0x20, 0x00, 0x15, 0x00, 0xDB, 0xFE, 0x20, 0x00,
+ 0x40, 0x00, 0xDB, 0xFE, 0x20, 0x00, 0x6B, 0x00,
+ 0xDB, 0xFE, 0x20, 0x00, 0x96, 0x00, 0xDB, 0xFE,
+ 0x23, 0x00, 0xC2, 0x00, 0x79, 0xFE, 0x25, 0x00,
+ 0xED, 0x00, 0x27, 0xFE, 0x27, 0x00, 0x18, 0x01,
+ 0xC2, 0xFD, 0x29, 0x00, 0x43, 0x01, 0x4A, 0xFD,
+ 0x20, 0x00, 0xEB, 0xFF, 0xDB, 0xFE, 0x20, 0x00,
+ 0xC0, 0xFF, 0xDB, 0xFE, 0x20, 0x00, 0x95, 0xFF,
+ 0xDB, 0xFE, 0x20, 0x00, 0x6A, 0xFF, 0xDB, 0xFE,
+ 0x23, 0x00, 0x3E, 0xFF, 0x79, 0xFE, 0x25, 0x00,
+ 0x13, 0xFF, 0x27, 0xFE, 0x27, 0x00, 0xE8, 0xFE,
+ 0xC2, 0xFD, 0x29, 0x00, 0xBD, 0xFE, 0x4A, 0xFD,
+ 0x18, 0x00, 0x17, 0x00, 0x15, 0x00, 0x18, 0x00,
+ 0x46, 0x00, 0x15, 0x00, 0x18, 0x00, 0x76, 0x00,
+ 0x15, 0x00, 0x18, 0x00, 0xA5, 0x00, 0x15, 0x00,
+ 0x1B, 0x00, 0xD5, 0x00, 0x1C, 0x00, 0x1D, 0x00,
+ 0x04, 0x01, 0x22, 0x00, 0x1F, 0x00, 0x34, 0x01,
+ 0x2A, 0x00, 0x21, 0x00, 0x63, 0x01, 0x33, 0x00,
+ 0x18, 0x00, 0xE9, 0xFF, 0x15, 0x00, 0x18, 0x00,
+ 0xBA, 0xFF, 0x15, 0x00, 0x18, 0x00, 0x8A, 0xFF,
+ 0x15, 0x00, 0x18, 0x00, 0x5B, 0xFF, 0x15, 0x00,
+ 0x1B, 0x00, 0x2B, 0xFF, 0x1C, 0x00, 0x1D, 0x00,
+ 0xFC, 0xFE, 0x22, 0x00, 0x1F, 0x00, 0xCC, 0xFE,
+ 0x2A, 0x00, 0x21, 0x00, 0x9D, 0xFE, 0x33, 0x00,
+ 0x18, 0x00, 0x17, 0x00, 0x40, 0x00, 0x18, 0x00,
+ 0x46, 0x00, 0x40, 0x00, 0x18, 0x00, 0x76, 0x00,
+ 0x40, 0x00, 0x18, 0x00, 0xA5, 0x00, 0x40, 0x00,
+ 0x1B, 0x00, 0xD5, 0x00, 0x55, 0x00, 0x1D, 0x00,
+ 0x04, 0x01, 0x67, 0x00, 0x1F, 0x00, 0x34, 0x01,
+ 0x7E, 0x00, 0x21, 0x00, 0x63, 0x01, 0x99, 0x00,
+ 0x18, 0x00, 0xE9, 0xFF, 0x40, 0x00, 0x18, 0x00,
+ 0xBA, 0xFF, 0x40, 0x00, 0x18, 0x00, 0x8A, 0xFF,
+ 0x40, 0x00, 0x18, 0x00, 0x5B, 0xFF, 0x40, 0x00,
+ 0x1B, 0x00, 0x2B, 0xFF, 0x55, 0x00, 0x1D, 0x00,
+ 0xFC, 0xFE, 0x67, 0x00, 0x1F, 0x00, 0xCC, 0xFE,
+ 0x7E, 0x00, 0x21, 0x00, 0x9D, 0xFE, 0x99, 0x00,
+ 0x18, 0x00, 0x17, 0x00, 0x6B, 0x00, 0x18, 0x00,
+ 0x46, 0x00, 0x6B, 0x00, 0x18, 0x00, 0x76, 0x00,
+ 0x6B, 0x00, 0x18, 0x00, 0xA5, 0x00, 0x6B, 0x00,
+ 0x1B, 0x00, 0xD5, 0x00, 0x8F, 0x00, 0x1D, 0x00,
+ 0x04, 0x01, 0xAD, 0x00, 0x1F, 0x00, 0x34, 0x01,
+ 0xD2, 0x00, 0x21, 0x00, 0x63, 0x01, 0xFF, 0x00,
+ 0x18, 0x00, 0xE9, 0xFF, 0x6B, 0x00, 0x18, 0x00,
+ 0xBA, 0xFF, 0x6B, 0x00, 0x18, 0x00, 0x8A, 0xFF,
+ 0x6B, 0x00, 0x18, 0x00, 0x5B, 0xFF, 0x6B, 0x00,
+ 0x1B, 0x00, 0x2B, 0xFF, 0x8F, 0x00, 0x1D, 0x00,
+ 0xFC, 0xFE, 0xAD, 0x00, 0x1F, 0x00, 0xCC, 0xFE,
+ 0xD2, 0x00, 0x21, 0x00, 0x9D, 0xFE, 0xFF, 0x00,
+ 0x18, 0x00, 0x17, 0x00, 0x96, 0x00, 0x18, 0x00,
+ 0x46, 0x00, 0x96, 0x00, 0x18, 0x00, 0x76, 0x00,
+ 0x96, 0x00, 0x18, 0x00, 0xA5, 0x00, 0x96, 0x00,
+ 0x1B, 0x00, 0xD5, 0x00, 0xC8, 0x00, 0x1D, 0x00,
+ 0x04, 0x01, 0xF2, 0x00, 0x1F, 0x00, 0x34, 0x01,
+ 0x26, 0x01, 0x21, 0x00, 0x63, 0x01, 0x65, 0x01,
+ 0x18, 0x00, 0xE9, 0xFF, 0x96, 0x00, 0x18, 0x00,
+ 0xBA, 0xFF, 0x96, 0x00, 0x18, 0x00, 0x8A, 0xFF,
+ 0x96, 0x00, 0x18, 0x00, 0x5B, 0xFF, 0x96, 0x00,
+ 0x1B, 0x00, 0x2B, 0xFF, 0xC8, 0x00, 0x1D, 0x00,
+ 0xFC, 0xFE, 0xF2, 0x00, 0x1F, 0x00, 0xCC, 0xFE,
+ 0x26, 0x01, 0x21, 0x00, 0x9D, 0xFE, 0x65, 0x01,
+ 0x1B, 0x00, 0x17, 0x00, 0xC2, 0x00, 0x1B, 0x00,
+ 0x46, 0x00, 0xC2, 0x00, 0x1B, 0x00, 0x76, 0x00,
+ 0xC2, 0x00, 0x1B, 0x00, 0xA5, 0x00, 0xC2, 0x00,
+ 0x1E, 0x00, 0xD5, 0x00, 0x02, 0x01, 0x20, 0x00,
+ 0x04, 0x01, 0x39, 0x01, 0x22, 0x00, 0x34, 0x01,
+ 0x7B, 0x01, 0x24, 0x00, 0x63, 0x01, 0xCB, 0x01,
+ 0x1B, 0x00, 0xE9, 0xFF, 0xC2, 0x00, 0x1B, 0x00,
+ 0xBA, 0xFF, 0xC2, 0x00, 0x1B, 0x00, 0x8A, 0xFF,
+ 0xC2, 0x00, 0x1B, 0x00, 0x5B, 0xFF, 0xC2, 0x00,
+ 0x1E, 0x00, 0x2B, 0xFF, 0x02, 0x01, 0x20, 0x00,
+ 0xFC, 0xFE, 0x39, 0x01, 0x22, 0x00, 0xCC, 0xFE,
+ 0x7B, 0x01, 0x24, 0x00, 0x9D, 0xFE, 0xCB, 0x01,
+ 0x1D, 0x00, 0x17, 0x00, 0xED, 0x00, 0x1D, 0x00,
+ 0x46, 0x00, 0xED, 0x00, 0x1D, 0x00, 0x76, 0x00,
+ 0xED, 0x00, 0x1D, 0x00, 0xA5, 0x00, 0xED, 0x00,
+ 0x20, 0x00, 0xD5, 0x00, 0x3B, 0x01, 0x22, 0x00,
+ 0x04, 0x01, 0x7E, 0x01, 0x24, 0x00, 0x34, 0x01,
+ 0xCF, 0x01, 0x26, 0x00, 0x63, 0x01, 0x31, 0x02,
+ 0x1D, 0x00, 0xE9, 0xFF, 0xED, 0x00, 0x1D, 0x00,
+ 0xBA, 0xFF, 0xED, 0x00, 0x1D, 0x00, 0x8A, 0xFF,
+ 0xED, 0x00, 0x1D, 0x00, 0x5B, 0xFF, 0xED, 0x00,
+ 0x20, 0x00, 0x2B, 0xFF, 0x3B, 0x01, 0x22, 0x00,
+ 0xFC, 0xFE, 0x7E, 0x01, 0x24, 0x00, 0xCC, 0xFE,
+ 0xCF, 0x01, 0x26, 0x00, 0x9D, 0xFE, 0x31, 0x02,
+ 0x1F, 0x00, 0x17, 0x00, 0x18, 0x01, 0x1F, 0x00,
+ 0x46, 0x00, 0x18, 0x01, 0x1F, 0x00, 0x76, 0x00,
+ 0x18, 0x01, 0x1F, 0x00, 0xA5, 0x00, 0x18, 0x01,
+ 0x22, 0x00, 0xD5, 0x00, 0x75, 0x01, 0x24, 0x00,
+ 0x04, 0x01, 0xC4, 0x01, 0x26, 0x00, 0x34, 0x01,
+ 0x23, 0x02, 0x28, 0x00, 0x63, 0x01, 0x97, 0x02,
+ 0x1F, 0x00, 0xE9, 0xFF, 0x18, 0x01, 0x1F, 0x00,
+ 0xBA, 0xFF, 0x18, 0x01, 0x1F, 0x00, 0x8A, 0xFF,
+ 0x18, 0x01, 0x1F, 0x00, 0x5B, 0xFF, 0x18, 0x01,
+ 0x22, 0x00, 0x2B, 0xFF, 0x75, 0x01, 0x24, 0x00,
+ 0xFC, 0xFE, 0xC4, 0x01, 0x26, 0x00, 0xCC, 0xFE,
+ 0x23, 0x02, 0x28, 0x00, 0x9D, 0xFE, 0x97, 0x02,
+ 0x21, 0x00, 0x17, 0x00, 0x43, 0x01, 0x21, 0x00,
+ 0x46, 0x00, 0x43, 0x01, 0x21, 0x00, 0x76, 0x00,
+ 0x43, 0x01, 0x21, 0x00, 0xA5, 0x00, 0x43, 0x01,
+ 0x24, 0x00, 0xD5, 0x00, 0xAE, 0x01, 0x26, 0x00,
+ 0x04, 0x01, 0x09, 0x02, 0x28, 0x00, 0x34, 0x01,
+ 0x77, 0x02, 0x2A, 0x00, 0x63, 0x01, 0xFD, 0x02,
+ 0x21, 0x00, 0xE9, 0xFF, 0x43, 0x01, 0x21, 0x00,
+ 0xBA, 0xFF, 0x43, 0x01, 0x21, 0x00, 0x8A, 0xFF,
+ 0x43, 0x01, 0x21, 0x00, 0x5B, 0xFF, 0x43, 0x01,
+ 0x24, 0x00, 0x2B, 0xFF, 0xAE, 0x01, 0x26, 0x00,
+ 0xFC, 0xFE, 0x09, 0x02, 0x28, 0x00, 0xCC, 0xFE,
+ 0x77, 0x02, 0x2A, 0x00, 0x9D, 0xFE, 0xFD, 0x02,
+ 0x18, 0x00, 0x17, 0x00, 0xEB, 0xFF, 0x18, 0x00,
+ 0x46, 0x00, 0xEB, 0xFF, 0x18, 0x00, 0x76, 0x00,
+ 0xEB, 0xFF, 0x18, 0x00, 0xA5, 0x00, 0xEB, 0xFF,
+ 0x1B, 0x00, 0xD5, 0x00, 0xE4, 0xFF, 0x1D, 0x00,
+ 0x04, 0x01, 0xDE, 0xFF, 0x1F, 0x00, 0x34, 0x01,
+ 0xD6, 0xFF, 0x21, 0x00, 0x63, 0x01, 0xCD, 0xFF,
+ 0x18, 0x00, 0xE9, 0xFF, 0xEB, 0xFF, 0x18, 0x00,
+ 0xBA, 0xFF, 0xEB, 0xFF, 0x18, 0x00, 0x8A, 0xFF,
+ 0xEB, 0xFF, 0x18, 0x00, 0x5B, 0xFF, 0xEB, 0xFF,
+ 0x1B, 0x00, 0x2B, 0xFF, 0xE4, 0xFF, 0x1D, 0x00,
+ 0xFC, 0xFE, 0xDE, 0xFF, 0x1F, 0x00, 0xCC, 0xFE,
+ 0xD6, 0xFF, 0x21, 0x00, 0x9D, 0xFE, 0xCD, 0xFF,
+ 0x18, 0x00, 0x17, 0x00, 0xC0, 0xFF, 0x18, 0x00,
+ 0x46, 0x00, 0xC0, 0xFF, 0x18, 0x00, 0x76, 0x00,
+ 0xC0, 0xFF, 0x18, 0x00, 0xA5, 0x00, 0xC0, 0xFF,
+ 0x1B, 0x00, 0xD5, 0x00, 0xAB, 0xFF, 0x1D, 0x00,
+ 0x04, 0x01, 0x99, 0xFF, 0x1F, 0x00, 0x34, 0x01,
+ 0x82, 0xFF, 0x21, 0x00, 0x63, 0x01, 0x67, 0xFF,
+ 0x18, 0x00, 0xE9, 0xFF, 0xC0, 0xFF, 0x18, 0x00,
+ 0xBA, 0xFF, 0xC0, 0xFF, 0x18, 0x00, 0x8A, 0xFF,
+ 0xC0, 0xFF, 0x18, 0x00, 0x5B, 0xFF, 0xC0, 0xFF,
+ 0x1B, 0x00, 0x2B, 0xFF, 0xAB, 0xFF, 0x1D, 0x00,
+ 0xFC, 0xFE, 0x99, 0xFF, 0x1F, 0x00, 0xCC, 0xFE,
+ 0x82, 0xFF, 0x21, 0x00, 0x9D, 0xFE, 0x67, 0xFF,
+ 0x18, 0x00, 0x17, 0x00, 0x95, 0xFF, 0x18, 0x00,
+ 0x46, 0x00, 0x95, 0xFF, 0x18, 0x00, 0x76, 0x00,
+ 0x95, 0xFF, 0x18, 0x00, 0xA5, 0x00, 0x95, 0xFF,
+ 0x1B, 0x00, 0xD5, 0x00, 0x71, 0xFF, 0x1D, 0x00,
+ 0x04, 0x01, 0x53, 0xFF, 0x1F, 0x00, 0x34, 0x01,
+ 0x2E, 0xFF, 0x21, 0x00, 0x63, 0x01, 0x01, 0xFF,
+ 0x18, 0x00, 0xE9, 0xFF, 0x95, 0xFF, 0x18, 0x00,
+ 0xBA, 0xFF, 0x95, 0xFF, 0x18, 0x00, 0x8A, 0xFF,
+ 0x95, 0xFF, 0x18, 0x00, 0x5B, 0xFF, 0x95, 0xFF,
+ 0x1B, 0x00, 0x2B, 0xFF, 0x71, 0xFF, 0x1D, 0x00,
+ 0xFC, 0xFE, 0x53, 0xFF, 0x1F, 0x00, 0xCC, 0xFE,
+ 0x2E, 0xFF, 0x21, 0x00, 0x9D, 0xFE, 0x01, 0xFF,
+ 0x18, 0x00, 0x17, 0x00, 0x6A, 0xFF, 0x18, 0x00,
+ 0x46, 0x00, 0x6A, 0xFF, 0x18, 0x00, 0x76, 0x00,
+ 0x6A, 0xFF, 0x18, 0x00, 0xA5, 0x00, 0x6A, 0xFF,
+ 0x1B, 0x00, 0xD5, 0x00, 0x38, 0xFF, 0x1D, 0x00,
+ 0x04, 0x01, 0x0E, 0xFF, 0x1F, 0x00, 0x34, 0x01,
+ 0xDA, 0xFE, 0x21, 0x00, 0x63, 0x01, 0x9B, 0xFE,
+ 0x18, 0x00, 0xE9, 0xFF, 0x6A, 0xFF, 0x18, 0x00,
+ 0xBA, 0xFF, 0x6A, 0xFF, 0x18, 0x00, 0x8A, 0xFF,
+ 0x6A, 0xFF, 0x18, 0x00, 0x5B, 0xFF, 0x6A, 0xFF,
+ 0x1B, 0x00, 0x2B, 0xFF, 0x38, 0xFF, 0x1D, 0x00,
+ 0xFC, 0xFE, 0x0E, 0xFF, 0x1F, 0x00, 0xCC, 0xFE,
+ 0xDA, 0xFE, 0x21, 0x00, 0x9D, 0xFE, 0x9B, 0xFE,
+ 0x1B, 0x00, 0x17, 0x00, 0x3E, 0xFF, 0x1B, 0x00,
+ 0x46, 0x00, 0x3E, 0xFF, 0x1B, 0x00, 0x76, 0x00,
+ 0x3E, 0xFF, 0x1B, 0x00, 0xA5, 0x00, 0x3E, 0xFF,
+ 0x1E, 0x00, 0xD5, 0x00, 0xFE, 0xFE, 0x20, 0x00,
+ 0x04, 0x01, 0xC7, 0xFE, 0x22, 0x00, 0x34, 0x01,
+ 0x85, 0xFE, 0x24, 0x00, 0x63, 0x01, 0x35, 0xFE,
+ 0x1B, 0x00, 0xE9, 0xFF, 0x3E, 0xFF, 0x1B, 0x00,
+ 0xBA, 0xFF, 0x3E, 0xFF, 0x1B, 0x00, 0x8A, 0xFF,
+ 0x3E, 0xFF, 0x1B, 0x00, 0x5B, 0xFF, 0x3E, 0xFF,
+ 0x1E, 0x00, 0x2B, 0xFF, 0xFE, 0xFE, 0x20, 0x00,
+ 0xFC, 0xFE, 0xC7, 0xFE, 0x22, 0x00, 0xCC, 0xFE,
+ 0x85, 0xFE, 0x24, 0x00, 0x9D, 0xFE, 0x35, 0xFE,
+ 0x1D, 0x00, 0x17, 0x00, 0x13, 0xFF, 0x1D, 0x00,
+ 0x46, 0x00, 0x13, 0xFF, 0x1D, 0x00, 0x76, 0x00,
+ 0x13, 0xFF, 0x1D, 0x00, 0xA5, 0x00, 0x13, 0xFF,
+ 0x20, 0x00, 0xD5, 0x00, 0xC5, 0xFE, 0x22, 0x00,
+ 0x04, 0x01, 0x82, 0xFE, 0x24, 0x00, 0x34, 0x01,
+ 0x31, 0xFE, 0x26, 0x00, 0x63, 0x01, 0xCF, 0xFD,
+ 0x1D, 0x00, 0xE9, 0xFF, 0x13, 0xFF, 0x1D, 0x00,
+ 0xBA, 0xFF, 0x13, 0xFF, 0x1D, 0x00, 0x8A, 0xFF,
+ 0x13, 0xFF, 0x1D, 0x00, 0x5B, 0xFF, 0x13, 0xFF,
+ 0x20, 0x00, 0x2B, 0xFF, 0xC5, 0xFE, 0x22, 0x00,
+ 0xFC, 0xFE, 0x82, 0xFE, 0x24, 0x00, 0xCC, 0xFE,
+ 0x31, 0xFE, 0x26, 0x00, 0x9D, 0xFE, 0xCF, 0xFD,
+ 0x1F, 0x00, 0x17, 0x00, 0xE8, 0xFE, 0x1F, 0x00,
+ 0x46, 0x00, 0xE8, 0xFE, 0x1F, 0x00, 0x76, 0x00,
+ 0xE8, 0xFE, 0x1F, 0x00, 0xA5, 0x00, 0xE8, 0xFE,
+ 0x22, 0x00, 0xD5, 0x00, 0x8B, 0xFE, 0x24, 0x00,
+ 0x04, 0x01, 0x3C, 0xFE, 0x26, 0x00, 0x34, 0x01,
+ 0xDD, 0xFD, 0x28, 0x00, 0x63, 0x01, 0x69, 0xFD,
+ 0x1F, 0x00, 0xE9, 0xFF, 0xE8, 0xFE, 0x1F, 0x00,
+ 0xBA, 0xFF, 0xE8, 0xFE, 0x1F, 0x00, 0x8A, 0xFF,
+ 0xE8, 0xFE, 0x1F, 0x00, 0x5B, 0xFF, 0xE8, 0xFE,
+ 0x22, 0x00, 0x2B, 0xFF, 0x8B, 0xFE, 0x24, 0x00,
+ 0xFC, 0xFE, 0x3C, 0xFE, 0x26, 0x00, 0xCC, 0xFE,
+ 0xDD, 0xFD, 0x28, 0x00, 0x9D, 0xFE, 0x69, 0xFD,
+ 0x21, 0x00, 0x17, 0x00, 0xBD, 0xFE, 0x21, 0x00,
+ 0x46, 0x00, 0xBD, 0xFE, 0x21, 0x00, 0x76, 0x00,
+ 0xBD, 0xFE, 0x21, 0x00, 0xA5, 0x00, 0xBD, 0xFE,
+ 0x24, 0x00, 0xD5, 0x00, 0x52, 0xFE, 0x26, 0x00,
+ 0x04, 0x01, 0xF7, 0xFD, 0x28, 0x00, 0x34, 0x01,
+ 0x89, 0xFD, 0x2A, 0x00, 0x63, 0x01, 0x03, 0xFD,
+ 0x21, 0x00, 0xE9, 0xFF, 0xBD, 0xFE, 0x21, 0x00,
+ 0xBA, 0xFF, 0xBD, 0xFE, 0x21, 0x00, 0x8A, 0xFF,
+ 0xBD, 0xFE, 0x21, 0x00, 0x5B, 0xFF, 0xBD, 0xFE,
+ 0x24, 0x00, 0x2B, 0xFF, 0x52, 0xFE, 0x26, 0x00,
+ 0xFC, 0xFE, 0xF7, 0xFD, 0x28, 0x00, 0xCC, 0xFE,
+ 0x89, 0xFD, 0x2A, 0x00, 0x9D, 0xFE, 0x03, 0xFD,
+ 0x19, 0x00, 0x1A, 0x00, 0x17, 0x00, 0x19, 0x00,
+ 0x4E, 0x00, 0x17, 0x00, 0x19, 0x00, 0x82, 0x00,
+ 0x17, 0x00, 0x19, 0x00, 0xB6, 0x00, 0x17, 0x00,
+ 0x1C, 0x00, 0xEB, 0x00, 0x1F, 0x00, 0x1E, 0x00,
+ 0x1F, 0x01, 0x26, 0x00, 0x20, 0x00, 0x53, 0x01,
+ 0x2E, 0x00, 0x22, 0x00, 0x87, 0x01, 0x38, 0x00,
+ 0x19, 0x00, 0xE6, 0xFF, 0x17, 0x00, 0x19, 0x00,
+ 0xB2, 0xFF, 0x17, 0x00, 0x19, 0x00, 0x7E, 0xFF,
+ 0x17, 0x00, 0x19, 0x00, 0x4A, 0xFF, 0x17, 0x00,
+ 0x1C, 0x00, 0x15, 0xFF, 0x1F, 0x00, 0x1E, 0x00,
+ 0xE1, 0xFE, 0x26, 0x00, 0x20, 0x00, 0xAD, 0xFE,
+ 0x2E, 0x00, 0x22, 0x00, 0x79, 0xFE, 0x38, 0x00,
+ 0x19, 0x00, 0x1A, 0x00, 0x46, 0x00, 0x19, 0x00,
+ 0x4E, 0x00, 0x46, 0x00, 0x19, 0x00, 0x82, 0x00,
+ 0x46, 0x00, 0x19, 0x00, 0xB6, 0x00, 0x46, 0x00,
+ 0x1C, 0x00, 0xEB, 0x00, 0x5E, 0x00, 0x1E, 0x00,
+ 0x1F, 0x01, 0x72, 0x00, 0x20, 0x00, 0x53, 0x01,
+ 0x8A, 0x00, 0x22, 0x00, 0x87, 0x01, 0xA8, 0x00,
+ 0x19, 0x00, 0xE6, 0xFF, 0x46, 0x00, 0x19, 0x00,
+ 0xB2, 0xFF, 0x46, 0x00, 0x19, 0x00, 0x7E, 0xFF,
+ 0x46, 0x00, 0x19, 0x00, 0x4A, 0xFF, 0x46, 0x00,
+ 0x1C, 0x00, 0x15, 0xFF, 0x5E, 0x00, 0x1E, 0x00,
+ 0xE1, 0xFE, 0x72, 0x00, 0x20, 0x00, 0xAD, 0xFE,
+ 0x8A, 0x00, 0x22, 0x00, 0x79, 0xFE, 0xA8, 0x00,
+ 0x19, 0x00, 0x1A, 0x00, 0x76, 0x00, 0x19, 0x00,
+ 0x4E, 0x00, 0x76, 0x00, 0x19, 0x00, 0x82, 0x00,
+ 0x76, 0x00, 0x19, 0x00, 0xB6, 0x00, 0x76, 0x00,
+ 0x1C, 0x00, 0xEB, 0x00, 0x9D, 0x00, 0x1E, 0x00,
+ 0x1F, 0x01, 0xBF, 0x00, 0x20, 0x00, 0x53, 0x01,
+ 0xE7, 0x00, 0x22, 0x00, 0x87, 0x01, 0x18, 0x01,
+ 0x19, 0x00, 0xE6, 0xFF, 0x76, 0x00, 0x19, 0x00,
+ 0xB2, 0xFF, 0x76, 0x00, 0x19, 0x00, 0x7E, 0xFF,
+ 0x76, 0x00, 0x19, 0x00, 0x4A, 0xFF, 0x76, 0x00,
+ 0x1C, 0x00, 0x15, 0xFF, 0x9D, 0x00, 0x1E, 0x00,
+ 0xE1, 0xFE, 0xBF, 0x00, 0x20, 0x00, 0xAD, 0xFE,
+ 0xE7, 0x00, 0x22, 0x00, 0x79, 0xFE, 0x18, 0x01,
+ 0x19, 0x00, 0x1A, 0x00, 0xA5, 0x00, 0x19, 0x00,
+ 0x4E, 0x00, 0xA5, 0x00, 0x19, 0x00, 0x82, 0x00,
+ 0xA5, 0x00, 0x19, 0x00, 0xB6, 0x00, 0xA5, 0x00,
+ 0x1C, 0x00, 0xEB, 0x00, 0xDC, 0x00, 0x1E, 0x00,
+ 0x1F, 0x01, 0x0B, 0x01, 0x20, 0x00, 0x53, 0x01,
+ 0x43, 0x01, 0x22, 0x00, 0x87, 0x01, 0x88, 0x01,
+ 0x19, 0x00, 0xE6, 0xFF, 0xA5, 0x00, 0x19, 0x00,
+ 0xB2, 0xFF, 0xA5, 0x00, 0x19, 0x00, 0x7E, 0xFF,
+ 0xA5, 0x00, 0x19, 0x00, 0x4A, 0xFF, 0xA5, 0x00,
+ 0x1C, 0x00, 0x15, 0xFF, 0xDC, 0x00, 0x1E, 0x00,
+ 0xE1, 0xFE, 0x0B, 0x01, 0x20, 0x00, 0xAD, 0xFE,
+ 0x43, 0x01, 0x22, 0x00, 0x79, 0xFE, 0x88, 0x01,
+ 0x1C, 0x00, 0x1A, 0x00, 0xD5, 0x00, 0x1C, 0x00,
+ 0x4E, 0x00, 0xD5, 0x00, 0x1C, 0x00, 0x82, 0x00,
+ 0xD5, 0x00, 0x1C, 0x00, 0xB6, 0x00, 0xD5, 0x00,
+ 0x1F, 0x00, 0xEB, 0x00, 0x1C, 0x01, 0x21, 0x00,
+ 0x1F, 0x01, 0x59, 0x01, 0x23, 0x00, 0x53, 0x01,
+ 0xA1, 0x01, 0x25, 0x00, 0x87, 0x01, 0xF9, 0x01,
+ 0x1C, 0x00, 0xE6, 0xFF, 0xD5, 0x00, 0x1C, 0x00,
+ 0xB2, 0xFF, 0xD5, 0x00, 0x1C, 0x00, 0x7E, 0xFF,
+ 0xD5, 0x00, 0x1C, 0x00, 0x4A, 0xFF, 0xD5, 0x00,
+ 0x1F, 0x00, 0x15, 0xFF, 0x1C, 0x01, 0x21, 0x00,
+ 0xE1, 0xFE, 0x59, 0x01, 0x23, 0x00, 0xAD, 0xFE,
+ 0xA1, 0x01, 0x25, 0x00, 0x79, 0xFE, 0xF9, 0x01,
+ 0x1E, 0x00, 0x1A, 0x00, 0x04, 0x01, 0x1E, 0x00,
+ 0x4E, 0x00, 0x04, 0x01, 0x1E, 0x00, 0x82, 0x00,
+ 0x04, 0x01, 0x1E, 0x00, 0xB6, 0x00, 0x04, 0x01,
+ 0x21, 0x00, 0xEB, 0x00, 0x5B, 0x01, 0x23, 0x00,
+ 0x1F, 0x01, 0xA5, 0x01, 0x25, 0x00, 0x53, 0x01,
+ 0xFD, 0x01, 0x27, 0x00, 0x87, 0x01, 0x69, 0x02,
+ 0x1E, 0x00, 0xE6, 0xFF, 0x04, 0x01, 0x1E, 0x00,
+ 0xB2, 0xFF, 0x04, 0x01, 0x1E, 0x00, 0x7E, 0xFF,
+ 0x04, 0x01, 0x1E, 0x00, 0x4A, 0xFF, 0x04, 0x01,
+ 0x21, 0x00, 0x15, 0xFF, 0x5B, 0x01, 0x23, 0x00,
+ 0xE1, 0xFE, 0xA5, 0x01, 0x25, 0x00, 0xAD, 0xFE,
+ 0xFD, 0x01, 0x27, 0x00, 0x79, 0xFE, 0x69, 0x02,
+ 0x20, 0x00, 0x1A, 0x00, 0x34, 0x01, 0x20, 0x00,
+ 0x4E, 0x00, 0x34, 0x01, 0x20, 0x00, 0x82, 0x00,
+ 0x34, 0x01, 0x20, 0x00, 0xB6, 0x00, 0x34, 0x01,
+ 0x23, 0x00, 0xEB, 0x00, 0x9A, 0x01, 0x25, 0x00,
+ 0x1F, 0x01, 0xF2, 0x01, 0x27, 0x00, 0x53, 0x01,
+ 0x5A, 0x02, 0x29, 0x00, 0x87, 0x01, 0xD9, 0x02,
+ 0x20, 0x00, 0xE6, 0xFF, 0x34, 0x01, 0x20, 0x00,
+ 0xB2, 0xFF, 0x34, 0x01, 0x20, 0x00, 0x7E, 0xFF,
+ 0x34, 0x01, 0x20, 0x00, 0x4A, 0xFF, 0x34, 0x01,
+ 0x23, 0x00, 0x15, 0xFF, 0x9A, 0x01, 0x25, 0x00,
+ 0xE1, 0xFE, 0xF2, 0x01, 0x27, 0x00, 0xAD, 0xFE,
+ 0x5A, 0x02, 0x29, 0x00, 0x79, 0xFE, 0xD9, 0x02,
+ 0x22, 0x00, 0x1A, 0x00, 0x63, 0x01, 0x22, 0x00,
+ 0x4E, 0x00, 0x63, 0x01, 0x22, 0x00, 0x82, 0x00,
+ 0x63, 0x01, 0x22, 0x00, 0xB6, 0x00, 0x63, 0x01,
+ 0x25, 0x00, 0xEB, 0x00, 0xD9, 0x01, 0x27, 0x00,
+ 0x1F, 0x01, 0x3E, 0x02, 0x29, 0x00, 0x53, 0x01,
+ 0xB6, 0x02, 0x2B, 0x00, 0x87, 0x01, 0x49, 0x03,
+ 0x22, 0x00, 0xE6, 0xFF, 0x63, 0x01, 0x22, 0x00,
+ 0xB2, 0xFF, 0x63, 0x01, 0x22, 0x00, 0x7E, 0xFF,
+ 0x63, 0x01, 0x22, 0x00, 0x4A, 0xFF, 0x63, 0x01,
+ 0x25, 0x00, 0x15, 0xFF, 0xD9, 0x01, 0x27, 0x00,
+ 0xE1, 0xFE, 0x3E, 0x02, 0x29, 0x00, 0xAD, 0xFE,
+ 0xB6, 0x02, 0x2B, 0x00, 0x79, 0xFE, 0x49, 0x03,
+ 0x19, 0x00, 0x1A, 0x00, 0xE9, 0xFF, 0x19, 0x00,
+ 0x4E, 0x00, 0xE9, 0xFF, 0x19, 0x00, 0x82, 0x00,
+ 0xE9, 0xFF, 0x19, 0x00, 0xB6, 0x00, 0xE9, 0xFF,
+ 0x1C, 0x00, 0xEB, 0x00, 0xE1, 0xFF, 0x1E, 0x00,
+ 0x1F, 0x01, 0xDA, 0xFF, 0x20, 0x00, 0x53, 0x01,
+ 0xD2, 0xFF, 0x22, 0x00, 0x87, 0x01, 0xC8, 0xFF,
+ 0x19, 0x00, 0xE6, 0xFF, 0xE9, 0xFF, 0x19, 0x00,
+ 0xB2, 0xFF, 0xE9, 0xFF, 0x19, 0x00, 0x7E, 0xFF,
+ 0xE9, 0xFF, 0x19, 0x00, 0x4A, 0xFF, 0xE9, 0xFF,
+ 0x1C, 0x00, 0x15, 0xFF, 0xE1, 0xFF, 0x1E, 0x00,
+ 0xE1, 0xFE, 0xDA, 0xFF, 0x20, 0x00, 0xAD, 0xFE,
+ 0xD2, 0xFF, 0x22, 0x00, 0x79, 0xFE, 0xC8, 0xFF,
+ 0x19, 0x00, 0x1A, 0x00, 0xBA, 0xFF, 0x19, 0x00,
+ 0x4E, 0x00, 0xBA, 0xFF, 0x19, 0x00, 0x82, 0x00,
+ 0xBA, 0xFF, 0x19, 0x00, 0xB6, 0x00, 0xBA, 0xFF,
+ 0x1C, 0x00, 0xEB, 0x00, 0xA2, 0xFF, 0x1E, 0x00,
+ 0x1F, 0x01, 0x8E, 0xFF, 0x20, 0x00, 0x53, 0x01,
+ 0x76, 0xFF, 0x22, 0x00, 0x87, 0x01, 0x58, 0xFF,
+ 0x19, 0x00, 0xE6, 0xFF, 0xBA, 0xFF, 0x19, 0x00,
+ 0xB2, 0xFF, 0xBA, 0xFF, 0x19, 0x00, 0x7E, 0xFF,
+ 0xBA, 0xFF, 0x19, 0x00, 0x4A, 0xFF, 0xBA, 0xFF,
+ 0x1C, 0x00, 0x15, 0xFF, 0xA2, 0xFF, 0x1E, 0x00,
+ 0xE1, 0xFE, 0x8E, 0xFF, 0x20, 0x00, 0xAD, 0xFE,
+ 0x76, 0xFF, 0x22, 0x00, 0x79, 0xFE, 0x58, 0xFF,
+ 0x19, 0x00, 0x1A, 0x00, 0x8A, 0xFF, 0x19, 0x00,
+ 0x4E, 0x00, 0x8A, 0xFF, 0x19, 0x00, 0x82, 0x00,
+ 0x8A, 0xFF, 0x19, 0x00, 0xB6, 0x00, 0x8A, 0xFF,
+ 0x1C, 0x00, 0xEB, 0x00, 0x63, 0xFF, 0x1E, 0x00,
+ 0x1F, 0x01, 0x41, 0xFF, 0x20, 0x00, 0x53, 0x01,
+ 0x19, 0xFF, 0x22, 0x00, 0x87, 0x01, 0xE8, 0xFE,
+ 0x19, 0x00, 0xE6, 0xFF, 0x8A, 0xFF, 0x19, 0x00,
+ 0xB2, 0xFF, 0x8A, 0xFF, 0x19, 0x00, 0x7E, 0xFF,
+ 0x8A, 0xFF, 0x19, 0x00, 0x4A, 0xFF, 0x8A, 0xFF,
+ 0x1C, 0x00, 0x15, 0xFF, 0x63, 0xFF, 0x1E, 0x00,
+ 0xE1, 0xFE, 0x41, 0xFF, 0x20, 0x00, 0xAD, 0xFE,
+ 0x19, 0xFF, 0x22, 0x00, 0x79, 0xFE, 0xE8, 0xFE,
+ 0x19, 0x00, 0x1A, 0x00, 0x5B, 0xFF, 0x19, 0x00,
+ 0x4E, 0x00, 0x5B, 0xFF, 0x19, 0x00, 0x82, 0x00,
+ 0x5B, 0xFF, 0x19, 0x00, 0xB6, 0x00, 0x5B, 0xFF,
+ 0x1C, 0x00, 0xEB, 0x00, 0x24, 0xFF, 0x1E, 0x00,
+ 0x1F, 0x01, 0xF5, 0xFE, 0x20, 0x00, 0x53, 0x01,
+ 0xBD, 0xFE, 0x22, 0x00, 0x87, 0x01, 0x78, 0xFE,
+ 0x19, 0x00, 0xE6, 0xFF, 0x5B, 0xFF, 0x19, 0x00,
+ 0xB2, 0xFF, 0x5B, 0xFF, 0x19, 0x00, 0x7E, 0xFF,
+ 0x5B, 0xFF, 0x19, 0x00, 0x4A, 0xFF, 0x5B, 0xFF,
+ 0x1C, 0x00, 0x15, 0xFF, 0x24, 0xFF, 0x1E, 0x00,
+ 0xE1, 0xFE, 0xF5, 0xFE, 0x20, 0x00, 0xAD, 0xFE,
+ 0xBD, 0xFE, 0x22, 0x00, 0x79, 0xFE, 0x78, 0xFE,
+ 0x1C, 0x00, 0x1A, 0x00, 0x2B, 0xFF, 0x1C, 0x00,
+ 0x4E, 0x00, 0x2B, 0xFF, 0x1C, 0x00, 0x82, 0x00,
+ 0x2B, 0xFF, 0x1C, 0x00, 0xB6, 0x00, 0x2B, 0xFF,
+ 0x1F, 0x00, 0xEB, 0x00, 0xE4, 0xFE, 0x21, 0x00,
+ 0x1F, 0x01, 0xA7, 0xFE, 0x23, 0x00, 0x53, 0x01,
+ 0x5F, 0xFE, 0x25, 0x00, 0x87, 0x01, 0x07, 0xFE,
+ 0x1C, 0x00, 0xE6, 0xFF, 0x2B, 0xFF, 0x1C, 0x00,
+ 0xB2, 0xFF, 0x2B, 0xFF, 0x1C, 0x00, 0x7E, 0xFF,
+ 0x2B, 0xFF, 0x1C, 0x00, 0x4A, 0xFF, 0x2B, 0xFF,
+ 0x1F, 0x00, 0x15, 0xFF, 0xE4, 0xFE, 0x21, 0x00,
+ 0xE1, 0xFE, 0xA7, 0xFE, 0x23, 0x00, 0xAD, 0xFE,
+ 0x5F, 0xFE, 0x25, 0x00, 0x79, 0xFE, 0x07, 0xFE,
+ 0x1E, 0x00, 0x1A, 0x00, 0xFC, 0xFE, 0x1E, 0x00,
+ 0x4E, 0x00, 0xFC, 0xFE, 0x1E, 0x00, 0x82, 0x00,
+ 0xFC, 0xFE, 0x1E, 0x00, 0xB6, 0x00, 0xFC, 0xFE,
+ 0x21, 0x00, 0xEB, 0x00, 0xA5, 0xFE, 0x23, 0x00,
+ 0x1F, 0x01, 0x5B, 0xFE, 0x25, 0x00, 0x53, 0x01,
+ 0x03, 0xFE, 0x27, 0x00, 0x87, 0x01, 0x97, 0xFD,
+ 0x1E, 0x00, 0xE6, 0xFF, 0xFC, 0xFE, 0x1E, 0x00,
+ 0xB2, 0xFF, 0xFC, 0xFE, 0x1E, 0x00, 0x7E, 0xFF,
+ 0xFC, 0xFE, 0x1E, 0x00, 0x4A, 0xFF, 0xFC, 0xFE,
+ 0x21, 0x00, 0x15, 0xFF, 0xA5, 0xFE, 0x23, 0x00,
+ 0xE1, 0xFE, 0x5B, 0xFE, 0x25, 0x00, 0xAD, 0xFE,
+ 0x03, 0xFE, 0x27, 0x00, 0x79, 0xFE, 0x97, 0xFD,
+ 0x20, 0x00, 0x1A, 0x00, 0xCC, 0xFE, 0x20, 0x00,
+ 0x4E, 0x00, 0xCC, 0xFE, 0x20, 0x00, 0x82, 0x00,
+ 0xCC, 0xFE, 0x20, 0x00, 0xB6, 0x00, 0xCC, 0xFE,
+ 0x23, 0x00, 0xEB, 0x00, 0x66, 0xFE, 0x25, 0x00,
+ 0x1F, 0x01, 0x0E, 0xFE, 0x27, 0x00, 0x53, 0x01,
+ 0xA6, 0xFD, 0x29, 0x00, 0x87, 0x01, 0x27, 0xFD,
+ 0x20, 0x00, 0xE6, 0xFF, 0xCC, 0xFE, 0x20, 0x00,
+ 0xB2, 0xFF, 0xCC, 0xFE, 0x20, 0x00, 0x7E, 0xFF,
+ 0xCC, 0xFE, 0x20, 0x00, 0x4A, 0xFF, 0xCC, 0xFE,
+ 0x23, 0x00, 0x15, 0xFF, 0x66, 0xFE, 0x25, 0x00,
+ 0xE1, 0xFE, 0x0E, 0xFE, 0x27, 0x00, 0xAD, 0xFE,
+ 0xA6, 0xFD, 0x29, 0x00, 0x79, 0xFE, 0x27, 0xFD,
+ 0x22, 0x00, 0x1A, 0x00, 0x9D, 0xFE, 0x22, 0x00,
+ 0x4E, 0x00, 0x9D, 0xFE, 0x22, 0x00, 0x82, 0x00,
+ 0x9D, 0xFE, 0x22, 0x00, 0xB6, 0x00, 0x9D, 0xFE,
+ 0x25, 0x00, 0xEB, 0x00, 0x27, 0xFE, 0x27, 0x00,
+ 0x1F, 0x01, 0xC2, 0xFD, 0x29, 0x00, 0x53, 0x01,
+ 0x4A, 0xFD, 0x2B, 0x00, 0x87, 0x01, 0xB7, 0xFC,
+ 0x22, 0x00, 0xE6, 0xFF, 0x9D, 0xFE, 0x22, 0x00,
+ 0xB2, 0xFF, 0x9D, 0xFE, 0x22, 0x00, 0x7E, 0xFF,
+ 0x9D, 0xFE, 0x22, 0x00, 0x4A, 0xFF, 0x9D, 0xFE,
+ 0x25, 0x00, 0x15, 0xFF, 0x27, 0xFE, 0x27, 0x00,
+ 0xE1, 0xFE, 0xC2, 0xFD, 0x29, 0x00, 0xAD, 0xFE,
+ 0x4A, 0xFD, 0x2B, 0x00, 0x79, 0xFE, 0xB7, 0xFC,
+ 0x1A, 0x00, 0x1C, 0x00, 0x1A, 0x00, 0x1A, 0x00,
+ 0x55, 0x00, 0x1A, 0x00, 0x1A, 0x00, 0x8F, 0x00,
+ 0x1A, 0x00, 0x1A, 0x00, 0xC8, 0x00, 0x1A, 0x00,
+ 0x1D, 0x00, 0x02, 0x01, 0x22, 0x00, 0x1F, 0x00,
+ 0x3B, 0x01, 0x2A, 0x00, 0x21, 0x00, 0x75, 0x01,
+ 0x33, 0x00, 0x23, 0x00, 0xAE, 0x01, 0x3D, 0x00,
+ 0x1A, 0x00, 0xE4, 0xFF, 0x1A, 0x00, 0x1A, 0x00,
+ 0xAB, 0xFF, 0x1A, 0x00, 0x1A, 0x00, 0x71, 0xFF,
+ 0x1A, 0x00, 0x1A, 0x00, 0x38, 0xFF, 0x1A, 0x00,
+ 0x1D, 0x00, 0xFE, 0xFE, 0x22, 0x00, 0x1F, 0x00,
+ 0xC5, 0xFE, 0x2A, 0x00, 0x21, 0x00, 0x8B, 0xFE,
+ 0x33, 0x00, 0x23, 0x00, 0x52, 0xFE, 0x3D, 0x00,
+ 0x1A, 0x00, 0x1C, 0x00, 0x4E, 0x00, 0x1A, 0x00,
+ 0x55, 0x00, 0x4E, 0x00, 0x1A, 0x00, 0x8F, 0x00,
+ 0x4E, 0x00, 0x1A, 0x00, 0xC8, 0x00, 0x4E, 0x00,
+ 0x1D, 0x00, 0x02, 0x01, 0x67, 0x00, 0x1F, 0x00,
+ 0x3B, 0x01, 0x7E, 0x00, 0x21, 0x00, 0x75, 0x01,
+ 0x99, 0x00, 0x23, 0x00, 0xAE, 0x01, 0xB8, 0x00,
+ 0x1A, 0x00, 0xE4, 0xFF, 0x4E, 0x00, 0x1A, 0x00,
+ 0xAB, 0xFF, 0x4E, 0x00, 0x1A, 0x00, 0x71, 0xFF,
+ 0x4E, 0x00, 0x1A, 0x00, 0x38, 0xFF, 0x4E, 0x00,
+ 0x1D, 0x00, 0xFE, 0xFE, 0x67, 0x00, 0x1F, 0x00,
+ 0xC5, 0xFE, 0x7E, 0x00, 0x21, 0x00, 0x8B, 0xFE,
+ 0x99, 0x00, 0x23, 0x00, 0x52, 0xFE, 0xB8, 0x00,
+ 0x1A, 0x00, 0x1C, 0x00, 0x82, 0x00, 0x1A, 0x00,
+ 0x55, 0x00, 0x82, 0x00, 0x1A, 0x00, 0x8F, 0x00,
+ 0x82, 0x00, 0x1A, 0x00, 0xC8, 0x00, 0x82, 0x00,
+ 0x1D, 0x00, 0x02, 0x01, 0xAD, 0x00, 0x1F, 0x00,
+ 0x3B, 0x01, 0xD2, 0x00, 0x21, 0x00, 0x75, 0x01,
+ 0xFF, 0x00, 0x23, 0x00, 0xAE, 0x01, 0x34, 0x01,
+ 0x1A, 0x00, 0xE4, 0xFF, 0x82, 0x00, 0x1A, 0x00,
+ 0xAB, 0xFF, 0x82, 0x00, 0x1A, 0x00, 0x71, 0xFF,
+ 0x82, 0x00, 0x1A, 0x00, 0x38, 0xFF, 0x82, 0x00,
+ 0x1D, 0x00, 0xFE, 0xFE, 0xAD, 0x00, 0x1F, 0x00,
+ 0xC5, 0xFE, 0xD2, 0x00, 0x21, 0x00, 0x8B, 0xFE,
+ 0xFF, 0x00, 0x23, 0x00, 0x52, 0xFE, 0x34, 0x01,
+ 0x1A, 0x00, 0x1C, 0x00, 0xB6, 0x00, 0x1A, 0x00,
+ 0x55, 0x00, 0xB6, 0x00, 0x1A, 0x00, 0x8F, 0x00,
+ 0xB6, 0x00, 0x1A, 0x00, 0xC8, 0x00, 0xB6, 0x00,
+ 0x1D, 0x00, 0x02, 0x01, 0xF2, 0x00, 0x1F, 0x00,
+ 0x3B, 0x01, 0x26, 0x01, 0x21, 0x00, 0x75, 0x01,
+ 0x65, 0x01, 0x23, 0x00, 0xAE, 0x01, 0xAF, 0x01,
+ 0x1A, 0x00, 0xE4, 0xFF, 0xB6, 0x00, 0x1A, 0x00,
+ 0xAB, 0xFF, 0xB6, 0x00, 0x1A, 0x00, 0x71, 0xFF,
+ 0xB6, 0x00, 0x1A, 0x00, 0x38, 0xFF, 0xB6, 0x00,
+ 0x1D, 0x00, 0xFE, 0xFE, 0xF2, 0x00, 0x1F, 0x00,
+ 0xC5, 0xFE, 0x26, 0x01, 0x21, 0x00, 0x8B, 0xFE,
+ 0x65, 0x01, 0x23, 0x00, 0x52, 0xFE, 0xAF, 0x01,
+ 0x1D, 0x00, 0x1C, 0x00, 0xEB, 0x00, 0x1D, 0x00,
+ 0x55, 0x00, 0xEB, 0x00, 0x1D, 0x00, 0x8F, 0x00,
+ 0xEB, 0x00, 0x1D, 0x00, 0xC8, 0x00, 0xEB, 0x00,
+ 0x20, 0x00, 0x02, 0x01, 0x39, 0x01, 0x22, 0x00,
+ 0x3B, 0x01, 0x7B, 0x01, 0x24, 0x00, 0x75, 0x01,
+ 0xCB, 0x01, 0x26, 0x00, 0xAE, 0x01, 0x2B, 0x02,
+ 0x1D, 0x00, 0xE4, 0xFF, 0xEB, 0x00, 0x1D, 0x00,
+ 0xAB, 0xFF, 0xEB, 0x00, 0x1D, 0x00, 0x71, 0xFF,
+ 0xEB, 0x00, 0x1D, 0x00, 0x38, 0xFF, 0xEB, 0x00,
+ 0x20, 0x00, 0xFE, 0xFE, 0x39, 0x01, 0x22, 0x00,
+ 0xC5, 0xFE, 0x7B, 0x01, 0x24, 0x00, 0x8B, 0xFE,
+ 0xCB, 0x01, 0x26, 0x00, 0x52, 0xFE, 0x2B, 0x02,
+ 0x1F, 0x00, 0x1C, 0x00, 0x1F, 0x01, 0x1F, 0x00,
+ 0x55, 0x00, 0x1F, 0x01, 0x1F, 0x00, 0x8F, 0x00,
+ 0x1F, 0x01, 0x1F, 0x00, 0xC8, 0x00, 0x1F, 0x01,
+ 0x22, 0x00, 0x02, 0x01, 0x7E, 0x01, 0x24, 0x00,
+ 0x3B, 0x01, 0xCF, 0x01, 0x26, 0x00, 0x75, 0x01,
+ 0x31, 0x02, 0x28, 0x00, 0xAE, 0x01, 0xA6, 0x02,
+ 0x1F, 0x00, 0xE4, 0xFF, 0x1F, 0x01, 0x1F, 0x00,
+ 0xAB, 0xFF, 0x1F, 0x01, 0x1F, 0x00, 0x71, 0xFF,
+ 0x1F, 0x01, 0x1F, 0x00, 0x38, 0xFF, 0x1F, 0x01,
+ 0x22, 0x00, 0xFE, 0xFE, 0x7E, 0x01, 0x24, 0x00,
+ 0xC5, 0xFE, 0xCF, 0x01, 0x26, 0x00, 0x8B, 0xFE,
+ 0x31, 0x02, 0x28, 0x00, 0x52, 0xFE, 0xA6, 0x02,
+ 0x21, 0x00, 0x1C, 0x00, 0x53, 0x01, 0x21, 0x00,
+ 0x55, 0x00, 0x53, 0x01, 0x21, 0x00, 0x8F, 0x00,
+ 0x53, 0x01, 0x21, 0x00, 0xC8, 0x00, 0x53, 0x01,
+ 0x24, 0x00, 0x02, 0x01, 0xC4, 0x01, 0x26, 0x00,
+ 0x3B, 0x01, 0x23, 0x02, 0x28, 0x00, 0x75, 0x01,
+ 0x97, 0x02, 0x2A, 0x00, 0xAE, 0x01, 0x22, 0x03,
+ 0x21, 0x00, 0xE4, 0xFF, 0x53, 0x01, 0x21, 0x00,
+ 0xAB, 0xFF, 0x53, 0x01, 0x21, 0x00, 0x71, 0xFF,
+ 0x53, 0x01, 0x21, 0x00, 0x38, 0xFF, 0x53, 0x01,
+ 0x24, 0x00, 0xFE, 0xFE, 0xC4, 0x01, 0x26, 0x00,
+ 0xC5, 0xFE, 0x23, 0x02, 0x28, 0x00, 0x8B, 0xFE,
+ 0x97, 0x02, 0x2A, 0x00, 0x52, 0xFE, 0x22, 0x03,
+ 0x23, 0x00, 0x1C, 0x00, 0x87, 0x01, 0x23, 0x00,
+ 0x55, 0x00, 0x87, 0x01, 0x23, 0x00, 0x8F, 0x00,
+ 0x87, 0x01, 0x23, 0x00, 0xC8, 0x00, 0x87, 0x01,
+ 0x26, 0x00, 0x02, 0x01, 0x09, 0x02, 0x28, 0x00,
+ 0x3B, 0x01, 0x77, 0x02, 0x2A, 0x00, 0x75, 0x01,
+ 0xFD, 0x02, 0x2C, 0x00, 0xAE, 0x01, 0x9D, 0x03,
+ 0x23, 0x00, 0xE4, 0xFF, 0x87, 0x01, 0x23, 0x00,
+ 0xAB, 0xFF, 0x87, 0x01, 0x23, 0x00, 0x71, 0xFF,
+ 0x87, 0x01, 0x23, 0x00, 0x38, 0xFF, 0x87, 0x01,
+ 0x26, 0x00, 0xFE, 0xFE, 0x09, 0x02, 0x28, 0x00,
+ 0xC5, 0xFE, 0x77, 0x02, 0x2A, 0x00, 0x8B, 0xFE,
+ 0xFD, 0x02, 0x2C, 0x00, 0x52, 0xFE, 0x9D, 0x03,
+ 0x1A, 0x00, 0x1C, 0x00, 0xE6, 0xFF, 0x1A, 0x00,
+ 0x55, 0x00, 0xE6, 0xFF, 0x1A, 0x00, 0x8F, 0x00,
+ 0xE6, 0xFF, 0x1A, 0x00, 0xC8, 0x00, 0xE6, 0xFF,
+ 0x1D, 0x00, 0x02, 0x01, 0xDE, 0xFF, 0x1F, 0x00,
+ 0x3B, 0x01, 0xD6, 0xFF, 0x21, 0x00, 0x75, 0x01,
+ 0xCD, 0xFF, 0x23, 0x00, 0xAE, 0x01, 0xC3, 0xFF,
+ 0x1A, 0x00, 0xE4, 0xFF, 0xE6, 0xFF, 0x1A, 0x00,
+ 0xAB, 0xFF, 0xE6, 0xFF, 0x1A, 0x00, 0x71, 0xFF,
+ 0xE6, 0xFF, 0x1A, 0x00, 0x38, 0xFF, 0xE6, 0xFF,
+ 0x1D, 0x00, 0xFE, 0xFE, 0xDE, 0xFF, 0x1F, 0x00,
+ 0xC5, 0xFE, 0xD6, 0xFF, 0x21, 0x00, 0x8B, 0xFE,
+ 0xCD, 0xFF, 0x23, 0x00, 0x52, 0xFE, 0xC3, 0xFF,
+ 0x1A, 0x00, 0x1C, 0x00, 0xB2, 0xFF, 0x1A, 0x00,
+ 0x55, 0x00, 0xB2, 0xFF, 0x1A, 0x00, 0x8F, 0x00,
+ 0xB2, 0xFF, 0x1A, 0x00, 0xC8, 0x00, 0xB2, 0xFF,
+ 0x1D, 0x00, 0x02, 0x01, 0x99, 0xFF, 0x1F, 0x00,
+ 0x3B, 0x01, 0x82, 0xFF, 0x21, 0x00, 0x75, 0x01,
+ 0x67, 0xFF, 0x23, 0x00, 0xAE, 0x01, 0x48, 0xFF,
+ 0x1A, 0x00, 0xE4, 0xFF, 0xB2, 0xFF, 0x1A, 0x00,
+ 0xAB, 0xFF, 0xB2, 0xFF, 0x1A, 0x00, 0x71, 0xFF,
+ 0xB2, 0xFF, 0x1A, 0x00, 0x38, 0xFF, 0xB2, 0xFF,
+ 0x1D, 0x00, 0xFE, 0xFE, 0x99, 0xFF, 0x1F, 0x00,
+ 0xC5, 0xFE, 0x82, 0xFF, 0x21, 0x00, 0x8B, 0xFE,
+ 0x67, 0xFF, 0x23, 0x00, 0x52, 0xFE, 0x48, 0xFF,
+ 0x1A, 0x00, 0x1C, 0x00, 0x7E, 0xFF, 0x1A, 0x00,
+ 0x55, 0x00, 0x7E, 0xFF, 0x1A, 0x00, 0x8F, 0x00,
+ 0x7E, 0xFF, 0x1A, 0x00, 0xC8, 0x00, 0x7E, 0xFF,
+ 0x1D, 0x00, 0x02, 0x01, 0x53, 0xFF, 0x1F, 0x00,
+ 0x3B, 0x01, 0x2E, 0xFF, 0x21, 0x00, 0x75, 0x01,
+ 0x01, 0xFF, 0x23, 0x00, 0xAE, 0x01, 0xCC, 0xFE,
+ 0x1A, 0x00, 0xE4, 0xFF, 0x7E, 0xFF, 0x1A, 0x00,
+ 0xAB, 0xFF, 0x7E, 0xFF, 0x1A, 0x00, 0x71, 0xFF,
+ 0x7E, 0xFF, 0x1A, 0x00, 0x38, 0xFF, 0x7E, 0xFF,
+ 0x1D, 0x00, 0xFE, 0xFE, 0x53, 0xFF, 0x1F, 0x00,
+ 0xC5, 0xFE, 0x2E, 0xFF, 0x21, 0x00, 0x8B, 0xFE,
+ 0x01, 0xFF, 0x23, 0x00, 0x52, 0xFE, 0xCC, 0xFE,
+ 0x1A, 0x00, 0x1C, 0x00, 0x4A, 0xFF, 0x1A, 0x00,
+ 0x55, 0x00, 0x4A, 0xFF, 0x1A, 0x00, 0x8F, 0x00,
+ 0x4A, 0xFF, 0x1A, 0x00, 0xC8, 0x00, 0x4A, 0xFF,
+ 0x1D, 0x00, 0x02, 0x01, 0x0E, 0xFF, 0x1F, 0x00,
+ 0x3B, 0x01, 0xDA, 0xFE, 0x21, 0x00, 0x75, 0x01,
+ 0x9B, 0xFE, 0x23, 0x00, 0xAE, 0x01, 0x51, 0xFE,
+ 0x1A, 0x00, 0xE4, 0xFF, 0x4A, 0xFF, 0x1A, 0x00,
+ 0xAB, 0xFF, 0x4A, 0xFF, 0x1A, 0x00, 0x71, 0xFF,
+ 0x4A, 0xFF, 0x1A, 0x00, 0x38, 0xFF, 0x4A, 0xFF,
+ 0x1D, 0x00, 0xFE, 0xFE, 0x0E, 0xFF, 0x1F, 0x00,
+ 0xC5, 0xFE, 0xDA, 0xFE, 0x21, 0x00, 0x8B, 0xFE,
+ 0x9B, 0xFE, 0x23, 0x00, 0x52, 0xFE, 0x51, 0xFE,
+ 0x1D, 0x00, 0x1C, 0x00, 0x15, 0xFF, 0x1D, 0x00,
+ 0x55, 0x00, 0x15, 0xFF, 0x1D, 0x00, 0x8F, 0x00,
+ 0x15, 0xFF, 0x1D, 0x00, 0xC8, 0x00, 0x15, 0xFF,
+ 0x20, 0x00, 0x02, 0x01, 0xC7, 0xFE, 0x22, 0x00,
+ 0x3B, 0x01, 0x85, 0xFE, 0x24, 0x00, 0x75, 0x01,
+ 0x35, 0xFE, 0x26, 0x00, 0xAE, 0x01, 0xD5, 0xFD,
+ 0x1D, 0x00, 0xE4, 0xFF, 0x15, 0xFF, 0x1D, 0x00,
+ 0xAB, 0xFF, 0x15, 0xFF, 0x1D, 0x00, 0x71, 0xFF,
+ 0x15, 0xFF, 0x1D, 0x00, 0x38, 0xFF, 0x15, 0xFF,
+ 0x20, 0x00, 0xFE, 0xFE, 0xC7, 0xFE, 0x22, 0x00,
+ 0xC5, 0xFE, 0x85, 0xFE, 0x24, 0x00, 0x8B, 0xFE,
+ 0x35, 0xFE, 0x26, 0x00, 0x52, 0xFE, 0xD5, 0xFD,
+ 0x1F, 0x00, 0x1C, 0x00, 0xE1, 0xFE, 0x1F, 0x00,
+ 0x55, 0x00, 0xE1, 0xFE, 0x1F, 0x00, 0x8F, 0x00,
+ 0xE1, 0xFE, 0x1F, 0x00, 0xC8, 0x00, 0xE1, 0xFE,
+ 0x22, 0x00, 0x02, 0x01, 0x82, 0xFE, 0x24, 0x00,
+ 0x3B, 0x01, 0x31, 0xFE, 0x26, 0x00, 0x75, 0x01,
+ 0xCF, 0xFD, 0x28, 0x00, 0xAE, 0x01, 0x5A, 0xFD,
+ 0x1F, 0x00, 0xE4, 0xFF, 0xE1, 0xFE, 0x1F, 0x00,
+ 0xAB, 0xFF, 0xE1, 0xFE, 0x1F, 0x00, 0x71, 0xFF,
+ 0xE1, 0xFE, 0x1F, 0x00, 0x38, 0xFF, 0xE1, 0xFE,
+ 0x22, 0x00, 0xFE, 0xFE, 0x82, 0xFE, 0x24, 0x00,
+ 0xC5, 0xFE, 0x31, 0xFE, 0x26, 0x00, 0x8B, 0xFE,
+ 0xCF, 0xFD, 0x28, 0x00, 0x52, 0xFE, 0x5A, 0xFD,
+ 0x21, 0x00, 0x1C, 0x00, 0xAD, 0xFE, 0x21, 0x00,
+ 0x55, 0x00, 0xAD, 0xFE, 0x21, 0x00, 0x8F, 0x00,
+ 0xAD, 0xFE, 0x21, 0x00, 0xC8, 0x00, 0xAD, 0xFE,
+ 0x24, 0x00, 0x02, 0x01, 0x3C, 0xFE, 0x26, 0x00,
+ 0x3B, 0x01, 0xDD, 0xFD, 0x28, 0x00, 0x75, 0x01,
+ 0x69, 0xFD, 0x2A, 0x00, 0xAE, 0x01, 0xDE, 0xFC,
+ 0x21, 0x00, 0xE4, 0xFF, 0xAD, 0xFE, 0x21, 0x00,
+ 0xAB, 0xFF, 0xAD, 0xFE, 0x21, 0x00, 0x71, 0xFF,
+ 0xAD, 0xFE, 0x21, 0x00, 0x38, 0xFF, 0xAD, 0xFE,
+ 0x24, 0x00, 0xFE, 0xFE, 0x3C, 0xFE, 0x26, 0x00,
+ 0xC5, 0xFE, 0xDD, 0xFD, 0x28, 0x00, 0x8B, 0xFE,
+ 0x69, 0xFD, 0x2A, 0x00, 0x52, 0xFE, 0xDE, 0xFC,
+ 0x23, 0x00, 0x1C, 0x00, 0x79, 0xFE, 0x23, 0x00,
+ 0x55, 0x00, 0x79, 0xFE, 0x23, 0x00, 0x8F, 0x00,
+ 0x79, 0xFE, 0x23, 0x00, 0xC8, 0x00, 0x79, 0xFE,
+ 0x26, 0x00, 0x02, 0x01, 0xF7, 0xFD, 0x28, 0x00,
+ 0x3B, 0x01, 0x89, 0xFD, 0x2A, 0x00, 0x75, 0x01,
+ 0x03, 0xFD, 0x2C, 0x00, 0xAE, 0x01, 0x63, 0xFC,
+ 0x23, 0x00, 0xE4, 0xFF, 0x79, 0xFE, 0x23, 0x00,
+ 0xAB, 0xFF, 0x79, 0xFE, 0x23, 0x00, 0x71, 0xFF,
+ 0x79, 0xFE, 0x23, 0x00, 0x38, 0xFF, 0x79, 0xFE,
+ 0x26, 0x00, 0xFE, 0xFE, 0xF7, 0xFD, 0x28, 0x00,
+ 0xC5, 0xFE, 0x89, 0xFD, 0x2A, 0x00, 0x8B, 0xFE,
+ 0x03, 0xFD, 0x2C, 0x00, 0x52, 0xFE, 0x63, 0xFC,
+ 0x1B, 0x00, 0x1F, 0x00, 0x1C, 0x00, 0x1B, 0x00,
+ 0x5E, 0x00, 0x1C, 0x00, 0x1B, 0x00, 0x9D, 0x00,
+ 0x1C, 0x00, 0x1B, 0x00, 0xDC, 0x00, 0x1C, 0x00,
+ 0x1E, 0x00, 0x1C, 0x01, 0x26, 0x00, 0x20, 0x00,
+ 0x5B, 0x01, 0x2E, 0x00, 0x22, 0x00, 0x9A, 0x01,
+ 0x38, 0x00, 0x24, 0x00, 0xD9, 0x01, 0x44, 0x00,
+ 0x1B, 0x00, 0xE1, 0xFF, 0x1C, 0x00, 0x1B, 0x00,
+ 0xA2, 0xFF, 0x1C, 0x00, 0x1B, 0x00, 0x63, 0xFF,
+ 0x1C, 0x00, 0x1B, 0x00, 0x24, 0xFF, 0x1C, 0x00,
+ 0x1E, 0x00, 0xE4, 0xFE, 0x26, 0x00, 0x20, 0x00,
+ 0xA5, 0xFE, 0x2E, 0x00, 0x22, 0x00, 0x66, 0xFE,
+ 0x38, 0x00, 0x24, 0x00, 0x27, 0xFE, 0x44, 0x00,
+ 0x1B, 0x00, 0x1F, 0x00, 0x55, 0x00, 0x1B, 0x00,
+ 0x5E, 0x00, 0x55, 0x00, 0x1B, 0x00, 0x9D, 0x00,
+ 0x55, 0x00, 0x1B, 0x00, 0xDC, 0x00, 0x55, 0x00,
+ 0x1E, 0x00, 0x1C, 0x01, 0x72, 0x00, 0x20, 0x00,
+ 0x5B, 0x01, 0x8A, 0x00, 0x22, 0x00, 0x9A, 0x01,
+ 0xA8, 0x00, 0x24, 0x00, 0xD9, 0x01, 0xCC, 0x00,
+ 0x1B, 0x00, 0xE1, 0xFF, 0x55, 0x00, 0x1B, 0x00,
+ 0xA2, 0xFF, 0x55, 0x00, 0x1B, 0x00, 0x63, 0xFF,
+ 0x55, 0x00, 0x1B, 0x00, 0x24, 0xFF, 0x55, 0x00,
+ 0x1E, 0x00, 0xE4, 0xFE, 0x72, 0x00, 0x20, 0x00,
+ 0xA5, 0xFE, 0x8A, 0x00, 0x22, 0x00, 0x66, 0xFE,
+ 0xA8, 0x00, 0x24, 0x00, 0x27, 0xFE, 0xCC, 0x00,
+ 0x1B, 0x00, 0x1F, 0x00, 0x8F, 0x00, 0x1B, 0x00,
+ 0x5E, 0x00, 0x8F, 0x00, 0x1B, 0x00, 0x9D, 0x00,
+ 0x8F, 0x00, 0x1B, 0x00, 0xDC, 0x00, 0x8F, 0x00,
+ 0x1E, 0x00, 0x1C, 0x01, 0xBF, 0x00, 0x20, 0x00,
+ 0x5B, 0x01, 0xE7, 0x00, 0x22, 0x00, 0x9A, 0x01,
+ 0x18, 0x01, 0x24, 0x00, 0xD9, 0x01, 0x54, 0x01,
+ 0x1B, 0x00, 0xE1, 0xFF, 0x8F, 0x00, 0x1B, 0x00,
+ 0xA2, 0xFF, 0x8F, 0x00, 0x1B, 0x00, 0x63, 0xFF,
+ 0x8F, 0x00, 0x1B, 0x00, 0x24, 0xFF, 0x8F, 0x00,
+ 0x1E, 0x00, 0xE4, 0xFE, 0xBF, 0x00, 0x20, 0x00,
+ 0xA5, 0xFE, 0xE7, 0x00, 0x22, 0x00, 0x66, 0xFE,
+ 0x18, 0x01, 0x24, 0x00, 0x27, 0xFE, 0x54, 0x01,
+ 0x1B, 0x00, 0x1F, 0x00, 0xC8, 0x00, 0x1B, 0x00,
+ 0x5E, 0x00, 0xC8, 0x00, 0x1B, 0x00, 0x9D, 0x00,
+ 0xC8, 0x00, 0x1B, 0x00, 0xDC, 0x00, 0xC8, 0x00,
+ 0x1E, 0x00, 0x1C, 0x01, 0x0B, 0x01, 0x20, 0x00,
+ 0x5B, 0x01, 0x43, 0x01, 0x22, 0x00, 0x9A, 0x01,
+ 0x88, 0x01, 0x24, 0x00, 0xD9, 0x01, 0xDC, 0x01,
+ 0x1B, 0x00, 0xE1, 0xFF, 0xC8, 0x00, 0x1B, 0x00,
+ 0xA2, 0xFF, 0xC8, 0x00, 0x1B, 0x00, 0x63, 0xFF,
+ 0xC8, 0x00, 0x1B, 0x00, 0x24, 0xFF, 0xC8, 0x00,
+ 0x1E, 0x00, 0xE4, 0xFE, 0x0B, 0x01, 0x20, 0x00,
+ 0xA5, 0xFE, 0x43, 0x01, 0x22, 0x00, 0x66, 0xFE,
+ 0x88, 0x01, 0x24, 0x00, 0x27, 0xFE, 0xDC, 0x01,
+ 0x1E, 0x00, 0x1F, 0x00, 0x02, 0x01, 0x1E, 0x00,
+ 0x5E, 0x00, 0x02, 0x01, 0x1E, 0x00, 0x9D, 0x00,
+ 0x02, 0x01, 0x1E, 0x00, 0xDC, 0x00, 0x02, 0x01,
+ 0x21, 0x00, 0x1C, 0x01, 0x59, 0x01, 0x23, 0x00,
+ 0x5B, 0x01, 0xA1, 0x01, 0x25, 0x00, 0x9A, 0x01,
+ 0xF9, 0x01, 0x27, 0x00, 0xD9, 0x01, 0x64, 0x02,
+ 0x1E, 0x00, 0xE1, 0xFF, 0x02, 0x01, 0x1E, 0x00,
+ 0xA2, 0xFF, 0x02, 0x01, 0x1E, 0x00, 0x63, 0xFF,
+ 0x02, 0x01, 0x1E, 0x00, 0x24, 0xFF, 0x02, 0x01,
+ 0x21, 0x00, 0xE4, 0xFE, 0x59, 0x01, 0x23, 0x00,
+ 0xA5, 0xFE, 0xA1, 0x01, 0x25, 0x00, 0x66, 0xFE,
+ 0xF9, 0x01, 0x27, 0x00, 0x27, 0xFE, 0x64, 0x02,
+ 0x20, 0x00, 0x1F, 0x00, 0x3B, 0x01, 0x20, 0x00,
+ 0x5E, 0x00, 0x3B, 0x01, 0x20, 0x00, 0x9D, 0x00,
+ 0x3B, 0x01, 0x20, 0x00, 0xDC, 0x00, 0x3B, 0x01,
+ 0x23, 0x00, 0x1C, 0x01, 0xA5, 0x01, 0x25, 0x00,
+ 0x5B, 0x01, 0xFD, 0x01, 0x27, 0x00, 0x9A, 0x01,
+ 0x69, 0x02, 0x29, 0x00, 0xD9, 0x01, 0xEC, 0x02,
+ 0x20, 0x00, 0xE1, 0xFF, 0x3B, 0x01, 0x20, 0x00,
+ 0xA2, 0xFF, 0x3B, 0x01, 0x20, 0x00, 0x63, 0xFF,
+ 0x3B, 0x01, 0x20, 0x00, 0x24, 0xFF, 0x3B, 0x01,
+ 0x23, 0x00, 0xE4, 0xFE, 0xA5, 0x01, 0x25, 0x00,
+ 0xA5, 0xFE, 0xFD, 0x01, 0x27, 0x00, 0x66, 0xFE,
+ 0x69, 0x02, 0x29, 0x00, 0x27, 0xFE, 0xEC, 0x02,
+ 0x22, 0x00, 0x1F, 0x00, 0x75, 0x01, 0x22, 0x00,
+ 0x5E, 0x00, 0x75, 0x01, 0x22, 0x00, 0x9D, 0x00,
+ 0x75, 0x01, 0x22, 0x00, 0xDC, 0x00, 0x75, 0x01,
+ 0x25, 0x00, 0x1C, 0x01, 0xF2, 0x01, 0x27, 0x00,
+ 0x5B, 0x01, 0x5A, 0x02, 0x29, 0x00, 0x9A, 0x01,
+ 0xD9, 0x02, 0x2B, 0x00, 0xD9, 0x01, 0x74, 0x03,
+ 0x22, 0x00, 0xE1, 0xFF, 0x75, 0x01, 0x22, 0x00,
+ 0xA2, 0xFF, 0x75, 0x01, 0x22, 0x00, 0x63, 0xFF,
+ 0x75, 0x01, 0x22, 0x00, 0x24, 0xFF, 0x75, 0x01,
+ 0x25, 0x00, 0xE4, 0xFE, 0xF2, 0x01, 0x27, 0x00,
+ 0xA5, 0xFE, 0x5A, 0x02, 0x29, 0x00, 0x66, 0xFE,
+ 0xD9, 0x02, 0x2B, 0x00, 0x27, 0xFE, 0x74, 0x03,
+ 0x24, 0x00, 0x1F, 0x00, 0xAE, 0x01, 0x24, 0x00,
+ 0x5E, 0x00, 0xAE, 0x01, 0x24, 0x00, 0x9D, 0x00,
+ 0xAE, 0x01, 0x24, 0x00, 0xDC, 0x00, 0xAE, 0x01,
+ 0x27, 0x00, 0x1C, 0x01, 0x3E, 0x02, 0x29, 0x00,
+ 0x5B, 0x01, 0xB6, 0x02, 0x2B, 0x00, 0x9A, 0x01,
+ 0x49, 0x03, 0x2D, 0x00, 0xD9, 0x01, 0xFC, 0x03,
+ 0x24, 0x00, 0xE1, 0xFF, 0xAE, 0x01, 0x24, 0x00,
+ 0xA2, 0xFF, 0xAE, 0x01, 0x24, 0x00, 0x63, 0xFF,
+ 0xAE, 0x01, 0x24, 0x00, 0x24, 0xFF, 0xAE, 0x01,
+ 0x27, 0x00, 0xE4, 0xFE, 0x3E, 0x02, 0x29, 0x00,
+ 0xA5, 0xFE, 0xB6, 0x02, 0x2B, 0x00, 0x66, 0xFE,
+ 0x49, 0x03, 0x2D, 0x00, 0x27, 0xFE, 0xFC, 0x03,
+ 0x1B, 0x00, 0x1F, 0x00, 0xE4, 0xFF, 0x1B, 0x00,
+ 0x5E, 0x00, 0xE4, 0xFF, 0x1B, 0x00, 0x9D, 0x00,
+ 0xE4, 0xFF, 0x1B, 0x00, 0xDC, 0x00, 0xE4, 0xFF,
+ 0x1E, 0x00, 0x1C, 0x01, 0xDA, 0xFF, 0x20, 0x00,
+ 0x5B, 0x01, 0xD2, 0xFF, 0x22, 0x00, 0x9A, 0x01,
+ 0xC8, 0xFF, 0x24, 0x00, 0xD9, 0x01, 0xBC, 0xFF,
+ 0x1B, 0x00, 0xE1, 0xFF, 0xE4, 0xFF, 0x1B, 0x00,
+ 0xA2, 0xFF, 0xE4, 0xFF, 0x1B, 0x00, 0x63, 0xFF,
+ 0xE4, 0xFF, 0x1B, 0x00, 0x24, 0xFF, 0xE4, 0xFF,
+ 0x1E, 0x00, 0xE4, 0xFE, 0xDA, 0xFF, 0x20, 0x00,
+ 0xA5, 0xFE, 0xD2, 0xFF, 0x22, 0x00, 0x66, 0xFE,
+ 0xC8, 0xFF, 0x24, 0x00, 0x27, 0xFE, 0xBC, 0xFF,
+ 0x1B, 0x00, 0x1F, 0x00, 0xAB, 0xFF, 0x1B, 0x00,
+ 0x5E, 0x00, 0xAB, 0xFF, 0x1B, 0x00, 0x9D, 0x00,
+ 0xAB, 0xFF, 0x1B, 0x00, 0xDC, 0x00, 0xAB, 0xFF,
+ 0x1E, 0x00, 0x1C, 0x01, 0x8E, 0xFF, 0x20, 0x00,
+ 0x5B, 0x01, 0x76, 0xFF, 0x22, 0x00, 0x9A, 0x01,
+ 0x58, 0xFF, 0x24, 0x00, 0xD9, 0x01, 0x34, 0xFF,
+ 0x1B, 0x00, 0xE1, 0xFF, 0xAB, 0xFF, 0x1B, 0x00,
+ 0xA2, 0xFF, 0xAB, 0xFF, 0x1B, 0x00, 0x63, 0xFF,
+ 0xAB, 0xFF, 0x1B, 0x00, 0x24, 0xFF, 0xAB, 0xFF,
+ 0x1E, 0x00, 0xE4, 0xFE, 0x8E, 0xFF, 0x20, 0x00,
+ 0xA5, 0xFE, 0x76, 0xFF, 0x22, 0x00, 0x66, 0xFE,
+ 0x58, 0xFF, 0x24, 0x00, 0x27, 0xFE, 0x34, 0xFF,
+ 0x1B, 0x00, 0x1F, 0x00, 0x71, 0xFF, 0x1B, 0x00,
+ 0x5E, 0x00, 0x71, 0xFF, 0x1B, 0x00, 0x9D, 0x00,
+ 0x71, 0xFF, 0x1B, 0x00, 0xDC, 0x00, 0x71, 0xFF,
+ 0x1E, 0x00, 0x1C, 0x01, 0x41, 0xFF, 0x20, 0x00,
+ 0x5B, 0x01, 0x19, 0xFF, 0x22, 0x00, 0x9A, 0x01,
+ 0xE8, 0xFE, 0x24, 0x00, 0xD9, 0x01, 0xAC, 0xFE,
+ 0x1B, 0x00, 0xE1, 0xFF, 0x71, 0xFF, 0x1B, 0x00,
+ 0xA2, 0xFF, 0x71, 0xFF, 0x1B, 0x00, 0x63, 0xFF,
+ 0x71, 0xFF, 0x1B, 0x00, 0x24, 0xFF, 0x71, 0xFF,
+ 0x1E, 0x00, 0xE4, 0xFE, 0x41, 0xFF, 0x20, 0x00,
+ 0xA5, 0xFE, 0x19, 0xFF, 0x22, 0x00, 0x66, 0xFE,
+ 0xE8, 0xFE, 0x24, 0x00, 0x27, 0xFE, 0xAC, 0xFE,
+ 0x1B, 0x00, 0x1F, 0x00, 0x38, 0xFF, 0x1B, 0x00,
+ 0x5E, 0x00, 0x38, 0xFF, 0x1B, 0x00, 0x9D, 0x00,
+ 0x38, 0xFF, 0x1B, 0x00, 0xDC, 0x00, 0x38, 0xFF,
+ 0x1E, 0x00, 0x1C, 0x01, 0xF5, 0xFE, 0x20, 0x00,
+ 0x5B, 0x01, 0xBD, 0xFE, 0x22, 0x00, 0x9A, 0x01,
+ 0x78, 0xFE, 0x24, 0x00, 0xD9, 0x01, 0x24, 0xFE,
+ 0x1B, 0x00, 0xE1, 0xFF, 0x38, 0xFF, 0x1B, 0x00,
+ 0xA2, 0xFF, 0x38, 0xFF, 0x1B, 0x00, 0x63, 0xFF,
+ 0x38, 0xFF, 0x1B, 0x00, 0x24, 0xFF, 0x38, 0xFF,
+ 0x1E, 0x00, 0xE4, 0xFE, 0xF5, 0xFE, 0x20, 0x00,
+ 0xA5, 0xFE, 0xBD, 0xFE, 0x22, 0x00, 0x66, 0xFE,
+ 0x78, 0xFE, 0x24, 0x00, 0x27, 0xFE, 0x24, 0xFE,
+ 0x1E, 0x00, 0x1F, 0x00, 0xFE, 0xFE, 0x1E, 0x00,
+ 0x5E, 0x00, 0xFE, 0xFE, 0x1E, 0x00, 0x9D, 0x00,
+ 0xFE, 0xFE, 0x1E, 0x00, 0xDC, 0x00, 0xFE, 0xFE,
+ 0x21, 0x00, 0x1C, 0x01, 0xA7, 0xFE, 0x23, 0x00,
+ 0x5B, 0x01, 0x5F, 0xFE, 0x25, 0x00, 0x9A, 0x01,
+ 0x07, 0xFE, 0x27, 0x00, 0xD9, 0x01, 0x9C, 0xFD,
+ 0x1E, 0x00, 0xE1, 0xFF, 0xFE, 0xFE, 0x1E, 0x00,
+ 0xA2, 0xFF, 0xFE, 0xFE, 0x1E, 0x00, 0x63, 0xFF,
+ 0xFE, 0xFE, 0x1E, 0x00, 0x24, 0xFF, 0xFE, 0xFE,
+ 0x21, 0x00, 0xE4, 0xFE, 0xA7, 0xFE, 0x23, 0x00,
+ 0xA5, 0xFE, 0x5F, 0xFE, 0x25, 0x00, 0x66, 0xFE,
+ 0x07, 0xFE, 0x27, 0x00, 0x27, 0xFE, 0x9C, 0xFD,
+ 0x20, 0x00, 0x1F, 0x00, 0xC5, 0xFE, 0x20, 0x00,
+ 0x5E, 0x00, 0xC5, 0xFE, 0x20, 0x00, 0x9D, 0x00,
+ 0xC5, 0xFE, 0x20, 0x00, 0xDC, 0x00, 0xC5, 0xFE,
+ 0x23, 0x00, 0x1C, 0x01, 0x5B, 0xFE, 0x25, 0x00,
+ 0x5B, 0x01, 0x03, 0xFE, 0x27, 0x00, 0x9A, 0x01,
+ 0x97, 0xFD, 0x29, 0x00, 0xD9, 0x01, 0x14, 0xFD,
+ 0x20, 0x00, 0xE1, 0xFF, 0xC5, 0xFE, 0x20, 0x00,
+ 0xA2, 0xFF, 0xC5, 0xFE, 0x20, 0x00, 0x63, 0xFF,
+ 0xC5, 0xFE, 0x20, 0x00, 0x24, 0xFF, 0xC5, 0xFE,
+ 0x23, 0x00, 0xE4, 0xFE, 0x5B, 0xFE, 0x25, 0x00,
+ 0xA5, 0xFE, 0x03, 0xFE, 0x27, 0x00, 0x66, 0xFE,
+ 0x97, 0xFD, 0x29, 0x00, 0x27, 0xFE, 0x14, 0xFD,
+ 0x22, 0x00, 0x1F, 0x00, 0x8B, 0xFE, 0x22, 0x00,
+ 0x5E, 0x00, 0x8B, 0xFE, 0x22, 0x00, 0x9D, 0x00,
+ 0x8B, 0xFE, 0x22, 0x00, 0xDC, 0x00, 0x8B, 0xFE,
+ 0x25, 0x00, 0x1C, 0x01, 0x0E, 0xFE, 0x27, 0x00,
+ 0x5B, 0x01, 0xA6, 0xFD, 0x29, 0x00, 0x9A, 0x01,
+ 0x27, 0xFD, 0x2B, 0x00, 0xD9, 0x01, 0x8C, 0xFC,
+ 0x22, 0x00, 0xE1, 0xFF, 0x8B, 0xFE, 0x22, 0x00,
+ 0xA2, 0xFF, 0x8B, 0xFE, 0x22, 0x00, 0x63, 0xFF,
+ 0x8B, 0xFE, 0x22, 0x00, 0x24, 0xFF, 0x8B, 0xFE,
+ 0x25, 0x00, 0xE4, 0xFE, 0x0E, 0xFE, 0x27, 0x00,
+ 0xA5, 0xFE, 0xA6, 0xFD, 0x29, 0x00, 0x66, 0xFE,
+ 0x27, 0xFD, 0x2B, 0x00, 0x27, 0xFE, 0x8C, 0xFC,
+ 0x24, 0x00, 0x1F, 0x00, 0x52, 0xFE, 0x24, 0x00,
+ 0x5E, 0x00, 0x52, 0xFE, 0x24, 0x00, 0x9D, 0x00,
+ 0x52, 0xFE, 0x24, 0x00, 0xDC, 0x00, 0x52, 0xFE,
+ 0x27, 0x00, 0x1C, 0x01, 0xC2, 0xFD, 0x29, 0x00,
+ 0x5B, 0x01, 0x4A, 0xFD, 0x2B, 0x00, 0x9A, 0x01,
+ 0xB7, 0xFC, 0x2D, 0x00, 0xD9, 0x01, 0x04, 0xFC,
+ 0x24, 0x00, 0xE1, 0xFF, 0x52, 0xFE, 0x24, 0x00,
+ 0xA2, 0xFF, 0x52, 0xFE, 0x24, 0x00, 0x63, 0xFF,
+ 0x52, 0xFE, 0x24, 0x00, 0x24, 0xFF, 0x52, 0xFE,
+ 0x27, 0x00, 0xE4, 0xFE, 0xC2, 0xFD, 0x29, 0x00,
+ 0xA5, 0xFE, 0x4A, 0xFD, 0x2B, 0x00, 0x66, 0xFE,
+ 0xB7, 0xFC, 0x2D, 0x00, 0x27, 0xFE, 0x04, 0xFC,
+ 0x1C, 0x00, 0x22, 0x00, 0x1F, 0x00, 0x1C, 0x00,
+ 0x67, 0x00, 0x1F, 0x00, 0x1C, 0x00, 0xAD, 0x00,
+ 0x1F, 0x00, 0x1C, 0x00, 0xF2, 0x00, 0x1F, 0x00,
+ 0x1F, 0x00, 0x39, 0x01, 0x2A, 0x00, 0x21, 0x00,
+ 0x7E, 0x01, 0x33, 0x00, 0x23, 0x00, 0xC4, 0x01,
+ 0x3D, 0x00, 0x25, 0x00, 0x09, 0x02, 0x4A, 0x00,
+ 0x1C, 0x00, 0xDE, 0xFF, 0x1F, 0x00, 0x1C, 0x00,
+ 0x99, 0xFF, 0x1F, 0x00, 0x1C, 0x00, 0x53, 0xFF,
+ 0x1F, 0x00, 0x1C, 0x00, 0x0E, 0xFF, 0x1F, 0x00,
+ 0x1F, 0x00, 0xC7, 0xFE, 0x2A, 0x00, 0x21, 0x00,
+ 0x82, 0xFE, 0x33, 0x00, 0x23, 0x00, 0x3C, 0xFE,
+ 0x3D, 0x00, 0x25, 0x00, 0xF7, 0xFD, 0x4A, 0x00,
+ 0x1C, 0x00, 0x22, 0x00, 0x5E, 0x00, 0x1C, 0x00,
+ 0x67, 0x00, 0x5E, 0x00, 0x1C, 0x00, 0xAD, 0x00,
+ 0x5E, 0x00, 0x1C, 0x00, 0xF2, 0x00, 0x5E, 0x00,
+ 0x1F, 0x00, 0x39, 0x01, 0x7E, 0x00, 0x21, 0x00,
+ 0x7E, 0x01, 0x99, 0x00, 0x23, 0x00, 0xC4, 0x01,
+ 0xB8, 0x00, 0x25, 0x00, 0x09, 0x02, 0xDF, 0x00,
+ 0x1C, 0x00, 0xDE, 0xFF, 0x5E, 0x00, 0x1C, 0x00,
+ 0x99, 0xFF, 0x5E, 0x00, 0x1C, 0x00, 0x53, 0xFF,
+ 0x5E, 0x00, 0x1C, 0x00, 0x0E, 0xFF, 0x5E, 0x00,
+ 0x1F, 0x00, 0xC7, 0xFE, 0x7E, 0x00, 0x21, 0x00,
+ 0x82, 0xFE, 0x99, 0x00, 0x23, 0x00, 0x3C, 0xFE,
+ 0xB8, 0x00, 0x25, 0x00, 0xF7, 0xFD, 0xDF, 0x00,
+ 0x1C, 0x00, 0x22, 0x00, 0x9D, 0x00, 0x1C, 0x00,
+ 0x67, 0x00, 0x9D, 0x00, 0x1C, 0x00, 0xAD, 0x00,
+ 0x9D, 0x00, 0x1C, 0x00, 0xF2, 0x00, 0x9D, 0x00,
+ 0x1F, 0x00, 0x39, 0x01, 0xD2, 0x00, 0x21, 0x00,
+ 0x7E, 0x01, 0xFF, 0x00, 0x23, 0x00, 0xC4, 0x01,
+ 0x34, 0x01, 0x25, 0x00, 0x09, 0x02, 0x75, 0x01,
+ 0x1C, 0x00, 0xDE, 0xFF, 0x9D, 0x00, 0x1C, 0x00,
+ 0x99, 0xFF, 0x9D, 0x00, 0x1C, 0x00, 0x53, 0xFF,
+ 0x9D, 0x00, 0x1C, 0x00, 0x0E, 0xFF, 0x9D, 0x00,
+ 0x1F, 0x00, 0xC7, 0xFE, 0xD2, 0x00, 0x21, 0x00,
+ 0x82, 0xFE, 0xFF, 0x00, 0x23, 0x00, 0x3C, 0xFE,
+ 0x34, 0x01, 0x25, 0x00, 0xF7, 0xFD, 0x75, 0x01,
+ 0x1C, 0x00, 0x22, 0x00, 0xDC, 0x00, 0x1C, 0x00,
+ 0x67, 0x00, 0xDC, 0x00, 0x1C, 0x00, 0xAD, 0x00,
+ 0xDC, 0x00, 0x1C, 0x00, 0xF2, 0x00, 0xDC, 0x00,
+ 0x1F, 0x00, 0x39, 0x01, 0x26, 0x01, 0x21, 0x00,
+ 0x7E, 0x01, 0x65, 0x01, 0x23, 0x00, 0xC4, 0x01,
+ 0xAF, 0x01, 0x25, 0x00, 0x09, 0x02, 0x0A, 0x02,
+ 0x1C, 0x00, 0xDE, 0xFF, 0xDC, 0x00, 0x1C, 0x00,
+ 0x99, 0xFF, 0xDC, 0x00, 0x1C, 0x00, 0x53, 0xFF,
+ 0xDC, 0x00, 0x1C, 0x00, 0x0E, 0xFF, 0xDC, 0x00,
+ 0x1F, 0x00, 0xC7, 0xFE, 0x26, 0x01, 0x21, 0x00,
+ 0x82, 0xFE, 0x65, 0x01, 0x23, 0x00, 0x3C, 0xFE,
+ 0xAF, 0x01, 0x25, 0x00, 0xF7, 0xFD, 0x0A, 0x02,
+ 0x1F, 0x00, 0x22, 0x00, 0x1C, 0x01, 0x1F, 0x00,
+ 0x67, 0x00, 0x1C, 0x01, 0x1F, 0x00, 0xAD, 0x00,
+ 0x1C, 0x01, 0x1F, 0x00, 0xF2, 0x00, 0x1C, 0x01,
+ 0x22, 0x00, 0x39, 0x01, 0x7B, 0x01, 0x24, 0x00,
+ 0x7E, 0x01, 0xCB, 0x01, 0x26, 0x00, 0xC4, 0x01,
+ 0x2B, 0x02, 0x28, 0x00, 0x09, 0x02, 0xA0, 0x02,
+ 0x1F, 0x00, 0xDE, 0xFF, 0x1C, 0x01, 0x1F, 0x00,
+ 0x99, 0xFF, 0x1C, 0x01, 0x1F, 0x00, 0x53, 0xFF,
+ 0x1C, 0x01, 0x1F, 0x00, 0x0E, 0xFF, 0x1C, 0x01,
+ 0x22, 0x00, 0xC7, 0xFE, 0x7B, 0x01, 0x24, 0x00,
+ 0x82, 0xFE, 0xCB, 0x01, 0x26, 0x00, 0x3C, 0xFE,
+ 0x2B, 0x02, 0x28, 0x00, 0xF7, 0xFD, 0xA0, 0x02,
+ 0x21, 0x00, 0x22, 0x00, 0x5B, 0x01, 0x21, 0x00,
+ 0x67, 0x00, 0x5B, 0x01, 0x21, 0x00, 0xAD, 0x00,
+ 0x5B, 0x01, 0x21, 0x00, 0xF2, 0x00, 0x5B, 0x01,
+ 0x24, 0x00, 0x39, 0x01, 0xCF, 0x01, 0x26, 0x00,
+ 0x7E, 0x01, 0x31, 0x02, 0x28, 0x00, 0xC4, 0x01,
+ 0xA6, 0x02, 0x2A, 0x00, 0x09, 0x02, 0x35, 0x03,
+ 0x21, 0x00, 0xDE, 0xFF, 0x5B, 0x01, 0x21, 0x00,
+ 0x99, 0xFF, 0x5B, 0x01, 0x21, 0x00, 0x53, 0xFF,
+ 0x5B, 0x01, 0x21, 0x00, 0x0E, 0xFF, 0x5B, 0x01,
+ 0x24, 0x00, 0xC7, 0xFE, 0xCF, 0x01, 0x26, 0x00,
+ 0x82, 0xFE, 0x31, 0x02, 0x28, 0x00, 0x3C, 0xFE,
+ 0xA6, 0x02, 0x2A, 0x00, 0xF7, 0xFD, 0x35, 0x03,
+ 0x23, 0x00, 0x22, 0x00, 0x9A, 0x01, 0x23, 0x00,
+ 0x67, 0x00, 0x9A, 0x01, 0x23, 0x00, 0xAD, 0x00,
+ 0x9A, 0x01, 0x23, 0x00, 0xF2, 0x00, 0x9A, 0x01,
+ 0x26, 0x00, 0x39, 0x01, 0x23, 0x02, 0x28, 0x00,
+ 0x7E, 0x01, 0x97, 0x02, 0x2A, 0x00, 0xC4, 0x01,
+ 0x22, 0x03, 0x2C, 0x00, 0x09, 0x02, 0xCB, 0x03,
+ 0x23, 0x00, 0xDE, 0xFF, 0x9A, 0x01, 0x23, 0x00,
+ 0x99, 0xFF, 0x9A, 0x01, 0x23, 0x00, 0x53, 0xFF,
+ 0x9A, 0x01, 0x23, 0x00, 0x0E, 0xFF, 0x9A, 0x01,
+ 0x26, 0x00, 0xC7, 0xFE, 0x23, 0x02, 0x28, 0x00,
+ 0x82, 0xFE, 0x97, 0x02, 0x2A, 0x00, 0x3C, 0xFE,
+ 0x22, 0x03, 0x2C, 0x00, 0xF7, 0xFD, 0xCB, 0x03,
+ 0x25, 0x00, 0x22, 0x00, 0xD9, 0x01, 0x25, 0x00,
+ 0x67, 0x00, 0xD9, 0x01, 0x25, 0x00, 0xAD, 0x00,
+ 0xD9, 0x01, 0x25, 0x00, 0xF2, 0x00, 0xD9, 0x01,
+ 0x28, 0x00, 0x39, 0x01, 0x77, 0x02, 0x2A, 0x00,
+ 0x7E, 0x01, 0xFD, 0x02, 0x2C, 0x00, 0xC4, 0x01,
+ 0x9D, 0x03, 0x2E, 0x00, 0x09, 0x02, 0x60, 0x04,
+ 0x25, 0x00, 0xDE, 0xFF, 0xD9, 0x01, 0x25, 0x00,
+ 0x99, 0xFF, 0xD9, 0x01, 0x25, 0x00, 0x53, 0xFF,
+ 0xD9, 0x01, 0x25, 0x00, 0x0E, 0xFF, 0xD9, 0x01,
+ 0x28, 0x00, 0xC7, 0xFE, 0x77, 0x02, 0x2A, 0x00,
+ 0x82, 0xFE, 0xFD, 0x02, 0x2C, 0x00, 0x3C, 0xFE,
+ 0x9D, 0x03, 0x2E, 0x00, 0xF7, 0xFD, 0x60, 0x04,
+ 0x1C, 0x00, 0x22, 0x00, 0xE1, 0xFF, 0x1C, 0x00,
+ 0x67, 0x00, 0xE1, 0xFF, 0x1C, 0x00, 0xAD, 0x00,
+ 0xE1, 0xFF, 0x1C, 0x00, 0xF2, 0x00, 0xE1, 0xFF,
+ 0x1F, 0x00, 0x39, 0x01, 0xD6, 0xFF, 0x21, 0x00,
+ 0x7E, 0x01, 0xCD, 0xFF, 0x23, 0x00, 0xC4, 0x01,
+ 0xC3, 0xFF, 0x25, 0x00, 0x09, 0x02, 0xB6, 0xFF,
+ 0x1C, 0x00, 0xDE, 0xFF, 0xE1, 0xFF, 0x1C, 0x00,
+ 0x99, 0xFF, 0xE1, 0xFF, 0x1C, 0x00, 0x53, 0xFF,
+ 0xE1, 0xFF, 0x1C, 0x00, 0x0E, 0xFF, 0xE1, 0xFF,
+ 0x1F, 0x00, 0xC7, 0xFE, 0xD6, 0xFF, 0x21, 0x00,
+ 0x82, 0xFE, 0xCD, 0xFF, 0x23, 0x00, 0x3C, 0xFE,
+ 0xC3, 0xFF, 0x25, 0x00, 0xF7, 0xFD, 0xB6, 0xFF,
+ 0x1C, 0x00, 0x22, 0x00, 0xA2, 0xFF, 0x1C, 0x00,
+ 0x67, 0x00, 0xA2, 0xFF, 0x1C, 0x00, 0xAD, 0x00,
+ 0xA2, 0xFF, 0x1C, 0x00, 0xF2, 0x00, 0xA2, 0xFF,
+ 0x1F, 0x00, 0x39, 0x01, 0x82, 0xFF, 0x21, 0x00,
+ 0x7E, 0x01, 0x67, 0xFF, 0x23, 0x00, 0xC4, 0x01,
+ 0x48, 0xFF, 0x25, 0x00, 0x09, 0x02, 0x21, 0xFF,
+ 0x1C, 0x00, 0xDE, 0xFF, 0xA2, 0xFF, 0x1C, 0x00,
+ 0x99, 0xFF, 0xA2, 0xFF, 0x1C, 0x00, 0x53, 0xFF,
+ 0xA2, 0xFF, 0x1C, 0x00, 0x0E, 0xFF, 0xA2, 0xFF,
+ 0x1F, 0x00, 0xC7, 0xFE, 0x82, 0xFF, 0x21, 0x00,
+ 0x82, 0xFE, 0x67, 0xFF, 0x23, 0x00, 0x3C, 0xFE,
+ 0x48, 0xFF, 0x25, 0x00, 0xF7, 0xFD, 0x21, 0xFF,
+ 0x1C, 0x00, 0x22, 0x00, 0x63, 0xFF, 0x1C, 0x00,
+ 0x67, 0x00, 0x63, 0xFF, 0x1C, 0x00, 0xAD, 0x00,
+ 0x63, 0xFF, 0x1C, 0x00, 0xF2, 0x00, 0x63, 0xFF,
+ 0x1F, 0x00, 0x39, 0x01, 0x2E, 0xFF, 0x21, 0x00,
+ 0x7E, 0x01, 0x01, 0xFF, 0x23, 0x00, 0xC4, 0x01,
+ 0xCC, 0xFE, 0x25, 0x00, 0x09, 0x02, 0x8B, 0xFE,
+ 0x1C, 0x00, 0xDE, 0xFF, 0x63, 0xFF, 0x1C, 0x00,
+ 0x99, 0xFF, 0x63, 0xFF, 0x1C, 0x00, 0x53, 0xFF,
+ 0x63, 0xFF, 0x1C, 0x00, 0x0E, 0xFF, 0x63, 0xFF,
+ 0x1F, 0x00, 0xC7, 0xFE, 0x2E, 0xFF, 0x21, 0x00,
+ 0x82, 0xFE, 0x01, 0xFF, 0x23, 0x00, 0x3C, 0xFE,
+ 0xCC, 0xFE, 0x25, 0x00, 0xF7, 0xFD, 0x8B, 0xFE,
+ 0x1C, 0x00, 0x22, 0x00, 0x24, 0xFF, 0x1C, 0x00,
+ 0x67, 0x00, 0x24, 0xFF, 0x1C, 0x00, 0xAD, 0x00,
+ 0x24, 0xFF, 0x1C, 0x00, 0xF2, 0x00, 0x24, 0xFF,
+ 0x1F, 0x00, 0x39, 0x01, 0xDA, 0xFE, 0x21, 0x00,
+ 0x7E, 0x01, 0x9B, 0xFE, 0x23, 0x00, 0xC4, 0x01,
+ 0x51, 0xFE, 0x25, 0x00, 0x09, 0x02, 0xF6, 0xFD,
+ 0x1C, 0x00, 0xDE, 0xFF, 0x24, 0xFF, 0x1C, 0x00,
+ 0x99, 0xFF, 0x24, 0xFF, 0x1C, 0x00, 0x53, 0xFF,
+ 0x24, 0xFF, 0x1C, 0x00, 0x0E, 0xFF, 0x24, 0xFF,
+ 0x1F, 0x00, 0xC7, 0xFE, 0xDA, 0xFE, 0x21, 0x00,
+ 0x82, 0xFE, 0x9B, 0xFE, 0x23, 0x00, 0x3C, 0xFE,
+ 0x51, 0xFE, 0x25, 0x00, 0xF7, 0xFD, 0xF6, 0xFD,
+ 0x1F, 0x00, 0x22, 0x00, 0xE4, 0xFE, 0x1F, 0x00,
+ 0x67, 0x00, 0xE4, 0xFE, 0x1F, 0x00, 0xAD, 0x00,
+ 0xE4, 0xFE, 0x1F, 0x00, 0xF2, 0x00, 0xE4, 0xFE,
+ 0x22, 0x00, 0x39, 0x01, 0x85, 0xFE, 0x24, 0x00,
+ 0x7E, 0x01, 0x35, 0xFE, 0x26, 0x00, 0xC4, 0x01,
+ 0xD5, 0xFD, 0x28, 0x00, 0x09, 0x02, 0x60, 0xFD,
+ 0x1F, 0x00, 0xDE, 0xFF, 0xE4, 0xFE, 0x1F, 0x00,
+ 0x99, 0xFF, 0xE4, 0xFE, 0x1F, 0x00, 0x53, 0xFF,
+ 0xE4, 0xFE, 0x1F, 0x00, 0x0E, 0xFF, 0xE4, 0xFE,
+ 0x22, 0x00, 0xC7, 0xFE, 0x85, 0xFE, 0x24, 0x00,
+ 0x82, 0xFE, 0x35, 0xFE, 0x26, 0x00, 0x3C, 0xFE,
+ 0xD5, 0xFD, 0x28, 0x00, 0xF7, 0xFD, 0x60, 0xFD,
+ 0x21, 0x00, 0x22, 0x00, 0xA5, 0xFE, 0x21, 0x00,
+ 0x67, 0x00, 0xA5, 0xFE, 0x21, 0x00, 0xAD, 0x00,
+ 0xA5, 0xFE, 0x21, 0x00, 0xF2, 0x00, 0xA5, 0xFE,
+ 0x24, 0x00, 0x39, 0x01, 0x31, 0xFE, 0x26, 0x00,
+ 0x7E, 0x01, 0xCF, 0xFD, 0x28, 0x00, 0xC4, 0x01,
+ 0x5A, 0xFD, 0x2A, 0x00, 0x09, 0x02, 0xCB, 0xFC,
+ 0x21, 0x00, 0xDE, 0xFF, 0xA5, 0xFE, 0x21, 0x00,
+ 0x99, 0xFF, 0xA5, 0xFE, 0x21, 0x00, 0x53, 0xFF,
+ 0xA5, 0xFE, 0x21, 0x00, 0x0E, 0xFF, 0xA5, 0xFE,
+ 0x24, 0x00, 0xC7, 0xFE, 0x31, 0xFE, 0x26, 0x00,
+ 0x82, 0xFE, 0xCF, 0xFD, 0x28, 0x00, 0x3C, 0xFE,
+ 0x5A, 0xFD, 0x2A, 0x00, 0xF7, 0xFD, 0xCB, 0xFC,
+ 0x23, 0x00, 0x22, 0x00, 0x66, 0xFE, 0x23, 0x00,
+ 0x67, 0x00, 0x66, 0xFE, 0x23, 0x00, 0xAD, 0x00,
+ 0x66, 0xFE, 0x23, 0x00, 0xF2, 0x00, 0x66, 0xFE,
+ 0x26, 0x00, 0x39, 0x01, 0xDD, 0xFD, 0x28, 0x00,
+ 0x7E, 0x01, 0x69, 0xFD, 0x2A, 0x00, 0xC4, 0x01,
+ 0xDE, 0xFC, 0x2C, 0x00, 0x09, 0x02, 0x35, 0xFC,
+ 0x23, 0x00, 0xDE, 0xFF, 0x66, 0xFE, 0x23, 0x00,
+ 0x99, 0xFF, 0x66, 0xFE, 0x23, 0x00, 0x53, 0xFF,
+ 0x66, 0xFE, 0x23, 0x00, 0x0E, 0xFF, 0x66, 0xFE,
+ 0x26, 0x00, 0xC7, 0xFE, 0xDD, 0xFD, 0x28, 0x00,
+ 0x82, 0xFE, 0x69, 0xFD, 0x2A, 0x00, 0x3C, 0xFE,
+ 0xDE, 0xFC, 0x2C, 0x00, 0xF7, 0xFD, 0x35, 0xFC,
+ 0x25, 0x00, 0x22, 0x00, 0x27, 0xFE, 0x25, 0x00,
+ 0x67, 0x00, 0x27, 0xFE, 0x25, 0x00, 0xAD, 0x00,
+ 0x27, 0xFE, 0x25, 0x00, 0xF2, 0x00, 0x27, 0xFE,
+ 0x28, 0x00, 0x39, 0x01, 0x89, 0xFD, 0x2A, 0x00,
+ 0x7E, 0x01, 0x03, 0xFD, 0x2C, 0x00, 0xC4, 0x01,
+ 0x63, 0xFC, 0x2E, 0x00, 0x09, 0x02, 0xA0, 0xFB,
+ 0x25, 0x00, 0xDE, 0xFF, 0x27, 0xFE, 0x25, 0x00,
+ 0x99, 0xFF, 0x27, 0xFE, 0x25, 0x00, 0x53, 0xFF,
+ 0x27, 0xFE, 0x25, 0x00, 0x0E, 0xFF, 0x27, 0xFE,
+ 0x28, 0x00, 0xC7, 0xFE, 0x89, 0xFD, 0x2A, 0x00,
+ 0x82, 0xFE, 0x03, 0xFD, 0x2C, 0x00, 0x3C, 0xFE,
+ 0x63, 0xFC, 0x2E, 0x00, 0xF7, 0xFD, 0xA0, 0xFB,
+ 0x1D, 0x00, 0x26, 0x00, 0x22, 0x00, 0x1D, 0x00,
+ 0x72, 0x00, 0x22, 0x00, 0x1D, 0x00, 0xBF, 0x00,
+ 0x22, 0x00, 0x1D, 0x00, 0x0B, 0x01, 0x22, 0x00,
+ 0x20, 0x00, 0x59, 0x01, 0x2E, 0x00, 0x22, 0x00,
+ 0xA5, 0x01, 0x38, 0x00, 0x24, 0x00, 0xF2, 0x01,
+ 0x44, 0x00, 0x26, 0x00, 0x3E, 0x02, 0x52, 0x00,
+ 0x1D, 0x00, 0xDA, 0xFF, 0x22, 0x00, 0x1D, 0x00,
+ 0x8E, 0xFF, 0x22, 0x00, 0x1D, 0x00, 0x41, 0xFF,
+ 0x22, 0x00, 0x1D, 0x00, 0xF5, 0xFE, 0x22, 0x00,
+ 0x20, 0x00, 0xA7, 0xFE, 0x2E, 0x00, 0x22, 0x00,
+ 0x5B, 0xFE, 0x38, 0x00, 0x24, 0x00, 0x0E, 0xFE,
+ 0x44, 0x00, 0x26, 0x00, 0xC2, 0xFD, 0x52, 0x00,
+ 0x1D, 0x00, 0x26, 0x00, 0x67, 0x00, 0x1D, 0x00,
+ 0x72, 0x00, 0x67, 0x00, 0x1D, 0x00, 0xBF, 0x00,
+ 0x67, 0x00, 0x1D, 0x00, 0x0B, 0x01, 0x67, 0x00,
+ 0x20, 0x00, 0x59, 0x01, 0x8A, 0x00, 0x22, 0x00,
+ 0xA5, 0x01, 0xA8, 0x00, 0x24, 0x00, 0xF2, 0x01,
+ 0xCC, 0x00, 0x26, 0x00, 0x3E, 0x02, 0xF6, 0x00,
+ 0x1D, 0x00, 0xDA, 0xFF, 0x67, 0x00, 0x1D, 0x00,
+ 0x8E, 0xFF, 0x67, 0x00, 0x1D, 0x00, 0x41, 0xFF,
+ 0x67, 0x00, 0x1D, 0x00, 0xF5, 0xFE, 0x67, 0x00,
+ 0x20, 0x00, 0xA7, 0xFE, 0x8A, 0x00, 0x22, 0x00,
+ 0x5B, 0xFE, 0xA8, 0x00, 0x24, 0x00, 0x0E, 0xFE,
+ 0xCC, 0x00, 0x26, 0x00, 0xC2, 0xFD, 0xF6, 0x00,
+ 0x1D, 0x00, 0x26, 0x00, 0xAD, 0x00, 0x1D, 0x00,
+ 0x72, 0x00, 0xAD, 0x00, 0x1D, 0x00, 0xBF, 0x00,
+ 0xAD, 0x00, 0x1D, 0x00, 0x0B, 0x01, 0xAD, 0x00,
+ 0x20, 0x00, 0x59, 0x01, 0xE7, 0x00, 0x22, 0x00,
+ 0xA5, 0x01, 0x18, 0x01, 0x24, 0x00, 0xF2, 0x01,
+ 0x54, 0x01, 0x26, 0x00, 0x3E, 0x02, 0x9B, 0x01,
+ 0x1D, 0x00, 0xDA, 0xFF, 0xAD, 0x00, 0x1D, 0x00,
+ 0x8E, 0xFF, 0xAD, 0x00, 0x1D, 0x00, 0x41, 0xFF,
+ 0xAD, 0x00, 0x1D, 0x00, 0xF5, 0xFE, 0xAD, 0x00,
+ 0x20, 0x00, 0xA7, 0xFE, 0xE7, 0x00, 0x22, 0x00,
+ 0x5B, 0xFE, 0x18, 0x01, 0x24, 0x00, 0x0E, 0xFE,
+ 0x54, 0x01, 0x26, 0x00, 0xC2, 0xFD, 0x9B, 0x01,
+ 0x1D, 0x00, 0x26, 0x00, 0xF2, 0x00, 0x1D, 0x00,
+ 0x72, 0x00, 0xF2, 0x00, 0x1D, 0x00, 0xBF, 0x00,
+ 0xF2, 0x00, 0x1D, 0x00, 0x0B, 0x01, 0xF2, 0x00,
+ 0x20, 0x00, 0x59, 0x01, 0x43, 0x01, 0x22, 0x00,
+ 0xA5, 0x01, 0x88, 0x01, 0x24, 0x00, 0xF2, 0x01,
+ 0xDC, 0x01, 0x26, 0x00, 0x3E, 0x02, 0x3F, 0x02,
+ 0x1D, 0x00, 0xDA, 0xFF, 0xF2, 0x00, 0x1D, 0x00,
+ 0x8E, 0xFF, 0xF2, 0x00, 0x1D, 0x00, 0x41, 0xFF,
+ 0xF2, 0x00, 0x1D, 0x00, 0xF5, 0xFE, 0xF2, 0x00,
+ 0x20, 0x00, 0xA7, 0xFE, 0x43, 0x01, 0x22, 0x00,
+ 0x5B, 0xFE, 0x88, 0x01, 0x24, 0x00, 0x0E, 0xFE,
+ 0xDC, 0x01, 0x26, 0x00, 0xC2, 0xFD, 0x3F, 0x02,
+ 0x20, 0x00, 0x26, 0x00, 0x39, 0x01, 0x20, 0x00,
+ 0x72, 0x00, 0x39, 0x01, 0x20, 0x00, 0xBF, 0x00,
+ 0x39, 0x01, 0x20, 0x00, 0x0B, 0x01, 0x39, 0x01,
+ 0x23, 0x00, 0x59, 0x01, 0xA1, 0x01, 0x25, 0x00,
+ 0xA5, 0x01, 0xF9, 0x01, 0x27, 0x00, 0xF2, 0x01,
+ 0x64, 0x02, 0x29, 0x00, 0x3E, 0x02, 0xE4, 0x02,
+ 0x20, 0x00, 0xDA, 0xFF, 0x39, 0x01, 0x20, 0x00,
+ 0x8E, 0xFF, 0x39, 0x01, 0x20, 0x00, 0x41, 0xFF,
+ 0x39, 0x01, 0x20, 0x00, 0xF5, 0xFE, 0x39, 0x01,
+ 0x23, 0x00, 0xA7, 0xFE, 0xA1, 0x01, 0x25, 0x00,
+ 0x5B, 0xFE, 0xF9, 0x01, 0x27, 0x00, 0x0E, 0xFE,
+ 0x64, 0x02, 0x29, 0x00, 0xC2, 0xFD, 0xE4, 0x02,
+ 0x22, 0x00, 0x26, 0x00, 0x7E, 0x01, 0x22, 0x00,
+ 0x72, 0x00, 0x7E, 0x01, 0x22, 0x00, 0xBF, 0x00,
+ 0x7E, 0x01, 0x22, 0x00, 0x0B, 0x01, 0x7E, 0x01,
+ 0x25, 0x00, 0x59, 0x01, 0xFD, 0x01, 0x27, 0x00,
+ 0xA5, 0x01, 0x69, 0x02, 0x29, 0x00, 0xF2, 0x01,
+ 0xEC, 0x02, 0x2B, 0x00, 0x3E, 0x02, 0x88, 0x03,
+ 0x22, 0x00, 0xDA, 0xFF, 0x7E, 0x01, 0x22, 0x00,
+ 0x8E, 0xFF, 0x7E, 0x01, 0x22, 0x00, 0x41, 0xFF,
+ 0x7E, 0x01, 0x22, 0x00, 0xF5, 0xFE, 0x7E, 0x01,
+ 0x25, 0x00, 0xA7, 0xFE, 0xFD, 0x01, 0x27, 0x00,
+ 0x5B, 0xFE, 0x69, 0x02, 0x29, 0x00, 0x0E, 0xFE,
+ 0xEC, 0x02, 0x2B, 0x00, 0xC2, 0xFD, 0x88, 0x03,
+ 0x24, 0x00, 0x26, 0x00, 0xC4, 0x01, 0x24, 0x00,
+ 0x72, 0x00, 0xC4, 0x01, 0x24, 0x00, 0xBF, 0x00,
+ 0xC4, 0x01, 0x24, 0x00, 0x0B, 0x01, 0xC4, 0x01,
+ 0x27, 0x00, 0x59, 0x01, 0x5A, 0x02, 0x29, 0x00,
+ 0xA5, 0x01, 0xD9, 0x02, 0x2B, 0x00, 0xF2, 0x01,
+ 0x74, 0x03, 0x2D, 0x00, 0x3E, 0x02, 0x2D, 0x04,
+ 0x24, 0x00, 0xDA, 0xFF, 0xC4, 0x01, 0x24, 0x00,
+ 0x8E, 0xFF, 0xC4, 0x01, 0x24, 0x00, 0x41, 0xFF,
+ 0xC4, 0x01, 0x24, 0x00, 0xF5, 0xFE, 0xC4, 0x01,
+ 0x27, 0x00, 0xA7, 0xFE, 0x5A, 0x02, 0x29, 0x00,
+ 0x5B, 0xFE, 0xD9, 0x02, 0x2B, 0x00, 0x0E, 0xFE,
+ 0x74, 0x03, 0x2D, 0x00, 0xC2, 0xFD, 0x2D, 0x04,
+ 0x26, 0x00, 0x26, 0x00, 0x09, 0x02, 0x26, 0x00,
+ 0x72, 0x00, 0x09, 0x02, 0x26, 0x00, 0xBF, 0x00,
+ 0x09, 0x02, 0x26, 0x00, 0x0B, 0x01, 0x09, 0x02,
+ 0x29, 0x00, 0x59, 0x01, 0xB6, 0x02, 0x2B, 0x00,
+ 0xA5, 0x01, 0x49, 0x03, 0x2D, 0x00, 0xF2, 0x01,
+ 0xFC, 0x03, 0x2F, 0x00, 0x3E, 0x02, 0xD1, 0x04,
+ 0x26, 0x00, 0xDA, 0xFF, 0x09, 0x02, 0x26, 0x00,
+ 0x8E, 0xFF, 0x09, 0x02, 0x26, 0x00, 0x41, 0xFF,
+ 0x09, 0x02, 0x26, 0x00, 0xF5, 0xFE, 0x09, 0x02,
+ 0x29, 0x00, 0xA7, 0xFE, 0xB6, 0x02, 0x2B, 0x00,
+ 0x5B, 0xFE, 0x49, 0x03, 0x2D, 0x00, 0x0E, 0xFE,
+ 0xFC, 0x03, 0x2F, 0x00, 0xC2, 0xFD, 0xD1, 0x04,
+ 0x1D, 0x00, 0x26, 0x00, 0xDE, 0xFF, 0x1D, 0x00,
+ 0x72, 0x00, 0xDE, 0xFF, 0x1D, 0x00, 0xBF, 0x00,
+ 0xDE, 0xFF, 0x1D, 0x00, 0x0B, 0x01, 0xDE, 0xFF,
+ 0x20, 0x00, 0x59, 0x01, 0xD2, 0xFF, 0x22, 0x00,
+ 0xA5, 0x01, 0xC8, 0xFF, 0x24, 0x00, 0xF2, 0x01,
+ 0xBC, 0xFF, 0x26, 0x00, 0x3E, 0x02, 0xAE, 0xFF,
+ 0x1D, 0x00, 0xDA, 0xFF, 0xDE, 0xFF, 0x1D, 0x00,
+ 0x8E, 0xFF, 0xDE, 0xFF, 0x1D, 0x00, 0x41, 0xFF,
+ 0xDE, 0xFF, 0x1D, 0x00, 0xF5, 0xFE, 0xDE, 0xFF,
+ 0x20, 0x00, 0xA7, 0xFE, 0xD2, 0xFF, 0x22, 0x00,
+ 0x5B, 0xFE, 0xC8, 0xFF, 0x24, 0x00, 0x0E, 0xFE,
+ 0xBC, 0xFF, 0x26, 0x00, 0xC2, 0xFD, 0xAE, 0xFF,
+ 0x1D, 0x00, 0x26, 0x00, 0x99, 0xFF, 0x1D, 0x00,
+ 0x72, 0x00, 0x99, 0xFF, 0x1D, 0x00, 0xBF, 0x00,
+ 0x99, 0xFF, 0x1D, 0x00, 0x0B, 0x01, 0x99, 0xFF,
+ 0x20, 0x00, 0x59, 0x01, 0x76, 0xFF, 0x22, 0x00,
+ 0xA5, 0x01, 0x58, 0xFF, 0x24, 0x00, 0xF2, 0x01,
+ 0x34, 0xFF, 0x26, 0x00, 0x3E, 0x02, 0x0A, 0xFF,
+ 0x1D, 0x00, 0xDA, 0xFF, 0x99, 0xFF, 0x1D, 0x00,
+ 0x8E, 0xFF, 0x99, 0xFF, 0x1D, 0x00, 0x41, 0xFF,
+ 0x99, 0xFF, 0x1D, 0x00, 0xF5, 0xFE, 0x99, 0xFF,
+ 0x20, 0x00, 0xA7, 0xFE, 0x76, 0xFF, 0x22, 0x00,
+ 0x5B, 0xFE, 0x58, 0xFF, 0x24, 0x00, 0x0E, 0xFE,
+ 0x34, 0xFF, 0x26, 0x00, 0xC2, 0xFD, 0x0A, 0xFF,
+ 0x1D, 0x00, 0x26, 0x00, 0x53, 0xFF, 0x1D, 0x00,
+ 0x72, 0x00, 0x53, 0xFF, 0x1D, 0x00, 0xBF, 0x00,
+ 0x53, 0xFF, 0x1D, 0x00, 0x0B, 0x01, 0x53, 0xFF,
+ 0x20, 0x00, 0x59, 0x01, 0x19, 0xFF, 0x22, 0x00,
+ 0xA5, 0x01, 0xE8, 0xFE, 0x24, 0x00, 0xF2, 0x01,
+ 0xAC, 0xFE, 0x26, 0x00, 0x3E, 0x02, 0x65, 0xFE,
+ 0x1D, 0x00, 0xDA, 0xFF, 0x53, 0xFF, 0x1D, 0x00,
+ 0x8E, 0xFF, 0x53, 0xFF, 0x1D, 0x00, 0x41, 0xFF,
+ 0x53, 0xFF, 0x1D, 0x00, 0xF5, 0xFE, 0x53, 0xFF,
+ 0x20, 0x00, 0xA7, 0xFE, 0x19, 0xFF, 0x22, 0x00,
+ 0x5B, 0xFE, 0xE8, 0xFE, 0x24, 0x00, 0x0E, 0xFE,
+ 0xAC, 0xFE, 0x26, 0x00, 0xC2, 0xFD, 0x65, 0xFE,
+ 0x1D, 0x00, 0x26, 0x00, 0x0E, 0xFF, 0x1D, 0x00,
+ 0x72, 0x00, 0x0E, 0xFF, 0x1D, 0x00, 0xBF, 0x00,
+ 0x0E, 0xFF, 0x1D, 0x00, 0x0B, 0x01, 0x0E, 0xFF,
+ 0x20, 0x00, 0x59, 0x01, 0xBD, 0xFE, 0x22, 0x00,
+ 0xA5, 0x01, 0x78, 0xFE, 0x24, 0x00, 0xF2, 0x01,
+ 0x24, 0xFE, 0x26, 0x00, 0x3E, 0x02, 0xC1, 0xFD,
+ 0x1D, 0x00, 0xDA, 0xFF, 0x0E, 0xFF, 0x1D, 0x00,
+ 0x8E, 0xFF, 0x0E, 0xFF, 0x1D, 0x00, 0x41, 0xFF,
+ 0x0E, 0xFF, 0x1D, 0x00, 0xF5, 0xFE, 0x0E, 0xFF,
+ 0x20, 0x00, 0xA7, 0xFE, 0xBD, 0xFE, 0x22, 0x00,
+ 0x5B, 0xFE, 0x78, 0xFE, 0x24, 0x00, 0x0E, 0xFE,
+ 0x24, 0xFE, 0x26, 0x00, 0xC2, 0xFD, 0xC1, 0xFD,
+ 0x20, 0x00, 0x26, 0x00, 0xC7, 0xFE, 0x20, 0x00,
+ 0x72, 0x00, 0xC7, 0xFE, 0x20, 0x00, 0xBF, 0x00,
+ 0xC7, 0xFE, 0x20, 0x00, 0x0B, 0x01, 0xC7, 0xFE,
+ 0x23, 0x00, 0x59, 0x01, 0x5F, 0xFE, 0x25, 0x00,
+ 0xA5, 0x01, 0x07, 0xFE, 0x27, 0x00, 0xF2, 0x01,
+ 0x9C, 0xFD, 0x29, 0x00, 0x3E, 0x02, 0x1C, 0xFD,
+ 0x20, 0x00, 0xDA, 0xFF, 0xC7, 0xFE, 0x20, 0x00,
+ 0x8E, 0xFF, 0xC7, 0xFE, 0x20, 0x00, 0x41, 0xFF,
+ 0xC7, 0xFE, 0x20, 0x00, 0xF5, 0xFE, 0xC7, 0xFE,
+ 0x23, 0x00, 0xA7, 0xFE, 0x5F, 0xFE, 0x25, 0x00,
+ 0x5B, 0xFE, 0x07, 0xFE, 0x27, 0x00, 0x0E, 0xFE,
+ 0x9C, 0xFD, 0x29, 0x00, 0xC2, 0xFD, 0x1C, 0xFD,
+ 0x22, 0x00, 0x26, 0x00, 0x82, 0xFE, 0x22, 0x00,
+ 0x72, 0x00, 0x82, 0xFE, 0x22, 0x00, 0xBF, 0x00,
+ 0x82, 0xFE, 0x22, 0x00, 0x0B, 0x01, 0x82, 0xFE,
+ 0x25, 0x00, 0x59, 0x01, 0x03, 0xFE, 0x27, 0x00,
+ 0xA5, 0x01, 0x97, 0xFD, 0x29, 0x00, 0xF2, 0x01,
+ 0x14, 0xFD, 0x2B, 0x00, 0x3E, 0x02, 0x78, 0xFC,
+ 0x22, 0x00, 0xDA, 0xFF, 0x82, 0xFE, 0x22, 0x00,
+ 0x8E, 0xFF, 0x82, 0xFE, 0x22, 0x00, 0x41, 0xFF,
+ 0x82, 0xFE, 0x22, 0x00, 0xF5, 0xFE, 0x82, 0xFE,
+ 0x25, 0x00, 0xA7, 0xFE, 0x03, 0xFE, 0x27, 0x00,
+ 0x5B, 0xFE, 0x97, 0xFD, 0x29, 0x00, 0x0E, 0xFE,
+ 0x14, 0xFD, 0x2B, 0x00, 0xC2, 0xFD, 0x78, 0xFC,
+ 0x24, 0x00, 0x26, 0x00, 0x3C, 0xFE, 0x24, 0x00,
+ 0x72, 0x00, 0x3C, 0xFE, 0x24, 0x00, 0xBF, 0x00,
+ 0x3C, 0xFE, 0x24, 0x00, 0x0B, 0x01, 0x3C, 0xFE,
+ 0x27, 0x00, 0x59, 0x01, 0xA6, 0xFD, 0x29, 0x00,
+ 0xA5, 0x01, 0x27, 0xFD, 0x2B, 0x00, 0xF2, 0x01,
+ 0x8C, 0xFC, 0x2D, 0x00, 0x3E, 0x02, 0xD3, 0xFB,
+ 0x24, 0x00, 0xDA, 0xFF, 0x3C, 0xFE, 0x24, 0x00,
+ 0x8E, 0xFF, 0x3C, 0xFE, 0x24, 0x00, 0x41, 0xFF,
+ 0x3C, 0xFE, 0x24, 0x00, 0xF5, 0xFE, 0x3C, 0xFE,
+ 0x27, 0x00, 0xA7, 0xFE, 0xA6, 0xFD, 0x29, 0x00,
+ 0x5B, 0xFE, 0x27, 0xFD, 0x2B, 0x00, 0x0E, 0xFE,
+ 0x8C, 0xFC, 0x2D, 0x00, 0xC2, 0xFD, 0xD3, 0xFB,
+ 0x26, 0x00, 0x26, 0x00, 0xF7, 0xFD, 0x26, 0x00,
+ 0x72, 0x00, 0xF7, 0xFD, 0x26, 0x00, 0xBF, 0x00,
+ 0xF7, 0xFD, 0x26, 0x00, 0x0B, 0x01, 0xF7, 0xFD,
+ 0x29, 0x00, 0x59, 0x01, 0x4A, 0xFD, 0x2B, 0x00,
+ 0xA5, 0x01, 0xB7, 0xFC, 0x2D, 0x00, 0xF2, 0x01,
+ 0x04, 0xFC, 0x2F, 0x00, 0x3E, 0x02, 0x2F, 0xFB,
+ 0x26, 0x00, 0xDA, 0xFF, 0xF7, 0xFD, 0x26, 0x00,
+ 0x8E, 0xFF, 0xF7, 0xFD, 0x26, 0x00, 0x41, 0xFF,
+ 0xF7, 0xFD, 0x26, 0x00, 0xF5, 0xFE, 0xF7, 0xFD,
+ 0x29, 0x00, 0xA7, 0xFE, 0x4A, 0xFD, 0x2B, 0x00,
+ 0x5B, 0xFE, 0xB7, 0xFC, 0x2D, 0x00, 0x0E, 0xFE,
+ 0x04, 0xFC, 0x2F, 0x00, 0xC2, 0xFD, 0x2F, 0xFB,
+ 0x1E, 0x00, 0x2A, 0x00, 0x26, 0x00, 0x1E, 0x00,
+ 0x7E, 0x00, 0x26, 0x00, 0x1E, 0x00, 0xD2, 0x00,
+ 0x26, 0x00, 0x1E, 0x00, 0x26, 0x01, 0x26, 0x00,
+ 0x21, 0x00, 0x7B, 0x01, 0x33, 0x00, 0x23, 0x00,
+ 0xCF, 0x01, 0x3D, 0x00, 0x25, 0x00, 0x23, 0x02,
+ 0x4A, 0x00, 0x27, 0x00, 0x77, 0x02, 0x5A, 0x00,
+ 0x1E, 0x00, 0xD6, 0xFF, 0x26, 0x00, 0x1E, 0x00,
+ 0x82, 0xFF, 0x26, 0x00, 0x1E, 0x00, 0x2E, 0xFF,
+ 0x26, 0x00, 0x1E, 0x00, 0xDA, 0xFE, 0x26, 0x00,
+ 0x21, 0x00, 0x85, 0xFE, 0x33, 0x00, 0x23, 0x00,
+ 0x31, 0xFE, 0x3D, 0x00, 0x25, 0x00, 0xDD, 0xFD,
+ 0x4A, 0x00, 0x27, 0x00, 0x89, 0xFD, 0x5A, 0x00,
+ 0x1E, 0x00, 0x2A, 0x00, 0x72, 0x00, 0x1E, 0x00,
+ 0x7E, 0x00, 0x72, 0x00, 0x1E, 0x00, 0xD2, 0x00,
+ 0x72, 0x00, 0x1E, 0x00, 0x26, 0x01, 0x72, 0x00,
+ 0x21, 0x00, 0x7B, 0x01, 0x99, 0x00, 0x23, 0x00,
+ 0xCF, 0x01, 0xB8, 0x00, 0x25, 0x00, 0x23, 0x02,
+ 0xDF, 0x00, 0x27, 0x00, 0x77, 0x02, 0x0F, 0x01,
+ 0x1E, 0x00, 0xD6, 0xFF, 0x72, 0x00, 0x1E, 0x00,
+ 0x82, 0xFF, 0x72, 0x00, 0x1E, 0x00, 0x2E, 0xFF,
+ 0x72, 0x00, 0x1E, 0x00, 0xDA, 0xFE, 0x72, 0x00,
+ 0x21, 0x00, 0x85, 0xFE, 0x99, 0x00, 0x23, 0x00,
+ 0x31, 0xFE, 0xB8, 0x00, 0x25, 0x00, 0xDD, 0xFD,
+ 0xDF, 0x00, 0x27, 0x00, 0x89, 0xFD, 0x0F, 0x01,
+ 0x1E, 0x00, 0x2A, 0x00, 0xBF, 0x00, 0x1E, 0x00,
+ 0x7E, 0x00, 0xBF, 0x00, 0x1E, 0x00, 0xD2, 0x00,
+ 0xBF, 0x00, 0x1E, 0x00, 0x26, 0x01, 0xBF, 0x00,
+ 0x21, 0x00, 0x7B, 0x01, 0xFF, 0x00, 0x23, 0x00,
+ 0xCF, 0x01, 0x34, 0x01, 0x25, 0x00, 0x23, 0x02,
+ 0x75, 0x01, 0x27, 0x00, 0x77, 0x02, 0xC4, 0x01,
+ 0x1E, 0x00, 0xD6, 0xFF, 0xBF, 0x00, 0x1E, 0x00,
+ 0x82, 0xFF, 0xBF, 0x00, 0x1E, 0x00, 0x2E, 0xFF,
+ 0xBF, 0x00, 0x1E, 0x00, 0xDA, 0xFE, 0xBF, 0x00,
+ 0x21, 0x00, 0x85, 0xFE, 0xFF, 0x00, 0x23, 0x00,
+ 0x31, 0xFE, 0x34, 0x01, 0x25, 0x00, 0xDD, 0xFD,
+ 0x75, 0x01, 0x27, 0x00, 0x89, 0xFD, 0xC4, 0x01,
+ 0x1E, 0x00, 0x2A, 0x00, 0x0B, 0x01, 0x1E, 0x00,
+ 0x7E, 0x00, 0x0B, 0x01, 0x1E, 0x00, 0xD2, 0x00,
+ 0x0B, 0x01, 0x1E, 0x00, 0x26, 0x01, 0x0B, 0x01,
+ 0x21, 0x00, 0x7B, 0x01, 0x65, 0x01, 0x23, 0x00,
+ 0xCF, 0x01, 0xAF, 0x01, 0x25, 0x00, 0x23, 0x02,
+ 0x0A, 0x02, 0x27, 0x00, 0x77, 0x02, 0x79, 0x02,
+ 0x1E, 0x00, 0xD6, 0xFF, 0x0B, 0x01, 0x1E, 0x00,
+ 0x82, 0xFF, 0x0B, 0x01, 0x1E, 0x00, 0x2E, 0xFF,
+ 0x0B, 0x01, 0x1E, 0x00, 0xDA, 0xFE, 0x0B, 0x01,
+ 0x21, 0x00, 0x85, 0xFE, 0x65, 0x01, 0x23, 0x00,
+ 0x31, 0xFE, 0xAF, 0x01, 0x25, 0x00, 0xDD, 0xFD,
+ 0x0A, 0x02, 0x27, 0x00, 0x89, 0xFD, 0x79, 0x02,
+ 0x21, 0x00, 0x2A, 0x00, 0x59, 0x01, 0x21, 0x00,
+ 0x7E, 0x00, 0x59, 0x01, 0x21, 0x00, 0xD2, 0x00,
+ 0x59, 0x01, 0x21, 0x00, 0x26, 0x01, 0x59, 0x01,
+ 0x24, 0x00, 0x7B, 0x01, 0xCB, 0x01, 0x26, 0x00,
+ 0xCF, 0x01, 0x2B, 0x02, 0x28, 0x00, 0x23, 0x02,
+ 0xA0, 0x02, 0x2A, 0x00, 0x77, 0x02, 0x2E, 0x03,
+ 0x21, 0x00, 0xD6, 0xFF, 0x59, 0x01, 0x21, 0x00,
+ 0x82, 0xFF, 0x59, 0x01, 0x21, 0x00, 0x2E, 0xFF,
+ 0x59, 0x01, 0x21, 0x00, 0xDA, 0xFE, 0x59, 0x01,
+ 0x24, 0x00, 0x85, 0xFE, 0xCB, 0x01, 0x26, 0x00,
+ 0x31, 0xFE, 0x2B, 0x02, 0x28, 0x00, 0xDD, 0xFD,
+ 0xA0, 0x02, 0x2A, 0x00, 0x89, 0xFD, 0x2E, 0x03,
+ 0x23, 0x00, 0x2A, 0x00, 0xA5, 0x01, 0x23, 0x00,
+ 0x7E, 0x00, 0xA5, 0x01, 0x23, 0x00, 0xD2, 0x00,
+ 0xA5, 0x01, 0x23, 0x00, 0x26, 0x01, 0xA5, 0x01,
+ 0x26, 0x00, 0x7B, 0x01, 0x31, 0x02, 0x28, 0x00,
+ 0xCF, 0x01, 0xA6, 0x02, 0x2A, 0x00, 0x23, 0x02,
+ 0x35, 0x03, 0x2C, 0x00, 0x77, 0x02, 0xE3, 0x03,
+ 0x23, 0x00, 0xD6, 0xFF, 0xA5, 0x01, 0x23, 0x00,
+ 0x82, 0xFF, 0xA5, 0x01, 0x23, 0x00, 0x2E, 0xFF,
+ 0xA5, 0x01, 0x23, 0x00, 0xDA, 0xFE, 0xA5, 0x01,
+ 0x26, 0x00, 0x85, 0xFE, 0x31, 0x02, 0x28, 0x00,
+ 0x31, 0xFE, 0xA6, 0x02, 0x2A, 0x00, 0xDD, 0xFD,
+ 0x35, 0x03, 0x2C, 0x00, 0x89, 0xFD, 0xE3, 0x03,
+ 0x25, 0x00, 0x2A, 0x00, 0xF2, 0x01, 0x25, 0x00,
+ 0x7E, 0x00, 0xF2, 0x01, 0x25, 0x00, 0xD2, 0x00,
+ 0xF2, 0x01, 0x25, 0x00, 0x26, 0x01, 0xF2, 0x01,
+ 0x28, 0x00, 0x7B, 0x01, 0x97, 0x02, 0x2A, 0x00,
+ 0xCF, 0x01, 0x22, 0x03, 0x2C, 0x00, 0x23, 0x02,
+ 0xCB, 0x03, 0x2E, 0x00, 0x77, 0x02, 0x98, 0x04,
+ 0x25, 0x00, 0xD6, 0xFF, 0xF2, 0x01, 0x25, 0x00,
+ 0x82, 0xFF, 0xF2, 0x01, 0x25, 0x00, 0x2E, 0xFF,
+ 0xF2, 0x01, 0x25, 0x00, 0xDA, 0xFE, 0xF2, 0x01,
+ 0x28, 0x00, 0x85, 0xFE, 0x97, 0x02, 0x2A, 0x00,
+ 0x31, 0xFE, 0x22, 0x03, 0x2C, 0x00, 0xDD, 0xFD,
+ 0xCB, 0x03, 0x2E, 0x00, 0x89, 0xFD, 0x98, 0x04,
+ 0x27, 0x00, 0x2A, 0x00, 0x3E, 0x02, 0x27, 0x00,
+ 0x7E, 0x00, 0x3E, 0x02, 0x27, 0x00, 0xD2, 0x00,
+ 0x3E, 0x02, 0x27, 0x00, 0x26, 0x01, 0x3E, 0x02,
+ 0x2A, 0x00, 0x7B, 0x01, 0xFD, 0x02, 0x2C, 0x00,
+ 0xCF, 0x01, 0x9D, 0x03, 0x2E, 0x00, 0x23, 0x02,
+ 0x60, 0x04, 0x30, 0x00, 0x77, 0x02, 0x4D, 0x05,
+ 0x27, 0x00, 0xD6, 0xFF, 0x3E, 0x02, 0x27, 0x00,
+ 0x82, 0xFF, 0x3E, 0x02, 0x27, 0x00, 0x2E, 0xFF,
+ 0x3E, 0x02, 0x27, 0x00, 0xDA, 0xFE, 0x3E, 0x02,
+ 0x2A, 0x00, 0x85, 0xFE, 0xFD, 0x02, 0x2C, 0x00,
+ 0x31, 0xFE, 0x9D, 0x03, 0x2E, 0x00, 0xDD, 0xFD,
+ 0x60, 0x04, 0x30, 0x00, 0x89, 0xFD, 0x4D, 0x05,
+ 0x1E, 0x00, 0x2A, 0x00, 0xDA, 0xFF, 0x1E, 0x00,
+ 0x7E, 0x00, 0xDA, 0xFF, 0x1E, 0x00, 0xD2, 0x00,
+ 0xDA, 0xFF, 0x1E, 0x00, 0x26, 0x01, 0xDA, 0xFF,
+ 0x21, 0x00, 0x7B, 0x01, 0xCD, 0xFF, 0x23, 0x00,
+ 0xCF, 0x01, 0xC3, 0xFF, 0x25, 0x00, 0x23, 0x02,
+ 0xB6, 0xFF, 0x27, 0x00, 0x77, 0x02, 0xA6, 0xFF,
+ 0x1E, 0x00, 0xD6, 0xFF, 0xDA, 0xFF, 0x1E, 0x00,
+ 0x82, 0xFF, 0xDA, 0xFF, 0x1E, 0x00, 0x2E, 0xFF,
+ 0xDA, 0xFF, 0x1E, 0x00, 0xDA, 0xFE, 0xDA, 0xFF,
+ 0x21, 0x00, 0x85, 0xFE, 0xCD, 0xFF, 0x23, 0x00,
+ 0x31, 0xFE, 0xC3, 0xFF, 0x25, 0x00, 0xDD, 0xFD,
+ 0xB6, 0xFF, 0x27, 0x00, 0x89, 0xFD, 0xA6, 0xFF,
+ 0x1E, 0x00, 0x2A, 0x00, 0x8E, 0xFF, 0x1E, 0x00,
+ 0x7E, 0x00, 0x8E, 0xFF, 0x1E, 0x00, 0xD2, 0x00,
+ 0x8E, 0xFF, 0x1E, 0x00, 0x26, 0x01, 0x8E, 0xFF,
+ 0x21, 0x00, 0x7B, 0x01, 0x67, 0xFF, 0x23, 0x00,
+ 0xCF, 0x01, 0x48, 0xFF, 0x25, 0x00, 0x23, 0x02,
+ 0x21, 0xFF, 0x27, 0x00, 0x77, 0x02, 0xF1, 0xFE,
+ 0x1E, 0x00, 0xD6, 0xFF, 0x8E, 0xFF, 0x1E, 0x00,
+ 0x82, 0xFF, 0x8E, 0xFF, 0x1E, 0x00, 0x2E, 0xFF,
+ 0x8E, 0xFF, 0x1E, 0x00, 0xDA, 0xFE, 0x8E, 0xFF,
+ 0x21, 0x00, 0x85, 0xFE, 0x67, 0xFF, 0x23, 0x00,
+ 0x31, 0xFE, 0x48, 0xFF, 0x25, 0x00, 0xDD, 0xFD,
+ 0x21, 0xFF, 0x27, 0x00, 0x89, 0xFD, 0xF1, 0xFE,
+ 0x1E, 0x00, 0x2A, 0x00, 0x41, 0xFF, 0x1E, 0x00,
+ 0x7E, 0x00, 0x41, 0xFF, 0x1E, 0x00, 0xD2, 0x00,
+ 0x41, 0xFF, 0x1E, 0x00, 0x26, 0x01, 0x41, 0xFF,
+ 0x21, 0x00, 0x7B, 0x01, 0x01, 0xFF, 0x23, 0x00,
+ 0xCF, 0x01, 0xCC, 0xFE, 0x25, 0x00, 0x23, 0x02,
+ 0x8B, 0xFE, 0x27, 0x00, 0x77, 0x02, 0x3C, 0xFE,
+ 0x1E, 0x00, 0xD6, 0xFF, 0x41, 0xFF, 0x1E, 0x00,
+ 0x82, 0xFF, 0x41, 0xFF, 0x1E, 0x00, 0x2E, 0xFF,
+ 0x41, 0xFF, 0x1E, 0x00, 0xDA, 0xFE, 0x41, 0xFF,
+ 0x21, 0x00, 0x85, 0xFE, 0x01, 0xFF, 0x23, 0x00,
+ 0x31, 0xFE, 0xCC, 0xFE, 0x25, 0x00, 0xDD, 0xFD,
+ 0x8B, 0xFE, 0x27, 0x00, 0x89, 0xFD, 0x3C, 0xFE,
+ 0x1E, 0x00, 0x2A, 0x00, 0xF5, 0xFE, 0x1E, 0x00,
+ 0x7E, 0x00, 0xF5, 0xFE, 0x1E, 0x00, 0xD2, 0x00,
+ 0xF5, 0xFE, 0x1E, 0x00, 0x26, 0x01, 0xF5, 0xFE,
+ 0x21, 0x00, 0x7B, 0x01, 0x9B, 0xFE, 0x23, 0x00,
+ 0xCF, 0x01, 0x51, 0xFE, 0x25, 0x00, 0x23, 0x02,
+ 0xF6, 0xFD, 0x27, 0x00, 0x77, 0x02, 0x87, 0xFD,
+ 0x1E, 0x00, 0xD6, 0xFF, 0xF5, 0xFE, 0x1E, 0x00,
+ 0x82, 0xFF, 0xF5, 0xFE, 0x1E, 0x00, 0x2E, 0xFF,
+ 0xF5, 0xFE, 0x1E, 0x00, 0xDA, 0xFE, 0xF5, 0xFE,
+ 0x21, 0x00, 0x85, 0xFE, 0x9B, 0xFE, 0x23, 0x00,
+ 0x31, 0xFE, 0x51, 0xFE, 0x25, 0x00, 0xDD, 0xFD,
+ 0xF6, 0xFD, 0x27, 0x00, 0x89, 0xFD, 0x87, 0xFD,
+ 0x21, 0x00, 0x2A, 0x00, 0xA7, 0xFE, 0x21, 0x00,
+ 0x7E, 0x00, 0xA7, 0xFE, 0x21, 0x00, 0xD2, 0x00,
+ 0xA7, 0xFE, 0x21, 0x00, 0x26, 0x01, 0xA7, 0xFE,
+ 0x24, 0x00, 0x7B, 0x01, 0x35, 0xFE, 0x26, 0x00,
+ 0xCF, 0x01, 0xD5, 0xFD, 0x28, 0x00, 0x23, 0x02,
+ 0x60, 0xFD, 0x2A, 0x00, 0x77, 0x02, 0xD2, 0xFC,
+ 0x21, 0x00, 0xD6, 0xFF, 0xA7, 0xFE, 0x21, 0x00,
+ 0x82, 0xFF, 0xA7, 0xFE, 0x21, 0x00, 0x2E, 0xFF,
+ 0xA7, 0xFE, 0x21, 0x00, 0xDA, 0xFE, 0xA7, 0xFE,
+ 0x24, 0x00, 0x85, 0xFE, 0x35, 0xFE, 0x26, 0x00,
+ 0x31, 0xFE, 0xD5, 0xFD, 0x28, 0x00, 0xDD, 0xFD,
+ 0x60, 0xFD, 0x2A, 0x00, 0x89, 0xFD, 0xD2, 0xFC,
+ 0x23, 0x00, 0x2A, 0x00, 0x5B, 0xFE, 0x23, 0x00,
+ 0x7E, 0x00, 0x5B, 0xFE, 0x23, 0x00, 0xD2, 0x00,
+ 0x5B, 0xFE, 0x23, 0x00, 0x26, 0x01, 0x5B, 0xFE,
+ 0x26, 0x00, 0x7B, 0x01, 0xCF, 0xFD, 0x28, 0x00,
+ 0xCF, 0x01, 0x5A, 0xFD, 0x2A, 0x00, 0x23, 0x02,
+ 0xCB, 0xFC, 0x2C, 0x00, 0x77, 0x02, 0x1D, 0xFC,
+ 0x23, 0x00, 0xD6, 0xFF, 0x5B, 0xFE, 0x23, 0x00,
+ 0x82, 0xFF, 0x5B, 0xFE, 0x23, 0x00, 0x2E, 0xFF,
+ 0x5B, 0xFE, 0x23, 0x00, 0xDA, 0xFE, 0x5B, 0xFE,
+ 0x26, 0x00, 0x85, 0xFE, 0xCF, 0xFD, 0x28, 0x00,
+ 0x31, 0xFE, 0x5A, 0xFD, 0x2A, 0x00, 0xDD, 0xFD,
+ 0xCB, 0xFC, 0x2C, 0x00, 0x89, 0xFD, 0x1D, 0xFC,
+ 0x25, 0x00, 0x2A, 0x00, 0x0E, 0xFE, 0x25, 0x00,
+ 0x7E, 0x00, 0x0E, 0xFE, 0x25, 0x00, 0xD2, 0x00,
+ 0x0E, 0xFE, 0x25, 0x00, 0x26, 0x01, 0x0E, 0xFE,
+ 0x28, 0x00, 0x7B, 0x01, 0x69, 0xFD, 0x2A, 0x00,
+ 0xCF, 0x01, 0xDE, 0xFC, 0x2C, 0x00, 0x23, 0x02,
+ 0x35, 0xFC, 0x2E, 0x00, 0x77, 0x02, 0x68, 0xFB,
+ 0x25, 0x00, 0xD6, 0xFF, 0x0E, 0xFE, 0x25, 0x00,
+ 0x82, 0xFF, 0x0E, 0xFE, 0x25, 0x00, 0x2E, 0xFF,
+ 0x0E, 0xFE, 0x25, 0x00, 0xDA, 0xFE, 0x0E, 0xFE,
+ 0x28, 0x00, 0x85, 0xFE, 0x69, 0xFD, 0x2A, 0x00,
+ 0x31, 0xFE, 0xDE, 0xFC, 0x2C, 0x00, 0xDD, 0xFD,
+ 0x35, 0xFC, 0x2E, 0x00, 0x89, 0xFD, 0x68, 0xFB,
+ 0x27, 0x00, 0x2A, 0x00, 0xC2, 0xFD, 0x27, 0x00,
+ 0x7E, 0x00, 0xC2, 0xFD, 0x27, 0x00, 0xD2, 0x00,
+ 0xC2, 0xFD, 0x27, 0x00, 0x26, 0x01, 0xC2, 0xFD,
+ 0x2A, 0x00, 0x7B, 0x01, 0x03, 0xFD, 0x2C, 0x00,
+ 0xCF, 0x01, 0x63, 0xFC, 0x2E, 0x00, 0x23, 0x02,
+ 0xA0, 0xFB, 0x30, 0x00, 0x77, 0x02, 0xB3, 0xFA,
+ 0x27, 0x00, 0xD6, 0xFF, 0xC2, 0xFD, 0x27, 0x00,
+ 0x82, 0xFF, 0xC2, 0xFD, 0x27, 0x00, 0x2E, 0xFF,
+ 0xC2, 0xFD, 0x27, 0x00, 0xDA, 0xFE, 0xC2, 0xFD,
+ 0x2A, 0x00, 0x85, 0xFE, 0x03, 0xFD, 0x2C, 0x00,
+ 0x31, 0xFE, 0x63, 0xFC, 0x2E, 0x00, 0xDD, 0xFD,
+ 0xA0, 0xFB, 0x30, 0x00, 0x89, 0xFD, 0xB3, 0xFA,
+ 0x1F, 0x00, 0x2E, 0x00, 0x2A, 0x00, 0x1F, 0x00,
+ 0x8A, 0x00, 0x2A, 0x00, 0x1F, 0x00, 0xE7, 0x00,
+ 0x2A, 0x00, 0x1F, 0x00, 0x43, 0x01, 0x2A, 0x00,
+ 0x22, 0x00, 0xA1, 0x01, 0x38, 0x00, 0x24, 0x00,
+ 0xFD, 0x01, 0x44, 0x00, 0x26, 0x00, 0x5A, 0x02,
+ 0x52, 0x00, 0x28, 0x00, 0xB6, 0x02, 0x63, 0x00,
+ 0x1F, 0x00, 0xD2, 0xFF, 0x2A, 0x00, 0x1F, 0x00,
+ 0x76, 0xFF, 0x2A, 0x00, 0x1F, 0x00, 0x19, 0xFF,
+ 0x2A, 0x00, 0x1F, 0x00, 0xBD, 0xFE, 0x2A, 0x00,
+ 0x22, 0x00, 0x5F, 0xFE, 0x38, 0x00, 0x24, 0x00,
+ 0x03, 0xFE, 0x44, 0x00, 0x26, 0x00, 0xA6, 0xFD,
+ 0x52, 0x00, 0x28, 0x00, 0x4A, 0xFD, 0x63, 0x00,
+ 0x1F, 0x00, 0x2E, 0x00, 0x7E, 0x00, 0x1F, 0x00,
+ 0x8A, 0x00, 0x7E, 0x00, 0x1F, 0x00, 0xE7, 0x00,
+ 0x7E, 0x00, 0x1F, 0x00, 0x43, 0x01, 0x7E, 0x00,
+ 0x22, 0x00, 0xA1, 0x01, 0xA8, 0x00, 0x24, 0x00,
+ 0xFD, 0x01, 0xCC, 0x00, 0x26, 0x00, 0x5A, 0x02,
+ 0xF6, 0x00, 0x28, 0x00, 0xB6, 0x02, 0x2A, 0x01,
+ 0x1F, 0x00, 0xD2, 0xFF, 0x7E, 0x00, 0x1F, 0x00,
+ 0x76, 0xFF, 0x7E, 0x00, 0x1F, 0x00, 0x19, 0xFF,
+ 0x7E, 0x00, 0x1F, 0x00, 0xBD, 0xFE, 0x7E, 0x00,
+ 0x22, 0x00, 0x5F, 0xFE, 0xA8, 0x00, 0x24, 0x00,
+ 0x03, 0xFE, 0xCC, 0x00, 0x26, 0x00, 0xA6, 0xFD,
+ 0xF6, 0x00, 0x28, 0x00, 0x4A, 0xFD, 0x2A, 0x01,
+ 0x1F, 0x00, 0x2E, 0x00, 0xD2, 0x00, 0x1F, 0x00,
+ 0x8A, 0x00, 0xD2, 0x00, 0x1F, 0x00, 0xE7, 0x00,
+ 0xD2, 0x00, 0x1F, 0x00, 0x43, 0x01, 0xD2, 0x00,
+ 0x22, 0x00, 0xA1, 0x01, 0x18, 0x01, 0x24, 0x00,
+ 0xFD, 0x01, 0x54, 0x01, 0x26, 0x00, 0x5A, 0x02,
+ 0x9B, 0x01, 0x28, 0x00, 0xB6, 0x02, 0xF1, 0x01,
+ 0x1F, 0x00, 0xD2, 0xFF, 0xD2, 0x00, 0x1F, 0x00,
+ 0x76, 0xFF, 0xD2, 0x00, 0x1F, 0x00, 0x19, 0xFF,
+ 0xD2, 0x00, 0x1F, 0x00, 0xBD, 0xFE, 0xD2, 0x00,
+ 0x22, 0x00, 0x5F, 0xFE, 0x18, 0x01, 0x24, 0x00,
+ 0x03, 0xFE, 0x54, 0x01, 0x26, 0x00, 0xA6, 0xFD,
+ 0x9B, 0x01, 0x28, 0x00, 0x4A, 0xFD, 0xF1, 0x01,
+ 0x1F, 0x00, 0x2E, 0x00, 0x26, 0x01, 0x1F, 0x00,
+ 0x8A, 0x00, 0x26, 0x01, 0x1F, 0x00, 0xE7, 0x00,
+ 0x26, 0x01, 0x1F, 0x00, 0x43, 0x01, 0x26, 0x01,
+ 0x22, 0x00, 0xA1, 0x01, 0x88, 0x01, 0x24, 0x00,
+ 0xFD, 0x01, 0xDC, 0x01, 0x26, 0x00, 0x5A, 0x02,
+ 0x3F, 0x02, 0x28, 0x00, 0xB6, 0x02, 0xB8, 0x02,
+ 0x1F, 0x00, 0xD2, 0xFF, 0x26, 0x01, 0x1F, 0x00,
+ 0x76, 0xFF, 0x26, 0x01, 0x1F, 0x00, 0x19, 0xFF,
+ 0x26, 0x01, 0x1F, 0x00, 0xBD, 0xFE, 0x26, 0x01,
+ 0x22, 0x00, 0x5F, 0xFE, 0x88, 0x01, 0x24, 0x00,
+ 0x03, 0xFE, 0xDC, 0x01, 0x26, 0x00, 0xA6, 0xFD,
+ 0x3F, 0x02, 0x28, 0x00, 0x4A, 0xFD, 0xB8, 0x02,
+ 0x22, 0x00, 0x2E, 0x00, 0x7B, 0x01, 0x22, 0x00,
+ 0x8A, 0x00, 0x7B, 0x01, 0x22, 0x00, 0xE7, 0x00,
+ 0x7B, 0x01, 0x22, 0x00, 0x43, 0x01, 0x7B, 0x01,
+ 0x25, 0x00, 0xA1, 0x01, 0xF9, 0x01, 0x27, 0x00,
+ 0xFD, 0x01, 0x64, 0x02, 0x29, 0x00, 0x5A, 0x02,
+ 0xE4, 0x02, 0x2B, 0x00, 0xB6, 0x02, 0x7F, 0x03,
+ 0x22, 0x00, 0xD2, 0xFF, 0x7B, 0x01, 0x22, 0x00,
+ 0x76, 0xFF, 0x7B, 0x01, 0x22, 0x00, 0x19, 0xFF,
+ 0x7B, 0x01, 0x22, 0x00, 0xBD, 0xFE, 0x7B, 0x01,
+ 0x25, 0x00, 0x5F, 0xFE, 0xF9, 0x01, 0x27, 0x00,
+ 0x03, 0xFE, 0x64, 0x02, 0x29, 0x00, 0xA6, 0xFD,
+ 0xE4, 0x02, 0x2B, 0x00, 0x4A, 0xFD, 0x7F, 0x03,
+ 0x24, 0x00, 0x2E, 0x00, 0xCF, 0x01, 0x24, 0x00,
+ 0x8A, 0x00, 0xCF, 0x01, 0x24, 0x00, 0xE7, 0x00,
+ 0xCF, 0x01, 0x24, 0x00, 0x43, 0x01, 0xCF, 0x01,
+ 0x27, 0x00, 0xA1, 0x01, 0x69, 0x02, 0x29, 0x00,
+ 0xFD, 0x01, 0xEC, 0x02, 0x2B, 0x00, 0x5A, 0x02,
+ 0x88, 0x03, 0x2D, 0x00, 0xB6, 0x02, 0x46, 0x04,
+ 0x24, 0x00, 0xD2, 0xFF, 0xCF, 0x01, 0x24, 0x00,
+ 0x76, 0xFF, 0xCF, 0x01, 0x24, 0x00, 0x19, 0xFF,
+ 0xCF, 0x01, 0x24, 0x00, 0xBD, 0xFE, 0xCF, 0x01,
+ 0x27, 0x00, 0x5F, 0xFE, 0x69, 0x02, 0x29, 0x00,
+ 0x03, 0xFE, 0xEC, 0x02, 0x2B, 0x00, 0xA6, 0xFD,
+ 0x88, 0x03, 0x2D, 0x00, 0x4A, 0xFD, 0x46, 0x04,
+ 0x26, 0x00, 0x2E, 0x00, 0x23, 0x02, 0x26, 0x00,
+ 0x8A, 0x00, 0x23, 0x02, 0x26, 0x00, 0xE7, 0x00,
+ 0x23, 0x02, 0x26, 0x00, 0x43, 0x01, 0x23, 0x02,
+ 0x29, 0x00, 0xA1, 0x01, 0xD9, 0x02, 0x2B, 0x00,
+ 0xFD, 0x01, 0x74, 0x03, 0x2D, 0x00, 0x5A, 0x02,
+ 0x2D, 0x04, 0x2F, 0x00, 0xB6, 0x02, 0x0D, 0x05,
+ 0x26, 0x00, 0xD2, 0xFF, 0x23, 0x02, 0x26, 0x00,
+ 0x76, 0xFF, 0x23, 0x02, 0x26, 0x00, 0x19, 0xFF,
+ 0x23, 0x02, 0x26, 0x00, 0xBD, 0xFE, 0x23, 0x02,
+ 0x29, 0x00, 0x5F, 0xFE, 0xD9, 0x02, 0x2B, 0x00,
+ 0x03, 0xFE, 0x74, 0x03, 0x2D, 0x00, 0xA6, 0xFD,
+ 0x2D, 0x04, 0x2F, 0x00, 0x4A, 0xFD, 0x0D, 0x05,
+ 0x28, 0x00, 0x2E, 0x00, 0x77, 0x02, 0x28, 0x00,
+ 0x8A, 0x00, 0x77, 0x02, 0x28, 0x00, 0xE7, 0x00,
+ 0x77, 0x02, 0x28, 0x00, 0x43, 0x01, 0x77, 0x02,
+ 0x2B, 0x00, 0xA1, 0x01, 0x49, 0x03, 0x2D, 0x00,
+ 0xFD, 0x01, 0xFC, 0x03, 0x2F, 0x00, 0x5A, 0x02,
+ 0xD1, 0x04, 0x30, 0x00, 0xB6, 0x02, 0xD4, 0x05,
+ 0x28, 0x00, 0xD2, 0xFF, 0x77, 0x02, 0x28, 0x00,
+ 0x76, 0xFF, 0x77, 0x02, 0x28, 0x00, 0x19, 0xFF,
+ 0x77, 0x02, 0x28, 0x00, 0xBD, 0xFE, 0x77, 0x02,
+ 0x2B, 0x00, 0x5F, 0xFE, 0x49, 0x03, 0x2D, 0x00,
+ 0x03, 0xFE, 0xFC, 0x03, 0x2F, 0x00, 0xA6, 0xFD,
+ 0xD1, 0x04, 0x30, 0x00, 0x4A, 0xFD, 0xD4, 0x05,
+ 0x1F, 0x00, 0x2E, 0x00, 0xD6, 0xFF, 0x1F, 0x00,
+ 0x8A, 0x00, 0xD6, 0xFF, 0x1F, 0x00, 0xE7, 0x00,
+ 0xD6, 0xFF, 0x1F, 0x00, 0x43, 0x01, 0xD6, 0xFF,
+ 0x22, 0x00, 0xA1, 0x01, 0xC8, 0xFF, 0x24, 0x00,
+ 0xFD, 0x01, 0xBC, 0xFF, 0x26, 0x00, 0x5A, 0x02,
+ 0xAE, 0xFF, 0x28, 0x00, 0xB6, 0x02, 0x9D, 0xFF,
+ 0x1F, 0x00, 0xD2, 0xFF, 0xD6, 0xFF, 0x1F, 0x00,
+ 0x76, 0xFF, 0xD6, 0xFF, 0x1F, 0x00, 0x19, 0xFF,
+ 0xD6, 0xFF, 0x1F, 0x00, 0xBD, 0xFE, 0xD6, 0xFF,
+ 0x22, 0x00, 0x5F, 0xFE, 0xC8, 0xFF, 0x24, 0x00,
+ 0x03, 0xFE, 0xBC, 0xFF, 0x26, 0x00, 0xA6, 0xFD,
+ 0xAE, 0xFF, 0x28, 0x00, 0x4A, 0xFD, 0x9D, 0xFF,
+ 0x1F, 0x00, 0x2E, 0x00, 0x82, 0xFF, 0x1F, 0x00,
+ 0x8A, 0x00, 0x82, 0xFF, 0x1F, 0x00, 0xE7, 0x00,
+ 0x82, 0xFF, 0x1F, 0x00, 0x43, 0x01, 0x82, 0xFF,
+ 0x22, 0x00, 0xA1, 0x01, 0x58, 0xFF, 0x24, 0x00,
+ 0xFD, 0x01, 0x34, 0xFF, 0x26, 0x00, 0x5A, 0x02,
+ 0x0A, 0xFF, 0x28, 0x00, 0xB6, 0x02, 0xD6, 0xFE,
+ 0x1F, 0x00, 0xD2, 0xFF, 0x82, 0xFF, 0x1F, 0x00,
+ 0x76, 0xFF, 0x82, 0xFF, 0x1F, 0x00, 0x19, 0xFF,
+ 0x82, 0xFF, 0x1F, 0x00, 0xBD, 0xFE, 0x82, 0xFF,
+ 0x22, 0x00, 0x5F, 0xFE, 0x58, 0xFF, 0x24, 0x00,
+ 0x03, 0xFE, 0x34, 0xFF, 0x26, 0x00, 0xA6, 0xFD,
+ 0x0A, 0xFF, 0x28, 0x00, 0x4A, 0xFD, 0xD6, 0xFE,
+ 0x1F, 0x00, 0x2E, 0x00, 0x2E, 0xFF, 0x1F, 0x00,
+ 0x8A, 0x00, 0x2E, 0xFF, 0x1F, 0x00, 0xE7, 0x00,
+ 0x2E, 0xFF, 0x1F, 0x00, 0x43, 0x01, 0x2E, 0xFF,
+ 0x22, 0x00, 0xA1, 0x01, 0xE8, 0xFE, 0x24, 0x00,
+ 0xFD, 0x01, 0xAC, 0xFE, 0x26, 0x00, 0x5A, 0x02,
+ 0x65, 0xFE, 0x28, 0x00, 0xB6, 0x02, 0x0F, 0xFE,
+ 0x1F, 0x00, 0xD2, 0xFF, 0x2E, 0xFF, 0x1F, 0x00,
+ 0x76, 0xFF, 0x2E, 0xFF, 0x1F, 0x00, 0x19, 0xFF,
+ 0x2E, 0xFF, 0x1F, 0x00, 0xBD, 0xFE, 0x2E, 0xFF,
+ 0x22, 0x00, 0x5F, 0xFE, 0xE8, 0xFE, 0x24, 0x00,
+ 0x03, 0xFE, 0xAC, 0xFE, 0x26, 0x00, 0xA6, 0xFD,
+ 0x65, 0xFE, 0x28, 0x00, 0x4A, 0xFD, 0x0F, 0xFE,
+ 0x1F, 0x00, 0x2E, 0x00, 0xDA, 0xFE, 0x1F, 0x00,
+ 0x8A, 0x00, 0xDA, 0xFE, 0x1F, 0x00, 0xE7, 0x00,
+ 0xDA, 0xFE, 0x1F, 0x00, 0x43, 0x01, 0xDA, 0xFE,
+ 0x22, 0x00, 0xA1, 0x01, 0x78, 0xFE, 0x24, 0x00,
+ 0xFD, 0x01, 0x24, 0xFE, 0x26, 0x00, 0x5A, 0x02,
+ 0xC1, 0xFD, 0x28, 0x00, 0xB6, 0x02, 0x48, 0xFD,
+ 0x1F, 0x00, 0xD2, 0xFF, 0xDA, 0xFE, 0x1F, 0x00,
+ 0x76, 0xFF, 0xDA, 0xFE, 0x1F, 0x00, 0x19, 0xFF,
+ 0xDA, 0xFE, 0x1F, 0x00, 0xBD, 0xFE, 0xDA, 0xFE,
+ 0x22, 0x00, 0x5F, 0xFE, 0x78, 0xFE, 0x24, 0x00,
+ 0x03, 0xFE, 0x24, 0xFE, 0x26, 0x00, 0xA6, 0xFD,
+ 0xC1, 0xFD, 0x28, 0x00, 0x4A, 0xFD, 0x48, 0xFD,
+ 0x22, 0x00, 0x2E, 0x00, 0x85, 0xFE, 0x22, 0x00,
+ 0x8A, 0x00, 0x85, 0xFE, 0x22, 0x00, 0xE7, 0x00,
+ 0x85, 0xFE, 0x22, 0x00, 0x43, 0x01, 0x85, 0xFE,
+ 0x25, 0x00, 0xA1, 0x01, 0x07, 0xFE, 0x27, 0x00,
+ 0xFD, 0x01, 0x9C, 0xFD, 0x29, 0x00, 0x5A, 0x02,
+ 0x1C, 0xFD, 0x2B, 0x00, 0xB6, 0x02, 0x81, 0xFC,
+ 0x22, 0x00, 0xD2, 0xFF, 0x85, 0xFE, 0x22, 0x00,
+ 0x76, 0xFF, 0x85, 0xFE, 0x22, 0x00, 0x19, 0xFF,
+ 0x85, 0xFE, 0x22, 0x00, 0xBD, 0xFE, 0x85, 0xFE,
+ 0x25, 0x00, 0x5F, 0xFE, 0x07, 0xFE, 0x27, 0x00,
+ 0x03, 0xFE, 0x9C, 0xFD, 0x29, 0x00, 0xA6, 0xFD,
+ 0x1C, 0xFD, 0x2B, 0x00, 0x4A, 0xFD, 0x81, 0xFC,
+ 0x24, 0x00, 0x2E, 0x00, 0x31, 0xFE, 0x24, 0x00,
+ 0x8A, 0x00, 0x31, 0xFE, 0x24, 0x00, 0xE7, 0x00,
+ 0x31, 0xFE, 0x24, 0x00, 0x43, 0x01, 0x31, 0xFE,
+ 0x27, 0x00, 0xA1, 0x01, 0x97, 0xFD, 0x29, 0x00,
+ 0xFD, 0x01, 0x14, 0xFD, 0x2B, 0x00, 0x5A, 0x02,
+ 0x78, 0xFC, 0x2D, 0x00, 0xB6, 0x02, 0xBA, 0xFB,
+ 0x24, 0x00, 0xD2, 0xFF, 0x31, 0xFE, 0x24, 0x00,
+ 0x76, 0xFF, 0x31, 0xFE, 0x24, 0x00, 0x19, 0xFF,
+ 0x31, 0xFE, 0x24, 0x00, 0xBD, 0xFE, 0x31, 0xFE,
+ 0x27, 0x00, 0x5F, 0xFE, 0x97, 0xFD, 0x29, 0x00,
+ 0x03, 0xFE, 0x14, 0xFD, 0x2B, 0x00, 0xA6, 0xFD,
+ 0x78, 0xFC, 0x2D, 0x00, 0x4A, 0xFD, 0xBA, 0xFB,
+ 0x26, 0x00, 0x2E, 0x00, 0xDD, 0xFD, 0x26, 0x00,
+ 0x8A, 0x00, 0xDD, 0xFD, 0x26, 0x00, 0xE7, 0x00,
+ 0xDD, 0xFD, 0x26, 0x00, 0x43, 0x01, 0xDD, 0xFD,
+ 0x29, 0x00, 0xA1, 0x01, 0x27, 0xFD, 0x2B, 0x00,
+ 0xFD, 0x01, 0x8C, 0xFC, 0x2D, 0x00, 0x5A, 0x02,
+ 0xD3, 0xFB, 0x2F, 0x00, 0xB6, 0x02, 0xF3, 0xFA,
+ 0x26, 0x00, 0xD2, 0xFF, 0xDD, 0xFD, 0x26, 0x00,
+ 0x76, 0xFF, 0xDD, 0xFD, 0x26, 0x00, 0x19, 0xFF,
+ 0xDD, 0xFD, 0x26, 0x00, 0xBD, 0xFE, 0xDD, 0xFD,
+ 0x29, 0x00, 0x5F, 0xFE, 0x27, 0xFD, 0x2B, 0x00,
+ 0x03, 0xFE, 0x8C, 0xFC, 0x2D, 0x00, 0xA6, 0xFD,
+ 0xD3, 0xFB, 0x2F, 0x00, 0x4A, 0xFD, 0xF3, 0xFA,
+ 0x28, 0x00, 0x2E, 0x00, 0x89, 0xFD, 0x28, 0x00,
+ 0x8A, 0x00, 0x89, 0xFD, 0x28, 0x00, 0xE7, 0x00,
+ 0x89, 0xFD, 0x28, 0x00, 0x43, 0x01, 0x89, 0xFD,
+ 0x2B, 0x00, 0xA1, 0x01, 0xB7, 0xFC, 0x2D, 0x00,
+ 0xFD, 0x01, 0x04, 0xFC, 0x2F, 0x00, 0x5A, 0x02,
+ 0x2F, 0xFB, 0x30, 0x00, 0xB6, 0x02, 0x2C, 0xFA,
+ 0x28, 0x00, 0xD2, 0xFF, 0x89, 0xFD, 0x28, 0x00,
+ 0x76, 0xFF, 0x89, 0xFD, 0x28, 0x00, 0x19, 0xFF,
+ 0x89, 0xFD, 0x28, 0x00, 0xBD, 0xFE, 0x89, 0xFD,
+ 0x2B, 0x00, 0x5F, 0xFE, 0xB7, 0xFC, 0x2D, 0x00,
+ 0x03, 0xFE, 0x04, 0xFC, 0x2F, 0x00, 0xA6, 0xFD,
+ 0x2F, 0xFB, 0x30, 0x00, 0x4A, 0xFD, 0x2C, 0xFA,
+ 0x20, 0x00, 0x33, 0x00, 0x2E, 0x00, 0x20, 0x00,
+ 0x99, 0x00, 0x2E, 0x00, 0x20, 0x00, 0xFF, 0x00,
+ 0x2E, 0x00, 0x20, 0x00, 0x65, 0x01, 0x2E, 0x00,
+ 0x23, 0x00, 0xCB, 0x01, 0x3D, 0x00, 0x25, 0x00,
+ 0x31, 0x02, 0x4A, 0x00, 0x27, 0x00, 0x97, 0x02,
+ 0x5A, 0x00, 0x29, 0x00, 0xFD, 0x02, 0x6D, 0x00,
+ 0x20, 0x00, 0xCD, 0xFF, 0x2E, 0x00, 0x20, 0x00,
+ 0x67, 0xFF, 0x2E, 0x00, 0x20, 0x00, 0x01, 0xFF,
+ 0x2E, 0x00, 0x20, 0x00, 0x9B, 0xFE, 0x2E, 0x00,
+ 0x23, 0x00, 0x35, 0xFE, 0x3D, 0x00, 0x25, 0x00,
+ 0xCF, 0xFD, 0x4A, 0x00, 0x27, 0x00, 0x69, 0xFD,
+ 0x5A, 0x00, 0x29, 0x00, 0x03, 0xFD, 0x6D, 0x00,
+ 0x20, 0x00, 0x33, 0x00, 0x8A, 0x00, 0x20, 0x00,
+ 0x99, 0x00, 0x8A, 0x00, 0x20, 0x00, 0xFF, 0x00,
+ 0x8A, 0x00, 0x20, 0x00, 0x65, 0x01, 0x8A, 0x00,
+ 0x23, 0x00, 0xCB, 0x01, 0xB8, 0x00, 0x25, 0x00,
+ 0x31, 0x02, 0xDF, 0x00, 0x27, 0x00, 0x97, 0x02,
+ 0x0F, 0x01, 0x29, 0x00, 0xFD, 0x02, 0x48, 0x01,
+ 0x20, 0x00, 0xCD, 0xFF, 0x8A, 0x00, 0x20, 0x00,
+ 0x67, 0xFF, 0x8A, 0x00, 0x20, 0x00, 0x01, 0xFF,
+ 0x8A, 0x00, 0x20, 0x00, 0x9B, 0xFE, 0x8A, 0x00,
+ 0x23, 0x00, 0x35, 0xFE, 0xB8, 0x00, 0x25, 0x00,
+ 0xCF, 0xFD, 0xDF, 0x00, 0x27, 0x00, 0x69, 0xFD,
+ 0x0F, 0x01, 0x29, 0x00, 0x03, 0xFD, 0x48, 0x01,
+ 0x20, 0x00, 0x33, 0x00, 0xE7, 0x00, 0x20, 0x00,
+ 0x99, 0x00, 0xE7, 0x00, 0x20, 0x00, 0xFF, 0x00,
+ 0xE7, 0x00, 0x20, 0x00, 0x65, 0x01, 0xE7, 0x00,
+ 0x23, 0x00, 0xCB, 0x01, 0x34, 0x01, 0x25, 0x00,
+ 0x31, 0x02, 0x75, 0x01, 0x27, 0x00, 0x97, 0x02,
+ 0xC4, 0x01, 0x29, 0x00, 0xFD, 0x02, 0x23, 0x02,
+ 0x20, 0x00, 0xCD, 0xFF, 0xE7, 0x00, 0x20, 0x00,
+ 0x67, 0xFF, 0xE7, 0x00, 0x20, 0x00, 0x01, 0xFF,
+ 0xE7, 0x00, 0x20, 0x00, 0x9B, 0xFE, 0xE7, 0x00,
+ 0x23, 0x00, 0x35, 0xFE, 0x34, 0x01, 0x25, 0x00,
+ 0xCF, 0xFD, 0x75, 0x01, 0x27, 0x00, 0x69, 0xFD,
+ 0xC4, 0x01, 0x29, 0x00, 0x03, 0xFD, 0x23, 0x02,
+ 0x20, 0x00, 0x33, 0x00, 0x43, 0x01, 0x20, 0x00,
+ 0x99, 0x00, 0x43, 0x01, 0x20, 0x00, 0xFF, 0x00,
+ 0x43, 0x01, 0x20, 0x00, 0x65, 0x01, 0x43, 0x01,
+ 0x23, 0x00, 0xCB, 0x01, 0xAF, 0x01, 0x25, 0x00,
+ 0x31, 0x02, 0x0A, 0x02, 0x27, 0x00, 0x97, 0x02,
+ 0x79, 0x02, 0x29, 0x00, 0xFD, 0x02, 0xFE, 0x02,
+ 0x20, 0x00, 0xCD, 0xFF, 0x43, 0x01, 0x20, 0x00,
+ 0x67, 0xFF, 0x43, 0x01, 0x20, 0x00, 0x01, 0xFF,
+ 0x43, 0x01, 0x20, 0x00, 0x9B, 0xFE, 0x43, 0x01,
+ 0x23, 0x00, 0x35, 0xFE, 0xAF, 0x01, 0x25, 0x00,
+ 0xCF, 0xFD, 0x0A, 0x02, 0x27, 0x00, 0x69, 0xFD,
+ 0x79, 0x02, 0x29, 0x00, 0x03, 0xFD, 0xFE, 0x02,
+ 0x23, 0x00, 0x33, 0x00, 0xA1, 0x01, 0x23, 0x00,
+ 0x99, 0x00, 0xA1, 0x01, 0x23, 0x00, 0xFF, 0x00,
+ 0xA1, 0x01, 0x23, 0x00, 0x65, 0x01, 0xA1, 0x01,
+ 0x26, 0x00, 0xCB, 0x01, 0x2B, 0x02, 0x28, 0x00,
+ 0x31, 0x02, 0xA0, 0x02, 0x2A, 0x00, 0x97, 0x02,
+ 0x2E, 0x03, 0x2C, 0x00, 0xFD, 0x02, 0xD9, 0x03,
+ 0x23, 0x00, 0xCD, 0xFF, 0xA1, 0x01, 0x23, 0x00,
+ 0x67, 0xFF, 0xA1, 0x01, 0x23, 0x00, 0x01, 0xFF,
+ 0xA1, 0x01, 0x23, 0x00, 0x9B, 0xFE, 0xA1, 0x01,
+ 0x26, 0x00, 0x35, 0xFE, 0x2B, 0x02, 0x28, 0x00,
+ 0xCF, 0xFD, 0xA0, 0x02, 0x2A, 0x00, 0x69, 0xFD,
+ 0x2E, 0x03, 0x2C, 0x00, 0x03, 0xFD, 0xD9, 0x03,
+ 0x25, 0x00, 0x33, 0x00, 0xFD, 0x01, 0x25, 0x00,
+ 0x99, 0x00, 0xFD, 0x01, 0x25, 0x00, 0xFF, 0x00,
+ 0xFD, 0x01, 0x25, 0x00, 0x65, 0x01, 0xFD, 0x01,
+ 0x28, 0x00, 0xCB, 0x01, 0xA6, 0x02, 0x2A, 0x00,
+ 0x31, 0x02, 0x35, 0x03, 0x2C, 0x00, 0x97, 0x02,
+ 0xE3, 0x03, 0x2E, 0x00, 0xFD, 0x02, 0xB4, 0x04,
+ 0x25, 0x00, 0xCD, 0xFF, 0xFD, 0x01, 0x25, 0x00,
+ 0x67, 0xFF, 0xFD, 0x01, 0x25, 0x00, 0x01, 0xFF,
+ 0xFD, 0x01, 0x25, 0x00, 0x9B, 0xFE, 0xFD, 0x01,
+ 0x28, 0x00, 0x35, 0xFE, 0xA6, 0x02, 0x2A, 0x00,
+ 0xCF, 0xFD, 0x35, 0x03, 0x2C, 0x00, 0x69, 0xFD,
+ 0xE3, 0x03, 0x2E, 0x00, 0x03, 0xFD, 0xB4, 0x04,
+ 0x27, 0x00, 0x33, 0x00, 0x5A, 0x02, 0x27, 0x00,
+ 0x99, 0x00, 0x5A, 0x02, 0x27, 0x00, 0xFF, 0x00,
+ 0x5A, 0x02, 0x27, 0x00, 0x65, 0x01, 0x5A, 0x02,
+ 0x2A, 0x00, 0xCB, 0x01, 0x22, 0x03, 0x2C, 0x00,
+ 0x31, 0x02, 0xCB, 0x03, 0x2E, 0x00, 0x97, 0x02,
+ 0x98, 0x04, 0x30, 0x00, 0xFD, 0x02, 0x8F, 0x05,
+ 0x27, 0x00, 0xCD, 0xFF, 0x5A, 0x02, 0x27, 0x00,
+ 0x67, 0xFF, 0x5A, 0x02, 0x27, 0x00, 0x01, 0xFF,
+ 0x5A, 0x02, 0x27, 0x00, 0x9B, 0xFE, 0x5A, 0x02,
+ 0x2A, 0x00, 0x35, 0xFE, 0x22, 0x03, 0x2C, 0x00,
+ 0xCF, 0xFD, 0xCB, 0x03, 0x2E, 0x00, 0x69, 0xFD,
+ 0x98, 0x04, 0x30, 0x00, 0x03, 0xFD, 0x8F, 0x05,
+ 0x29, 0x00, 0x33, 0x00, 0xB6, 0x02, 0x29, 0x00,
+ 0x99, 0x00, 0xB6, 0x02, 0x29, 0x00, 0xFF, 0x00,
+ 0xB6, 0x02, 0x29, 0x00, 0x65, 0x01, 0xB6, 0x02,
+ 0x2C, 0x00, 0xCB, 0x01, 0x9D, 0x03, 0x2E, 0x00,
+ 0x31, 0x02, 0x60, 0x04, 0x30, 0x00, 0x97, 0x02,
+ 0x4D, 0x05, 0x30, 0x00, 0xFD, 0x02, 0x6A, 0x06,
+ 0x29, 0x00, 0xCD, 0xFF, 0xB6, 0x02, 0x29, 0x00,
+ 0x67, 0xFF, 0xB6, 0x02, 0x29, 0x00, 0x01, 0xFF,
+ 0xB6, 0x02, 0x29, 0x00, 0x9B, 0xFE, 0xB6, 0x02,
+ 0x2C, 0x00, 0x35, 0xFE, 0x9D, 0x03, 0x2E, 0x00,
+ 0xCF, 0xFD, 0x60, 0x04, 0x30, 0x00, 0x69, 0xFD,
+ 0x4D, 0x05, 0x30, 0x00, 0x03, 0xFD, 0x6A, 0x06,
+ 0x20, 0x00, 0x33, 0x00, 0xD2, 0xFF, 0x20, 0x00,
+ 0x99, 0x00, 0xD2, 0xFF, 0x20, 0x00, 0xFF, 0x00,
+ 0xD2, 0xFF, 0x20, 0x00, 0x65, 0x01, 0xD2, 0xFF,
+ 0x23, 0x00, 0xCB, 0x01, 0xC3, 0xFF, 0x25, 0x00,
+ 0x31, 0x02, 0xB6, 0xFF, 0x27, 0x00, 0x97, 0x02,
+ 0xA6, 0xFF, 0x29, 0x00, 0xFD, 0x02, 0x93, 0xFF,
+ 0x20, 0x00, 0xCD, 0xFF, 0xD2, 0xFF, 0x20, 0x00,
+ 0x67, 0xFF, 0xD2, 0xFF, 0x20, 0x00, 0x01, 0xFF,
+ 0xD2, 0xFF, 0x20, 0x00, 0x9B, 0xFE, 0xD2, 0xFF,
+ 0x23, 0x00, 0x35, 0xFE, 0xC3, 0xFF, 0x25, 0x00,
+ 0xCF, 0xFD, 0xB6, 0xFF, 0x27, 0x00, 0x69, 0xFD,
+ 0xA6, 0xFF, 0x29, 0x00, 0x03, 0xFD, 0x93, 0xFF,
+ 0x20, 0x00, 0x33, 0x00, 0x76, 0xFF, 0x20, 0x00,
+ 0x99, 0x00, 0x76, 0xFF, 0x20, 0x00, 0xFF, 0x00,
+ 0x76, 0xFF, 0x20, 0x00, 0x65, 0x01, 0x76, 0xFF,
+ 0x23, 0x00, 0xCB, 0x01, 0x48, 0xFF, 0x25, 0x00,
+ 0x31, 0x02, 0x21, 0xFF, 0x27, 0x00, 0x97, 0x02,
+ 0xF1, 0xFE, 0x29, 0x00, 0xFD, 0x02, 0xB8, 0xFE,
+ 0x20, 0x00, 0xCD, 0xFF, 0x76, 0xFF, 0x20, 0x00,
+ 0x67, 0xFF, 0x76, 0xFF, 0x20, 0x00, 0x01, 0xFF,
+ 0x76, 0xFF, 0x20, 0x00, 0x9B, 0xFE, 0x76, 0xFF,
+ 0x23, 0x00, 0x35, 0xFE, 0x48, 0xFF, 0x25, 0x00,
+ 0xCF, 0xFD, 0x21, 0xFF, 0x27, 0x00, 0x69, 0xFD,
+ 0xF1, 0xFE, 0x29, 0x00, 0x03, 0xFD, 0xB8, 0xFE,
+ 0x20, 0x00, 0x33, 0x00, 0x19, 0xFF, 0x20, 0x00,
+ 0x99, 0x00, 0x19, 0xFF, 0x20, 0x00, 0xFF, 0x00,
+ 0x19, 0xFF, 0x20, 0x00, 0x65, 0x01, 0x19, 0xFF,
+ 0x23, 0x00, 0xCB, 0x01, 0xCC, 0xFE, 0x25, 0x00,
+ 0x31, 0x02, 0x8B, 0xFE, 0x27, 0x00, 0x97, 0x02,
+ 0x3C, 0xFE, 0x29, 0x00, 0xFD, 0x02, 0xDD, 0xFD,
+ 0x20, 0x00, 0xCD, 0xFF, 0x19, 0xFF, 0x20, 0x00,
+ 0x67, 0xFF, 0x19, 0xFF, 0x20, 0x00, 0x01, 0xFF,
+ 0x19, 0xFF, 0x20, 0x00, 0x9B, 0xFE, 0x19, 0xFF,
+ 0x23, 0x00, 0x35, 0xFE, 0xCC, 0xFE, 0x25, 0x00,
+ 0xCF, 0xFD, 0x8B, 0xFE, 0x27, 0x00, 0x69, 0xFD,
+ 0x3C, 0xFE, 0x29, 0x00, 0x03, 0xFD, 0xDD, 0xFD,
+ 0x20, 0x00, 0x33, 0x00, 0xBD, 0xFE, 0x20, 0x00,
+ 0x99, 0x00, 0xBD, 0xFE, 0x20, 0x00, 0xFF, 0x00,
+ 0xBD, 0xFE, 0x20, 0x00, 0x65, 0x01, 0xBD, 0xFE,
+ 0x23, 0x00, 0xCB, 0x01, 0x51, 0xFE, 0x25, 0x00,
+ 0x31, 0x02, 0xF6, 0xFD, 0x27, 0x00, 0x97, 0x02,
+ 0x87, 0xFD, 0x29, 0x00, 0xFD, 0x02, 0x02, 0xFD,
+ 0x20, 0x00, 0xCD, 0xFF, 0xBD, 0xFE, 0x20, 0x00,
+ 0x67, 0xFF, 0xBD, 0xFE, 0x20, 0x00, 0x01, 0xFF,
+ 0xBD, 0xFE, 0x20, 0x00, 0x9B, 0xFE, 0xBD, 0xFE,
+ 0x23, 0x00, 0x35, 0xFE, 0x51, 0xFE, 0x25, 0x00,
+ 0xCF, 0xFD, 0xF6, 0xFD, 0x27, 0x00, 0x69, 0xFD,
+ 0x87, 0xFD, 0x29, 0x00, 0x03, 0xFD, 0x02, 0xFD,
+ 0x23, 0x00, 0x33, 0x00, 0x5F, 0xFE, 0x23, 0x00,
+ 0x99, 0x00, 0x5F, 0xFE, 0x23, 0x00, 0xFF, 0x00,
+ 0x5F, 0xFE, 0x23, 0x00, 0x65, 0x01, 0x5F, 0xFE,
+ 0x26, 0x00, 0xCB, 0x01, 0xD5, 0xFD, 0x28, 0x00,
+ 0x31, 0x02, 0x60, 0xFD, 0x2A, 0x00, 0x97, 0x02,
+ 0xD2, 0xFC, 0x2C, 0x00, 0xFD, 0x02, 0x27, 0xFC,
+ 0x23, 0x00, 0xCD, 0xFF, 0x5F, 0xFE, 0x23, 0x00,
+ 0x67, 0xFF, 0x5F, 0xFE, 0x23, 0x00, 0x01, 0xFF,
+ 0x5F, 0xFE, 0x23, 0x00, 0x9B, 0xFE, 0x5F, 0xFE,
+ 0x26, 0x00, 0x35, 0xFE, 0xD5, 0xFD, 0x28, 0x00,
+ 0xCF, 0xFD, 0x60, 0xFD, 0x2A, 0x00, 0x69, 0xFD,
+ 0xD2, 0xFC, 0x2C, 0x00, 0x03, 0xFD, 0x27, 0xFC,
+ 0x25, 0x00, 0x33, 0x00, 0x03, 0xFE, 0x25, 0x00,
+ 0x99, 0x00, 0x03, 0xFE, 0x25, 0x00, 0xFF, 0x00,
+ 0x03, 0xFE, 0x25, 0x00, 0x65, 0x01, 0x03, 0xFE,
+ 0x28, 0x00, 0xCB, 0x01, 0x5A, 0xFD, 0x2A, 0x00,
+ 0x31, 0x02, 0xCB, 0xFC, 0x2C, 0x00, 0x97, 0x02,
+ 0x1D, 0xFC, 0x2E, 0x00, 0xFD, 0x02, 0x4C, 0xFB,
+ 0x25, 0x00, 0xCD, 0xFF, 0x03, 0xFE, 0x25, 0x00,
+ 0x67, 0xFF, 0x03, 0xFE, 0x25, 0x00, 0x01, 0xFF,
+ 0x03, 0xFE, 0x25, 0x00, 0x9B, 0xFE, 0x03, 0xFE,
+ 0x28, 0x00, 0x35, 0xFE, 0x5A, 0xFD, 0x2A, 0x00,
+ 0xCF, 0xFD, 0xCB, 0xFC, 0x2C, 0x00, 0x69, 0xFD,
+ 0x1D, 0xFC, 0x2E, 0x00, 0x03, 0xFD, 0x4C, 0xFB,
+ 0x27, 0x00, 0x33, 0x00, 0xA6, 0xFD, 0x27, 0x00,
+ 0x99, 0x00, 0xA6, 0xFD, 0x27, 0x00, 0xFF, 0x00,
+ 0xA6, 0xFD, 0x27, 0x00, 0x65, 0x01, 0xA6, 0xFD,
+ 0x2A, 0x00, 0xCB, 0x01, 0xDE, 0xFC, 0x2C, 0x00,
+ 0x31, 0x02, 0x35, 0xFC, 0x2E, 0x00, 0x97, 0x02,
+ 0x68, 0xFB, 0x30, 0x00, 0xFD, 0x02, 0x71, 0xFA,
+ 0x27, 0x00, 0xCD, 0xFF, 0xA6, 0xFD, 0x27, 0x00,
+ 0x67, 0xFF, 0xA6, 0xFD, 0x27, 0x00, 0x01, 0xFF,
+ 0xA6, 0xFD, 0x27, 0x00, 0x9B, 0xFE, 0xA6, 0xFD,
+ 0x2A, 0x00, 0x35, 0xFE, 0xDE, 0xFC, 0x2C, 0x00,
+ 0xCF, 0xFD, 0x35, 0xFC, 0x2E, 0x00, 0x69, 0xFD,
+ 0x68, 0xFB, 0x30, 0x00, 0x03, 0xFD, 0x71, 0xFA,
+ 0x29, 0x00, 0x33, 0x00, 0x4A, 0xFD, 0x29, 0x00,
+ 0x99, 0x00, 0x4A, 0xFD, 0x29, 0x00, 0xFF, 0x00,
+ 0x4A, 0xFD, 0x29, 0x00, 0x65, 0x01, 0x4A, 0xFD,
+ 0x2C, 0x00, 0xCB, 0x01, 0x63, 0xFC, 0x2E, 0x00,
+ 0x31, 0x02, 0xA0, 0xFB, 0x30, 0x00, 0x97, 0x02,
+ 0xB3, 0xFA, 0x30, 0x00, 0xFD, 0x02, 0x96, 0xF9,
+ 0x29, 0x00, 0xCD, 0xFF, 0x4A, 0xFD, 0x29, 0x00,
+ 0x67, 0xFF, 0x4A, 0xFD, 0x29, 0x00, 0x01, 0xFF,
+ 0x4A, 0xFD, 0x29, 0x00, 0x9B, 0xFE, 0x4A, 0xFD,
+ 0x2C, 0x00, 0x35, 0xFE, 0x63, 0xFC, 0x2E, 0x00,
+ 0xCF, 0xFD, 0xA0, 0xFB, 0x30, 0x00, 0x69, 0xFD,
+ 0xB3, 0xFA, 0x30, 0x00, 0x03, 0xFD, 0x96, 0xF9,
+ 0x21, 0x00, 0x38, 0x00, 0x33, 0x00, 0x21, 0x00,
+ 0xA8, 0x00, 0x33, 0x00, 0x21, 0x00, 0x18, 0x01,
+ 0x33, 0x00, 0x21, 0x00, 0x88, 0x01, 0x33, 0x00,
+ 0x24, 0x00, 0xF9, 0x01, 0x44, 0x00, 0x26, 0x00,
+ 0x69, 0x02, 0x52, 0x00, 0x28, 0x00, 0xD9, 0x02,
+ 0x63, 0x00, 0x2A, 0x00, 0x49, 0x03, 0x78, 0x00,
+ 0x21, 0x00, 0xC8, 0xFF, 0x33, 0x00, 0x21, 0x00,
+ 0x58, 0xFF, 0x33, 0x00, 0x21, 0x00, 0xE8, 0xFE,
+ 0x33, 0x00, 0x21, 0x00, 0x78, 0xFE, 0x33, 0x00,
+ 0x24, 0x00, 0x07, 0xFE, 0x44, 0x00, 0x26, 0x00,
+ 0x97, 0xFD, 0x52, 0x00, 0x28, 0x00, 0x27, 0xFD,
+ 0x63, 0x00, 0x2A, 0x00, 0xB7, 0xFC, 0x78, 0x00,
+ 0x21, 0x00, 0x38, 0x00, 0x99, 0x00, 0x21, 0x00,
+ 0xA8, 0x00, 0x99, 0x00, 0x21, 0x00, 0x18, 0x01,
+ 0x99, 0x00, 0x21, 0x00, 0x88, 0x01, 0x99, 0x00,
+ 0x24, 0x00, 0xF9, 0x01, 0xCC, 0x00, 0x26, 0x00,
+ 0x69, 0x02, 0xF6, 0x00, 0x28, 0x00, 0xD9, 0x02,
+ 0x2A, 0x01, 0x2A, 0x00, 0x49, 0x03, 0x68, 0x01,
+ 0x21, 0x00, 0xC8, 0xFF, 0x99, 0x00, 0x21, 0x00,
+ 0x58, 0xFF, 0x99, 0x00, 0x21, 0x00, 0xE8, 0xFE,
+ 0x99, 0x00, 0x21, 0x00, 0x78, 0xFE, 0x99, 0x00,
+ 0x24, 0x00, 0x07, 0xFE, 0xCC, 0x00, 0x26, 0x00,
+ 0x97, 0xFD, 0xF6, 0x00, 0x28, 0x00, 0x27, 0xFD,
+ 0x2A, 0x01, 0x2A, 0x00, 0xB7, 0xFC, 0x68, 0x01,
+ 0x21, 0x00, 0x38, 0x00, 0xFF, 0x00, 0x21, 0x00,
+ 0xA8, 0x00, 0xFF, 0x00, 0x21, 0x00, 0x18, 0x01,
+ 0xFF, 0x00, 0x21, 0x00, 0x88, 0x01, 0xFF, 0x00,
+ 0x24, 0x00, 0xF9, 0x01, 0x54, 0x01, 0x26, 0x00,
+ 0x69, 0x02, 0x9B, 0x01, 0x28, 0x00, 0xD9, 0x02,
+ 0xF1, 0x01, 0x2A, 0x00, 0x49, 0x03, 0x59, 0x02,
+ 0x21, 0x00, 0xC8, 0xFF, 0xFF, 0x00, 0x21, 0x00,
+ 0x58, 0xFF, 0xFF, 0x00, 0x21, 0x00, 0xE8, 0xFE,
+ 0xFF, 0x00, 0x21, 0x00, 0x78, 0xFE, 0xFF, 0x00,
+ 0x24, 0x00, 0x07, 0xFE, 0x54, 0x01, 0x26, 0x00,
+ 0x97, 0xFD, 0x9B, 0x01, 0x28, 0x00, 0x27, 0xFD,
+ 0xF1, 0x01, 0x2A, 0x00, 0xB7, 0xFC, 0x59, 0x02,
+ 0x21, 0x00, 0x38, 0x00, 0x65, 0x01, 0x21, 0x00,
+ 0xA8, 0x00, 0x65, 0x01, 0x21, 0x00, 0x18, 0x01,
+ 0x65, 0x01, 0x21, 0x00, 0x88, 0x01, 0x65, 0x01,
+ 0x24, 0x00, 0xF9, 0x01, 0xDC, 0x01, 0x26, 0x00,
+ 0x69, 0x02, 0x3F, 0x02, 0x28, 0x00, 0xD9, 0x02,
+ 0xB8, 0x02, 0x2A, 0x00, 0x49, 0x03, 0x49, 0x03,
+ 0x21, 0x00, 0xC8, 0xFF, 0x65, 0x01, 0x21, 0x00,
+ 0x58, 0xFF, 0x65, 0x01, 0x21, 0x00, 0xE8, 0xFE,
+ 0x65, 0x01, 0x21, 0x00, 0x78, 0xFE, 0x65, 0x01,
+ 0x24, 0x00, 0x07, 0xFE, 0xDC, 0x01, 0x26, 0x00,
+ 0x97, 0xFD, 0x3F, 0x02, 0x28, 0x00, 0x27, 0xFD,
+ 0xB8, 0x02, 0x2A, 0x00, 0xB7, 0xFC, 0x49, 0x03,
+ 0x24, 0x00, 0x38, 0x00, 0xCB, 0x01, 0x24, 0x00,
+ 0xA8, 0x00, 0xCB, 0x01, 0x24, 0x00, 0x18, 0x01,
+ 0xCB, 0x01, 0x24, 0x00, 0x88, 0x01, 0xCB, 0x01,
+ 0x27, 0x00, 0xF9, 0x01, 0x64, 0x02, 0x29, 0x00,
+ 0x69, 0x02, 0xE4, 0x02, 0x2B, 0x00, 0xD9, 0x02,
+ 0x7F, 0x03, 0x2D, 0x00, 0x49, 0x03, 0x3B, 0x04,
+ 0x24, 0x00, 0xC8, 0xFF, 0xCB, 0x01, 0x24, 0x00,
+ 0x58, 0xFF, 0xCB, 0x01, 0x24, 0x00, 0xE8, 0xFE,
+ 0xCB, 0x01, 0x24, 0x00, 0x78, 0xFE, 0xCB, 0x01,
+ 0x27, 0x00, 0x07, 0xFE, 0x64, 0x02, 0x29, 0x00,
+ 0x97, 0xFD, 0xE4, 0x02, 0x2B, 0x00, 0x27, 0xFD,
+ 0x7F, 0x03, 0x2D, 0x00, 0xB7, 0xFC, 0x3B, 0x04,
+ 0x26, 0x00, 0x38, 0x00, 0x31, 0x02, 0x26, 0x00,
+ 0xA8, 0x00, 0x31, 0x02, 0x26, 0x00, 0x18, 0x01,
+ 0x31, 0x02, 0x26, 0x00, 0x88, 0x01, 0x31, 0x02,
+ 0x29, 0x00, 0xF9, 0x01, 0xEC, 0x02, 0x2B, 0x00,
+ 0x69, 0x02, 0x88, 0x03, 0x2D, 0x00, 0xD9, 0x02,
+ 0x46, 0x04, 0x2F, 0x00, 0x49, 0x03, 0x2B, 0x05,
+ 0x26, 0x00, 0xC8, 0xFF, 0x31, 0x02, 0x26, 0x00,
+ 0x58, 0xFF, 0x31, 0x02, 0x26, 0x00, 0xE8, 0xFE,
+ 0x31, 0x02, 0x26, 0x00, 0x78, 0xFE, 0x31, 0x02,
+ 0x29, 0x00, 0x07, 0xFE, 0xEC, 0x02, 0x2B, 0x00,
+ 0x97, 0xFD, 0x88, 0x03, 0x2D, 0x00, 0x27, 0xFD,
+ 0x46, 0x04, 0x2F, 0x00, 0xB7, 0xFC, 0x2B, 0x05,
+ 0x28, 0x00, 0x38, 0x00, 0x97, 0x02, 0x28, 0x00,
+ 0xA8, 0x00, 0x97, 0x02, 0x28, 0x00, 0x18, 0x01,
+ 0x97, 0x02, 0x28, 0x00, 0x88, 0x01, 0x97, 0x02,
+ 0x2B, 0x00, 0xF9, 0x01, 0x74, 0x03, 0x2D, 0x00,
+ 0x69, 0x02, 0x2D, 0x04, 0x2F, 0x00, 0xD9, 0x02,
+ 0x0D, 0x05, 0x30, 0x00, 0x49, 0x03, 0x1C, 0x06,
+ 0x28, 0x00, 0xC8, 0xFF, 0x97, 0x02, 0x28, 0x00,
+ 0x58, 0xFF, 0x97, 0x02, 0x28, 0x00, 0xE8, 0xFE,
+ 0x97, 0x02, 0x28, 0x00, 0x78, 0xFE, 0x97, 0x02,
+ 0x2B, 0x00, 0x07, 0xFE, 0x74, 0x03, 0x2D, 0x00,
+ 0x97, 0xFD, 0x2D, 0x04, 0x2F, 0x00, 0x27, 0xFD,
+ 0x0D, 0x05, 0x30, 0x00, 0xB7, 0xFC, 0x1C, 0x06,
+ 0x2A, 0x00, 0x38, 0x00, 0xFD, 0x02, 0x2A, 0x00,
+ 0xA8, 0x00, 0xFD, 0x02, 0x2A, 0x00, 0x18, 0x01,
+ 0xFD, 0x02, 0x2A, 0x00, 0x88, 0x01, 0xFD, 0x02,
+ 0x2D, 0x00, 0xF9, 0x01, 0xFC, 0x03, 0x2F, 0x00,
+ 0x69, 0x02, 0xD1, 0x04, 0x30, 0x00, 0xD9, 0x02,
+ 0xD4, 0x05, 0x30, 0x00, 0x49, 0x03, 0x0C, 0x07,
+ 0x2A, 0x00, 0xC8, 0xFF, 0xFD, 0x02, 0x2A, 0x00,
+ 0x58, 0xFF, 0xFD, 0x02, 0x2A, 0x00, 0xE8, 0xFE,
+ 0xFD, 0x02, 0x2A, 0x00, 0x78, 0xFE, 0xFD, 0x02,
+ 0x2D, 0x00, 0x07, 0xFE, 0xFC, 0x03, 0x2F, 0x00,
+ 0x97, 0xFD, 0xD1, 0x04, 0x30, 0x00, 0x27, 0xFD,
+ 0xD4, 0x05, 0x30, 0x00, 0xB7, 0xFC, 0x0C, 0x07,
+ 0x21, 0x00, 0x38, 0x00, 0xCD, 0xFF, 0x21, 0x00,
+ 0xA8, 0x00, 0xCD, 0xFF, 0x21, 0x00, 0x18, 0x01,
+ 0xCD, 0xFF, 0x21, 0x00, 0x88, 0x01, 0xCD, 0xFF,
+ 0x24, 0x00, 0xF9, 0x01, 0xBC, 0xFF, 0x26, 0x00,
+ 0x69, 0x02, 0xAE, 0xFF, 0x28, 0x00, 0xD9, 0x02,
+ 0x9D, 0xFF, 0x2A, 0x00, 0x49, 0x03, 0x88, 0xFF,
+ 0x21, 0x00, 0xC8, 0xFF, 0xCD, 0xFF, 0x21, 0x00,
+ 0x58, 0xFF, 0xCD, 0xFF, 0x21, 0x00, 0xE8, 0xFE,
+ 0xCD, 0xFF, 0x21, 0x00, 0x78, 0xFE, 0xCD, 0xFF,
+ 0x24, 0x00, 0x07, 0xFE, 0xBC, 0xFF, 0x26, 0x00,
+ 0x97, 0xFD, 0xAE, 0xFF, 0x28, 0x00, 0x27, 0xFD,
+ 0x9D, 0xFF, 0x2A, 0x00, 0xB7, 0xFC, 0x88, 0xFF,
+ 0x21, 0x00, 0x38, 0x00, 0x67, 0xFF, 0x21, 0x00,
+ 0xA8, 0x00, 0x67, 0xFF, 0x21, 0x00, 0x18, 0x01,
+ 0x67, 0xFF, 0x21, 0x00, 0x88, 0x01, 0x67, 0xFF,
+ 0x24, 0x00, 0xF9, 0x01, 0x34, 0xFF, 0x26, 0x00,
+ 0x69, 0x02, 0x0A, 0xFF, 0x28, 0x00, 0xD9, 0x02,
+ 0xD6, 0xFE, 0x2A, 0x00, 0x49, 0x03, 0x98, 0xFE,
+ 0x21, 0x00, 0xC8, 0xFF, 0x67, 0xFF, 0x21, 0x00,
+ 0x58, 0xFF, 0x67, 0xFF, 0x21, 0x00, 0xE8, 0xFE,
+ 0x67, 0xFF, 0x21, 0x00, 0x78, 0xFE, 0x67, 0xFF,
+ 0x24, 0x00, 0x07, 0xFE, 0x34, 0xFF, 0x26, 0x00,
+ 0x97, 0xFD, 0x0A, 0xFF, 0x28, 0x00, 0x27, 0xFD,
+ 0xD6, 0xFE, 0x2A, 0x00, 0xB7, 0xFC, 0x98, 0xFE,
+ 0x21, 0x00, 0x38, 0x00, 0x01, 0xFF, 0x21, 0x00,
+ 0xA8, 0x00, 0x01, 0xFF, 0x21, 0x00, 0x18, 0x01,
+ 0x01, 0xFF, 0x21, 0x00, 0x88, 0x01, 0x01, 0xFF,
+ 0x24, 0x00, 0xF9, 0x01, 0xAC, 0xFE, 0x26, 0x00,
+ 0x69, 0x02, 0x65, 0xFE, 0x28, 0x00, 0xD9, 0x02,
+ 0x0F, 0xFE, 0x2A, 0x00, 0x49, 0x03, 0xA7, 0xFD,
+ 0x21, 0x00, 0xC8, 0xFF, 0x01, 0xFF, 0x21, 0x00,
+ 0x58, 0xFF, 0x01, 0xFF, 0x21, 0x00, 0xE8, 0xFE,
+ 0x01, 0xFF, 0x21, 0x00, 0x78, 0xFE, 0x01, 0xFF,
+ 0x24, 0x00, 0x07, 0xFE, 0xAC, 0xFE, 0x26, 0x00,
+ 0x97, 0xFD, 0x65, 0xFE, 0x28, 0x00, 0x27, 0xFD,
+ 0x0F, 0xFE, 0x2A, 0x00, 0xB7, 0xFC, 0xA7, 0xFD,
+ 0x21, 0x00, 0x38, 0x00, 0x9B, 0xFE, 0x21, 0x00,
+ 0xA8, 0x00, 0x9B, 0xFE, 0x21, 0x00, 0x18, 0x01,
+ 0x9B, 0xFE, 0x21, 0x00, 0x88, 0x01, 0x9B, 0xFE,
+ 0x24, 0x00, 0xF9, 0x01, 0x24, 0xFE, 0x26, 0x00,
+ 0x69, 0x02, 0xC1, 0xFD, 0x28, 0x00, 0xD9, 0x02,
+ 0x48, 0xFD, 0x2A, 0x00, 0x49, 0x03, 0xB7, 0xFC,
+ 0x21, 0x00, 0xC8, 0xFF, 0x9B, 0xFE, 0x21, 0x00,
+ 0x58, 0xFF, 0x9B, 0xFE, 0x21, 0x00, 0xE8, 0xFE,
+ 0x9B, 0xFE, 0x21, 0x00, 0x78, 0xFE, 0x9B, 0xFE,
+ 0x24, 0x00, 0x07, 0xFE, 0x24, 0xFE, 0x26, 0x00,
+ 0x97, 0xFD, 0xC1, 0xFD, 0x28, 0x00, 0x27, 0xFD,
+ 0x48, 0xFD, 0x2A, 0x00, 0xB7, 0xFC, 0xB7, 0xFC,
+ 0x24, 0x00, 0x38, 0x00, 0x35, 0xFE, 0x24, 0x00,
+ 0xA8, 0x00, 0x35, 0xFE, 0x24, 0x00, 0x18, 0x01,
+ 0x35, 0xFE, 0x24, 0x00, 0x88, 0x01, 0x35, 0xFE,
+ 0x27, 0x00, 0xF9, 0x01, 0x9C, 0xFD, 0x29, 0x00,
+ 0x69, 0x02, 0x1C, 0xFD, 0x2B, 0x00, 0xD9, 0x02,
+ 0x81, 0xFC, 0x2D, 0x00, 0x49, 0x03, 0xC5, 0xFB,
+ 0x24, 0x00, 0xC8, 0xFF, 0x35, 0xFE, 0x24, 0x00,
+ 0x58, 0xFF, 0x35, 0xFE, 0x24, 0x00, 0xE8, 0xFE,
+ 0x35, 0xFE, 0x24, 0x00, 0x78, 0xFE, 0x35, 0xFE,
+ 0x27, 0x00, 0x07, 0xFE, 0x9C, 0xFD, 0x29, 0x00,
+ 0x97, 0xFD, 0x1C, 0xFD, 0x2B, 0x00, 0x27, 0xFD,
+ 0x81, 0xFC, 0x2D, 0x00, 0xB7, 0xFC, 0xC5, 0xFB,
+ 0x26, 0x00, 0x38, 0x00, 0xCF, 0xFD, 0x26, 0x00,
+ 0xA8, 0x00, 0xCF, 0xFD, 0x26, 0x00, 0x18, 0x01,
+ 0xCF, 0xFD, 0x26, 0x00, 0x88, 0x01, 0xCF, 0xFD,
+ 0x29, 0x00, 0xF9, 0x01, 0x14, 0xFD, 0x2B, 0x00,
+ 0x69, 0x02, 0x78, 0xFC, 0x2D, 0x00, 0xD9, 0x02,
+ 0xBA, 0xFB, 0x2F, 0x00, 0x49, 0x03, 0xD5, 0xFA,
+ 0x26, 0x00, 0xC8, 0xFF, 0xCF, 0xFD, 0x26, 0x00,
+ 0x58, 0xFF, 0xCF, 0xFD, 0x26, 0x00, 0xE8, 0xFE,
+ 0xCF, 0xFD, 0x26, 0x00, 0x78, 0xFE, 0xCF, 0xFD,
+ 0x29, 0x00, 0x07, 0xFE, 0x14, 0xFD, 0x2B, 0x00,
+ 0x97, 0xFD, 0x78, 0xFC, 0x2D, 0x00, 0x27, 0xFD,
+ 0xBA, 0xFB, 0x2F, 0x00, 0xB7, 0xFC, 0xD5, 0xFA,
+ 0x28, 0x00, 0x38, 0x00, 0x69, 0xFD, 0x28, 0x00,
+ 0xA8, 0x00, 0x69, 0xFD, 0x28, 0x00, 0x18, 0x01,
+ 0x69, 0xFD, 0x28, 0x00, 0x88, 0x01, 0x69, 0xFD,
+ 0x2B, 0x00, 0xF9, 0x01, 0x8C, 0xFC, 0x2D, 0x00,
+ 0x69, 0x02, 0xD3, 0xFB, 0x2F, 0x00, 0xD9, 0x02,
+ 0xF3, 0xFA, 0x30, 0x00, 0x49, 0x03, 0xE4, 0xF9,
+ 0x28, 0x00, 0xC8, 0xFF, 0x69, 0xFD, 0x28, 0x00,
+ 0x58, 0xFF, 0x69, 0xFD, 0x28, 0x00, 0xE8, 0xFE,
+ 0x69, 0xFD, 0x28, 0x00, 0x78, 0xFE, 0x69, 0xFD,
+ 0x2B, 0x00, 0x07, 0xFE, 0x8C, 0xFC, 0x2D, 0x00,
+ 0x97, 0xFD, 0xD3, 0xFB, 0x2F, 0x00, 0x27, 0xFD,
+ 0xF3, 0xFA, 0x30, 0x00, 0xB7, 0xFC, 0xE4, 0xF9,
+ 0x2A, 0x00, 0x38, 0x00, 0x03, 0xFD, 0x2A, 0x00,
+ 0xA8, 0x00, 0x03, 0xFD, 0x2A, 0x00, 0x18, 0x01,
+ 0x03, 0xFD, 0x2A, 0x00, 0x88, 0x01, 0x03, 0xFD,
+ 0x2D, 0x00, 0xF9, 0x01, 0x04, 0xFC, 0x2F, 0x00,
+ 0x69, 0x02, 0x2F, 0xFB, 0x30, 0x00, 0xD9, 0x02,
+ 0x2C, 0xFA, 0x30, 0x00, 0x49, 0x03, 0xF4, 0xF8,
+ 0x2A, 0x00, 0xC8, 0xFF, 0x03, 0xFD, 0x2A, 0x00,
+ 0x58, 0xFF, 0x03, 0xFD, 0x2A, 0x00, 0xE8, 0xFE,
+ 0x03, 0xFD, 0x2A, 0x00, 0x78, 0xFE, 0x03, 0xFD,
+ 0x2D, 0x00, 0x07, 0xFE, 0x04, 0xFC, 0x2F, 0x00,
+ 0x97, 0xFD, 0x2F, 0xFB, 0x30, 0x00, 0x27, 0xFD,
+ 0x2C, 0xFA, 0x30, 0x00, 0xB7, 0xFC, 0xF4, 0xF8,
+ 0x22, 0x00, 0x3D, 0x00, 0x38, 0x00, 0x22, 0x00,
+ 0xB8, 0x00, 0x38, 0x00, 0x22, 0x00, 0x34, 0x01,
+ 0x38, 0x00, 0x22, 0x00, 0xAF, 0x01, 0x38, 0x00,
+ 0x25, 0x00, 0x2B, 0x02, 0x4A, 0x00, 0x27, 0x00,
+ 0xA6, 0x02, 0x5A, 0x00, 0x29, 0x00, 0x22, 0x03,
+ 0x6D, 0x00, 0x2B, 0x00, 0x9D, 0x03, 0x84, 0x00,
+ 0x22, 0x00, 0xC3, 0xFF, 0x38, 0x00, 0x22, 0x00,
+ 0x48, 0xFF, 0x38, 0x00, 0x22, 0x00, 0xCC, 0xFE,
+ 0x38, 0x00, 0x22, 0x00, 0x51, 0xFE, 0x38, 0x00,
+ 0x25, 0x00, 0xD5, 0xFD, 0x4A, 0x00, 0x27, 0x00,
+ 0x5A, 0xFD, 0x5A, 0x00, 0x29, 0x00, 0xDE, 0xFC,
+ 0x6D, 0x00, 0x2B, 0x00, 0x63, 0xFC, 0x84, 0x00,
+ 0x22, 0x00, 0x3D, 0x00, 0xA8, 0x00, 0x22, 0x00,
+ 0xB8, 0x00, 0xA8, 0x00, 0x22, 0x00, 0x34, 0x01,
+ 0xA8, 0x00, 0x22, 0x00, 0xAF, 0x01, 0xA8, 0x00,
+ 0x25, 0x00, 0x2B, 0x02, 0xDF, 0x00, 0x27, 0x00,
+ 0xA6, 0x02, 0x0F, 0x01, 0x29, 0x00, 0x22, 0x03,
+ 0x48, 0x01, 0x2B, 0x00, 0x9D, 0x03, 0x8D, 0x01,
+ 0x22, 0x00, 0xC3, 0xFF, 0xA8, 0x00, 0x22, 0x00,
+ 0x48, 0xFF, 0xA8, 0x00, 0x22, 0x00, 0xCC, 0xFE,
+ 0xA8, 0x00, 0x22, 0x00, 0x51, 0xFE, 0xA8, 0x00,
+ 0x25, 0x00, 0xD5, 0xFD, 0xDF, 0x00, 0x27, 0x00,
+ 0x5A, 0xFD, 0x0F, 0x01, 0x29, 0x00, 0xDE, 0xFC,
+ 0x48, 0x01, 0x2B, 0x00, 0x63, 0xFC, 0x8D, 0x01,
+ 0x22, 0x00, 0x3D, 0x00, 0x18, 0x01, 0x22, 0x00,
+ 0xB8, 0x00, 0x18, 0x01, 0x22, 0x00, 0x34, 0x01,
+ 0x18, 0x01, 0x22, 0x00, 0xAF, 0x01, 0x18, 0x01,
+ 0x25, 0x00, 0x2B, 0x02, 0x75, 0x01, 0x27, 0x00,
+ 0xA6, 0x02, 0xC4, 0x01, 0x29, 0x00, 0x22, 0x03,
+ 0x23, 0x02, 0x2B, 0x00, 0x9D, 0x03, 0x96, 0x02,
+ 0x22, 0x00, 0xC3, 0xFF, 0x18, 0x01, 0x22, 0x00,
+ 0x48, 0xFF, 0x18, 0x01, 0x22, 0x00, 0xCC, 0xFE,
+ 0x18, 0x01, 0x22, 0x00, 0x51, 0xFE, 0x18, 0x01,
+ 0x25, 0x00, 0xD5, 0xFD, 0x75, 0x01, 0x27, 0x00,
+ 0x5A, 0xFD, 0xC4, 0x01, 0x29, 0x00, 0xDE, 0xFC,
+ 0x23, 0x02, 0x2B, 0x00, 0x63, 0xFC, 0x96, 0x02,
+ 0x22, 0x00, 0x3D, 0x00, 0x88, 0x01, 0x22, 0x00,
+ 0xB8, 0x00, 0x88, 0x01, 0x22, 0x00, 0x34, 0x01,
+ 0x88, 0x01, 0x22, 0x00, 0xAF, 0x01, 0x88, 0x01,
+ 0x25, 0x00, 0x2B, 0x02, 0x0A, 0x02, 0x27, 0x00,
+ 0xA6, 0x02, 0x79, 0x02, 0x29, 0x00, 0x22, 0x03,
+ 0xFE, 0x02, 0x2B, 0x00, 0x9D, 0x03, 0x9F, 0x03,
+ 0x22, 0x00, 0xC3, 0xFF, 0x88, 0x01, 0x22, 0x00,
+ 0x48, 0xFF, 0x88, 0x01, 0x22, 0x00, 0xCC, 0xFE,
+ 0x88, 0x01, 0x22, 0x00, 0x51, 0xFE, 0x88, 0x01,
+ 0x25, 0x00, 0xD5, 0xFD, 0x0A, 0x02, 0x27, 0x00,
+ 0x5A, 0xFD, 0x79, 0x02, 0x29, 0x00, 0xDE, 0xFC,
+ 0xFE, 0x02, 0x2B, 0x00, 0x63, 0xFC, 0x9F, 0x03,
+ 0x25, 0x00, 0x3D, 0x00, 0xF9, 0x01, 0x25, 0x00,
+ 0xB8, 0x00, 0xF9, 0x01, 0x25, 0x00, 0x34, 0x01,
+ 0xF9, 0x01, 0x25, 0x00, 0xAF, 0x01, 0xF9, 0x01,
+ 0x28, 0x00, 0x2B, 0x02, 0xA0, 0x02, 0x2A, 0x00,
+ 0xA6, 0x02, 0x2E, 0x03, 0x2C, 0x00, 0x22, 0x03,
+ 0xD9, 0x03, 0x2E, 0x00, 0x9D, 0x03, 0xA8, 0x04,
+ 0x25, 0x00, 0xC3, 0xFF, 0xF9, 0x01, 0x25, 0x00,
+ 0x48, 0xFF, 0xF9, 0x01, 0x25, 0x00, 0xCC, 0xFE,
+ 0xF9, 0x01, 0x25, 0x00, 0x51, 0xFE, 0xF9, 0x01,
+ 0x28, 0x00, 0xD5, 0xFD, 0xA0, 0x02, 0x2A, 0x00,
+ 0x5A, 0xFD, 0x2E, 0x03, 0x2C, 0x00, 0xDE, 0xFC,
+ 0xD9, 0x03, 0x2E, 0x00, 0x63, 0xFC, 0xA8, 0x04,
+ 0x27, 0x00, 0x3D, 0x00, 0x69, 0x02, 0x27, 0x00,
+ 0xB8, 0x00, 0x69, 0x02, 0x27, 0x00, 0x34, 0x01,
+ 0x69, 0x02, 0x27, 0x00, 0xAF, 0x01, 0x69, 0x02,
+ 0x2A, 0x00, 0x2B, 0x02, 0x35, 0x03, 0x2C, 0x00,
+ 0xA6, 0x02, 0xE3, 0x03, 0x2E, 0x00, 0x22, 0x03,
+ 0xB4, 0x04, 0x30, 0x00, 0x9D, 0x03, 0xB1, 0x05,
+ 0x27, 0x00, 0xC3, 0xFF, 0x69, 0x02, 0x27, 0x00,
+ 0x48, 0xFF, 0x69, 0x02, 0x27, 0x00, 0xCC, 0xFE,
+ 0x69, 0x02, 0x27, 0x00, 0x51, 0xFE, 0x69, 0x02,
+ 0x2A, 0x00, 0xD5, 0xFD, 0x35, 0x03, 0x2C, 0x00,
+ 0x5A, 0xFD, 0xE3, 0x03, 0x2E, 0x00, 0xDE, 0xFC,
+ 0xB4, 0x04, 0x30, 0x00, 0x63, 0xFC, 0xB1, 0x05,
+ 0x29, 0x00, 0x3D, 0x00, 0xD9, 0x02, 0x29, 0x00,
+ 0xB8, 0x00, 0xD9, 0x02, 0x29, 0x00, 0x34, 0x01,
+ 0xD9, 0x02, 0x29, 0x00, 0xAF, 0x01, 0xD9, 0x02,
+ 0x2C, 0x00, 0x2B, 0x02, 0xCB, 0x03, 0x2E, 0x00,
+ 0xA6, 0x02, 0x98, 0x04, 0x30, 0x00, 0x22, 0x03,
+ 0x8F, 0x05, 0x30, 0x00, 0x9D, 0x03, 0xBA, 0x06,
+ 0x29, 0x00, 0xC3, 0xFF, 0xD9, 0x02, 0x29, 0x00,
+ 0x48, 0xFF, 0xD9, 0x02, 0x29, 0x00, 0xCC, 0xFE,
+ 0xD9, 0x02, 0x29, 0x00, 0x51, 0xFE, 0xD9, 0x02,
+ 0x2C, 0x00, 0xD5, 0xFD, 0xCB, 0x03, 0x2E, 0x00,
+ 0x5A, 0xFD, 0x98, 0x04, 0x30, 0x00, 0xDE, 0xFC,
+ 0x8F, 0x05, 0x30, 0x00, 0x63, 0xFC, 0xBA, 0x06,
+ 0x2B, 0x00, 0x3D, 0x00, 0x49, 0x03, 0x2B, 0x00,
+ 0xB8, 0x00, 0x49, 0x03, 0x2B, 0x00, 0x34, 0x01,
+ 0x49, 0x03, 0x2B, 0x00, 0xAF, 0x01, 0x49, 0x03,
+ 0x2E, 0x00, 0x2B, 0x02, 0x60, 0x04, 0x30, 0x00,
+ 0xA6, 0x02, 0x4D, 0x05, 0x30, 0x00, 0x22, 0x03,
+ 0x6A, 0x06, 0x30, 0x00, 0x9D, 0x03, 0xC3, 0x07,
+ 0x2B, 0x00, 0xC3, 0xFF, 0x49, 0x03, 0x2B, 0x00,
+ 0x48, 0xFF, 0x49, 0x03, 0x2B, 0x00, 0xCC, 0xFE,
+ 0x49, 0x03, 0x2B, 0x00, 0x51, 0xFE, 0x49, 0x03,
+ 0x2E, 0x00, 0xD5, 0xFD, 0x60, 0x04, 0x30, 0x00,
+ 0x5A, 0xFD, 0x4D, 0x05, 0x30, 0x00, 0xDE, 0xFC,
+ 0x6A, 0x06, 0x30, 0x00, 0x63, 0xFC, 0xC3, 0x07,
+ 0x22, 0x00, 0x3D, 0x00, 0xC8, 0xFF, 0x22, 0x00,
+ 0xB8, 0x00, 0xC8, 0xFF, 0x22, 0x00, 0x34, 0x01,
+ 0xC8, 0xFF, 0x22, 0x00, 0xAF, 0x01, 0xC8, 0xFF,
+ 0x25, 0x00, 0x2B, 0x02, 0xB6, 0xFF, 0x27, 0x00,
+ 0xA6, 0x02, 0xA6, 0xFF, 0x29, 0x00, 0x22, 0x03,
+ 0x93, 0xFF, 0x2B, 0x00, 0x9D, 0x03, 0x7C, 0xFF,
+ 0x22, 0x00, 0xC3, 0xFF, 0xC8, 0xFF, 0x22, 0x00,
+ 0x48, 0xFF, 0xC8, 0xFF, 0x22, 0x00, 0xCC, 0xFE,
+ 0xC8, 0xFF, 0x22, 0x00, 0x51, 0xFE, 0xC8, 0xFF,
+ 0x25, 0x00, 0xD5, 0xFD, 0xB6, 0xFF, 0x27, 0x00,
+ 0x5A, 0xFD, 0xA6, 0xFF, 0x29, 0x00, 0xDE, 0xFC,
+ 0x93, 0xFF, 0x2B, 0x00, 0x63, 0xFC, 0x7C, 0xFF,
+ 0x22, 0x00, 0x3D, 0x00, 0x58, 0xFF, 0x22, 0x00,
+ 0xB8, 0x00, 0x58, 0xFF, 0x22, 0x00, 0x34, 0x01,
+ 0x58, 0xFF, 0x22, 0x00, 0xAF, 0x01, 0x58, 0xFF,
+ 0x25, 0x00, 0x2B, 0x02, 0x21, 0xFF, 0x27, 0x00,
+ 0xA6, 0x02, 0xF1, 0xFE, 0x29, 0x00, 0x22, 0x03,
+ 0xB8, 0xFE, 0x2B, 0x00, 0x9D, 0x03, 0x73, 0xFE,
+ 0x22, 0x00, 0xC3, 0xFF, 0x58, 0xFF, 0x22, 0x00,
+ 0x48, 0xFF, 0x58, 0xFF, 0x22, 0x00, 0xCC, 0xFE,
+ 0x58, 0xFF, 0x22, 0x00, 0x51, 0xFE, 0x58, 0xFF,
+ 0x25, 0x00, 0xD5, 0xFD, 0x21, 0xFF, 0x27, 0x00,
+ 0x5A, 0xFD, 0xF1, 0xFE, 0x29, 0x00, 0xDE, 0xFC,
+ 0xB8, 0xFE, 0x2B, 0x00, 0x63, 0xFC, 0x73, 0xFE,
+ 0x22, 0x00, 0x3D, 0x00, 0xE8, 0xFE, 0x22, 0x00,
+ 0xB8, 0x00, 0xE8, 0xFE, 0x22, 0x00, 0x34, 0x01,
+ 0xE8, 0xFE, 0x22, 0x00, 0xAF, 0x01, 0xE8, 0xFE,
+ 0x25, 0x00, 0x2B, 0x02, 0x8B, 0xFE, 0x27, 0x00,
+ 0xA6, 0x02, 0x3C, 0xFE, 0x29, 0x00, 0x22, 0x03,
+ 0xDD, 0xFD, 0x2B, 0x00, 0x9D, 0x03, 0x6A, 0xFD,
+ 0x22, 0x00, 0xC3, 0xFF, 0xE8, 0xFE, 0x22, 0x00,
+ 0x48, 0xFF, 0xE8, 0xFE, 0x22, 0x00, 0xCC, 0xFE,
+ 0xE8, 0xFE, 0x22, 0x00, 0x51, 0xFE, 0xE8, 0xFE,
+ 0x25, 0x00, 0xD5, 0xFD, 0x8B, 0xFE, 0x27, 0x00,
+ 0x5A, 0xFD, 0x3C, 0xFE, 0x29, 0x00, 0xDE, 0xFC,
+ 0xDD, 0xFD, 0x2B, 0x00, 0x63, 0xFC, 0x6A, 0xFD,
+ 0x22, 0x00, 0x3D, 0x00, 0x78, 0xFE, 0x22, 0x00,
+ 0xB8, 0x00, 0x78, 0xFE, 0x22, 0x00, 0x34, 0x01,
+ 0x78, 0xFE, 0x22, 0x00, 0xAF, 0x01, 0x78, 0xFE,
+ 0x25, 0x00, 0x2B, 0x02, 0xF6, 0xFD, 0x27, 0x00,
+ 0xA6, 0x02, 0x87, 0xFD, 0x29, 0x00, 0x22, 0x03,
+ 0x02, 0xFD, 0x2B, 0x00, 0x9D, 0x03, 0x61, 0xFC,
+ 0x22, 0x00, 0xC3, 0xFF, 0x78, 0xFE, 0x22, 0x00,
+ 0x48, 0xFF, 0x78, 0xFE, 0x22, 0x00, 0xCC, 0xFE,
+ 0x78, 0xFE, 0x22, 0x00, 0x51, 0xFE, 0x78, 0xFE,
+ 0x25, 0x00, 0xD5, 0xFD, 0xF6, 0xFD, 0x27, 0x00,
+ 0x5A, 0xFD, 0x87, 0xFD, 0x29, 0x00, 0xDE, 0xFC,
+ 0x02, 0xFD, 0x2B, 0x00, 0x63, 0xFC, 0x61, 0xFC,
+ 0x25, 0x00, 0x3D, 0x00, 0x07, 0xFE, 0x25, 0x00,
+ 0xB8, 0x00, 0x07, 0xFE, 0x25, 0x00, 0x34, 0x01,
+ 0x07, 0xFE, 0x25, 0x00, 0xAF, 0x01, 0x07, 0xFE,
+ 0x28, 0x00, 0x2B, 0x02, 0x60, 0xFD, 0x2A, 0x00,
+ 0xA6, 0x02, 0xD2, 0xFC, 0x2C, 0x00, 0x22, 0x03,
+ 0x27, 0xFC, 0x2E, 0x00, 0x9D, 0x03, 0x58, 0xFB,
+ 0x25, 0x00, 0xC3, 0xFF, 0x07, 0xFE, 0x25, 0x00,
+ 0x48, 0xFF, 0x07, 0xFE, 0x25, 0x00, 0xCC, 0xFE,
+ 0x07, 0xFE, 0x25, 0x00, 0x51, 0xFE, 0x07, 0xFE,
+ 0x28, 0x00, 0xD5, 0xFD, 0x60, 0xFD, 0x2A, 0x00,
+ 0x5A, 0xFD, 0xD2, 0xFC, 0x2C, 0x00, 0xDE, 0xFC,
+ 0x27, 0xFC, 0x2E, 0x00, 0x63, 0xFC, 0x58, 0xFB,
+ 0x27, 0x00, 0x3D, 0x00, 0x97, 0xFD, 0x27, 0x00,
+ 0xB8, 0x00, 0x97, 0xFD, 0x27, 0x00, 0x34, 0x01,
+ 0x97, 0xFD, 0x27, 0x00, 0xAF, 0x01, 0x97, 0xFD,
+ 0x2A, 0x00, 0x2B, 0x02, 0xCB, 0xFC, 0x2C, 0x00,
+ 0xA6, 0x02, 0x1D, 0xFC, 0x2E, 0x00, 0x22, 0x03,
+ 0x4C, 0xFB, 0x30, 0x00, 0x9D, 0x03, 0x4F, 0xFA,
+ 0x27, 0x00, 0xC3, 0xFF, 0x97, 0xFD, 0x27, 0x00,
+ 0x48, 0xFF, 0x97, 0xFD, 0x27, 0x00, 0xCC, 0xFE,
+ 0x97, 0xFD, 0x27, 0x00, 0x51, 0xFE, 0x97, 0xFD,
+ 0x2A, 0x00, 0xD5, 0xFD, 0xCB, 0xFC, 0x2C, 0x00,
+ 0x5A, 0xFD, 0x1D, 0xFC, 0x2E, 0x00, 0xDE, 0xFC,
+ 0x4C, 0xFB, 0x30, 0x00, 0x63, 0xFC, 0x4F, 0xFA,
+ 0x29, 0x00, 0x3D, 0x00, 0x27, 0xFD, 0x29, 0x00,
+ 0xB8, 0x00, 0x27, 0xFD, 0x29, 0x00, 0x34, 0x01,
+ 0x27, 0xFD, 0x29, 0x00, 0xAF, 0x01, 0x27, 0xFD,
+ 0x2C, 0x00, 0x2B, 0x02, 0x35, 0xFC, 0x2E, 0x00,
+ 0xA6, 0x02, 0x68, 0xFB, 0x30, 0x00, 0x22, 0x03,
+ 0x71, 0xFA, 0x30, 0x00, 0x9D, 0x03, 0x46, 0xF9,
+ 0x29, 0x00, 0xC3, 0xFF, 0x27, 0xFD, 0x29, 0x00,
+ 0x48, 0xFF, 0x27, 0xFD, 0x29, 0x00, 0xCC, 0xFE,
+ 0x27, 0xFD, 0x29, 0x00, 0x51, 0xFE, 0x27, 0xFD,
+ 0x2C, 0x00, 0xD5, 0xFD, 0x35, 0xFC, 0x2E, 0x00,
+ 0x5A, 0xFD, 0x68, 0xFB, 0x30, 0x00, 0xDE, 0xFC,
+ 0x71, 0xFA, 0x30, 0x00, 0x63, 0xFC, 0x46, 0xF9,
+ 0x2B, 0x00, 0x3D, 0x00, 0xB7, 0xFC, 0x2B, 0x00,
+ 0xB8, 0x00, 0xB7, 0xFC, 0x2B, 0x00, 0x34, 0x01,
+ 0xB7, 0xFC, 0x2B, 0x00, 0xAF, 0x01, 0xB7, 0xFC,
+ 0x2E, 0x00, 0x2B, 0x02, 0xA0, 0xFB, 0x30, 0x00,
+ 0xA6, 0x02, 0xB3, 0xFA, 0x30, 0x00, 0x22, 0x03,
+ 0x96, 0xF9, 0x30, 0x00, 0x9D, 0x03, 0x3D, 0xF8,
+ 0x2B, 0x00, 0xC3, 0xFF, 0xB7, 0xFC, 0x2B, 0x00,
+ 0x48, 0xFF, 0xB7, 0xFC, 0x2B, 0x00, 0xCC, 0xFE,
+ 0xB7, 0xFC, 0x2B, 0x00, 0x51, 0xFE, 0xB7, 0xFC,
+ 0x2E, 0x00, 0xD5, 0xFD, 0xA0, 0xFB, 0x30, 0x00,
+ 0x5A, 0xFD, 0xB3, 0xFA, 0x30, 0x00, 0xDE, 0xFC,
+ 0x96, 0xF9, 0x30, 0x00, 0x63, 0xFC, 0x3D, 0xF8,
+ 0x23, 0x00, 0x44, 0x00, 0x3D, 0x00, 0x23, 0x00,
+ 0xCC, 0x00, 0x3D, 0x00, 0x23, 0x00, 0x54, 0x01,
+ 0x3D, 0x00, 0x23, 0x00, 0xDC, 0x01, 0x3D, 0x00,
+ 0x26, 0x00, 0x64, 0x02, 0x52, 0x00, 0x28, 0x00,
+ 0xEC, 0x02, 0x63, 0x00, 0x2A, 0x00, 0x74, 0x03,
+ 0x78, 0x00, 0x2C, 0x00, 0xFC, 0x03, 0x91, 0x00,
+ 0x23, 0x00, 0xBC, 0xFF, 0x3D, 0x00, 0x23, 0x00,
+ 0x34, 0xFF, 0x3D, 0x00, 0x23, 0x00, 0xAC, 0xFE,
+ 0x3D, 0x00, 0x23, 0x00, 0x24, 0xFE, 0x3D, 0x00,
+ 0x26, 0x00, 0x9C, 0xFD, 0x52, 0x00, 0x28, 0x00,
+ 0x14, 0xFD, 0x63, 0x00, 0x2A, 0x00, 0x8C, 0xFC,
+ 0x78, 0x00, 0x2C, 0x00, 0x04, 0xFC, 0x91, 0x00,
+ 0x23, 0x00, 0x44, 0x00, 0xB8, 0x00, 0x23, 0x00,
+ 0xCC, 0x00, 0xB8, 0x00, 0x23, 0x00, 0x54, 0x01,
+ 0xB8, 0x00, 0x23, 0x00, 0xDC, 0x01, 0xB8, 0x00,
+ 0x26, 0x00, 0x64, 0x02, 0xF6, 0x00, 0x28, 0x00,
+ 0xEC, 0x02, 0x2A, 0x01, 0x2A, 0x00, 0x74, 0x03,
+ 0x68, 0x01, 0x2C, 0x00, 0xFC, 0x03, 0xB4, 0x01,
+ 0x23, 0x00, 0xBC, 0xFF, 0xB8, 0x00, 0x23, 0x00,
+ 0x34, 0xFF, 0xB8, 0x00, 0x23, 0x00, 0xAC, 0xFE,
+ 0xB8, 0x00, 0x23, 0x00, 0x24, 0xFE, 0xB8, 0x00,
+ 0x26, 0x00, 0x9C, 0xFD, 0xF6, 0x00, 0x28, 0x00,
+ 0x14, 0xFD, 0x2A, 0x01, 0x2A, 0x00, 0x8C, 0xFC,
+ 0x68, 0x01, 0x2C, 0x00, 0x04, 0xFC, 0xB4, 0x01,
+ 0x23, 0x00, 0x44, 0x00, 0x34, 0x01, 0x23, 0x00,
+ 0xCC, 0x00, 0x34, 0x01, 0x23, 0x00, 0x54, 0x01,
+ 0x34, 0x01, 0x23, 0x00, 0xDC, 0x01, 0x34, 0x01,
+ 0x26, 0x00, 0x64, 0x02, 0x9B, 0x01, 0x28, 0x00,
+ 0xEC, 0x02, 0xF1, 0x01, 0x2A, 0x00, 0x74, 0x03,
+ 0x59, 0x02, 0x2C, 0x00, 0xFC, 0x03, 0xD8, 0x02,
+ 0x23, 0x00, 0xBC, 0xFF, 0x34, 0x01, 0x23, 0x00,
+ 0x34, 0xFF, 0x34, 0x01, 0x23, 0x00, 0xAC, 0xFE,
+ 0x34, 0x01, 0x23, 0x00, 0x24, 0xFE, 0x34, 0x01,
+ 0x26, 0x00, 0x9C, 0xFD, 0x9B, 0x01, 0x28, 0x00,
+ 0x14, 0xFD, 0xF1, 0x01, 0x2A, 0x00, 0x8C, 0xFC,
+ 0x59, 0x02, 0x2C, 0x00, 0x04, 0xFC, 0xD8, 0x02,
+ 0x23, 0x00, 0x44, 0x00, 0xAF, 0x01, 0x23, 0x00,
+ 0xCC, 0x00, 0xAF, 0x01, 0x23, 0x00, 0x54, 0x01,
+ 0xAF, 0x01, 0x23, 0x00, 0xDC, 0x01, 0xAF, 0x01,
+ 0x26, 0x00, 0x64, 0x02, 0x3F, 0x02, 0x28, 0x00,
+ 0xEC, 0x02, 0xB8, 0x02, 0x2A, 0x00, 0x74, 0x03,
+ 0x49, 0x03, 0x2C, 0x00, 0xFC, 0x03, 0xFB, 0x03,
+ 0x23, 0x00, 0xBC, 0xFF, 0xAF, 0x01, 0x23, 0x00,
+ 0x34, 0xFF, 0xAF, 0x01, 0x23, 0x00, 0xAC, 0xFE,
+ 0xAF, 0x01, 0x23, 0x00, 0x24, 0xFE, 0xAF, 0x01,
+ 0x26, 0x00, 0x9C, 0xFD, 0x3F, 0x02, 0x28, 0x00,
+ 0x14, 0xFD, 0xB8, 0x02, 0x2A, 0x00, 0x8C, 0xFC,
+ 0x49, 0x03, 0x2C, 0x00, 0x04, 0xFC, 0xFB, 0x03,
+ 0x26, 0x00, 0x44, 0x00, 0x2B, 0x02, 0x26, 0x00,
+ 0xCC, 0x00, 0x2B, 0x02, 0x26, 0x00, 0x54, 0x01,
+ 0x2B, 0x02, 0x26, 0x00, 0xDC, 0x01, 0x2B, 0x02,
+ 0x29, 0x00, 0x64, 0x02, 0xE4, 0x02, 0x2B, 0x00,
+ 0xEC, 0x02, 0x7F, 0x03, 0x2D, 0x00, 0x74, 0x03,
+ 0x3B, 0x04, 0x2F, 0x00, 0xFC, 0x03, 0x1F, 0x05,
+ 0x26, 0x00, 0xBC, 0xFF, 0x2B, 0x02, 0x26, 0x00,
+ 0x34, 0xFF, 0x2B, 0x02, 0x26, 0x00, 0xAC, 0xFE,
+ 0x2B, 0x02, 0x26, 0x00, 0x24, 0xFE, 0x2B, 0x02,
+ 0x29, 0x00, 0x9C, 0xFD, 0xE4, 0x02, 0x2B, 0x00,
+ 0x14, 0xFD, 0x7F, 0x03, 0x2D, 0x00, 0x8C, 0xFC,
+ 0x3B, 0x04, 0x2F, 0x00, 0x04, 0xFC, 0x1F, 0x05,
+ 0x28, 0x00, 0x44, 0x00, 0xA6, 0x02, 0x28, 0x00,
+ 0xCC, 0x00, 0xA6, 0x02, 0x28, 0x00, 0x54, 0x01,
+ 0xA6, 0x02, 0x28, 0x00, 0xDC, 0x01, 0xA6, 0x02,
+ 0x2B, 0x00, 0x64, 0x02, 0x88, 0x03, 0x2D, 0x00,
+ 0xEC, 0x02, 0x46, 0x04, 0x2F, 0x00, 0x74, 0x03,
+ 0x2B, 0x05, 0x30, 0x00, 0xFC, 0x03, 0x42, 0x06,
+ 0x28, 0x00, 0xBC, 0xFF, 0xA6, 0x02, 0x28, 0x00,
+ 0x34, 0xFF, 0xA6, 0x02, 0x28, 0x00, 0xAC, 0xFE,
+ 0xA6, 0x02, 0x28, 0x00, 0x24, 0xFE, 0xA6, 0x02,
+ 0x2B, 0x00, 0x9C, 0xFD, 0x88, 0x03, 0x2D, 0x00,
+ 0x14, 0xFD, 0x46, 0x04, 0x2F, 0x00, 0x8C, 0xFC,
+ 0x2B, 0x05, 0x30, 0x00, 0x04, 0xFC, 0x42, 0x06,
+ 0x2A, 0x00, 0x44, 0x00, 0x22, 0x03, 0x2A, 0x00,
+ 0xCC, 0x00, 0x22, 0x03, 0x2A, 0x00, 0x54, 0x01,
+ 0x22, 0x03, 0x2A, 0x00, 0xDC, 0x01, 0x22, 0x03,
+ 0x2D, 0x00, 0x64, 0x02, 0x2D, 0x04, 0x2F, 0x00,
+ 0xEC, 0x02, 0x0D, 0x05, 0x30, 0x00, 0x74, 0x03,
+ 0x1C, 0x06, 0x30, 0x00, 0xFC, 0x03, 0x66, 0x07,
+ 0x2A, 0x00, 0xBC, 0xFF, 0x22, 0x03, 0x2A, 0x00,
+ 0x34, 0xFF, 0x22, 0x03, 0x2A, 0x00, 0xAC, 0xFE,
+ 0x22, 0x03, 0x2A, 0x00, 0x24, 0xFE, 0x22, 0x03,
+ 0x2D, 0x00, 0x9C, 0xFD, 0x2D, 0x04, 0x2F, 0x00,
+ 0x14, 0xFD, 0x0D, 0x05, 0x30, 0x00, 0x8C, 0xFC,
+ 0x1C, 0x06, 0x30, 0x00, 0x04, 0xFC, 0x66, 0x07,
+ 0x2C, 0x00, 0x44, 0x00, 0x9D, 0x03, 0x2C, 0x00,
+ 0xCC, 0x00, 0x9D, 0x03, 0x2C, 0x00, 0x54, 0x01,
+ 0x9D, 0x03, 0x2C, 0x00, 0xDC, 0x01, 0x9D, 0x03,
+ 0x2F, 0x00, 0x64, 0x02, 0xD1, 0x04, 0x30, 0x00,
+ 0xEC, 0x02, 0xD4, 0x05, 0x30, 0x00, 0x74, 0x03,
+ 0x0C, 0x07, 0x30, 0x00, 0xFC, 0x03, 0x89, 0x08,
+ 0x2C, 0x00, 0xBC, 0xFF, 0x9D, 0x03, 0x2C, 0x00,
+ 0x34, 0xFF, 0x9D, 0x03, 0x2C, 0x00, 0xAC, 0xFE,
+ 0x9D, 0x03, 0x2C, 0x00, 0x24, 0xFE, 0x9D, 0x03,
+ 0x2F, 0x00, 0x9C, 0xFD, 0xD1, 0x04, 0x30, 0x00,
+ 0x14, 0xFD, 0xD4, 0x05, 0x30, 0x00, 0x8C, 0xFC,
+ 0x0C, 0x07, 0x30, 0x00, 0x04, 0xFC, 0x89, 0x08,
+ 0x23, 0x00, 0x44, 0x00, 0xC3, 0xFF, 0x23, 0x00,
+ 0xCC, 0x00, 0xC3, 0xFF, 0x23, 0x00, 0x54, 0x01,
+ 0xC3, 0xFF, 0x23, 0x00, 0xDC, 0x01, 0xC3, 0xFF,
+ 0x26, 0x00, 0x64, 0x02, 0xAE, 0xFF, 0x28, 0x00,
+ 0xEC, 0x02, 0x9D, 0xFF, 0x2A, 0x00, 0x74, 0x03,
+ 0x88, 0xFF, 0x2C, 0x00, 0xFC, 0x03, 0x6F, 0xFF,
+ 0x23, 0x00, 0xBC, 0xFF, 0xC3, 0xFF, 0x23, 0x00,
+ 0x34, 0xFF, 0xC3, 0xFF, 0x23, 0x00, 0xAC, 0xFE,
+ 0xC3, 0xFF, 0x23, 0x00, 0x24, 0xFE, 0xC3, 0xFF,
+ 0x26, 0x00, 0x9C, 0xFD, 0xAE, 0xFF, 0x28, 0x00,
+ 0x14, 0xFD, 0x9D, 0xFF, 0x2A, 0x00, 0x8C, 0xFC,
+ 0x88, 0xFF, 0x2C, 0x00, 0x04, 0xFC, 0x6F, 0xFF,
+ 0x23, 0x00, 0x44, 0x00, 0x48, 0xFF, 0x23, 0x00,
+ 0xCC, 0x00, 0x48, 0xFF, 0x23, 0x00, 0x54, 0x01,
+ 0x48, 0xFF, 0x23, 0x00, 0xDC, 0x01, 0x48, 0xFF,
+ 0x26, 0x00, 0x64, 0x02, 0x0A, 0xFF, 0x28, 0x00,
+ 0xEC, 0x02, 0xD6, 0xFE, 0x2A, 0x00, 0x74, 0x03,
+ 0x98, 0xFE, 0x2C, 0x00, 0xFC, 0x03, 0x4C, 0xFE,
+ 0x23, 0x00, 0xBC, 0xFF, 0x48, 0xFF, 0x23, 0x00,
+ 0x34, 0xFF, 0x48, 0xFF, 0x23, 0x00, 0xAC, 0xFE,
+ 0x48, 0xFF, 0x23, 0x00, 0x24, 0xFE, 0x48, 0xFF,
+ 0x26, 0x00, 0x9C, 0xFD, 0x0A, 0xFF, 0x28, 0x00,
+ 0x14, 0xFD, 0xD6, 0xFE, 0x2A, 0x00, 0x8C, 0xFC,
+ 0x98, 0xFE, 0x2C, 0x00, 0x04, 0xFC, 0x4C, 0xFE,
+ 0x23, 0x00, 0x44, 0x00, 0xCC, 0xFE, 0x23, 0x00,
+ 0xCC, 0x00, 0xCC, 0xFE, 0x23, 0x00, 0x54, 0x01,
+ 0xCC, 0xFE, 0x23, 0x00, 0xDC, 0x01, 0xCC, 0xFE,
+ 0x26, 0x00, 0x64, 0x02, 0x65, 0xFE, 0x28, 0x00,
+ 0xEC, 0x02, 0x0F, 0xFE, 0x2A, 0x00, 0x74, 0x03,
+ 0xA7, 0xFD, 0x2C, 0x00, 0xFC, 0x03, 0x28, 0xFD,
+ 0x23, 0x00, 0xBC, 0xFF, 0xCC, 0xFE, 0x23, 0x00,
+ 0x34, 0xFF, 0xCC, 0xFE, 0x23, 0x00, 0xAC, 0xFE,
+ 0xCC, 0xFE, 0x23, 0x00, 0x24, 0xFE, 0xCC, 0xFE,
+ 0x26, 0x00, 0x9C, 0xFD, 0x65, 0xFE, 0x28, 0x00,
+ 0x14, 0xFD, 0x0F, 0xFE, 0x2A, 0x00, 0x8C, 0xFC,
+ 0xA7, 0xFD, 0x2C, 0x00, 0x04, 0xFC, 0x28, 0xFD,
+ 0x23, 0x00, 0x44, 0x00, 0x51, 0xFE, 0x23, 0x00,
+ 0xCC, 0x00, 0x51, 0xFE, 0x23, 0x00, 0x54, 0x01,
+ 0x51, 0xFE, 0x23, 0x00, 0xDC, 0x01, 0x51, 0xFE,
+ 0x26, 0x00, 0x64, 0x02, 0xC1, 0xFD, 0x28, 0x00,
+ 0xEC, 0x02, 0x48, 0xFD, 0x2A, 0x00, 0x74, 0x03,
+ 0xB7, 0xFC, 0x2C, 0x00, 0xFC, 0x03, 0x05, 0xFC,
+ 0x23, 0x00, 0xBC, 0xFF, 0x51, 0xFE, 0x23, 0x00,
+ 0x34, 0xFF, 0x51, 0xFE, 0x23, 0x00, 0xAC, 0xFE,
+ 0x51, 0xFE, 0x23, 0x00, 0x24, 0xFE, 0x51, 0xFE,
+ 0x26, 0x00, 0x9C, 0xFD, 0xC1, 0xFD, 0x28, 0x00,
+ 0x14, 0xFD, 0x48, 0xFD, 0x2A, 0x00, 0x8C, 0xFC,
+ 0xB7, 0xFC, 0x2C, 0x00, 0x04, 0xFC, 0x05, 0xFC,
+ 0x26, 0x00, 0x44, 0x00, 0xD5, 0xFD, 0x26, 0x00,
+ 0xCC, 0x00, 0xD5, 0xFD, 0x26, 0x00, 0x54, 0x01,
+ 0xD5, 0xFD, 0x26, 0x00, 0xDC, 0x01, 0xD5, 0xFD,
+ 0x29, 0x00, 0x64, 0x02, 0x1C, 0xFD, 0x2B, 0x00,
+ 0xEC, 0x02, 0x81, 0xFC, 0x2D, 0x00, 0x74, 0x03,
+ 0xC5, 0xFB, 0x2F, 0x00, 0xFC, 0x03, 0xE1, 0xFA,
+ 0x26, 0x00, 0xBC, 0xFF, 0xD5, 0xFD, 0x26, 0x00,
+ 0x34, 0xFF, 0xD5, 0xFD, 0x26, 0x00, 0xAC, 0xFE,
+ 0xD5, 0xFD, 0x26, 0x00, 0x24, 0xFE, 0xD5, 0xFD,
+ 0x29, 0x00, 0x9C, 0xFD, 0x1C, 0xFD, 0x2B, 0x00,
+ 0x14, 0xFD, 0x81, 0xFC, 0x2D, 0x00, 0x8C, 0xFC,
+ 0xC5, 0xFB, 0x2F, 0x00, 0x04, 0xFC, 0xE1, 0xFA,
+ 0x28, 0x00, 0x44, 0x00, 0x5A, 0xFD, 0x28, 0x00,
+ 0xCC, 0x00, 0x5A, 0xFD, 0x28, 0x00, 0x54, 0x01,
+ 0x5A, 0xFD, 0x28, 0x00, 0xDC, 0x01, 0x5A, 0xFD,
+ 0x2B, 0x00, 0x64, 0x02, 0x78, 0xFC, 0x2D, 0x00,
+ 0xEC, 0x02, 0xBA, 0xFB, 0x2F, 0x00, 0x74, 0x03,
+ 0xD5, 0xFA, 0x30, 0x00, 0xFC, 0x03, 0xBE, 0xF9,
+ 0x28, 0x00, 0xBC, 0xFF, 0x5A, 0xFD, 0x28, 0x00,
+ 0x34, 0xFF, 0x5A, 0xFD, 0x28, 0x00, 0xAC, 0xFE,
+ 0x5A, 0xFD, 0x28, 0x00, 0x24, 0xFE, 0x5A, 0xFD,
+ 0x2B, 0x00, 0x9C, 0xFD, 0x78, 0xFC, 0x2D, 0x00,
+ 0x14, 0xFD, 0xBA, 0xFB, 0x2F, 0x00, 0x8C, 0xFC,
+ 0xD5, 0xFA, 0x30, 0x00, 0x04, 0xFC, 0xBE, 0xF9,
+ 0x2A, 0x00, 0x44, 0x00, 0xDE, 0xFC, 0x2A, 0x00,
+ 0xCC, 0x00, 0xDE, 0xFC, 0x2A, 0x00, 0x54, 0x01,
+ 0xDE, 0xFC, 0x2A, 0x00, 0xDC, 0x01, 0xDE, 0xFC,
+ 0x2D, 0x00, 0x64, 0x02, 0xD3, 0xFB, 0x2F, 0x00,
+ 0xEC, 0x02, 0xF3, 0xFA, 0x30, 0x00, 0x74, 0x03,
+ 0xE4, 0xF9, 0x30, 0x00, 0xFC, 0x03, 0x9A, 0xF8,
+ 0x2A, 0x00, 0xBC, 0xFF, 0xDE, 0xFC, 0x2A, 0x00,
+ 0x34, 0xFF, 0xDE, 0xFC, 0x2A, 0x00, 0xAC, 0xFE,
+ 0xDE, 0xFC, 0x2A, 0x00, 0x24, 0xFE, 0xDE, 0xFC,
+ 0x2D, 0x00, 0x9C, 0xFD, 0xD3, 0xFB, 0x2F, 0x00,
+ 0x14, 0xFD, 0xF3, 0xFA, 0x30, 0x00, 0x8C, 0xFC,
+ 0xE4, 0xF9, 0x30, 0x00, 0x04, 0xFC, 0x9A, 0xF8,
+ 0x2C, 0x00, 0x44, 0x00, 0x63, 0xFC, 0x2C, 0x00,
+ 0xCC, 0x00, 0x63, 0xFC, 0x2C, 0x00, 0x54, 0x01,
+ 0x63, 0xFC, 0x2C, 0x00, 0xDC, 0x01, 0x63, 0xFC,
+ 0x2F, 0x00, 0x64, 0x02, 0x2F, 0xFB, 0x30, 0x00,
+ 0xEC, 0x02, 0x2C, 0xFA, 0x30, 0x00, 0x74, 0x03,
+ 0xF4, 0xF8, 0x30, 0x00, 0xFC, 0x03, 0x77, 0xF7,
+ 0x2C, 0x00, 0xBC, 0xFF, 0x63, 0xFC, 0x2C, 0x00,
+ 0x34, 0xFF, 0x63, 0xFC, 0x2C, 0x00, 0xAC, 0xFE,
+ 0x63, 0xFC, 0x2C, 0x00, 0x24, 0xFE, 0x63, 0xFC,
+ 0x2F, 0x00, 0x9C, 0xFD, 0x2F, 0xFB, 0x30, 0x00,
+ 0x14, 0xFD, 0x2C, 0xFA, 0x30, 0x00, 0x8C, 0xFC,
+ 0xF4, 0xF8, 0x30, 0x00, 0x04, 0xFC, 0x77, 0xF7,
+ 0x24, 0x00, 0x4A, 0x00, 0x44, 0x00, 0x24, 0x00,
+ 0xDF, 0x00, 0x44, 0x00, 0x24, 0x00, 0x75, 0x01,
+ 0x44, 0x00, 0x24, 0x00, 0x0A, 0x02, 0x44, 0x00,
+ 0x27, 0x00, 0xA0, 0x02, 0x5A, 0x00, 0x29, 0x00,
+ 0x35, 0x03, 0x6D, 0x00, 0x2B, 0x00, 0xCB, 0x03,
+ 0x84, 0x00, 0x2D, 0x00, 0x60, 0x04, 0xA0, 0x00,
+ 0x24, 0x00, 0xB6, 0xFF, 0x44, 0x00, 0x24, 0x00,
+ 0x21, 0xFF, 0x44, 0x00, 0x24, 0x00, 0x8B, 0xFE,
+ 0x44, 0x00, 0x24, 0x00, 0xF6, 0xFD, 0x44, 0x00,
+ 0x27, 0x00, 0x60, 0xFD, 0x5A, 0x00, 0x29, 0x00,
+ 0xCB, 0xFC, 0x6D, 0x00, 0x2B, 0x00, 0x35, 0xFC,
+ 0x84, 0x00, 0x2D, 0x00, 0xA0, 0xFB, 0xA0, 0x00,
+ 0x24, 0x00, 0x4A, 0x00, 0xCC, 0x00, 0x24, 0x00,
+ 0xDF, 0x00, 0xCC, 0x00, 0x24, 0x00, 0x75, 0x01,
+ 0xCC, 0x00, 0x24, 0x00, 0x0A, 0x02, 0xCC, 0x00,
+ 0x27, 0x00, 0xA0, 0x02, 0x0F, 0x01, 0x29, 0x00,
+ 0x35, 0x03, 0x48, 0x01, 0x2B, 0x00, 0xCB, 0x03,
+ 0x8D, 0x01, 0x2D, 0x00, 0x60, 0x04, 0xE0, 0x01,
+ 0x24, 0x00, 0xB6, 0xFF, 0xCC, 0x00, 0x24, 0x00,
+ 0x21, 0xFF, 0xCC, 0x00, 0x24, 0x00, 0x8B, 0xFE,
+ 0xCC, 0x00, 0x24, 0x00, 0xF6, 0xFD, 0xCC, 0x00,
+ 0x27, 0x00, 0x60, 0xFD, 0x0F, 0x01, 0x29, 0x00,
+ 0xCB, 0xFC, 0x48, 0x01, 0x2B, 0x00, 0x35, 0xFC,
+ 0x8D, 0x01, 0x2D, 0x00, 0xA0, 0xFB, 0xE0, 0x01,
+ 0x24, 0x00, 0x4A, 0x00, 0x54, 0x01, 0x24, 0x00,
+ 0xDF, 0x00, 0x54, 0x01, 0x24, 0x00, 0x75, 0x01,
+ 0x54, 0x01, 0x24, 0x00, 0x0A, 0x02, 0x54, 0x01,
+ 0x27, 0x00, 0xA0, 0x02, 0xC4, 0x01, 0x29, 0x00,
+ 0x35, 0x03, 0x23, 0x02, 0x2B, 0x00, 0xCB, 0x03,
+ 0x96, 0x02, 0x2D, 0x00, 0x60, 0x04, 0x21, 0x03,
+ 0x24, 0x00, 0xB6, 0xFF, 0x54, 0x01, 0x24, 0x00,
+ 0x21, 0xFF, 0x54, 0x01, 0x24, 0x00, 0x8B, 0xFE,
+ 0x54, 0x01, 0x24, 0x00, 0xF6, 0xFD, 0x54, 0x01,
+ 0x27, 0x00, 0x60, 0xFD, 0xC4, 0x01, 0x29, 0x00,
+ 0xCB, 0xFC, 0x23, 0x02, 0x2B, 0x00, 0x35, 0xFC,
+ 0x96, 0x02, 0x2D, 0x00, 0xA0, 0xFB, 0x21, 0x03,
+ 0x24, 0x00, 0x4A, 0x00, 0xDC, 0x01, 0x24, 0x00,
+ 0xDF, 0x00, 0xDC, 0x01, 0x24, 0x00, 0x75, 0x01,
+ 0xDC, 0x01, 0x24, 0x00, 0x0A, 0x02, 0xDC, 0x01,
+ 0x27, 0x00, 0xA0, 0x02, 0x79, 0x02, 0x29, 0x00,
+ 0x35, 0x03, 0xFE, 0x02, 0x2B, 0x00, 0xCB, 0x03,
+ 0x9F, 0x03, 0x2D, 0x00, 0x60, 0x04, 0x61, 0x04,
+ 0x24, 0x00, 0xB6, 0xFF, 0xDC, 0x01, 0x24, 0x00,
+ 0x21, 0xFF, 0xDC, 0x01, 0x24, 0x00, 0x8B, 0xFE,
+ 0xDC, 0x01, 0x24, 0x00, 0xF6, 0xFD, 0xDC, 0x01,
+ 0x27, 0x00, 0x60, 0xFD, 0x79, 0x02, 0x29, 0x00,
+ 0xCB, 0xFC, 0xFE, 0x02, 0x2B, 0x00, 0x35, 0xFC,
+ 0x9F, 0x03, 0x2D, 0x00, 0xA0, 0xFB, 0x61, 0x04,
+ 0x27, 0x00, 0x4A, 0x00, 0x64, 0x02, 0x27, 0x00,
+ 0xDF, 0x00, 0x64, 0x02, 0x27, 0x00, 0x75, 0x01,
+ 0x64, 0x02, 0x27, 0x00, 0x0A, 0x02, 0x64, 0x02,
+ 0x2A, 0x00, 0xA0, 0x02, 0x2E, 0x03, 0x2C, 0x00,
+ 0x35, 0x03, 0xD9, 0x03, 0x2E, 0x00, 0xCB, 0x03,
+ 0xA8, 0x04, 0x30, 0x00, 0x60, 0x04, 0xA2, 0x05,
+ 0x27, 0x00, 0xB6, 0xFF, 0x64, 0x02, 0x27, 0x00,
+ 0x21, 0xFF, 0x64, 0x02, 0x27, 0x00, 0x8B, 0xFE,
+ 0x64, 0x02, 0x27, 0x00, 0xF6, 0xFD, 0x64, 0x02,
+ 0x2A, 0x00, 0x60, 0xFD, 0x2E, 0x03, 0x2C, 0x00,
+ 0xCB, 0xFC, 0xD9, 0x03, 0x2E, 0x00, 0x35, 0xFC,
+ 0xA8, 0x04, 0x30, 0x00, 0xA0, 0xFB, 0xA2, 0x05,
+ 0x29, 0x00, 0x4A, 0x00, 0xEC, 0x02, 0x29, 0x00,
+ 0xDF, 0x00, 0xEC, 0x02, 0x29, 0x00, 0x75, 0x01,
+ 0xEC, 0x02, 0x29, 0x00, 0x0A, 0x02, 0xEC, 0x02,
+ 0x2C, 0x00, 0xA0, 0x02, 0xE3, 0x03, 0x2E, 0x00,
+ 0x35, 0x03, 0xB4, 0x04, 0x30, 0x00, 0xCB, 0x03,
+ 0xB1, 0x05, 0x30, 0x00, 0x60, 0x04, 0xE2, 0x06,
+ 0x29, 0x00, 0xB6, 0xFF, 0xEC, 0x02, 0x29, 0x00,
+ 0x21, 0xFF, 0xEC, 0x02, 0x29, 0x00, 0x8B, 0xFE,
+ 0xEC, 0x02, 0x29, 0x00, 0xF6, 0xFD, 0xEC, 0x02,
+ 0x2C, 0x00, 0x60, 0xFD, 0xE3, 0x03, 0x2E, 0x00,
+ 0xCB, 0xFC, 0xB4, 0x04, 0x30, 0x00, 0x35, 0xFC,
+ 0xB1, 0x05, 0x30, 0x00, 0xA0, 0xFB, 0xE2, 0x06,
+ 0x2B, 0x00, 0x4A, 0x00, 0x74, 0x03, 0x2B, 0x00,
+ 0xDF, 0x00, 0x74, 0x03, 0x2B, 0x00, 0x75, 0x01,
+ 0x74, 0x03, 0x2B, 0x00, 0x0A, 0x02, 0x74, 0x03,
+ 0x2E, 0x00, 0xA0, 0x02, 0x98, 0x04, 0x30, 0x00,
+ 0x35, 0x03, 0x8F, 0x05, 0x30, 0x00, 0xCB, 0x03,
+ 0xBA, 0x06, 0x30, 0x00, 0x60, 0x04, 0x23, 0x08,
+ 0x2B, 0x00, 0xB6, 0xFF, 0x74, 0x03, 0x2B, 0x00,
+ 0x21, 0xFF, 0x74, 0x03, 0x2B, 0x00, 0x8B, 0xFE,
+ 0x74, 0x03, 0x2B, 0x00, 0xF6, 0xFD, 0x74, 0x03,
+ 0x2E, 0x00, 0x60, 0xFD, 0x98, 0x04, 0x30, 0x00,
+ 0xCB, 0xFC, 0x8F, 0x05, 0x30, 0x00, 0x35, 0xFC,
+ 0xBA, 0x06, 0x30, 0x00, 0xA0, 0xFB, 0x23, 0x08,
+ 0x2D, 0x00, 0x4A, 0x00, 0xFC, 0x03, 0x2D, 0x00,
+ 0xDF, 0x00, 0xFC, 0x03, 0x2D, 0x00, 0x75, 0x01,
+ 0xFC, 0x03, 0x2D, 0x00, 0x0A, 0x02, 0xFC, 0x03,
+ 0x30, 0x00, 0xA0, 0x02, 0x4D, 0x05, 0x30, 0x00,
+ 0x35, 0x03, 0x6A, 0x06, 0x30, 0x00, 0xCB, 0x03,
+ 0xC3, 0x07, 0x30, 0x00, 0x60, 0x04, 0x63, 0x09,
+ 0x2D, 0x00, 0xB6, 0xFF, 0xFC, 0x03, 0x2D, 0x00,
+ 0x21, 0xFF, 0xFC, 0x03, 0x2D, 0x00, 0x8B, 0xFE,
+ 0xFC, 0x03, 0x2D, 0x00, 0xF6, 0xFD, 0xFC, 0x03,
+ 0x30, 0x00, 0x60, 0xFD, 0x4D, 0x05, 0x30, 0x00,
+ 0xCB, 0xFC, 0x6A, 0x06, 0x30, 0x00, 0x35, 0xFC,
+ 0xC3, 0x07, 0x30, 0x00, 0xA0, 0xFB, 0x63, 0x09,
+ 0x24, 0x00, 0x4A, 0x00, 0xBC, 0xFF, 0x24, 0x00,
+ 0xDF, 0x00, 0xBC, 0xFF, 0x24, 0x00, 0x75, 0x01,
+ 0xBC, 0xFF, 0x24, 0x00, 0x0A, 0x02, 0xBC, 0xFF,
+ 0x27, 0x00, 0xA0, 0x02, 0xA6, 0xFF, 0x29, 0x00,
+ 0x35, 0x03, 0x93, 0xFF, 0x2B, 0x00, 0xCB, 0x03,
+ 0x7C, 0xFF, 0x2D, 0x00, 0x60, 0x04, 0x60, 0xFF,
+ 0x24, 0x00, 0xB6, 0xFF, 0xBC, 0xFF, 0x24, 0x00,
+ 0x21, 0xFF, 0xBC, 0xFF, 0x24, 0x00, 0x8B, 0xFE,
+ 0xBC, 0xFF, 0x24, 0x00, 0xF6, 0xFD, 0xBC, 0xFF,
+ 0x27, 0x00, 0x60, 0xFD, 0xA6, 0xFF, 0x29, 0x00,
+ 0xCB, 0xFC, 0x93, 0xFF, 0x2B, 0x00, 0x35, 0xFC,
+ 0x7C, 0xFF, 0x2D, 0x00, 0xA0, 0xFB, 0x60, 0xFF,
+ 0x24, 0x00, 0x4A, 0x00, 0x34, 0xFF, 0x24, 0x00,
+ 0xDF, 0x00, 0x34, 0xFF, 0x24, 0x00, 0x75, 0x01,
+ 0x34, 0xFF, 0x24, 0x00, 0x0A, 0x02, 0x34, 0xFF,
+ 0x27, 0x00, 0xA0, 0x02, 0xF1, 0xFE, 0x29, 0x00,
+ 0x35, 0x03, 0xB8, 0xFE, 0x2B, 0x00, 0xCB, 0x03,
+ 0x73, 0xFE, 0x2D, 0x00, 0x60, 0x04, 0x20, 0xFE,
+ 0x24, 0x00, 0xB6, 0xFF, 0x34, 0xFF, 0x24, 0x00,
+ 0x21, 0xFF, 0x34, 0xFF, 0x24, 0x00, 0x8B, 0xFE,
+ 0x34, 0xFF, 0x24, 0x00, 0xF6, 0xFD, 0x34, 0xFF,
+ 0x27, 0x00, 0x60, 0xFD, 0xF1, 0xFE, 0x29, 0x00,
+ 0xCB, 0xFC, 0xB8, 0xFE, 0x2B, 0x00, 0x35, 0xFC,
+ 0x73, 0xFE, 0x2D, 0x00, 0xA0, 0xFB, 0x20, 0xFE,
+ 0x24, 0x00, 0x4A, 0x00, 0xAC, 0xFE, 0x24, 0x00,
+ 0xDF, 0x00, 0xAC, 0xFE, 0x24, 0x00, 0x75, 0x01,
+ 0xAC, 0xFE, 0x24, 0x00, 0x0A, 0x02, 0xAC, 0xFE,
+ 0x27, 0x00, 0xA0, 0x02, 0x3C, 0xFE, 0x29, 0x00,
+ 0x35, 0x03, 0xDD, 0xFD, 0x2B, 0x00, 0xCB, 0x03,
+ 0x6A, 0xFD, 0x2D, 0x00, 0x60, 0x04, 0xDF, 0xFC,
+ 0x24, 0x00, 0xB6, 0xFF, 0xAC, 0xFE, 0x24, 0x00,
+ 0x21, 0xFF, 0xAC, 0xFE, 0x24, 0x00, 0x8B, 0xFE,
+ 0xAC, 0xFE, 0x24, 0x00, 0xF6, 0xFD, 0xAC, 0xFE,
+ 0x27, 0x00, 0x60, 0xFD, 0x3C, 0xFE, 0x29, 0x00,
+ 0xCB, 0xFC, 0xDD, 0xFD, 0x2B, 0x00, 0x35, 0xFC,
+ 0x6A, 0xFD, 0x2D, 0x00, 0xA0, 0xFB, 0xDF, 0xFC,
+ 0x24, 0x00, 0x4A, 0x00, 0x24, 0xFE, 0x24, 0x00,
+ 0xDF, 0x00, 0x24, 0xFE, 0x24, 0x00, 0x75, 0x01,
+ 0x24, 0xFE, 0x24, 0x00, 0x0A, 0x02, 0x24, 0xFE,
+ 0x27, 0x00, 0xA0, 0x02, 0x87, 0xFD, 0x29, 0x00,
+ 0x35, 0x03, 0x02, 0xFD, 0x2B, 0x00, 0xCB, 0x03,
+ 0x61, 0xFC, 0x2D, 0x00, 0x60, 0x04, 0x9F, 0xFB,
+ 0x24, 0x00, 0xB6, 0xFF, 0x24, 0xFE, 0x24, 0x00,
+ 0x21, 0xFF, 0x24, 0xFE, 0x24, 0x00, 0x8B, 0xFE,
+ 0x24, 0xFE, 0x24, 0x00, 0xF6, 0xFD, 0x24, 0xFE,
+ 0x27, 0x00, 0x60, 0xFD, 0x87, 0xFD, 0x29, 0x00,
+ 0xCB, 0xFC, 0x02, 0xFD, 0x2B, 0x00, 0x35, 0xFC,
+ 0x61, 0xFC, 0x2D, 0x00, 0xA0, 0xFB, 0x9F, 0xFB,
+ 0x27, 0x00, 0x4A, 0x00, 0x9C, 0xFD, 0x27, 0x00,
+ 0xDF, 0x00, 0x9C, 0xFD, 0x27, 0x00, 0x75, 0x01,
+ 0x9C, 0xFD, 0x27, 0x00, 0x0A, 0x02, 0x9C, 0xFD,
+ 0x2A, 0x00, 0xA0, 0x02, 0xD2, 0xFC, 0x2C, 0x00,
+ 0x35, 0x03, 0x27, 0xFC, 0x2E, 0x00, 0xCB, 0x03,
+ 0x58, 0xFB, 0x30, 0x00, 0x60, 0x04, 0x5E, 0xFA,
+ 0x27, 0x00, 0xB6, 0xFF, 0x9C, 0xFD, 0x27, 0x00,
+ 0x21, 0xFF, 0x9C, 0xFD, 0x27, 0x00, 0x8B, 0xFE,
+ 0x9C, 0xFD, 0x27, 0x00, 0xF6, 0xFD, 0x9C, 0xFD,
+ 0x2A, 0x00, 0x60, 0xFD, 0xD2, 0xFC, 0x2C, 0x00,
+ 0xCB, 0xFC, 0x27, 0xFC, 0x2E, 0x00, 0x35, 0xFC,
+ 0x58, 0xFB, 0x30, 0x00, 0xA0, 0xFB, 0x5E, 0xFA,
+ 0x29, 0x00, 0x4A, 0x00, 0x14, 0xFD, 0x29, 0x00,
+ 0xDF, 0x00, 0x14, 0xFD, 0x29, 0x00, 0x75, 0x01,
+ 0x14, 0xFD, 0x29, 0x00, 0x0A, 0x02, 0x14, 0xFD,
+ 0x2C, 0x00, 0xA0, 0x02, 0x1D, 0xFC, 0x2E, 0x00,
+ 0x35, 0x03, 0x4C, 0xFB, 0x30, 0x00, 0xCB, 0x03,
+ 0x4F, 0xFA, 0x30, 0x00, 0x60, 0x04, 0x1E, 0xF9,
+ 0x29, 0x00, 0xB6, 0xFF, 0x14, 0xFD, 0x29, 0x00,
+ 0x21, 0xFF, 0x14, 0xFD, 0x29, 0x00, 0x8B, 0xFE,
+ 0x14, 0xFD, 0x29, 0x00, 0xF6, 0xFD, 0x14, 0xFD,
+ 0x2C, 0x00, 0x60, 0xFD, 0x1D, 0xFC, 0x2E, 0x00,
+ 0xCB, 0xFC, 0x4C, 0xFB, 0x30, 0x00, 0x35, 0xFC,
+ 0x4F, 0xFA, 0x30, 0x00, 0xA0, 0xFB, 0x1E, 0xF9,
+ 0x2B, 0x00, 0x4A, 0x00, 0x8C, 0xFC, 0x2B, 0x00,
+ 0xDF, 0x00, 0x8C, 0xFC, 0x2B, 0x00, 0x75, 0x01,
+ 0x8C, 0xFC, 0x2B, 0x00, 0x0A, 0x02, 0x8C, 0xFC,
+ 0x2E, 0x00, 0xA0, 0x02, 0x68, 0xFB, 0x30, 0x00,
+ 0x35, 0x03, 0x71, 0xFA, 0x30, 0x00, 0xCB, 0x03,
+ 0x46, 0xF9, 0x30, 0x00, 0x60, 0x04, 0xDD, 0xF7,
+ 0x2B, 0x00, 0xB6, 0xFF, 0x8C, 0xFC, 0x2B, 0x00,
+ 0x21, 0xFF, 0x8C, 0xFC, 0x2B, 0x00, 0x8B, 0xFE,
+ 0x8C, 0xFC, 0x2B, 0x00, 0xF6, 0xFD, 0x8C, 0xFC,
+ 0x2E, 0x00, 0x60, 0xFD, 0x68, 0xFB, 0x30, 0x00,
+ 0xCB, 0xFC, 0x71, 0xFA, 0x30, 0x00, 0x35, 0xFC,
+ 0x46, 0xF9, 0x30, 0x00, 0xA0, 0xFB, 0xDD, 0xF7,
+ 0x2D, 0x00, 0x4A, 0x00, 0x04, 0xFC, 0x2D, 0x00,
+ 0xDF, 0x00, 0x04, 0xFC, 0x2D, 0x00, 0x75, 0x01,
+ 0x04, 0xFC, 0x2D, 0x00, 0x0A, 0x02, 0x04, 0xFC,
+ 0x30, 0x00, 0xA0, 0x02, 0xB3, 0xFA, 0x30, 0x00,
+ 0x35, 0x03, 0x96, 0xF9, 0x30, 0x00, 0xCB, 0x03,
+ 0x3D, 0xF8, 0x30, 0x00, 0x60, 0x04, 0x9D, 0xF6,
+ 0x2D, 0x00, 0xB6, 0xFF, 0x04, 0xFC, 0x2D, 0x00,
+ 0x21, 0xFF, 0x04, 0xFC, 0x2D, 0x00, 0x8B, 0xFE,
+ 0x04, 0xFC, 0x2D, 0x00, 0xF6, 0xFD, 0x04, 0xFC,
+ 0x30, 0x00, 0x60, 0xFD, 0xB3, 0xFA, 0x30, 0x00,
+ 0xCB, 0xFC, 0x96, 0xF9, 0x30, 0x00, 0x35, 0xFC,
+ 0x3D, 0xF8, 0x30, 0x00, 0xA0, 0xFB, 0x9D, 0xF6,
+ 0x25, 0x00, 0x52, 0x00, 0x4A, 0x00, 0x25, 0x00,
+ 0xF6, 0x00, 0x4A, 0x00, 0x25, 0x00, 0x9B, 0x01,
+ 0x4A, 0x00, 0x25, 0x00, 0x3F, 0x02, 0x4A, 0x00,
+ 0x28, 0x00, 0xE4, 0x02, 0x63, 0x00, 0x2A, 0x00,
+ 0x88, 0x03, 0x78, 0x00, 0x2C, 0x00, 0x2D, 0x04,
+ 0x91, 0x00, 0x2E, 0x00, 0xD1, 0x04, 0xB0, 0x00,
+ 0x25, 0x00, 0xAE, 0xFF, 0x4A, 0x00, 0x25, 0x00,
+ 0x0A, 0xFF, 0x4A, 0x00, 0x25, 0x00, 0x65, 0xFE,
+ 0x4A, 0x00, 0x25, 0x00, 0xC1, 0xFD, 0x4A, 0x00,
+ 0x28, 0x00, 0x1C, 0xFD, 0x63, 0x00, 0x2A, 0x00,
+ 0x78, 0xFC, 0x78, 0x00, 0x2C, 0x00, 0xD3, 0xFB,
+ 0x91, 0x00, 0x2E, 0x00, 0x2F, 0xFB, 0xB0, 0x00,
+ 0x25, 0x00, 0x52, 0x00, 0xDF, 0x00, 0x25, 0x00,
+ 0xF6, 0x00, 0xDF, 0x00, 0x25, 0x00, 0x9B, 0x01,
+ 0xDF, 0x00, 0x25, 0x00, 0x3F, 0x02, 0xDF, 0x00,
+ 0x28, 0x00, 0xE4, 0x02, 0x2A, 0x01, 0x2A, 0x00,
+ 0x88, 0x03, 0x68, 0x01, 0x2C, 0x00, 0x2D, 0x04,
+ 0xB4, 0x01, 0x2E, 0x00, 0xD1, 0x04, 0x10, 0x02,
+ 0x25, 0x00, 0xAE, 0xFF, 0xDF, 0x00, 0x25, 0x00,
+ 0x0A, 0xFF, 0xDF, 0x00, 0x25, 0x00, 0x65, 0xFE,
+ 0xDF, 0x00, 0x25, 0x00, 0xC1, 0xFD, 0xDF, 0x00,
+ 0x28, 0x00, 0x1C, 0xFD, 0x2A, 0x01, 0x2A, 0x00,
+ 0x78, 0xFC, 0x68, 0x01, 0x2C, 0x00, 0xD3, 0xFB,
+ 0xB4, 0x01, 0x2E, 0x00, 0x2F, 0xFB, 0x10, 0x02,
+ 0x25, 0x00, 0x52, 0x00, 0x75, 0x01, 0x25, 0x00,
+ 0xF6, 0x00, 0x75, 0x01, 0x25, 0x00, 0x9B, 0x01,
+ 0x75, 0x01, 0x25, 0x00, 0x3F, 0x02, 0x75, 0x01,
+ 0x28, 0x00, 0xE4, 0x02, 0xF1, 0x01, 0x2A, 0x00,
+ 0x88, 0x03, 0x59, 0x02, 0x2C, 0x00, 0x2D, 0x04,
+ 0xD8, 0x02, 0x2E, 0x00, 0xD1, 0x04, 0x71, 0x03,
+ 0x25, 0x00, 0xAE, 0xFF, 0x75, 0x01, 0x25, 0x00,
+ 0x0A, 0xFF, 0x75, 0x01, 0x25, 0x00, 0x65, 0xFE,
+ 0x75, 0x01, 0x25, 0x00, 0xC1, 0xFD, 0x75, 0x01,
+ 0x28, 0x00, 0x1C, 0xFD, 0xF1, 0x01, 0x2A, 0x00,
+ 0x78, 0xFC, 0x59, 0x02, 0x2C, 0x00, 0xD3, 0xFB,
+ 0xD8, 0x02, 0x2E, 0x00, 0x2F, 0xFB, 0x71, 0x03,
+ 0x25, 0x00, 0x52, 0x00, 0x0A, 0x02, 0x25, 0x00,
+ 0xF6, 0x00, 0x0A, 0x02, 0x25, 0x00, 0x9B, 0x01,
+ 0x0A, 0x02, 0x25, 0x00, 0x3F, 0x02, 0x0A, 0x02,
+ 0x28, 0x00, 0xE4, 0x02, 0xB8, 0x02, 0x2A, 0x00,
+ 0x88, 0x03, 0x49, 0x03, 0x2C, 0x00, 0x2D, 0x04,
+ 0xFB, 0x03, 0x2E, 0x00, 0xD1, 0x04, 0xD1, 0x04,
+ 0x25, 0x00, 0xAE, 0xFF, 0x0A, 0x02, 0x25, 0x00,
+ 0x0A, 0xFF, 0x0A, 0x02, 0x25, 0x00, 0x65, 0xFE,
+ 0x0A, 0x02, 0x25, 0x00, 0xC1, 0xFD, 0x0A, 0x02,
+ 0x28, 0x00, 0x1C, 0xFD, 0xB8, 0x02, 0x2A, 0x00,
+ 0x78, 0xFC, 0x49, 0x03, 0x2C, 0x00, 0xD3, 0xFB,
+ 0xFB, 0x03, 0x2E, 0x00, 0x2F, 0xFB, 0xD1, 0x04,
+ 0x28, 0x00, 0x52, 0x00, 0xA0, 0x02, 0x28, 0x00,
+ 0xF6, 0x00, 0xA0, 0x02, 0x28, 0x00, 0x9B, 0x01,
+ 0xA0, 0x02, 0x28, 0x00, 0x3F, 0x02, 0xA0, 0x02,
+ 0x2B, 0x00, 0xE4, 0x02, 0x7F, 0x03, 0x2D, 0x00,
+ 0x88, 0x03, 0x3B, 0x04, 0x2F, 0x00, 0x2D, 0x04,
+ 0x1F, 0x05, 0x30, 0x00, 0xD1, 0x04, 0x33, 0x06,
+ 0x28, 0x00, 0xAE, 0xFF, 0xA0, 0x02, 0x28, 0x00,
+ 0x0A, 0xFF, 0xA0, 0x02, 0x28, 0x00, 0x65, 0xFE,
+ 0xA0, 0x02, 0x28, 0x00, 0xC1, 0xFD, 0xA0, 0x02,
+ 0x2B, 0x00, 0x1C, 0xFD, 0x7F, 0x03, 0x2D, 0x00,
+ 0x78, 0xFC, 0x3B, 0x04, 0x2F, 0x00, 0xD3, 0xFB,
+ 0x1F, 0x05, 0x30, 0x00, 0x2F, 0xFB, 0x33, 0x06,
+ 0x2A, 0x00, 0x52, 0x00, 0x35, 0x03, 0x2A, 0x00,
+ 0xF6, 0x00, 0x35, 0x03, 0x2A, 0x00, 0x9B, 0x01,
+ 0x35, 0x03, 0x2A, 0x00, 0x3F, 0x02, 0x35, 0x03,
+ 0x2D, 0x00, 0xE4, 0x02, 0x46, 0x04, 0x2F, 0x00,
+ 0x88, 0x03, 0x2B, 0x05, 0x30, 0x00, 0x2D, 0x04,
+ 0x42, 0x06, 0x30, 0x00, 0xD1, 0x04, 0x93, 0x07,
+ 0x2A, 0x00, 0xAE, 0xFF, 0x35, 0x03, 0x2A, 0x00,
+ 0x0A, 0xFF, 0x35, 0x03, 0x2A, 0x00, 0x65, 0xFE,
+ 0x35, 0x03, 0x2A, 0x00, 0xC1, 0xFD, 0x35, 0x03,
+ 0x2D, 0x00, 0x1C, 0xFD, 0x46, 0x04, 0x2F, 0x00,
+ 0x78, 0xFC, 0x2B, 0x05, 0x30, 0x00, 0xD3, 0xFB,
+ 0x42, 0x06, 0x30, 0x00, 0x2F, 0xFB, 0x93, 0x07,
+ 0x2C, 0x00, 0x52, 0x00, 0xCB, 0x03, 0x2C, 0x00,
+ 0xF6, 0x00, 0xCB, 0x03, 0x2C, 0x00, 0x9B, 0x01,
+ 0xCB, 0x03, 0x2C, 0x00, 0x3F, 0x02, 0xCB, 0x03,
+ 0x2F, 0x00, 0xE4, 0x02, 0x0D, 0x05, 0x30, 0x00,
+ 0x88, 0x03, 0x1C, 0x06, 0x30, 0x00, 0x2D, 0x04,
+ 0x66, 0x07, 0x30, 0x00, 0xD1, 0x04, 0xF4, 0x08,
+ 0x2C, 0x00, 0xAE, 0xFF, 0xCB, 0x03, 0x2C, 0x00,
+ 0x0A, 0xFF, 0xCB, 0x03, 0x2C, 0x00, 0x65, 0xFE,
+ 0xCB, 0x03, 0x2C, 0x00, 0xC1, 0xFD, 0xCB, 0x03,
+ 0x2F, 0x00, 0x1C, 0xFD, 0x0D, 0x05, 0x30, 0x00,
+ 0x78, 0xFC, 0x1C, 0x06, 0x30, 0x00, 0xD3, 0xFB,
+ 0x66, 0x07, 0x30, 0x00, 0x2F, 0xFB, 0xF4, 0x08,
+ 0x2E, 0x00, 0x52, 0x00, 0x60, 0x04, 0x2E, 0x00,
+ 0xF6, 0x00, 0x60, 0x04, 0x2E, 0x00, 0x9B, 0x01,
+ 0x60, 0x04, 0x2E, 0x00, 0x3F, 0x02, 0x60, 0x04,
+ 0x30, 0x00, 0xE4, 0x02, 0xD4, 0x05, 0x30, 0x00,
+ 0x88, 0x03, 0x0C, 0x07, 0x30, 0x00, 0x2D, 0x04,
+ 0x89, 0x08, 0x30, 0x00, 0xD1, 0x04, 0x54, 0x0A,
+ 0x2E, 0x00, 0xAE, 0xFF, 0x60, 0x04, 0x2E, 0x00,
+ 0x0A, 0xFF, 0x60, 0x04, 0x2E, 0x00, 0x65, 0xFE,
+ 0x60, 0x04, 0x2E, 0x00, 0xC1, 0xFD, 0x60, 0x04,
+ 0x30, 0x00, 0x1C, 0xFD, 0xD4, 0x05, 0x30, 0x00,
+ 0x78, 0xFC, 0x0C, 0x07, 0x30, 0x00, 0xD3, 0xFB,
+ 0x89, 0x08, 0x30, 0x00, 0x2F, 0xFB, 0x54, 0x0A,
+ 0x25, 0x00, 0x52, 0x00, 0xB6, 0xFF, 0x25, 0x00,
+ 0xF6, 0x00, 0xB6, 0xFF, 0x25, 0x00, 0x9B, 0x01,
+ 0xB6, 0xFF, 0x25, 0x00, 0x3F, 0x02, 0xB6, 0xFF,
+ 0x28, 0x00, 0xE4, 0x02, 0x9D, 0xFF, 0x2A, 0x00,
+ 0x88, 0x03, 0x88, 0xFF, 0x2C, 0x00, 0x2D, 0x04,
+ 0x6F, 0xFF, 0x2E, 0x00, 0xD1, 0x04, 0x50, 0xFF,
+ 0x25, 0x00, 0xAE, 0xFF, 0xB6, 0xFF, 0x25, 0x00,
+ 0x0A, 0xFF, 0xB6, 0xFF, 0x25, 0x00, 0x65, 0xFE,
+ 0xB6, 0xFF, 0x25, 0x00, 0xC1, 0xFD, 0xB6, 0xFF,
+ 0x28, 0x00, 0x1C, 0xFD, 0x9D, 0xFF, 0x2A, 0x00,
+ 0x78, 0xFC, 0x88, 0xFF, 0x2C, 0x00, 0xD3, 0xFB,
+ 0x6F, 0xFF, 0x2E, 0x00, 0x2F, 0xFB, 0x50, 0xFF,
+ 0x25, 0x00, 0x52, 0x00, 0x21, 0xFF, 0x25, 0x00,
+ 0xF6, 0x00, 0x21, 0xFF, 0x25, 0x00, 0x9B, 0x01,
+ 0x21, 0xFF, 0x25, 0x00, 0x3F, 0x02, 0x21, 0xFF,
+ 0x28, 0x00, 0xE4, 0x02, 0xD6, 0xFE, 0x2A, 0x00,
+ 0x88, 0x03, 0x98, 0xFE, 0x2C, 0x00, 0x2D, 0x04,
+ 0x4C, 0xFE, 0x2E, 0x00, 0xD1, 0x04, 0xF0, 0xFD,
+ 0x25, 0x00, 0xAE, 0xFF, 0x21, 0xFF, 0x25, 0x00,
+ 0x0A, 0xFF, 0x21, 0xFF, 0x25, 0x00, 0x65, 0xFE,
+ 0x21, 0xFF, 0x25, 0x00, 0xC1, 0xFD, 0x21, 0xFF,
+ 0x28, 0x00, 0x1C, 0xFD, 0xD6, 0xFE, 0x2A, 0x00,
+ 0x78, 0xFC, 0x98, 0xFE, 0x2C, 0x00, 0xD3, 0xFB,
+ 0x4C, 0xFE, 0x2E, 0x00, 0x2F, 0xFB, 0xF0, 0xFD,
+ 0x25, 0x00, 0x52, 0x00, 0x8B, 0xFE, 0x25, 0x00,
+ 0xF6, 0x00, 0x8B, 0xFE, 0x25, 0x00, 0x9B, 0x01,
+ 0x8B, 0xFE, 0x25, 0x00, 0x3F, 0x02, 0x8B, 0xFE,
+ 0x28, 0x00, 0xE4, 0x02, 0x0F, 0xFE, 0x2A, 0x00,
+ 0x88, 0x03, 0xA7, 0xFD, 0x2C, 0x00, 0x2D, 0x04,
+ 0x28, 0xFD, 0x2E, 0x00, 0xD1, 0x04, 0x8F, 0xFC,
+ 0x25, 0x00, 0xAE, 0xFF, 0x8B, 0xFE, 0x25, 0x00,
+ 0x0A, 0xFF, 0x8B, 0xFE, 0x25, 0x00, 0x65, 0xFE,
+ 0x8B, 0xFE, 0x25, 0x00, 0xC1, 0xFD, 0x8B, 0xFE,
+ 0x28, 0x00, 0x1C, 0xFD, 0x0F, 0xFE, 0x2A, 0x00,
+ 0x78, 0xFC, 0xA7, 0xFD, 0x2C, 0x00, 0xD3, 0xFB,
+ 0x28, 0xFD, 0x2E, 0x00, 0x2F, 0xFB, 0x8F, 0xFC,
+ 0x25, 0x00, 0x52, 0x00, 0xF6, 0xFD, 0x25, 0x00,
+ 0xF6, 0x00, 0xF6, 0xFD, 0x25, 0x00, 0x9B, 0x01,
+ 0xF6, 0xFD, 0x25, 0x00, 0x3F, 0x02, 0xF6, 0xFD,
+ 0x28, 0x00, 0xE4, 0x02, 0x48, 0xFD, 0x2A, 0x00,
+ 0x88, 0x03, 0xB7, 0xFC, 0x2C, 0x00, 0x2D, 0x04,
+ 0x05, 0xFC, 0x2E, 0x00, 0xD1, 0x04, 0x2F, 0xFB,
+ 0x25, 0x00, 0xAE, 0xFF, 0xF6, 0xFD, 0x25, 0x00,
+ 0x0A, 0xFF, 0xF6, 0xFD, 0x25, 0x00, 0x65, 0xFE,
+ 0xF6, 0xFD, 0x25, 0x00, 0xC1, 0xFD, 0xF6, 0xFD,
+ 0x28, 0x00, 0x1C, 0xFD, 0x48, 0xFD, 0x2A, 0x00,
+ 0x78, 0xFC, 0xB7, 0xFC, 0x2C, 0x00, 0xD3, 0xFB,
+ 0x05, 0xFC, 0x2E, 0x00, 0x2F, 0xFB, 0x2F, 0xFB,
+ 0x28, 0x00, 0x52, 0x00, 0x60, 0xFD, 0x28, 0x00,
+ 0xF6, 0x00, 0x60, 0xFD, 0x28, 0x00, 0x9B, 0x01,
+ 0x60, 0xFD, 0x28, 0x00, 0x3F, 0x02, 0x60, 0xFD,
+ 0x2B, 0x00, 0xE4, 0x02, 0x81, 0xFC, 0x2D, 0x00,
+ 0x88, 0x03, 0xC5, 0xFB, 0x2F, 0x00, 0x2D, 0x04,
+ 0xE1, 0xFA, 0x30, 0x00, 0xD1, 0x04, 0xCD, 0xF9,
+ 0x28, 0x00, 0xAE, 0xFF, 0x60, 0xFD, 0x28, 0x00,
+ 0x0A, 0xFF, 0x60, 0xFD, 0x28, 0x00, 0x65, 0xFE,
+ 0x60, 0xFD, 0x28, 0x00, 0xC1, 0xFD, 0x60, 0xFD,
+ 0x2B, 0x00, 0x1C, 0xFD, 0x81, 0xFC, 0x2D, 0x00,
+ 0x78, 0xFC, 0xC5, 0xFB, 0x2F, 0x00, 0xD3, 0xFB,
+ 0xE1, 0xFA, 0x30, 0x00, 0x2F, 0xFB, 0xCD, 0xF9,
+ 0x2A, 0x00, 0x52, 0x00, 0xCB, 0xFC, 0x2A, 0x00,
+ 0xF6, 0x00, 0xCB, 0xFC, 0x2A, 0x00, 0x9B, 0x01,
+ 0xCB, 0xFC, 0x2A, 0x00, 0x3F, 0x02, 0xCB, 0xFC,
+ 0x2D, 0x00, 0xE4, 0x02, 0xBA, 0xFB, 0x2F, 0x00,
+ 0x88, 0x03, 0xD5, 0xFA, 0x30, 0x00, 0x2D, 0x04,
+ 0xBE, 0xF9, 0x30, 0x00, 0xD1, 0x04, 0x6D, 0xF8,
+ 0x2A, 0x00, 0xAE, 0xFF, 0xCB, 0xFC, 0x2A, 0x00,
+ 0x0A, 0xFF, 0xCB, 0xFC, 0x2A, 0x00, 0x65, 0xFE,
+ 0xCB, 0xFC, 0x2A, 0x00, 0xC1, 0xFD, 0xCB, 0xFC,
+ 0x2D, 0x00, 0x1C, 0xFD, 0xBA, 0xFB, 0x2F, 0x00,
+ 0x78, 0xFC, 0xD5, 0xFA, 0x30, 0x00, 0xD3, 0xFB,
+ 0xBE, 0xF9, 0x30, 0x00, 0x2F, 0xFB, 0x6D, 0xF8,
+ 0x2C, 0x00, 0x52, 0x00, 0x35, 0xFC, 0x2C, 0x00,
+ 0xF6, 0x00, 0x35, 0xFC, 0x2C, 0x00, 0x9B, 0x01,
+ 0x35, 0xFC, 0x2C, 0x00, 0x3F, 0x02, 0x35, 0xFC,
+ 0x2F, 0x00, 0xE4, 0x02, 0xF3, 0xFA, 0x30, 0x00,
+ 0x88, 0x03, 0xE4, 0xF9, 0x30, 0x00, 0x2D, 0x04,
+ 0x9A, 0xF8, 0x30, 0x00, 0xD1, 0x04, 0x0C, 0xF7,
+ 0x2C, 0x00, 0xAE, 0xFF, 0x35, 0xFC, 0x2C, 0x00,
+ 0x0A, 0xFF, 0x35, 0xFC, 0x2C, 0x00, 0x65, 0xFE,
+ 0x35, 0xFC, 0x2C, 0x00, 0xC1, 0xFD, 0x35, 0xFC,
+ 0x2F, 0x00, 0x1C, 0xFD, 0xF3, 0xFA, 0x30, 0x00,
+ 0x78, 0xFC, 0xE4, 0xF9, 0x30, 0x00, 0xD3, 0xFB,
+ 0x9A, 0xF8, 0x30, 0x00, 0x2F, 0xFB, 0x0C, 0xF7,
+ 0x2E, 0x00, 0x52, 0x00, 0xA0, 0xFB, 0x2E, 0x00,
+ 0xF6, 0x00, 0xA0, 0xFB, 0x2E, 0x00, 0x9B, 0x01,
+ 0xA0, 0xFB, 0x2E, 0x00, 0x3F, 0x02, 0xA0, 0xFB,
+ 0x30, 0x00, 0xE4, 0x02, 0x2C, 0xFA, 0x30, 0x00,
+ 0x88, 0x03, 0xF4, 0xF8, 0x30, 0x00, 0x2D, 0x04,
+ 0x77, 0xF7, 0x30, 0x00, 0xD1, 0x04, 0xAC, 0xF5,
+ 0x2E, 0x00, 0xAE, 0xFF, 0xA0, 0xFB, 0x2E, 0x00,
+ 0x0A, 0xFF, 0xA0, 0xFB, 0x2E, 0x00, 0x65, 0xFE,
+ 0xA0, 0xFB, 0x2E, 0x00, 0xC1, 0xFD, 0xA0, 0xFB,
+ 0x30, 0x00, 0x1C, 0xFD, 0x2C, 0xFA, 0x30, 0x00,
+ 0x78, 0xFC, 0xF4, 0xF8, 0x30, 0x00, 0xD3, 0xFB,
+ 0x77, 0xF7, 0x30, 0x00, 0x2F, 0xFB, 0xAC, 0xF5,
+ 0x26, 0x00, 0x5A, 0x00, 0x52, 0x00, 0x26, 0x00,
+ 0x0F, 0x01, 0x52, 0x00, 0x26, 0x00, 0xC4, 0x01,
+ 0x52, 0x00, 0x26, 0x00, 0x79, 0x02, 0x52, 0x00,
+ 0x29, 0x00, 0x2E, 0x03, 0x6D, 0x00, 0x2B, 0x00,
+ 0xE3, 0x03, 0x84, 0x00, 0x2D, 0x00, 0x98, 0x04,
+ 0xA0, 0x00, 0x2F, 0x00, 0x4D, 0x05, 0xC2, 0x00,
+ 0x26, 0x00, 0xA6, 0xFF, 0x52, 0x00, 0x26, 0x00,
+ 0xF1, 0xFE, 0x52, 0x00, 0x26, 0x00, 0x3C, 0xFE,
+ 0x52, 0x00, 0x26, 0x00, 0x87, 0xFD, 0x52, 0x00,
+ 0x29, 0x00, 0xD2, 0xFC, 0x6D, 0x00, 0x2B, 0x00,
+ 0x1D, 0xFC, 0x84, 0x00, 0x2D, 0x00, 0x68, 0xFB,
+ 0xA0, 0x00, 0x2F, 0x00, 0xB3, 0xFA, 0xC2, 0x00,
+ 0x26, 0x00, 0x5A, 0x00, 0xF6, 0x00, 0x26, 0x00,
+ 0x0F, 0x01, 0xF6, 0x00, 0x26, 0x00, 0xC4, 0x01,
+ 0xF6, 0x00, 0x26, 0x00, 0x79, 0x02, 0xF6, 0x00,
+ 0x29, 0x00, 0x2E, 0x03, 0x48, 0x01, 0x2B, 0x00,
+ 0xE3, 0x03, 0x8D, 0x01, 0x2D, 0x00, 0x98, 0x04,
+ 0xE0, 0x01, 0x2F, 0x00, 0x4D, 0x05, 0x46, 0x02,
+ 0x26, 0x00, 0xA6, 0xFF, 0xF6, 0x00, 0x26, 0x00,
+ 0xF1, 0xFE, 0xF6, 0x00, 0x26, 0x00, 0x3C, 0xFE,
+ 0xF6, 0x00, 0x26, 0x00, 0x87, 0xFD, 0xF6, 0x00,
+ 0x29, 0x00, 0xD2, 0xFC, 0x48, 0x01, 0x2B, 0x00,
+ 0x1D, 0xFC, 0x8D, 0x01, 0x2D, 0x00, 0x68, 0xFB,
+ 0xE0, 0x01, 0x2F, 0x00, 0xB3, 0xFA, 0x46, 0x02,
+ 0x26, 0x00, 0x5A, 0x00, 0x9B, 0x01, 0x26, 0x00,
+ 0x0F, 0x01, 0x9B, 0x01, 0x26, 0x00, 0xC4, 0x01,
+ 0x9B, 0x01, 0x26, 0x00, 0x79, 0x02, 0x9B, 0x01,
+ 0x29, 0x00, 0x2E, 0x03, 0x23, 0x02, 0x2B, 0x00,
+ 0xE3, 0x03, 0x96, 0x02, 0x2D, 0x00, 0x98, 0x04,
+ 0x21, 0x03, 0x2F, 0x00, 0x4D, 0x05, 0xCA, 0x03,
+ 0x26, 0x00, 0xA6, 0xFF, 0x9B, 0x01, 0x26, 0x00,
+ 0xF1, 0xFE, 0x9B, 0x01, 0x26, 0x00, 0x3C, 0xFE,
+ 0x9B, 0x01, 0x26, 0x00, 0x87, 0xFD, 0x9B, 0x01,
+ 0x29, 0x00, 0xD2, 0xFC, 0x23, 0x02, 0x2B, 0x00,
+ 0x1D, 0xFC, 0x96, 0x02, 0x2D, 0x00, 0x68, 0xFB,
+ 0x21, 0x03, 0x2F, 0x00, 0xB3, 0xFA, 0xCA, 0x03,
+ 0x26, 0x00, 0x5A, 0x00, 0x3F, 0x02, 0x26, 0x00,
+ 0x0F, 0x01, 0x3F, 0x02, 0x26, 0x00, 0xC4, 0x01,
+ 0x3F, 0x02, 0x26, 0x00, 0x79, 0x02, 0x3F, 0x02,
+ 0x29, 0x00, 0x2E, 0x03, 0xFE, 0x02, 0x2B, 0x00,
+ 0xE3, 0x03, 0x9F, 0x03, 0x2D, 0x00, 0x98, 0x04,
+ 0x61, 0x04, 0x2F, 0x00, 0x4D, 0x05, 0x4E, 0x05,
+ 0x26, 0x00, 0xA6, 0xFF, 0x3F, 0x02, 0x26, 0x00,
+ 0xF1, 0xFE, 0x3F, 0x02, 0x26, 0x00, 0x3C, 0xFE,
+ 0x3F, 0x02, 0x26, 0x00, 0x87, 0xFD, 0x3F, 0x02,
+ 0x29, 0x00, 0xD2, 0xFC, 0xFE, 0x02, 0x2B, 0x00,
+ 0x1D, 0xFC, 0x9F, 0x03, 0x2D, 0x00, 0x68, 0xFB,
+ 0x61, 0x04, 0x2F, 0x00, 0xB3, 0xFA, 0x4E, 0x05,
+ 0x29, 0x00, 0x5A, 0x00, 0xE4, 0x02, 0x29, 0x00,
+ 0x0F, 0x01, 0xE4, 0x02, 0x29, 0x00, 0xC4, 0x01,
+ 0xE4, 0x02, 0x29, 0x00, 0x79, 0x02, 0xE4, 0x02,
+ 0x2C, 0x00, 0x2E, 0x03, 0xD9, 0x03, 0x2E, 0x00,
+ 0xE3, 0x03, 0xA8, 0x04, 0x30, 0x00, 0x98, 0x04,
+ 0xA2, 0x05, 0x30, 0x00, 0x4D, 0x05, 0xD2, 0x06,
+ 0x29, 0x00, 0xA6, 0xFF, 0xE4, 0x02, 0x29, 0x00,
+ 0xF1, 0xFE, 0xE4, 0x02, 0x29, 0x00, 0x3C, 0xFE,
+ 0xE4, 0x02, 0x29, 0x00, 0x87, 0xFD, 0xE4, 0x02,
+ 0x2C, 0x00, 0xD2, 0xFC, 0xD9, 0x03, 0x2E, 0x00,
+ 0x1D, 0xFC, 0xA8, 0x04, 0x30, 0x00, 0x68, 0xFB,
+ 0xA2, 0x05, 0x30, 0x00, 0xB3, 0xFA, 0xD2, 0x06,
+ 0x2B, 0x00, 0x5A, 0x00, 0x88, 0x03, 0x2B, 0x00,
+ 0x0F, 0x01, 0x88, 0x03, 0x2B, 0x00, 0xC4, 0x01,
+ 0x88, 0x03, 0x2B, 0x00, 0x79, 0x02, 0x88, 0x03,
+ 0x2E, 0x00, 0x2E, 0x03, 0xB4, 0x04, 0x30, 0x00,
+ 0xE3, 0x03, 0xB1, 0x05, 0x30, 0x00, 0x98, 0x04,
+ 0xE2, 0x06, 0x30, 0x00, 0x4D, 0x05, 0x56, 0x08,
+ 0x2B, 0x00, 0xA6, 0xFF, 0x88, 0x03, 0x2B, 0x00,
+ 0xF1, 0xFE, 0x88, 0x03, 0x2B, 0x00, 0x3C, 0xFE,
+ 0x88, 0x03, 0x2B, 0x00, 0x87, 0xFD, 0x88, 0x03,
+ 0x2E, 0x00, 0xD2, 0xFC, 0xB4, 0x04, 0x30, 0x00,
+ 0x1D, 0xFC, 0xB1, 0x05, 0x30, 0x00, 0x68, 0xFB,
+ 0xE2, 0x06, 0x30, 0x00, 0xB3, 0xFA, 0x56, 0x08,
+ 0x2D, 0x00, 0x5A, 0x00, 0x2D, 0x04, 0x2D, 0x00,
+ 0x0F, 0x01, 0x2D, 0x04, 0x2D, 0x00, 0xC4, 0x01,
+ 0x2D, 0x04, 0x2D, 0x00, 0x79, 0x02, 0x2D, 0x04,
+ 0x30, 0x00, 0x2E, 0x03, 0x8F, 0x05, 0x30, 0x00,
+ 0xE3, 0x03, 0xBA, 0x06, 0x30, 0x00, 0x98, 0x04,
+ 0x23, 0x08, 0x30, 0x00, 0x4D, 0x05, 0xDA, 0x09,
+ 0x2D, 0x00, 0xA6, 0xFF, 0x2D, 0x04, 0x2D, 0x00,
+ 0xF1, 0xFE, 0x2D, 0x04, 0x2D, 0x00, 0x3C, 0xFE,
+ 0x2D, 0x04, 0x2D, 0x00, 0x87, 0xFD, 0x2D, 0x04,
+ 0x30, 0x00, 0xD2, 0xFC, 0x8F, 0x05, 0x30, 0x00,
+ 0x1D, 0xFC, 0xBA, 0x06, 0x30, 0x00, 0x68, 0xFB,
+ 0x23, 0x08, 0x30, 0x00, 0xB3, 0xFA, 0xDA, 0x09,
+ 0x2F, 0x00, 0x5A, 0x00, 0xD1, 0x04, 0x2F, 0x00,
+ 0x0F, 0x01, 0xD1, 0x04, 0x2F, 0x00, 0xC4, 0x01,
+ 0xD1, 0x04, 0x2F, 0x00, 0x79, 0x02, 0xD1, 0x04,
+ 0x30, 0x00, 0x2E, 0x03, 0x6A, 0x06, 0x30, 0x00,
+ 0xE3, 0x03, 0xC3, 0x07, 0x30, 0x00, 0x98, 0x04,
+ 0x63, 0x09, 0x30, 0x00, 0x4D, 0x05, 0x5E, 0x0B,
+ 0x2F, 0x00, 0xA6, 0xFF, 0xD1, 0x04, 0x2F, 0x00,
+ 0xF1, 0xFE, 0xD1, 0x04, 0x2F, 0x00, 0x3C, 0xFE,
+ 0xD1, 0x04, 0x2F, 0x00, 0x87, 0xFD, 0xD1, 0x04,
+ 0x30, 0x00, 0xD2, 0xFC, 0x6A, 0x06, 0x30, 0x00,
+ 0x1D, 0xFC, 0xC3, 0x07, 0x30, 0x00, 0x68, 0xFB,
+ 0x63, 0x09, 0x30, 0x00, 0xB3, 0xFA, 0x5E, 0x0B,
+ 0x26, 0x00, 0x5A, 0x00, 0xAE, 0xFF, 0x26, 0x00,
+ 0x0F, 0x01, 0xAE, 0xFF, 0x26, 0x00, 0xC4, 0x01,
+ 0xAE, 0xFF, 0x26, 0x00, 0x79, 0x02, 0xAE, 0xFF,
+ 0x29, 0x00, 0x2E, 0x03, 0x93, 0xFF, 0x2B, 0x00,
+ 0xE3, 0x03, 0x7C, 0xFF, 0x2D, 0x00, 0x98, 0x04,
+ 0x60, 0xFF, 0x2F, 0x00, 0x4D, 0x05, 0x3E, 0xFF,
+ 0x26, 0x00, 0xA6, 0xFF, 0xAE, 0xFF, 0x26, 0x00,
+ 0xF1, 0xFE, 0xAE, 0xFF, 0x26, 0x00, 0x3C, 0xFE,
+ 0xAE, 0xFF, 0x26, 0x00, 0x87, 0xFD, 0xAE, 0xFF,
+ 0x29, 0x00, 0xD2, 0xFC, 0x93, 0xFF, 0x2B, 0x00,
+ 0x1D, 0xFC, 0x7C, 0xFF, 0x2D, 0x00, 0x68, 0xFB,
+ 0x60, 0xFF, 0x2F, 0x00, 0xB3, 0xFA, 0x3E, 0xFF,
+ 0x26, 0x00, 0x5A, 0x00, 0x0A, 0xFF, 0x26, 0x00,
+ 0x0F, 0x01, 0x0A, 0xFF, 0x26, 0x00, 0xC4, 0x01,
+ 0x0A, 0xFF, 0x26, 0x00, 0x79, 0x02, 0x0A, 0xFF,
+ 0x29, 0x00, 0x2E, 0x03, 0xB8, 0xFE, 0x2B, 0x00,
+ 0xE3, 0x03, 0x73, 0xFE, 0x2D, 0x00, 0x98, 0x04,
+ 0x20, 0xFE, 0x2F, 0x00, 0x4D, 0x05, 0xBA, 0xFD,
+ 0x26, 0x00, 0xA6, 0xFF, 0x0A, 0xFF, 0x26, 0x00,
+ 0xF1, 0xFE, 0x0A, 0xFF, 0x26, 0x00, 0x3C, 0xFE,
+ 0x0A, 0xFF, 0x26, 0x00, 0x87, 0xFD, 0x0A, 0xFF,
+ 0x29, 0x00, 0xD2, 0xFC, 0xB8, 0xFE, 0x2B, 0x00,
+ 0x1D, 0xFC, 0x73, 0xFE, 0x2D, 0x00, 0x68, 0xFB,
+ 0x20, 0xFE, 0x2F, 0x00, 0xB3, 0xFA, 0xBA, 0xFD,
+ 0x26, 0x00, 0x5A, 0x00, 0x65, 0xFE, 0x26, 0x00,
+ 0x0F, 0x01, 0x65, 0xFE, 0x26, 0x00, 0xC4, 0x01,
+ 0x65, 0xFE, 0x26, 0x00, 0x79, 0x02, 0x65, 0xFE,
+ 0x29, 0x00, 0x2E, 0x03, 0xDD, 0xFD, 0x2B, 0x00,
+ 0xE3, 0x03, 0x6A, 0xFD, 0x2D, 0x00, 0x98, 0x04,
+ 0xDF, 0xFC, 0x2F, 0x00, 0x4D, 0x05, 0x36, 0xFC,
+ 0x26, 0x00, 0xA6, 0xFF, 0x65, 0xFE, 0x26, 0x00,
+ 0xF1, 0xFE, 0x65, 0xFE, 0x26, 0x00, 0x3C, 0xFE,
+ 0x65, 0xFE, 0x26, 0x00, 0x87, 0xFD, 0x65, 0xFE,
+ 0x29, 0x00, 0xD2, 0xFC, 0xDD, 0xFD, 0x2B, 0x00,
+ 0x1D, 0xFC, 0x6A, 0xFD, 0x2D, 0x00, 0x68, 0xFB,
+ 0xDF, 0xFC, 0x2F, 0x00, 0xB3, 0xFA, 0x36, 0xFC,
+ 0x26, 0x00, 0x5A, 0x00, 0xC1, 0xFD, 0x26, 0x00,
+ 0x0F, 0x01, 0xC1, 0xFD, 0x26, 0x00, 0xC4, 0x01,
+ 0xC1, 0xFD, 0x26, 0x00, 0x79, 0x02, 0xC1, 0xFD,
+ 0x29, 0x00, 0x2E, 0x03, 0x02, 0xFD, 0x2B, 0x00,
+ 0xE3, 0x03, 0x61, 0xFC, 0x2D, 0x00, 0x98, 0x04,
+ 0x9F, 0xFB, 0x2F, 0x00, 0x4D, 0x05, 0xB2, 0xFA,
+ 0x26, 0x00, 0xA6, 0xFF, 0xC1, 0xFD, 0x26, 0x00,
+ 0xF1, 0xFE, 0xC1, 0xFD, 0x26, 0x00, 0x3C, 0xFE,
+ 0xC1, 0xFD, 0x26, 0x00, 0x87, 0xFD, 0xC1, 0xFD,
+ 0x29, 0x00, 0xD2, 0xFC, 0x02, 0xFD, 0x2B, 0x00,
+ 0x1D, 0xFC, 0x61, 0xFC, 0x2D, 0x00, 0x68, 0xFB,
+ 0x9F, 0xFB, 0x2F, 0x00, 0xB3, 0xFA, 0xB2, 0xFA,
+ 0x29, 0x00, 0x5A, 0x00, 0x1C, 0xFD, 0x29, 0x00,
+ 0x0F, 0x01, 0x1C, 0xFD, 0x29, 0x00, 0xC4, 0x01,
+ 0x1C, 0xFD, 0x29, 0x00, 0x79, 0x02, 0x1C, 0xFD,
+ 0x2C, 0x00, 0x2E, 0x03, 0x27, 0xFC, 0x2E, 0x00,
+ 0xE3, 0x03, 0x58, 0xFB, 0x30, 0x00, 0x98, 0x04,
+ 0x5E, 0xFA, 0x30, 0x00, 0x4D, 0x05, 0x2E, 0xF9,
+ 0x29, 0x00, 0xA6, 0xFF, 0x1C, 0xFD, 0x29, 0x00,
+ 0xF1, 0xFE, 0x1C, 0xFD, 0x29, 0x00, 0x3C, 0xFE,
+ 0x1C, 0xFD, 0x29, 0x00, 0x87, 0xFD, 0x1C, 0xFD,
+ 0x2C, 0x00, 0xD2, 0xFC, 0x27, 0xFC, 0x2E, 0x00,
+ 0x1D, 0xFC, 0x58, 0xFB, 0x30, 0x00, 0x68, 0xFB,
+ 0x5E, 0xFA, 0x30, 0x00, 0xB3, 0xFA, 0x2E, 0xF9,
+ 0x2B, 0x00, 0x5A, 0x00, 0x78, 0xFC, 0x2B, 0x00,
+ 0x0F, 0x01, 0x78, 0xFC, 0x2B, 0x00, 0xC4, 0x01,
+ 0x78, 0xFC, 0x2B, 0x00, 0x79, 0x02, 0x78, 0xFC,
+ 0x2E, 0x00, 0x2E, 0x03, 0x4C, 0xFB, 0x30, 0x00,
+ 0xE3, 0x03, 0x4F, 0xFA, 0x30, 0x00, 0x98, 0x04,
+ 0x1E, 0xF9, 0x30, 0x00, 0x4D, 0x05, 0xAA, 0xF7,
+ 0x2B, 0x00, 0xA6, 0xFF, 0x78, 0xFC, 0x2B, 0x00,
+ 0xF1, 0xFE, 0x78, 0xFC, 0x2B, 0x00, 0x3C, 0xFE,
+ 0x78, 0xFC, 0x2B, 0x00, 0x87, 0xFD, 0x78, 0xFC,
+ 0x2E, 0x00, 0xD2, 0xFC, 0x4C, 0xFB, 0x30, 0x00,
+ 0x1D, 0xFC, 0x4F, 0xFA, 0x30, 0x00, 0x68, 0xFB,
+ 0x1E, 0xF9, 0x30, 0x00, 0xB3, 0xFA, 0xAA, 0xF7,
+ 0x2D, 0x00, 0x5A, 0x00, 0xD3, 0xFB, 0x2D, 0x00,
+ 0x0F, 0x01, 0xD3, 0xFB, 0x2D, 0x00, 0xC4, 0x01,
+ 0xD3, 0xFB, 0x2D, 0x00, 0x79, 0x02, 0xD3, 0xFB,
+ 0x30, 0x00, 0x2E, 0x03, 0x71, 0xFA, 0x30, 0x00,
+ 0xE3, 0x03, 0x46, 0xF9, 0x30, 0x00, 0x98, 0x04,
+ 0xDD, 0xF7, 0x30, 0x00, 0x4D, 0x05, 0x26, 0xF6,
+ 0x2D, 0x00, 0xA6, 0xFF, 0xD3, 0xFB, 0x2D, 0x00,
+ 0xF1, 0xFE, 0xD3, 0xFB, 0x2D, 0x00, 0x3C, 0xFE,
+ 0xD3, 0xFB, 0x2D, 0x00, 0x87, 0xFD, 0xD3, 0xFB,
+ 0x30, 0x00, 0xD2, 0xFC, 0x71, 0xFA, 0x30, 0x00,
+ 0x1D, 0xFC, 0x46, 0xF9, 0x30, 0x00, 0x68, 0xFB,
+ 0xDD, 0xF7, 0x30, 0x00, 0xB3, 0xFA, 0x26, 0xF6,
+ 0x2F, 0x00, 0x5A, 0x00, 0x2F, 0xFB, 0x2F, 0x00,
+ 0x0F, 0x01, 0x2F, 0xFB, 0x2F, 0x00, 0xC4, 0x01,
+ 0x2F, 0xFB, 0x2F, 0x00, 0x79, 0x02, 0x2F, 0xFB,
+ 0x30, 0x00, 0x2E, 0x03, 0x96, 0xF9, 0x30, 0x00,
+ 0xE3, 0x03, 0x3D, 0xF8, 0x30, 0x00, 0x98, 0x04,
+ 0x9D, 0xF6, 0x30, 0x00, 0x4D, 0x05, 0xA2, 0xF4,
+ 0x2F, 0x00, 0xA6, 0xFF, 0x2F, 0xFB, 0x2F, 0x00,
+ 0xF1, 0xFE, 0x2F, 0xFB, 0x2F, 0x00, 0x3C, 0xFE,
+ 0x2F, 0xFB, 0x2F, 0x00, 0x87, 0xFD, 0x2F, 0xFB,
+ 0x30, 0x00, 0xD2, 0xFC, 0x96, 0xF9, 0x30, 0x00,
+ 0x1D, 0xFC, 0x3D, 0xF8, 0x30, 0x00, 0x68, 0xFB,
+ 0x9D, 0xF6, 0x30, 0x00, 0xB3, 0xFA, 0xA2, 0xF4,
+ 0x27, 0x00, 0x63, 0x00, 0x5A, 0x00, 0x27, 0x00,
+ 0x2A, 0x01, 0x5A, 0x00, 0x27, 0x00, 0xF1, 0x01,
+ 0x5A, 0x00, 0x27, 0x00, 0xB8, 0x02, 0x5A, 0x00,
+ 0x2A, 0x00, 0x7F, 0x03, 0x78, 0x00, 0x2C, 0x00,
+ 0x46, 0x04, 0x91, 0x00, 0x2E, 0x00, 0x0D, 0x05,
+ 0xB0, 0x00, 0x2F, 0x00, 0xD4, 0x05, 0xC2, 0x00,
+ 0x27, 0x00, 0x9D, 0xFF, 0x5A, 0x00, 0x27, 0x00,
+ 0xD6, 0xFE, 0x5A, 0x00, 0x27, 0x00, 0x0F, 0xFE,
+ 0x5A, 0x00, 0x27, 0x00, 0x48, 0xFD, 0x5A, 0x00,
+ 0x2A, 0x00, 0x81, 0xFC, 0x78, 0x00, 0x2C, 0x00,
+ 0xBA, 0xFB, 0x91, 0x00, 0x2E, 0x00, 0xF3, 0xFA,
+ 0xB0, 0x00, 0x2F, 0x00, 0x2C, 0xFA, 0xC2, 0x00,
+ 0x27, 0x00, 0x63, 0x00, 0x0F, 0x01, 0x27, 0x00,
+ 0x2A, 0x01, 0x0F, 0x01, 0x27, 0x00, 0xF1, 0x01,
+ 0x0F, 0x01, 0x27, 0x00, 0xB8, 0x02, 0x0F, 0x01,
+ 0x2A, 0x00, 0x7F, 0x03, 0x68, 0x01, 0x2C, 0x00,
+ 0x46, 0x04, 0xB4, 0x01, 0x2E, 0x00, 0x0D, 0x05,
+ 0x10, 0x02, 0x2F, 0x00, 0xD4, 0x05, 0x46, 0x02,
+ 0x27, 0x00, 0x9D, 0xFF, 0x0F, 0x01, 0x27, 0x00,
+ 0xD6, 0xFE, 0x0F, 0x01, 0x27, 0x00, 0x0F, 0xFE,
+ 0x0F, 0x01, 0x27, 0x00, 0x48, 0xFD, 0x0F, 0x01,
+ 0x2A, 0x00, 0x81, 0xFC, 0x68, 0x01, 0x2C, 0x00,
+ 0xBA, 0xFB, 0xB4, 0x01, 0x2E, 0x00, 0xF3, 0xFA,
+ 0x10, 0x02, 0x2F, 0x00, 0x2C, 0xFA, 0x46, 0x02,
+ 0x27, 0x00, 0x63, 0x00, 0xC4, 0x01, 0x27, 0x00,
+ 0x2A, 0x01, 0xC4, 0x01, 0x27, 0x00, 0xF1, 0x01,
+ 0xC4, 0x01, 0x27, 0x00, 0xB8, 0x02, 0xC4, 0x01,
+ 0x2A, 0x00, 0x7F, 0x03, 0x59, 0x02, 0x2C, 0x00,
+ 0x46, 0x04, 0xD8, 0x02, 0x2E, 0x00, 0x0D, 0x05,
+ 0x71, 0x03, 0x2F, 0x00, 0xD4, 0x05, 0xCA, 0x03,
+ 0x27, 0x00, 0x9D, 0xFF, 0xC4, 0x01, 0x27, 0x00,
+ 0xD6, 0xFE, 0xC4, 0x01, 0x27, 0x00, 0x0F, 0xFE,
+ 0xC4, 0x01, 0x27, 0x00, 0x48, 0xFD, 0xC4, 0x01,
+ 0x2A, 0x00, 0x81, 0xFC, 0x59, 0x02, 0x2C, 0x00,
+ 0xBA, 0xFB, 0xD8, 0x02, 0x2E, 0x00, 0xF3, 0xFA,
+ 0x71, 0x03, 0x2F, 0x00, 0x2C, 0xFA, 0xCA, 0x03,
+ 0x27, 0x00, 0x63, 0x00, 0x79, 0x02, 0x27, 0x00,
+ 0x2A, 0x01, 0x79, 0x02, 0x27, 0x00, 0xF1, 0x01,
+ 0x79, 0x02, 0x27, 0x00, 0xB8, 0x02, 0x79, 0x02,
+ 0x2A, 0x00, 0x7F, 0x03, 0x49, 0x03, 0x2C, 0x00,
+ 0x46, 0x04, 0xFB, 0x03, 0x2E, 0x00, 0x0D, 0x05,
+ 0xD1, 0x04, 0x2F, 0x00, 0xD4, 0x05, 0x4E, 0x05,
+ 0x27, 0x00, 0x9D, 0xFF, 0x79, 0x02, 0x27, 0x00,
+ 0xD6, 0xFE, 0x79, 0x02, 0x27, 0x00, 0x0F, 0xFE,
+ 0x79, 0x02, 0x27, 0x00, 0x48, 0xFD, 0x79, 0x02,
+ 0x2A, 0x00, 0x81, 0xFC, 0x49, 0x03, 0x2C, 0x00,
+ 0xBA, 0xFB, 0xFB, 0x03, 0x2E, 0x00, 0xF3, 0xFA,
+ 0xD1, 0x04, 0x2F, 0x00, 0x2C, 0xFA, 0x4E, 0x05,
+ 0x2A, 0x00, 0x63, 0x00, 0x2E, 0x03, 0x2A, 0x00,
+ 0x2A, 0x01, 0x2E, 0x03, 0x2A, 0x00, 0xF1, 0x01,
+ 0x2E, 0x03, 0x2A, 0x00, 0xB8, 0x02, 0x2E, 0x03,
+ 0x2D, 0x00, 0x7F, 0x03, 0x3B, 0x04, 0x2F, 0x00,
+ 0x46, 0x04, 0x1F, 0x05, 0x30, 0x00, 0x0D, 0x05,
+ 0x33, 0x06, 0x30, 0x00, 0xD4, 0x05, 0xD2, 0x06,
+ 0x2A, 0x00, 0x9D, 0xFF, 0x2E, 0x03, 0x2A, 0x00,
+ 0xD6, 0xFE, 0x2E, 0x03, 0x2A, 0x00, 0x0F, 0xFE,
+ 0x2E, 0x03, 0x2A, 0x00, 0x48, 0xFD, 0x2E, 0x03,
+ 0x2D, 0x00, 0x81, 0xFC, 0x3B, 0x04, 0x2F, 0x00,
+ 0xBA, 0xFB, 0x1F, 0x05, 0x30, 0x00, 0xF3, 0xFA,
+ 0x33, 0x06, 0x30, 0x00, 0x2C, 0xFA, 0xD2, 0x06,
+ 0x2C, 0x00, 0x63, 0x00, 0xE3, 0x03, 0x2C, 0x00,
+ 0x2A, 0x01, 0xE3, 0x03, 0x2C, 0x00, 0xF1, 0x01,
+ 0xE3, 0x03, 0x2C, 0x00, 0xB8, 0x02, 0xE3, 0x03,
+ 0x2F, 0x00, 0x7F, 0x03, 0x2B, 0x05, 0x30, 0x00,
+ 0x46, 0x04, 0x42, 0x06, 0x30, 0x00, 0x0D, 0x05,
+ 0x93, 0x07, 0x30, 0x00, 0xD4, 0x05, 0x56, 0x08,
+ 0x2C, 0x00, 0x9D, 0xFF, 0xE3, 0x03, 0x2C, 0x00,
+ 0xD6, 0xFE, 0xE3, 0x03, 0x2C, 0x00, 0x0F, 0xFE,
+ 0xE3, 0x03, 0x2C, 0x00, 0x48, 0xFD, 0xE3, 0x03,
+ 0x2F, 0x00, 0x81, 0xFC, 0x2B, 0x05, 0x30, 0x00,
+ 0xBA, 0xFB, 0x42, 0x06, 0x30, 0x00, 0xF3, 0xFA,
+ 0x93, 0x07, 0x30, 0x00, 0x2C, 0xFA, 0x56, 0x08,
+ 0x2E, 0x00, 0x63, 0x00, 0x98, 0x04, 0x2E, 0x00,
+ 0x2A, 0x01, 0x98, 0x04, 0x2E, 0x00, 0xF1, 0x01,
+ 0x98, 0x04, 0x2E, 0x00, 0xB8, 0x02, 0x98, 0x04,
+ 0x30, 0x00, 0x7F, 0x03, 0x1C, 0x06, 0x30, 0x00,
+ 0x46, 0x04, 0x66, 0x07, 0x30, 0x00, 0x0D, 0x05,
+ 0xF4, 0x08, 0x30, 0x00, 0xD4, 0x05, 0xDA, 0x09,
+ 0x2E, 0x00, 0x9D, 0xFF, 0x98, 0x04, 0x2E, 0x00,
+ 0xD6, 0xFE, 0x98, 0x04, 0x2E, 0x00, 0x0F, 0xFE,
+ 0x98, 0x04, 0x2E, 0x00, 0x48, 0xFD, 0x98, 0x04,
+ 0x30, 0x00, 0x81, 0xFC, 0x1C, 0x06, 0x30, 0x00,
+ 0xBA, 0xFB, 0x66, 0x07, 0x30, 0x00, 0xF3, 0xFA,
+ 0xF4, 0x08, 0x30, 0x00, 0x2C, 0xFA, 0xDA, 0x09,
+ 0x30, 0x00, 0x63, 0x00, 0x4D, 0x05, 0x30, 0x00,
+ 0x2A, 0x01, 0x4D, 0x05, 0x30, 0x00, 0xF1, 0x01,
+ 0x4D, 0x05, 0x30, 0x00, 0xB8, 0x02, 0x4D, 0x05,
+ 0x30, 0x00, 0x7F, 0x03, 0x0C, 0x07, 0x30, 0x00,
+ 0x46, 0x04, 0x89, 0x08, 0x30, 0x00, 0x0D, 0x05,
+ 0x54, 0x0A, 0x30, 0x00, 0xD4, 0x05, 0x5E, 0x0B,
+ 0x30, 0x00, 0x9D, 0xFF, 0x4D, 0x05, 0x30, 0x00,
+ 0xD6, 0xFE, 0x4D, 0x05, 0x30, 0x00, 0x0F, 0xFE,
+ 0x4D, 0x05, 0x30, 0x00, 0x48, 0xFD, 0x4D, 0x05,
+ 0x30, 0x00, 0x81, 0xFC, 0x0C, 0x07, 0x30, 0x00,
+ 0xBA, 0xFB, 0x89, 0x08, 0x30, 0x00, 0xF3, 0xFA,
+ 0x54, 0x0A, 0x30, 0x00, 0x2C, 0xFA, 0x5E, 0x0B,
+ 0x27, 0x00, 0x63, 0x00, 0xA6, 0xFF, 0x27, 0x00,
+ 0x2A, 0x01, 0xA6, 0xFF, 0x27, 0x00, 0xF1, 0x01,
+ 0xA6, 0xFF, 0x27, 0x00, 0xB8, 0x02, 0xA6, 0xFF,
+ 0x2A, 0x00, 0x7F, 0x03, 0x88, 0xFF, 0x2C, 0x00,
+ 0x46, 0x04, 0x6F, 0xFF, 0x2E, 0x00, 0x0D, 0x05,
+ 0x50, 0xFF, 0x2F, 0x00, 0xD4, 0x05, 0x3E, 0xFF,
+ 0x27, 0x00, 0x9D, 0xFF, 0xA6, 0xFF, 0x27, 0x00,
+ 0xD6, 0xFE, 0xA6, 0xFF, 0x27, 0x00, 0x0F, 0xFE,
+ 0xA6, 0xFF, 0x27, 0x00, 0x48, 0xFD, 0xA6, 0xFF,
+ 0x2A, 0x00, 0x81, 0xFC, 0x88, 0xFF, 0x2C, 0x00,
+ 0xBA, 0xFB, 0x6F, 0xFF, 0x2E, 0x00, 0xF3, 0xFA,
+ 0x50, 0xFF, 0x2F, 0x00, 0x2C, 0xFA, 0x3E, 0xFF,
+ 0x27, 0x00, 0x63, 0x00, 0xF1, 0xFE, 0x27, 0x00,
+ 0x2A, 0x01, 0xF1, 0xFE, 0x27, 0x00, 0xF1, 0x01,
+ 0xF1, 0xFE, 0x27, 0x00, 0xB8, 0x02, 0xF1, 0xFE,
+ 0x2A, 0x00, 0x7F, 0x03, 0x98, 0xFE, 0x2C, 0x00,
+ 0x46, 0x04, 0x4C, 0xFE, 0x2E, 0x00, 0x0D, 0x05,
+ 0xF0, 0xFD, 0x2F, 0x00, 0xD4, 0x05, 0xBA, 0xFD,
+ 0x27, 0x00, 0x9D, 0xFF, 0xF1, 0xFE, 0x27, 0x00,
+ 0xD6, 0xFE, 0xF1, 0xFE, 0x27, 0x00, 0x0F, 0xFE,
+ 0xF1, 0xFE, 0x27, 0x00, 0x48, 0xFD, 0xF1, 0xFE,
+ 0x2A, 0x00, 0x81, 0xFC, 0x98, 0xFE, 0x2C, 0x00,
+ 0xBA, 0xFB, 0x4C, 0xFE, 0x2E, 0x00, 0xF3, 0xFA,
+ 0xF0, 0xFD, 0x2F, 0x00, 0x2C, 0xFA, 0xBA, 0xFD,
+ 0x27, 0x00, 0x63, 0x00, 0x3C, 0xFE, 0x27, 0x00,
+ 0x2A, 0x01, 0x3C, 0xFE, 0x27, 0x00, 0xF1, 0x01,
+ 0x3C, 0xFE, 0x27, 0x00, 0xB8, 0x02, 0x3C, 0xFE,
+ 0x2A, 0x00, 0x7F, 0x03, 0xA7, 0xFD, 0x2C, 0x00,
+ 0x46, 0x04, 0x28, 0xFD, 0x2E, 0x00, 0x0D, 0x05,
+ 0x8F, 0xFC, 0x2F, 0x00, 0xD4, 0x05, 0x36, 0xFC,
+ 0x27, 0x00, 0x9D, 0xFF, 0x3C, 0xFE, 0x27, 0x00,
+ 0xD6, 0xFE, 0x3C, 0xFE, 0x27, 0x00, 0x0F, 0xFE,
+ 0x3C, 0xFE, 0x27, 0x00, 0x48, 0xFD, 0x3C, 0xFE,
+ 0x2A, 0x00, 0x81, 0xFC, 0xA7, 0xFD, 0x2C, 0x00,
+ 0xBA, 0xFB, 0x28, 0xFD, 0x2E, 0x00, 0xF3, 0xFA,
+ 0x8F, 0xFC, 0x2F, 0x00, 0x2C, 0xFA, 0x36, 0xFC,
+ 0x27, 0x00, 0x63, 0x00, 0x87, 0xFD, 0x27, 0x00,
+ 0x2A, 0x01, 0x87, 0xFD, 0x27, 0x00, 0xF1, 0x01,
+ 0x87, 0xFD, 0x27, 0x00, 0xB8, 0x02, 0x87, 0xFD,
+ 0x2A, 0x00, 0x7F, 0x03, 0xB7, 0xFC, 0x2C, 0x00,
+ 0x46, 0x04, 0x05, 0xFC, 0x2E, 0x00, 0x0D, 0x05,
+ 0x2F, 0xFB, 0x2F, 0x00, 0xD4, 0x05, 0xB2, 0xFA,
+ 0x27, 0x00, 0x9D, 0xFF, 0x87, 0xFD, 0x27, 0x00,
+ 0xD6, 0xFE, 0x87, 0xFD, 0x27, 0x00, 0x0F, 0xFE,
+ 0x87, 0xFD, 0x27, 0x00, 0x48, 0xFD, 0x87, 0xFD,
+ 0x2A, 0x00, 0x81, 0xFC, 0xB7, 0xFC, 0x2C, 0x00,
+ 0xBA, 0xFB, 0x05, 0xFC, 0x2E, 0x00, 0xF3, 0xFA,
+ 0x2F, 0xFB, 0x2F, 0x00, 0x2C, 0xFA, 0xB2, 0xFA,
+ 0x2A, 0x00, 0x63, 0x00, 0xD2, 0xFC, 0x2A, 0x00,
+ 0x2A, 0x01, 0xD2, 0xFC, 0x2A, 0x00, 0xF1, 0x01,
+ 0xD2, 0xFC, 0x2A, 0x00, 0xB8, 0x02, 0xD2, 0xFC,
+ 0x2D, 0x00, 0x7F, 0x03, 0xC5, 0xFB, 0x2F, 0x00,
+ 0x46, 0x04, 0xE1, 0xFA, 0x30, 0x00, 0x0D, 0x05,
+ 0xCD, 0xF9, 0x30, 0x00, 0xD4, 0x05, 0x2E, 0xF9,
+ 0x2A, 0x00, 0x9D, 0xFF, 0xD2, 0xFC, 0x2A, 0x00,
+ 0xD6, 0xFE, 0xD2, 0xFC, 0x2A, 0x00, 0x0F, 0xFE,
+ 0xD2, 0xFC, 0x2A, 0x00, 0x48, 0xFD, 0xD2, 0xFC,
+ 0x2D, 0x00, 0x81, 0xFC, 0xC5, 0xFB, 0x2F, 0x00,
+ 0xBA, 0xFB, 0xE1, 0xFA, 0x30, 0x00, 0xF3, 0xFA,
+ 0xCD, 0xF9, 0x30, 0x00, 0x2C, 0xFA, 0x2E, 0xF9,
+ 0x2C, 0x00, 0x63, 0x00, 0x1D, 0xFC, 0x2C, 0x00,
+ 0x2A, 0x01, 0x1D, 0xFC, 0x2C, 0x00, 0xF1, 0x01,
+ 0x1D, 0xFC, 0x2C, 0x00, 0xB8, 0x02, 0x1D, 0xFC,
+ 0x2F, 0x00, 0x7F, 0x03, 0xD5, 0xFA, 0x30, 0x00,
+ 0x46, 0x04, 0xBE, 0xF9, 0x30, 0x00, 0x0D, 0x05,
+ 0x6D, 0xF8, 0x30, 0x00, 0xD4, 0x05, 0xAA, 0xF7,
+ 0x2C, 0x00, 0x9D, 0xFF, 0x1D, 0xFC, 0x2C, 0x00,
+ 0xD6, 0xFE, 0x1D, 0xFC, 0x2C, 0x00, 0x0F, 0xFE,
+ 0x1D, 0xFC, 0x2C, 0x00, 0x48, 0xFD, 0x1D, 0xFC,
+ 0x2F, 0x00, 0x81, 0xFC, 0xD5, 0xFA, 0x30, 0x00,
+ 0xBA, 0xFB, 0xBE, 0xF9, 0x30, 0x00, 0xF3, 0xFA,
+ 0x6D, 0xF8, 0x30, 0x00, 0x2C, 0xFA, 0xAA, 0xF7,
+ 0x2E, 0x00, 0x63, 0x00, 0x68, 0xFB, 0x2E, 0x00,
+ 0x2A, 0x01, 0x68, 0xFB, 0x2E, 0x00, 0xF1, 0x01,
+ 0x68, 0xFB, 0x2E, 0x00, 0xB8, 0x02, 0x68, 0xFB,
+ 0x30, 0x00, 0x7F, 0x03, 0xE4, 0xF9, 0x30, 0x00,
+ 0x46, 0x04, 0x9A, 0xF8, 0x30, 0x00, 0x0D, 0x05,
+ 0x0C, 0xF7, 0x30, 0x00, 0xD4, 0x05, 0x26, 0xF6,
+ 0x2E, 0x00, 0x9D, 0xFF, 0x68, 0xFB, 0x2E, 0x00,
+ 0xD6, 0xFE, 0x68, 0xFB, 0x2E, 0x00, 0x0F, 0xFE,
+ 0x68, 0xFB, 0x2E, 0x00, 0x48, 0xFD, 0x68, 0xFB,
+ 0x30, 0x00, 0x81, 0xFC, 0xE4, 0xF9, 0x30, 0x00,
+ 0xBA, 0xFB, 0x9A, 0xF8, 0x30, 0x00, 0xF3, 0xFA,
+ 0x0C, 0xF7, 0x30, 0x00, 0x2C, 0xFA, 0x26, 0xF6,
+ 0x30, 0x00, 0x63, 0x00, 0xB3, 0xFA, 0x30, 0x00,
+ 0x2A, 0x01, 0xB3, 0xFA, 0x30, 0x00, 0xF1, 0x01,
+ 0xB3, 0xFA, 0x30, 0x00, 0xB8, 0x02, 0xB3, 0xFA,
+ 0x30, 0x00, 0x7F, 0x03, 0xF4, 0xF8, 0x30, 0x00,
+ 0x46, 0x04, 0x77, 0xF7, 0x30, 0x00, 0x0D, 0x05,
+ 0xAC, 0xF5, 0x30, 0x00, 0xD4, 0x05, 0xA2, 0xF4,
+ 0x30, 0x00, 0x9D, 0xFF, 0xB3, 0xFA, 0x30, 0x00,
+ 0xD6, 0xFE, 0xB3, 0xFA, 0x30, 0x00, 0x0F, 0xFE,
+ 0xB3, 0xFA, 0x30, 0x00, 0x48, 0xFD, 0xB3, 0xFA,
+ 0x30, 0x00, 0x81, 0xFC, 0xF4, 0xF8, 0x30, 0x00,
+ 0xBA, 0xFB, 0x77, 0xF7, 0x30, 0x00, 0xF3, 0xFA,
+ 0xAC, 0xF5, 0x30, 0x00, 0x2C, 0xFA, 0xA2, 0xF4,
+ 0x28, 0x00, 0x6D, 0x00, 0x63, 0x00, 0x28, 0x00,
+ 0x48, 0x01, 0x63, 0x00, 0x28, 0x00, 0x23, 0x02,
+ 0x63, 0x00, 0x28, 0x00, 0xFE, 0x02, 0x63, 0x00,
+ 0x2B, 0x00, 0xD9, 0x03, 0x84, 0x00, 0x2D, 0x00,
+ 0xB4, 0x04, 0xA0, 0x00, 0x2F, 0x00, 0x8F, 0x05,
+ 0xC2, 0x00, 0x2F, 0x00, 0x6A, 0x06, 0xC2, 0x00,
+ 0x28, 0x00, 0x93, 0xFF, 0x63, 0x00, 0x28, 0x00,
+ 0xB8, 0xFE, 0x63, 0x00, 0x28, 0x00, 0xDD, 0xFD,
+ 0x63, 0x00, 0x28, 0x00, 0x02, 0xFD, 0x63, 0x00,
+ 0x2B, 0x00, 0x27, 0xFC, 0x84, 0x00, 0x2D, 0x00,
+ 0x4C, 0xFB, 0xA0, 0x00, 0x2F, 0x00, 0x71, 0xFA,
+ 0xC2, 0x00, 0x2F, 0x00, 0x96, 0xF9, 0xC2, 0x00,
+ 0x28, 0x00, 0x6D, 0x00, 0x2A, 0x01, 0x28, 0x00,
+ 0x48, 0x01, 0x2A, 0x01, 0x28, 0x00, 0x23, 0x02,
+ 0x2A, 0x01, 0x28, 0x00, 0xFE, 0x02, 0x2A, 0x01,
+ 0x2B, 0x00, 0xD9, 0x03, 0x8D, 0x01, 0x2D, 0x00,
+ 0xB4, 0x04, 0xE0, 0x01, 0x2F, 0x00, 0x8F, 0x05,
+ 0x46, 0x02, 0x2F, 0x00, 0x6A, 0x06, 0x46, 0x02,
+ 0x28, 0x00, 0x93, 0xFF, 0x2A, 0x01, 0x28, 0x00,
+ 0xB8, 0xFE, 0x2A, 0x01, 0x28, 0x00, 0xDD, 0xFD,
+ 0x2A, 0x01, 0x28, 0x00, 0x02, 0xFD, 0x2A, 0x01,
+ 0x2B, 0x00, 0x27, 0xFC, 0x8D, 0x01, 0x2D, 0x00,
+ 0x4C, 0xFB, 0xE0, 0x01, 0x2F, 0x00, 0x71, 0xFA,
+ 0x46, 0x02, 0x2F, 0x00, 0x96, 0xF9, 0x46, 0x02,
+ 0x28, 0x00, 0x6D, 0x00, 0xF1, 0x01, 0x28, 0x00,
+ 0x48, 0x01, 0xF1, 0x01, 0x28, 0x00, 0x23, 0x02,
+ 0xF1, 0x01, 0x28, 0x00, 0xFE, 0x02, 0xF1, 0x01,
+ 0x2B, 0x00, 0xD9, 0x03, 0x96, 0x02, 0x2D, 0x00,
+ 0xB4, 0x04, 0x21, 0x03, 0x2F, 0x00, 0x8F, 0x05,
+ 0xCA, 0x03, 0x2F, 0x00, 0x6A, 0x06, 0xCA, 0x03,
+ 0x28, 0x00, 0x93, 0xFF, 0xF1, 0x01, 0x28, 0x00,
+ 0xB8, 0xFE, 0xF1, 0x01, 0x28, 0x00, 0xDD, 0xFD,
+ 0xF1, 0x01, 0x28, 0x00, 0x02, 0xFD, 0xF1, 0x01,
+ 0x2B, 0x00, 0x27, 0xFC, 0x96, 0x02, 0x2D, 0x00,
+ 0x4C, 0xFB, 0x21, 0x03, 0x2F, 0x00, 0x71, 0xFA,
+ 0xCA, 0x03, 0x2F, 0x00, 0x96, 0xF9, 0xCA, 0x03,
+ 0x28, 0x00, 0x6D, 0x00, 0xB8, 0x02, 0x28, 0x00,
+ 0x48, 0x01, 0xB8, 0x02, 0x28, 0x00, 0x23, 0x02,
+ 0xB8, 0x02, 0x28, 0x00, 0xFE, 0x02, 0xB8, 0x02,
+ 0x2B, 0x00, 0xD9, 0x03, 0x9F, 0x03, 0x2D, 0x00,
+ 0xB4, 0x04, 0x61, 0x04, 0x2F, 0x00, 0x8F, 0x05,
+ 0x4E, 0x05, 0x2F, 0x00, 0x6A, 0x06, 0x4E, 0x05,
+ 0x28, 0x00, 0x93, 0xFF, 0xB8, 0x02, 0x28, 0x00,
+ 0xB8, 0xFE, 0xB8, 0x02, 0x28, 0x00, 0xDD, 0xFD,
+ 0xB8, 0x02, 0x28, 0x00, 0x02, 0xFD, 0xB8, 0x02,
+ 0x2B, 0x00, 0x27, 0xFC, 0x9F, 0x03, 0x2D, 0x00,
+ 0x4C, 0xFB, 0x61, 0x04, 0x2F, 0x00, 0x71, 0xFA,
+ 0x4E, 0x05, 0x2F, 0x00, 0x96, 0xF9, 0x4E, 0x05,
+ 0x2B, 0x00, 0x6D, 0x00, 0x7F, 0x03, 0x2B, 0x00,
+ 0x48, 0x01, 0x7F, 0x03, 0x2B, 0x00, 0x23, 0x02,
+ 0x7F, 0x03, 0x2B, 0x00, 0xFE, 0x02, 0x7F, 0x03,
+ 0x2E, 0x00, 0xD9, 0x03, 0xA8, 0x04, 0x30, 0x00,
+ 0xB4, 0x04, 0xA2, 0x05, 0x30, 0x00, 0x8F, 0x05,
+ 0xD2, 0x06, 0x30, 0x00, 0x6A, 0x06, 0xD2, 0x06,
+ 0x2B, 0x00, 0x93, 0xFF, 0x7F, 0x03, 0x2B, 0x00,
+ 0xB8, 0xFE, 0x7F, 0x03, 0x2B, 0x00, 0xDD, 0xFD,
+ 0x7F, 0x03, 0x2B, 0x00, 0x02, 0xFD, 0x7F, 0x03,
+ 0x2E, 0x00, 0x27, 0xFC, 0xA8, 0x04, 0x30, 0x00,
+ 0x4C, 0xFB, 0xA2, 0x05, 0x30, 0x00, 0x71, 0xFA,
+ 0xD2, 0x06, 0x30, 0x00, 0x96, 0xF9, 0xD2, 0x06,
+ 0x2D, 0x00, 0x6D, 0x00, 0x46, 0x04, 0x2D, 0x00,
+ 0x48, 0x01, 0x46, 0x04, 0x2D, 0x00, 0x23, 0x02,
+ 0x46, 0x04, 0x2D, 0x00, 0xFE, 0x02, 0x46, 0x04,
+ 0x30, 0x00, 0xD9, 0x03, 0xB1, 0x05, 0x30, 0x00,
+ 0xB4, 0x04, 0xE2, 0x06, 0x30, 0x00, 0x8F, 0x05,
+ 0x56, 0x08, 0x30, 0x00, 0x6A, 0x06, 0x56, 0x08,
+ 0x2D, 0x00, 0x93, 0xFF, 0x46, 0x04, 0x2D, 0x00,
+ 0xB8, 0xFE, 0x46, 0x04, 0x2D, 0x00, 0xDD, 0xFD,
+ 0x46, 0x04, 0x2D, 0x00, 0x02, 0xFD, 0x46, 0x04,
+ 0x30, 0x00, 0x27, 0xFC, 0xB1, 0x05, 0x30, 0x00,
+ 0x4C, 0xFB, 0xE2, 0x06, 0x30, 0x00, 0x71, 0xFA,
+ 0x56, 0x08, 0x30, 0x00, 0x96, 0xF9, 0x56, 0x08,
+ 0x2F, 0x00, 0x6D, 0x00, 0x0D, 0x05, 0x2F, 0x00,
+ 0x48, 0x01, 0x0D, 0x05, 0x2F, 0x00, 0x23, 0x02,
+ 0x0D, 0x05, 0x2F, 0x00, 0xFE, 0x02, 0x0D, 0x05,
+ 0x30, 0x00, 0xD9, 0x03, 0xBA, 0x06, 0x30, 0x00,
+ 0xB4, 0x04, 0x23, 0x08, 0x30, 0x00, 0x8F, 0x05,
+ 0xDA, 0x09, 0x30, 0x00, 0x6A, 0x06, 0xDA, 0x09,
+ 0x2F, 0x00, 0x93, 0xFF, 0x0D, 0x05, 0x2F, 0x00,
+ 0xB8, 0xFE, 0x0D, 0x05, 0x2F, 0x00, 0xDD, 0xFD,
+ 0x0D, 0x05, 0x2F, 0x00, 0x02, 0xFD, 0x0D, 0x05,
+ 0x30, 0x00, 0x27, 0xFC, 0xBA, 0x06, 0x30, 0x00,
+ 0x4C, 0xFB, 0x23, 0x08, 0x30, 0x00, 0x71, 0xFA,
+ 0xDA, 0x09, 0x30, 0x00, 0x96, 0xF9, 0xDA, 0x09,
+ 0x30, 0x00, 0x6D, 0x00, 0xD4, 0x05, 0x30, 0x00,
+ 0x48, 0x01, 0xD4, 0x05, 0x30, 0x00, 0x23, 0x02,
+ 0xD4, 0x05, 0x30, 0x00, 0xFE, 0x02, 0xD4, 0x05,
+ 0x30, 0x00, 0xD9, 0x03, 0xC3, 0x07, 0x30, 0x00,
+ 0xB4, 0x04, 0x63, 0x09, 0x30, 0x00, 0x8F, 0x05,
+ 0x5E, 0x0B, 0x30, 0x00, 0x6A, 0x06, 0x5E, 0x0B,
+ 0x30, 0x00, 0x93, 0xFF, 0xD4, 0x05, 0x30, 0x00,
+ 0xB8, 0xFE, 0xD4, 0x05, 0x30, 0x00, 0xDD, 0xFD,
+ 0xD4, 0x05, 0x30, 0x00, 0x02, 0xFD, 0xD4, 0x05,
+ 0x30, 0x00, 0x27, 0xFC, 0xC3, 0x07, 0x30, 0x00,
+ 0x4C, 0xFB, 0x63, 0x09, 0x30, 0x00, 0x71, 0xFA,
+ 0x5E, 0x0B, 0x30, 0x00, 0x96, 0xF9, 0x5E, 0x0B,
+ 0x28, 0x00, 0x6D, 0x00, 0x9D, 0xFF, 0x28, 0x00,
+ 0x48, 0x01, 0x9D, 0xFF, 0x28, 0x00, 0x23, 0x02,
+ 0x9D, 0xFF, 0x28, 0x00, 0xFE, 0x02, 0x9D, 0xFF,
+ 0x2B, 0x00, 0xD9, 0x03, 0x7C, 0xFF, 0x2D, 0x00,
+ 0xB4, 0x04, 0x60, 0xFF, 0x2F, 0x00, 0x8F, 0x05,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x6A, 0x06, 0x3E, 0xFF,
+ 0x28, 0x00, 0x93, 0xFF, 0x9D, 0xFF, 0x28, 0x00,
+ 0xB8, 0xFE, 0x9D, 0xFF, 0x28, 0x00, 0xDD, 0xFD,
+ 0x9D, 0xFF, 0x28, 0x00, 0x02, 0xFD, 0x9D, 0xFF,
+ 0x2B, 0x00, 0x27, 0xFC, 0x7C, 0xFF, 0x2D, 0x00,
+ 0x4C, 0xFB, 0x60, 0xFF, 0x2F, 0x00, 0x71, 0xFA,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x96, 0xF9, 0x3E, 0xFF,
+ 0x28, 0x00, 0x6D, 0x00, 0xD6, 0xFE, 0x28, 0x00,
+ 0x48, 0x01, 0xD6, 0xFE, 0x28, 0x00, 0x23, 0x02,
+ 0xD6, 0xFE, 0x28, 0x00, 0xFE, 0x02, 0xD6, 0xFE,
+ 0x2B, 0x00, 0xD9, 0x03, 0x73, 0xFE, 0x2D, 0x00,
+ 0xB4, 0x04, 0x20, 0xFE, 0x2F, 0x00, 0x8F, 0x05,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x6A, 0x06, 0xBA, 0xFD,
+ 0x28, 0x00, 0x93, 0xFF, 0xD6, 0xFE, 0x28, 0x00,
+ 0xB8, 0xFE, 0xD6, 0xFE, 0x28, 0x00, 0xDD, 0xFD,
+ 0xD6, 0xFE, 0x28, 0x00, 0x02, 0xFD, 0xD6, 0xFE,
+ 0x2B, 0x00, 0x27, 0xFC, 0x73, 0xFE, 0x2D, 0x00,
+ 0x4C, 0xFB, 0x20, 0xFE, 0x2F, 0x00, 0x71, 0xFA,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x96, 0xF9, 0xBA, 0xFD,
+ 0x28, 0x00, 0x6D, 0x00, 0x0F, 0xFE, 0x28, 0x00,
+ 0x48, 0x01, 0x0F, 0xFE, 0x28, 0x00, 0x23, 0x02,
+ 0x0F, 0xFE, 0x28, 0x00, 0xFE, 0x02, 0x0F, 0xFE,
+ 0x2B, 0x00, 0xD9, 0x03, 0x6A, 0xFD, 0x2D, 0x00,
+ 0xB4, 0x04, 0xDF, 0xFC, 0x2F, 0x00, 0x8F, 0x05,
+ 0x36, 0xFC, 0x2F, 0x00, 0x6A, 0x06, 0x36, 0xFC,
+ 0x28, 0x00, 0x93, 0xFF, 0x0F, 0xFE, 0x28, 0x00,
+ 0xB8, 0xFE, 0x0F, 0xFE, 0x28, 0x00, 0xDD, 0xFD,
+ 0x0F, 0xFE, 0x28, 0x00, 0x02, 0xFD, 0x0F, 0xFE,
+ 0x2B, 0x00, 0x27, 0xFC, 0x6A, 0xFD, 0x2D, 0x00,
+ 0x4C, 0xFB, 0xDF, 0xFC, 0x2F, 0x00, 0x71, 0xFA,
+ 0x36, 0xFC, 0x2F, 0x00, 0x96, 0xF9, 0x36, 0xFC,
+ 0x28, 0x00, 0x6D, 0x00, 0x48, 0xFD, 0x28, 0x00,
+ 0x48, 0x01, 0x48, 0xFD, 0x28, 0x00, 0x23, 0x02,
+ 0x48, 0xFD, 0x28, 0x00, 0xFE, 0x02, 0x48, 0xFD,
+ 0x2B, 0x00, 0xD9, 0x03, 0x61, 0xFC, 0x2D, 0x00,
+ 0xB4, 0x04, 0x9F, 0xFB, 0x2F, 0x00, 0x8F, 0x05,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x6A, 0x06, 0xB2, 0xFA,
+ 0x28, 0x00, 0x93, 0xFF, 0x48, 0xFD, 0x28, 0x00,
+ 0xB8, 0xFE, 0x48, 0xFD, 0x28, 0x00, 0xDD, 0xFD,
+ 0x48, 0xFD, 0x28, 0x00, 0x02, 0xFD, 0x48, 0xFD,
+ 0x2B, 0x00, 0x27, 0xFC, 0x61, 0xFC, 0x2D, 0x00,
+ 0x4C, 0xFB, 0x9F, 0xFB, 0x2F, 0x00, 0x71, 0xFA,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x96, 0xF9, 0xB2, 0xFA,
+ 0x2B, 0x00, 0x6D, 0x00, 0x81, 0xFC, 0x2B, 0x00,
+ 0x48, 0x01, 0x81, 0xFC, 0x2B, 0x00, 0x23, 0x02,
+ 0x81, 0xFC, 0x2B, 0x00, 0xFE, 0x02, 0x81, 0xFC,
+ 0x2E, 0x00, 0xD9, 0x03, 0x58, 0xFB, 0x30, 0x00,
+ 0xB4, 0x04, 0x5E, 0xFA, 0x30, 0x00, 0x8F, 0x05,
+ 0x2E, 0xF9, 0x30, 0x00, 0x6A, 0x06, 0x2E, 0xF9,
+ 0x2B, 0x00, 0x93, 0xFF, 0x81, 0xFC, 0x2B, 0x00,
+ 0xB8, 0xFE, 0x81, 0xFC, 0x2B, 0x00, 0xDD, 0xFD,
+ 0x81, 0xFC, 0x2B, 0x00, 0x02, 0xFD, 0x81, 0xFC,
+ 0x2E, 0x00, 0x27, 0xFC, 0x58, 0xFB, 0x30, 0x00,
+ 0x4C, 0xFB, 0x5E, 0xFA, 0x30, 0x00, 0x71, 0xFA,
+ 0x2E, 0xF9, 0x30, 0x00, 0x96, 0xF9, 0x2E, 0xF9,
+ 0x2D, 0x00, 0x6D, 0x00, 0xBA, 0xFB, 0x2D, 0x00,
+ 0x48, 0x01, 0xBA, 0xFB, 0x2D, 0x00, 0x23, 0x02,
+ 0xBA, 0xFB, 0x2D, 0x00, 0xFE, 0x02, 0xBA, 0xFB,
+ 0x30, 0x00, 0xD9, 0x03, 0x4F, 0xFA, 0x30, 0x00,
+ 0xB4, 0x04, 0x1E, 0xF9, 0x30, 0x00, 0x8F, 0x05,
+ 0xAA, 0xF7, 0x30, 0x00, 0x6A, 0x06, 0xAA, 0xF7,
+ 0x2D, 0x00, 0x93, 0xFF, 0xBA, 0xFB, 0x2D, 0x00,
+ 0xB8, 0xFE, 0xBA, 0xFB, 0x2D, 0x00, 0xDD, 0xFD,
+ 0xBA, 0xFB, 0x2D, 0x00, 0x02, 0xFD, 0xBA, 0xFB,
+ 0x30, 0x00, 0x27, 0xFC, 0x4F, 0xFA, 0x30, 0x00,
+ 0x4C, 0xFB, 0x1E, 0xF9, 0x30, 0x00, 0x71, 0xFA,
+ 0xAA, 0xF7, 0x30, 0x00, 0x96, 0xF9, 0xAA, 0xF7,
+ 0x2F, 0x00, 0x6D, 0x00, 0xF3, 0xFA, 0x2F, 0x00,
+ 0x48, 0x01, 0xF3, 0xFA, 0x2F, 0x00, 0x23, 0x02,
+ 0xF3, 0xFA, 0x2F, 0x00, 0xFE, 0x02, 0xF3, 0xFA,
+ 0x30, 0x00, 0xD9, 0x03, 0x46, 0xF9, 0x30, 0x00,
+ 0xB4, 0x04, 0xDD, 0xF7, 0x30, 0x00, 0x8F, 0x05,
+ 0x26, 0xF6, 0x30, 0x00, 0x6A, 0x06, 0x26, 0xF6,
+ 0x2F, 0x00, 0x93, 0xFF, 0xF3, 0xFA, 0x2F, 0x00,
+ 0xB8, 0xFE, 0xF3, 0xFA, 0x2F, 0x00, 0xDD, 0xFD,
+ 0xF3, 0xFA, 0x2F, 0x00, 0x02, 0xFD, 0xF3, 0xFA,
+ 0x30, 0x00, 0x27, 0xFC, 0x46, 0xF9, 0x30, 0x00,
+ 0x4C, 0xFB, 0xDD, 0xF7, 0x30, 0x00, 0x71, 0xFA,
+ 0x26, 0xF6, 0x30, 0x00, 0x96, 0xF9, 0x26, 0xF6,
+ 0x30, 0x00, 0x6D, 0x00, 0x2C, 0xFA, 0x30, 0x00,
+ 0x48, 0x01, 0x2C, 0xFA, 0x30, 0x00, 0x23, 0x02,
+ 0x2C, 0xFA, 0x30, 0x00, 0xFE, 0x02, 0x2C, 0xFA,
+ 0x30, 0x00, 0xD9, 0x03, 0x3D, 0xF8, 0x30, 0x00,
+ 0xB4, 0x04, 0x9D, 0xF6, 0x30, 0x00, 0x8F, 0x05,
+ 0xA2, 0xF4, 0x30, 0x00, 0x6A, 0x06, 0xA2, 0xF4,
+ 0x30, 0x00, 0x93, 0xFF, 0x2C, 0xFA, 0x30, 0x00,
+ 0xB8, 0xFE, 0x2C, 0xFA, 0x30, 0x00, 0xDD, 0xFD,
+ 0x2C, 0xFA, 0x30, 0x00, 0x02, 0xFD, 0x2C, 0xFA,
+ 0x30, 0x00, 0x27, 0xFC, 0x3D, 0xF8, 0x30, 0x00,
+ 0x4C, 0xFB, 0x9D, 0xF6, 0x30, 0x00, 0x71, 0xFA,
+ 0xA2, 0xF4, 0x30, 0x00, 0x96, 0xF9, 0xA2, 0xF4,
+ 0x29, 0x00, 0x78, 0x00, 0x6D, 0x00, 0x29, 0x00,
+ 0x68, 0x01, 0x6D, 0x00, 0x29, 0x00, 0x59, 0x02,
+ 0x6D, 0x00, 0x29, 0x00, 0x49, 0x03, 0x6D, 0x00,
+ 0x2C, 0x00, 0x3B, 0x04, 0x91, 0x00, 0x2E, 0x00,
+ 0x2B, 0x05, 0xB0, 0x00, 0x2F, 0x00, 0x1C, 0x06,
+ 0xC2, 0x00, 0x2F, 0x00, 0x0C, 0x07, 0xC2, 0x00,
+ 0x29, 0x00, 0x88, 0xFF, 0x6D, 0x00, 0x29, 0x00,
+ 0x98, 0xFE, 0x6D, 0x00, 0x29, 0x00, 0xA7, 0xFD,
+ 0x6D, 0x00, 0x29, 0x00, 0xB7, 0xFC, 0x6D, 0x00,
+ 0x2C, 0x00, 0xC5, 0xFB, 0x91, 0x00, 0x2E, 0x00,
+ 0xD5, 0xFA, 0xB0, 0x00, 0x2F, 0x00, 0xE4, 0xF9,
+ 0xC2, 0x00, 0x2F, 0x00, 0xF4, 0xF8, 0xC2, 0x00,
+ 0x29, 0x00, 0x78, 0x00, 0x48, 0x01, 0x29, 0x00,
+ 0x68, 0x01, 0x48, 0x01, 0x29, 0x00, 0x59, 0x02,
+ 0x48, 0x01, 0x29, 0x00, 0x49, 0x03, 0x48, 0x01,
+ 0x2C, 0x00, 0x3B, 0x04, 0xB4, 0x01, 0x2E, 0x00,
+ 0x2B, 0x05, 0x10, 0x02, 0x2F, 0x00, 0x1C, 0x06,
+ 0x46, 0x02, 0x2F, 0x00, 0x0C, 0x07, 0x46, 0x02,
+ 0x29, 0x00, 0x88, 0xFF, 0x48, 0x01, 0x29, 0x00,
+ 0x98, 0xFE, 0x48, 0x01, 0x29, 0x00, 0xA7, 0xFD,
+ 0x48, 0x01, 0x29, 0x00, 0xB7, 0xFC, 0x48, 0x01,
+ 0x2C, 0x00, 0xC5, 0xFB, 0xB4, 0x01, 0x2E, 0x00,
+ 0xD5, 0xFA, 0x10, 0x02, 0x2F, 0x00, 0xE4, 0xF9,
+ 0x46, 0x02, 0x2F, 0x00, 0xF4, 0xF8, 0x46, 0x02,
+ 0x29, 0x00, 0x78, 0x00, 0x23, 0x02, 0x29, 0x00,
+ 0x68, 0x01, 0x23, 0x02, 0x29, 0x00, 0x59, 0x02,
+ 0x23, 0x02, 0x29, 0x00, 0x49, 0x03, 0x23, 0x02,
+ 0x2C, 0x00, 0x3B, 0x04, 0xD8, 0x02, 0x2E, 0x00,
+ 0x2B, 0x05, 0x71, 0x03, 0x2F, 0x00, 0x1C, 0x06,
+ 0xCA, 0x03, 0x2F, 0x00, 0x0C, 0x07, 0xCA, 0x03,
+ 0x29, 0x00, 0x88, 0xFF, 0x23, 0x02, 0x29, 0x00,
+ 0x98, 0xFE, 0x23, 0x02, 0x29, 0x00, 0xA7, 0xFD,
+ 0x23, 0x02, 0x29, 0x00, 0xB7, 0xFC, 0x23, 0x02,
+ 0x2C, 0x00, 0xC5, 0xFB, 0xD8, 0x02, 0x2E, 0x00,
+ 0xD5, 0xFA, 0x71, 0x03, 0x2F, 0x00, 0xE4, 0xF9,
+ 0xCA, 0x03, 0x2F, 0x00, 0xF4, 0xF8, 0xCA, 0x03,
+ 0x29, 0x00, 0x78, 0x00, 0xFE, 0x02, 0x29, 0x00,
+ 0x68, 0x01, 0xFE, 0x02, 0x29, 0x00, 0x59, 0x02,
+ 0xFE, 0x02, 0x29, 0x00, 0x49, 0x03, 0xFE, 0x02,
+ 0x2C, 0x00, 0x3B, 0x04, 0xFB, 0x03, 0x2E, 0x00,
+ 0x2B, 0x05, 0xD1, 0x04, 0x2F, 0x00, 0x1C, 0x06,
+ 0x4E, 0x05, 0x2F, 0x00, 0x0C, 0x07, 0x4E, 0x05,
+ 0x29, 0x00, 0x88, 0xFF, 0xFE, 0x02, 0x29, 0x00,
+ 0x98, 0xFE, 0xFE, 0x02, 0x29, 0x00, 0xA7, 0xFD,
+ 0xFE, 0x02, 0x29, 0x00, 0xB7, 0xFC, 0xFE, 0x02,
+ 0x2C, 0x00, 0xC5, 0xFB, 0xFB, 0x03, 0x2E, 0x00,
+ 0xD5, 0xFA, 0xD1, 0x04, 0x2F, 0x00, 0xE4, 0xF9,
+ 0x4E, 0x05, 0x2F, 0x00, 0xF4, 0xF8, 0x4E, 0x05,
+ 0x2C, 0x00, 0x78, 0x00, 0xD9, 0x03, 0x2C, 0x00,
+ 0x68, 0x01, 0xD9, 0x03, 0x2C, 0x00, 0x59, 0x02,
+ 0xD9, 0x03, 0x2C, 0x00, 0x49, 0x03, 0xD9, 0x03,
+ 0x2F, 0x00, 0x3B, 0x04, 0x1F, 0x05, 0x30, 0x00,
+ 0x2B, 0x05, 0x33, 0x06, 0x30, 0x00, 0x1C, 0x06,
+ 0xD2, 0x06, 0x30, 0x00, 0x0C, 0x07, 0xD2, 0x06,
+ 0x2C, 0x00, 0x88, 0xFF, 0xD9, 0x03, 0x2C, 0x00,
+ 0x98, 0xFE, 0xD9, 0x03, 0x2C, 0x00, 0xA7, 0xFD,
+ 0xD9, 0x03, 0x2C, 0x00, 0xB7, 0xFC, 0xD9, 0x03,
+ 0x2F, 0x00, 0xC5, 0xFB, 0x1F, 0x05, 0x30, 0x00,
+ 0xD5, 0xFA, 0x33, 0x06, 0x30, 0x00, 0xE4, 0xF9,
+ 0xD2, 0x06, 0x30, 0x00, 0xF4, 0xF8, 0xD2, 0x06,
+ 0x2E, 0x00, 0x78, 0x00, 0xB4, 0x04, 0x2E, 0x00,
+ 0x68, 0x01, 0xB4, 0x04, 0x2E, 0x00, 0x59, 0x02,
+ 0xB4, 0x04, 0x2E, 0x00, 0x49, 0x03, 0xB4, 0x04,
+ 0x30, 0x00, 0x3B, 0x04, 0x42, 0x06, 0x30, 0x00,
+ 0x2B, 0x05, 0x93, 0x07, 0x30, 0x00, 0x1C, 0x06,
+ 0x56, 0x08, 0x30, 0x00, 0x0C, 0x07, 0x56, 0x08,
+ 0x2E, 0x00, 0x88, 0xFF, 0xB4, 0x04, 0x2E, 0x00,
+ 0x98, 0xFE, 0xB4, 0x04, 0x2E, 0x00, 0xA7, 0xFD,
+ 0xB4, 0x04, 0x2E, 0x00, 0xB7, 0xFC, 0xB4, 0x04,
+ 0x30, 0x00, 0xC5, 0xFB, 0x42, 0x06, 0x30, 0x00,
+ 0xD5, 0xFA, 0x93, 0x07, 0x30, 0x00, 0xE4, 0xF9,
+ 0x56, 0x08, 0x30, 0x00, 0xF4, 0xF8, 0x56, 0x08,
+ 0x30, 0x00, 0x78, 0x00, 0x8F, 0x05, 0x30, 0x00,
+ 0x68, 0x01, 0x8F, 0x05, 0x30, 0x00, 0x59, 0x02,
+ 0x8F, 0x05, 0x30, 0x00, 0x49, 0x03, 0x8F, 0x05,
+ 0x30, 0x00, 0x3B, 0x04, 0x66, 0x07, 0x30, 0x00,
+ 0x2B, 0x05, 0xF4, 0x08, 0x30, 0x00, 0x1C, 0x06,
+ 0xDA, 0x09, 0x30, 0x00, 0x0C, 0x07, 0xDA, 0x09,
+ 0x30, 0x00, 0x88, 0xFF, 0x8F, 0x05, 0x30, 0x00,
+ 0x98, 0xFE, 0x8F, 0x05, 0x30, 0x00, 0xA7, 0xFD,
+ 0x8F, 0x05, 0x30, 0x00, 0xB7, 0xFC, 0x8F, 0x05,
+ 0x30, 0x00, 0xC5, 0xFB, 0x66, 0x07, 0x30, 0x00,
+ 0xD5, 0xFA, 0xF4, 0x08, 0x30, 0x00, 0xE4, 0xF9,
+ 0xDA, 0x09, 0x30, 0x00, 0xF4, 0xF8, 0xDA, 0x09,
+ 0x30, 0x00, 0x78, 0x00, 0x6A, 0x06, 0x30, 0x00,
+ 0x68, 0x01, 0x6A, 0x06, 0x30, 0x00, 0x59, 0x02,
+ 0x6A, 0x06, 0x30, 0x00, 0x49, 0x03, 0x6A, 0x06,
+ 0x30, 0x00, 0x3B, 0x04, 0x89, 0x08, 0x30, 0x00,
+ 0x2B, 0x05, 0x54, 0x0A, 0x30, 0x00, 0x1C, 0x06,
+ 0x5E, 0x0B, 0x30, 0x00, 0x0C, 0x07, 0x5E, 0x0B,
+ 0x30, 0x00, 0x88, 0xFF, 0x6A, 0x06, 0x30, 0x00,
+ 0x98, 0xFE, 0x6A, 0x06, 0x30, 0x00, 0xA7, 0xFD,
+ 0x6A, 0x06, 0x30, 0x00, 0xB7, 0xFC, 0x6A, 0x06,
+ 0x30, 0x00, 0xC5, 0xFB, 0x89, 0x08, 0x30, 0x00,
+ 0xD5, 0xFA, 0x54, 0x0A, 0x30, 0x00, 0xE4, 0xF9,
+ 0x5E, 0x0B, 0x30, 0x00, 0xF4, 0xF8, 0x5E, 0x0B,
+ 0x29, 0x00, 0x78, 0x00, 0x93, 0xFF, 0x29, 0x00,
+ 0x68, 0x01, 0x93, 0xFF, 0x29, 0x00, 0x59, 0x02,
+ 0x93, 0xFF, 0x29, 0x00, 0x49, 0x03, 0x93, 0xFF,
+ 0x2C, 0x00, 0x3B, 0x04, 0x6F, 0xFF, 0x2E, 0x00,
+ 0x2B, 0x05, 0x50, 0xFF, 0x2F, 0x00, 0x1C, 0x06,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x0C, 0x07, 0x3E, 0xFF,
+ 0x29, 0x00, 0x88, 0xFF, 0x93, 0xFF, 0x29, 0x00,
+ 0x98, 0xFE, 0x93, 0xFF, 0x29, 0x00, 0xA7, 0xFD,
+ 0x93, 0xFF, 0x29, 0x00, 0xB7, 0xFC, 0x93, 0xFF,
+ 0x2C, 0x00, 0xC5, 0xFB, 0x6F, 0xFF, 0x2E, 0x00,
+ 0xD5, 0xFA, 0x50, 0xFF, 0x2F, 0x00, 0xE4, 0xF9,
+ 0x3E, 0xFF, 0x2F, 0x00, 0xF4, 0xF8, 0x3E, 0xFF,
+ 0x29, 0x00, 0x78, 0x00, 0xB8, 0xFE, 0x29, 0x00,
+ 0x68, 0x01, 0xB8, 0xFE, 0x29, 0x00, 0x59, 0x02,
+ 0xB8, 0xFE, 0x29, 0x00, 0x49, 0x03, 0xB8, 0xFE,
+ 0x2C, 0x00, 0x3B, 0x04, 0x4C, 0xFE, 0x2E, 0x00,
+ 0x2B, 0x05, 0xF0, 0xFD, 0x2F, 0x00, 0x1C, 0x06,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x0C, 0x07, 0xBA, 0xFD,
+ 0x29, 0x00, 0x88, 0xFF, 0xB8, 0xFE, 0x29, 0x00,
+ 0x98, 0xFE, 0xB8, 0xFE, 0x29, 0x00, 0xA7, 0xFD,
+ 0xB8, 0xFE, 0x29, 0x00, 0xB7, 0xFC, 0xB8, 0xFE,
+ 0x2C, 0x00, 0xC5, 0xFB, 0x4C, 0xFE, 0x2E, 0x00,
+ 0xD5, 0xFA, 0xF0, 0xFD, 0x2F, 0x00, 0xE4, 0xF9,
+ 0xBA, 0xFD, 0x2F, 0x00, 0xF4, 0xF8, 0xBA, 0xFD,
+ 0x29, 0x00, 0x78, 0x00, 0xDD, 0xFD, 0x29, 0x00,
+ 0x68, 0x01, 0xDD, 0xFD, 0x29, 0x00, 0x59, 0x02,
+ 0xDD, 0xFD, 0x29, 0x00, 0x49, 0x03, 0xDD, 0xFD,
+ 0x2C, 0x00, 0x3B, 0x04, 0x28, 0xFD, 0x2E, 0x00,
+ 0x2B, 0x05, 0x8F, 0xFC, 0x2F, 0x00, 0x1C, 0x06,
+ 0x36, 0xFC, 0x2F, 0x00, 0x0C, 0x07, 0x36, 0xFC,
+ 0x29, 0x00, 0x88, 0xFF, 0xDD, 0xFD, 0x29, 0x00,
+ 0x98, 0xFE, 0xDD, 0xFD, 0x29, 0x00, 0xA7, 0xFD,
+ 0xDD, 0xFD, 0x29, 0x00, 0xB7, 0xFC, 0xDD, 0xFD,
+ 0x2C, 0x00, 0xC5, 0xFB, 0x28, 0xFD, 0x2E, 0x00,
+ 0xD5, 0xFA, 0x8F, 0xFC, 0x2F, 0x00, 0xE4, 0xF9,
+ 0x36, 0xFC, 0x2F, 0x00, 0xF4, 0xF8, 0x36, 0xFC,
+ 0x29, 0x00, 0x78, 0x00, 0x02, 0xFD, 0x29, 0x00,
+ 0x68, 0x01, 0x02, 0xFD, 0x29, 0x00, 0x59, 0x02,
+ 0x02, 0xFD, 0x29, 0x00, 0x49, 0x03, 0x02, 0xFD,
+ 0x2C, 0x00, 0x3B, 0x04, 0x05, 0xFC, 0x2E, 0x00,
+ 0x2B, 0x05, 0x2F, 0xFB, 0x2F, 0x00, 0x1C, 0x06,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x0C, 0x07, 0xB2, 0xFA,
+ 0x29, 0x00, 0x88, 0xFF, 0x02, 0xFD, 0x29, 0x00,
+ 0x98, 0xFE, 0x02, 0xFD, 0x29, 0x00, 0xA7, 0xFD,
+ 0x02, 0xFD, 0x29, 0x00, 0xB7, 0xFC, 0x02, 0xFD,
+ 0x2C, 0x00, 0xC5, 0xFB, 0x05, 0xFC, 0x2E, 0x00,
+ 0xD5, 0xFA, 0x2F, 0xFB, 0x2F, 0x00, 0xE4, 0xF9,
+ 0xB2, 0xFA, 0x2F, 0x00, 0xF4, 0xF8, 0xB2, 0xFA,
+ 0x2C, 0x00, 0x78, 0x00, 0x27, 0xFC, 0x2C, 0x00,
+ 0x68, 0x01, 0x27, 0xFC, 0x2C, 0x00, 0x59, 0x02,
+ 0x27, 0xFC, 0x2C, 0x00, 0x49, 0x03, 0x27, 0xFC,
+ 0x2F, 0x00, 0x3B, 0x04, 0xE1, 0xFA, 0x30, 0x00,
+ 0x2B, 0x05, 0xCD, 0xF9, 0x30, 0x00, 0x1C, 0x06,
+ 0x2E, 0xF9, 0x30, 0x00, 0x0C, 0x07, 0x2E, 0xF9,
+ 0x2C, 0x00, 0x88, 0xFF, 0x27, 0xFC, 0x2C, 0x00,
+ 0x98, 0xFE, 0x27, 0xFC, 0x2C, 0x00, 0xA7, 0xFD,
+ 0x27, 0xFC, 0x2C, 0x00, 0xB7, 0xFC, 0x27, 0xFC,
+ 0x2F, 0x00, 0xC5, 0xFB, 0xE1, 0xFA, 0x30, 0x00,
+ 0xD5, 0xFA, 0xCD, 0xF9, 0x30, 0x00, 0xE4, 0xF9,
+ 0x2E, 0xF9, 0x30, 0x00, 0xF4, 0xF8, 0x2E, 0xF9,
+ 0x2E, 0x00, 0x78, 0x00, 0x4C, 0xFB, 0x2E, 0x00,
+ 0x68, 0x01, 0x4C, 0xFB, 0x2E, 0x00, 0x59, 0x02,
+ 0x4C, 0xFB, 0x2E, 0x00, 0x49, 0x03, 0x4C, 0xFB,
+ 0x30, 0x00, 0x3B, 0x04, 0xBE, 0xF9, 0x30, 0x00,
+ 0x2B, 0x05, 0x6D, 0xF8, 0x30, 0x00, 0x1C, 0x06,
+ 0xAA, 0xF7, 0x30, 0x00, 0x0C, 0x07, 0xAA, 0xF7,
+ 0x2E, 0x00, 0x88, 0xFF, 0x4C, 0xFB, 0x2E, 0x00,
+ 0x98, 0xFE, 0x4C, 0xFB, 0x2E, 0x00, 0xA7, 0xFD,
+ 0x4C, 0xFB, 0x2E, 0x00, 0xB7, 0xFC, 0x4C, 0xFB,
+ 0x30, 0x00, 0xC5, 0xFB, 0xBE, 0xF9, 0x30, 0x00,
+ 0xD5, 0xFA, 0x6D, 0xF8, 0x30, 0x00, 0xE4, 0xF9,
+ 0xAA, 0xF7, 0x30, 0x00, 0xF4, 0xF8, 0xAA, 0xF7,
+ 0x30, 0x00, 0x78, 0x00, 0x71, 0xFA, 0x30, 0x00,
+ 0x68, 0x01, 0x71, 0xFA, 0x30, 0x00, 0x59, 0x02,
+ 0x71, 0xFA, 0x30, 0x00, 0x49, 0x03, 0x71, 0xFA,
+ 0x30, 0x00, 0x3B, 0x04, 0x9A, 0xF8, 0x30, 0x00,
+ 0x2B, 0x05, 0x0C, 0xF7, 0x30, 0x00, 0x1C, 0x06,
+ 0x26, 0xF6, 0x30, 0x00, 0x0C, 0x07, 0x26, 0xF6,
+ 0x30, 0x00, 0x88, 0xFF, 0x71, 0xFA, 0x30, 0x00,
+ 0x98, 0xFE, 0x71, 0xFA, 0x30, 0x00, 0xA7, 0xFD,
+ 0x71, 0xFA, 0x30, 0x00, 0xB7, 0xFC, 0x71, 0xFA,
+ 0x30, 0x00, 0xC5, 0xFB, 0x9A, 0xF8, 0x30, 0x00,
+ 0xD5, 0xFA, 0x0C, 0xF7, 0x30, 0x00, 0xE4, 0xF9,
+ 0x26, 0xF6, 0x30, 0x00, 0xF4, 0xF8, 0x26, 0xF6,
+ 0x30, 0x00, 0x78, 0x00, 0x96, 0xF9, 0x30, 0x00,
+ 0x68, 0x01, 0x96, 0xF9, 0x30, 0x00, 0x59, 0x02,
+ 0x96, 0xF9, 0x30, 0x00, 0x49, 0x03, 0x96, 0xF9,
+ 0x30, 0x00, 0x3B, 0x04, 0x77, 0xF7, 0x30, 0x00,
+ 0x2B, 0x05, 0xAC, 0xF5, 0x30, 0x00, 0x1C, 0x06,
+ 0xA2, 0xF4, 0x30, 0x00, 0x0C, 0x07, 0xA2, 0xF4,
+ 0x30, 0x00, 0x88, 0xFF, 0x96, 0xF9, 0x30, 0x00,
+ 0x98, 0xFE, 0x96, 0xF9, 0x30, 0x00, 0xA7, 0xFD,
+ 0x96, 0xF9, 0x30, 0x00, 0xB7, 0xFC, 0x96, 0xF9,
+ 0x30, 0x00, 0xC5, 0xFB, 0x77, 0xF7, 0x30, 0x00,
+ 0xD5, 0xFA, 0xAC, 0xF5, 0x30, 0x00, 0xE4, 0xF9,
+ 0xA2, 0xF4, 0x30, 0x00, 0xF4, 0xF8, 0xA2, 0xF4,
+ 0x2A, 0x00, 0x84, 0x00, 0x78, 0x00, 0x2A, 0x00,
+ 0x8D, 0x01, 0x78, 0x00, 0x2A, 0x00, 0x96, 0x02,
+ 0x78, 0x00, 0x2A, 0x00, 0x9F, 0x03, 0x78, 0x00,
+ 0x2D, 0x00, 0xA8, 0x04, 0xA0, 0x00, 0x2F, 0x00,
+ 0xB1, 0x05, 0xC2, 0x00, 0x2F, 0x00, 0xBA, 0x06,
+ 0xC2, 0x00, 0x2F, 0x00, 0xC3, 0x07, 0xC2, 0x00,
+ 0x2A, 0x00, 0x7C, 0xFF, 0x78, 0x00, 0x2A, 0x00,
+ 0x73, 0xFE, 0x78, 0x00, 0x2A, 0x00, 0x6A, 0xFD,
+ 0x78, 0x00, 0x2A, 0x00, 0x61, 0xFC, 0x78, 0x00,
+ 0x2D, 0x00, 0x58, 0xFB, 0xA0, 0x00, 0x2F, 0x00,
+ 0x4F, 0xFA, 0xC2, 0x00, 0x2F, 0x00, 0x46, 0xF9,
+ 0xC2, 0x00, 0x2F, 0x00, 0x3D, 0xF8, 0xC2, 0x00,
+ 0x2A, 0x00, 0x84, 0x00, 0x68, 0x01, 0x2A, 0x00,
+ 0x8D, 0x01, 0x68, 0x01, 0x2A, 0x00, 0x96, 0x02,
+ 0x68, 0x01, 0x2A, 0x00, 0x9F, 0x03, 0x68, 0x01,
+ 0x2D, 0x00, 0xA8, 0x04, 0xE0, 0x01, 0x2F, 0x00,
+ 0xB1, 0x05, 0x46, 0x02, 0x2F, 0x00, 0xBA, 0x06,
+ 0x46, 0x02, 0x2F, 0x00, 0xC3, 0x07, 0x46, 0x02,
+ 0x2A, 0x00, 0x7C, 0xFF, 0x68, 0x01, 0x2A, 0x00,
+ 0x73, 0xFE, 0x68, 0x01, 0x2A, 0x00, 0x6A, 0xFD,
+ 0x68, 0x01, 0x2A, 0x00, 0x61, 0xFC, 0x68, 0x01,
+ 0x2D, 0x00, 0x58, 0xFB, 0xE0, 0x01, 0x2F, 0x00,
+ 0x4F, 0xFA, 0x46, 0x02, 0x2F, 0x00, 0x46, 0xF9,
+ 0x46, 0x02, 0x2F, 0x00, 0x3D, 0xF8, 0x46, 0x02,
+ 0x2A, 0x00, 0x84, 0x00, 0x59, 0x02, 0x2A, 0x00,
+ 0x8D, 0x01, 0x59, 0x02, 0x2A, 0x00, 0x96, 0x02,
+ 0x59, 0x02, 0x2A, 0x00, 0x9F, 0x03, 0x59, 0x02,
+ 0x2D, 0x00, 0xA8, 0x04, 0x21, 0x03, 0x2F, 0x00,
+ 0xB1, 0x05, 0xCA, 0x03, 0x2F, 0x00, 0xBA, 0x06,
+ 0xCA, 0x03, 0x2F, 0x00, 0xC3, 0x07, 0xCA, 0x03,
+ 0x2A, 0x00, 0x7C, 0xFF, 0x59, 0x02, 0x2A, 0x00,
+ 0x73, 0xFE, 0x59, 0x02, 0x2A, 0x00, 0x6A, 0xFD,
+ 0x59, 0x02, 0x2A, 0x00, 0x61, 0xFC, 0x59, 0x02,
+ 0x2D, 0x00, 0x58, 0xFB, 0x21, 0x03, 0x2F, 0x00,
+ 0x4F, 0xFA, 0xCA, 0x03, 0x2F, 0x00, 0x46, 0xF9,
+ 0xCA, 0x03, 0x2F, 0x00, 0x3D, 0xF8, 0xCA, 0x03,
+ 0x2A, 0x00, 0x84, 0x00, 0x49, 0x03, 0x2A, 0x00,
+ 0x8D, 0x01, 0x49, 0x03, 0x2A, 0x00, 0x96, 0x02,
+ 0x49, 0x03, 0x2A, 0x00, 0x9F, 0x03, 0x49, 0x03,
+ 0x2D, 0x00, 0xA8, 0x04, 0x61, 0x04, 0x2F, 0x00,
+ 0xB1, 0x05, 0x4E, 0x05, 0x2F, 0x00, 0xBA, 0x06,
+ 0x4E, 0x05, 0x2F, 0x00, 0xC3, 0x07, 0x4E, 0x05,
+ 0x2A, 0x00, 0x7C, 0xFF, 0x49, 0x03, 0x2A, 0x00,
+ 0x73, 0xFE, 0x49, 0x03, 0x2A, 0x00, 0x6A, 0xFD,
+ 0x49, 0x03, 0x2A, 0x00, 0x61, 0xFC, 0x49, 0x03,
+ 0x2D, 0x00, 0x58, 0xFB, 0x61, 0x04, 0x2F, 0x00,
+ 0x4F, 0xFA, 0x4E, 0x05, 0x2F, 0x00, 0x46, 0xF9,
+ 0x4E, 0x05, 0x2F, 0x00, 0x3D, 0xF8, 0x4E, 0x05,
+ 0x2D, 0x00, 0x84, 0x00, 0x3B, 0x04, 0x2D, 0x00,
+ 0x8D, 0x01, 0x3B, 0x04, 0x2D, 0x00, 0x96, 0x02,
+ 0x3B, 0x04, 0x2D, 0x00, 0x9F, 0x03, 0x3B, 0x04,
+ 0x30, 0x00, 0xA8, 0x04, 0xA2, 0x05, 0x30, 0x00,
+ 0xB1, 0x05, 0xD2, 0x06, 0x30, 0x00, 0xBA, 0x06,
+ 0xD2, 0x06, 0x30, 0x00, 0xC3, 0x07, 0xD2, 0x06,
+ 0x2D, 0x00, 0x7C, 0xFF, 0x3B, 0x04, 0x2D, 0x00,
+ 0x73, 0xFE, 0x3B, 0x04, 0x2D, 0x00, 0x6A, 0xFD,
+ 0x3B, 0x04, 0x2D, 0x00, 0x61, 0xFC, 0x3B, 0x04,
+ 0x30, 0x00, 0x58, 0xFB, 0xA2, 0x05, 0x30, 0x00,
+ 0x4F, 0xFA, 0xD2, 0x06, 0x30, 0x00, 0x46, 0xF9,
+ 0xD2, 0x06, 0x30, 0x00, 0x3D, 0xF8, 0xD2, 0x06,
+ 0x2F, 0x00, 0x84, 0x00, 0x2B, 0x05, 0x2F, 0x00,
+ 0x8D, 0x01, 0x2B, 0x05, 0x2F, 0x00, 0x96, 0x02,
+ 0x2B, 0x05, 0x2F, 0x00, 0x9F, 0x03, 0x2B, 0x05,
+ 0x30, 0x00, 0xA8, 0x04, 0xE2, 0x06, 0x30, 0x00,
+ 0xB1, 0x05, 0x56, 0x08, 0x30, 0x00, 0xBA, 0x06,
+ 0x56, 0x08, 0x30, 0x00, 0xC3, 0x07, 0x56, 0x08,
+ 0x2F, 0x00, 0x7C, 0xFF, 0x2B, 0x05, 0x2F, 0x00,
+ 0x73, 0xFE, 0x2B, 0x05, 0x2F, 0x00, 0x6A, 0xFD,
+ 0x2B, 0x05, 0x2F, 0x00, 0x61, 0xFC, 0x2B, 0x05,
+ 0x30, 0x00, 0x58, 0xFB, 0xE2, 0x06, 0x30, 0x00,
+ 0x4F, 0xFA, 0x56, 0x08, 0x30, 0x00, 0x46, 0xF9,
+ 0x56, 0x08, 0x30, 0x00, 0x3D, 0xF8, 0x56, 0x08,
+ 0x30, 0x00, 0x84, 0x00, 0x1C, 0x06, 0x30, 0x00,
+ 0x8D, 0x01, 0x1C, 0x06, 0x30, 0x00, 0x96, 0x02,
+ 0x1C, 0x06, 0x30, 0x00, 0x9F, 0x03, 0x1C, 0x06,
+ 0x30, 0x00, 0xA8, 0x04, 0x23, 0x08, 0x30, 0x00,
+ 0xB1, 0x05, 0xDA, 0x09, 0x30, 0x00, 0xBA, 0x06,
+ 0xDA, 0x09, 0x30, 0x00, 0xC3, 0x07, 0xDA, 0x09,
+ 0x30, 0x00, 0x7C, 0xFF, 0x1C, 0x06, 0x30, 0x00,
+ 0x73, 0xFE, 0x1C, 0x06, 0x30, 0x00, 0x6A, 0xFD,
+ 0x1C, 0x06, 0x30, 0x00, 0x61, 0xFC, 0x1C, 0x06,
+ 0x30, 0x00, 0x58, 0xFB, 0x23, 0x08, 0x30, 0x00,
+ 0x4F, 0xFA, 0xDA, 0x09, 0x30, 0x00, 0x46, 0xF9,
+ 0xDA, 0x09, 0x30, 0x00, 0x3D, 0xF8, 0xDA, 0x09,
+ 0x30, 0x00, 0x84, 0x00, 0x0C, 0x07, 0x30, 0x00,
+ 0x8D, 0x01, 0x0C, 0x07, 0x30, 0x00, 0x96, 0x02,
+ 0x0C, 0x07, 0x30, 0x00, 0x9F, 0x03, 0x0C, 0x07,
+ 0x30, 0x00, 0xA8, 0x04, 0x63, 0x09, 0x30, 0x00,
+ 0xB1, 0x05, 0x5E, 0x0B, 0x30, 0x00, 0xBA, 0x06,
+ 0x5E, 0x0B, 0x30, 0x00, 0xC3, 0x07, 0x5E, 0x0B,
+ 0x30, 0x00, 0x7C, 0xFF, 0x0C, 0x07, 0x30, 0x00,
+ 0x73, 0xFE, 0x0C, 0x07, 0x30, 0x00, 0x6A, 0xFD,
+ 0x0C, 0x07, 0x30, 0x00, 0x61, 0xFC, 0x0C, 0x07,
+ 0x30, 0x00, 0x58, 0xFB, 0x63, 0x09, 0x30, 0x00,
+ 0x4F, 0xFA, 0x5E, 0x0B, 0x30, 0x00, 0x46, 0xF9,
+ 0x5E, 0x0B, 0x30, 0x00, 0x3D, 0xF8, 0x5E, 0x0B,
+ 0x2A, 0x00, 0x84, 0x00, 0x88, 0xFF, 0x2A, 0x00,
+ 0x8D, 0x01, 0x88, 0xFF, 0x2A, 0x00, 0x96, 0x02,
+ 0x88, 0xFF, 0x2A, 0x00, 0x9F, 0x03, 0x88, 0xFF,
+ 0x2D, 0x00, 0xA8, 0x04, 0x60, 0xFF, 0x2F, 0x00,
+ 0xB1, 0x05, 0x3E, 0xFF, 0x2F, 0x00, 0xBA, 0x06,
+ 0x3E, 0xFF, 0x2F, 0x00, 0xC3, 0x07, 0x3E, 0xFF,
+ 0x2A, 0x00, 0x7C, 0xFF, 0x88, 0xFF, 0x2A, 0x00,
+ 0x73, 0xFE, 0x88, 0xFF, 0x2A, 0x00, 0x6A, 0xFD,
+ 0x88, 0xFF, 0x2A, 0x00, 0x61, 0xFC, 0x88, 0xFF,
+ 0x2D, 0x00, 0x58, 0xFB, 0x60, 0xFF, 0x2F, 0x00,
+ 0x4F, 0xFA, 0x3E, 0xFF, 0x2F, 0x00, 0x46, 0xF9,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x3D, 0xF8, 0x3E, 0xFF,
+ 0x2A, 0x00, 0x84, 0x00, 0x98, 0xFE, 0x2A, 0x00,
+ 0x8D, 0x01, 0x98, 0xFE, 0x2A, 0x00, 0x96, 0x02,
+ 0x98, 0xFE, 0x2A, 0x00, 0x9F, 0x03, 0x98, 0xFE,
+ 0x2D, 0x00, 0xA8, 0x04, 0x20, 0xFE, 0x2F, 0x00,
+ 0xB1, 0x05, 0xBA, 0xFD, 0x2F, 0x00, 0xBA, 0x06,
+ 0xBA, 0xFD, 0x2F, 0x00, 0xC3, 0x07, 0xBA, 0xFD,
+ 0x2A, 0x00, 0x7C, 0xFF, 0x98, 0xFE, 0x2A, 0x00,
+ 0x73, 0xFE, 0x98, 0xFE, 0x2A, 0x00, 0x6A, 0xFD,
+ 0x98, 0xFE, 0x2A, 0x00, 0x61, 0xFC, 0x98, 0xFE,
+ 0x2D, 0x00, 0x58, 0xFB, 0x20, 0xFE, 0x2F, 0x00,
+ 0x4F, 0xFA, 0xBA, 0xFD, 0x2F, 0x00, 0x46, 0xF9,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x3D, 0xF8, 0xBA, 0xFD,
+ 0x2A, 0x00, 0x84, 0x00, 0xA7, 0xFD, 0x2A, 0x00,
+ 0x8D, 0x01, 0xA7, 0xFD, 0x2A, 0x00, 0x96, 0x02,
+ 0xA7, 0xFD, 0x2A, 0x00, 0x9F, 0x03, 0xA7, 0xFD,
+ 0x2D, 0x00, 0xA8, 0x04, 0xDF, 0xFC, 0x2F, 0x00,
+ 0xB1, 0x05, 0x36, 0xFC, 0x2F, 0x00, 0xBA, 0x06,
+ 0x36, 0xFC, 0x2F, 0x00, 0xC3, 0x07, 0x36, 0xFC,
+ 0x2A, 0x00, 0x7C, 0xFF, 0xA7, 0xFD, 0x2A, 0x00,
+ 0x73, 0xFE, 0xA7, 0xFD, 0x2A, 0x00, 0x6A, 0xFD,
+ 0xA7, 0xFD, 0x2A, 0x00, 0x61, 0xFC, 0xA7, 0xFD,
+ 0x2D, 0x00, 0x58, 0xFB, 0xDF, 0xFC, 0x2F, 0x00,
+ 0x4F, 0xFA, 0x36, 0xFC, 0x2F, 0x00, 0x46, 0xF9,
+ 0x36, 0xFC, 0x2F, 0x00, 0x3D, 0xF8, 0x36, 0xFC,
+ 0x2A, 0x00, 0x84, 0x00, 0xB7, 0xFC, 0x2A, 0x00,
+ 0x8D, 0x01, 0xB7, 0xFC, 0x2A, 0x00, 0x96, 0x02,
+ 0xB7, 0xFC, 0x2A, 0x00, 0x9F, 0x03, 0xB7, 0xFC,
+ 0x2D, 0x00, 0xA8, 0x04, 0x9F, 0xFB, 0x2F, 0x00,
+ 0xB1, 0x05, 0xB2, 0xFA, 0x2F, 0x00, 0xBA, 0x06,
+ 0xB2, 0xFA, 0x2F, 0x00, 0xC3, 0x07, 0xB2, 0xFA,
+ 0x2A, 0x00, 0x7C, 0xFF, 0xB7, 0xFC, 0x2A, 0x00,
+ 0x73, 0xFE, 0xB7, 0xFC, 0x2A, 0x00, 0x6A, 0xFD,
+ 0xB7, 0xFC, 0x2A, 0x00, 0x61, 0xFC, 0xB7, 0xFC,
+ 0x2D, 0x00, 0x58, 0xFB, 0x9F, 0xFB, 0x2F, 0x00,
+ 0x4F, 0xFA, 0xB2, 0xFA, 0x2F, 0x00, 0x46, 0xF9,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x3D, 0xF8, 0xB2, 0xFA,
+ 0x2D, 0x00, 0x84, 0x00, 0xC5, 0xFB, 0x2D, 0x00,
+ 0x8D, 0x01, 0xC5, 0xFB, 0x2D, 0x00, 0x96, 0x02,
+ 0xC5, 0xFB, 0x2D, 0x00, 0x9F, 0x03, 0xC5, 0xFB,
+ 0x30, 0x00, 0xA8, 0x04, 0x5E, 0xFA, 0x30, 0x00,
+ 0xB1, 0x05, 0x2E, 0xF9, 0x30, 0x00, 0xBA, 0x06,
+ 0x2E, 0xF9, 0x30, 0x00, 0xC3, 0x07, 0x2E, 0xF9,
+ 0x2D, 0x00, 0x7C, 0xFF, 0xC5, 0xFB, 0x2D, 0x00,
+ 0x73, 0xFE, 0xC5, 0xFB, 0x2D, 0x00, 0x6A, 0xFD,
+ 0xC5, 0xFB, 0x2D, 0x00, 0x61, 0xFC, 0xC5, 0xFB,
+ 0x30, 0x00, 0x58, 0xFB, 0x5E, 0xFA, 0x30, 0x00,
+ 0x4F, 0xFA, 0x2E, 0xF9, 0x30, 0x00, 0x46, 0xF9,
+ 0x2E, 0xF9, 0x30, 0x00, 0x3D, 0xF8, 0x2E, 0xF9,
+ 0x2F, 0x00, 0x84, 0x00, 0xD5, 0xFA, 0x2F, 0x00,
+ 0x8D, 0x01, 0xD5, 0xFA, 0x2F, 0x00, 0x96, 0x02,
+ 0xD5, 0xFA, 0x2F, 0x00, 0x9F, 0x03, 0xD5, 0xFA,
+ 0x30, 0x00, 0xA8, 0x04, 0x1E, 0xF9, 0x30, 0x00,
+ 0xB1, 0x05, 0xAA, 0xF7, 0x30, 0x00, 0xBA, 0x06,
+ 0xAA, 0xF7, 0x30, 0x00, 0xC3, 0x07, 0xAA, 0xF7,
+ 0x2F, 0x00, 0x7C, 0xFF, 0xD5, 0xFA, 0x2F, 0x00,
+ 0x73, 0xFE, 0xD5, 0xFA, 0x2F, 0x00, 0x6A, 0xFD,
+ 0xD5, 0xFA, 0x2F, 0x00, 0x61, 0xFC, 0xD5, 0xFA,
+ 0x30, 0x00, 0x58, 0xFB, 0x1E, 0xF9, 0x30, 0x00,
+ 0x4F, 0xFA, 0xAA, 0xF7, 0x30, 0x00, 0x46, 0xF9,
+ 0xAA, 0xF7, 0x30, 0x00, 0x3D, 0xF8, 0xAA, 0xF7,
+ 0x30, 0x00, 0x84, 0x00, 0xE4, 0xF9, 0x30, 0x00,
+ 0x8D, 0x01, 0xE4, 0xF9, 0x30, 0x00, 0x96, 0x02,
+ 0xE4, 0xF9, 0x30, 0x00, 0x9F, 0x03, 0xE4, 0xF9,
+ 0x30, 0x00, 0xA8, 0x04, 0xDD, 0xF7, 0x30, 0x00,
+ 0xB1, 0x05, 0x26, 0xF6, 0x30, 0x00, 0xBA, 0x06,
+ 0x26, 0xF6, 0x30, 0x00, 0xC3, 0x07, 0x26, 0xF6,
+ 0x30, 0x00, 0x7C, 0xFF, 0xE4, 0xF9, 0x30, 0x00,
+ 0x73, 0xFE, 0xE4, 0xF9, 0x30, 0x00, 0x6A, 0xFD,
+ 0xE4, 0xF9, 0x30, 0x00, 0x61, 0xFC, 0xE4, 0xF9,
+ 0x30, 0x00, 0x58, 0xFB, 0xDD, 0xF7, 0x30, 0x00,
+ 0x4F, 0xFA, 0x26, 0xF6, 0x30, 0x00, 0x46, 0xF9,
+ 0x26, 0xF6, 0x30, 0x00, 0x3D, 0xF8, 0x26, 0xF6,
+ 0x30, 0x00, 0x84, 0x00, 0xF4, 0xF8, 0x30, 0x00,
+ 0x8D, 0x01, 0xF4, 0xF8, 0x30, 0x00, 0x96, 0x02,
+ 0xF4, 0xF8, 0x30, 0x00, 0x9F, 0x03, 0xF4, 0xF8,
+ 0x30, 0x00, 0xA8, 0x04, 0x9D, 0xF6, 0x30, 0x00,
+ 0xB1, 0x05, 0xA2, 0xF4, 0x30, 0x00, 0xBA, 0x06,
+ 0xA2, 0xF4, 0x30, 0x00, 0xC3, 0x07, 0xA2, 0xF4,
+ 0x30, 0x00, 0x7C, 0xFF, 0xF4, 0xF8, 0x30, 0x00,
+ 0x73, 0xFE, 0xF4, 0xF8, 0x30, 0x00, 0x6A, 0xFD,
+ 0xF4, 0xF8, 0x30, 0x00, 0x61, 0xFC, 0xF4, 0xF8,
+ 0x30, 0x00, 0x58, 0xFB, 0x9D, 0xF6, 0x30, 0x00,
+ 0x4F, 0xFA, 0xA2, 0xF4, 0x30, 0x00, 0x46, 0xF9,
+ 0xA2, 0xF4, 0x30, 0x00, 0x3D, 0xF8, 0xA2, 0xF4,
+ 0x2B, 0x00, 0x91, 0x00, 0x84, 0x00, 0x2B, 0x00,
+ 0xB4, 0x01, 0x84, 0x00, 0x2B, 0x00, 0xD8, 0x02,
+ 0x84, 0x00, 0x2B, 0x00, 0xFB, 0x03, 0x84, 0x00,
+ 0x2E, 0x00, 0x1F, 0x05, 0xB0, 0x00, 0x2F, 0x00,
+ 0x42, 0x06, 0xC2, 0x00, 0x2F, 0x00, 0x66, 0x07,
+ 0xC2, 0x00, 0x2F, 0x00, 0x89, 0x08, 0xC2, 0x00,
+ 0x2B, 0x00, 0x6F, 0xFF, 0x84, 0x00, 0x2B, 0x00,
+ 0x4C, 0xFE, 0x84, 0x00, 0x2B, 0x00, 0x28, 0xFD,
+ 0x84, 0x00, 0x2B, 0x00, 0x05, 0xFC, 0x84, 0x00,
+ 0x2E, 0x00, 0xE1, 0xFA, 0xB0, 0x00, 0x2F, 0x00,
+ 0xBE, 0xF9, 0xC2, 0x00, 0x2F, 0x00, 0x9A, 0xF8,
+ 0xC2, 0x00, 0x2F, 0x00, 0x77, 0xF7, 0xC2, 0x00,
+ 0x2B, 0x00, 0x91, 0x00, 0x8D, 0x01, 0x2B, 0x00,
+ 0xB4, 0x01, 0x8D, 0x01, 0x2B, 0x00, 0xD8, 0x02,
+ 0x8D, 0x01, 0x2B, 0x00, 0xFB, 0x03, 0x8D, 0x01,
+ 0x2E, 0x00, 0x1F, 0x05, 0x10, 0x02, 0x2F, 0x00,
+ 0x42, 0x06, 0x46, 0x02, 0x2F, 0x00, 0x66, 0x07,
+ 0x46, 0x02, 0x2F, 0x00, 0x89, 0x08, 0x46, 0x02,
+ 0x2B, 0x00, 0x6F, 0xFF, 0x8D, 0x01, 0x2B, 0x00,
+ 0x4C, 0xFE, 0x8D, 0x01, 0x2B, 0x00, 0x28, 0xFD,
+ 0x8D, 0x01, 0x2B, 0x00, 0x05, 0xFC, 0x8D, 0x01,
+ 0x2E, 0x00, 0xE1, 0xFA, 0x10, 0x02, 0x2F, 0x00,
+ 0xBE, 0xF9, 0x46, 0x02, 0x2F, 0x00, 0x9A, 0xF8,
+ 0x46, 0x02, 0x2F, 0x00, 0x77, 0xF7, 0x46, 0x02,
+ 0x2B, 0x00, 0x91, 0x00, 0x96, 0x02, 0x2B, 0x00,
+ 0xB4, 0x01, 0x96, 0x02, 0x2B, 0x00, 0xD8, 0x02,
+ 0x96, 0x02, 0x2B, 0x00, 0xFB, 0x03, 0x96, 0x02,
+ 0x2E, 0x00, 0x1F, 0x05, 0x71, 0x03, 0x2F, 0x00,
+ 0x42, 0x06, 0xCA, 0x03, 0x2F, 0x00, 0x66, 0x07,
+ 0xCA, 0x03, 0x2F, 0x00, 0x89, 0x08, 0xCA, 0x03,
+ 0x2B, 0x00, 0x6F, 0xFF, 0x96, 0x02, 0x2B, 0x00,
+ 0x4C, 0xFE, 0x96, 0x02, 0x2B, 0x00, 0x28, 0xFD,
+ 0x96, 0x02, 0x2B, 0x00, 0x05, 0xFC, 0x96, 0x02,
+ 0x2E, 0x00, 0xE1, 0xFA, 0x71, 0x03, 0x2F, 0x00,
+ 0xBE, 0xF9, 0xCA, 0x03, 0x2F, 0x00, 0x9A, 0xF8,
+ 0xCA, 0x03, 0x2F, 0x00, 0x77, 0xF7, 0xCA, 0x03,
+ 0x2B, 0x00, 0x91, 0x00, 0x9F, 0x03, 0x2B, 0x00,
+ 0xB4, 0x01, 0x9F, 0x03, 0x2B, 0x00, 0xD8, 0x02,
+ 0x9F, 0x03, 0x2B, 0x00, 0xFB, 0x03, 0x9F, 0x03,
+ 0x2E, 0x00, 0x1F, 0x05, 0xD1, 0x04, 0x2F, 0x00,
+ 0x42, 0x06, 0x4E, 0x05, 0x2F, 0x00, 0x66, 0x07,
+ 0x4E, 0x05, 0x2F, 0x00, 0x89, 0x08, 0x4E, 0x05,
+ 0x2B, 0x00, 0x6F, 0xFF, 0x9F, 0x03, 0x2B, 0x00,
+ 0x4C, 0xFE, 0x9F, 0x03, 0x2B, 0x00, 0x28, 0xFD,
+ 0x9F, 0x03, 0x2B, 0x00, 0x05, 0xFC, 0x9F, 0x03,
+ 0x2E, 0x00, 0xE1, 0xFA, 0xD1, 0x04, 0x2F, 0x00,
+ 0xBE, 0xF9, 0x4E, 0x05, 0x2F, 0x00, 0x9A, 0xF8,
+ 0x4E, 0x05, 0x2F, 0x00, 0x77, 0xF7, 0x4E, 0x05,
+ 0x2E, 0x00, 0x91, 0x00, 0xA8, 0x04, 0x2E, 0x00,
+ 0xB4, 0x01, 0xA8, 0x04, 0x2E, 0x00, 0xD8, 0x02,
+ 0xA8, 0x04, 0x2E, 0x00, 0xFB, 0x03, 0xA8, 0x04,
+ 0x30, 0x00, 0x1F, 0x05, 0x33, 0x06, 0x30, 0x00,
+ 0x42, 0x06, 0xD2, 0x06, 0x30, 0x00, 0x66, 0x07,
+ 0xD2, 0x06, 0x30, 0x00, 0x89, 0x08, 0xD2, 0x06,
+ 0x2E, 0x00, 0x6F, 0xFF, 0xA8, 0x04, 0x2E, 0x00,
+ 0x4C, 0xFE, 0xA8, 0x04, 0x2E, 0x00, 0x28, 0xFD,
+ 0xA8, 0x04, 0x2E, 0x00, 0x05, 0xFC, 0xA8, 0x04,
+ 0x30, 0x00, 0xE1, 0xFA, 0x33, 0x06, 0x30, 0x00,
+ 0xBE, 0xF9, 0xD2, 0x06, 0x30, 0x00, 0x9A, 0xF8,
+ 0xD2, 0x06, 0x30, 0x00, 0x77, 0xF7, 0xD2, 0x06,
+ 0x30, 0x00, 0x91, 0x00, 0xB1, 0x05, 0x30, 0x00,
+ 0xB4, 0x01, 0xB1, 0x05, 0x30, 0x00, 0xD8, 0x02,
+ 0xB1, 0x05, 0x30, 0x00, 0xFB, 0x03, 0xB1, 0x05,
+ 0x30, 0x00, 0x1F, 0x05, 0x93, 0x07, 0x30, 0x00,
+ 0x42, 0x06, 0x56, 0x08, 0x30, 0x00, 0x66, 0x07,
+ 0x56, 0x08, 0x30, 0x00, 0x89, 0x08, 0x56, 0x08,
+ 0x30, 0x00, 0x6F, 0xFF, 0xB1, 0x05, 0x30, 0x00,
+ 0x4C, 0xFE, 0xB1, 0x05, 0x30, 0x00, 0x28, 0xFD,
+ 0xB1, 0x05, 0x30, 0x00, 0x05, 0xFC, 0xB1, 0x05,
+ 0x30, 0x00, 0xE1, 0xFA, 0x93, 0x07, 0x30, 0x00,
+ 0xBE, 0xF9, 0x56, 0x08, 0x30, 0x00, 0x9A, 0xF8,
+ 0x56, 0x08, 0x30, 0x00, 0x77, 0xF7, 0x56, 0x08,
+ 0x30, 0x00, 0x91, 0x00, 0xBA, 0x06, 0x30, 0x00,
+ 0xB4, 0x01, 0xBA, 0x06, 0x30, 0x00, 0xD8, 0x02,
+ 0xBA, 0x06, 0x30, 0x00, 0xFB, 0x03, 0xBA, 0x06,
+ 0x30, 0x00, 0x1F, 0x05, 0xF4, 0x08, 0x30, 0x00,
+ 0x42, 0x06, 0xDA, 0x09, 0x30, 0x00, 0x66, 0x07,
+ 0xDA, 0x09, 0x30, 0x00, 0x89, 0x08, 0xDA, 0x09,
+ 0x30, 0x00, 0x6F, 0xFF, 0xBA, 0x06, 0x30, 0x00,
+ 0x4C, 0xFE, 0xBA, 0x06, 0x30, 0x00, 0x28, 0xFD,
+ 0xBA, 0x06, 0x30, 0x00, 0x05, 0xFC, 0xBA, 0x06,
+ 0x30, 0x00, 0xE1, 0xFA, 0xF4, 0x08, 0x30, 0x00,
+ 0xBE, 0xF9, 0xDA, 0x09, 0x30, 0x00, 0x9A, 0xF8,
+ 0xDA, 0x09, 0x30, 0x00, 0x77, 0xF7, 0xDA, 0x09,
+ 0x30, 0x00, 0x91, 0x00, 0xC3, 0x07, 0x30, 0x00,
+ 0xB4, 0x01, 0xC3, 0x07, 0x30, 0x00, 0xD8, 0x02,
+ 0xC3, 0x07, 0x30, 0x00, 0xFB, 0x03, 0xC3, 0x07,
+ 0x30, 0x00, 0x1F, 0x05, 0x54, 0x0A, 0x30, 0x00,
+ 0x42, 0x06, 0x5E, 0x0B, 0x30, 0x00, 0x66, 0x07,
+ 0x5E, 0x0B, 0x30, 0x00, 0x89, 0x08, 0x5E, 0x0B,
+ 0x30, 0x00, 0x6F, 0xFF, 0xC3, 0x07, 0x30, 0x00,
+ 0x4C, 0xFE, 0xC3, 0x07, 0x30, 0x00, 0x28, 0xFD,
+ 0xC3, 0x07, 0x30, 0x00, 0x05, 0xFC, 0xC3, 0x07,
+ 0x30, 0x00, 0xE1, 0xFA, 0x54, 0x0A, 0x30, 0x00,
+ 0xBE, 0xF9, 0x5E, 0x0B, 0x30, 0x00, 0x9A, 0xF8,
+ 0x5E, 0x0B, 0x30, 0x00, 0x77, 0xF7, 0x5E, 0x0B,
+ 0x2B, 0x00, 0x91, 0x00, 0x7C, 0xFF, 0x2B, 0x00,
+ 0xB4, 0x01, 0x7C, 0xFF, 0x2B, 0x00, 0xD8, 0x02,
+ 0x7C, 0xFF, 0x2B, 0x00, 0xFB, 0x03, 0x7C, 0xFF,
+ 0x2E, 0x00, 0x1F, 0x05, 0x50, 0xFF, 0x2F, 0x00,
+ 0x42, 0x06, 0x3E, 0xFF, 0x2F, 0x00, 0x66, 0x07,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x89, 0x08, 0x3E, 0xFF,
+ 0x2B, 0x00, 0x6F, 0xFF, 0x7C, 0xFF, 0x2B, 0x00,
+ 0x4C, 0xFE, 0x7C, 0xFF, 0x2B, 0x00, 0x28, 0xFD,
+ 0x7C, 0xFF, 0x2B, 0x00, 0x05, 0xFC, 0x7C, 0xFF,
+ 0x2E, 0x00, 0xE1, 0xFA, 0x50, 0xFF, 0x2F, 0x00,
+ 0xBE, 0xF9, 0x3E, 0xFF, 0x2F, 0x00, 0x9A, 0xF8,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x77, 0xF7, 0x3E, 0xFF,
+ 0x2B, 0x00, 0x91, 0x00, 0x73, 0xFE, 0x2B, 0x00,
+ 0xB4, 0x01, 0x73, 0xFE, 0x2B, 0x00, 0xD8, 0x02,
+ 0x73, 0xFE, 0x2B, 0x00, 0xFB, 0x03, 0x73, 0xFE,
+ 0x2E, 0x00, 0x1F, 0x05, 0xF0, 0xFD, 0x2F, 0x00,
+ 0x42, 0x06, 0xBA, 0xFD, 0x2F, 0x00, 0x66, 0x07,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x89, 0x08, 0xBA, 0xFD,
+ 0x2B, 0x00, 0x6F, 0xFF, 0x73, 0xFE, 0x2B, 0x00,
+ 0x4C, 0xFE, 0x73, 0xFE, 0x2B, 0x00, 0x28, 0xFD,
+ 0x73, 0xFE, 0x2B, 0x00, 0x05, 0xFC, 0x73, 0xFE,
+ 0x2E, 0x00, 0xE1, 0xFA, 0xF0, 0xFD, 0x2F, 0x00,
+ 0xBE, 0xF9, 0xBA, 0xFD, 0x2F, 0x00, 0x9A, 0xF8,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x77, 0xF7, 0xBA, 0xFD,
+ 0x2B, 0x00, 0x91, 0x00, 0x6A, 0xFD, 0x2B, 0x00,
+ 0xB4, 0x01, 0x6A, 0xFD, 0x2B, 0x00, 0xD8, 0x02,
+ 0x6A, 0xFD, 0x2B, 0x00, 0xFB, 0x03, 0x6A, 0xFD,
+ 0x2E, 0x00, 0x1F, 0x05, 0x8F, 0xFC, 0x2F, 0x00,
+ 0x42, 0x06, 0x36, 0xFC, 0x2F, 0x00, 0x66, 0x07,
+ 0x36, 0xFC, 0x2F, 0x00, 0x89, 0x08, 0x36, 0xFC,
+ 0x2B, 0x00, 0x6F, 0xFF, 0x6A, 0xFD, 0x2B, 0x00,
+ 0x4C, 0xFE, 0x6A, 0xFD, 0x2B, 0x00, 0x28, 0xFD,
+ 0x6A, 0xFD, 0x2B, 0x00, 0x05, 0xFC, 0x6A, 0xFD,
+ 0x2E, 0x00, 0xE1, 0xFA, 0x8F, 0xFC, 0x2F, 0x00,
+ 0xBE, 0xF9, 0x36, 0xFC, 0x2F, 0x00, 0x9A, 0xF8,
+ 0x36, 0xFC, 0x2F, 0x00, 0x77, 0xF7, 0x36, 0xFC,
+ 0x2B, 0x00, 0x91, 0x00, 0x61, 0xFC, 0x2B, 0x00,
+ 0xB4, 0x01, 0x61, 0xFC, 0x2B, 0x00, 0xD8, 0x02,
+ 0x61, 0xFC, 0x2B, 0x00, 0xFB, 0x03, 0x61, 0xFC,
+ 0x2E, 0x00, 0x1F, 0x05, 0x2F, 0xFB, 0x2F, 0x00,
+ 0x42, 0x06, 0xB2, 0xFA, 0x2F, 0x00, 0x66, 0x07,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x89, 0x08, 0xB2, 0xFA,
+ 0x2B, 0x00, 0x6F, 0xFF, 0x61, 0xFC, 0x2B, 0x00,
+ 0x4C, 0xFE, 0x61, 0xFC, 0x2B, 0x00, 0x28, 0xFD,
+ 0x61, 0xFC, 0x2B, 0x00, 0x05, 0xFC, 0x61, 0xFC,
+ 0x2E, 0x00, 0xE1, 0xFA, 0x2F, 0xFB, 0x2F, 0x00,
+ 0xBE, 0xF9, 0xB2, 0xFA, 0x2F, 0x00, 0x9A, 0xF8,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x77, 0xF7, 0xB2, 0xFA,
+ 0x2E, 0x00, 0x91, 0x00, 0x58, 0xFB, 0x2E, 0x00,
+ 0xB4, 0x01, 0x58, 0xFB, 0x2E, 0x00, 0xD8, 0x02,
+ 0x58, 0xFB, 0x2E, 0x00, 0xFB, 0x03, 0x58, 0xFB,
+ 0x30, 0x00, 0x1F, 0x05, 0xCD, 0xF9, 0x30, 0x00,
+ 0x42, 0x06, 0x2E, 0xF9, 0x30, 0x00, 0x66, 0x07,
+ 0x2E, 0xF9, 0x30, 0x00, 0x89, 0x08, 0x2E, 0xF9,
+ 0x2E, 0x00, 0x6F, 0xFF, 0x58, 0xFB, 0x2E, 0x00,
+ 0x4C, 0xFE, 0x58, 0xFB, 0x2E, 0x00, 0x28, 0xFD,
+ 0x58, 0xFB, 0x2E, 0x00, 0x05, 0xFC, 0x58, 0xFB,
+ 0x30, 0x00, 0xE1, 0xFA, 0xCD, 0xF9, 0x30, 0x00,
+ 0xBE, 0xF9, 0x2E, 0xF9, 0x30, 0x00, 0x9A, 0xF8,
+ 0x2E, 0xF9, 0x30, 0x00, 0x77, 0xF7, 0x2E, 0xF9,
+ 0x30, 0x00, 0x91, 0x00, 0x4F, 0xFA, 0x30, 0x00,
+ 0xB4, 0x01, 0x4F, 0xFA, 0x30, 0x00, 0xD8, 0x02,
+ 0x4F, 0xFA, 0x30, 0x00, 0xFB, 0x03, 0x4F, 0xFA,
+ 0x30, 0x00, 0x1F, 0x05, 0x6D, 0xF8, 0x30, 0x00,
+ 0x42, 0x06, 0xAA, 0xF7, 0x30, 0x00, 0x66, 0x07,
+ 0xAA, 0xF7, 0x30, 0x00, 0x89, 0x08, 0xAA, 0xF7,
+ 0x30, 0x00, 0x6F, 0xFF, 0x4F, 0xFA, 0x30, 0x00,
+ 0x4C, 0xFE, 0x4F, 0xFA, 0x30, 0x00, 0x28, 0xFD,
+ 0x4F, 0xFA, 0x30, 0x00, 0x05, 0xFC, 0x4F, 0xFA,
+ 0x30, 0x00, 0xE1, 0xFA, 0x6D, 0xF8, 0x30, 0x00,
+ 0xBE, 0xF9, 0xAA, 0xF7, 0x30, 0x00, 0x9A, 0xF8,
+ 0xAA, 0xF7, 0x30, 0x00, 0x77, 0xF7, 0xAA, 0xF7,
+ 0x30, 0x00, 0x91, 0x00, 0x46, 0xF9, 0x30, 0x00,
+ 0xB4, 0x01, 0x46, 0xF9, 0x30, 0x00, 0xD8, 0x02,
+ 0x46, 0xF9, 0x30, 0x00, 0xFB, 0x03, 0x46, 0xF9,
+ 0x30, 0x00, 0x1F, 0x05, 0x0C, 0xF7, 0x30, 0x00,
+ 0x42, 0x06, 0x26, 0xF6, 0x30, 0x00, 0x66, 0x07,
+ 0x26, 0xF6, 0x30, 0x00, 0x89, 0x08, 0x26, 0xF6,
+ 0x30, 0x00, 0x6F, 0xFF, 0x46, 0xF9, 0x30, 0x00,
+ 0x4C, 0xFE, 0x46, 0xF9, 0x30, 0x00, 0x28, 0xFD,
+ 0x46, 0xF9, 0x30, 0x00, 0x05, 0xFC, 0x46, 0xF9,
+ 0x30, 0x00, 0xE1, 0xFA, 0x0C, 0xF7, 0x30, 0x00,
+ 0xBE, 0xF9, 0x26, 0xF6, 0x30, 0x00, 0x9A, 0xF8,
+ 0x26, 0xF6, 0x30, 0x00, 0x77, 0xF7, 0x26, 0xF6,
+ 0x30, 0x00, 0x91, 0x00, 0x3D, 0xF8, 0x30, 0x00,
+ 0xB4, 0x01, 0x3D, 0xF8, 0x30, 0x00, 0xD8, 0x02,
+ 0x3D, 0xF8, 0x30, 0x00, 0xFB, 0x03, 0x3D, 0xF8,
+ 0x30, 0x00, 0x1F, 0x05, 0xAC, 0xF5, 0x30, 0x00,
+ 0x42, 0x06, 0xA2, 0xF4, 0x30, 0x00, 0x66, 0x07,
+ 0xA2, 0xF4, 0x30, 0x00, 0x89, 0x08, 0xA2, 0xF4,
+ 0x30, 0x00, 0x6F, 0xFF, 0x3D, 0xF8, 0x30, 0x00,
+ 0x4C, 0xFE, 0x3D, 0xF8, 0x30, 0x00, 0x28, 0xFD,
+ 0x3D, 0xF8, 0x30, 0x00, 0x05, 0xFC, 0x3D, 0xF8,
+ 0x30, 0x00, 0xE1, 0xFA, 0xAC, 0xF5, 0x30, 0x00,
+ 0xBE, 0xF9, 0xA2, 0xF4, 0x30, 0x00, 0x9A, 0xF8,
+ 0xA2, 0xF4, 0x30, 0x00, 0x77, 0xF7, 0xA2, 0xF4,
+ 0x2C, 0x00, 0xA0, 0x00, 0x91, 0x00, 0x2C, 0x00,
+ 0xE0, 0x01, 0x91, 0x00, 0x2C, 0x00, 0x21, 0x03,
+ 0x91, 0x00, 0x2C, 0x00, 0x61, 0x04, 0x91, 0x00,
+ 0x2F, 0x00, 0xA2, 0x05, 0xC2, 0x00, 0x2F, 0x00,
+ 0xE2, 0x06, 0xC2, 0x00, 0x2F, 0x00, 0x23, 0x08,
+ 0xC2, 0x00, 0x2F, 0x00, 0x63, 0x09, 0xC2, 0x00,
+ 0x2C, 0x00, 0x60, 0xFF, 0x91, 0x00, 0x2C, 0x00,
+ 0x20, 0xFE, 0x91, 0x00, 0x2C, 0x00, 0xDF, 0xFC,
+ 0x91, 0x00, 0x2C, 0x00, 0x9F, 0xFB, 0x91, 0x00,
+ 0x2F, 0x00, 0x5E, 0xFA, 0xC2, 0x00, 0x2F, 0x00,
+ 0x1E, 0xF9, 0xC2, 0x00, 0x2F, 0x00, 0xDD, 0xF7,
+ 0xC2, 0x00, 0x2F, 0x00, 0x9D, 0xF6, 0xC2, 0x00,
+ 0x2C, 0x00, 0xA0, 0x00, 0xB4, 0x01, 0x2C, 0x00,
+ 0xE0, 0x01, 0xB4, 0x01, 0x2C, 0x00, 0x21, 0x03,
+ 0xB4, 0x01, 0x2C, 0x00, 0x61, 0x04, 0xB4, 0x01,
+ 0x2F, 0x00, 0xA2, 0x05, 0x46, 0x02, 0x2F, 0x00,
+ 0xE2, 0x06, 0x46, 0x02, 0x2F, 0x00, 0x23, 0x08,
+ 0x46, 0x02, 0x2F, 0x00, 0x63, 0x09, 0x46, 0x02,
+ 0x2C, 0x00, 0x60, 0xFF, 0xB4, 0x01, 0x2C, 0x00,
+ 0x20, 0xFE, 0xB4, 0x01, 0x2C, 0x00, 0xDF, 0xFC,
+ 0xB4, 0x01, 0x2C, 0x00, 0x9F, 0xFB, 0xB4, 0x01,
+ 0x2F, 0x00, 0x5E, 0xFA, 0x46, 0x02, 0x2F, 0x00,
+ 0x1E, 0xF9, 0x46, 0x02, 0x2F, 0x00, 0xDD, 0xF7,
+ 0x46, 0x02, 0x2F, 0x00, 0x9D, 0xF6, 0x46, 0x02,
+ 0x2C, 0x00, 0xA0, 0x00, 0xD8, 0x02, 0x2C, 0x00,
+ 0xE0, 0x01, 0xD8, 0x02, 0x2C, 0x00, 0x21, 0x03,
+ 0xD8, 0x02, 0x2C, 0x00, 0x61, 0x04, 0xD8, 0x02,
+ 0x2F, 0x00, 0xA2, 0x05, 0xCA, 0x03, 0x2F, 0x00,
+ 0xE2, 0x06, 0xCA, 0x03, 0x2F, 0x00, 0x23, 0x08,
+ 0xCA, 0x03, 0x2F, 0x00, 0x63, 0x09, 0xCA, 0x03,
+ 0x2C, 0x00, 0x60, 0xFF, 0xD8, 0x02, 0x2C, 0x00,
+ 0x20, 0xFE, 0xD8, 0x02, 0x2C, 0x00, 0xDF, 0xFC,
+ 0xD8, 0x02, 0x2C, 0x00, 0x9F, 0xFB, 0xD8, 0x02,
+ 0x2F, 0x00, 0x5E, 0xFA, 0xCA, 0x03, 0x2F, 0x00,
+ 0x1E, 0xF9, 0xCA, 0x03, 0x2F, 0x00, 0xDD, 0xF7,
+ 0xCA, 0x03, 0x2F, 0x00, 0x9D, 0xF6, 0xCA, 0x03,
+ 0x2C, 0x00, 0xA0, 0x00, 0xFB, 0x03, 0x2C, 0x00,
+ 0xE0, 0x01, 0xFB, 0x03, 0x2C, 0x00, 0x21, 0x03,
+ 0xFB, 0x03, 0x2C, 0x00, 0x61, 0x04, 0xFB, 0x03,
+ 0x2F, 0x00, 0xA2, 0x05, 0x4E, 0x05, 0x2F, 0x00,
+ 0xE2, 0x06, 0x4E, 0x05, 0x2F, 0x00, 0x23, 0x08,
+ 0x4E, 0x05, 0x2F, 0x00, 0x63, 0x09, 0x4E, 0x05,
+ 0x2C, 0x00, 0x60, 0xFF, 0xFB, 0x03, 0x2C, 0x00,
+ 0x20, 0xFE, 0xFB, 0x03, 0x2C, 0x00, 0xDF, 0xFC,
+ 0xFB, 0x03, 0x2C, 0x00, 0x9F, 0xFB, 0xFB, 0x03,
+ 0x2F, 0x00, 0x5E, 0xFA, 0x4E, 0x05, 0x2F, 0x00,
+ 0x1E, 0xF9, 0x4E, 0x05, 0x2F, 0x00, 0xDD, 0xF7,
+ 0x4E, 0x05, 0x2F, 0x00, 0x9D, 0xF6, 0x4E, 0x05,
+ 0x2F, 0x00, 0xA0, 0x00, 0x1F, 0x05, 0x2F, 0x00,
+ 0xE0, 0x01, 0x1F, 0x05, 0x2F, 0x00, 0x21, 0x03,
+ 0x1F, 0x05, 0x2F, 0x00, 0x61, 0x04, 0x1F, 0x05,
+ 0x30, 0x00, 0xA2, 0x05, 0xD2, 0x06, 0x30, 0x00,
+ 0xE2, 0x06, 0xD2, 0x06, 0x30, 0x00, 0x23, 0x08,
+ 0xD2, 0x06, 0x30, 0x00, 0x63, 0x09, 0xD2, 0x06,
+ 0x2F, 0x00, 0x60, 0xFF, 0x1F, 0x05, 0x2F, 0x00,
+ 0x20, 0xFE, 0x1F, 0x05, 0x2F, 0x00, 0xDF, 0xFC,
+ 0x1F, 0x05, 0x2F, 0x00, 0x9F, 0xFB, 0x1F, 0x05,
+ 0x30, 0x00, 0x5E, 0xFA, 0xD2, 0x06, 0x30, 0x00,
+ 0x1E, 0xF9, 0xD2, 0x06, 0x30, 0x00, 0xDD, 0xF7,
+ 0xD2, 0x06, 0x30, 0x00, 0x9D, 0xF6, 0xD2, 0x06,
+ 0x30, 0x00, 0xA0, 0x00, 0x42, 0x06, 0x30, 0x00,
+ 0xE0, 0x01, 0x42, 0x06, 0x30, 0x00, 0x21, 0x03,
+ 0x42, 0x06, 0x30, 0x00, 0x61, 0x04, 0x42, 0x06,
+ 0x30, 0x00, 0xA2, 0x05, 0x56, 0x08, 0x30, 0x00,
+ 0xE2, 0x06, 0x56, 0x08, 0x30, 0x00, 0x23, 0x08,
+ 0x56, 0x08, 0x30, 0x00, 0x63, 0x09, 0x56, 0x08,
+ 0x30, 0x00, 0x60, 0xFF, 0x42, 0x06, 0x30, 0x00,
+ 0x20, 0xFE, 0x42, 0x06, 0x30, 0x00, 0xDF, 0xFC,
+ 0x42, 0x06, 0x30, 0x00, 0x9F, 0xFB, 0x42, 0x06,
+ 0x30, 0x00, 0x5E, 0xFA, 0x56, 0x08, 0x30, 0x00,
+ 0x1E, 0xF9, 0x56, 0x08, 0x30, 0x00, 0xDD, 0xF7,
+ 0x56, 0x08, 0x30, 0x00, 0x9D, 0xF6, 0x56, 0x08,
+ 0x30, 0x00, 0xA0, 0x00, 0x66, 0x07, 0x30, 0x00,
+ 0xE0, 0x01, 0x66, 0x07, 0x30, 0x00, 0x21, 0x03,
+ 0x66, 0x07, 0x30, 0x00, 0x61, 0x04, 0x66, 0x07,
+ 0x30, 0x00, 0xA2, 0x05, 0xDA, 0x09, 0x30, 0x00,
+ 0xE2, 0x06, 0xDA, 0x09, 0x30, 0x00, 0x23, 0x08,
+ 0xDA, 0x09, 0x30, 0x00, 0x63, 0x09, 0xDA, 0x09,
+ 0x30, 0x00, 0x60, 0xFF, 0x66, 0x07, 0x30, 0x00,
+ 0x20, 0xFE, 0x66, 0x07, 0x30, 0x00, 0xDF, 0xFC,
+ 0x66, 0x07, 0x30, 0x00, 0x9F, 0xFB, 0x66, 0x07,
+ 0x30, 0x00, 0x5E, 0xFA, 0xDA, 0x09, 0x30, 0x00,
+ 0x1E, 0xF9, 0xDA, 0x09, 0x30, 0x00, 0xDD, 0xF7,
+ 0xDA, 0x09, 0x30, 0x00, 0x9D, 0xF6, 0xDA, 0x09,
+ 0x30, 0x00, 0xA0, 0x00, 0x89, 0x08, 0x30, 0x00,
+ 0xE0, 0x01, 0x89, 0x08, 0x30, 0x00, 0x21, 0x03,
+ 0x89, 0x08, 0x30, 0x00, 0x61, 0x04, 0x89, 0x08,
+ 0x30, 0x00, 0xA2, 0x05, 0x5E, 0x0B, 0x30, 0x00,
+ 0xE2, 0x06, 0x5E, 0x0B, 0x30, 0x00, 0x23, 0x08,
+ 0x5E, 0x0B, 0x30, 0x00, 0x63, 0x09, 0x5E, 0x0B,
+ 0x30, 0x00, 0x60, 0xFF, 0x89, 0x08, 0x30, 0x00,
+ 0x20, 0xFE, 0x89, 0x08, 0x30, 0x00, 0xDF, 0xFC,
+ 0x89, 0x08, 0x30, 0x00, 0x9F, 0xFB, 0x89, 0x08,
+ 0x30, 0x00, 0x5E, 0xFA, 0x5E, 0x0B, 0x30, 0x00,
+ 0x1E, 0xF9, 0x5E, 0x0B, 0x30, 0x00, 0xDD, 0xF7,
+ 0x5E, 0x0B, 0x30, 0x00, 0x9D, 0xF6, 0x5E, 0x0B,
+ 0x2C, 0x00, 0xA0, 0x00, 0x6F, 0xFF, 0x2C, 0x00,
+ 0xE0, 0x01, 0x6F, 0xFF, 0x2C, 0x00, 0x21, 0x03,
+ 0x6F, 0xFF, 0x2C, 0x00, 0x61, 0x04, 0x6F, 0xFF,
+ 0x2F, 0x00, 0xA2, 0x05, 0x3E, 0xFF, 0x2F, 0x00,
+ 0xE2, 0x06, 0x3E, 0xFF, 0x2F, 0x00, 0x23, 0x08,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x63, 0x09, 0x3E, 0xFF,
+ 0x2C, 0x00, 0x60, 0xFF, 0x6F, 0xFF, 0x2C, 0x00,
+ 0x20, 0xFE, 0x6F, 0xFF, 0x2C, 0x00, 0xDF, 0xFC,
+ 0x6F, 0xFF, 0x2C, 0x00, 0x9F, 0xFB, 0x6F, 0xFF,
+ 0x2F, 0x00, 0x5E, 0xFA, 0x3E, 0xFF, 0x2F, 0x00,
+ 0x1E, 0xF9, 0x3E, 0xFF, 0x2F, 0x00, 0xDD, 0xF7,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x9D, 0xF6, 0x3E, 0xFF,
+ 0x2C, 0x00, 0xA0, 0x00, 0x4C, 0xFE, 0x2C, 0x00,
+ 0xE0, 0x01, 0x4C, 0xFE, 0x2C, 0x00, 0x21, 0x03,
+ 0x4C, 0xFE, 0x2C, 0x00, 0x61, 0x04, 0x4C, 0xFE,
+ 0x2F, 0x00, 0xA2, 0x05, 0xBA, 0xFD, 0x2F, 0x00,
+ 0xE2, 0x06, 0xBA, 0xFD, 0x2F, 0x00, 0x23, 0x08,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x63, 0x09, 0xBA, 0xFD,
+ 0x2C, 0x00, 0x60, 0xFF, 0x4C, 0xFE, 0x2C, 0x00,
+ 0x20, 0xFE, 0x4C, 0xFE, 0x2C, 0x00, 0xDF, 0xFC,
+ 0x4C, 0xFE, 0x2C, 0x00, 0x9F, 0xFB, 0x4C, 0xFE,
+ 0x2F, 0x00, 0x5E, 0xFA, 0xBA, 0xFD, 0x2F, 0x00,
+ 0x1E, 0xF9, 0xBA, 0xFD, 0x2F, 0x00, 0xDD, 0xF7,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x9D, 0xF6, 0xBA, 0xFD,
+ 0x2C, 0x00, 0xA0, 0x00, 0x28, 0xFD, 0x2C, 0x00,
+ 0xE0, 0x01, 0x28, 0xFD, 0x2C, 0x00, 0x21, 0x03,
+ 0x28, 0xFD, 0x2C, 0x00, 0x61, 0x04, 0x28, 0xFD,
+ 0x2F, 0x00, 0xA2, 0x05, 0x36, 0xFC, 0x2F, 0x00,
+ 0xE2, 0x06, 0x36, 0xFC, 0x2F, 0x00, 0x23, 0x08,
+ 0x36, 0xFC, 0x2F, 0x00, 0x63, 0x09, 0x36, 0xFC,
+ 0x2C, 0x00, 0x60, 0xFF, 0x28, 0xFD, 0x2C, 0x00,
+ 0x20, 0xFE, 0x28, 0xFD, 0x2C, 0x00, 0xDF, 0xFC,
+ 0x28, 0xFD, 0x2C, 0x00, 0x9F, 0xFB, 0x28, 0xFD,
+ 0x2F, 0x00, 0x5E, 0xFA, 0x36, 0xFC, 0x2F, 0x00,
+ 0x1E, 0xF9, 0x36, 0xFC, 0x2F, 0x00, 0xDD, 0xF7,
+ 0x36, 0xFC, 0x2F, 0x00, 0x9D, 0xF6, 0x36, 0xFC,
+ 0x2C, 0x00, 0xA0, 0x00, 0x05, 0xFC, 0x2C, 0x00,
+ 0xE0, 0x01, 0x05, 0xFC, 0x2C, 0x00, 0x21, 0x03,
+ 0x05, 0xFC, 0x2C, 0x00, 0x61, 0x04, 0x05, 0xFC,
+ 0x2F, 0x00, 0xA2, 0x05, 0xB2, 0xFA, 0x2F, 0x00,
+ 0xE2, 0x06, 0xB2, 0xFA, 0x2F, 0x00, 0x23, 0x08,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x63, 0x09, 0xB2, 0xFA,
+ 0x2C, 0x00, 0x60, 0xFF, 0x05, 0xFC, 0x2C, 0x00,
+ 0x20, 0xFE, 0x05, 0xFC, 0x2C, 0x00, 0xDF, 0xFC,
+ 0x05, 0xFC, 0x2C, 0x00, 0x9F, 0xFB, 0x05, 0xFC,
+ 0x2F, 0x00, 0x5E, 0xFA, 0xB2, 0xFA, 0x2F, 0x00,
+ 0x1E, 0xF9, 0xB2, 0xFA, 0x2F, 0x00, 0xDD, 0xF7,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x9D, 0xF6, 0xB2, 0xFA,
+ 0x2F, 0x00, 0xA0, 0x00, 0xE1, 0xFA, 0x2F, 0x00,
+ 0xE0, 0x01, 0xE1, 0xFA, 0x2F, 0x00, 0x21, 0x03,
+ 0xE1, 0xFA, 0x2F, 0x00, 0x61, 0x04, 0xE1, 0xFA,
+ 0x30, 0x00, 0xA2, 0x05, 0x2E, 0xF9, 0x30, 0x00,
+ 0xE2, 0x06, 0x2E, 0xF9, 0x30, 0x00, 0x23, 0x08,
+ 0x2E, 0xF9, 0x30, 0x00, 0x63, 0x09, 0x2E, 0xF9,
+ 0x2F, 0x00, 0x60, 0xFF, 0xE1, 0xFA, 0x2F, 0x00,
+ 0x20, 0xFE, 0xE1, 0xFA, 0x2F, 0x00, 0xDF, 0xFC,
+ 0xE1, 0xFA, 0x2F, 0x00, 0x9F, 0xFB, 0xE1, 0xFA,
+ 0x30, 0x00, 0x5E, 0xFA, 0x2E, 0xF9, 0x30, 0x00,
+ 0x1E, 0xF9, 0x2E, 0xF9, 0x30, 0x00, 0xDD, 0xF7,
+ 0x2E, 0xF9, 0x30, 0x00, 0x9D, 0xF6, 0x2E, 0xF9,
+ 0x30, 0x00, 0xA0, 0x00, 0xBE, 0xF9, 0x30, 0x00,
+ 0xE0, 0x01, 0xBE, 0xF9, 0x30, 0x00, 0x21, 0x03,
+ 0xBE, 0xF9, 0x30, 0x00, 0x61, 0x04, 0xBE, 0xF9,
+ 0x30, 0x00, 0xA2, 0x05, 0xAA, 0xF7, 0x30, 0x00,
+ 0xE2, 0x06, 0xAA, 0xF7, 0x30, 0x00, 0x23, 0x08,
+ 0xAA, 0xF7, 0x30, 0x00, 0x63, 0x09, 0xAA, 0xF7,
+ 0x30, 0x00, 0x60, 0xFF, 0xBE, 0xF9, 0x30, 0x00,
+ 0x20, 0xFE, 0xBE, 0xF9, 0x30, 0x00, 0xDF, 0xFC,
+ 0xBE, 0xF9, 0x30, 0x00, 0x9F, 0xFB, 0xBE, 0xF9,
+ 0x30, 0x00, 0x5E, 0xFA, 0xAA, 0xF7, 0x30, 0x00,
+ 0x1E, 0xF9, 0xAA, 0xF7, 0x30, 0x00, 0xDD, 0xF7,
+ 0xAA, 0xF7, 0x30, 0x00, 0x9D, 0xF6, 0xAA, 0xF7,
+ 0x30, 0x00, 0xA0, 0x00, 0x9A, 0xF8, 0x30, 0x00,
+ 0xE0, 0x01, 0x9A, 0xF8, 0x30, 0x00, 0x21, 0x03,
+ 0x9A, 0xF8, 0x30, 0x00, 0x61, 0x04, 0x9A, 0xF8,
+ 0x30, 0x00, 0xA2, 0x05, 0x26, 0xF6, 0x30, 0x00,
+ 0xE2, 0x06, 0x26, 0xF6, 0x30, 0x00, 0x23, 0x08,
+ 0x26, 0xF6, 0x30, 0x00, 0x63, 0x09, 0x26, 0xF6,
+ 0x30, 0x00, 0x60, 0xFF, 0x9A, 0xF8, 0x30, 0x00,
+ 0x20, 0xFE, 0x9A, 0xF8, 0x30, 0x00, 0xDF, 0xFC,
+ 0x9A, 0xF8, 0x30, 0x00, 0x9F, 0xFB, 0x9A, 0xF8,
+ 0x30, 0x00, 0x5E, 0xFA, 0x26, 0xF6, 0x30, 0x00,
+ 0x1E, 0xF9, 0x26, 0xF6, 0x30, 0x00, 0xDD, 0xF7,
+ 0x26, 0xF6, 0x30, 0x00, 0x9D, 0xF6, 0x26, 0xF6,
+ 0x30, 0x00, 0xA0, 0x00, 0x77, 0xF7, 0x30, 0x00,
+ 0xE0, 0x01, 0x77, 0xF7, 0x30, 0x00, 0x21, 0x03,
+ 0x77, 0xF7, 0x30, 0x00, 0x61, 0x04, 0x77, 0xF7,
+ 0x30, 0x00, 0xA2, 0x05, 0xA2, 0xF4, 0x30, 0x00,
+ 0xE2, 0x06, 0xA2, 0xF4, 0x30, 0x00, 0x23, 0x08,
+ 0xA2, 0xF4, 0x30, 0x00, 0x63, 0x09, 0xA2, 0xF4,
+ 0x30, 0x00, 0x60, 0xFF, 0x77, 0xF7, 0x30, 0x00,
+ 0x20, 0xFE, 0x77, 0xF7, 0x30, 0x00, 0xDF, 0xFC,
+ 0x77, 0xF7, 0x30, 0x00, 0x9F, 0xFB, 0x77, 0xF7,
+ 0x30, 0x00, 0x5E, 0xFA, 0xA2, 0xF4, 0x30, 0x00,
+ 0x1E, 0xF9, 0xA2, 0xF4, 0x30, 0x00, 0xDD, 0xF7,
+ 0xA2, 0xF4, 0x30, 0x00, 0x9D, 0xF6, 0xA2, 0xF4,
+ 0x2D, 0x00, 0xB0, 0x00, 0xA0, 0x00, 0x2D, 0x00,
+ 0x10, 0x02, 0xA0, 0x00, 0x2D, 0x00, 0x71, 0x03,
+ 0xA0, 0x00, 0x2D, 0x00, 0xD1, 0x04, 0xA0, 0x00,
+ 0x2F, 0x00, 0x33, 0x06, 0xC2, 0x00, 0x2F, 0x00,
+ 0x93, 0x07, 0xC2, 0x00, 0x2F, 0x00, 0xF4, 0x08,
+ 0xC2, 0x00, 0x2F, 0x00, 0x54, 0x0A, 0xC2, 0x00,
+ 0x2D, 0x00, 0x50, 0xFF, 0xA0, 0x00, 0x2D, 0x00,
+ 0xF0, 0xFD, 0xA0, 0x00, 0x2D, 0x00, 0x8F, 0xFC,
+ 0xA0, 0x00, 0x2D, 0x00, 0x2F, 0xFB, 0xA0, 0x00,
+ 0x2F, 0x00, 0xCD, 0xF9, 0xC2, 0x00, 0x2F, 0x00,
+ 0x6D, 0xF8, 0xC2, 0x00, 0x2F, 0x00, 0x0C, 0xF7,
+ 0xC2, 0x00, 0x2F, 0x00, 0xAC, 0xF5, 0xC2, 0x00,
+ 0x2D, 0x00, 0xB0, 0x00, 0xE0, 0x01, 0x2D, 0x00,
+ 0x10, 0x02, 0xE0, 0x01, 0x2D, 0x00, 0x71, 0x03,
+ 0xE0, 0x01, 0x2D, 0x00, 0xD1, 0x04, 0xE0, 0x01,
+ 0x2F, 0x00, 0x33, 0x06, 0x46, 0x02, 0x2F, 0x00,
+ 0x93, 0x07, 0x46, 0x02, 0x2F, 0x00, 0xF4, 0x08,
+ 0x46, 0x02, 0x2F, 0x00, 0x54, 0x0A, 0x46, 0x02,
+ 0x2D, 0x00, 0x50, 0xFF, 0xE0, 0x01, 0x2D, 0x00,
+ 0xF0, 0xFD, 0xE0, 0x01, 0x2D, 0x00, 0x8F, 0xFC,
+ 0xE0, 0x01, 0x2D, 0x00, 0x2F, 0xFB, 0xE0, 0x01,
+ 0x2F, 0x00, 0xCD, 0xF9, 0x46, 0x02, 0x2F, 0x00,
+ 0x6D, 0xF8, 0x46, 0x02, 0x2F, 0x00, 0x0C, 0xF7,
+ 0x46, 0x02, 0x2F, 0x00, 0xAC, 0xF5, 0x46, 0x02,
+ 0x2D, 0x00, 0xB0, 0x00, 0x21, 0x03, 0x2D, 0x00,
+ 0x10, 0x02, 0x21, 0x03, 0x2D, 0x00, 0x71, 0x03,
+ 0x21, 0x03, 0x2D, 0x00, 0xD1, 0x04, 0x21, 0x03,
+ 0x2F, 0x00, 0x33, 0x06, 0xCA, 0x03, 0x2F, 0x00,
+ 0x93, 0x07, 0xCA, 0x03, 0x2F, 0x00, 0xF4, 0x08,
+ 0xCA, 0x03, 0x2F, 0x00, 0x54, 0x0A, 0xCA, 0x03,
+ 0x2D, 0x00, 0x50, 0xFF, 0x21, 0x03, 0x2D, 0x00,
+ 0xF0, 0xFD, 0x21, 0x03, 0x2D, 0x00, 0x8F, 0xFC,
+ 0x21, 0x03, 0x2D, 0x00, 0x2F, 0xFB, 0x21, 0x03,
+ 0x2F, 0x00, 0xCD, 0xF9, 0xCA, 0x03, 0x2F, 0x00,
+ 0x6D, 0xF8, 0xCA, 0x03, 0x2F, 0x00, 0x0C, 0xF7,
+ 0xCA, 0x03, 0x2F, 0x00, 0xAC, 0xF5, 0xCA, 0x03,
+ 0x2D, 0x00, 0xB0, 0x00, 0x61, 0x04, 0x2D, 0x00,
+ 0x10, 0x02, 0x61, 0x04, 0x2D, 0x00, 0x71, 0x03,
+ 0x61, 0x04, 0x2D, 0x00, 0xD1, 0x04, 0x61, 0x04,
+ 0x2F, 0x00, 0x33, 0x06, 0x4E, 0x05, 0x2F, 0x00,
+ 0x93, 0x07, 0x4E, 0x05, 0x2F, 0x00, 0xF4, 0x08,
+ 0x4E, 0x05, 0x2F, 0x00, 0x54, 0x0A, 0x4E, 0x05,
+ 0x2D, 0x00, 0x50, 0xFF, 0x61, 0x04, 0x2D, 0x00,
+ 0xF0, 0xFD, 0x61, 0x04, 0x2D, 0x00, 0x8F, 0xFC,
+ 0x61, 0x04, 0x2D, 0x00, 0x2F, 0xFB, 0x61, 0x04,
+ 0x2F, 0x00, 0xCD, 0xF9, 0x4E, 0x05, 0x2F, 0x00,
+ 0x6D, 0xF8, 0x4E, 0x05, 0x2F, 0x00, 0x0C, 0xF7,
+ 0x4E, 0x05, 0x2F, 0x00, 0xAC, 0xF5, 0x4E, 0x05,
+ 0x30, 0x00, 0xB0, 0x00, 0xA2, 0x05, 0x30, 0x00,
+ 0x10, 0x02, 0xA2, 0x05, 0x30, 0x00, 0x71, 0x03,
+ 0xA2, 0x05, 0x30, 0x00, 0xD1, 0x04, 0xA2, 0x05,
+ 0x30, 0x00, 0x33, 0x06, 0xD2, 0x06, 0x30, 0x00,
+ 0x93, 0x07, 0xD2, 0x06, 0x30, 0x00, 0xF4, 0x08,
+ 0xD2, 0x06, 0x30, 0x00, 0x54, 0x0A, 0xD2, 0x06,
+ 0x30, 0x00, 0x50, 0xFF, 0xA2, 0x05, 0x30, 0x00,
+ 0xF0, 0xFD, 0xA2, 0x05, 0x30, 0x00, 0x8F, 0xFC,
+ 0xA2, 0x05, 0x30, 0x00, 0x2F, 0xFB, 0xA2, 0x05,
+ 0x30, 0x00, 0xCD, 0xF9, 0xD2, 0x06, 0x30, 0x00,
+ 0x6D, 0xF8, 0xD2, 0x06, 0x30, 0x00, 0x0C, 0xF7,
+ 0xD2, 0x06, 0x30, 0x00, 0xAC, 0xF5, 0xD2, 0x06,
+ 0x30, 0x00, 0xB0, 0x00, 0xE2, 0x06, 0x30, 0x00,
+ 0x10, 0x02, 0xE2, 0x06, 0x30, 0x00, 0x71, 0x03,
+ 0xE2, 0x06, 0x30, 0x00, 0xD1, 0x04, 0xE2, 0x06,
+ 0x30, 0x00, 0x33, 0x06, 0x56, 0x08, 0x30, 0x00,
+ 0x93, 0x07, 0x56, 0x08, 0x30, 0x00, 0xF4, 0x08,
+ 0x56, 0x08, 0x30, 0x00, 0x54, 0x0A, 0x56, 0x08,
+ 0x30, 0x00, 0x50, 0xFF, 0xE2, 0x06, 0x30, 0x00,
+ 0xF0, 0xFD, 0xE2, 0x06, 0x30, 0x00, 0x8F, 0xFC,
+ 0xE2, 0x06, 0x30, 0x00, 0x2F, 0xFB, 0xE2, 0x06,
+ 0x30, 0x00, 0xCD, 0xF9, 0x56, 0x08, 0x30, 0x00,
+ 0x6D, 0xF8, 0x56, 0x08, 0x30, 0x00, 0x0C, 0xF7,
+ 0x56, 0x08, 0x30, 0x00, 0xAC, 0xF5, 0x56, 0x08,
+ 0x30, 0x00, 0xB0, 0x00, 0x23, 0x08, 0x30, 0x00,
+ 0x10, 0x02, 0x23, 0x08, 0x30, 0x00, 0x71, 0x03,
+ 0x23, 0x08, 0x30, 0x00, 0xD1, 0x04, 0x23, 0x08,
+ 0x30, 0x00, 0x33, 0x06, 0xDA, 0x09, 0x30, 0x00,
+ 0x93, 0x07, 0xDA, 0x09, 0x30, 0x00, 0xF4, 0x08,
+ 0xDA, 0x09, 0x30, 0x00, 0x54, 0x0A, 0xDA, 0x09,
+ 0x30, 0x00, 0x50, 0xFF, 0x23, 0x08, 0x30, 0x00,
+ 0xF0, 0xFD, 0x23, 0x08, 0x30, 0x00, 0x8F, 0xFC,
+ 0x23, 0x08, 0x30, 0x00, 0x2F, 0xFB, 0x23, 0x08,
+ 0x30, 0x00, 0xCD, 0xF9, 0xDA, 0x09, 0x30, 0x00,
+ 0x6D, 0xF8, 0xDA, 0x09, 0x30, 0x00, 0x0C, 0xF7,
+ 0xDA, 0x09, 0x30, 0x00, 0xAC, 0xF5, 0xDA, 0x09,
+ 0x30, 0x00, 0xB0, 0x00, 0x63, 0x09, 0x30, 0x00,
+ 0x10, 0x02, 0x63, 0x09, 0x30, 0x00, 0x71, 0x03,
+ 0x63, 0x09, 0x30, 0x00, 0xD1, 0x04, 0x63, 0x09,
+ 0x30, 0x00, 0x33, 0x06, 0x5E, 0x0B, 0x30, 0x00,
+ 0x93, 0x07, 0x5E, 0x0B, 0x30, 0x00, 0xF4, 0x08,
+ 0x5E, 0x0B, 0x30, 0x00, 0x54, 0x0A, 0x5E, 0x0B,
+ 0x30, 0x00, 0x50, 0xFF, 0x63, 0x09, 0x30, 0x00,
+ 0xF0, 0xFD, 0x63, 0x09, 0x30, 0x00, 0x8F, 0xFC,
+ 0x63, 0x09, 0x30, 0x00, 0x2F, 0xFB, 0x63, 0x09,
+ 0x30, 0x00, 0xCD, 0xF9, 0x5E, 0x0B, 0x30, 0x00,
+ 0x6D, 0xF8, 0x5E, 0x0B, 0x30, 0x00, 0x0C, 0xF7,
+ 0x5E, 0x0B, 0x30, 0x00, 0xAC, 0xF5, 0x5E, 0x0B,
+ 0x2D, 0x00, 0xB0, 0x00, 0x60, 0xFF, 0x2D, 0x00,
+ 0x10, 0x02, 0x60, 0xFF, 0x2D, 0x00, 0x71, 0x03,
+ 0x60, 0xFF, 0x2D, 0x00, 0xD1, 0x04, 0x60, 0xFF,
+ 0x2F, 0x00, 0x33, 0x06, 0x3E, 0xFF, 0x2F, 0x00,
+ 0x93, 0x07, 0x3E, 0xFF, 0x2F, 0x00, 0xF4, 0x08,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x54, 0x0A, 0x3E, 0xFF,
+ 0x2D, 0x00, 0x50, 0xFF, 0x60, 0xFF, 0x2D, 0x00,
+ 0xF0, 0xFD, 0x60, 0xFF, 0x2D, 0x00, 0x8F, 0xFC,
+ 0x60, 0xFF, 0x2D, 0x00, 0x2F, 0xFB, 0x60, 0xFF,
+ 0x2F, 0x00, 0xCD, 0xF9, 0x3E, 0xFF, 0x2F, 0x00,
+ 0x6D, 0xF8, 0x3E, 0xFF, 0x2F, 0x00, 0x0C, 0xF7,
+ 0x3E, 0xFF, 0x2F, 0x00, 0xAC, 0xF5, 0x3E, 0xFF,
+ 0x2D, 0x00, 0xB0, 0x00, 0x20, 0xFE, 0x2D, 0x00,
+ 0x10, 0x02, 0x20, 0xFE, 0x2D, 0x00, 0x71, 0x03,
+ 0x20, 0xFE, 0x2D, 0x00, 0xD1, 0x04, 0x20, 0xFE,
+ 0x2F, 0x00, 0x33, 0x06, 0xBA, 0xFD, 0x2F, 0x00,
+ 0x93, 0x07, 0xBA, 0xFD, 0x2F, 0x00, 0xF4, 0x08,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x54, 0x0A, 0xBA, 0xFD,
+ 0x2D, 0x00, 0x50, 0xFF, 0x20, 0xFE, 0x2D, 0x00,
+ 0xF0, 0xFD, 0x20, 0xFE, 0x2D, 0x00, 0x8F, 0xFC,
+ 0x20, 0xFE, 0x2D, 0x00, 0x2F, 0xFB, 0x20, 0xFE,
+ 0x2F, 0x00, 0xCD, 0xF9, 0xBA, 0xFD, 0x2F, 0x00,
+ 0x6D, 0xF8, 0xBA, 0xFD, 0x2F, 0x00, 0x0C, 0xF7,
+ 0xBA, 0xFD, 0x2F, 0x00, 0xAC, 0xF5, 0xBA, 0xFD,
+ 0x2D, 0x00, 0xB0, 0x00, 0xDF, 0xFC, 0x2D, 0x00,
+ 0x10, 0x02, 0xDF, 0xFC, 0x2D, 0x00, 0x71, 0x03,
+ 0xDF, 0xFC, 0x2D, 0x00, 0xD1, 0x04, 0xDF, 0xFC,
+ 0x2F, 0x00, 0x33, 0x06, 0x36, 0xFC, 0x2F, 0x00,
+ 0x93, 0x07, 0x36, 0xFC, 0x2F, 0x00, 0xF4, 0x08,
+ 0x36, 0xFC, 0x2F, 0x00, 0x54, 0x0A, 0x36, 0xFC,
+ 0x2D, 0x00, 0x50, 0xFF, 0xDF, 0xFC, 0x2D, 0x00,
+ 0xF0, 0xFD, 0xDF, 0xFC, 0x2D, 0x00, 0x8F, 0xFC,
+ 0xDF, 0xFC, 0x2D, 0x00, 0x2F, 0xFB, 0xDF, 0xFC,
+ 0x2F, 0x00, 0xCD, 0xF9, 0x36, 0xFC, 0x2F, 0x00,
+ 0x6D, 0xF8, 0x36, 0xFC, 0x2F, 0x00, 0x0C, 0xF7,
+ 0x36, 0xFC, 0x2F, 0x00, 0xAC, 0xF5, 0x36, 0xFC,
+ 0x2D, 0x00, 0xB0, 0x00, 0x9F, 0xFB, 0x2D, 0x00,
+ 0x10, 0x02, 0x9F, 0xFB, 0x2D, 0x00, 0x71, 0x03,
+ 0x9F, 0xFB, 0x2D, 0x00, 0xD1, 0x04, 0x9F, 0xFB,
+ 0x2F, 0x00, 0x33, 0x06, 0xB2, 0xFA, 0x2F, 0x00,
+ 0x93, 0x07, 0xB2, 0xFA, 0x2F, 0x00, 0xF4, 0x08,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x54, 0x0A, 0xB2, 0xFA,
+ 0x2D, 0x00, 0x50, 0xFF, 0x9F, 0xFB, 0x2D, 0x00,
+ 0xF0, 0xFD, 0x9F, 0xFB, 0x2D, 0x00, 0x8F, 0xFC,
+ 0x9F, 0xFB, 0x2D, 0x00, 0x2F, 0xFB, 0x9F, 0xFB,
+ 0x2F, 0x00, 0xCD, 0xF9, 0xB2, 0xFA, 0x2F, 0x00,
+ 0x6D, 0xF8, 0xB2, 0xFA, 0x2F, 0x00, 0x0C, 0xF7,
+ 0xB2, 0xFA, 0x2F, 0x00, 0xAC, 0xF5, 0xB2, 0xFA,
+ 0x30, 0x00, 0xB0, 0x00, 0x5E, 0xFA, 0x30, 0x00,
+ 0x10, 0x02, 0x5E, 0xFA, 0x30, 0x00, 0x71, 0x03,
+ 0x5E, 0xFA, 0x30, 0x00, 0xD1, 0x04, 0x5E, 0xFA,
+ 0x30, 0x00, 0x33, 0x06, 0x2E, 0xF9, 0x30, 0x00,
+ 0x93, 0x07, 0x2E, 0xF9, 0x30, 0x00, 0xF4, 0x08,
+ 0x2E, 0xF9, 0x30, 0x00, 0x54, 0x0A, 0x2E, 0xF9,
+ 0x30, 0x00, 0x50, 0xFF, 0x5E, 0xFA, 0x30, 0x00,
+ 0xF0, 0xFD, 0x5E, 0xFA, 0x30, 0x00, 0x8F, 0xFC,
+ 0x5E, 0xFA, 0x30, 0x00, 0x2F, 0xFB, 0x5E, 0xFA,
+ 0x30, 0x00, 0xCD, 0xF9, 0x2E, 0xF9, 0x30, 0x00,
+ 0x6D, 0xF8, 0x2E, 0xF9, 0x30, 0x00, 0x0C, 0xF7,
+ 0x2E, 0xF9, 0x30, 0x00, 0xAC, 0xF5, 0x2E, 0xF9,
+ 0x30, 0x00, 0xB0, 0x00, 0x1E, 0xF9, 0x30, 0x00,
+ 0x10, 0x02, 0x1E, 0xF9, 0x30, 0x00, 0x71, 0x03,
+ 0x1E, 0xF9, 0x30, 0x00, 0xD1, 0x04, 0x1E, 0xF9,
+ 0x30, 0x00, 0x33, 0x06, 0xAA, 0xF7, 0x30, 0x00,
+ 0x93, 0x07, 0xAA, 0xF7, 0x30, 0x00, 0xF4, 0x08,
+ 0xAA, 0xF7, 0x30, 0x00, 0x54, 0x0A, 0xAA, 0xF7,
+ 0x30, 0x00, 0x50, 0xFF, 0x1E, 0xF9, 0x30, 0x00,
+ 0xF0, 0xFD, 0x1E, 0xF9, 0x30, 0x00, 0x8F, 0xFC,
+ 0x1E, 0xF9, 0x30, 0x00, 0x2F, 0xFB, 0x1E, 0xF9,
+ 0x30, 0x00, 0xCD, 0xF9, 0xAA, 0xF7, 0x30, 0x00,
+ 0x6D, 0xF8, 0xAA, 0xF7, 0x30, 0x00, 0x0C, 0xF7,
+ 0xAA, 0xF7, 0x30, 0x00, 0xAC, 0xF5, 0xAA, 0xF7,
+ 0x30, 0x00, 0xB0, 0x00, 0xDD, 0xF7, 0x30, 0x00,
+ 0x10, 0x02, 0xDD, 0xF7, 0x30, 0x00, 0x71, 0x03,
+ 0xDD, 0xF7, 0x30, 0x00, 0xD1, 0x04, 0xDD, 0xF7,
+ 0x30, 0x00, 0x33, 0x06, 0x26, 0xF6, 0x30, 0x00,
+ 0x93, 0x07, 0x26, 0xF6, 0x30, 0x00, 0xF4, 0x08,
+ 0x26, 0xF6, 0x30, 0x00, 0x54, 0x0A, 0x26, 0xF6,
+ 0x30, 0x00, 0x50, 0xFF, 0xDD, 0xF7, 0x30, 0x00,
+ 0xF0, 0xFD, 0xDD, 0xF7, 0x30, 0x00, 0x8F, 0xFC,
+ 0xDD, 0xF7, 0x30, 0x00, 0x2F, 0xFB, 0xDD, 0xF7,
+ 0x30, 0x00, 0xCD, 0xF9, 0x26, 0xF6, 0x30, 0x00,
+ 0x6D, 0xF8, 0x26, 0xF6, 0x30, 0x00, 0x0C, 0xF7,
+ 0x26, 0xF6, 0x30, 0x00, 0xAC, 0xF5, 0x26, 0xF6,
+ 0x30, 0x00, 0xB0, 0x00, 0x9D, 0xF6, 0x30, 0x00,
+ 0x10, 0x02, 0x9D, 0xF6, 0x30, 0x00, 0x71, 0x03,
+ 0x9D, 0xF6, 0x30, 0x00, 0xD1, 0x04, 0x9D, 0xF6,
+ 0x30, 0x00, 0x33, 0x06, 0xA2, 0xF4, 0x30, 0x00,
+ 0x93, 0x07, 0xA2, 0xF4, 0x30, 0x00, 0xF4, 0x08,
+ 0xA2, 0xF4, 0x30, 0x00, 0x54, 0x0A, 0xA2, 0xF4,
+ 0x30, 0x00, 0x50, 0xFF, 0x9D, 0xF6, 0x30, 0x00,
+ 0xF0, 0xFD, 0x9D, 0xF6, 0x30, 0x00, 0x8F, 0xFC,
+ 0x9D, 0xF6, 0x30, 0x00, 0x2F, 0xFB, 0x9D, 0xF6,
+ 0x30, 0x00, 0xCD, 0xF9, 0xA2, 0xF4, 0x30, 0x00,
+ 0x6D, 0xF8, 0xA2, 0xF4, 0x30, 0x00, 0x0C, 0xF7,
+ 0xA2, 0xF4, 0x30, 0x00, 0xAC, 0xF5, 0xA2, 0xF4,
+ 0x2E, 0x00, 0xC2, 0x00, 0xB0, 0x00, 0x2E, 0x00,
+ 0x46, 0x02, 0xB0, 0x00, 0x2E, 0x00, 0xCA, 0x03,
+ 0xB0, 0x00, 0x2E, 0x00, 0x4E, 0x05, 0xB0, 0x00,
+ 0x2F, 0x00, 0xD2, 0x06, 0xC2, 0x00, 0x2F, 0x00,
+ 0x56, 0x08, 0xC2, 0x00, 0x2F, 0x00, 0xDA, 0x09,
+ 0xC2, 0x00, 0x2F, 0x00, 0x5E, 0x0B, 0xC2, 0x00,
+ 0x2E, 0x00, 0x3E, 0xFF, 0xB0, 0x00, 0x2E, 0x00,
+ 0xBA, 0xFD, 0xB0, 0x00, 0x2E, 0x00, 0x36, 0xFC,
+ 0xB0, 0x00, 0x2E, 0x00, 0xB2, 0xFA, 0xB0, 0x00,
+ 0x2F, 0x00, 0x2E, 0xF9, 0xC2, 0x00, 0x2F, 0x00,
+ 0xAA, 0xF7, 0xC2, 0x00, 0x2F, 0x00, 0x26, 0xF6,
+ 0xC2, 0x00, 0x2F, 0x00, 0xA2, 0xF4, 0xC2, 0x00,
+ 0x2E, 0x00, 0xC2, 0x00, 0x10, 0x02, 0x2E, 0x00,
+ 0x46, 0x02, 0x10, 0x02, 0x2E, 0x00, 0xCA, 0x03,
+ 0x10, 0x02, 0x2E, 0x00, 0x4E, 0x05, 0x10, 0x02,
+ 0x2F, 0x00, 0xD2, 0x06, 0x46, 0x02, 0x2F, 0x00,
+ 0x56, 0x08, 0x46, 0x02, 0x2F, 0x00, 0xDA, 0x09,
+ 0x46, 0x02, 0x2F, 0x00, 0x5E, 0x0B, 0x46, 0x02,
+ 0x2E, 0x00, 0x3E, 0xFF, 0x10, 0x02, 0x2E, 0x00,
+ 0xBA, 0xFD, 0x10, 0x02, 0x2E, 0x00, 0x36, 0xFC,
+ 0x10, 0x02, 0x2E, 0x00, 0xB2, 0xFA, 0x10, 0x02,
+ 0x2F, 0x00, 0x2E, 0xF9, 0x46, 0x02, 0x2F, 0x00,
+ 0xAA, 0xF7, 0x46, 0x02, 0x2F, 0x00, 0x26, 0xF6,
+ 0x46, 0x02, 0x2F, 0x00, 0xA2, 0xF4, 0x46, 0x02,
+ 0x2E, 0x00, 0xC2, 0x00, 0x71, 0x03, 0x2E, 0x00,
+ 0x46, 0x02, 0x71, 0x03, 0x2E, 0x00, 0xCA, 0x03,
+ 0x71, 0x03, 0x2E, 0x00, 0x4E, 0x05, 0x71, 0x03,
+ 0x2F, 0x00, 0xD2, 0x06, 0xCA, 0x03, 0x2F, 0x00,
+ 0x56, 0x08, 0xCA, 0x03, 0x2F, 0x00, 0xDA, 0x09,
+ 0xCA, 0x03, 0x2F, 0x00, 0x5E, 0x0B, 0xCA, 0x03,
+ 0x2E, 0x00, 0x3E, 0xFF, 0x71, 0x03, 0x2E, 0x00,
+ 0xBA, 0xFD, 0x71, 0x03, 0x2E, 0x00, 0x36, 0xFC,
+ 0x71, 0x03, 0x2E, 0x00, 0xB2, 0xFA, 0x71, 0x03,
+ 0x2F, 0x00, 0x2E, 0xF9, 0xCA, 0x03, 0x2F, 0x00,
+ 0xAA, 0xF7, 0xCA, 0x03, 0x2F, 0x00, 0x26, 0xF6,
+ 0xCA, 0x03, 0x2F, 0x00, 0xA2, 0xF4, 0xCA, 0x03,
+ 0x2E, 0x00, 0xC2, 0x00, 0xD1, 0x04, 0x2E, 0x00,
+ 0x46, 0x02, 0xD1, 0x04, 0x2E, 0x00, 0xCA, 0x03,
+ 0xD1, 0x04, 0x2E, 0x00, 0x4E, 0x05, 0xD1, 0x04,
+ 0x2F, 0x00, 0xD2, 0x06, 0x4E, 0x05, 0x2F, 0x00,
+ 0x56, 0x08, 0x4E, 0x05, 0x2F, 0x00, 0xDA, 0x09,
+ 0x4E, 0x05, 0x2F, 0x00, 0x5E, 0x0B, 0x4E, 0x05,
+ 0x2E, 0x00, 0x3E, 0xFF, 0xD1, 0x04, 0x2E, 0x00,
+ 0xBA, 0xFD, 0xD1, 0x04, 0x2E, 0x00, 0x36, 0xFC,
+ 0xD1, 0x04, 0x2E, 0x00, 0xB2, 0xFA, 0xD1, 0x04,
+ 0x2F, 0x00, 0x2E, 0xF9, 0x4E, 0x05, 0x2F, 0x00,
+ 0xAA, 0xF7, 0x4E, 0x05, 0x2F, 0x00, 0x26, 0xF6,
+ 0x4E, 0x05, 0x2F, 0x00, 0xA2, 0xF4, 0x4E, 0x05,
+ 0x30, 0x00, 0xC2, 0x00, 0x33, 0x06, 0x30, 0x00,
+ 0x46, 0x02, 0x33, 0x06, 0x30, 0x00, 0xCA, 0x03,
+ 0x33, 0x06, 0x30, 0x00, 0x4E, 0x05, 0x33, 0x06,
+ 0x30, 0x00, 0xD2, 0x06, 0xD2, 0x06, 0x30, 0x00,
+ 0x56, 0x08, 0xD2, 0x06, 0x30, 0x00, 0xDA, 0x09,
+ 0xD2, 0x06, 0x30, 0x00, 0x5E, 0x0B, 0xD2, 0x06,
+ 0x30, 0x00, 0x3E, 0xFF, 0x33, 0x06, 0x30, 0x00,
+ 0xBA, 0xFD, 0x33, 0x06, 0x30, 0x00, 0x36, 0xFC,
+ 0x33, 0x06, 0x30, 0x00, 0xB2, 0xFA, 0x33, 0x06,
+ 0x30, 0x00, 0x2E, 0xF9, 0xD2, 0x06, 0x30, 0x00,
+ 0xAA, 0xF7, 0xD2, 0x06, 0x30, 0x00, 0x26, 0xF6,
+ 0xD2, 0x06, 0x30, 0x00, 0xA2, 0xF4, 0xD2, 0x06,
+ 0x30, 0x00, 0xC2, 0x00, 0x93, 0x07, 0x30, 0x00,
+ 0x46, 0x02, 0x93, 0x07, 0x30, 0x00, 0xCA, 0x03,
+ 0x93, 0x07, 0x30, 0x00, 0x4E, 0x05, 0x93, 0x07,
+ 0x30, 0x00, 0xD2, 0x06, 0x56, 0x08, 0x30, 0x00,
+ 0x56, 0x08, 0x56, 0x08, 0x30, 0x00, 0xDA, 0x09,
+ 0x56, 0x08, 0x30, 0x00, 0x5E, 0x0B, 0x56, 0x08,
+ 0x30, 0x00, 0x3E, 0xFF, 0x93, 0x07, 0x30, 0x00,
+ 0xBA, 0xFD, 0x93, 0x07, 0x30, 0x00, 0x36, 0xFC,
+ 0x93, 0x07, 0x30, 0x00, 0xB2, 0xFA, 0x93, 0x07,
+ 0x30, 0x00, 0x2E, 0xF9, 0x56, 0x08, 0x30, 0x00,
+ 0xAA, 0xF7, 0x56, 0x08, 0x30, 0x00, 0x26, 0xF6,
+ 0x56, 0x08, 0x30, 0x00, 0xA2, 0xF4, 0x56, 0x08,
+ 0x30, 0x00, 0xC2, 0x00, 0xF4, 0x08, 0x30, 0x00,
+ 0x46, 0x02, 0xF4, 0x08, 0x30, 0x00, 0xCA, 0x03,
+ 0xF4, 0x08, 0x30, 0x00, 0x4E, 0x05, 0xF4, 0x08,
+ 0x30, 0x00, 0xD2, 0x06, 0xDA, 0x09, 0x30, 0x00,
+ 0x56, 0x08, 0xDA, 0x09, 0x30, 0x00, 0xDA, 0x09,
+ 0xDA, 0x09, 0x30, 0x00, 0x5E, 0x0B, 0xDA, 0x09,
+ 0x30, 0x00, 0x3E, 0xFF, 0xF4, 0x08, 0x30, 0x00,
+ 0xBA, 0xFD, 0xF4, 0x08, 0x30, 0x00, 0x36, 0xFC,
+ 0xF4, 0x08, 0x30, 0x00, 0xB2, 0xFA, 0xF4, 0x08,
+ 0x30, 0x00, 0x2E, 0xF9, 0xDA, 0x09, 0x30, 0x00,
+ 0xAA, 0xF7, 0xDA, 0x09, 0x30, 0x00, 0x26, 0xF6,
+ 0xDA, 0x09, 0x30, 0x00, 0xA2, 0xF4, 0xDA, 0x09,
+ 0x30, 0x00, 0xC2, 0x00, 0x54, 0x0A, 0x30, 0x00,
+ 0x46, 0x02, 0x54, 0x0A, 0x30, 0x00, 0xCA, 0x03,
+ 0x54, 0x0A, 0x30, 0x00, 0x4E, 0x05, 0x54, 0x0A,
+ 0x30, 0x00, 0xD2, 0x06, 0x5E, 0x0B, 0x30, 0x00,
+ 0x56, 0x08, 0x5E, 0x0B, 0x30, 0x00, 0xDA, 0x09,
+ 0x5E, 0x0B, 0x30, 0x00, 0x5E, 0x0B, 0x5E, 0x0B,
+ 0x30, 0x00, 0x3E, 0xFF, 0x54, 0x0A, 0x30, 0x00,
+ 0xBA, 0xFD, 0x54, 0x0A, 0x30, 0x00, 0x36, 0xFC,
+ 0x54, 0x0A, 0x30, 0x00, 0xB2, 0xFA, 0x54, 0x0A,
+ 0x30, 0x00, 0x2E, 0xF9, 0x5E, 0x0B, 0x30, 0x00,
+ 0xAA, 0xF7, 0x5E, 0x0B, 0x30, 0x00, 0x26, 0xF6,
+ 0x5E, 0x0B, 0x30, 0x00, 0xA2, 0xF4, 0x5E, 0x0B,
+ 0x2E, 0x00, 0xC2, 0x00, 0x50, 0xFF, 0x2E, 0x00,
+ 0x46, 0x02, 0x50, 0xFF, 0x2E, 0x00, 0xCA, 0x03,
+ 0x50, 0xFF, 0x2E, 0x00, 0x4E, 0x05, 0x50, 0xFF,
+ 0x2F, 0x00, 0xD2, 0x06, 0x3E, 0xFF, 0x2F, 0x00,
+ 0x56, 0x08, 0x3E, 0xFF, 0x2F, 0x00, 0xDA, 0x09,
+ 0x3E, 0xFF, 0x2F, 0x00, 0x5E, 0x0B, 0x3E, 0xFF,
+ 0x2E, 0x00, 0x3E, 0xFF, 0x50, 0xFF, 0x2E, 0x00,
+ 0xBA, 0xFD, 0x50, 0xFF, 0x2E, 0x00, 0x36, 0xFC,
+ 0x50, 0xFF, 0x2E, 0x00, 0xB2, 0xFA, 0x50, 0xFF,
+ 0x2F, 0x00, 0x2E, 0xF9, 0x3E, 0xFF, 0x2F, 0x00,
+ 0xAA, 0xF7, 0x3E, 0xFF, 0x2F, 0x00, 0x26, 0xF6,
+ 0x3E, 0xFF, 0x2F, 0x00, 0xA2, 0xF4, 0x3E, 0xFF,
+ 0x2E, 0x00, 0xC2, 0x00, 0xF0, 0xFD, 0x2E, 0x00,
+ 0x46, 0x02, 0xF0, 0xFD, 0x2E, 0x00, 0xCA, 0x03,
+ 0xF0, 0xFD, 0x2E, 0x00, 0x4E, 0x05, 0xF0, 0xFD,
+ 0x2F, 0x00, 0xD2, 0x06, 0xBA, 0xFD, 0x2F, 0x00,
+ 0x56, 0x08, 0xBA, 0xFD, 0x2F, 0x00, 0xDA, 0x09,
+ 0xBA, 0xFD, 0x2F, 0x00, 0x5E, 0x0B, 0xBA, 0xFD,
+ 0x2E, 0x00, 0x3E, 0xFF, 0xF0, 0xFD, 0x2E, 0x00,
+ 0xBA, 0xFD, 0xF0, 0xFD, 0x2E, 0x00, 0x36, 0xFC,
+ 0xF0, 0xFD, 0x2E, 0x00, 0xB2, 0xFA, 0xF0, 0xFD,
+ 0x2F, 0x00, 0x2E, 0xF9, 0xBA, 0xFD, 0x2F, 0x00,
+ 0xAA, 0xF7, 0xBA, 0xFD, 0x2F, 0x00, 0x26, 0xF6,
+ 0xBA, 0xFD, 0x2F, 0x00, 0xA2, 0xF4, 0xBA, 0xFD,
+ 0x2E, 0x00, 0xC2, 0x00, 0x8F, 0xFC, 0x2E, 0x00,
+ 0x46, 0x02, 0x8F, 0xFC, 0x2E, 0x00, 0xCA, 0x03,
+ 0x8F, 0xFC, 0x2E, 0x00, 0x4E, 0x05, 0x8F, 0xFC,
+ 0x2F, 0x00, 0xD2, 0x06, 0x36, 0xFC, 0x2F, 0x00,
+ 0x56, 0x08, 0x36, 0xFC, 0x2F, 0x00, 0xDA, 0x09,
+ 0x36, 0xFC, 0x2F, 0x00, 0x5E, 0x0B, 0x36, 0xFC,
+ 0x2E, 0x00, 0x3E, 0xFF, 0x8F, 0xFC, 0x2E, 0x00,
+ 0xBA, 0xFD, 0x8F, 0xFC, 0x2E, 0x00, 0x36, 0xFC,
+ 0x8F, 0xFC, 0x2E, 0x00, 0xB2, 0xFA, 0x8F, 0xFC,
+ 0x2F, 0x00, 0x2E, 0xF9, 0x36, 0xFC, 0x2F, 0x00,
+ 0xAA, 0xF7, 0x36, 0xFC, 0x2F, 0x00, 0x26, 0xF6,
+ 0x36, 0xFC, 0x2F, 0x00, 0xA2, 0xF4, 0x36, 0xFC,
+ 0x2E, 0x00, 0xC2, 0x00, 0x2F, 0xFB, 0x2E, 0x00,
+ 0x46, 0x02, 0x2F, 0xFB, 0x2E, 0x00, 0xCA, 0x03,
+ 0x2F, 0xFB, 0x2E, 0x00, 0x4E, 0x05, 0x2F, 0xFB,
+ 0x2F, 0x00, 0xD2, 0x06, 0xB2, 0xFA, 0x2F, 0x00,
+ 0x56, 0x08, 0xB2, 0xFA, 0x2F, 0x00, 0xDA, 0x09,
+ 0xB2, 0xFA, 0x2F, 0x00, 0x5E, 0x0B, 0xB2, 0xFA,
+ 0x2E, 0x00, 0x3E, 0xFF, 0x2F, 0xFB, 0x2E, 0x00,
+ 0xBA, 0xFD, 0x2F, 0xFB, 0x2E, 0x00, 0x36, 0xFC,
+ 0x2F, 0xFB, 0x2E, 0x00, 0xB2, 0xFA, 0x2F, 0xFB,
+ 0x2F, 0x00, 0x2E, 0xF9, 0xB2, 0xFA, 0x2F, 0x00,
+ 0xAA, 0xF7, 0xB2, 0xFA, 0x2F, 0x00, 0x26, 0xF6,
+ 0xB2, 0xFA, 0x2F, 0x00, 0xA2, 0xF4, 0xB2, 0xFA,
+ 0x30, 0x00, 0xC2, 0x00, 0xCD, 0xF9, 0x30, 0x00,
+ 0x46, 0x02, 0xCD, 0xF9, 0x30, 0x00, 0xCA, 0x03,
+ 0xCD, 0xF9, 0x30, 0x00, 0x4E, 0x05, 0xCD, 0xF9,
+ 0x30, 0x00, 0xD2, 0x06, 0x2E, 0xF9, 0x30, 0x00,
+ 0x56, 0x08, 0x2E, 0xF9, 0x30, 0x00, 0xDA, 0x09,
+ 0x2E, 0xF9, 0x30, 0x00, 0x5E, 0x0B, 0x2E, 0xF9,
+ 0x30, 0x00, 0x3E, 0xFF, 0xCD, 0xF9, 0x30, 0x00,
+ 0xBA, 0xFD, 0xCD, 0xF9, 0x30, 0x00, 0x36, 0xFC,
+ 0xCD, 0xF9, 0x30, 0x00, 0xB2, 0xFA, 0xCD, 0xF9,
+ 0x30, 0x00, 0x2E, 0xF9, 0x2E, 0xF9, 0x30, 0x00,
+ 0xAA, 0xF7, 0x2E, 0xF9, 0x30, 0x00, 0x26, 0xF6,
+ 0x2E, 0xF9, 0x30, 0x00, 0xA2, 0xF4, 0x2E, 0xF9,
+ 0x30, 0x00, 0xC2, 0x00, 0x6D, 0xF8, 0x30, 0x00,
+ 0x46, 0x02, 0x6D, 0xF8, 0x30, 0x00, 0xCA, 0x03,
+ 0x6D, 0xF8, 0x30, 0x00, 0x4E, 0x05, 0x6D, 0xF8,
+ 0x30, 0x00, 0xD2, 0x06, 0xAA, 0xF7, 0x30, 0x00,
+ 0x56, 0x08, 0xAA, 0xF7, 0x30, 0x00, 0xDA, 0x09,
+ 0xAA, 0xF7, 0x30, 0x00, 0x5E, 0x0B, 0xAA, 0xF7,
+ 0x30, 0x00, 0x3E, 0xFF, 0x6D, 0xF8, 0x30, 0x00,
+ 0xBA, 0xFD, 0x6D, 0xF8, 0x30, 0x00, 0x36, 0xFC,
+ 0x6D, 0xF8, 0x30, 0x00, 0xB2, 0xFA, 0x6D, 0xF8,
+ 0x30, 0x00, 0x2E, 0xF9, 0xAA, 0xF7, 0x30, 0x00,
+ 0xAA, 0xF7, 0xAA, 0xF7, 0x30, 0x00, 0x26, 0xF6,
+ 0xAA, 0xF7, 0x30, 0x00, 0xA2, 0xF4, 0xAA, 0xF7,
+ 0x30, 0x00, 0xC2, 0x00, 0x0C, 0xF7, 0x30, 0x00,
+ 0x46, 0x02, 0x0C, 0xF7, 0x30, 0x00, 0xCA, 0x03,
+ 0x0C, 0xF7, 0x30, 0x00, 0x4E, 0x05, 0x0C, 0xF7,
+ 0x30, 0x00, 0xD2, 0x06, 0x26, 0xF6, 0x30, 0x00,
+ 0x56, 0x08, 0x26, 0xF6, 0x30, 0x00, 0xDA, 0x09,
+ 0x26, 0xF6, 0x30, 0x00, 0x5E, 0x0B, 0x26, 0xF6,
+ 0x30, 0x00, 0x3E, 0xFF, 0x0C, 0xF7, 0x30, 0x00,
+ 0xBA, 0xFD, 0x0C, 0xF7, 0x30, 0x00, 0x36, 0xFC,
+ 0x0C, 0xF7, 0x30, 0x00, 0xB2, 0xFA, 0x0C, 0xF7,
+ 0x30, 0x00, 0x2E, 0xF9, 0x26, 0xF6, 0x30, 0x00,
+ 0xAA, 0xF7, 0x26, 0xF6, 0x30, 0x00, 0x26, 0xF6,
+ 0x26, 0xF6, 0x30, 0x00, 0xA2, 0xF4, 0x26, 0xF6,
+ 0x30, 0x00, 0xC2, 0x00, 0xAC, 0xF5, 0x30, 0x00,
+ 0x46, 0x02, 0xAC, 0xF5, 0x30, 0x00, 0xCA, 0x03,
+ 0xAC, 0xF5, 0x30, 0x00, 0x4E, 0x05, 0xAC, 0xF5,
+ 0x30, 0x00, 0xD2, 0x06, 0xA2, 0xF4, 0x30, 0x00,
+ 0x56, 0x08, 0xA2, 0xF4, 0x30, 0x00, 0xDA, 0x09,
+ 0xA2, 0xF4, 0x30, 0x00, 0x5E, 0x0B, 0xA2, 0xF4,
+ 0x30, 0x00, 0x3E, 0xFF, 0xAC, 0xF5, 0x30, 0x00,
+ 0xBA, 0xFD, 0xAC, 0xF5, 0x30, 0x00, 0x36, 0xFC,
+ 0xAC, 0xF5, 0x30, 0x00, 0xB2, 0xFA, 0xAC, 0xF5,
+ 0x30, 0x00, 0x2E, 0xF9, 0xA2, 0xF4, 0x30, 0x00,
+ 0xAA, 0xF7, 0xA2, 0xF4, 0x30, 0x00, 0x26, 0xF6,
+ 0xA2, 0xF4, 0x30, 0x00, 0xA2, 0xF4, 0xA2, 0xF4,
+ 0x00, 0x00
+};
+
+static const ByteProvider k1TownsSFXwdTableFMTownsProvider = { ARRAYSIZE(k1TownsSFXwdTableFMTowns), k1TownsSFXwdTableFMTowns };
+
+static const byte k1TownsSFXbtTableFMTowns[256] = {
+ 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
+ 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F,
+ 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
+ 0x98, 0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F,
+ 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7,
+ 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF,
+ 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7,
+ 0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF,
+ 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7,
+ 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF,
+ 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7,
+ 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF,
+ 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7,
+ 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF,
+ 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
+ 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFE,
+ 0x7F, 0x7F, 0x7E, 0x7D, 0x7C, 0x7B, 0x7A, 0x79,
+ 0x78, 0x77, 0x76, 0x75, 0x74, 0x73, 0x72, 0x71,
+ 0x70, 0x6F, 0x6E, 0x6D, 0x6C, 0x6B, 0x6A, 0x69,
+ 0x68, 0x67, 0x66, 0x65, 0x64, 0x63, 0x62, 0x61,
+ 0x60, 0x5F, 0x5E, 0x5D, 0x5C, 0x5B, 0x5A, 0x59,
+ 0x58, 0x57, 0x56, 0x55, 0x54, 0x53, 0x52, 0x51,
+ 0x50, 0x4F, 0x4E, 0x4D, 0x4C, 0x4B, 0x4A, 0x49,
+ 0x48, 0x47, 0x46, 0x45, 0x44, 0x43, 0x42, 0x41,
+ 0x40, 0x3F, 0x3E, 0x3D, 0x3C, 0x3B, 0x3A, 0x39,
+ 0x38, 0x37, 0x36, 0x35, 0x34, 0x33, 0x32, 0x31,
+ 0x30, 0x2F, 0x2E, 0x2D, 0x2C, 0x2B, 0x2A, 0x29,
+ 0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22, 0x21,
+ 0x20, 0x1F, 0x1E, 0x1D, 0x1C, 0x1B, 0x1A, 0x19,
+ 0x18, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11,
+ 0x10, 0x0F, 0x0E, 0x0D, 0x0C, 0x0B, 0x0A, 0x09,
+ 0x08, 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01
+};
+
+static const ByteProvider k1TownsSFXbtTableFMTownsProvider = { ARRAYSIZE(k1TownsSFXbtTableFMTowns), k1TownsSFXbtTableFMTowns };
+
+static const byte k1TownsCDATableFMTowns[708] = {
+ 0x00, 0x40, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x80, 0x54, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
+ 0x70, 0x5E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x90, 0x6D, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0xC0, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x75, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x80, 0x78, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x89, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x80, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xD0, 0x91, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
+ 0x80, 0xA8, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x05, 0x00, 0x00, 0x00, 0x50, 0xAF, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xA0, 0xB1, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x70, 0xB8, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xF0, 0xBC, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xD0, 0xC5, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
+ 0xE0, 0xD3, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x08, 0x00, 0x00, 0x00, 0xB0, 0xE7, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
+ 0xC0, 0xED, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xEE, 0x00, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
+ 0x40, 0x05, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x0A, 0x00, 0x00, 0x00, 0x80, 0x0D, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x30, 0x0E, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x0F, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x10, 0x13, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x20, 0x1A, 0x01, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x80, 0x23, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x40, 0x25, 0x01, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x30, 0x27, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x90, 0x2A, 0x01, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00,
+ 0xD0, 0x34, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x70, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x10, 0x47, 0x01, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00,
+ 0xF0, 0x5D, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00,
+ 0x0D, 0x00, 0x00, 0x00, 0x30, 0x60, 0x01, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,
+ 0x30, 0x70, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x50, 0x76, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xD0, 0x34, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x78, 0x01, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x00, 0x82, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x20, 0x83, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xA0, 0x84, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xB0, 0x8B, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x40, 0x90, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x00, 0x50, 0x9B, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
+ 0x50, 0x76, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x30, 0xA7, 0x01, 0x00,
+ 0x01, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x23, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x10, 0xB8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x50, 0xBA, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
+ 0x90, 0xC1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x10, 0x00, 0x00, 0x00, 0x50, 0xCA, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
+ 0x00, 0xD1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x12, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1TownsCDATableFMTownsProvider = { ARRAYSIZE(k1TownsCDATableFMTowns), k1TownsCDATableFMTowns };
+
+static const char *const k1AudioTracksFMTowns[6] = {
+ "TW_INTRO.SFX",
+ "TW_SCEN1.SFX",
+ "TW_SCEN2.SFX",
+ "TW_SCEN3.SFX",
+ "TW_SCEN4.SFX",
+ "TW_SCEN5.SFX"
+};
+
+static const StringListProvider k1AudioTracksFMTownsProvider = { ARRAYSIZE(k1AudioTracksFMTowns), k1AudioTracksFMTowns };
+
diff --git a/devtools/create_kyradat/resources/lok_fmtowns_english.h b/devtools/create_kyradat/resources/lok_fmtowns_english.h
new file mode 100644
index 0000000000..f13a9d981d
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_fmtowns_english.h
@@ -0,0 +1,527 @@
+static const char *const k1IntroStringsFMTownsEnglish[50] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "Greetings, Kallak...",
+ "...Powerful leader of the Royal Mystics!",
+ "Did I frighten you?",
+ "Malcolm!",
+ "I heard yesterday of your escape.",
+ "And have expected you before now.",
+ "Why would I rush?",
+ "I rule this land!",
+ "Your puny curse restrains me naught.",
+ "So, slay me now!",
+ "I have little magic left.",
+ "I mean to harm you, have no doubt...",
+ "...Now you are stone...",
+ "...Yet I leave your eyes.",
+ "I shed no tears for Kyrandia...",
+ "...But cannot deny you yours.",
+ "Malcolm the Jester has broken free!",
+ "He now controls the Kyragem...",
+ "...source of all magic in Kyrandia!",
+ "",
+ "How dare you trip ME!",
+ "But no, something special for you...",
+ "A humorous hex!",
+ "But I shall give fair warning.",
+ "Don't jump on THAT tree!",
+ "Don't climb up THAT tree little squirrel!",
+ "Boo!",
+ "Tis funnier that way...",
+ "...Is it not?",
+ "Ha ha ha...",
+ "Aren't fingers wonderful?",
+ "It's great to be alive!",
+ "Brandon!",
+ "Grandfather! We did it!",
+ "No! YOU did it!",
+ "Long live King Brandon!",
+ "Long live the Royal Mystics!",
+ "Now, let's go put Kyrandia back together!",
+ "Good idea!",
+ "As my first Royal Proclamation...",
+ "I name sandals as the official footwear of Kyrandia!",
+ "Well done, Brandon!",
+ "The Land no longer weeps...",
+ "And your friends have been restored!",
+ "Dear Brynn...",
+ "Malcolm has broken free!",
+ "Soon he will come for me.",
+ "Please help Brandon..."
+};
+
+static const StringListProvider k1IntroStringsFMTownsEnglishProvider = { ARRAYSIZE(k1IntroStringsFMTownsEnglish), k1IntroStringsFMTownsEnglish };
+
+static const char *const k1ItemNamesFMTownsEnglish[107] = {
+ "Garnet",
+ "Amethyst",
+ "Aquamarine",
+ "Diamond",
+ "Emerald",
+ "Pearl",
+ "Ruby",
+ "Peridot",
+ "Sapphire",
+ "Opal",
+ "Topaz",
+ "Onyx",
+ "Sunstone",
+ "Moonstone",
+ "Rainbowstone",
+ "Lodestone",
+ "Rose",
+ "Tulip",
+ "Orchid",
+ "Silver Rose",
+ "Silver Statuette",
+ "Silver Coin",
+ "Gold Coin",
+ "Gold Ring",
+ "Royal Chalice",
+ "Pinecone",
+ "Acorn",
+ "Walnut",
+ "Everglowing Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fireberries",
+ "Fish",
+ "Fish Bone",
+ "Mutton Leg",
+ "Bone",
+ "Apple",
+ "Apple Core",
+ "Blueberries",
+ "Mushroom",
+ "Note",
+ "Marble",
+ "Saw",
+ "Ankh",
+ "Feather",
+ "Egg",
+ "Leaf",
+ "Shamrock",
+ "Fallen Star",
+ "Crystal Ball",
+ "Teardrop",
+ "Mirror",
+ "Ice Shard",
+ "Flute",
+ "Hourglass",
+ "Iron Key",
+ "Jade Key",
+ "Obsidion Key",
+ "Red Potion",
+ "Red Potion",
+ "Blue Potion",
+ "Blue Potion",
+ "Yellow Potion",
+ "Yellow Potion",
+ "Green Potion",
+ "Orange Potion",
+ "Purple Potion",
+ "Potion of Rainbows",
+ "Fresh Water",
+ "Fresh Water",
+ "Salt Water",
+ "Salt Water",
+ "Mineral Water",
+ "Mineral Water",
+ "Magical Water",
+ "Magical Water",
+ "Empty Flask",
+ "Empty Flask",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Scroll",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Parchment scrap",
+ "Red Magestone",
+ "Orange Magestone",
+ "Yellow Magestone",
+ "Green Magestone",
+ "Blue-Green Magestone",
+ "Blue Magestone",
+ "Purple Magestone",
+ "Heavy rock",
+ "Royal Crown",
+ "Royal Sceptre",
+ "Gold key",
+ "Unknown item"
+};
+
+static const StringListProvider k1ItemNamesFMTownsEnglishProvider = { ARRAYSIZE(k1ItemNamesFMTownsEnglish), k1ItemNamesFMTownsEnglish };
+
+static const char *const k1TakenStringsFMTownsEnglish[2] = {
+ " taken.",
+ " taken."
+};
+
+static const StringListProvider k1TakenStringsFMTownsEnglishProvider = { ARRAYSIZE(k1TakenStringsFMTownsEnglish), k1TakenStringsFMTownsEnglish };
+
+static const char *const k1PlacedStringsFMTownsEnglish[1] = {
+ " placed."
+};
+
+static const StringListProvider k1PlacedStringsFMTownsEnglishProvider = { ARRAYSIZE(k1PlacedStringsFMTownsEnglish), k1PlacedStringsFMTownsEnglish };
+
+static const char *const k1DroppedStringsFMTownsEnglish[1] = {
+ " dropped."
+};
+
+static const StringListProvider k1DroppedStringsFMTownsEnglishProvider = { ARRAYSIZE(k1DroppedStringsFMTownsEnglish), k1DroppedStringsFMTownsEnglish };
+
+static const char *const k1NoDropStringsFMTownsEnglish[2] = {
+ "You can't drop any more items in this scene.",
+ "You can't put that there."
+};
+
+static const StringListProvider k1NoDropStringsFMTownsEnglishProvider = { ARRAYSIZE(k1NoDropStringsFMTownsEnglish), k1NoDropStringsFMTownsEnglish };
+
+static const char *const k1PutDownStringFMTownsEnglish[1] = {
+ "Maybe I'd better put this down first."
+};
+
+static const StringListProvider k1PutDownStringFMTownsEnglishProvider = { ARRAYSIZE(k1PutDownStringFMTownsEnglish), k1PutDownStringFMTownsEnglish };
+
+static const char *const k1WaitAmuletStringFMTownsEnglish[1] = {
+ "I guess I'll have to wait for my Amulet to regain its power."
+};
+
+static const StringListProvider k1WaitAmuletStringFMTownsEnglishProvider = { ARRAYSIZE(k1WaitAmuletStringFMTownsEnglish), k1WaitAmuletStringFMTownsEnglish };
+
+static const char *const k1BlackJewelStringFMTownsEnglish[1] = {
+ "It's a jewel, but why is it black?"
+};
+
+static const StringListProvider k1BlackJewelStringFMTownsEnglishProvider = { ARRAYSIZE(k1BlackJewelStringFMTownsEnglish), k1BlackJewelStringFMTownsEnglish };
+
+static const char *const k1HealingTipStringFMTownsEnglish[1] = {
+ "Gee, this could come in handy if I get hurt."
+};
+
+static const StringListProvider k1HealingTipStringFMTownsEnglishProvider = { ARRAYSIZE(k1HealingTipStringFMTownsEnglish), k1HealingTipStringFMTownsEnglish };
+
+static const char *const k1PoisonGoneStringFMTownsEnglish[2] = {
+ "Amazing!",
+ "The effects of the poison are gone!"
+};
+
+static const StringListProvider k1PoisonGoneStringFMTownsEnglishProvider = { ARRAYSIZE(k1PoisonGoneStringFMTownsEnglish), k1PoisonGoneStringFMTownsEnglish };
+
+static const char *const k1ThePoisonStringsFMTownsEnglish[4] = {
+ "The poison...",
+ "I can't breathe...",
+ "I don't feel so good...",
+ "That snake must\rbe poisonous!"
+};
+
+static const StringListProvider k1ThePoisonStringsFMTownsEnglishProvider = { ARRAYSIZE(k1ThePoisonStringsFMTownsEnglish), k1ThePoisonStringsFMTownsEnglish };
+
+static const char *const k1FluteStringsFMTownsEnglish[2] = {
+ "Not very impressive sounding.",
+ "That last note sure was high!"
+};
+
+static const StringListProvider k1FluteStringsFMTownsEnglishProvider = { ARRAYSIZE(k1FluteStringsFMTownsEnglish), k1FluteStringsFMTownsEnglish };
+
+static const char *const k1WispJewelStringsFMTownsEnglish[3] = {
+ "I'm not really feeling up to it right now.",
+ "I probably should put down my ",
+ ", first."
+};
+
+static const StringListProvider k1WispJewelStringsFMTownsEnglishProvider = { ARRAYSIZE(k1WispJewelStringsFMTownsEnglish), k1WispJewelStringsFMTownsEnglish };
+
+static const char *const k1MagicJewelStringsFMTownsEnglish[1] = {
+ "That felt strange."
+};
+
+static const StringListProvider k1MagicJewelStringsFMTownsEnglishProvider = { ARRAYSIZE(k1MagicJewelStringsFMTownsEnglish), k1MagicJewelStringsFMTownsEnglish };
+
+static const char *const k1FlaskFullStringFMTownsEnglish[1] = {
+ "This flask is already full."
+};
+
+static const StringListProvider k1FlaskFullStringFMTownsEnglishProvider = { ARRAYSIZE(k1FlaskFullStringFMTownsEnglish), k1FlaskFullStringFMTownsEnglish };
+
+static const char *const k1FullFlaskStringFMTownsEnglish[4] = {
+ "The flask is now filled\rwith fresh, sparkling water.",
+ "The flask is now filled\rwith salt water.",
+ "The flask is now filled\rwith mineral water.",
+ "Magic water."
+};
+
+static const StringListProvider k1FullFlaskStringFMTownsEnglishProvider = { ARRAYSIZE(k1FullFlaskStringFMTownsEnglish), k1FullFlaskStringFMTownsEnglish };
+
+static const char *const k1OutroHomeStringFMTownsEnglish[1] = {
+ "Home"
+};
+
+static const StringListProvider k1OutroHomeStringFMTownsEnglishProvider = { ARRAYSIZE(k1OutroHomeStringFMTownsEnglish), k1OutroHomeStringFMTownsEnglish };
+
+static const char *const k1VeryCleverStringFMTownsEnglish[1] = {
+ "Very clever! But your feeble efforts are futile."
+};
+
+static const StringListProvider k1VeryCleverStringFMTownsEnglishProvider = { ARRAYSIZE(k1VeryCleverStringFMTownsEnglish), k1VeryCleverStringFMTownsEnglish };
+
+static const char *const k1GUIStringsFMTownsEnglish[38] = {
+ "The Legend of Kyrandia",
+ "Load a game",
+ "Save this game",
+ "Game controls",
+ "Quit playing",
+ "Resume game",
+ "Game Controls",
+ "Which game would you like to reload?",
+ "Select a position to save to:",
+ "[ EMPTY SLOT ]",
+ "Cancel",
+ "Enter a description of your saved game:",
+ "Save",
+ "Rest in peace, Brandon.",
+ "Are you sure you want to quit playing?",
+ "XXX",
+ "XXX",
+ "XXXXXXX",
+ "XXXXXXXXX",
+ "Main menu",
+ "on",
+ "on +CD",
+ "off",
+ "Yes",
+ "No",
+ "slowest",
+ "slow",
+ "normal",
+ "fast",
+ "fastest",
+ "slowest",
+ "normal",
+ "fast",
+ "clickable",
+ "Walk speed ",
+ "Text speed ",
+ "Music is ",
+ "Sounds are "
+};
+
+static const StringListProvider k1GUIStringsFMTownsEnglishProvider = { ARRAYSIZE(k1GUIStringsFMTownsEnglish), k1GUIStringsFMTownsEnglish };
+
+static const char *const k1NewGameStringFMTownsEnglish[1] = {
+ "[ START A NEW GAME ]"
+};
+
+static const StringListProvider k1NewGameStringFMTownsEnglishProvider = { ARRAYSIZE(k1NewGameStringFMTownsEnglish), k1NewGameStringFMTownsEnglish };
+
+static const char *const k1ConfigStringsFMTownsEnglish[9] = {
+ "slowest",
+ "slow",
+ "normal",
+ "fast",
+ "fastest",
+ "slowest",
+ "normal",
+ "fast",
+ "clickable"
+};
+
+static const StringListProvider k1ConfigStringsFMTownsEnglishProvider = { ARRAYSIZE(k1ConfigStringsFMTownsEnglish), k1ConfigStringsFMTownsEnglish };
+
+static const byte k1CreditsStringsFMTownsEnglish[1420] = {
+ 0x0D, 0x02, 0x54, 0x48, 0x45, 0x20, 0x45, 0x4E,
+ 0x44, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x46, 0x61, 0x62, 0x6C, 0x65,
+ 0x73, 0x20, 0x26, 0x20, 0x46, 0x69, 0x65, 0x6E,
+ 0x64, 0x73, 0x0D, 0x02, 0x42, 0x6F, 0x6F, 0x6B,
+ 0x20, 0x49, 0x0D, 0x02, 0x54, 0x48, 0x45, 0x20,
+ 0x4C, 0x45, 0x47, 0x45, 0x4E, 0x44, 0x20, 0x4F,
+ 0x46, 0x20, 0x4B, 0x59, 0x52, 0x41, 0x4E, 0x44,
+ 0x49, 0x41, 0x0D, 0x0D, 0x50, 0x75, 0x62, 0x6C,
+ 0x69, 0x73, 0x68, 0x65, 0x64, 0x20, 0x62, 0x79,
+ 0x0D, 0x02, 0x57, 0x65, 0x73, 0x74, 0x77, 0x6F,
+ 0x6F, 0x64, 0x20, 0x53, 0x74, 0x75, 0x64, 0x69,
+ 0x6F, 0x73, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x03, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6F,
+ 0x72, 0x3A, 0x05, 0x04, 0x42, 0x72, 0x65, 0x74,
+ 0x74, 0x20, 0x57, 0x2E, 0x20, 0x53, 0x70, 0x65,
+ 0x72, 0x72, 0x79, 0x0D, 0x0D, 0x03, 0x44, 0x65,
+ 0x73, 0x69, 0x67, 0x6E, 0x3A, 0x05, 0x04, 0x4D,
+ 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C, 0x20, 0x4C,
+ 0x65, 0x67, 0x67, 0x0D, 0x04, 0x52, 0x69, 0x63,
+ 0x6B, 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73, 0x0D,
+ 0x04, 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53, 0x2E,
+ 0x20, 0x4D, 0x75, 0x64, 0x72, 0x61, 0x0D, 0x0D,
+ 0x03, 0x4C, 0x65, 0x61, 0x64, 0x20, 0x50, 0x72,
+ 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x65, 0x72,
+ 0x3A, 0x05, 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61,
+ 0x65, 0x6C, 0x20, 0x4C, 0x65, 0x67, 0x67, 0x0D,
+ 0x0D, 0x03, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74,
+ 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D,
+ 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04, 0x53, 0x63,
+ 0x6F, 0x74, 0x74, 0x20, 0x42, 0x6F, 0x77, 0x65,
+ 0x6E, 0x0D, 0x0D, 0x03, 0x20, 0x20, 0x41, 0x6D,
+ 0x69, 0x67, 0x61, 0x20, 0x20, 0x50, 0x72, 0x6F,
+ 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x65, 0x72, 0x3A,
+ 0x05, 0x04, 0x42, 0x69, 0x6C, 0x6C, 0x20, 0x53,
+ 0x74, 0x6F, 0x6B, 0x65, 0x73, 0x0D, 0x0D, 0x03,
+ 0x20, 0x20, 0x50, 0x43, 0x2D, 0x39, 0x38, 0x20,
+ 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D,
+ 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04, 0x59, 0x75,
+ 0x6B, 0x69, 0x6F, 0x20, 0x53, 0x65, 0x6B, 0x69,
+ 0x67, 0x75, 0x63, 0x68, 0x69, 0x0D, 0x0D, 0x03,
+ 0x46, 0x4D, 0x2D, 0x54, 0x4F, 0x57, 0x4E, 0x53,
+ 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D,
+ 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04, 0x54, 0x61,
+ 0x69, 0x73, 0x65, 0x69, 0x20, 0x4E, 0x6F, 0x6D,
+ 0x75, 0x72, 0x61, 0x0D, 0x03, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4F, 0x68, 0x73, 0x68, 0x75,
+ 0x6E, 0x20, 0x4C, 0x65, 0x65, 0x0D, 0x0D, 0x03,
+ 0x49, 0x6E, 0x74, 0x72, 0x6F, 0x20, 0x26, 0x20,
+ 0x46, 0x69, 0x6E, 0x61, 0x6C, 0x65, 0x3A, 0x05,
+ 0x04, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x6F,
+ 0x70, 0x68, 0x65, 0x72, 0x20, 0x59, 0x61, 0x74,
+ 0x65, 0x73, 0x0D, 0x0D, 0x03, 0x41, 0x72, 0x74,
+ 0x20, 0x26, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68,
+ 0x69, 0x63, 0x73, 0x3A, 0x05, 0x04, 0x52, 0x69,
+ 0x63, 0x6B, 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73,
+ 0x0D, 0x04, 0x52, 0x65, 0x6E, 0x20, 0x4F, 0x6C,
+ 0x73, 0x65, 0x6E, 0x0D, 0x04, 0x4C, 0x6F, 0x75,
+ 0x69, 0x73, 0x65, 0x20, 0x53, 0x61, 0x6E, 0x64,
+ 0x6F, 0x76, 0x61, 0x6C, 0x0D, 0x04, 0x4A, 0x6F,
+ 0x73, 0x65, 0x70, 0x68, 0x20, 0x48, 0x65, 0x77,
+ 0x69, 0x74, 0x74, 0x20, 0x49, 0x56, 0x0D, 0x04,
+ 0x4A, 0x75, 0x64, 0x69, 0x74, 0x68, 0x20, 0x50,
+ 0x65, 0x74, 0x65, 0x72, 0x73, 0x6F, 0x6E, 0x0D,
+ 0x04, 0x41, 0x61, 0x72, 0x6F, 0x6E, 0x20, 0x50,
+ 0x6F, 0x77, 0x65, 0x6C, 0x6C, 0x0D, 0x04, 0x45,
+ 0x6C, 0x69, 0x65, 0x20, 0x41, 0x72, 0x61, 0x62,
+ 0x69, 0x61, 0x6E, 0x0D, 0x04, 0x45, 0x72, 0x69,
+ 0x63, 0x20, 0x53, 0x68, 0x75, 0x6C, 0x74, 0x73,
+ 0x0D, 0x0D, 0x03, 0x41, 0x75, 0x64, 0x69, 0x6F,
+ 0x20, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6F,
+ 0x72, 0x3A, 0x05, 0x04, 0x50, 0x61, 0x75, 0x6C,
+ 0x20, 0x53, 0x2E, 0x20, 0x4D, 0x75, 0x64, 0x72,
+ 0x61, 0x0D, 0x0D, 0x03, 0x4D, 0x75, 0x73, 0x69,
+ 0x63, 0x3A, 0x05, 0x04, 0x46, 0x72, 0x61, 0x6E,
+ 0x6B, 0x20, 0x4B, 0x6C, 0x65, 0x70, 0x61, 0x63,
+ 0x6B, 0x69, 0x0D, 0x03, 0x28, 0x39, 0x38, 0x20,
+ 0x26, 0x20, 0x54, 0x4F, 0x57, 0x4E, 0x53, 0x29,
+ 0x05, 0x04, 0x54, 0x61, 0x6B, 0x65, 0x73, 0x68,
+ 0x69, 0x20, 0x41, 0x62, 0x6F, 0x0D, 0x0D, 0x03,
+ 0x53, 0x6F, 0x75, 0x6E, 0x64, 0x20, 0x45, 0x66,
+ 0x66, 0x65, 0x63, 0x74, 0x73, 0x3A, 0x05, 0x04,
+ 0x44, 0x77, 0x69, 0x67, 0x68, 0x74, 0x20, 0x4F,
+ 0x6B, 0x61, 0x68, 0x61, 0x72, 0x61, 0x0D, 0x03,
+ 0x28, 0x50, 0x43, 0x2D, 0x39, 0x38, 0x29, 0x05,
+ 0x04, 0x54, 0x61, 0x6B, 0x65, 0x73, 0x68, 0x69,
+ 0x20, 0x41, 0x62, 0x6F, 0x0D, 0x0D, 0x03, 0x57,
+ 0x72, 0x69, 0x74, 0x65, 0x72, 0x3A, 0x05, 0x04,
+ 0x22, 0x43, 0x6F, 0x63, 0x6F, 0x22, 0x0D, 0x0D,
+ 0x03, 0x54, 0x72, 0x61, 0x6E, 0x73, 0x6C, 0x61,
+ 0x74, 0x6F, 0x72, 0x28, 0x4A, 0x61, 0x70, 0x61,
+ 0x6E, 0x65, 0x73, 0x65, 0x29, 0x3A, 0x05, 0x04,
+ 0x4D, 0x69, 0x6E, 0x6F, 0x72, 0x75, 0x20, 0x4E,
+ 0x61, 0x6B, 0x61, 0x7A, 0x61, 0x77, 0x61, 0x0D,
+ 0x04, 0x59, 0x75, 0x72, 0x69, 0x20, 0x49, 0x74,
+ 0x6F, 0x0D, 0x0D, 0x03, 0x51, 0x75, 0x61, 0x6C,
+ 0x69, 0x74, 0x79, 0x20, 0x41, 0x73, 0x73, 0x75,
+ 0x72, 0x61, 0x6E, 0x63, 0x65, 0x3A, 0x05, 0x04,
+ 0x47, 0x6C, 0x65, 0x6E, 0x6E, 0x20, 0x53, 0x70,
+ 0x65, 0x72, 0x72, 0x79, 0x0D, 0x04, 0x4D, 0x61,
+ 0x74, 0x74, 0x20, 0x43, 0x6F, 0x6C, 0x6C, 0x69,
+ 0x6E, 0x73, 0x0D, 0x04, 0x42, 0x69, 0x6C, 0x6C,
+ 0x20, 0x46, 0x6F, 0x73, 0x74, 0x65, 0x72, 0x0D,
+ 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C,
+ 0x20, 0x4C, 0x69, 0x67, 0x68, 0x74, 0x6E, 0x65,
+ 0x72, 0x0D, 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61,
+ 0x65, 0x6C, 0x20, 0x47, 0x61, 0x74, 0x65, 0x72,
+ 0x0D, 0x04, 0x45, 0x75, 0x67, 0x65, 0x6E, 0x65,
+ 0x20, 0x4D, 0x61, 0x72, 0x74, 0x69, 0x6E, 0x0D,
+ 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C,
+ 0x20, 0x47, 0x6C, 0x6F, 0x73, 0x65, 0x63, 0x6B,
+ 0x69, 0x0D, 0x04, 0x4A, 0x75, 0x73, 0x74, 0x69,
+ 0x6E, 0x20, 0x4E, 0x6F, 0x72, 0x72, 0x0D, 0x04,
+ 0x54, 0x6F, 0x70, 0x20, 0x53, 0x74, 0x61, 0x72,
+ 0x20, 0x54, 0x65, 0x73, 0x74, 0x69, 0x6E, 0x67,
+ 0x0D, 0x04, 0x54, 0x65, 0x73, 0x74, 0x69, 0x6E,
+ 0x67, 0x20, 0x31, 0x2C, 0x32, 0x2C, 0x33, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x53, 0x70, 0x65, 0x63,
+ 0x69, 0x61, 0x6C, 0x20, 0x54, 0x68, 0x61, 0x6E,
+ 0x6B, 0x73, 0x20, 0x74, 0x6F, 0x0D, 0x4C, 0x79,
+ 0x6C, 0x65, 0x20, 0x4A, 0x2E, 0x20, 0x48, 0x61,
+ 0x6C, 0x6C, 0x0D, 0x44, 0x61, 0x76, 0x69, 0x64,
+ 0x20, 0x42, 0x69, 0x73, 0x68, 0x6F, 0x70, 0x0D,
+ 0x22, 0x54, 0x68, 0x65, 0x20, 0x44, 0x6F, 0x63,
+ 0x22, 0x0D, 0x61, 0x6E, 0x64, 0x0D, 0x46, 0x69,
+ 0x72, 0x65, 0x62, 0x65, 0x72, 0x72, 0x79, 0x20,
+ 0x47, 0x72, 0x65, 0x65, 0x6E, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x02, 0x43, 0x41, 0x53, 0x54,
+ 0x20, 0x4F, 0x46, 0x20, 0x43, 0x48, 0x41, 0x52,
+ 0x41, 0x43, 0x54, 0x45, 0x52, 0x53, 0x0D, 0x0D,
+ 0x4D, 0x61, 0x6C, 0x63, 0x6F, 0x6C, 0x6D, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x4A, 0x65, 0x73, 0x74,
+ 0x65, 0x72, 0x0D, 0x42, 0x72, 0x61, 0x6E, 0x64,
+ 0x6F, 0x6E, 0x20, 0x74, 0x68, 0x65, 0x20, 0x42,
+ 0x6F, 0x6C, 0x64, 0x0D, 0x42, 0x72, 0x61, 0x6E,
+ 0x64, 0x79, 0x77, 0x69, 0x6E, 0x65, 0x20, 0x61,
+ 0x6E, 0x64, 0x20, 0x44, 0x61, 0x72, 0x6D, 0x0D,
+ 0x50, 0x72, 0x69, 0x65, 0x73, 0x74, 0x65, 0x73,
+ 0x73, 0x20, 0x42, 0x72, 0x79, 0x6E, 0x6E, 0x0D,
+ 0x5A, 0x61, 0x6E, 0x74, 0x68, 0x69, 0x61, 0x2C,
+ 0x20, 0x4C, 0x61, 0x64, 0x79, 0x20, 0x6F, 0x66,
+ 0x20, 0x41, 0x6C, 0x63, 0x68, 0x65, 0x6D, 0x79,
+ 0x0D, 0x48, 0x65, 0x72, 0x6D, 0x61, 0x6E, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64,
+ 0x79, 0x6D, 0x61, 0x6E, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x01,
+ 0x41, 0x6E, 0x79, 0x20, 0x63, 0x68, 0x61, 0x72,
+ 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x20, 0x69,
+ 0x6E, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x67,
+ 0x61, 0x6D, 0x65, 0x20, 0x77, 0x68, 0x6F, 0x20,
+ 0x62, 0x65, 0x61, 0x72, 0x0D, 0x01, 0x72, 0x65,
+ 0x73, 0x65, 0x6D, 0x62, 0x6C, 0x61, 0x6E, 0x63,
+ 0x65, 0x20, 0x74, 0x6F, 0x20, 0x70, 0x65, 0x72,
+ 0x73, 0x6F, 0x6E, 0x73, 0x20, 0x6C, 0x69, 0x76,
+ 0x69, 0x6E, 0x67, 0x20, 0x6F, 0x72, 0x0D, 0x01,
+ 0x64, 0x65, 0x61, 0x64, 0x20, 0x61, 0x72, 0x65,
+ 0x20, 0x70, 0x75, 0x72, 0x65, 0x6C, 0x79, 0x20,
+ 0x63, 0x6F, 0x69, 0x6E, 0x63, 0x69, 0x64, 0x65,
+ 0x6E, 0x74, 0x61, 0x6C, 0x2E, 0x0D, 0x0D, 0x0D,
+ 0x01, 0x43, 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67,
+ 0x68, 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x31,
+ 0x39, 0x39, 0x32, 0x2C, 0x20, 0x57, 0x65, 0x73,
+ 0x74, 0x77, 0x6F, 0x6F, 0x64, 0x20, 0x53, 0x74,
+ 0x75, 0x64, 0x69, 0x6F, 0x73, 0x2C, 0x20, 0x49,
+ 0x6E, 0x63, 0x2E, 0x0D, 0x01, 0x43, 0x6F, 0x70,
+ 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28,
+ 0x43, 0x29, 0x20, 0x31, 0x39, 0x39, 0x33, 0x2C,
+ 0x20, 0x53, 0x74, 0x61, 0x72, 0x20, 0x43, 0x72,
+ 0x61, 0x66, 0x74, 0x2C, 0x20, 0x49, 0x6E, 0x63,
+ 0x2E, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D,
+ 0x01, 0x41, 0x6C, 0x6C, 0x20, 0x72, 0x69, 0x67,
+ 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65,
+ 0x72, 0x76, 0x65, 0x64, 0x2E, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x00
+};
+
+static const ByteProvider k1CreditsStringsFMTownsEnglishProvider = { ARRAYSIZE(k1CreditsStringsFMTownsEnglish), k1CreditsStringsFMTownsEnglish };
+
diff --git a/devtools/create_kyradat/resources/lok_fmtowns_japanese.h b/devtools/create_kyradat/resources/lok_fmtowns_japanese.h
new file mode 100644
index 0000000000..37f82e5623
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_fmtowns_japanese.h
@@ -0,0 +1,527 @@
+static const char *const k1IntroStringsFMTownsJapanese[50] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "\x8B""v""\x82\xB5\x90""U""\x82\xE8\x82\xBE\x82\xC8\x81""A""\x83""J""\x83\x89\x83""b""\x83""N""\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x89\xA4\x8E\xBA\x96\x82\x8F""p""\x8E""t""\x82\xCC\x8E""w""\x93\xB1\x8E\xD2\x93""a""\x81""I",
+ "\x82\xA0\x82\xF1\x82\xBD\x82\xF0\x8B\xC1\x82\xA9\x82\xB5\x82\xBD\x82\xA9\x82\xC8\x81""H",
+ "\x83""}""\x83\x8B\x83""R""\x83\x80\x81""I",
+ "\x8B""M""\x97""l""\x82\xCC\x92""E""\x91\x96\x82\xC9\x82\xC2\x82\xA2\x82\xC4\x82\xCD\x8D\xF0\x93\xFA\x95\xF1\x8D\x90\x82\xF0\x8E\xF3\x82\xAF\x82\xC4\x82\xA2\x82\xBD\x81""B",
+ "\x82\xBB\x82\xEA\x82\xC5\x82\xA8\x91""O""\x82\xAA\x97\x88\x82\xE9\x82\xCC\x82\xF0\x91\xD2\x82\xC1\x82\xC4\x82\xA2\x82\xBD\x82\xF1\x82\xBE\x81""B",
+ "\x89\xBD\x8C\xCC\x82\xA8\x82\xEA\x97""l""\x82\xAA\x97\x88\x82\xBD\x82\xA9\x95\xAA\x82\xA9\x82\xE9\x82\xA9\x81""H",
+ "\x82\xC2\x82\xA2\x82\xC9\x81""A""\x82\xB1\x82\xCC\x8D\x91\x82\xF0\x8F\xE6\x82\xC1\x8E\xE6\x82\xC1\x82\xBD\x82\xBC\x81""I",
+ "\x8B""M""\x97""l""\x82\xCC\x82\xC2\x82\xDC\x82\xE7\x82\xF1\x8B\xBA\x94\x97\x82\xC8\x82\xC7\x82\xC5\x82\xA8\x82\xEA\x97""l""\x82\xF0\x94\x9B\x82\xEA\x82\xE9\x82\xE0\x82\xCC\x82\xA9\x81""B",
+ "\x82\xB3\x82\xA0\x81""A""\x82\xE2\x82\xE9\x82\xC8\x82\xE7\x82\xE2\x82\xC1\x82\xC4\x82\xDD\x82\xEB\x81""I",
+ "\x82\xED\x82\xB5\x82\xC9\x82\xE0\x82\xED\x82\xB8\x82\xA9\x82\xBE\x82\xAA\x96\x82\x97\xCD\x82\xAA\x8E""c""\x82\xC1\x82\xC4\x82\xA8\x82\xE9\x82\xED\x82\xA2\x81""B",
+ "\x82\xA8\x91""O""\x82\xF0\x82\xE2\x82\xC1\x82\xC2\x82\xAF\x82\xE9\x82\xC6\x82\xA2\x82\xA4\x82\xB1\x82\xC6\x82\xB3\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x82\xE0\x82\xCD\x82\xE2\x82\xA8\x91""O""\x82\xCD\x90\xCE\x82\xC6\x82\xC8\x82\xC1\x82\xBD\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x82\xBE\x82\xAA\x96\xDA\x82\xBE\x82\xAF\x82\xCD\x8C\xA9\x82\xA6\x82\xE9\x82\xDC\x82\xDC\x82\xC9\x82\xB5\x82\xC4\x82\xA8\x82\xB1\x82\xA4\x81""B",
+ "\x82\xA8\x82\xEA\x97""l""\x82\xCD\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xC9\x82\xCD\x82\xC8\x82\xF1\x82\xCC\x8A\xB4\x8F\x9D\x82\xE0\x82\xC8\x82\xA2\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x82\xBE\x82\xAA\x81""A""\x82\xA8\x91""O""\x82\xBD\x82\xBF\x82\xCD\x82\xC7\x82\xA4\x82\xA9\x82\xC8\x81""B",
+ "\x88\xAB\x82\xCC\x93\xB9\x89\xBB\x8E""t""\x81""A""\x83""}""\x83\x8B\x83""R""\x83\x80\x82\xAA\x98""S""\x82\xF0\x94""j""\x82\xC1\x82\xBD\x81""B",
+ "\x8D\xA1\x82\xE2\x82\xB1\x82\xCC\x8D\x91\x82\xCC\x96\x82\x96""@""\x82\xCD\x82\xB7\x82\xD7\x82\xC4\x94\xDE\x82\xC9\x8E""x""\x94""z""\x82\xB3\x82\xEA\x82\xC4\x82\xB5\x82\xDC\x82\xC1\x82\xBD\x81""B",
+ "",
+ "",
+ "\x89\xBD\x82\xC5\x82\xA8\x82\xEA\x97""l""\x82\xF0\x82\xC2\x82\xDC\x82\xB8\x82\xA9\x82\xB9\x82\xBD\x81""I",
+ "\x82\xE6\x82\xB5\x81""A""\x82\xA8\x91""O""\x82\xC9\x82\xB7\x82\xCE\x82\xE7\x82\xB5\x82\xA2\x91\xA1\x82\xE8\x95\xA8\x82\xF0\x82\xE2\x82\xEB\x82\xA4\x81""E""\x81""E""\x81""E",
+ "\x82\xB1\x82\xEA\x82\xAA\x82\xA8\x82\xEA\x97""l""\x82\xCC\x83\x86\x81""[""\x83\x82\x83""A""\x82\xB3\x81""I",
+ "\x82\xBE\x82\xAA\x81""A""\x83""t""\x83""F""\x83""A""\x82\xC8\x82\xA8\x82\xEA\x97""l""\x82\xCD\x8C""x""\x8D\x90\x82\xF0\x82\xB7\x82\xE9\x82\xC2\x82\xE0\x82\xE8\x82\xB3\x81""B",
+ "\x82\xA0\x82\xCC\x96\xD8\x82\xC9\x82\xCD\x93""o""\x82\xE9\x82\xC8\x82\xE6\x81""I",
+ "\x82\xBF\x82\xC1\x82\xB1\x82\xA2\x83\x8A\x83""X""\x82\xDF\x81""A""\x82\xA0\x82\xCC\x96\xD8\x82\xC9\x82\xCD\x93""o""\x82\xE9\x82\xC8\x81""I",
+ "\x83""u""\x83""D""\x81""[""\x81""I",
+ "\x82\xB1\x82\xA2\x82\xC2\x82\xCD\x96\xCA\x94\x92\x82\xA2\x82\xE2\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x82\xBB\x82\xA4\x8E""v""\x82\xED\x82\xF1\x82\xA9\x81""H",
+ "\x82\xCD\x82\xC1\x81""A""\x82\xCD\x82\xC1\x82\xCD\x81""E""\x81""E""\x81""E",
+ "\x8C\xB3\x82\xC9\x96\xDF\x82\xC1\x82\xBD\x82\xCC\x82\xA9\x81""H",
+ "\x90\xB6\x82\xAB\x82\xC4\x82\xA2\x82\xE9\x82\xB1\x82\xC6\x82\xCD\x82\xB7\x82\xCE\x82\xE7\x82\xB5\x82\xA2\x81""I",
+ "\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x81""I",
+ "\x82\xA8\x91""c""\x95\x83\x82\xB3\x82\xF1\x81""I""\x96""l""\x82\xBD\x82\xBF\x82\xCD\x82\xE2\x82\xE8\x82\xDC\x82\xB5\x82\xBD\x82\xCB\x81""I",
+ "\x82\xA2\x82\xA2\x82\xE2\x81""I""\x82\xE2\x82\xC1\x82\xBD\x82\xCC\x82\xCD\x82\xA8\x91""O""\x81""I",
+ "\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x89\xA4\x81""@""\x82\xCE\x82\xF1\x82\xB4\x82\xA2\x81""I",
+ "\x89\xA4\x8E\xBA\x96\x82\x8F""p""\x8E""t""\x81""@""\x82\xCE\x82\xF1\x82\xB4\x82\xA2\x81""I",
+ "\x82\xB3\x82\xA0\x81""A""\x8B\xA4\x82\xC9\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xF0\x95\x9C\x8B\xBB\x82\xB5\x82\xE6\x82\xA4\x81""I",
+ "\x91\xE5\x8E""^""\x90\xAC\x81""I",
+ "\x96""l""\x82\xCC\x89\xA4\x82\xC6\x82\xB5\x82\xC4\x82\xCC\x8D\xC5\x8F\x89\x82\xCC\x95""z""\x8D\x90\x82\xCD\x81""E""\x81""E""\x81""E",
+ "\x83""T""\x83\x93\x83""_""\x83\x8B\x82\xF0\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xCC\x8C\xF6\x8E\xAE\x82\xC8\x97\x9A\x95\xA8\x82\xC6\x82\xB7\x82\xE9\x82\xB1\x82\xC6\x82\xC5\x82\xB7\x81""I",
+ "\x82\xE6\x82\xAD\x82\xE2\x82\xC1\x82\xBD\x81""I""\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x81""B",
+ "\x8E\xA9\x91""R""\x8A""E""\x82\xCD\x82\xE6\x82\xEB\x82\xB1\x82\xD1\x82\xC9\x82\xA0\x82\xD3\x82\xEA\x81""E""\x81""E""\x81""E",
+ "\x82\xA0\x82\xC8\x82\xBD\x82\xCC\x97""F""\x90""l""\x92""B""\x82\xE0\x8F\x95\x82\xA9\x82\xC1\x82\xBD\x82\xCC\x82\xC5\x82\xB7\x81""I",
+ "\x83""u""\x83\x8A\x83\x93\x82\xE6\x81""E""\x81""E""\x81""E",
+ "\x83""}""\x83\x8B\x83""R""\x83\x80\x82\xAA\x98""S""\x82\xF0\x94""j""\x82\xC1\x82\xBD\x81""I",
+ "\x82\xDC\x82\xE0\x82\xC8\x82\xAD\x93""z""\x82\xCD\x82\xED\x82\xB5\x82\xCC\x82\xC6\x82\xB1\x82\xEB\x82\xD6\x97\x88\x82\xE9\x82\xBE\x82\xEB\x82\xA4\x81""B",
+ "\x82\xC7\x82\xA4\x82\xA9\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x82\xF0\x8F\x95\x82\xAF\x82\xC4\x82\xE2\x82\xC1\x82\xC4\x82\xA8\x82\xAD\x82\xEA\x81""E""\x81""E""\x81""E"
+};
+
+static const StringListProvider k1IntroStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1IntroStringsFMTownsJapanese), k1IntroStringsFMTownsJapanese };
+
+static const char *const k1ItemNamesFMTownsJapanese[107] = {
+ "\x83""K""\x81""[""\x83""l""\x83""b""\x83""g",
+ "\x83""A""\x83\x81\x83""W""\x83""X""\x83""g",
+ "\x83""A""\x83""N""\x83""A""\x83""}""\x83\x8A\x83\x93",
+ "\x83""_""\x83""C""\x83""A""\x83\x82\x83\x93\x83""h",
+ "\x83""G""\x83\x81\x83\x89\x83\x8B\x83""h",
+ "\x83""p""\x81""[""\x83\x8B",
+ "\x83\x8B\x83""r""\x81""[",
+ "\x83""y""\x83\x8A\x83""h""\x81""[""\x83""g",
+ "\x83""T""\x83""t""\x83""@""\x83""C""\x83""A",
+ "\x83""I""\x83""p""\x81""[""\x83\x8B",
+ "\x83""g""\x83""p""\x81""[""\x83""Y",
+ "\x83""I""\x83""j""\x83""L""\x83""X",
+ "\x83""T""\x83\x93\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83\x80\x81""[""\x83\x93\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83\x8C\x83""C""\x83\x93\x83""{""\x81""[""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83\x8D\x81""[""\x83""h""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83""o""\x83\x89",
+ "\x83""`""\x83\x85\x81""[""\x83\x8A\x83""b""\x83""v",
+ "\x83\x89\x83\x93",
+ "\x8B\xE2\x82\xCC\x83""o""\x83\x89",
+ "\x8B\xE2\x82\xCC\x8F\xAC\x91\x9C",
+ "\x8B\xE2\x89\xDD",
+ "\x8B\xE0\x89\xDD",
+ "\x8B\xE0\x82\xCC\x83\x8A\x83\x93\x83""O",
+ "\x90\xB9\x94""t",
+ "\x8F\xBC\x82\xDA\x82\xC1\x82\xAD\x82\xE8",
+ "\x82\xC7\x82\xF1\x82\xAE\x82\xE8",
+ "\x83""N""\x83\x8B\x83""~",
+ "\x94""R""\x82\xA6\x82\xE9\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x82\xB3\x82\xA9\x82\xC8",
+ "\x82\xB3\x82\xA9\x82\xC8\x82\xCC\x8D\x9C",
+ "\x97""r""\x82\xCC\x91\xAB",
+ "\x8D\x9C",
+ "\x83\x8A\x83\x93\x83""S",
+ "\x83\x8A\x83\x93\x83""S""\x82\xCC\x90""c",
+ "\x83""u""\x83\x8B\x81""[""\x83""x""\x83\x8A\x81""[",
+ "\x83""L""\x83""m""\x83""R",
+ "\x83""m""\x81""[""\x83""g",
+ "\x91\xE5\x97\x9D\x90\xCE",
+ "\x82\xCC\x82\xB1\x82\xAC\x82\xE8",
+ "\x83""A""\x83\x93\x83""N",
+ "\x89""H""\x8D\xAA",
+ "\x83""^""\x83""}""\x83""S",
+ "\x97""t""\x82\xC1\x82\xCF",
+ "\x94\x92\x92\xDC\x91\x90",
+ "\x97\x8E\x82\xBF\x82\xBD\x90\xAF",
+ "\x83""N""\x83\x8A\x83""X""\x83""^""\x83\x8B\x82\xCC\x8E\xEC",
+ "\x97\xDC\x82\xCC\x82\xB5\x82\xB8\x82\xAD",
+ "\x8B\xBE",
+ "\x95""X""\x82\xCC\x82\xA9\x82\xAF\x82\xE7",
+ "\x83""t""\x83\x8B\x81""[""\x83""g",
+ "\x8D\xBB\x8E\x9E\x8C""v",
+ "\x93""S""\x82\xCC\x8C\xAE",
+ "\x82\xD0\x82\xB7\x82\xA2\x82\xCC\x8C\xAE",
+ "\x8D\x95\x97""j""\x90\xCE\x82\xCC\x8C\xAE",
+ "\x90\xD4\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x90\xD4\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x90\xC2\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x90\xC2\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x89\xA9\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x89\xA9\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x97\xCE\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x83""I""\x83\x8C\x83\x93\x83""W""\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x8E\x87\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x93\xF8\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x90""V""\x91""N""\x82\xC8\x90\x85",
+ "\x90""V""\x91""N""\x82\xC8\x90\x85",
+ "\x89\x96\x90\x85",
+ "\x89\x96\x90\x85",
+ "\x83""~""\x83""l""\x83\x89\x83\x8B\x83""E""\x83""H""\x81""[""\x83""^""\x81""[",
+ "\x83""~""\x83""l""\x83\x89\x83\x8B\x83""E""\x83""H""\x81""[""\x83""^""\x81""[",
+ "\x96\x82\x96""@""\x82\xCC\x90\x85",
+ "\x96\x82\x96""@""\x82\xCC\x90\x85",
+ "\x8B\xF3\x82\xC1\x82\xDB\x82\xCC\x83""t""\x83\x89\x83""X""\x83""R",
+ "\x8B\xF3\x82\xC1\x82\xDB\x82\xCC\x83""t""\x83\x89\x83""X""\x83""R",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x90\xD4\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83""I""\x83\x8C\x83\x93\x83""W""\x90""F""\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x89\xA9\x90""F""\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x97\xCE\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x90\xC2\x97\xCE\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x90\xC2\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x8E\x87\x90""F""\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x8F""d""\x82\xA2\x90\xCE",
+ "\x89\xA4\x8A\xA5",
+ "\x89\xA4\xE2\x94",
+ "\x8B\xE0\x82\xCC\x8C\xAE",
+ "\x95\xAA\x82\xA9\x82\xE7\x82\xC8\x82\xA2\x82\xE0\x82\xCC"
+};
+
+static const StringListProvider k1ItemNamesFMTownsJapaneseProvider = { ARRAYSIZE(k1ItemNamesFMTownsJapanese), k1ItemNamesFMTownsJapanese };
+
+static const char *const k1TakenStringsFMTownsJapanese[2] = {
+ "\x82\xF0\x8E\xE6\x82\xC1\x82\xBD\x81""B",
+ "\x82\xF0\x8E\xE6\x82\xC1\x82\xBD\x81""B"
+};
+
+static const StringListProvider k1TakenStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1TakenStringsFMTownsJapanese), k1TakenStringsFMTownsJapanese };
+
+static const char *const k1PlacedStringsFMTownsJapanese[1] = {
+ "\x82\xF0\x82\xB5\x82\xDC\x82\xC1\x82\xBD\x81""B"
+};
+
+static const StringListProvider k1PlacedStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1PlacedStringsFMTownsJapanese), k1PlacedStringsFMTownsJapanese };
+
+static const char *const k1DroppedStringsFMTownsJapanese[1] = {
+ "\x82\xF0\x92""u""\x82\xA2\x82\xBD\x81""B"
+};
+
+static const StringListProvider k1DroppedStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1DroppedStringsFMTownsJapanese), k1DroppedStringsFMTownsJapanese };
+
+static const char *const k1NoDropStringsFMTownsJapanese[2] = {
+ "\x82\xB1\x82\xCC\x8F\xEA\x96\xCA\x82\xC5\x82\xCD\x81""A""\x82\xB1\x82\xEA\x88\xC8\x8F\xE3\x83""A""\x83""C""\x83""e""\x83\x80\x82\xAA\x92""u""\x82\xAF\x82\xDC\x82\xB9\x82\xF1\x81""B",
+ "\x82\xB1\x82\xB1\x82\xC9\x82\xCD\x92""u""\x82\xAF\x82\xDC\x82\xB9\x82\xF1\x81""B"
+};
+
+static const StringListProvider k1NoDropStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1NoDropStringsFMTownsJapanese), k1NoDropStringsFMTownsJapanese };
+
+static const char *const k1PutDownStringFMTownsJapanese[1] = {
+ "\x82\xDC\x82\xB8\x81""A""\x82\xB1\x82\xEA\x82\xF0\x92""u""\x82\xA2\x82\xC4\x82\xA9\x82\xE7\x82\xCC\x95\xFB\x82\xAA\x82\xE6\x82\xB3\x82\xBB\x82\xA4\x82\xBE\x81""B"
+};
+
+static const StringListProvider k1PutDownStringFMTownsJapaneseProvider = { ARRAYSIZE(k1PutDownStringFMTownsJapanese), k1PutDownStringFMTownsJapanese };
+
+static const char *const k1WaitAmuletStringFMTownsJapanese[1] = {
+ "\x83""A""\x83""~""\x83\x85\x83\x8C\x83""b""\x83""g""\x82\xC9\x97\xCD\x82\xAA\x96\xDF\x82\xE9\x82\xDC\x82\xC5\x91\xD2\x82\xC1\x82\xC4\x82\xDD\x82\xE6\x82\xA4\x81""B"
+};
+
+static const StringListProvider k1WaitAmuletStringFMTownsJapaneseProvider = { ARRAYSIZE(k1WaitAmuletStringFMTownsJapanese), k1WaitAmuletStringFMTownsJapanese };
+
+static const char *const k1BlackJewelStringFMTownsJapanese[1] = {
+ "\x82\xB1\x82\xEA\x82\xCD\x95\xF3\x90\xCE\x82\xC9\x82\xCD\x88\xE1\x82\xA2\x82\xC8\x82\xA2\x82\xAA\x81""A""\x82\xC7\x82\xA4\x82\xB5\x82\xC4\x82\xDC\x82\xC1\x8D\x95\x82\xC8\x82\xF1\x82\xBE\x82\xEB\x82\xA4\x81""H"
+};
+
+static const StringListProvider k1BlackJewelStringFMTownsJapaneseProvider = { ARRAYSIZE(k1BlackJewelStringFMTownsJapanese), k1BlackJewelStringFMTownsJapanese };
+
+static const char *const k1HealingTipStringFMTownsJapanese[1] = {
+ "\x82\xA0\x82\xEA\x81""A""\x82\xB1\x82\xEA\x82\xCD\x8F\x9D\x82\xC2\x82\xA2\x82\xBD\x82\xE0\x82\xCC\x82\xF0\x8E\xA1\x82\xB7\x96\x82\x96""@""\x82\xC8\x82\xF1\x82\xBE\x81""B"
+};
+
+static const StringListProvider k1HealingTipStringFMTownsJapaneseProvider = { ARRAYSIZE(k1HealingTipStringFMTownsJapanese), k1HealingTipStringFMTownsJapanese };
+
+static const char *const k1PoisonGoneStringFMTownsJapanese[2] = {
+ "\x82\xB7\x82\xB2\x82\xA2\x81""I",
+ "\x93\xC5\x82\xAA\x8F\xC1\x82\xA6\x82\xBD\x81""I"
+};
+
+static const StringListProvider k1PoisonGoneStringFMTownsJapaneseProvider = { ARRAYSIZE(k1PoisonGoneStringFMTownsJapanese), k1PoisonGoneStringFMTownsJapanese };
+
+static const char *const k1ThePoisonStringsFMTownsJapanese[4] = {
+ "\x93\xC5\x82\xBE\x81""E""\x81""E""\x81""E",
+ "\x8C\xC4\x8B""z""\x82\xAA\x8F""o""\x97\x88\x82\xC8\x82\xA2\x81""E""\x81""E""\x81""E",
+ "\x8B""C""\x95\xAA\x82\xAA\x88\xAB\x82\xA2\x81""E""\x81""E""\x81""E",
+ "\x82\xA0\x82\xCC\x8E\xD6\x82\xCD""\r""\x93\xC5\x8E\xD6\x82\xC9\x82\xBF\x82\xAA\x82\xA2\x82\xC8\x82\xA2\x81""I"
+};
+
+static const StringListProvider k1ThePoisonStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1ThePoisonStringsFMTownsJapanese), k1ThePoisonStringsFMTownsJapanese };
+
+static const char *const k1FluteStringsFMTownsJapanese[2] = {
+ "\x82\xA0\x82\xDC\x82\xE8\x82\xA2\x82\xA2\x89\xB9\x90""F""\x82\xB6\x82\xE1\x82\xC8\x82\xA2\x82\xC8\x81""B",
+ "\x8D\xC5\x8C\xE3\x82\xCD\x82\xC6\x82\xC4\x82\xE0\x8D\x82\x82\xA2\x89\xB9\x82\xBE\x81""I"
+};
+
+static const StringListProvider k1FluteStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1FluteStringsFMTownsJapanese), k1FluteStringsFMTownsJapanese };
+
+static const char *const k1WispJewelStringsFMTownsJapanese[3] = {
+ "\x89\xBD\x82\xE0\x8A\xB4\x82\xB6\x82\xC8\x82\xA2\x82\xC8\x82\xA0\x81""B",
+ "\x8D\xC5\x8F\x89\x82\xC9\x81""A",
+ "\x82\xF0\x89\xBA\x82\xC9\x92""u""\x82\xAD\x82\xCC\x82\xA9\x82\xE0\x92""m""\x82\xEA\x82\xC8\x82\xA2\x81""B"
+};
+
+static const StringListProvider k1WispJewelStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1WispJewelStringsFMTownsJapanese), k1WispJewelStringsFMTownsJapanese };
+
+static const char *const k1MagicJewelStringsFMTownsJapanese[1] = {
+ "\x82\xB1\x82\xEA\x82\xCD\x88\xE1\x82\xA4\x82\xBC\x81""B"
+};
+
+static const StringListProvider k1MagicJewelStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1MagicJewelStringsFMTownsJapanese), k1MagicJewelStringsFMTownsJapanese };
+
+static const char *const k1FlaskFullStringFMTownsJapanese[1] = {
+ "\x83""t""\x83\x89\x83""X""\x83""R""\x82\xCD\x82\xE0\x82\xA4\x90\x85\x82\xAA\x93\xFC\x82\xC1\x82\xC4\x82\xA2\x82\xE9\x81""B"
+};
+
+static const StringListProvider k1FlaskFullStringFMTownsJapaneseProvider = { ARRAYSIZE(k1FlaskFullStringFMTownsJapanese), k1FlaskFullStringFMTownsJapanese };
+
+static const char *const k1FullFlaskStringFMTownsJapanese[4] = {
+ "\x83""t""\x83\x89\x83""X""\x83""R""\x82\xCC\x92\x86\x90""g""\x82\xCD\x81""A\r""\x96""A""\x97\xA7\x82\xC2\x90""V""\x91""N""\x82\xC8\x90\x85\x82\xBE\x81""B",
+ "\x83""t""\x83\x89\x83""X""\x83""R""\x82\xCC\x92\x86\x90""g""\x82\xCD\x81""A\r""\x89\x96\x90\x85\x82\xBE\x81""B",
+ "\x83""t""\x83\x89\x83""X""\x83""R""\x82\xCC\x92\x86\x90""g""\x82\xCD\x81""A\r""\x83""~""\x83""l""\x83\x89\x83\x8B\x83""E""\x83""H""\x81""[""\x83""^""\x81""[""\x82\xBE\x81""B",
+ "\x96\x82\x96""@""\x82\xCC\x90\x85\x82\xBE\x81""B"
+};
+
+static const StringListProvider k1FullFlaskStringFMTownsJapaneseProvider = { ARRAYSIZE(k1FullFlaskStringFMTownsJapanese), k1FullFlaskStringFMTownsJapanese };
+
+static const char *const k1OutroHomeStringFMTownsJapanese[1] = {
+ "\x89\xE4\x82\xAA\x89\xC6"
+};
+
+static const StringListProvider k1OutroHomeStringFMTownsJapaneseProvider = { ARRAYSIZE(k1OutroHomeStringFMTownsJapanese), k1OutroHomeStringFMTownsJapanese };
+
+static const char *const k1VeryCleverStringFMTownsJapanese[1] = {
+ "\x82\xE6\x82\xA2\x8E\xE8\x8D\xDB\x82\xBE\x81""I""\x82\xBE\x82\xAA\x82\xA8\x91""O""\x82\xCC\x82\xB3\x82\xB3\x82\xE2\x82\xA9\x82\xC8\x93""w""\x97\xCD\x82\xCD\x96\xB3\x91\xCA\x82\xBE\x81""B"
+};
+
+static const StringListProvider k1VeryCleverStringFMTownsJapaneseProvider = { ARRAYSIZE(k1VeryCleverStringFMTownsJapanese), k1VeryCleverStringFMTownsJapanese };
+
+static const char *const k1GUIStringsFMTownsJapanese[38] = {
+ "\x83""U""\x81""E""\x83\x8C\x83""W""\x83""F""\x83\x93\x83""h""\x81""E""\x83""I""\x83""u""\x81""E""\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A",
+ "\x83""Z""\x81""[""\x83""u""\x82\xB5\x82\xBD\x8F\x8A\x82\xA9\x82\xE7\x8E""n""\x82\xDF\x82\xE9",
+ "\x83""Q""\x81""[""\x83\x80\x82\xF0\x83""Z""\x81""[""\x83""u""\x82\xB7\x82\xE9",
+ "\x83""Q""\x81""[""\x83\x80\x82\xCC\x90\xDD\x92\xE8",
+ "\x83""Q""\x81""[""\x83\x80\x8F""I""\x97\xB9",
+ "\x83""Q""\x81""[""\x83\x80\x8D\xC4\x8A""J",
+ "\x83""Q""\x81""[""\x83\x80\x82\xCC\x90\xDD\x92\xE8",
+ "\x82\xC7\x82\xCC\x83""f""\x81""[""\x83""^""\x82\xF0\x83\x8D\x81""[""\x83""h""\x82\xB5\x82\xDC\x82\xB7\x82\xA9\x81""H",
+ "\x83""Z""\x81""[""\x83""u""\x82\xB7\x82\xE9\x88\xCA\x92""u""\x82\xF0\x91""I""\x82\xF1\x82\xC5\x89\xBA\x82\xB3\x82\xA2\x81""F",
+ "\x81""m""\x8B\xF3\x82\xAB\x83""X""\x83\x8D\x83""b""\x83""g""\x81""n",
+ "\x92\x86\x8E""~",
+ "\x83""Z""\x81""[""\x83""u""\x82\xB5\x82\xBD\x83""Q""\x81""[""\x83\x80\x82\xC9\x96\xBC\x91""O""\x82\xF0\x82\xC2\x82\xAF\x82\xC4\x89\xBA\x82\xB3\x82\xA2\x81""F",
+ "\x83""Z""\x81""[""\x83""u",
+ "\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x81""A""\x82\xE4\x82\xC1\x82\xAD\x82\xE8\x8B""x""\x82\xDF\x82\xE9\x82\xE6\x81""B",
+ "\x83""Q""\x81""[""\x83\x80\x82\xF0\x8F""I""\x97\xB9\x82\xB5\x82\xC4\x82\xA2\x82\xA2\x82\xC5\x82\xB7\x82\xA9\x81""H",
+ "XXXX",
+ "XXXX",
+ "XXXXXXXX",
+ "XXXXXXXXXX",
+ "\x83\x81\x83""C""\x83\x93\x81""E""\x83\x81\x83""j""\x83\x85\x81""[",
+ "\x83""I""\x83\x93",
+ "\x83""I""\x83\x93"" ""\x81""{""\x82""b""\x82""c",
+ "\x83""I""\x83""t",
+ "\x82\xCD\x82\xA2",
+ "\x82\xA2\x82\xA2\x82\xA6",
+ "\xA0\x8E\x02",
+ "\xAC\x8E\x02",
+ "\xB4\x8E\x02",
+ "\xBC\x8E\x02",
+ "\xC4\x8E\x02",
+ "\xD0\x8E\x02",
+ "\xDC\x8E\x02",
+ "\xE4\x8E\x02",
+ "\xEC\x8E\x02",
+ "\x95\xE0\x81""@""\x8D""s""\x81""@""\x91\xAC\x81""@""\x93""x",
+ "\x83\x81\x83""b""\x83""Z""\x81""[""\x83""W""\x91\xAC\x93""x",
+ "\x89\xB9\x81""@""\x81""@""\x81""@""\x81""@""\x81""@""\x8A""y",
+ "\x8C\xF8\x81""@""\x81""@""\x89\xCA\x81""@""\x81""@""\x89\xB9"
+};
+
+static const StringListProvider k1GUIStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1GUIStringsFMTownsJapanese), k1GUIStringsFMTownsJapanese };
+
+static const char *const k1NewGameStringFMTownsJapanese[1] = {
+ "\x81""m""\x8D\xC5\x8F\x89\x82\xA9\x82\xE7\x83""Q""\x81""[""\x83\x80\x82\xF0\x8E""n""\x82\xDF\x82\xE9\x81""n"
+};
+
+static const StringListProvider k1NewGameStringFMTownsJapaneseProvider = { ARRAYSIZE(k1NewGameStringFMTownsJapanese), k1NewGameStringFMTownsJapanese };
+
+static const char *const k1ConfigStringsFMTownsJapanese[9] = {
+ "\x82\xB2\x82\xAD\x92""x""\x82\xAD",
+ "\x92""x""\x81""@""\x82\xAD",
+ "\x95\x81\x81""@""\x92\xCA",
+ "\x91\xAC\x81""@""\x82\xAD",
+ "\x82\xB2\x82\xAD\x91\xAC\x82\xAD",
+ "\x82\xB2\x82\xAD\x92""x""\x82\xAD",
+ "\x95\x81\x81""@""\x92\xCA",
+ "\x91\xAC\x81""@""\x82\xAD",
+ "\x97""v""\x83""N""\x83\x8A\x83""b""\x83""N"
+};
+
+static const StringListProvider k1ConfigStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1ConfigStringsFMTownsJapanese), k1ConfigStringsFMTownsJapanese };
+
+static const byte k1CreditsStringsFMTownsJapanese[1420] = {
+ 0x0D, 0x02, 0x54, 0x48, 0x45, 0x20, 0x45, 0x4E,
+ 0x44, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x46, 0x61, 0x62, 0x6C, 0x65,
+ 0x73, 0x20, 0x26, 0x20, 0x46, 0x69, 0x65, 0x6E,
+ 0x64, 0x73, 0x0D, 0x02, 0x42, 0x6F, 0x6F, 0x6B,
+ 0x20, 0x49, 0x0D, 0x02, 0x54, 0x48, 0x45, 0x20,
+ 0x4C, 0x45, 0x47, 0x45, 0x4E, 0x44, 0x20, 0x4F,
+ 0x46, 0x20, 0x4B, 0x59, 0x52, 0x41, 0x4E, 0x44,
+ 0x49, 0x41, 0x0D, 0x0D, 0x50, 0x75, 0x62, 0x6C,
+ 0x69, 0x73, 0x68, 0x65, 0x64, 0x20, 0x62, 0x79,
+ 0x0D, 0x02, 0x57, 0x65, 0x73, 0x74, 0x77, 0x6F,
+ 0x6F, 0x64, 0x20, 0x53, 0x74, 0x75, 0x64, 0x69,
+ 0x6F, 0x73, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x03, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6F,
+ 0x72, 0x3A, 0x05, 0x04, 0x42, 0x72, 0x65, 0x74,
+ 0x74, 0x20, 0x57, 0x2E, 0x20, 0x53, 0x70, 0x65,
+ 0x72, 0x72, 0x79, 0x0D, 0x0D, 0x03, 0x44, 0x65,
+ 0x73, 0x69, 0x67, 0x6E, 0x3A, 0x05, 0x04, 0x4D,
+ 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C, 0x20, 0x4C,
+ 0x65, 0x67, 0x67, 0x0D, 0x04, 0x52, 0x69, 0x63,
+ 0x6B, 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73, 0x0D,
+ 0x04, 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53, 0x2E,
+ 0x20, 0x4D, 0x75, 0x64, 0x72, 0x61, 0x0D, 0x0D,
+ 0x03, 0x4C, 0x65, 0x61, 0x64, 0x20, 0x50, 0x72,
+ 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x65, 0x72,
+ 0x3A, 0x05, 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61,
+ 0x65, 0x6C, 0x20, 0x4C, 0x65, 0x67, 0x67, 0x0D,
+ 0x0D, 0x03, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74,
+ 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D,
+ 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04, 0x53, 0x63,
+ 0x6F, 0x74, 0x74, 0x20, 0x42, 0x6F, 0x77, 0x65,
+ 0x6E, 0x0D, 0x0D, 0x03, 0x20, 0x20, 0x41, 0x6D,
+ 0x69, 0x67, 0x61, 0x20, 0x20, 0x50, 0x72, 0x6F,
+ 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x65, 0x72, 0x3A,
+ 0x05, 0x04, 0x42, 0x69, 0x6C, 0x6C, 0x20, 0x53,
+ 0x74, 0x6F, 0x6B, 0x65, 0x73, 0x0D, 0x0D, 0x03,
+ 0x20, 0x20, 0x50, 0x43, 0x2D, 0x39, 0x38, 0x20,
+ 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D,
+ 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04, 0x59, 0x75,
+ 0x6B, 0x69, 0x6F, 0x20, 0x53, 0x65, 0x6B, 0x69,
+ 0x67, 0x75, 0x63, 0x68, 0x69, 0x0D, 0x0D, 0x03,
+ 0x46, 0x4D, 0x2D, 0x54, 0x4F, 0x57, 0x4E, 0x53,
+ 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D,
+ 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04, 0x54, 0x61,
+ 0x69, 0x73, 0x65, 0x69, 0x20, 0x4E, 0x6F, 0x6D,
+ 0x75, 0x72, 0x61, 0x0D, 0x03, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x05, 0x04, 0x4F, 0x68, 0x73, 0x68, 0x75,
+ 0x6E, 0x20, 0x4C, 0x65, 0x65, 0x0D, 0x0D, 0x03,
+ 0x49, 0x6E, 0x74, 0x72, 0x6F, 0x20, 0x26, 0x20,
+ 0x46, 0x69, 0x6E, 0x61, 0x6C, 0x65, 0x3A, 0x05,
+ 0x04, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x6F,
+ 0x70, 0x68, 0x65, 0x72, 0x20, 0x59, 0x61, 0x74,
+ 0x65, 0x73, 0x0D, 0x0D, 0x03, 0x41, 0x72, 0x74,
+ 0x20, 0x26, 0x20, 0x47, 0x72, 0x61, 0x70, 0x68,
+ 0x69, 0x63, 0x73, 0x3A, 0x05, 0x04, 0x52, 0x69,
+ 0x63, 0x6B, 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73,
+ 0x0D, 0x04, 0x52, 0x65, 0x6E, 0x20, 0x4F, 0x6C,
+ 0x73, 0x65, 0x6E, 0x0D, 0x04, 0x4C, 0x6F, 0x75,
+ 0x69, 0x73, 0x65, 0x20, 0x53, 0x61, 0x6E, 0x64,
+ 0x6F, 0x76, 0x61, 0x6C, 0x0D, 0x04, 0x4A, 0x6F,
+ 0x73, 0x65, 0x70, 0x68, 0x20, 0x48, 0x65, 0x77,
+ 0x69, 0x74, 0x74, 0x20, 0x49, 0x56, 0x0D, 0x04,
+ 0x4A, 0x75, 0x64, 0x69, 0x74, 0x68, 0x20, 0x50,
+ 0x65, 0x74, 0x65, 0x72, 0x73, 0x6F, 0x6E, 0x0D,
+ 0x04, 0x41, 0x61, 0x72, 0x6F, 0x6E, 0x20, 0x50,
+ 0x6F, 0x77, 0x65, 0x6C, 0x6C, 0x0D, 0x04, 0x45,
+ 0x6C, 0x69, 0x65, 0x20, 0x41, 0x72, 0x61, 0x62,
+ 0x69, 0x61, 0x6E, 0x0D, 0x04, 0x45, 0x72, 0x69,
+ 0x63, 0x20, 0x53, 0x68, 0x75, 0x6C, 0x74, 0x73,
+ 0x0D, 0x0D, 0x03, 0x41, 0x75, 0x64, 0x69, 0x6F,
+ 0x20, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6F,
+ 0x72, 0x3A, 0x05, 0x04, 0x50, 0x61, 0x75, 0x6C,
+ 0x20, 0x53, 0x2E, 0x20, 0x4D, 0x75, 0x64, 0x72,
+ 0x61, 0x0D, 0x0D, 0x03, 0x4D, 0x75, 0x73, 0x69,
+ 0x63, 0x3A, 0x05, 0x04, 0x46, 0x72, 0x61, 0x6E,
+ 0x6B, 0x20, 0x4B, 0x6C, 0x65, 0x70, 0x61, 0x63,
+ 0x6B, 0x69, 0x0D, 0x03, 0x28, 0x39, 0x38, 0x20,
+ 0x26, 0x20, 0x54, 0x4F, 0x57, 0x4E, 0x53, 0x29,
+ 0x05, 0x04, 0x54, 0x61, 0x6B, 0x65, 0x73, 0x68,
+ 0x69, 0x20, 0x41, 0x62, 0x6F, 0x0D, 0x0D, 0x03,
+ 0x53, 0x6F, 0x75, 0x6E, 0x64, 0x20, 0x45, 0x66,
+ 0x66, 0x65, 0x63, 0x74, 0x73, 0x3A, 0x05, 0x04,
+ 0x44, 0x77, 0x69, 0x67, 0x68, 0x74, 0x20, 0x4F,
+ 0x6B, 0x61, 0x68, 0x61, 0x72, 0x61, 0x0D, 0x03,
+ 0x28, 0x50, 0x43, 0x2D, 0x39, 0x38, 0x29, 0x05,
+ 0x04, 0x54, 0x61, 0x6B, 0x65, 0x73, 0x68, 0x69,
+ 0x20, 0x41, 0x62, 0x6F, 0x0D, 0x0D, 0x03, 0x57,
+ 0x72, 0x69, 0x74, 0x65, 0x72, 0x3A, 0x05, 0x04,
+ 0x22, 0x43, 0x6F, 0x63, 0x6F, 0x22, 0x0D, 0x0D,
+ 0x03, 0x54, 0x72, 0x61, 0x6E, 0x73, 0x6C, 0x61,
+ 0x74, 0x6F, 0x72, 0x28, 0x4A, 0x61, 0x70, 0x61,
+ 0x6E, 0x65, 0x73, 0x65, 0x29, 0x3A, 0x05, 0x04,
+ 0x4D, 0x69, 0x6E, 0x6F, 0x72, 0x75, 0x20, 0x4E,
+ 0x61, 0x6B, 0x61, 0x7A, 0x61, 0x77, 0x61, 0x0D,
+ 0x04, 0x59, 0x75, 0x72, 0x69, 0x20, 0x49, 0x74,
+ 0x6F, 0x0D, 0x0D, 0x03, 0x51, 0x75, 0x61, 0x6C,
+ 0x69, 0x74, 0x79, 0x20, 0x41, 0x73, 0x73, 0x75,
+ 0x72, 0x61, 0x6E, 0x63, 0x65, 0x3A, 0x05, 0x04,
+ 0x47, 0x6C, 0x65, 0x6E, 0x6E, 0x20, 0x53, 0x70,
+ 0x65, 0x72, 0x72, 0x79, 0x0D, 0x04, 0x4D, 0x61,
+ 0x74, 0x74, 0x20, 0x43, 0x6F, 0x6C, 0x6C, 0x69,
+ 0x6E, 0x73, 0x0D, 0x04, 0x42, 0x69, 0x6C, 0x6C,
+ 0x20, 0x46, 0x6F, 0x73, 0x74, 0x65, 0x72, 0x0D,
+ 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C,
+ 0x20, 0x4C, 0x69, 0x67, 0x68, 0x74, 0x6E, 0x65,
+ 0x72, 0x0D, 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61,
+ 0x65, 0x6C, 0x20, 0x47, 0x61, 0x74, 0x65, 0x72,
+ 0x0D, 0x04, 0x45, 0x75, 0x67, 0x65, 0x6E, 0x65,
+ 0x20, 0x4D, 0x61, 0x72, 0x74, 0x69, 0x6E, 0x0D,
+ 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C,
+ 0x20, 0x47, 0x6C, 0x6F, 0x73, 0x65, 0x63, 0x6B,
+ 0x69, 0x0D, 0x04, 0x4A, 0x75, 0x73, 0x74, 0x69,
+ 0x6E, 0x20, 0x4E, 0x6F, 0x72, 0x72, 0x0D, 0x04,
+ 0x54, 0x6F, 0x70, 0x20, 0x53, 0x74, 0x61, 0x72,
+ 0x20, 0x54, 0x65, 0x73, 0x74, 0x69, 0x6E, 0x67,
+ 0x0D, 0x04, 0x54, 0x65, 0x73, 0x74, 0x69, 0x6E,
+ 0x67, 0x20, 0x31, 0x2C, 0x32, 0x2C, 0x33, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x53, 0x70, 0x65, 0x63,
+ 0x69, 0x61, 0x6C, 0x20, 0x54, 0x68, 0x61, 0x6E,
+ 0x6B, 0x73, 0x20, 0x74, 0x6F, 0x0D, 0x4C, 0x79,
+ 0x6C, 0x65, 0x20, 0x4A, 0x2E, 0x20, 0x48, 0x61,
+ 0x6C, 0x6C, 0x0D, 0x44, 0x61, 0x76, 0x69, 0x64,
+ 0x20, 0x42, 0x69, 0x73, 0x68, 0x6F, 0x70, 0x0D,
+ 0x22, 0x54, 0x68, 0x65, 0x20, 0x44, 0x6F, 0x63,
+ 0x22, 0x0D, 0x61, 0x6E, 0x64, 0x0D, 0x46, 0x69,
+ 0x72, 0x65, 0x62, 0x65, 0x72, 0x72, 0x79, 0x20,
+ 0x47, 0x72, 0x65, 0x65, 0x6E, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x02, 0x43, 0x41, 0x53, 0x54,
+ 0x20, 0x4F, 0x46, 0x20, 0x43, 0x48, 0x41, 0x52,
+ 0x41, 0x43, 0x54, 0x45, 0x52, 0x53, 0x0D, 0x0D,
+ 0x4D, 0x61, 0x6C, 0x63, 0x6F, 0x6C, 0x6D, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x4A, 0x65, 0x73, 0x74,
+ 0x65, 0x72, 0x0D, 0x42, 0x72, 0x61, 0x6E, 0x64,
+ 0x6F, 0x6E, 0x20, 0x74, 0x68, 0x65, 0x20, 0x42,
+ 0x6F, 0x6C, 0x64, 0x0D, 0x42, 0x72, 0x61, 0x6E,
+ 0x64, 0x79, 0x77, 0x69, 0x6E, 0x65, 0x20, 0x61,
+ 0x6E, 0x64, 0x20, 0x44, 0x61, 0x72, 0x6D, 0x0D,
+ 0x50, 0x72, 0x69, 0x65, 0x73, 0x74, 0x65, 0x73,
+ 0x73, 0x20, 0x42, 0x72, 0x79, 0x6E, 0x6E, 0x0D,
+ 0x5A, 0x61, 0x6E, 0x74, 0x68, 0x69, 0x61, 0x2C,
+ 0x20, 0x4C, 0x61, 0x64, 0x79, 0x20, 0x6F, 0x66,
+ 0x20, 0x41, 0x6C, 0x63, 0x68, 0x65, 0x6D, 0x79,
+ 0x0D, 0x48, 0x65, 0x72, 0x6D, 0x61, 0x6E, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x48, 0x61, 0x6E, 0x64,
+ 0x79, 0x6D, 0x61, 0x6E, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x01,
+ 0x41, 0x6E, 0x79, 0x20, 0x63, 0x68, 0x61, 0x72,
+ 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x20, 0x69,
+ 0x6E, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x67,
+ 0x61, 0x6D, 0x65, 0x20, 0x77, 0x68, 0x6F, 0x20,
+ 0x62, 0x65, 0x61, 0x72, 0x0D, 0x01, 0x72, 0x65,
+ 0x73, 0x65, 0x6D, 0x62, 0x6C, 0x61, 0x6E, 0x63,
+ 0x65, 0x20, 0x74, 0x6F, 0x20, 0x70, 0x65, 0x72,
+ 0x73, 0x6F, 0x6E, 0x73, 0x20, 0x6C, 0x69, 0x76,
+ 0x69, 0x6E, 0x67, 0x20, 0x6F, 0x72, 0x0D, 0x01,
+ 0x64, 0x65, 0x61, 0x64, 0x20, 0x61, 0x72, 0x65,
+ 0x20, 0x70, 0x75, 0x72, 0x65, 0x6C, 0x79, 0x20,
+ 0x63, 0x6F, 0x69, 0x6E, 0x63, 0x69, 0x64, 0x65,
+ 0x6E, 0x74, 0x61, 0x6C, 0x2E, 0x0D, 0x0D, 0x0D,
+ 0x01, 0x43, 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67,
+ 0x68, 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x31,
+ 0x39, 0x39, 0x32, 0x2C, 0x20, 0x57, 0x65, 0x73,
+ 0x74, 0x77, 0x6F, 0x6F, 0x64, 0x20, 0x53, 0x74,
+ 0x75, 0x64, 0x69, 0x6F, 0x73, 0x2C, 0x20, 0x49,
+ 0x6E, 0x63, 0x2E, 0x0D, 0x01, 0x43, 0x6F, 0x70,
+ 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28,
+ 0x43, 0x29, 0x20, 0x31, 0x39, 0x39, 0x33, 0x2C,
+ 0x20, 0x53, 0x74, 0x61, 0x72, 0x20, 0x43, 0x72,
+ 0x61, 0x66, 0x74, 0x2C, 0x20, 0x49, 0x6E, 0x63,
+ 0x2E, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0D,
+ 0x01, 0x41, 0x6C, 0x6C, 0x20, 0x72, 0x69, 0x67,
+ 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65,
+ 0x72, 0x76, 0x65, 0x64, 0x2E, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x00
+};
+
+static const ByteProvider k1CreditsStringsFMTownsJapaneseProvider = { ARRAYSIZE(k1CreditsStringsFMTownsJapanese), k1CreditsStringsFMTownsJapanese };
+
diff --git a/devtools/create_kyradat/resources/lok_pc98.h b/devtools/create_kyradat/resources/lok_pc98.h
new file mode 100644
index 0000000000..fc628f0e3c
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_pc98.h
@@ -0,0 +1,2000 @@
+static const byte k1KallakWritingSeqPC98[2035] = {
+ 0x00, 0x00, 0x01, 0x0E, 0x1A, 0x1B, 0x17, 0x00,
+ 0x00, 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C,
+ 0x00, 0x19, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x95, 0x00, 0x20, 0x09, 0x14,
+ 0x0F, 0x2E, 0x02, 0x00, 0x01, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x10, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x63, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x15, 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x19, 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00,
+ 0x16, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x2F,
+ 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x02, 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x05, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x8A, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x05, 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x06, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x10, 0x00, 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x11, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x65, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x14, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x63, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x15, 0x00, 0x00, 0x10, 0x05, 0x00, 0x65, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x02, 0x00, 0x16, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x70, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x18, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x76, 0x00, 0x17, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x19, 0x00, 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00,
+ 0x16, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x82, 0x00, 0x17, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x88, 0x00, 0x19, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x8D, 0x00, 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1D, 0x00, 0x00, 0x10, 0x05, 0x00, 0x93, 0x00,
+ 0x1F, 0x07, 0x06, 0x00, 0x1C, 0x1B, 0x0F, 0x30,
+ 0x02, 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x94, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00,
+ 0x02, 0x00, 0x00, 0x10, 0x05, 0x02, 0x93, 0x00,
+ 0x14, 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x03, 0x00, 0x00, 0x10, 0x05, 0x01, 0x90, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x04, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x05, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x88, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x07, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x08, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x82, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x09, 0x00, 0x00, 0x10, 0x05, 0x01, 0x7F, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0A, 0x00,
+ 0x00, 0x10, 0x05, 0x02, 0x7C, 0x00, 0x14, 0x07,
+ 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0B, 0x00,
+ 0x00, 0x10, 0x05, 0x01, 0x79, 0x00, 0x1B, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x0C, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x76, 0x00, 0x20, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x0D, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x73, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D,
+ 0x02, 0x00, 0x0E, 0x00, 0x00, 0x10, 0x05, 0x02,
+ 0x70, 0x00, 0x14, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x0F, 0x00, 0x00, 0x10, 0x05, 0x01, 0x6D, 0x00,
+ 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x10, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x6A, 0x00, 0x20, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x11, 0x00, 0x00, 0x10,
+ 0x05, 0x01, 0x67, 0x00, 0x1B, 0x07, 0x06, 0x00,
+ 0x18, 0x1D, 0x02, 0x00, 0x12, 0x00, 0x00, 0x10,
+ 0x05, 0x02, 0x65, 0x00, 0x14, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x13, 0x00, 0x00, 0x10, 0x05, 0x01,
+ 0x63, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x14, 0x00, 0x00, 0x10, 0x05, 0x00, 0x63, 0x00,
+ 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x15, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x65, 0x00, 0x1F, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x16, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x6A, 0x00, 0x1D, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x17, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x70, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x18, 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00,
+ 0x17, 0x07, 0x06, 0x00, 0x02, 0x00, 0x19, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x7C, 0x00, 0x16, 0x07,
+ 0x06, 0x00, 0x02, 0x00, 0x1A, 0x00, 0x00, 0x10,
+ 0x05, 0x00, 0x82, 0x00, 0x17, 0x07, 0x06, 0x00,
+ 0x02, 0x00, 0x1B, 0x00, 0x00, 0x10, 0x05, 0x00,
+ 0x88, 0x00, 0x19, 0x07, 0x06, 0x00, 0x02, 0x00,
+ 0x1C, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D, 0x00,
+ 0x1D, 0x07, 0x06, 0x00, 0x02, 0x00, 0x1D, 0x00,
+ 0x00, 0x10, 0x05, 0x00, 0x93, 0x00, 0x1F, 0x07,
+ 0x06, 0x00, 0x1C, 0x06, 0x3C, 0x00, 0x1B, 0x0F,
+ 0x31, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x95, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x10, 0x05, 0x00, 0x95,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x01, 0x00, 0x00, 0x10, 0x05, 0x01, 0x94,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x01,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x94, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x93, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x10, 0x05,
+ 0x02, 0x93, 0x00, 0x14, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x03, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x90, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x04, 0x00, 0x00, 0x10, 0x05, 0x00, 0x8D,
+ 0x00, 0x20, 0x07, 0x06, 0x00, 0x02, 0x00, 0x05,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x8A, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x06,
+ 0x00, 0x00, 0x10, 0x05, 0x02, 0x88, 0x00, 0x14,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x07, 0x00, 0x00,
+ 0x10, 0x05, 0x01, 0x85, 0x00, 0x1B, 0x07, 0x06,
+ 0x00, 0x18, 0x1D, 0x02, 0x00, 0x08, 0x00, 0x00,
+ 0x10, 0x05, 0x00, 0x82, 0x00, 0x20, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x7F, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x0A, 0x00, 0x00, 0x10, 0x05, 0x02, 0x7C,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x0B, 0x00, 0x00, 0x10, 0x05, 0x01, 0x79,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x02, 0x00, 0x0C,
+ 0x00, 0x00, 0x10, 0x05, 0x00, 0x76, 0x00, 0x20,
+ 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02, 0x00, 0x0D,
+ 0x00, 0x00, 0x10, 0x05, 0x01, 0x73, 0x00, 0x1B,
+ 0x07, 0x06, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x00,
+ 0x10, 0x05, 0x02, 0x70, 0x00, 0x14, 0x07, 0x06,
+ 0x00, 0x02, 0x00, 0x0F, 0x00, 0x00, 0x10, 0x05,
+ 0x01, 0x6D, 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18,
+ 0x1D, 0x02, 0x00, 0x10, 0x00, 0x00, 0x10, 0x05,
+ 0x00, 0x6A, 0x00, 0x20, 0x07, 0x06, 0x00, 0x02,
+ 0x00, 0x11, 0x00, 0x00, 0x10, 0x05, 0x01, 0x67,
+ 0x00, 0x1B, 0x07, 0x06, 0x00, 0x18, 0x1D, 0x02,
+ 0x00, 0x12, 0x00, 0x00, 0x10, 0x05, 0x02, 0x65,
+ 0x00, 0x14, 0x07, 0x06, 0x00, 0x06, 0x3C, 0x00,
+ 0x02, 0x00, 0x1E, 0x00, 0x00, 0x10, 0x08, 0x12,
+ 0x06, 0x1E, 0x00, 0x0A, 0x01, 0x02, 0x00, 0x1F,
+ 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02, 0x00,
+ 0x20, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00, 0x02,
+ 0x00, 0x21, 0x00, 0x00, 0x10, 0x07, 0x0A, 0x00,
+ 0x02, 0x00, 0x22, 0x00, 0x00, 0x10, 0x07, 0x0A,
+ 0x00, 0x0B, 0x01, 0x02, 0x00, 0x18, 0x1F, 0x06,
+ 0x0A, 0x00, 0x02, 0x00, 0x23, 0x00, 0x00, 0x10,
+ 0x07, 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x24,
+ 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x02, 0x00,
+ 0x25, 0x00, 0x00, 0x10, 0x07, 0x14, 0x00, 0x18,
+ 0x1F, 0x02, 0x00, 0x26, 0x00, 0x00, 0x10, 0x07,
+ 0x14, 0x00, 0x02, 0x00, 0x27, 0x00, 0x00, 0x10,
+ 0x07, 0x14, 0x00, 0x18, 0x1E, 0x02, 0x00, 0x28,
+ 0x00, 0x00, 0x10, 0x08, 0x06, 0x3C, 0x00, 0x18,
+ 0x1E, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x18, 0x1E, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x18,
+ 0x1E, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00,
+ 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07,
+ 0x06, 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03,
+ 0x00, 0x07, 0x06, 0x00, 0x03, 0x00, 0x07, 0x06,
+ 0x00, 0x03, 0x00, 0x07, 0x06, 0x00, 0x03, 0x00,
+ 0x07, 0x06, 0x00, 0x13, 0x1C, 0x19, 0x01, 0x13,
+ 0x01, 0x00, 0x1D
+};
+
+static const ByteProvider k1KallakWritingSeqPC98Provider = { ARRAYSIZE(k1KallakWritingSeqPC98), k1KallakWritingSeqPC98 };
+
+static const byte k1MalcolmTreeSeqPC98[535] = {
+ 0x00, 0x01, 0x00, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C, 0x01,
+ 0x0D, 0x01, 0x09, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x10, 0x19, 0x03, 0x09, 0x18, 0x1E, 0x14, 0x18,
+ 0x1F, 0x0A, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x00, 0x1F, 0x00, 0x18, 0x19, 0x0A, 0x01,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x01, 0x0F,
+ 0x00, 0x18, 0x26, 0x10, 0x1F, 0x50, 0x00, 0x2D,
+ 0x05, 0x0A, 0x02, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x02, 0x10, 0x00, 0x11, 0x18, 0x1F, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x24,
+ 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18,
+ 0x1E, 0x0A, 0x03, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x0B, 0x03, 0x15, 0x00, 0x10, 0x16, 0x50, 0x00,
+ 0x2D, 0x05, 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18, 0x1E,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x18, 0x1F, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x18, 0x1E, 0x03, 0x01, 0x06, 0x06, 0x00, 0x18,
+ 0x1A, 0x18, 0x1E, 0x0A, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x05, 0x09, 0x00, 0x11, 0x0A,
+ 0x06, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x06,
+ 0x14, 0x00, 0x18, 0x1A, 0x18, 0x1F, 0x10, 0x17,
+ 0x50, 0x00, 0x2D, 0x05, 0x06, 0x3C, 0x00, 0x0A,
+ 0x07, 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x07,
+ 0x06, 0x00, 0x18, 0x1E, 0x06, 0x1E, 0x00, 0x10,
+ 0x18, 0x50, 0x00, 0x2D, 0x05, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0A, 0x08, 0x04, 0x01,
+ 0x06, 0x06, 0x00, 0x04, 0x01, 0x06, 0x06, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x08, 0x01, 0x00, 0x03, 0x01,
+ 0x06, 0x06, 0x00, 0x06, 0x78, 0x00, 0x0A, 0x09,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x0B, 0x09, 0x04,
+ 0x00, 0x18, 0x1B, 0x0A, 0x0A, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x0B, 0x0A, 0x09, 0x00, 0x06, 0x14,
+ 0x00, 0x10, 0x19, 0x50, 0x00, 0x2D, 0x05, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06, 0x06,
+ 0x00, 0x0A, 0x0B, 0x03, 0x01, 0x06, 0x06, 0x00,
+ 0x04, 0x01, 0x06, 0x06, 0x00, 0x04, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x0B, 0x01, 0x00,
+ 0x03, 0x01, 0x06, 0x06, 0x00, 0x03, 0x01, 0x06,
+ 0x06, 0x00, 0x03, 0x01, 0x06, 0x06, 0x00, 0x10,
+ 0x1A, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x0C, 0x03,
+ 0x01, 0x06, 0x06, 0x00, 0x0B, 0x0C, 0x12, 0x00,
+ 0x03, 0x01, 0x01, 0x01, 0x11, 0x15, 0x00, 0x02,
+ 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00,
+ 0x10, 0x10, 0x1C, 0x50, 0x00, 0x2D, 0x05, 0x06,
+ 0x3C, 0x00, 0x03, 0x02, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x11, 0x18, 0x1C, 0x0A, 0x0F, 0x03, 0x02,
+ 0x06, 0x06, 0x00, 0x0B, 0x0F, 0x0D, 0x00, 0x10,
+ 0x1D, 0x50, 0x00, 0x2D, 0x05, 0x0A, 0x10, 0x03,
+ 0x02, 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06,
+ 0x00, 0x03, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02,
+ 0x06, 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B, 0x10, 0x02,
+ 0x00, 0x10, 0x1E, 0x50, 0x00, 0x2D, 0x05, 0x0A,
+ 0x11, 0x03, 0x02, 0x06, 0x06, 0x00, 0x03, 0x02,
+ 0x06, 0x06, 0x00, 0x03, 0x02, 0x06, 0x06, 0x00,
+ 0x04, 0x02, 0x06, 0x06, 0x00, 0x04, 0x02, 0x06,
+ 0x06, 0x00, 0x04, 0x02, 0x06, 0x06, 0x00, 0x0B,
+ 0x11, 0x02, 0x00, 0x06, 0xB4, 0x00, 0x13, 0x19,
+ 0x01, 0x13, 0x01, 0x01, 0x01, 0x02, 0x1D
+};
+
+static const ByteProvider k1MalcolmTreeSeqPC98Provider = { ARRAYSIZE(k1MalcolmTreeSeqPC98), k1MalcolmTreeSeqPC98 };
+
+static const byte k1WestwoodLogoSeqPC98[75] = {
+ 0x00, 0x03, 0x01, 0x1A, 0x02, 0x03, 0x00, 0x00,
+ 0x00, 0x00, 0x16, 0x01, 0x06, 0x06, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x14, 0x0A, 0x00, 0x03, 0x03,
+ 0x16, 0x01, 0x0B, 0x00, 0x08, 0x00, 0x06, 0x3C,
+ 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03, 0x03, 0x16,
+ 0x01, 0x0B, 0x01, 0x0B, 0x00, 0x06, 0x78, 0x00,
+ 0x18, 0x14, 0x02, 0x03, 0x0A, 0x00, 0x00, 0x00,
+ 0x16, 0x01, 0x06, 0x06, 0x00, 0x0A, 0x02, 0x04,
+ 0x03, 0x16, 0x01, 0x0B, 0x02, 0x09, 0x00, 0x13,
+ 0x01, 0x03, 0x1D
+};
+
+static const ByteProvider k1WestwoodLogoSeqPC98Provider = { ARRAYSIZE(k1WestwoodLogoSeqPC98), k1WestwoodLogoSeqPC98 };
+
+static const byte k1KyrandiaLogoSeqPC98[92] = {
+ 0x15, 0x00, 0x02, 0x00, 0x06, 0x01, 0x1A, 0x02,
+ 0x06, 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06,
+ 0x06, 0x00, 0x18, 0x14, 0x16, 0x04, 0x0A, 0x00,
+ 0x03, 0x06, 0x16, 0x00, 0x0B, 0x00, 0x0B, 0x00,
+ 0x06, 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x01, 0x03,
+ 0x06, 0x16, 0x00, 0x0B, 0x01, 0x0F, 0x00, 0x06,
+ 0x3C, 0x00, 0x18, 0x27, 0x0A, 0x02, 0x04, 0x06,
+ 0x16, 0x00, 0x0B, 0x02, 0x0F, 0x00, 0x02, 0x06,
+ 0x0D, 0x00, 0x00, 0x00, 0x16, 0x00, 0x06, 0x06,
+ 0x00, 0x06, 0x78, 0x00, 0x18, 0x14, 0x0A, 0x02,
+ 0x04, 0x06, 0x16, 0x00, 0x0B, 0x02, 0x0C, 0x00,
+ 0x13, 0x01, 0x06, 0x1D
+};
+
+static const ByteProvider k1KyrandiaLogoSeqPC98Provider = { ARRAYSIZE(k1KyrandiaLogoSeqPC98), k1KyrandiaLogoSeqPC98 };
+
+static const byte k1KallakMalcolmSeqPC98[620] = {
+ 0x00, 0x04, 0x01, 0x1A, 0x0E, 0x17, 0x00, 0x00,
+ 0x00, 0x3F, 0x01, 0xC7, 0x0C, 0x00, 0x0C, 0x03,
+ 0x0D, 0x00, 0x17, 0x00, 0x00, 0x88, 0x3F, 0x01,
+ 0xC7, 0x0C, 0x02, 0x19, 0x00, 0x02, 0x04, 0x00,
+ 0x10, 0x00, 0x3A, 0x09, 0x19, 0x00, 0x19, 0x05,
+ 0x14, 0x18, 0x23, 0x0A, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x00, 0x22, 0x00, 0x10, 0x02,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x01, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x01, 0x07, 0x00, 0x06,
+ 0x3C, 0x00, 0x10, 0x03, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x02, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x02, 0x17, 0x00, 0x06, 0x3C, 0x00, 0x10, 0x04,
+ 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x03, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x03, 0x0A, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x10, 0x05, 0xF0, 0x00, 0x3A, 0x0F, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x06, 0x3C, 0x00, 0x10, 0x06,
+ 0xF0, 0x00, 0x3A, 0x0F, 0x0A, 0x04, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x0B, 0x04, 0x12, 0x00, 0x06,
+ 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x06, 0x78,
+ 0x00, 0x10, 0x07, 0xF0, 0x00, 0x3A, 0x0F, 0x0A,
+ 0x05, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x05,
+ 0x11, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x10,
+ 0x08, 0x50, 0x00, 0x3A, 0x05, 0x0A, 0x06, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x06, 0x07, 0x00,
+ 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x10, 0x09, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x07, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x07, 0x0A, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x10, 0x0A, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x08, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x08, 0x10, 0x00, 0x06, 0x3C, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x0B, 0xF0, 0x00,
+ 0x3A, 0x0F, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x10, 0x0C, 0xF0, 0x00, 0x3A, 0x0F,
+ 0x0A, 0x09, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x09, 0x0E, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x0D, 0x50, 0x00,
+ 0x3A, 0x05, 0x0A, 0x0A, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x0A, 0x0E, 0x00, 0x06, 0x3C, 0x00,
+ 0x0A, 0x0B, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x0B, 0x02, 0x00, 0x18, 0x20, 0x0A, 0x0C, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0C, 0x06, 0x00,
+ 0x18, 0x21, 0x0A, 0x0D, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x0D, 0x0C, 0x00, 0x18, 0x22, 0x0A,
+ 0x0E, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x0E,
+ 0x0B, 0x00, 0x10, 0x0E, 0x50, 0x00, 0x3A, 0x05,
+ 0x0A, 0x0F, 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B,
+ 0x0F, 0x09, 0x00, 0x06, 0x3C, 0x00, 0x03, 0x04,
+ 0x07, 0x07, 0x00, 0x10, 0x0F, 0x50, 0x00, 0x3A,
+ 0x05, 0x0A, 0x10, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x10, 0x09, 0x00, 0x06, 0x3C, 0x00, 0x03,
+ 0x04, 0x07, 0x07, 0x00, 0x10, 0x10, 0x50, 0x00,
+ 0x3A, 0x05, 0x0A, 0x11, 0x03, 0x04, 0x07, 0x07,
+ 0x00, 0x0B, 0x11, 0x0F, 0x00, 0x06, 0x3C, 0x00,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x10, 0x11, 0x50,
+ 0x00, 0x3A, 0x05, 0x0A, 0x12, 0x03, 0x04, 0x07,
+ 0x07, 0x00, 0x0B, 0x12, 0x14, 0x00, 0x06, 0x3C,
+ 0x00, 0x0A, 0x13, 0x03, 0x04, 0x07, 0x07, 0x00,
+ 0x0B, 0x13, 0x06, 0x00, 0x18, 0x23, 0x0A, 0x13,
+ 0x03, 0x04, 0x07, 0x07, 0x00, 0x0B, 0x13, 0x07,
+ 0x00, 0x11, 0x06, 0x3C, 0x00, 0x13, 0x19, 0x01,
+ 0x13, 0x01, 0x04, 0x1D
+};
+
+static const ByteProvider k1KallakMalcolmSeqPC98Provider = { ARRAYSIZE(k1KallakMalcolmSeqPC98), k1KallakMalcolmSeqPC98 };
+
+static const byte k1ForestSeqPC98[406] = {
+ 0x00, 0x05, 0x01, 0x00, 0x07, 0x01, 0x1A, 0x02,
+ 0x07, 0x00, 0x00, 0x00, 0x08, 0x02, 0x05, 0x00,
+ 0x98, 0x00, 0x38, 0x0A, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x0B, 0x00, 0x41, 0x00,
+ 0x18, 0x16, 0x03, 0x07, 0x02, 0x05, 0x01, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x02, 0x05, 0x03, 0x98, 0x00,
+ 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x02, 0x05, 0x01, 0x98, 0x00, 0x38,
+ 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x00, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0A, 0x05,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x05, 0x0E, 0x00, 0x18, 0x16, 0x03, 0x07, 0x02,
+ 0x05, 0x01, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x03, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x01,
+ 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x02, 0x05, 0x04, 0x98,
+ 0x00, 0x38, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x03,
+ 0x07, 0x02, 0x05, 0x05, 0x98, 0x00, 0x38, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x16,
+ 0x02, 0x06, 0x09, 0x00, 0x03, 0x07, 0x02, 0x05,
+ 0x06, 0x98, 0x00, 0x38, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06,
+ 0x09, 0x00, 0x03, 0x07, 0x16, 0x02, 0x06, 0x09,
+ 0x00, 0x18, 0x25, 0x0A, 0x00, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x0A, 0x06, 0x03, 0x07,
+ 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B, 0x06, 0x0E,
+ 0x00, 0x18, 0x17, 0x0A, 0x01, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x0B, 0x01, 0x0D, 0x00, 0x18, 0x25, 0x0A, 0x07,
+ 0x03, 0x07, 0x16, 0x02, 0x06, 0x09, 0x00, 0x0B,
+ 0x07, 0x0E, 0x00, 0x18, 0x18, 0x03, 0x07, 0x03,
+ 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09, 0x00,
+ 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16, 0x03,
+ 0x06, 0x09, 0x00, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x03, 0x07,
+ 0x03, 0x05, 0x16, 0x02, 0x16, 0x03, 0x06, 0x09,
+ 0x00, 0x03, 0x07, 0x03, 0x05, 0x16, 0x02, 0x16,
+ 0x03, 0x06, 0x09, 0x00, 0x06, 0x12, 0x00, 0x18,
+ 0x25, 0x0A, 0x02, 0x03, 0x07, 0x03, 0x05, 0x16,
+ 0x02, 0x16, 0x03, 0x06, 0x09, 0x00, 0x0B, 0x02,
+ 0x07, 0x00, 0x0A, 0x03, 0x03, 0x07, 0x16, 0x02,
+ 0x06, 0x09, 0x00, 0x0B, 0x03, 0x0F, 0x00, 0x13,
+ 0x13, 0x01, 0x07, 0x01, 0x05, 0x1D
+};
+
+static const ByteProvider k1ForestSeqPC98Provider = { ARRAYSIZE(k1ForestSeqPC98), k1ForestSeqPC98 };
+
+static const char *const k1IntroCPSStringsPC98[2] = {
+ "gemcut.cps",
+ "tree.cps"
+};
+
+static const StringListProvider k1IntroCPSStringsPC98Provider = { ARRAYSIZE(k1IntroCPSStringsPC98), k1IntroCPSStringsPC98 };
+
+static const char *const k1IntroCOLStringsPC98[4] = {
+ "kallak.col",
+ "tree_exp.col",
+ "ww.col",
+ "mal-kal.col"
+};
+
+static const StringListProvider k1IntroCOLStringsPC98Provider = { ARRAYSIZE(k1IntroCOLStringsPC98), k1IntroCOLStringsPC98 };
+
+static const char *const k1IntroWSAStringsPC98[11] = {
+ "kallak.wsa",
+ "tree1.wsa",
+ "tree2.wsa",
+ "westwood.wsa",
+ "mal-kal.wsa",
+ "destruct.wsa",
+ "kyrandia.wsa",
+ "shore.wsa",
+ "reunion.wsa",
+ "reuniont.wsa",
+ "latern.wsa"
+};
+
+static const StringListProvider k1IntroWSAStringsPC98Provider = { ARRAYSIZE(k1IntroWSAStringsPC98), k1IntroWSAStringsPC98 };
+
+static const Room k1RoomListPC98[246] = {
+ { 30, 0xFFFF, 0xFFFF, 0x0001, 0xFFFF },
+ { 71, 0xFFFF, 0xFFFF, 0x0005, 0xFFFF },
+ { 44, 0xFFFF, 0x0003, 0xFFFF, 0xFFFF },
+ { 72, 0xFFFF, 0xFFFF, 0x000E, 0xFFFF },
+ { 48, 0xFFFF, 0x0005, 0xFFFF, 0x000E },
+ { 74, 0xFFFF, 0x000A, 0xFFFF, 0x0004 },
+ { 46, 0xFFFF, 0x000F, 0xFFFF, 0x000B },
+ { 75, 0xFFFF, 0x0009, 0xFFFF, 0x0018 },
+ { 13, 0xFFFF, 0x000C, 0xFFFF, 0x000A },
+ { 5, 0x000D, 0xFFFF, 0xFFFF, 0x0007 },
+ { 84, 0xFFFF, 0x0008, 0xFFFF, 0x0005 },
+ { 37, 0xFFFF, 0x0006, 0x000C, 0x0010 },
+ { 51, 0x000B, 0xFFFF, 0x000D, 0x0008 },
+ { 23, 0x000C, 0xFFFF, 0x0009, 0xFFFF },
+ { 25, 0x0003, 0x0004, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0x0006 },
+ { 86, 0xFFFF, 0x000B, 0xFFFF, 0xFFFF },
+ { 84, 0xFFFF, 0x0022, 0x0017, 0x0016 },
+ { 51, 0x0020, 0x0014, 0x0024, 0x0015 },
+ { 85, 0x0014, 0x0019, 0xFFFF, 0x0024 },
+ { 33, 0x001C, 0xFFFF, 0x0013, 0x0012 },
+ { 31, 0x0022, 0x0012, 0xFFFF, 0x0017 },
+ { 25, 0x001F, 0x0011, 0xFFFF, 0xFFFF },
+ { 25, 0x0011, 0x0015, 0xFFFF, 0xFFFF },
+ { 2, 0xFFFF, 0x0007, 0xFFFF, 0x001A },
+ { 82, 0xFFFF, 0x006D, 0xFFFF, 0x0013 },
+ { 77, 0xFFFF, 0x0018, 0x0021, 0xFFFF },
+ { 15, 0xFFFF, 0x001A, 0xFFFF, 0xFFFF },
+ { 16, 0xFFFF, 0xFFFF, 0x0014, 0x0020 },
+ { 19, 0xFFFF, 0x0021, 0xFFFF, 0x001F },
+ { 12, 0xFFFF, 0xFFFF, 0x0020, 0x0021 },
+ { 7, 0x0023, 0x001D, 0x0016, 0xFFFF },
+ { 20, 0x001E, 0x001C, 0x0012, 0x0022 },
+ { 17, 0x001A, 0x001E, 0x0022, 0x001D },
+ { 22, 0x0021, 0x0020, 0x0015, 0x0011 },
+ { 24, 0xFFFF, 0xFFFF, 0x001F, 0xFFFF },
+ { 32, 0x0012, 0x0013, 0xFFFF, 0xFFFF },
+ { 87, 0xFFFF, 0x0026, 0xFFFF, 0xFFFF },
+ { 8, 0xFFFF, 0x0027, 0xFFFF, 0x0025 },
+ { 88, 0xFFFF, 0x0035, 0x0037, 0x0026 },
+ { 35, 0xFFFF, 0x0036, 0x0038, 0xFFFF },
+ { 47, 0xFFFF, 0xFFFF, 0x003B, 0xFFFF },
+ { 28, 0x0035, 0x002B, 0x002F, 0x0037 },
+ { 36, 0xFFFF, 0x002C, 0xFFFF, 0x002A },
+ { 78, 0xFFFF, 0xFFFF, 0xFFFF, 0x002B },
+ { 10, 0xFFFF, 0xFFFF, 0xFFFF, 0x002C },
+ { 51, 0x0037, 0x002F, 0x0040, 0x003C },
+ { 38, 0x002A, 0x003D, 0x0041, 0x002E },
+ { 81, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 41, 0xFFFF, 0xFFFF, 0x0069, 0xFFFF },
+ { 50, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 49, 0xFFFF, 0xFFFF, 0x0054, 0xFFFF },
+ { 105, 0xFFFF, 0xFFFF, 0x002A, 0x0027 },
+ { 105, 0xFFFF, 0xFFFF, 0x0039, 0x0028 },
+ { 37, 0x0027, 0x002A, 0x002E, 0x0049 },
+ { 34, 0x0028, 0x0039, 0xFFFF, 0xFFFF },
+ { 51, 0x0036, 0x003A, 0xFFFF, 0x0038 },
+ { 84, 0xFFFF, 0x003B, 0xFFFF, 0x0039 },
+ { 1, 0x0029, 0xFFFF, 0x003E, 0x003A },
+ { 37, 0x0049, 0x002E, 0x003F, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0x002F },
+ { 34, 0x003B, 0x003F, 0xFFFF, 0xFFFF },
+ { 85, 0x003C, 0x0040, 0xFFFF, 0x003E },
+ { 106, 0x002E, 0x0041, 0xFFFF, 0x003F },
+ { 33, 0x002F, 0xFFFF, 0xFFFF, 0x0040 },
+ { 60, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 3, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 11, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 33, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 26, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 0, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 25, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 23, 0xFFFF, 0x0037, 0x003C, 0xFFFF },
+ { 6, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 51, 0x0063, 0x0067, 0x006B, 0x0066 },
+ { 66, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 67, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 62, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 65, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 18, 0x0056, 0x005A, 0x005E, 0xFFFF },
+ { 6, 0xFFFF, 0x0052, 0x0056, 0xFFFF },
+ { 4, 0xFFFF, 0x0053, 0x0057, 0x0051 },
+ { 3, 0xFFFF, 0x0054, 0xFFFF, 0x0052 },
+ { 37, 0x0034, 0x0055, 0x0058, 0x0053 },
+ { 11, 0xFFFF, 0xFFFF, 0x0059, 0x0054 },
+ { 37, 0x0051, 0x0057, 0x0050, 0xFFFF },
+ { 51, 0x0052, 0xFFFF, 0x005A, 0x0056 },
+ { 51, 0x0054, 0x0059, 0x005C, 0xFFFF },
+ { 1, 0x0055, 0xFFFF, 0x005D, 0x0058 },
+ { 106, 0x0057, 0x005B, 0xFFFF, 0x0050 },
+ { 85, 0xFFFF, 0x005C, 0xFFFF, 0x005A },
+ { 37, 0x0058, 0x005D, 0x005F, 0x005B },
+ { 33, 0x0059, 0xFFFF, 0xFFFF, 0x005C },
+ { 51, 0x0050, 0xFFFF, 0x0061, 0xFFFF },
+ { 51, 0x005C, 0xFFFF, 0x0064, 0xFFFF },
+ { 37, 0xFFFF, 0x0061, 0x0065, 0xFFFF },
+ { 51, 0x005E, 0x0062, 0xFFFF, 0x0060 },
+ { 84, 0xFFFF, 0x0063, 0x0066, 0x0061 },
+ { 84, 0xFFFF, 0x0064, 0x004B, 0x0062 },
+ { 33, 0x005F, 0xFFFF, 0x0067, 0x0063 },
+ { 51, 0x0060, 0xFFFF, 0x0068, 0xFFFF },
+ { 37, 0x0062, 0x004B, 0x006A, 0xFFFF },
+ { 1, 0x0064, 0xFFFF, 0x006C, 0x004B },
+ { 34, 0x0065, 0x0069, 0xFFFF, 0xFFFF },
+ { 51, 0x0031, 0x006A, 0xFFFF, 0x0068 },
+ { 85, 0x0066, 0x006B, 0xFFFF, 0x0069 },
+ { 106, 0x004B, 0x006C, 0xFFFF, 0x006A },
+ { 33, 0x0067, 0xFFFF, 0xFFFF, 0x006B },
+ { 55, 0x00C4, 0x00C5, 0xFFFF, 0x0019 },
+ { 52, 0xFFFF, 0x00C1, 0xFFFF, 0x0096 },
+ { 64, 0xFFFF, 0x00BF, 0xFFFF, 0x008C },
+ { 57, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 54, 0x00AF, 0xFFFF, 0x00B7, 0x00AC },
+ { 53, 0x0078, 0xFFFF, 0x0079, 0xFFFF },
+ { 29, 0xFFFF, 0x00BB, 0xFFFF, 0x00C5 },
+ { 69, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 76, 0x00C6, 0xFFFF, 0xFFFF, 0x00B1 },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x0025, 0x0072, 0xFFFF },
+ { 58, 0x0072, 0x007B, 0x00BB, 0xFFFF },
+ { 58, 0xFFFF, 0x007F, 0x007B, 0xFFFF },
+ { 59, 0x007A, 0xFFFF, 0x007C, 0x0079 },
+ { 58, 0x007B, 0x0081, 0x00BC, 0xFFFF },
+ { 58, 0x00BC, 0x0083, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x0085, 0x007F, 0xFFFF },
+ { 59, 0x007E, 0x0086, 0x0080, 0x007A },
+ { 58, 0x007F, 0x00BD, 0x0081, 0xFFFF },
+ { 59, 0x0080, 0x0087, 0x0082, 0x007C },
+ { 58, 0x0081, 0xFFFF, 0x0083, 0x00BC },
+ { 59, 0x0082, 0x0089, 0x0084, 0x007D },
+ { 58, 0x0083, 0x008A, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x008B, 0x0086, 0x007E },
+ { 58, 0x0085, 0x008C, 0x00BD, 0x007F },
+ { 58, 0x00BD, 0x008E, 0x0088, 0x0081 },
+ { 59, 0x0087, 0xFFFF, 0x0089, 0xFFFF },
+ { 58, 0x0088, 0x0090, 0x008A, 0x0083 },
+ { 59, 0x0089, 0x0091, 0xFFFF, 0x0084 },
+ { 58, 0xFFFF, 0x0092, 0x008C, 0x0085 },
+ { 59, 0x008B, 0x006F, 0x008D, 0x0086 },
+ { 58, 0x008C, 0x0093, 0x008E, 0x00BD },
+ { 59, 0x008D, 0xFFFF, 0xFFFF, 0x0087 },
+ { 58, 0xFFFF, 0x00BE, 0x0090, 0xFFFF },
+ { 59, 0x008F, 0x0095, 0x0091, 0x0089 },
+ { 58, 0x0090, 0x0096, 0xFFFF, 0x008A },
+ { 59, 0xFFFF, 0x0098, 0xFFFF, 0x008B },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0x008D },
+ { 58, 0xFFFF, 0x009A, 0x00BE, 0xFFFF },
+ { 58, 0x00BE, 0xFFFF, 0x0096, 0x0090 },
+ { 59, 0x0095, 0x006E, 0x0097, 0x0091 },
+ { 58, 0x0096, 0x009D, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x009E, 0x00BF, 0x0092 },
+ { 58, 0x00BF, 0x00A0, 0x009A, 0xFFFF },
+ { 59, 0x0099, 0xFFFF, 0x009B, 0x0094 },
+ { 58, 0x009A, 0xFFFF, 0x009C, 0xFFFF },
+ { 59, 0x009B, 0x00A2, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0x00A3, 0xFFFF, 0x0097 },
+ { 59, 0xFFFF, 0xFFFF, 0x009F, 0x0098 },
+ { 58, 0x009E, 0x00A4, 0x00A0, 0x00BF },
+ { 59, 0x009F, 0x00A5, 0xFFFF, 0x0099 },
+ { 58, 0xFFFF, 0x00A6, 0x00C0, 0xFFFF },
+ { 58, 0x00C0, 0x00A8, 0xFFFF, 0x009C },
+ { 58, 0x00C1, 0xFFFF, 0xFFFF, 0x009D },
+ { 59, 0xFFFF, 0x00AA, 0x00A5, 0x009F },
+ { 58, 0x00A4, 0x00AB, 0x00A6, 0x00A0 },
+ { 59, 0x00A5, 0x00AC, 0x00A7, 0x00A1 },
+ { 58, 0x00A6, 0xFFFF, 0xFFFF, 0x00C0 },
+ { 59, 0xFFFF, 0x00AD, 0x00A9, 0x00A2 },
+ { 58, 0x00A8, 0x00AE, 0xFFFF, 0x00C1 },
+ { 58, 0xFFFF, 0xFFFF, 0x00AB, 0x00A4 },
+ { 59, 0x00AA, 0x00AF, 0x00AC, 0x00A5 },
+ { 58, 0x00AB, 0x0071, 0x00C2, 0x00A6 },
+ { 58, 0xFFFF, 0x00B0, 0x00AE, 0x00A8 },
+ { 59, 0x00AD, 0xFFFF, 0xFFFF, 0x00A9 },
+ { 58, 0xFFFF, 0x00C3, 0x0071, 0x00AB },
+ { 59, 0xFFFF, 0xFFFF, 0x00B1, 0x00AD },
+ { 58, 0x00B0, 0x0075, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0x00C3, 0xFFFF, 0x00B4, 0xFFFF },
+ { 59, 0x00B3, 0x00BA, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 59, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 58, 0x0071, 0xFFFF, 0xFFFF, 0x00C2 },
+ { 58, 0xFFFF, 0xFFFF, 0x00B9, 0xFFFF },
+ { 59, 0x00B8, 0xFFFF, 0xFFFF, 0x00C3 },
+ { 58, 0xFFFF, 0xFFFF, 0xFFFF, 0x00B4 },
+ { 59, 0x0079, 0xFFFF, 0xFFFF, 0x0073 },
+ { 59, 0x007C, 0x0082, 0x007D, 0xFFFF },
+ { 59, 0x0086, 0x008D, 0x0087, 0x0080 },
+ { 59, 0x0094, 0xFFFF, 0x0095, 0x008F },
+ { 59, 0x0098, 0x009F, 0x0099, 0x006F },
+ { 59, 0x00A1, 0x00A7, 0x00A2, 0xFFFF },
+ { 59, 0xFFFF, 0x00A9, 0x00A3, 0x006E },
+ { 59, 0x00AC, 0x00B7, 0xFFFF, 0xFFFF },
+ { 58, 0xFFFF, 0x00B9, 0x00B3, 0x00AF },
+ { 59, 0xFFFF, 0xFFFF, 0x006D, 0xFFFF },
+ { 58, 0xFFFF, 0x0073, 0xFFFF, 0x006D },
+ { 59, 0xFFFF, 0xFFFF, 0x0075, 0xFFFF },
+ { 94, 0xFFFF, 0x00C8, 0xFFFF, 0xFFFF },
+ { 43, 0x00C9, 0x00CB, 0x00CA, 0x00C7 },
+ { 51, 0xFFFF, 0xFFFF, 0x00C8, 0xFFFF },
+ { 37, 0x00C8, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 79, 0xFFFF, 0xFFFF, 0xFFFF, 0x00C8 },
+ { 80, 0xFFFF, 0xFFFF, 0x00CB, 0x00CD },
+ { 97, 0x00E3, 0x00D4, 0x00CC, 0x00D3 },
+ { 103, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 100, 0xFFFF, 0x00CE, 0x00D5, 0xFFFF },
+ { 98, 0xFFFF, 0xFFFF, 0xFFFF, 0x00D7 },
+ { 101, 0xFFFF, 0x00D2, 0x00CE, 0xFFFF },
+ { 99, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 93, 0x00D5, 0x00CD, 0xFFFF, 0xFFFF },
+ { 93, 0x00D6, 0xFFFF, 0xFFFF, 0x00CD },
+ { 93, 0x00CF, 0x00CE, 0x00D3, 0xFFFF },
+ { 93, 0x00D7, 0xFFFF, 0x00D4, 0x00CE },
+ { 93, 0xFFFF, 0x00D0, 0x00D6, 0x00CE },
+ { 93, 0x00DA, 0x00E3, 0xFFFF, 0xFFFF },
+ { 93, 0x00DB, 0xFFFF, 0xFFFF, 0x00E3 },
+ { 93, 0xFFFF, 0x00E4, 0x00D8, 0x00E2 },
+ { 93, 0xFFFF, 0x00E1, 0x00D9, 0x00E4 },
+ { 93, 0xFFFF, 0x00E4, 0xFFFF, 0x00DF },
+ { 93, 0xFFFF, 0x00E0, 0xFFFF, 0x00E4 },
+ { 93, 0xFFFF, 0xFFFF, 0x00E4, 0xFFFF },
+ { 91, 0xFFFF, 0x00DC, 0xFFFF, 0xFFFF },
+ { 90, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DD },
+ { 92, 0xFFFF, 0xFFFF, 0xFFFF, 0x00DB },
+ { 95, 0xFFFF, 0x00DA, 0xFFFF, 0xFFFF },
+ { 96, 0xFFFF, 0x00D9, 0x00CD, 0x00D8 },
+ { 89, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00E6, 0xFFFF, 0xFFFF },
+ { 102, 0xFFFF, 0x00EA, 0x00E8, 0x00E5 },
+ { 102, 0xFFFF, 0x00E8, 0x00EB, 0xFFFF },
+ { 102, 0x00E6, 0xFFFF, 0xFFFF, 0x00E7 },
+ { 102, 0xFFFF, 0xFFFF, 0x00ED, 0xFFFF },
+ { 102, 0xFFFF, 0xFFFF, 0xFFFF, 0x00E6 },
+ { 102, 0x00E7, 0x00EC, 0x00EF, 0xFFFF },
+ { 102, 0xFFFF, 0x00ED, 0x00F0, 0x00EB },
+ { 102, 0x00E9, 0x00EE, 0x00F1, 0x00EC },
+ { 102, 0xFFFF, 0xFFFF, 0x00F2, 0x00ED },
+ { 102, 0x00EB, 0x00F0, 0xFFFF, 0xFFFF },
+ { 102, 0x00EC, 0x00F1, 0x00F3, 0x00EF },
+ { 102, 0x00ED, 0xFFFF, 0x00F4, 0x00F0 },
+ { 102, 0x00EE, 0xFFFF, 0xFFFF, 0xFFFF },
+ { 102, 0x00F0, 0x00F4, 0xFFFF, 0xFFFF },
+ { 102, 0x00F1, 0x00F5, 0xFFFF, 0x00F3 },
+ { 102, 0xFFFF, 0xFFFF, 0x00CF, 0x00F4 }
+};
+
+static const RoomProvider k1RoomListPC98Provider = { ARRAYSIZE(k1RoomListPC98), k1RoomListPC98 };
+
+static const char *const k1RoomFilenamesPC98[107] = {
+ "CLIFFB",
+ "XEDGEB",
+ "CAVEB",
+ "NCLIFF",
+ "NCLIFFB",
+ "CAVE",
+ "NWCLIFF",
+ "OAKS",
+ "PLATEAU",
+ "POTHUT",
+ "POTION",
+ "NWCLIFB",
+ "SONG",
+ "SORROW",
+ "SPELHUT",
+ "SPELL",
+ "SPRING",
+ "SQUARE",
+ "STUMP",
+ "TEMPLE",
+ "WELL",
+ "WILLOW",
+ "WISE",
+ "XEDGE",
+ "RUBY",
+ "ZROCK",
+ "ZROCKB",
+ "FORESTD",
+ "FOUNTN",
+ "GATECV",
+ "GEMCUT",
+ "CLIFF",
+ "DEAD",
+ "EDGE",
+ "EDGEB",
+ "FALLS",
+ "FORESTC",
+ "FORESTB",
+ "GLADE",
+ "GEMHUT",
+ "ALGAE",
+ "MIX",
+ "BRIDGE",
+ "GRAVE",
+ "HEALER",
+ "HEALHUT",
+ "ALTAR",
+ "BURN",
+ "SICKWIL",
+ "LAGOON",
+ "MAPLE",
+ "FORESTA",
+ "ARCH",
+ "CHASM",
+ "EMCAV",
+ "ENTER",
+ "FLOWERS",
+ "GEMSLOT",
+ "GEN_CAV",
+ "GENCAVB",
+ "GOLDEN",
+ "GOLDENB",
+ "ICE",
+ "MARKET",
+ "MOONCAV",
+ "MSHCAV",
+ "POOL",
+ "SEASONS",
+ "SHRINE",
+ "TREECAV",
+ "EXTGEM",
+ "GEM",
+ "EXTHEAL",
+ "BASE",
+ "TRUNK",
+ "BROKEN",
+ "LAVA",
+ "EXTSPEL",
+ "EXTPOT",
+ "CASTLE",
+ "CGATE",
+ "LEPHOLE",
+ "DRAGON",
+ "XEDGEC",
+ "FNORTH",
+ "FSOUTH",
+ "FGOWEST",
+ "PLTCAVE",
+ "BONKBG",
+ "BALCONY",
+ "DARMS",
+ "BRINS",
+ "ALCHEMY",
+ "GENHALL",
+ "LANDING",
+ "BELROOM",
+ "UPSTAIR",
+ "DNSTAIR",
+ "KITCHEN",
+ "KYRAGEM",
+ "LIBRARY",
+ "FOYER",
+ "CATACOM",
+ "GRTHALL",
+ "FESTSTH",
+ "FWSTSTH",
+ "FSOUTHB"
+};
+
+static const StringListProvider k1RoomFilenamesPC98Provider = { ARRAYSIZE(k1RoomFilenamesPC98), k1RoomFilenamesPC98 };
+
+static const char *const k1CharacterImageFilenamesPC98[20] = {
+ "BRANDON.CPS",
+ "DAPHNE.CPS",
+ "MERITH.CPS",
+ "HERMAN.CPS",
+ "SMALL.CPS",
+ "MALCOM.CPS",
+ "DRINK.CPS",
+ "SHRINK.CPS",
+ "HEALBR1.CPS",
+ "HEALBR2.CPS",
+ "SNOW1A.CPS",
+ "SNOW2A.CPS",
+ "BRANWILL.CPS",
+ "FLUTE1.CPS",
+ "FLUTE2.CPS",
+ "POISON1.CPS",
+ "POISON2.CPS",
+ "TELEKIN.CPS",
+ "BRANSTON.CPS",
+ "POISON.CPS"
+};
+
+static const StringListProvider k1CharacterImageFilenamesPC98Provider = { ARRAYSIZE(k1CharacterImageFilenamesPC98), k1CharacterImageFilenamesPC98 };
+
+static const Shape k1DefaultShapesPC98[166] = {
+ { 0, 0, 0, 3, 48, -12, -48 },
+ { 0, 3, 0, 3, 48, -12, -48 },
+ { 0, 6, 0, 3, 48, -12, -48 },
+ { 0, 9, 0, 3, 48, -12, -48 },
+ { 0, 12, 0, 3, 48, -12, -48 },
+ { 0, 15, 0, 3, 48, -12, -48 },
+ { 0, 18, 0, 3, 48, -12, -48 },
+ { 0, 21, 0, 3, 48, -12, -48 },
+ { 0, 24, 0, 3, 48, -12, -48 },
+ { 0, 27, 0, 3, 48, -12, -48 },
+ { 0, 0, 51, 2, 11, -2, -8 },
+ { 0, 2, 51, 2, 11, -2, -8 },
+ { 0, 4, 51, 2, 11, -2, -8 },
+ { 0, 6, 51, 2, 11, -2, -8 },
+ { 0, 8, 51, 2, 11, -2, -8 },
+ { 0, 10, 51, 2, 11, -2, -8 },
+ { 0, 12, 51, 2, 11, -2, -8 },
+ { 0, 14, 51, 2, 11, -2, -8 },
+ { 0, 16, 51, 2, 11, -2, -8 },
+ { 0, 18, 51, 2, 11, -2, -8 },
+ { 0, 20, 51, 2, 11, -2, -8 },
+ { 0, 22, 51, 2, 11, -2, -8 },
+ { 0, 0, 80, 3, 48, -12, -48 },
+ { 0, 3, 80, 3, 48, -12, -48 },
+ { 0, 6, 80, 3, 48, -12, -48 },
+ { 0, 9, 80, 3, 48, -12, -48 },
+ { 0, 12, 80, 3, 48, -12, -48 },
+ { 0, 15, 80, 3, 48, -12, -48 },
+ { 0, 0, 129, 3, 48, -12, -48 },
+ { 0, 3, 129, 3, 48, -12, -48 },
+ { 0, 6, 129, 3, 48, -12, -48 },
+ { 0, 9, 129, 3, 48, -12, -48 },
+ { 0, 12, 129, 3, 48, -12, -48 },
+ { 0, 15, 129, 3, 48, -12, -48 },
+ { 2, 0, 0, 3, 48, -12, -48 },
+ { 2, 3, 0, 3, 48, -12, -48 },
+ { 2, 6, 0, 3, 48, -12, -48 },
+ { 2, 9, 0, 3, 48, -12, -48 },
+ { 2, 12, 0, 3, 48, -12, -48 },
+ { 2, 15, 0, 3, 48, -12, -48 },
+ { 2, 18, 0, 3, 48, -12, -48 },
+ { 2, 21, 0, 3, 48, -12, -48 },
+ { 2, 24, 0, 3, 48, -12, -48 },
+ { 2, 27, 0, 3, 48, -12, -48 },
+ { 2, 30, 10, 3, 38, -16, -38 },
+ { 2, 27, 48, 4, 40, -8, -40 },
+ { 2, 0, 51, 2, 11, -4, 0 },
+ { 2, 2, 51, 2, 11, -4, 0 },
+ { 2, 4, 51, 2, 11, -4, 0 },
+ { 2, 6, 51, 2, 11, -4, 0 },
+ { 2, 8, 51, 2, 11, -4, 0 },
+ { 2, 10, 51, 2, 11, -4, 0 },
+ { 2, 12, 51, 2, 11, -4, 0 },
+ { 2, 14, 51, 2, 11, -4, 0 },
+ { 2, 16, 51, 2, 11, -4, 0 },
+ { 2, 18, 51, 2, 11, -4, 0 },
+ { 2, 20, 51, 2, 11, -4, 0 },
+ { 2, 22, 51, 2, 11, -4, 0 },
+ { 255, 0, 80, 3, 48, -12, -48 },
+ { 255, 3, 80, 3, 48, -12, -48 },
+ { 255, 6, 80, 3, 48, -12, -48 },
+ { 255, 9, 80, 3, 48, -12, -48 },
+ { 255, 12, 80, 3, 48, -12, -48 },
+ { 255, 15, 80, 3, 48, -12, -48 },
+ { 255, 0, 129, 3, 48, -12, -48 },
+ { 255, 3, 129, 3, 48, -12, -48 },
+ { 255, 6, 129, 3, 48, -12, -48 },
+ { 255, 9, 129, 3, 48, -12, -48 },
+ { 255, 12, 129, 3, 48, -12, -48 },
+ { 255, 15, 129, 3, 48, -12, -48 },
+ { 3, 0, 0, 3, 48, -12, -46 },
+ { 3, 3, 0, 3, 48, -12, -48 },
+ { 3, 6, 0, 3, 48, -12, -48 },
+ { 3, 9, 0, 3, 48, -12, -48 },
+ { 3, 12, 0, 3, 48, -12, -48 },
+ { 3, 15, 0, 3, 48, -12, -48 },
+ { 3, 18, 0, 3, 48, -12, -48 },
+ { 3, 21, 0, 3, 48, -12, -48 },
+ { 3, 24, 0, 3, 48, -12, -48 },
+ { 3, 27, 0, 3, 48, -12, -46 },
+ { 3, 30, 0, 3, 48, -14, -47 },
+ { 3, 39, 199, 1, 1, -12, -48 },
+ { 3, 0, 51, 2, 11, 0, -7 },
+ { 3, 2, 51, 2, 11, 0, -7 },
+ { 3, 4, 51, 2, 11, 0, -7 },
+ { 3, 6, 51, 2, 11, 0, -7 },
+ { 3, 8, 51, 2, 11, 0, -7 },
+ { 3, 10, 51, 2, 11, 0, -7 },
+ { 3, 12, 51, 2, 11, 0, -7 },
+ { 3, 14, 51, 2, 11, 0, -7 },
+ { 3, 16, 51, 2, 11, 0, -7 },
+ { 3, 18, 51, 2, 11, 0, -7 },
+ { 3, 20, 51, 2, 11, 0, -7 },
+ { 3, 22, 51, 2, 11, 0, -7 },
+ { 3, 0, 80, 3, 48, -12, -48 },
+ { 3, 3, 80, 3, 48, -12, -48 },
+ { 3, 6, 80, 3, 48, -12, -48 },
+ { 3, 9, 80, 3, 48, -12, -48 },
+ { 3, 12, 80, 3, 48, -12, -48 },
+ { 3, 15, 80, 3, 48, -12, -48 },
+ { 3, 0, 129, 3, 48, -12, -48 },
+ { 3, 3, 129, 3, 48, -12, -48 },
+ { 3, 6, 129, 3, 48, -12, -48 },
+ { 3, 9, 129, 3, 48, -12, -48 },
+ { 3, 12, 129, 3, 48, -12, -48 },
+ { 3, 15, 129, 3, 48, -12, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 },
+ { 255, 0, 0, 0, 0, 0, 0 }
+};
+
+static const ShapeProvider k1DefaultShapesPC98Provider = { ARRAYSIZE(k1DefaultShapesPC98), k1DefaultShapesPC98 };
+
+static const byte k1AmuleteAnimSeqPC98[42] = {
+ 0x00, 0x01, 0x02, 0x01, 0x03, 0x04, 0x03, 0x01,
+ 0x02, 0x03, 0x04, 0x05, 0x06, 0x05, 0x04, 0x05,
+ 0x07, 0x08, 0x07, 0x08, 0x09, 0x08, 0x09, 0x07,
+ 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D,
+ 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15,
+ 0x16, 0xFF
+};
+
+static const ByteProvider k1AmuleteAnimSeqPC98Provider = { ARRAYSIZE(k1AmuleteAnimSeqPC98), k1AmuleteAnimSeqPC98 };
+
+static const byte k1SpecialPalette1PC98[21] = {
+ 0x36, 0x25, 0x1C, 0x31, 0x21, 0x19, 0x2C, 0x1D,
+ 0x16, 0x27, 0x19, 0x13, 0x22, 0x16, 0x11, 0x1D,
+ 0x12, 0x0D, 0x18, 0x0F, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette1PC98Provider = { ARRAYSIZE(k1SpecialPalette1PC98), k1SpecialPalette1PC98 };
+
+static const byte k1SpecialPalette2PC98[51] = {
+ 0x03, 0x03, 0x00, 0x37, 0x29, 0x1D, 0x33, 0x25,
+ 0x1A, 0x2D, 0x21, 0x17, 0x2A, 0x1D, 0x13, 0x26,
+ 0x19, 0x11, 0x22, 0x16, 0x0E, 0x1E, 0x12, 0x0C,
+ 0x1A, 0x0F, 0x0A, 0x16, 0x0C, 0x08, 0x12, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x2D, 0x1E, 0x13, 0x27,
+ 0x19, 0x0F, 0x22, 0x14, 0x0C, 0x1C, 0x11, 0x0A,
+ 0x17, 0x0C, 0x08
+};
+
+static const ByteProvider k1SpecialPalette2PC98Provider = { ARRAYSIZE(k1SpecialPalette2PC98), k1SpecialPalette2PC98 };
+
+static const byte k1SpecialPalette3PC98[51] = {
+ 0x03, 0x03, 0x00, 0x25, 0x30, 0x1B, 0x24, 0x2C,
+ 0x18, 0x23, 0x29, 0x15, 0x22, 0x25, 0x12, 0x21,
+ 0x22, 0x11, 0x1F, 0x1D, 0x0D, 0x1B, 0x18, 0x0B,
+ 0x18, 0x13, 0x0A, 0x14, 0x0E, 0x08, 0x11, 0x0A,
+ 0x05, 0x0E, 0x08, 0x05, 0x21, 0x22, 0x11, 0x1D,
+ 0x1C, 0x0C, 0x19, 0x15, 0x0A, 0x15, 0x0F, 0x08,
+ 0x11, 0x0A, 0x05
+};
+
+static const ByteProvider k1SpecialPalette3PC98Provider = { ARRAYSIZE(k1SpecialPalette3PC98), k1SpecialPalette3PC98 };
+
+static const byte k1SpecialPalette4PC98[51] = {
+ 0x06, 0x03, 0x01, 0x33, 0x25, 0x0A, 0x2F, 0x21,
+ 0x0A, 0x2B, 0x1D, 0x08, 0x28, 0x1A, 0x08, 0x24,
+ 0x17, 0x06, 0x21, 0x22, 0x06, 0x1D, 0x11, 0x05,
+ 0x19, 0x0E, 0x05, 0x16, 0x0B, 0x03, 0x12, 0x0A,
+ 0x03, 0x0F, 0x08, 0x03, 0x28, 0x1A, 0x08, 0x22,
+ 0x15, 0x05, 0x1D, 0x11, 0x05, 0x17, 0x0C, 0x03,
+ 0x12, 0x0A, 0x03
+};
+
+static const ByteProvider k1SpecialPalette4PC98Provider = { ARRAYSIZE(k1SpecialPalette4PC98), k1SpecialPalette4PC98 };
+
+static const byte k1SpecialPalette5PC98[51] = {
+ 0x03, 0x03, 0x00, 0x2A, 0x1D, 0x13, 0x27, 0x1A,
+ 0x11, 0x24, 0x18, 0x0F, 0x21, 0x15, 0x0D, 0x1E,
+ 0x13, 0x0C, 0x1C, 0x11, 0x0A, 0x19, 0x0F, 0x0A,
+ 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06, 0x11, 0x08,
+ 0x05, 0x0E, 0x08, 0x05, 0x1C, 0x11, 0x0A, 0x19,
+ 0x0E, 0x08, 0x16, 0x0C, 0x08, 0x13, 0x0A, 0x06,
+ 0x11, 0x08, 0x05
+};
+
+static const ByteProvider k1SpecialPalette5PC98Provider = { ARRAYSIZE(k1SpecialPalette5PC98), k1SpecialPalette5PC98 };
+
+static const byte k1SpecialPalette6PC98[51] = {
+ 0x00, 0x08, 0x01, 0x00, 0x1E, 0x00, 0x00, 0x1B,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x17, 0x00, 0x00,
+ 0x14, 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x0A,
+ 0x00, 0x00, 0x08, 0x00, 0x13, 0x21, 0x0F, 0x11,
+ 0x1F, 0x0D, 0x0E, 0x1D, 0x0C, 0x0C, 0x1B, 0x0B,
+ 0x0A, 0x19, 0x0A
+};
+
+static const ByteProvider k1SpecialPalette6PC98Provider = { ARRAYSIZE(k1SpecialPalette6PC98), k1SpecialPalette6PC98 };
+
+static const byte k1SpecialPalette7PC98[54] = {
+ 0x05, 0x2B, 0x00, 0x00, 0x22, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x16, 0x01, 0x00, 0x12, 0x03, 0x00,
+ 0x0F, 0x01, 0x00, 0x0B, 0x03, 0x0A, 0x19, 0x0A,
+ 0x2D, 0x2D, 0x32, 0x29, 0x29, 0x2D, 0x25, 0x25,
+ 0x2B, 0x1F, 0x1F, 0x26, 0x1B, 0x1B, 0x22, 0x14,
+ 0x16, 0x1D, 0x11, 0x11, 0x18, 0x0D, 0x0D, 0x14,
+ 0x0A, 0x0A, 0x0F, 0x06, 0x06, 0x0B
+};
+
+static const ByteProvider k1SpecialPalette7PC98Provider = { ARRAYSIZE(k1SpecialPalette7PC98), k1SpecialPalette7PC98 };
+
+static const byte k1SpecialPalette8PC98[54] = {
+ 0x12, 0x37, 0x3F, 0x14, 0x31, 0x3F, 0x14, 0x29,
+ 0x3F, 0x14, 0x22, 0x3F, 0x14, 0x1B, 0x3F, 0x14,
+ 0x14, 0x3F, 0x0E, 0x0F, 0x37, 0x14, 0x29, 0x3F,
+ 0x2F, 0x3F, 0x3D, 0x26, 0x3F, 0x3F, 0x15, 0x3F,
+ 0x3F, 0x14, 0x3B, 0x3F, 0x12, 0x37, 0x3F, 0x14,
+ 0x31, 0x3F, 0x14, 0x29, 0x3F, 0x14, 0x22, 0x3F,
+ 0x14, 0x1B, 0x3F, 0x14, 0x14, 0x3F
+};
+
+static const ByteProvider k1SpecialPalette8PC98Provider = { ARRAYSIZE(k1SpecialPalette8PC98), k1SpecialPalette8PC98 };
+
+static const byte k1SpecialPalette9PC98[45] = {
+ 0x36, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2F, 0x00,
+ 0x00, 0x2C, 0x00, 0x00, 0x29, 0x00, 0x00, 0x26,
+ 0x00, 0x00, 0x23, 0x00, 0x00, 0x20, 0x00, 0x00,
+ 0x1C, 0x00, 0x00, 0x19, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x0D,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette9PC98Provider = { ARRAYSIZE(k1SpecialPalette9PC98), k1SpecialPalette9PC98 };
+
+static const byte k1SpecialPalette10PC98[45] = {
+ 0x29, 0x00, 0x00, 0x26, 0x00, 0x00, 0x24, 0x00,
+ 0x00, 0x22, 0x00, 0x00, 0x20, 0x00, 0x00, 0x1E,
+ 0x00, 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00,
+ 0x17, 0x00, 0x00, 0x15, 0x00, 0x00, 0x12, 0x00,
+ 0x00, 0x11, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x0C,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette10PC98Provider = { ARRAYSIZE(k1SpecialPalette10PC98), k1SpecialPalette10PC98 };
+
+static const byte k1SpecialPalette11PC98[45] = {
+ 0x20, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00,
+ 0x00, 0x1B, 0x00, 0x00, 0x19, 0x00, 0x00, 0x18,
+ 0x00, 0x00, 0x16, 0x00, 0x00, 0x15, 0x00, 0x00,
+ 0x13, 0x00, 0x00, 0x11, 0x00, 0x00, 0x11, 0x00,
+ 0x00, 0x0E, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette11PC98Provider = { ARRAYSIZE(k1SpecialPalette11PC98), k1SpecialPalette11PC98 };
+
+static const byte k1SpecialPalette12PC98[45] = {
+ 0x19, 0x00, 0x00, 0x18, 0x00, 0x00, 0x16, 0x00,
+ 0x00, 0x15, 0x00, 0x00, 0x14, 0x00, 0x00, 0x13,
+ 0x00, 0x00, 0x12, 0x00, 0x00, 0x11, 0x00, 0x00,
+ 0x11, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0E, 0x00,
+ 0x00, 0x0D, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0B,
+ 0x00, 0x00, 0x0A, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette12PC98Provider = { ARRAYSIZE(k1SpecialPalette12PC98), k1SpecialPalette12PC98 };
+
+static const byte k1SpecialPalette13PC98[45] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette13PC98Provider = { ARRAYSIZE(k1SpecialPalette13PC98), k1SpecialPalette13PC98 };
+
+static const byte k1SpecialPalette14PC98[60] = {
+ 0x0E, 0x28, 0x3F, 0x0C, 0x24, 0x3B, 0x0A, 0x20,
+ 0x38, 0x0A, 0x1C, 0x34, 0x08, 0x19, 0x31, 0x08,
+ 0x15, 0x2D, 0x05, 0x13, 0x2A, 0x05, 0x11, 0x27,
+ 0x03, 0x0D, 0x24, 0x03, 0x0A, 0x20, 0x03, 0x08,
+ 0x1D, 0x01, 0x06, 0x19, 0x01, 0x05, 0x16, 0x00,
+ 0x03, 0x13, 0x00, 0x01, 0x0F, 0x00, 0x01, 0x0C,
+ 0x00, 0x00, 0x08, 0x00, 0x00, 0x05, 0x00, 0x00,
+ 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette14PC98Provider = { ARRAYSIZE(k1SpecialPalette14PC98), k1SpecialPalette14PC98 };
+
+static const byte k1SpecialPalette15PC98[45] = {
+ 0x24, 0x00, 0x39, 0x21, 0x00, 0x36, 0x1F, 0x00,
+ 0x32, 0x1C, 0x00, 0x2D, 0x1A, 0x00, 0x2A, 0x17,
+ 0x00, 0x26, 0x15, 0x00, 0x22, 0x12, 0x00, 0x1E,
+ 0x11, 0x00, 0x1A, 0x0E, 0x00, 0x16, 0x0B, 0x00,
+ 0x12, 0x0A, 0x00, 0x0F, 0x06, 0x00, 0x0B, 0x05,
+ 0x00, 0x08, 0x01, 0x00, 0x03
+};
+
+static const ByteProvider k1SpecialPalette15PC98Provider = { ARRAYSIZE(k1SpecialPalette15PC98), k1SpecialPalette15PC98 };
+
+static const byte k1SpecialPalette16PC98[33] = {
+ 0x00, 0x3F, 0x3F, 0x00, 0x38, 0x38, 0x00, 0x34,
+ 0x34, 0x00, 0x30, 0x30, 0x00, 0x2D, 0x2D, 0x00,
+ 0x29, 0x29, 0x00, 0x25, 0x25, 0x00, 0x1F, 0x1F,
+ 0x00, 0x1B, 0x1B, 0x00, 0x16, 0x16, 0x00, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette16PC98Provider = { ARRAYSIZE(k1SpecialPalette16PC98), k1SpecialPalette16PC98 };
+
+static const byte k1SpecialPalette17PC98[33] = {
+ 0x3B, 0x3B, 0x3B, 0x36, 0x36, 0x36, 0x32, 0x32,
+ 0x32, 0x2D, 0x2D, 0x2D, 0x2A, 0x2A, 0x2A, 0x26,
+ 0x26, 0x26, 0x21, 0x21, 0x21, 0x1D, 0x1D, 0x1D,
+ 0x19, 0x19, 0x19, 0x15, 0x15, 0x15, 0x11, 0x11,
+ 0x11
+};
+
+static const ByteProvider k1SpecialPalette17PC98Provider = { ARRAYSIZE(k1SpecialPalette17PC98), k1SpecialPalette17PC98 };
+
+static const byte k1SpecialPalette18PC98[21] = {
+ 0x0F, 0x23, 0x1C, 0x2A, 0x36, 0x3F, 0x24, 0x2F,
+ 0x38, 0x1F, 0x2A, 0x32, 0x1A, 0x24, 0x2B, 0x15,
+ 0x1E, 0x25, 0x11, 0x19, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette18PC98Provider = { ARRAYSIZE(k1SpecialPalette18PC98), k1SpecialPalette18PC98 };
+
+static const byte k1SpecialPalette19PC98[21] = {
+ 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00,
+ 0x38, 0x00, 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00,
+ 0x00, 0x25, 0x00, 0x00, 0x1F
+};
+
+static const ByteProvider k1SpecialPalette19PC98Provider = { ARRAYSIZE(k1SpecialPalette19PC98), k1SpecialPalette19PC98 };
+
+static const byte k1SpecialPalette20PC98[21] = {
+ 0x26, 0x1B, 0x1B, 0x3F, 0x34, 0x34, 0x3B, 0x2F,
+ 0x2F, 0x39, 0x2B, 0x2B, 0x36, 0x26, 0x27, 0x33,
+ 0x22, 0x23, 0x31, 0x1F, 0x20
+};
+
+static const ByteProvider k1SpecialPalette20PC98Provider = { ARRAYSIZE(k1SpecialPalette20PC98), k1SpecialPalette20PC98 };
+
+static const byte k1SpecialPalette21PC98[21] = {
+ 0x1C, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x38, 0x00,
+ 0x00, 0x32, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x25,
+ 0x00, 0x00, 0x1F, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette21PC98Provider = { ARRAYSIZE(k1SpecialPalette21PC98), k1SpecialPalette21PC98 };
+
+static const byte k1SpecialPalette22PC98[21] = {
+ 0x1F, 0x1F, 0x0C, 0x3F, 0x3F, 0x21, 0x3B, 0x3B,
+ 0x1F, 0x37, 0x37, 0x1D, 0x34, 0x34, 0x1B, 0x30,
+ 0x30, 0x19, 0x2D, 0x2D, 0x17
+};
+
+static const ByteProvider k1SpecialPalette22PC98Provider = { ARRAYSIZE(k1SpecialPalette22PC98), k1SpecialPalette22PC98 };
+
+static const byte k1SpecialPalette23PC98[21] = {
+ 0x1F, 0x1F, 0x00, 0x3F, 0x3F, 0x00, 0x3B, 0x3B,
+ 0x00, 0x37, 0x37, 0x00, 0x34, 0x34, 0x00, 0x30,
+ 0x30, 0x00, 0x2D, 0x2D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette23PC98Provider = { ARRAYSIZE(k1SpecialPalette23PC98), k1SpecialPalette23PC98 };
+
+static const byte k1SpecialPalette24PC98[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D,
+ 0x0D, 0x1B, 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18,
+ 0x0A, 0x08, 0x17, 0x08, 0x08, 0x16, 0x08, 0x08,
+ 0x15, 0x06, 0x06, 0x14, 0x06, 0x06, 0x11, 0x06
+};
+
+static const ByteProvider k1SpecialPalette24PC98Provider = { ARRAYSIZE(k1SpecialPalette24PC98), k1SpecialPalette24PC98 };
+
+static const byte k1SpecialPalette25PC98[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x36, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x1E, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D, 0x1B,
+ 0x0C, 0x0A, 0x19, 0x0A, 0x0A, 0x18, 0x0A, 0x0A,
+ 0x18, 0x0A, 0x0A, 0x18, 0x0A, 0x06, 0x14, 0x06
+};
+
+static const ByteProvider k1SpecialPalette25PC98Provider = { ARRAYSIZE(k1SpecialPalette25PC98), k1SpecialPalette25PC98 };
+
+static const byte k1SpecialPalette26PC98[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x11,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0A,
+ 0x19, 0x0A, 0x0A, 0x19, 0x0A, 0x06, 0x13, 0x06
+};
+
+static const ByteProvider k1SpecialPalette26PC98Provider = { ARRAYSIZE(k1SpecialPalette26PC98), k1SpecialPalette26PC98 };
+
+static const byte k1SpecialPalette27PC98[48] = {
+ 0x31, 0x38, 0x23, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x18,
+ 0x26, 0x13, 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E, 0x1D,
+ 0x0D, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x19, 0x0C, 0x0D, 0x19, 0x0C, 0x08, 0x16, 0x08
+};
+
+static const ByteProvider k1SpecialPalette27PC98Provider = { ARRAYSIZE(k1SpecialPalette27PC98), k1SpecialPalette27PC98 };
+
+static const byte k1SpecialPalette28PC98[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x0E, 0x1D, 0x0D, 0x0D, 0x1B, 0x0C, 0x0D,
+ 0x1B, 0x0C, 0x0D, 0x1B, 0x0C, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette28PC98Provider = { ARRAYSIZE(k1SpecialPalette28PC98), k1SpecialPalette28PC98 };
+
+static const byte k1SpecialPalette29PC98[48] = {
+ 0x36, 0x38, 0x2C, 0x31, 0x38, 0x23, 0x2A, 0x33,
+ 0x1E, 0x24, 0x2F, 0x1A, 0x19, 0x2A, 0x16, 0x1E,
+ 0x2A, 0x16, 0x18, 0x26, 0x13, 0x13, 0x21, 0x0F,
+ 0x13, 0x21, 0x0F, 0x13, 0x21, 0x0F, 0x13, 0x21,
+ 0x0F, 0x13, 0x21, 0x0F, 0x0E, 0x1D, 0x0D, 0x0E,
+ 0x1D, 0x0D, 0x0E, 0x1D, 0x0D, 0x08, 0x17, 0x08
+};
+
+static const ByteProvider k1SpecialPalette29PC98Provider = { ARRAYSIZE(k1SpecialPalette29PC98), k1SpecialPalette29PC98 };
+
+static const byte k1SpecialPalette30PC98[60] = {
+ 0x1E, 0x1D, 0x3F, 0x1A, 0x19, 0x3F, 0x14, 0x12,
+ 0x3B, 0x12, 0x11, 0x37, 0x11, 0x11, 0x33, 0x0F,
+ 0x0E, 0x2F, 0x0E, 0x0D, 0x2C, 0x0D, 0x0C, 0x28,
+ 0x0B, 0x0B, 0x24, 0x0A, 0x0A, 0x20, 0x0A, 0x0A,
+ 0x1D, 0x05, 0x05, 0x18, 0x03, 0x03, 0x13, 0x01,
+ 0x01, 0x11, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x05,
+ 0x00, 0x0A, 0x1A, 0x00, 0x0F, 0x13, 0x00, 0x14,
+ 0x11, 0x0F, 0x0D, 0x00
+};
+
+static const ByteProvider k1SpecialPalette30PC98Provider = { ARRAYSIZE(k1SpecialPalette30PC98), k1SpecialPalette30PC98 };
+
+static const byte k1SpecialPalette31PC98[39] = {
+ 0x2B, 0x19, 0x34, 0x27, 0x17, 0x30, 0x23, 0x14,
+ 0x2C, 0x20, 0x12, 0x27, 0x1C, 0x11, 0x23, 0x18,
+ 0x0E, 0x1E, 0x15, 0x0C, 0x1A, 0x11, 0x0A, 0x15,
+ 0x0E, 0x08, 0x11, 0x0A, 0x05, 0x0C, 0x06, 0x03,
+ 0x08, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette31PC98Provider = { ARRAYSIZE(k1SpecialPalette31PC98), k1SpecialPalette31PC98 };
+
+static const byte k1SpecialPalette32PC98[39] = {
+ 0x12, 0x12, 0x16, 0x11, 0x11, 0x14, 0x0F, 0x0F,
+ 0x12, 0x0D, 0x0D, 0x11, 0x0B, 0x0B, 0x0E, 0x0A,
+ 0x0A, 0x0C, 0x08, 0x08, 0x0A, 0x08, 0x08, 0x08,
+ 0x05, 0x05, 0x06, 0x05, 0x05, 0x05, 0x03, 0x03,
+ 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k1SpecialPalette32PC98Provider = { ARRAYSIZE(k1SpecialPalette32PC98), k1SpecialPalette32PC98 };
+
+static const byte k1SpecialPalette33PC98[60] = {
+ 0x3F, 0x3D, 0x2F, 0x3F, 0x3D, 0x29, 0x3F, 0x3D,
+ 0x23, 0x3F, 0x3D, 0x1D, 0x3F, 0x3B, 0x17, 0x3F,
+ 0x3B, 0x11, 0x3F, 0x3B, 0x0B, 0x3F, 0x3B, 0x05,
+ 0x3F, 0x3B, 0x00, 0x3D, 0x38, 0x00, 0x3B, 0x34,
+ 0x00, 0x39, 0x33, 0x00, 0x39, 0x30, 0x00, 0x37,
+ 0x2D, 0x00, 0x36, 0x2B, 0x00, 0x34, 0x28, 0x00,
+ 0x33, 0x26, 0x00, 0x32, 0x24, 0x00, 0x30, 0x22,
+ 0x00, 0x2F, 0x20, 0x00
+};
+
+static const ByteProvider k1SpecialPalette33PC98Provider = { ARRAYSIZE(k1SpecialPalette33PC98), k1SpecialPalette33PC98 };
+
+static const Shape k1Healing1ShapesPC98[22] = {
+ { 8, 0, 0, 3, 48, -12, -48 },
+ { 8, 3, 0, 3, 48, -12, -48 },
+ { 8, 6, 0, 3, 48, -12, -48 },
+ { 8, 9, 0, 3, 48, -12, -48 },
+ { 8, 12, 0, 3, 48, -12, -48 },
+ { 8, 15, 0, 3, 48, -12, -48 },
+ { 8, 18, 0, 3, 48, -12, -48 },
+ { 8, 21, 0, 3, 48, -12, -48 },
+ { 8, 24, 0, 3, 48, -12, -48 },
+ { 8, 27, 0, 3, 48, -12, -48 },
+ { 8, 30, 0, 3, 48, -12, -48 },
+ { 8, 33, 0, 3, 48, -12, -48 },
+ { 8, 0, 48, 3, 48, -12, -48 },
+ { 8, 3, 48, 3, 48, -12, -48 },
+ { 8, 6, 48, 3, 48, -12, -48 },
+ { 8, 9, 48, 3, 48, -12, -48 },
+ { 8, 12, 48, 3, 48, -12, -48 },
+ { 8, 15, 48, 3, 48, -12, -48 },
+ { 8, 18, 48, 3, 48, -12, -48 },
+ { 8, 21, 48, 3, 48, -12, -48 },
+ { 8, 24, 48, 3, 48, -12, -48 },
+ { 8, 27, 48, 3, 48, -12, -48 }
+};
+
+static const ShapeProvider k1Healing1ShapesPC98Provider = { ARRAYSIZE(k1Healing1ShapesPC98), k1Healing1ShapesPC98 };
+
+static const Shape k1Healing2ShapesPC98[30] = {
+ { 9, 0, 0, 3, 48, -11, -48 },
+ { 9, 3, 0, 3, 48, -11, -48 },
+ { 9, 6, 0, 3, 48, -11, -48 },
+ { 9, 9, 0, 3, 48, -11, -48 },
+ { 9, 12, 0, 3, 48, -11, -48 },
+ { 9, 15, 0, 3, 48, -11, -48 },
+ { 9, 18, 0, 3, 48, -11, -48 },
+ { 9, 21, 0, 3, 48, -11, -48 },
+ { 9, 24, 0, 3, 48, -11, -48 },
+ { 9, 27, 0, 3, 48, -11, -48 },
+ { 9, 30, 0, 3, 48, -11, -48 },
+ { 9, 33, 0, 3, 48, -11, -48 },
+ { 9, 0, 48, 3, 48, -11, -48 },
+ { 9, 3, 48, 3, 48, -11, -48 },
+ { 9, 6, 48, 3, 48, -11, -48 },
+ { 9, 9, 48, 3, 48, -11, -48 },
+ { 9, 12, 48, 3, 48, -11, -48 },
+ { 9, 15, 48, 3, 48, -11, -48 },
+ { 9, 18, 48, 3, 48, -11, -48 },
+ { 9, 21, 48, 3, 48, -11, -48 },
+ { 9, 24, 48, 3, 48, -11, -48 },
+ { 9, 27, 48, 3, 48, -11, -48 },
+ { 9, 30, 48, 3, 48, -11, -48 },
+ { 9, 33, 48, 3, 48, -11, -48 },
+ { 9, 0, 96, 3, 48, -11, -48 },
+ { 9, 3, 96, 3, 48, -11, -48 },
+ { 9, 6, 96, 3, 48, -11, -48 },
+ { 9, 9, 96, 3, 48, -11, -48 },
+ { 9, 12, 96, 3, 48, -11, -48 },
+ { 9, 15, 96, 3, 48, -11, -48 }
+};
+
+static const ShapeProvider k1Healing2ShapesPC98Provider = { ARRAYSIZE(k1Healing2ShapesPC98), k1Healing2ShapesPC98 };
+
+static const Shape k1PoisonDeathShapesPC98[20] = {
+ { 19, 0, 0, 8, 48, -31, -48 },
+ { 19, 8, 0, 8, 48, -31, -48 },
+ { 19, 16, 0, 8, 48, -31, -48 },
+ { 19, 24, 0, 8, 48, -31, -48 },
+ { 19, 32, 0, 8, 48, -31, -48 },
+ { 19, 0, 48, 8, 48, -31, -48 },
+ { 19, 8, 48, 8, 48, -31, -48 },
+ { 19, 16, 48, 8, 48, -31, -48 },
+ { 19, 24, 48, 8, 48, -31, -48 },
+ { 19, 32, 48, 8, 48, -31, -48 },
+ { 19, 0, 96, 8, 48, -31, -48 },
+ { 19, 8, 96, 8, 48, -31, -48 },
+ { 19, 16, 96, 8, 48, -31, -48 },
+ { 19, 24, 96, 8, 48, -31, -48 },
+ { 19, 32, 96, 8, 48, -31, -48 },
+ { 19, 0, 144, 8, 48, -31, -48 },
+ { 19, 8, 144, 8, 48, -31, -48 },
+ { 19, 16, 144, 8, 48, -31, -48 },
+ { 19, 24, 144, 8, 48, -31, -48 },
+ { 19, 32, 144, 8, 48, -31, -48 }
+};
+
+static const ShapeProvider k1PoisonDeathShapesPC98Provider = { ARRAYSIZE(k1PoisonDeathShapesPC98), k1PoisonDeathShapesPC98 };
+
+static const Shape k1FluteShapesPC98[36] = {
+ { 13, 0, 0, 3, 75, -12, -75 },
+ { 13, 3, 0, 3, 75, -12, -75 },
+ { 13, 6, 0, 3, 75, -12, -75 },
+ { 13, 9, 0, 3, 75, -12, -75 },
+ { 13, 12, 0, 3, 75, -12, -75 },
+ { 13, 15, 0, 3, 75, -12, -75 },
+ { 13, 18, 0, 3, 75, -12, -75 },
+ { 13, 21, 0, 3, 75, -12, -75 },
+ { 13, 24, 0, 3, 75, -12, -75 },
+ { 13, 27, 0, 3, 75, -12, -75 },
+ { 13, 30, 0, 3, 75, -12, -75 },
+ { 13, 33, 0, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 13, 0, 75, 3, 75, -12, -75 },
+ { 13, 3, 75, 3, 75, -12, -75 },
+ { 13, 6, 75, 3, 75, -12, -75 },
+ { 13, 9, 75, 3, 75, -12, -75 },
+ { 13, 12, 75, 3, 75, -12, -75 },
+ { 13, 15, 75, 3, 75, -12, -75 },
+ { 13, 18, 75, 3, 75, -12, -75 },
+ { 13, 21, 75, 3, 75, -12, -75 },
+ { 13, 24, 75, 3, 75, -12, -75 },
+ { 13, 27, 75, 3, 75, -12, -75 },
+ { 13, 30, 75, 3, 75, -12, -75 },
+ { 13, 33, 75, 3, 75, -12, -75 },
+ { 13, 36, 75, 3, 75, -12, -75 },
+ { 14, 0, 0, 3, 75, -12, -75 },
+ { 14, 3, 0, 3, 75, -12, -75 },
+ { 14, 6, 0, 3, 75, -12, -75 },
+ { 14, 9, 0, 3, 75, -12, -75 },
+ { 14, 12, 0, 3, 75, -12, -75 },
+ { 14, 15, 0, 3, 75, -12, -75 },
+ { 14, 18, 0, 3, 75, -12, -75 },
+ { 14, 21, 0, 3, 75, -12, -75 },
+ { 14, 24, 0, 3, 75, -12, -75 },
+ { 14, 27, 0, 3, 75, -12, -75 }
+};
+
+static const ShapeProvider k1FluteShapesPC98Provider = { ARRAYSIZE(k1FluteShapesPC98), k1FluteShapesPC98 };
+
+static const Shape k1Winter1ShapesPC98[7] = {
+ { 10, 5, 0, 5, 66, -20, -65 },
+ { 10, 10, 0, 5, 66, -20, -65 },
+ { 10, 15, 0, 5, 66, -20, -65 },
+ { 10, 20, 0, 5, 66, -20, -65 },
+ { 10, 25, 0, 5, 66, -20, -65 },
+ { 10, 30, 0, 5, 66, -20, -65 },
+ { 10, 35, 0, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter1ShapesPC98Provider = { ARRAYSIZE(k1Winter1ShapesPC98), k1Winter1ShapesPC98 };
+
+static const Shape k1Winter2ShapesPC98[35] = {
+ { 10, 0, 66, 5, 66, -20, -65 },
+ { 10, 5, 66, 5, 66, -20, -65 },
+ { 10, 10, 66, 5, 66, -20, -65 },
+ { 10, 15, 66, 5, 66, -20, -65 },
+ { 10, 20, 66, 5, 66, -20, -65 },
+ { 10, 25, 66, 5, 66, -20, -65 },
+ { 10, 30, 66, 5, 66, -20, -65 },
+ { 10, 35, 66, 5, 66, -20, -65 },
+ { 10, 0, 132, 5, 66, -20, -65 },
+ { 10, 5, 132, 5, 66, -20, -65 },
+ { 10, 10, 132, 5, 66, -20, -65 },
+ { 10, 15, 132, 5, 66, -20, -65 },
+ { 10, 20, 132, 5, 66, -20, -65 },
+ { 10, 25, 132, 5, 66, -20, -65 },
+ { 10, 30, 132, 5, 66, -20, -65 },
+ { 10, 35, 132, 5, 66, -20, -65 },
+ { 11, 0, 0, 5, 66, -20, -65 },
+ { 11, 5, 0, 5, 66, -20, -65 },
+ { 11, 10, 0, 5, 66, -20, -65 },
+ { 11, 15, 0, 5, 66, -20, -65 },
+ { 11, 20, 0, 5, 66, -20, -65 },
+ { 11, 25, 0, 5, 66, -20, -65 },
+ { 11, 30, 0, 5, 66, -20, -65 },
+ { 11, 35, 0, 5, 66, -20, -65 },
+ { 11, 0, 66, 5, 66, -20, -65 },
+ { 11, 5, 66, 5, 66, -20, -65 },
+ { 11, 10, 66, 5, 66, -20, -65 },
+ { 11, 15, 66, 5, 66, -20, -65 },
+ { 11, 20, 66, 5, 66, -20, -65 },
+ { 11, 25, 66, 5, 66, -20, -65 },
+ { 11, 30, 66, 5, 66, -20, -65 },
+ { 11, 35, 66, 5, 66, -20, -65 },
+ { 11, 0, 132, 5, 66, -20, -65 },
+ { 11, 5, 132, 5, 66, -20, -65 },
+ { 11, 10, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter2ShapesPC98Provider = { ARRAYSIZE(k1Winter2ShapesPC98), k1Winter2ShapesPC98 };
+
+static const Shape k1Winter3ShapesPC98[4] = {
+ { 11, 15, 132, 5, 66, -20, -65 },
+ { 11, 20, 132, 5, 66, -20, -65 },
+ { 11, 25, 132, 5, 66, -20, -65 },
+ { 11, 30, 132, 5, 66, -20, -65 }
+};
+
+static const ShapeProvider k1Winter3ShapesPC98Provider = { ARRAYSIZE(k1Winter3ShapesPC98), k1Winter3ShapesPC98 };
+
+static const Shape k1DrinkShapesPC98[15] = {
+ { 6, 0, 0, 4, 48, -20, -48 },
+ { 6, 4, 0, 4, 48, -20, -48 },
+ { 6, 8, 0, 4, 48, -20, -48 },
+ { 6, 12, 0, 4, 48, -20, -48 },
+ { 6, 16, 0, 4, 48, -20, -48 },
+ { 6, 20, 0, 5, 48, -20, -48 },
+ { 6, 0, 48, 5, 54, -20, -54 },
+ { 6, 5, 48, 5, 54, -20, -54 },
+ { 6, 10, 48, 5, 54, -20, -54 },
+ { 7, 0, 0, 3, 43, -12, -43 },
+ { 7, 3, 3, 2, 40, -8, -40 },
+ { 7, 5, 7, 2, 36, -8, -36 },
+ { 7, 7, 10, 2, 33, -8, -33 },
+ { 7, 9, 12, 2, 31, -8, -31 },
+ { 7, 11, 15, 2, 28, -8, -28 }
+};
+
+static const ShapeProvider k1DrinkShapesPC98Provider = { ARRAYSIZE(k1DrinkShapesPC98), k1DrinkShapesPC98 };
+
+static const Shape k1WispShapesPC98[26] = {
+ { 12, 0, 0, 5, 48, -20, -48 },
+ { 12, 5, 0, 5, 48, -20, -48 },
+ { 12, 10, 0, 5, 48, -20, -48 },
+ { 12, 15, 0, 5, 48, -20, -48 },
+ { 12, 20, 0, 5, 48, -20, -48 },
+ { 12, 25, 0, 5, 48, -20, -48 },
+ { 12, 30, 0, 5, 48, -20, -48 },
+ { 12, 35, 0, 5, 48, -20, -48 },
+ { 12, 0, 48, 5, 48, -20, -48 },
+ { 12, 5, 48, 5, 48, -20, -48 },
+ { 12, 10, 48, 5, 48, -20, -48 },
+ { 12, 15, 48, 5, 48, -20, -48 },
+ { 12, 20, 48, 5, 48, -20, -48 },
+ { 12, 25, 48, 5, 48, -20, -48 },
+ { 12, 30, 48, 5, 48, -20, -48 },
+ { 12, 35, 48, 5, 48, -20, -48 },
+ { 12, 0, 96, 5, 29, -20, -42 },
+ { 12, 5, 96, 5, 29, -20, -42 },
+ { 12, 10, 96, 5, 29, -20, -42 },
+ { 12, 15, 96, 5, 29, -20, -42 },
+ { 12, 20, 96, 5, 29, -20, -42 },
+ { 12, 25, 96, 5, 29, -20, -42 },
+ { 12, 30, 96, 5, 29, -20, -42 },
+ { 12, 35, 96, 5, 29, -20, -42 },
+ { 12, 0, 125, 5, 29, -20, -42 },
+ { 12, 5, 125, 5, 29, -20, -42 }
+};
+
+static const ShapeProvider k1WispShapesPC98Provider = { ARRAYSIZE(k1WispShapesPC98), k1WispShapesPC98 };
+
+static const Shape k1MagicAnimShapesPC98[5] = {
+ { 17, 0, 0, 8, 49, -32, -49 },
+ { 17, 8, 0, 8, 49, -32, -49 },
+ { 17, 16, 0, 8, 49, -32, -49 },
+ { 17, 24, 0, 8, 49, -32, -49 },
+ { 17, 32, 0, 8, 49, -32, -49 }
+};
+
+static const ShapeProvider k1MagicAnimShapesPC98Provider = { ARRAYSIZE(k1MagicAnimShapesPC98), k1MagicAnimShapesPC98 };
+
+static const Shape k1BranStoneShapesPC98[14] = {
+ { 18, 0, 0, 5, 51, -20, -50 },
+ { 18, 5, 0, 5, 51, -20, -50 },
+ { 18, 10, 0, 5, 51, -20, -50 },
+ { 18, 15, 0, 5, 51, -20, -50 },
+ { 18, 20, 0, 5, 51, -20, -50 },
+ { 18, 25, 0, 5, 51, -20, -50 },
+ { 18, 30, 0, 5, 51, -20, -50 },
+ { 18, 35, 0, 5, 51, -20, -50 },
+ { 18, 0, 51, 5, 51, -20, -50 },
+ { 18, 5, 51, 5, 51, -20, -50 },
+ { 18, 10, 51, 5, 51, -20, -50 },
+ { 18, 15, 51, 5, 51, -20, -50 },
+ { 18, 20, 51, 5, 51, -20, -50 },
+ { 18, 25, 51, 5, 51, -20, -50 }
+};
+
+static const ShapeProvider k1BranStoneShapesPC98Provider = { ARRAYSIZE(k1BranStoneShapesPC98), k1BranStoneShapesPC98 };
+
+static const byte k1OutroReunionSeqPC98[1352] = {
+ 0x1A, 0x00, 0x08, 0x01, 0x06, 0x01, 0x00, 0x02,
+ 0x08, 0x00, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x14, 0x0A, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x00, 0x09, 0x00, 0x10, 0x20, 0x5A, 0x00,
+ 0x3A, 0x02, 0x02, 0x08, 0x0D, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x0E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0C, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x0B,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x0C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x0D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x0E, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x0A, 0x01, 0x03, 0x08, 0x07, 0x08, 0x00,
+ 0x0B, 0x01, 0x04, 0x00, 0x10, 0x21, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0A, 0x02, 0x02, 0x08, 0x14, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x02, 0x01, 0x00, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x03, 0x08, 0x07, 0x08, 0x00, 0x03,
+ 0x08, 0x07, 0x08, 0x00, 0x10, 0x22, 0x5A, 0x00,
+ 0x3A, 0x02, 0x0A, 0x03, 0x03, 0x08, 0x07, 0x08,
+ 0x00, 0x0B, 0x03, 0x0B, 0x00, 0x10, 0x23, 0x78,
+ 0x00, 0x3A, 0x0F, 0x0A, 0x03, 0x03, 0x08, 0x07,
+ 0x08, 0x00, 0x0B, 0x03, 0x05, 0x00, 0x06, 0x28,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2D, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x2E,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x2D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x24,
+ 0x5A, 0x00, 0x3A, 0x02, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x34,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x35, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x36, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x37, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x36,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x37, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x06,
+ 0x0A, 0x00, 0x10, 0x25, 0x5A, 0x00, 0x3A, 0x02,
+ 0x02, 0x08, 0x33, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x34, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x35, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x36, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x37, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x35,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x34, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x33, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x35, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x36, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x37, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x10, 0x26,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x38, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x39,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x3A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x38, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x3B, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x06, 0x0A, 0x00, 0x02, 0x08, 0x39, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x38,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x39, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x3A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x06, 0x3C, 0x00, 0x11, 0x02, 0x08, 0x33, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x32,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x31, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x2E, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x2D, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x1E, 0x00, 0x02, 0x08,
+ 0x2E, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x2F, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x30, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x31, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x32, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x33, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x41, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x42,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x43, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x44, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x45, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x46, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x06, 0x0A, 0x00, 0x10, 0x27, 0x5A,
+ 0x00, 0x3A, 0x02, 0x02, 0x08, 0x4E, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x4F, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x50,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x51, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x52, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x53, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x54, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x55, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x06, 0x78, 0x00, 0x10, 0x28,
+ 0x78, 0x00, 0x3A, 0x0F, 0x0A, 0x05, 0x02, 0x08,
+ 0x59, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02,
+ 0x08, 0x5A, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00,
+ 0x02, 0x08, 0x5B, 0x50, 0x00, 0x22, 0x07, 0x08,
+ 0x00, 0x02, 0x08, 0x5C, 0x50, 0x00, 0x22, 0x07,
+ 0x08, 0x00, 0x02, 0x08, 0x5D, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x0B, 0x05, 0x01, 0x00, 0x06,
+ 0x28, 0x00, 0x10, 0x29, 0x78, 0x00, 0x3A, 0x0F,
+ 0x0A, 0x06, 0x02, 0x08, 0x59, 0x50, 0x00, 0x22,
+ 0x07, 0x08, 0x00, 0x02, 0x08, 0x5A, 0x50, 0x00,
+ 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5B, 0x50,
+ 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08, 0x5C,
+ 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x02, 0x08,
+ 0x5D, 0x50, 0x00, 0x22, 0x07, 0x08, 0x00, 0x0B,
+ 0x06, 0x01, 0x00, 0x06, 0x28, 0x00, 0x10, 0x2A,
+ 0x78, 0x00, 0x3A, 0x0F, 0x02, 0x08, 0x5E, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x63,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x06, 0xB4,
+ 0x00, 0x11, 0x18, 0x69, 0x02, 0x08, 0x64, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x65,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x18, 0x74,
+ 0x02, 0x08, 0x66, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x67, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x18, 0x75, 0x02, 0x08, 0x68, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x69,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x10, 0x2B,
+ 0x96, 0x00, 0x1C, 0x22, 0x0A, 0x06, 0x02, 0x08,
+ 0x6B, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x6C, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x6D, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x6E, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x70, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x71, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01,
+ 0x00, 0x06, 0x1E, 0x00, 0x10, 0x2C, 0x96, 0x00,
+ 0x1C, 0x22, 0x0A, 0x06, 0x02, 0x08, 0x6B, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6C,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x6D, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x6E, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x6F, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x70, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x02, 0x08, 0x71, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x0B, 0x06, 0x01, 0x00, 0x06,
+ 0x1E, 0x00, 0x10, 0x2D, 0x96, 0x00, 0x1C, 0x22,
+ 0x0A, 0x06, 0x02, 0x08, 0x6B, 0x50, 0x00, 0x22,
+ 0x07, 0x10, 0x00, 0x02, 0x08, 0x6C, 0x50, 0x00,
+ 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6D, 0x50,
+ 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08, 0x6E,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x6F, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02,
+ 0x08, 0x70, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00,
+ 0x02, 0x08, 0x71, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x0B, 0x06, 0x01, 0x00, 0x06, 0x1E, 0x00,
+ 0x02, 0x08, 0x72, 0x50, 0x00, 0x22, 0x07, 0x10,
+ 0x00, 0x02, 0x08, 0x73, 0x50, 0x00, 0x22, 0x07,
+ 0x10, 0x00, 0x06, 0x14, 0x00, 0x02, 0x08, 0x74,
+ 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x02, 0x08,
+ 0x75, 0x50, 0x00, 0x22, 0x07, 0x10, 0x00, 0x06,
+ 0x78, 0x00, 0x13, 0x0E, 0x13, 0x01, 0x08, 0x1D
+};
+
+static const ByteProvider k1OutroReunionSeqPC98Provider = { ARRAYSIZE(k1OutroReunionSeqPC98), k1OutroReunionSeqPC98 };
+
+static const byte k1PC98IntroSfxPC98[768] = {
+ 0x56, 0x00, 0x43, 0x00, 0x7C, 0x00, 0x69, 0x00,
+ 0xA2, 0x00, 0x8F, 0x00, 0x00, 0x00, 0xB5, 0x00,
+ 0x00, 0x00, 0xE5, 0x00, 0x00, 0x00, 0x01, 0x01,
+ 0x00, 0x00, 0x2C, 0x01, 0x00, 0x00, 0x45, 0x01,
+ 0x00, 0x00, 0x54, 0x01, 0x00, 0x00, 0x68, 0x01,
+ 0x8D, 0x01, 0x7C, 0x01, 0xBD, 0x01, 0x9E, 0x01,
+ 0xF0, 0x01, 0xDC, 0x01, 0x00, 0x00, 0x04, 0x02,
+ 0x00, 0x00, 0x2B, 0x02, 0x59, 0x02, 0x40, 0x02,
+ 0xF1, 0x00, 0xFF, 0xF1, 0x09, 0x32, 0x81, 0x49,
+ 0x81, 0x52, 0x81, 0x59, 0x81, 0xF7, 0x01, 0x03,
+ 0xC7, 0x00, 0xFF, 0x42, 0x32, 0xFF, 0xF1, 0x05,
+ 0x30, 0x81, 0x47, 0x81, 0x50, 0x81, 0x57, 0x81,
+ 0xF7, 0x01, 0x03, 0xC7, 0x00, 0xFF, 0x41, 0x32,
+ 0xFF, 0xF1, 0x0C, 0x32, 0x81, 0x49, 0x81, 0x52,
+ 0x81, 0x59, 0x81, 0xF7, 0x01, 0x03, 0xC7, 0x00,
+ 0xFF, 0x42, 0x32, 0xFF, 0xF1, 0x08, 0x30, 0x81,
+ 0x47, 0x81, 0x50, 0x81, 0x57, 0x81, 0xF7, 0x01,
+ 0x03, 0xC7, 0x00, 0xFF, 0x41, 0x32, 0xFF, 0xF1,
+ 0x0F, 0x32, 0x81, 0x49, 0x81, 0x52, 0x81, 0x59,
+ 0x81, 0xF7, 0x01, 0x03, 0xC7, 0x00, 0xFF, 0x42,
+ 0x32, 0xFF, 0xF1, 0x0C, 0x30, 0x81, 0x47, 0x81,
+ 0x50, 0x81, 0x57, 0x81, 0xF7, 0x01, 0x03, 0xC7,
+ 0x00, 0xFF, 0x41, 0x32, 0xFF, 0xF1, 0x0A, 0x39,
+ 0x01, 0x44, 0x01, 0x49, 0x01, 0xFC, 0xF6, 0x05,
+ 0x05, 0xB7, 0x00, 0x39, 0x01, 0x44, 0x01, 0x49,
+ 0x01, 0xF6, 0x02, 0x02, 0xC3, 0x00, 0xFB, 0xFB,
+ 0xFB, 0xFB, 0x39, 0x01, 0x44, 0x01, 0x49, 0x01,
+ 0xF6, 0x02, 0x02, 0xD2, 0x00, 0xFC, 0xFC, 0xF6,
+ 0x05, 0x05, 0xC3, 0x00, 0xFF, 0xF1, 0x0F, 0x69,
+ 0x81, 0x59, 0x81, 0x49, 0x01, 0x39, 0x81, 0x54,
+ 0x01, 0xF6, 0x02, 0x02, 0xED, 0x00, 0x80, 0x04,
+ 0xFB, 0xFB, 0xFB, 0xF6, 0x03, 0x03, 0xED, 0x00,
+ 0xFF, 0xF1, 0x0C, 0x69, 0x81, 0x49, 0x81, 0x59,
+ 0x81, 0x39, 0x01, 0x62, 0x81, 0x57, 0x01, 0x60,
+ 0x01, 0xFC, 0xF6, 0x03, 0x03, 0x0B, 0x01, 0x62,
+ 0x81, 0x57, 0x01, 0x60, 0x01, 0xFB, 0xF6, 0x03,
+ 0x03, 0x17, 0x01, 0xFB, 0xFB, 0xFB, 0xF6, 0x05,
+ 0x05, 0x0B, 0x01, 0xFF, 0xF1, 0x0F, 0xF4, 0x09,
+ 0xF7, 0x01, 0x01, 0x54, 0x01, 0xC8, 0x27, 0x09,
+ 0xF4, 0x42, 0x10, 0x08, 0xFB, 0xF6, 0x0E, 0x0E,
+ 0x3A, 0x01, 0xF4, 0x80, 0xFF, 0xF1, 0x08, 0xF4,
+ 0x41, 0x10, 0x01, 0xFC, 0xF6, 0x07, 0x07, 0x49,
+ 0x01, 0xF4, 0x80, 0xFF, 0xF1, 0x0C, 0xF9, 0x0E,
+ 0xFA, 0x12, 0x64, 0x04, 0x0B, 0x60, 0x03, 0x80,
+ 0x03, 0x60, 0x03, 0x80, 0x03, 0x60, 0x12, 0xFF,
+ 0xF1, 0x0C, 0xF9, 0x0E, 0xFA, 0x12, 0x18, 0x04,
+ 0x0B, 0x70, 0x02, 0x80, 0x02, 0x72, 0x02, 0x80,
+ 0x02, 0x73, 0x0B, 0xFF, 0xF1, 0x0E, 0xF3, 0x00,
+ 0xF7, 0x01, 0x05, 0x39, 0xFF, 0xFF, 0x30, 0x30,
+ 0xF1, 0x07, 0x3B, 0x0A, 0xFF, 0xF1, 0x0C, 0xF3,
+ 0x0A, 0xF7, 0x01, 0x05, 0x39, 0xFF, 0xFF, 0x60,
+ 0x30, 0xF1, 0x05, 0x6B, 0x0A, 0xFF, 0xF1, 0x0E,
+ 0xF3, 0x00, 0xF7, 0x01, 0x05, 0x39, 0xFF, 0xFF,
+ 0x30, 0x30, 0xF1, 0x0C, 0x69, 0x01, 0x75, 0x02,
+ 0x72, 0x01, 0x64, 0x02, 0x70, 0x01, 0xFB, 0xF6,
+ 0x0B, 0x0B, 0xAC, 0x01, 0xFF, 0xF1, 0x0C, 0xF3,
+ 0x0A, 0xF7, 0x01, 0x05, 0x39, 0xFF, 0xFF, 0x60,
+ 0x31, 0xF1, 0x0A, 0x69, 0x01, 0x75, 0x02, 0x72,
+ 0x01, 0x64, 0x02, 0x70, 0x01, 0xFB, 0xF6, 0x09,
+ 0x09, 0xCB, 0x01, 0xFF, 0xF1, 0x0F, 0xF3, 0x00,
+ 0x24, 0x81, 0x29, 0x01, 0xF6, 0x08, 0x08, 0xE0,
+ 0x01, 0xFB, 0xF6, 0x0E, 0x0E, 0xE0, 0x01, 0xFF,
+ 0xF1, 0x0F, 0xF3, 0x0D, 0x24, 0x81, 0x22, 0x01,
+ 0xF6, 0x08, 0x08, 0xF4, 0x01, 0xFB, 0xF6, 0x0E,
+ 0x0E, 0xF4, 0x01, 0xFF, 0xF1, 0x0C, 0x29, 0x81,
+ 0xFC, 0x24, 0x81, 0xFC, 0x29, 0x81, 0xFC, 0x34,
+ 0x81, 0x35, 0x81, 0x36, 0x81, 0x35, 0x81, 0x34,
+ 0x81, 0x33, 0x81, 0x32, 0x81, 0x33, 0x01, 0xF6,
+ 0x02, 0x02, 0x0F, 0x02, 0xFB, 0xF6, 0x0E, 0x0E,
+ 0x0F, 0x02, 0xFF, 0xF1, 0x0F, 0xF4, 0x0B, 0x29,
+ 0x81, 0x27, 0x81, 0xF4, 0x43, 0x29, 0x02, 0xFB,
+ 0xF6, 0x0E, 0x0E, 0x35, 0x02, 0xF4, 0x80, 0xFF,
+ 0xF1, 0x0E, 0xF7, 0x01, 0x01, 0x09, 0x03, 0xFF,
+ 0x44, 0x08, 0xF1, 0x0C, 0xF7, 0x01, 0x04, 0xC8,
+ 0x00, 0xFF, 0x1B, 0x1E, 0xF1, 0x06, 0x1B, 0x1E,
+ 0xFF, 0xF1, 0x0F, 0xF4, 0x4F, 0xF7, 0x01, 0x05,
+ 0xC7, 0x00, 0xFF, 0x19, 0x04, 0xF7, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xF4, 0x0F, 0xFB, 0x10, 0x04,
+ 0xFB, 0xF6, 0x07, 0x07, 0x6E, 0x02, 0xF1, 0x08,
+ 0x10, 0x04, 0xFB, 0xF6, 0x07, 0x07, 0x78, 0x02,
+ 0xF4, 0x80, 0xFF, 0xF1, 0x0F, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
+};
+
+static const ByteProvider k1PC98IntroSfxPC98Provider = { ARRAYSIZE(k1PC98IntroSfxPC98), k1PC98IntroSfxPC98 };
+
diff --git a/devtools/create_kyradat/resources/lok_pc98_japanese.h b/devtools/create_kyradat/resources/lok_pc98_japanese.h
new file mode 100644
index 0000000000..0cbc96aeb9
--- /dev/null
+++ b/devtools/create_kyradat/resources/lok_pc98_japanese.h
@@ -0,0 +1,558 @@
+static const char *const k1IntroStringsPC98Japanese[50] = {
+ "This is a text test - 1",
+ "This is a text test - 2",
+ "\x8B""v""\x82\xB5\x90""U""\x82\xE8\x82\xBE\x82\xC8\x81""A""\x83""J""\x83\x89\x83""b""\x83""N""\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x89\xA4\x8E\xBA\x96\x82\x8F""p""\x8E""t""\x82\xCC\x8E""w""\x93\xB1\x8E\xD2\x93""a""\x81""I",
+ "\x82\xA0\x82\xF1\x82\xBD\x82\xF0\x8B\xC1\x82\xA9\x82\xB5\x82\xBD\x82\xA9\x82\xC8\x81""H",
+ "\x83""}""\x83\x8B\x83""R""\x83\x80\x81""I",
+ "\x8B""M""\x97""l""\x82\xCC\x92""E""\x91\x96\x82\xC9\x82\xC2\x82\xA2\x82\xC4\x82\xCD\x8D\xF0\x93\xFA\x95\xF1\x8D\x90\x82\xF0\x8E\xF3\x82\xAF\x82\xC4\x82\xA2\x82\xBD\x81""B",
+ "\x82\xBB\x82\xEA\x82\xC5\x82\xA8\x91""O""\x82\xAA\x97\x88\x82\xE9\x82\xCC\x82\xF0\x91\xD2\x82\xC1\x82\xC4\x82\xA2\x82\xBD\x82\xF1\x82\xBE\x81""B",
+ "\x89\xBD\x8C\xCC\x82\xA8\x82\xEA\x97""l""\x82\xAA\x97\x88\x82\xBD\x82\xA9\x95\xAA\x82\xA9\x82\xE9\x82\xA9\x81""H",
+ "\x82\xC2\x82\xA2\x82\xC9\x81""A""\x82\xB1\x82\xCC\x8D\x91\x82\xF0\x8F\xE6\x82\xC1\x8E\xE6\x82\xC1\x82\xBD\x82\xBC\x81""I",
+ "\x8B""M""\x97""l""\x82\xCC\x82\xC2\x82\xDC\x82\xE7\x82\xF1\x8B\xBA\x94\x97\x82\xC8\x82\xC7\x82\xC5\x82\xA8\x82\xEA\x97""l""\x82\xF0\x94\x9B\x82\xEA\x82\xE9\x82\xE0\x82\xCC\x82\xA9\x81""B",
+ "\x82\xB3\x82\xA0\x81""A""\x82\xE2\x82\xE9\x82\xC8\x82\xE7\x82\xE2\x82\xC1\x82\xC4\x82\xDD\x82\xEB\x81""I",
+ "\x82\xED\x82\xB5\x82\xC9\x82\xE0\x82\xED\x82\xB8\x82\xA9\x82\xBE\x82\xAA\x96\x82\x97\xCD\x82\xAA\x8E""c""\x82\xC1\x82\xC4\x82\xA8\x82\xE9\x82\xED\x82\xA2\x81""B",
+ "\x82\xA8\x91""O""\x82\xF0\x82\xE2\x82\xC1\x82\xC2\x82\xAF\x82\xE9\x82\xC6\x82\xA2\x82\xA4\x82\xB1\x82\xC6\x82\xB3\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x82\xE0\x82\xCD\x82\xE2\x82\xA8\x91""O""\x82\xCD\x90\xCE\x82\xC6\x82\xC8\x82\xC1\x82\xBD\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x82\xBE\x82\xAA\x96\xDA\x82\xBE\x82\xAF\x82\xCD\x8C\xA9\x82\xA6\x82\xE9\x82\xDC\x82\xDC\x82\xC9\x82\xB5\x82\xC4\x82\xA8\x82\xB1\x82\xA4\x81""B",
+ "\x82\xA8\x82\xEA\x97""l""\x82\xCD\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xC9\x82\xCD\x82\xC8\x82\xF1\x82\xCC\x8A\xB4\x8F\x9D\x82\xE0\x82\xC8\x82\xA2\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x82\xBE\x82\xAA\x81""A""\x82\xA8\x91""O""\x82\xBD\x82\xBF\x82\xCD\x82\xC7\x82\xA4\x82\xA9\x82\xC8\x81""B",
+ "\x8B""{""\x92\xEC\x93\xB9\x89\xBB\x8E""t""\x82\xCC\x83""}""\x83\x8B\x83""R""\x83\x80\x82\xAA\x98""S""\x82\xF0\x94""j""\x82\xC1\x82\xBD\x81""I",
+ "\x8D\xA1\x82\xE2\x94\xDE\x82\xCD\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xCC\x82\xB7\x82\xD7\x82\xC4\x82\xCC\x96\x82\x97\xCD\x82\xCC\x8D\xAA\x8C\xB9\x82\xBD\x82\xE9\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x83""L""\x83\x89\x83\x93\x83""W""\x83""F""\x83\x80\x82\xF0\x8E\xE8\x92\x86\x82\xC9\x8E\xFB\x82\xDF\x82\xC4\x82\xA2\x82\xE9\x81""I",
+ "",
+ "\x89\xBD\x82\xC5\x82\xA8\x82\xEA\x97""l""\x82\xF0\x82\xC2\x82\xDC\x82\xB8\x82\xA9\x82\xB9\x82\xBD\x81""I",
+ "\x82\xE6\x82\xB5\x81""A""\x82\xA8\x91""O""\x82\xC9\x82\xB7\x82\xCE\x82\xE7\x82\xB5\x82\xA2\x91\xA1\x82\xE8\x95\xA8\x82\xF0\x82\xE2\x82\xEB\x82\xA4\x81""E""\x81""E""\x81""E",
+ "\x82\xB1\x82\xEA\x82\xAA\x82\xA8\x82\xEA\x97""l""\x82\xCC\x83\x86\x81""[""\x83\x82\x83""A""\x82\xB3\x81""I",
+ "\x82\xBE\x82\xAA\x81""A""\x83""t""\x83""F""\x83""A""\x82\xC8\x82\xA8\x82\xEA\x97""l""\x82\xCD\x8C""x""\x8D\x90\x82\xF0\x82\xB7\x82\xE9\x82\xC2\x82\xE0\x82\xE8\x82\xB3\x81""B",
+ "\x82\xA0\x82\xCC\x96\xD8\x82\xC9\x82\xCD\x93""o""\x82\xE9\x82\xC8\x82\xE6\x81""I",
+ "\x82\xBF\x82\xC1\x82\xB1\x82\xA2\x83\x8A\x83""X""\x82\xDF\x81""A""\x82\xA0\x82\xCC\x96\xD8\x82\xC9\x82\xCD\x93""o""\x82\xE9\x82\xC8\x81""I",
+ "\x83""u""\x83""D""\x81""[""\x81""I",
+ "\x82\xB1\x82\xA2\x82\xC2\x82\xCD\x96\xCA\x94\x92\x82\xA2\x82\xE2\x81""E""\x81""E""\x81""E",
+ "\x81""E""\x81""E""\x81""E""\x82\xBB\x82\xA4\x8E""v""\x82\xED\x82\xF1\x82\xA9\x81""H",
+ "\x82\xCD\x82\xC1\x81""A""\x82\xCD\x82\xC1\x82\xCD\x81""E""\x81""E""\x81""E",
+ "\x8C\xB3\x82\xC9\x96\xDF\x82\xC1\x82\xBD\x82\xCC\x82\xA9\x81""H",
+ "\x90\xB6\x82\xAB\x82\xC4\x82\xA2\x82\xE9\x82\xB1\x82\xC6\x82\xCD\x82\xB7\x82\xCE\x82\xE7\x82\xB5\x82\xA2\x81""I",
+ "\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x81""I",
+ "\x82\xA8\x91""c""\x95\x83\x82\xB3\x82\xF1\x81""I""\x96""l""\x82\xBD\x82\xBF\x82\xCD\x82\xE2\x82\xE8\x82\xDC\x82\xB5\x82\xBD\x82\xCB\x81""I",
+ "\x82\xA2\x82\xA2\x82\xE2\x81""I""\x82\xE2\x82\xC1\x82\xBD\x82\xCC\x82\xCD\x82\xA8\x91""O""\x81""I",
+ "\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x89\xA4\x81""@""\x82\xCE\x82\xF1\x82\xB4\x82\xA2\x81""I",
+ "\x89\xA4\x8E\xBA\x96\x82\x8F""p""\x8E""t""\x81""@""\x82\xCE\x82\xF1\x82\xB4\x82\xA2\x81""I",
+ "\x82\xB3\x82\xA0\x81""A""\x8B\xA4\x82\xC9\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xF0\x95\x9C\x8B\xBB\x82\xB5\x82\xE6\x82\xA4\x81""I",
+ "\x91\xE5\x8E""^""\x90\xAC\x81""I",
+ "\x96""l""\x82\xCC\x89\xA4\x82\xC6\x82\xB5\x82\xC4\x82\xCC\x8D\xC5\x8F\x89\x82\xCC\x95""z""\x8D\x90\x82\xCD\x81""E""\x81""E""\x81""E",
+ "\x83""T""\x83\x93\x83""_""\x83\x8B\x82\xF0\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xCC\x8C\xF6\x8E\xAE\x82\xC8\x97\x9A\x95\xA8\x82\xC6\x82\xB7\x82\xE9\x82\xB1\x82\xC6\x82\xC5\x82\xB7\x81""I",
+ "\x82\xE6\x82\xAD\x82\xE2\x82\xC1\x82\xBD\x81""I""\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x81""B",
+ "\x8E\xA9\x91""R""\x8A""E""\x82\xCD\x82\xE6\x82\xEB\x82\xB1\x82\xD1\x82\xC9\x82\xA0\x82\xD3\x82\xEA\x81""E""\x81""E""\x81""E",
+ "\x82\xA0\x82\xC8\x82\xBD\x82\xCC\x97""F""\x90""l""\x92""B""\x82\xE0\x8F\x95\x82\xA9\x82\xC1\x82\xBD\x82\xCC\x82\xC5\x82\xB7\x81""I",
+ "\x83""u""\x83\x8A\x83\x93\x82\xE6\x81""E""\x81""E""\x81""E",
+ "\x83""}""\x83\x8B\x83""R""\x83\x80\x82\xAA\x98""S""\x82\xF0\x94""j""\x82\xC1\x82\xBD\x81""I",
+ "\x82\xDC\x82\xE0\x82\xC8\x82\xAD\x93""z""\x82\xCD\x82\xED\x82\xB5\x82\xCC\x82\xC6\x82\xB1\x82\xEB\x82\xD6\x97\x88\x82\xE9\x82\xBE\x82\xEB\x82\xA4\x81""B",
+ "\x82\xC7\x82\xA4\x82\xA9\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x82\xF0\x8F\x95\x82\xAF\x82\xC4\x82\xE2\x82\xC1\x82\xC4\x82\xA8\x82\xAD\x82\xEA\x81""E""\x81""E""\x81""E"
+};
+
+static const StringListProvider k1IntroStringsPC98JapaneseProvider = { ARRAYSIZE(k1IntroStringsPC98Japanese), k1IntroStringsPC98Japanese };
+
+static const char *const k1ItemNamesPC98Japanese[107] = {
+ "\x83""K""\x81""[""\x83""l""\x83""b""\x83""g",
+ "\x83""A""\x83\x81\x83""W""\x83""X""\x83""g",
+ "\x83""A""\x83""N""\x83""A""\x83""}""\x83\x8A\x83\x93",
+ "\x83""_""\x83""C""\x83""A""\x83\x82\x83\x93\x83""h",
+ "\x83""G""\x83\x81\x83\x89\x83\x8B\x83""h",
+ "\x83""p""\x81""[""\x83\x8B",
+ "\x83\x8B\x83""r""\x81""[",
+ "\x83""y""\x83\x8A\x83""h""\x81""[""\x83""g",
+ "\x83""T""\x83""t""\x83""@""\x83""C""\x83""A",
+ "\x83""I""\x83""p""\x81""[""\x83\x8B",
+ "\x83""g""\x83""p""\x81""[""\x83""Y",
+ "\x83""I""\x83""j""\x83""L""\x83""X",
+ "\x83""T""\x83\x93\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83\x80\x81""[""\x83\x93\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83\x8C\x83""C""\x83\x93\x83""{""\x81""[""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83\x8D\x81""[""\x83""h""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83""o""\x83\x89",
+ "\x83""`""\x83\x85\x81""[""\x83\x8A\x83""b""\x83""v",
+ "\x83\x89\x83\x93",
+ "\x8B\xE2\x82\xCC\x83""o""\x83\x89",
+ "\x8B\xE2\x82\xCC\x8F\xAC\x91\x9C",
+ "\x8B\xE2\x89\xDD",
+ "\x8B\xE0\x89\xDD",
+ "\x8B\xE0\x82\xCC\x83\x8A\x83\x93\x83""O",
+ "\x90\xB9\x94""t",
+ "\x8F\xBC\x82\xDA\x82\xC1\x82\xAD\x82\xE8",
+ "\x82\xC7\x82\xF1\x82\xAE\x82\xE8",
+ "\x83""N""\x83\x8B\x83""~",
+ "\x94""R""\x82\xA6\x82\xE9\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x83""t""\x83""@""\x83""C""\x83""A""\x83""x""\x83\x8A\x81""[",
+ "\x82\xB3\x82\xA9\x82\xC8",
+ "\x82\xB3\x82\xA9\x82\xC8\x82\xCC\x8D\x9C",
+ "\x97""r""\x82\xCC\x91\xAB",
+ "\x8D\x9C",
+ "\x83\x8A\x83\x93\x83""S",
+ "\x83\x8A\x83\x93\x83""S""\x82\xCC\x90""c",
+ "\x83""u""\x83\x8B\x81""[""\x83""x""\x83\x8A\x81""[",
+ "\x83""L""\x83""m""\x83""R",
+ "\x83""m""\x81""[""\x83""g",
+ "\x91\xE5\x97\x9D\x90\xCE",
+ "\x82\xCC\x82\xB1\x82\xAC\x82\xE8",
+ "\x83""A""\x83\x93\x83""N",
+ "\x89""H""\x8D\xAA",
+ "\x83""^""\x83""}""\x83""S",
+ "\x97""t""\x82\xC1\x82\xCF",
+ "\x94\x92\x92\xDC\x91\x90",
+ "\x97\x8E\x82\xBF\x82\xBD\x90\xAF",
+ "\x83""N""\x83\x8A\x83""X""\x83""^""\x83\x8B\x82\xCC\x8E\xEC",
+ "\x97\xDC\x82\xCC\x82\xB5\x82\xB8\x82\xAD",
+ "\x8B\xBE",
+ "\x95""X""\x82\xCC\x82\xA9\x82\xAF\x82\xE7",
+ "\x83""t""\x83\x8B\x81""[""\x83""g",
+ "\x8D\xBB\x8E\x9E\x8C""v",
+ "\x93""S""\x82\xCC\x8C\xAE",
+ "\x82\xD0\x82\xB7\x82\xA2\x82\xCC\x8C\xAE",
+ "\x8D\x95\x97""j""\x90\xCE\x82\xCC\x8C\xAE",
+ "\x90\xD4\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x90\xD4\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x90\xC2\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x90\xC2\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x89\xA9\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x89\xA9\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x97\xCE\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x83""I""\x83\x8C\x83\x93\x83""W""\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x8E\x87\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x93\xF8\x90""F""\x82\xCC\x83""|""\x81""[""\x83""V""\x83\x87\x83\x93",
+ "\x90""V""\x91""N""\x82\xC8\x90\x85",
+ "\x90""V""\x91""N""\x82\xC8\x90\x85",
+ "\x89\x96\x90\x85",
+ "\x89\x96\x90\x85",
+ "\x83""~""\x83""l""\x83\x89\x83\x8B\x83""E""\x83""H""\x81""[""\x83""^""\x81""[",
+ "\x83""~""\x83""l""\x83\x89\x83\x8B\x83""E""\x83""H""\x81""[""\x83""^""\x81""[",
+ "\x96\x82\x96""@""\x82\xCC\x90\x85",
+ "\x96\x82\x96""@""\x82\xCC\x90\x85",
+ "\x8B\xF3\x82\xC1\x82\xDB\x82\xCC\x83""t""\x83\x89\x83""X""\x83""R",
+ "\x8B\xF3\x82\xC1\x82\xDB\x82\xCC\x83""t""\x83\x89\x83""X""\x83""R",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x83""X""\x83""N""\x83\x8D\x81""[""\x83\x8B",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x97""r""\x94\xE7\x8E\x86\x82\xCC\x90\xD8\x82\xEA\x92""[",
+ "\x90\xD4\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x83""I""\x83\x8C\x83\x93\x83""W""\x90""F""\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x89\xA9\x90""F""\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x97\xCE\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x90\xC2\x97\xCE\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x90\xC2\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x8E\x87\x90""F""\x82\xCC\x83\x81\x83""K""\x83""X""\x83""g""\x81""[""\x83\x93",
+ "\x8F""d""\x82\xA2\x90\xCE",
+ "\x89\xA4\x8A\xA5",
+ "\x89\xA4\xE2\x94",
+ "\x8B\xE0\x82\xCC\x8C\xAE",
+ "\x95\xAA\x82\xA9\x82\xE7\x82\xC8\x82\xA2\x82\xE0\x82\xCC"
+};
+
+static const StringListProvider k1ItemNamesPC98JapaneseProvider = { ARRAYSIZE(k1ItemNamesPC98Japanese), k1ItemNamesPC98Japanese };
+
+static const char *const k1TakenStringsPC98Japanese[2] = {
+ "\x82\xF0\x8E\xE6\x82\xC1\x82\xBD\x81""B",
+ "\x82\xF0\x8E\xE6\x82\xC1\x82\xBD\x81""B"
+};
+
+static const StringListProvider k1TakenStringsPC98JapaneseProvider = { ARRAYSIZE(k1TakenStringsPC98Japanese), k1TakenStringsPC98Japanese };
+
+static const char *const k1PlacedStringsPC98Japanese[1] = {
+ "\x82\xF0\x82\xB5\x82\xDC\x82\xC1\x82\xBD\x81""B"
+};
+
+static const StringListProvider k1PlacedStringsPC98JapaneseProvider = { ARRAYSIZE(k1PlacedStringsPC98Japanese), k1PlacedStringsPC98Japanese };
+
+static const char *const k1DroppedStringsPC98Japanese[1] = {
+ "\x82\xF0\x92""u""\x82\xA2\x82\xBD\x81""B"
+};
+
+static const StringListProvider k1DroppedStringsPC98JapaneseProvider = { ARRAYSIZE(k1DroppedStringsPC98Japanese), k1DroppedStringsPC98Japanese };
+
+static const char *const k1NoDropStringsPC98Japanese[2] = {
+ "\x82\xB1\x82\xCC\x8F\xEA\x96\xCA\x82\xC5\x82\xCD\x81""A""\x82\xB1\x82\xEA\x88\xC8\x8F\xE3\x83""A""\x83""C""\x83""e""\x83\x80\x82\xAA\x92""u""\x82\xAF\x82\xDC\x82\xB9\x82\xF1\x81""B",
+ "\x82\xB1\x82\xB1\x82\xC9\x82\xCD\x92""u""\x82\xAF\x82\xDC\x82\xB9\x82\xF1\x81""B"
+};
+
+static const StringListProvider k1NoDropStringsPC98JapaneseProvider = { ARRAYSIZE(k1NoDropStringsPC98Japanese), k1NoDropStringsPC98Japanese };
+
+static const char *const k1PutDownStringPC98Japanese[1] = {
+ "\x82\xDC\x82\xB8\x81""A""\x82\xB1\x82\xEA\x82\xF0\x92""u""\x82\xA2\x82\xC4\x82\xA9\x82\xE7\x82\xCC\x95\xFB\x82\xAA\x82\xE6\x82\xB3\x82\xBB\x82\xA4\x82\xBE\x81""B"
+};
+
+static const StringListProvider k1PutDownStringPC98JapaneseProvider = { ARRAYSIZE(k1PutDownStringPC98Japanese), k1PutDownStringPC98Japanese };
+
+static const char *const k1WaitAmuletStringPC98Japanese[1] = {
+ "\x83""A""\x83""~""\x83\x85\x83\x8C\x83""b""\x83""g""\x82\xC9\x97\xCD\x82\xAA\x96\xDF\x82\xE9\x82\xDC\x82\xC5\x91\xD2\x82\xC1\x82\xC4\x82\xDD\x82\xE6\x82\xA4\x81""B"
+};
+
+static const StringListProvider k1WaitAmuletStringPC98JapaneseProvider = { ARRAYSIZE(k1WaitAmuletStringPC98Japanese), k1WaitAmuletStringPC98Japanese };
+
+static const char *const k1BlackJewelStringPC98Japanese[1] = {
+ "\x82\xB1\x82\xEA\x82\xCD\x95\xF3\x90\xCE\x82\xC9\x82\xCD\x88\xE1\x82\xA2\x82\xC8\x82\xA2\x82\xAA\x81""A""\x82\xC7\x82\xA4\x82\xB5\x82\xC4\x82\xDC\x82\xC1\x8D\x95\x82\xC8\x82\xF1\x82\xBE\x82\xEB\x82\xA4\x81""H"
+};
+
+static const StringListProvider k1BlackJewelStringPC98JapaneseProvider = { ARRAYSIZE(k1BlackJewelStringPC98Japanese), k1BlackJewelStringPC98Japanese };
+
+static const char *const k1HealingTipStringPC98Japanese[1] = {
+ "\x82\xA0\x82\xEA\x81""A""\x82\xB1\x82\xEA\x82\xCD\x8F\x9D\x82\xC2\x82\xA2\x82\xBD\x82\xE0\x82\xCC\x82\xF0\x8E\xA1\x82\xB7\x96\x82\x96""@""\x82\xC8\x82\xF1\x82\xBE\x81""B"
+};
+
+static const StringListProvider k1HealingTipStringPC98JapaneseProvider = { ARRAYSIZE(k1HealingTipStringPC98Japanese), k1HealingTipStringPC98Japanese };
+
+static const char *const k1PoisonGoneStringPC98Japanese[2] = {
+ "\x82\xB7\x82\xB2\x82\xA2\x81""I",
+ "\x93\xC5\x82\xAA\x8F\xC1\x82\xA6\x82\xBD\x81""I"
+};
+
+static const StringListProvider k1PoisonGoneStringPC98JapaneseProvider = { ARRAYSIZE(k1PoisonGoneStringPC98Japanese), k1PoisonGoneStringPC98Japanese };
+
+static const char *const k1ThePoisonStringsPC98Japanese[3] = {
+ "\x93\xC5\x82\xBE\x81""E""\x81""E""\x81""E",
+ "\x8C\xC4\x8B""z""\x82\xAA\x8F""o""\x97\x88\x82\xC8\x82\xA2\x81""E""\x81""E""\x81""E",
+ "\x8B""C""\x95\xAA\x82\xAA\x88\xAB\x82\xA2\x81""E""\x81""E""\x81""E"
+};
+
+static const StringListProvider k1ThePoisonStringsPC98JapaneseProvider = { ARRAYSIZE(k1ThePoisonStringsPC98Japanese), k1ThePoisonStringsPC98Japanese };
+
+static const char *const k1FluteStringsPC98Japanese[2] = {
+ "\x82\xA0\x82\xDC\x82\xE8\x82\xA2\x82\xA2\x89\xB9\x90""F""\x82\xB6\x82\xE1\x82\xC8\x82\xA2\x82\xC8\x81""B",
+ "\x8D\xC5\x8C\xE3\x82\xCD\x82\xC6\x82\xC4\x82\xE0\x8D\x82\x82\xA2\x89\xB9\x82\xBE\x81""I"
+};
+
+static const StringListProvider k1FluteStringsPC98JapaneseProvider = { ARRAYSIZE(k1FluteStringsPC98Japanese), k1FluteStringsPC98Japanese };
+
+static const char *const k1WispJewelStringsPC98Japanese[3] = {
+ "\x89\xBD\x82\xE0\x8A\xB4\x82\xB6\x82\xC8\x82\xA2\x82\xC8\x82\xA0\x81""B",
+ "\x8D\xC5\x8F\x89\x82\xC9\x81""A",
+ "\x82\xF0\x89\xBA\x82\xC9\x92""u""\x82\xAD\x82\xCC\x82\xA9\x82\xE0\x92""m""\x82\xEA\x82\xC8\x82\xA2\x81""B"
+};
+
+static const StringListProvider k1WispJewelStringsPC98JapaneseProvider = { ARRAYSIZE(k1WispJewelStringsPC98Japanese), k1WispJewelStringsPC98Japanese };
+
+static const char *const k1MagicJewelStringsPC98Japanese[1] = {
+ "\x82\xB1\x82\xEA\x82\xCD\x88\xE1\x82\xA4\x82\xBC\x81""B"
+};
+
+static const StringListProvider k1MagicJewelStringsPC98JapaneseProvider = { ARRAYSIZE(k1MagicJewelStringsPC98Japanese), k1MagicJewelStringsPC98Japanese };
+
+static const char *const k1FlaskFullStringPC98Japanese[1] = {
+ "\x83""t""\x83\x89\x83""X""\x83""R""\x82\xCD\x82\xE0\x82\xA4\x90\x85\x82\xAA\x93\xFC\x82\xC1\x82\xC4\x82\xA2\x82\xE9\x81""B"
+};
+
+static const StringListProvider k1FlaskFullStringPC98JapaneseProvider = { ARRAYSIZE(k1FlaskFullStringPC98Japanese), k1FlaskFullStringPC98Japanese };
+
+static const char *const k1FullFlaskStringPC98Japanese[4] = {
+ "\x83""t""\x83\x89\x83""X""\x83""R""\x82\xCC\x92\x86\x90""g""\x82\xCD\x81""A\r""\x96""A""\x97\xA7\x82\xC2\x90""V""\x91""N""\x82\xC8\x90\x85\x82\xBE\x81""B",
+ "\x83""t""\x83\x89\x83""X""\x83""R""\x82\xCC\x92\x86\x90""g""\x82\xCD\x81""A\r""\x89\x96\x90\x85\x82\xBE\x81""B",
+ "\x83""t""\x83\x89\x83""X""\x83""R""\x82\xCC\x92\x86\x90""g""\x82\xCD\x81""A\r""\x83""~""\x83""l""\x83\x89\x83\x8B\x83""E""\x83""H""\x81""[""\x83""^""\x81""[""\x82\xBE\x81""B",
+ "\x96\x82\x96""@""\x82\xCC\x90\x85\x82\xBE\x81""B"
+};
+
+static const StringListProvider k1FullFlaskStringPC98JapaneseProvider = { ARRAYSIZE(k1FullFlaskStringPC98Japanese), k1FullFlaskStringPC98Japanese };
+
+static const char *const k1OutroHomeStringPC98Japanese[1] = {
+ "\x89\xE4\x82\xAA\x89\xC6"
+};
+
+static const StringListProvider k1OutroHomeStringPC98JapaneseProvider = { ARRAYSIZE(k1OutroHomeStringPC98Japanese), k1OutroHomeStringPC98Japanese };
+
+static const char *const k1VeryCleverStringPC98Japanese[1] = {
+ "\x82\xE6\x82\xA2\x8E\xE8\x8D\xDB\x82\xBE\x81""I""\x82\xBE\x82\xAA\x82\xA8\x91""O""\x82\xCC\x82\xB3\x82\xB3\x82\xE2\x82\xA9\x82\xC8\x93""w""\x97\xCD\x82\xCD\x96\xB3\x91\xCA\x82\xBE\x81""B"
+};
+
+static const StringListProvider k1VeryCleverStringPC98JapaneseProvider = { ARRAYSIZE(k1VeryCleverStringPC98Japanese), k1VeryCleverStringPC98Japanese };
+
+static const char *const k1GUIStringsPC98Japanese[75] = {
+ "\x83""L""\x83\x89\x83\x93\x83""f""\x83""B""\x83""A""\x82\xCC\x93""`""\x90\xE0",
+ "\x83""Z""\x81""[""\x83""u""\x82\xB5\x82\xBD\x8F\x8A\x82\xA9\x82\xE7\x8E""n""\x82\xDF\x82\xE9",
+ "\x83""Q""\x81""[""\x83\x80\x82\xF0\x83""Z""\x81""[""\x83""u""\x82\xB7\x82\xE9",
+ "\x83""Q""\x81""[""\x83\x80\x82\xCC\x90\xDD\x92\xE8",
+ "\x83""Q""\x81""[""\x83\x80\x8F""I""\x97\xB9",
+ "\x83""Q""\x81""[""\x83\x80\x8D\xC4\x8A""J",
+ "\x83""Q""\x81""[""\x83\x80\x82\xCC\x90\xDD\x92\xE8",
+ "\x82\xC7\x82\xCC\x83""f""\x81""[""\x83""^""\x82\xF0\x83\x8D\x81""[""\x83""h""\x82\xB5\x82\xDC\x82\xB7\x82\xA9\x81""H",
+ "\x83""Z""\x81""[""\x83""u""\x82\xB7\x82\xE9\x88\xCA\x92""u""\x82\xF0\x91""I""\x82\xF1\x82\xC5\x89\xBA\x82\xB3\x82\xA2\x81""F",
+ "\x81""m""\x8D\xC5\x8F\x89\x82\xA9\x82\xE7\x83""Q""\x81""[""\x83\x80\x82\xF0\x8E""n""\x82\xDF\x82\xE9\x81""n",
+ "\x81""m""\x8B\xF3\x82\xAB\x83""X""\x83\x8D\x83""b""\x83""g""\x81""n",
+ "\x92\x86\x8E""~",
+ "\x83""Z""\x81""[""\x83""u""\x82\xB5\x82\xBD\x83""Q""\x81""[""\x83\x80\x82\xC9\x96\xBC\x91""O""\x82\xF0\x82\xC2\x82\xAF\x82\xC4\x89\xBA\x82\xB3\x82\xA2\x81""F",
+ "\x83""Z""\x81""[""\x83""u",
+ "\x83""u""\x83\x89\x83\x93\x83""h""\x83\x93\x81""A""\x82\xE4\x82\xC1\x82\xAD\x82\xE8\x8B""x""\x82\xDF\x82\xE9\x82\xE6\x81""B",
+ "\x83""Q""\x81""[""\x83\x80\x82\xF0\x8F""I""\x97\xB9\x82\xB5\x82\xC4\x82\xA2\x82\xA2\x82\xC5\x82\xB7\x82\xA9\x81""H",
+ "XXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "XXXXXXXXX",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\x83\x81\x83""C""\x83\x93\x81""E""\x83\x81\x83""j""\x83\x85\x81""[",
+ "\x83""I""\x83\x93",
+ "\x83""I""\x83""t",
+ "\x82\xCD\x82\xA2",
+ "\x82\xA2\x82\xA2\x82\xA6",
+ "\xD2""q""\x8A""$""\xDB""q""\x8A""$""\xE0""q""\x8A""$""\xE5""q""\x8A""$""\xEA""q""\x8A""$""\xF3""q""\x8A""$""\xFC""q""\x8A""$""\x01""r""\x8A""$""\x06""r""\x8A""$""\x95\xE0\x81""@""\x8D""s""\x81""@""\x91\xAC\x81""@""\x93""x",
+ "\x83\x81\x83""b""\x83""Z""\x81""[""\x83""W""\x91\xAC\x93""x",
+ "\x89\xB9\x81""@""\x81""@""\x81""@""\x81""@""\x81""@""\x8A""y",
+ "\x8C\xF8\x81""@""\x81""@""\x89\xCA\x81""@""\x81""@""\x89\xB9"
+};
+
+static const StringListProvider k1GUIStringsPC98JapaneseProvider = { ARRAYSIZE(k1GUIStringsPC98Japanese), k1GUIStringsPC98Japanese };
+
+static const char *const k1NewGameStringPC98Japanese[1] = {
+ "\x81""m""\x8D\xC5\x8F\x89\x82\xA9\x82\xE7\x83""Q""\x81""[""\x83\x80\x82\xF0\x8E""n""\x82\xDF\x82\xE9\x81""n"
+};
+
+static const StringListProvider k1NewGameStringPC98JapaneseProvider = { ARRAYSIZE(k1NewGameStringPC98Japanese), k1NewGameStringPC98Japanese };
+
+static const char *const k1ConfigStringsPC98Japanese[9] = {
+ "\x82\xB2\x82\xAD\x92""x""\x82\xAD",
+ "\x92""x""\x82\xAD",
+ "\x95\x81\x92\xCA",
+ "\x91\xAC\x82\xAD",
+ "\x82\xB2\x82\xAD\x91\xAC\x82\xAD",
+ "\x82\xB2\x82\xAD\x92""x""\x82\xAD",
+ "\x95\x81\x92\xCA",
+ "\x91\xAC\x82\xAD",
+ "\x97""v""\x83""N""\x83\x8A\x83""b""\x83""N"
+};
+
+static const StringListProvider k1ConfigStringsPC98JapaneseProvider = { ARRAYSIZE(k1ConfigStringsPC98Japanese), k1ConfigStringsPC98Japanese };
+
+static const char *const k1PC98StoryStringsPC98Japanese[2] = {
+ "\x88\xAB\x82\xCC\x93\xB9\x89\xBB\x8E""t""\x81""A""\x83""}""\x83\x8B\x83""R""\x83\x80\x82\xAA\x98""S""\x82\xF0\x94""j""\x82\xC1\x82\xBD\x81""B",
+ "\x8D\xA1\x82\xE2\x82\xB1\x82\xCC\x8D\x91\x82\xCC\x96\x82\x96""@""\x82\xCD\x82\xB7\x82\xD7\x82\xC4\x94\xDE\x82\xC9\x8E""x""\x94""z""\x82\xB3\x82\xEA\x82\xC4\x82\xB5\x82\xDC\x82\xC1\x82\xBD\x81""B"
+};
+
+static const StringListProvider k1PC98StoryStringsPC98JapaneseProvider = { ARRAYSIZE(k1PC98StoryStringsPC98Japanese), k1PC98StoryStringsPC98Japanese };
+
+static const byte k1CreditsStringsPC98Japanese[1328] = {
+ 0x0D, 0x02, 0x54, 0x48, 0x45, 0x20, 0x45, 0x4E,
+ 0x44, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x46, 0x61, 0x62, 0x6C, 0x65,
+ 0x73, 0x20, 0x26, 0x20, 0x46, 0x69, 0x65, 0x6E,
+ 0x64, 0x73, 0x0D, 0x02, 0x42, 0x6F, 0x6F, 0x6B,
+ 0x20, 0x49, 0x0D, 0x02, 0x54, 0x48, 0x45, 0x20,
+ 0x4C, 0x45, 0x47, 0x45, 0x4E, 0x44, 0x20, 0x4F,
+ 0x46, 0x20, 0x4B, 0x59, 0x52, 0x41, 0x4E, 0x44,
+ 0x49, 0x41, 0x0D, 0x0D, 0x50, 0x75, 0x62, 0x6C,
+ 0x69, 0x73, 0x68, 0x65, 0x64, 0x20, 0x62, 0x79,
+ 0x0D, 0x02, 0x57, 0x65, 0x73, 0x74, 0x77, 0x6F,
+ 0x6F, 0x64, 0x20, 0x53, 0x74, 0x75, 0x64, 0x69,
+ 0x6F, 0x73, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x03, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6F,
+ 0x72, 0x3A, 0x05, 0x04, 0x42, 0x72, 0x65, 0x74,
+ 0x74, 0x20, 0x57, 0x2E, 0x20, 0x53, 0x70, 0x65,
+ 0x72, 0x72, 0x79, 0x0D, 0x0D, 0x03, 0x44, 0x65,
+ 0x73, 0x69, 0x67, 0x6E, 0x3A, 0x05, 0x04, 0x4D,
+ 0x69, 0x63, 0x68, 0x61, 0x65, 0x6C, 0x20, 0x4C,
+ 0x65, 0x67, 0x67, 0x0D, 0x04, 0x52, 0x69, 0x63,
+ 0x6B, 0x20, 0x50, 0x61, 0x72, 0x6B, 0x73, 0x0D,
+ 0x04, 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53, 0x2E,
+ 0x20, 0x4D, 0x75, 0x64, 0x72, 0x61, 0x0D, 0x0D,
+ 0x03, 0x4C, 0x65, 0x61, 0x64, 0x20, 0x50, 0x72,
+ 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x6D, 0x65, 0x72,
+ 0x3A, 0x05, 0x04, 0x4D, 0x69, 0x63, 0x68, 0x61,
+ 0x65, 0x6C, 0x20, 0x4C, 0x65, 0x67, 0x67, 0x0D,
+ 0x0D, 0x03, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74,
+ 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D,
+ 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04, 0x53, 0x63,
+ 0x6F, 0x74, 0x74, 0x20, 0x42, 0x6F, 0x77, 0x65,
+ 0x6E, 0x0D, 0x0D, 0x03, 0x41, 0x6D, 0x69, 0x67,
+ 0x61, 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72, 0x61,
+ 0x6D, 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04, 0x42,
+ 0x69, 0x6C, 0x6C, 0x20, 0x53, 0x74, 0x6F, 0x6B,
+ 0x65, 0x73, 0x0D, 0x0D, 0x03, 0x50, 0x43, 0x2D,
+ 0x39, 0x38, 0x20, 0x50, 0x72, 0x6F, 0x67, 0x72,
+ 0x61, 0x6D, 0x6D, 0x65, 0x72, 0x3A, 0x05, 0x04,
+ 0x59, 0x75, 0x6B, 0x69, 0x6F, 0x20, 0x53, 0x65,
+ 0x6B, 0x69, 0x67, 0x75, 0x63, 0x68, 0x69, 0x0D,
+ 0x0D, 0x03, 0x49, 0x6E, 0x74, 0x72, 0x6F, 0x20,
+ 0x26, 0x20, 0x46, 0x69, 0x6E, 0x61, 0x6C, 0x65,
+ 0x3A, 0x05, 0x04, 0x43, 0x68, 0x72, 0x69, 0x73,
+ 0x74, 0x6F, 0x70, 0x68, 0x65, 0x72, 0x20, 0x59,
+ 0x61, 0x74, 0x65, 0x73, 0x0D, 0x0D, 0x03, 0x41,
+ 0x72, 0x74, 0x20, 0x26, 0x20, 0x47, 0x72, 0x61,
+ 0x70, 0x68, 0x69, 0x63, 0x73, 0x3A, 0x05, 0x04,
+ 0x52, 0x69, 0x63, 0x6B, 0x20, 0x50, 0x61, 0x72,
+ 0x6B, 0x73, 0x0D, 0x04, 0x52, 0x65, 0x6E, 0x20,
+ 0x4F, 0x6C, 0x73, 0x65, 0x6E, 0x0D, 0x04, 0x4C,
+ 0x6F, 0x75, 0x69, 0x73, 0x65, 0x20, 0x53, 0x61,
+ 0x6E, 0x64, 0x6F, 0x76, 0x61, 0x6C, 0x0D, 0x04,
+ 0x4A, 0x6F, 0x73, 0x65, 0x70, 0x68, 0x20, 0x48,
+ 0x65, 0x77, 0x69, 0x74, 0x74, 0x20, 0x49, 0x56,
+ 0x0D, 0x04, 0x4A, 0x75, 0x64, 0x69, 0x74, 0x68,
+ 0x20, 0x50, 0x65, 0x74, 0x65, 0x72, 0x73, 0x6F,
+ 0x6E, 0x0D, 0x04, 0x41, 0x61, 0x72, 0x6F, 0x6E,
+ 0x20, 0x50, 0x6F, 0x77, 0x65, 0x6C, 0x6C, 0x0D,
+ 0x04, 0x45, 0x6C, 0x69, 0x65, 0x20, 0x41, 0x72,
+ 0x61, 0x62, 0x69, 0x61, 0x6E, 0x0D, 0x04, 0x45,
+ 0x72, 0x69, 0x63, 0x20, 0x53, 0x68, 0x75, 0x6C,
+ 0x74, 0x73, 0x0D, 0x0D, 0x03, 0x41, 0x75, 0x64,
+ 0x69, 0x6F, 0x20, 0x44, 0x69, 0x72, 0x65, 0x63,
+ 0x74, 0x6F, 0x72, 0x3A, 0x05, 0x04, 0x50, 0x61,
+ 0x75, 0x6C, 0x20, 0x53, 0x2E, 0x20, 0x4D, 0x75,
+ 0x64, 0x72, 0x61, 0x0D, 0x0D, 0x03, 0x4D, 0x75,
+ 0x73, 0x69, 0x63, 0x3A, 0x05, 0x04, 0x46, 0x72,
+ 0x61, 0x6E, 0x6B, 0x20, 0x4B, 0x6C, 0x65, 0x70,
+ 0x61, 0x63, 0x6B, 0x69, 0x0D, 0x03, 0x28, 0x50,
+ 0x43, 0x2D, 0x39, 0x38, 0x29, 0x05, 0x04, 0x54,
+ 0x61, 0x6B, 0x65, 0x73, 0x68, 0x69, 0x20, 0x41,
+ 0x62, 0x6F, 0x0D, 0x0D, 0x03, 0x53, 0x6F, 0x75,
+ 0x6E, 0x64, 0x20, 0x45, 0x66, 0x66, 0x65, 0x63,
+ 0x74, 0x73, 0x3A, 0x05, 0x04, 0x44, 0x77, 0x69,
+ 0x67, 0x68, 0x74, 0x20, 0x4F, 0x6B, 0x61, 0x68,
+ 0x61, 0x72, 0x61, 0x0D, 0x03, 0x28, 0x50, 0x43,
+ 0x2D, 0x39, 0x38, 0x29, 0x05, 0x04, 0x54, 0x61,
+ 0x6B, 0x65, 0x73, 0x68, 0x69, 0x20, 0x41, 0x62,
+ 0x6F, 0x0D, 0x0D, 0x03, 0x57, 0x72, 0x69, 0x74,
+ 0x65, 0x72, 0x3A, 0x05, 0x04, 0x22, 0x43, 0x6F,
+ 0x63, 0x6F, 0x22, 0x0D, 0x0D, 0x03, 0x54, 0x72,
+ 0x61, 0x6E, 0x73, 0x6C, 0x61, 0x74, 0x6F, 0x72,
+ 0x3A, 0x05, 0x04, 0x4D, 0x69, 0x6E, 0x6F, 0x72,
+ 0x75, 0x20, 0x4E, 0x61, 0x6B, 0x61, 0x7A, 0x61,
+ 0x77, 0x61, 0x0D, 0x04, 0x59, 0x75, 0x72, 0x69,
+ 0x20, 0x49, 0x74, 0x6F, 0x0D, 0x0D, 0x03, 0x51,
+ 0x75, 0x61, 0x6C, 0x69, 0x74, 0x79, 0x20, 0x41,
+ 0x73, 0x73, 0x75, 0x72, 0x61, 0x6E, 0x63, 0x65,
+ 0x3A, 0x05, 0x04, 0x47, 0x6C, 0x65, 0x6E, 0x6E,
+ 0x20, 0x53, 0x70, 0x65, 0x72, 0x72, 0x79, 0x0D,
+ 0x04, 0x4D, 0x61, 0x74, 0x74, 0x20, 0x43, 0x6F,
+ 0x6C, 0x6C, 0x69, 0x6E, 0x73, 0x0D, 0x04, 0x42,
+ 0x69, 0x6C, 0x6C, 0x20, 0x46, 0x6F, 0x73, 0x74,
+ 0x65, 0x72, 0x0D, 0x04, 0x4D, 0x69, 0x63, 0x68,
+ 0x61, 0x65, 0x6C, 0x20, 0x4C, 0x69, 0x67, 0x68,
+ 0x74, 0x6E, 0x65, 0x72, 0x0D, 0x04, 0x4D, 0x69,
+ 0x63, 0x68, 0x61, 0x65, 0x6C, 0x20, 0x47, 0x61,
+ 0x74, 0x65, 0x72, 0x0D, 0x04, 0x45, 0x75, 0x67,
+ 0x65, 0x6E, 0x65, 0x20, 0x4D, 0x61, 0x72, 0x74,
+ 0x69, 0x6E, 0x0D, 0x04, 0x4D, 0x69, 0x63, 0x68,
+ 0x61, 0x65, 0x6C, 0x20, 0x47, 0x6C, 0x6F, 0x73,
+ 0x65, 0x63, 0x6B, 0x69, 0x0D, 0x04, 0x4A, 0x75,
+ 0x73, 0x74, 0x69, 0x6E, 0x20, 0x4E, 0x6F, 0x72,
+ 0x72, 0x0D, 0x04, 0x54, 0x6F, 0x70, 0x20, 0x53,
+ 0x74, 0x61, 0x72, 0x20, 0x54, 0x65, 0x73, 0x74,
+ 0x69, 0x6E, 0x67, 0x0D, 0x04, 0x54, 0x65, 0x73,
+ 0x74, 0x69, 0x6E, 0x67, 0x20, 0x31, 0x2C, 0x32,
+ 0x2C, 0x33, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x53,
+ 0x70, 0x65, 0x63, 0x69, 0x61, 0x6C, 0x20, 0x54,
+ 0x68, 0x61, 0x6E, 0x6B, 0x73, 0x20, 0x74, 0x6F,
+ 0x0D, 0x4C, 0x79, 0x6C, 0x65, 0x20, 0x4A, 0x2E,
+ 0x20, 0x48, 0x61, 0x6C, 0x6C, 0x0D, 0x44, 0x61,
+ 0x76, 0x69, 0x64, 0x20, 0x42, 0x69, 0x73, 0x68,
+ 0x6F, 0x70, 0x0D, 0x22, 0x54, 0x68, 0x65, 0x20,
+ 0x44, 0x6F, 0x63, 0x22, 0x0D, 0x61, 0x6E, 0x64,
+ 0x0D, 0x46, 0x69, 0x72, 0x65, 0x62, 0x65, 0x72,
+ 0x72, 0x79, 0x20, 0x47, 0x72, 0x65, 0x65, 0x6E,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x43,
+ 0x41, 0x53, 0x54, 0x20, 0x4F, 0x46, 0x20, 0x43,
+ 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52,
+ 0x53, 0x0D, 0x0D, 0x4D, 0x61, 0x6C, 0x63, 0x6F,
+ 0x6C, 0x6D, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4A,
+ 0x65, 0x73, 0x74, 0x65, 0x72, 0x0D, 0x42, 0x72,
+ 0x61, 0x6E, 0x64, 0x6F, 0x6E, 0x20, 0x74, 0x68,
+ 0x65, 0x20, 0x42, 0x6F, 0x6C, 0x64, 0x0D, 0x42,
+ 0x72, 0x61, 0x6E, 0x64, 0x79, 0x77, 0x69, 0x6E,
+ 0x65, 0x20, 0x61, 0x6E, 0x64, 0x20, 0x44, 0x61,
+ 0x72, 0x6D, 0x0D, 0x50, 0x72, 0x69, 0x65, 0x73,
+ 0x74, 0x65, 0x73, 0x73, 0x20, 0x42, 0x72, 0x79,
+ 0x6E, 0x6E, 0x0D, 0x5A, 0x61, 0x6E, 0x74, 0x68,
+ 0x69, 0x61, 0x2C, 0x20, 0x4C, 0x61, 0x64, 0x79,
+ 0x20, 0x6F, 0x66, 0x20, 0x41, 0x6C, 0x63, 0x68,
+ 0x65, 0x6D, 0x79, 0x0D, 0x48, 0x65, 0x72, 0x6D,
+ 0x61, 0x6E, 0x20, 0x74, 0x68, 0x65, 0x20, 0x48,
+ 0x61, 0x6E, 0x64, 0x79, 0x6D, 0x61, 0x6E, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x01, 0x41, 0x6E, 0x79, 0x20, 0x63,
+ 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72,
+ 0x73, 0x20, 0x69, 0x6E, 0x20, 0x74, 0x68, 0x69,
+ 0x73, 0x20, 0x67, 0x61, 0x6D, 0x65, 0x20, 0x77,
+ 0x68, 0x6F, 0x20, 0x62, 0x65, 0x61, 0x72, 0x0D,
+ 0x01, 0x72, 0x65, 0x73, 0x65, 0x6D, 0x62, 0x6C,
+ 0x61, 0x6E, 0x63, 0x65, 0x20, 0x74, 0x6F, 0x20,
+ 0x70, 0x65, 0x72, 0x73, 0x6F, 0x6E, 0x73, 0x20,
+ 0x6C, 0x69, 0x76, 0x69, 0x6E, 0x67, 0x20, 0x6F,
+ 0x72, 0x0D, 0x01, 0x64, 0x65, 0x61, 0x64, 0x20,
+ 0x61, 0x72, 0x65, 0x20, 0x70, 0x75, 0x72, 0x65,
+ 0x6C, 0x79, 0x20, 0x63, 0x6F, 0x69, 0x6E, 0x63,
+ 0x69, 0x64, 0x65, 0x6E, 0x74, 0x61, 0x6C, 0x2E,
+ 0x0D, 0x0D, 0x0D, 0x01, 0x43, 0x6F, 0x70, 0x79,
+ 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x43,
+ 0x29, 0x20, 0x31, 0x39, 0x39, 0x32, 0x2C, 0x20,
+ 0x57, 0x65, 0x73, 0x74, 0x77, 0x6F, 0x6F, 0x64,
+ 0x20, 0x53, 0x74, 0x75, 0x64, 0x69, 0x6F, 0x73,
+ 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x0D, 0x01,
+ 0x43, 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68,
+ 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x31, 0x39,
+ 0x39, 0x33, 0x2C, 0x20, 0x53, 0x74, 0x61, 0x72,
+ 0x20, 0x43, 0x72, 0x61, 0x66, 0x74, 0x2C, 0x20,
+ 0x49, 0x6E, 0x63, 0x2E, 0x20, 0x20, 0x20, 0x20,
+ 0x20, 0x20, 0x0D, 0x01, 0x41, 0x6C, 0x6C, 0x20,
+ 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72,
+ 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2E,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x00, 0x00
+};
+
+static const ByteProvider k1CreditsStringsPC98JapaneseProvider = { ARRAYSIZE(k1CreditsStringsPC98Japanese), k1CreditsStringsPC98Japanese };
+
diff --git a/devtools/create_kyradat/resources/lol_dos.h b/devtools/create_kyradat/resources/lol_dos.h
new file mode 100644
index 0000000000..9f7d2e79b9
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos.h
@@ -0,0 +1,1558 @@
+static const char *const kLoLIngamePakFilesDOS[11] = {
+ "VOC.PAK",
+ "GENERAL.PAK",
+ "CHAPTER1.PAK",
+ "CHAPTER2.PAK",
+ "CHAPTER3.PAK",
+ "CHAPTER4.PAK",
+ "CHAPTER5.PAK",
+ "CHAPTER6.PAK",
+ "CHAPTER7.PAK",
+ "CHAPTER8.PAK",
+ "DRIVERS.PAK"
+};
+
+static const StringListProvider kLoLIngamePakFilesDOSProvider = { ARRAYSIZE(kLoLIngamePakFilesDOS), kLoLIngamePakFilesDOS };
+
+static const char *const kLoLIngameSfxFilesDOS[230] = {
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "DOORMTOP",
+ "DOORMTCL",
+ "PMETLHI",
+ "SWING6",
+ "MDAMAGE2",
+ "LEVERDN",
+ "LEVERUP",
+ "MTLDRSLM",
+ "DOORWDOP",
+ "DOORWDCL",
+ "KEYOPEN",
+ "KEYLOCK",
+ "PORTCUL",
+ "PORTCULD",
+ "LOKPICK",
+ "OCEAN2",
+ "NUNCHUK",
+ "SWING",
+ "SHWING1",
+ "SWING6",
+ "THROW",
+ "CROSSBOW",
+ "HEAL1",
+ "FIRESPL1",
+ "PRESSIN",
+ "PRESSOUT",
+ "PLATEON",
+ "PLATEOFF",
+ "DORWDSLM",
+ "LITENIN1",
+ "ICESPEL2",
+ "SPELL4B",
+ "SHIELD1",
+ "3BOLTC",
+ "2BOLTC",
+ "1BOLTC",
+ "DAWNSPL1",
+ "HEALKING",
+ "SPELL7",
+ "SWING1",
+ "EXPLODE",
+ "CROWCAW",
+ "MORPH2",
+ "CHEST",
+ "MONEY",
+ "SPELBK2",
+ "AUTOMAP",
+ "MINECRT3",
+ "CREAK1",
+ "TURNPAG2",
+ "POLGULP1",
+ "GOOEY1",
+ "BUCKBELL",
+ "KEEPXIT2",
+ "VSCREAM4",
+ "EMPTY",
+ "GOOEY1",
+ "GOOEY2",
+ "RIPPOD4",
+ "PODSKEL1",
+ "INVISO",
+ "OPENBOX2",
+ "ACCEPT2",
+ "BOW2",
+ "HACHUCKM",
+ "FOUNDRY2",
+ "FOUNDRY2",
+ "FOUNDRY4",
+ "FOUNDRY6",
+ "CLEANGL1",
+ "CLEANGL2",
+ "GLOWY1",
+ "DORSTNOP",
+ "DORSTNCL",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "ADAMAGE1",
+ "HDAMAGE1",
+ "TDAMAGE1",
+ "BDAMAGE1",
+ "LDAMAGE1",
+ "TDAMAGE2",
+ "CDAMAGE1",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "GOOD1",
+ "GOOD2",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "LITENIN1",
+ "COMPASS2",
+ "KINGDOR1",
+ "GLASBRK2",
+ "FLUTTER3",
+ "NUNCHUK",
+ "WALLFALL",
+ "WALLHIT",
+ "MWHOA1",
+ "LADDER",
+ "WHITTL3",
+ "ROWBOAT1",
+ "HORSEY2",
+ "SNORT",
+ "PUMPDOR1",
+ "PUMPSM2",
+ "PUMPSM3",
+ "SPARK1",
+ "BEZEL",
+ "SWARM",
+ "CHEST1",
+ "WRIT1",
+ "CAUSFOG",
+ "VAELAN2",
+ "ROARSPL1",
+ "RATTLER",
+ "WINK1",
+ "HANDFATE",
+ "QUAKE1",
+ "WIZLAMP1",
+ "SAP2",
+ "MSTDOOM1",
+ "GARDIAN1",
+ "VORTEX1",
+ "LION1",
+ "STEAM",
+ "SQUAWCK",
+ "SLIDEMUG",
+ "SPARKHIT",
+ "SPARKHIT2",
+ "SPARKHIT3",
+ "ICEFORM",
+ "ICEXPLOD",
+ "EXPLODE2",
+ "EXPLODE3",
+ "BOLTQUK2",
+ "BOLT2",
+ "BOLT3",
+ "SNKBITE",
+ "HANDGLOW",
+ "MSTDOOM2",
+ "MSTDOOM3",
+ "GARDIAN2",
+ "PLUSPOWR",
+ "MINSPOWR",
+ "BLUDCURL",
+ "LORAGASP",
+ "POURH2O",
+ "AWHOA2",
+ "HWHOA1",
+ "CWHOA1",
+ "AFALL2",
+ "EMPTY",
+ "CFALL2",
+ "MFALL2",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "WRIT2",
+ "WRIT3",
+ "WRIT4",
+ "WRIT5",
+ "WRIT6",
+ "RUCKUS1",
+ "RUCKUS3",
+ "CHANT1",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "CHANT2",
+ "CHANT3",
+ ""
+};
+
+static const StringListProvider kLoLIngameSfxFilesDOSProvider = { ARRAYSIZE(kLoLIngameSfxFilesDOS), kLoLIngameSfxFilesDOS };
+
+static const byte kLoLIngameSfxIndexDOS[1000] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x34, 0x00, 0x6F, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x7D, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00,
+ 0x7F, 0x00, 0x00, 0x00, 0x36, 0x00, 0x73, 0x00,
+ 0x35, 0x00, 0x9C, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0x80, 0x00, 0x73, 0x00, 0x81, 0x00, 0x73, 0x00,
+ 0x82, 0x00, 0x73, 0x00, 0x83, 0x00, 0x73, 0x00,
+ 0x84, 0x00, 0x73, 0x00, 0x85, 0x00, 0x73, 0x00,
+ 0x86, 0x00, 0x73, 0x00, 0xD7, 0x00, 0x76, 0x00,
+ 0x87, 0x00, 0x65, 0x00, 0x38, 0x00, 0x5F, 0x00,
+ 0x37, 0x00, 0x5F, 0x00, 0x32, 0x00, 0x0A, 0x00,
+ 0x33, 0x00, 0x64, 0x00, 0x39, 0x00, 0x65, 0x00,
+ 0x3A, 0x00, 0x0A, 0x00, 0x3B, 0x00, 0x14, 0x00,
+ 0x4E, 0x00, 0x65, 0x00, 0x7A, 0x00, 0x64, 0x00,
+ 0x7B, 0x00, 0x64, 0x00, 0x88, 0x00, 0x65, 0x00,
+ 0x3C, 0x00, 0x65, 0x00, 0x3D, 0x00, 0x64, 0x00,
+ 0x89, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x14, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
+ 0x40, 0x00, 0x65, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0xC9, 0x00, 0x72, 0x00, 0xCA, 0x00, 0x72, 0x00,
+ 0xCB, 0x00, 0x72, 0x00, 0xCC, 0x00, 0x74, 0x00,
+ 0xCD, 0x00, 0x74, 0x00, 0xCE, 0x00, 0x74, 0x00,
+ 0xCF, 0x00, 0x74, 0x00, 0xD0, 0x00, 0x73, 0x00,
+ 0xD1, 0x00, 0x73, 0x00, 0xD2, 0x00, 0x73, 0x00,
+ 0xD3, 0x00, 0x73, 0x00, 0xD4, 0x00, 0x72, 0x00,
+ 0xD5, 0x00, 0x72, 0x00, 0xD6, 0x00, 0x72, 0x00,
+ 0x42, 0x00, 0x6F, 0x00, 0x43, 0x00, 0x6F, 0x00,
+ 0x44, 0x00, 0x6F, 0x00, 0x45, 0x00, 0x6F, 0x00,
+ 0x46, 0x00, 0x6F, 0x00, 0x47, 0x00, 0x6F, 0x00,
+ 0x48, 0x00, 0x77, 0x00, 0x49, 0x00, 0x89, 0xFF,
+ 0x4F, 0x00, 0x89, 0xFF, 0x50, 0x00, 0x89, 0xFF,
+ 0xA0, 0x00, 0x8A, 0xFF, 0xA1, 0x00, 0x89, 0xFF,
+ 0xA2, 0x00, 0x89, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0xA3, 0x00, 0x89, 0xFF, 0xA4, 0x00, 0x89, 0xFF,
+ 0x4A, 0x00, 0x13, 0x00, 0x4B, 0x00, 0x13, 0x00,
+ 0x4C, 0x00, 0x32, 0x00, 0x4D, 0x00, 0x32, 0x00,
+ 0x5F, 0x00, 0x0A, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x52, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x56, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x58, 0x00, 0x77, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x6A, 0x00,
+ 0x8A, 0x00, 0x6F, 0x00, 0x8B, 0x00, 0x6F, 0x00,
+ 0x8C, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x00, 0x00,
+ 0x5A, 0x00, 0x77, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x6F, 0x00,
+ 0x61, 0x00, 0x76, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x62, 0x00, 0x76, 0x00, 0x63, 0x00, 0x3C, 0x00,
+ 0x64, 0x00, 0x6D, 0x00, 0x65, 0x00, 0x00, 0x00,
+ 0x66, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00,
+ 0x6A, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x88, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x74, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00,
+ 0x79, 0x00, 0x77, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x77, 0x00,
+ 0x93, 0x00, 0x1E, 0x00, 0x94, 0x00, 0x89, 0xFF,
+ 0x95, 0x00, 0x77, 0x00, 0x96, 0x00, 0x76, 0x00,
+ 0x97, 0x00, 0x72, 0x00, 0x98, 0x00, 0x00, 0x00,
+ 0x99, 0x00, 0x50, 0x00, 0x9A, 0x00, 0x78, 0x00,
+ 0x9B, 0x00, 0x64, 0x00, 0x9C, 0x00, 0x5A, 0x00,
+ 0x9D, 0x00, 0x64, 0x00, 0x9E, 0x00, 0x65, 0x00,
+ 0x9F, 0x00, 0x66, 0x00, 0xA5, 0x00, 0x89, 0xFF,
+ 0xA6, 0x00, 0x89, 0xFF, 0xA7, 0x00, 0x77, 0x00,
+ 0xA8, 0x00, 0x76, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xA9, 0x00, 0x77, 0x00, 0xAA, 0x00, 0x77, 0x00,
+ 0xAB, 0x00, 0x77, 0x00, 0xAC, 0x00, 0x77, 0x00,
+ 0xAD, 0x00, 0x77, 0x00, 0xAE, 0x00, 0x77, 0x00,
+ 0xAF, 0x00, 0x76, 0x00, 0xB0, 0x00, 0x77, 0x00,
+ 0xB1, 0x00, 0x64, 0x00, 0xB2, 0x00, 0x6F, 0x00,
+ 0xB3, 0x00, 0x6E, 0x00, 0xB4, 0x00, 0x6E, 0x00,
+ 0xB5, 0x00, 0x77, 0x00, 0xB6, 0x00, 0x77, 0x00,
+ 0xB7, 0x00, 0x77, 0x00, 0xB8, 0x00, 0x76, 0x00,
+ 0xB9, 0x00, 0x77, 0x00, 0xBA, 0x00, 0x77, 0x00,
+ 0xBB, 0x00, 0x77, 0x00, 0xBC, 0x00, 0x77, 0x00,
+ 0xBD, 0x00, 0x77, 0x00, 0xBE, 0x00, 0x77, 0x00,
+ 0xBF, 0x00, 0x77, 0x00, 0xC0, 0x00, 0x76, 0x00,
+ 0xC1, 0x00, 0x77, 0x00, 0xC2, 0x00, 0x77, 0x00,
+ 0xC3, 0x00, 0x77, 0x00, 0xC4, 0x00, 0x6E, 0x00,
+ 0xC5, 0x00, 0x6E, 0x00, 0xC6, 0x00, 0x7D, 0x00,
+ 0xC7, 0x00, 0x78, 0x00, 0xC8, 0x00, 0x78, 0x00,
+ 0xD8, 0x00, 0x77, 0x00, 0xD9, 0x00, 0x77, 0x00,
+ 0xDA, 0x00, 0x77, 0x00, 0xDB, 0x00, 0x77, 0x00,
+ 0xDC, 0x00, 0x77, 0x00, 0xDD, 0x00, 0x78, 0x00,
+ 0xDE, 0x00, 0x78, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xE3, 0x00, 0x77, 0x00, 0xE4, 0x00, 0x77, 0x00,
+ 0xE0, 0x00, 0x1E, 0x00, 0xDF, 0x00, 0x77, 0x00,
+ 0xE1, 0x00, 0x05, 0x00, 0xE2, 0x00, 0x0A, 0x00,
+ 0x00, 0x00, 0x50, 0x00, 0x01, 0x00, 0x50, 0x00,
+ 0x02, 0x00, 0x50, 0x00, 0x03, 0x00, 0x50, 0x00,
+ 0x04, 0x00, 0x50, 0x00, 0x05, 0x00, 0x50, 0x00,
+ 0x06, 0x00, 0x50, 0x00, 0x07, 0x00, 0x50, 0x00,
+ 0x08, 0x00, 0x50, 0x00, 0x09, 0x00, 0x50, 0x00,
+ 0x0A, 0x00, 0x50, 0x00, 0x0B, 0x00, 0x50, 0x00,
+ 0x0C, 0x00, 0x50, 0x00, 0x0D, 0x00, 0x50, 0x00,
+ 0x0E, 0x00, 0x50, 0x00, 0x0F, 0x00, 0x50, 0x00,
+ 0x10, 0x00, 0x50, 0x00, 0x11, 0x00, 0x5A, 0x00,
+ 0x12, 0x00, 0x5A, 0x00, 0x13, 0x00, 0x5A, 0x00,
+ 0x14, 0x00, 0x5A, 0x00, 0x15, 0x00, 0x5A, 0x00,
+ 0x16, 0x00, 0x5A, 0x00, 0x17, 0x00, 0x5A, 0x00,
+ 0x18, 0x00, 0x5A, 0x00, 0x19, 0x00, 0x5A, 0x00,
+ 0x1A, 0x00, 0x5A, 0x00, 0x1B, 0x00, 0x5A, 0x00,
+ 0x1C, 0x00, 0x5A, 0x00, 0x1D, 0x00, 0x5A, 0x00,
+ 0x1E, 0x00, 0x5A, 0x00, 0x1F, 0x00, 0x5A, 0x00,
+ 0x20, 0x00, 0x5A, 0x00, 0x21, 0x00, 0x73, 0x00,
+ 0x22, 0x00, 0x73, 0x00, 0x23, 0x00, 0x73, 0x00,
+ 0x24, 0x00, 0x73, 0x00, 0x25, 0x00, 0x73, 0x00,
+ 0x26, 0x00, 0x73, 0x00, 0x27, 0x00, 0x73, 0x00,
+ 0x28, 0x00, 0x73, 0x00, 0x29, 0x00, 0x73, 0x00,
+ 0x2A, 0x00, 0x73, 0x00, 0x2B, 0x00, 0x50, 0x00,
+ 0x2C, 0x00, 0x5A, 0x00, 0x2D, 0x00, 0x5A, 0x00,
+ 0x2E, 0x00, 0x5A, 0x00, 0x2F, 0x00, 0x5A, 0x00,
+ 0x30, 0x00, 0x5A, 0x00, 0x31, 0x00, 0x5A, 0x00
+};
+
+static const ByteProvider kLoLIngameSfxIndexDOSProvider = { ARRAYSIZE(kLoLIngameSfxIndexDOS), kLoLIngameSfxIndexDOS };
+
+static const byte kLoLMusicTrackMapDOS[240] = {
+ 0x01, 0x61, 0x02, 0x01, 0x61, 0x03, 0x01, 0x61,
+ 0x04, 0x01, 0x61, 0x05, 0x03, 0x61, 0x03, 0x01,
+ 0x61, 0x07, 0x01, 0x61, 0x08, 0x01, 0x62, 0x02,
+ 0x01, 0x64, 0x03, 0x01, 0x62, 0x04, 0x01, 0x62,
+ 0x05, 0x01, 0x62, 0x06, 0x01, 0x62, 0x07, 0x01,
+ 0x62, 0x08, 0x01, 0x62, 0x09, 0x01, 0x63, 0x02,
+ 0x01, 0x63, 0x03, 0x01, 0x63, 0x04, 0x01, 0x63,
+ 0x05, 0x01, 0x63, 0x06, 0x01, 0x63, 0x07, 0x01,
+ 0x64, 0x02, 0x02, 0x61, 0x02, 0x02, 0x61, 0x03,
+ 0x02, 0x61, 0x04, 0x02, 0x61, 0x05, 0x02, 0x61,
+ 0x06, 0x02, 0x61, 0x07, 0x02, 0x61, 0x08, 0x02,
+ 0x61, 0x09, 0x03, 0x61, 0x02, 0x03, 0x61, 0x03,
+ 0x03, 0x61, 0x04, 0x03, 0x61, 0x05, 0x03, 0x61,
+ 0x06, 0x03, 0x61, 0x07, 0x04, 0x61, 0x02, 0x04,
+ 0x61, 0x03, 0x04, 0x61, 0x04, 0x05, 0x61, 0x02,
+ 0x05, 0x61, 0x03, 0x05, 0x61, 0x04, 0x05, 0x61,
+ 0x05, 0x05, 0x61, 0x06, 0x06, 0x61, 0x03, 0x06,
+ 0x61, 0x05, 0x06, 0x61, 0x06, 0x06, 0x62, 0x02,
+ 0x06, 0x61, 0x02, 0x06, 0x61, 0x04, 0x08, 0x61,
+ 0x02, 0x08, 0x61, 0x03, 0x08, 0x61, 0x04, 0x08,
+ 0x61, 0x05, 0x08, 0x61, 0x06, 0x08, 0x61, 0x07,
+ 0x08, 0x62, 0x02, 0x08, 0x62, 0x03, 0x01, 0x61,
+ 0x09, 0x03, 0x62, 0x02, 0x03, 0x62, 0x03, 0x03,
+ 0x62, 0x04, 0x03, 0x62, 0x05, 0x03, 0x62, 0x06,
+ 0x03, 0x62, 0x07, 0x03, 0x62, 0x08, 0x04, 0x61,
+ 0x05, 0x04, 0x61, 0x06, 0x04, 0x61, 0x07, 0x04,
+ 0x61, 0x08, 0x05, 0x62, 0x02, 0x05, 0x62, 0x03,
+ 0x05, 0x62, 0x04, 0x07, 0x61, 0x02, 0x07, 0x61,
+ 0x03, 0x01, 0x64, 0x0A, 0x03, 0x62, 0x09, 0x01,
+ 0x64, 0x04, 0x05, 0x62, 0x05, 0x05, 0x62, 0x06
+};
+
+static const ByteProvider kLoLMusicTrackMapDOSProvider = { ARRAYSIZE(kLoLMusicTrackMapDOS), kLoLMusicTrackMapDOS };
+
+static const byte kLoLIngameGMSfxIndexDOS[250] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x1A, 0x0B, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x25, 0x0B, 0x07, 0x25, 0x25, 0x25, 0x25,
+ 0x25, 0x25, 0x25, 0x1A, 0x11, 0x0E, 0x0E, 0x05,
+ 0x05, 0x11, 0x05, 0x05, 0x11, 0x05, 0x05, 0x11,
+ 0x2A, 0x2B, 0x06, 0xFF, 0x05, 0x05, 0x2B, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x25,
+ 0x25, 0x25, 0x25, 0xFF, 0xFF, 0xFF, 0x0C, 0x0C,
+ 0x0C, 0x0C, 0x0C, 0x0C, 0x08, 0x29, 0x29, 0x27,
+ 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x01, 0x0E,
+ 0x09, 0x09, 0x0A, 0x12, 0xE7, 0x29, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x18, 0x27, 0x13, 0x10, 0x1A, 0x1A,
+ 0xFF, 0xFF, 0x12, 0x26, 0xFF, 0x02, 0x05, 0x05,
+ 0x0F, 0xFF, 0xFF, 0xFF, 0x02, 0x05, 0x21, 0x1A,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x28, 0x0A, 0x19, 0xFF,
+ 0x0B, 0x06, 0x02, 0x02, 0x03, 0x02, 0xFF, 0xFF,
+ 0x0A, 0x0A, 0x0F, 0xFF, 0xFF, 0x0C, 0x1B, 0x22,
+ 0xFF, 0x1A, 0xFF, 0xFF, 0xFF, 0xFF, 0x10, 0x02,
+ 0x03, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A,
+ 0x29, 0x0A, 0x0A, 0x27, 0x0A, 0x28, 0x0A, 0x0A,
+ 0x06, 0xFF, 0x29, 0x29, 0x29, 0x28, 0x12, 0x12,
+ 0x12, 0x29, 0x29, 0x29, 0x25, 0x29, 0x27, 0x27,
+ 0x0C, 0x1A, 0xFF, 0xFF, 0xFF, 0xFF, 0x19, 0x19,
+ 0x19, 0x19, 0x19, 0x22, 0x1B, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x16, 0xFF, 0x16, 0x16, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C,
+ 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C,
+ 0x0C, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
+ 0x22, 0x22, 0x22, 0x16, 0x0C, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLIngameGMSfxIndexDOSProvider = { ARRAYSIZE(kLoLIngameGMSfxIndexDOS), kLoLIngameGMSfxIndexDOS };
+
+static const byte kLoLIngameMT32SfxIndexDOS[250] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x30, 0x2E, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x2C, 0x31, 0x02, 0x2C, 0x2C, 0x2C, 0x2C,
+ 0x2C, 0x2C, 0x2C, 0x1A, 0x0C, 0x03, 0x04, 0x0B,
+ 0x0A, 0x0C, 0x0B, 0x0A, 0x0C, 0x0B, 0x0A, 0x0C,
+ 0x24, 0x25, 0x0D, 0x02, 0x0B, 0x0A, 0x25, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2C,
+ 0x2C, 0x2C, 0x2C, 0xFF, 0xFF, 0xFF, 0x2E, 0x2E,
+ 0x2E, 0x2E, 0x31, 0x31, 0x1B, 0x10, 0x23, 0x21,
+ 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x03, 0x04,
+ 0x2B, 0x2A, 0x32, 0x21, 0x18, 0x23, 0x1B, 0x1B,
+ 0x1B, 0xFF, 0x17, 0x33, 0x32, 0x08, 0x1A, 0x19,
+ 0x02, 0x02, 0x0E, 0x32, 0x09, 0x17, 0x0B, 0x0B,
+ 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0x0B, 0x01, 0x1A,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x33, 0x08, 0x34, 0xFF,
+ 0x31, 0x0D, 0x05, 0x06, 0x05, 0x06, 0xFF, 0xFF,
+ 0x0F, 0x34, 0x07, 0xFF, 0xFF, 0x31, 0x1A, 0x26,
+ 0xFF, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x05,
+ 0x06, 0x33, 0x34, 0x34, 0x34, 0x34, 0x34, 0x33,
+ 0x32, 0x34, 0x34, 0x32, 0x34, 0x33, 0x34, 0xFF,
+ 0x27, 0xFF, 0x23, 0x23, 0x23, 0x21, 0x0E, 0x0E,
+ 0x0E, 0x23, 0x23, 0x23, 0x2C, 0x32, 0x33, 0x33,
+ 0x2F, 0x19, 0xFF, 0xFF, 0xFF, 0x18, 0x17, 0x18,
+ 0x18, 0x17, 0x18, 0x26, 0x06, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x15, 0xFF, 0x15, 0x15, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31,
+ 0x31, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31,
+ 0x31, 0x26, 0x26, 0x26, 0x26, 0x26, 0x26, 0x26,
+ 0x26, 0x26, 0x26, 0x15, 0x31, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLIngameMT32SfxIndexDOSProvider = { ARRAYSIZE(kLoLIngameMT32SfxIndexDOS), kLoLIngameMT32SfxIndexDOS };
+
+static const byte kLoLIngamePcSpkSfxIndexDOS[250] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x04, 0x0C, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x17, 0x0C, 0x10, 0x17, 0x17, 0x17, 0x17,
+ 0x17, 0x17, 0x17, 0x04, 0x14, 0x02, 0x02, 0x05,
+ 0x05, 0x14, 0x05, 0x05, 0x05, 0x14, 0x05, 0x05,
+ 0x14, 0x00, 0x00, 0x10, 0x05, 0x05, 0x01, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x17,
+ 0x17, 0x17, 0x17, 0xFF, 0xFF, 0xFF, 0x0C, 0x0C,
+ 0x0C, 0x0C, 0x0C, 0x0C, 0x12, 0x0E, 0x0F, 0x11,
+ 0x0F, 0x11, 0x12, 0x11, 0x12, 0x12, 0x01, 0x01,
+ 0x02, 0x0A, 0x15, 0x12, 0x0A, 0x0F, 0x15, 0x15,
+ 0x15, 0xFF, 0x0A, 0xFF, 0x16, 0x05, 0x0A, 0x0A,
+ 0x10, 0x10, 0x07, 0x15, 0xFF, 0x0A, 0xFF, 0xFF,
+ 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x10, 0x0A,
+ 0x13, 0x13, 0xFF, 0xFF, 0xFF, 0x01, 0x0A, 0xFF,
+ 0x0C, 0x00, 0x02, 0x02, 0x02, 0x02, 0xFF, 0xFF,
+ 0xFF, 0x15, 0x05, 0xFF, 0xFF, 0x0C, 0x16, 0x0B,
+ 0xFF, 0x0A, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x12, 0x11, 0x12, 0x11, 0x12, 0x11, 0x12,
+ 0x11, 0x12, 0x11, 0x12, 0x11, 0x12, 0x03, 0xFF,
+ 0x02, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x08, 0x08,
+ 0x08, 0x16, 0x16, 0x16, 0x17, 0x16, 0x16, 0x16,
+ 0x0B, 0x0A, 0xFF, 0xFF, 0xFF, 0x0A, 0x0A, 0x0A,
+ 0x0A, 0x0A, 0x0A, 0x06, 0x10, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x14, 0xFF, 0x14, 0x14, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B,
+ 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B,
+ 0x0B, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x14, 0x0B, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLIngamePcSpkSfxIndexDOSProvider = { ARRAYSIZE(kLoLIngamePcSpkSfxIndexDOS), kLoLIngamePcSpkSfxIndexDOS };
+
+static const SpellProperty kLoLSpellPropertiesDOS[10] = {
+ { 16436, { 5, 10, 15, 25 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0100 },
+ { 16437, { 5, 10, 25, 60 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0001 },
+ { 16438, { 8, 15, 30, 80 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0102 },
+ { 16440, { 20, 35, 65, 100 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0103 },
+ { 16441, { 30, 60, 90, 120 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0104 },
+ { 16442, { 30, 60, 90, 150 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0105 },
+ { 16439, { 25, 30, 50, 100 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0106 },
+ { 16443, { 3, 6, 12, 24 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0107 },
+ { 16975, { 15, 15, 15, 15 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0108 },
+ { 16975, { 15, 15, 15, 15 }, 15, 0, { 0, 0, 0, 0 }, 0, 0, 0x0108 }
+};
+
+static const SpellPropertyProvider kLoLSpellPropertiesDOSProvider = { ARRAYSIZE(kLoLSpellPropertiesDOS), kLoLSpellPropertiesDOS };
+
+static const byte kLoLGameShapeMapDOS[276] = {
+ 0x15, 0x54, 0x05, 0x35, 0x09, 0x36, 0x00, 0x34,
+ 0x00, 0x34, 0x00, 0x34, 0x00, 0x3A, 0x26, 0x3B,
+ 0x05, 0x35, 0x07, 0x37, 0x18, 0x3E, 0x0D, 0x3C,
+ 0x06, 0x40, 0x06, 0x3D, 0x01, 0x54, 0x01, 0x54,
+ 0x0A, 0x54, 0x0A, 0x54, 0x0A, 0x54, 0x04, 0x54,
+ 0x04, 0x54, 0x2D, 0x54, 0x2D, 0x54, 0x0B, 0x39,
+ 0x24, 0x54, 0x03, 0x38, 0x00, 0x3A, 0x1E, 0x3C,
+ 0x1E, 0x3C, 0x1B, 0x54, 0x14, 0x54, 0x29, 0x54,
+ 0x02, 0x54, 0x0C, 0x54, 0x22, 0x54, 0x21, 0x3F,
+ 0x0D, 0x3C, 0x25, 0x54, 0x1A, 0x3F, 0x04, 0x54,
+ 0x30, 0x54, 0x31, 0x54, 0x32, 0x54, 0x32, 0x54,
+ 0x00, 0x34, 0x00, 0x34, 0x00, 0x34, 0x00, 0x34,
+ 0x17, 0x54, 0x17, 0x54, 0x0E, 0x54, 0x0E, 0x54,
+ 0x0E, 0x54, 0x26, 0x3B, 0x2C, 0x54, 0x21, 0x3F,
+ 0x07, 0x37, 0x27, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x22, 0x54, 0x22, 0x54,
+ 0x16, 0x54, 0x2D, 0x54, 0x3B, 0x54, 0x3B, 0x54,
+ 0x3A, 0x54, 0x17, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x17, 0x54, 0x0A, 0x54, 0x0A, 0x54, 0x0A, 0x54,
+ 0x1F, 0x54, 0x17, 0x54, 0x27, 0x54, 0x1B, 0x54,
+ 0x1E, 0x3C, 0x2A, 0x54, 0x2F, 0x54, 0x2F, 0x54,
+ 0x2F, 0x54, 0x2F, 0x54, 0x2F, 0x54, 0x2F, 0x54,
+ 0x2C, 0x54, 0x2C, 0x54, 0x2C, 0x54, 0x2C, 0x54,
+ 0x34, 0x54, 0x0F, 0x54, 0x35, 0x41, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x2B, 0x54,
+ 0x1D, 0x54, 0x1D, 0x54, 0x28, 0x54, 0x28, 0x54,
+ 0x28, 0x54, 0x28, 0x54, 0x01, 0x54, 0x14, 0x54,
+ 0x14, 0x54, 0x14, 0x54, 0x14, 0x54, 0x1B, 0x54,
+ 0x27, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x36, 0x54, 0x37, 0x54, 0x38, 0x54,
+ 0x39, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x27, 0x54, 0x2E, 0x54, 0x2E, 0x54,
+ 0x2E, 0x54, 0x2E, 0x54, 0x17, 0x54, 0x01, 0x54,
+ 0x1C, 0x54, 0x1C, 0x54
+};
+
+static const ByteProvider kLoLGameShapeMapDOSProvider = { ARRAYSIZE(kLoLGameShapeMapDOS), kLoLGameShapeMapDOS };
+
+static const byte kLoLSceneItemOffsDOS[8] = {
+ 0x00, 0xFE, 0x01, 0xFF, 0x02, 0x00, 0x01, 0xFF
+};
+
+static const ByteProvider kLoLSceneItemOffsDOSProvider = { ARRAYSIZE(kLoLSceneItemOffsDOS), kLoLSceneItemOffsDOS };
+
+static const byte kLoLCharInvIndexDOS[5] = {
+ 0x00, 0x00, 0x03, 0x01, 0x02
+};
+
+static const ByteProvider kLoLCharInvIndexDOSProvider = { ARRAYSIZE(kLoLCharInvIndexDOS), kLoLCharInvIndexDOS };
+
+static const byte kLoLCharInvDefsDOS[88] = {
+ 0x05, 0x34, 0x50, 0x34, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x05, 0x04, 0x05, 0x1C, 0x50, 0x04, 0x50, 0x1C,
+ 0x05, 0x5D, 0x0F, 0x4E, 0x50, 0x4E, 0x05, 0x19,
+ 0x50, 0x19, 0x05, 0x49, 0x50, 0x49, 0x05, 0x01,
+ 0x05, 0x31, 0x50, 0x01, 0x50, 0x31, 0x05, 0x61,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x34, 0x50, 0x34,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x04, 0x05, 0x1C,
+ 0x50, 0x04, 0x50, 0x1C, 0x05, 0x5D, 0x0F, 0x4E,
+ 0x50, 0x4E, 0x05, 0x34, 0x50, 0x34, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x05, 0x04, 0x05, 0x1C, 0x50, 0x04,
+ 0x50, 0x1C, 0xFF, 0xFF, 0x0F, 0x4E, 0x50, 0x4E
+};
+
+static const ByteProvider kLoLCharInvDefsDOSProvider = { ARRAYSIZE(kLoLCharInvDefsDOS), kLoLCharInvDefsDOS };
+
+static const uint16 kLoLCharDefsManDOS[9] = {
+ 0x0100, 0x0100, 0x0100, 0x0032, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsManDOSProvider = { ARRAYSIZE(kLoLCharDefsManDOS), kLoLCharDefsManDOS };
+
+static const uint16 kLoLCharDefsWomanDOS[9] = {
+ 0x0100, 0x0100, 0x0100, 0x0032, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsWomanDOSProvider = { ARRAYSIZE(kLoLCharDefsWomanDOS), kLoLCharDefsWomanDOS };
+
+static const uint16 kLoLCharDefsKieranDOS[9] = {
+ 0x0180, 0x0080, 0x00C0, 0x0032, 0x0200, 0x00A6, 0x0100, 0x0140,
+ 0x0006
+};
+
+static const Uint16Provider kLoLCharDefsKieranDOSProvider = { ARRAYSIZE(kLoLCharDefsKieranDOS), kLoLCharDefsKieranDOS };
+
+static const uint16 kLoLCharDefsAkshelDOS[9] = {
+ 0x00C0, 0x00C0, 0x0140, 0x0032, 0x0100, 0x0180, 0x0180, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsAkshelDOSProvider = { ARRAYSIZE(kLoLCharDefsAkshelDOS), kLoLCharDefsAkshelDOS };
+
+static const uint32 kLoLExpRequirementsDOS[11] = {
+ 0x00000000, 0x000001F4, 0x000005DC, 0x00001388, 0x000061A8, 0x0000C350, 0x00013880, 0x0001D4C0,
+ 0x0002BF20, 0x00041EB0, 0x7FFFFFFF
+};
+
+static const Uint32Provider kLoLExpRequirementsDOSProvider = { ARRAYSIZE(kLoLExpRequirementsDOS), kLoLExpRequirementsDOS };
+
+static const uint16 kLoLMonsterModifiers1DOS[3] = {
+ 0x00C0, 0x0100, 0x0180
+};
+
+static const Uint16Provider kLoLMonsterModifiers1DOSProvider = { ARRAYSIZE(kLoLMonsterModifiers1DOS), kLoLMonsterModifiers1DOS };
+
+static const uint16 kLoLMonsterModifiers2DOS[3] = {
+ 0x0100, 0x0100, 0x00C0
+};
+
+static const Uint16Provider kLoLMonsterModifiers2DOSProvider = { ARRAYSIZE(kLoLMonsterModifiers2DOS), kLoLMonsterModifiers2DOS };
+
+static const uint16 kLoLMonsterModifiers3DOS[3] = {
+ 0x0140, 0x0100, 0x0080
+};
+
+static const Uint16Provider kLoLMonsterModifiers3DOSProvider = { ARRAYSIZE(kLoLMonsterModifiers3DOS), kLoLMonsterModifiers3DOS };
+
+static const byte kLoLMonsterShiftOffsetsDOS[32] = {
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0xFF, 0x00, 0xFF,
+ 0x00, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFF, 0x00,
+ 0xFF, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0xFF, 0x00, 0x00
+};
+
+static const ByteProvider kLoLMonsterShiftOffsetsDOSProvider = { ARRAYSIZE(kLoLMonsterShiftOffsetsDOS), kLoLMonsterShiftOffsetsDOS };
+
+static const byte kLoLMonsterDirFlagsDOS[16] = {
+ 0x08, 0x14, 0x00, 0x04, 0x04, 0x08, 0x14, 0x00,
+ 0x00, 0x04, 0x08, 0x14, 0x14, 0x00, 0x04, 0x08
+};
+
+static const ByteProvider kLoLMonsterDirFlagsDOSProvider = { ARRAYSIZE(kLoLMonsterDirFlagsDOS), kLoLMonsterDirFlagsDOS };
+
+static const byte kLoLMonsterScaleYDOS[30] = {
+ 0x7C, 0x78, 0x74, 0x70, 0x6C, 0x68, 0x65, 0x62,
+ 0x5F, 0x5C, 0x59, 0x56, 0x53, 0x50, 0x4D, 0x4A,
+ 0x48, 0x46, 0x44, 0x43, 0x41, 0x40, 0x3E, 0x3D,
+ 0x3C, 0x3B, 0x3A, 0x39, 0x38, 0x38
+};
+
+static const ByteProvider kLoLMonsterScaleYDOSProvider = { ARRAYSIZE(kLoLMonsterScaleYDOS), kLoLMonsterScaleYDOS };
+
+static const byte kLoLMonsterScaleXDOS[32] = {
+ 0x98, 0x98, 0x90, 0x88, 0x80, 0x76, 0x6E, 0x68,
+ 0x62, 0x5C, 0x58, 0x54, 0x50, 0x4A, 0x44, 0x40,
+ 0x3C, 0x38, 0x36, 0x32, 0x30, 0x2C, 0x2A, 0x28,
+ 0x26, 0x24, 0x22, 0x20, 0x20, 0x1E, 0x18, 0x10
+};
+
+static const ByteProvider kLoLMonsterScaleXDOSProvider = { ARRAYSIZE(kLoLMonsterScaleXDOS), kLoLMonsterScaleXDOS };
+
+static const uint16 kLoLMonsterScaleWHDOS[65] = {
+ 0x0041, 0x0045, 0x0049, 0x004D, 0x0051, 0x0055, 0x0059, 0x005D,
+ 0x0062, 0x0066, 0x006A, 0x006E, 0x0072, 0x0076, 0x007A, 0x007E,
+ 0x0082, 0x0086, 0x008A, 0x008E, 0x0092, 0x0096, 0x009A, 0x009E,
+ 0x00A3, 0x00A7, 0x00AB, 0x00AF, 0x00B3, 0x00B7, 0x00BB, 0x00BF,
+ 0x00C3, 0x00C7, 0x00CB, 0x00CF, 0x00D3, 0x00D7, 0x00DB, 0x00DF,
+ 0x00E4, 0x00E8, 0x00EC, 0x00F0, 0x00F4, 0x00F8, 0x00FC, 0x0100,
+ 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0100
+};
+
+static const Uint16Provider kLoLMonsterScaleWHDOSProvider = { ARRAYSIZE(kLoLMonsterScaleWHDOS), kLoLMonsterScaleWHDOS };
+
+static const FlyingObjectShape kLoLFlyingObjectShpDOS[13] = {
+ { 0, 0, 1, 0x00, 0x40, },
+ { 2, 2, 3, 0x00, 0x00, },
+ { 4, 4, 4, 0x00, 0x00, },
+ { 5, 5, 5, 0x20, 0x00, },
+ { 6, 6, 6, 0x20, 0x00, },
+ { 7, 7, 7, 0x20, 0x00, },
+ { 9, 8, 15, 0x00, 0x00, },
+ { 11, 10, 12, 0x00, 0x00, },
+ { 12, 12, 12, 0x20, 0x00, },
+ { 14, 13, 15, 0x00, 0x00, },
+ { 16, 16, 16, 0x00, 0x00, },
+ { 17, 17, 17, 0x20, 0x00, },
+ { 18, 18, 18, 0x00, 0x00, }
+};
+
+static const FlyingObjectShapeProvider kLoLFlyingObjectShpDOSProvider = { ARRAYSIZE(kLoLFlyingObjectShpDOS), kLoLFlyingObjectShpDOS };
+
+static const uint16 kLoLInventoryDescDOS[11] = {
+ 0x417A, 0x417B, 0x417A, 0x417B, 0x417C, 0x417D, 0x417E, 0x417F,
+ 0x4180, 0x4181, 0x4181
+};
+
+static const Uint16Provider kLoLInventoryDescDOSProvider = { ARRAYSIZE(kLoLInventoryDescDOS), kLoLInventoryDescDOS };
+
+static const char *const kLoLLevelShpListDOS[12] = {
+ "KEEP.SHP",
+ "FOREST1.SHP",
+ "MANOR.SHP",
+ "CAVE1.SHP",
+ "SWAMP.SHP",
+ "URBISH.SHP",
+ "MINE1.SHP",
+ "TOWER1.SHP",
+ "YVEL1.SHP",
+ "CATWALK.SHP",
+ "RUIN.SHP",
+ "CIMMERIA.SHP"
+};
+
+static const StringListProvider kLoLLevelShpListDOSProvider = { ARRAYSIZE(kLoLLevelShpListDOS), kLoLLevelShpListDOS };
+
+static const char *const kLoLLevelDatListDOS[12] = {
+ "KEEP.DAT",
+ "FOREST1.DAT",
+ "MANOR.DAT",
+ "CAVE1.DAT",
+ "SWAMP.DAT",
+ "URBISH.DAT",
+ "MINE1.DAT",
+ "TOWER1.DAT",
+ "YVEL1.DAT",
+ "CATWALK.DAT",
+ "RUIN.DAT",
+ "CIMMERIA.DAT"
+};
+
+static const StringListProvider kLoLLevelDatListDOSProvider = { ARRAYSIZE(kLoLLevelDatListDOS), kLoLLevelDatListDOS };
+
+static const CompassDef kLoLCompassDefsDOS[32] = {
+ { 0, 3, -3, 0x00 },
+ { 1, 3, -3, 0x00 },
+ { 2, 3, -3, 0x00 },
+ { 3, 5, -3, 0x00 },
+ { 4, 5, -3, 0x00 },
+ { 5, 6, -3, 0x00 },
+ { 6, 6, -3, 0x00 },
+ { 7, 6, -3, 0x00 },
+ { 8, 6, -3, 0x00 },
+ { 7, 6, 4, 0x02 },
+ { 6, 6, 4, 0x02 },
+ { 5, 6, 4, 0x02 },
+ { 4, 5, 4, 0x02 },
+ { 3, 5, 4, 0x02 },
+ { 2, 3, 4, 0x02 },
+ { 1, 3, 4, 0x02 },
+ { 0, 3, 4, 0x02 },
+ { 1, 2, 4, 0x03 },
+ { 2, 2, 4, 0x03 },
+ { 3, 0, 4, 0x03 },
+ { 4, 0, 4, 0x03 },
+ { 5, -1, 4, 0x03 },
+ { 6, -1, 4, 0x03 },
+ { 7, -1, 4, 0x03 },
+ { 8, -1, -3, 0x01 },
+ { 7, -1, -3, 0x01 },
+ { 6, -1, -3, 0x01 },
+ { 5, -1, -3, 0x01 },
+ { 4, 0, -3, 0x01 },
+ { 3, 0, -3, 0x01 },
+ { 2, 2, -3, 0x01 },
+ { 1, 2, -3, 0x01 }
+};
+
+static const CompassDefProvider kLoLCompassDefsDOSProvider = { ARRAYSIZE(kLoLCompassDefsDOS), kLoLCompassDefsDOS };
+
+static const byte kLoLStashSetupDOS[12] = {
+ 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x00, 0x01, 0x01
+};
+
+static const ByteProvider kLoLStashSetupDOSProvider = { ARRAYSIZE(kLoLStashSetupDOS), kLoLStashSetupDOS };
+
+static const byte kLoLDscWallsDOS[36] = {
+ 0xFF, 0xFF, 0x02, 0x01, 0x02, 0x01, 0x02, 0xFF,
+ 0x02, 0x03, 0x02, 0x03, 0xFF, 0xFF, 0x02, 0x01,
+ 0x02, 0x01, 0x02, 0xFF, 0x02, 0x03, 0x02, 0x03,
+ 0x02, 0x01, 0x02, 0xFF, 0x02, 0x03, 0xFF, 0x01,
+ 0x02, 0xFF, 0xFF, 0x03
+};
+
+static const ByteProvider kLoLDscWallsDOSProvider = { ARRAYSIZE(kLoLDscWallsDOS), kLoLDscWallsDOS };
+
+static const byte kLoLDscShapeIndexDOS[36] = {
+ 0x03, 0x09, 0x03, 0x08, 0x03, 0x07, 0x03, 0x03,
+ 0x03, 0xF9, 0x03, 0xF8, 0x03, 0xF7, 0x02, 0x09,
+ 0x02, 0x06, 0x02, 0x02, 0x02, 0xFA, 0x02, 0xF7,
+ 0x01, 0x05, 0x01, 0x01, 0x01, 0xFB, 0x00, 0x04,
+ 0x00, 0x00, 0x00, 0xFC
+};
+
+static const ByteProvider kLoLDscShapeIndexDOSProvider = { ARRAYSIZE(kLoLDscShapeIndexDOS), kLoLDscShapeIndexDOS };
+
+static const byte kLoLDscOvlMapDOS[10] = {
+ 0x00, 0x01, 0x01, 0x01, 0x04, 0x05, 0x05, 0x05,
+ 0x05, 0x04
+};
+
+static const ByteProvider kLoLDscOvlMapDOSProvider = { ARRAYSIZE(kLoLDscOvlMapDOS), kLoLDscOvlMapDOS };
+
+static const uint16 kLoLDscScaleWidthDataDOS[36] = {
+ 0x0060, 0x0000, 0x0060, 0x00CE, 0x0060, 0x0055, 0x0060, 0x0000,
+ 0x0060, 0x0055, 0x0060, 0x00CE, 0x0060, 0x0000, 0x00A0, 0x00AE,
+ 0x00A0, 0x00AA, 0x00A0, 0x0000, 0x00A0, 0x00AA, 0x00A0, 0x00AE,
+ 0x0100, 0x0100, 0x0100, 0x0000, 0x0100, 0x0100, 0x0000, 0x0100,
+ 0x0100, 0x0000, 0x0000, 0x0100
+};
+
+static const Uint16Provider kLoLDscScaleWidthDataDOSProvider = { ARRAYSIZE(kLoLDscScaleWidthDataDOS), kLoLDscScaleWidthDataDOS };
+
+static const uint16 kLoLDscScaleHeightDataDOS[36] = {
+ 0x006A, 0x0000, 0x006A, 0x006A, 0x006A, 0x006A, 0x006A, 0x0000,
+ 0x006A, 0x006A, 0x006A, 0x006A, 0x006A, 0x0000, 0x00AA, 0x0056,
+ 0x00AA, 0x00AA, 0x00AA, 0x0000, 0x00AA, 0x00AA, 0x00AA, 0x0056,
+ 0x0100, 0x0100, 0x0100, 0x0000, 0x0100, 0x0100, 0x0000, 0x0100,
+ 0x0100, 0x0000, 0x0000, 0x0100
+};
+
+static const Uint16Provider kLoLDscScaleHeightDataDOSProvider = { ARRAYSIZE(kLoLDscScaleHeightDataDOS), kLoLDscScaleHeightDataDOS };
+
+static const uint16 kLoLDscXDOS[36] = {
+ 0xFFB0, 0xFFE0, 0xFFE0, 0x0010, 0x0010, 0x0040, 0x0040, 0x0000,
+ 0x0070, 0x0070, 0x00A0, 0x00A0, 0x00D0, 0x00D0, 0xFF86, 0x0000,
+ 0xFFE0, 0x0030, 0x0030, 0x0000, 0x0080, 0x0080, 0x00D0, 0x00B0,
+ 0xFF98, 0x0018, 0x0018, 0x0000, 0x0098, 0x0098, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x00B0, 0x00B0
+};
+
+static const Uint16Provider kLoLDscXDOSProvider = { ARRAYSIZE(kLoLDscXDOS), kLoLDscXDOS };
+
+static const byte kLoLBaseDscYDOS[36] = {
+ 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B,
+ 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x14, 0x1C,
+ 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x1C,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLBaseDscYDOSProvider = { ARRAYSIZE(kLoLBaseDscYDOS), kLoLBaseDscYDOS };
+
+static const byte kLoLDscTileIndexDOS[18] = {
+ 0x00, 0x06, 0x01, 0x05, 0x02, 0x04, 0x03, 0x07,
+ 0x0B, 0x08, 0x0A, 0x09, 0x0C, 0x0E, 0x0D, 0x0F,
+ 0x11, 0x10
+};
+
+static const ByteProvider kLoLDscTileIndexDOSProvider = { ARRAYSIZE(kLoLDscTileIndexDOS), kLoLDscTileIndexDOS };
+
+static const byte kLoLDscUnk2DOS[23] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12
+};
+
+static const ByteProvider kLoLDscUnk2DOSProvider = { ARRAYSIZE(kLoLDscUnk2DOS), kLoLDscUnk2DOS };
+
+static const byte kLoLDscDoorShapeIndexDOS[23] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01
+};
+
+static const ByteProvider kLoLDscDoorShapeIndexDOSProvider = { ARRAYSIZE(kLoLDscDoorShapeIndexDOS), kLoLDscDoorShapeIndexDOS };
+
+static const byte kLoLDscDimData1DOS[324] = {
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD8, 0xD7, 0xD8, 0xD8, 0x02, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xFE, 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0x03,
+ 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xFE, 0xD8, 0x08,
+ 0xD8, 0xD8, 0xD8, 0xFE, 0xF8, 0x06, 0xD8, 0xD8,
+ 0xFA, 0x03, 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xD8, 0xFA, 0xD7, 0x10, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xF2, 0xD8, 0x14, 0xD8, 0xD8,
+ 0xD8, 0xF0, 0x0E, 0x14, 0xD8, 0xED, 0x10, 0xD8,
+ 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8, 0xEC, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0x14, 0xD8, 0xED,
+ 0xD7, 0xD8, 0xD8, 0x13, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0xD8,
+ 0xD8, 0xD8, 0xD7, 0xD8, 0xD8, 0xD7, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0x06, 0xD8, 0xD8, 0xFA, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xFA, 0xD8, 0x10, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xF0, 0xD8, 0xD8,
+ 0xD8, 0xED, 0x10, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0xD8, 0xD8, 0xD7,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFD, 0xD8,
+ 0x13, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xED, 0xD8, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8
+};
+
+static const ByteProvider kLoLDscDimData1DOSProvider = { ARRAYSIZE(kLoLDscDimData1DOS), kLoLDscDimData1DOS };
+
+static const byte kLoLDscDimData2DOS[648] = {
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x02, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x04, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x16, 0x00, 0x00, 0x03,
+ 0x00, 0x16, 0x03, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x16, 0x00, 0x08,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x02,
+ 0x16, 0x00, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x08, 0x0E,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x06, 0x10,
+ 0x00, 0x13, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x0E, 0x16,
+ 0x00, 0x16, 0x00, 0x14, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x16, 0x00, 0x00, 0x14,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x14, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x12, 0x16, 0x14, 0x16, 0x00, 0x16, 0x13, 0x16,
+ 0x16, 0x00, 0x00, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x00, 0x16,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x07, 0x0F,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x03, 0x16, 0x00, 0x16,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16
+};
+
+static const ByteProvider kLoLDscDimData2DOSProvider = { ARRAYSIZE(kLoLDscDimData2DOS), kLoLDscDimData2DOS };
+
+static const byte kLoLDscBlockMapDOS[12] = {
+ 0x02, 0x03, 0x00, 0x01, 0x01, 0x02, 0x03, 0x00,
+ 0x03, 0x00, 0x01, 0x02
+};
+
+static const ByteProvider kLoLDscBlockMapDOSProvider = { ARRAYSIZE(kLoLDscBlockMapDOS), kLoLDscBlockMapDOS };
+
+static const byte kLoLDscDimMapDOS[18] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x03
+};
+
+static const ByteProvider kLoLDscDimMapDOSProvider = { ARRAYSIZE(kLoLDscDimMapDOS), kLoLDscDimMapDOS };
+
+static const byte kLoLDscOvlIndexDOS[20] = {
+ 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x03,
+ 0x03, 0x03, 0x04, 0x04, 0x05, 0x05, 0x05, 0x06,
+ 0x06, 0x07, 0x07, 0x07
+};
+
+static const ByteProvider kLoLDscOvlIndexDOSProvider = { ARRAYSIZE(kLoLDscOvlIndexDOS), kLoLDscOvlIndexDOS };
+
+static const byte kLoLDscBlockIndexDOS[72] = {
+ 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xBE,
+ 0xBF, 0xC0, 0xC1, 0xC2, 0xDF, 0xE0, 0xE1, 0xFF,
+ 0x00, 0x01, 0xA3, 0xC3, 0xE3, 0x03, 0x23, 0x43,
+ 0x63, 0xC2, 0xE2, 0x02, 0x22, 0x42, 0xE1, 0x01,
+ 0x21, 0xE0, 0x00, 0x20, 0x63, 0x62, 0x61, 0x60,
+ 0x5F, 0x5E, 0x5D, 0x42, 0x41, 0x40, 0x3F, 0x3E,
+ 0x21, 0x20, 0x1F, 0x01, 0x00, 0xFF, 0x5D, 0x3D,
+ 0x1D, 0xFD, 0xDD, 0xBD, 0x9D, 0x3E, 0x1E, 0xFE,
+ 0xDE, 0xBE, 0x1F, 0xFF, 0xDF, 0x20, 0x00, 0xE0
+};
+
+static const ByteProvider kLoLDscBlockIndexDOSProvider = { ARRAYSIZE(kLoLDscBlockIndexDOS), kLoLDscBlockIndexDOS };
+
+static const byte kLoLDscDoorY2DOS[128] = {
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,
+ 0x10, 0x11, 0x12, 0x13, 0x14, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x0D, 0x08, 0x03, 0x12, 0x0E, 0x09, 0x04, 0x00,
+ 0x13, 0x0F, 0x0A, 0x05, 0x01, 0x14, 0x10, 0x0B,
+ 0x06, 0x02, 0x11, 0x0C, 0x07, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x14, 0x13, 0x12, 0x11, 0x10, 0x0F, 0x0E, 0x0D,
+ 0x0C, 0x0B, 0x0A, 0x09, 0x08, 0x07, 0x06, 0x05,
+ 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x07, 0x0C, 0x11, 0x02, 0x06, 0x0B, 0x10, 0x14,
+ 0x01, 0x05, 0x0A, 0x0F, 0x13, 0x00, 0x04, 0x09,
+ 0x0E, 0x12, 0x03, 0x08, 0x0D, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLDscDoorY2DOSProvider = { ARRAYSIZE(kLoLDscDoorY2DOS), kLoLDscDoorY2DOS };
+
+static const byte kLoLDscDoorFrameY1DOS[4] = {
+ 0x1E, 0x18, 0x10, 0x00
+};
+
+static const ByteProvider kLoLDscDoorFrameY1DOSProvider = { ARRAYSIZE(kLoLDscDoorFrameY1DOS), kLoLDscDoorFrameY1DOS };
+
+static const byte kLoLDscDoorFrameY2DOS[4] = {
+ 0x3B, 0x47, 0x56, 0x78
+};
+
+static const ByteProvider kLoLDscDoorFrameY2DOSProvider = { ARRAYSIZE(kLoLDscDoorFrameY2DOS), kLoLDscDoorFrameY2DOS };
+
+static const uint16 kLoLDscDoorScaleDOS[8] = {
+ 0x0075, 0x006A, 0x00B9, 0x00B2, 0x0100, 0x0100, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorScaleDOSProvider = { ARRAYSIZE(kLoLDscDoorScaleDOS), kLoLDscDoorScaleDOS };
+
+static const uint16 kLoLDscDoor4DOS[4] = {
+ 0x0005, 0x0002, 0x0008, 0x787C
+};
+
+static const Uint16Provider kLoLDscDoor4DOSProvider = { ARRAYSIZE(kLoLDscDoor4DOS), kLoLDscDoor4DOS };
+
+static const uint16 kLoLDscDoorXDOS[576] = {
+ 0xFF98, 0xFFA0, 0xFFA8, 0xFF90, 0xFF98, 0xFFA0, 0xFFA8, 0xFFB0,
+ 0xFF74, 0xFF7E, 0xFF88, 0xFF92, 0xFF9C, 0xFF74, 0xFF7E, 0xFF88,
+ 0xFF92, 0xFF9C, 0xFF64, 0xFF70, 0xFF7C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFB8, 0xFFC0, 0xFFC8, 0xFFB0, 0xFFB8, 0xFFC0, 0xFFC8, 0xFFD0,
+ 0xFF9C, 0xFFA6, 0xFFB0, 0xFFBA, 0xFFC4, 0xFF9C, 0xFFA6, 0xFFB0,
+ 0xFFBA, 0xFFC4, 0xFF94, 0xFFA0, 0xFFAC, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD8, 0xFFE0, 0xFFE8, 0xFFD0, 0xFFD8, 0xFFE0, 0xFFE8, 0xFFF0,
+ 0xFFC4, 0xFFCE, 0xFFD8, 0xFFE2, 0xFFEC, 0xFFC4, 0xFFCE, 0xFFD8,
+ 0xFFE2, 0xFFEC, 0xFFC4, 0xFFD0, 0xFFDC, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0x0000, 0x0008, 0xFFF0, 0xFFF8, 0x0000, 0x0008, 0x0010,
+ 0xFFEC, 0xFFF6, 0x0000, 0x000A, 0x0014, 0xFFEC, 0xFFF6, 0x0000,
+ 0x000A, 0x0014, 0xFFF4, 0x0000, 0x000C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0018, 0x0020, 0x0028, 0x0010, 0x0018, 0x0020, 0x0028, 0x0030,
+ 0x0014, 0x001E, 0x0028, 0x0032, 0x003C, 0x0014, 0x001E, 0x0028,
+ 0x0032, 0x003C, 0x0024, 0x0030, 0x003C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0038, 0x0040, 0x0048, 0x0030, 0x0038, 0x0040, 0x0048, 0x0050,
+ 0x003C, 0x0046, 0x0050, 0x005A, 0x0064, 0x003C, 0x0046, 0x0050,
+ 0x005A, 0x0064, 0x0054, 0x0060, 0x006C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0058, 0x0060, 0x0068, 0x0050, 0x0058, 0x0060, 0x0068, 0x0070,
+ 0x0064, 0x006E, 0x0078, 0x0082, 0x008C, 0x0064, 0x006E, 0x0078,
+ 0x0082, 0x008C, 0x0084, 0x0090, 0x009C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF94, 0xFFA0, 0xFFAC, 0xFF7E, 0xFF8B, 0xFF98, 0xFFA5, 0xFFB2,
+ 0xFF6C, 0xFF7B, 0xFF8A, 0xFF99, 0xFFA7, 0xFF60, 0xFF70, 0xFF80,
+ 0xFF90, 0xFFA0, 0xFF4C, 0xFF60, 0xFF74, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC4, 0xFFD0, 0xFFDC, 0xFFB2, 0xFFBF, 0xFFCC, 0xFFD9, 0xFFE6,
+ 0xFFA7, 0xFFB6, 0xFFC5, 0xFFD4, 0xFFE2, 0xFFA0, 0xFFB0, 0xFFC0,
+ 0xFFD0, 0xFFE0, 0xFF9C, 0xFFB0, 0xFFC4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF4, 0x0000, 0x000C, 0xFFE6, 0xFFF3, 0x0000, 0x000D, 0x001A,
+ 0xFFE2, 0xFFF1, 0x0000, 0x000F, 0x001E, 0xFFE0, 0xFFF0, 0x0000,
+ 0x0010, 0x0020, 0xFFEC, 0x0000, 0x0014, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0024, 0x0030, 0x003C, 0x001A, 0x0027, 0x0034, 0x0041, 0x004E,
+ 0x001E, 0x002C, 0x003B, 0x004A, 0x0059, 0x0020, 0x0030, 0x0040,
+ 0x0050, 0x0060, 0x003C, 0x0050, 0x0064, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0054, 0x0060, 0x006C, 0x004E, 0x005B, 0x0068, 0x0075, 0x0082,
+ 0x0059, 0x0067, 0x0076, 0x0085, 0x0094, 0x0060, 0x0070, 0x0080,
+ 0x0090, 0x00A0, 0x008C, 0x00A0, 0x00B4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF9C, 0xFFB0, 0xFFC4, 0xFF7C, 0xFF92, 0xFFA8, 0xFFBE, 0xFFD4,
+ 0xFF6D, 0xFF85, 0xFF9E, 0xFFB6, 0xFFCF, 0xFF5E, 0xFF79, 0xFF94,
+ 0xFFAF, 0xFFCA, 0xFF60, 0xFF80, 0xFFA0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFEC, 0x0000, 0x0014, 0xFFD4, 0xFFEA, 0x0000, 0x0016, 0x002C,
+ 0xFFCF, 0xFFE7, 0x0000, 0x0019, 0x0031, 0xFFCA, 0xFFE5, 0x0000,
+ 0x001B, 0x0036, 0xFFE0, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x003C, 0x0050, 0x0064, 0x002C, 0x0042, 0x0058, 0x006E, 0x0084,
+ 0x0031, 0x004A, 0x0062, 0x007B, 0x0093, 0x0036, 0x0051, 0x006C,
+ 0x0087, 0x00A2, 0x0060, 0x0080, 0x00A0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF60, 0xFF80, 0xFFA0, 0xFF1C, 0xFF42, 0xFF68, 0xFF8E, 0xFFB4,
+ 0xFF40, 0xFF60, 0xFF80, 0xFFA0, 0xFFC0, 0xFF1C, 0xFF42, 0xFF68,
+ 0xFF8E, 0xFFB4, 0xFF60, 0xFF80, 0xFFA0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFE0, 0x0000, 0x0020, 0xFFB4, 0xFFDA, 0x0000, 0x0026, 0x004C,
+ 0xFFC0, 0xFFE0, 0x0000, 0x0020, 0x0040, 0xFFB4, 0xFFDA, 0x0000,
+ 0x0026, 0x004C, 0xFFE0, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0060, 0x0080, 0x00A0, 0x004C, 0x0072, 0x0098, 0x00BE, 0x00E4,
+ 0x0040, 0x0060, 0x0080, 0x00A0, 0x00C0, 0x004C, 0x0072, 0x0098,
+ 0x00BE, 0x00E4, 0x0060, 0x0080, 0x00A0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorXDOSProvider = { ARRAYSIZE(kLoLDscDoorXDOS), kLoLDscDoorXDOS };
+
+static const uint16 kLoLDscDoorYDOS[576] = {
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorYDOSProvider = { ARRAYSIZE(kLoLDscDoorYDOS), kLoLDscDoorYDOS };
+
+static const byte kLoLScrollXTopDOS[5] = {
+ 0x05, 0x0A, 0x0F, 0x14, 0x19
+};
+
+static const ByteProvider kLoLScrollXTopDOSProvider = { ARRAYSIZE(kLoLScrollXTopDOS), kLoLScrollXTopDOS };
+
+static const byte kLoLScrollYTopDOS[5] = {
+ 0x02, 0x04, 0x07, 0x09, 0x0C
+};
+
+static const ByteProvider kLoLScrollYTopDOSProvider = { ARRAYSIZE(kLoLScrollYTopDOS), kLoLScrollYTopDOS };
+
+static const byte kLoLScrollXBottomDOS[5] = {
+ 0x05, 0x0A, 0x0F, 0x14, 0x19
+};
+
+static const ByteProvider kLoLScrollXBottomDOSProvider = { ARRAYSIZE(kLoLScrollXBottomDOS), kLoLScrollXBottomDOS };
+
+static const byte kLoLScrollYBottomDOS[5] = {
+ 0x04, 0x08, 0x0C, 0x10, 0x14
+};
+
+static const ByteProvider kLoLScrollYBottomDOSProvider = { ARRAYSIZE(kLoLScrollYBottomDOS), kLoLScrollYBottomDOS };
+
+static const LoLButtonDef kLoLButtonDefsDOS[95] = {
+ { 0x1100, 96, 352, 33, 131, 22, 19, 0x0000, 0 },
+ { 0x1100, 97, 353, 33, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 98, 354, 33, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 92, 348, 11, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 102, 358, 53, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 91, 347, 11, 131, 22, 19, 0x0000, 0 },
+ { 0x1100, 101, 357, 53, 131, 22, 19, 0x0000, 0 },
+ { 0x0100, 112, 0, 80, 143, 22, 17, 0x0000, 0 },
+ { 0x0100, 113, 0, 80, 143, 22, 17, 0x0001, 0 },
+ { 0x0100, 114, 0, 80, 143, 22, 17, 0x0002, 0 },
+ { 0x0100, 115, 0, 80, 143, 22, 17, 0x0003, 0 },
+ { 0x1100, 116, 0, 80, 160, 22, 17, 0x0000, 0 },
+ { 0x1100, 117, 0, 80, 160, 22, 17, 0x0001, 0 },
+ { 0x1100, 118, 0, 80, 160, 22, 17, 0x0002, 0 },
+ { 0x1100, 119, 0, 80, 160, 22, 17, 0x0003, 0 },
+ { 0x1100, 119, 0, 80, 144, 22, 32, 0x0000, 0 },
+ { 0x1100, 110, 0, 0, 0, 320, 200, 0x0003, 0 },
+ { 0x0100, 112, 0, 80, 143, 33, 34, 0x0000, 0 },
+ { 0x0100, 113, 0, 80, 143, 33, 34, 0x0001, 0 },
+ { 0x0100, 114, 0, 80, 143, 33, 34, 0x0002, 0 },
+ { 0x0100, 115, 0, 80, 143, 33, 34, 0x0003, 0 },
+ { 0x0100, 112, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x0100, 113, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x0100, 114, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x0100, 115, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x0100, 115, 0, 80, 143, 12, 34, 0x0000, 0 },
+ { 0x0100, 115, 0, 80, 143, 12, 34, 0x0001, 0 },
+ { 0x0100, 115, 0, 80, 143, 12, 34, 0x0002, 0 },
+ { 0x0100, 115, 0, 80, 143, 12, 34, 0x0003, 0 },
+ { 0x1000, 112, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x1000, 113, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x1000, 114, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x1000, 115, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0002, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0003, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0004, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0005, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0006, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0007, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0008, 2 },
+ { 0x1100, 0, 0, 0, 0, 12, 11, 0x0009, 2 },
+ { 0x1100, 0, 0, 0, 0, 12, 11, 0x000A, 2 },
+ { 0x1100, 110, 0, 160, 93, 43, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 102, 88, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 88, 102, 88, 19, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 85, 88, 17, 0x0002, 2 },
+ { 0x1100, 0, 0, 88, 85, 88, 17, 0x0003, 2 },
+ { 0x1100, 0, 0, 0, 0, 176, 120, 0x0000, 2 },
+ { 0x1100, 0, 0, 106, 179, 21, 21, 0x0000, 0 },
+ { 0x1100, 0, 0, 127, 179, 21, 21, 0x0001, 0 },
+ { 0x1100, 0, 0, 148, 179, 21, 21, 0x0002, 0 },
+ { 0x1100, 0, 0, 169, 179, 21, 21, 0x0003, 0 },
+ { 0x1100, 0, 0, 190, 179, 21, 21, 0x0004, 0 },
+ { 0x1100, 0, 0, 211, 179, 21, 21, 0x0005, 0 },
+ { 0x1100, 0, 0, 232, 179, 21, 21, 0x0006, 0 },
+ { 0x1100, 0, 0, 253, 179, 21, 21, 0x0007, 0 },
+ { 0x1100, 0, 0, 274, 179, 21, 21, 0x0008, 0 },
+ { 0x1100, 0, 0, 274, 179, 21, 21, 0x0009, 0 },
+ { 0x1100, 0, 0, 85, 179, 21, 21, 0xFFFF, 0 },
+ { 0x1100, 0, 0, 295, 179, 22, 21, 0x0001, 0 },
+ { 0x1100, 0, 0, 24, 8, 128, 96, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 0, 176, 120, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 0, 0, 0, 0x0000, 0 },
+ { 0x1100, 0, 0, 112, 0, 176, 16, 0x0001, 0 },
+ { 0x1100, 0, 0, 112, 110, 176, 26, 0x0001, 0 },
+ { 0x1100, 0, 0, 96, 88, 32, 32, 0x0001, 0 },
+ { 0x1100, 0, 0, 272, 88, 32, 32, 0x0001, 0 },
+ { 0x1100, 0, 0, 96, 16, 32, 72, 0x0001, 0 },
+ { 0x1100, 0, 0, 272, 16, 32, 72, 0x0001, 0 },
+ { 0x1100, 0, 0, 24, 15, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 24, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 33, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 42, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 51, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 60, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 69, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 78, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 87, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 96, 61, 9, 0x0000, 0 },
+ { 0x0100, 112, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x0100, 113, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x0100, 114, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x0100, 115, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x1100, 110, 0, 0, 0, 320, 200, 0x0003, 0 },
+ { 0x0100, 0, 0, 112, 0, 88, 80, 0x0000, 0 },
+ { 0x0100, 0, 0, 200, 0, 88, 80, 0x0001, 0 },
+ { 0x1100, 25, 110, 11, 178, 21, 22, 0x0000, 0 },
+ { 0x0100, 20, 0, 32, 178, 22, 22, 0x0000, 0 },
+ { 0x0100, 0, 0, 291, 96, 27, 24, 0x0000, 0 },
+ { 0x0100, 0, 0, 289, 0, 31, 28, 0x0000, 0 },
+ { 0x0100, 0, 0, 289, 31, 31, 23, 0x0000, 0 },
+ { 0x0100, 0, 0, 291, 56, 29, 24, 0x0000, 0 },
+ { 0x1100, 0, 0, 220, 98, 43, 19, 0x0000, 0 }
+};
+
+static const LoLButtonDefProvider kLoLButtonDefsDOSProvider = { ARRAYSIZE(kLoLButtonDefsDOS), kLoLButtonDefsDOS };
+
+static const byte kLoLButtonList1DOS[40] = {
+ 0x59, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x31,
+ 0x3E, 0x2D, 0x2E, 0x2F, 0x30, 0x56, 0x57, 0x01,
+ 0x02, 0x00, 0x03, 0x04, 0x05, 0x06, 0x32, 0x33,
+ 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B,
+ 0x3C, 0x3D, 0x58, 0x5A, 0x5B, 0x5C, 0x5D, 0xFF
+};
+
+static const ByteProvider kLoLButtonList1DOSProvider = { ARRAYSIZE(kLoLButtonList1DOS), kLoLButtonList1DOS };
+
+static const byte kLoLButtonList2DOS[15] = {
+ 0x2C, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+ 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x5E, 0xFF
+};
+
+static const ByteProvider kLoLButtonList2DOSProvider = { ARRAYSIZE(kLoLButtonList2DOS), kLoLButtonList2DOS };
+
+static const byte kLoLButtonList3DOS[2] = {
+ 0x40, 0xFF
+};
+
+static const ByteProvider kLoLButtonList3DOSProvider = { ARRAYSIZE(kLoLButtonList3DOS), kLoLButtonList3DOS };
+
+static const byte kLoLButtonList4DOS[15] = {
+ 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
+ 0x3A, 0x3B, 0x3C, 0x3D, 0x5A, 0x5B, 0xFF
+};
+
+static const ByteProvider kLoLButtonList4DOSProvider = { ARRAYSIZE(kLoLButtonList4DOS), kLoLButtonList4DOS };
+
+static const byte kLoLButtonList5DOS[16] = {
+ 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x06, 0x41,
+ 0x42, 0x43, 0x44, 0x45, 0x46, 0x5A, 0x5B, 0xFF
+};
+
+static const ByteProvider kLoLButtonList5DOSProvider = { ARRAYSIZE(kLoLButtonList5DOS), kLoLButtonList5DOS };
+
+static const byte kLoLButtonList6DOS[14] = {
+ 0x2C, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+ 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0xFF
+};
+
+static const ByteProvider kLoLButtonList6DOSProvider = { ARRAYSIZE(kLoLButtonList6DOS), kLoLButtonList6DOS };
+
+static const byte kLoLButtonList7DOS[3] = {
+ 0x0F, 0x10, 0xFF
+};
+
+static const ByteProvider kLoLButtonList7DOSProvider = { ARRAYSIZE(kLoLButtonList7DOS), kLoLButtonList7DOS };
+
+static const byte kLoLButtonList8DOS[2] = {
+ 0x55, 0xFF
+};
+
+static const ByteProvider kLoLButtonList8DOSProvider = { ARRAYSIZE(kLoLButtonList8DOS), kLoLButtonList8DOS };
+
+static const byte kLoLLegendDataDOS[48] = {
+ 0x0E, 0x00, 0x07, 0x42, 0x19, 0x00, 0x08, 0x42,
+ 0x1A, 0x00, 0x09, 0x42, 0x0D, 0x00, 0x0A, 0x42,
+ 0x0A, 0x00, 0x0B, 0x42, 0x0B, 0x00, 0x0C, 0x42,
+ 0x0F, 0x00, 0x0D, 0x42, 0x16, 0x00, 0x0E, 0x42,
+ 0x17, 0x00, 0x0F, 0x42, 0x11, 0x00, 0x10, 0x42,
+ 0x12, 0x00, 0x51, 0x42, 0xFF, 0xFF, 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLLegendDataDOSProvider = { ARRAYSIZE(kLoLLegendDataDOS), kLoLLegendDataDOS };
+
+static const byte kLoLMapCursorOvlDOS[25] = {
+ 0x00, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86,
+ 0x87, 0x88, 0x01, 0x01, 0x01, 0x01, 0x01, 0x88,
+ 0x87, 0x86, 0x85, 0x84, 0x83, 0x82, 0x81, 0x80,
+ 0x80
+};
+
+static const ByteProvider kLoLMapCursorOvlDOSProvider = { ARRAYSIZE(kLoLMapCursorOvlDOS), kLoLMapCursorOvlDOS };
+
+static const uint16 kLoLMapStringIdDOS[30] = {
+ 0xFFFF, 0x4211, 0x4212, 0x4213, 0x4214, 0x4215, 0x4216, 0x4217,
+ 0x4218, 0x4219, 0x421A, 0x421B, 0x421C, 0x421D, 0x421E, 0x421F,
+ 0x4220, 0x4221, 0x4222, 0x4223, 0x4224, 0x4225, 0x4226, 0x4227,
+ 0x4228, 0x4229, 0x422A, 0x422B, 0x422C, 0x422D
+};
+
+static const Uint16Provider kLoLMapStringIdDOSProvider = { ARRAYSIZE(kLoLMapStringIdDOS), kLoLMapStringIdDOS };
+
+static const byte kLoLSpellbookAnimDOS[28] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x13, 0xB6, 0x04, 0x00, 0x13, 0x4D,
+ 0x04, 0x00, 0x13, 0xB9, 0x04, 0x00, 0x13, 0xB8,
+ 0x04, 0x00, 0x13, 0xBA
+};
+
+static const ByteProvider kLoLSpellbookAnimDOSProvider = { ARRAYSIZE(kLoLSpellbookAnimDOS), kLoLSpellbookAnimDOS };
+
+static const byte kLoLSpellbookCoordsDOS[12] = {
+ 0x16, 0x16, 0x16, 0x1F, 0x16, 0x28, 0x16, 0x31,
+ 0x16, 0x3A, 0x16, 0x43
+};
+
+static const ByteProvider kLoLSpellbookCoordsDOSProvider = { ARRAYSIZE(kLoLSpellbookCoordsDOS), kLoLSpellbookCoordsDOS };
+
+static const byte kLoLHealShapeFramesDOS[80] = {
+ 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02,
+ 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03,
+ 0x03, 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+ 0x05, 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
+};
+
+static const ByteProvider kLoLHealShapeFramesDOSProvider = { ARRAYSIZE(kLoLHealShapeFramesDOS), kLoLHealShapeFramesDOS };
+
+static const byte kLoLLightningDefsDOS[20] = {
+ 0x06, 0x05, 0xAB, 0x00, 0x06, 0x04, 0xAB, 0x00,
+ 0x08, 0x04, 0xAA, 0x00, 0x06, 0x03, 0xAA, 0x00,
+ 0x06, 0x02, 0xA9, 0x00
+};
+
+static const ByteProvider kLoLLightningDefsDOSProvider = { ARRAYSIZE(kLoLLightningDefsDOS), kLoLLightningDefsDOS };
+
+static const uint16 kLoLFireballCoordsDOS[256] = {
+ 0x0000, 0x0324, 0x0647, 0x096A, 0x0C8B, 0x0FAB, 0x12C7, 0x15E1,
+ 0x18F8, 0x1C0B, 0x1F19, 0x2223, 0x2527, 0x2826, 0x2B1E, 0x2E10,
+ 0x30FB, 0x33DE, 0x36B9, 0x398C, 0x3C56, 0x3F16, 0x41CD, 0x447A,
+ 0x471C, 0x49B3, 0x4C3F, 0x4EBF, 0x5133, 0x539A, 0x55F4, 0x5842,
+ 0x5A81, 0x5CB3, 0x5ED6, 0x60EB, 0x62F1, 0x64E7, 0x66CE, 0x68A5,
+ 0x6A6C, 0x6C23, 0x6DC9, 0x6F5E, 0x70E1, 0x7254, 0x73B5, 0x7503,
+ 0x7640, 0x776B, 0x7883, 0x7989, 0x7A7C, 0x7B5C, 0x7C29, 0x7CE2,
+ 0x7D89, 0x7E1C, 0x7E9C, 0x7F08, 0x7F61, 0x7FA6, 0x7FD7, 0x7FF5,
+ 0x7FFF, 0x7FF5, 0x7FD7, 0x7FA6, 0x7F61, 0x7F08, 0x7E9C, 0x7E1C,
+ 0x7D89, 0x7CE2, 0x7C29, 0x7B5C, 0x7A7C, 0x7989, 0x7883, 0x776B,
+ 0x7640, 0x7503, 0x73B5, 0x7254, 0x70E1, 0x6F5E, 0x6DC9, 0x6C23,
+ 0x6A6C, 0x68A5, 0x66CE, 0x64E7, 0x62F1, 0x60EB, 0x5ED6, 0x5CB3,
+ 0x5A81, 0x5842, 0x55F4, 0x539A, 0x5133, 0x4EBF, 0x4C3F, 0x49B3,
+ 0x471C, 0x447A, 0x41CD, 0x3F16, 0x3C56, 0x398C, 0x36B9, 0x33DE,
+ 0x30FB, 0x2E10, 0x2B1E, 0x2826, 0x2527, 0x2223, 0x1F19, 0x1C0B,
+ 0x18F8, 0x15E1, 0x12C7, 0x0FAB, 0x0C8B, 0x096A, 0x0647, 0x0324,
+ 0x0000, 0xFCDC, 0xF9B9, 0xF696, 0xF375, 0xF055, 0xED39, 0xEA1F,
+ 0xE708, 0xE3F5, 0xE0E7, 0xDDDD, 0xDAD9, 0xD7DA, 0xD4E2, 0xD1F0,
+ 0xCF05, 0xCC22, 0xC947, 0xC674, 0xC3AA, 0xC0EA, 0xBE33, 0xBB86,
+ 0xB8E4, 0xB64D, 0xB3C1, 0xB141, 0xAECD, 0xAC66, 0xAA0C, 0xA7BE,
+ 0xA57F, 0xA34D, 0xA12A, 0x9F15, 0x9D0F, 0x9B19, 0x9932, 0x975B,
+ 0x9594, 0x93DD, 0x9237, 0x90A2, 0x8F1F, 0x8DAC, 0x8C4B, 0x8AFD,
+ 0x89C0, 0x8895, 0x877D, 0x8677, 0x8584, 0x84A4, 0x83D7, 0x831E,
+ 0x8277, 0x81E4, 0x8164, 0x80F8, 0x809F, 0x805A, 0x8029, 0x800B,
+ 0x8001, 0x800B, 0x8029, 0x805A, 0x809F, 0x80F8, 0x8164, 0x81E4,
+ 0x8277, 0x831E, 0x83D7, 0x84A4, 0x8584, 0x8677, 0x877D, 0x8895,
+ 0x89C0, 0x8AFD, 0x8C4B, 0x8DAC, 0x8F1F, 0x90A2, 0x9237, 0x93DD,
+ 0x9594, 0x975B, 0x9932, 0x9B19, 0x9D0F, 0x9F15, 0xA12A, 0xA34D,
+ 0xA57F, 0xA7BE, 0xAA0C, 0xAC66, 0xAECD, 0xB141, 0xB3C1, 0xB64D,
+ 0xB8E4, 0xBB86, 0xBE33, 0xC0EA, 0xC3AA, 0xC674, 0xC947, 0xCC22,
+ 0xCF05, 0xD1F0, 0xD4E2, 0xD7DA, 0xDAD9, 0xDDDD, 0xE0E7, 0xE3F5,
+ 0xE708, 0xEA1F, 0xED39, 0xF055, 0xF375, 0xF696, 0xF9B9, 0xFCDC
+};
+
+static const Uint16Provider kLoLFireballCoordsDOSProvider = { ARRAYSIZE(kLoLFireballCoordsDOS), kLoLFireballCoordsDOS };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_cd.h b/devtools/create_kyradat/resources/lol_dos_cd.h
new file mode 100644
index 0000000000..3482986658
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_cd.h
@@ -0,0 +1,1625 @@
+static const byte kLoLHistoryDOSCD[465] = {
+ 0x31, 0x61, 0x68, 0x69, 0x73, 0x74, 0x30, 0x31,
+ 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00, 0x00, 0x31,
+ 0x62, 0x68, 0x69, 0x73, 0x74, 0x30, 0x31, 0x2E,
+ 0x77, 0x73, 0x61, 0x00, 0x00, 0x00, 0x31, 0x63,
+ 0x68, 0x69, 0x73, 0x74, 0x30, 0x31, 0x2E, 0x77,
+ 0x73, 0x61, 0x00, 0x00, 0x00, 0x32, 0x61, 0x68,
+ 0x69, 0x73, 0x74, 0x30, 0x32, 0x2E, 0x77, 0x73,
+ 0x61, 0x00, 0x00, 0x00, 0x32, 0x62, 0x68, 0x69,
+ 0x73, 0x74, 0x30, 0x33, 0x2E, 0x77, 0x73, 0x61,
+ 0x00, 0x00, 0x00, 0x32, 0x65, 0x68, 0x69, 0x73,
+ 0x74, 0x30, 0x34, 0x2E, 0x77, 0x73, 0x61, 0x00,
+ 0x00, 0x00, 0x32, 0x66, 0x68, 0x69, 0x73, 0x74,
+ 0x30, 0x35, 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00,
+ 0x00, 0x33, 0x61, 0x68, 0x69, 0x73, 0x74, 0x30,
+ 0x36, 0x61, 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00,
+ 0x33, 0x62, 0x68, 0x69, 0x73, 0x74, 0x30, 0x36,
+ 0x61, 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00, 0x33,
+ 0x63, 0x68, 0x69, 0x73, 0x74, 0x30, 0x36, 0x62,
+ 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00, 0x33, 0x64,
+ 0x68, 0x69, 0x73, 0x74, 0x32, 0x30, 0x2E, 0x77,
+ 0x73, 0x61, 0x00, 0x00, 0x00, 0x34, 0x61, 0x68,
+ 0x69, 0x73, 0x74, 0x30, 0x38, 0x2E, 0x77, 0x73,
+ 0x61, 0x00, 0x00, 0x00, 0x34, 0x63, 0x68, 0x69,
+ 0x73, 0x74, 0x30, 0x39, 0x2E, 0x77, 0x73, 0x61,
+ 0x00, 0x00, 0x00, 0x34, 0x65, 0x68, 0x69, 0x73,
+ 0x74, 0x31, 0x30, 0x2E, 0x77, 0x73, 0x61, 0x00,
+ 0x00, 0x00, 0x35, 0x61, 0x68, 0x69, 0x73, 0x74,
+ 0x31, 0x31, 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00,
+ 0x00, 0x35, 0x62, 0x68, 0x69, 0x73, 0x74, 0x31,
+ 0x32, 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00, 0x00,
+ 0x35, 0x63, 0x68, 0x69, 0x73, 0x74, 0x31, 0x32,
+ 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00, 0x00, 0x35,
+ 0x64, 0x68, 0x69, 0x73, 0x74, 0x31, 0x33, 0x2E,
+ 0x77, 0x73, 0x61, 0x00, 0x00, 0x00, 0x36, 0x61,
+ 0x68, 0x69, 0x73, 0x74, 0x31, 0x34, 0x2E, 0x77,
+ 0x73, 0x61, 0x00, 0x00, 0x00, 0x36, 0x62, 0x68,
+ 0x69, 0x73, 0x74, 0x31, 0x35, 0x2E, 0x77, 0x73,
+ 0x61, 0x00, 0x00, 0x00, 0x36, 0x63, 0x68, 0x69,
+ 0x73, 0x74, 0x31, 0x36, 0x2E, 0x77, 0x73, 0x61,
+ 0x00, 0x00, 0x00, 0x37, 0x61, 0x68, 0x69, 0x73,
+ 0x74, 0x31, 0x37, 0x2E, 0x77, 0x73, 0x61, 0x00,
+ 0x00, 0x00, 0x37, 0x62, 0x68, 0x69, 0x73, 0x74,
+ 0x31, 0x38, 0x61, 0x2E, 0x77, 0x73, 0x61, 0x00,
+ 0x00, 0x37, 0x63, 0x68, 0x69, 0x73, 0x74, 0x31,
+ 0x39, 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00, 0x00,
+ 0x38, 0x61, 0x68, 0x69, 0x73, 0x74, 0x32, 0x31,
+ 0x63, 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00, 0x38,
+ 0x63, 0x68, 0x69, 0x73, 0x74, 0x32, 0x31, 0x63,
+ 0x2E, 0x77, 0x73, 0x61, 0x00, 0x00, 0x39, 0x61,
+ 0x68, 0x69, 0x73, 0x74, 0x32, 0x32, 0x2E, 0x77,
+ 0x73, 0x61, 0x00, 0x00, 0x00, 0x39, 0x64, 0x68,
+ 0x69, 0x73, 0x74, 0x32, 0x33, 0x2E, 0x77, 0x73,
+ 0x61, 0x00, 0x00, 0x00, 0x39, 0x66, 0x68, 0x69,
+ 0x73, 0x74, 0x32, 0x34, 0x2E, 0x77, 0x73, 0x61,
+ 0x00, 0x00, 0x00, 0x39, 0x68, 0x68, 0x69, 0x73,
+ 0x74, 0x32, 0x35, 0x2E, 0x77, 0x73, 0x61, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00
+};
+
+static const ByteProvider kLoLHistoryDOSCDProvider = { ARRAYSIZE(kLoLHistoryDOSCD), kLoLHistoryDOSCD };
+
+static const char *const kLoLIngameSfxFilesDOSCD[230] = {
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "DOORMTOP",
+ "DOORMTCL",
+ "PMETLHI",
+ "SWING6",
+ "MDAMAGE2",
+ "LEVERDN",
+ "LEVERUP",
+ "MTLDRSLM",
+ "DOORWDOP",
+ "DOORWDCL",
+ "KEYOPEN",
+ "KEYLOCK",
+ "PORTCUL",
+ "PORTCULD",
+ "LOKPICK",
+ "OCEAN2",
+ "NUNCHUK",
+ "SWING",
+ "SHWING1",
+ "SWING6",
+ "THROW",
+ "CROSSBOW",
+ "HEAL1",
+ "FIRESPL1",
+ "PRESSIN",
+ "PRESSOUT",
+ "PLATEON",
+ "PLATEOFF",
+ "DORWDSLM",
+ "LITENIN1",
+ "ICESPEL2",
+ "SPELL4B",
+ "SHIELD1",
+ "3BOLTC",
+ "2BOLTC",
+ "1BOLTC",
+ "DAWNSPL1",
+ "HEALKING",
+ "SPELL7",
+ "SWING1",
+ "EXPLODE",
+ "CROWCAW",
+ "MORPH2",
+ "CHEST",
+ "MONEY",
+ "SPELBK2",
+ "AUTOMAP",
+ "MINECRT3",
+ "CREAK1",
+ "TURNPAG2",
+ "POLGULP1",
+ "GOOEY2",
+ "BUCKBELL",
+ "KEEPXIT2",
+ "VSCREAM4",
+ "EMPTY",
+ "GOOEY1",
+ "GOOEY2",
+ "RIPPOD4",
+ "PODSKEL1",
+ "INVISO",
+ "OPENBOX2",
+ "ACCEPT2",
+ "BOW2",
+ "HACHUCKM",
+ "FOUNDRY2",
+ "FOUNDRY2",
+ "FOUNDRY4",
+ "FOUNDRY6",
+ "CLEANGL1",
+ "CLEANGL2",
+ "GLOWY1",
+ "DORSTNOP",
+ "DORSTNCL",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "ADAMAGE1",
+ "HDAMAGE1",
+ "TDAMAGE1",
+ "BDAMAGE1",
+ "LDAMAGE1",
+ "TDAMAGE2",
+ "CDAMAGE1",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "GOOD1",
+ "GOOD2",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "LITENIN1",
+ "COMPASS2",
+ "KINGDOR1",
+ "GLASBRK2",
+ "FLUTTER3",
+ "NUNCHUK",
+ "WALLFALL",
+ "WALLHIT",
+ "MWHOA1",
+ "LADDER",
+ "WHITTL3",
+ "ROWBOAT1",
+ "HORSEY2",
+ "SNORT",
+ "PUMPDOR1",
+ "PUMPSM2",
+ "PUMPSM3",
+ "SPARK1",
+ "BEZEL",
+ "SWARM",
+ "CHEST1",
+ "WRIT1",
+ "CAUSFOG",
+ "VAELAN2",
+ "ROARSPL1",
+ "RATTLER",
+ "WINK1",
+ "HANDFATE",
+ "QUAKE1",
+ "WIZLAMP1",
+ "SAP2",
+ "MSTDOOM1",
+ "GARDIAN1",
+ "VORTEX1",
+ "LION1",
+ "STEAM",
+ "SQUAWCK",
+ "SLIDEMUG",
+ "SPARKHIT",
+ "SPARKHIT2",
+ "SPARKHIT3",
+ "ICEFORM",
+ "ICEXPLOD",
+ "EXPLODE2",
+ "EXPLODE3",
+ "BOLTQUK2",
+ "BOLT2",
+ "BOLT3",
+ "SNKBITE",
+ "HANDGLOW",
+ "MSTDOOM2",
+ "MSTDOOM3",
+ "GARDIAN2",
+ "PLUSPOWR",
+ "MINSPOWR",
+ "BLUDCURL",
+ "LORAGASP",
+ "POURH2O",
+ "AWHOA2",
+ "HWHOA1",
+ "CWHOA1",
+ "AFALL2",
+ "EMPTY",
+ "CFALL2",
+ "MFALL2",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "WRIT2",
+ "WRIT3",
+ "WRIT4",
+ "WRIT5",
+ "WRIT6",
+ "RUCKUS1",
+ "RUCKUS3",
+ "CHANT1",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "CHANT2",
+ "CHANT3",
+ ""
+};
+
+static const StringListProvider kLoLIngameSfxFilesDOSCDProvider = { ARRAYSIZE(kLoLIngameSfxFilesDOSCD), kLoLIngameSfxFilesDOSCD };
+
+static const byte kLoLIngameSfxIndexDOSCD[1000] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x34, 0x00, 0x6F, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x7D, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00,
+ 0x7F, 0x00, 0x00, 0x00, 0x36, 0x00, 0x73, 0x00,
+ 0x35, 0x00, 0x9C, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0x80, 0x00, 0x73, 0x00, 0x81, 0x00, 0x73, 0x00,
+ 0x82, 0x00, 0x73, 0x00, 0x83, 0x00, 0x73, 0x00,
+ 0x84, 0x00, 0x73, 0x00, 0x85, 0x00, 0x73, 0x00,
+ 0x86, 0x00, 0x73, 0x00, 0xD7, 0x00, 0x76, 0x00,
+ 0x87, 0x00, 0x65, 0x00, 0x38, 0x00, 0x5F, 0x00,
+ 0x37, 0x00, 0x5F, 0x00, 0x32, 0x00, 0x0A, 0x00,
+ 0x33, 0x00, 0x64, 0x00, 0x39, 0x00, 0x65, 0x00,
+ 0x3A, 0x00, 0x0A, 0x00, 0x3B, 0x00, 0x14, 0x00,
+ 0x4E, 0x00, 0x65, 0x00, 0x7A, 0x00, 0x64, 0x00,
+ 0x7B, 0x00, 0x64, 0x00, 0x88, 0x00, 0x65, 0x00,
+ 0x3C, 0x00, 0x65, 0x00, 0x3D, 0x00, 0x64, 0x00,
+ 0x89, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x14, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
+ 0x40, 0x00, 0x65, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0xC9, 0x00, 0x72, 0x00, 0xCA, 0x00, 0x72, 0x00,
+ 0xCB, 0x00, 0x72, 0x00, 0xCC, 0x00, 0x74, 0x00,
+ 0xCD, 0x00, 0x74, 0x00, 0xCE, 0x00, 0x74, 0x00,
+ 0xCF, 0x00, 0x74, 0x00, 0xD0, 0x00, 0x73, 0x00,
+ 0xD1, 0x00, 0x73, 0x00, 0xD2, 0x00, 0x73, 0x00,
+ 0xD3, 0x00, 0x73, 0x00, 0xD4, 0x00, 0x72, 0x00,
+ 0xD5, 0x00, 0x72, 0x00, 0xD6, 0x00, 0x72, 0x00,
+ 0x42, 0x00, 0x6F, 0x00, 0x43, 0x00, 0x6F, 0x00,
+ 0x44, 0x00, 0x6F, 0x00, 0x45, 0x00, 0x6F, 0x00,
+ 0x46, 0x00, 0x6F, 0x00, 0x47, 0x00, 0x6F, 0x00,
+ 0x48, 0x00, 0x77, 0x00, 0x49, 0x00, 0x89, 0xFF,
+ 0x4F, 0x00, 0x89, 0xFF, 0x50, 0x00, 0x89, 0xFF,
+ 0xA0, 0x00, 0x8A, 0xFF, 0xA1, 0x00, 0x89, 0xFF,
+ 0xA2, 0x00, 0x89, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0xA3, 0x00, 0x89, 0xFF, 0xA4, 0x00, 0x89, 0xFF,
+ 0x4A, 0x00, 0x13, 0x00, 0x4B, 0x00, 0x13, 0x00,
+ 0x4C, 0x00, 0x32, 0x00, 0x4D, 0x00, 0x32, 0x00,
+ 0x5F, 0x00, 0x0A, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x52, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x56, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x58, 0x00, 0x77, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x6A, 0x00,
+ 0x8A, 0x00, 0x6F, 0x00, 0x8B, 0x00, 0x6F, 0x00,
+ 0x8C, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x00, 0x00,
+ 0x5A, 0x00, 0x77, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x6F, 0x00,
+ 0x61, 0x00, 0x76, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x62, 0x00, 0x76, 0x00, 0x63, 0x00, 0x3C, 0x00,
+ 0x64, 0x00, 0x6D, 0x00, 0x65, 0x00, 0x00, 0x00,
+ 0x66, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00,
+ 0x6A, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x88, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x74, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00,
+ 0x79, 0x00, 0x77, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x77, 0x00,
+ 0x93, 0x00, 0x1E, 0x00, 0x94, 0x00, 0x89, 0xFF,
+ 0x95, 0x00, 0x77, 0x00, 0x96, 0x00, 0x76, 0x00,
+ 0x97, 0x00, 0x72, 0x00, 0x98, 0x00, 0x00, 0x00,
+ 0x99, 0x00, 0x50, 0x00, 0x9A, 0x00, 0x78, 0x00,
+ 0x9B, 0x00, 0x64, 0x00, 0x9C, 0x00, 0x5A, 0x00,
+ 0x9D, 0x00, 0x64, 0x00, 0x9E, 0x00, 0x65, 0x00,
+ 0x9F, 0x00, 0x66, 0x00, 0xA5, 0x00, 0x89, 0xFF,
+ 0xA6, 0x00, 0x89, 0xFF, 0xA7, 0x00, 0x77, 0x00,
+ 0xA8, 0x00, 0x76, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xA9, 0x00, 0x77, 0x00, 0xAA, 0x00, 0x77, 0x00,
+ 0xAB, 0x00, 0x77, 0x00, 0xAC, 0x00, 0x77, 0x00,
+ 0xAD, 0x00, 0x77, 0x00, 0xAE, 0x00, 0x77, 0x00,
+ 0xAF, 0x00, 0x76, 0x00, 0xB0, 0x00, 0x77, 0x00,
+ 0xB1, 0x00, 0x64, 0x00, 0xB2, 0x00, 0x6F, 0x00,
+ 0xB3, 0x00, 0x6E, 0x00, 0xB4, 0x00, 0x6E, 0x00,
+ 0xB5, 0x00, 0x77, 0x00, 0xB6, 0x00, 0x77, 0x00,
+ 0xB7, 0x00, 0x77, 0x00, 0xB8, 0x00, 0x76, 0x00,
+ 0xB9, 0x00, 0x77, 0x00, 0xBA, 0x00, 0x77, 0x00,
+ 0xBB, 0x00, 0x77, 0x00, 0xBC, 0x00, 0x77, 0x00,
+ 0xBD, 0x00, 0x77, 0x00, 0xBE, 0x00, 0x77, 0x00,
+ 0xBF, 0x00, 0x77, 0x00, 0xC0, 0x00, 0x76, 0x00,
+ 0xC1, 0x00, 0x77, 0x00, 0xC2, 0x00, 0x77, 0x00,
+ 0xC3, 0x00, 0x77, 0x00, 0xC4, 0x00, 0x6E, 0x00,
+ 0xC5, 0x00, 0x6E, 0x00, 0xC6, 0x00, 0x7D, 0x00,
+ 0xC7, 0x00, 0x78, 0x00, 0xC8, 0x00, 0x78, 0x00,
+ 0xD8, 0x00, 0x77, 0x00, 0xD9, 0x00, 0x77, 0x00,
+ 0xDA, 0x00, 0x77, 0x00, 0xDB, 0x00, 0x77, 0x00,
+ 0xDC, 0x00, 0x77, 0x00, 0xDD, 0x00, 0x78, 0x00,
+ 0xDE, 0x00, 0x78, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xE3, 0x00, 0x77, 0x00, 0xE4, 0x00, 0x77, 0x00,
+ 0xE0, 0x00, 0x1E, 0x00, 0xDF, 0x00, 0x77, 0x00,
+ 0xE1, 0x00, 0x05, 0x00, 0xE2, 0x00, 0x0A, 0x00,
+ 0x00, 0x00, 0x50, 0x00, 0x01, 0x00, 0x50, 0x00,
+ 0x02, 0x00, 0x50, 0x00, 0x03, 0x00, 0x50, 0x00,
+ 0x04, 0x00, 0x50, 0x00, 0x05, 0x00, 0x50, 0x00,
+ 0x06, 0x00, 0x50, 0x00, 0x07, 0x00, 0x50, 0x00,
+ 0x08, 0x00, 0x50, 0x00, 0x09, 0x00, 0x50, 0x00,
+ 0x0A, 0x00, 0x50, 0x00, 0x0B, 0x00, 0x50, 0x00,
+ 0x0C, 0x00, 0x50, 0x00, 0x0D, 0x00, 0x50, 0x00,
+ 0x0E, 0x00, 0x50, 0x00, 0x0F, 0x00, 0x50, 0x00,
+ 0x10, 0x00, 0x50, 0x00, 0x11, 0x00, 0x5A, 0x00,
+ 0x12, 0x00, 0x5A, 0x00, 0x13, 0x00, 0x5A, 0x00,
+ 0x14, 0x00, 0x5A, 0x00, 0x15, 0x00, 0x5A, 0x00,
+ 0x16, 0x00, 0x5A, 0x00, 0x17, 0x00, 0x5A, 0x00,
+ 0x18, 0x00, 0x5A, 0x00, 0x19, 0x00, 0x5A, 0x00,
+ 0x1A, 0x00, 0x5A, 0x00, 0x1B, 0x00, 0x5A, 0x00,
+ 0x1C, 0x00, 0x5A, 0x00, 0x1D, 0x00, 0x5A, 0x00,
+ 0x1E, 0x00, 0x5A, 0x00, 0x1F, 0x00, 0x5A, 0x00,
+ 0x20, 0x00, 0x5A, 0x00, 0x21, 0x00, 0x73, 0x00,
+ 0x22, 0x00, 0x73, 0x00, 0x23, 0x00, 0x73, 0x00,
+ 0x24, 0x00, 0x73, 0x00, 0x25, 0x00, 0x73, 0x00,
+ 0x26, 0x00, 0x73, 0x00, 0x27, 0x00, 0x73, 0x00,
+ 0x28, 0x00, 0x73, 0x00, 0x29, 0x00, 0x73, 0x00,
+ 0x2A, 0x00, 0x73, 0x00, 0x2B, 0x00, 0x50, 0x00,
+ 0x2C, 0x00, 0x5A, 0x00, 0x2D, 0x00, 0x5A, 0x00,
+ 0x2E, 0x00, 0x5A, 0x00, 0x2F, 0x00, 0x5A, 0x00,
+ 0x30, 0x00, 0x5A, 0x00, 0x31, 0x00, 0x5A, 0x00
+};
+
+static const ByteProvider kLoLIngameSfxIndexDOSCDProvider = { ARRAYSIZE(kLoLIngameSfxIndexDOSCD), kLoLIngameSfxIndexDOSCD };
+
+static const byte kLoLMusicTrackMapDOSCD[240] = {
+ 0x01, 0x61, 0x02, 0x01, 0x61, 0x03, 0x01, 0x61,
+ 0x04, 0x01, 0x61, 0x05, 0x03, 0x61, 0x03, 0x01,
+ 0x61, 0x07, 0x01, 0x61, 0x08, 0x01, 0x62, 0x02,
+ 0x01, 0x64, 0x03, 0x01, 0x62, 0x04, 0x01, 0x62,
+ 0x05, 0x01, 0x62, 0x06, 0x01, 0x62, 0x07, 0x01,
+ 0x62, 0x08, 0x01, 0x62, 0x09, 0x01, 0x63, 0x02,
+ 0x01, 0x63, 0x03, 0x01, 0x63, 0x04, 0x01, 0x63,
+ 0x05, 0x01, 0x63, 0x06, 0x01, 0x63, 0x07, 0x01,
+ 0x64, 0x02, 0x02, 0x61, 0x02, 0x02, 0x61, 0x03,
+ 0x02, 0x61, 0x04, 0x02, 0x61, 0x05, 0x02, 0x61,
+ 0x06, 0x02, 0x61, 0x07, 0x02, 0x61, 0x08, 0x02,
+ 0x61, 0x09, 0x03, 0x61, 0x02, 0x03, 0x61, 0x03,
+ 0x03, 0x61, 0x04, 0x03, 0x61, 0x05, 0x03, 0x61,
+ 0x06, 0x03, 0x61, 0x07, 0x04, 0x61, 0x02, 0x04,
+ 0x61, 0x03, 0x04, 0x61, 0x04, 0x05, 0x61, 0x02,
+ 0x05, 0x61, 0x03, 0x05, 0x61, 0x04, 0x05, 0x61,
+ 0x05, 0x05, 0x61, 0x06, 0x06, 0x61, 0x03, 0x06,
+ 0x61, 0x05, 0x06, 0x61, 0x06, 0x06, 0x62, 0x02,
+ 0x06, 0x61, 0x02, 0x06, 0x61, 0x04, 0x08, 0x61,
+ 0x02, 0x08, 0x61, 0x03, 0x08, 0x61, 0x04, 0x08,
+ 0x61, 0x05, 0x08, 0x61, 0x06, 0x08, 0x61, 0x07,
+ 0x08, 0x62, 0x02, 0x08, 0x62, 0x03, 0x01, 0x61,
+ 0x09, 0x03, 0x62, 0x02, 0x03, 0x62, 0x03, 0x03,
+ 0x62, 0x04, 0x03, 0x62, 0x05, 0x03, 0x62, 0x06,
+ 0x03, 0x62, 0x07, 0x03, 0x62, 0x08, 0x04, 0x61,
+ 0x05, 0x04, 0x61, 0x06, 0x04, 0x61, 0x07, 0x04,
+ 0x61, 0x08, 0x05, 0x62, 0x02, 0x05, 0x62, 0x03,
+ 0x05, 0x62, 0x04, 0x07, 0x61, 0x02, 0x07, 0x61,
+ 0x03, 0x01, 0x64, 0x0A, 0x03, 0x62, 0x09, 0x01,
+ 0x64, 0x04, 0x05, 0x62, 0x05, 0x05, 0x62, 0x06
+};
+
+static const ByteProvider kLoLMusicTrackMapDOSCDProvider = { ARRAYSIZE(kLoLMusicTrackMapDOSCD), kLoLMusicTrackMapDOSCD };
+
+static const byte kLoLIngameGMSfxIndexDOSCD[250] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x1A, 0x0B, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x25, 0x0B, 0x07, 0x25, 0x25, 0x25, 0x25,
+ 0x25, 0x25, 0x25, 0x1A, 0x11, 0x0E, 0x0E, 0x05,
+ 0x05, 0x11, 0x05, 0x05, 0x11, 0x05, 0x05, 0x11,
+ 0x2A, 0x2B, 0x06, 0xFF, 0x05, 0x05, 0x2B, 0x00,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x25,
+ 0x25, 0x25, 0x25, 0xFF, 0xFF, 0xFF, 0x0C, 0x0C,
+ 0x0C, 0x0C, 0x0C, 0x0C, 0x08, 0x29, 0x29, 0x27,
+ 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x01, 0x0E,
+ 0x09, 0x09, 0x0A, 0x12, 0xE7, 0x29, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x18, 0x27, 0x13, 0x10, 0x1A, 0x1A,
+ 0xFF, 0xFF, 0x12, 0x26, 0xFF, 0x02, 0x05, 0x05,
+ 0x0F, 0xFF, 0xFF, 0xFF, 0x02, 0x05, 0x21, 0x1A,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x28, 0x0A, 0x19, 0xFF,
+ 0x0B, 0x06, 0x02, 0x02, 0x03, 0x02, 0xFF, 0xFF,
+ 0x0A, 0x0A, 0x0F, 0xFF, 0xFF, 0x0C, 0x1B, 0x22,
+ 0xFF, 0x1A, 0xFF, 0xFF, 0xFF, 0xFF, 0x10, 0x02,
+ 0x03, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A,
+ 0x29, 0x0A, 0x0A, 0x27, 0x0A, 0x28, 0x0A, 0x0A,
+ 0x06, 0xFF, 0x29, 0x29, 0x29, 0x28, 0x12, 0x12,
+ 0x12, 0x29, 0x29, 0x29, 0x25, 0x29, 0x27, 0x27,
+ 0x0C, 0x1A, 0xFF, 0xFF, 0xFF, 0xFF, 0x19, 0x19,
+ 0x19, 0x19, 0x19, 0x22, 0x1B, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x16, 0xFF, 0x16, 0x16, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C,
+ 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C,
+ 0x0C, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
+ 0x22, 0x22, 0x22, 0x16, 0x0C, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLIngameGMSfxIndexDOSCDProvider = { ARRAYSIZE(kLoLIngameGMSfxIndexDOSCD), kLoLIngameGMSfxIndexDOSCD };
+
+static const byte kLoLIngameMT32SfxIndexDOSCD[250] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x30, 0x2E, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x2C, 0x31, 0x02, 0x2C, 0x2C, 0x2C, 0x2C,
+ 0x2C, 0x2C, 0x2C, 0x1A, 0x0C, 0x03, 0x04, 0x0B,
+ 0x0A, 0x0C, 0x0B, 0x0A, 0x0C, 0x0B, 0x0A, 0x0C,
+ 0x24, 0x25, 0x0D, 0x02, 0x0B, 0x0A, 0x25, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2C,
+ 0x2C, 0x2C, 0x2C, 0xFF, 0xFF, 0xFF, 0x2E, 0x2E,
+ 0x2E, 0x2E, 0x31, 0x31, 0x1B, 0x10, 0x23, 0x21,
+ 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x03, 0x04,
+ 0x2B, 0x2A, 0x32, 0x21, 0x18, 0x23, 0x1B, 0x1B,
+ 0x1B, 0xFF, 0x17, 0x33, 0x32, 0x08, 0x1A, 0x19,
+ 0x02, 0x02, 0x0E, 0x32, 0x09, 0x17, 0x0B, 0x0B,
+ 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0x0B, 0x01, 0x1A,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x33, 0x08, 0x34, 0xFF,
+ 0x31, 0x0D, 0x05, 0x06, 0x05, 0x06, 0xFF, 0xFF,
+ 0x0F, 0x34, 0x07, 0xFF, 0xFF, 0x31, 0x1A, 0x26,
+ 0xFF, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x05,
+ 0x06, 0x33, 0x34, 0x34, 0x34, 0x34, 0x34, 0x33,
+ 0x32, 0x34, 0x34, 0x32, 0x34, 0x33, 0x34, 0xFF,
+ 0x27, 0xFF, 0x23, 0x23, 0x23, 0x21, 0x0E, 0x0E,
+ 0x0E, 0x23, 0x23, 0x23, 0x2C, 0x32, 0x33, 0x33,
+ 0x2F, 0x19, 0xFF, 0xFF, 0xFF, 0x18, 0x17, 0x18,
+ 0x18, 0x17, 0x18, 0x26, 0x06, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x15, 0xFF, 0x15, 0x15, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31,
+ 0x31, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31, 0x31,
+ 0x31, 0x26, 0x26, 0x26, 0x26, 0x26, 0x26, 0x26,
+ 0x26, 0x26, 0x26, 0x15, 0x31, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLIngameMT32SfxIndexDOSCDProvider = { ARRAYSIZE(kLoLIngameMT32SfxIndexDOSCD), kLoLIngameMT32SfxIndexDOSCD };
+
+static const byte kLoLIngamePcSpkSfxIndexDOSCD[250] = {
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x04, 0x0C, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x17, 0x0C, 0x10, 0x17, 0x17, 0x17, 0x17,
+ 0x17, 0x17, 0x17, 0x04, 0x14, 0x02, 0x02, 0x05,
+ 0x05, 0x14, 0x05, 0x05, 0x05, 0x14, 0x05, 0x05,
+ 0x14, 0x00, 0x00, 0x10, 0x05, 0x05, 0x01, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x17,
+ 0x17, 0x17, 0x17, 0xFF, 0xFF, 0xFF, 0x0C, 0x0C,
+ 0x0C, 0x0C, 0x0C, 0x0C, 0x12, 0x0E, 0x0F, 0x11,
+ 0x0F, 0x11, 0x12, 0x11, 0x12, 0x12, 0x01, 0x01,
+ 0x02, 0x0A, 0x15, 0x12, 0x0A, 0x0F, 0x15, 0x15,
+ 0x15, 0xFF, 0x0A, 0xFF, 0x16, 0x05, 0x0A, 0x0A,
+ 0x10, 0x10, 0x07, 0x15, 0xFF, 0x0A, 0xFF, 0xFF,
+ 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x10, 0x0A,
+ 0x13, 0x13, 0xFF, 0xFF, 0xFF, 0x01, 0x0A, 0xFF,
+ 0x0C, 0x00, 0x02, 0x02, 0x02, 0x02, 0xFF, 0xFF,
+ 0xFF, 0x15, 0x05, 0xFF, 0xFF, 0x0C, 0x16, 0x0B,
+ 0xFF, 0x0A, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x12, 0x11, 0x12, 0x11, 0x12, 0x11, 0x12,
+ 0x11, 0x12, 0x11, 0x12, 0x11, 0x12, 0x03, 0xFF,
+ 0x02, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x08, 0x08,
+ 0x08, 0x16, 0x16, 0x16, 0x17, 0x16, 0x16, 0x16,
+ 0x0B, 0x0A, 0xFF, 0xFF, 0xFF, 0x0A, 0x0A, 0x0A,
+ 0x0A, 0x0A, 0x0A, 0x06, 0x10, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x14, 0xFF, 0x14, 0x14, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B,
+ 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B, 0x0B,
+ 0x0B, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x14, 0x0B, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLIngamePcSpkSfxIndexDOSCDProvider = { ARRAYSIZE(kLoLIngamePcSpkSfxIndexDOSCD), kLoLIngamePcSpkSfxIndexDOSCD };
+
+static const SpellProperty kLoLSpellPropertiesDOSCD[10] = {
+ { 16436, { 5, 10, 15, 25 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0100 },
+ { 16437, { 5, 10, 25, 60 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0001 },
+ { 16438, { 8, 15, 30, 80 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0102 },
+ { 16440, { 20, 35, 65, 100 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0103 },
+ { 16441, { 30, 60, 90, 120 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0104 },
+ { 16442, { 30, 60, 90, 150 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0105 },
+ { 16439, { 25, 30, 50, 100 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0106 },
+ { 16443, { 3, 6, 12, 24 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0107 },
+ { 16975, { 15, 15, 15, 15 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0108 },
+ { 16975, { 15, 15, 15, 15 }, 15, 0, { 0, 0, 0, 0 }, 0, 0, 0x0108 }
+};
+
+static const SpellPropertyProvider kLoLSpellPropertiesDOSCDProvider = { ARRAYSIZE(kLoLSpellPropertiesDOSCD), kLoLSpellPropertiesDOSCD };
+
+static const byte kLoLGameShapeMapDOSCD[276] = {
+ 0x15, 0x5A, 0x05, 0x37, 0x09, 0x38, 0x00, 0x36,
+ 0x00, 0x36, 0x00, 0x36, 0x00, 0x3C, 0x26, 0x3D,
+ 0x05, 0x37, 0x07, 0x39, 0x18, 0x40, 0x0D, 0x3E,
+ 0x06, 0x42, 0x06, 0x3F, 0x01, 0x5A, 0x01, 0x5A,
+ 0x0A, 0x5A, 0x0A, 0x5A, 0x0A, 0x5A, 0x04, 0x5A,
+ 0x04, 0x5A, 0x2D, 0x5A, 0x2D, 0x5A, 0x0B, 0x3B,
+ 0x24, 0x5A, 0x03, 0x3A, 0x00, 0x3C, 0x1E, 0x3E,
+ 0x1E, 0x3E, 0x1B, 0x5A, 0x14, 0x5A, 0x29, 0x5A,
+ 0x02, 0x5A, 0x0C, 0x5A, 0x22, 0x5A, 0x21, 0x41,
+ 0x0D, 0x3E, 0x25, 0x5A, 0x1A, 0x41, 0x04, 0x5A,
+ 0x30, 0x5A, 0x31, 0x5A, 0x32, 0x5A, 0x32, 0x5A,
+ 0x00, 0x36, 0x00, 0x36, 0x00, 0x36, 0x00, 0x36,
+ 0x17, 0x5A, 0x17, 0x5A, 0x0E, 0x5A, 0x0E, 0x5A,
+ 0x0E, 0x5A, 0x26, 0x3D, 0x2C, 0x5A, 0x21, 0x41,
+ 0x07, 0x39, 0x27, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A,
+ 0x1B, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A,
+ 0x1B, 0x5A, 0x1B, 0x5A, 0x22, 0x5A, 0x22, 0x5A,
+ 0x16, 0x5A, 0x2D, 0x5A, 0x3B, 0x5A, 0x3B, 0x5A,
+ 0x3A, 0x5A, 0x17, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A,
+ 0x17, 0x5A, 0x0A, 0x5A, 0x0A, 0x5A, 0x0A, 0x5A,
+ 0x1F, 0x5A, 0x17, 0x5A, 0x27, 0x5A, 0x1B, 0x5A,
+ 0x1E, 0x3E, 0x2A, 0x5A, 0x2F, 0x5A, 0x2F, 0x5A,
+ 0x2F, 0x5A, 0x2F, 0x5A, 0x2F, 0x5A, 0x2F, 0x5A,
+ 0x2C, 0x5A, 0x2C, 0x5A, 0x2C, 0x5A, 0x2C, 0x5A,
+ 0x34, 0x5A, 0x0F, 0x5A, 0x35, 0x43, 0x1B, 0x5A,
+ 0x1B, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A, 0x2B, 0x5A,
+ 0x1D, 0x5A, 0x1D, 0x5A, 0x28, 0x5A, 0x28, 0x5A,
+ 0x28, 0x5A, 0x28, 0x5A, 0x01, 0x5A, 0x14, 0x5A,
+ 0x14, 0x5A, 0x14, 0x5A, 0x14, 0x5A, 0x1B, 0x5A,
+ 0x27, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A,
+ 0x1B, 0x5A, 0x36, 0x5A, 0x37, 0x5A, 0x38, 0x5A,
+ 0x39, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A, 0x1B, 0x5A,
+ 0x1B, 0x5A, 0x27, 0x5A, 0x2E, 0x5A, 0x2E, 0x5A,
+ 0x2E, 0x5A, 0x2E, 0x5A, 0x17, 0x5A, 0x01, 0x5A,
+ 0x1C, 0x5A, 0x1C, 0x5A
+};
+
+static const ByteProvider kLoLGameShapeMapDOSCDProvider = { ARRAYSIZE(kLoLGameShapeMapDOSCD), kLoLGameShapeMapDOSCD };
+
+static const byte kLoLSceneItemOffsDOSCD[8] = {
+ 0x00, 0xFE, 0x01, 0xFF, 0x02, 0x00, 0x01, 0xFF
+};
+
+static const ByteProvider kLoLSceneItemOffsDOSCDProvider = { ARRAYSIZE(kLoLSceneItemOffsDOSCD), kLoLSceneItemOffsDOSCD };
+
+static const byte kLoLCharInvIndexDOSCD[5] = {
+ 0x00, 0x00, 0x03, 0x01, 0x02
+};
+
+static const ByteProvider kLoLCharInvIndexDOSCDProvider = { ARRAYSIZE(kLoLCharInvIndexDOSCD), kLoLCharInvIndexDOSCD };
+
+static const byte kLoLCharInvDefsDOSCD[88] = {
+ 0x05, 0x34, 0x50, 0x34, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x05, 0x04, 0x05, 0x1C, 0x50, 0x04, 0x50, 0x1C,
+ 0x05, 0x5D, 0x0F, 0x4E, 0x50, 0x4E, 0x05, 0x19,
+ 0x50, 0x19, 0x05, 0x49, 0x50, 0x49, 0x05, 0x01,
+ 0x05, 0x31, 0x50, 0x01, 0x50, 0x31, 0x05, 0x61,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x34, 0x50, 0x34,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x04, 0x05, 0x1C,
+ 0x50, 0x04, 0x50, 0x1C, 0x05, 0x5D, 0x0F, 0x4E,
+ 0x50, 0x4E, 0x05, 0x34, 0x50, 0x34, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x05, 0x04, 0x05, 0x1C, 0x50, 0x04,
+ 0x50, 0x1C, 0xFF, 0xFF, 0x0F, 0x4E, 0x50, 0x4E
+};
+
+static const ByteProvider kLoLCharInvDefsDOSCDProvider = { ARRAYSIZE(kLoLCharInvDefsDOSCD), kLoLCharInvDefsDOSCD };
+
+static const uint16 kLoLCharDefsManDOSCD[9] = {
+ 0x0100, 0x0100, 0x0100, 0x0032, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsManDOSCDProvider = { ARRAYSIZE(kLoLCharDefsManDOSCD), kLoLCharDefsManDOSCD };
+
+static const uint16 kLoLCharDefsWomanDOSCD[9] = {
+ 0x0100, 0x0100, 0x0100, 0x0032, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsWomanDOSCDProvider = { ARRAYSIZE(kLoLCharDefsWomanDOSCD), kLoLCharDefsWomanDOSCD };
+
+static const uint16 kLoLCharDefsKieranDOSCD[9] = {
+ 0x0180, 0x0080, 0x00C0, 0x0032, 0x0200, 0x00A6, 0x0100, 0x0140,
+ 0x0006
+};
+
+static const Uint16Provider kLoLCharDefsKieranDOSCDProvider = { ARRAYSIZE(kLoLCharDefsKieranDOSCD), kLoLCharDefsKieranDOSCD };
+
+static const uint16 kLoLCharDefsAkshelDOSCD[9] = {
+ 0x00C0, 0x00C0, 0x0140, 0x0032, 0x0100, 0x0180, 0x0180, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsAkshelDOSCDProvider = { ARRAYSIZE(kLoLCharDefsAkshelDOSCD), kLoLCharDefsAkshelDOSCD };
+
+static const uint32 kLoLExpRequirementsDOSCD[11] = {
+ 0x00000000, 0x000001F4, 0x000005DC, 0x00001388, 0x000061A8, 0x0000C350, 0x00013880, 0x0001D4C0,
+ 0x0002BF20, 0x00041EB0, 0x7FFFFFFF
+};
+
+static const Uint32Provider kLoLExpRequirementsDOSCDProvider = { ARRAYSIZE(kLoLExpRequirementsDOSCD), kLoLExpRequirementsDOSCD };
+
+static const uint16 kLoLMonsterModifiers1DOSCD[3] = {
+ 0x0066, 0x0100, 0x0180
+};
+
+static const Uint16Provider kLoLMonsterModifiers1DOSCDProvider = { ARRAYSIZE(kLoLMonsterModifiers1DOSCD), kLoLMonsterModifiers1DOSCD };
+
+static const uint16 kLoLMonsterModifiers2DOSCD[3] = {
+ 0x0100, 0x0100, 0x00C0
+};
+
+static const Uint16Provider kLoLMonsterModifiers2DOSCDProvider = { ARRAYSIZE(kLoLMonsterModifiers2DOSCD), kLoLMonsterModifiers2DOSCD };
+
+static const uint16 kLoLMonsterModifiers3DOSCD[3] = {
+ 0x0140, 0x0100, 0x0080
+};
+
+static const Uint16Provider kLoLMonsterModifiers3DOSCDProvider = { ARRAYSIZE(kLoLMonsterModifiers3DOSCD), kLoLMonsterModifiers3DOSCD };
+
+static const uint16 kLoLMonsterModifiers4DOSCD[3] = {
+ 0x0080, 0x0100, 0x0100
+};
+
+static const Uint16Provider kLoLMonsterModifiers4DOSCDProvider = { ARRAYSIZE(kLoLMonsterModifiers4DOSCD), kLoLMonsterModifiers4DOSCD };
+
+static const byte kLoLMonsterShiftOffsetsDOSCD[32] = {
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0xFF, 0x00, 0xFF,
+ 0x00, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFF, 0x00,
+ 0xFF, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0xFF, 0x00, 0x00
+};
+
+static const ByteProvider kLoLMonsterShiftOffsetsDOSCDProvider = { ARRAYSIZE(kLoLMonsterShiftOffsetsDOSCD), kLoLMonsterShiftOffsetsDOSCD };
+
+static const byte kLoLMonsterDirFlagsDOSCD[16] = {
+ 0x08, 0x14, 0x00, 0x04, 0x04, 0x08, 0x14, 0x00,
+ 0x00, 0x04, 0x08, 0x14, 0x14, 0x00, 0x04, 0x08
+};
+
+static const ByteProvider kLoLMonsterDirFlagsDOSCDProvider = { ARRAYSIZE(kLoLMonsterDirFlagsDOSCD), kLoLMonsterDirFlagsDOSCD };
+
+static const byte kLoLMonsterScaleYDOSCD[30] = {
+ 0x7C, 0x78, 0x74, 0x70, 0x6C, 0x68, 0x65, 0x62,
+ 0x5F, 0x5C, 0x59, 0x56, 0x53, 0x50, 0x4D, 0x4A,
+ 0x48, 0x46, 0x44, 0x43, 0x41, 0x40, 0x3E, 0x3D,
+ 0x3C, 0x3B, 0x3A, 0x39, 0x38, 0x38
+};
+
+static const ByteProvider kLoLMonsterScaleYDOSCDProvider = { ARRAYSIZE(kLoLMonsterScaleYDOSCD), kLoLMonsterScaleYDOSCD };
+
+static const byte kLoLMonsterScaleXDOSCD[32] = {
+ 0x98, 0x98, 0x90, 0x88, 0x80, 0x76, 0x6E, 0x68,
+ 0x62, 0x5C, 0x58, 0x54, 0x50, 0x4A, 0x44, 0x40,
+ 0x3C, 0x38, 0x36, 0x32, 0x30, 0x2C, 0x2A, 0x28,
+ 0x26, 0x24, 0x22, 0x20, 0x20, 0x1E, 0x18, 0x10
+};
+
+static const ByteProvider kLoLMonsterScaleXDOSCDProvider = { ARRAYSIZE(kLoLMonsterScaleXDOSCD), kLoLMonsterScaleXDOSCD };
+
+static const uint16 kLoLMonsterScaleWHDOSCD[65] = {
+ 0x0041, 0x0045, 0x0049, 0x004D, 0x0051, 0x0055, 0x0059, 0x005D,
+ 0x0062, 0x0066, 0x006A, 0x006E, 0x0072, 0x0076, 0x007A, 0x007E,
+ 0x0082, 0x0086, 0x008A, 0x008E, 0x0092, 0x0096, 0x009A, 0x009E,
+ 0x00A3, 0x00A7, 0x00AB, 0x00AF, 0x00B3, 0x00B7, 0x00BB, 0x00BF,
+ 0x00C3, 0x00C7, 0x00CB, 0x00CF, 0x00D3, 0x00D7, 0x00DB, 0x00DF,
+ 0x00E4, 0x00E8, 0x00EC, 0x00F0, 0x00F4, 0x00F8, 0x00FC, 0x0100,
+ 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0100
+};
+
+static const Uint16Provider kLoLMonsterScaleWHDOSCDProvider = { ARRAYSIZE(kLoLMonsterScaleWHDOSCD), kLoLMonsterScaleWHDOSCD };
+
+static const FlyingObjectShape kLoLFlyingObjectShpDOSCD[13] = {
+ { 0, 0, 1, 0x00, 0x40, },
+ { 2, 2, 3, 0x00, 0x00, },
+ { 4, 4, 4, 0x00, 0x00, },
+ { 5, 5, 5, 0x20, 0x00, },
+ { 6, 6, 6, 0x20, 0x00, },
+ { 7, 7, 7, 0x20, 0x00, },
+ { 9, 8, 15, 0x00, 0x00, },
+ { 11, 10, 12, 0x00, 0x00, },
+ { 12, 12, 12, 0x20, 0x00, },
+ { 14, 13, 15, 0x00, 0x00, },
+ { 16, 16, 16, 0x00, 0x00, },
+ { 17, 17, 17, 0x20, 0x00, },
+ { 18, 18, 18, 0x00, 0x00, }
+};
+
+static const FlyingObjectShapeProvider kLoLFlyingObjectShpDOSCDProvider = { ARRAYSIZE(kLoLFlyingObjectShpDOSCD), kLoLFlyingObjectShpDOSCD };
+
+static const uint16 kLoLInventoryDescDOSCD[11] = {
+ 0x417A, 0x417B, 0x417A, 0x417B, 0x417C, 0x417D, 0x417E, 0x417F,
+ 0x4180, 0x4181, 0x4181
+};
+
+static const Uint16Provider kLoLInventoryDescDOSCDProvider = { ARRAYSIZE(kLoLInventoryDescDOSCD), kLoLInventoryDescDOSCD };
+
+static const char *const kLoLLevelShpListDOSCD[12] = {
+ "KEEP.SHP",
+ "FOREST1.SHP",
+ "MANOR.SHP",
+ "CAVE1.SHP",
+ "SWAMP.SHP",
+ "URBISH.SHP",
+ "MINE1.SHP",
+ "TOWER1.SHP",
+ "YVEL1.SHP",
+ "CATWALK.SHP",
+ "RUIN.SHP",
+ "CIMMERIA.SHP"
+};
+
+static const StringListProvider kLoLLevelShpListDOSCDProvider = { ARRAYSIZE(kLoLLevelShpListDOSCD), kLoLLevelShpListDOSCD };
+
+static const char *const kLoLLevelDatListDOSCD[12] = {
+ "KEEP.DAT",
+ "FOREST1.DAT",
+ "MANOR.DAT",
+ "CAVE1.DAT",
+ "SWAMP.DAT",
+ "URBISH.DAT",
+ "MINE1.DAT",
+ "TOWER1.DAT",
+ "YVEL1.DAT",
+ "CATWALK.DAT",
+ "RUIN.DAT",
+ "CIMMERIA.DAT"
+};
+
+static const StringListProvider kLoLLevelDatListDOSCDProvider = { ARRAYSIZE(kLoLLevelDatListDOSCD), kLoLLevelDatListDOSCD };
+
+static const CompassDef kLoLCompassDefsDOSCD[32] = {
+ { 0, 3, -3, 0x00 },
+ { 1, 3, -3, 0x00 },
+ { 2, 3, -3, 0x00 },
+ { 3, 5, -3, 0x00 },
+ { 4, 5, -3, 0x00 },
+ { 5, 6, -3, 0x00 },
+ { 6, 6, -3, 0x00 },
+ { 7, 6, -3, 0x00 },
+ { 8, 6, -3, 0x00 },
+ { 7, 6, 4, 0x02 },
+ { 6, 6, 4, 0x02 },
+ { 5, 6, 4, 0x02 },
+ { 4, 5, 4, 0x02 },
+ { 3, 5, 4, 0x02 },
+ { 2, 3, 4, 0x02 },
+ { 1, 3, 4, 0x02 },
+ { 0, 3, 4, 0x02 },
+ { 1, 2, 4, 0x03 },
+ { 2, 2, 4, 0x03 },
+ { 3, 0, 4, 0x03 },
+ { 4, 0, 4, 0x03 },
+ { 5, -1, 4, 0x03 },
+ { 6, -1, 4, 0x03 },
+ { 7, -1, 4, 0x03 },
+ { 8, -1, -3, 0x01 },
+ { 7, -1, -3, 0x01 },
+ { 6, -1, -3, 0x01 },
+ { 5, -1, -3, 0x01 },
+ { 4, 0, -3, 0x01 },
+ { 3, 0, -3, 0x01 },
+ { 2, 2, -3, 0x01 },
+ { 1, 2, -3, 0x01 }
+};
+
+static const CompassDefProvider kLoLCompassDefsDOSCDProvider = { ARRAYSIZE(kLoLCompassDefsDOSCD), kLoLCompassDefsDOSCD };
+
+static const uint16 kLoLItemPricesDOSCD[46] = {
+ 0x0001, 0x0005, 0x0008, 0x000A, 0x000F, 0x0014, 0x0019, 0x001E,
+ 0x0023, 0x0028, 0x002D, 0x0032, 0x0037, 0x003C, 0x0041, 0x0046,
+ 0x004B, 0x0050, 0x005A, 0x0064, 0x0069, 0x0078, 0x007D, 0x0082,
+ 0x008C, 0x0096, 0x00A0, 0x00AF, 0x00C8, 0x00E1, 0x00FA, 0x0113,
+ 0x012C, 0x0145, 0x015E, 0x0177, 0x0190, 0x01A9, 0x01C2, 0x01DB,
+ 0x01F4, 0x0230, 0x03E8, 0x05DC, 0x0BB8, 0x0000
+};
+
+static const Uint16Provider kLoLItemPricesDOSCDProvider = { ARRAYSIZE(kLoLItemPricesDOSCD), kLoLItemPricesDOSCD };
+
+static const byte kLoLStashSetupDOSCD[12] = {
+ 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x00, 0x01, 0x01
+};
+
+static const ByteProvider kLoLStashSetupDOSCDProvider = { ARRAYSIZE(kLoLStashSetupDOSCD), kLoLStashSetupDOSCD };
+
+static const byte kLoLDscWallsDOSCD[36] = {
+ 0xFF, 0xFF, 0x02, 0x01, 0x02, 0x01, 0x02, 0xFF,
+ 0x02, 0x03, 0x02, 0x03, 0xFF, 0xFF, 0x02, 0x01,
+ 0x02, 0x01, 0x02, 0xFF, 0x02, 0x03, 0x02, 0x03,
+ 0x02, 0x01, 0x02, 0xFF, 0x02, 0x03, 0xFF, 0x01,
+ 0x02, 0xFF, 0xFF, 0x03
+};
+
+static const ByteProvider kLoLDscWallsDOSCDProvider = { ARRAYSIZE(kLoLDscWallsDOSCD), kLoLDscWallsDOSCD };
+
+static const byte kLoLDscShapeIndexDOSCD[36] = {
+ 0x03, 0x09, 0x03, 0x08, 0x03, 0x07, 0x03, 0x03,
+ 0x03, 0xF9, 0x03, 0xF8, 0x03, 0xF7, 0x02, 0x09,
+ 0x02, 0x06, 0x02, 0x02, 0x02, 0xFA, 0x02, 0xF7,
+ 0x01, 0x05, 0x01, 0x01, 0x01, 0xFB, 0x00, 0x04,
+ 0x00, 0x00, 0x00, 0xFC
+};
+
+static const ByteProvider kLoLDscShapeIndexDOSCDProvider = { ARRAYSIZE(kLoLDscShapeIndexDOSCD), kLoLDscShapeIndexDOSCD };
+
+static const byte kLoLDscOvlMapDOSCD[10] = {
+ 0x00, 0x01, 0x01, 0x01, 0x04, 0x05, 0x05, 0x05,
+ 0x05, 0x04
+};
+
+static const ByteProvider kLoLDscOvlMapDOSCDProvider = { ARRAYSIZE(kLoLDscOvlMapDOSCD), kLoLDscOvlMapDOSCD };
+
+static const uint16 kLoLDscScaleWidthDataDOSCD[36] = {
+ 0x0060, 0x0000, 0x0060, 0x00CE, 0x0060, 0x0055, 0x0060, 0x0000,
+ 0x0060, 0x0055, 0x0060, 0x00CE, 0x0060, 0x0000, 0x00A0, 0x00AE,
+ 0x00A0, 0x00AA, 0x00A0, 0x0000, 0x00A0, 0x00AA, 0x00A0, 0x00AE,
+ 0x0100, 0x0100, 0x0100, 0x0000, 0x0100, 0x0100, 0x0000, 0x0100,
+ 0x0100, 0x0000, 0x0000, 0x0100
+};
+
+static const Uint16Provider kLoLDscScaleWidthDataDOSCDProvider = { ARRAYSIZE(kLoLDscScaleWidthDataDOSCD), kLoLDscScaleWidthDataDOSCD };
+
+static const uint16 kLoLDscScaleHeightDataDOSCD[36] = {
+ 0x006A, 0x0000, 0x006A, 0x006A, 0x006A, 0x006A, 0x006A, 0x0000,
+ 0x006A, 0x006A, 0x006A, 0x006A, 0x006A, 0x0000, 0x00AA, 0x0056,
+ 0x00AA, 0x00AA, 0x00AA, 0x0000, 0x00AA, 0x00AA, 0x00AA, 0x0056,
+ 0x0100, 0x0100, 0x0100, 0x0000, 0x0100, 0x0100, 0x0000, 0x0100,
+ 0x0100, 0x0000, 0x0000, 0x0100
+};
+
+static const Uint16Provider kLoLDscScaleHeightDataDOSCDProvider = { ARRAYSIZE(kLoLDscScaleHeightDataDOSCD), kLoLDscScaleHeightDataDOSCD };
+
+static const uint16 kLoLDscXDOSCD[36] = {
+ 0xFFB0, 0xFFE0, 0xFFE0, 0x0010, 0x0010, 0x0040, 0x0040, 0x0000,
+ 0x0070, 0x0070, 0x00A0, 0x00A0, 0x00D0, 0x00D0, 0xFF86, 0x0000,
+ 0xFFE0, 0x0030, 0x0030, 0x0000, 0x0080, 0x0080, 0x00D0, 0x00B0,
+ 0xFF98, 0x0018, 0x0018, 0x0000, 0x0098, 0x0098, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x00B0, 0x00B0
+};
+
+static const Uint16Provider kLoLDscXDOSCDProvider = { ARRAYSIZE(kLoLDscXDOSCD), kLoLDscXDOSCD };
+
+static const byte kLoLBaseDscYDOSCD[36] = {
+ 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B,
+ 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x14, 0x1C,
+ 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x1C,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLBaseDscYDOSCDProvider = { ARRAYSIZE(kLoLBaseDscYDOSCD), kLoLBaseDscYDOSCD };
+
+static const byte kLoLDscTileIndexDOSCD[18] = {
+ 0x00, 0x06, 0x01, 0x05, 0x02, 0x04, 0x03, 0x07,
+ 0x0B, 0x08, 0x0A, 0x09, 0x0C, 0x0E, 0x0D, 0x0F,
+ 0x11, 0x10
+};
+
+static const ByteProvider kLoLDscTileIndexDOSCDProvider = { ARRAYSIZE(kLoLDscTileIndexDOSCD), kLoLDscTileIndexDOSCD };
+
+static const byte kLoLDscUnk2DOSCD[23] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12
+};
+
+static const ByteProvider kLoLDscUnk2DOSCDProvider = { ARRAYSIZE(kLoLDscUnk2DOSCD), kLoLDscUnk2DOSCD };
+
+static const byte kLoLDscDoorShapeIndexDOSCD[23] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01
+};
+
+static const ByteProvider kLoLDscDoorShapeIndexDOSCDProvider = { ARRAYSIZE(kLoLDscDoorShapeIndexDOSCD), kLoLDscDoorShapeIndexDOSCD };
+
+static const byte kLoLDscDimData1DOSCD[324] = {
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD8, 0xD7, 0xD8, 0xD8, 0x02, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xFE, 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0x03,
+ 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xFE, 0xD8, 0x08,
+ 0xD8, 0xD8, 0xD8, 0xFE, 0xF8, 0x06, 0xD8, 0xD8,
+ 0xFA, 0x03, 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xD8, 0xFA, 0xD7, 0x10, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xF2, 0xD8, 0x14, 0xD8, 0xD8,
+ 0xD8, 0xF0, 0x0E, 0x14, 0xD8, 0xED, 0x10, 0xD8,
+ 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8, 0xEC, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0x14, 0xD8, 0xED,
+ 0xD7, 0xD8, 0xD8, 0x13, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0xD8,
+ 0xD8, 0xD8, 0xD7, 0xD8, 0xD8, 0xD7, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0x06, 0xD8, 0xD8, 0xFA, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xFA, 0xD8, 0x10, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xF0, 0xD8, 0xD8,
+ 0xD8, 0xED, 0x10, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0xD8, 0xD8, 0xD7,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFD, 0xD8,
+ 0x13, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xED, 0xD8, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8
+};
+
+static const ByteProvider kLoLDscDimData1DOSCDProvider = { ARRAYSIZE(kLoLDscDimData1DOSCD), kLoLDscDimData1DOSCD };
+
+static const byte kLoLDscDimData2DOSCD[648] = {
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x02, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x04, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x16, 0x00, 0x00, 0x03,
+ 0x00, 0x16, 0x03, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x16, 0x00, 0x08,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x02,
+ 0x16, 0x00, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x08, 0x0E,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x06, 0x10,
+ 0x00, 0x13, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x0E, 0x16,
+ 0x00, 0x16, 0x00, 0x14, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x16, 0x00, 0x00, 0x14,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x14, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x12, 0x16, 0x14, 0x16, 0x00, 0x16, 0x13, 0x16,
+ 0x16, 0x00, 0x00, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x00, 0x16,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x07, 0x0F,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x03, 0x16, 0x00, 0x16,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16
+};
+
+static const ByteProvider kLoLDscDimData2DOSCDProvider = { ARRAYSIZE(kLoLDscDimData2DOSCD), kLoLDscDimData2DOSCD };
+
+static const byte kLoLDscBlockMapDOSCD[12] = {
+ 0x02, 0x03, 0x00, 0x01, 0x01, 0x02, 0x03, 0x00,
+ 0x03, 0x00, 0x01, 0x02
+};
+
+static const ByteProvider kLoLDscBlockMapDOSCDProvider = { ARRAYSIZE(kLoLDscBlockMapDOSCD), kLoLDscBlockMapDOSCD };
+
+static const byte kLoLDscDimMapDOSCD[18] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x03
+};
+
+static const ByteProvider kLoLDscDimMapDOSCDProvider = { ARRAYSIZE(kLoLDscDimMapDOSCD), kLoLDscDimMapDOSCD };
+
+static const byte kLoLDscOvlIndexDOSCD[20] = {
+ 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x03,
+ 0x03, 0x03, 0x04, 0x04, 0x05, 0x05, 0x05, 0x06,
+ 0x06, 0x07, 0x07, 0x07
+};
+
+static const ByteProvider kLoLDscOvlIndexDOSCDProvider = { ARRAYSIZE(kLoLDscOvlIndexDOSCD), kLoLDscOvlIndexDOSCD };
+
+static const byte kLoLDscBlockIndexDOSCD[72] = {
+ 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xBE,
+ 0xBF, 0xC0, 0xC1, 0xC2, 0xDF, 0xE0, 0xE1, 0xFF,
+ 0x00, 0x01, 0xA3, 0xC3, 0xE3, 0x03, 0x23, 0x43,
+ 0x63, 0xC2, 0xE2, 0x02, 0x22, 0x42, 0xE1, 0x01,
+ 0x21, 0xE0, 0x00, 0x20, 0x63, 0x62, 0x61, 0x60,
+ 0x5F, 0x5E, 0x5D, 0x42, 0x41, 0x40, 0x3F, 0x3E,
+ 0x21, 0x20, 0x1F, 0x01, 0x00, 0xFF, 0x5D, 0x3D,
+ 0x1D, 0xFD, 0xDD, 0xBD, 0x9D, 0x3E, 0x1E, 0xFE,
+ 0xDE, 0xBE, 0x1F, 0xFF, 0xDF, 0x20, 0x00, 0xE0
+};
+
+static const ByteProvider kLoLDscBlockIndexDOSCDProvider = { ARRAYSIZE(kLoLDscBlockIndexDOSCD), kLoLDscBlockIndexDOSCD };
+
+static const byte kLoLDscDoorY2DOSCD[128] = {
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,
+ 0x10, 0x11, 0x12, 0x13, 0x14, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x0D, 0x08, 0x03, 0x12, 0x0E, 0x09, 0x04, 0x00,
+ 0x13, 0x0F, 0x0A, 0x05, 0x01, 0x14, 0x10, 0x0B,
+ 0x06, 0x02, 0x11, 0x0C, 0x07, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x14, 0x13, 0x12, 0x11, 0x10, 0x0F, 0x0E, 0x0D,
+ 0x0C, 0x0B, 0x0A, 0x09, 0x08, 0x07, 0x06, 0x05,
+ 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x07, 0x0C, 0x11, 0x02, 0x06, 0x0B, 0x10, 0x14,
+ 0x01, 0x05, 0x0A, 0x0F, 0x13, 0x00, 0x04, 0x09,
+ 0x0E, 0x12, 0x03, 0x08, 0x0D, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLDscDoorY2DOSCDProvider = { ARRAYSIZE(kLoLDscDoorY2DOSCD), kLoLDscDoorY2DOSCD };
+
+static const byte kLoLDscDoorFrameY1DOSCD[4] = {
+ 0x1E, 0x18, 0x10, 0x00
+};
+
+static const ByteProvider kLoLDscDoorFrameY1DOSCDProvider = { ARRAYSIZE(kLoLDscDoorFrameY1DOSCD), kLoLDscDoorFrameY1DOSCD };
+
+static const byte kLoLDscDoorFrameY2DOSCD[4] = {
+ 0x3B, 0x47, 0x56, 0x78
+};
+
+static const ByteProvider kLoLDscDoorFrameY2DOSCDProvider = { ARRAYSIZE(kLoLDscDoorFrameY2DOSCD), kLoLDscDoorFrameY2DOSCD };
+
+static const uint16 kLoLDscDoorScaleDOSCD[8] = {
+ 0x0075, 0x006A, 0x00B9, 0x00B2, 0x0100, 0x0100, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorScaleDOSCDProvider = { ARRAYSIZE(kLoLDscDoorScaleDOSCD), kLoLDscDoorScaleDOSCD };
+
+static const uint16 kLoLDscDoor4DOSCD[4] = {
+ 0x0005, 0x0002, 0x0008, 0x787C
+};
+
+static const Uint16Provider kLoLDscDoor4DOSCDProvider = { ARRAYSIZE(kLoLDscDoor4DOSCD), kLoLDscDoor4DOSCD };
+
+static const uint16 kLoLDscDoorXDOSCD[576] = {
+ 0xFF98, 0xFFA0, 0xFFA8, 0xFF90, 0xFF98, 0xFFA0, 0xFFA8, 0xFFB0,
+ 0xFF74, 0xFF7E, 0xFF88, 0xFF92, 0xFF9C, 0xFF74, 0xFF7E, 0xFF88,
+ 0xFF92, 0xFF9C, 0xFF64, 0xFF70, 0xFF7C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFB8, 0xFFC0, 0xFFC8, 0xFFB0, 0xFFB8, 0xFFC0, 0xFFC8, 0xFFD0,
+ 0xFF9C, 0xFFA6, 0xFFB0, 0xFFBA, 0xFFC4, 0xFF9C, 0xFFA6, 0xFFB0,
+ 0xFFBA, 0xFFC4, 0xFF94, 0xFFA0, 0xFFAC, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD8, 0xFFE0, 0xFFE8, 0xFFD0, 0xFFD8, 0xFFE0, 0xFFE8, 0xFFF0,
+ 0xFFC4, 0xFFCE, 0xFFD8, 0xFFE2, 0xFFEC, 0xFFC4, 0xFFCE, 0xFFD8,
+ 0xFFE2, 0xFFEC, 0xFFC4, 0xFFD0, 0xFFDC, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0x0000, 0x0008, 0xFFF0, 0xFFF8, 0x0000, 0x0008, 0x0010,
+ 0xFFEC, 0xFFF6, 0x0000, 0x000A, 0x0014, 0xFFEC, 0xFFF6, 0x0000,
+ 0x000A, 0x0014, 0xFFF4, 0x0000, 0x000C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0018, 0x0020, 0x0028, 0x0010, 0x0018, 0x0020, 0x0028, 0x0030,
+ 0x0014, 0x001E, 0x0028, 0x0032, 0x003C, 0x0014, 0x001E, 0x0028,
+ 0x0032, 0x003C, 0x0024, 0x0030, 0x003C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0038, 0x0040, 0x0048, 0x0030, 0x0038, 0x0040, 0x0048, 0x0050,
+ 0x003C, 0x0046, 0x0050, 0x005A, 0x0064, 0x003C, 0x0046, 0x0050,
+ 0x005A, 0x0064, 0x0054, 0x0060, 0x006C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0058, 0x0060, 0x0068, 0x0050, 0x0058, 0x0060, 0x0068, 0x0070,
+ 0x0064, 0x006E, 0x0078, 0x0082, 0x008C, 0x0064, 0x006E, 0x0078,
+ 0x0082, 0x008C, 0x0084, 0x0090, 0x009C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF94, 0xFFA0, 0xFFAC, 0xFF7E, 0xFF8B, 0xFF98, 0xFFA5, 0xFFB2,
+ 0xFF6C, 0xFF7B, 0xFF8A, 0xFF99, 0xFFA7, 0xFF60, 0xFF70, 0xFF80,
+ 0xFF90, 0xFFA0, 0xFF4C, 0xFF60, 0xFF74, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC4, 0xFFD0, 0xFFDC, 0xFFB2, 0xFFBF, 0xFFCC, 0xFFD9, 0xFFE6,
+ 0xFFA7, 0xFFB6, 0xFFC5, 0xFFD4, 0xFFE2, 0xFFA0, 0xFFB0, 0xFFC0,
+ 0xFFD0, 0xFFE0, 0xFF9C, 0xFFB0, 0xFFC4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF4, 0x0000, 0x000C, 0xFFE6, 0xFFF3, 0x0000, 0x000D, 0x001A,
+ 0xFFE2, 0xFFF1, 0x0000, 0x000F, 0x001E, 0xFFE0, 0xFFF0, 0x0000,
+ 0x0010, 0x0020, 0xFFEC, 0x0000, 0x0014, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0024, 0x0030, 0x003C, 0x001A, 0x0027, 0x0034, 0x0041, 0x004E,
+ 0x001E, 0x002C, 0x003B, 0x004A, 0x0059, 0x0020, 0x0030, 0x0040,
+ 0x0050, 0x0060, 0x003C, 0x0050, 0x0064, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0054, 0x0060, 0x006C, 0x004E, 0x005B, 0x0068, 0x0075, 0x0082,
+ 0x0059, 0x0067, 0x0076, 0x0085, 0x0094, 0x0060, 0x0070, 0x0080,
+ 0x0090, 0x00A0, 0x008C, 0x00A0, 0x00B4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF9C, 0xFFB0, 0xFFC4, 0xFF7C, 0xFF92, 0xFFA8, 0xFFBE, 0xFFD4,
+ 0xFF6D, 0xFF85, 0xFF9E, 0xFFB6, 0xFFCF, 0xFF5E, 0xFF79, 0xFF94,
+ 0xFFAF, 0xFFCA, 0xFF60, 0xFF80, 0xFFA0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFEC, 0x0000, 0x0014, 0xFFD4, 0xFFEA, 0x0000, 0x0016, 0x002C,
+ 0xFFCF, 0xFFE7, 0x0000, 0x0019, 0x0031, 0xFFCA, 0xFFE5, 0x0000,
+ 0x001B, 0x0036, 0xFFE0, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x003C, 0x0050, 0x0064, 0x002C, 0x0042, 0x0058, 0x006E, 0x0084,
+ 0x0031, 0x004A, 0x0062, 0x007B, 0x0093, 0x0036, 0x0051, 0x006C,
+ 0x0087, 0x00A2, 0x0060, 0x0080, 0x00A0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF60, 0xFF80, 0xFFA0, 0xFF1C, 0xFF42, 0xFF68, 0xFF8E, 0xFFB4,
+ 0xFF40, 0xFF60, 0xFF80, 0xFFA0, 0xFFC0, 0xFF1C, 0xFF42, 0xFF68,
+ 0xFF8E, 0xFFB4, 0xFF60, 0xFF80, 0xFFA0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFE0, 0x0000, 0x0020, 0xFFB4, 0xFFDA, 0x0000, 0x0026, 0x004C,
+ 0xFFC0, 0xFFE0, 0x0000, 0x0020, 0x0040, 0xFFB4, 0xFFDA, 0x0000,
+ 0x0026, 0x004C, 0xFFE0, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0060, 0x0080, 0x00A0, 0x004C, 0x0072, 0x0098, 0x00BE, 0x00E4,
+ 0x0040, 0x0060, 0x0080, 0x00A0, 0x00C0, 0x004C, 0x0072, 0x0098,
+ 0x00BE, 0x00E4, 0x0060, 0x0080, 0x00A0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorXDOSCDProvider = { ARRAYSIZE(kLoLDscDoorXDOSCD), kLoLDscDoorXDOSCD };
+
+static const uint16 kLoLDscDoorYDOSCD[576] = {
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorYDOSCDProvider = { ARRAYSIZE(kLoLDscDoorYDOSCD), kLoLDscDoorYDOSCD };
+
+static const byte kLoLScrollXTopDOSCD[5] = {
+ 0x05, 0x0A, 0x0F, 0x14, 0x19
+};
+
+static const ByteProvider kLoLScrollXTopDOSCDProvider = { ARRAYSIZE(kLoLScrollXTopDOSCD), kLoLScrollXTopDOSCD };
+
+static const byte kLoLScrollYTopDOSCD[5] = {
+ 0x02, 0x04, 0x07, 0x09, 0x0C
+};
+
+static const ByteProvider kLoLScrollYTopDOSCDProvider = { ARRAYSIZE(kLoLScrollYTopDOSCD), kLoLScrollYTopDOSCD };
+
+static const byte kLoLScrollXBottomDOSCD[5] = {
+ 0x05, 0x0A, 0x0F, 0x14, 0x19
+};
+
+static const ByteProvider kLoLScrollXBottomDOSCDProvider = { ARRAYSIZE(kLoLScrollXBottomDOSCD), kLoLScrollXBottomDOSCD };
+
+static const byte kLoLScrollYBottomDOSCD[5] = {
+ 0x04, 0x08, 0x0C, 0x10, 0x14
+};
+
+static const ByteProvider kLoLScrollYBottomDOSCDProvider = { ARRAYSIZE(kLoLScrollYBottomDOSCD), kLoLScrollYBottomDOSCD };
+
+static const LoLButtonDef kLoLButtonDefsDOSCD[95] = {
+ { 0x1100, 96, 352, 33, 131, 22, 19, 0x0000, 0 },
+ { 0x1100, 97, 353, 33, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 98, 354, 33, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 92, 348, 11, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 102, 358, 53, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 91, 347, 11, 131, 22, 19, 0x0000, 0 },
+ { 0x1100, 101, 357, 53, 131, 22, 19, 0x0000, 0 },
+ { 0x0100, 112, 0, 80, 143, 22, 17, 0x0000, 0 },
+ { 0x0100, 113, 0, 80, 143, 22, 17, 0x0001, 0 },
+ { 0x0100, 114, 0, 80, 143, 22, 17, 0x0002, 0 },
+ { 0x0100, 115, 0, 80, 143, 22, 17, 0x0003, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0000, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0001, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0002, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0003, 0 },
+ { 0x1100, 0, 0, 80, 144, 22, 32, 0x0000, 0 },
+ { 0x1100, 110, 0, 0, 0, 320, 200, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0003, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0002, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0003, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0004, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0005, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0006, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0007, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0008, 2 },
+ { 0x1100, 0, 0, 0, 0, 12, 11, 0x0009, 2 },
+ { 0x1100, 0, 0, 0, 0, 12, 11, 0x000A, 2 },
+ { 0x1100, 110, 0, 160, 93, 43, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 102, 88, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 88, 102, 88, 19, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 85, 88, 17, 0x0002, 2 },
+ { 0x1100, 0, 0, 88, 85, 88, 17, 0x0003, 2 },
+ { 0x1100, 0, 0, 0, 0, 176, 120, 0x0000, 2 },
+ { 0x1100, 0, 0, 106, 179, 21, 21, 0x0000, 0 },
+ { 0x1100, 0, 0, 127, 179, 21, 21, 0x0001, 0 },
+ { 0x1100, 0, 0, 148, 179, 21, 21, 0x0002, 0 },
+ { 0x1100, 0, 0, 169, 179, 21, 21, 0x0003, 0 },
+ { 0x1100, 0, 0, 190, 179, 21, 21, 0x0004, 0 },
+ { 0x1100, 0, 0, 211, 179, 21, 21, 0x0005, 0 },
+ { 0x1100, 0, 0, 232, 179, 21, 21, 0x0006, 0 },
+ { 0x1100, 0, 0, 253, 179, 21, 21, 0x0007, 0 },
+ { 0x1100, 0, 0, 274, 179, 21, 21, 0x0008, 0 },
+ { 0x1100, 0, 0, 274, 179, 21, 21, 0x0009, 0 },
+ { 0x1100, 0, 0, 85, 179, 21, 21, 0xFFFF, 0 },
+ { 0x1100, 0, 0, 295, 179, 22, 21, 0x0001, 0 },
+ { 0x1100, 0, 0, 24, 8, 128, 96, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 0, 176, 120, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 0, 0, 0, 0x0000, 0 },
+ { 0x1100, 0, 0, 112, 0, 176, 16, 0x0001, 0 },
+ { 0x1100, 0, 0, 112, 110, 176, 26, 0x0001, 0 },
+ { 0x1100, 0, 0, 96, 88, 32, 32, 0x0001, 0 },
+ { 0x1100, 0, 0, 272, 88, 32, 32, 0x0001, 0 },
+ { 0x1100, 0, 0, 96, 16, 32, 72, 0x0001, 0 },
+ { 0x1100, 0, 0, 272, 16, 32, 72, 0x0001, 0 },
+ { 0x1100, 0, 0, 24, 15, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 24, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 33, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 42, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 51, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 60, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 69, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 78, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 87, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 96, 61, 9, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x1100, 110, 0, 0, 0, 320, 200, 0x0003, 0 },
+ { 0x0100, 0, 0, 112, 0, 88, 80, 0x0000, 0 },
+ { 0x0100, 0, 0, 200, 0, 88, 80, 0x0001, 0 },
+ { 0x1100, 25, 110, 11, 178, 21, 22, 0x0000, 0 },
+ { 0x0100, 20, 0, 32, 178, 22, 22, 0x0000, 0 },
+ { 0x0100, 0, 0, 291, 96, 27, 24, 0x0000, 0 },
+ { 0x0100, 0, 0, 289, 0, 31, 28, 0x0000, 0 },
+ { 0x0100, 0, 0, 289, 31, 31, 23, 0x0000, 0 },
+ { 0x0100, 0, 0, 291, 56, 29, 24, 0x0000, 0 },
+ { 0x1100, 0, 0, 220, 98, 43, 19, 0x0000, 0 }
+};
+
+static const LoLButtonDefProvider kLoLButtonDefsDOSCDProvider = { ARRAYSIZE(kLoLButtonDefsDOSCD), kLoLButtonDefsDOSCD };
+
+static const byte kLoLButtonList1DOSCD[40] = {
+ 0x59, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x31,
+ 0x3E, 0x2D, 0x2E, 0x2F, 0x30, 0x56, 0x57, 0x01,
+ 0x02, 0x00, 0x03, 0x04, 0x05, 0x06, 0x32, 0x33,
+ 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B,
+ 0x3C, 0x3D, 0x58, 0x5A, 0x5B, 0x5C, 0x5D, 0xFF
+};
+
+static const ByteProvider kLoLButtonList1DOSCDProvider = { ARRAYSIZE(kLoLButtonList1DOSCD), kLoLButtonList1DOSCD };
+
+static const byte kLoLButtonList2DOSCD[15] = {
+ 0x2C, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+ 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x5E, 0xFF
+};
+
+static const ByteProvider kLoLButtonList2DOSCDProvider = { ARRAYSIZE(kLoLButtonList2DOSCD), kLoLButtonList2DOSCD };
+
+static const byte kLoLButtonList3DOSCD[2] = {
+ 0x40, 0xFF
+};
+
+static const ByteProvider kLoLButtonList3DOSCDProvider = { ARRAYSIZE(kLoLButtonList3DOSCD), kLoLButtonList3DOSCD };
+
+static const byte kLoLButtonList4DOSCD[15] = {
+ 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
+ 0x3A, 0x3B, 0x3C, 0x3D, 0x5A, 0x5B, 0xFF
+};
+
+static const ByteProvider kLoLButtonList4DOSCDProvider = { ARRAYSIZE(kLoLButtonList4DOSCD), kLoLButtonList4DOSCD };
+
+static const byte kLoLButtonList5DOSCD[16] = {
+ 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x06, 0x41,
+ 0x42, 0x43, 0x44, 0x45, 0x46, 0x5A, 0x5B, 0xFF
+};
+
+static const ByteProvider kLoLButtonList5DOSCDProvider = { ARRAYSIZE(kLoLButtonList5DOSCD), kLoLButtonList5DOSCD };
+
+static const byte kLoLButtonList6DOSCD[14] = {
+ 0x2C, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+ 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0xFF
+};
+
+static const ByteProvider kLoLButtonList6DOSCDProvider = { ARRAYSIZE(kLoLButtonList6DOSCD), kLoLButtonList6DOSCD };
+
+static const byte kLoLButtonList7DOSCD[3] = {
+ 0x0F, 0x10, 0xFF
+};
+
+static const ByteProvider kLoLButtonList7DOSCDProvider = { ARRAYSIZE(kLoLButtonList7DOSCD), kLoLButtonList7DOSCD };
+
+static const byte kLoLButtonList8DOSCD[2] = {
+ 0x55, 0xFF
+};
+
+static const ByteProvider kLoLButtonList8DOSCDProvider = { ARRAYSIZE(kLoLButtonList8DOSCD), kLoLButtonList8DOSCD };
+
+static const byte kLoLLegendDataDOSCD[60] = {
+ 0x0E, 0x00, 0x00, 0x07, 0x42, 0x19, 0x00, 0x00,
+ 0x08, 0x42, 0x1A, 0x00, 0x00, 0x09, 0x42, 0x0D,
+ 0x00, 0x00, 0x0A, 0x42, 0x0A, 0x00, 0x00, 0x0B,
+ 0x42, 0x0B, 0x00, 0x00, 0x0C, 0x42, 0x0F, 0x00,
+ 0x00, 0x0D, 0x42, 0x16, 0x00, 0x00, 0x0E, 0x42,
+ 0x17, 0x00, 0x00, 0x0F, 0x42, 0x11, 0x00, 0x00,
+ 0x10, 0x42, 0x12, 0x00, 0xFB, 0x51, 0x42, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLLegendDataDOSCDProvider = { ARRAYSIZE(kLoLLegendDataDOSCD), kLoLLegendDataDOSCD };
+
+static const byte kLoLMapCursorOvlDOSCD[25] = {
+ 0x00, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86,
+ 0x87, 0x88, 0x01, 0x01, 0x01, 0x01, 0x01, 0x88,
+ 0x87, 0x86, 0x85, 0x84, 0x83, 0x82, 0x81, 0x80,
+ 0x80
+};
+
+static const ByteProvider kLoLMapCursorOvlDOSCDProvider = { ARRAYSIZE(kLoLMapCursorOvlDOSCD), kLoLMapCursorOvlDOSCD };
+
+static const uint16 kLoLMapStringIdDOSCD[30] = {
+ 0xFFFF, 0x4211, 0x4212, 0x4213, 0x4214, 0x4215, 0x4216, 0x4217,
+ 0x4218, 0x4219, 0x421A, 0x421B, 0x421C, 0x421D, 0x421E, 0x421F,
+ 0x4220, 0x4221, 0x4222, 0x4223, 0x4224, 0x4225, 0x4226, 0x4227,
+ 0x4228, 0x4229, 0x422A, 0x422B, 0x422C, 0x422D
+};
+
+static const Uint16Provider kLoLMapStringIdDOSCDProvider = { ARRAYSIZE(kLoLMapStringIdDOSCD), kLoLMapStringIdDOSCD };
+
+static const byte kLoLSpellbookAnimDOSCD[28] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x13, 0xB6, 0x04, 0x00, 0x13, 0x4D,
+ 0x04, 0x00, 0x13, 0xB9, 0x04, 0x00, 0x13, 0xB8,
+ 0x04, 0x00, 0x13, 0xBA
+};
+
+static const ByteProvider kLoLSpellbookAnimDOSCDProvider = { ARRAYSIZE(kLoLSpellbookAnimDOSCD), kLoLSpellbookAnimDOSCD };
+
+static const byte kLoLSpellbookCoordsDOSCD[12] = {
+ 0x16, 0x16, 0x16, 0x1F, 0x16, 0x28, 0x16, 0x31,
+ 0x16, 0x3A, 0x16, 0x43
+};
+
+static const ByteProvider kLoLSpellbookCoordsDOSCDProvider = { ARRAYSIZE(kLoLSpellbookCoordsDOSCD), kLoLSpellbookCoordsDOSCD };
+
+static const byte kLoLHealShapeFramesDOSCD[80] = {
+ 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02,
+ 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03,
+ 0x03, 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+ 0x05, 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
+};
+
+static const ByteProvider kLoLHealShapeFramesDOSCDProvider = { ARRAYSIZE(kLoLHealShapeFramesDOSCD), kLoLHealShapeFramesDOSCD };
+
+static const byte kLoLLightningDefsDOSCD[20] = {
+ 0x06, 0x05, 0xAB, 0x00, 0x06, 0x04, 0xAB, 0x00,
+ 0x08, 0x04, 0xAA, 0x00, 0x06, 0x03, 0xAA, 0x00,
+ 0x06, 0x02, 0xA9, 0x00
+};
+
+static const ByteProvider kLoLLightningDefsDOSCDProvider = { ARRAYSIZE(kLoLLightningDefsDOSCD), kLoLLightningDefsDOSCD };
+
+static const uint16 kLoLFireballCoordsDOSCD[256] = {
+ 0x0000, 0x0324, 0x0647, 0x096A, 0x0C8B, 0x0FAB, 0x12C7, 0x15E1,
+ 0x18F8, 0x1C0B, 0x1F19, 0x2223, 0x2527, 0x2826, 0x2B1E, 0x2E10,
+ 0x30FB, 0x33DE, 0x36B9, 0x398C, 0x3C56, 0x3F16, 0x41CD, 0x447A,
+ 0x471C, 0x49B3, 0x4C3F, 0x4EBF, 0x5133, 0x539A, 0x55F4, 0x5842,
+ 0x5A81, 0x5CB3, 0x5ED6, 0x60EB, 0x62F1, 0x64E7, 0x66CE, 0x68A5,
+ 0x6A6C, 0x6C23, 0x6DC9, 0x6F5E, 0x70E1, 0x7254, 0x73B5, 0x7503,
+ 0x7640, 0x776B, 0x7883, 0x7989, 0x7A7C, 0x7B5C, 0x7C29, 0x7CE2,
+ 0x7D89, 0x7E1C, 0x7E9C, 0x7F08, 0x7F61, 0x7FA6, 0x7FD7, 0x7FF5,
+ 0x7FFF, 0x7FF5, 0x7FD7, 0x7FA6, 0x7F61, 0x7F08, 0x7E9C, 0x7E1C,
+ 0x7D89, 0x7CE2, 0x7C29, 0x7B5C, 0x7A7C, 0x7989, 0x7883, 0x776B,
+ 0x7640, 0x7503, 0x73B5, 0x7254, 0x70E1, 0x6F5E, 0x6DC9, 0x6C23,
+ 0x6A6C, 0x68A5, 0x66CE, 0x64E7, 0x62F1, 0x60EB, 0x5ED6, 0x5CB3,
+ 0x5A81, 0x5842, 0x55F4, 0x539A, 0x5133, 0x4EBF, 0x4C3F, 0x49B3,
+ 0x471C, 0x447A, 0x41CD, 0x3F16, 0x3C56, 0x398C, 0x36B9, 0x33DE,
+ 0x30FB, 0x2E10, 0x2B1E, 0x2826, 0x2527, 0x2223, 0x1F19, 0x1C0B,
+ 0x18F8, 0x15E1, 0x12C7, 0x0FAB, 0x0C8B, 0x096A, 0x0647, 0x0324,
+ 0x0000, 0xFCDC, 0xF9B9, 0xF696, 0xF375, 0xF055, 0xED39, 0xEA1F,
+ 0xE708, 0xE3F5, 0xE0E7, 0xDDDD, 0xDAD9, 0xD7DA, 0xD4E2, 0xD1F0,
+ 0xCF05, 0xCC22, 0xC947, 0xC674, 0xC3AA, 0xC0EA, 0xBE33, 0xBB86,
+ 0xB8E4, 0xB64D, 0xB3C1, 0xB141, 0xAECD, 0xAC66, 0xAA0C, 0xA7BE,
+ 0xA57F, 0xA34D, 0xA12A, 0x9F15, 0x9D0F, 0x9B19, 0x9932, 0x975B,
+ 0x9594, 0x93DD, 0x9237, 0x90A2, 0x8F1F, 0x8DAC, 0x8C4B, 0x8AFD,
+ 0x89C0, 0x8895, 0x877D, 0x8677, 0x8584, 0x84A4, 0x83D7, 0x831E,
+ 0x8277, 0x81E4, 0x8164, 0x80F8, 0x809F, 0x805A, 0x8029, 0x800B,
+ 0x8001, 0x800B, 0x8029, 0x805A, 0x809F, 0x80F8, 0x8164, 0x81E4,
+ 0x8277, 0x831E, 0x83D7, 0x84A4, 0x8584, 0x8677, 0x877D, 0x8895,
+ 0x89C0, 0x8AFD, 0x8C4B, 0x8DAC, 0x8F1F, 0x90A2, 0x9237, 0x93DD,
+ 0x9594, 0x975B, 0x9932, 0x9B19, 0x9D0F, 0x9F15, 0xA12A, 0xA34D,
+ 0xA57F, 0xA7BE, 0xAA0C, 0xAC66, 0xAECD, 0xB141, 0xB3C1, 0xB64D,
+ 0xB8E4, 0xBB86, 0xBE33, 0xC0EA, 0xC3AA, 0xC674, 0xC947, 0xCC22,
+ 0xCF05, 0xD1F0, 0xD4E2, 0xD7DA, 0xDAD9, 0xDDDD, 0xE0E7, 0xE3F5,
+ 0xE708, 0xEA1F, 0xED39, 0xF055, 0xF375, 0xF696, 0xF9B9, 0xFCDC
+};
+
+static const Uint16Provider kLoLFireballCoordsDOSCDProvider = { ARRAYSIZE(kLoLFireballCoordsDOSCD), kLoLFireballCoordsDOSCD };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_cd_english.h b/devtools/create_kyradat/resources/lol_dos_cd_english.h
new file mode 100644
index 0000000000..9d636cf714
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_cd_english.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSCDEnglish[9] = {
+ { 0x0001, "Michael", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Timothy", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Baccata", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Lora", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Conrad", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Paulson", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Dawn", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Kieran", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Ak'shel", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSCDEnglishProvider = { ARRAYSIZE(kLoLCharacterDefsDOSCDEnglish), kLoLCharacterDefsDOSCDEnglish };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_cd_french.h b/devtools/create_kyradat/resources/lol_dos_cd_french.h
new file mode 100644
index 0000000000..ea91647eb9
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_cd_french.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSCDFrench[9] = {
+ { 0x0001, "Michael", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Timothy", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Baccata", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Lora", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Conrad", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Paulson", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Dawn", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Kieran", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Ak'shel", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSCDFrenchProvider = { ARRAYSIZE(kLoLCharacterDefsDOSCDFrench), kLoLCharacterDefsDOSCDFrench };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_cd_german.h b/devtools/create_kyradat/resources/lol_dos_cd_german.h
new file mode 100644
index 0000000000..9682217857
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_cd_german.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSCDGerman[9] = {
+ { 0x0001, "Michael", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Timothy", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Baccata", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Lora", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Conrad", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Paulson", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Dawn", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Kieran", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Ak'shel", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSCDGermanProvider = { ARRAYSIZE(kLoLCharacterDefsDOSCDGerman), kLoLCharacterDefsDOSCDGerman };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_cd_italian.h b/devtools/create_kyradat/resources/lol_dos_cd_italian.h
new file mode 100644
index 0000000000..4a9734e40b
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_cd_italian.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSCDItalian[9] = {
+ { 0x0001, "Michael", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Timothy", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Baccata", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Lora", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Conrad", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Paulson", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Dawn", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Kieran", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Ak'shel", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSCDItalianProvider = { ARRAYSIZE(kLoLCharacterDefsDOSCDItalian), kLoLCharacterDefsDOSCDItalian };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_cd_russian.h b/devtools/create_kyradat/resources/lol_dos_cd_russian.h
new file mode 100644
index 0000000000..37ab84eacf
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_cd_russian.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSCDRussian[9] = {
+ { 0x0001, "Michael", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Timothy", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Baccata", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Lora", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Conrad", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Paulson", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Dawn", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Kieran", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Ak'shel", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSCDRussianProvider = { ARRAYSIZE(kLoLCharacterDefsDOSCDRussian), kLoLCharacterDefsDOSCDRussian };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_demo.h b/devtools/create_kyradat/resources/lol_dos_demo.h
new file mode 100644
index 0000000000..7c5a08fbc9
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_demo.h
@@ -0,0 +1,54 @@
+static const char *const kLoLSeqplayPakFilesDOSDemo[1] = {
+ "GENERAL.PAK"
+};
+
+static const StringListProvider kLoLSeqplayPakFilesDOSDemoProvider = { ARRAYSIZE(kLoLSeqplayPakFilesDOSDemo), kLoLSeqplayPakFilesDOSDemo };
+
+static const HoFSequence kLoLSeqplaySeqDataDOSDemoSeq[11] = {
+ { 0x0002, "", "scene1.cps", 3, 1, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x00C8, 0, 0, 0x003C },
+ { 0x0004, "", "", 3, 0, 0x0000, 0x0001, 0x0000, 0x0001, 0x00C8, 0, 0, 0x0000 },
+ { 0x0003, "scene2.wsa", "scene2.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0053, 0x0003, 0, 0, 0x001E },
+ { 0x0004, "", "", 4, 0, 0x0002, 0x0003, 0x0000, 0x0001, 0x00C8, 0, 0, 0x0000 },
+ { 0x0003, "scene3.wsa", "scene3.cps", 5, 0, 0xFFFF, 0xFFFF, 0x0000, 0x006B, 0x0005, 0, 0, 0x001E },
+ { 0x0004, "", "", 4, 0, 0x0004, 0x0005, 0x0000, 0x0001, 0x00C8, 0, 0, 0x0000 },
+ { 0x0003, "scene4.wsa", "scene4.cps", 4, 0, 0xFFFF, 0xFFFF, 0x0000, 0x0044, 0x000A, 0, 0, 0x0028 },
+ { 0x0004, "", "", 4, 0, 0x0006, 0x0007, 0x0000, 0x0001, 0x00C8, 0, 0, 0x0000 },
+ { 0x0003, "scene5.wsa", "scene5.cps", 4, 1, 0xFFFF, 0xFFFF, 0x0000, 0x0031, 0x0008, 0, 0, 0x000A },
+ { 0x0004, "", "", 3, 1, 0x0008, 0x0009, 0x0000, 0x0001, 0x00C8, 0, 0, 0x0000 },
+ { 0x0002, "", "scene1.cps", 3, 1, 0xFFFF, 0xFFFF, 0x0000, 0x0001, 0x0014, 0, 0, 0x012C }
+};
+
+
+static const HoFSequenceProvider kLoLSeqplaySeqDataDOSDemoProvider = { ARRAYSIZE(kLoLSeqplaySeqDataDOSDemoSeq), kLoLSeqplaySeqDataDOSDemoSeq, 0, NULL };
+
+static const char *const kLoLSeqplaySfxFilesDOSDemo[18] = {
+ "tclap1",
+ "tclap2",
+ "beeorc2",
+ "tclap4",
+ "tclap5",
+ "scotia9",
+ "bolt",
+ "bolt2",
+ "wokout1",
+ "cdamage1",
+ "wokmisc1",
+ "mwhoa1",
+ "mstdoom2",
+ "loragasp",
+ "ratwok",
+ "swing1",
+ "bludyell",
+ ""
+};
+
+static const StringListProvider kLoLSeqplaySfxFilesDOSDemoProvider = { ARRAYSIZE(kLoLSeqplaySfxFilesDOSDemo), kLoLSeqplaySfxFilesDOSDemo };
+
+static const char *const kLoLSeqplayIntroTracksDOSDemo[3] = {
+ "loredemo",
+ "loredemo",
+ ""
+};
+
+static const StringListProvider kLoLSeqplayIntroTracksDOSDemoProvider = { ARRAYSIZE(kLoLSeqplayIntroTracksDOSDemo), kLoLSeqplayIntroTracksDOSDemo };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_demo_english.h b/devtools/create_kyradat/resources/lol_dos_demo_english.h
new file mode 100644
index 0000000000..df80fd10e2
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_demo_english.h
@@ -0,0 +1,15 @@
+static const char *const kLoLSeqplayStringsDOSDemoEnglish[10] = {
+ "The Lands have become perilous",
+ "to travellers",
+ "King Richard holds the strength",
+ "to defeat Sorceress Scotia!",
+ "You have the ability to restore",
+ "hope to the People",
+ "Cruel and hideous monsters",
+ "will hinder your quest...",
+ "Will you accept the challenge ?",
+ "Scotia awaits..."
+};
+
+static const StringListProvider kLoLSeqplayStringsDOSDemoEnglishProvider = { ARRAYSIZE(kLoLSeqplayStringsDOSDemoEnglish), kLoLSeqplayStringsDOSDemoEnglish };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_english.h b/devtools/create_kyradat/resources/lol_dos_english.h
new file mode 100644
index 0000000000..f6b579545b
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_english.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSEnglish[9] = {
+ { 0x0001, "Michael", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Timothy", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Baccata", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Lora", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Conrad", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Paulson", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Dawn", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Kieran", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Ak'shel", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSEnglishProvider = { ARRAYSIZE(kLoLCharacterDefsDOSEnglish), kLoLCharacterDefsDOSEnglish };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_french.h b/devtools/create_kyradat/resources/lol_dos_french.h
new file mode 100644
index 0000000000..2e9180655a
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_french.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSFrench[9] = {
+ { 0x0001, "Michael", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Timothy", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Baccata", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Lora", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Conrad", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Paulson", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Dawn", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Kieran", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Ak'shel", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSFrenchProvider = { ARRAYSIZE(kLoLCharacterDefsDOSFrench), kLoLCharacterDefsDOSFrench };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_german.h b/devtools/create_kyradat/resources/lol_dos_german.h
new file mode 100644
index 0000000000..886f180d1d
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_german.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSGerman[9] = {
+ { 0x0001, "Michael", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Timothy", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Baccata", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Lora", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Conrad", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Paulson", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Dawn", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Kieran", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "Ak'shel", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSGermanProvider = { ARRAYSIZE(kLoLCharacterDefsDOSGerman), kLoLCharacterDefsDOSGerman };
+
diff --git a/devtools/create_kyradat/resources/lol_dos_russian.h b/devtools/create_kyradat/resources/lol_dos_russian.h
new file mode 100644
index 0000000000..ba27180755
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_dos_russian.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsDOSRussian[9] = {
+ { 0x0001, "\x8C\xA0\xA9\xAA\xAB", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x92\xA8\xAC\xAE\xE2\xA8", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x81\xA0\xAA\xAA\xA0\xE2\xA0", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x8B\xAE\xE0\xA0", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x8A\xAE\xAD\xE0\xA0\xA4", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x8F\xA0\xE3\xAB\xE1\xAE\xAD", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x84\xA8\xA0\xAD\xA0", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x8A\xA8\xE0\xA0\xAD", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x80\xAA\xE8\xA5\xAB", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsDOSRussianProvider = { ARRAYSIZE(kLoLCharacterDefsDOSRussian), kLoLCharacterDefsDOSRussian };
+
diff --git a/devtools/create_kyradat/resources/lol_fmtowns.h b/devtools/create_kyradat/resources/lol_fmtowns.h
new file mode 100644
index 0000000000..8c9fabf128
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_fmtowns.h
@@ -0,0 +1,1600 @@
+static const char *const kLoLIngamePakFilesFMTowns[11] = {
+ "VOC.PAK",
+ "GENERAL.PAK",
+ "CHAPTER1.PAK",
+ "CHAPTER2.PAK",
+ "CHAPTER3.PAK",
+ "CHAPTER4.PAK",
+ "CHAPTER5.PAK",
+ "CHAPTER6.PAK",
+ "CHAPTER7.PAK",
+ "CHAPTER8.PAK",
+ "TMUS.PAK"
+};
+
+static const StringListProvider kLoLIngamePakFilesFMTownsProvider = { ARRAYSIZE(kLoLIngamePakFilesFMTowns), kLoLIngamePakFilesFMTowns };
+
+static const char *const kLoLIngameSfxFilesFMTowns[230] = {
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "DOORMTOP",
+ "DOORMTCL",
+ "PMETLHI",
+ "SWING6",
+ "MDAMAGE2",
+ "LEVERDN",
+ "LEVERUP",
+ "MTLDRSLM",
+ "DOORWDOP",
+ "DOORWDCL",
+ "KEYOPEN",
+ "KEYLOCK",
+ "PORTCUL",
+ "PORTCULD",
+ "LOKPICK",
+ "OCEAN2",
+ "NUNCHUK",
+ "SWING",
+ "SHWING1",
+ "SWING6",
+ "THROW",
+ "CROSSBOW",
+ "HEAL1",
+ "FIRESPL1",
+ "PRESSIN",
+ "PRESSOUT",
+ "PLATEON",
+ "PLATEOFF",
+ "DORWDSLM",
+ "LITENIN1",
+ "ICESPEL2",
+ "SPELL4B",
+ "SHIELD1",
+ "3BOLTC",
+ "2BOLTC",
+ "1BOLTC",
+ "DAWNSPL1",
+ "HEALKING",
+ "SPELL7",
+ "SWING1",
+ "EXPLODE",
+ "CROWCAW",
+ "MORPH2",
+ "CHEST",
+ "MONEY",
+ "SPELBK2",
+ "AUTOMAP",
+ "MINECRT3",
+ "CREAK1",
+ "TURNPAG2",
+ "POLGULP1",
+ "GOOEY1",
+ "BUCKBELL",
+ "KEEPXIT2",
+ "VSCREAM4",
+ "EMPTY",
+ "GOOEY1",
+ "GOOEY2",
+ "RIPPOD4",
+ "PODSKEL1",
+ "INVISO",
+ "OPENBOX2",
+ "ACCEPT2",
+ "BOW2",
+ "HACHUCKM",
+ "FOUNDRY2",
+ "FOUNDRY2",
+ "FOUNDRY4",
+ "FOUNDRY6",
+ "CLEANGL1",
+ "CLEANGL2",
+ "GLOWY1",
+ "DORSTNOP",
+ "DORSTNCL",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "ADAMAGE1",
+ "HDAMAGE1",
+ "TDAMAGE1",
+ "BDAMAGE1",
+ "LDAMAGE1",
+ "TDAMAGE2",
+ "CDAMAGE1",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "GOOD1",
+ "GOOD2",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "LITENIN1",
+ "COMPASS2",
+ "KINGDOR1",
+ "GLASBRK2",
+ "FLUTTER3",
+ "NUNCHUK",
+ "WALLFALL",
+ "WALLHIT",
+ "MWHOA1",
+ "LADDER",
+ "WHITTL3",
+ "ROWBOAT1",
+ "HORSEY2",
+ "SNORT",
+ "PUMPDOR1",
+ "PUMPSM2",
+ "PUMPSM3",
+ "SPARK1",
+ "BEZEL",
+ "SWARM",
+ "CHEST",
+ "WRIT1",
+ "CAUSFOG",
+ "VAELAN2",
+ "ROARSPL1",
+ "RATTLER",
+ "WINK1",
+ "HANDFATE",
+ "QUAKE1",
+ "WIZLAMP1",
+ "SAP2",
+ "MSTDOOM1",
+ "GARDIAN1",
+ "VORTEX1",
+ "LION1",
+ "STEAM",
+ "SQUAWCK",
+ "SLIDEMUG",
+ "SPARKHIT",
+ "SPARKHIT2",
+ "SPARKHIT3",
+ "ICEFORM",
+ "ICEXPLOD",
+ "EXPLODE2",
+ "EXPLODE3",
+ "BOLTQUK2",
+ "BOLT2",
+ "BOLT3",
+ "SNKBITE",
+ "HANDGLOW",
+ "MSTDOOM2",
+ "MSTDOOM3",
+ "GARDIAN2",
+ "PLUSPOWR",
+ "MINSPOWR",
+ "BLUDCURL",
+ "LORAGASP",
+ "POURH2O",
+ "AWHOA2",
+ "HWHOA1",
+ "CWHOA1",
+ "AFALL2",
+ "EMPTY",
+ "CFALL2",
+ "MFALL2",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "WRIT2",
+ "WRIT3",
+ "WRIT4",
+ "WRIT5",
+ "WRIT6",
+ "RUCKUS1",
+ "RUCKUS3",
+ "CHANT1",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "CHANT2",
+ "CHANT3",
+ ""
+};
+
+static const StringListProvider kLoLIngameSfxFilesFMTownsProvider = { ARRAYSIZE(kLoLIngameSfxFilesFMTowns), kLoLIngameSfxFilesFMTowns };
+
+static const byte kLoLIngameSfxIndexFMTowns[1000] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x34, 0x00, 0x6F, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x7D, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00,
+ 0x7F, 0x00, 0x00, 0x00, 0x36, 0x00, 0x73, 0x00,
+ 0x35, 0x00, 0x9C, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0x80, 0x00, 0x73, 0x00, 0x81, 0x00, 0x73, 0x00,
+ 0x82, 0x00, 0x73, 0x00, 0x83, 0x00, 0x73, 0x00,
+ 0x84, 0x00, 0x73, 0x00, 0x85, 0x00, 0x73, 0x00,
+ 0x86, 0x00, 0x73, 0x00, 0xD7, 0x00, 0x76, 0x00,
+ 0x87, 0x00, 0x65, 0x00, 0x38, 0x00, 0x5F, 0x00,
+ 0x37, 0x00, 0x5F, 0x00, 0x32, 0x00, 0x0A, 0x00,
+ 0x33, 0x00, 0x64, 0x00, 0x39, 0x00, 0x65, 0x00,
+ 0x3A, 0x00, 0x0A, 0x00, 0x3B, 0x00, 0x14, 0x00,
+ 0x4E, 0x00, 0x65, 0x00, 0x7A, 0x00, 0x64, 0x00,
+ 0x7B, 0x00, 0x64, 0x00, 0x88, 0x00, 0x65, 0x00,
+ 0x3C, 0x00, 0x65, 0x00, 0x3D, 0x00, 0x64, 0x00,
+ 0x89, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x14, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
+ 0x40, 0x00, 0x65, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0xC9, 0x00, 0x72, 0x00, 0xCA, 0x00, 0x72, 0x00,
+ 0xCB, 0x00, 0x72, 0x00, 0xCC, 0x00, 0x74, 0x00,
+ 0xCD, 0x00, 0x74, 0x00, 0xCE, 0x00, 0x74, 0x00,
+ 0xCF, 0x00, 0x74, 0x00, 0xD0, 0x00, 0x73, 0x00,
+ 0xD1, 0x00, 0x73, 0x00, 0xD2, 0x00, 0x73, 0x00,
+ 0xD3, 0x00, 0x73, 0x00, 0xD4, 0x00, 0x72, 0x00,
+ 0xD5, 0x00, 0x72, 0x00, 0xD6, 0x00, 0x72, 0x00,
+ 0x42, 0x00, 0x6F, 0x00, 0x43, 0x00, 0x6F, 0x00,
+ 0x44, 0x00, 0x6F, 0x00, 0x45, 0x00, 0x6F, 0x00,
+ 0x46, 0x00, 0x6F, 0x00, 0x47, 0x00, 0x6F, 0x00,
+ 0x48, 0x00, 0x77, 0x00, 0x49, 0x00, 0x89, 0xFF,
+ 0x4F, 0x00, 0x89, 0xFF, 0x50, 0x00, 0x89, 0xFF,
+ 0xA0, 0x00, 0x8A, 0xFF, 0xA1, 0x00, 0x89, 0xFF,
+ 0xA2, 0x00, 0x89, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0xA3, 0x00, 0x89, 0xFF, 0xA4, 0x00, 0x89, 0xFF,
+ 0x4A, 0x00, 0x13, 0x00, 0x4B, 0x00, 0x13, 0x00,
+ 0x4C, 0x00, 0x32, 0x00, 0x4D, 0x00, 0x32, 0x00,
+ 0x5F, 0x00, 0x0A, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x52, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x56, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x58, 0x00, 0x77, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x6A, 0x00,
+ 0x8A, 0x00, 0x6F, 0x00, 0x8B, 0x00, 0x6F, 0x00,
+ 0x8C, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x00, 0x00,
+ 0x5A, 0x00, 0x77, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x6F, 0x00,
+ 0x61, 0x00, 0x76, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x62, 0x00, 0x76, 0x00, 0x63, 0x00, 0x3C, 0x00,
+ 0x64, 0x00, 0x6D, 0x00, 0x65, 0x00, 0x00, 0x00,
+ 0x66, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00,
+ 0x6A, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x88, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x74, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00,
+ 0x79, 0x00, 0x77, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x77, 0x00,
+ 0x93, 0x00, 0x1E, 0x00, 0x94, 0x00, 0x89, 0xFF,
+ 0x95, 0x00, 0x77, 0x00, 0x96, 0x00, 0x76, 0x00,
+ 0x97, 0x00, 0x72, 0x00, 0x98, 0x00, 0x00, 0x00,
+ 0x99, 0x00, 0x50, 0x00, 0x9A, 0x00, 0x78, 0x00,
+ 0x9B, 0x00, 0x64, 0x00, 0x9C, 0x00, 0x5A, 0x00,
+ 0x9D, 0x00, 0x64, 0x00, 0x9E, 0x00, 0x65, 0x00,
+ 0x9F, 0x00, 0x66, 0x00, 0xA5, 0x00, 0x89, 0xFF,
+ 0xA6, 0x00, 0x89, 0xFF, 0xA7, 0x00, 0x77, 0x00,
+ 0xA8, 0x00, 0x76, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xA9, 0x00, 0x77, 0x00, 0xAA, 0x00, 0x77, 0x00,
+ 0xAB, 0x00, 0x77, 0x00, 0xAC, 0x00, 0x77, 0x00,
+ 0xAD, 0x00, 0x77, 0x00, 0xAE, 0x00, 0x77, 0x00,
+ 0xAF, 0x00, 0x76, 0x00, 0xB0, 0x00, 0x77, 0x00,
+ 0xB1, 0x00, 0x64, 0x00, 0xB2, 0x00, 0x6F, 0x00,
+ 0xB3, 0x00, 0x6E, 0x00, 0xB4, 0x00, 0x6E, 0x00,
+ 0xB5, 0x00, 0x77, 0x00, 0xB6, 0x00, 0x77, 0x00,
+ 0xB7, 0x00, 0x77, 0x00, 0xB8, 0x00, 0x76, 0x00,
+ 0xB9, 0x00, 0x77, 0x00, 0xBA, 0x00, 0x77, 0x00,
+ 0xBB, 0x00, 0x77, 0x00, 0xBC, 0x00, 0x77, 0x00,
+ 0xBD, 0x00, 0x77, 0x00, 0xBE, 0x00, 0x77, 0x00,
+ 0xBF, 0x00, 0x77, 0x00, 0xC0, 0x00, 0x76, 0x00,
+ 0xC1, 0x00, 0x77, 0x00, 0xC2, 0x00, 0x77, 0x00,
+ 0xC3, 0x00, 0x77, 0x00, 0xC4, 0x00, 0x6E, 0x00,
+ 0xC5, 0x00, 0x6E, 0x00, 0xC6, 0x00, 0x7D, 0x00,
+ 0xC7, 0x00, 0x78, 0x00, 0xC8, 0x00, 0x78, 0x00,
+ 0xD8, 0x00, 0x77, 0x00, 0xD9, 0x00, 0x77, 0x00,
+ 0xDA, 0x00, 0x77, 0x00, 0xDB, 0x00, 0x77, 0x00,
+ 0xDC, 0x00, 0x77, 0x00, 0xDD, 0x00, 0x78, 0x00,
+ 0xDE, 0x00, 0x78, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xE3, 0x00, 0x77, 0x00, 0xE4, 0x00, 0x77, 0x00,
+ 0xE0, 0x00, 0x1E, 0x00, 0xDF, 0x00, 0x77, 0x00,
+ 0xE1, 0x00, 0x05, 0x00, 0xE2, 0x00, 0x0A, 0x00,
+ 0x00, 0x00, 0x50, 0x00, 0x01, 0x00, 0x50, 0x00,
+ 0x02, 0x00, 0x50, 0x00, 0x03, 0x00, 0x50, 0x00,
+ 0x04, 0x00, 0x50, 0x00, 0x05, 0x00, 0x50, 0x00,
+ 0x06, 0x00, 0x50, 0x00, 0x07, 0x00, 0x50, 0x00,
+ 0x08, 0x00, 0x50, 0x00, 0x09, 0x00, 0x50, 0x00,
+ 0x0A, 0x00, 0x50, 0x00, 0x0B, 0x00, 0x50, 0x00,
+ 0x0C, 0x00, 0x50, 0x00, 0x0D, 0x00, 0x50, 0x00,
+ 0x0E, 0x00, 0x50, 0x00, 0x0F, 0x00, 0x50, 0x00,
+ 0x10, 0x00, 0x50, 0x00, 0x11, 0x00, 0x5A, 0x00,
+ 0x12, 0x00, 0x5A, 0x00, 0x13, 0x00, 0x5A, 0x00,
+ 0x14, 0x00, 0x5A, 0x00, 0x15, 0x00, 0x5A, 0x00,
+ 0x16, 0x00, 0x5A, 0x00, 0x17, 0x00, 0x5A, 0x00,
+ 0x18, 0x00, 0x5A, 0x00, 0x19, 0x00, 0x5A, 0x00,
+ 0x1A, 0x00, 0x5A, 0x00, 0x1B, 0x00, 0x5A, 0x00,
+ 0x1C, 0x00, 0x5A, 0x00, 0x1D, 0x00, 0x5A, 0x00,
+ 0x1E, 0x00, 0x5A, 0x00, 0x1F, 0x00, 0x5A, 0x00,
+ 0x20, 0x00, 0x5A, 0x00, 0x21, 0x00, 0x73, 0x00,
+ 0x22, 0x00, 0x73, 0x00, 0x23, 0x00, 0x73, 0x00,
+ 0x24, 0x00, 0x73, 0x00, 0x25, 0x00, 0x73, 0x00,
+ 0x26, 0x00, 0x73, 0x00, 0x27, 0x00, 0x73, 0x00,
+ 0x28, 0x00, 0x73, 0x00, 0x29, 0x00, 0x73, 0x00,
+ 0x2A, 0x00, 0x73, 0x00, 0x2B, 0x00, 0x50, 0x00,
+ 0x2C, 0x00, 0x5A, 0x00, 0x2D, 0x00, 0x5A, 0x00,
+ 0x2E, 0x00, 0x5A, 0x00, 0x2F, 0x00, 0x5A, 0x00,
+ 0x30, 0x00, 0x5A, 0x00, 0x31, 0x00, 0x5A, 0x00
+};
+
+static const ByteProvider kLoLIngameSfxIndexFMTownsProvider = { ARRAYSIZE(kLoLIngameSfxIndexFMTowns), kLoLIngameSfxIndexFMTowns };
+
+static const SpellProperty kLoLSpellPropertiesFMTowns[10] = {
+ { 16436, { 5, 10, 15, 25 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0100 },
+ { 16437, { 5, 10, 25, 60 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0001 },
+ { 16438, { 8, 15, 30, 80 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0102 },
+ { 16440, { 20, 35, 65, 100 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0103 },
+ { 16441, { 30, 60, 90, 120 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0104 },
+ { 16442, { 30, 60, 90, 150 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0105 },
+ { 16439, { 25, 30, 50, 100 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0106 },
+ { 16443, { 3, 6, 12, 24 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0107 },
+ { 16975, { 15, 15, 15, 15 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0108 },
+ { 16975, { 15, 15, 15, 15 }, 15, 0, { 0, 0, 0, 0 }, 0, 0, 0x0108 }
+};
+
+static const SpellPropertyProvider kLoLSpellPropertiesFMTownsProvider = { ARRAYSIZE(kLoLSpellPropertiesFMTowns), kLoLSpellPropertiesFMTowns };
+
+static const byte kLoLGameShapeMapFMTowns[276] = {
+ 0x15, 0x54, 0x05, 0x35, 0x09, 0x36, 0x00, 0x34,
+ 0x00, 0x34, 0x00, 0x34, 0x00, 0x3A, 0x26, 0x3B,
+ 0x05, 0x35, 0x07, 0x37, 0x18, 0x3E, 0x0D, 0x3C,
+ 0x06, 0x40, 0x06, 0x3D, 0x01, 0x54, 0x01, 0x54,
+ 0x0A, 0x54, 0x0A, 0x54, 0x0A, 0x54, 0x04, 0x54,
+ 0x04, 0x54, 0x2D, 0x54, 0x2D, 0x54, 0x0B, 0x39,
+ 0x24, 0x54, 0x03, 0x38, 0x00, 0x3A, 0x1E, 0x3C,
+ 0x1E, 0x3C, 0x1B, 0x54, 0x14, 0x54, 0x29, 0x54,
+ 0x02, 0x54, 0x0C, 0x54, 0x22, 0x54, 0x21, 0x3F,
+ 0x0D, 0x3C, 0x25, 0x54, 0x1A, 0x3F, 0x04, 0x54,
+ 0x30, 0x54, 0x31, 0x54, 0x32, 0x54, 0x32, 0x54,
+ 0x00, 0x34, 0x00, 0x34, 0x00, 0x34, 0x00, 0x34,
+ 0x17, 0x54, 0x17, 0x54, 0x0E, 0x54, 0x0E, 0x54,
+ 0x0E, 0x54, 0x26, 0x3B, 0x2C, 0x54, 0x21, 0x3F,
+ 0x07, 0x37, 0x27, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x22, 0x54, 0x22, 0x54,
+ 0x16, 0x54, 0x2D, 0x54, 0x3B, 0x54, 0x3B, 0x54,
+ 0x3A, 0x54, 0x17, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x17, 0x54, 0x0A, 0x54, 0x0A, 0x54, 0x0A, 0x54,
+ 0x1F, 0x54, 0x17, 0x54, 0x27, 0x54, 0x1B, 0x54,
+ 0x1E, 0x3C, 0x2A, 0x54, 0x2F, 0x54, 0x2F, 0x54,
+ 0x2F, 0x54, 0x2F, 0x54, 0x2F, 0x54, 0x2F, 0x54,
+ 0x2C, 0x54, 0x2C, 0x54, 0x2C, 0x54, 0x2C, 0x54,
+ 0x34, 0x54, 0x0F, 0x54, 0x35, 0x41, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x2B, 0x54,
+ 0x1D, 0x54, 0x1D, 0x54, 0x28, 0x54, 0x28, 0x54,
+ 0x28, 0x54, 0x28, 0x54, 0x01, 0x54, 0x14, 0x54,
+ 0x14, 0x54, 0x14, 0x54, 0x14, 0x54, 0x1B, 0x54,
+ 0x27, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x36, 0x54, 0x37, 0x54, 0x38, 0x54,
+ 0x39, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x27, 0x54, 0x2E, 0x54, 0x2E, 0x54,
+ 0x2E, 0x54, 0x2E, 0x54, 0x17, 0x54, 0x01, 0x54,
+ 0x1C, 0x54, 0x1C, 0x54
+};
+
+static const ByteProvider kLoLGameShapeMapFMTownsProvider = { ARRAYSIZE(kLoLGameShapeMapFMTowns), kLoLGameShapeMapFMTowns };
+
+static const byte kLoLSceneItemOffsFMTowns[8] = {
+ 0x00, 0xFE, 0x01, 0xFF, 0x02, 0x00, 0x01, 0xFF
+};
+
+static const ByteProvider kLoLSceneItemOffsFMTownsProvider = { ARRAYSIZE(kLoLSceneItemOffsFMTowns), kLoLSceneItemOffsFMTowns };
+
+static const byte kLoLCharInvIndexFMTowns[5] = {
+ 0x00, 0x00, 0x03, 0x01, 0x02
+};
+
+static const ByteProvider kLoLCharInvIndexFMTownsProvider = { ARRAYSIZE(kLoLCharInvIndexFMTowns), kLoLCharInvIndexFMTowns };
+
+static const byte kLoLCharInvDefsFMTowns[88] = {
+ 0x05, 0x34, 0x50, 0x34, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x05, 0x04, 0x05, 0x1C, 0x50, 0x04, 0x50, 0x1C,
+ 0x05, 0x5D, 0x0F, 0x4E, 0x50, 0x4E, 0x05, 0x19,
+ 0x50, 0x19, 0x05, 0x49, 0x50, 0x49, 0x05, 0x01,
+ 0x05, 0x31, 0x50, 0x01, 0x50, 0x31, 0x05, 0x61,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x34, 0x50, 0x34,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x04, 0x05, 0x1C,
+ 0x50, 0x04, 0x50, 0x1C, 0x05, 0x5D, 0x0F, 0x4E,
+ 0x50, 0x4E, 0x05, 0x34, 0x50, 0x34, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x05, 0x04, 0x05, 0x1C, 0x50, 0x04,
+ 0x50, 0x1C, 0xFF, 0xFF, 0x0F, 0x4E, 0x50, 0x4E
+};
+
+static const ByteProvider kLoLCharInvDefsFMTownsProvider = { ARRAYSIZE(kLoLCharInvDefsFMTowns), kLoLCharInvDefsFMTowns };
+
+static const uint16 kLoLCharDefsManFMTowns[9] = {
+ 0x0100, 0x0100, 0x0100, 0x0032, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsManFMTownsProvider = { ARRAYSIZE(kLoLCharDefsManFMTowns), kLoLCharDefsManFMTowns };
+
+static const uint16 kLoLCharDefsWomanFMTowns[9] = {
+ 0x0100, 0x0100, 0x0100, 0x0032, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsWomanFMTownsProvider = { ARRAYSIZE(kLoLCharDefsWomanFMTowns), kLoLCharDefsWomanFMTowns };
+
+static const uint16 kLoLCharDefsKieranFMTowns[9] = {
+ 0x0180, 0x0080, 0x00C0, 0x0032, 0x0200, 0x00A6, 0x0100, 0x0140,
+ 0x0006
+};
+
+static const Uint16Provider kLoLCharDefsKieranFMTownsProvider = { ARRAYSIZE(kLoLCharDefsKieranFMTowns), kLoLCharDefsKieranFMTowns };
+
+static const uint16 kLoLCharDefsAkshelFMTowns[9] = {
+ 0x00C0, 0x00C0, 0x0140, 0x0032, 0x0100, 0x0180, 0x0180, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsAkshelFMTownsProvider = { ARRAYSIZE(kLoLCharDefsAkshelFMTowns), kLoLCharDefsAkshelFMTowns };
+
+static const uint32 kLoLExpRequirementsFMTowns[11] = {
+ 0x00000000, 0x000001F4, 0x000005DC, 0x00001388, 0x000061A8, 0x0000C350, 0x00013880, 0x0001D4C0,
+ 0x0002BF20, 0x00041EB0, 0x7FFFFFFF
+};
+
+static const Uint32Provider kLoLExpRequirementsFMTownsProvider = { ARRAYSIZE(kLoLExpRequirementsFMTowns), kLoLExpRequirementsFMTowns };
+
+static const uint16 kLoLMonsterModifiers1FMTowns[3] = {
+ 0x00C0, 0x0100, 0x0180
+};
+
+static const Uint16Provider kLoLMonsterModifiers1FMTownsProvider = { ARRAYSIZE(kLoLMonsterModifiers1FMTowns), kLoLMonsterModifiers1FMTowns };
+
+static const uint16 kLoLMonsterModifiers2FMTowns[3] = {
+ 0x0100, 0x0100, 0x00C0
+};
+
+static const Uint16Provider kLoLMonsterModifiers2FMTownsProvider = { ARRAYSIZE(kLoLMonsterModifiers2FMTowns), kLoLMonsterModifiers2FMTowns };
+
+static const uint16 kLoLMonsterModifiers3FMTowns[3] = {
+ 0x0140, 0x0100, 0x0080
+};
+
+static const Uint16Provider kLoLMonsterModifiers3FMTownsProvider = { ARRAYSIZE(kLoLMonsterModifiers3FMTowns), kLoLMonsterModifiers3FMTowns };
+
+static const byte kLoLMonsterShiftOffsetsFMTowns[32] = {
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0xFF, 0x00, 0xFF,
+ 0x00, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFF, 0x00,
+ 0xFF, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0xFF, 0x00, 0x00
+};
+
+static const ByteProvider kLoLMonsterShiftOffsetsFMTownsProvider = { ARRAYSIZE(kLoLMonsterShiftOffsetsFMTowns), kLoLMonsterShiftOffsetsFMTowns };
+
+static const byte kLoLMonsterDirFlagsFMTowns[16] = {
+ 0x08, 0x14, 0x00, 0x04, 0x04, 0x08, 0x14, 0x00,
+ 0x00, 0x04, 0x08, 0x14, 0x14, 0x00, 0x04, 0x08
+};
+
+static const ByteProvider kLoLMonsterDirFlagsFMTownsProvider = { ARRAYSIZE(kLoLMonsterDirFlagsFMTowns), kLoLMonsterDirFlagsFMTowns };
+
+static const byte kLoLMonsterScaleYFMTowns[30] = {
+ 0x7C, 0x78, 0x74, 0x70, 0x6C, 0x68, 0x65, 0x62,
+ 0x5F, 0x5C, 0x59, 0x56, 0x53, 0x50, 0x4D, 0x4A,
+ 0x48, 0x46, 0x44, 0x43, 0x41, 0x40, 0x3E, 0x3D,
+ 0x3C, 0x3B, 0x3A, 0x39, 0x38, 0x38
+};
+
+static const ByteProvider kLoLMonsterScaleYFMTownsProvider = { ARRAYSIZE(kLoLMonsterScaleYFMTowns), kLoLMonsterScaleYFMTowns };
+
+static const byte kLoLMonsterScaleXFMTowns[29] = {
+ 0x98, 0x98, 0x90, 0x88, 0x80, 0x76, 0x6E, 0x68,
+ 0x62, 0x5C, 0x58, 0x54, 0x50, 0x4A, 0x44, 0x40,
+ 0x3C, 0x38, 0x36, 0x32, 0x30, 0x2C, 0x2A, 0x28,
+ 0x26, 0x24, 0x22, 0x20, 0x20
+};
+
+static const ByteProvider kLoLMonsterScaleXFMTownsProvider = { ARRAYSIZE(kLoLMonsterScaleXFMTowns), kLoLMonsterScaleXFMTowns };
+
+static const uint16 kLoLMonsterScaleWHFMTowns[65] = {
+ 0x0041, 0x0045, 0x0049, 0x004D, 0x0051, 0x0055, 0x0059, 0x005D,
+ 0x0062, 0x0066, 0x006A, 0x006E, 0x0072, 0x0076, 0x007A, 0x007E,
+ 0x0082, 0x0086, 0x008A, 0x008E, 0x0092, 0x0096, 0x009A, 0x009E,
+ 0x00A3, 0x00A7, 0x00AB, 0x00AF, 0x00B3, 0x00B7, 0x00BB, 0x00BF,
+ 0x00C3, 0x00C7, 0x00CB, 0x00CF, 0x00D3, 0x00D7, 0x00DB, 0x00DF,
+ 0x00E4, 0x00E8, 0x00EC, 0x00F0, 0x00F4, 0x00F8, 0x00FC, 0x0100,
+ 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0100
+};
+
+static const Uint16Provider kLoLMonsterScaleWHFMTownsProvider = { ARRAYSIZE(kLoLMonsterScaleWHFMTowns), kLoLMonsterScaleWHFMTowns };
+
+static const FlyingObjectShape kLoLFlyingObjectShpFMTowns[13] = {
+ { 0, 0, 1, 0x00, 0x40, },
+ { 2, 2, 3, 0x00, 0x00, },
+ { 4, 4, 4, 0x00, 0x00, },
+ { 5, 5, 5, 0x20, 0x00, },
+ { 6, 6, 6, 0x20, 0x00, },
+ { 7, 7, 7, 0x20, 0x00, },
+ { 9, 8, 15, 0x00, 0x00, },
+ { 11, 10, 12, 0x00, 0x00, },
+ { 12, 12, 12, 0x20, 0x00, },
+ { 14, 13, 15, 0x00, 0x00, },
+ { 16, 16, 16, 0x00, 0x00, },
+ { 17, 17, 17, 0x20, 0x00, },
+ { 18, 18, 18, 0x00, 0x00, }
+};
+
+static const FlyingObjectShapeProvider kLoLFlyingObjectShpFMTownsProvider = { ARRAYSIZE(kLoLFlyingObjectShpFMTowns), kLoLFlyingObjectShpFMTowns };
+
+static const uint16 kLoLInventoryDescFMTowns[11] = {
+ 0x417A, 0x417B, 0x417A, 0x417B, 0x417C, 0x417D, 0x417E, 0x417F,
+ 0x4180, 0x4181, 0x4181
+};
+
+static const Uint16Provider kLoLInventoryDescFMTownsProvider = { ARRAYSIZE(kLoLInventoryDescFMTowns), kLoLInventoryDescFMTowns };
+
+static const char *const kLoLLevelShpListFMTowns[12] = {
+ "KEEP.SHP",
+ "FOREST1.SHP",
+ "MANOR.SHP",
+ "CAVE1.SHP",
+ "SWAMP.SHP",
+ "URBISH.SHP",
+ "MINE1.SHP",
+ "TOWER1.SHP",
+ "YVEL1.SHP",
+ "CATWALK.SHP",
+ "RUIN.SHP",
+ "CIMMERIA.SHP"
+};
+
+static const StringListProvider kLoLLevelShpListFMTownsProvider = { ARRAYSIZE(kLoLLevelShpListFMTowns), kLoLLevelShpListFMTowns };
+
+static const char *const kLoLLevelDatListFMTowns[12] = {
+ "KEEP.DAT",
+ "FOREST1.DAT",
+ "MANOR.DAT",
+ "CAVE1.DAT",
+ "SWAMP.DAT",
+ "URBISH.DAT",
+ "MINE1.DAT",
+ "TOWER1.DAT",
+ "YVEL1.DAT",
+ "CATWALK.DAT",
+ "RUIN.DAT",
+ "CIMMERIA.DAT"
+};
+
+static const StringListProvider kLoLLevelDatListFMTownsProvider = { ARRAYSIZE(kLoLLevelDatListFMTowns), kLoLLevelDatListFMTowns };
+
+static const CompassDef kLoLCompassDefsFMTowns[32] = {
+ { 0, 3, -3, 0x00 },
+ { 1, 3, -3, 0x00 },
+ { 2, 3, -3, 0x00 },
+ { 3, 5, -3, 0x00 },
+ { 4, 5, -3, 0x00 },
+ { 5, 6, -3, 0x00 },
+ { 6, 6, -3, 0x00 },
+ { 7, 6, -3, 0x00 },
+ { 8, 6, -3, 0x00 },
+ { 7, 6, 4, 0x02 },
+ { 6, 6, 4, 0x02 },
+ { 5, 6, 4, 0x02 },
+ { 4, 5, 4, 0x02 },
+ { 3, 5, 4, 0x02 },
+ { 2, 3, 4, 0x02 },
+ { 1, 3, 4, 0x02 },
+ { 0, 3, 4, 0x02 },
+ { 1, 2, 4, 0x03 },
+ { 2, 2, 4, 0x03 },
+ { 3, 0, 4, 0x03 },
+ { 4, 0, 4, 0x03 },
+ { 5, -1, 4, 0x03 },
+ { 6, -1, 4, 0x03 },
+ { 7, -1, 4, 0x03 },
+ { 8, -1, -3, 0x01 },
+ { 7, -1, -3, 0x01 },
+ { 6, -1, -3, 0x01 },
+ { 5, -1, -3, 0x01 },
+ { 4, 0, -3, 0x01 },
+ { 3, 0, -3, 0x01 },
+ { 2, 2, -3, 0x01 },
+ { 1, 2, -3, 0x01 }
+};
+
+static const CompassDefProvider kLoLCompassDefsFMTownsProvider = { ARRAYSIZE(kLoLCompassDefsFMTowns), kLoLCompassDefsFMTowns };
+
+static const byte kLoLStashSetupFMTowns[12] = {
+ 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x00, 0x01, 0x01
+};
+
+static const ByteProvider kLoLStashSetupFMTownsProvider = { ARRAYSIZE(kLoLStashSetupFMTowns), kLoLStashSetupFMTowns };
+
+static const byte kLoLDscWallsFMTowns[36] = {
+ 0xFF, 0xFF, 0x02, 0x01, 0x02, 0x01, 0x02, 0xFF,
+ 0x02, 0x03, 0x02, 0x03, 0xFF, 0xFF, 0x02, 0x01,
+ 0x02, 0x01, 0x02, 0xFF, 0x02, 0x03, 0x02, 0x03,
+ 0x02, 0x01, 0x02, 0xFF, 0x02, 0x03, 0xFF, 0x01,
+ 0x02, 0xFF, 0xFF, 0x03
+};
+
+static const ByteProvider kLoLDscWallsFMTownsProvider = { ARRAYSIZE(kLoLDscWallsFMTowns), kLoLDscWallsFMTowns };
+
+static const byte kLoLDscShapeIndexFMTowns[36] = {
+ 0x03, 0x09, 0x03, 0x08, 0x03, 0x07, 0x03, 0x03,
+ 0x03, 0xF9, 0x03, 0xF8, 0x03, 0xF7, 0x02, 0x09,
+ 0x02, 0x06, 0x02, 0x02, 0x02, 0xFA, 0x02, 0xF7,
+ 0x01, 0x05, 0x01, 0x01, 0x01, 0xFB, 0x00, 0x04,
+ 0x00, 0x00, 0x00, 0xFC
+};
+
+static const ByteProvider kLoLDscShapeIndexFMTownsProvider = { ARRAYSIZE(kLoLDscShapeIndexFMTowns), kLoLDscShapeIndexFMTowns };
+
+static const byte kLoLDscOvlMapFMTowns[10] = {
+ 0x00, 0x01, 0x01, 0x01, 0x04, 0x05, 0x05, 0x05,
+ 0x05, 0x04
+};
+
+static const ByteProvider kLoLDscOvlMapFMTownsProvider = { ARRAYSIZE(kLoLDscOvlMapFMTowns), kLoLDscOvlMapFMTowns };
+
+static const uint16 kLoLDscScaleWidthDataFMTowns[36] = {
+ 0x0060, 0x0000, 0x0060, 0x00CE, 0x0060, 0x0055, 0x0060, 0x0000,
+ 0x0060, 0x0055, 0x0060, 0x00CE, 0x0060, 0x0000, 0x00A0, 0x00AE,
+ 0x00A0, 0x00AA, 0x00A0, 0x0000, 0x00A0, 0x00AA, 0x00A0, 0x00AE,
+ 0x0100, 0x0100, 0x0100, 0x0000, 0x0100, 0x0100, 0x0000, 0x0100,
+ 0x0100, 0x0000, 0x0000, 0x0100
+};
+
+static const Uint16Provider kLoLDscScaleWidthDataFMTownsProvider = { ARRAYSIZE(kLoLDscScaleWidthDataFMTowns), kLoLDscScaleWidthDataFMTowns };
+
+static const uint16 kLoLDscScaleHeightDataFMTowns[36] = {
+ 0x006A, 0x0000, 0x006A, 0x006A, 0x006A, 0x006A, 0x006A, 0x0000,
+ 0x006A, 0x006A, 0x006A, 0x006A, 0x006A, 0x0000, 0x00AA, 0x0056,
+ 0x00AA, 0x00AA, 0x00AA, 0x0000, 0x00AA, 0x00AA, 0x00AA, 0x0056,
+ 0x0100, 0x0100, 0x0100, 0x0000, 0x0100, 0x0100, 0x0000, 0x0100,
+ 0x0100, 0x0000, 0x0000, 0x0100
+};
+
+static const Uint16Provider kLoLDscScaleHeightDataFMTownsProvider = { ARRAYSIZE(kLoLDscScaleHeightDataFMTowns), kLoLDscScaleHeightDataFMTowns };
+
+static const uint16 kLoLDscXFMTowns[36] = {
+ 0xFFB0, 0xFFE0, 0xFFE0, 0x0010, 0x0010, 0x0040, 0x0040, 0x0000,
+ 0x0070, 0x0070, 0x00A0, 0x00A0, 0x00D0, 0x00D0, 0xFF86, 0x0000,
+ 0xFFE0, 0x0030, 0x0030, 0x0000, 0x0080, 0x0080, 0x00D0, 0x00B0,
+ 0xFF98, 0x0018, 0x0018, 0x0000, 0x0098, 0x0098, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x00B0, 0x00B0
+};
+
+static const Uint16Provider kLoLDscXFMTownsProvider = { ARRAYSIZE(kLoLDscXFMTowns), kLoLDscXFMTowns };
+
+static const byte kLoLBaseDscYFMTowns[36] = {
+ 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B,
+ 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x14, 0x1C,
+ 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x1C,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLBaseDscYFMTownsProvider = { ARRAYSIZE(kLoLBaseDscYFMTowns), kLoLBaseDscYFMTowns };
+
+static const byte kLoLDscTileIndexFMTowns[18] = {
+ 0x00, 0x06, 0x01, 0x05, 0x02, 0x04, 0x03, 0x07,
+ 0x0B, 0x08, 0x0A, 0x09, 0x0C, 0x0E, 0x0D, 0x0F,
+ 0x11, 0x10
+};
+
+static const ByteProvider kLoLDscTileIndexFMTownsProvider = { ARRAYSIZE(kLoLDscTileIndexFMTowns), kLoLDscTileIndexFMTowns };
+
+static const byte kLoLDscUnk2FMTowns[23] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12
+};
+
+static const ByteProvider kLoLDscUnk2FMTownsProvider = { ARRAYSIZE(kLoLDscUnk2FMTowns), kLoLDscUnk2FMTowns };
+
+static const byte kLoLDscDoorShapeIndexFMTowns[23] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01
+};
+
+static const ByteProvider kLoLDscDoorShapeIndexFMTownsProvider = { ARRAYSIZE(kLoLDscDoorShapeIndexFMTowns), kLoLDscDoorShapeIndexFMTowns };
+
+static const byte kLoLDscDimData1FMTowns[324] = {
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD8, 0xD7, 0xD8, 0xD8, 0x02, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xFE, 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0x03,
+ 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xFE, 0xD8, 0x08,
+ 0xD8, 0xD8, 0xD8, 0xFE, 0xF8, 0x06, 0xD8, 0xD8,
+ 0xFA, 0x03, 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xD8, 0xFA, 0xD7, 0x10, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xF2, 0xD8, 0x14, 0xD8, 0xD8,
+ 0xD8, 0xF0, 0x0E, 0x14, 0xD8, 0xED, 0x10, 0xD8,
+ 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8, 0xEC, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0x14, 0xD8, 0xED,
+ 0xD7, 0xD8, 0xD8, 0x13, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0xD8,
+ 0xD8, 0xD8, 0xD7, 0xD8, 0xD8, 0xD7, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0x06, 0xD8, 0xD8, 0xFA, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xFA, 0xD8, 0x10, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xF0, 0xD8, 0xD8,
+ 0xD8, 0xED, 0x10, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0xD8, 0xD8, 0xD7,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFD, 0xD8,
+ 0x13, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xED, 0xD8, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8
+};
+
+static const ByteProvider kLoLDscDimData1FMTownsProvider = { ARRAYSIZE(kLoLDscDimData1FMTowns), kLoLDscDimData1FMTowns };
+
+static const byte kLoLDscDimData2FMTowns[648] = {
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x02, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x04, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x16, 0x00, 0x00, 0x03,
+ 0x00, 0x16, 0x03, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x16, 0x00, 0x08,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x02,
+ 0x16, 0x00, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x08, 0x0E,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x06, 0x10,
+ 0x00, 0x13, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x0E, 0x16,
+ 0x00, 0x16, 0x00, 0x14, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x16, 0x00, 0x00, 0x14,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x14, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x12, 0x16, 0x14, 0x16, 0x00, 0x16, 0x13, 0x16,
+ 0x16, 0x00, 0x00, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x00, 0x16,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x07, 0x0F,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x03, 0x16, 0x00, 0x16,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16
+};
+
+static const ByteProvider kLoLDscDimData2FMTownsProvider = { ARRAYSIZE(kLoLDscDimData2FMTowns), kLoLDscDimData2FMTowns };
+
+static const byte kLoLDscBlockMapFMTowns[12] = {
+ 0x02, 0x03, 0x00, 0x01, 0x01, 0x02, 0x03, 0x00,
+ 0x03, 0x00, 0x01, 0x02
+};
+
+static const ByteProvider kLoLDscBlockMapFMTownsProvider = { ARRAYSIZE(kLoLDscBlockMapFMTowns), kLoLDscBlockMapFMTowns };
+
+static const byte kLoLDscDimMapFMTowns[18] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x03
+};
+
+static const ByteProvider kLoLDscDimMapFMTownsProvider = { ARRAYSIZE(kLoLDscDimMapFMTowns), kLoLDscDimMapFMTowns };
+
+static const byte kLoLDscOvlIndexFMTowns[20] = {
+ 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x03,
+ 0x03, 0x03, 0x04, 0x04, 0x05, 0x05, 0x05, 0x06,
+ 0x06, 0x07, 0x07, 0x07
+};
+
+static const ByteProvider kLoLDscOvlIndexFMTownsProvider = { ARRAYSIZE(kLoLDscOvlIndexFMTowns), kLoLDscOvlIndexFMTowns };
+
+static const byte kLoLDscBlockIndexFMTowns[72] = {
+ 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xBE,
+ 0xBF, 0xC0, 0xC1, 0xC2, 0xDF, 0xE0, 0xE1, 0xFF,
+ 0x00, 0x01, 0xA3, 0xC3, 0xE3, 0x03, 0x23, 0x43,
+ 0x63, 0xC2, 0xE2, 0x02, 0x22, 0x42, 0xE1, 0x01,
+ 0x21, 0xE0, 0x00, 0x20, 0x63, 0x62, 0x61, 0x60,
+ 0x5F, 0x5E, 0x5D, 0x42, 0x41, 0x40, 0x3F, 0x3E,
+ 0x21, 0x20, 0x1F, 0x01, 0x00, 0xFF, 0x5D, 0x3D,
+ 0x1D, 0xFD, 0xDD, 0xBD, 0x9D, 0x3E, 0x1E, 0xFE,
+ 0xDE, 0xBE, 0x1F, 0xFF, 0xDF, 0x20, 0x00, 0xE0
+};
+
+static const ByteProvider kLoLDscBlockIndexFMTownsProvider = { ARRAYSIZE(kLoLDscBlockIndexFMTowns), kLoLDscBlockIndexFMTowns };
+
+static const byte kLoLDscDoorY2FMTowns[128] = {
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,
+ 0x10, 0x11, 0x12, 0x13, 0x14, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x0D, 0x08, 0x03, 0x12, 0x0E, 0x09, 0x04, 0x00,
+ 0x13, 0x0F, 0x0A, 0x05, 0x01, 0x14, 0x10, 0x0B,
+ 0x06, 0x02, 0x11, 0x0C, 0x07, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x14, 0x13, 0x12, 0x11, 0x10, 0x0F, 0x0E, 0x0D,
+ 0x0C, 0x0B, 0x0A, 0x09, 0x08, 0x07, 0x06, 0x05,
+ 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x07, 0x0C, 0x11, 0x02, 0x06, 0x0B, 0x10, 0x14,
+ 0x01, 0x05, 0x0A, 0x0F, 0x13, 0x00, 0x04, 0x09,
+ 0x0E, 0x12, 0x03, 0x08, 0x0D, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLDscDoorY2FMTownsProvider = { ARRAYSIZE(kLoLDscDoorY2FMTowns), kLoLDscDoorY2FMTowns };
+
+static const byte kLoLDscDoorFrameY1FMTowns[4] = {
+ 0x1E, 0x18, 0x10, 0x00
+};
+
+static const ByteProvider kLoLDscDoorFrameY1FMTownsProvider = { ARRAYSIZE(kLoLDscDoorFrameY1FMTowns), kLoLDscDoorFrameY1FMTowns };
+
+static const byte kLoLDscDoorFrameY2FMTowns[4] = {
+ 0x3B, 0x47, 0x56, 0x78
+};
+
+static const ByteProvider kLoLDscDoorFrameY2FMTownsProvider = { ARRAYSIZE(kLoLDscDoorFrameY2FMTowns), kLoLDscDoorFrameY2FMTowns };
+
+static const uint16 kLoLDscDoorScaleFMTowns[8] = {
+ 0x0075, 0x006A, 0x00B9, 0x00B2, 0x0100, 0x0100, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorScaleFMTownsProvider = { ARRAYSIZE(kLoLDscDoorScaleFMTowns), kLoLDscDoorScaleFMTowns };
+
+static const uint16 kLoLDscDoor4FMTowns[4] = {
+ 0x0005, 0x0002, 0x0008, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoor4FMTownsProvider = { ARRAYSIZE(kLoLDscDoor4FMTowns), kLoLDscDoor4FMTowns };
+
+static const uint16 kLoLDscDoorXFMTowns[576] = {
+ 0xFF98, 0xFFA0, 0xFFA8, 0xFF90, 0xFF98, 0xFFA0, 0xFFA8, 0xFFB0,
+ 0xFF74, 0xFF7E, 0xFF88, 0xFF92, 0xFF9C, 0xFF74, 0xFF7E, 0xFF88,
+ 0xFF92, 0xFF9C, 0xFF64, 0xFF70, 0xFF7C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFB8, 0xFFC0, 0xFFC8, 0xFFB0, 0xFFB8, 0xFFC0, 0xFFC8, 0xFFD0,
+ 0xFF9C, 0xFFA6, 0xFFB0, 0xFFBA, 0xFFC4, 0xFF9C, 0xFFA6, 0xFFB0,
+ 0xFFBA, 0xFFC4, 0xFF94, 0xFFA0, 0xFFAC, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD8, 0xFFE0, 0xFFE8, 0xFFD0, 0xFFD8, 0xFFE0, 0xFFE8, 0xFFF0,
+ 0xFFC4, 0xFFCE, 0xFFD8, 0xFFE2, 0xFFEC, 0xFFC4, 0xFFCE, 0xFFD8,
+ 0xFFE2, 0xFFEC, 0xFFC4, 0xFFD0, 0xFFDC, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0x0000, 0x0008, 0xFFF0, 0xFFF8, 0x0000, 0x0008, 0x0010,
+ 0xFFEC, 0xFFF6, 0x0000, 0x000A, 0x0014, 0xFFEC, 0xFFF6, 0x0000,
+ 0x000A, 0x0014, 0xFFF4, 0x0000, 0x000C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0018, 0x0020, 0x0028, 0x0010, 0x0018, 0x0020, 0x0028, 0x0030,
+ 0x0014, 0x001E, 0x0028, 0x0032, 0x003C, 0x0014, 0x001E, 0x0028,
+ 0x0032, 0x003C, 0x0024, 0x0030, 0x003C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0038, 0x0040, 0x0048, 0x0030, 0x0038, 0x0040, 0x0048, 0x0050,
+ 0x003C, 0x0046, 0x0050, 0x005A, 0x0064, 0x003C, 0x0046, 0x0050,
+ 0x005A, 0x0064, 0x0054, 0x0060, 0x006C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0058, 0x0060, 0x0068, 0x0050, 0x0058, 0x0060, 0x0068, 0x0070,
+ 0x0064, 0x006E, 0x0078, 0x0082, 0x008C, 0x0064, 0x006E, 0x0078,
+ 0x0082, 0x008C, 0x0084, 0x0090, 0x009C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF94, 0xFFA0, 0xFFAC, 0xFF7E, 0xFF8B, 0xFF98, 0xFFA5, 0xFFB2,
+ 0xFF6C, 0xFF7B, 0xFF8A, 0xFF99, 0xFFA7, 0xFF60, 0xFF70, 0xFF80,
+ 0xFF90, 0xFFA0, 0xFF4C, 0xFF60, 0xFF74, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC4, 0xFFD0, 0xFFDC, 0xFFB2, 0xFFBF, 0xFFCC, 0xFFD9, 0xFFE6,
+ 0xFFA7, 0xFFB6, 0xFFC5, 0xFFD4, 0xFFE2, 0xFFA0, 0xFFB0, 0xFFC0,
+ 0xFFD0, 0xFFE0, 0xFF9C, 0xFFB0, 0xFFC4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF4, 0x0000, 0x000C, 0xFFE6, 0xFFF3, 0x0000, 0x000D, 0x001A,
+ 0xFFE2, 0xFFF1, 0x0000, 0x000F, 0x001E, 0xFFE0, 0xFFF0, 0x0000,
+ 0x0010, 0x0020, 0xFFEC, 0x0000, 0x0014, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0024, 0x0030, 0x003C, 0x001A, 0x0027, 0x0034, 0x0041, 0x004E,
+ 0x001E, 0x002C, 0x003B, 0x004A, 0x0059, 0x0020, 0x0030, 0x0040,
+ 0x0050, 0x0060, 0x003C, 0x0050, 0x0064, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0054, 0x0060, 0x006C, 0x004E, 0x005B, 0x0068, 0x0075, 0x0082,
+ 0x0059, 0x0067, 0x0076, 0x0085, 0x0094, 0x0060, 0x0070, 0x0080,
+ 0x0090, 0x00A0, 0x008C, 0x00A0, 0x00B4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF9C, 0xFFB0, 0xFFC4, 0xFF7C, 0xFF92, 0xFFA8, 0xFFBE, 0xFFD4,
+ 0xFF6D, 0xFF85, 0xFF9E, 0xFFB6, 0xFFCF, 0xFF5E, 0xFF79, 0xFF94,
+ 0xFFAF, 0xFFCA, 0xFF60, 0xFF80, 0xFFA0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFEC, 0x0000, 0x0014, 0xFFD4, 0xFFEA, 0x0000, 0x0016, 0x002C,
+ 0xFFCF, 0xFFE7, 0x0000, 0x0019, 0x0031, 0xFFCA, 0xFFE5, 0x0000,
+ 0x001B, 0x0036, 0xFFE0, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x003C, 0x0050, 0x0064, 0x002C, 0x0042, 0x0058, 0x006E, 0x0084,
+ 0x0031, 0x004A, 0x0062, 0x007B, 0x0093, 0x0036, 0x0051, 0x006C,
+ 0x0087, 0x00A2, 0x0060, 0x0080, 0x00A0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF60, 0xFF80, 0xFFA0, 0xFF1C, 0xFF42, 0xFF68, 0xFF8E, 0xFFB4,
+ 0xFF40, 0xFF60, 0xFF80, 0xFFA0, 0xFFC0, 0xFF1C, 0xFF42, 0xFF68,
+ 0xFF8E, 0xFFB4, 0xFF60, 0xFF80, 0xFFA0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFE0, 0x0000, 0x0020, 0xFFB4, 0xFFDA, 0x0000, 0x0026, 0x004C,
+ 0xFFC0, 0xFFE0, 0x0000, 0x0020, 0x0040, 0xFFB4, 0xFFDA, 0x0000,
+ 0x0026, 0x004C, 0xFFE0, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0060, 0x0080, 0x00A0, 0x004C, 0x0072, 0x0098, 0x00BE, 0x00E4,
+ 0x0040, 0x0060, 0x0080, 0x00A0, 0x00C0, 0x004C, 0x0072, 0x0098,
+ 0x00BE, 0x00E4, 0x0060, 0x0080, 0x00A0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorXFMTownsProvider = { ARRAYSIZE(kLoLDscDoorXFMTowns), kLoLDscDoorXFMTowns };
+
+static const uint16 kLoLDscDoorYFMTowns[576] = {
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorYFMTownsProvider = { ARRAYSIZE(kLoLDscDoorYFMTowns), kLoLDscDoorYFMTowns };
+
+static const byte kLoLScrollXTopFMTowns[5] = {
+ 0x05, 0x0A, 0x0F, 0x14, 0x19
+};
+
+static const ByteProvider kLoLScrollXTopFMTownsProvider = { ARRAYSIZE(kLoLScrollXTopFMTowns), kLoLScrollXTopFMTowns };
+
+static const byte kLoLScrollYTopFMTowns[5] = {
+ 0x02, 0x04, 0x07, 0x09, 0x0C
+};
+
+static const ByteProvider kLoLScrollYTopFMTownsProvider = { ARRAYSIZE(kLoLScrollYTopFMTowns), kLoLScrollYTopFMTowns };
+
+static const byte kLoLScrollXBottomFMTowns[5] = {
+ 0x05, 0x0A, 0x0F, 0x14, 0x19
+};
+
+static const ByteProvider kLoLScrollXBottomFMTownsProvider = { ARRAYSIZE(kLoLScrollXBottomFMTowns), kLoLScrollXBottomFMTowns };
+
+static const byte kLoLScrollYBottomFMTowns[5] = {
+ 0x04, 0x08, 0x0C, 0x10, 0x14
+};
+
+static const ByteProvider kLoLScrollYBottomFMTownsProvider = { ARRAYSIZE(kLoLScrollYBottomFMTowns), kLoLScrollYBottomFMTowns };
+
+static const LoLButtonDef kLoLButtonDefsFMTowns[95] = {
+ { 0x1100, 30, 56, 33, 131, 22, 19, 0x0000, 0 },
+ { 0x1100, 31, 53, 33, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 31, 53, 33, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 29, 52, 11, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 28, 54, 53, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 127, 55, 11, 131, 22, 19, 0x0000, 0 },
+ { 0x1100, 18, 57, 53, 131, 22, 19, 0x0000, 0 },
+ { 0x0100, 49, 0, 80, 143, 22, 17, 0x0000, 0 },
+ { 0x0100, 50, 0, 80, 143, 22, 17, 0x0001, 0 },
+ { 0x0100, 51, 0, 80, 143, 22, 17, 0x0002, 0 },
+ { 0x0100, 48, 0, 80, 143, 22, 17, 0x0003, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0000, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0001, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0002, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0003, 0 },
+ { 0x1100, 0, 0, 80, 144, 22, 32, 0x0000, 0 },
+ { 0x1100, 27, 0, 0, 0, 320, 200, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0003, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0002, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0003, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0004, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0005, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0006, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0007, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0008, 2 },
+ { 0x1100, 0, 0, 0, 0, 12, 11, 0x0009, 2 },
+ { 0x1100, 0, 0, 0, 0, 12, 11, 0x000A, 2 },
+ { 0x1100, 27, 0, 160, 93, 43, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 102, 88, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 88, 102, 88, 19, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 85, 88, 17, 0x0002, 2 },
+ { 0x1100, 0, 0, 88, 85, 88, 17, 0x0003, 2 },
+ { 0x1100, 0, 0, 0, 0, 176, 120, 0x0000, 2 },
+ { 0x1100, 0, 0, 106, 179, 21, 21, 0x0000, 0 },
+ { 0x1100, 0, 0, 127, 179, 21, 21, 0x0001, 0 },
+ { 0x1100, 0, 0, 148, 179, 21, 21, 0x0002, 0 },
+ { 0x1100, 0, 0, 169, 179, 21, 21, 0x0003, 0 },
+ { 0x1100, 0, 0, 190, 179, 21, 21, 0x0004, 0 },
+ { 0x1100, 0, 0, 211, 179, 21, 21, 0x0005, 0 },
+ { 0x1100, 0, 0, 232, 179, 21, 21, 0x0006, 0 },
+ { 0x1100, 0, 0, 253, 179, 21, 21, 0x0007, 0 },
+ { 0x1100, 0, 0, 274, 179, 21, 21, 0x0008, 0 },
+ { 0x1100, 0, 0, 274, 179, 21, 21, 0x0009, 0 },
+ { 0x1100, 0, 0, 85, 179, 21, 21, 0xFFFF, 0 },
+ { 0x1100, 0, 0, 295, 179, 22, 21, 0x0001, 0 },
+ { 0x1100, 0, 0, 24, 8, 128, 96, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 0, 176, 120, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 0, 0, 0, 0x0000, 0 },
+ { 0x1100, 0, 0, 112, 0, 176, 16, 0x0001, 0 },
+ { 0x1100, 0, 0, 112, 110, 176, 26, 0x0001, 0 },
+ { 0x1100, 0, 0, 96, 88, 32, 32, 0x0001, 0 },
+ { 0x1100, 0, 0, 272, 88, 32, 32, 0x0001, 0 },
+ { 0x1100, 0, 0, 96, 16, 32, 72, 0x0001, 0 },
+ { 0x1100, 0, 0, 272, 16, 32, 72, 0x0001, 0 },
+ { 0x1100, 0, 0, 24, 15, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 24, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 33, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 42, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 51, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 60, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 69, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 78, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 87, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 96, 61, 9, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x1100, 27, 0, 0, 0, 320, 200, 0x0003, 0 },
+ { 0x0100, 0, 0, 112, 0, 88, 80, 0x0000, 0 },
+ { 0x0100, 0, 0, 200, 0, 88, 80, 0x0001, 0 },
+ { 0x1100, 79, 27, 11, 178, 21, 22, 0x0000, 0 },
+ { 0x0100, 82, 0, 32, 178, 22, 22, 0x0000, 0 },
+ { 0x0100, 0, 0, 291, 96, 27, 24, 0x0000, 0 },
+ { 0x0100, 0, 0, 289, 0, 31, 28, 0x0000, 0 },
+ { 0x0100, 0, 0, 289, 31, 31, 23, 0x0000, 0 },
+ { 0x0100, 0, 0, 291, 56, 29, 24, 0x0000, 0 },
+ { 0x1100, 0, 0, 220, 98, 43, 19, 0x0000, 0 }
+};
+
+static const LoLButtonDefProvider kLoLButtonDefsFMTownsProvider = { ARRAYSIZE(kLoLButtonDefsFMTowns), kLoLButtonDefsFMTowns };
+
+static const byte kLoLButtonList1FMTowns[40] = {
+ 0x59, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x31,
+ 0x3E, 0x2D, 0x2E, 0x2F, 0x30, 0x56, 0x57, 0x01,
+ 0x02, 0x00, 0x03, 0x04, 0x05, 0x06, 0x32, 0x33,
+ 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B,
+ 0x3C, 0x3D, 0x58, 0x5A, 0x5B, 0x5C, 0x5D, 0xFF
+};
+
+static const ByteProvider kLoLButtonList1FMTownsProvider = { ARRAYSIZE(kLoLButtonList1FMTowns), kLoLButtonList1FMTowns };
+
+static const byte kLoLButtonList2FMTowns[15] = {
+ 0x2C, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+ 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x5E, 0xFF
+};
+
+static const ByteProvider kLoLButtonList2FMTownsProvider = { ARRAYSIZE(kLoLButtonList2FMTowns), kLoLButtonList2FMTowns };
+
+static const byte kLoLButtonList3FMTowns[2] = {
+ 0x40, 0xFF
+};
+
+static const ByteProvider kLoLButtonList3FMTownsProvider = { ARRAYSIZE(kLoLButtonList3FMTowns), kLoLButtonList3FMTowns };
+
+static const byte kLoLButtonList4FMTowns[15] = {
+ 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
+ 0x3A, 0x3B, 0x3C, 0x3D, 0x5A, 0x5B, 0xFF
+};
+
+static const ByteProvider kLoLButtonList4FMTownsProvider = { ARRAYSIZE(kLoLButtonList4FMTowns), kLoLButtonList4FMTowns };
+
+static const byte kLoLButtonList5FMTowns[16] = {
+ 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x06, 0x41,
+ 0x42, 0x43, 0x44, 0x45, 0x46, 0x5A, 0x5B, 0xFF
+};
+
+static const ByteProvider kLoLButtonList5FMTownsProvider = { ARRAYSIZE(kLoLButtonList5FMTowns), kLoLButtonList5FMTowns };
+
+static const byte kLoLButtonList6FMTowns[14] = {
+ 0x2C, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+ 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0xFF
+};
+
+static const ByteProvider kLoLButtonList6FMTownsProvider = { ARRAYSIZE(kLoLButtonList6FMTowns), kLoLButtonList6FMTowns };
+
+static const byte kLoLButtonList7FMTowns[3] = {
+ 0x0F, 0x10, 0xFF
+};
+
+static const ByteProvider kLoLButtonList7FMTownsProvider = { ARRAYSIZE(kLoLButtonList7FMTowns), kLoLButtonList7FMTowns };
+
+static const byte kLoLButtonList8FMTowns[2] = {
+ 0x55, 0xFF
+};
+
+static const ByteProvider kLoLButtonList8FMTownsProvider = { ARRAYSIZE(kLoLButtonList8FMTowns), kLoLButtonList8FMTowns };
+
+static const byte kLoLLegendDataFMTowns[60] = {
+ 0x0E, 0x00, 0x00, 0x07, 0x42, 0x19, 0x00, 0x00,
+ 0x08, 0x42, 0x1A, 0x00, 0x00, 0x09, 0x42, 0x0D,
+ 0x00, 0x00, 0x0A, 0x42, 0x0A, 0x00, 0x00, 0x0B,
+ 0x42, 0x0B, 0x00, 0x00, 0x0C, 0x42, 0x0F, 0x00,
+ 0x00, 0x0D, 0x42, 0x16, 0x00, 0x00, 0x0E, 0x42,
+ 0x17, 0x00, 0x00, 0x0F, 0x42, 0x11, 0x00, 0x00,
+ 0x10, 0x42, 0x12, 0x00, 0xFB, 0x51, 0x42, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLLegendDataFMTownsProvider = { ARRAYSIZE(kLoLLegendDataFMTowns), kLoLLegendDataFMTowns };
+
+static const uint16 kLoLMapStringIdFMTowns[30] = {
+ 0xFFFF, 0x4211, 0x4212, 0x4213, 0x4214, 0x4215, 0x4216, 0x4217,
+ 0x4218, 0x4219, 0x421A, 0x421B, 0x421C, 0x421D, 0x421E, 0x421F,
+ 0x4220, 0x4221, 0x4222, 0x4223, 0x4224, 0x4225, 0x4226, 0x4227,
+ 0x4228, 0x4229, 0x422A, 0x422B, 0x422C, 0x422D
+};
+
+static const Uint16Provider kLoLMapStringIdFMTownsProvider = { ARRAYSIZE(kLoLMapStringIdFMTowns), kLoLMapStringIdFMTowns };
+
+static const byte kLoLSpellbookAnimFMTowns[28] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x13, 0xB6, 0x04, 0x00, 0x13, 0x4D,
+ 0x04, 0x00, 0x13, 0xB9, 0x04, 0x00, 0x13, 0xB8,
+ 0x04, 0x00, 0x13, 0xBA
+};
+
+static const ByteProvider kLoLSpellbookAnimFMTownsProvider = { ARRAYSIZE(kLoLSpellbookAnimFMTowns), kLoLSpellbookAnimFMTowns };
+
+static const byte kLoLSpellbookCoordsFMTowns[12] = {
+ 0x16, 0x16, 0x16, 0x1F, 0x16, 0x28, 0x16, 0x31,
+ 0x16, 0x3A, 0x16, 0x43
+};
+
+static const ByteProvider kLoLSpellbookCoordsFMTownsProvider = { ARRAYSIZE(kLoLSpellbookCoordsFMTowns), kLoLSpellbookCoordsFMTowns };
+
+static const byte kLoLHealShapeFramesFMTowns[80] = {
+ 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02,
+ 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03,
+ 0x03, 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+ 0x05, 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
+};
+
+static const ByteProvider kLoLHealShapeFramesFMTownsProvider = { ARRAYSIZE(kLoLHealShapeFramesFMTowns), kLoLHealShapeFramesFMTowns };
+
+static const byte kLoLLightningDefsFMTowns[20] = {
+ 0x06, 0x05, 0xAB, 0x00, 0x06, 0x04, 0xAB, 0x00,
+ 0x08, 0x04, 0xAA, 0x00, 0x06, 0x03, 0xAA, 0x00,
+ 0x06, 0x02, 0xA9, 0x00
+};
+
+static const ByteProvider kLoLLightningDefsFMTownsProvider = { ARRAYSIZE(kLoLLightningDefsFMTowns), kLoLLightningDefsFMTowns };
+
+static const uint16 kLoLFireballCoordsFMTowns[256] = {
+ 0x0000, 0x0324, 0x0647, 0x096A, 0x0C8B, 0x0FAB, 0x12C7, 0x15E1,
+ 0x18F8, 0x1C0B, 0x1F19, 0x2223, 0x2527, 0x2826, 0x2B1E, 0x2E10,
+ 0x30FB, 0x33DE, 0x36B9, 0x398C, 0x3C56, 0x3F16, 0x41CD, 0x447A,
+ 0x471C, 0x49B3, 0x4C3F, 0x4EBF, 0x5133, 0x539A, 0x55F4, 0x5842,
+ 0x5A81, 0x5CB3, 0x5ED6, 0x60EB, 0x62F1, 0x64E7, 0x66CE, 0x68A5,
+ 0x6A6C, 0x6C23, 0x6DC9, 0x6F5E, 0x70E1, 0x7254, 0x73B5, 0x7503,
+ 0x7640, 0x776B, 0x7883, 0x7989, 0x7A7C, 0x7B5C, 0x7C29, 0x7CE2,
+ 0x7D89, 0x7E1C, 0x7E9C, 0x7F08, 0x7F61, 0x7FA6, 0x7FD7, 0x7FF5,
+ 0x7FFF, 0x7FF5, 0x7FD7, 0x7FA6, 0x7F61, 0x7F08, 0x7E9C, 0x7E1C,
+ 0x7D89, 0x7CE2, 0x7C29, 0x7B5C, 0x7A7C, 0x7989, 0x7883, 0x776B,
+ 0x7640, 0x7503, 0x73B5, 0x7254, 0x70E1, 0x6F5E, 0x6DC9, 0x6C23,
+ 0x6A6C, 0x68A5, 0x66CE, 0x64E7, 0x62F1, 0x60EB, 0x5ED6, 0x5CB3,
+ 0x5A81, 0x5842, 0x55F4, 0x539A, 0x5133, 0x4EBF, 0x4C3F, 0x49B3,
+ 0x471C, 0x447A, 0x41CD, 0x3F16, 0x3C56, 0x398C, 0x36B9, 0x33DE,
+ 0x30FB, 0x2E10, 0x2B1E, 0x2826, 0x2527, 0x2223, 0x1F19, 0x1C0B,
+ 0x18F8, 0x15E1, 0x12C7, 0x0FAB, 0x0C8B, 0x096A, 0x0647, 0x0324,
+ 0x0000, 0xFCDC, 0xF9B9, 0xF696, 0xF375, 0xF055, 0xED39, 0xEA1F,
+ 0xE708, 0xE3F5, 0xE0E7, 0xDDDD, 0xDAD9, 0xD7DA, 0xD4E2, 0xD1F0,
+ 0xCF05, 0xCC22, 0xC947, 0xC674, 0xC3AA, 0xC0EA, 0xBE33, 0xBB86,
+ 0xB8E4, 0xB64D, 0xB3C1, 0xB141, 0xAECD, 0xAC66, 0xAA0C, 0xA7BE,
+ 0xA57F, 0xA34D, 0xA12A, 0x9F15, 0x9D0F, 0x9B19, 0x9932, 0x975B,
+ 0x9594, 0x93DD, 0x9237, 0x90A2, 0x8F1F, 0x8DAC, 0x8C4B, 0x8AFD,
+ 0x89C0, 0x8895, 0x877D, 0x8677, 0x8584, 0x84A4, 0x83D7, 0x831E,
+ 0x8277, 0x81E4, 0x8164, 0x80F8, 0x809F, 0x805A, 0x8029, 0x800B,
+ 0x8001, 0x800B, 0x8029, 0x805A, 0x809F, 0x80F8, 0x8164, 0x81E4,
+ 0x8277, 0x831E, 0x83D7, 0x84A4, 0x8584, 0x8677, 0x877D, 0x8895,
+ 0x89C0, 0x8AFD, 0x8C4B, 0x8DAC, 0x8F1F, 0x90A2, 0x9237, 0x93DD,
+ 0x9594, 0x975B, 0x9932, 0x9B19, 0x9D0F, 0x9F15, 0xA12A, 0xA34D,
+ 0xA57F, 0xA7BE, 0xAA0C, 0xAC66, 0xAECD, 0xB141, 0xB3C1, 0xB64D,
+ 0xB8E4, 0xBB86, 0xBE33, 0xC0EA, 0xC3AA, 0xC674, 0xC947, 0xCC22,
+ 0xCF05, 0xD1F0, 0xD4E2, 0xD7DA, 0xDAD9, 0xDDDD, 0xE0E7, 0xE3F5,
+ 0xE708, 0xEA1F, 0xED39, 0xF055, 0xF375, 0xF696, 0xF9B9, 0xFCDC
+};
+
+static const Uint16Provider kLoLFireballCoordsFMTownsProvider = { ARRAYSIZE(kLoLFireballCoordsFMTowns), kLoLFireballCoordsFMTowns };
+
+static const byte kLoLCreditsFMTowns[1516] = {
+ 0x02, 0x54, 0x68, 0x65, 0x20, 0x45, 0x6E, 0x64,
+ 0x05, 0x0D, 0x0D, 0x0D, 0x02, 0x4C, 0x41, 0x4E,
+ 0x44, 0x53, 0x20, 0x4F, 0x46, 0x20, 0x4C, 0x4F,
+ 0x52, 0x45, 0x05, 0x0D, 0x01, 0x54, 0x68, 0x65,
+ 0x20, 0x54, 0x68, 0x72, 0x6F, 0x6E, 0x65, 0x20,
+ 0x6F, 0x66, 0x20, 0x43, 0x68, 0x61, 0x6F, 0x73,
+ 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x02, 0x45, 0x58, 0x45, 0x43, 0x55, 0x54,
+ 0x49, 0x56, 0x45, 0x20, 0x50, 0x52, 0x4F, 0x44,
+ 0x55, 0x43, 0x45, 0x52, 0x05, 0x0D, 0x0D, 0x02,
+ 0x42, 0x72, 0x65, 0x74, 0x74, 0x20, 0x57, 0x2E,
+ 0x20, 0x53, 0x70, 0x65, 0x72, 0x72, 0x79, 0x05,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x50, 0x52, 0x4F,
+ 0x44, 0x55, 0x43, 0x45, 0x52, 0x05, 0x0D, 0x0D,
+ 0x02, 0x52, 0x69, 0x63, 0x6B, 0x20, 0x47, 0x75,
+ 0x73, 0x68, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x02,
+ 0x50, 0x52, 0x4F, 0x44, 0x55, 0x43, 0x54, 0x20,
+ 0x43, 0x4F, 0x4F, 0x52, 0x44, 0x49, 0x4E, 0x41,
+ 0x54, 0x4F, 0x52, 0x05, 0x0D, 0x0D, 0x02, 0x43,
+ 0x61, 0x74, 0x68, 0x69, 0x65, 0x20, 0x41, 0x2E,
+ 0x20, 0x54, 0x6F, 0x64, 0x64, 0x05, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x44, 0x45, 0x53, 0x49, 0x47,
+ 0x4E, 0x45, 0x52, 0x53, 0x05, 0x0D, 0x0D, 0x02,
+ 0x57, 0x69, 0x6C, 0x6C, 0x69, 0x61, 0x6D, 0x20,
+ 0x41, 0x6C, 0x61, 0x6E, 0x20, 0x43, 0x72, 0x75,
+ 0x6D, 0x05, 0x0D, 0x50, 0x68, 0x69, 0x6C, 0x69,
+ 0x70, 0x20, 0x57, 0x2E, 0x20, 0x47, 0x6F, 0x72,
+ 0x72, 0x6F, 0x77, 0x05, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x02, 0x4C, 0x45, 0x41, 0x44, 0x20, 0x50, 0x52,
+ 0x4F, 0x47, 0x52, 0x41, 0x4D, 0x4D, 0x45, 0x52,
+ 0x05, 0x0D, 0x0D, 0x02, 0x50, 0x68, 0x69, 0x6C,
+ 0x69, 0x70, 0x20, 0x57, 0x2E, 0x20, 0x47, 0x6F,
+ 0x72, 0x72, 0x6F, 0x77, 0x05, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x02, 0x50, 0x52, 0x4F, 0x47, 0x52, 0x41,
+ 0x4D, 0x4D, 0x45, 0x52, 0x53, 0x05, 0x0D, 0x0D,
+ 0x02, 0x4A, 0x6F, 0x65, 0x20, 0x42, 0x6F, 0x73,
+ 0x74, 0x69, 0x63, 0x05, 0x0D, 0x02, 0x53, 0x63,
+ 0x6F, 0x74, 0x74, 0x20, 0x4B, 0x2E, 0x20, 0x42,
+ 0x6F, 0x77, 0x65, 0x6E, 0x05, 0x0D, 0x02, 0x4A,
+ 0x6F, 0x68, 0x6E, 0x20, 0x4C, 0x61, 0x53, 0x61,
+ 0x6C, 0x76, 0x69, 0x61, 0x05, 0x0D, 0x02, 0x4D,
+ 0x61, 0x72, 0x6B, 0x20, 0x4D, 0x63, 0x43, 0x75,
+ 0x62, 0x62, 0x69, 0x6E, 0x05, 0x0D, 0x02, 0x4A,
+ 0x75, 0x73, 0x74, 0x69, 0x6E, 0x20, 0x4D, 0x63,
+ 0x4B, 0x69, 0x6E, 0x6E, 0x65, 0x72, 0x6E, 0x65,
+ 0x79, 0x05, 0x0D, 0x02, 0x51, 0x69, 0x6E, 0x67,
+ 0x20, 0x59, 0x75, 0x61, 0x6E, 0x05, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x4C, 0x45, 0x41, 0x44, 0x20,
+ 0x41, 0x52, 0x54, 0x49, 0x53, 0x54, 0x05, 0x0D,
+ 0x0D, 0x02, 0x52, 0x69, 0x63, 0x6B, 0x20, 0x50,
+ 0x61, 0x72, 0x6B, 0x73, 0x05, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x02, 0x41, 0x52, 0x54, 0x49, 0x53, 0x54,
+ 0x53, 0x05, 0x0D, 0x0D, 0x02, 0x45, 0x6C, 0x69,
+ 0x65, 0x20, 0x41, 0x72, 0x61, 0x62, 0x69, 0x61,
+ 0x6E, 0x05, 0x0D, 0x02, 0x43, 0x61, 0x72, 0x79,
+ 0x20, 0x44, 0x65, 0x61, 0x6E, 0x20, 0x41, 0x76,
+ 0x65, 0x72, 0x65, 0x74, 0x74, 0x05, 0x0D, 0x02,
+ 0x45, 0x72, 0x69, 0x63, 0x20, 0x47, 0x6F, 0x6F,
+ 0x63, 0x68, 0x05, 0x0D, 0x02, 0x4A, 0x6F, 0x73,
+ 0x65, 0x70, 0x68, 0x20, 0x42, 0x2E, 0x20, 0x48,
+ 0x65, 0x77, 0x69, 0x74, 0x74, 0x20, 0x49, 0x56,
+ 0x05, 0x0D, 0x02, 0x52, 0x65, 0x6E, 0x20, 0x4F,
+ 0x6C, 0x73, 0x65, 0x6E, 0x05, 0x0D, 0x02, 0x4A,
+ 0x75, 0x64, 0x69, 0x74, 0x68, 0x20, 0x50, 0x65,
+ 0x74, 0x65, 0x72, 0x73, 0x6F, 0x6E, 0x05, 0x0D,
+ 0x02, 0x45, 0x2E, 0x4D, 0x2E, 0x20, 0x4C, 0x6F,
+ 0x75, 0x69, 0x73, 0x65, 0x20, 0x53, 0x61, 0x6E,
+ 0x64, 0x6F, 0x76, 0x61, 0x6C, 0x05, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x4D, 0x55, 0x53, 0x49, 0x43,
+ 0x20, 0x26, 0x20, 0x53, 0x4F, 0x55, 0x4E, 0x44,
+ 0x53, 0x05, 0x0D, 0x0D, 0x02, 0x50, 0x61, 0x75,
+ 0x6C, 0x20, 0x53, 0x2E, 0x20, 0x4D, 0x75, 0x64,
+ 0x72, 0x61, 0x05, 0x0D, 0x02, 0x44, 0x77, 0x69,
+ 0x67, 0x68, 0x74, 0x20, 0x4B, 0x2E, 0x20, 0x4F,
+ 0x6B, 0x61, 0x68, 0x61, 0x72, 0x61, 0x05, 0x0D,
+ 0x02, 0x46, 0x72, 0x61, 0x6E, 0x6B, 0x20, 0x4B,
+ 0x6C, 0x65, 0x70, 0x61, 0x63, 0x6B, 0x69, 0x05,
+ 0x0D, 0x02, 0x50, 0x61, 0x74, 0x72, 0x69, 0x63,
+ 0x6B, 0x20, 0x43, 0x6F, 0x6C, 0x6C, 0x69, 0x6E,
+ 0x73, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x51,
+ 0x55, 0x41, 0x4C, 0x49, 0x54, 0x59, 0x20, 0x41,
+ 0x53, 0x53, 0x55, 0x52, 0x41, 0x4E, 0x43, 0x45,
+ 0x05, 0x0D, 0x0D, 0x02, 0x4A, 0x65, 0x73, 0x73,
+ 0x65, 0x20, 0x43, 0x6C, 0x65, 0x6D, 0x69, 0x74,
+ 0x05, 0x0D, 0x02, 0x4B, 0x65, 0x6E, 0x6E, 0x65,
+ 0x74, 0x68, 0x20, 0x44, 0x75, 0x6E, 0x6E, 0x65,
+ 0x05, 0x0D, 0x02, 0x4A, 0x65, 0x66, 0x66, 0x20,
+ 0x53, 0x74, 0x65, 0x76, 0x65, 0x6E, 0x20, 0x46,
+ 0x69, 0x6C, 0x6C, 0x68, 0x61, 0x62, 0x65, 0x72,
+ 0x05, 0x0D, 0x02, 0x57, 0x69, 0x6C, 0x6C, 0x69,
+ 0x61, 0x6D, 0x20, 0x46, 0x6F, 0x73, 0x74, 0x65,
+ 0x72, 0x05, 0x0D, 0x02, 0x53, 0x63, 0x6F, 0x74,
+ 0x74, 0x20, 0x46, 0x6C, 0x65, 0x6D, 0x69, 0x6E,
+ 0x67, 0x05, 0x0D, 0x02, 0x4D, 0x69, 0x63, 0x68,
+ 0x61, 0x65, 0x6C, 0x20, 0x4C, 0x69, 0x67, 0x68,
+ 0x74, 0x6E, 0x65, 0x72, 0x05, 0x0D, 0x02, 0x47,
+ 0x6C, 0x65, 0x6E, 0x6E, 0x20, 0x53, 0x70, 0x65,
+ 0x72, 0x72, 0x79, 0x05, 0x0D, 0x02, 0x43, 0x68,
+ 0x72, 0x69, 0x73, 0x20, 0x4D, 0x63, 0x46, 0x61,
+ 0x72, 0x6C, 0x61, 0x6E, 0x64, 0x05, 0x0D, 0x02,
+ 0x53, 0x63, 0x6F, 0x74, 0x74, 0x20, 0x4D, 0x61,
+ 0x6E, 0x6E, 0x69, 0x6E, 0x67, 0x05, 0x0D, 0x02,
+ 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53, 0x68, 0x6F,
+ 0x65, 0x6E, 0x65, 0x72, 0x05, 0x0D, 0x02, 0x41,
+ 0x64, 0x61, 0x6D, 0x20, 0x52, 0x79, 0x61, 0x6E,
+ 0x05, 0x0D, 0x02, 0x4D, 0x69, 0x74, 0x63, 0x68,
+ 0x20, 0x46, 0x69, 0x65, 0x6C, 0x64, 0x6D, 0x61,
+ 0x6E, 0x05, 0x0D, 0x02, 0x4A, 0x61, 0x72, 0x65,
+ 0x64, 0x20, 0x42, 0x72, 0x69, 0x6E, 0x6B, 0x6C,
+ 0x65, 0x79, 0x05, 0x0D, 0x02, 0x4A, 0x75, 0x73,
+ 0x74, 0x69, 0x6E, 0x20, 0x48, 0x61, 0x6C, 0x6C,
+ 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x02,
+ 0x56, 0x4F, 0x49, 0x43, 0x45, 0x20, 0x41, 0x43,
+ 0x54, 0x4F, 0x52, 0x53, 0x05, 0x0D, 0x0D, 0x03,
+ 0x52, 0x69, 0x63, 0x68, 0x61, 0x72, 0x64, 0x20,
+ 0x53, 0x6D, 0x69, 0x74, 0x68, 0x20, 0x61, 0x73,
+ 0x05, 0x04, 0x4B, 0x49, 0x4E, 0x47, 0x20, 0x52,
+ 0x49, 0x43, 0x48, 0x41, 0x52, 0x44, 0x05, 0x0D,
+ 0x03, 0x45, 0x72, 0x69, 0x63, 0x20, 0x47, 0x6F,
+ 0x6F, 0x63, 0x68, 0x20, 0x61, 0x73, 0x05, 0x04,
+ 0x47, 0x45, 0x52, 0x4F, 0x4E, 0x05, 0x0D, 0x03,
+ 0x53, 0x63, 0x6F, 0x74, 0x69, 0x61, 0x20, 0x61,
+ 0x73, 0x05, 0x04, 0x68, 0x65, 0x72, 0x73, 0x65,
+ 0x6C, 0x66, 0x05, 0x0D, 0x03, 0x46, 0x72, 0x61,
+ 0x6E, 0x6B, 0x20, 0x4B, 0x6C, 0x65, 0x70, 0x61,
+ 0x63, 0x6B, 0x69, 0x20, 0x61, 0x73, 0x05, 0x04,
+ 0x50, 0x49, 0x47, 0x4C, 0x45, 0x54, 0x05, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x4A, 0x41,
+ 0x50, 0x41, 0x4E, 0x45, 0x53, 0x45, 0x20, 0x56,
+ 0x45, 0x52, 0x49, 0x53, 0x49, 0x4F, 0x4E, 0x05,
+ 0x0D, 0x0D, 0x0D, 0x02, 0x50, 0x52, 0x4F, 0x47,
+ 0x52, 0x41, 0x4D, 0x4D, 0x45, 0x52, 0x53, 0x05,
+ 0x0D, 0x0D, 0x02, 0x59, 0x75, 0x6B, 0x69, 0x6F,
+ 0x20, 0x53, 0x65, 0x6B, 0x69, 0x67, 0x75, 0x63,
+ 0x68, 0x69, 0x05, 0x0D, 0x02, 0x4E, 0x61, 0x6F,
+ 0x73, 0x68, 0x69, 0x20, 0x4E, 0x6F, 0x67, 0x75,
+ 0x63, 0x68, 0x69, 0x05, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x02, 0x41, 0x52, 0x54, 0x49, 0x53, 0x54, 0x53,
+ 0x05, 0x0D, 0x0D, 0x02, 0x4D, 0x61, 0x73, 0x61,
+ 0x6B, 0x69, 0x20, 0x54, 0x6F, 0x67, 0x61, 0x73,
+ 0x68, 0x69, 0x05, 0x0D, 0x02, 0x52, 0x69, 0x73,
+ 0x61, 0x6B, 0x6F, 0x20, 0x53, 0x65, 0x74, 0x6F,
+ 0x05, 0x0D, 0x02, 0x52, 0x65, 0x69, 0x67, 0x61,
+ 0x20, 0x59, 0x61, 0x73, 0x75, 0x64, 0x61, 0x05,
+ 0x0D, 0x02, 0x4D, 0x61, 0x73, 0x75, 0x6D, 0x69,
+ 0x20, 0x53, 0x68, 0x69, 0x6E, 0x62, 0x6F, 0x05,
+ 0x0D, 0x02, 0x4E, 0x61, 0x6F, 0x6B, 0x6F, 0x20,
+ 0x4E, 0x69, 0x74, 0x74, 0x61, 0x05, 0x0D, 0x02,
+ 0x4B, 0x69, 0x79, 0x6F, 0x66, 0x75, 0x6D, 0x69,
+ 0x20, 0x48, 0x69, 0x6E, 0x6F, 0x05, 0x0D, 0x02,
+ 0x48, 0x69, 0x72, 0x6F, 0x6D, 0x69, 0x20, 0x53,
+ 0x61, 0x6B, 0x61, 0x65, 0x05, 0x0D, 0x02, 0x4B,
+ 0x79, 0x6F, 0x75, 0x6B, 0x6F, 0x20, 0x4D, 0x69,
+ 0x79, 0x61, 0x6D, 0x6F, 0x74, 0x6F, 0x05, 0x0D,
+ 0x02, 0x53, 0x68, 0x6F, 0x6B, 0x6F, 0x20, 0x4D,
+ 0x75, 0x72, 0x61, 0x6B, 0x61, 0x6D, 0x69, 0x05,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x4D, 0x55, 0x53,
+ 0x49, 0x43, 0x20, 0x26, 0x20, 0x53, 0x4F, 0x55,
+ 0x4E, 0x44, 0x53, 0x05, 0x0D, 0x0D, 0x02, 0x54,
+ 0x61, 0x6B, 0x65, 0x73, 0x68, 0x69, 0x20, 0x41,
+ 0x62, 0x6F, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x02,
+ 0x4A, 0x41, 0x50, 0x41, 0x4E, 0x45, 0x53, 0x45,
+ 0x20, 0x54, 0x52, 0x41, 0x4E, 0x53, 0x4C, 0x41,
+ 0x54, 0x4F, 0x52, 0x05, 0x0D, 0x0D, 0x02, 0x59,
+ 0x75, 0x72, 0x69, 0x20, 0x49, 0x74, 0x6F, 0x05,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x53, 0x70, 0x65,
+ 0x63, 0x69, 0x61, 0x6C, 0x20, 0x74, 0x68, 0x61,
+ 0x6E, 0x6B, 0x73, 0x20, 0x74, 0x6F, 0x3A, 0x05,
+ 0x0D, 0x0D, 0x02, 0x48, 0x69, 0x72, 0x6F, 0x6B,
+ 0x6F, 0x20, 0x59, 0x6F, 0x72, 0x6F, 0x69, 0x7A,
+ 0x75, 0x6B, 0x61, 0x05, 0x0D, 0x02, 0x59, 0x75,
+ 0x6A, 0x69, 0x20, 0x4F, 0x64, 0x61, 0x77, 0x61,
+ 0x72, 0x61, 0x05, 0x0D, 0x02, 0x4F, 0x68, 0x73,
+ 0x68, 0x75, 0x6E, 0x20, 0x4C, 0x65, 0x65, 0x05,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x01,
+ 0x43, 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68,
+ 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x31, 0x39,
+ 0x39, 0x33, 0x2C, 0x20, 0x57, 0x65, 0x73, 0x74,
+ 0x77, 0x6F, 0x6F, 0x64, 0x20, 0x53, 0x74, 0x75,
+ 0x64, 0x69, 0x6F, 0x73, 0x2C, 0x20, 0x49, 0x6E,
+ 0x63, 0x2E, 0x05, 0x0D, 0x01, 0x43, 0x6F, 0x70,
+ 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28,
+ 0x43, 0x29, 0x20, 0x31, 0x39, 0x39, 0x34, 0x2C,
+ 0x20, 0x53, 0x74, 0x61, 0x72, 0x43, 0x72, 0x61,
+ 0x66, 0x74, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E,
+ 0x05, 0x0D, 0x01, 0x41, 0x6C, 0x6C, 0x20, 0x72,
+ 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2E, 0x05,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLCreditsFMTownsProvider = { ARRAYSIZE(kLoLCreditsFMTowns), kLoLCreditsFMTowns };
+
diff --git a/devtools/create_kyradat/resources/lol_fmtowns_japanese.h b/devtools/create_kyradat/resources/lol_fmtowns_japanese.h
new file mode 100644
index 0000000000..b43fcdd6e8
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_fmtowns_japanese.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsFMTownsJapanese[9] = {
+ { 0x0001, "\x83""}""\x83""C""\x83""P""\x83\x8B", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""e""\x83""B""\x83\x82\x83""V""\x81""[", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""o""\x83""R""\x81""[""\x83""^", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83\x8D\x81""[""\x83\x89", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""R""\x83\x93\x83\x89\x83""b""\x83""h", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""|""\x81""[""\x83\x8B\x83""\\""\x83\x93", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""h""\x81""[""\x83\x93", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""L""\x81""[""\x83\x89\x83\x93", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""A""\x83""N""\x83""V""\x83""F""\x83\x8B", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsFMTownsJapaneseProvider = { ARRAYSIZE(kLoLCharacterDefsFMTownsJapanese), kLoLCharacterDefsFMTownsJapanese };
+
diff --git a/devtools/create_kyradat/resources/lol_pc98.h b/devtools/create_kyradat/resources/lol_pc98.h
new file mode 100644
index 0000000000..e62fabe210
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_pc98.h
@@ -0,0 +1,1598 @@
+static const char *const kLoLIngamePakFilesPC98[11] = {
+ "VOC.PAK",
+ "GENERAL.PAK",
+ "CHAPTER1.PAK",
+ "CHAPTER2.PAK",
+ "CHAPTER3.PAK",
+ "CHAPTER4.PAK",
+ "CHAPTER5.PAK",
+ "CHAPTER6.PAK",
+ "CHAPTER7.PAK",
+ "CHAPTER8.PAK",
+ "MUS.PAK"
+};
+
+static const StringListProvider kLoLIngamePakFilesPC98Provider = { ARRAYSIZE(kLoLIngamePakFilesPC98), kLoLIngamePakFilesPC98 };
+
+static const char *const kLoLIngameSfxFilesPC98[229] = {
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "XXXXXXXX",
+ "DOORMTOP",
+ "DOORMTCL",
+ "PMETLHI",
+ "SWING6",
+ "MDAMAGE2",
+ "LEVERDN",
+ "LEVERUP",
+ "MTLDRSLM",
+ "DOORWDOP",
+ "DOORWDCL",
+ "KEYOPEN",
+ "KEYLOCK",
+ "PORTCUL",
+ "PORTCULD",
+ "LOKPICK",
+ "OCEAN2",
+ "NUNCHUK",
+ "SWING",
+ "SHWING1",
+ "SWING6",
+ "THROW",
+ "CROSSBOW",
+ "HEAL1",
+ "FIRESPL1",
+ "PRESSIN",
+ "PRESSOUT",
+ "PLATEON",
+ "PLATEOFF",
+ "DORWDSLM",
+ "LITENIN1",
+ "ICESPEL2",
+ "SPELL4B",
+ "SHIELD1",
+ "3BOLTC",
+ "2BOLTC",
+ "1BOLTC",
+ "DAWNSPL1",
+ "HEALKING",
+ "SPELL7",
+ "SWING1",
+ "EXPLODE",
+ "CROWCAW",
+ "MORPH2",
+ "CHEST",
+ "MONEY",
+ "SPELBK2",
+ "AUTOMAP",
+ "MINECRT3",
+ "CREAK1",
+ "TURNPAG2",
+ "POLGULP1",
+ "GOOEY1",
+ "BUCKBELL",
+ "KEEPXIT2",
+ "VSCREAM4",
+ "EMPTY",
+ "GOOEY1",
+ "GOOEY2",
+ "RIPPOD4",
+ "PODSKEL1",
+ "INVISO",
+ "OPENBOX2",
+ "ACCEPT2",
+ "BOW2",
+ "HACHUCKM",
+ "FOUNDRY2",
+ "FOUNDRY2",
+ "FOUNDRY4",
+ "FOUNDRY6",
+ "CLEANGL1",
+ "CLEANGL2",
+ "GLOWY1",
+ "DORSTNOP",
+ "DORSTNCL",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "ADAMAGE1",
+ "HDAMAGE1",
+ "TDAMAGE1",
+ "BDAMAGE1",
+ "LDAMAGE1",
+ "TDAMAGE2",
+ "CDAMAGE1",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "GOOD1",
+ "GOOD2",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "LITENIN1",
+ "COMPASS2",
+ "KINGDOR1",
+ "GLASBRK2",
+ "FLUTTER3",
+ "NUNCHUK",
+ "WALLFALL",
+ "WALLHIT",
+ "MWHOA1",
+ "LADDER",
+ "WHITTL3",
+ "ROWBOAT1",
+ "HORSEY2",
+ "SNORT",
+ "PUMPDOR1",
+ "PUMPSM2",
+ "PUMPSM3",
+ "SPARK1",
+ "BEZEL",
+ "SWARM",
+ "CHEST",
+ "WRIT1",
+ "CAUSFOG",
+ "VAELAN2",
+ "ROARSPL1",
+ "RATTLER",
+ "WINK1",
+ "HANDFATE",
+ "QUAKE1",
+ "WIZLAMP1",
+ "SAP2",
+ "MSTDOOM1",
+ "GARDIAN1",
+ "VORTEX1",
+ "LION1",
+ "STEAM",
+ "SQUAWCK",
+ "SLIDEMUG",
+ "SPARKHIT",
+ "SPARKHIT2",
+ "SPARKHIT3",
+ "ICEFORM",
+ "ICEXPLOD",
+ "EXPLODE2",
+ "EXPLODE3",
+ "BOLTQUK2",
+ "BOLT2",
+ "BOLT3",
+ "SNKBITE",
+ "HANDGLOW",
+ "MSTDOOM2",
+ "MSTDOOM3",
+ "GARDIAN2",
+ "PLUSPOWR",
+ "MINSPOWR",
+ "BLUDCURL",
+ "LORAGASP",
+ "POURH2O",
+ "AWHOA2",
+ "HWHOA1",
+ "CWHOA1",
+ "AFALL2",
+ "EMPTY",
+ "CFALL2",
+ "MFALL2",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "WRIT2",
+ "WRIT3",
+ "WRIT4",
+ "WRIT5",
+ "WRIT6",
+ "RUCKUS1",
+ "RUCKUS3",
+ "CHANT1",
+ "EMPTY",
+ "EMPTY",
+ "EMPTY",
+ "CHANT2",
+ "CHANT3"
+};
+
+static const StringListProvider kLoLIngameSfxFilesPC98Provider = { ARRAYSIZE(kLoLIngameSfxFilesPC98), kLoLIngameSfxFilesPC98 };
+
+static const byte kLoLIngameSfxIndexPC98[1000] = {
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x34, 0x00, 0x6F, 0x00, 0x7C, 0x00, 0x00, 0x00,
+ 0x7D, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00,
+ 0x7F, 0x00, 0x00, 0x00, 0x36, 0x00, 0x73, 0x00,
+ 0x35, 0x00, 0x9C, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0x80, 0x00, 0x73, 0x00, 0x81, 0x00, 0x73, 0x00,
+ 0x82, 0x00, 0x73, 0x00, 0x83, 0x00, 0x73, 0x00,
+ 0x84, 0x00, 0x73, 0x00, 0x85, 0x00, 0x73, 0x00,
+ 0x86, 0x00, 0x73, 0x00, 0xD7, 0x00, 0x76, 0x00,
+ 0x87, 0x00, 0x65, 0x00, 0x38, 0x00, 0x5F, 0x00,
+ 0x37, 0x00, 0x5F, 0x00, 0x32, 0x00, 0x0A, 0x00,
+ 0x33, 0x00, 0x64, 0x00, 0x39, 0x00, 0x65, 0x00,
+ 0x3A, 0x00, 0x0A, 0x00, 0x3B, 0x00, 0x14, 0x00,
+ 0x4E, 0x00, 0x65, 0x00, 0x7A, 0x00, 0x64, 0x00,
+ 0x7B, 0x00, 0x64, 0x00, 0x88, 0x00, 0x65, 0x00,
+ 0x3C, 0x00, 0x65, 0x00, 0x3D, 0x00, 0x64, 0x00,
+ 0x89, 0x00, 0x00, 0x00, 0x8E, 0x00, 0x14, 0x00,
+ 0x3E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
+ 0x40, 0x00, 0x65, 0x00, 0x41, 0x00, 0x00, 0x00,
+ 0xC9, 0x00, 0x72, 0x00, 0xCA, 0x00, 0x72, 0x00,
+ 0xCB, 0x00, 0x72, 0x00, 0xCC, 0x00, 0x74, 0x00,
+ 0xCD, 0x00, 0x74, 0x00, 0xCE, 0x00, 0x74, 0x00,
+ 0xCF, 0x00, 0x74, 0x00, 0xD0, 0x00, 0x73, 0x00,
+ 0xD1, 0x00, 0x73, 0x00, 0xD2, 0x00, 0x73, 0x00,
+ 0xD3, 0x00, 0x73, 0x00, 0xD4, 0x00, 0x72, 0x00,
+ 0xD5, 0x00, 0x72, 0x00, 0xD6, 0x00, 0x72, 0x00,
+ 0x42, 0x00, 0x6F, 0x00, 0x43, 0x00, 0x6F, 0x00,
+ 0x44, 0x00, 0x6F, 0x00, 0x45, 0x00, 0x6F, 0x00,
+ 0x46, 0x00, 0x6F, 0x00, 0x47, 0x00, 0x6F, 0x00,
+ 0x48, 0x00, 0x77, 0x00, 0x49, 0x00, 0x89, 0xFF,
+ 0x4F, 0x00, 0x89, 0xFF, 0x50, 0x00, 0x89, 0xFF,
+ 0xA0, 0x00, 0x8A, 0xFF, 0xA1, 0x00, 0x89, 0xFF,
+ 0xA2, 0x00, 0x89, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0xA3, 0x00, 0x89, 0xFF, 0xA4, 0x00, 0x89, 0xFF,
+ 0x4A, 0x00, 0x13, 0x00, 0x4B, 0x00, 0x13, 0x00,
+ 0x4C, 0x00, 0x32, 0x00, 0x4D, 0x00, 0x32, 0x00,
+ 0x5F, 0x00, 0x0A, 0x00, 0x51, 0x00, 0x00, 0x00,
+ 0x52, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, 0x00,
+ 0x53, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00,
+ 0x55, 0x00, 0x00, 0x00, 0x56, 0x00, 0x00, 0x00,
+ 0x57, 0x00, 0x00, 0x00, 0x58, 0x00, 0x77, 0x00,
+ 0x60, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x6A, 0x00,
+ 0x8A, 0x00, 0x6F, 0x00, 0x8B, 0x00, 0x6F, 0x00,
+ 0x8C, 0x00, 0x00, 0x00, 0x8D, 0x00, 0x00, 0x00,
+ 0x5A, 0x00, 0x77, 0x00, 0x5C, 0x00, 0x00, 0x00,
+ 0x5B, 0x00, 0x00, 0x00, 0x5E, 0x00, 0x6F, 0x00,
+ 0x61, 0x00, 0x76, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0x62, 0x00, 0x76, 0x00, 0x63, 0x00, 0x3C, 0x00,
+ 0x64, 0x00, 0x6D, 0x00, 0x65, 0x00, 0x00, 0x00,
+ 0x66, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00,
+ 0x68, 0x00, 0x00, 0x00, 0x69, 0x00, 0x00, 0x00,
+ 0x6A, 0x00, 0x00, 0x00, 0x6B, 0x00, 0x00, 0x00,
+ 0x6C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00,
+ 0x6E, 0x00, 0x00, 0x00, 0x6F, 0x00, 0x00, 0x00,
+ 0x70, 0x00, 0x88, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
+ 0x71, 0x00, 0x00, 0x00, 0x72, 0x00, 0x00, 0x00,
+ 0x73, 0x00, 0x74, 0x00, 0x74, 0x00, 0x00, 0x00,
+ 0x75, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00, 0x00,
+ 0x77, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00,
+ 0x79, 0x00, 0x77, 0x00, 0x90, 0x00, 0x00, 0x00,
+ 0x91, 0x00, 0x00, 0x00, 0x92, 0x00, 0x77, 0x00,
+ 0x93, 0x00, 0x1E, 0x00, 0x94, 0x00, 0x89, 0xFF,
+ 0x95, 0x00, 0x77, 0x00, 0x96, 0x00, 0x76, 0x00,
+ 0x97, 0x00, 0x72, 0x00, 0x98, 0x00, 0x00, 0x00,
+ 0x99, 0x00, 0x50, 0x00, 0x9A, 0x00, 0x78, 0x00,
+ 0x9B, 0x00, 0x64, 0x00, 0x9C, 0x00, 0x5A, 0x00,
+ 0x9D, 0x00, 0x64, 0x00, 0x9E, 0x00, 0x65, 0x00,
+ 0x9F, 0x00, 0x66, 0x00, 0xA5, 0x00, 0x89, 0xFF,
+ 0xA6, 0x00, 0x89, 0xFF, 0xA7, 0x00, 0x77, 0x00,
+ 0xA8, 0x00, 0x76, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xA9, 0x00, 0x77, 0x00, 0xAA, 0x00, 0x77, 0x00,
+ 0xAB, 0x00, 0x77, 0x00, 0xAC, 0x00, 0x77, 0x00,
+ 0xAD, 0x00, 0x77, 0x00, 0xAE, 0x00, 0x77, 0x00,
+ 0xAF, 0x00, 0x76, 0x00, 0xB0, 0x00, 0x77, 0x00,
+ 0xB1, 0x00, 0x64, 0x00, 0xB2, 0x00, 0x6F, 0x00,
+ 0xB3, 0x00, 0x6E, 0x00, 0xB4, 0x00, 0x6E, 0x00,
+ 0xB5, 0x00, 0x77, 0x00, 0xB6, 0x00, 0x77, 0x00,
+ 0xB7, 0x00, 0x77, 0x00, 0xB8, 0x00, 0x76, 0x00,
+ 0xB9, 0x00, 0x77, 0x00, 0xBA, 0x00, 0x77, 0x00,
+ 0xBB, 0x00, 0x77, 0x00, 0xBC, 0x00, 0x77, 0x00,
+ 0xBD, 0x00, 0x77, 0x00, 0xBE, 0x00, 0x77, 0x00,
+ 0xBF, 0x00, 0x77, 0x00, 0xC0, 0x00, 0x76, 0x00,
+ 0xC1, 0x00, 0x77, 0x00, 0xC2, 0x00, 0x77, 0x00,
+ 0xC3, 0x00, 0x77, 0x00, 0xC4, 0x00, 0x6E, 0x00,
+ 0xC5, 0x00, 0x6E, 0x00, 0xC6, 0x00, 0x7D, 0x00,
+ 0xC7, 0x00, 0x78, 0x00, 0xC8, 0x00, 0x78, 0x00,
+ 0xD8, 0x00, 0x77, 0x00, 0xD9, 0x00, 0x77, 0x00,
+ 0xDA, 0x00, 0x77, 0x00, 0xDB, 0x00, 0x77, 0x00,
+ 0xDC, 0x00, 0x77, 0x00, 0xDD, 0x00, 0x78, 0x00,
+ 0xDE, 0x00, 0x78, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
+ 0xE3, 0x00, 0x77, 0x00, 0xE4, 0x00, 0x77, 0x00,
+ 0xE0, 0x00, 0x1E, 0x00, 0xDF, 0x00, 0x77, 0x00,
+ 0xE1, 0x00, 0x05, 0x00, 0xE2, 0x00, 0x0A, 0x00,
+ 0x00, 0x00, 0x50, 0x00, 0x01, 0x00, 0x50, 0x00,
+ 0x02, 0x00, 0x50, 0x00, 0x03, 0x00, 0x50, 0x00,
+ 0x04, 0x00, 0x50, 0x00, 0x05, 0x00, 0x50, 0x00,
+ 0x06, 0x00, 0x50, 0x00, 0x07, 0x00, 0x50, 0x00,
+ 0x08, 0x00, 0x50, 0x00, 0x09, 0x00, 0x50, 0x00,
+ 0x0A, 0x00, 0x50, 0x00, 0x0B, 0x00, 0x50, 0x00,
+ 0x0C, 0x00, 0x50, 0x00, 0x0D, 0x00, 0x50, 0x00,
+ 0x0E, 0x00, 0x50, 0x00, 0x0F, 0x00, 0x50, 0x00,
+ 0x10, 0x00, 0x50, 0x00, 0x11, 0x00, 0x5A, 0x00,
+ 0x12, 0x00, 0x5A, 0x00, 0x13, 0x00, 0x5A, 0x00,
+ 0x14, 0x00, 0x5A, 0x00, 0x15, 0x00, 0x5A, 0x00,
+ 0x16, 0x00, 0x5A, 0x00, 0x17, 0x00, 0x5A, 0x00,
+ 0x18, 0x00, 0x5A, 0x00, 0x19, 0x00, 0x5A, 0x00,
+ 0x1A, 0x00, 0x5A, 0x00, 0x1B, 0x00, 0x5A, 0x00,
+ 0x1C, 0x00, 0x5A, 0x00, 0x1D, 0x00, 0x5A, 0x00,
+ 0x1E, 0x00, 0x5A, 0x00, 0x1F, 0x00, 0x5A, 0x00,
+ 0x20, 0x00, 0x5A, 0x00, 0x21, 0x00, 0x73, 0x00,
+ 0x22, 0x00, 0x73, 0x00, 0x23, 0x00, 0x73, 0x00,
+ 0x24, 0x00, 0x73, 0x00, 0x25, 0x00, 0x73, 0x00,
+ 0x26, 0x00, 0x73, 0x00, 0x27, 0x00, 0x73, 0x00,
+ 0x28, 0x00, 0x73, 0x00, 0x29, 0x00, 0x73, 0x00,
+ 0x2A, 0x00, 0x73, 0x00, 0x2B, 0x00, 0x50, 0x00,
+ 0x2C, 0x00, 0x5A, 0x00, 0x2D, 0x00, 0x5A, 0x00,
+ 0x2E, 0x00, 0x5A, 0x00, 0x2F, 0x00, 0x5A, 0x00,
+ 0x30, 0x00, 0x5A, 0x00, 0x31, 0x00, 0x5A, 0x00
+};
+
+static const ByteProvider kLoLIngameSfxIndexPC98Provider = { ARRAYSIZE(kLoLIngameSfxIndexPC98), kLoLIngameSfxIndexPC98 };
+
+static const SpellProperty kLoLSpellPropertiesPC98[10] = {
+ { 16436, { 5, 10, 15, 25 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0100 },
+ { 16437, { 5, 10, 25, 60 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0001 },
+ { 16438, { 8, 15, 30, 80 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0102 },
+ { 16440, { 20, 35, 65, 100 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0103 },
+ { 16441, { 30, 60, 90, 120 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0104 },
+ { 16442, { 30, 60, 90, 150 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0105 },
+ { 16439, { 25, 30, 50, 100 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0106 },
+ { 16443, { 3, 6, 12, 24 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0107 },
+ { 16975, { 15, 15, 15, 15 }, 0, 0, { 0, 0, 0, 0 }, 0, 0, 0x0108 },
+ { 16975, { 15, 15, 15, 15 }, 15, 0, { 0, 0, 0, 0 }, 0, 0, 0x0108 }
+};
+
+static const SpellPropertyProvider kLoLSpellPropertiesPC98Provider = { ARRAYSIZE(kLoLSpellPropertiesPC98), kLoLSpellPropertiesPC98 };
+
+static const byte kLoLGameShapeMapPC98[276] = {
+ 0x15, 0x54, 0x05, 0x35, 0x09, 0x36, 0x00, 0x34,
+ 0x00, 0x34, 0x00, 0x34, 0x00, 0x3A, 0x26, 0x3B,
+ 0x05, 0x35, 0x07, 0x37, 0x18, 0x3E, 0x0D, 0x3C,
+ 0x06, 0x40, 0x06, 0x3D, 0x01, 0x54, 0x01, 0x54,
+ 0x0A, 0x54, 0x0A, 0x54, 0x0A, 0x54, 0x04, 0x54,
+ 0x04, 0x54, 0x2D, 0x54, 0x2D, 0x54, 0x0B, 0x39,
+ 0x24, 0x54, 0x03, 0x38, 0x00, 0x3A, 0x1E, 0x3C,
+ 0x1E, 0x3C, 0x1B, 0x54, 0x14, 0x54, 0x29, 0x54,
+ 0x02, 0x54, 0x0C, 0x54, 0x22, 0x54, 0x21, 0x3F,
+ 0x0D, 0x3C, 0x25, 0x54, 0x1A, 0x3F, 0x04, 0x54,
+ 0x30, 0x54, 0x31, 0x54, 0x32, 0x54, 0x32, 0x54,
+ 0x00, 0x34, 0x00, 0x34, 0x00, 0x34, 0x00, 0x34,
+ 0x17, 0x54, 0x17, 0x54, 0x0E, 0x54, 0x0E, 0x54,
+ 0x0E, 0x54, 0x26, 0x3B, 0x2C, 0x54, 0x21, 0x3F,
+ 0x07, 0x37, 0x27, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x22, 0x54, 0x22, 0x54,
+ 0x16, 0x54, 0x2D, 0x54, 0x3B, 0x54, 0x3B, 0x54,
+ 0x3A, 0x54, 0x17, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x17, 0x54, 0x0A, 0x54, 0x0A, 0x54, 0x0A, 0x54,
+ 0x1F, 0x54, 0x17, 0x54, 0x27, 0x54, 0x1B, 0x54,
+ 0x1E, 0x3C, 0x2A, 0x54, 0x2F, 0x54, 0x2F, 0x54,
+ 0x2F, 0x54, 0x2F, 0x54, 0x2F, 0x54, 0x2F, 0x54,
+ 0x2C, 0x54, 0x2C, 0x54, 0x2C, 0x54, 0x2C, 0x54,
+ 0x34, 0x54, 0x0F, 0x54, 0x35, 0x41, 0x1B, 0x54,
+ 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x2B, 0x54,
+ 0x1D, 0x54, 0x1D, 0x54, 0x28, 0x54, 0x28, 0x54,
+ 0x28, 0x54, 0x28, 0x54, 0x01, 0x54, 0x14, 0x54,
+ 0x14, 0x54, 0x14, 0x54, 0x14, 0x54, 0x1B, 0x54,
+ 0x27, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x36, 0x54, 0x37, 0x54, 0x38, 0x54,
+ 0x39, 0x54, 0x1B, 0x54, 0x1B, 0x54, 0x1B, 0x54,
+ 0x1B, 0x54, 0x27, 0x54, 0x2E, 0x54, 0x2E, 0x54,
+ 0x2E, 0x54, 0x2E, 0x54, 0x17, 0x54, 0x01, 0x54,
+ 0x1C, 0x54, 0x1C, 0x54
+};
+
+static const ByteProvider kLoLGameShapeMapPC98Provider = { ARRAYSIZE(kLoLGameShapeMapPC98), kLoLGameShapeMapPC98 };
+
+static const byte kLoLSceneItemOffsPC98[8] = {
+ 0x00, 0xFE, 0x01, 0xFF, 0x02, 0x00, 0x01, 0xFF
+};
+
+static const ByteProvider kLoLSceneItemOffsPC98Provider = { ARRAYSIZE(kLoLSceneItemOffsPC98), kLoLSceneItemOffsPC98 };
+
+static const byte kLoLCharInvIndexPC98[5] = {
+ 0x00, 0x00, 0x03, 0x01, 0x02
+};
+
+static const ByteProvider kLoLCharInvIndexPC98Provider = { ARRAYSIZE(kLoLCharInvIndexPC98), kLoLCharInvIndexPC98 };
+
+static const byte kLoLCharInvDefsPC98[88] = {
+ 0x05, 0x34, 0x50, 0x34, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x05, 0x04, 0x05, 0x1C, 0x50, 0x04, 0x50, 0x1C,
+ 0x05, 0x5D, 0x0F, 0x4E, 0x50, 0x4E, 0x05, 0x19,
+ 0x50, 0x19, 0x05, 0x49, 0x50, 0x49, 0x05, 0x01,
+ 0x05, 0x31, 0x50, 0x01, 0x50, 0x31, 0x05, 0x61,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x34, 0x50, 0x34,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x04, 0x05, 0x1C,
+ 0x50, 0x04, 0x50, 0x1C, 0x05, 0x5D, 0x0F, 0x4E,
+ 0x50, 0x4E, 0x05, 0x34, 0x50, 0x34, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x05, 0x04, 0x05, 0x1C, 0x50, 0x04,
+ 0x50, 0x1C, 0xFF, 0xFF, 0x0F, 0x4E, 0x50, 0x4E
+};
+
+static const ByteProvider kLoLCharInvDefsPC98Provider = { ARRAYSIZE(kLoLCharInvDefsPC98), kLoLCharInvDefsPC98 };
+
+static const uint16 kLoLCharDefsManPC98[9] = {
+ 0x0100, 0x0100, 0x0100, 0x0032, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsManPC98Provider = { ARRAYSIZE(kLoLCharDefsManPC98), kLoLCharDefsManPC98 };
+
+static const uint16 kLoLCharDefsWomanPC98[9] = {
+ 0x0100, 0x0100, 0x0100, 0x0032, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsWomanPC98Provider = { ARRAYSIZE(kLoLCharDefsWomanPC98), kLoLCharDefsWomanPC98 };
+
+static const uint16 kLoLCharDefsKieranPC98[9] = {
+ 0x0180, 0x0080, 0x00C0, 0x0032, 0x0200, 0x00A6, 0x0100, 0x0140,
+ 0x0006
+};
+
+static const Uint16Provider kLoLCharDefsKieranPC98Provider = { ARRAYSIZE(kLoLCharDefsKieranPC98), kLoLCharDefsKieranPC98 };
+
+static const uint16 kLoLCharDefsAkshelPC98[9] = {
+ 0x00C0, 0x00C0, 0x0140, 0x0032, 0x0100, 0x0180, 0x0180, 0x0100,
+ 0x0004
+};
+
+static const Uint16Provider kLoLCharDefsAkshelPC98Provider = { ARRAYSIZE(kLoLCharDefsAkshelPC98), kLoLCharDefsAkshelPC98 };
+
+static const uint32 kLoLExpRequirementsPC98[11] = {
+ 0x00000000, 0x000001F4, 0x000005DC, 0x00001388, 0x000061A8, 0x0000C350, 0x00013880, 0x0001D4C0,
+ 0x0002BF20, 0x00041EB0, 0x7FFFFFFF
+};
+
+static const Uint32Provider kLoLExpRequirementsPC98Provider = { ARRAYSIZE(kLoLExpRequirementsPC98), kLoLExpRequirementsPC98 };
+
+static const uint16 kLoLMonsterModifiers1PC98[3] = {
+ 0x00C0, 0x0100, 0x0180
+};
+
+static const Uint16Provider kLoLMonsterModifiers1PC98Provider = { ARRAYSIZE(kLoLMonsterModifiers1PC98), kLoLMonsterModifiers1PC98 };
+
+static const uint16 kLoLMonsterModifiers2PC98[3] = {
+ 0x0100, 0x0100, 0x00C0
+};
+
+static const Uint16Provider kLoLMonsterModifiers2PC98Provider = { ARRAYSIZE(kLoLMonsterModifiers2PC98), kLoLMonsterModifiers2PC98 };
+
+static const uint16 kLoLMonsterModifiers3PC98[3] = {
+ 0x0140, 0x0100, 0x0080
+};
+
+static const Uint16Provider kLoLMonsterModifiers3PC98Provider = { ARRAYSIZE(kLoLMonsterModifiers3PC98), kLoLMonsterModifiers3PC98 };
+
+static const byte kLoLMonsterShiftOffsetsPC98[32] = {
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0xFF, 0x00, 0xFF,
+ 0x00, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFF, 0x00,
+ 0xFF, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x00, 0x01, 0xFF, 0x00, 0x00
+};
+
+static const ByteProvider kLoLMonsterShiftOffsetsPC98Provider = { ARRAYSIZE(kLoLMonsterShiftOffsetsPC98), kLoLMonsterShiftOffsetsPC98 };
+
+static const byte kLoLMonsterDirFlagsPC98[16] = {
+ 0x08, 0x14, 0x00, 0x04, 0x04, 0x08, 0x14, 0x00,
+ 0x00, 0x04, 0x08, 0x14, 0x14, 0x00, 0x04, 0x08
+};
+
+static const ByteProvider kLoLMonsterDirFlagsPC98Provider = { ARRAYSIZE(kLoLMonsterDirFlagsPC98), kLoLMonsterDirFlagsPC98 };
+
+static const byte kLoLMonsterScaleYPC98[30] = {
+ 0x7C, 0x78, 0x74, 0x70, 0x6C, 0x68, 0x65, 0x62,
+ 0x5F, 0x5C, 0x59, 0x56, 0x53, 0x50, 0x4D, 0x4A,
+ 0x48, 0x46, 0x44, 0x43, 0x41, 0x40, 0x3E, 0x3D,
+ 0x3C, 0x3B, 0x3A, 0x39, 0x38, 0x38
+};
+
+static const ByteProvider kLoLMonsterScaleYPC98Provider = { ARRAYSIZE(kLoLMonsterScaleYPC98), kLoLMonsterScaleYPC98 };
+
+static const byte kLoLMonsterScaleXPC98[29] = {
+ 0x98, 0x98, 0x90, 0x88, 0x80, 0x76, 0x6E, 0x68,
+ 0x62, 0x5C, 0x58, 0x54, 0x50, 0x4A, 0x44, 0x40,
+ 0x3C, 0x38, 0x36, 0x32, 0x30, 0x2C, 0x2A, 0x28,
+ 0x26, 0x24, 0x22, 0x20, 0x20
+};
+
+static const ByteProvider kLoLMonsterScaleXPC98Provider = { ARRAYSIZE(kLoLMonsterScaleXPC98), kLoLMonsterScaleXPC98 };
+
+static const uint16 kLoLMonsterScaleWHPC98[65] = {
+ 0x0041, 0x0045, 0x0049, 0x004D, 0x0051, 0x0055, 0x0059, 0x005D,
+ 0x0062, 0x0066, 0x006A, 0x006E, 0x0072, 0x0076, 0x007A, 0x007E,
+ 0x0082, 0x0086, 0x008A, 0x008E, 0x0092, 0x0096, 0x009A, 0x009E,
+ 0x00A3, 0x00A7, 0x00AB, 0x00AF, 0x00B3, 0x00B7, 0x00BB, 0x00BF,
+ 0x00C3, 0x00C7, 0x00CB, 0x00CF, 0x00D3, 0x00D7, 0x00DB, 0x00DF,
+ 0x00E4, 0x00E8, 0x00EC, 0x00F0, 0x00F4, 0x00F8, 0x00FC, 0x0100,
+ 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100, 0x0100,
+ 0x0100
+};
+
+static const Uint16Provider kLoLMonsterScaleWHPC98Provider = { ARRAYSIZE(kLoLMonsterScaleWHPC98), kLoLMonsterScaleWHPC98 };
+
+static const FlyingObjectShape kLoLFlyingObjectShpPC98[13] = {
+ { 0, 0, 1, 0x00, 0x40, },
+ { 2, 2, 3, 0x00, 0x00, },
+ { 4, 4, 4, 0x00, 0x00, },
+ { 5, 5, 5, 0x20, 0x00, },
+ { 6, 6, 6, 0x20, 0x00, },
+ { 7, 7, 7, 0x20, 0x00, },
+ { 9, 8, 15, 0x00, 0x00, },
+ { 11, 10, 12, 0x00, 0x00, },
+ { 12, 12, 12, 0x20, 0x00, },
+ { 14, 13, 15, 0x00, 0x00, },
+ { 16, 16, 16, 0x00, 0x00, },
+ { 17, 17, 17, 0x20, 0x00, },
+ { 18, 18, 18, 0x00, 0x00, }
+};
+
+static const FlyingObjectShapeProvider kLoLFlyingObjectShpPC98Provider = { ARRAYSIZE(kLoLFlyingObjectShpPC98), kLoLFlyingObjectShpPC98 };
+
+static const uint16 kLoLInventoryDescPC98[11] = {
+ 0x417A, 0x417B, 0x417A, 0x417B, 0x417C, 0x417D, 0x417E, 0x417F,
+ 0x4180, 0x4181, 0x4181
+};
+
+static const Uint16Provider kLoLInventoryDescPC98Provider = { ARRAYSIZE(kLoLInventoryDescPC98), kLoLInventoryDescPC98 };
+
+static const char *const kLoLLevelShpListPC98[12] = {
+ "KEEP.SHP",
+ "FOREST1.SHP",
+ "MANOR.SHP",
+ "CAVE1.SHP",
+ "SWAMP.SHP",
+ "URBISH.SHP",
+ "MINE1.SHP",
+ "TOWER1.SHP",
+ "YVEL1.SHP",
+ "CATWALK.SHP",
+ "RUIN.SHP",
+ "CIMMERIA.SHP"
+};
+
+static const StringListProvider kLoLLevelShpListPC98Provider = { ARRAYSIZE(kLoLLevelShpListPC98), kLoLLevelShpListPC98 };
+
+static const char *const kLoLLevelDatListPC98[12] = {
+ "KEEP.DAT",
+ "FOREST1.DAT",
+ "MANOR.DAT",
+ "CAVE1.DAT",
+ "SWAMP.DAT",
+ "URBISH.DAT",
+ "MINE1.DAT",
+ "TOWER1.DAT",
+ "YVEL1.DAT",
+ "CATWALK.DAT",
+ "RUIN.DAT",
+ "CIMMERIA.DAT"
+};
+
+static const StringListProvider kLoLLevelDatListPC98Provider = { ARRAYSIZE(kLoLLevelDatListPC98), kLoLLevelDatListPC98 };
+
+static const CompassDef kLoLCompassDefsPC98[32] = {
+ { 0, 3, -3, 0x00 },
+ { 1, 3, -3, 0x00 },
+ { 2, 3, -3, 0x00 },
+ { 3, 5, -3, 0x00 },
+ { 4, 5, -3, 0x00 },
+ { 5, 6, -3, 0x00 },
+ { 6, 6, -3, 0x00 },
+ { 7, 6, -3, 0x00 },
+ { 8, 6, -3, 0x00 },
+ { 7, 6, 4, 0x02 },
+ { 6, 6, 4, 0x02 },
+ { 5, 6, 4, 0x02 },
+ { 4, 5, 4, 0x02 },
+ { 3, 5, 4, 0x02 },
+ { 2, 3, 4, 0x02 },
+ { 1, 3, 4, 0x02 },
+ { 0, 3, 4, 0x02 },
+ { 1, 2, 4, 0x03 },
+ { 2, 2, 4, 0x03 },
+ { 3, 0, 4, 0x03 },
+ { 4, 0, 4, 0x03 },
+ { 5, -1, 4, 0x03 },
+ { 6, -1, 4, 0x03 },
+ { 7, -1, 4, 0x03 },
+ { 8, -1, -3, 0x01 },
+ { 7, -1, -3, 0x01 },
+ { 6, -1, -3, 0x01 },
+ { 5, -1, -3, 0x01 },
+ { 4, 0, -3, 0x01 },
+ { 3, 0, -3, 0x01 },
+ { 2, 2, -3, 0x01 },
+ { 1, 2, -3, 0x01 }
+};
+
+static const CompassDefProvider kLoLCompassDefsPC98Provider = { ARRAYSIZE(kLoLCompassDefsPC98), kLoLCompassDefsPC98 };
+
+static const byte kLoLStashSetupPC98[12] = {
+ 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x00, 0x01, 0x01
+};
+
+static const ByteProvider kLoLStashSetupPC98Provider = { ARRAYSIZE(kLoLStashSetupPC98), kLoLStashSetupPC98 };
+
+static const byte kLoLDscWallsPC98[36] = {
+ 0xFF, 0xFF, 0x02, 0x01, 0x02, 0x01, 0x02, 0xFF,
+ 0x02, 0x03, 0x02, 0x03, 0xFF, 0xFF, 0x02, 0x01,
+ 0x02, 0x01, 0x02, 0xFF, 0x02, 0x03, 0x02, 0x03,
+ 0x02, 0x01, 0x02, 0xFF, 0x02, 0x03, 0xFF, 0x01,
+ 0x02, 0xFF, 0xFF, 0x03
+};
+
+static const ByteProvider kLoLDscWallsPC98Provider = { ARRAYSIZE(kLoLDscWallsPC98), kLoLDscWallsPC98 };
+
+static const byte kLoLDscShapeIndexPC98[36] = {
+ 0x03, 0x09, 0x03, 0x08, 0x03, 0x07, 0x03, 0x03,
+ 0x03, 0xF9, 0x03, 0xF8, 0x03, 0xF7, 0x02, 0x09,
+ 0x02, 0x06, 0x02, 0x02, 0x02, 0xFA, 0x02, 0xF7,
+ 0x01, 0x05, 0x01, 0x01, 0x01, 0xFB, 0x00, 0x04,
+ 0x00, 0x00, 0x00, 0xFC
+};
+
+static const ByteProvider kLoLDscShapeIndexPC98Provider = { ARRAYSIZE(kLoLDscShapeIndexPC98), kLoLDscShapeIndexPC98 };
+
+static const byte kLoLDscOvlMapPC98[10] = {
+ 0x00, 0x01, 0x01, 0x01, 0x04, 0x05, 0x05, 0x05,
+ 0x05, 0x04
+};
+
+static const ByteProvider kLoLDscOvlMapPC98Provider = { ARRAYSIZE(kLoLDscOvlMapPC98), kLoLDscOvlMapPC98 };
+
+static const uint16 kLoLDscScaleWidthDataPC98[36] = {
+ 0x0060, 0x0000, 0x0060, 0x00CE, 0x0060, 0x0055, 0x0060, 0x0000,
+ 0x0060, 0x0055, 0x0060, 0x00CE, 0x0060, 0x0000, 0x00A0, 0x00AE,
+ 0x00A0, 0x00AA, 0x00A0, 0x0000, 0x00A0, 0x00AA, 0x00A0, 0x00AE,
+ 0x0100, 0x0100, 0x0100, 0x0000, 0x0100, 0x0100, 0x0000, 0x0100,
+ 0x0100, 0x0000, 0x0000, 0x0100
+};
+
+static const Uint16Provider kLoLDscScaleWidthDataPC98Provider = { ARRAYSIZE(kLoLDscScaleWidthDataPC98), kLoLDscScaleWidthDataPC98 };
+
+static const uint16 kLoLDscScaleHeightDataPC98[36] = {
+ 0x006A, 0x0000, 0x006A, 0x006A, 0x006A, 0x006A, 0x006A, 0x0000,
+ 0x006A, 0x006A, 0x006A, 0x006A, 0x006A, 0x0000, 0x00AA, 0x0056,
+ 0x00AA, 0x00AA, 0x00AA, 0x0000, 0x00AA, 0x00AA, 0x00AA, 0x0056,
+ 0x0100, 0x0100, 0x0100, 0x0000, 0x0100, 0x0100, 0x0000, 0x0100,
+ 0x0100, 0x0000, 0x0000, 0x0100
+};
+
+static const Uint16Provider kLoLDscScaleHeightDataPC98Provider = { ARRAYSIZE(kLoLDscScaleHeightDataPC98), kLoLDscScaleHeightDataPC98 };
+
+static const uint16 kLoLDscXPC98[36] = {
+ 0xFFB0, 0xFFE0, 0xFFE0, 0x0010, 0x0010, 0x0040, 0x0040, 0x0000,
+ 0x0070, 0x0070, 0x00A0, 0x00A0, 0x00D0, 0x00D0, 0xFF86, 0x0000,
+ 0xFFE0, 0x0030, 0x0030, 0x0000, 0x0080, 0x0080, 0x00D0, 0x00B0,
+ 0xFF98, 0x0018, 0x0018, 0x0000, 0x0098, 0x0098, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x00B0, 0x00B0
+};
+
+static const Uint16Provider kLoLDscXPC98Provider = { ARRAYSIZE(kLoLDscXPC98), kLoLDscXPC98 };
+
+static const byte kLoLBaseDscYPC98[36] = {
+ 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B,
+ 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x14, 0x1C,
+ 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x1C,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLBaseDscYPC98Provider = { ARRAYSIZE(kLoLBaseDscYPC98), kLoLBaseDscYPC98 };
+
+static const byte kLoLDscTileIndexPC98[18] = {
+ 0x00, 0x06, 0x01, 0x05, 0x02, 0x04, 0x03, 0x07,
+ 0x0B, 0x08, 0x0A, 0x09, 0x0C, 0x0E, 0x0D, 0x0F,
+ 0x11, 0x10
+};
+
+static const ByteProvider kLoLDscTileIndexPC98Provider = { ARRAYSIZE(kLoLDscTileIndexPC98), kLoLDscTileIndexPC98 };
+
+static const byte kLoLDscUnk2PC98[23] = {
+ 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03,
+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x12, 0x12, 0x12, 0x12, 0x12
+};
+
+static const ByteProvider kLoLDscUnk2PC98Provider = { ARRAYSIZE(kLoLDscUnk2PC98), kLoLDscUnk2PC98 };
+
+static const byte kLoLDscDoorShapeIndexPC98[23] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01
+};
+
+static const ByteProvider kLoLDscDoorShapeIndexPC98Provider = { ARRAYSIZE(kLoLDscDoorShapeIndexPC98), kLoLDscDoorShapeIndexPC98 };
+
+static const byte kLoLDscDimData1PC98[324] = {
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD8, 0xD7, 0xD8, 0xD8, 0x02, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xFE, 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0x03,
+ 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xFE, 0xD8, 0x08,
+ 0xD8, 0xD8, 0xD8, 0xFE, 0xF8, 0x06, 0xD8, 0xD8,
+ 0xFA, 0x03, 0xD8, 0xFD, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xD8, 0xFA, 0xD7, 0x10, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xF2, 0xD8, 0x14, 0xD8, 0xD8,
+ 0xD8, 0xF0, 0x0E, 0x14, 0xD8, 0xED, 0x10, 0xD8,
+ 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8, 0xEC, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0x14, 0xD8, 0xED,
+ 0xD7, 0xD8, 0xD8, 0x13, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7, 0xD7,
+ 0xD7, 0xD7, 0xD7, 0xD7, 0xD8, 0xD7, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD7, 0xD8,
+ 0xD8, 0xD8, 0xD7, 0xD8, 0xD8, 0xD7, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0x06, 0xD8, 0xD8, 0xFA, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xFA, 0xD8, 0x10, 0xD8, 0xFA, 0xD7,
+ 0x10, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xF0, 0xD8, 0xD8,
+ 0xD8, 0xED, 0x10, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD7, 0xD8, 0xD8, 0xD8, 0xD7, 0xD8, 0xD8, 0xD7,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0x03, 0xD8, 0xFD,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xFD, 0xD8,
+ 0x13, 0xFD, 0xD8, 0x13, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xED, 0xD8, 0xD8, 0xD8, 0x13, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8,
+ 0xD8, 0xD8, 0xD8, 0xD8
+};
+
+static const ByteProvider kLoLDscDimData1PC98Provider = { ARRAYSIZE(kLoLDscDimData1PC98), kLoLDscDimData1PC98 };
+
+static const byte kLoLDscDimData2PC98[648] = {
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x02, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x04, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x16, 0x00, 0x00, 0x03,
+ 0x00, 0x16, 0x03, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x02, 0x16, 0x00, 0x16, 0x00, 0x08,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x02,
+ 0x16, 0x00, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x08, 0x0E,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x06, 0x10,
+ 0x00, 0x13, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x0E, 0x16,
+ 0x00, 0x16, 0x00, 0x14, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x16, 0x00, 0x00, 0x14,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x14, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x12, 0x16, 0x14, 0x16, 0x00, 0x16, 0x13, 0x16,
+ 0x16, 0x00, 0x00, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x00, 0x16, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x06, 0x00, 0x16, 0x00, 0x16,
+ 0x06, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x06, 0x16, 0x00, 0x16,
+ 0x00, 0x10, 0x00, 0x16, 0x03, 0x16, 0x07, 0x0F,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x10, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x10, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00,
+ 0x16, 0x00, 0x16, 0x00, 0x00, 0x16, 0x16, 0x00,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x03, 0x00, 0x16, 0x03, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x03, 0x16, 0x00, 0x16,
+ 0x00, 0x13, 0x03, 0x16, 0x00, 0x16, 0x00, 0x13,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x13, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x13, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16,
+ 0x00, 0x16, 0x00, 0x16, 0x00, 0x16, 0x00, 0x16
+};
+
+static const ByteProvider kLoLDscDimData2PC98Provider = { ARRAYSIZE(kLoLDscDimData2PC98), kLoLDscDimData2PC98 };
+
+static const byte kLoLDscBlockMapPC98[12] = {
+ 0x02, 0x03, 0x00, 0x01, 0x01, 0x02, 0x03, 0x00,
+ 0x03, 0x00, 0x01, 0x02
+};
+
+static const ByteProvider kLoLDscBlockMapPC98Provider = { ARRAYSIZE(kLoLDscBlockMapPC98), kLoLDscBlockMapPC98 };
+
+static const byte kLoLDscDimMapPC98[18] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x03,
+ 0x03, 0x03
+};
+
+static const ByteProvider kLoLDscDimMapPC98Provider = { ARRAYSIZE(kLoLDscDimMapPC98), kLoLDscDimMapPC98 };
+
+static const byte kLoLDscOvlIndexPC98[20] = {
+ 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x03,
+ 0x03, 0x03, 0x04, 0x04, 0x05, 0x05, 0x05, 0x06,
+ 0x06, 0x07, 0x07, 0x07
+};
+
+static const ByteProvider kLoLDscOvlIndexPC98Provider = { ARRAYSIZE(kLoLDscOvlIndexPC98), kLoLDscOvlIndexPC98 };
+
+static const byte kLoLDscBlockIndexPC98[72] = {
+ 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xBE,
+ 0xBF, 0xC0, 0xC1, 0xC2, 0xDF, 0xE0, 0xE1, 0xFF,
+ 0x00, 0x01, 0xA3, 0xC3, 0xE3, 0x03, 0x23, 0x43,
+ 0x63, 0xC2, 0xE2, 0x02, 0x22, 0x42, 0xE1, 0x01,
+ 0x21, 0xE0, 0x00, 0x20, 0x63, 0x62, 0x61, 0x60,
+ 0x5F, 0x5E, 0x5D, 0x42, 0x41, 0x40, 0x3F, 0x3E,
+ 0x21, 0x20, 0x1F, 0x01, 0x00, 0xFF, 0x5D, 0x3D,
+ 0x1D, 0xFD, 0xDD, 0xBD, 0x9D, 0x3E, 0x1E, 0xFE,
+ 0xDE, 0xBE, 0x1F, 0xFF, 0xDF, 0x20, 0x00, 0xE0
+};
+
+static const ByteProvider kLoLDscBlockIndexPC98Provider = { ARRAYSIZE(kLoLDscBlockIndexPC98), kLoLDscBlockIndexPC98 };
+
+static const byte kLoLDscDoorY2PC98[128] = {
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,
+ 0x10, 0x11, 0x12, 0x13, 0x14, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x0D, 0x08, 0x03, 0x12, 0x0E, 0x09, 0x04, 0x00,
+ 0x13, 0x0F, 0x0A, 0x05, 0x01, 0x14, 0x10, 0x0B,
+ 0x06, 0x02, 0x11, 0x0C, 0x07, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x14, 0x13, 0x12, 0x11, 0x10, 0x0F, 0x0E, 0x0D,
+ 0x0C, 0x0B, 0x0A, 0x09, 0x08, 0x07, 0x06, 0x05,
+ 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x07, 0x0C, 0x11, 0x02, 0x06, 0x0B, 0x10, 0x14,
+ 0x01, 0x05, 0x0A, 0x0F, 0x13, 0x00, 0x04, 0x09,
+ 0x0E, 0x12, 0x03, 0x08, 0x0D, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider kLoLDscDoorY2PC98Provider = { ARRAYSIZE(kLoLDscDoorY2PC98), kLoLDscDoorY2PC98 };
+
+static const byte kLoLDscDoorFrameY1PC98[4] = {
+ 0x1E, 0x18, 0x10, 0x00
+};
+
+static const ByteProvider kLoLDscDoorFrameY1PC98Provider = { ARRAYSIZE(kLoLDscDoorFrameY1PC98), kLoLDscDoorFrameY1PC98 };
+
+static const byte kLoLDscDoorFrameY2PC98[4] = {
+ 0x3B, 0x47, 0x56, 0x78
+};
+
+static const ByteProvider kLoLDscDoorFrameY2PC98Provider = { ARRAYSIZE(kLoLDscDoorFrameY2PC98), kLoLDscDoorFrameY2PC98 };
+
+static const uint16 kLoLDscDoorScalePC98[8] = {
+ 0x0075, 0x006A, 0x00B9, 0x00B2, 0x0100, 0x0100, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorScalePC98Provider = { ARRAYSIZE(kLoLDscDoorScalePC98), kLoLDscDoorScalePC98 };
+
+static const uint16 kLoLDscDoor4PC98[4] = {
+ 0x0005, 0x0002, 0x0008, 0x787C
+};
+
+static const Uint16Provider kLoLDscDoor4PC98Provider = { ARRAYSIZE(kLoLDscDoor4PC98), kLoLDscDoor4PC98 };
+
+static const uint16 kLoLDscDoorXPC98[576] = {
+ 0xFF98, 0xFFA0, 0xFFA8, 0xFF90, 0xFF98, 0xFFA0, 0xFFA8, 0xFFB0,
+ 0xFF74, 0xFF7E, 0xFF88, 0xFF92, 0xFF9C, 0xFF74, 0xFF7E, 0xFF88,
+ 0xFF92, 0xFF9C, 0xFF64, 0xFF70, 0xFF7C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFB8, 0xFFC0, 0xFFC8, 0xFFB0, 0xFFB8, 0xFFC0, 0xFFC8, 0xFFD0,
+ 0xFF9C, 0xFFA6, 0xFFB0, 0xFFBA, 0xFFC4, 0xFF9C, 0xFFA6, 0xFFB0,
+ 0xFFBA, 0xFFC4, 0xFF94, 0xFFA0, 0xFFAC, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD8, 0xFFE0, 0xFFE8, 0xFFD0, 0xFFD8, 0xFFE0, 0xFFE8, 0xFFF0,
+ 0xFFC4, 0xFFCE, 0xFFD8, 0xFFE2, 0xFFEC, 0xFFC4, 0xFFCE, 0xFFD8,
+ 0xFFE2, 0xFFEC, 0xFFC4, 0xFFD0, 0xFFDC, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0x0000, 0x0008, 0xFFF0, 0xFFF8, 0x0000, 0x0008, 0x0010,
+ 0xFFEC, 0xFFF6, 0x0000, 0x000A, 0x0014, 0xFFEC, 0xFFF6, 0x0000,
+ 0x000A, 0x0014, 0xFFF4, 0x0000, 0x000C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0018, 0x0020, 0x0028, 0x0010, 0x0018, 0x0020, 0x0028, 0x0030,
+ 0x0014, 0x001E, 0x0028, 0x0032, 0x003C, 0x0014, 0x001E, 0x0028,
+ 0x0032, 0x003C, 0x0024, 0x0030, 0x003C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0038, 0x0040, 0x0048, 0x0030, 0x0038, 0x0040, 0x0048, 0x0050,
+ 0x003C, 0x0046, 0x0050, 0x005A, 0x0064, 0x003C, 0x0046, 0x0050,
+ 0x005A, 0x0064, 0x0054, 0x0060, 0x006C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0058, 0x0060, 0x0068, 0x0050, 0x0058, 0x0060, 0x0068, 0x0070,
+ 0x0064, 0x006E, 0x0078, 0x0082, 0x008C, 0x0064, 0x006E, 0x0078,
+ 0x0082, 0x008C, 0x0084, 0x0090, 0x009C, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF94, 0xFFA0, 0xFFAC, 0xFF7E, 0xFF8B, 0xFF98, 0xFFA5, 0xFFB2,
+ 0xFF6C, 0xFF7B, 0xFF8A, 0xFF99, 0xFFA7, 0xFF60, 0xFF70, 0xFF80,
+ 0xFF90, 0xFFA0, 0xFF4C, 0xFF60, 0xFF74, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC4, 0xFFD0, 0xFFDC, 0xFFB2, 0xFFBF, 0xFFCC, 0xFFD9, 0xFFE6,
+ 0xFFA7, 0xFFB6, 0xFFC5, 0xFFD4, 0xFFE2, 0xFFA0, 0xFFB0, 0xFFC0,
+ 0xFFD0, 0xFFE0, 0xFF9C, 0xFFB0, 0xFFC4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF4, 0x0000, 0x000C, 0xFFE6, 0xFFF3, 0x0000, 0x000D, 0x001A,
+ 0xFFE2, 0xFFF1, 0x0000, 0x000F, 0x001E, 0xFFE0, 0xFFF0, 0x0000,
+ 0x0010, 0x0020, 0xFFEC, 0x0000, 0x0014, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0024, 0x0030, 0x003C, 0x001A, 0x0027, 0x0034, 0x0041, 0x004E,
+ 0x001E, 0x002C, 0x003B, 0x004A, 0x0059, 0x0020, 0x0030, 0x0040,
+ 0x0050, 0x0060, 0x003C, 0x0050, 0x0064, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0054, 0x0060, 0x006C, 0x004E, 0x005B, 0x0068, 0x0075, 0x0082,
+ 0x0059, 0x0067, 0x0076, 0x0085, 0x0094, 0x0060, 0x0070, 0x0080,
+ 0x0090, 0x00A0, 0x008C, 0x00A0, 0x00B4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF9C, 0xFFB0, 0xFFC4, 0xFF7C, 0xFF92, 0xFFA8, 0xFFBE, 0xFFD4,
+ 0xFF6D, 0xFF85, 0xFF9E, 0xFFB6, 0xFFCF, 0xFF5E, 0xFF79, 0xFF94,
+ 0xFFAF, 0xFFCA, 0xFF60, 0xFF80, 0xFFA0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFEC, 0x0000, 0x0014, 0xFFD4, 0xFFEA, 0x0000, 0x0016, 0x002C,
+ 0xFFCF, 0xFFE7, 0x0000, 0x0019, 0x0031, 0xFFCA, 0xFFE5, 0x0000,
+ 0x001B, 0x0036, 0xFFE0, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x003C, 0x0050, 0x0064, 0x002C, 0x0042, 0x0058, 0x006E, 0x0084,
+ 0x0031, 0x004A, 0x0062, 0x007B, 0x0093, 0x0036, 0x0051, 0x006C,
+ 0x0087, 0x00A2, 0x0060, 0x0080, 0x00A0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFF60, 0xFF80, 0xFFA0, 0xFF1C, 0xFF42, 0xFF68, 0xFF8E, 0xFFB4,
+ 0xFF40, 0xFF60, 0xFF80, 0xFFA0, 0xFFC0, 0xFF1C, 0xFF42, 0xFF68,
+ 0xFF8E, 0xFFB4, 0xFF60, 0xFF80, 0xFFA0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFE0, 0x0000, 0x0020, 0xFFB4, 0xFFDA, 0x0000, 0x0026, 0x004C,
+ 0xFFC0, 0xFFE0, 0x0000, 0x0020, 0x0040, 0xFFB4, 0xFFDA, 0x0000,
+ 0x0026, 0x004C, 0xFFE0, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0060, 0x0080, 0x00A0, 0x004C, 0x0072, 0x0098, 0x00BE, 0x00E4,
+ 0x0040, 0x0060, 0x0080, 0x00A0, 0x00C0, 0x004C, 0x0072, 0x0098,
+ 0x00BE, 0x00E4, 0x0060, 0x0080, 0x00A0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorXPC98Provider = { ARRAYSIZE(kLoLDscDoorXPC98), kLoLDscDoorXPC98 };
+
+static const uint16 kLoLDscDoorYPC98[576] = {
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFBF, 0xFFBF, 0xFFBF, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1, 0xFFC1,
+ 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC3, 0xFFC5, 0xFFC5, 0xFFC5,
+ 0xFFC5, 0xFFC5, 0xFFC9, 0xFFC9, 0xFFC9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFC9, 0xFFC9, 0xFFC9, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB, 0xFFCB,
+ 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFCE, 0xFFD3, 0xFFD3, 0xFFD3,
+ 0xFFD3, 0xFFD3, 0xFFD7, 0xFFD7, 0xFFD7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFD7, 0xFFD7, 0xFFD7, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD, 0xFFDD,
+ 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFE2, 0xFFEA, 0xFFEA, 0xFFEA,
+ 0xFFEA, 0xFFEA, 0xFFF8, 0xFFF8, 0xFFF8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0xFFF8, 0xFFF8, 0xFFF8, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC, 0xFFFC,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
+};
+
+static const Uint16Provider kLoLDscDoorYPC98Provider = { ARRAYSIZE(kLoLDscDoorYPC98), kLoLDscDoorYPC98 };
+
+static const byte kLoLScrollXTopPC98[5] = {
+ 0x05, 0x0A, 0x0F, 0x14, 0x19
+};
+
+static const ByteProvider kLoLScrollXTopPC98Provider = { ARRAYSIZE(kLoLScrollXTopPC98), kLoLScrollXTopPC98 };
+
+static const byte kLoLScrollYTopPC98[5] = {
+ 0x02, 0x04, 0x07, 0x09, 0x0C
+};
+
+static const ByteProvider kLoLScrollYTopPC98Provider = { ARRAYSIZE(kLoLScrollYTopPC98), kLoLScrollYTopPC98 };
+
+static const byte kLoLScrollXBottomPC98[5] = {
+ 0x05, 0x0A, 0x0F, 0x14, 0x19
+};
+
+static const ByteProvider kLoLScrollXBottomPC98Provider = { ARRAYSIZE(kLoLScrollXBottomPC98), kLoLScrollXBottomPC98 };
+
+static const byte kLoLScrollYBottomPC98[5] = {
+ 0x04, 0x08, 0x0C, 0x10, 0x14
+};
+
+static const ByteProvider kLoLScrollYBottomPC98Provider = { ARRAYSIZE(kLoLScrollYBottomPC98), kLoLScrollYBottomPC98 };
+
+static const LoLButtonDef kLoLButtonDefsPC98[95] = {
+ { 0x1100, 68, 324, 33, 131, 22, 19, 0x0000, 0 },
+ { 0x1100, 72, 328, 33, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 76, 332, 33, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 71, 327, 11, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 73, 329, 53, 150, 22, 18, 0x0000, 0 },
+ { 0x1100, 67, 323, 11, 131, 22, 19, 0x0000, 0 },
+ { 0x1100, 69, 325, 53, 131, 22, 19, 0x0000, 0 },
+ { 0x0100, 99, 0, 80, 143, 22, 17, 0x0000, 0 },
+ { 0x0100, 100, 0, 80, 143, 22, 17, 0x0001, 0 },
+ { 0x0100, 101, 0, 80, 143, 22, 17, 0x0002, 0 },
+ { 0x0100, 102, 0, 80, 143, 22, 17, 0x0003, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0000, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0001, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0002, 0 },
+ { 0x1100, 0, 0, 80, 160, 22, 17, 0x0003, 0 },
+ { 0x1100, 0, 0, 80, 144, 22, 32, 0x0000, 0 },
+ { 0x1100, 1, 0, 0, 0, 320, 200, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 33, 34, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 12, 34, 0x0003, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x1000, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0002, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0003, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0004, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0005, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0006, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0007, 2 },
+ { 0x1100, 0, 0, 0, 0, 20, 19, 0x0008, 2 },
+ { 0x1100, 0, 0, 0, 0, 12, 11, 0x0009, 2 },
+ { 0x1100, 0, 0, 0, 0, 12, 11, 0x000A, 2 },
+ { 0x1100, 1, 0, 160, 93, 43, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 102, 88, 19, 0x0000, 2 },
+ { 0x1100, 0, 0, 88, 102, 88, 19, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 85, 88, 17, 0x0002, 2 },
+ { 0x1100, 0, 0, 88, 85, 88, 17, 0x0003, 2 },
+ { 0x1100, 0, 0, 0, 0, 176, 120, 0x0000, 2 },
+ { 0x1100, 0, 0, 106, 179, 21, 21, 0x0000, 0 },
+ { 0x1100, 0, 0, 127, 179, 21, 21, 0x0001, 0 },
+ { 0x1100, 0, 0, 148, 179, 21, 21, 0x0002, 0 },
+ { 0x1100, 0, 0, 169, 179, 21, 21, 0x0003, 0 },
+ { 0x1100, 0, 0, 190, 179, 21, 21, 0x0004, 0 },
+ { 0x1100, 0, 0, 211, 179, 21, 21, 0x0005, 0 },
+ { 0x1100, 0, 0, 232, 179, 21, 21, 0x0006, 0 },
+ { 0x1100, 0, 0, 253, 179, 21, 21, 0x0007, 0 },
+ { 0x1100, 0, 0, 274, 179, 21, 21, 0x0008, 0 },
+ { 0x1100, 0, 0, 274, 179, 21, 21, 0x0009, 0 },
+ { 0x1100, 0, 0, 85, 179, 21, 21, 0xFFFF, 0 },
+ { 0x1100, 0, 0, 295, 179, 22, 21, 0x0001, 0 },
+ { 0x1100, 0, 0, 24, 8, 128, 96, 0x0001, 2 },
+ { 0x1100, 0, 0, 0, 0, 176, 120, 0x0000, 2 },
+ { 0x1100, 0, 0, 0, 0, 0, 0, 0x0000, 0 },
+ { 0x1100, 0, 0, 112, 0, 176, 16, 0x0001, 0 },
+ { 0x1100, 0, 0, 112, 110, 176, 26, 0x0001, 0 },
+ { 0x1100, 0, 0, 96, 88, 32, 32, 0x0001, 0 },
+ { 0x1100, 0, 0, 272, 88, 32, 32, 0x0001, 0 },
+ { 0x1100, 0, 0, 96, 16, 32, 72, 0x0001, 0 },
+ { 0x1100, 0, 0, 272, 16, 32, 72, 0x0001, 0 },
+ { 0x1100, 0, 0, 24, 15, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 24, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 33, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 42, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 51, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 60, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 69, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 78, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 87, 61, 9, 0x0000, 0 },
+ { 0x1100, 0, 0, 24, 96, 61, 9, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0000, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0001, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0002, 0 },
+ { 0x0100, 0, 0, 80, 143, 66, 34, 0x0003, 0 },
+ { 0x1100, 1, 0, 0, 0, 320, 200, 0x0003, 0 },
+ { 0x0100, 0, 0, 112, 0, 88, 80, 0x0000, 0 },
+ { 0x0100, 0, 0, 200, 0, 88, 80, 0x0001, 0 },
+ { 0x1100, 25, 1, 11, 178, 21, 22, 0x0000, 0 },
+ { 0x0100, 20, 0, 32, 178, 22, 22, 0x0000, 0 },
+ { 0x0100, 0, 0, 291, 96, 27, 24, 0x0000, 0 },
+ { 0x0100, 0, 0, 289, 0, 31, 28, 0x0000, 0 },
+ { 0x0100, 0, 0, 289, 31, 31, 23, 0x0000, 0 },
+ { 0x0100, 0, 0, 291, 56, 29, 24, 0x0000, 0 },
+ { 0x1100, 0, 0, 220, 98, 43, 19, 0x0000, 0 }
+};
+
+static const LoLButtonDefProvider kLoLButtonDefsPC98Provider = { ARRAYSIZE(kLoLButtonDefsPC98), kLoLButtonDefsPC98 };
+
+static const byte kLoLButtonList1PC98[40] = {
+ 0x59, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x31,
+ 0x3E, 0x2D, 0x2E, 0x2F, 0x30, 0x56, 0x57, 0x01,
+ 0x02, 0x00, 0x03, 0x04, 0x05, 0x06, 0x32, 0x33,
+ 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B,
+ 0x3C, 0x3D, 0x58, 0x5A, 0x5B, 0x5C, 0x5D, 0xFF
+};
+
+static const ByteProvider kLoLButtonList1PC98Provider = { ARRAYSIZE(kLoLButtonList1PC98), kLoLButtonList1PC98 };
+
+static const byte kLoLButtonList2PC98[15] = {
+ 0x2C, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+ 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x5E, 0xFF
+};
+
+static const ByteProvider kLoLButtonList2PC98Provider = { ARRAYSIZE(kLoLButtonList2PC98), kLoLButtonList2PC98 };
+
+static const byte kLoLButtonList3PC98[2] = {
+ 0x40, 0xFF
+};
+
+static const ByteProvider kLoLButtonList3PC98Provider = { ARRAYSIZE(kLoLButtonList3PC98), kLoLButtonList3PC98 };
+
+static const byte kLoLButtonList4PC98[15] = {
+ 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
+ 0x3A, 0x3B, 0x3C, 0x3D, 0x5A, 0x5B, 0xFF
+};
+
+static const ByteProvider kLoLButtonList4PC98Provider = { ARRAYSIZE(kLoLButtonList4PC98), kLoLButtonList4PC98 };
+
+static const byte kLoLButtonList5PC98[16] = {
+ 0x01, 0x02, 0x00, 0x03, 0x04, 0x05, 0x06, 0x41,
+ 0x42, 0x43, 0x44, 0x45, 0x46, 0x5A, 0x5B, 0xFF
+};
+
+static const ByteProvider kLoLButtonList5PC98Provider = { ARRAYSIZE(kLoLButtonList5PC98), kLoLButtonList5PC98 };
+
+static const byte kLoLButtonList6PC98[14] = {
+ 0x2C, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+ 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0xFF
+};
+
+static const ByteProvider kLoLButtonList6PC98Provider = { ARRAYSIZE(kLoLButtonList6PC98), kLoLButtonList6PC98 };
+
+static const byte kLoLButtonList7PC98[3] = {
+ 0x0F, 0x10, 0xFF
+};
+
+static const ByteProvider kLoLButtonList7PC98Provider = { ARRAYSIZE(kLoLButtonList7PC98), kLoLButtonList7PC98 };
+
+static const byte kLoLButtonList8PC98[2] = {
+ 0x55, 0xFF
+};
+
+static const ByteProvider kLoLButtonList8PC98Provider = { ARRAYSIZE(kLoLButtonList8PC98), kLoLButtonList8PC98 };
+
+static const byte kLoLLegendDataPC98[60] = {
+ 0x0E, 0x00, 0x00, 0x07, 0x42, 0x19, 0x00, 0x00,
+ 0x08, 0x42, 0x1A, 0x00, 0x00, 0x09, 0x42, 0x0D,
+ 0x00, 0x00, 0x0A, 0x42, 0x0A, 0x00, 0x00, 0x0B,
+ 0x42, 0x0B, 0x00, 0x00, 0x0C, 0x42, 0x0F, 0x00,
+ 0x00, 0x0D, 0x42, 0x16, 0x00, 0x00, 0x0E, 0x42,
+ 0x17, 0x00, 0x00, 0x0F, 0x42, 0x11, 0x00, 0x00,
+ 0x10, 0x42, 0x12, 0x00, 0xFB, 0x51, 0x42, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF
+};
+
+static const ByteProvider kLoLLegendDataPC98Provider = { ARRAYSIZE(kLoLLegendDataPC98), kLoLLegendDataPC98 };
+
+static const uint16 kLoLMapStringIdPC98[30] = {
+ 0xFFFF, 0x4211, 0x4212, 0x4213, 0x4214, 0x4215, 0x4216, 0x4217,
+ 0x4218, 0x4219, 0x421A, 0x421B, 0x421C, 0x421D, 0x421E, 0x421F,
+ 0x4220, 0x4221, 0x4222, 0x4223, 0x4224, 0x4225, 0x4226, 0x4227,
+ 0x4228, 0x4229, 0x422A, 0x422B, 0x422C, 0x422D
+};
+
+static const Uint16Provider kLoLMapStringIdPC98Provider = { ARRAYSIZE(kLoLMapStringIdPC98), kLoLMapStringIdPC98 };
+
+static const byte kLoLSpellbookAnimPC98[28] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x04, 0x00, 0x13, 0xB6, 0x04, 0x00, 0x13, 0x4D,
+ 0x04, 0x00, 0x13, 0xB9, 0x04, 0x00, 0x13, 0xB8,
+ 0x04, 0x00, 0x13, 0xBA
+};
+
+static const ByteProvider kLoLSpellbookAnimPC98Provider = { ARRAYSIZE(kLoLSpellbookAnimPC98), kLoLSpellbookAnimPC98 };
+
+static const byte kLoLSpellbookCoordsPC98[12] = {
+ 0x16, 0x16, 0x16, 0x1F, 0x16, 0x28, 0x16, 0x31,
+ 0x16, 0x3A, 0x16, 0x43
+};
+
+static const ByteProvider kLoLSpellbookCoordsPC98Provider = { ARRAYSIZE(kLoLSpellbookCoordsPC98), kLoLSpellbookCoordsPC98 };
+
+static const byte kLoLHealShapeFramesPC98[80] = {
+ 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02,
+ 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x03,
+ 0x03, 0x03, 0x02, 0x02, 0x01, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
+ 0x05, 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00,
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
+};
+
+static const ByteProvider kLoLHealShapeFramesPC98Provider = { ARRAYSIZE(kLoLHealShapeFramesPC98), kLoLHealShapeFramesPC98 };
+
+static const byte kLoLLightningDefsPC98[20] = {
+ 0x06, 0x05, 0xAB, 0x00, 0x06, 0x04, 0xAB, 0x00,
+ 0x08, 0x04, 0xAA, 0x00, 0x06, 0x03, 0xAA, 0x00,
+ 0x06, 0x02, 0xA9, 0x00
+};
+
+static const ByteProvider kLoLLightningDefsPC98Provider = { ARRAYSIZE(kLoLLightningDefsPC98), kLoLLightningDefsPC98 };
+
+static const uint16 kLoLFireballCoordsPC98[256] = {
+ 0x0000, 0x0324, 0x0647, 0x096A, 0x0C8B, 0x0FAB, 0x12C7, 0x15E1,
+ 0x18F8, 0x1C0B, 0x1F19, 0x2223, 0x2527, 0x2826, 0x2B1E, 0x2E10,
+ 0x30FB, 0x33DE, 0x36B9, 0x398C, 0x3C56, 0x3F16, 0x41CD, 0x447A,
+ 0x471C, 0x49B3, 0x4C3F, 0x4EBF, 0x5133, 0x539A, 0x55F4, 0x5842,
+ 0x5A81, 0x5CB3, 0x5ED6, 0x60EB, 0x62F1, 0x64E7, 0x66CE, 0x68A5,
+ 0x6A6C, 0x6C23, 0x6DC9, 0x6F5E, 0x70E1, 0x7254, 0x73B5, 0x7503,
+ 0x7640, 0x776B, 0x7883, 0x7989, 0x7A7C, 0x7B5C, 0x7C29, 0x7CE2,
+ 0x7D89, 0x7E1C, 0x7E9C, 0x7F08, 0x7F61, 0x7FA6, 0x7FD7, 0x7FF5,
+ 0x7FFF, 0x7FF5, 0x7FD7, 0x7FA6, 0x7F61, 0x7F08, 0x7E9C, 0x7E1C,
+ 0x7D89, 0x7CE2, 0x7C29, 0x7B5C, 0x7A7C, 0x7989, 0x7883, 0x776B,
+ 0x7640, 0x7503, 0x73B5, 0x7254, 0x70E1, 0x6F5E, 0x6DC9, 0x6C23,
+ 0x6A6C, 0x68A5, 0x66CE, 0x64E7, 0x62F1, 0x60EB, 0x5ED6, 0x5CB3,
+ 0x5A81, 0x5842, 0x55F4, 0x539A, 0x5133, 0x4EBF, 0x4C3F, 0x49B3,
+ 0x471C, 0x447A, 0x41CD, 0x3F16, 0x3C56, 0x398C, 0x36B9, 0x33DE,
+ 0x30FB, 0x2E10, 0x2B1E, 0x2826, 0x2527, 0x2223, 0x1F19, 0x1C0B,
+ 0x18F8, 0x15E1, 0x12C7, 0x0FAB, 0x0C8B, 0x096A, 0x0647, 0x0324,
+ 0x0000, 0xFCDC, 0xF9B9, 0xF696, 0xF375, 0xF055, 0xED39, 0xEA1F,
+ 0xE708, 0xE3F5, 0xE0E7, 0xDDDD, 0xDAD9, 0xD7DA, 0xD4E2, 0xD1F0,
+ 0xCF05, 0xCC22, 0xC947, 0xC674, 0xC3AA, 0xC0EA, 0xBE33, 0xBB86,
+ 0xB8E4, 0xB64D, 0xB3C1, 0xB141, 0xAECD, 0xAC66, 0xAA0C, 0xA7BE,
+ 0xA57F, 0xA34D, 0xA12A, 0x9F15, 0x9D0F, 0x9B19, 0x9932, 0x975B,
+ 0x9594, 0x93DD, 0x9237, 0x90A2, 0x8F1F, 0x8DAC, 0x8C4B, 0x8AFD,
+ 0x89C0, 0x8895, 0x877D, 0x8677, 0x8584, 0x84A4, 0x83D7, 0x831E,
+ 0x8277, 0x81E4, 0x8164, 0x80F8, 0x809F, 0x805A, 0x8029, 0x800B,
+ 0x8001, 0x800B, 0x8029, 0x805A, 0x809F, 0x80F8, 0x8164, 0x81E4,
+ 0x8277, 0x831E, 0x83D7, 0x84A4, 0x8584, 0x8677, 0x877D, 0x8895,
+ 0x89C0, 0x8AFD, 0x8C4B, 0x8DAC, 0x8F1F, 0x90A2, 0x9237, 0x93DD,
+ 0x9594, 0x975B, 0x9932, 0x9B19, 0x9D0F, 0x9F15, 0xA12A, 0xA34D,
+ 0xA57F, 0xA7BE, 0xAA0C, 0xAC66, 0xAECD, 0xB141, 0xB3C1, 0xB64D,
+ 0xB8E4, 0xBB86, 0xBE33, 0xC0EA, 0xC3AA, 0xC674, 0xC947, 0xCC22,
+ 0xCF05, 0xD1F0, 0xD4E2, 0xD7DA, 0xDAD9, 0xDDDD, 0xE0E7, 0xE3F5,
+ 0xE708, 0xEA1F, 0xED39, 0xF055, 0xF375, 0xF696, 0xF9B9, 0xFCDC
+};
+
+static const Uint16Provider kLoLFireballCoordsPC98Provider = { ARRAYSIZE(kLoLFireballCoordsPC98), kLoLFireballCoordsPC98 };
+
+static const byte kLoLCreditsPC98[1511] = {
+ 0x02, 0x54, 0x68, 0x65, 0x20, 0x45, 0x6E, 0x64,
+ 0x05, 0x0D, 0x0D, 0x0D, 0x02, 0x4C, 0x41, 0x4E,
+ 0x44, 0x53, 0x20, 0x4F, 0x46, 0x20, 0x4C, 0x4F,
+ 0x52, 0x45, 0x05, 0x0D, 0x01, 0x54, 0x68, 0x65,
+ 0x20, 0x54, 0x68, 0x72, 0x6F, 0x6E, 0x65, 0x20,
+ 0x6F, 0x66, 0x20, 0x43, 0x68, 0x61, 0x6F, 0x73,
+ 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x02, 0x45, 0x58, 0x45, 0x43, 0x55, 0x54,
+ 0x49, 0x56, 0x45, 0x20, 0x50, 0x52, 0x4F, 0x44,
+ 0x55, 0x43, 0x45, 0x52, 0x05, 0x0D, 0x0D, 0x02,
+ 0x42, 0x72, 0x65, 0x74, 0x74, 0x20, 0x57, 0x2E,
+ 0x20, 0x53, 0x70, 0x65, 0x72, 0x72, 0x79, 0x05,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x50, 0x52, 0x4F,
+ 0x44, 0x55, 0x43, 0x45, 0x52, 0x05, 0x0D, 0x0D,
+ 0x02, 0x52, 0x69, 0x63, 0x6B, 0x20, 0x47, 0x75,
+ 0x73, 0x68, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x02,
+ 0x50, 0x52, 0x4F, 0x44, 0x55, 0x43, 0x54, 0x20,
+ 0x43, 0x4F, 0x4F, 0x52, 0x44, 0x49, 0x4E, 0x41,
+ 0x54, 0x4F, 0x52, 0x05, 0x0D, 0x0D, 0x02, 0x43,
+ 0x61, 0x74, 0x68, 0x69, 0x65, 0x20, 0x41, 0x2E,
+ 0x20, 0x54, 0x6F, 0x64, 0x64, 0x05, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x44, 0x45, 0x53, 0x49, 0x47,
+ 0x4E, 0x45, 0x52, 0x53, 0x05, 0x0D, 0x0D, 0x02,
+ 0x57, 0x69, 0x6C, 0x6C, 0x69, 0x61, 0x6D, 0x20,
+ 0x41, 0x6C, 0x61, 0x6E, 0x20, 0x43, 0x72, 0x75,
+ 0x6D, 0x05, 0x0D, 0x50, 0x68, 0x69, 0x6C, 0x69,
+ 0x70, 0x20, 0x57, 0x2E, 0x20, 0x47, 0x6F, 0x72,
+ 0x72, 0x6F, 0x77, 0x05, 0x0D, 0x0D, 0x0D, 0x0D,
+ 0x02, 0x4C, 0x45, 0x41, 0x44, 0x20, 0x50, 0x52,
+ 0x4F, 0x47, 0x52, 0x41, 0x4D, 0x4D, 0x45, 0x52,
+ 0x05, 0x0D, 0x0D, 0x02, 0x50, 0x68, 0x69, 0x6C,
+ 0x69, 0x70, 0x20, 0x57, 0x2E, 0x20, 0x47, 0x6F,
+ 0x72, 0x72, 0x6F, 0x77, 0x05, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x02, 0x50, 0x52, 0x4F, 0x47, 0x52, 0x41,
+ 0x4D, 0x4D, 0x45, 0x52, 0x53, 0x05, 0x0D, 0x0D,
+ 0x02, 0x4A, 0x6F, 0x65, 0x20, 0x42, 0x6F, 0x73,
+ 0x74, 0x69, 0x63, 0x05, 0x0D, 0x02, 0x53, 0x63,
+ 0x6F, 0x74, 0x74, 0x20, 0x4B, 0x2E, 0x20, 0x42,
+ 0x6F, 0x77, 0x65, 0x6E, 0x05, 0x0D, 0x02, 0x4A,
+ 0x6F, 0x68, 0x6E, 0x20, 0x4C, 0x61, 0x53, 0x61,
+ 0x6C, 0x76, 0x69, 0x61, 0x05, 0x0D, 0x02, 0x4D,
+ 0x61, 0x72, 0x6B, 0x20, 0x4D, 0x63, 0x43, 0x75,
+ 0x62, 0x62, 0x69, 0x6E, 0x05, 0x0D, 0x02, 0x4A,
+ 0x75, 0x73, 0x74, 0x69, 0x6E, 0x20, 0x4D, 0x63,
+ 0x4B, 0x69, 0x6E, 0x6E, 0x65, 0x72, 0x6E, 0x65,
+ 0x79, 0x05, 0x0D, 0x02, 0x51, 0x69, 0x6E, 0x67,
+ 0x20, 0x59, 0x75, 0x61, 0x6E, 0x05, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x4C, 0x45, 0x41, 0x44, 0x20,
+ 0x41, 0x52, 0x54, 0x49, 0x53, 0x54, 0x05, 0x0D,
+ 0x0D, 0x02, 0x52, 0x69, 0x63, 0x6B, 0x20, 0x50,
+ 0x61, 0x72, 0x6B, 0x73, 0x05, 0x0D, 0x0D, 0x0D,
+ 0x0D, 0x02, 0x41, 0x52, 0x54, 0x49, 0x53, 0x54,
+ 0x53, 0x05, 0x0D, 0x0D, 0x02, 0x45, 0x6C, 0x69,
+ 0x65, 0x20, 0x41, 0x72, 0x61, 0x62, 0x69, 0x61,
+ 0x6E, 0x05, 0x0D, 0x02, 0x43, 0x61, 0x72, 0x79,
+ 0x20, 0x44, 0x65, 0x61, 0x6E, 0x20, 0x41, 0x76,
+ 0x65, 0x72, 0x65, 0x74, 0x74, 0x05, 0x0D, 0x02,
+ 0x45, 0x72, 0x69, 0x63, 0x20, 0x47, 0x6F, 0x6F,
+ 0x63, 0x68, 0x05, 0x0D, 0x02, 0x4A, 0x6F, 0x73,
+ 0x65, 0x70, 0x68, 0x20, 0x42, 0x2E, 0x20, 0x48,
+ 0x65, 0x77, 0x69, 0x74, 0x74, 0x20, 0x49, 0x56,
+ 0x05, 0x0D, 0x02, 0x52, 0x65, 0x6E, 0x20, 0x4F,
+ 0x6C, 0x73, 0x65, 0x6E, 0x05, 0x0D, 0x02, 0x4A,
+ 0x75, 0x64, 0x69, 0x74, 0x68, 0x20, 0x50, 0x65,
+ 0x74, 0x65, 0x72, 0x73, 0x6F, 0x6E, 0x05, 0x0D,
+ 0x02, 0x45, 0x2E, 0x4D, 0x2E, 0x20, 0x4C, 0x6F,
+ 0x75, 0x69, 0x73, 0x65, 0x20, 0x53, 0x61, 0x6E,
+ 0x64, 0x6F, 0x76, 0x61, 0x6C, 0x05, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x4D, 0x55, 0x53, 0x49, 0x43,
+ 0x20, 0x26, 0x20, 0x53, 0x4F, 0x55, 0x4E, 0x44,
+ 0x53, 0x05, 0x0D, 0x0D, 0x02, 0x50, 0x61, 0x75,
+ 0x6C, 0x20, 0x53, 0x2E, 0x20, 0x4D, 0x75, 0x64,
+ 0x72, 0x61, 0x05, 0x0D, 0x02, 0x44, 0x77, 0x69,
+ 0x67, 0x68, 0x74, 0x20, 0x4B, 0x2E, 0x20, 0x4F,
+ 0x6B, 0x61, 0x68, 0x61, 0x72, 0x61, 0x05, 0x0D,
+ 0x02, 0x46, 0x72, 0x61, 0x6E, 0x6B, 0x20, 0x4B,
+ 0x6C, 0x65, 0x70, 0x61, 0x63, 0x6B, 0x69, 0x05,
+ 0x0D, 0x02, 0x50, 0x61, 0x74, 0x72, 0x69, 0x63,
+ 0x6B, 0x20, 0x43, 0x6F, 0x6C, 0x6C, 0x69, 0x6E,
+ 0x73, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x51,
+ 0x55, 0x41, 0x4C, 0x49, 0x54, 0x59, 0x20, 0x41,
+ 0x53, 0x53, 0x55, 0x52, 0x41, 0x4E, 0x43, 0x45,
+ 0x05, 0x0D, 0x0D, 0x02, 0x4A, 0x65, 0x73, 0x73,
+ 0x65, 0x20, 0x43, 0x6C, 0x65, 0x6D, 0x69, 0x74,
+ 0x05, 0x0D, 0x02, 0x4B, 0x65, 0x6E, 0x6E, 0x65,
+ 0x74, 0x68, 0x20, 0x44, 0x75, 0x6E, 0x6E, 0x65,
+ 0x05, 0x0D, 0x02, 0x4A, 0x65, 0x66, 0x66, 0x20,
+ 0x53, 0x74, 0x65, 0x76, 0x65, 0x6E, 0x20, 0x46,
+ 0x69, 0x6C, 0x6C, 0x68, 0x61, 0x62, 0x65, 0x72,
+ 0x05, 0x0D, 0x02, 0x57, 0x69, 0x6C, 0x6C, 0x69,
+ 0x61, 0x6D, 0x20, 0x46, 0x6F, 0x73, 0x74, 0x65,
+ 0x72, 0x05, 0x0D, 0x02, 0x53, 0x63, 0x6F, 0x74,
+ 0x74, 0x20, 0x46, 0x6C, 0x65, 0x6D, 0x69, 0x6E,
+ 0x67, 0x05, 0x0D, 0x02, 0x4D, 0x69, 0x63, 0x68,
+ 0x61, 0x65, 0x6C, 0x20, 0x4C, 0x69, 0x67, 0x68,
+ 0x74, 0x6E, 0x65, 0x72, 0x05, 0x0D, 0x02, 0x47,
+ 0x6C, 0x65, 0x6E, 0x6E, 0x20, 0x53, 0x70, 0x65,
+ 0x72, 0x72, 0x79, 0x05, 0x0D, 0x02, 0x43, 0x68,
+ 0x72, 0x69, 0x73, 0x20, 0x4D, 0x63, 0x46, 0x61,
+ 0x72, 0x6C, 0x61, 0x6E, 0x64, 0x05, 0x0D, 0x02,
+ 0x53, 0x63, 0x6F, 0x74, 0x74, 0x20, 0x4D, 0x61,
+ 0x6E, 0x6E, 0x69, 0x6E, 0x67, 0x05, 0x0D, 0x02,
+ 0x50, 0x61, 0x75, 0x6C, 0x20, 0x53, 0x68, 0x6F,
+ 0x65, 0x6E, 0x65, 0x72, 0x05, 0x0D, 0x02, 0x41,
+ 0x64, 0x61, 0x6D, 0x20, 0x52, 0x79, 0x61, 0x6E,
+ 0x05, 0x0D, 0x02, 0x4D, 0x69, 0x74, 0x63, 0x68,
+ 0x20, 0x46, 0x69, 0x65, 0x6C, 0x64, 0x6D, 0x61,
+ 0x6E, 0x05, 0x0D, 0x02, 0x4A, 0x61, 0x72, 0x65,
+ 0x64, 0x20, 0x42, 0x72, 0x69, 0x6E, 0x6B, 0x6C,
+ 0x65, 0x79, 0x05, 0x0D, 0x02, 0x4A, 0x75, 0x73,
+ 0x74, 0x69, 0x6E, 0x20, 0x48, 0x61, 0x6C, 0x6C,
+ 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x02,
+ 0x56, 0x4F, 0x49, 0x43, 0x45, 0x20, 0x41, 0x43,
+ 0x54, 0x4F, 0x52, 0x53, 0x05, 0x0D, 0x0D, 0x03,
+ 0x52, 0x69, 0x63, 0x68, 0x61, 0x72, 0x64, 0x20,
+ 0x53, 0x6D, 0x69, 0x74, 0x68, 0x20, 0x61, 0x73,
+ 0x05, 0x04, 0x4B, 0x49, 0x4E, 0x47, 0x20, 0x52,
+ 0x49, 0x43, 0x48, 0x41, 0x52, 0x44, 0x05, 0x0D,
+ 0x03, 0x45, 0x72, 0x69, 0x63, 0x20, 0x47, 0x6F,
+ 0x6F, 0x63, 0x68, 0x20, 0x61, 0x73, 0x05, 0x04,
+ 0x47, 0x45, 0x52, 0x4F, 0x4E, 0x05, 0x0D, 0x03,
+ 0x53, 0x63, 0x6F, 0x74, 0x69, 0x61, 0x20, 0x61,
+ 0x73, 0x05, 0x04, 0x68, 0x65, 0x72, 0x73, 0x65,
+ 0x6C, 0x66, 0x05, 0x0D, 0x03, 0x46, 0x72, 0x61,
+ 0x6E, 0x6B, 0x20, 0x4B, 0x6C, 0x65, 0x70, 0x61,
+ 0x63, 0x6B, 0x69, 0x20, 0x61, 0x73, 0x05, 0x04,
+ 0x50, 0x49, 0x47, 0x4C, 0x45, 0x54, 0x05, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x4A, 0x41,
+ 0x50, 0x41, 0x4E, 0x45, 0x53, 0x45, 0x20, 0x56,
+ 0x45, 0x52, 0x53, 0x49, 0x4F, 0x4E, 0x05, 0x0D,
+ 0x0D, 0x0D, 0x02, 0x50, 0x52, 0x4F, 0x47, 0x52,
+ 0x41, 0x4D, 0x4D, 0x45, 0x52, 0x53, 0x05, 0x0D,
+ 0x0D, 0x02, 0x59, 0x75, 0x6B, 0x69, 0x6F, 0x20,
+ 0x53, 0x65, 0x6B, 0x69, 0x67, 0x75, 0x63, 0x68,
+ 0x69, 0x05, 0x0D, 0x02, 0x4E, 0x61, 0x6F, 0x73,
+ 0x68, 0x69, 0x20, 0x4E, 0x6F, 0x67, 0x75, 0x63,
+ 0x68, 0x69, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x02,
+ 0x41, 0x52, 0x54, 0x49, 0x53, 0x54, 0x53, 0x05,
+ 0x0D, 0x0D, 0x02, 0x4D, 0x61, 0x73, 0x61, 0x6B,
+ 0x69, 0x20, 0x54, 0x6F, 0x67, 0x61, 0x73, 0x68,
+ 0x69, 0x05, 0x0D, 0x02, 0x52, 0x69, 0x73, 0x61,
+ 0x6B, 0x6F, 0x20, 0x53, 0x65, 0x74, 0x6F, 0x05,
+ 0x0D, 0x02, 0x52, 0x65, 0x69, 0x67, 0x61, 0x20,
+ 0x59, 0x61, 0x73, 0x75, 0x64, 0x61, 0x05, 0x0D,
+ 0x02, 0x4D, 0x61, 0x73, 0x75, 0x6D, 0x69, 0x20,
+ 0x53, 0x68, 0x69, 0x6E, 0x62, 0x6F, 0x05, 0x0D,
+ 0x02, 0x4E, 0x61, 0x6F, 0x6B, 0x6F, 0x20, 0x4E,
+ 0x69, 0x74, 0x74, 0x61, 0x05, 0x0D, 0x02, 0x4B,
+ 0x69, 0x79, 0x6F, 0x66, 0x75, 0x6D, 0x69, 0x20,
+ 0x48, 0x69, 0x6E, 0x6F, 0x05, 0x0D, 0x02, 0x48,
+ 0x69, 0x72, 0x6F, 0x6D, 0x69, 0x20, 0x53, 0x61,
+ 0x6B, 0x61, 0x65, 0x05, 0x0D, 0x02, 0x4B, 0x79,
+ 0x6F, 0x75, 0x6B, 0x6F, 0x20, 0x4D, 0x69, 0x79,
+ 0x61, 0x6D, 0x6F, 0x74, 0x6F, 0x05, 0x0D, 0x02,
+ 0x53, 0x68, 0x6F, 0x6B, 0x6F, 0x20, 0x4D, 0x75,
+ 0x72, 0x61, 0x6B, 0x61, 0x6D, 0x69, 0x05, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x02, 0x4D, 0x55, 0x53, 0x49,
+ 0x43, 0x20, 0x26, 0x20, 0x53, 0x4F, 0x55, 0x4E,
+ 0x44, 0x53, 0x05, 0x0D, 0x0D, 0x02, 0x54, 0x61,
+ 0x6B, 0x65, 0x73, 0x68, 0x69, 0x20, 0x41, 0x62,
+ 0x6F, 0x05, 0x0D, 0x0D, 0x0D, 0x0D, 0x02, 0x4A,
+ 0x41, 0x50, 0x41, 0x4E, 0x45, 0x53, 0x45, 0x20,
+ 0x54, 0x52, 0x41, 0x4E, 0x53, 0x4C, 0x41, 0x54,
+ 0x4F, 0x52, 0x05, 0x0D, 0x0D, 0x02, 0x59, 0x75,
+ 0x72, 0x69, 0x20, 0x49, 0x74, 0x6F, 0x05, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x02, 0x53, 0x70, 0x65, 0x63,
+ 0x69, 0x61, 0x6C, 0x20, 0x74, 0x68, 0x61, 0x6E,
+ 0x6B, 0x73, 0x20, 0x74, 0x6F, 0x3A, 0x05, 0x0D,
+ 0x0D, 0x02, 0x48, 0x69, 0x72, 0x6F, 0x6B, 0x6F,
+ 0x20, 0x59, 0x6F, 0x72, 0x6F, 0x69, 0x7A, 0x75,
+ 0x6B, 0x61, 0x05, 0x0D, 0x02, 0x59, 0x75, 0x6A,
+ 0x69, 0x20, 0x4F, 0x64, 0x61, 0x77, 0x61, 0x72,
+ 0x61, 0x05, 0x0D, 0x02, 0x4F, 0x68, 0x73, 0x68,
+ 0x75, 0x6E, 0x20, 0x4C, 0x65, 0x65, 0x05, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x01, 0x43,
+ 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74,
+ 0x20, 0x28, 0x43, 0x29, 0x20, 0x31, 0x39, 0x39,
+ 0x33, 0x2C, 0x20, 0x57, 0x65, 0x73, 0x74, 0x77,
+ 0x6F, 0x6F, 0x64, 0x20, 0x53, 0x74, 0x75, 0x64,
+ 0x69, 0x6F, 0x73, 0x2C, 0x20, 0x49, 0x6E, 0x63,
+ 0x2E, 0x05, 0x0D, 0x01, 0x43, 0x6F, 0x70, 0x79,
+ 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x43,
+ 0x29, 0x20, 0x31, 0x39, 0x39, 0x34, 0x2C, 0x20,
+ 0x53, 0x74, 0x61, 0x72, 0x43, 0x72, 0x61, 0x66,
+ 0x74, 0x2C, 0x49, 0x6E, 0x63, 0x2E, 0x05, 0x0D,
+ 0x01, 0x41, 0x6C, 0x6C, 0x20, 0x72, 0x69, 0x67,
+ 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65,
+ 0x72, 0x76, 0x65, 0x64, 0x2E, 0x05, 0x0D, 0x0D,
+ 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x00
+};
+
+static const ByteProvider kLoLCreditsPC98Provider = { ARRAYSIZE(kLoLCreditsPC98), kLoLCreditsPC98 };
+
diff --git a/devtools/create_kyradat/resources/lol_pc98_japanese.h b/devtools/create_kyradat/resources/lol_pc98_japanese.h
new file mode 100644
index 0000000000..e4e6f18347
--- /dev/null
+++ b/devtools/create_kyradat/resources/lol_pc98_japanese.h
@@ -0,0 +1,68 @@
+static const LoLCharacter kLoLCharacterDefsPC98Japanese[9] = {
+ { 0x0001, "\x83""}""\x83""C""\x83""P""\x83\x8B", 0, -1, 0, 0, 17,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 20, 20, 6, 6, 0, 0, 0, 384, 320, 5, 2, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""e""\x83""B""\x83\x82\x83""V""\x81""[", 0, 2, 0, 0, 22,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 27, 27, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 93, 131, 0, 0, 0, 153, 0, 0, 162, 0, 0 },
+ { 3, 2, 1 }, { 0, 0, 0 }, { 2500, 1000, 250 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""o""\x83""R""\x81""[""\x83""^", 3, 3, 0, 0, 23,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 22, 22, 18, 18, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 108, 149, 0, 0, 145, 153, 0, 0, 129, 0, 0 },
+ { 1, 1, 3 }, { 0, 0, 0 }, { 1, 1, 4000 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83\x8D\x81""[""\x83\x89", 1, 4, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 25, 48, 5, 5, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 137, 0, 0, 162, 0, 0 },
+ { 1, 4, 1 }, { 0, 0, 0 }, { 1, 15001, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""R""\x83\x93\x83\x89\x83""b""\x83""h", 0, -5, 0, 0, 26,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 10, 10, 0, 0, 0, 366, 358, 2, 3, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""|""\x81""[""\x83\x8B\x83""\\""\x83\x93", 0, 6, 0, 0, 25,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 105, 105, 45, 45, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 5, 2, 3 }, { 0, 0, 0 }, { 40000, 501, 3500 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""h""\x81""[""\x83\x93", 1, 7, 0, 0, 24,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 50, 50, 80, 80, 0, 0, 0, 256, 256, 0, 0, 0,
+ { 0, 0, 0, 0, 0, 138, 0, 0, 129, 0, 0 },
+ { 1, 2, 10 }, { 1, 254, 177 }, { 1, 501, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""L""\x81""[""\x83\x89\x83\x93", 2, -8, 0, 0, 21,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 23, 23, 8, 8, 0, 0, 0, 422, 332, 5, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } },
+ { 0x0001, "\x83""A""\x83""N""\x83""V""\x83""F""\x83\x8B", 4, -9, 0, 0, 20,
+ { 0, 0, 0, 0, 0, 0, 0, 0 },
+ { 256, 256, 256, 256, 256, 256, 256, 256 },
+ 0, 28, 28, 32, 32, 0, 0, 0, 320, 256, 1, 1, 0,
+ { 44, 0, 0, 0, 0, 138, 0, 0, 162, 0, 0 },
+ { 1, 1, 1 }, { 0, 0, 0 }, { 1, 1, 1 },
+ { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } }
+};
+
+static const LoLCharacterProvider kLoLCharacterDefsPC98JapaneseProvider = { ARRAYSIZE(kLoLCharacterDefsPC98Japanese), kLoLCharacterDefsPC98Japanese };
+
diff --git a/devtools/create_kyradat/resources/mr_dos_cd.h b/devtools/create_kyradat/resources/mr_dos_cd.h
new file mode 100644
index 0000000000..9dffa33a1d
--- /dev/null
+++ b/devtools/create_kyradat/resources/mr_dos_cd.h
@@ -0,0 +1,556 @@
+static const char *const k3MainMenuStringsDOSCD[12] = {
+ "Start a new game",
+ "Introduction",
+ "Load a game",
+ "Exit the game",
+ "Nouvelle Partie",
+ "Introduction",
+ "Charger une partie",
+ "Quitter le jeu",
+ "Neues Spiel starten",
+ "Intro",
+ "Spielstand laden",
+ "Spiel beenden"
+};
+
+static const StringListProvider k3MainMenuStringsDOSCDProvider = { ARRAYSIZE(k3MainMenuStringsDOSCD), k3MainMenuStringsDOSCD };
+
+static const char *const k3MusicFilesDOSCD[43] = {
+ "ARREST1",
+ "BATH1",
+ "OCEAN1",
+ "CLOWN1",
+ "DARM2",
+ "FALL1M",
+ "FALL2",
+ "FISH1",
+ "FISHWNDR",
+ "HERMAN1",
+ "JAIL1",
+ "JUNGLE1",
+ "KATHY1",
+ "NICESINE",
+ "PEGASUS1",
+ "PIRATE1",
+ "PIRATE2",
+ "PIRATE3",
+ "POP3",
+ "PORT1",
+ "QUEEN1",
+ "RUINS1",
+ "SNAKES1",
+ "SPRING1",
+ "STATUE1",
+ "STATUE2",
+ "TITLE1",
+ "UNDER1",
+ "WALKCHP1",
+ "YANK1",
+ "ZAN2",
+ "GROOVE2",
+ "GROOVE3",
+ "KING1",
+ "KING2",
+ "GROOVE1",
+ "JAIL2",
+ "SPIRIT1",
+ "SPRING1A",
+ "POP1",
+ "POP2",
+ "SQUIRL1",
+ ""
+};
+
+static const StringListProvider k3MusicFilesDOSCDProvider = { ARRAYSIZE(k3MusicFilesDOSCD), k3MusicFilesDOSCD };
+
+static const byte k3ScoreTableDOSCD[200] = {
+ 0x0A, 0x08, 0x05, 0x09, 0x0A, 0x0A, 0x07, 0x08,
+ 0x09, 0x09, 0x08, 0x08, 0x07, 0x08, 0x05, 0x09,
+ 0x06, 0x0A, 0x07, 0x08, 0x05, 0x09, 0x06, 0x06,
+ 0x07, 0x08, 0x05, 0x09, 0x06, 0x08, 0x07, 0x08,
+ 0x05, 0x09, 0x06, 0x0A, 0x07, 0x08, 0x05, 0x05,
+ 0x05, 0x07, 0x05, 0x07, 0x0A, 0x05, 0x0A, 0x05,
+ 0x05, 0x08, 0x06, 0x08, 0x07, 0x05, 0x05, 0x08,
+ 0x06, 0x09, 0x05, 0x07, 0x06, 0x05, 0x05, 0x07,
+ 0x07, 0x07, 0x06, 0x05, 0x08, 0x06, 0x0A, 0x05,
+ 0x07, 0x05, 0x0A, 0x05, 0x05, 0x05, 0x05, 0x07,
+ 0x05, 0x08, 0x09, 0x07, 0x07, 0x06, 0x0A, 0x06,
+ 0x05, 0x0A, 0x08, 0x05, 0x08, 0x06, 0x0A, 0x05,
+ 0x05, 0x08, 0x08, 0x05, 0x07, 0x07, 0x07, 0x06,
+ 0x08, 0x09, 0x08, 0x08, 0x06, 0x05, 0x07, 0x06,
+ 0x05, 0x08, 0x0F, 0x07, 0x09, 0x06, 0x06, 0x08,
+ 0x05, 0x08, 0x0F, 0x0F, 0x05, 0x0F, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k3ScoreTableDOSCDProvider = { ARRAYSIZE(k3ScoreTableDOSCD), k3ScoreTableDOSCD };
+
+static const char *const k3SfxFilesDOSCD[225] = {
+ "ALARM1",
+ "ARMOIRE1",
+ "ARROW1",
+ "AUDLAFF1",
+ "AUDLAFF2",
+ "AUDLAFF3",
+ "AUDLAFF4",
+ "AUDLAFF5",
+ "AUDLAFF6",
+ "AUDLAFF7",
+ "AUDLAFF8",
+ "AUDLAFF9",
+ "BARK22A",
+ "BEAM1",
+ "BEDSQK1",
+ "BEDSQK2",
+ "BIGCLOK1",
+ "BIGDOR2",
+ "BIRD4",
+ "BIRD122",
+ "BIRD222",
+ "BIRD322",
+ "BLAST22D",
+ "BLINK1",
+ "BOATMIX1",
+ "BODYFAL1",
+ "BOTLBLOW",
+ "BOUNCE3",
+ "BOUNCE5",
+ "BOW2",
+ "BUBL1",
+ "BUBL2",
+ "BUBL3",
+ "BUBL4",
+ "BUTTON1",
+ "BUTTON2",
+ "CANNON1",
+ "CASHREG1",
+ "CATHY1",
+ "CHAIN1",
+ "CHATTER1",
+ "CHATTER2",
+ "CHEESE1",
+ "CHICHIC2",
+ "CHIPLAF1",
+ "CHIPROR1",
+ "CLANG1",
+ "CLDOOR1",
+ "CLEAT1",
+ "CLOTHES1",
+ "COIN2",
+ "COUNTER1",
+ "CREAK1",
+ "CREAK2",
+ "CREAK3",
+ "CRIKT22A",
+ "CRMAD1",
+ "CRNORM1",
+ "CRUMBLE1",
+ "CRUNCH1",
+ "CRYSTAL1",
+ "DFLY1",
+ "DIAL1",
+ "DIGDIRT1",
+ "DIZZY1",
+ "DODO1",
+ "DOORBELL",
+ "DOORCL1",
+ "DOOROP1",
+ "DRIP1",
+ "DROPITM1",
+ "EAT22A",
+ "EATNUT1",
+ "ELEC1",
+ "EXPLODE2",
+ "FALL1",
+ "FALLM2",
+ "FALLM3",
+ "FESTRE1",
+ "FISHLAF2",
+ "FLAG22A",
+ "FLAG22B",
+ "FLAG22C",
+ "FLPOOF1",
+ "FOLDER1",
+ "FROG1",
+ "FROGJMP1",
+ "FSHBUBL1",
+ "FUNNEL1",
+ "FUSE1",
+ "GATE22A",
+ "GEM1",
+ "GEMFIRE1",
+ "GEMLIT1",
+ "GEMPUT1",
+ "GEMRAIN1",
+ "GEMWND1",
+ "GIRLLAF1",
+ "GIRLLAF2",
+ "GLASBRK1",
+ "GLOWY1",
+ "GOODK33",
+ "GROWTWIG",
+ "GUNTHER3",
+ "H2ODROP2",
+ "H2OFALL1",
+ "HAMMER1",
+ "HAYFALL2",
+ "HERMMAG1",
+ "HIPRES1",
+ "HITHED22",
+ "HOWL1",
+ "HUM1",
+ "HYPNO1",
+ "HYPNO2",
+ "IMPACT1",
+ "JOHAN1",
+ "JUNGAMB2",
+ "KISS1",
+ "KISS2",
+ "KNIFE",
+ "KNIFHIT1",
+ "KNIFSTAB",
+ "KNOCK",
+ "LAND1",
+ "LEVIBAB1",
+ "LEVIMAN1",
+ "LID",
+ "MACHMIX1",
+ "MALCFALL",
+ "MALCYAWN",
+ "MJUMP1",
+ "MOO1",
+ "MOO2",
+ "MOO3",
+ "MORPH1",
+ "MORPH2",
+ "MORPH3",
+ "MORPH4",
+ "MOTHS1",
+ "MSPLASH1",
+ "MTLSLAM1",
+ "MUDBATH1",
+ "NAIL1",
+ "NEIGH1",
+ "NETCATCH",
+ "NETMAL1",
+ "NETRIP1",
+ "OPDOOR1",
+ "OWL1",
+ "OWL2",
+ "PEDAL3",
+ "PEGWING1",
+ "PICKUP1",
+ "PLUCK3",
+ "POLGULP1",
+ "POOF1",
+ "PORTAL1",
+ "POURH2O1",
+ "PRIMOR1",
+ "PUMP1",
+ "PUNCTRE1",
+ "RATTLE1",
+ "REV2",
+ "RING",
+ "ROAR3",
+ "ROWBOAT1",
+ "RUCKUS1",
+ "RUMBLE1",
+ "SCOLD1",
+ "SCRATCH1",
+ "SHOVEL1",
+ "SHOWER2",
+ "SLOTPUL1",
+ "SNAKKILL",
+ "SNAP1",
+ "SNIFF1",
+ "SNIFF2",
+ "SNIFFM1",
+ "SNIP22B",
+ "SNORIN1",
+ "SNOROUT1",
+ "SNORT1",
+ "SPITBAL1",
+ "SPITBAL2",
+ "SPLASH1",
+ "SQUEAK1",
+ "SQUEAK2",
+ "SQUEAK3",
+ "STATUE",
+ "STAMPED1",
+ "STARS1",
+ "STONE1",
+ "STONE2",
+ "STONE3",
+ "STRETCH1",
+ "STRETCH2",
+ "SUNRISE1",
+ "SWALLOW1",
+ "SWALLOW2",
+ "SWAV22B",
+ "TELBEL1",
+ "TELBEL2",
+ "TENNIS1",
+ "THROW1",
+ "THUMP1",
+ "TOILET1",
+ "TRAPDOR1",
+ "TRICKLE",
+ "TROLGRNT",
+ "TROLYEL1",
+ "TROLYEL2",
+ "TUBEDOR1",
+ "TWIGSNAP",
+ "UMBRLA1",
+ "UNLOK22A",
+ "VACUUM",
+ "WAVELT1",
+ "WHIP1",
+ "WHIP2",
+ "WOODHIT1",
+ "YAWN1",
+ "ZING",
+ "ZIPPER1",
+ ""
+};
+
+static const StringListProvider k3SfxFilesDOSCDProvider = { ARRAYSIZE(k3SfxFilesDOSCD), k3SfxFilesDOSCD };
+
+static const byte k3SfxMapDOSCD[608] = {
+ 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00,
+ 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00,
+ 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x99, 0x00,
+ 0x46, 0x00, 0xA9, 0x00, 0x33, 0x00, 0x65, 0x00,
+ 0x9B, 0x00, 0x17, 0x00, 0xBB, 0x00, 0x64, 0x00,
+ 0x55, 0x00, 0xD5, 0x00, 0x66, 0x00, 0xB9, 0x00,
+ 0x9A, 0x00, 0xFF, 0x00, 0xCC, 0x00, 0x67, 0x00,
+ 0x2E, 0x00, 0xA1, 0x00, 0xD0, 0x00, 0x63, 0x00,
+ 0x89, 0x00, 0xBE, 0x00, 0x80, 0x00, 0x1D, 0x00,
+ 0x02, 0x00, 0x28, 0x00, 0x91, 0x00, 0x29, 0x00,
+ 0xCE, 0x00, 0x8F, 0x00, 0x49, 0x00, 0x2B, 0x00,
+ 0x2D, 0x00, 0x2C, 0x00, 0x3E, 0x00, 0x22, 0x00,
+ 0x80, 0x00, 0x9C, 0x00, 0x2E, 0x00, 0x04, 0x00,
+ 0x47, 0x00, 0xA8, 0x00, 0x51, 0x00, 0x52, 0x00,
+ 0x80, 0x00, 0x48, 0x00, 0x38, 0x0A, 0x0C, 0x00,
+ 0xD8, 0x00, 0xD1, 0x00, 0xD2, 0x00, 0xD3, 0x00,
+ 0xD1, 0x00, 0x6A, 0x00, 0x8A, 0x00, 0xC0, 0x00,
+ 0xC1, 0x00, 0xC2, 0x00, 0x9F, 0x00, 0xA3, 0x00,
+ 0x90, 0x00, 0xB6, 0x00, 0x37, 0x00, 0x71, 0x00,
+ 0x13, 0x00, 0x50, 0x00, 0x5A, 0x00, 0x6E, 0x00,
+ 0x70, 0x00, 0x11, 0x00, 0x16, 0x00, 0x14, 0x00,
+ 0x43, 0x00, 0xCD, 0x00, 0xAA, 0x00, 0x15, 0x00,
+ 0x83, 0x00, 0x19, 0x00, 0xB3, 0x00, 0x6F, 0x00,
+ 0x26, 0x00, 0xC8, 0x00, 0xA7, 0x00, 0x98, 0x00,
+ 0x87, 0x00, 0xC7, 0x00, 0xA2, 0x00, 0xB0, 0x00,
+ 0x12, 0x00, 0xD7, 0x00, 0x56, 0x00, 0x45, 0x00,
+ 0x4B, 0x00, 0xAF, 0x00, 0x3B, 0x00, 0x6C, 0x00,
+ 0x8E, 0x00, 0x39, 0x00, 0x38, 0x00, 0x92, 0x00,
+ 0x4B, 0x00, 0xD0, 0x00, 0x4A, 0x00, 0x9D, 0x00,
+ 0x7F, 0x00, 0x6D, 0x00, 0xFF, 0x00, 0xFF, 0x00,
+ 0x3D, 0x00, 0x72, 0x00, 0x40, 0x00, 0x66, 0x00,
+ 0x01, 0x00, 0xA5, 0x00, 0x00, 0x00, 0x3C, 0x00,
+ 0xAC, 0x00, 0x38, 0x00, 0x8B, 0x00, 0xDF, 0x00,
+ 0x0E, 0x00, 0x54, 0x00, 0xFF, 0x00, 0xFF, 0x00,
+ 0x94, 0x00, 0xAB, 0x00, 0x76, 0x00, 0x58, 0x00,
+ 0x6B, 0x00, 0x27, 0x00, 0xFF, 0x00, 0x77, 0x00,
+ 0xA6, 0x00, 0x63, 0x00, 0x9E, 0x00, 0xDE, 0x00,
+ 0x84, 0x00, 0x85, 0x00, 0x86, 0x00, 0x3F, 0x00,
+ 0xCC, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0x93, 0x00,
+ 0x9D, 0x00, 0x75, 0x00, 0x75, 0x00, 0x75, 0x00,
+ 0x75, 0x00, 0x3A, 0x00, 0xFF, 0x00, 0xFF, 0x00,
+ 0xFF, 0x00, 0xAE, 0x00, 0x8C, 0x00, 0x20, 0x00,
+ 0xFF, 0x00, 0x32, 0x00, 0x32, 0x00, 0xFF, 0x00,
+ 0x4D, 0x00, 0xD9, 0x00, 0x88, 0x00, 0x4D, 0x00,
+ 0x4D, 0x00, 0x4D, 0x00, 0x4D, 0x00, 0xA0, 0x00,
+ 0x4C, 0x00, 0x8C, 0x00, 0x4C, 0x00, 0x4C, 0x00,
+ 0x8C, 0x00, 0x8C, 0x00, 0x5C, 0x00, 0x5D, 0x00,
+ 0x60, 0x00, 0x5F, 0x00, 0xC5, 0x00, 0xBF, 0x00,
+ 0xFF, 0x00, 0x4F, 0x00, 0x16, 0x00, 0x59, 0x00,
+ 0xFF, 0x00, 0x24, 0x00, 0xA4, 0x00, 0xCF, 0x00,
+ 0xFF, 0x00, 0x47, 0x00, 0x95, 0x00, 0x96, 0x00,
+ 0x7B, 0x00, 0xBD, 0x00, 0xFF, 0x00, 0x34, 0x00,
+ 0x35, 0x00, 0x36, 0x00, 0xDE, 0x00, 0xFF, 0x00,
+ 0x4B, 0x00, 0xD6, 0x00, 0xFF, 0x00, 0x61, 0x00,
+ 0x62, 0x00, 0xFF, 0x00, 0x78, 0x00, 0xFF, 0x00,
+ 0x44, 0x00, 0xB4, 0x00, 0xB5, 0x00, 0x42, 0x00,
+ 0x27, 0x00, 0xA2, 0x00, 0x27, 0x00, 0x5D, 0x00,
+ 0x7A, 0x00, 0x89, 0x00, 0x1A, 0x00, 0x0E, 0x00,
+ 0x82, 0x00, 0xFF, 0x00, 0x79, 0x00, 0x2A, 0x00,
+ 0x81, 0x00, 0xFF, 0x00, 0x74, 0x00, 0x4E, 0x00,
+ 0xB1, 0x00, 0x1B, 0x00, 0x2F, 0x00, 0xBA, 0x00,
+ 0xBB, 0x00, 0xBC, 0x00, 0xDA, 0x00, 0xDB, 0x00,
+ 0x18, 0x00, 0x5E, 0x00, 0x0D, 0x0A, 0x88, 0x00,
+ 0x1E, 0x00, 0x1F, 0x00, 0x20, 0x00, 0x21, 0x00,
+ 0x69, 0x00, 0x1C, 0x00, 0x7C, 0x00, 0x30, 0x00,
+ 0xC3, 0x00, 0xC4, 0x00, 0xAD, 0x00, 0x25, 0x00,
+ 0x53, 0x00, 0xB7, 0x00, 0xB8, 0x00, 0xDC, 0x00,
+ 0x8D, 0x00, 0xCB, 0x00, 0xD4, 0x00, 0xB2, 0x00,
+ 0xDD, 0x00, 0x57, 0x00, 0x41, 0x00, 0x10, 0x00,
+ 0x4C, 0x00, 0xC9, 0x00, 0xFF, 0x00, 0xFF, 0x00,
+ 0x7D, 0x00, 0x7E, 0x00, 0xCA, 0x00, 0x03, 0x00,
+ 0x04, 0x00, 0x05, 0x00, 0x06, 0x00, 0x07, 0x00,
+ 0x08, 0x00, 0x09, 0x00, 0x0A, 0x00, 0x0B, 0x00,
+ 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00,
+ 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00,
+ 0x23, 0x00, 0x97, 0x00, 0x73, 0x00, 0x00, 0x00
+};
+
+static const ByteProvider k3SfxMapDOSCDProvider = { ARRAYSIZE(k3SfxMapDOSCD), k3SfxMapDOSCD };
+
+static const FrameControl k3ItemAnimDataDOSCD0FrameControl[3] = {
+ { 0x0003, 0x0019 },
+ { 0x0048, 0x001E },
+ { 0x0049, 0x001E }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD1FrameControl[7] = {
+ { 0x003A, 0x000B },
+ { 0x004B, 0x000B },
+ { 0x004C, 0x000B },
+ { 0x004D, 0x000B },
+ { 0x004E, 0x000B },
+ { 0x004F, 0x000B },
+ { 0x0050, 0x000B }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD2FrameControl[4] = {
+ { 0x0014, 0x000F },
+ { 0x0051, 0x000F },
+ { 0x0052, 0x000F },
+ { 0x0053, 0x000F }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD3FrameControl[4] = {
+ { 0x0013, 0x0014 },
+ { 0x0054, 0x0014 },
+ { 0x0055, 0x0014 },
+ { 0x0056, 0x0014 }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD4FrameControl[7] = {
+ { 0x0015, 0x0010 },
+ { 0x0057, 0x0012 },
+ { 0x0058, 0x0010 },
+ { 0x0059, 0x0011 },
+ { 0x005A, 0x0010 },
+ { 0x005B, 0x0011 },
+ { 0x005C, 0x0010 }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD5FrameControl[4] = {
+ { 0x0009, 0x001E },
+ { 0x005D, 0x001E },
+ { 0x005E, 0x001E },
+ { 0x005D, 0x001E }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD6FrameControl[7] = {
+ { 0x0039, 0x0021 },
+ { 0x005F, 0x0020 },
+ { 0x0060, 0x001E },
+ { 0x0061, 0x0020 },
+ { 0x0062, 0x0021 },
+ { 0x0063, 0x001E },
+ { 0x0064, 0x0022 }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD7FrameControl[34] = {
+ { 0x0040, 0x000C },
+ { 0x006C, 0x0010 },
+ { 0x006B, 0x0010 },
+ { 0x006A, 0x000F },
+ { 0x0069, 0x000F },
+ { 0x0068, 0x000F },
+ { 0x0067, 0x000F },
+ { 0x0066, 0x000F },
+ { 0x0065, 0x000F },
+ { 0x0066, 0x0011 },
+ { 0x0067, 0x0012 },
+ { 0x0068, 0x0010 },
+ { 0x0069, 0x000F },
+ { 0x006A, 0x0010 },
+ { 0x006B, 0x000F },
+ { 0x006C, 0x0010 },
+ { 0x006B, 0x000F },
+ { 0x006A, 0x0010 },
+ { 0x006B, 0x000F },
+ { 0x006C, 0x0010 },
+ { 0x006B, 0x000F },
+ { 0x006A, 0x0010 },
+ { 0x0069, 0x000F },
+ { 0x0068, 0x0010 },
+ { 0x0067, 0x0012 },
+ { 0x0066, 0x0011 },
+ { 0x0065, 0x00C8 },
+ { 0x0066, 0x0011 },
+ { 0x0067, 0x0012 },
+ { 0x0068, 0x0010 },
+ { 0x0069, 0x000F },
+ { 0x006A, 0x0010 },
+ { 0x006B, 0x000F },
+ { 0x006C, 0x0010 }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD8FrameControl[5] = {
+ { 0x002B, 0x0019 },
+ { 0x008E, 0x0016 },
+ { 0x008F, 0x0014 },
+ { 0x0090, 0x0016 },
+ { 0x0091, 0x0050 }
+};
+
+static const FrameControl k3ItemAnimDataDOSCD9FrameControl[6] = {
+ { 0x003B, 0x0258 },
+ { 0x0092, 0x000A },
+ { 0x0093, 0x000A },
+ { 0x0094, 0x000A },
+ { 0x0093, 0x000A },
+ { 0x0092, 0x000A }
+};
+
+static const ItemAnimDefinition k3ItemAnimDataDOSCD[10] = {
+ { 3, 3, k3ItemAnimDataDOSCD0FrameControl },
+ { 58, 7, k3ItemAnimDataDOSCD1FrameControl },
+ { 20, 4, k3ItemAnimDataDOSCD2FrameControl },
+ { 19, 4, k3ItemAnimDataDOSCD3FrameControl },
+ { 21, 7, k3ItemAnimDataDOSCD4FrameControl },
+ { 9, 4, k3ItemAnimDataDOSCD5FrameControl },
+ { 57, 7, k3ItemAnimDataDOSCD6FrameControl },
+ { 64, 34, k3ItemAnimDataDOSCD7FrameControl },
+ { 43, 5, k3ItemAnimDataDOSCD8FrameControl },
+ { 59, 6, k3ItemAnimDataDOSCD9FrameControl }
+};
+
+static const ItemAnimDefinitionProvider k3ItemAnimDataDOSCDProvider = { ARRAYSIZE(k3ItemAnimDataDOSCD), k3ItemAnimDataDOSCD };
+
+static const byte k3ItemMagicTableDOSCD[36] = {
+ 0x06, 0x05, 0x07, 0xFE, 0x05, 0x06, 0x07, 0xFE,
+ 0x03, 0x00, 0x22, 0xFE, 0x00, 0x03, 0x22, 0xFE,
+ 0x10, 0x00, 0x20, 0x0F, 0x00, 0x10, 0x0F, 0x20,
+ 0x10, 0x22, 0x21, 0x0F, 0x22, 0x10, 0x0F, 0x21,
+ 0xFF, 0xFF, 0xFF, 0x00
+};
+
+static const ByteProvider k3ItemMagicTableDOSCDProvider = { ARRAYSIZE(k3ItemMagicTableDOSCD), k3ItemMagicTableDOSCD };
+
+static const byte k3ItemStringMapDOSCD[72] = {
+ 0x01, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00,
+ 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01,
+ 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x02, 0x00, 0x02, 0x00, 0x02,
+ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x02, 0x00,
+ 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x02
+};
+
+static const ByteProvider k3ItemStringMapDOSCDProvider = { ARRAYSIZE(k3ItemStringMapDOSCD), k3ItemStringMapDOSCD };
+
diff --git a/devtools/create_kyradat/search.cpp b/devtools/create_kyradat/search.cpp
deleted file mode 100644
index b861ff0f5a..0000000000
--- a/devtools/create_kyradat/search.cpp
+++ /dev/null
@@ -1,215 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-// Disable symbol overrides so that we can use system headers.
-#define FORBIDDEN_SYMBOL_ALLOW_ALL
-
-#include "search.h"
-#include "md5.h"
-
-#include <algorithm>
-#include <cassert>
-
-Hasher::Hash Hasher::createHash(const byte *data, uint32 size) {
- md5_context ctx;
- md5_starts(&ctx);
- md5_update(&ctx, data, size);
-
- Hash hash;
- md5_finish(&ctx, hash.digest);
- return hash;
-}
-
-SearchData SearchCreator::create(const char *filename) {
- FILE *f = fopen(filename, "rb");
- assert(f);
-
- SearchData data;
- data.size = fileSize(f);
-
- byte *buffer = new byte[data.size];
- fread(buffer, 1, data.size, f);
- fclose(f);
-
- data = create(buffer, data.size);
- delete[] buffer;
-
- return data;
-}
-
-SearchData SearchCreator::create(const byte *buffer, uint32 size) {
- SearchData data;
-
- data.size = size;
- data.hash = Hasher::createHash(buffer, data.size);
- data.byteSum = 0;
-
- for (uint32 i = 0; i < data.size; ++i)
- data.byteSum += buffer[i];
-
- return data;
-}
-
-SumCreator::SumCreator(InputList list, const DataInput &input) : _curOffset(0), _input(input), _sums() {
- // Sort in ascending order
- list.sort(std::less<uint32>());
-
- uint32 byteSum = 0;
- uint32 oldSize = 0;
-
- for (InputList::const_iterator i = list.begin(); i != list.end(); ++i) {
- // Strip out entries, which exceed the buffer size
- if (*i > _input.size())
- continue;
-
- // Strip out duplicates
- if (_sums.find(*i) != _sums.end())
- continue;
-
- // Only add the bytes exceeding the old sum's size
- // to the sum. This saves a few accesses.
- for (uint32 j = oldSize; j < *i; ++j)
- byteSum += _input[j];
-
- _sums[*i] = byteSum;
-
- // Save this sum's size
- oldSize = *i;
- }
-}
-
-bool SumCreator::nextByte() {
- // Calculate the bytes available for summing. We need to add
- // 1 here, since we will only update the offset AFTER everything
- // is done.
- const uint32 sizeLeft = _input.size() - (_curOffset + 1);
-
- if (!sizeLeft) {
- _sums.clear();
- return false;
- }
-
- // Grab the old first byte.
- const byte firstByte = _input[_curOffset];
-
- typedef std::list<uint32> DeletionList;
- DeletionList toRemove;
-
- for (SumMap::iterator i = _sums.begin(); i != _sums.end(); ++i) {
- // If this entry needs to sum up a larger buffer than the buffer
- // size left, we will remove the entry and continue to the next
- // one.
- if (i->first > sizeLeft) {
- // Add the current entry to the removal list.
- toRemove.push_back(i->first);
- continue;
- }
-
- // Update the byte sum. First we remove the old first byte
- // from the sum, next we add the next available byte.
- i->second -= firstByte;
- i->second += _input[_curOffset + i->first];
- }
-
- // Remove all entries flagged for removal
- for (DeletionList::const_iterator i = toRemove.begin(); i != toRemove.end(); ++i)
- _sums.erase(*i);
-
- // Update out offset.
- ++_curOffset;
-
- // We return whether there are still some sums left available.
- return !_sums.empty();
-}
-
-bool SumCreator::hasSum(uint32 size) const {
- return _sums.find(size) != _sums.end();
-}
-
-uint32 SumCreator::getSum(uint32 size) const {
- SumMap::const_iterator s = _sums.find(size);
-
- if (s == _sums.end())
- return 0;
-
- return s->second;
-}
-
-Search::Search(const char *filename) : _data(), _search() {
- FILE *src = fopen(filename, "rb");
- assert(src);
-
- uint32 size = fileSize(src);
- byte *data = new byte[size];
- fread(data, 1, size, src);
- fclose(src);
-
- _data.resize(size);
- std::copy(data, data + size, _data.begin());
- delete[] data;
-}
-
-Search::Search(const byte *data, uint32 size) : _data(), _search() {
- _data.resize(size);
- std::copy(data, data + size, _data.begin());
-}
-
-void Search::addData(SearchData data) {
- // Do not add any duplicates
- if (std::find(_search.begin(), _search.end(), data) != _search.end())
- return;
-
- _search.push_back(data);
-}
-
-bool Search::search(ResultList &res) {
- SumCreator::InputList list;
- for (SearchList::const_iterator i = _search.begin(); i != _search.end(); ++i)
- list.push_back(i->size);
-
- SumCreator sum(list, _data);
- list.clear();
-
- do {
- const uint32 offset = sum.getOffset();
-
- for (SearchList::iterator i = _search.begin(); i != _search.end(); ) {
- if (!sum.hasSum(i->size)) {
- i = _search.erase(i);
- continue;
- }
-
- const uint32 byteSum = sum.getSum(i->size);
- if (byteSum == i->byteSum) {
- if (Hasher::createHash(&_data[offset], i->size) == i->hash) {
- res.push_back(ResultData(*i, offset));
- i = _search.erase(i);
- continue;
- }
- }
-
- ++i;
- }
- } while (sum.nextByte());
-
- return !res.empty();
-}
diff --git a/devtools/create_kyradat/search.h b/devtools/create_kyradat/search.h
deleted file mode 100644
index a9e8ee2726..0000000000
--- a/devtools/create_kyradat/search.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef SEARCH_H
-#define SEARCH_H
-
-#include "util.h"
-
-#include <list>
-#include <map>
-#include <vector>
-#include <cstring>
-
-class Hasher {
-public:
- struct Hash {
- uint8 digest[16];
-
- bool operator==(const Hash &r) const {
- return !std::memcmp(digest, r.digest, sizeof(digest));
- }
-
- bool operator<(const Hash &r) const {
- return std::memcmp(digest, r.digest, sizeof(digest)) < 0;
- }
- };
-
- static Hash createHash(const byte *data, uint32 size);
-};
-
-struct SearchData {
- uint32 size;
-
- uint32 byteSum;
- Hasher::Hash hash;
-
- bool operator==(const SearchData &r) const {
- return (size == r.size && byteSum == r.byteSum && hash == r.hash);
- }
-
- bool operator<(const SearchData &r) const {
- return (size < r.size && byteSum < r.byteSum && hash < r.hash);
- }
-};
-
-class SearchCreator {
-public:
- static SearchData create(const char *filename);
- static SearchData create(const byte *buffer, uint32 size);
-};
-
-class SumCreator {
-public:
- typedef std::list<uint32> InputList;
- typedef std::vector<byte> DataInput;
-
- SumCreator(InputList list, const DataInput &input);
-
- bool nextByte();
-
- uint32 getOffset() const { return _curOffset; }
-
- bool hasSum(uint32 size) const;
- uint32 getSum(uint32 size) const;
-private:
- uint32 _curOffset;
- DataInput _input;
-
- typedef std::map<uint32, uint32> SumMap;
- SumMap _sums;
-};
-
-class Search {
-public:
- Search(const char *filename);
- Search(const byte *data, uint32 size);
-
- void addData(SearchData data);
-
- struct ResultData {
- SearchData data;
- uint32 offset;
-
- ResultData() : data(), offset() {}
- ResultData(SearchData d, uint32 o) : data(d), offset(o) {}
- };
-
- typedef std::list<ResultData> ResultList;
- bool search(ResultList &res);
-private:
- SumCreator::DataInput _data;
-
- typedef std::list<SearchData> SearchList;
- SearchList _search;
-};
-
-#endif
diff --git a/devtools/create_kyradat/tables.cpp b/devtools/create_kyradat/tables.cpp
deleted file mode 100644
index 15f8240e79..0000000000
--- a/devtools/create_kyradat/tables.cpp
+++ /dev/null
@@ -1,4479 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-// Disable symbol overrides so that we can use system headers.
-#define FORBIDDEN_SYMBOL_ALLOW_ALL
-
-#include "tables.h"
-#include "create_kyradat.h"
-#include "common/language.h"
-#include "common/platform.h"
-
-#define EXTRACT_END_ENTRY { UNK_LANG, kPlatformUnknown, { 0, 0, { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } }
-
-namespace {
-
-// Id provider tables
-
-const ExtractEntrySearchData k1ForestSeqProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000195, 0x00001455, { { 0x86, 0xC2, 0x45, 0xEB, 0x16, 0x8A, 0x44, 0x73, 0xB4, 0x59, 0x13, 0x9B, 0x85, 0x40, 0x82, 0x81 } } } }, // floppy
- { UNK_LANG, kPlatformUnknown, { 0x000002DE, 0x00003946, { { 0x85, 0x79, 0xDC, 0xB8, 0x62, 0xAD, 0xD6, 0x01, 0xA5, 0x66, 0x6B, 0xC4, 0x61, 0xCA, 0x82, 0xF5 } } } }, // CD + Amiga
-
- { UNK_LANG, kPlatformUnknown, { 0x00000273, 0x00001D80, { { 0x18, 0x32, 0xB7, 0xFB, 0xD8, 0x1A, 0x6D, 0x83, 0x75, 0xF5, 0x2B, 0xF7, 0xC0, 0xFD, 0x85, 0xEF } } } }, // Amiga + CD demo
-
- { UNK_LANG, kPlatformFMTowns, { 0x00000196, 0x00001468, { { 0x06, 0x8D, 0xC1, 0x9B, 0xBC, 0x28, 0xE8, 0x36, 0x43, 0x67, 0x34, 0xAA, 0x78, 0xB9, 0xCB, 0x72 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x0000013B, 0x0000128A, { { 0xD8, 0xB1, 0xFF, 0x57, 0xC9, 0x5D, 0xE1, 0x23, 0xA5, 0xA0, 0x4B, 0x0F, 0x28, 0xAC, 0x56, 0x83 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1KallakWritingSeqProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000007F5, 0x00006DCD, { { 0x0E, 0x0A, 0x75, 0xA5, 0x71, 0x5A, 0xC6, 0x32, 0x52, 0x7F, 0xEC, 0x2B, 0x0B, 0xF2, 0x22, 0xE6 } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x00000805, 0x0000719E, { { 0xA2, 0xFE, 0x0A, 0xAA, 0xD9, 0x43, 0x5A, 0xBE, 0x56, 0x38, 0x73, 0x42, 0xAC, 0xA9, 0x1B, 0x01 } } } }, // CD
-
- { UNK_LANG, kPlatformAmiga, { 0x000007F4, 0x00006DAD, { { 0x84, 0x9D, 0x82, 0xD2, 0x4E, 0x8B, 0xE2, 0x86, 0x82, 0x5E, 0xE7, 0x2C, 0x7A, 0xD6, 0xFE, 0x19 } } } },
-
- { UNK_LANG, kPlatformFMTowns, { 0x000007F7, 0x00006E23, { { 0x97, 0x8C, 0x63, 0x8D, 0x91, 0x68, 0xA5, 0x63, 0x55, 0x43, 0xE7, 0xE0, 0x12, 0xF9, 0x80, 0xA4 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x000007F3, 0x00006D9E, { { 0x3E, 0x83, 0xA4, 0xBF, 0x43, 0xAC, 0xDD, 0x41, 0x33, 0xC3, 0x33, 0x4E, 0xAE, 0x08, 0xB6, 0xDA } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1KyrandiaLogoSeqProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000005C, 0x000003D3, { { 0x75, 0xC5, 0x55, 0x54, 0x00, 0xD7, 0xE9, 0x26, 0x0F, 0x01, 0xB1, 0xB7, 0xA9, 0x29, 0xF7, 0x69 } } } },
- { UNK_LANG, kPlatformDOS, { 0x000000A6, 0x00000A09, { { 0x70, 0x6E, 0x74, 0xBB, 0xD7, 0x09, 0x05, 0xDD, 0xA3, 0x09, 0x96, 0x40, 0xBD, 0x01, 0x19, 0x05 } } } }, // CD
- { UNK_LANG, kPlatformDOS, { 0x00000054, 0x00000300, { { 0x4E, 0xAD, 0xD0, 0x73, 0xD2, 0x3C, 0xF6, 0x6B, 0x65, 0x23, 0xA2, 0x30, 0xD6, 0xEE, 0x1C, 0x13 } } } }, // demo
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1KallakMalcolmSeqProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000026B, 0x00002132, { { 0x51, 0x07, 0x32, 0xA2, 0x09, 0x47, 0x97, 0x02, 0x85, 0x31, 0x39, 0x93, 0x3A, 0x53, 0x47, 0xA5 } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x00000267, 0x00002100, { { 0xD9, 0x5E, 0x59, 0xF0, 0x7B, 0xC8, 0xF1, 0x40, 0x4F, 0x68, 0x6F, 0xEC, 0xB5, 0xE8, 0x88, 0xE2 } } } }, // floppy
- { UNK_LANG, kPlatformUnknown, { 0x0000027B, 0x0000220A, { { 0xB7, 0xC1, 0x57, 0x04, 0x9B, 0x67, 0x82, 0x7B, 0x6E, 0xFD, 0x59, 0xF2, 0x10, 0x93, 0x89, 0x12 } } } }, // CD + Amiga
-
- { UNK_LANG, kPlatformUnknown, { 0x000002B8, 0x0000280B, { { 0x98, 0xC8, 0x36, 0x8C, 0xF8, 0x92, 0xC2, 0xB9, 0x1B, 0x71, 0x6B, 0x4C, 0xA4, 0x6C, 0xF6, 0x30 } } } }, // Amiga + CD demo
-
- { UNK_LANG, kPlatformFMTowns, { 0x0000026D, 0x00002188, { { 0x7E, 0x3B, 0x06, 0x69, 0x11, 0x59, 0xBE, 0x42, 0xCB, 0x33, 0x9C, 0x15, 0xCF, 0x61, 0xF6, 0xB0 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x0000026C, 0x00002145, { { 0x95, 0xB7, 0x9E, 0x63, 0x99, 0xFA, 0x22, 0xBF, 0x62, 0x37, 0xC2, 0x2B, 0x40, 0x73, 0x53, 0x83 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1MalcolmTreeSeqProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000216, 0x000014FB, { { 0xBA, 0x6F, 0x63, 0xD5, 0x44, 0xCE, 0xE8, 0x20, 0xD4, 0x4C, 0x06, 0x58, 0x21, 0x8E, 0x07, 0x8B } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x00000230, 0x0000192A, { { 0x28, 0xCC, 0x89, 0x40, 0x8A, 0xF7, 0xCB, 0xC0, 0x11, 0x8F, 0x0F, 0xE5, 0x5F, 0x24, 0x2D, 0x32 } } } }, // CD
-
- { UNK_LANG, kPlatformAmiga, { 0x00000214, 0x000014C4, { { 0xA2, 0x60, 0x16, 0x14, 0x20, 0xE4, 0x8D, 0x89, 0xC4, 0x30, 0x07, 0x21, 0xC9, 0x26, 0xA6, 0x84 } } } },
-
- { UNK_LANG, kPlatformFMTowns, { 0x00000218, 0x00001551, { { 0x30, 0x42, 0xD3, 0x7D, 0x6B, 0x43, 0x3B, 0xC7, 0x63, 0x56, 0x7D, 0x12, 0xE0, 0x53, 0x41, 0x48 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x00000217, 0x0000150E, { { 0x41, 0xFC, 0xD3, 0xAC, 0x8D, 0x1C, 0x11, 0x4E, 0xE0, 0x0C, 0xF6, 0x93, 0xA9, 0x22, 0x53, 0x7F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1WestwoodLogoSeqProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000004B, 0x000002FE, { { 0x6E, 0xDA, 0x5D, 0x1E, 0xF4, 0x38, 0xAE, 0x7A, 0x9F, 0xBC, 0x00, 0x7C, 0x77, 0x9D, 0x03, 0xAF } } } },
- { UNK_LANG, kPlatformDOS, { 0x0000004B, 0x0000032A, { { 0x9A, 0x54, 0x6F, 0x6C, 0x70, 0xD1, 0x02, 0x94, 0xD1, 0xA1, 0xA7, 0xBE, 0x1B, 0x10, 0xBD, 0x2F } } } }, // CD
- { UNK_LANG, kPlatformDOS, { 0x00000044, 0x00000243, { { 0x00, 0x11, 0x10, 0x64, 0x60, 0xE8, 0xB5, 0x59, 0x00, 0x60, 0xF5, 0x10, 0xB5, 0x63, 0x9D, 0x55 } } } }, // demo
-
- { UNK_LANG, kPlatformAmiga, { 0x0000004D, 0x00000319, { { 0xE9, 0x5D, 0xD4, 0x60, 0x4E, 0xA6, 0x92, 0x30, 0x9C, 0x77, 0x99, 0xBC, 0xB1, 0x97, 0xFB, 0xBD } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Demo1SeqProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000026, 0x0000016E, { { 0x61, 0xF2, 0x84, 0x42, 0x89, 0x6E, 0xB8, 0x0D, 0x01, 0xB7, 0xE4, 0x49, 0xA1, 0x72, 0xDC, 0x66 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Demo2SeqProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000023, 0x00000151, { { 0xE7, 0x9F, 0xA7, 0x80, 0xE3, 0xC1, 0x63, 0xF2, 0x3F, 0x7B, 0x64, 0xD9, 0x70, 0x3A, 0xF1, 0x55 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Demo3SeqProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000059, 0x000001A8, { { 0x9E, 0x90, 0x4F, 0x9E, 0xBC, 0x39, 0x37, 0xD1, 0x10, 0x67, 0x8C, 0xE5, 0x84, 0xFD, 0xD9, 0x7C } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Demo4SeqProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000020, 0x0000013E, { { 0xB7, 0x67, 0x1D, 0x50, 0x11, 0xD0, 0x16, 0x91, 0x40, 0x40, 0xD1, 0xC0, 0xA0, 0x79, 0x3D, 0xCE } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1AmuleteAnimSeqProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002A, 0x0000025D, { { 0xB1, 0x59, 0x3C, 0x9A, 0x61, 0xC0, 0x1D, 0x80, 0xB5, 0x0C, 0x2E, 0xF9, 0xF6, 0x36, 0xED, 0x7D } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1OutroReunionSeqProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000547, 0x0000781C, { { 0xCF, 0xD6, 0x1D, 0x3D, 0x14, 0x40, 0x88, 0x35, 0x36, 0x4F, 0x0B, 0x1F, 0x9A, 0x1C, 0x3D, 0xAC } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x00000547, 0x000077E0, { { 0x80, 0xC4, 0xFC, 0xD5, 0xEB, 0xAA, 0xA5, 0x87, 0x58, 0x5E, 0xAA, 0xE7, 0x01, 0x8F, 0x59, 0x3F } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x000005E5, 0x00008918, { { 0x6A, 0x33, 0x8C, 0xB0, 0x16, 0x57, 0x2D, 0xEB, 0xB2, 0xE1, 0x64, 0x80, 0x98, 0x99, 0x98, 0x19 } } } }, // CD
-
- { UNK_LANG, kPlatformAmiga, { 0x0000054A, 0x0000785F, { { 0x55, 0xEA, 0xB8, 0x7F, 0x3A, 0x86, 0xCD, 0xA6, 0xBC, 0xA7, 0x9A, 0x39, 0xED, 0xF5, 0x30, 0x0A } } } },
-
- { UNK_LANG, kPlatformUnknown, { 0x00000547, 0x00007876, { { 0x7A, 0xC7, 0x80, 0x34, 0x7A, 0x1B, 0xAB, 0xF8, 0xA7, 0x2F, 0x63, 0x3C, 0xDA, 0x89, 0x3F, 0x82 } } } }, // some floppy DOS + FM-TOWNS
-
- { UNK_LANG, kPlatformPC98, { 0x00000548, 0x00007889, { { 0x17, 0xE9, 0x40, 0xBA, 0x4A, 0xBD, 0xC6, 0x62, 0x56, 0x96, 0xD6, 0x1B, 0x11, 0xF3, 0xD8, 0x14 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1IntroCPSStringsProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x00000015, 0x0000071D, { { 0x59, 0x65, 0x08, 0xF9, 0x4C, 0x81, 0xA1, 0xE3, 0x68, 0xF7, 0xE3, 0xF6, 0x33, 0x5F, 0xF5, 0x36 } } } },
-
- { UNK_LANG, kPlatformUnknown, { 0x00000014, 0x0000071D, { { 0xBA, 0xB6, 0x58, 0xB3, 0x28, 0x5E, 0x9F, 0x77, 0x69, 0x9D, 0x77, 0x53, 0x9D, 0x0D, 0xB0, 0x29 } } } }, // floppy + PC98
- { UNK_LANG, kPlatformDOS, { 0x00000015, 0x00000786, { { 0xCF, 0x09, 0xE1, 0xD9, 0x8E, 0x34, 0x5D, 0xEA, 0xBC, 0xAC, 0xC4, 0xF4, 0x4A, 0xEC, 0xFF, 0xC1 } } } }, // CD
- { UNK_LANG, kPlatformDOS, { 0x00000019, 0x000008DB, { { 0x3A, 0xDC, 0x1D, 0xAD, 0xF4, 0x5E, 0xC9, 0x19, 0xE9, 0x84, 0xD1, 0x31, 0x89, 0x6B, 0x6C, 0xF7 } } } }, // Old floppy
- { UNK_LANG, kPlatformDOS, { 0x0000000C, 0x00000413, { { 0xA1, 0xE3, 0x06, 0x53, 0x23, 0x9A, 0xE0, 0xF1, 0xE4, 0xFD, 0xD9, 0x05, 0x22, 0xA6, 0x28, 0x46 } } } }, // demo
-
- { UNK_LANG, kPlatformAmiga, { 0x00000016, 0x0000070A, { { 0xD9, 0xDB, 0x91, 0xCD, 0x93, 0x81, 0xC4, 0x3F, 0x14, 0xF1, 0xC5, 0x02, 0xE7, 0x3F, 0x3A, 0x6C } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1IntroCOLStringsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000F09, { { 0x05, 0x7B, 0x69, 0xB7, 0x6A, 0xC3, 0x7F, 0xD9, 0x7E, 0x51, 0x87, 0xA5, 0x31, 0xD8, 0x80, 0xB3 } } } },
- { UNK_LANG, kPlatformUnknown, { 0x0000002B, 0x00000F09, { { 0x01, 0x40, 0x65, 0xC1, 0x33, 0xAA, 0x64, 0xA7, 0x44, 0xD5, 0x89, 0x68, 0x17, 0x47, 0xC7, 0x1D } } } }, // floppy(?) + PC98
- { UNK_LANG, kPlatformDOS, { 0x00000046, 0x0000174F, { { 0xAA, 0x59, 0x01, 0x20, 0x06, 0xB4, 0x80, 0xC0, 0x84, 0x38, 0xFD, 0x97, 0xBF, 0x78, 0xDD, 0x78 } } } }, // demo
-
- { UNK_LANG, kPlatformAmiga, { 0x0000002E, 0x00000F09, { { 0x2A, 0x42, 0xB8, 0x4E, 0xC6, 0xF0, 0x5F, 0x4A, 0x08, 0xB4, 0xE3, 0xE5, 0xBD, 0x32, 0x11, 0x06 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1IntroWSAStringsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000093, 0x00002E5D, { { 0xAB, 0xD1, 0x32, 0x89, 0x2A, 0x8D, 0xC0, 0x2C, 0x87, 0x87, 0xA3, 0x14, 0x2A, 0x2A, 0x22, 0x7F } } } },
-
- { UNK_LANG, kPlatformUnknown, { 0x00000086, 0x00002E5D, { { 0xD2, 0x8D, 0x62, 0xEF, 0xEB, 0x75, 0x04, 0x13, 0x64, 0x85, 0x6B, 0x6C, 0xE8, 0x6C, 0xCF, 0x52 } } } },
- { UNK_LANG, kPlatformDOS, { 0x0000004D, 0x00001AEC, { { 0x15, 0xBC, 0x8C, 0xD9, 0x33, 0x0C, 0xC5, 0x66, 0x87, 0x3B, 0x76, 0xEE, 0x0C, 0x41, 0x4D, 0x1F } } } }, // demo
-
- { UNK_LANG, kPlatformUnknown, { 0x00000080, 0x00002E5D, { { 0x67, 0x03, 0x20, 0xDF, 0xAA, 0x3C, 0x6A, 0xB5, 0x45, 0xD0, 0x00, 0x2B, 0x30, 0xCC, 0x36, 0xB6 } } } }, // Amiga + CD Demo
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1IntroStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x000004F5, 0x0001A7B1, { { 0xC7, 0x65, 0x5B, 0x5A, 0x56, 0x43, 0x94, 0x55, 0x5B, 0x00, 0xFD, 0x5D, 0xF4, 0xB5, 0x04, 0x15 } } } }, // floppy
- { EN_ANY, kPlatformDOS, { 0x000004F6, 0x0001A7B1, { { 0xDE, 0x41, 0xB1, 0x98, 0xD5, 0xAD, 0x6B, 0xBA, 0x33, 0x04, 0x19, 0x5D, 0xCC, 0x07, 0xB5, 0x56 } } } }, // CD
- { EN_ANY, kPlatformDOS, { 0x000002FA, 0x00010181, { { 0x48, 0xD3, 0x1B, 0x8E, 0x8D, 0xBC, 0x1F, 0x51, 0x35, 0x71, 0xE2, 0xAB, 0xC8, 0xBE, 0xFC, 0x88 } } } }, // demo
-
- { FR_FRA, kPlatformDOS, { 0x000005EF, 0x000207E6, { { 0xDC, 0x6C, 0x9A, 0x7C, 0x19, 0x45, 0x2B, 0x25, 0x84, 0xCC, 0xE1, 0x40, 0xFE, 0x8E, 0xF4, 0x51 } } } }, // floppy
- { FR_FRA, kPlatformDOS, { 0x000005F0, 0x000207E6, { { 0xB8, 0x51, 0xEA, 0x44, 0x64, 0x04, 0xE4, 0x6A, 0x7B, 0xBD, 0x31, 0x62, 0xC0, 0xDD, 0xEA, 0xEF } } } }, // CD
-
- { DE_DEU, kPlatformDOS, { 0x00000605, 0x000212AB, { { 0x8F, 0x3A, 0x9D, 0x9A, 0x81, 0xF2, 0x4A, 0x90, 0xBC, 0xBD, 0x62, 0x8B, 0xD8, 0xD6, 0xF4, 0x5D } } } }, // floppy
- { DE_DEU, kPlatformDOS, { 0x00000606, 0x000212AB, { { 0xB0, 0x78, 0x86, 0xFB, 0xCB, 0x3D, 0x1E, 0x1E, 0x86, 0xE7, 0x2C, 0x2B, 0x3A, 0x3C, 0x6F, 0x1C } } } }, // CD
-
- { IT_ITA, kPlatformDOS, { 0x0000057C, 0x0001DF02, { { 0x4B, 0x09, 0xBC, 0xBC, 0xB3, 0x3C, 0x69, 0xEB, 0xA6, 0xB5, 0x76, 0xED, 0xC7, 0x57, 0x71, 0xB0 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x000005F0, 0x0001CF13, { { 0x4F, 0xA0, 0x47, 0x57, 0x6D, 0x2D, 0xA6, 0x62, 0x06, 0xBE, 0x86, 0xD2, 0xD7, 0xEA, 0x2E, 0xD6 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x000005CF, 0x00020415, { { 0xCC, 0xE5, 0x9F, 0xB8, 0xCA, 0xFA, 0x2D, 0x05, 0xB8, 0xAF, 0x9F, 0x1F, 0x8A, 0xA8, 0x56, 0xDE } } } },
-
- { RU_RUS, kPlatformDOS, { 0x000004F6, 0x000131C6, { { 0x77, 0x76, 0x12, 0xB1, 0xDA, 0x9C, 0xA9, 0xB5, 0x21, 0x1E, 0x49, 0x08, 0x46, 0xB3, 0xE4, 0x61 } } } },
-
- { EN_ANY, kPlatformAmiga, { 0x0000050A, 0x0001A7B1, { { 0x1B, 0x74, 0x71, 0x4C, 0xAB, 0x81, 0x10, 0x59, 0x8A, 0x21, 0x50, 0xBB, 0xFE, 0x6F, 0xD0, 0xE8 } } } },
- { DE_DEU, kPlatformAmiga, { 0x00000626, 0x00021319, { { 0x80, 0x55, 0x54, 0x14, 0x5D, 0x6F, 0x49, 0x04, 0x4A, 0xEF, 0x92, 0xB8, 0x5B, 0x01, 0x0F, 0x97 } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x00000545, 0x0001A84C, { { 0xEF, 0xE2, 0xE4, 0x92, 0xE1, 0x18, 0xF8, 0x3C, 0x91, 0x29, 0x4D, 0x82, 0xA4, 0x3E, 0xE6, 0x7D } } } },
- { JA_JPN, kPlatformFMTowns, { 0x000005FB, 0x0003163E, { { 0x16, 0x28, 0x83, 0xCE, 0x29, 0x94, 0x9F, 0x82, 0xDC, 0xD4, 0x06, 0xE8, 0x67, 0xC9, 0x56, 0x29 } } } },
-
- { JA_JPN, kPlatformPC98, { 0x000005D0, 0x00032AD7, { { 0xEE, 0x36, 0x93, 0xDD, 0x71, 0x02, 0xE9, 0x0D, 0x54, 0xDE, 0xB6, 0xE1, 0x09, 0x59, 0x60, 0x64 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1OutroHomeStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000005, 0x00000189, { { 0xA5, 0xF3, 0x03, 0x3F, 0x43, 0x2B, 0x77, 0xCC, 0x5C, 0x96, 0x64, 0xB1, 0x75, 0xB5, 0x3E, 0xF6 } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x00000007, 0x000003E8, { { 0x68, 0x35, 0x87, 0x53, 0xD9, 0x53, 0x1F, 0x13, 0x24, 0x61, 0x0D, 0x8D, 0x33, 0x91, 0xF3, 0x47 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000007, 0x00000267, { { 0xD0, 0xC1, 0x11, 0x49, 0x3D, 0x3F, 0xCE, 0x84, 0x8F, 0xEF, 0xE3, 0xFD, 0x43, 0xCA, 0x92, 0xB0 } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x0000000E, 0x00000473, { { 0xB6, 0xEB, 0xE8, 0x22, 0x67, 0x24, 0xA9, 0xA3, 0x94, 0x55, 0xC6, 0x57, 0x17, 0x15, 0x5B, 0x04 } } } },
-
- { ES_ESP, kPlatformDOS, { 0x00000005, 0x00000178, { { 0x2E, 0x9C, 0x94, 0x0F, 0x29, 0x77, 0x27, 0x1D, 0x77, 0x1E, 0x5A, 0xF8, 0x0E, 0x8D, 0x09, 0x6B } } } },
- { IT_ITA, kPlatformDOS, { 0x00000005, 0x00000178, { { 0x2E, 0x9C, 0x94, 0x0F, 0x29, 0x77, 0x27, 0x1D, 0x77, 0x1E, 0x5A, 0xF8, 0x0E, 0x8D, 0x09, 0x6B } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000007, 0x000001B8, { { 0x17, 0x95, 0x5B, 0x4F, 0xE2, 0x07, 0x5A, 0x49, 0xFA, 0xCE, 0x53, 0x8B, 0xE7, 0x46, 0x69, 0xC7 } } } }, // (fan) CD
-
- { RU_RUS, kPlatformDOS, { 0x00000005, 0x000000EF, { { 0xA0, 0xB4, 0xF2, 0x11, 0x16, 0x92, 0xC8, 0xEB, 0xF2, 0x0C, 0xFE, 0x43, 0xFE, 0x18, 0xF6, 0xBB } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1RoomFilenamesProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x0000034C, 0x0000B7AA, { { 0x7C, 0x1B, 0x89, 0x09, 0xF0, 0x87, 0x3C, 0x64, 0x3D, 0x0E, 0x61, 0xCC, 0x09, 0x8D, 0xC9, 0x95 } } } },
- { UNK_LANG, kPlatformUnknown, { 0x000002DC, 0x0000B7AA, { { 0x31, 0x56, 0x41, 0x69, 0x1E, 0x84, 0x54, 0x2C, 0xF7, 0x7B, 0x98, 0x25, 0xF3, 0x91, 0x56, 0xFD } } } }, // DOS + PC98
-
- { UNK_LANG, kPlatformAmiga, { 0x00000308, 0x0000B7AA, { { 0x6D, 0xA4, 0xE8, 0x27, 0x68, 0x24, 0xCF, 0xAA, 0x30, 0x32, 0x71, 0x74, 0x36, 0x68, 0x82, 0x20 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1RoomListProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x000064E8, 0x0010312B, { { 0x94, 0x5C, 0x87, 0x35, 0x35, 0x6B, 0x3E, 0xBF, 0x55, 0x3D, 0xDB, 0xD9, 0xFB, 0x97, 0x27, 0x5D } } } },
-
- { UNK_LANG, kPlatformUnknown, { 0x00004DD6, 0x0010312B, { { 0xC6, 0xF0, 0xC4, 0x2C, 0x5A, 0xD7, 0x48, 0xE4, 0x41, 0x23, 0x65, 0x6D, 0xC8, 0xC7, 0xCE, 0xF5 } } } }, // DOS + PC98
- { UNK_LANG, kPlatformUnknown, { 0x00004DD6, 0x0010315D, { { 0x4A, 0x1B, 0xA2, 0x35, 0xE1, 0x22, 0xD3, 0x7A, 0xE9, 0x69, 0x12, 0x3A, 0x9C, 0x92, 0x6F, 0x5C } } } }, // Old DOS floppy
-
- { UNK_LANG, kPlatformAmiga, { 0x00004ECC, 0x0010312B, { { 0x9A, 0x91, 0xF1, 0x9C, 0x8A, 0x96, 0x1C, 0x7B, 0xB7, 0xE4, 0xF1, 0xE9, 0x7D, 0xEF, 0x40, 0xBF } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1CharacterImageFilenamesProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x000000F7, 0x00003A8F, { { 0x1F, 0xAB, 0x8E, 0x5F, 0xAD, 0x76, 0x57, 0x37, 0xD7, 0x9B, 0x3F, 0x35, 0x4B, 0xA0, 0x98, 0x37 } } } },
-
- { UNK_LANG, kPlatformUnknown, { 0x000000E4, 0x00003A8F, { { 0x7A, 0x77, 0x6D, 0x26, 0xC8, 0x43, 0xCB, 0x74, 0x46, 0x2E, 0x04, 0x22, 0x89, 0x27, 0x33, 0x06 } } } }, // DOS + PC98
-
- { UNK_LANG, kPlatformAmiga, { 0x000000F0, 0x00003A8F, { { 0xC0, 0xD9, 0x8C, 0x2B, 0x65, 0x51, 0x7C, 0x13, 0x52, 0x7E, 0xF7, 0x63, 0xA6, 0xA9, 0xCE, 0x40 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1AudioTracksProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000038, 0x00000D5C, { { 0x65, 0x35, 0x2F, 0xA3, 0x93, 0x22, 0x15, 0xA0, 0xC6, 0x2B, 0x73, 0x7C, 0x3E, 0xB8, 0x7A, 0xB5 } } } },
-
- { UNK_LANG, kPlatformFMTowns, { 0x0000005D, 0x0000154E, { { 0xA7, 0x7E, 0x03, 0x0A, 0x81, 0x54, 0xD2, 0x5D, 0x7B, 0x33, 0x07, 0xBF, 0x70, 0x01, 0x4B, 0x79 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1AudioTracks2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000009, 0x00000363, { { 0x16, 0xA2, 0x68, 0x21, 0x04, 0xA8, 0x39, 0x7E, 0xA1, 0x7D, 0x70, 0xFD, 0x86, 0xC7, 0x69, 0x28 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1AudioTracksIntroProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x0000022C, { { 0x5F, 0xC9, 0xE1, 0x4B, 0x34, 0x52, 0xB9, 0xF8, 0xFF, 0x37, 0x8B, 0xF4, 0xEF, 0x5E, 0xC5, 0xDA } } } }, // floppy + demo
- { UNK_LANG, kPlatformUnknown, { 0x0000000C, 0x00000458, { { 0xEB, 0xB3, 0x96, 0xA5, 0x07, 0xE6, 0x11, 0x58, 0xDB, 0x3F, 0x34, 0x30, 0xFB, 0x7B, 0x92, 0xC8 } } } }, // CD
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1ItemNamesProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000468, 0x00018B13, { { 0xCE, 0xFE, 0x19, 0x5D, 0x3F, 0xD7, 0x2A, 0xF6, 0xD0, 0xC5, 0xBC, 0x17, 0x6A, 0x52, 0xDB, 0xFE } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000506, 0x0001C3CC, { { 0x46, 0xD4, 0x19, 0x04, 0x2A, 0x46, 0xCD, 0x63, 0x41, 0x5A, 0x8E, 0xA8, 0x00, 0xDD, 0x02, 0x77 } } } },
-
- { DE_DEU, kPlatformDOS, { 0x00000512, 0x0001DD2C, { { 0x5D, 0xB0, 0x6B, 0x8E, 0x9C, 0x70, 0x09, 0x90, 0x3C, 0xC6, 0x58, 0x1F, 0x71, 0x24, 0x76, 0x56 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000591, 0x0001F869, { { 0x4D, 0xD7, 0x66, 0xBB, 0x9A, 0xD8, 0x79, 0x1E, 0x92, 0x2B, 0xE5, 0xC2, 0x0F, 0x02, 0x0B, 0x35 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000506, 0x0001C1D9, { { 0xF2, 0x2D, 0x18, 0x13, 0x61, 0xFB, 0x57, 0x93, 0x5C, 0xDC, 0x79, 0x44, 0x96, 0x01, 0xA6, 0x90 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000530, 0x0001D90A, { { 0x52, 0xFB, 0xA8, 0x3F, 0xA3, 0x6F, 0xC2, 0x67, 0x55, 0x9F, 0x66, 0x9F, 0xFD, 0x79, 0x44, 0xDF } } } },
-
- { RU_RUS, kPlatformDOS, { 0x000004AE, 0x00011888, { { 0x6F, 0x4D, 0xBE, 0xC8, 0xAE, 0x7C, 0x12, 0x3E, 0x69, 0x0B, 0x39, 0xCB, 0x4D, 0x4B, 0xA8, 0x3A } } } }, // floppy
-
- { EN_ANY, kPlatformAmiga, { 0x00000380, 0x00012960, { { 0x2D, 0x81, 0xCF, 0x7A, 0x9D, 0x71, 0x83, 0xB7, 0xE5, 0x00, 0xB0, 0x6E, 0x25, 0x94, 0xCB, 0xA4 } } } },
- { DE_DEU, kPlatformAmiga, { 0x000003E5, 0x0001607D, { { 0x6D, 0xBE, 0xAD, 0xE5, 0xD1, 0x41, 0x6C, 0x42, 0x71, 0x79, 0x9C, 0x78, 0x93, 0x84, 0xC8, 0x11 } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x00000505, 0x00018B13, { { 0x62, 0x76, 0x84, 0x5D, 0x8D, 0xBA, 0x23, 0xC5, 0x67, 0x26, 0x22, 0xBD, 0xBE, 0x81, 0x2D, 0xFF } } } },
- { JA_JPN, kPlatformFMTowns, { 0x00000587, 0x000247A1, { { 0xE8, 0xCA, 0x1E, 0x34, 0x05, 0xE5, 0x08, 0xCA, 0xA7, 0xFE, 0x55, 0xCB, 0x75, 0xD0, 0xA7, 0x19 } } } },
-
- { JA_JPN, kPlatformPC98, { 0x000004CF, 0x000247A1, { { 0xBE, 0x80, 0x3F, 0x10, 0xF7, 0x3A, 0x85, 0xD1, 0xE8, 0x24, 0xE6, 0x4E, 0x8F, 0x17, 0xC9, 0x2E } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1TakenStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000010, 0x000004C2, { { 0x08, 0xC0, 0x66, 0xB1, 0x45, 0x04, 0x78, 0xF9, 0xAF, 0x0F, 0x52, 0xC8, 0x0E, 0x0C, 0x69, 0x86 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x0000001E, 0x000008FA, { { 0xC9, 0xCC, 0x2E, 0x0B, 0xE4, 0xE0, 0x44, 0xBD, 0xC2, 0x10, 0x09, 0xA3, 0x36, 0xB1, 0x5D, 0x1C } } } }, // floppy
- { FR_FRA, kPlatformDOS, { 0x0000000F, 0x0000047D, { { 0xE8, 0xB5, 0x15, 0xD5, 0x96, 0x81, 0xD2, 0x84, 0xAB, 0x33, 0xC1, 0x1C, 0x47, 0x1B, 0xFE, 0xDB } } } }, // CD
-
- { DE_DEU, kPlatformDOS, { 0x0000001C, 0x000009C0, { { 0xA8, 0x64, 0xDD, 0x9D, 0x91, 0x42, 0x04, 0x26, 0xD0, 0x80, 0x40, 0xED, 0x08, 0x51, 0xC9, 0xBB } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000014, 0x00000588, { { 0x5B, 0x75, 0xAE, 0xD7, 0x50, 0x6C, 0x3E, 0x65, 0x5C, 0xF8, 0x84, 0x34, 0x48, 0x58, 0x0E, 0x6E } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000000F, 0x000002F0, { { 0x37, 0x22, 0x62, 0xE4, 0x1B, 0x1F, 0xD6, 0x9E, 0x94, 0xA3, 0x41, 0x00, 0xD5, 0x29, 0x28, 0x09 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000014, 0x000005D8, { { 0xD6, 0x00, 0x90, 0x6A, 0x75, 0x3B, 0xF1, 0xFE, 0xF4, 0x3E, 0x0E, 0x1D, 0x39, 0xEB, 0x2D, 0xC8 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000010, 0x00000262, { { 0x1E, 0x90, 0x20, 0xC8, 0xD3, 0x08, 0x53, 0x4F, 0x28, 0x95, 0x6A, 0xA4, 0x14, 0x37, 0x05, 0xF0 } } } },
-
- { EN_ANY, kPlatformAmiga, { 0x00000008, 0x00000261, { { 0x93, 0x5B, 0x79, 0xE8, 0x89, 0x8E, 0xB5, 0x37, 0x39, 0x2A, 0xB0, 0x04, 0x98, 0x80, 0x5A, 0x4E } } } },
- { DE_DEU, kPlatformAmiga, { 0x0000000E, 0x000004E0, { { 0x52, 0x4D, 0x74, 0x91, 0x70, 0x0D, 0x4C, 0x40, 0x5C, 0x7E, 0xBA, 0xDA, 0x24, 0x49, 0xF3, 0x1A } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x0000001C, 0x00000AED, { { 0x32, 0xD2, 0x87, 0x67, 0x3D, 0x01, 0x50, 0xF3, 0xFA, 0x19, 0x7A, 0xB0, 0xF8, 0x6F, 0x8A, 0x07 } } } },
- { JA_JPN, kPlatformFMTowns, { 0x0000001F, 0x00000EB7, { { 0x7F, 0x8C, 0xFF, 0x35, 0x30, 0x71, 0x9A, 0x78, 0xCC, 0x07, 0x11, 0x86, 0xE3, 0x0D, 0x16, 0xDF } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000016, 0x00000C56, { { 0x97, 0xF0, 0x57, 0xCC, 0x03, 0x06, 0x41, 0xDC, 0xFC, 0xD5, 0xA2, 0x35, 0x0C, 0x71, 0x37, 0xCC } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1PlacedStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000009, 0x000002B7, { { 0xE7, 0xCF, 0x8A, 0x19, 0xEF, 0x98, 0xE5, 0x74, 0x46, 0x46, 0x47, 0x65, 0xB6, 0x81, 0x70, 0x0A } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x0000000D, 0x0000074C, { { 0x0E, 0x1C, 0x1F, 0xD2, 0xCF, 0xBF, 0x40, 0xE1, 0x59, 0x0F, 0x1B, 0x46, 0xED, 0x8B, 0x96, 0x8E } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000011, 0x00000545, { { 0x05, 0xEF, 0x74, 0x54, 0x06, 0xB7, 0x64, 0x47, 0x21, 0x56, 0x55, 0x74, 0x70, 0x2D, 0xA8, 0x23 } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x0000000B, 0x00000389, { { 0xB9, 0x74, 0xBE, 0x63, 0xB4, 0xA4, 0x8A, 0x04, 0xD9, 0x50, 0x73, 0xB7, 0x01, 0x9E, 0x77, 0xD3 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x0000000D, 0x0000040D, { { 0x9C, 0x71, 0x53, 0x35, 0xC3, 0xE8, 0x46, 0xB9, 0xD2, 0xFA, 0x1C, 0x8C, 0xC3, 0xFF, 0xBC, 0x1F } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000011, 0x000003B8, { { 0xC8, 0xA6, 0xE4, 0x8A, 0xF7, 0x4C, 0x3F, 0xA6, 0x24, 0x7F, 0xEF, 0xE4, 0x63, 0x8B, 0x72, 0xF3 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000000D, 0x00000439, { { 0x57, 0xAE, 0x1C, 0xC1, 0xF5, 0xE8, 0x5B, 0x9E, 0x90, 0x02, 0xB9, 0x8D, 0x86, 0x38, 0xFB, 0xA8 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000009, 0x00000203, { { 0x7D, 0xAE, 0x67, 0x94, 0x8E, 0x73, 0x35, 0xC1, 0x11, 0xB4, 0x55, 0x6E, 0x92, 0x25, 0x39, 0xE4 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1DroppedStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000A, 0x0000033C, { { 0x96, 0x63, 0xFD, 0x73, 0x71, 0xCC, 0x62, 0x59, 0x86, 0x02, 0x47, 0x55, 0x82, 0xF8, 0x5E, 0x1F } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x0000000B, 0x0000059F, { { 0xDD, 0x5E, 0x51, 0x7E, 0xD9, 0xFC, 0xCD, 0xAD, 0x6B, 0x93, 0x71, 0xBE, 0x83, 0x63, 0x3F, 0x88 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000011, 0x00000579, { { 0x3D, 0x0C, 0x3C, 0xAD, 0x2E, 0xE3, 0x7A, 0x5A, 0x4A, 0x21, 0x1C, 0x96, 0xC5, 0x5A, 0xA7, 0x9E } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x00000011, 0x00000612, { { 0xEC, 0xCD, 0x99, 0x58, 0xF7, 0x08, 0x92, 0x43, 0x95, 0x10, 0x6B, 0xDD, 0x61, 0xF7, 0x5C, 0xA4 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x0000000B, 0x0000031B, { { 0x32, 0x0C, 0xCD, 0x83, 0xF6, 0x97, 0xC8, 0x76, 0x57, 0x6B, 0x7C, 0xAD, 0x51, 0xEB, 0x91, 0x1F } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000011, 0x000003B8, { { 0xC8, 0xA6, 0xE4, 0x8A, 0xF7, 0x4C, 0x3F, 0xA6, 0x24, 0x7F, 0xEF, 0xE4, 0x63, 0x8B, 0x72, 0xF3 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000008, 0x00000261, { { 0x1D, 0xB5, 0xFB, 0x23, 0x94, 0xA7, 0x86, 0x7A, 0xAC, 0x53, 0xDA, 0x6F, 0xCC, 0x41, 0x0F, 0xD7 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x0000000A, 0x000001F5, { { 0xAA, 0x21, 0x88, 0x6D, 0xD0, 0xAB, 0x5C, 0x15, 0x7F, 0xAD, 0x0E, 0x3B, 0x2F, 0x17, 0xBF, 0xAD } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1NoDropStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000047, 0x00001881, { { 0xEF, 0x81, 0x2B, 0x8F, 0x06, 0x0C, 0xA6, 0xBA, 0x50, 0x9C, 0x99, 0x40, 0x53, 0xFD, 0xC1, 0x55 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x0000004C, 0x00001B39, { { 0xFF, 0xD5, 0x5D, 0x1C, 0xF1, 0x8A, 0xA4, 0x21, 0xB1, 0x56, 0x2B, 0xAC, 0x9F, 0x40, 0x30, 0x53 } } } },
-
- { DE_DEU, kPlatformDOS, { 0x0000004C, 0x00001AFF, { { 0xE5, 0x05, 0x79, 0x10, 0x91, 0x95, 0x64, 0x40, 0xB2, 0x73, 0x39, 0xFA, 0x50, 0x8D, 0xCE, 0x8A } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000045, 0x00001850, { { 0x50, 0x34, 0x82, 0xA9, 0x28, 0xDE, 0x44, 0xB3, 0x2D, 0x59, 0x0B, 0x7F, 0xCE, 0x42, 0x1F, 0x73 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000004C, 0x00001650, { { 0x42, 0x7A, 0x04, 0xCD, 0x69, 0xB1, 0x06, 0x9A, 0xD8, 0x7E, 0x7A, 0x14, 0x5B, 0x1C, 0x70, 0xB8 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000003D, 0x000015FA, { { 0x87, 0x2E, 0xE6, 0x8A, 0xF1, 0xC9, 0xC9, 0xEC, 0xD3, 0x2C, 0x25, 0x7E, 0x36, 0x02, 0xF7, 0xAC } } } },
-
- { EN_ANY, kPlatformAmiga, { 0x00000048, 0x00001881, { { 0x69, 0xA8, 0x0B, 0x47, 0xFD, 0xA0, 0x94, 0x12, 0x82, 0x1D, 0xE0, 0x9C, 0xB1, 0x10, 0x6D, 0x11 } } } },
- { DE_DEU, kPlatformAmiga, { 0x0000004D, 0x00001AFF, { { 0xF8, 0x83, 0x2E, 0x08, 0x88, 0x7B, 0x72, 0x7F, 0x71, 0xD4, 0x05, 0xF3, 0x1A, 0x78, 0xF1, 0x9D } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x0000007A, 0x0000323C, { { 0x00, 0x7F, 0x8E, 0x2E, 0x7B, 0xFC, 0x06, 0x0B, 0x7A, 0x7F, 0x17, 0xAF, 0x47, 0x82, 0xC1, 0x16 } } } },
- { JA_JPN, kPlatformFMTowns, { 0x00000061, 0x00002E9C, { { 0x8A, 0xFA, 0x43, 0x26, 0x68, 0x6D, 0x5A, 0x59, 0x0C, 0x9E, 0xCB, 0x28, 0x43, 0x33, 0x54, 0x49 } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000042, 0x000025C2, { { 0x6F, 0x34, 0x59, 0x17, 0x22, 0xCE, 0x1A, 0x82, 0x18, 0xE3, 0x9F, 0x86, 0x84, 0xF1, 0x8E, 0x0C } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1PutDownStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000026, 0x00000D27, { { 0x83, 0x09, 0x51, 0xD3, 0x94, 0x2B, 0xB1, 0x8B, 0x8B, 0x16, 0xA9, 0xEB, 0xE8, 0xA2, 0x4F, 0x0C } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x00000029, 0x0000187D, { { 0xDE, 0xEE, 0x66, 0x88, 0x57, 0xF5, 0xF9, 0x2E, 0xD2, 0x14, 0xF5, 0x83, 0xA0, 0x0D, 0x96, 0x86 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x0000002E, 0x0000101D, { { 0xBC, 0xEA, 0x6C, 0x1F, 0x31, 0xCF, 0x30, 0x26, 0x2D, 0x24, 0xC5, 0xEA, 0x97, 0x49, 0xDC, 0x4C } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x00000028, 0x00000E7E, { { 0x26, 0x93, 0x76, 0x37, 0x41, 0x2E, 0xF3, 0xED, 0xF5, 0x7B, 0xA7, 0xEB, 0x80, 0x61, 0x3B, 0x84 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000034, 0x0000131D, { { 0x36, 0x87, 0x4D, 0x73, 0x2A, 0x67, 0xBA, 0xCE, 0xCB, 0x33, 0x3C, 0x10, 0xCC, 0x3E, 0x7E, 0xAD } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000002E, 0x00000EB2, { { 0x14, 0x08, 0xE6, 0xD1, 0x54, 0x76, 0x2A, 0x9E, 0xBE, 0x5A, 0x15, 0xEB, 0x52, 0x01, 0x52, 0x97 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000002D, 0x00001052, { { 0x12, 0x0A, 0x23, 0x11, 0xDF, 0x8A, 0x59, 0xD4, 0xF2, 0xCA, 0xA5, 0xA7, 0x76, 0x1B, 0x54, 0xB6 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000024, 0x0000099F, { { 0x05, 0xD7, 0xB8, 0x32, 0x95, 0x93, 0x29, 0x5F, 0xF3, 0x1A, 0xF0, 0x2E, 0xBA, 0x3A, 0x0D, 0x27 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1WaitAmuletStringProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x0000003D, 0x0000150D, { { 0x11, 0xC8, 0x7E, 0x83, 0x7A, 0xC3, 0x5D, 0xD9, 0x72, 0xFC, 0x75, 0xCB, 0x57, 0xE9, 0xF1, 0x36 } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x00000029, 0x000017A7, { { 0xFD, 0xA3, 0xAD, 0x24, 0x16, 0x49, 0x22, 0x6F, 0x52, 0xE9, 0x50, 0x11, 0x51, 0x38, 0xCA, 0xE0 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000049, 0x00001ADD, { { 0xFD, 0xCF, 0x9C, 0xAD, 0xA2, 0xAA, 0x74, 0x11, 0x8E, 0x89, 0x02, 0xCB, 0x2B, 0x5B, 0x2B, 0x1C } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x00000048, 0x000019CF, { { 0x82, 0xDD, 0xBD, 0xA3, 0xD0, 0xE0, 0x19, 0xC0, 0x6D, 0xC5, 0xEE, 0x7A, 0x0B, 0x49, 0x06, 0xCE } } } },
-
- { IT_ITA, kPlatformDOS, { 0x0000004A, 0x00001B4C, { { 0x38, 0x26, 0x54, 0x10, 0x3D, 0x32, 0xCD, 0xAE, 0x3F, 0x96, 0xFE, 0x6F, 0x4A, 0x94, 0x72, 0xB0 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000049, 0x0000184F, { { 0x11, 0x42, 0xB2, 0xD6, 0x76, 0xEA, 0xF9, 0xCA, 0x46, 0xE4, 0xA6, 0x35, 0xE8, 0xB9, 0x8B, 0xE9 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000042, 0x000017FD, { { 0x0A, 0x8A, 0x7E, 0x9A, 0x5F, 0x4A, 0x35, 0x06, 0x4D, 0x6B, 0xBF, 0x29, 0x1B, 0xAD, 0xD8, 0x37 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x0000003C, 0x00000EF1, { { 0xC1, 0x0A, 0xFA, 0xBB, 0x65, 0xC3, 0x31, 0xC9, 0x80, 0x9B, 0x0C, 0x16, 0xED, 0xBF, 0x47, 0xFA } } } },
-
- { EN_ANY, kPlatformUnknown, { 0x0000003E, 0x0000150D, { { 0xA8, 0xBF, 0x99, 0x9B, 0xC1, 0x36, 0x21, 0x47, 0x6D, 0x99, 0x4F, 0x34, 0xE6, 0x61, 0x47, 0xFD } } } }, // Amiga + FM-TOWNS
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1BlackJewelStringProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000023, 0x00000B73, { { 0xBE, 0xE9, 0xBD, 0x65, 0xB9, 0xB1, 0xCD, 0xF0, 0x45, 0x03, 0x01, 0x70, 0xBE, 0xD0, 0x0F, 0x80 } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x00000035, 0x0000205F, { { 0x33, 0xD6, 0x19, 0xEE, 0xEA, 0xDD, 0x9F, 0xB5, 0x77, 0x0C, 0x8E, 0x84, 0x5E, 0x61, 0x22, 0x3E } } } },
-
- { FR_FRA, kPlatformDOS, { 0x0000002B, 0x00000F11, { { 0x68, 0xA0, 0xA3, 0xA0, 0xB6, 0xD1, 0x40, 0x22, 0xB4, 0x10, 0x3D, 0x5A, 0x7F, 0x1F, 0x4B, 0xE7 } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x00000031, 0x0000113B, { { 0xA5, 0x00, 0xD1, 0xDC, 0x25, 0x99, 0x3E, 0x6B, 0xFF, 0xC8, 0x6C, 0xDA, 0xA4, 0xCF, 0x51, 0xD7 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000022, 0x00000B6E, { { 0xAE, 0xA0, 0xDF, 0x07, 0xDD, 0x88, 0x98, 0x6B, 0xDD, 0x9E, 0x2E, 0xC0, 0xBD, 0x45, 0x2E, 0x2B } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000002B, 0x00000D6D, { { 0x08, 0x5E, 0x1F, 0xA8, 0x8F, 0x1F, 0x6A, 0xE0, 0xF3, 0x49, 0xEF, 0x44, 0xA8, 0xCD, 0xDE, 0x45 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000025, 0x00000CF6, { { 0x4B, 0x13, 0x39, 0xCB, 0x3F, 0x44, 0x18, 0x46, 0x43, 0xDB, 0x94, 0xC5, 0x3E, 0x6B, 0xC4, 0x74 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000021, 0x000007FF, { { 0x3F, 0x26, 0xB4, 0xB4, 0x11, 0x0C, 0xEF, 0xC0, 0x6A, 0xD1, 0xCC, 0x0E, 0x68, 0x7D, 0xA5, 0x1A } } } },
-
- { EN_ANY, kPlatformUnknown, { 0x00000024, 0x00000B73, { { 0x8D, 0x57, 0x5F, 0x93, 0x85, 0x75, 0xF2, 0xD8, 0x36, 0xC2, 0x7C, 0x0E, 0x3B, 0xEA, 0xE0, 0x0A } } } }, // Amiga + FM-TOWNS
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1PoisonGoneStringProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x0000002D, 0x00000F59, { { 0x9A, 0x88, 0x07, 0x5A, 0x9C, 0xC3, 0x7B, 0xB0, 0x79, 0x69, 0xE0, 0x84, 0x11, 0x9B, 0x82, 0xCD } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000059, 0x00001E91, { { 0xDA, 0x9C, 0xC4, 0x7A, 0x79, 0x73, 0x60, 0xBF, 0x31, 0xF8, 0x8F, 0xAF, 0xC1, 0x4D, 0x25, 0xEC } } } }, // floppy
- { FR_FRA, kPlatformDOS, { 0x0000002A, 0x00000EAA, { { 0x0B, 0x4E, 0xDF, 0x03, 0x9E, 0x64, 0x3B, 0x13, 0x10, 0x6A, 0xF9, 0x4C, 0x66, 0x0D, 0x09, 0xC5 } } } }, // (fan) CD
-
- { DE_DEU, kPlatformDOS, { 0x00000036, 0x00001324, { { 0x30, 0x67, 0xEE, 0x7C, 0x4D, 0x36, 0xFE, 0x46, 0x05, 0x44, 0x23, 0xA1, 0xB4, 0x07, 0x16, 0xB5 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000034, 0x0000128D, { { 0x4E, 0x54, 0xFE, 0x58, 0x7F, 0x15, 0xFA, 0xC1, 0x50, 0xF8, 0x47, 0x29, 0x15, 0xE8, 0x83, 0xC7 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000002A, 0x00000DFD, { { 0x57, 0xDC, 0xE0, 0x45, 0x2E, 0x89, 0x77, 0x7F, 0x4B, 0x41, 0xCF, 0x4A, 0xFE, 0x0B, 0xAF, 0xC1 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000033, 0x0000127E, { { 0x67, 0xEB, 0xD3, 0x00, 0xF8, 0x4F, 0xF1, 0x79, 0x48, 0xE6, 0x9C, 0xB2, 0xA7, 0xCF, 0x76, 0x07 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000027, 0x00000952, { { 0x36, 0x64, 0x30, 0x1C, 0x5A, 0xC0, 0x0D, 0x73, 0xE5, 0xA6, 0x2F, 0xD8, 0x64, 0x98, 0x81, 0x56 } } } },
-
- { EN_ANY, kPlatformAmiga, { 0x0000002E, 0x00000F59, { { 0xAD, 0x95, 0xF3, 0xA7, 0xBB, 0x04, 0x08, 0x77, 0xD0, 0x71, 0xFC, 0x8B, 0x33, 0x2A, 0x6D, 0xD3 } } } },
- { DE_DEU, kPlatformAmiga, { 0x00000037, 0x00001324, { { 0xB3, 0xE6, 0x0A, 0x49, 0x37, 0x73, 0x3C, 0xAF, 0x78, 0x9E, 0x7D, 0x13, 0x75, 0xAE, 0xA8, 0x89 } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x0000003C, 0x000013B4, { { 0xE9, 0x54, 0xF1, 0xEC, 0x64, 0x5A, 0xEB, 0xC7, 0xAA, 0x7E, 0xA2, 0x9F, 0xE8, 0xFB, 0x3A, 0x82 } } } },
- { JA_JPN, kPlatformFMTowns, { 0x0000003D, 0x000017D1, { { 0x7C, 0x93, 0x62, 0x32, 0x47, 0xB9, 0x78, 0x03, 0x86, 0x8D, 0x99, 0xB8, 0x86, 0x68, 0xEF, 0x3A } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000016, 0x00000B60, { { 0xFF, 0x8C, 0xC0, 0x1B, 0x2C, 0x0C, 0x23, 0x89, 0x93, 0x79, 0xC5, 0xCD, 0xAC, 0xF9, 0xEA, 0xA7 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1HealingTipStringProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x0000002D, 0x00000F04, { { 0xC0, 0xC7, 0x0C, 0x3D, 0xA7, 0x62, 0x14, 0xFB, 0xE8, 0x52, 0x05, 0x0D, 0xFE, 0xF6, 0xC7, 0x28 } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x0000002B, 0x00001949, { { 0xC7, 0xE3, 0x0A, 0x6B, 0x8F, 0xCA, 0xBC, 0x3A, 0xDC, 0x76, 0x48, 0xD3, 0x8B, 0xD9, 0x44, 0x2E } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000036, 0x0000132C, { { 0x86, 0x65, 0x80, 0x10, 0x40, 0x32, 0x6C, 0x2F, 0x5E, 0x76, 0xFB, 0xDC, 0x19, 0x33, 0x02, 0x3C } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x0000003C, 0x00001537, { { 0x78, 0xC2, 0x76, 0x24, 0x0D, 0x1F, 0xC0, 0x13, 0x4E, 0x34, 0x0A, 0x50, 0x4C, 0x35, 0x7E, 0xB1 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x0000003F, 0x0000170E, { { 0x0B, 0x37, 0xA4, 0x5E, 0x05, 0x4A, 0x96, 0x1F, 0x2E, 0x02, 0x43, 0xBE, 0xCC, 0xF9, 0x21, 0x5E } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000036, 0x00001364, { { 0x59, 0x70, 0x13, 0x8D, 0x93, 0x9C, 0x1B, 0x69, 0x2F, 0x13, 0x9A, 0xB2, 0x4C, 0x97, 0x7E, 0x95 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000028, 0x00000E0F, { { 0x3E, 0x40, 0xCA, 0x2A, 0x5F, 0xFE, 0x74, 0x30, 0x8C, 0x31, 0x41, 0x09, 0xBD, 0xFD, 0xA3, 0x7E } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000026, 0x000008EE, { { 0x7C, 0xC0, 0x62, 0x39, 0x66, 0x9E, 0x63, 0xCD, 0x21, 0x3D, 0x72, 0x91, 0xB8, 0xB9, 0xB6, 0x92 } } } },
-
- { EN_ANY, kPlatformUnknown, { 0x0000002E, 0x00000F04, { { 0x95, 0x39, 0x36, 0x89, 0xC4, 0x60, 0x7C, 0x0C, 0xDC, 0x06, 0xF7, 0x86, 0x1A, 0xF7, 0x93, 0x2B } } } }, // Amiga + FM-TOWNS
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1WispJewelStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000053, 0x00001C62, { { 0x9A, 0xF1, 0xCC, 0xB3, 0x09, 0xF0, 0x9C, 0x33, 0x0E, 0xF0, 0xE3, 0xF8, 0x24, 0x63, 0x40, 0x95 } } } }, // floppy
- { EN_ANY, kPlatformDOS, { 0x00000052, 0x00001CE8, { { 0x6D, 0x69, 0x6D, 0x15, 0x4F, 0xF1, 0xD8, 0xA6, 0x53, 0x9F, 0xE3, 0x77, 0x75, 0x25, 0xE7, 0x93 } } } }, // CD
-
- { FR_FRA, kPlatformDOS, { 0x0000005B, 0x00001E9A, { { 0xC1, 0x26, 0xF3, 0x64, 0x18, 0x7D, 0xF7, 0x5A, 0xB6, 0x2B, 0x44, 0x57, 0xDC, 0x60, 0x20, 0x3C } } } }, // floppy
- { FR_FRA, kPlatformDOS, { 0x00000050, 0x00001B8D, { { 0x9A, 0xCE, 0x1D, 0x62, 0xFA, 0xC6, 0x73, 0x80, 0x02, 0x0A, 0x61, 0x24, 0xDC, 0x2A, 0xEF, 0xE6 } } } }, // CD
-
- { DE_DEU, kPlatformDOS, { 0x00000061, 0x00002184, { { 0x4B, 0x20, 0xD7, 0xE6, 0x00, 0xBF, 0x32, 0x40, 0xB7, 0xD0, 0xD6, 0xEC, 0x9C, 0x0F, 0x0B, 0xF0 } } } }, // floppy
- { DE_DEU, kPlatformDOS, { 0x00000058, 0x00001E88, { { 0x0E, 0x14, 0xD1, 0xF3, 0x03, 0x29, 0x48, 0x1D, 0x32, 0x2A, 0xBB, 0x0B, 0x48, 0xB3, 0x2E, 0x47 } } } }, // CD
-
- { IT_ITA, kPlatformDOS, { 0x00000074, 0x00002945, { { 0x17, 0x8B, 0x7E, 0xD9, 0x04, 0x7C, 0xD4, 0x9D, 0xCE, 0xF0, 0x79, 0x00, 0xAC, 0x82, 0x7C, 0x82 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000050, 0x00001A10, { { 0xFB, 0x79, 0x74, 0x14, 0xB9, 0x75, 0x4F, 0x44, 0x83, 0xB1, 0xD4, 0xBE, 0x17, 0x0F, 0xC4, 0xD6 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000005F, 0x0000211E, { { 0xE7, 0x0A, 0x85, 0x25, 0x44, 0x41, 0x47, 0x3B, 0x7A, 0xA6, 0x62, 0xAE, 0xAE, 0xD5, 0x92, 0x45 } } } },
-
- // only one of two strings translated in the fan translation
- { RU_RUS, kPlatformDOS, { 0x00000053, 0x0000191F, { { 0x14, 0xEB, 0x38, 0x54, 0x40, 0x40, 0x04, 0xA6, 0xA0, 0xFE, 0xDB, 0xD0, 0x8C, 0xA6, 0x1F, 0x55 } } } },
-
- { EN_ANY, kPlatformAmiga, { 0x00000056, 0x00001C62, { { 0x43, 0x28, 0x3C, 0x0F, 0x78, 0x52, 0xE7, 0x2A, 0x77, 0xF3, 0x21, 0x5A, 0xF0, 0xFC, 0x9E, 0xF8 } } } },
- { DE_DEU, kPlatformAmiga, { 0x00000063, 0x00002184, { { 0x6B, 0xDC, 0x6B, 0xCF, 0xD4, 0xC7, 0x2A, 0x9A, 0x2E, 0x34, 0x71, 0x4E, 0xB7, 0xF6, 0xAF, 0xDA } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x00000075, 0x00002B94, { { 0xA5, 0x4C, 0xBF, 0x5F, 0xD3, 0xF8, 0x6D, 0xE4, 0xB4, 0x8E, 0x64, 0x84, 0xD9, 0xBA, 0x2B, 0x33 } } } },
- { JA_JPN, kPlatformFMTowns, { 0x00000067, 0x00002C6B, { { 0x55, 0x56, 0x6B, 0xEA, 0xEF, 0x34, 0xDA, 0x23, 0x23, 0xF4, 0x9D, 0x0F, 0xBF, 0xC3, 0x1F, 0xDA } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000037, 0x00001EDF, { { 0xA8, 0x42, 0x79, 0xEB, 0x82, 0xAF, 0x03, 0xD7, 0x03, 0xF9, 0xE0, 0x60, 0xD4, 0x87, 0xAD, 0x2E } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1MagicJewelStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000013, 0x0000069E, { { 0x7C, 0xF2, 0xEE, 0x7C, 0x8A, 0xCE, 0x5B, 0x09, 0x32, 0xDC, 0x31, 0x1F, 0x45, 0x21, 0x84, 0xFF } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x0000000F, 0x0000087E, { { 0xD8, 0xF1, 0x40, 0x9D, 0x9C, 0x15, 0x9E, 0xBD, 0x69, 0xE5, 0xE1, 0x51, 0x34, 0x22, 0xF3, 0x75 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000011, 0x000005DB, { { 0x44, 0x99, 0x35, 0x77, 0x9B, 0x3D, 0xF8, 0xAF, 0x7A, 0xA6, 0x14, 0xD0, 0x99, 0xC6, 0x80, 0x7B } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x00000014, 0x000006EF, { { 0xDE, 0x77, 0xB6, 0x8C, 0x39, 0x5C, 0x6F, 0xDF, 0x7D, 0x04, 0x0F, 0x65, 0x24, 0x75, 0xED, 0x95 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x0000001D, 0x00000A83, { { 0x60, 0x69, 0x18, 0x6C, 0x34, 0xB0, 0x56, 0xE3, 0x06, 0x7C, 0xB1, 0xDD, 0x26, 0x80, 0xAE, 0x30 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000011, 0x000005E4, { { 0xD5, 0x11, 0xDA, 0x40, 0x09, 0x6A, 0x5D, 0x76, 0x5C, 0x20, 0xC4, 0x43, 0x4D, 0xF3, 0x67, 0xF0 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000011, 0x000005CD, { { 0x32, 0x2A, 0xFF, 0x9F, 0x10, 0x75, 0x6B, 0xD6, 0x46, 0xAE, 0x55, 0xD3, 0x68, 0x4F, 0xBB, 0x5A } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000012, 0x0000047D, { { 0xB1, 0xC3, 0x66, 0xBC, 0x42, 0xAD, 0x5B, 0xD8, 0xF5, 0x3D, 0xB9, 0x50, 0x77, 0x32, 0xA7, 0x15 } } } },
-
- { EN_ANY, kPlatformUnknown, { 0x00000014, 0x0000069E, { { 0x6A, 0x1C, 0x9B, 0x85, 0x61, 0xC7, 0x28, 0xA9, 0xA3, 0xF4, 0xFA, 0x47, 0x90, 0x8F, 0x06, 0xB4 } } } }, // Amiga + FM-TOWNS
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1ThePoisonStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000057, 0x00001C24, { { 0xBC, 0x31, 0x5C, 0x25, 0x50, 0x36, 0x58, 0x20, 0x55, 0xFC, 0x75, 0x47, 0x2D, 0x43, 0x73, 0x78 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000068, 0x000022D8, { { 0x39, 0xDA, 0xB3, 0xD2, 0xDA, 0x3F, 0xAB, 0x40, 0x1A, 0x4F, 0x9D, 0x02, 0xBA, 0x37, 0xEC, 0x4D } } } },
-
- { DE_DEU, kPlatformDOS, { 0x00000072, 0x00002690, { { 0xEF, 0x62, 0x85, 0xA3, 0x8B, 0x20, 0x4B, 0x65, 0xF8, 0xE7, 0x2C, 0x02, 0x3F, 0x3F, 0x25, 0x65 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000063, 0x000021F8, { { 0x3C, 0x2E, 0xF8, 0xAD, 0xCF, 0xB5, 0xE7, 0x2C, 0x98, 0x7A, 0xB9, 0x6F, 0x7A, 0x42, 0xE1, 0x92 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000068, 0x00002077, { { 0x5D, 0xF4, 0xF9, 0xD9, 0x87, 0x34, 0x14, 0xAB, 0xE4, 0x9A, 0x67, 0xAF, 0x18, 0x8B, 0x40, 0x98 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000059, 0x00001DF7, { { 0x16, 0x7B, 0x5F, 0x91, 0x06, 0x5B, 0xFC, 0x9C, 0x88, 0x61, 0xCC, 0x1B, 0x52, 0x4F, 0x91, 0xC5 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000052, 0x0000136F, { { 0xEF, 0xD2, 0xA0, 0x5F, 0xD5, 0xE6, 0x77, 0x96, 0xFA, 0xC5, 0x60, 0x7C, 0xB7, 0xA8, 0x7C, 0x7A } } } },
-
- { EN_ANY, kPlatformAmiga, { 0x00000058, 0x00001C24, { { 0xBA, 0x1F, 0xBD, 0x5C, 0x85, 0x3D, 0x3C, 0x92, 0xD1, 0x13, 0xF3, 0x40, 0x2E, 0xBB, 0x1C, 0xE2 } } } },
- { DE_DEU, kPlatformAmiga, { 0x00000073, 0x00002690, { { 0x44, 0xAE, 0xC9, 0xFD, 0x9F, 0x8E, 0x1B, 0xDD, 0x3F, 0xE4, 0x4D, 0x4B, 0x5A, 0x13, 0xE5, 0x99 } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x00000092, 0x0000334E, { { 0xC9, 0x02, 0xB5, 0xEF, 0x90, 0xA8, 0x9C, 0x6E, 0xAD, 0xD6, 0x1F, 0xCC, 0x71, 0x9F, 0x19, 0x2C } } } },
- { JA_JPN, kPlatformFMTowns, { 0x000000A0, 0x00003EEB, { { 0x4B, 0x0C, 0xD5, 0xF0, 0xFE, 0x05, 0xF5, 0x09, 0x96, 0xA9, 0xE4, 0xDD, 0x86, 0x8D, 0x79, 0x3C } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000045, 0x00002350, { { 0xAD, 0x17, 0xA0, 0x40, 0x86, 0x0E, 0x1D, 0x2F, 0xA7, 0x14, 0x5B, 0x81, 0x38, 0x09, 0x80, 0x21 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1FluteStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000003C, 0x00001599, { { 0x96, 0x72, 0x5A, 0x8A, 0xA0, 0xEE, 0xA2, 0xCE, 0x4D, 0x21, 0x01, 0x6C, 0xC5, 0x1A, 0xEB, 0x21 } } } }, // floppy + AMIGA
- { EN_ANY, kPlatformDOS, { 0x0000009C, 0x00002334, { { 0xA8, 0xA3, 0x1F, 0x0D, 0x36, 0x25, 0x19, 0x98, 0x50, 0xA0, 0x13, 0x65, 0xF4, 0xE8, 0x27, 0x19 } } } }, // CD
-
- { FR_FRA, kPlatformDOS, { 0x00000045, 0x000018EE, { { 0x3E, 0x3B, 0x20, 0x46, 0xEB, 0xB0, 0x88, 0x26, 0xB2, 0x0D, 0xD6, 0x8F, 0xF7, 0x53, 0x74, 0xAE } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x00000040, 0x000016F2, { { 0x70, 0xFF, 0x86, 0x73, 0x9E, 0x75, 0xDD, 0x17, 0x27, 0x86, 0x44, 0xE9, 0x78, 0x3D, 0x48, 0xDB } } } },
-
- { IT_ITA, kPlatformDOS, { 0x0000004C, 0x00001BFB, { { 0x06, 0x4F, 0x6A, 0x37, 0x8B, 0x44, 0x27, 0x26, 0xCE, 0x28, 0xB2, 0x47, 0x71, 0xE2, 0x27, 0x73 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000045, 0x00001726, { { 0x5A, 0xCF, 0x64, 0x4B, 0x61, 0x57, 0xEC, 0xB3, 0xBF, 0x32, 0x45, 0x51, 0x5D, 0x02, 0xC5, 0xB6 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000052, 0x00001D8E, { { 0x9D, 0xA5, 0xF1, 0x42, 0xD1, 0x48, 0xEB, 0x8F, 0x4B, 0xDC, 0xD9, 0x10, 0x55, 0xBD, 0x12, 0xBB } } } },
-
- // not translated in the fan translation
- { RU_RUS, kPlatformDOS, { 0x0000003C, 0x00001599, { { 0x96, 0x72, 0x5A, 0x8A, 0xA0, 0xEE, 0xA2, 0xCE, 0x4D, 0x21, 0x01, 0x6C, 0xC5, 0x1A, 0xEB, 0x21 } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x0000005A, 0x000024F9, { { 0xCA, 0x1F, 0x62, 0x23, 0x22, 0x25, 0x4A, 0x94, 0x8A, 0x50, 0x59, 0xD5, 0xB4, 0x4E, 0xF1, 0xA6 } } } },
- { JA_JPN, kPlatformFMTowns, { 0x00000053, 0x00002745, { { 0x7A, 0xBB, 0xFC, 0x30, 0xB6, 0xCE, 0x61, 0xD4, 0xDB, 0xB0, 0xE6, 0xB2, 0xF4, 0x4D, 0x81, 0x35 } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000032, 0x00001CDF, { { 0xB7, 0x08, 0x8D, 0x67, 0xB2, 0x0F, 0x59, 0x2D, 0xA6, 0x36, 0x21, 0x7B, 0x8B, 0x89, 0xE3, 0xED } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1FlaskFullStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000001C, 0x000009C8, { { 0xA5, 0xC7, 0x5E, 0x6E, 0x02, 0xEE, 0x8C, 0xF8, 0xF0, 0xBF, 0x69, 0xB8, 0x05, 0x1E, 0xF5, 0x28 } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x0000001F, 0x00001135, { { 0x90, 0x52, 0x4A, 0x95, 0xE4, 0x89, 0xD6, 0x0A, 0xE1, 0x2E, 0x98, 0x11, 0x02, 0xF5, 0x79, 0x37 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x0000001E, 0x00000AC7, { { 0x4E, 0x7A, 0xC8, 0xC5, 0xD4, 0xB8, 0xD0, 0x73, 0x66, 0x2B, 0x2A, 0x13, 0xDE, 0xE1, 0x32, 0xAA } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x0000001E, 0x00000A71, { { 0x11, 0x88, 0x37, 0x8E, 0x17, 0xF2, 0x82, 0x1E, 0x72, 0xF0, 0xA3, 0x2B, 0x4F, 0x76, 0x5F, 0xBA } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000021, 0x00000C19, { { 0xC0, 0xFA, 0xD2, 0xB8, 0xCA, 0x94, 0x67, 0x10, 0x65, 0x01, 0x7F, 0xB0, 0x95, 0xC6, 0x0E, 0xFF } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000001E, 0x00000973, { { 0xD3, 0x93, 0x3C, 0xA6, 0xF7, 0x79, 0xE6, 0x05, 0x49, 0x88, 0x89, 0xDE, 0xCA, 0x77, 0x2F, 0x1B } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000001B, 0x0000099D, { { 0x13, 0x23, 0x5D, 0x38, 0x9B, 0xFB, 0x00, 0x5C, 0xA1, 0x3A, 0x22, 0xD6, 0xCD, 0x5C, 0x09, 0xAE } } } },
-
- { RU_RUS, kPlatformDOS, { 0x0000001A, 0x0000066E, { { 0x36, 0x43, 0xB6, 0xB2, 0xED, 0xBA, 0x21, 0x0C, 0x16, 0x54, 0x99, 0xF9, 0x2E, 0x6E, 0x0A, 0x28 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1FullFlaskStringProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000097, 0x00003521, { { 0x9C, 0x30, 0xC7, 0xC9, 0x97, 0xF3, 0x0E, 0xC4, 0x6E, 0xCA, 0x63, 0xC6, 0xD8, 0x06, 0xFF, 0x30 } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000086, 0x00002E16, { { 0x94, 0x6C, 0x6D, 0xB6, 0x4C, 0x84, 0xBB, 0xF6, 0xC8, 0x50, 0x4C, 0x00, 0x38, 0xE3, 0x09, 0x5B } } } },
-
- { DE_DEU, kPlatformDOS, { 0x000000AF, 0x00003E38, { { 0x66, 0x86, 0xAF, 0x1A, 0x2D, 0x33, 0x40, 0xE7, 0x96, 0x9B, 0x32, 0x26, 0xFF, 0x9F, 0x79, 0x8B } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000086, 0x00002CDB, { { 0xB1, 0xAE, 0x2A, 0x03, 0x28, 0xEC, 0x6D, 0x2F, 0xED, 0x71, 0xBE, 0x60, 0xCF, 0xAB, 0x8C, 0x00 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x000000B5, 0x00004111, { { 0xA3, 0x4D, 0xA0, 0xF5, 0xE5, 0xD7, 0xFE, 0x11, 0xBB, 0x2C, 0xB5, 0xF2, 0xE0, 0x52, 0xF1, 0xF0 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000009A, 0x0000363B, { { 0x38, 0x25, 0xE6, 0xB5, 0xCB, 0x78, 0x5E, 0xAD, 0x2D, 0xD4, 0x2E, 0x8B, 0x89, 0x20, 0xB1, 0x95 } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000094, 0x0000232B, { { 0xBF, 0x68, 0xF9, 0x8F, 0x82, 0xE9, 0xE7, 0x69, 0x33, 0xD6, 0x41, 0x15, 0x2C, 0xFE, 0x72, 0xAB } } } },
-
- { EN_ANY, kPlatformAmiga, { 0x0000009A, 0x00003521, { { 0x26, 0xE5, 0xC8, 0x6D, 0x14, 0x81, 0x9F, 0x90, 0x38, 0x3C, 0x00, 0x9D, 0x8E, 0x72, 0xB1, 0x83 } } } },
- { DE_DEU, kPlatformAmiga, { 0x000000B0, 0x00003E38, { { 0x8A, 0x6D, 0x42, 0x36, 0x29, 0x06, 0xB2, 0xCE, 0xA3, 0x41, 0x14, 0xE8, 0xB1, 0xEF, 0x6E, 0x3B } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x0000009D, 0x00003521, { { 0xAB, 0x74, 0x71, 0x5C, 0x6E, 0x65, 0xF5, 0x5E, 0xB0, 0x6E, 0x0E, 0xC7, 0x56, 0xCB, 0x55, 0x98 } } } },
- { JA_JPN, kPlatformFMTowns, { 0x0000007D, 0x000039CE, { { 0x9E, 0xBE, 0x13, 0x7F, 0x4D, 0x4B, 0xCB, 0x08, 0xC3, 0xE5, 0xF1, 0xC2, 0xD3, 0x69, 0x9E, 0xDF } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000079, 0x000039CE, { { 0xEF, 0x3F, 0x36, 0xD4, 0x6C, 0x64, 0x74, 0x9A, 0xFE, 0x13, 0xB5, 0x77, 0x9A, 0xCF, 0x15, 0x5C } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1VeryCleverStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000032, 0x0000118D, { { 0x4B, 0x6D, 0xD4, 0xDC, 0x3E, 0xA2, 0x2D, 0x6D, 0x2C, 0x5A, 0xF7, 0x67, 0x4B, 0x6D, 0x40, 0xEF } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x0000002F, 0x00001BDF, { { 0x32, 0x2C, 0x60, 0x1E, 0xB7, 0xE0, 0xFE, 0x5F, 0xEA, 0xEF, 0xA4, 0x73, 0xAC, 0xCB, 0xBA, 0xFE } } } },
-
- { FR_FRA, kPlatformDOS, { 0x00000027, 0x00000DE1, { { 0x43, 0xC2, 0xC7, 0xD2, 0xA3, 0x70, 0x36, 0x38, 0xB5, 0x5B, 0x22, 0xEF, 0xBA, 0x0D, 0x37, 0x27 } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x00000043, 0x00001871, { { 0x33, 0x3F, 0xEA, 0x7F, 0x5F, 0x56, 0x98, 0xF3, 0x03, 0x8D, 0x3E, 0xAC, 0xA1, 0x62, 0x2A, 0xD7 } } } },
-
- { IT_ITA, kPlatformDOS, { 0x00000038, 0x000013CF, { { 0x58, 0x7B, 0x59, 0x50, 0x84, 0xBB, 0x5B, 0x70, 0xDF, 0x76, 0x2F, 0xC3, 0x7E, 0xEC, 0x6A, 0x8B } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x00000027, 0x00000D01, { { 0x72, 0x7E, 0x88, 0xFB, 0xDA, 0xC0, 0x9E, 0x31, 0xAC, 0x32, 0xFD, 0x90, 0x7D, 0x01, 0x86, 0xD0 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x00000036, 0x000013F8, { { 0x2D, 0x9B, 0x7D, 0x58, 0xD1, 0x94, 0x04, 0x45, 0x6E, 0x81, 0xCC, 0x1E, 0x2F, 0xC5, 0xC9, 0xEA } } } },
-
- // not translated in the fan translation
- { RU_RUS, kPlatformDOS, { 0x00000032, 0x0000118D, { { 0x4B, 0x6D, 0xD4, 0xDC, 0x3E, 0xA2, 0x2D, 0x6D, 0x2C, 0x5A, 0xF7, 0x67, 0x4B, 0x6D, 0x40, 0xEF } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1NewGameStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000015, 0x0000052B, { { 0xAB, 0xD2, 0x16, 0x26, 0xC2, 0x86, 0xFA, 0xC8, 0x42, 0xCD, 0x16, 0xCD, 0x25, 0xB7, 0x44, 0xDC } } } },
-
- { JA_JPN, kPlatformUnknown, { 0x0000001B, 0x00000EC8, { { 0x13, 0x9A, 0xBC, 0x8F, 0xE2, 0x4B, 0xD7, 0x0B, 0xC0, 0x81, 0x60, 0x10, 0xC2, 0xA6, 0x9C, 0xFA } } } },
-
- { FR_FRA, kPlatformDOS, { 0x0000001D, 0x0000079B, { { 0x2B, 0x5B, 0x54, 0x29, 0x76, 0x31, 0x5E, 0x89, 0xC2, 0xD1, 0xDB, 0x3B, 0xF0, 0xBC, 0xCD, 0x66 } } } },
-
- { DE_DEU, kPlatformUnknown, { 0x0000001D, 0x0000076F, { { 0x5C, 0x84, 0x2A, 0xB1, 0x61, 0xDD, 0x7B, 0xB3, 0xD4, 0x6A, 0xD2, 0xEF, 0xA4, 0x5F, 0x81, 0xFE } } } },
-
- { IT_ITA, kPlatformDOS, { 0x0000001C, 0x0000075E, { { 0xC8, 0xCB, 0x35, 0x5E, 0x73, 0x09, 0xDB, 0xA1, 0xF1, 0x8D, 0x14, 0x54, 0x8D, 0xF7, 0xB1, 0xD3 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000001D, 0x000007BD, { { 0xF4, 0x5C, 0x50, 0x82, 0x91, 0x7E, 0x09, 0x52, 0x44, 0x95, 0xC2, 0x2E, 0xC9, 0x52, 0x12, 0x2B } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000001B, 0x00000701, { { 0x2B, 0x87, 0xC3, 0x82, 0x68, 0xA5, 0xFC, 0xC5, 0x64, 0x9E, 0xAB, 0xD2, 0x8A, 0x07, 0x9C, 0x1E } } } },
-
- { RU_RUS, kPlatformDOS, { 0x00000015, 0x0000035F, { { 0x7E, 0x49, 0xC1, 0xCB, 0x2D, 0x61, 0xA7, 0x4C, 0x20, 0xAC, 0xEC, 0x54, 0x80, 0x14, 0x6A, 0xCA } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1DefaultShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000048A, 0x00012C0A, { { 0x90, 0x9E, 0x21, 0x9F, 0x90, 0x16, 0x1D, 0xA5, 0x57, 0xF8, 0x71, 0xE1, 0x15, 0x44, 0x29, 0x73 } } } },
-
- // TODO: Where did this come from?
- /*{ UNK_LANG, kPlatformUnknown, { 0x000004F3, 0x00014AE4, { { 0x6E, 0x37, 0x81, 0x15, 0x4D, 0xDD, 0xBA, 0xA6, 0xE3, 0x5F, 0xB6, 0xC8, 0x20, 0xE9, 0xE0, 0x63 } } } },*/
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Healing1ShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000009A, 0x00002F17, { { 0x92, 0x2C, 0xF1, 0x5C, 0x8B, 0xCE, 0xEB, 0x0B, 0xE4, 0x07, 0x16, 0xAA, 0x25, 0x4F, 0x83, 0xEB } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Healing2ShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000D2, 0x00004257, { { 0xAC, 0x35, 0xAA, 0x72, 0x50, 0x67, 0x58, 0xE4, 0x70, 0xB0, 0xBB, 0xCA, 0xA7, 0x4C, 0x91, 0x82 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1PoisonDeathShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000008C, 0x00002E90, { { 0xBC, 0x44, 0xFB, 0x98, 0xE7, 0x42, 0xF6, 0xC8, 0x87, 0xDD, 0x00, 0x42, 0x85, 0xD8, 0x1E, 0x81 } } } },
- { UNK_LANG, kPlatformUnknown, { 0x0000008C, 0x00002E7C, { { 0xA5, 0xD7, 0x13, 0xFC, 0x43, 0x22, 0x13, 0xBC, 0x5F, 0x3F, 0xC8, 0x28, 0xDA, 0x04, 0xB0, 0xDD } } } }, // Old Dos Floppy
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1FluteShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000FC, 0x00004F0F, { { 0xB1, 0xF0, 0x56, 0x6E, 0xAB, 0x3C, 0x88, 0x13, 0x97, 0x7C, 0xCC, 0x61, 0x85, 0x8A, 0x28, 0x12 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Winter1ShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000031, 0x00000E70, { { 0x3A, 0x15, 0x36, 0x51, 0x2F, 0xF8, 0xAF, 0xE6, 0x41, 0x71, 0x8D, 0x44, 0x99, 0x48, 0xB3, 0x4F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Winter2ShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000F5, 0x00005192, { { 0xD3, 0x64, 0xAC, 0x64, 0x42, 0x9F, 0xB9, 0xCA, 0x0C, 0xC8, 0x97, 0x67, 0x8C, 0x92, 0xB4, 0x79 } } } },
-
- { UNK_LANG, kPlatformUnknown, { 0x000000F5, 0x000029E4, { { 0xF0, 0x7B, 0x05, 0xD8, 0xC1, 0x97, 0x27, 0x17, 0xFA, 0x32, 0xE9, 0x1A, 0x46, 0xA5, 0xEB, 0x84 } } } }, // CD + Amiga
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1Winter3ShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000001C, 0x00000A5E, { { 0x84, 0xDD, 0xC0, 0xEA, 0xE3, 0xBE, 0x98, 0x66, 0xE0, 0xA3, 0x4D, 0x00, 0x88, 0x31, 0x61, 0x1F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1DrinkShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000069, 0x00001EDA, { { 0x21, 0xFA, 0x2F, 0x41, 0x8F, 0x70, 0x3B, 0xBB, 0x93, 0x35, 0x49, 0xEC, 0x1C, 0xEE, 0xDD, 0xAC } } } },
-
- { UNK_LANG, kPlatformFMTowns, { 0x0000006A, 0x00001EDA, { { 0xE2, 0xDA, 0xEC, 0x87, 0x4A, 0x27, 0xD8, 0xC1, 0x57, 0xE7, 0xD8, 0xD7, 0x87, 0x5F, 0x3A, 0xEB } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x0000006A, 0x00001EDA, { { 0xE2, 0xDA, 0xEC, 0x87, 0x4A, 0x27, 0xD8, 0xC1, 0x57, 0xE7, 0xD8, 0xD7, 0x87, 0x5F, 0x3A, 0xEB } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1WispShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000B6, 0x00003A53, { { 0x34, 0x52, 0x9D, 0x06, 0x4F, 0x1B, 0xCD, 0xB7, 0x30, 0xF7, 0xB4, 0x9F, 0x0F, 0x34, 0xDD, 0xF7 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1MagicAnimShapesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000023, 0x00000A2D, { { 0x48, 0x8E, 0x2A, 0x61, 0x93, 0xCD, 0x58, 0x3B, 0x45, 0x62, 0xD9, 0x01, 0x8F, 0xBA, 0x2A, 0x1A } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1BranStoneShapesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000006E, 0x00001E41, { { 0x77, 0x99, 0x54, 0xED, 0x4C, 0x31, 0x08, 0x50, 0x41, 0x22, 0x6B, 0xED, 0x34, 0xF4, 0x17, 0xA1 } } } },
-
- { UNK_LANG, kPlatformAmiga, { 0x0000006E, 0x00002026, { { 0x5A, 0xAF, 0x28, 0xF3, 0x0F, 0x82, 0x05, 0xB4, 0x33, 0x83, 0xCE, 0x56, 0xDB, 0xE7, 0x5C, 0xB4 } } } },
-
- { UNK_LANG, kPlatformFMTowns, { 0x00000063, 0x00001E41, { { 0xDA, 0xA1, 0x93, 0x68, 0xBF, 0xB3, 0xBB, 0xD1, 0x2E, 0xF9, 0xB2, 0x25, 0x72, 0xD9, 0xA6, 0x00 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x00000063, 0x00001E41, { { 0xDA, 0xA1, 0x93, 0x68, 0xBF, 0xB3, 0xBB, 0xD1, 0x2E, 0xF9, 0xB2, 0x25, 0x72, 0xD9, 0xA6, 0x00 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000015, 0x0000024B, { { 0x6C, 0x6C, 0xE9, 0xB6, 0xC4, 0xC2, 0x29, 0xA5, 0xB6, 0xB3, 0x82, 0xB6, 0x03, 0x5B, 0x66, 0x7A } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000033, 0x00000470, { { 0x63, 0x02, 0x97, 0x7D, 0xBE, 0x97, 0x5E, 0x88, 0x2E, 0x50, 0x18, 0x6A, 0x4A, 0x61, 0x09, 0xA6 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette3Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000033, 0x0000042A, { { 0xF8, 0x32, 0x65, 0x55, 0x1C, 0xC5, 0x6E, 0x71, 0xC6, 0x6A, 0x8E, 0xC5, 0x3C, 0xBC, 0x1F, 0xA8 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette4Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000033, 0x000003A4, { { 0xA1, 0xA6, 0x6F, 0x53, 0xA2, 0x1E, 0x27, 0x6F, 0x0D, 0xD0, 0x4F, 0xDC, 0x4C, 0xDC, 0xAE, 0x17 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette5Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000033, 0x0000033D, { { 0x22, 0x02, 0xB3, 0xCD, 0x4E, 0xD5, 0x6E, 0x65, 0x2B, 0x38, 0x7D, 0x3E, 0x27, 0x03, 0x1A, 0x59 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette6Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000033, 0x000001EA, { { 0xC7, 0xA7, 0x0E, 0xBA, 0x3F, 0x5E, 0xD3, 0x02, 0x99, 0x3B, 0x32, 0x00, 0x39, 0x3C, 0xD2, 0xAC } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette7Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000036, 0x0000040C, { { 0x1A, 0x8E, 0x3E, 0x5F, 0x09, 0xFE, 0x4A, 0xF1, 0x5D, 0x2E, 0x2C, 0xD3, 0xFF, 0x75, 0x7D, 0x1C } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette8Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000036, 0x000008E4, { { 0x55, 0xB4, 0xD3, 0xD1, 0x89, 0x49, 0xA5, 0x7E, 0x40, 0xF9, 0xFE, 0x6E, 0x16, 0xE8, 0xBD, 0xBB } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette9Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002D, 0x000001DB, { { 0x7A, 0x04, 0x16, 0xDD, 0x6A, 0xBA, 0x51, 0x9E, 0x24, 0x9E, 0xEA, 0x76, 0xD0, 0xFA, 0x92, 0xF4 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette10Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002D, 0x0000017A, { { 0xD2, 0x20, 0x1F, 0x12, 0xE1, 0x65, 0x68, 0xA7, 0x9C, 0x69, 0x8E, 0x99, 0xDF, 0xC5, 0xD2, 0x8E } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette11Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002D, 0x00000136, { { 0xBF, 0x38, 0xB1, 0xFE, 0xBF, 0x25, 0xBC, 0xD3, 0xCC, 0x60, 0x40, 0x97, 0xB6, 0x4A, 0xC7, 0xB2 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette12Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002D, 0x00000102, { { 0x1C, 0x1E, 0x6A, 0x30, 0xE1, 0xD1, 0xF9, 0x3D, 0x9A, 0xF1, 0x84, 0xBD, 0x44, 0x07, 0x51, 0xEA } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette13Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002D, 0x00000000, { { 0x76, 0x22, 0x21, 0x4B, 0x85, 0x36, 0xAF, 0xE7, 0xB8, 0x9B, 0x1C, 0x66, 0x06, 0x06, 0x9B, 0x0D } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette14Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x000003BF, { { 0x78, 0xE8, 0xA8, 0xF2, 0x4D, 0x54, 0x48, 0x47, 0xC9, 0xC1, 0x5B, 0x6C, 0x69, 0xCB, 0x65, 0xB6 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette15Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002D, 0x000002DD, { { 0x9F, 0x66, 0x50, 0xAC, 0xED, 0x0C, 0x63, 0x20, 0xE9, 0x4E, 0x4D, 0x3D, 0xC4, 0xBC, 0x94, 0x8A } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette16Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000021, 0x0000036E, { { 0xA9, 0xDB, 0x1C, 0x35, 0xED, 0xED, 0xE4, 0x40, 0x68, 0x29, 0xB1, 0x6E, 0x60, 0xE4, 0xB0, 0xDB } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette17Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000021, 0x000004D7, { { 0xC0, 0xB5, 0x7B, 0x94, 0xED, 0xD7, 0x48, 0x66, 0x37, 0x54, 0xE8, 0xFC, 0x0F, 0xA5, 0x54, 0x8A } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette18Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000015, 0x000002FD, { { 0x0A, 0xDD, 0x81, 0xA8, 0x89, 0xD2, 0x53, 0x05, 0x25, 0xCC, 0x2B, 0x8B, 0x48, 0x1D, 0xAB, 0x0A } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette19Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000015, 0x00000134, { { 0xCB, 0x0F, 0xA9, 0xD2, 0xD8, 0xEA, 0x2A, 0x1F, 0x16, 0x7B, 0x90, 0xE5, 0x72, 0xB3, 0x52, 0x50 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette20Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000015, 0x00000396, { { 0x3B, 0xD8, 0xA5, 0xC5, 0x66, 0x3E, 0xC7, 0x88, 0xD0, 0x3B, 0x42, 0x29, 0x84, 0x58, 0xA7, 0x00 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette21Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000015, 0x00000134, { { 0x96, 0x70, 0x7D, 0x5B, 0xC4, 0xBA, 0x89, 0x89, 0xC9, 0x42, 0xF4, 0x70, 0x33, 0xF5, 0xE8, 0x02 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette22Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000015, 0x00000376, { { 0xA2, 0x92, 0x28, 0x65, 0xAB, 0xCC, 0x16, 0xE8, 0xA5, 0x72, 0x2F, 0x00, 0x66, 0x8F, 0x8D, 0x96 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette23Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000015, 0x000002C2, { { 0x5C, 0x78, 0x74, 0x81, 0x76, 0xB5, 0x26, 0x8E, 0x20, 0xAE, 0x50, 0xCD, 0x2B, 0x9E, 0x81, 0x8B } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette24Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000472, { { 0xC6, 0xF0, 0xA6, 0x33, 0x7E, 0xAE, 0xBC, 0xF9, 0xAE, 0xE2, 0xF4, 0x7B, 0x71, 0x44, 0x50, 0xEF } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette25Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x000004CD, { { 0x57, 0x03, 0xB5, 0x27, 0x64, 0x48, 0xBF, 0x6A, 0x0F, 0xC2, 0xC0, 0x4A, 0x73, 0x9A, 0xFE, 0xB3 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette26Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x000004CA, { { 0xF8, 0x39, 0x8D, 0x6F, 0x8D, 0x9C, 0x6E, 0x0A, 0x33, 0xE8, 0xF2, 0xA6, 0xF6, 0x40, 0x70, 0xE5 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette27Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x000004D9, { { 0xF6, 0xD4, 0x88, 0x57, 0x6F, 0x1A, 0xA3, 0x1F, 0x6B, 0x17, 0x4D, 0xA0, 0x9E, 0xD8, 0x09, 0x66 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette28Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x0000051D, { { 0x59, 0x02, 0xE3, 0xC6, 0x28, 0xF6, 0xBC, 0xD4, 0xC8, 0x7E, 0x58, 0x6F, 0xE4, 0xA2, 0x28, 0x4F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette29Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000534, { { 0xC2, 0x26, 0x94, 0x47, 0x28, 0x11, 0xAA, 0xE6, 0x10, 0xA2, 0xD4, 0xD9, 0x61, 0x57, 0x62, 0x22 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette30Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x00000453, { { 0xE1, 0x30, 0xC2, 0xCD, 0x79, 0xD8, 0x36, 0x8D, 0xAC, 0xF7, 0x87, 0x05, 0x49, 0xD7, 0x7A, 0x5F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette31Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000027, 0x000002FB, { { 0xA6, 0x65, 0xE1, 0xE1, 0xCC, 0x71, 0x83, 0x63, 0x9A, 0x04, 0xE2, 0x00, 0xBF, 0x90, 0xDF, 0x95 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette32Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000027, 0x0000016C, { { 0xAA, 0x88, 0x97, 0xE3, 0xCA, 0x06, 0x11, 0x07, 0x8F, 0xFA, 0x75, 0x26, 0xA8, 0x7A, 0x49, 0x28 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1SpecialPalette33Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x0000094C, { { 0x2E, 0x5E, 0x34, 0x3E, 0x99, 0x61, 0x6F, 0x88, 0x91, 0xA7, 0x75, 0xAA, 0x42, 0x4B, 0x1F, 0x5D } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1GUIStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x000001B0, 0x00009562, { { 0x78, 0xB0, 0x81, 0x15, 0x96, 0x09, 0x1E, 0x6C, 0x20, 0x7B, 0xF7, 0xB1, 0x29, 0x2A, 0x3D, 0xE4 } } } }, // floppy
- { EN_ANY, kPlatformDOS, { 0x00000209, 0x00009788, { { 0xDD, 0xA0, 0x5C, 0x30, 0x60, 0x68, 0xDC, 0x24, 0xBE, 0x3F, 0xA2, 0x31, 0xE0, 0x81, 0x6C, 0xCA } } } }, // CD
-
- { FR_FRA, kPlatformDOS, { 0x00000234, 0x0000C262, { { 0x08, 0x83, 0x32, 0x4E, 0x48, 0xEC, 0x83, 0x4B, 0x1B, 0x82, 0x58, 0x48, 0xA3, 0x30, 0x05, 0x33 } } } }, // floppy
- { FR_FRA, kPlatformDOS, { 0x0000025D, 0x0000CBDC, { { 0x36, 0xF0, 0x92, 0x9C, 0x5F, 0xFF, 0x5D, 0x65, 0x5F, 0x0B, 0xC0, 0x72, 0x9F, 0x30, 0x47, 0xAB } } } }, // CD
-
- { DE_DEU, kPlatformDOS, { 0x00000236, 0x0000BA9C, { { 0xEB, 0xA6, 0x90, 0x9D, 0x99, 0x4B, 0x4F, 0xD9, 0xCE, 0xFF, 0x44, 0x3F, 0x77, 0x6F, 0xE1, 0x71 } } } }, // floppy
- { DE_DEU, kPlatformDOS, { 0x00000261, 0x0000C538, { { 0xF3, 0xED, 0x5E, 0x73, 0x6F, 0x6E, 0x06, 0xF8, 0x48, 0xF8, 0x30, 0x69, 0x34, 0x5D, 0x99, 0x0C } } } }, // CD
-
- { IT_ITA, kPlatformDOS, { 0x00000225, 0x0000B0E1, { { 0x57, 0xE2, 0x39, 0xA8, 0xF5, 0x70, 0x48, 0xB4, 0x3D, 0xD4, 0x2A, 0x8C, 0x7C, 0x76, 0xB7, 0x8D } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000025D, 0x0000AFD0, { { 0x8E, 0x97, 0xA9, 0x55, 0x16, 0xF7, 0x42, 0x83, 0xA3, 0x68, 0x2F, 0xD6, 0x37, 0x1C, 0x9A, 0xD1 } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000023A, 0x0000C3BD, { { 0xED, 0x0D, 0xE7, 0x5B, 0xDC, 0x21, 0x41, 0x54, 0x68, 0x7D, 0x8E, 0x97, 0x1A, 0xB1, 0xA1, 0x4A } } } }, // floppy
-
- { RU_RUS, kPlatformDOS, { 0x000001B1, 0x000065E8, { { 0x91, 0x22, 0x61, 0x8B, 0xCD, 0x7C, 0x0E, 0xD4, 0x32, 0x00, 0xC3, 0x6E, 0x50, 0x7F, 0x3C, 0x82 } } } }, // floppy
-
- { EN_ANY, kPlatformAmiga, { 0x000001DF, 0x00009042, { { 0x0D, 0xD3, 0x1A, 0x92, 0x8D, 0x9C, 0x72, 0x55, 0xEF, 0xFB, 0x81, 0x21, 0x3B, 0x43, 0xA7, 0xE8 } } } },
- { DE_DEU, kPlatformAmiga, { 0x00000237, 0x0000BAF7, { { 0xD7, 0x1A, 0x8E, 0xCC, 0x6D, 0x3E, 0xA9, 0xDD, 0x9A, 0x6B, 0x71, 0xFE, 0xD4, 0x50, 0x30, 0x6E } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x000001FC, 0x00009D9A, { { 0xE8, 0x39, 0x46, 0x0A, 0x41, 0xC3, 0xDC, 0x33, 0x6E, 0xC5, 0x5D, 0x99, 0xCC, 0xF6, 0xDD, 0xCC } } } },
- { JA_JPN, kPlatformFMTowns, { 0x0000025F, 0x0000E56A, { { 0x77, 0x9A, 0x02, 0x52, 0xED, 0x62, 0x23, 0x5A, 0x58, 0x78, 0x19, 0x52, 0x03, 0xD7, 0x88, 0x40 } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000213, 0x0000EC5A, { { 0x3B, 0xBA, 0xFB, 0x61, 0x34, 0x60, 0x25, 0xDA, 0x48, 0xBF, 0x95, 0x7F, 0x7F, 0xB6, 0xE4, 0x55 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1ConfigStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x0000003F, 0x000016E9, { { 0x4F, 0x19, 0x60, 0x67, 0xA8, 0x31, 0x0B, 0xD5, 0x3D, 0x06, 0x39, 0xF1, 0x42, 0xB0, 0xFD, 0x5C } } } }, // floppy
- { EN_ANY, kPlatformDOS, { 0x00000061, 0x00002249, { { 0x5D, 0xE2, 0x05, 0xA7, 0xEC, 0x0A, 0x73, 0xF5, 0x01, 0x5B, 0x64, 0x71, 0x83, 0xEC, 0x56, 0x24 } } } }, // CD
-
- { FR_FRA, kPlatformDOS, { 0x0000004B, 0x00001AE8, { { 0xE3, 0xC9, 0x0F, 0x54, 0x48, 0x31, 0x6E, 0x5F, 0x51, 0x8E, 0xF8, 0xE6, 0xAC, 0x16, 0xAC, 0x1C } } } }, // floppy
- { FR_FRA, kPlatformDOS, { 0x0000007A, 0x00002C37, { { 0x9E, 0xD8, 0x85, 0xB4, 0x9D, 0x32, 0x9D, 0x80, 0x58, 0xE4, 0x08, 0xC7, 0x75, 0xD2, 0x9C, 0x1E } } } }, // CD
-
- { DE_DEU, kPlatformDOS, { 0x0000005E, 0x00002280, { { 0xC7, 0xD2, 0x22, 0xB5, 0xD3, 0xBC, 0x7A, 0x97, 0x26, 0x04, 0x07, 0x78, 0xAA, 0xAB, 0x1D, 0x5C } } } }, // floppy
- { DE_DEU, kPlatformDOS, { 0x00000082, 0x00002E94, { { 0xC5, 0xDC, 0x44, 0x6C, 0x4B, 0x3E, 0x4E, 0x27, 0x0C, 0xCC, 0x65, 0x6C, 0x20, 0x8D, 0x71, 0x07 } } } }, // CD
-
- { IT_ITA, kPlatformDOS, { 0x00000054, 0x00001E98, { { 0x10, 0x6B, 0x6B, 0x9B, 0x91, 0x05, 0xE9, 0x30, 0xE2, 0x75, 0xE2, 0x45, 0x79, 0x17, 0x73, 0xC9 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x0000007A, 0x00002904, { { 0xD3, 0xD2, 0x96, 0x6E, 0xE7, 0xE8, 0x64, 0x77, 0x73, 0xCD, 0xC2, 0x9E, 0x57, 0xB5, 0xD3, 0xCD } } } }, // (fan) CD
-
- { ES_ESP, kPlatformDOS, { 0x0000004A, 0x00001B7B, { { 0x6B, 0x69, 0x50, 0x92, 0x9B, 0x35, 0x58, 0xE1, 0xEA, 0xBF, 0x42, 0x0B, 0xEB, 0x88, 0x41, 0x8D } } } }, // floppy
-
- // not translated in the fan translation
- { RU_RUS, kPlatformDOS, { 0x0000003F, 0x00000B0D, { { 0x0E, 0x60, 0x0F, 0x4A, 0xA9, 0xF0, 0x1B, 0x76, 0xBB, 0x33, 0xB2, 0x4B, 0x5C, 0xB5, 0x4A, 0x97 } } } }, // floppy
-
- { EN_ANY, kPlatformAmiga, { 0x0000002E, 0x00000FA1, { { 0x5E, 0xFF, 0xFF, 0x3D, 0xF8, 0x11, 0x6F, 0x3B, 0xC5, 0x39, 0x8F, 0x25, 0x8F, 0x0F, 0xE9, 0x2B } } } },
- { DE_DEU, kPlatformAmiga, { 0x00000043, 0x00001783, { { 0xB2, 0x2B, 0xAB, 0x27, 0x06, 0x9A, 0x1E, 0x4B, 0xA7, 0xD3, 0xFF, 0xEB, 0xFD, 0x12, 0xDC, 0x94 } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x0000004A, 0x000016E9, { { 0x37, 0x12, 0xAD, 0x4C, 0xB8, 0x2C, 0xF5, 0x75, 0x20, 0x74, 0xA0, 0xFD, 0x58, 0xB1, 0x71, 0x77 } } } },
- { JA_JPN, kPlatformFMTowns, { 0x00000057, 0x00002262, { { 0xC5, 0x9A, 0x4A, 0xE3, 0xDF, 0xD3, 0x0E, 0x8E, 0xBB, 0xAF, 0x75, 0xD3, 0x67, 0xB1, 0xF6, 0x08 } } } },
-
- { JA_JPN, kPlatformPC98, { 0x0000003F, 0x00001E9D, { { 0x8A, 0x3C, 0x78, 0x6B, 0x3F, 0x0A, 0x7D, 0x92, 0x16, 0x39, 0xEB, 0x1C, 0x84, 0x9E, 0x4F, 0x84 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1TownsMusicFadeTableProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x00000B10, 0x000076DE, { { 0x9F, 0x08, 0x5B, 0xD6, 0x25, 0x7F, 0x11, 0x08, 0x87, 0x45, 0x92, 0xD3, 0xE5, 0xA8, 0x7C, 0x2F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1TownsSFXwdTableProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x00012608, 0x006717A1, { { 0x34, 0xDD, 0x2D, 0xA5, 0x14, 0x05, 0xEE, 0x2F, 0x93, 0x7C, 0x78, 0x4D, 0xCA, 0x13, 0xED, 0x93 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1TownsSFXbtTableProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x00000100, 0x00007FFE, { { 0xEF, 0x3D, 0x9F, 0x31, 0xE7, 0x19, 0x1E, 0x4F, 0xF3, 0x66, 0x42, 0xC8, 0x0D, 0x89, 0x96, 0x20 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1TownsCDATableProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x000002C4, 0x0000C5ED, { { 0x76, 0x86, 0x77, 0xF9, 0x85, 0x23, 0x32, 0x56, 0x3C, 0x06, 0x03, 0xCF, 0x0C, 0x49, 0x94, 0xB5 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1PC98StoryStringsProvider[] = {
- { JA_JPN, kPlatformPC98, { 0x00000054, 0x00002FAD, { { 0xCB, 0x25, 0xD1, 0xFA, 0x65, 0xCE, 0xD5, 0xE6, 0xAD, 0xE3, 0x48, 0x25, 0xC8, 0x51, 0xC6, 0x12 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1PC98IntroSfxProvider[] = {
- { UNK_LANG, kPlatformPC98, { 0x00000300, 0x00017445, { { 0xC3, 0x54, 0x4A, 0x58, 0x00, 0x33, 0xEA, 0xF1, 0x20, 0xA8, 0x0C, 0xDE, 0x7A, 0x94, 0xAB, 0x5E } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1CreditsStringsProvider[] = {
- { EN_ANY, kPlatformAmiga, { 0x000004CC, 0x000182F7, { { 0x7D, 0x14, 0xA6, 0xEC, 0x12, 0x67, 0xAC, 0xA7, 0x7B, 0xF8, 0x44, 0x19, 0x52, 0xCC, 0x3A, 0x65 } } } },
- { DE_DEU, kPlatformAmiga, { 0x000004FB, 0x00019987, { { 0x8B, 0xF1, 0x61, 0xB9, 0x3E, 0xA4, 0x28, 0x9B, 0x45, 0x86, 0xD1, 0xF0, 0xC3, 0x35, 0x44, 0xA0 } } } },
-
- { EN_ANY, kPlatformFMTowns, { 0x0000058C, 0x0001AD16, { { 0xFC, 0x1B, 0xE6, 0xEB, 0x03, 0x1C, 0x54, 0x93, 0x64, 0x53, 0xB1, 0x17, 0x9D, 0x95, 0x1B, 0x4A } } } },
- { JA_JPN, kPlatformFMTowns, { 0x0000058C, 0x0001AD16, { { 0xFC, 0x1B, 0xE6, 0xEB, 0x03, 0x1C, 0x54, 0x93, 0x64, 0x53, 0xB1, 0x17, 0x9D, 0x95, 0x1B, 0x4A } } } },
-
- { JA_JPN, kPlatformPC98, { 0x00000530, 0x00019571, { { 0x38, 0x4F, 0xE0, 0x74, 0x27, 0x21, 0xEC, 0x63, 0x41, 0x32, 0xB1, 0xD9, 0xA5, 0x65, 0x62, 0x71 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1AmigaIntroSFXTableProvider[] = {
- { UNK_LANG, kPlatformAmiga, { 0x00000140, 0x00000D82, { { 0x61, 0xF6, 0x8F, 0xE5, 0xCD, 0x15, 0x58, 0x9F, 0xDF, 0x0E, 0x22, 0xAA, 0x9A, 0xCF, 0xC4, 0xA6 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k1AmigaGameSFXTableProvider[] = {
- { UNK_LANG, kPlatformAmiga, { 0x000003C0, 0x00005505, { { 0x8D, 0x6D, 0x2C, 0x58, 0x50, 0xF7, 0xBF, 0x60, 0xC3, 0x15, 0x20, 0x23, 0x1F, 0x90, 0x3E, 0xD6 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayPakFilesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000022, 0x000008E0, { { 0xB7, 0x3B, 0x51, 0x46, 0x78, 0x2D, 0x4D, 0x82, 0xD4, 0x30, 0xFC, 0x6E, 0xC4, 0x5B, 0x27, 0x3E } } } }, // DOS floppy + PC98
-
- { UNK_LANG, kPlatformDOS, { 0x00000046, 0x0000121A, { { 0x42, 0xC2, 0x5A, 0xDC, 0x27, 0x2D, 0xB4, 0x44, 0x85, 0x58, 0x0F, 0xB6, 0x6D, 0x76, 0x04, 0x4F } } } }, // CD
- { UNK_LANG, kPlatformDOS, { 0x00000014, 0x000004FA, { { 0xBB, 0x4C, 0x16, 0xEB, 0x56, 0xEF, 0xAC, 0x68, 0x6B, 0x49, 0x96, 0x3A, 0x9F, 0x00, 0x75, 0xF6 } } } }, // demo
- { UNK_LANG, kPlatformDOS, { 0x0000000C, 0x00000308, { { 0xC0, 0xAC, 0x10, 0xF1, 0x12, 0xD1, 0x21, 0x92, 0xA1, 0x62, 0x5B, 0x6E, 0xCF, 0x88, 0x32, 0x7C } } } }, // Lands of Lore demo
-
- { UNK_LANG, kPlatformFMTowns, { 0x00000033, 0x00000BBD, { { 0x92, 0x5B, 0xDA, 0xE3, 0x7C, 0x39, 0xC4, 0x75, 0x24, 0xBA, 0x67, 0x27, 0x6E, 0x21, 0xA3, 0xF7 } } } },
-
- // TODO: Where did this come from?
- //{ UNK_LANG, kPlatformUnknown, { 0x0000002E, 0x00000C09, { { 0x6A, 0x25, 0xF6, 0x03, 0xA6, 0x88, 0xA0, 0x53, 0xE1, 0xF4, 0xB9, 0x0C, 0x71, 0x17, 0x36, 0x6B } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x000008C8, 0x0002FDE3, { { 0x62, 0xD1, 0x6F, 0xBC, 0xEC, 0xE6, 0xCF, 0xE8, 0xD8, 0xE9, 0xDE, 0xFB, 0x09, 0xAF, 0x34, 0x92 } } } }, // floppy
- { EN_ANY, kPlatformDOS, { 0x00000916, 0x00031417, { { 0x3E, 0x15, 0xDA, 0xF4, 0x77, 0x44, 0x80, 0x47, 0xDB, 0x32, 0x0E, 0x6D, 0xCA, 0x32, 0x65, 0x1B } } } }, // CD
- { EN_ANY, kPlatformDOS, { 0x00000102, 0x00005BD6, { { 0xB3, 0x00, 0xE5, 0x39, 0x02, 0x3D, 0xBF, 0xDD, 0x54, 0x70, 0xEA, 0xC1, 0xCB, 0xAC, 0xAA, 0xF7 } } } }, // Lands of Lore demo
-
- { DE_DEU, kPlatformDOS, { 0x000009EC, 0x000370F9, { { 0x56, 0x94, 0xCC, 0xE5, 0x38, 0x19, 0xAD, 0xD1, 0xBB, 0x6A, 0x6E, 0xEC, 0xC5, 0x1B, 0x57, 0x7B } } } }, // floppy
- { DE_DEU, kPlatformDOS, { 0x00000A3F, 0x000389F4, { { 0x51, 0xC1, 0x87, 0x16, 0x53, 0x8C, 0x68, 0x8E, 0x9B, 0x81, 0xA1, 0xD2, 0xCE, 0x5F, 0x83, 0x31 } } } }, // CD
-
- { FR_FRA, kPlatformDOS, { 0x000009C9, 0x00036324, { { 0x2C, 0xC2, 0xD9, 0xCF, 0x90, 0x2A, 0xDF, 0xE9, 0x85, 0x9E, 0x5D, 0xBB, 0x1D, 0x9A, 0x14, 0x69 } } } }, // floppy
- { FR_FRA, kPlatformDOS, { 0x00000995, 0x000352D7, { { 0xED, 0x7C, 0x49, 0x7B, 0x1A, 0x2C, 0x73, 0x61, 0x73, 0xAF, 0x16, 0x89, 0x1E, 0x01, 0xE2, 0xAE } } } }, // CD
-
- { IT_ITA, kPlatformDOS, { 0x00000916, 0x0003188F, { { 0xDC, 0x46, 0x06, 0xE1, 0xB0, 0x66, 0xBC, 0x18, 0x2E, 0x6E, 0x9E, 0xC9, 0xA4, 0x14, 0x8D, 0x08 } } } }, // floppy
- { IT_ITA, kPlatformDOS, { 0x000008C8, 0x00030947, { { 0x7F, 0x75, 0x5F, 0x99, 0x94, 0xFE, 0xA1, 0xE6, 0xEF, 0xB8, 0x93, 0x71, 0x83, 0x1B, 0xAC, 0x4A } } } }, // (fan) CD
-
- { RU_RUS, kPlatformDOS, { 0x00000916, 0x00032C49, { { 0xEA, 0x5C, 0xE5, 0x06, 0x05, 0x5F, 0x36, 0xE8, 0x31, 0x3E, 0xBF, 0x74, 0x73, 0xFB, 0xAB, 0xFF } } } }, // (fan) CD - intro and outro strings haven't been translated in this fan translation
- { RU_RUS, kPlatformDOS, { 0x000008C8, 0x00028639, { { 0xF9, 0x1D, 0x6A, 0x85, 0x23, 0x5E, 0x2A, 0x64, 0xBC, 0x45, 0xB2, 0x48, 0x13, 0x49, 0xD4, 0xF7 } } } }, // (fan) floppy
-
- { EN_ANY, kPlatformFMTowns, { 0x00000990, 0x00030C61, { { 0x60, 0x51, 0x11, 0x83, 0x3F, 0x06, 0xC3, 0xA3, 0xE0, 0xC0, 0x2F, 0x41, 0x29, 0xDE, 0x65, 0xB1 } } } },
- { JA_JPN, kPlatformFMTowns, { 0x000008A8, 0x00036831, { { 0x56, 0x5B, 0x23, 0x61, 0xE8, 0x3B, 0xE1, 0x36, 0xD6, 0x62, 0xD0, 0x84, 0x00, 0x04, 0x05, 0xAD } } } },
-
- { EN_ANY, kPlatformPC98, { 0x000008F4, 0x00030C61, { { 0xA4, 0x4C, 0xD9, 0x05, 0x65, 0x24, 0xE5, 0x3E, 0x6C, 0x8B, 0xEE, 0x8D, 0x4F, 0x09, 0x6F, 0x00 } } } },
- { JA_JPN, kPlatformPC98, { 0x000007F5, 0x00036831, { { 0xF7, 0xCF, 0xF1, 0x2B, 0x26, 0x1E, 0xEC, 0xC8, 0x13, 0xDE, 0xC7, 0x71, 0x72, 0x05, 0x0F, 0xA7 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplaySfxFilesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000173, 0x00008198, { { 0x2D, 0xF5, 0x5C, 0xAE, 0xDB, 0x71, 0x60, 0xFE, 0x78, 0x04, 0xFC, 0xAD, 0x4B, 0x43, 0xB1, 0x4B } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x00000234, 0x0000B0B2, { { 0xE4, 0x19, 0x4F, 0x8C, 0x53, 0xFD, 0x5F, 0x2A, 0xFB, 0x77, 0x1C, 0x32, 0xB3, 0x39, 0x25, 0x85 } } } }, // CD
- { UNK_LANG, kPlatformDOS, { 0x000000DE, 0x00004EA4, { { 0x97, 0xA8, 0x4A, 0xED, 0x12, 0x87, 0xEB, 0x82, 0x42, 0xFA, 0x45, 0x0D, 0x45, 0x8F, 0xFE, 0x76 } } } }, // demo
- { UNK_LANG, kPlatformDOS, { 0x000000C5, 0x00004508, { { 0xBF, 0xA9, 0x1A, 0x37, 0x0B, 0xF8, 0x13, 0x9D, 0x2D, 0x67, 0x3D, 0x9B, 0xE9, 0x16, 0x07, 0x0C } } } }, // Lands of Lore demo
-
- { UNK_LANG, kPlatformFMTowns, { 0x000001A3, 0x00008098, { { 0xA9, 0xD2, 0xE2, 0x32, 0x59, 0xC4, 0x97, 0x74, 0x11, 0x49, 0x8F, 0x2B, 0xBF, 0x00, 0xF9, 0xF1 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x00000173, 0x00008098, { { 0x29, 0xA6, 0xF1, 0x2D, 0x35, 0x38, 0xFD, 0x3B, 0xF0, 0xB1, 0xE1, 0xFE, 0x45, 0xB1, 0x43, 0xAE } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayTlkFilesProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x0000009D, 0x0000286B, { { 0x58, 0x30, 0x72, 0x62, 0xC8, 0x77, 0x2A, 0x06, 0xD6, 0x24, 0x1A, 0x7A, 0xAF, 0x79, 0xFF, 0xAE } } } },
- { FR_FRA, kPlatformDOS, { 0x0000009D, 0x00002878, { { 0x28, 0x5D, 0x7F, 0x5B, 0x57, 0xC2, 0xFF, 0x73, 0xC1, 0x8E, 0xD6, 0xE0, 0x4D, 0x03, 0x99, 0x2C } } } },
- { DE_DEU, kPlatformDOS, { 0x0000009D, 0x00002885, { { 0x87, 0x24, 0xB6, 0xE9, 0xD6, 0xAA, 0x68, 0x2D, 0x6B, 0x05, 0xDF, 0xE1, 0x2B, 0xA4, 0x79, 0xE5 } } } },
- { IT_ITA, kPlatformDOS, { 0x0000009D, 0x0000286B, { { 0x58, 0x30, 0x72, 0x62, 0xC8, 0x77, 0x2A, 0x06, 0xD6, 0x24, 0x1A, 0x7A, 0xAF, 0x79, 0xFF, 0xAE } } } },
- { RU_RUS, kPlatformDOS, { 0x0000009D, 0x0000286B, { { 0x58, 0x30, 0x72, 0x62, 0xC8, 0x77, 0x2A, 0x06, 0xD6, 0x24, 0x1A, 0x7A, 0xAF, 0x79, 0xFF, 0xAE } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplaySeqDataProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000006F4, 0x0000F5AD, { { 0x23, 0x1E, 0x30, 0xF0, 0xF1, 0x5B, 0xFF, 0x4B, 0xDF, 0xB1, 0x78, 0xD8, 0x48, 0x7A, 0xA3, 0xDD } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x000006F4, 0x0000FA52, { { 0xC8, 0x33, 0xCC, 0x0A, 0x40, 0x8A, 0x96, 0x4F, 0x42, 0x7E, 0x8B, 0x62, 0x9C, 0x2F, 0x33, 0x0B } } } }, // floppy (French)
- { UNK_LANG, kPlatformDOS, { 0x000006F4, 0x0000F8A6, { { 0x8B, 0xF3, 0x80, 0xE1, 0xB8, 0xCA, 0xE1, 0x18, 0x72, 0xA3, 0xF0, 0x4C, 0xBF, 0x81, 0x97, 0x71 } } } }, // floppy (German)
- { UNK_LANG, kPlatformDOS, { 0x000006F4, 0x0000FA35, { { 0x4C, 0x26, 0x1B, 0xF6, 0x8E, 0x73, 0xB7, 0xD2, 0x58, 0x59, 0xB8, 0x97, 0x58, 0xFB, 0x0E, 0x2A } } } }, // floppy (Italian)
- { UNK_LANG, kPlatformDOS, { 0x000006BE, 0x0000E9FF, { { 0x9A, 0xCD, 0x40, 0x44, 0xEF, 0x9F, 0x05, 0x86, 0xDA, 0x49, 0x8A, 0x85, 0x68, 0xDF, 0xA7, 0x55 } } } }, // CD
- { UNK_LANG, kPlatformDOS, { 0x0000027C, 0x00007742, { { 0x42, 0x37, 0xF8, 0xDD, 0xA2, 0x8C, 0xA6, 0x26, 0x89, 0x5F, 0xCF, 0x61, 0xDD, 0x8F, 0xC7, 0x1E } } } }, // demo
- { UNK_LANG, kPlatformDOS, { 0x0000024C, 0x00004C10, { { 0x21, 0x3A, 0x86, 0x60, 0xA8, 0xFF, 0x42, 0x19, 0x35, 0x32, 0xA5, 0xB9, 0x3A, 0xDD, 0xA9, 0xC7 } } } }, // Lands of Lore demo
-
- { UNK_LANG, kPlatformFMTowns, { 0x000006BC, 0x0000DCE3, { { 0x27, 0x09, 0x22, 0xDC, 0xED, 0xDE, 0x88, 0xAE, 0xDB, 0x97, 0x52, 0x12, 0x96, 0x8D, 0x8D, 0x37 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x000006BE, 0x0000E043, { { 0x35, 0xA0, 0xF1, 0x14, 0xC7, 0x60, 0x80, 0x35, 0xA2, 0xDB, 0xF2, 0x73, 0x96, 0xC0, 0xAE, 0x84 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayCreditsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000AE8, 0x0002E520, { { 0x19, 0x59, 0xEA, 0x70, 0x23, 0xE2, 0x41, 0x78, 0x2D, 0xF5, 0xE6, 0x28, 0xEA, 0x0C, 0xCF, 0x79 } } } },
- { IT_ITA, kPlatformDOS, { 0x00000AE8, 0x0002EE4A, { { 0x3E, 0x5C, 0x6F, 0x9E, 0x72, 0x2D, 0xAB, 0x17, 0x1D, 0x27, 0xFF, 0x32, 0xD3, 0x48, 0x46, 0xBA } } } }, // (fan) CD
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayCreditsSpecialProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000001A, 0x00000829, { { 0xDF, 0x31, 0x0F, 0xB9, 0xC9, 0xC4, 0xF2, 0xB5, 0xF7, 0x98, 0x6F, 0x44, 0x4E, 0x9C, 0xFE, 0xA7 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayIntroTracksProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000010, 0x00000592, { { 0xDE, 0xD9, 0x5E, 0xCA, 0x5A, 0x9F, 0x8B, 0xB1, 0xE2, 0xDB, 0xA4, 0xA1, 0xAF, 0xD4, 0x75, 0x46 } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x00000008, 0x000002C9, { { 0xFA, 0x80, 0x3C, 0x78, 0x66, 0x2C, 0xD5, 0x91, 0x5D, 0xF1, 0xE9, 0xC1, 0x6A, 0x65, 0xEB, 0xD6 } } } }, // CD
- { UNK_LANG, kPlatformDOS, { 0x00000010, 0x00000542, { { 0xE5, 0xAA, 0x6A, 0xB9, 0x19, 0xAB, 0x35, 0x26, 0x43, 0x70, 0x32, 0xEF, 0xB9, 0x7F, 0x0F, 0x19 } } } }, // demo
- { UNK_LANG, kPlatformDOS, { 0x0000001A, 0x0000096C, { { 0xC2, 0xBD, 0x2C, 0x65, 0xD3, 0xFE, 0xF1, 0x6A, 0xE7, 0x34, 0x18, 0x0C, 0x86, 0x95, 0x66, 0x35 } } } }, // Lands of Lore demo
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayFinaleTracksProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000012, 0x00000618, { { 0x22, 0x61, 0x4D, 0x6F, 0xCE, 0x38, 0x64, 0xAB, 0x20, 0xD8, 0x34, 0x33, 0x44, 0x21, 0xE0, 0x23 } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x00000009, 0x0000030C, { { 0x24, 0x3F, 0x57, 0xFA, 0x7E, 0x6D, 0x61, 0x6C, 0x53, 0xBC, 0x44, 0x38, 0x61, 0xE9, 0x3E, 0xE6 } } } }, // CD
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayIntroCDAProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x00000018, 0x00000036, { { 0xCE, 0x10, 0x68, 0x7E, 0x84, 0x68, 0x3A, 0x23, 0x36, 0x41, 0x07, 0xE8, 0x59, 0xDB, 0xA3, 0x31 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayFinaleCDAProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x00000008, 0x000000AE, { { 0x38, 0x47, 0x35, 0xAA, 0xEC, 0xBA, 0xD3, 0xD0, 0x3E, 0x17, 0xFD, 0xB8, 0x9F, 0xB9, 0xAD, 0x61 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2SeqplayShapeAnimDataProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000B8, 0x00000270, { { 0xBD, 0x3B, 0xFA, 0xE6, 0xA0, 0x40, 0x4E, 0x6E, 0x3E, 0x43, 0x81, 0xF3, 0x35, 0x57, 0x62, 0x27 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngamePakFilesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000049F, 0x00012F40, { { 0x4B, 0x2A, 0x84, 0xE3, 0xA5, 0x34, 0xE9, 0xB3, 0xB7, 0x39, 0xF1, 0x1B, 0x4C, 0xE6, 0x43, 0x79 } } } }, // floppy
-
- { UNK_LANG, kPlatformFMTowns, { 0x0000011C, 0x00003FB8, { { 0x66, 0x34, 0xE8, 0x1C, 0xF9, 0xFF, 0x84, 0x90, 0x20, 0x71, 0x42, 0xA3, 0x2C, 0x4A, 0xE9, 0x46 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x000000F4, 0x00003F57, { { 0x8A, 0xA7, 0x2C, 0xB9, 0x6E, 0x8D, 0x95, 0xBF, 0xF8, 0xB9, 0x98, 0x63, 0x20, 0xF8, 0xB0, 0x7B } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngameSfxFilesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000006F1, 0x0001545E, { { 0xD3, 0x8A, 0xA1, 0xD4, 0x83, 0x77, 0x96, 0x6D, 0x87, 0xB1, 0x71, 0x8F, 0x38, 0x6A, 0x34, 0xDC } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000967, 0x0002101A, { { 0x09, 0xC7, 0xB7, 0x2A, 0x76, 0xF1, 0x4B, 0x87, 0xC5, 0x83, 0xFF, 0xF3, 0xDB, 0x3C, 0x66, 0x60 } } } },
- { UNK_LANG, kPlatformPC98, { 0x000006F1, 0x0001545E, { { 0xD3, 0x8A, 0xA1, 0xD4, 0x83, 0x77, 0x96, 0x6D, 0x87, 0xB1, 0x71, 0x8F, 0x38, 0x6A, 0x34, 0xDC } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngameSfxIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000358, 0x000074F4, { { 0xC8, 0x30, 0x1D, 0x9C, 0xFC, 0xF8, 0xD5, 0xBA, 0x7E, 0xAB, 0x13, 0x3F, 0x43, 0x50, 0xFA, 0xC4 } } } }, // CD
-
- { UNK_LANG, kPlatformUnknown, { 0x00000358, 0x0000747E, { { 0x20, 0x99, 0x4D, 0xB8, 0xF2, 0x05, 0xF2, 0xA7, 0x07, 0x28, 0x97, 0xFB, 0x70, 0x1F, 0x2A, 0x73 } } } }, // floppy + FM-TOWNS
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngameTracksProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000007E, 0x00001E45, { { 0xC6, 0x52, 0xCC, 0x1A, 0x23, 0x3B, 0xDA, 0x03, 0xF3, 0xC2, 0x46, 0xDF, 0x01, 0xA3, 0x9E, 0x50 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngameCDAProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000130, 0x00001B9D, { { 0x9E, 0xFB, 0x01, 0xE7, 0xBA, 0xE1, 0x4F, 0x3C, 0xC5, 0xB9, 0x75, 0x80, 0xEA, 0xAC, 0xB0, 0x0F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngameTalkObjIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000078, 0x00000A9C, { { 0x27, 0x65, 0xFA, 0xB1, 0xF8, 0x04, 0x7F, 0x93, 0x2B, 0x2D, 0x44, 0x3C, 0x95, 0x13, 0x50, 0xD2 } } } }, // floppy (English)
- { UNK_LANG, kPlatformDOS, { 0x00000078, 0x00000A53, { { 0x18, 0x5B, 0x79, 0x92, 0x54, 0xDB, 0x4B, 0x0C, 0x78, 0x89, 0x7C, 0x59, 0xBF, 0x53, 0x37, 0x14 } } } }, // floppy (German + French)
- { UNK_LANG, kPlatformDOS, { 0x00000078, 0x00000A7C, { { 0x33, 0x89, 0x69, 0xEF, 0x62, 0x94, 0x3A, 0xC0, 0xB2, 0xBA, 0xFB, 0x0C, 0x86, 0x2C, 0xAC, 0x5C } } } }, // floppy (Italian)
- { UNK_LANG, kPlatformDOS, { 0x00000084, 0x00000CD0, { { 0x82, 0x2E, 0xF4, 0xDD, 0x28, 0x75, 0xDD, 0x79, 0x78, 0x62, 0x55, 0x48, 0xDD, 0xF7, 0x16, 0x81 } } } }, // CD
-
- { UNK_LANG, kPlatformFMTowns, { 0x0000007A, 0x00000744, { { 0x74, 0x84, 0xB4, 0xA6, 0x9D, 0x91, 0xBF, 0x24, 0x1E, 0xD5, 0xDE, 0xD4, 0x73, 0x93, 0x1F, 0xE6 } } } },
-
- { UNK_LANG, kPlatformPC98, { 0x00000078, 0x0000099D, { { 0x2F, 0x06, 0x8D, 0x4E, 0x76, 0x9E, 0x92, 0xFD, 0x43, 0xA4, 0x12, 0xED, 0xBA, 0x30, 0xFE, 0x94 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngameTimJpStringsProvider[] = {
- { UNK_LANG, kPlatformFMTowns, { 0x0000002D, 0x00001302, { { 0x15, 0x29, 0xFD, 0xB1, 0xEB, 0xC0, 0x00, 0xA4, 0x19, 0xDA, 0xC7, 0x2E, 0x17, 0x0F, 0x3F, 0xB7 } } } },
- { UNK_LANG, kPlatformPC98, { 0x0000002C, 0x00001302, { { 0xAB, 0xBA, 0xC8, 0x2A, 0xD0, 0xD1, 0x1C, 0xEA, 0x6F, 0x35, 0x12, 0x5D, 0x85, 0xFB, 0x92, 0x84 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngameShapeAnimDataProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000348, 0x0001AAEB, { { 0x67, 0xD1, 0x03, 0xBF, 0x4B, 0xEC, 0x80, 0x26, 0x5D, 0x1D, 0x0E, 0x5B, 0xF1, 0xE8, 0x4C, 0x64 } } } }, // CD
-
- { UNK_LANG, kPlatformUnknown, { 0x00000348, 0x00002473, { { 0xBC, 0x18, 0x51, 0xFA, 0x51, 0x1D, 0x24, 0x7D, 0x44, 0xD0, 0xE2, 0x38, 0x31, 0x33, 0x3B, 0x56 } } } }, // floppy + FM-TOWNS
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k2IngameTlkDemoStringsProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x000000CB, 0x00004741, { { 0xF3, 0x54, 0x37, 0xEE, 0x61, 0x9E, 0xE0, 0x82, 0x64, 0x8B, 0xF3, 0x53, 0xC7, 0x2F, 0x49, 0x1F } } } },
- { FR_FRA, kPlatformDOS, { 0x000000BE, 0x00004327, { { 0x8C, 0xF2, 0x5E, 0x85, 0xDA, 0xA1, 0x91, 0x90, 0xE5, 0xC7, 0x2A, 0xBA, 0x48, 0xC3, 0x9A, 0xCA } } } },
- { DE_DEU, kPlatformDOS, { 0x000000DC, 0x00004C7B, { { 0xC9, 0x75, 0x3A, 0x4A, 0xF4, 0xB0, 0xE8, 0x61, 0x90, 0x74, 0x34, 0x84, 0x53, 0x54, 0xA2, 0x4F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k3MainMenuStringsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000B0, 0x00003E75, { { 0xA7, 0x91, 0x9B, 0x61, 0x31, 0x12, 0x74, 0xB5, 0x4B, 0x4F, 0x8A, 0x44, 0xA9, 0xB1, 0x03, 0xC0 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k3MusicFilesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000001D5, 0x00007436, { { 0x27, 0xC2, 0x96, 0xFF, 0x22, 0xEC, 0xB5, 0x26, 0xF9, 0x4F, 0x04, 0xDD, 0x58, 0x17, 0xFE, 0xC6 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k3ScoreTableProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000C8, 0x0000038F, { { 0x4E, 0x2E, 0xC3, 0xD9, 0x13, 0xA0, 0x74, 0x7E, 0xAB, 0xA1, 0x23, 0x2F, 0x11, 0x35, 0x4D, 0xA5 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k3SfxFilesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000008BF, 0x0001A766, { { 0xBD, 0x5D, 0x65, 0x5D, 0xC4, 0x34, 0xDF, 0x36, 0xF5, 0xC0, 0xE8, 0x7B, 0x51, 0x9F, 0xE5, 0xC7 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k3SfxMapProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000004C0, 0x0000C4F9, { { 0x06, 0x61, 0x45, 0x38, 0xC2, 0x6A, 0x12, 0x23, 0x55, 0x2C, 0x7F, 0xA5, 0xE2, 0x79, 0x81, 0x9E } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k3ItemAnimDataProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000001C8, 0x00003777, { { 0x8F, 0xE8, 0x80, 0x4A, 0x88, 0x83, 0xC0, 0x48, 0x55, 0x47, 0x81, 0xD3, 0xB7, 0xD5, 0x09, 0x8F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k3ItemMagicTableProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000048, 0x00000F9E, { { 0x87, 0xA7, 0xC0, 0xA2, 0x0F, 0xA3, 0x5B, 0x08, 0x76, 0x6F, 0x02, 0x68, 0x13, 0x17, 0x3B, 0x76 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData k3ItemStringMapProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000048, 0x0000003C, { { 0x4C, 0xA7, 0xAA, 0xB0, 0x3C, 0xCC, 0x78, 0x91, 0x0A, 0xF2, 0x7F, 0x25, 0x80, 0xB3, 0x74, 0x74 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenStrings1Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x000000CA, 0x00003BC8, { { 0x27, 0xEA, 0xE3, 0x0D, 0x55, 0xB3, 0x69, 0x3E, 0xC2, 0x66, 0x58, 0x64, 0xAA, 0xC2, 0x80, 0x58 } } } },
- { DE_DEU, kPlatformUnknown, { 0x000000C3, 0x000038F6, { { 0x20, 0x68, 0xAB, 0xD4, 0xBF, 0x49, 0x04, 0xC0, 0x91, 0xB4, 0x71, 0xB0, 0xB6, 0xC9, 0x11, 0xF0 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x000000C7, 0x00003ADB, { { 0x0D, 0x03, 0x7A, 0xE6, 0x7D, 0x41, 0x89, 0x49, 0x0C, 0xB6, 0xD0, 0x4F, 0xEA, 0x1E, 0x54, 0xFF } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenStrings2Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000004B, 0x000011AE, { { 0x28, 0x98, 0x4C, 0xA3, 0x98, 0xB0, 0xA2, 0x17, 0x9C, 0x80, 0x4F, 0x3F, 0x58, 0x3B, 0x2C, 0xFB } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000004E, 0x0000129D, { { 0xED, 0xF3, 0x36, 0x16, 0xE2, 0x1B, 0x32, 0x95, 0xFE, 0xE8, 0x3E, 0x7D, 0xE6, 0x32, 0x34, 0xD4 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000004A, 0x00001267, { { 0xD6, 0xE2, 0x27, 0x6A, 0x6F, 0x7E, 0xB4, 0xCE, 0xA8, 0xE9, 0x79, 0x31, 0x5C, 0x13, 0xA1, 0x8F } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenStartLevelsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x00000054, { { 0xAB, 0x68, 0x74, 0x3E, 0x0D, 0x45, 0xA3, 0x50, 0xA7, 0x72, 0x6A, 0xDF, 0x9C, 0x23, 0x98, 0x74 } } } }, // EOB 1
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x000000B1, { { 0xFD, 0x3F, 0x6B, 0xB5, 0xE4, 0xEE, 0x32, 0x3B, 0xBD, 0x72, 0x37, 0x88, 0x52, 0x84, 0xBD, 0xC6 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenStatStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000055, 0x000015D6, { { 0xB8, 0x29, 0x4B, 0xA4, 0x4F, 0x45, 0x16, 0x1A, 0x07, 0x28, 0x14, 0x86, 0x1B, 0xDF, 0xAC, 0xDF } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000056, 0x000015F9, { { 0xBB, 0x5A, 0x7D, 0xCF, 0xC3, 0x90, 0x9A, 0xB3, 0x73, 0xB2, 0x4D, 0x46, 0xB8, 0x89, 0x7D, 0xAE } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000053, 0x0000159A, { { 0x1D, 0xA6, 0x84, 0xDB, 0xC5, 0x81, 0xC7, 0xF0, 0x1C, 0xA4, 0xE3, 0x10, 0x4F, 0x8A, 0xF3, 0xCE } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenRaceSexStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000098, 0x00002572, { { 0x8D, 0xF9, 0xDE, 0x92, 0xFC, 0xA8, 0xFC, 0xE9, 0x0A, 0x98, 0x6D, 0xA4, 0x6F, 0x21, 0xCD, 0xF4 } } } },
- { DE_DEU, kPlatformUnknown, { 0x000000AA, 0x00002A1E, { { 0x8E, 0xAF, 0x4B, 0x20, 0xEA, 0xFE, 0x71, 0x8E, 0x8B, 0x4B, 0x46, 0x62, 0x91, 0x48, 0x08, 0xAF } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000098, 0x00002502, { { 0xA4, 0x8B, 0x20, 0xF5, 0x97, 0xFE, 0x34, 0x6D, 0x9F, 0xF0, 0xA8, 0xE9, 0xE8, 0xFA, 0x23, 0x9B } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenClassStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x000000D5, 0x000035A7, { { 0xAF, 0x89, 0x9A, 0x11, 0x9A, 0x8D, 0x39, 0x6F, 0x26, 0x41, 0x4E, 0x20, 0xAD, 0x91, 0xC5, 0xDA } } } },
- { DE_DEU, kPlatformUnknown, { 0x000000FA, 0x00003FD8, { { 0xBD, 0x78, 0xF7, 0xEC, 0x9D, 0x9A, 0x3A, 0x22, 0xAB, 0xD9, 0x10, 0xAD, 0x8E, 0x1D, 0x4D, 0xDE } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x000000E4, 0x00003BE5, { { 0xDE, 0x1B, 0x25, 0x4F, 0xE6, 0xD0, 0xB5, 0x95, 0xD0, 0xA6, 0x69, 0xE6, 0x53, 0xB8, 0x20, 0x1E } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenAlignmentStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000078, 0x00001F44, { { 0xBB, 0x52, 0x3C, 0xA6, 0x79, 0x87, 0xDC, 0xB8, 0x21, 0x7A, 0xA0, 0x17, 0x45, 0xEA, 0xF2, 0x50 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000008A, 0x00002423, { { 0xA3, 0x36, 0x0D, 0x64, 0x33, 0xFD, 0x54, 0xA5, 0xA9, 0xD7, 0xFA, 0x34, 0x39, 0xAD, 0x6A, 0x98 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000007F, 0x000021F8, { { 0xBD, 0xB2, 0x06, 0xF9, 0xC9, 0x36, 0x5D, 0x91, 0x43, 0x08, 0x3A, 0x2C, 0x5F, 0x1C, 0xF3, 0x9C } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenEnterGameStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000020, 0x00000A0E, { { 0x98, 0x7F, 0x2C, 0x2E, 0xBB, 0x5E, 0xAA, 0xD0, 0x72, 0xF5, 0xBC, 0x4A, 0x34, 0x5B, 0xB4, 0xF5 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000021, 0x00000AB6, { { 0x02, 0x7F, 0x19, 0x5A, 0xA9, 0xB7, 0x8C, 0xE2, 0xF7, 0x35, 0xB0, 0xD8, 0xA8, 0x0C, 0x24, 0x44 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000001E, 0x00000925, { { 0xDA, 0x83, 0x00, 0xD2, 0x94, 0xF0, 0xD8, 0xFC, 0x3D, 0xA8, 0xD2, 0x4E, 0xF2, 0xD7, 0x2B, 0x7E } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenClassMinStatsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000B4, 0x00000165, { { 0x83, 0x5E, 0x91, 0x10, 0x4D, 0x75, 0x6B, 0xF9, 0x45, 0x1B, 0x65, 0x13, 0x37, 0x3E, 0xC0, 0xAE } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenRaceMinStatsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000048, 0x000000B2, { { 0x08, 0xF0, 0x8F, 0x22, 0x9D, 0xD8, 0xBE, 0x52, 0x70, 0x7C, 0xCA, 0x8D, 0xB2, 0xF5, 0xC6, 0xB8 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseChargenRaceMaxStatsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000048, 0x00000479, { { 0xBD, 0xA0, 0x8C, 0xC2, 0x05, 0xCA, 0x0D, 0x4B, 0x82, 0x9B, 0x3D, 0xB5, 0x4B, 0xDB, 0xD2, 0xC1 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSaveThrowTable1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000032, 0x00000214, { { 0x3D, 0x89, 0x30, 0x0A, 0x5C, 0x4A, 0x0F, 0xC3, 0xC7, 0x6B, 0x72, 0x7C, 0x12, 0x51, 0x8D, 0x8E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSaveThrowTable2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000019, 0x000000E7, { { 0xF4, 0x0D, 0xDF, 0xA3, 0x23, 0x71, 0x76, 0x2A, 0xC5, 0x6F, 0xF1, 0x59, 0x5F, 0x45, 0x73, 0x05 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSaveThrowTable3Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000023, 0x00000155, { { 0x42, 0x98, 0x84, 0x00, 0x70, 0x8A, 0x7B, 0x26, 0xC0, 0x96, 0xA3, 0x28, 0x41, 0x36, 0x4B, 0x21 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSaveThrowTable4Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000001E, 0x0000013B, { { 0xAB, 0x84, 0x2B, 0x0A, 0xC2, 0x46, 0xFF, 0x83, 0x03, 0xF8, 0x3F, 0x32, 0x53, 0xA2, 0x95, 0x65 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSaveThrwLvlIndexProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x00000070, { { 0x57, 0x48, 0x5F, 0x75, 0x79, 0xD4, 0xAA, 0x7D, 0xB7, 0xEB, 0x19, 0x9F, 0xCF, 0x99, 0x29, 0x29 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSaveThrwModDivProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x00000012, { { 0x50, 0x29, 0x51, 0x65, 0x0B, 0xF1, 0xCC, 0xDA, 0x2C, 0xA4, 0x7E, 0xEE, 0x20, 0xB0, 0x29, 0xB1 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSaveThrwModExtProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x00000030, { { 0x07, 0x7D, 0x61, 0x1C, 0x95, 0xEC, 0x9A, 0xCE, 0xA1, 0x29, 0x83, 0x2F, 0xCA, 0x95, 0x95, 0xF5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBasePryDoorStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x000000E8, 0x00004D9F, { { 0xDE, 0x01, 0x69, 0x00, 0x0B, 0x32, 0xFA, 0x20, 0xB8, 0x11, 0xD6, 0xD9, 0xE2, 0xEA, 0xF5, 0xE8 } } } }, // EOB 1
- { EN_ANY, kPlatformUnknown, { 0x000000D2, 0x000043D2, { { 0x82, 0x3C, 0xF4, 0x4A, 0x87, 0x84, 0xFE, 0xF9, 0xBA, 0xC6, 0x67, 0x3A, 0x0D, 0x0F, 0x76, 0x78 } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x00000128, 0x0000657C, { { 0xA3, 0xC8, 0x48, 0xA7, 0x1F, 0x75, 0xDF, 0xB0, 0x37, 0xDA, 0x75, 0x2E, 0x9F, 0x4E, 0x45, 0xB0 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x000000D9, 0x00004769, { { 0x24, 0x59, 0x00, 0x8F, 0x9A, 0x3E, 0x95, 0xAB, 0x14, 0x9A, 0x3B, 0x19, 0x34, 0xDB, 0x9B, 0x18 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseWarningStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000052, 0x00001A7B, { { 0x81, 0x7A, 0xDF, 0xD2, 0x4F, 0xA7, 0x92, 0xA7, 0x44, 0xE5, 0x22, 0x73, 0xF6, 0xB3, 0x29, 0x5C } } } }, // EOB 1
- { EN_ANY, kPlatformUnknown, { 0x00000085, 0x00002B5C, { { 0xF1, 0xCE, 0x7C, 0x53, 0xEF, 0x5B, 0x59, 0x71, 0xA9, 0xEB, 0x00, 0xBA, 0xB7, 0x59, 0xC5, 0x2E } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x0000005F, 0x00001FD2, { { 0xBA, 0x85, 0x97, 0x63, 0x84, 0x80, 0x79, 0x44, 0x50, 0x99, 0x1A, 0x01, 0x37, 0x37, 0x0E, 0xD1 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000096, 0x000032BF, { { 0x07, 0x95, 0x91, 0x1A, 0x1B, 0xC8, 0xA3, 0xEE, 0x76, 0x0A, 0x48, 0x11, 0x37, 0x6F, 0xBA, 0x05 } } } }, // EOB 1
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseItemSuffixStringsRingsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000002B, 0x00000F7B, { { 0x8A, 0x27, 0x87, 0x81, 0x5F, 0x74, 0x27, 0xA9, 0x5E, 0x1B, 0xEE, 0xC0, 0xF7, 0x22, 0x8F, 0x57 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000022, 0x00000C02, { { 0x7D, 0x5F, 0x40, 0xEA, 0xAD, 0xDD, 0x1B, 0xA0, 0xA6, 0xE0, 0x57, 0x7D, 0x0D, 0x60, 0xF4, 0x2C } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000002E, 0x00000FF2, { { 0xE1, 0x50, 0xB7, 0xE2, 0xEF, 0xAD, 0x5B, 0x6D, 0x27, 0x35, 0x9C, 0xE7, 0x2D, 0xB2, 0x2E, 0xD0 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseItemSuffixStringsPotionsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000054, 0x00001DDB, { { 0xB6, 0x78, 0xD9, 0x09, 0x1D, 0x09, 0x63, 0xF8, 0x96, 0x74, 0xF0, 0x75, 0x23, 0xF5, 0xD4, 0xC4 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000064, 0x000024ED, { { 0x10, 0x5A, 0xB8, 0xCA, 0x0F, 0x0D, 0x44, 0x19, 0x9D, 0x3D, 0x76, 0x54, 0xA1, 0x69, 0x97, 0x8B } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000006F, 0x00002792, { { 0x1A, 0x71, 0x2B, 0xCC, 0xCA, 0xDA, 0xF6, 0xED, 0x5E, 0xF0, 0x24, 0x20, 0xD7, 0x2D, 0x18, 0x49 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseItemSuffixStringsWandsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000003C, 0x000014EB, { { 0xB5, 0x38, 0x35, 0x57, 0xF2, 0xF8, 0x0E, 0xBA, 0x75, 0x03, 0x1C, 0xCD, 0x46, 0x7D, 0x03, 0x83 } } } }, // EOB 1
- { EN_ANY, kPlatformUnknown, { 0x0000004A, 0x000019B2, { { 0x44, 0x10, 0xE4, 0xAF, 0xAB, 0x19, 0x25, 0x87, 0x2B, 0x15, 0x1C, 0x4C, 0x03, 0x50, 0x41, 0xC4 } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x00000040, 0x000016B5, { { 0xEC, 0xF4, 0x71, 0xC1, 0x69, 0x5C, 0xF9, 0xC1, 0xED, 0xC1, 0xED, 0x0C, 0x25, 0x3E, 0x13, 0xB1 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000069, 0x0000252B, { { 0x12, 0x06, 0xEA, 0x2F, 0xAF, 0x47, 0x55, 0x52, 0xB6, 0xD9, 0x11, 0xA4, 0x4F, 0x30, 0xCE, 0x9D } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseRipItemStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000025, 0x00000AEA, { { 0x7A, 0x2D, 0x03, 0xA5, 0x94, 0xD1, 0xA2, 0x2C, 0x41, 0x1F, 0xEB, 0x5C, 0xFB, 0xB2, 0xC6, 0x9E } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000024, 0x00000B1B, { { 0xD0, 0x26, 0x19, 0x0B, 0xA5, 0x8A, 0x38, 0x73, 0x14, 0x25, 0x40, 0x5D, 0x24, 0xB8, 0x4E, 0xC5 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000002E, 0x00000D38, { { 0xCE, 0xC5, 0x00, 0x63, 0xBB, 0xF0, 0xC4, 0x0D, 0x50, 0x2B, 0x82, 0x1C, 0xC0, 0xCD, 0xF1, 0xAF } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCursedStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000D, 0x000003C7, { { 0x7F, 0x6B, 0x6A, 0xFE, 0x63, 0xF4, 0x17, 0xAF, 0xFD, 0x00, 0x31, 0x4A, 0x20, 0x9E, 0x8C, 0xEB } } } }, // EOB 1
- { EN_ANY, kPlatformUnknown, { 0x0000000D, 0x000003C7, { { 0x59, 0xD8, 0x84, 0x25, 0xE0, 0x06, 0x51, 0xA4, 0x70, 0xC5, 0x78, 0x22, 0xF0, 0x2D, 0xA0, 0x43 } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x00000010, 0x00000514, { { 0x97, 0x41, 0xA6, 0xAE, 0xF8, 0xA8, 0x3E, 0x85, 0xA8, 0x16, 0x01, 0x15, 0x0E, 0x46, 0x13, 0x45 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000013, 0x000005A5, { { 0xEC, 0xD3, 0xA5, 0xD2, 0xAD, 0x7C, 0x5E, 0x0F, 0x42, 0xBC, 0x6E, 0xDE, 0x7E, 0x36, 0x0B, 0x43 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseEnchantedStringProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000007, 0x0000016C, { { 0x98, 0x62, 0xD3, 0xA3, 0x11, 0xAE, 0x0A, 0xBA, 0x8F, 0xE8, 0x30, 0x0B, 0xDC, 0x12, 0x90, 0x3B } } } }, // EOB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000007, 0x0000016C, { { 0x01, 0x91, 0xBD, 0x89, 0xAE, 0x0E, 0x71, 0xEE, 0xBE, 0x31, 0xD9, 0x55, 0x21, 0x61, 0x19, 0xAE } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicObjectStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000002B, 0x00000E7D, { { 0x7E, 0x8F, 0x17, 0xEB, 0xE5, 0x5D, 0xEB, 0x9A, 0x84, 0xFF, 0x86, 0x6A, 0x01, 0x3E, 0x04, 0x84 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000003A, 0x000014E4, { { 0x3D, 0x34, 0x3C, 0xCA, 0xDC, 0xD1, 0xCF, 0x15, 0x69, 0x57, 0xC3, 0xB1, 0x58, 0xDF, 0xE9, 0x9D } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000002A, 0x00000EE4, { { 0x9C, 0x38, 0x4B, 0x9B, 0x67, 0x30, 0x4E, 0x88, 0xA9, 0xA2, 0xF8, 0x78, 0x8E, 0xC7, 0xC3, 0x86 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicObject5StringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000006, 0x000001FE, { { 0x74, 0x8D, 0xB9, 0x76, 0xD2, 0x2F, 0x60, 0xD2, 0x36, 0x45, 0x98, 0x4C, 0x0A, 0xE5, 0xE5, 0x0D } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000006, 0x00000204, { { 0xE4, 0xC1, 0xAD, 0x71, 0x87, 0x80, 0x9D, 0x97, 0x91, 0x80, 0x3F, 0x71, 0xD3, 0x62, 0x06, 0xD5 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000007, 0x0000027A, { { 0x44, 0x47, 0x79, 0x46, 0x9B, 0xE5, 0xBD, 0x3C, 0xE8, 0x8D, 0xC6, 0xC5, 0x4E, 0x88, 0x13, 0xC0 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBasePatternSuffixProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000009, 0x00000245, { { 0x67, 0x3F, 0x33, 0xA5, 0x3B, 0x5D, 0x2C, 0x9E, 0x15, 0x82, 0x04, 0xE2, 0xD7, 0x34, 0x42, 0x24 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000006, 0x0000015D, { { 0x33, 0xD6, 0x91, 0x2D, 0xED, 0xE1, 0x43, 0x42, 0x23, 0xB9, 0xE9, 0x3D, 0x48, 0x82, 0x92, 0x1E } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000008, 0x00000219, { { 0xCD, 0xDC, 0x7F, 0x8B, 0xBE, 0xD6, 0x05, 0x37, 0xDA, 0xDC, 0x11, 0xC3, 0x1E, 0x7A, 0xE7, 0x13 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBasePatternGrFix1Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000009, 0x00000245, { { 0x67, 0x3F, 0x33, 0xA5, 0x3B, 0x5D, 0x2C, 0x9E, 0x15, 0x82, 0x04, 0xE2, 0xD7, 0x34, 0x42, 0x24 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000006, 0x0000015D, { { 0x33, 0xD6, 0x91, 0x2D, 0xED, 0xE1, 0x43, 0x42, 0x23, 0xB9, 0xE9, 0x3D, 0x48, 0x82, 0x92, 0x1E } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000007, 0x0000018A, { { 0x02, 0x5C, 0x86, 0xD9, 0x62, 0x0C, 0x71, 0xB3, 0x77, 0x9C, 0x7B, 0xBC, 0x4D, 0x5B, 0xDB, 0xE7 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBasePatternGrFix2Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000009, 0x00000245, { { 0x67, 0x3F, 0x33, 0xA5, 0x3B, 0x5D, 0x2C, 0x9E, 0x15, 0x82, 0x04, 0xE2, 0xD7, 0x34, 0x42, 0x24 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000006, 0x0000015D, { { 0x33, 0xD6, 0x91, 0x2D, 0xED, 0xE1, 0x43, 0x42, 0x23, 0xB9, 0xE9, 0x3D, 0x48, 0x82, 0x92, 0x1E } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000006, 0x00000150, { { 0x48, 0xBE, 0xED, 0xD3, 0xA5, 0x2E, 0xCD, 0xE0, 0x34, 0xBA, 0xA6, 0x8D, 0x7D, 0x00, 0xA2, 0xFF } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseValidateArmorStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000023, 0x00000B78, { { 0xC2, 0x33, 0x6B, 0xB9, 0xE1, 0x5E, 0x88, 0x5E, 0x22, 0xF2, 0x97, 0x83, 0xF8, 0xC8, 0x8C, 0xAB } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000026, 0x00000D19, { { 0xAD, 0x19, 0xE2, 0xDE, 0x04, 0xF9, 0x8F, 0x92, 0xAC, 0x1A, 0x05, 0xEA, 0x7B, 0xB5, 0x9F, 0x09 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000029, 0x00000E7A, { { 0xEC, 0xA8, 0x2E, 0x8D, 0xB1, 0xC8, 0x0F, 0xCD, 0x24, 0xBD, 0x4B, 0x39, 0x16, 0xC9, 0x53, 0x08 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseValidateCursedStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000002E, 0x00000F35, { { 0xE7, 0x0E, 0xA1, 0xCE, 0xCC, 0x13, 0xBC, 0x4B, 0x2B, 0x19, 0xEB, 0xA4, 0x05, 0xCF, 0xCF, 0x65 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000037, 0x000012D8, { { 0x3C, 0x7F, 0x16, 0xCE, 0x40, 0x58, 0xF1, 0x3A, 0xAB, 0x4C, 0x37, 0x82, 0x32, 0x88, 0xA4, 0x2D } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseValidateNoDropStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000001F, 0x00000A8F, { { 0x61, 0x99, 0x3E, 0x36, 0x49, 0x19, 0xB4, 0xE4, 0xBC, 0xFA, 0xB5, 0x71, 0x0E, 0xD6, 0x15, 0x3C } } } }, // EOB 1
- { EN_ANY, kPlatformUnknown, { 0x00000020, 0x00000AB6, { { 0xAA, 0x0E, 0x64, 0xD1, 0xA2, 0xA6, 0x62, 0x76, 0x51, 0xDF, 0x9E, 0x76, 0x85, 0x42, 0xE1, 0x4A } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x00000024, 0x00000C31, { { 0x10, 0xD9, 0x55, 0x69, 0xFE, 0x0A, 0x8C, 0xE5, 0xF7, 0x05, 0x5F, 0x09, 0x3B, 0xC9, 0x93, 0x38 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000027, 0x00000D9F, { { 0xA5, 0xF0, 0x8E, 0x78, 0x0A, 0x37, 0x31, 0xDC, 0xE0, 0xDF, 0xE5, 0xCB, 0x86, 0xDC, 0x21, 0x73 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBasePotionStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000017, 0x0000070E, { { 0xD9, 0xCB, 0x26, 0xB6, 0x6F, 0x17, 0x12, 0xB7, 0xB0, 0x95, 0x1B, 0x2A, 0xD8, 0x83, 0x0D, 0x2B } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000001E, 0x000009BD, { { 0xCA, 0xD0, 0x29, 0xB0, 0x7A, 0x2B, 0x0B, 0x69, 0xCA, 0xA4, 0xCA, 0x97, 0xCF, 0x8B, 0x03, 0xAD } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000001D, 0x00000964, { { 0x5D, 0xE2, 0xA5, 0x0D, 0x72, 0xE9, 0x8F, 0xC9, 0xFA, 0xF3, 0x41, 0x5A, 0x3F, 0x33, 0xAA, 0x15 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseWandStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000035, 0x000011EC, { { 0x7C, 0x3D, 0xF1, 0x28, 0x0C, 0x23, 0xD3, 0x18, 0xEE, 0xAD, 0xA7, 0xF4, 0x58, 0xD7, 0x1C, 0x8E } } } }, // EOB 1
- { EN_ANY, kPlatformUnknown, { 0x00000029, 0x00000E47, { { 0xED, 0x2E, 0xD4, 0x4D, 0xDB, 0x90, 0x3F, 0xD0, 0xFB, 0x95, 0xB8, 0xF2, 0xCF, 0x06, 0x08, 0xAF } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x00000046, 0x0000186E, { { 0x54, 0x8F, 0x53, 0x34, 0xE8, 0x81, 0x76, 0x71, 0x53, 0x3F, 0x99, 0xE7, 0xCF, 0xB7, 0xC9, 0xD9 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000002F, 0x00001070, { { 0x86, 0x18, 0x00, 0x54, 0x05, 0x3D, 0xC2, 0x26, 0xA7, 0xD9, 0x68, 0xE6, 0xC2, 0x0D, 0x26, 0x99 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseItemMisuseStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000066, 0x000022F6, { { 0xE8, 0xB9, 0x07, 0x61, 0x29, 0x90, 0xB0, 0x22, 0x30, 0xC5, 0x0F, 0xAD, 0xCA, 0x6C, 0x83, 0xC6 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000068, 0x00002472, { { 0xCA, 0xD7, 0xFD, 0x5B, 0x65, 0x72, 0xC7, 0x15, 0xB3, 0xFE, 0xFC, 0xEF, 0x53, 0xFB, 0x57, 0x6C } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000007E, 0x00002C87, { { 0x5E, 0x11, 0xC9, 0x93, 0xF4, 0xAB, 0x1A, 0x9D, 0xA7, 0x62, 0x71, 0x94, 0x37, 0xCA, 0xE2, 0x25 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseTakenStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000009, 0x0000026E, { { 0x3B, 0x73, 0x70, 0x2E, 0x22, 0x90, 0x0D, 0xC1, 0xDE, 0x32, 0x11, 0xCC, 0x97, 0xBA, 0xA3, 0x58 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000000F, 0x000004ED, { { 0x8D, 0x12, 0x1E, 0x91, 0xD3, 0xF4, 0x34, 0x15, 0xC7, 0x4F, 0xE7, 0x23, 0x5B, 0xE8, 0x66, 0xB7 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBasePotionEffectStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000065, 0x0000248F, { { 0x4F, 0x60, 0x7F, 0xA7, 0x6F, 0x81, 0xD4, 0xAA, 0x68, 0xD5, 0xAA, 0xBE, 0xBC, 0xD4, 0x92, 0x3A } } } }, // EOB 1
- { EN_ANY, kPlatformUnknown, { 0x0000005D, 0x0000219D, { { 0x87, 0x60, 0x9F, 0xF3, 0x1B, 0x30, 0x4B, 0x2B, 0xE4, 0x94, 0xEF, 0x22, 0xEA, 0x36, 0xE4, 0x7F } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x0000006E, 0x00002840, { { 0x04, 0xF8, 0x53, 0x38, 0x09, 0xD8, 0x58, 0xFC, 0x5F, 0xE9, 0x69, 0xFB, 0x9C, 0x0D, 0x92, 0x2E } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000059, 0x000020D2, { { 0xB6, 0xA1, 0x57, 0xD6, 0x46, 0xE3, 0xCF, 0x04, 0x5A, 0xC8, 0xBB, 0x59, 0x8D, 0xE3, 0x6F, 0xBF } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseYesNoStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000007, 0x0000022E, { { 0xF1, 0x30, 0x61, 0xA7, 0x20, 0x71, 0x3B, 0x75, 0xBE, 0xA7, 0xD6, 0x78, 0x34, 0xF7, 0x19, 0x06 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000008, 0x00000275, { { 0xAF, 0x3E, 0xC5, 0x5A, 0x60, 0x34, 0x9B, 0x39, 0x37, 0x9E, 0xE2, 0x17, 0x23, 0x8E, 0x23, 0x23 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonMoreStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000005, 0x00000133, { { 0xA6, 0x1A, 0x3A, 0xB8, 0xCC, 0x92, 0xB8, 0xBE, 0x28, 0xD6, 0x64, 0x8F, 0x0A, 0x2A, 0x39, 0xCD } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000005, 0x0000012C, { { 0x82, 0x30, 0x00, 0xD6, 0xFA, 0x53, 0x17, 0x69, 0x64, 0xCA, 0xFE, 0x0F, 0x92, 0xEF, 0x87, 0x7A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseNpcMaxStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000052, 0x00001D23, { { 0x95, 0xB0, 0xBF, 0xF9, 0xE6, 0x8C, 0xCF, 0x9B, 0x36, 0xE3, 0x81, 0x22, 0x1E, 0x68, 0x9E, 0xBE } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000064, 0x00002341, { { 0xC0, 0xA6, 0xCD, 0x5E, 0x8E, 0xFA, 0x89, 0xE4, 0x98, 0xE5, 0x3D, 0x13, 0x6B, 0xE7, 0x8F, 0x6E } } } }, // EoB 1
- { DE_DEU, kPlatformUnknown, { 0x0000003E, 0x00001613, { { 0x4E, 0x31, 0x7F, 0xC4, 0xC7, 0x9C, 0xB5, 0x7D, 0x36, 0x85, 0xD8, 0x81, 0xE2, 0x06, 0xF9, 0xAE } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseOkStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000003, 0x0000009A, { { 0x88, 0xD2, 0x76, 0x1C, 0x80, 0x02, 0xC5, 0x5B, 0x35, 0x57, 0x0E, 0xEB, 0xCA, 0xD6, 0xC9, 0x2E } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000003, 0x0000009A, { { 0x88, 0xD2, 0x76, 0x1C, 0x80, 0x02, 0xC5, 0x5B, 0x35, 0x57, 0x0E, 0xEB, 0xCA, 0xD6, 0xC9, 0x2E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseNpcJoinStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000015, 0x000006C7, { { 0x5A, 0xBF, 0xA2, 0x3E, 0x36, 0xC4, 0x23, 0xC8, 0xA8, 0x86, 0x06, 0x80, 0xAF, 0xB1, 0xDD, 0xAB } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000020, 0x00000A93, { { 0x4A, 0xFD, 0x70, 0xB7, 0x7A, 0x0B, 0x7C, 0x32, 0x07, 0x5A, 0x4A, 0xC7, 0x84, 0x9D, 0x2D, 0xF3 } } } }, // EoB 1
- { DE_DEU, kPlatformUnknown, { 0x00000018, 0x00000848, { { 0xC9, 0xEE, 0x71, 0x04, 0xA2, 0xA5, 0x52, 0x87, 0x7C, 0x6D, 0x3C, 0x15, 0x7D, 0x41, 0xE0, 0xE7 } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCancelStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000007, 0x000001A6, { { 0x21, 0xED, 0xF9, 0x71, 0xEF, 0x74, 0xD7, 0x9E, 0xF3, 0x02, 0xE5, 0x03, 0x06, 0xDE, 0xD5, 0x09 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000000A, 0x0000027A, { { 0xBD, 0x88, 0xB2, 0xA0, 0xAF, 0x8D, 0xFE, 0x5B, 0xAC, 0xDF, 0xB5, 0x9F, 0xA0, 0x23, 0x6E, 0xAE } } } }, // EoB 1
- { DE_DEU, kPlatformUnknown, { 0x00000006, 0x00000145, { { 0x22, 0x45, 0x35, 0xC6, 0x28, 0x00, 0x22, 0xAA, 0xD1, 0x15, 0x48, 0xE6, 0xE5, 0x62, 0x73, 0x37 } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseAbortStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000006, 0x00000178, { { 0xDD, 0xEC, 0x68, 0x6D, 0x2E, 0x10, 0x34, 0x94, 0x46, 0x25, 0xF9, 0xAB, 0x29, 0x27, 0x32, 0xA8 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000006, 0x00000145, { { 0x22, 0x45, 0x35, 0xC6, 0x28, 0x00, 0x22, 0xAA, 0xD1, 0x15, 0x48, 0xE6, 0xE5, 0x62, 0x73, 0x37 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsMainProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000067, 0x0000245E, { { 0xD9, 0xE0, 0x74, 0x9D, 0x43, 0x96, 0xDC, 0x3B, 0xDF, 0x90, 0x03, 0xDE, 0x91, 0xE6, 0xA0, 0x1E } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000068, 0x000025D9, { { 0x17, 0xEB, 0xAB, 0x4F, 0x95, 0xD1, 0x7F, 0xEB, 0xF4, 0x92, 0x42, 0xD1, 0xD2, 0xA8, 0xC4, 0xA8 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000069, 0x0000265B, { { 0x4C, 0xA9, 0x38, 0x28, 0xE1, 0xD0, 0xE3, 0x35, 0xBB, 0xDC, 0xFB, 0x6B, 0xAB, 0xB1, 0x62, 0x88 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsSaveLoadProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000077, 0x00002513, { { 0x70, 0xD9, 0x48, 0xC2, 0x3A, 0x38, 0x1D, 0xD0, 0x8B, 0x90, 0x08, 0x8D, 0x80, 0xF5, 0x24, 0x59 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000086, 0x00002D2F, { { 0x2B, 0x48, 0x5C, 0x78, 0xF9, 0xB9, 0xD6, 0xA8, 0x1D, 0xF4, 0x97, 0xAC, 0xF1, 0x09, 0x26, 0xA7 } } } }, // EOB1
- { EN_ANY, kPlatformUnknown, { 0x000000A9, 0x00003850, { { 0xC3, 0x09, 0x7B, 0x18, 0xD6, 0x08, 0x0E, 0x2A, 0xB6, 0x66, 0x43, 0x14, 0xD7, 0x59, 0x34, 0xF7 } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x000000A2, 0x00003942, { { 0x6E, 0x10, 0x87, 0x4B, 0x80, 0xE8, 0x89, 0xC4, 0x31, 0xDC, 0xAC, 0xA9, 0xA3, 0x8D, 0x79, 0x41 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsOnOffProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000007, 0x00000178, { { 0x4D, 0xA7, 0x13, 0x00, 0x05, 0xF2, 0x44, 0xCB, 0xF7, 0x12, 0x72, 0x54, 0xDE, 0x35, 0x04, 0xEC } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000007, 0x00000178, { { 0xC7, 0x6F, 0x60, 0x72, 0x47, 0x89, 0x47, 0xF0, 0x29, 0x57, 0x45, 0x41, 0xD5, 0x80, 0x40, 0x7B } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsSpellsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x000001EF, 0x0000A0D0, { { 0xBA, 0x80, 0x5C, 0xAB, 0x93, 0x19, 0x53, 0x45, 0x17, 0xBC, 0x86, 0x5B, 0x1B, 0x01, 0x3E, 0x98 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x000001EA, 0x00009DE0, { { 0x00, 0xB0, 0x1F, 0xE7, 0x16, 0x48, 0x51, 0x25, 0xE5, 0xD8, 0xA1, 0x31, 0x13, 0x81, 0x8D, 0xB6 } } } }, // EOB1
- { EN_ANY, kPlatformUnknown, { 0x000001FB, 0x0000A658, { { 0xAD, 0x6A, 0xFE, 0x13, 0xE5, 0xEA, 0x6A, 0xD1, 0xC9, 0x80, 0x1C, 0xEE, 0xD7, 0x2A, 0xF8, 0xB2 } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x00000222, 0x0000B1C9, { { 0x24, 0xC8, 0x9B, 0x51, 0xEE, 0x45, 0x14, 0xFC, 0x1B, 0xE4, 0x37, 0x8B, 0xEC, 0x94, 0xD9, 0x0B } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsRestProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x000000B3, 0x00003CED, { { 0x82, 0xF9, 0xA1, 0x74, 0xE6, 0x95, 0xA4, 0xFC, 0xE6, 0x5E, 0xB4, 0x43, 0x7D, 0x10, 0xFD, 0x12 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x000000B3, 0x00003BE4, { { 0x7F, 0xE8, 0xFE, 0xA4, 0xD9, 0x5C, 0x49, 0x66, 0x38, 0x8F, 0x84, 0xB8, 0xF5, 0x03, 0xCD, 0x70 } } } }, // EOB
- { DE_DEU, kPlatformUnknown, { 0x000000C0, 0x000040A6, { { 0x05, 0x97, 0x45, 0x72, 0xE2, 0x33, 0xBE, 0xDE, 0x56, 0x26, 0x26, 0x15, 0x3A, 0x56, 0x93, 0xFD } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsDropProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000002E, 0x00000FCA, { { 0x88, 0xCB, 0xD2, 0xB3, 0xDA, 0x36, 0x97, 0x3D, 0xB8, 0x75, 0xFF, 0x36, 0xE1, 0x4E, 0xF4, 0x6D } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000039, 0x0000131E, { { 0x74, 0x0B, 0xE9, 0x04, 0x76, 0x26, 0xD2, 0xE8, 0x03, 0x48, 0x38, 0x18, 0xAC, 0x19, 0xBD, 0x7E } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000033, 0x0000119C, { { 0x8F, 0x2B, 0xC3, 0x01, 0xB2, 0xDE, 0x1F, 0xC6, 0x82, 0xC3, 0x58, 0x7C, 0x50, 0x23, 0x37, 0x65 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsExitProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000002B, 0x00000E3D, { { 0x1C, 0xD6, 0x39, 0xA9, 0xC7, 0x3D, 0x32, 0x4A, 0xF2, 0xAE, 0xEC, 0x08, 0x6F, 0xC7, 0xA6, 0x7B } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x0000002D, 0x00000E68, { { 0x4B, 0x2F, 0x65, 0x39, 0x69, 0xE7, 0x3D, 0x7B, 0x10, 0x15, 0x6F, 0x1F, 0xD8, 0x8E, 0xEA, 0x55 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000026, 0x00000CBD, { { 0x0C, 0x5D, 0xE4, 0xD2, 0x6F, 0xA3, 0x91, 0xDA, 0x5F, 0xE2, 0x57, 0x77, 0x74, 0x22, 0xE7, 0x85 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsStarveProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000003D, 0x0000150C, { { 0x40, 0xEB, 0x79, 0xC3, 0x99, 0x4C, 0xEA, 0xCD, 0x8A, 0xB4, 0x54, 0xB8, 0xAA, 0xEC, 0xAD, 0x4F } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000037, 0x00001296, { { 0x51, 0x3C, 0x90, 0x91, 0x4E, 0x1C, 0x73, 0x2F, 0x0C, 0x7A, 0x6D, 0x03, 0x1E, 0x54, 0x65, 0xF1 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000030, 0x00001057, { { 0xF3, 0x5E, 0xFC, 0xC3, 0x9D, 0xB5, 0xFE, 0x4E, 0x66, 0x9D, 0x6A, 0xC6, 0x61, 0xC8, 0x0A, 0x17 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsScribeProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000103, 0x000055E1, { { 0x1B, 0x56, 0xD2, 0x78, 0x3F, 0x67, 0x7A, 0x5B, 0xB6, 0x2B, 0x70, 0x3D, 0x6A, 0xBB, 0x08, 0x0A } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x0000010C, 0x00005B1C, { { 0xD7, 0xBF, 0x37, 0x21, 0xA2, 0x63, 0x8C, 0x6A, 0x02, 0x92, 0x13, 0x32, 0xD6, 0xA6, 0x1C, 0xDC } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000100, 0x0000560F, { { 0x69, 0x15, 0x2C, 0x2D, 0xE7, 0x40, 0x4A, 0xE0, 0x86, 0x0D, 0xC8, 0x66, 0x87, 0x1C, 0x27, 0x0B } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsDrop2Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000084, 0x00002ACE, { { 0xAB, 0x78, 0x42, 0x29, 0xFB, 0xC5, 0x34, 0x96, 0x9D, 0x8A, 0x21, 0x46, 0xE7, 0x6B, 0x06, 0xBA } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x0000008C, 0x00002D02, { { 0x11, 0x3F, 0x0C, 0xB2, 0xBF, 0xA7, 0x39, 0x23, 0xDC, 0x00, 0xB4, 0xEA, 0x5E, 0xFE, 0x40, 0xB7 } } } }, // EOB1
- { EN_ANY, kPlatformUnknown, { 0x0000008E, 0x00002FFB, { { 0xCE, 0x7A, 0xCC, 0xA4, 0x02, 0x54, 0x1A, 0x78, 0xF1, 0xFC, 0xE6, 0x6C, 0x76, 0xCD, 0xFD, 0x9E } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x00000090, 0x000031CE, { { 0x01, 0x72, 0x59, 0xBE, 0x62, 0x72, 0xD4, 0x99, 0x76, 0xC9, 0x92, 0x0E, 0xE9, 0x1A, 0xCD, 0x65 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsHeadProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000021, 0x00000B27, { { 0x04, 0x06, 0x01, 0xF8, 0x50, 0x54, 0x11, 0x61, 0xFF, 0xB4, 0xE1, 0x97, 0xFA, 0x08, 0xAA, 0x1B } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000024, 0x00000CF5, { { 0x96, 0xD6, 0xB5, 0xB0, 0x2E, 0x71, 0xA4, 0x0A, 0x34, 0x41, 0x94, 0x02, 0x2F, 0xB0, 0x4C, 0x36 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000025, 0x00000D92, { { 0xE4, 0x73, 0x2D, 0x29, 0xAD, 0x30, 0xE5, 0x8D, 0xAE, 0xC6, 0xD7, 0xF5, 0x35, 0xD8, 0xA4, 0x98 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsPoisonProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000002E, 0x00001077, { { 0x14, 0x7E, 0xFC, 0xE0, 0x88, 0xFE, 0x86, 0xA8, 0x96, 0x94, 0xB1, 0x71, 0x90, 0x47, 0x2D, 0x78 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000036, 0x000013A2, { { 0x18, 0xD9, 0x1D, 0xE5, 0x3D, 0xFD, 0x52, 0xB6, 0x18, 0x17, 0x61, 0xE8, 0xA5, 0x32, 0x9F, 0xA8 } } } }, // EOB1
- { EN_ANY, kPlatformUnknown, { 0x0000002D, 0x00001006, { { 0xD6, 0x0B, 0x11, 0x79, 0xAD, 0x61, 0x5B, 0x3A, 0x72, 0x7D, 0x53, 0x6F, 0xA9, 0x08, 0x73, 0xDC } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x00000035, 0x000013BE, { { 0x73, 0x38, 0x76, 0x2C, 0x42, 0x87, 0x43, 0x7E, 0x8E, 0x4C, 0x41, 0x57, 0x3F, 0x04, 0xBA, 0x11 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsMgcProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000020, 0x00000857, { { 0xD1, 0x9E, 0xBF, 0xF7, 0xCF, 0xF7, 0xD0, 0x94, 0x14, 0x56, 0xD2, 0x4F, 0x59, 0x91, 0x57, 0x52 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000020, 0x0000086C, { { 0x12, 0x36, 0x84, 0x2F, 0x00, 0xAD, 0x12, 0x42, 0x3A, 0xA2, 0xC5, 0xC9, 0x59, 0x90, 0x64, 0x5F } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000021, 0x0000090B, { { 0x26, 0xA7, 0x58, 0x7C, 0x0C, 0x9E, 0x67, 0xB9, 0x05, 0xE6, 0x91, 0x59, 0xE3, 0xDF, 0x9C, 0x52 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsPrefsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000041, 0x00001392, { { 0xB1, 0x7E, 0xE3, 0x73, 0xB2, 0xA2, 0x63, 0x39, 0x20, 0xE8, 0xF3, 0x38, 0x45, 0xB6, 0xAC, 0xC8 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000045, 0x000015F6, { { 0x53, 0xBA, 0x7E, 0x6D, 0x24, 0x88, 0x2C, 0x19, 0x10, 0x71, 0x6F, 0xAB, 0x85, 0x8E, 0x97, 0xF6 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x0000003D, 0x00001246, { { 0x03, 0xFB, 0x7C, 0x80, 0x33, 0x45, 0x6C, 0x27, 0x89, 0x7B, 0x7C, 0xAC, 0x7A, 0xE1, 0xDE, 0x49 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsRest2Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000004D, 0x00001744, { { 0x63, 0xA5, 0x6F, 0x09, 0x6F, 0x5E, 0x4B, 0x89, 0xFF, 0x33, 0x63, 0xCB, 0xAA, 0x04, 0x59, 0x63 } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x0000004D, 0x00001769, { { 0x2C, 0xA9, 0x7D, 0x4C, 0xC5, 0x13, 0xE2, 0xEB, 0x89, 0x6C, 0xAE, 0x25, 0xC3, 0x3E, 0x56, 0x7E } } } }, // EOB1
- { EN_ANY, kPlatformUnknown, { 0x00000052, 0x000017F6, { { 0x7C, 0x49, 0xFC, 0x89, 0x90, 0x5D, 0xFF, 0x86, 0x86, 0xE9, 0xB2, 0x29, 0x60, 0xB2, 0x22, 0x7F } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x0000004C, 0x000014FF, { { 0x0C, 0x94, 0x6D, 0x5A, 0x42, 0x68, 0xE0, 0xDC, 0xCD, 0xB9, 0x1A, 0x4A, 0xC1, 0xCC, 0xE6, 0x91 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsRest3Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000002B, 0x00000DF4, { { 0x42, 0x90, 0x49, 0xA7, 0x2E, 0x61, 0x77, 0x7F, 0x9F, 0x53, 0xAD, 0x3C, 0x87, 0xE2, 0x0E, 0x36 } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x00000027, 0x00000D45, { { 0x8D, 0xAB, 0xBF, 0x57, 0xF3, 0x2C, 0x3F, 0x93, 0xBF, 0x33, 0x58, 0x2D, 0x97, 0x78, 0x71, 0x7F } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsRest4Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000029, 0x00000DEC, { { 0x1C, 0x86, 0x3D, 0x40, 0x2C, 0x5E, 0xCA, 0xA0, 0xA1, 0xB8, 0x23, 0x42, 0x9C, 0x6B, 0xFA, 0xBB } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x00000034, 0x00001238, { { 0xE9, 0x95, 0x27, 0x79, 0x1C, 0x0D, 0xF5, 0x94, 0x92, 0xFC, 0xCA, 0x22, 0x17, 0xA8, 0x36, 0x96 } } } }, // EOB1
- { EN_ANY, kPlatformUnknown, { 0x0000002A, 0x00000DEB, { { 0x0E, 0xD3, 0xC5, 0xA9, 0x8B, 0x06, 0x57, 0xB0, 0x20, 0x1A, 0xEE, 0x42, 0x49, 0x2E, 0xA1, 0x50 } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x00000033, 0x00001189, { { 0x56, 0x1B, 0x6B, 0x00, 0x47, 0xFD, 0x56, 0xD3, 0x12, 0x03, 0x79, 0x7D, 0xFF, 0x83, 0xCF, 0xAA } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsDefeatProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000006D, 0x00002643, { { 0x94, 0xBA, 0xAC, 0xA4, 0x87, 0x6A, 0xEA, 0x7D, 0x98, 0x6E, 0x09, 0x82, 0xE0, 0x16, 0x65, 0x4F } } } }, // EOB1
- { DE_DEU, kPlatformUnknown, { 0x0000006A, 0x00002456, { { 0xE0, 0x9A, 0x10, 0xE2, 0x73, 0x42, 0xF6, 0x79, 0xCB, 0x65, 0xA2, 0x50, 0xF0, 0x2B, 0xFD, 0x9B } } } }, // EOB1
- { EN_ANY, kPlatformUnknown, { 0x00000056, 0x00001E4F, { { 0x97, 0x07, 0x5F, 0xA2, 0x0D, 0x58, 0xD2, 0xDF, 0xD6, 0x04, 0xA2, 0x16, 0x0B, 0x1F, 0x7E, 0x23 } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x00000042, 0x000016B1, { { 0xCA, 0x57, 0xDC, 0x2B, 0xC6, 0xC7, 0x78, 0x1E, 0x84, 0x0A, 0x10, 0x88, 0xCA, 0xCD, 0xFF, 0x89 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsTransferProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000114, 0x00005E09, { { 0xBF, 0xCE, 0x7F, 0xE4, 0x17, 0x15, 0xC6, 0x10, 0xDF, 0x16, 0xF9, 0x3C, 0xDA, 0x29, 0xA0, 0xA6 } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x000000D1, 0x00004811, { { 0x2E, 0x00, 0xD1, 0xA6, 0x9F, 0x53, 0xC5, 0x4B, 0x25, 0x4A, 0xAC, 0x9E, 0x11, 0x6C, 0x58, 0x5E } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsSpecProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000006F, 0x00002785, { { 0xAE, 0xC7, 0x88, 0x89, 0x39, 0xB8, 0xF7, 0xB4, 0xD5, 0x82, 0xBC, 0x46, 0xA1, 0xCB, 0x04, 0x1F } } } }, // EOB2
- { DE_DEU, kPlatformUnknown, { 0x00000075, 0x00002871, { { 0xB4, 0x38, 0x0F, 0x94, 0x8B, 0xB1, 0x8D, 0xA3, 0xF8, 0xDA, 0x37, 0x75, 0x6F, 0x39, 0x3E, 0xB5 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuStringsSpellNoProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x000000A5, { { 0x0D, 0x4A, 0x8B, 0x40, 0x70, 0x79, 0xCD, 0xB3, 0x0F, 0x5A, 0x5A, 0x3F, 0x6E, 0xE8, 0xF9, 0x74 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMenuYesNoStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000007, 0x000001EE, { { 0x8C, 0xF1, 0x35, 0x1F, 0xD6, 0x1F, 0xA4, 0xA1, 0xD6, 0xD6, 0x0A, 0x27, 0xB9, 0xFC, 0x9E, 0x62 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000008, 0x00000235, { { 0xC7, 0x06, 0xCF, 0xA8, 0xC0, 0xDE, 0xD4, 0x8C, 0x7F, 0xA2, 0x3A, 0xD3, 0x48, 0x51, 0x36, 0x89 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSpellLevelsMageProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000001A, 0x00000042, { { 0x4F, 0xA3, 0x70, 0x0F, 0x6D, 0xB4, 0xC2, 0xAF, 0x12, 0xB4, 0x2E, 0x26, 0xEF, 0x0B, 0x37, 0x92 } } } }, // EOB1
- { UNK_LANG, kPlatformUnknown, { 0x00000023, 0x00000074, { { 0xBE, 0x10, 0xFA, 0xD9, 0xB3, 0xB0, 0x4E, 0x73, 0xC9, 0xA1, 0xE2, 0xCE, 0xE8, 0xEC, 0x85, 0x0F } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSpellLevelsClericProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000019, 0x00000045, { { 0x9E, 0xDA, 0xF2, 0x94, 0x3E, 0x0B, 0xA0, 0x23, 0x08, 0x41, 0xD5, 0x3C, 0x61, 0x77, 0xFD, 0x78 } } } }, // EOB1
- { UNK_LANG, kPlatformUnknown, { 0x0000001D, 0x00000066, { { 0xDB, 0x7F, 0x93, 0xE2, 0x2E, 0xCF, 0x69, 0xCC, 0x2A, 0xEF, 0x7C, 0x1E, 0x92, 0x6B, 0x51, 0x4E } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseNumSpellsClericProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000032, 0x0000004C, { { 0x87, 0xDD, 0xD0, 0xF8, 0x52, 0x84, 0x26, 0xC4, 0x9C, 0x5D, 0x0E, 0x46, 0x1A, 0xE8, 0x19, 0xD6 } } } }, // EOB1
- { UNK_LANG, kPlatformUnknown, { 0x00000088, 0x00000114, { { 0xA0, 0xB7, 0x2F, 0xED, 0x50, 0xE7, 0xC6, 0x11, 0xC9, 0x25, 0xB2, 0xB9, 0x81, 0xFB, 0xD8, 0x59 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseNumSpellsWisAdjProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000028, 0x0000001D, { { 0xA5, 0xCA, 0x1D, 0x96, 0xAE, 0x89, 0xBC, 0x7A, 0x32, 0x50, 0xCE, 0x44, 0x5D, 0x93, 0x25, 0x4B } } } }, // EOB1
- { UNK_LANG, kPlatformUnknown, { 0x00000040, 0x0000001D, { { 0x07, 0x31, 0x0D, 0x12, 0x55, 0x11, 0x11, 0xB6, 0x68, 0xC7, 0xEE, 0xDE, 0xC6, 0xED, 0x82, 0x5A } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseNumSpellsPalProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x00000012, { { 0x96, 0x7E, 0x17, 0x9E, 0xFD, 0x39, 0xC9, 0x3A, 0xB7, 0x3E, 0x8D, 0xA8, 0xED, 0xA3, 0x07, 0xEB } } } }, // EOB1
- { UNK_LANG, kPlatformUnknown, { 0x00000088, 0x0000002F, { { 0x19, 0x1A, 0x9B, 0x42, 0xA0, 0x67, 0x10, 0x1A, 0xAC, 0x00, 0x0F, 0xF7, 0xBE, 0x04, 0x61, 0x36 } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseNumSpellsMageProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x0000005E, { { 0x61, 0x30, 0x1A, 0x74, 0x9B, 0x4C, 0x8C, 0x83, 0xD5, 0xE6, 0x39, 0x6E, 0xCA, 0x18, 0x16, 0x63 } } } }, // EOB1
- { UNK_LANG, kPlatformUnknown, { 0x00000114, 0x00000102, { { 0x33, 0xEE, 0x32, 0x9C, 0xB2, 0xB3, 0x60, 0x66, 0x91, 0xE0, 0x90, 0x0E, 0x8F, 0xE1, 0xA5, 0x4A } } } }, // EOB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharGuiStringsHpProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000F, 0x00000352, { { 0x9C, 0x13, 0x3D, 0x2A, 0x68, 0x11, 0x81, 0xA4, 0x77, 0x54, 0x47, 0x43, 0xA1, 0xDA, 0x55, 0x50 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000000E, 0x000002AC, { { 0xBB, 0xD5, 0x36, 0xB2, 0x8A, 0x60, 0x78, 0x04, 0x46, 0x2D, 0x35, 0x59, 0x3E, 0x42, 0xB9, 0x83 } } } }, // EoB 1
- { DE_DEU, kPlatformUnknown, { 0x0000000E, 0x000002B8, { { 0x77, 0x76, 0xA0, 0x38, 0xE9, 0xB6, 0x0C, 0x43, 0xFE, 0x5A, 0x51, 0xC7, 0x1B, 0x59, 0xD3, 0x63 } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharGuiStringsWp1Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000A, 0x00000253, { { 0x1D, 0xF4, 0xB9, 0x56, 0xE6, 0x16, 0x7D, 0x08, 0xA4, 0x00, 0x1E, 0x1A, 0x60, 0x49, 0xE9, 0x29 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000000A, 0x00000236, { { 0x17, 0xEC, 0x54, 0xA0, 0x43, 0xFB, 0x52, 0x66, 0xC5, 0x44, 0x1B, 0xDF, 0x95, 0x47, 0x62, 0xB3 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharGuiStringsWp2Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000F, 0x00000371, { { 0x42, 0xF4, 0x52, 0x60, 0x20, 0xFC, 0x34, 0x94, 0x49, 0x1E, 0x67, 0x54, 0xB5, 0x6A, 0x97, 0x2A } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000010, 0x000003D6, { { 0x10, 0xD1, 0x77, 0x6C, 0xCD, 0x00, 0x94, 0xC7, 0xD0, 0x53, 0x47, 0x9F, 0x70, 0x77, 0x50, 0xD1 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharGuiStringsWrProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000014, 0x00000477, { { 0xAA, 0x26, 0xD5, 0xFD, 0xE6, 0x16, 0x53, 0x19, 0x39, 0x46, 0xEB, 0xCD, 0x88, 0xEC, 0x5E, 0xCB } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000015, 0x000004A4, { { 0x53, 0x54, 0x37, 0x35, 0x27, 0x1F, 0xB9, 0x09, 0x9C, 0xE9, 0x5E, 0x11, 0xBD, 0x8F, 0x15, 0xAE } } } }, // EoB 1
- { DE_DEU, kPlatformUnknown, { 0x00000011, 0x00000402, { { 0xE0, 0x92, 0xF4, 0x49, 0xB7, 0x74, 0xBB, 0xEB, 0x90, 0x0D, 0x75, 0x65, 0xBB, 0xF6, 0xB6, 0xE9 } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharGuiStringsSt1Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000003B, 0x0000104B, { { 0xC0, 0xD9, 0x0F, 0x7B, 0x6D, 0x17, 0x02, 0xBD, 0x7B, 0xB1, 0x76, 0x72, 0xA1, 0xEE, 0x5E, 0xAD } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000039, 0x00000F69, { { 0x09, 0x42, 0x35, 0x47, 0x48, 0x50, 0x05, 0x09, 0x3B, 0x81, 0x14, 0x01, 0xF9, 0xB5, 0x04, 0xB2 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharGuiStringsSt2Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000045, 0x000012E7, { { 0x49, 0x48, 0x30, 0x73, 0xDA, 0x42, 0xDB, 0xB9, 0xF4, 0x07, 0x00, 0x26, 0x96, 0x1F, 0x02, 0x4E } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000042, 0x0000114D, { { 0x88, 0x6E, 0x45, 0xF9, 0xAE, 0xEF, 0xE8, 0x54, 0x9C, 0xEF, 0xD2, 0x73, 0x78, 0x41, 0xD9, 0xAF } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharGuiStringsInProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000023, 0x000008CB, { { 0xF0, 0xE9, 0xF1, 0x05, 0x47, 0x3A, 0x5D, 0xCA, 0x9F, 0x75, 0x9D, 0x51, 0x9E, 0xEC, 0x9B, 0x67 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000020, 0x00000810, { { 0xF5, 0x39, 0x1E, 0x0E, 0x65, 0xEF, 0x09, 0xF2, 0x8D, 0x90, 0xC4, 0xF6, 0x8A, 0xED, 0xAD, 0xDF } } } }, // EoB 1
- { DE_DEU, kPlatformUnknown, { 0x00000023, 0x00000940, { { 0xAB, 0xF6, 0xE4, 0xD4, 0x07, 0x07, 0xDA, 0x92, 0x71, 0xE2, 0x73, 0x1F, 0x06, 0xE3, 0x12, 0xEB } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharStatusStrings7Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000022, 0x00000B95, { { 0xCB, 0xB7, 0x16, 0x77, 0x9C, 0xEB, 0x70, 0x83, 0xB2, 0xBE, 0xF7, 0x67, 0xB1, 0xE9, 0xD0, 0x5E } } } }, // EOB 1 + 2
- { DE_DEU, kPlatformUnknown, { 0x0000002B, 0x00000EE3, { { 0xC8, 0x81, 0x23, 0xC3, 0x03, 0xBD, 0x4C, 0xF5, 0x41, 0x47, 0xFA, 0x32, 0xA0, 0x98, 0x0A, 0x8E } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000023, 0x00000C68, { { 0xF5, 0x55, 0x09, 0xD8, 0x73, 0xF8, 0xF0, 0xE3, 0x14, 0xCD, 0x78, 0x84, 0x58, 0xB0, 0x64, 0x5B } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharStatusStrings81Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000021, 0x00000B03, { { 0x44, 0xFC, 0xC2, 0x23, 0x4B, 0x78, 0xA8, 0xF8, 0xA5, 0x46, 0x5B, 0x89, 0x1F, 0x9D, 0x4E, 0xFA } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000020, 0x00000A52, { { 0x81, 0xDA, 0x22, 0x8A, 0xD3, 0x7D, 0xE7, 0xF5, 0x39, 0x6A, 0x62, 0x41, 0xE5, 0x8D, 0x45, 0x20 } } } }, // EOB 1
-};
-
-const ExtractEntrySearchData kEoBBaseCharStatusStrings82Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000023, 0x00000B0F, { { 0xBD, 0xED, 0xFE, 0xFD, 0x40, 0x95, 0x42, 0x21, 0x1F, 0x55, 0x67, 0x65, 0xA8, 0xC3, 0x99, 0xA1 } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x0000001A, 0x00000789, { { 0x8C, 0xF3, 0xB8, 0x3C, 0x6E, 0x85, 0xED, 0xD6, 0x2B, 0xD7, 0xAE, 0x8A, 0xFC, 0x25, 0x5E, 0x8F } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharStatusStrings9Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000001C, 0x00000952, { { 0x2F, 0x41, 0x17, 0x95, 0xF8, 0xC8, 0x4E, 0x88, 0xC6, 0x83, 0x38, 0x9B, 0xAB, 0x23, 0x48, 0xB9 } } } }, // EOB 1 + 2
- { DE_DEU, kPlatformUnknown, { 0x0000001D, 0x0000099F, { { 0x5E, 0xB4, 0xBE, 0xA9, 0x0C, 0xB2, 0xF2, 0x4E, 0x63, 0xF8, 0x7B, 0x98, 0x67, 0x2D, 0xC9, 0xBF } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x0000001E, 0x00000A52, { { 0xD4, 0x65, 0x3F, 0x35, 0xDD, 0x8A, 0x33, 0x44, 0x2F, 0x8C, 0xAC, 0x2F, 0xEC, 0x96, 0x5B, 0x02 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharStatusStrings12Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000010, 0x00000503, { { 0x81, 0x22, 0xE9, 0x0F, 0xA5, 0xEA, 0xFE, 0xB5, 0xB6, 0x43, 0x36, 0x22, 0x87, 0x24, 0x2C, 0x40 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000014, 0x00000683, { { 0x5A, 0xF8, 0xAA, 0x16, 0x97, 0xBE, 0xD5, 0x22, 0xCE, 0x3F, 0xBC, 0x00, 0x44, 0xC1, 0x27, 0xD3 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharStatusStrings131Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000B, 0x0000027A, { { 0x70, 0x1A, 0x83, 0x35, 0x0A, 0x51, 0xEA, 0x27, 0x6E, 0xCD, 0xEB, 0xAD, 0x20, 0x74, 0x28, 0x7D } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000000C, 0x000002EE, { { 0xFE, 0xF9, 0x45, 0xE7, 0x89, 0x7B, 0xA4, 0x82, 0x90, 0x63, 0x91, 0x5B, 0x9E, 0x83, 0x80, 0x10 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseCharStatusStrings132Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000D, 0x00000286, { { 0x00, 0x1E, 0x11, 0xCC, 0x57, 0xFA, 0xEF, 0x2A, 0x0A, 0xFF, 0xFF, 0xE9, 0x3E, 0xA3, 0x62, 0x21 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000000A, 0x0000018A, { { 0x10, 0x54, 0x6F, 0xC3, 0x08, 0xC4, 0xD2, 0xBB, 0x34, 0x0A, 0x04, 0x65, 0x49, 0xFC, 0x5E, 0x15 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseLevelGainStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000002A, 0x00000CC9, { { 0xF2, 0x1F, 0xDF, 0xE0, 0xA5, 0x86, 0x46, 0xF4, 0xFC, 0x71, 0xB0, 0x22, 0x32, 0x46, 0x71, 0xB6 } } } }, // EOB 1
- { DE_DEU, kPlatformUnknown, { 0x00000029, 0x00000D38, { { 0x18, 0xA3, 0xFD, 0xCC, 0xF2, 0x68, 0x18, 0x9E, 0x80, 0x5A, 0xC0, 0x22, 0xFD, 0x15, 0x83, 0x84 } } } }, // EOB 1
- { EN_ANY, kPlatformUnknown, { 0x0000001C, 0x0000078C, { { 0x15, 0x70, 0x37, 0xE4, 0x0B, 0x50, 0x32, 0xCA, 0xAE, 0xF6, 0x81, 0xD0, 0x98, 0x9B, 0x36, 0x8A } } } }, // EOB 2
- { DE_DEU, kPlatformUnknown, { 0x0000001F, 0x000008E3, { { 0x07, 0x2C, 0x51, 0x5E, 0x47, 0xAA, 0xCC, 0x27, 0x77, 0xD8, 0x17, 0x59, 0x6B, 0xBE, 0xF5, 0x87 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseExperienceTable0Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000C9E, { { 0xDB, 0x47, 0xD9, 0x0D, 0x6E, 0x68, 0x04, 0xE4, 0x17, 0xCB, 0x60, 0x89, 0x35, 0x3E, 0xA9, 0xEE } } } }, // EoB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000038, 0x00000E24, { { 0xBC, 0xF3, 0x96, 0x8A, 0xD5, 0x0C, 0xAA, 0x94, 0xBB, 0xB5, 0x08, 0x73, 0xF8, 0x5C, 0xF0, 0xA9 } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseExperienceTable1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000C80, { { 0x35, 0x45, 0x0D, 0x4F, 0xE0, 0x84, 0xA2, 0x1B, 0xB0, 0x0D, 0x60, 0x4D, 0x1D, 0xD5, 0x6C, 0x72 } } } }, // EoB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000038, 0x00000E6F, { { 0xBD, 0x3F, 0x42, 0x54, 0x75, 0x41, 0xAA, 0x58, 0x0D, 0xD8, 0xC0, 0x07, 0x63, 0x35, 0x83, 0x6B } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseExperienceTable2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002C, 0x00000E10, { { 0xA5, 0x4D, 0xCB, 0xF3, 0x5F, 0x89, 0x71, 0x24, 0x6F, 0x70, 0xCA, 0x51, 0xAA, 0x1C, 0x0A, 0x97 } } } }, // EoB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000038, 0x00001149, { { 0xF9, 0xF1, 0x7E, 0x6B, 0xB2, 0xFE, 0x04, 0xC4, 0x29, 0x3D, 0xE3, 0x42, 0x5D, 0x92, 0x77, 0x53 } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseExperienceTable3Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000ADC, { { 0x42, 0x2E, 0x2E, 0xF5, 0xF8, 0x65, 0x69, 0x28, 0x50, 0x67, 0x43, 0xDF, 0x91, 0x67, 0x9B, 0x09 } } } }, // EoB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000038, 0x00000C94, { { 0x67, 0x09, 0x98, 0x19, 0x1F, 0x6B, 0x4D, 0xEB, 0x1D, 0x4D, 0x55, 0xA8, 0xFF, 0xD1, 0xAB, 0xE1 } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseExperienceTable4Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000DA7, { { 0x45, 0x58, 0x34, 0xC9, 0x09, 0x61, 0xD7, 0xE1, 0xF8, 0x68, 0x80, 0xBC, 0xEF, 0x7A, 0x24, 0x03 } } } }, // EoB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000038, 0x00000FE1, { { 0x26, 0x7F, 0x83, 0x53, 0x4A, 0xC6, 0xA2, 0x7B, 0xD2, 0xFB, 0x73, 0xB2, 0x08, 0x0A, 0xF7, 0xFD } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseWllFlagPresetProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000019, 0x00000BD9, { { 0xBE, 0x5A, 0xA6, 0xC8, 0xE4, 0x04, 0x4C, 0x32, 0x35, 0x61, 0x48, 0x73, 0x29, 0xA9, 0x99, 0x54 } } } }, // EoB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000019, 0x00000BC9, { { 0x56, 0xC0, 0x66, 0x4D, 0xE1, 0x3A, 0x27, 0x89, 0x9D, 0x73, 0x63, 0x93, 0x08, 0x2B, 0x13, 0xBC } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscShapeCoordsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000168, 0x0000F206, { { 0xB8, 0xDF, 0x10, 0xBB, 0x06, 0xA1, 0x46, 0xC6, 0xD2, 0xE3, 0xD7, 0x64, 0x4A, 0xC6, 0x40, 0xC0 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorScaleOffsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x0000010F, { { 0x7B, 0x7D, 0x03, 0xDE, 0x33, 0x95, 0xB8, 0xFD, 0xAD, 0x72, 0x44, 0x7D, 0x47, 0xFE, 0x04, 0x3D } } } }, // EoB1
- { UNK_LANG, kPlatformDOS, { 0x00000035, 0x00000139, { { 0x74, 0x63, 0x18, 0xE7, 0xAB, 0xA4, 0x22, 0xCF, 0x32, 0x19, 0x28, 0x9E, 0x7F, 0x97, 0xA7, 0x37 } } } }, // EoB2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorScaleMult1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000026, { { 0x5D, 0x17, 0xFB, 0x6A, 0x7F, 0x51, 0x55, 0xFB, 0x55, 0xB9, 0x50, 0xB0, 0x7F, 0xE4, 0xDF, 0x67 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorScaleMult2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000006, { { 0x98, 0xD8, 0xF8, 0x0C, 0x98, 0xC4, 0xF1, 0x87, 0x59, 0x32, 0x78, 0x31, 0xFA, 0x98, 0x8A, 0x43 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorScaleMult3Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000013, { { 0xEE, 0xB6, 0xA5, 0x6E, 0x0C, 0x8E, 0xAB, 0x38, 0xD9, 0x23, 0xC6, 0x21, 0xB3, 0x7E, 0x97, 0x78 } } } }, // EOB 1
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000019, { { 0x86, 0xD8, 0x04, 0xD2, 0x66, 0x6F, 0x43, 0x24, 0x2E, 0x93, 0xB9, 0xAE, 0xEB, 0x44, 0xCA, 0x48 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorScaleMult4Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000006, { { 0x98, 0xD8, 0xF8, 0x0C, 0x98, 0xC4, 0xF1, 0x87, 0x59, 0x32, 0x78, 0x31, 0xFA, 0x98, 0x8A, 0x43 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorScaleMult5Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000020, { { 0x37, 0xA1, 0x0D, 0x64, 0xD6, 0x1E, 0xBA, 0xA3, 0xD9, 0x0A, 0x6C, 0xAB, 0x6B, 0xA3, 0x59, 0x24 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorScaleMult6Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000006, { { 0x98, 0xD8, 0xF8, 0x0C, 0x98, 0xC4, 0xF1, 0x87, 0x59, 0x32, 0x78, 0x31, 0xFA, 0x98, 0x8A, 0x43 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorType5OffsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x00000012, { { 0x73, 0xBB, 0x61, 0xD6, 0xA7, 0x75, 0xC8, 0x7B, 0xD6, 0xA4, 0x53, 0x1B, 0x54, 0xE9, 0x30, 0x3F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorXEProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x0000010F, { { 0x7B, 0x7D, 0x03, 0xDE, 0x33, 0x95, 0xB8, 0xFD, 0xAD, 0x72, 0x44, 0x7D, 0x47, 0xFE, 0x04, 0x3D } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorY1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x000000D7, { { 0x25, 0xAE, 0xF4, 0x99, 0xE8, 0x97, 0x47, 0xAE, 0x75, 0xF3, 0xA9, 0x70, 0x4C, 0x70, 0xF3, 0x11 } } } }, // EOB 1
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x000000D8, { { 0xB4, 0xAA, 0x0D, 0x91, 0x58, 0x22, 0x16, 0xCF, 0xC5, 0x9D, 0x8D, 0xA1, 0xB4, 0x40, 0x83, 0x0E } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorY3Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000058, { { 0xF0, 0x3C, 0x3B, 0x97, 0x10, 0x95, 0x89, 0x18, 0x3B, 0xA9, 0xE8, 0x77, 0x9B, 0x10, 0xDC, 0xF1 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorY4Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000076, { { 0x84, 0xB6, 0x8F, 0x7E, 0x9A, 0x17, 0xAC, 0x59, 0xB1, 0x4C, 0xDE, 0x11, 0xA6, 0x95, 0xE3, 0x76 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorY5Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x000000D9, { { 0x5D, 0x27, 0x1D, 0xD6, 0x5F, 0x98, 0xF9, 0x7D, 0x65, 0x7B, 0xE0, 0x67, 0x34, 0xA0, 0xE8, 0x30 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorY6Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x000000D9, { { 0x4D, 0x15, 0x4A, 0xF1, 0x17, 0x09, 0xC1, 0xA6, 0x08, 0x4A, 0xCD, 0xB2, 0x68, 0xC2, 0x59, 0x52 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorY7Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x000000DA, { { 0xA9, 0x24, 0x71, 0x8A, 0x18, 0x24, 0x6D, 0x0A, 0x65, 0x12, 0xBB, 0x1F, 0xE7, 0x95, 0xC5, 0xA4 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscDoorCoordsExtProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000048, 0x00000C8E, { { 0x2E, 0x0E, 0xB2, 0xAC, 0xE7, 0x0F, 0xDF, 0x38, 0xDF, 0x92, 0xB7, 0xB5, 0xA2, 0xFD, 0x40, 0x2D } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscItemPosIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000010, 0x00000018, { { 0x74, 0x90, 0x47, 0xE6, 0xFB, 0xC0, 0x34, 0xDF, 0x92, 0x5B, 0xA1, 0xCB, 0x06, 0x33, 0xCA, 0x6B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscItemShpXProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000024, 0x00000F2C, { { 0x9E, 0x22, 0x3F, 0x8F, 0x31, 0x83, 0xF7, 0x7C, 0x59, 0x60, 0x7C, 0x0A, 0xEB, 0xD2, 0x18, 0x85 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscItemPosUnkProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000012, 0x00000433, { { 0xA4, 0x7B, 0x08, 0x07, 0x81, 0xEA, 0x4F, 0x99, 0x77, 0x74, 0x93, 0x65, 0xBF, 0x0C, 0x3B, 0x94 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscItemTileIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000012, 0x00000D23, { { 0x0E, 0x17, 0xE1, 0x1F, 0x34, 0x7D, 0x30, 0xF6, 0xAE, 0x0B, 0xAC, 0x9D, 0x21, 0xB6, 0x97, 0xCC } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscItemShapeMapProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000005A, 0x00000B23, { { 0x41, 0x4A, 0x95, 0x7F, 0x82, 0x85, 0x28, 0x55, 0xD4, 0xD5, 0xD6, 0xD8, 0xA9, 0xAE, 0xF4, 0xC0 } } } }, // EoB 1
- { UNK_LANG, kPlatformDOS, { 0x00000071, 0x00000860, { { 0xEA, 0x5D, 0x33, 0xB6, 0x38, 0x30, 0x65, 0x29, 0x7F, 0x08, 0x89, 0x04, 0xC5, 0x97, 0x76, 0xCB } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscTelptrShpCoordsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000009C, 0x00000EBE, { { 0x2D, 0x1D, 0x74, 0x39, 0x29, 0xC3, 0x6F, 0x53, 0xD9, 0xA5, 0x4B, 0x9F, 0xD6, 0xDD, 0x73, 0xE9 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBasePortalSeqDataProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000007E, 0x000002D0, { { 0x18, 0x7E, 0x65, 0x17, 0x4C, 0xD2, 0xB5, 0x2E, 0x81, 0xF8, 0x1C, 0xAC, 0x37, 0x21, 0x62, 0x2A } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseManDefProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000078, 0x000002CD, { { 0x33, 0x9B, 0x0C, 0x6A, 0x2E, 0x4F, 0xE9, 0x02, 0x7B, 0xEE, 0xF1, 0x04, 0xA3, 0xBA, 0xD4, 0xF3 } } } }, // EoB 1
- { DE_DEU, kPlatformDOS, { 0x00000078, 0x000002C4, { { 0x92, 0x20, 0x58, 0x5F, 0x44, 0x09, 0x0B, 0xF0, 0xDA, 0x09, 0xE2, 0x44, 0x0B, 0xB7, 0x95, 0x96 } } } }, // EoB 1
- { EN_ANY, kPlatformDOS, { 0x000000C8, 0x00000834, { { 0x18, 0xEA, 0x33, 0xB7, 0x4B, 0x72, 0x23, 0x8D, 0x0E, 0x9F, 0x4E, 0xF5, 0x09, 0xA3, 0x9C, 0xEA } } } }, // EoB 2
- { DE_DEU, kPlatformDOS, { 0x000000C8, 0x00000622, { { 0xFE, 0x1D, 0x94, 0x3A, 0x0B, 0x17, 0x89, 0xEF, 0x60, 0x18, 0xB2, 0x43, 0x7A, 0x02, 0xDB, 0x61 } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseManWordProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x000000E0, 0x00005134, { { 0x68, 0x9C, 0x19, 0x2B, 0x5F, 0x38, 0x36, 0x41, 0xA7, 0x7E, 0xB7, 0x51, 0x41, 0x60, 0x1D, 0x67 } } } }, // EoB 1
- { DE_DEU, kPlatformDOS, { 0x000000EA, 0x00005458, { { 0xEC, 0x14, 0x11, 0xE9, 0x19, 0xFD, 0xF8, 0xFC, 0xA8, 0x46, 0x3D, 0xCD, 0x56, 0x08, 0xC3, 0x4A } } } }, // EoB 1
- { EN_ANY, kPlatformDOS, { 0x0000017E, 0x00008B64, { { 0x66, 0x38, 0x09, 0x5B, 0x2E, 0x50, 0x54, 0x43, 0x1C, 0xEC, 0x56, 0x3B, 0x72, 0x39, 0xF9, 0xC3 } } } }, // EoB 2
- { DE_DEU, kPlatformDOS, { 0x0000015B, 0x00007C37, { { 0x44, 0xA3, 0x32, 0x88, 0x9F, 0x63, 0x28, 0xA0, 0xBD, 0x00, 0xF1, 0x08, 0xCA, 0xE5, 0xFE, 0x5F } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseManPromptProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000041, 0x000013AC, { { 0x40, 0x2B, 0xB5, 0x99, 0xEF, 0x8F, 0x3C, 0x9F, 0xB1, 0x5A, 0xBE, 0xE4, 0x80, 0x8E, 0xBB, 0x96 } } } }, // EoB 1
- { DE_DEU, kPlatformDOS, { 0x00000048, 0x000015A5, { { 0x0B, 0xB4, 0x9E, 0xAD, 0xB3, 0x56, 0x75, 0xC1, 0xAE, 0x29, 0xF7, 0xB5, 0x82, 0x14, 0xD1, 0x27 } } } }, // EoB 1
- { EN_ANY, kPlatformDOS, { 0x00000041, 0x000013AC, { { 0x40, 0x2B, 0xB5, 0x99, 0xEF, 0x8F, 0x3C, 0x9F, 0xB1, 0x5A, 0xBE, 0xE4, 0x80, 0x8E, 0xBB, 0x96 } } } }, // EoB 2
- { DE_DEU, kPlatformDOS, { 0x0000005C, 0x00001D08, { { 0x10, 0xCE, 0x2D, 0xED, 0xA9, 0xA0, 0x7C, 0xA1, 0x91, 0x3F, 0xD8, 0x43, 0x03, 0x53, 0x97, 0xCA } } } }, // EoB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscMonsterFrmOffsTbl1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00001000, { { 0x98, 0x27, 0x57, 0x25, 0x3B, 0x04, 0x7D, 0x14, 0x3A, 0xD4, 0xA2, 0x5D, 0xBA, 0x04, 0x45, 0xAC } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDscMonsterFrmOffsTbl2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000828, { { 0x7E, 0x8A, 0x0C, 0xEB, 0x5C, 0xBC, 0x6C, 0xBD, 0xD2, 0x48, 0x08, 0xCC, 0xF7, 0x7B, 0x81, 0x03 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseInvSlotXProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000036, 0x000010BF, { { 0x50, 0x6E, 0x67, 0x2B, 0x7D, 0x6C, 0xF2, 0x21, 0x73, 0xA2, 0xD5, 0xBB, 0xCE, 0x3B, 0x71, 0xAA } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseInvSlotYProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000001B, 0x00000A5B, { { 0x47, 0x55, 0x7D, 0x84, 0x45, 0x91, 0xC4, 0x44, 0x10, 0xD5, 0x39, 0xC4, 0xC8, 0x4F, 0x01, 0xA4 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSlotValidationFlagsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000036, 0x00001F6B, { { 0x87, 0x4F, 0x9A, 0x97, 0x20, 0x20, 0xB2, 0xA6, 0xF7, 0xC2, 0x5F, 0xAA, 0x17, 0xEA, 0xB4, 0x50 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseProjectileWeaponTypesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000008, 0x0000061C, { { 0x05, 0x55, 0xA6, 0xD1, 0x3C, 0x12, 0x84, 0xDA, 0xA9, 0x33, 0xCF, 0x07, 0x05, 0x2A, 0xB2, 0x29 } } } }, // EOB 1
- { UNK_LANG, kPlatformDOS, { 0x0000000F, 0x00000829, { { 0x9F, 0x6A, 0x13, 0x8A, 0xA7, 0x40, 0xE8, 0x40, 0x2E, 0x87, 0x49, 0x6B, 0x67, 0xED, 0xE8, 0xCE } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseWandTypesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000007, 0x00000162, { { 0xDB, 0x5D, 0x34, 0x70, 0x41, 0xAB, 0x8F, 0x75, 0xC8, 0x61, 0x8E, 0x44, 0x82, 0xCF, 0x28, 0x03 } } } }, // EOB 1
- { UNK_LANG, kPlatformDOS, { 0x00000008, 0x00000175, { { 0x01, 0xC2, 0xF0, 0xC6, 0x1C, 0xD0, 0x14, 0xD9, 0xB8, 0xF5, 0x9C, 0xFC, 0x22, 0xE4, 0xA0, 0xA7 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseDrawObjPosIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000014, 0x00000028, { { 0x44, 0x46, 0x8C, 0x94, 0x76, 0x24, 0x08, 0xC7, 0x1F, 0x1B, 0x10, 0xD7, 0xDF, 0x18, 0x6C, 0x0D } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseFlightObjFlipIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000010, 0x00000008, { { 0xEB, 0xF0, 0x27, 0x7E, 0xA8, 0x09, 0x3A, 0x95, 0x3B, 0x71, 0x2A, 0x43, 0x2E, 0xCF, 0x22, 0x0B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseFlightObjShpMapProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000058, 0x000051BD, { { 0xC3, 0xD2, 0xD1, 0xE5, 0x78, 0xEE, 0xA7, 0xAA, 0x71, 0xD1, 0xDD, 0xDF, 0x40, 0xBB, 0xAF, 0x66 } } } }, // EOB 1
- { UNK_LANG, kPlatformDOS, { 0x0000002D, 0x000025E6, { { 0x64, 0x26, 0x3D, 0xDC, 0x6C, 0x1A, 0xFC, 0x36, 0x9E, 0x5A, 0xBF, 0x64, 0xAD, 0xF4, 0xA3, 0x5D } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseFlightObjSclIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000048, 0x00002A0E, { { 0xAC, 0xBB, 0x7D, 0x73, 0x98, 0xF4, 0x1E, 0x4A, 0x77, 0xF0, 0x98, 0x75, 0x11, 0xBF, 0xF7, 0xD5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseBookNumbersProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000020, 0x00000AC8, { { 0x35, 0x05, 0x37, 0x4C, 0x05, 0x74, 0x04, 0x08, 0xAD, 0xA3, 0x64, 0xBF, 0xC0, 0x67, 0xF2, 0xF7 } } } },
- { DE_DEU, kPlatformDOS, { 0x00000028, 0x00000E5D, { { 0x80, 0x98, 0x05, 0x54, 0x84, 0x90, 0xD3, 0xB3, 0x9B, 0xFB, 0x8F, 0xB9, 0xA0, 0x43, 0xAA, 0xFD } } } },
- { EN_ANY, kPlatformDOS, { 0x00000020, 0x00000AC8, { { 0x35, 0x05, 0x37, 0x4C, 0x05, 0x74, 0x04, 0x08, 0xAD, 0xA3, 0x64, 0xBF, 0xC0, 0x67, 0xF2, 0xF7 } } } },
- { DE_DEU, kPlatformDOS, { 0x00000022, 0x00000BCA, { { 0x93, 0x0E, 0xE0, 0x6D, 0xDD, 0x40, 0xBC, 0x89, 0x67, 0xBD, 0x8A, 0xCB, 0xD2, 0xCF, 0x78, 0x8D } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMageSpellsListProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000122, 0x00006304, { { 0xD7, 0x14, 0x28, 0x83, 0x04, 0xC3, 0x42, 0x5A, 0x15, 0x49, 0x91, 0x12, 0x1D, 0x49, 0x17, 0x5B } } } },
- { DE_DEU, kPlatformDOS, { 0x0000013A, 0x00007155, { { 0x94, 0x45, 0xB9, 0x15, 0x57, 0x6E, 0xC6, 0x70, 0x66, 0x5F, 0xA7, 0x90, 0xA0, 0xC7, 0xC9, 0xE9 } } } },
- { EN_ANY, kPlatformDOS, { 0x00000195, 0x00008AC0, { { 0x55, 0xB8, 0x75, 0x35, 0x09, 0x23, 0x83, 0x11, 0x22, 0xF8, 0x23, 0x1E, 0x8F, 0x08, 0x57, 0x66 } } } },
- { DE_DEU, kPlatformDOS, { 0x0000019A, 0x0000929F, { { 0xB3, 0xA0, 0x2D, 0x3B, 0xF3, 0x72, 0x9B, 0x75, 0xA3, 0xC4, 0xD8, 0x72, 0x4B, 0xDE, 0x69, 0x82 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseClericSpellsListProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x0000013B, 0x00006BE6, { { 0x34, 0x63, 0x0B, 0xBA, 0xED, 0xC2, 0x9B, 0x31, 0xC3, 0x65, 0x51, 0xFF, 0xEF, 0xD8, 0x25, 0x92 } } } },
- { DE_DEU, kPlatformDOS, { 0x0000016D, 0x00007E74, { { 0x6E, 0xDE, 0x28, 0xE6, 0x13, 0x3D, 0xA6, 0x42, 0x80, 0xAB, 0xE7, 0xED, 0xAD, 0xC8, 0x62, 0x48 } } } },
- { EN_ANY, kPlatformDOS, { 0x00000164, 0x000079B3, { { 0x93, 0x16, 0x25, 0xFB, 0x76, 0xFF, 0xBC, 0x70, 0x9A, 0xB7, 0x93, 0xFC, 0x2E, 0xC3, 0x61, 0x7F } } } },
- { DE_DEU, kPlatformDOS, { 0x0000018B, 0x00008BB1, { { 0x8C, 0x21, 0xED, 0xE0, 0x1F, 0xF1, 0xDB, 0x72, 0xC4, 0x46, 0x36, 0x50, 0x16, 0xD5, 0xA8, 0x68 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSpellNamesProvider[] = {
- { EN_ANY, kPlatformDOS, { 0x0000029A, 0x0000F1C8, { { 0xCA, 0xE1, 0x30, 0xDC, 0xAB, 0xD1, 0x87, 0xE8, 0x51, 0xA2, 0xA2, 0x1C, 0x23, 0x4A, 0x34, 0x58 } } } },
- { DE_DEU, kPlatformDOS, { 0x000002D3, 0x0001080D, { { 0x5F, 0xDB, 0x9E, 0x48, 0x30, 0x03, 0xE1, 0x8E, 0xC7, 0xDC, 0x98, 0x10, 0xCE, 0xA1, 0x28, 0x31 } } } },
- { EN_ANY, kPlatformDOS, { 0x00000366, 0x00013B1A, { { 0x15, 0xCB, 0x0E, 0xA9, 0x4E, 0x78, 0x30, 0x99, 0xA1, 0xCF, 0xF7, 0x05, 0xAB, 0x00, 0x66, 0x82 } } } },
- { DE_DEU, kPlatformDOS, { 0x000003BA, 0x0001626B, { { 0x0E, 0x4F, 0xF6, 0xFB, 0x78, 0x5E, 0x03, 0xE7, 0x82, 0xC4, 0xE2, 0x7B, 0xD9, 0xB2, 0xD7, 0xB2 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicStrings1Provider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000084, 0x000029B0, { { 0xC6, 0x90, 0x19, 0x61, 0xA1, 0x66, 0xF6, 0x03, 0x7A, 0x1F, 0x10, 0x00, 0xCA, 0x8F, 0x69, 0x3B } } } },
- { DE_DEU, kPlatformDOS, { 0x0000009D, 0x000033E4, { { 0x4B, 0xCF, 0x40, 0xCE, 0x0F, 0x86, 0x98, 0x36, 0x03, 0x59, 0xFE, 0x32, 0xFA, 0x4C, 0x14, 0x75 } } } },
- { EN_ANY, kPlatformDOS, { 0x00000085, 0x000029BD, { { 0xAB, 0x22, 0x4A, 0x70, 0xBB, 0x29, 0xB8, 0xBD, 0xAF, 0xC5, 0x0D, 0x1F, 0x23, 0x38, 0xBD, 0x06 } } } },
- { DE_DEU, kPlatformDOS, { 0x0000008C, 0x00002D68, { { 0x4B, 0x0A, 0x09, 0x22, 0xF7, 0x77, 0x82, 0x4B, 0xFE, 0x0B, 0xF1, 0x8F, 0x1C, 0xEA, 0x1A, 0x0C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicStrings2Provider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000051, 0x00001AD6, { { 0x28, 0x18, 0x2B, 0xF0, 0x0E, 0xC6, 0xEB, 0x01, 0xB0, 0x9A, 0x0A, 0x65, 0x05, 0xCB, 0x8F, 0x41 } } } },
- { DE_DEU, kPlatformDOS, { 0x0000004F, 0x00001A82, { { 0x77, 0x85, 0x17, 0x25, 0x07, 0x72, 0x4A, 0x7F, 0x4F, 0x39, 0x6C, 0xDD, 0xB6, 0x70, 0x11, 0x02 } } } },
- { EN_ANY, kPlatformDOS, { 0x00000090, 0x00002E35, { { 0x39, 0xD7, 0xA3, 0x21, 0xF0, 0xB7, 0x93, 0x9D, 0xDD, 0xEE, 0x33, 0xC2, 0x05, 0xE6, 0xE3, 0x63 } } } },
- { DE_DEU, kPlatformDOS, { 0x000000A1, 0x0000365C, { { 0x9A, 0x2D, 0xDB, 0x38, 0xB3, 0xF4, 0x0E, 0xF4, 0x36, 0x87, 0x60, 0xAE, 0xF8, 0x7E, 0xCA, 0x8A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicStrings3Provider[] = {
- { EN_ANY, kPlatformDOS, { 0x0000008D, 0x00002DC8, { { 0x35, 0x5E, 0xDD, 0x32, 0x2D, 0x55, 0x1E, 0xBC, 0x93, 0x49, 0x55, 0x48, 0x8F, 0xCD, 0x87, 0xEB } } } },
- { DE_DEU, kPlatformDOS, { 0x000000A8, 0x0000381C, { { 0x12, 0x95, 0x55, 0x57, 0x2B, 0xA0, 0x1A, 0x75, 0xD3, 0x43, 0xFF, 0x3E, 0x00, 0xB6, 0xEC, 0x35 } } } },
- { EN_ANY, kPlatformDOS, { 0x00000088, 0x00002CD4, { { 0xD8, 0xBA, 0x5D, 0x14, 0x92, 0x84, 0x5A, 0x07, 0xC6, 0x76, 0xDF, 0x11, 0x1D, 0x84, 0x7A, 0x98 } } } },
- { DE_DEU, kPlatformDOS, { 0x00000081, 0x00002B14, { { 0xC8, 0xB7, 0x77, 0xBC, 0x3A, 0xB6, 0xDC, 0xB7, 0x00, 0xF3, 0x06, 0xEB, 0x77, 0x10, 0x7C, 0x7E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicStrings4Provider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000017, 0x0000071C, { { 0x96, 0x50, 0xA8, 0x08, 0x1B, 0x2D, 0x0C, 0xF6, 0x90, 0x6A, 0xE7, 0x9F, 0x65, 0xCC, 0x71, 0xA0 } } } },
- { DE_DEU, kPlatformDOS, { 0x0000001B, 0x00000840, { { 0xA2, 0xCF, 0x81, 0x3E, 0x87, 0xA8, 0x10, 0x1B, 0x44, 0x8D, 0x5B, 0x8B, 0xAE, 0x23, 0x30, 0xD3 } } } },
- { EN_ANY, kPlatformDOS, { 0x0000000C, 0x000003A5, { { 0x72, 0x64, 0xBD, 0x1C, 0xED, 0x05, 0x28, 0xFC, 0x94, 0x4B, 0x8F, 0x3C, 0x38, 0x08, 0x77, 0xED } } } },
- { DE_DEU, kPlatformDOS, { 0x00000010, 0x0000054E, { { 0xD9, 0x97, 0xA8, 0x24, 0x27, 0x7B, 0x01, 0x3F, 0x03, 0xBA, 0x2A, 0x43, 0x81, 0x8F, 0x97, 0x03 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicStrings6Provider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000029, 0x00000DA4, { { 0x5C, 0x6F, 0xA1, 0xC2, 0x56, 0xDE, 0xFE, 0xD5, 0x01, 0xFB, 0x65, 0x00, 0x24, 0xD1, 0x49, 0x7B } } } },
- { DE_DEU, kPlatformDOS, { 0x00000032, 0x00001211, { { 0x13, 0xBC, 0xF1, 0x03, 0x49, 0xDB, 0x16, 0xA5, 0xC3, 0x7C, 0xBF, 0x14, 0x8F, 0x40, 0x07, 0x8E } } } },
- { EN_ANY, kPlatformDOS, { 0x00000030, 0x00000FF5, { { 0xE4, 0x2B, 0xB9, 0xF0, 0x26, 0x3D, 0x30, 0xCD, 0xEF, 0xCD, 0xF5, 0xC0, 0x4E, 0xA4, 0xC4, 0x92 } } } },
- { DE_DEU, kPlatformDOS, { 0x00000029, 0x00000E6D, { { 0xE1, 0xBD, 0x4B, 0x42, 0x17, 0xA2, 0xB6, 0x6C, 0xF2, 0x7F, 0xEB, 0x41, 0x2C, 0x82, 0x8C, 0x76 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicStrings7Provider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000014, 0x00000406, { { 0xBD, 0xE1, 0x0A, 0x75, 0xD1, 0x18, 0xF7, 0x08, 0x2D, 0x2B, 0x65, 0x36, 0xA7, 0x59, 0x2E, 0x13 } } } },
- { DE_DEU, kPlatformDOS, { 0x0000000F, 0x000001E5, { { 0x1F, 0xC9, 0x46, 0x8B, 0x41, 0xAD, 0xAD, 0x2B, 0x5A, 0xA9, 0xAB, 0x94, 0x9A, 0x1E, 0x36, 0xAC } } } },
- { EN_ANY, kPlatformDOS, { 0x00000065, 0x000021AF, { { 0x76, 0x35, 0xAE, 0x1D, 0xC2, 0x54, 0x36, 0x11, 0x4D, 0x3E, 0x96, 0x11, 0xB2, 0xDC, 0x15, 0x20 } } } },
- { DE_DEU, kPlatformDOS, { 0x0000006F, 0x000026BA, { { 0xC9, 0x46, 0xD7, 0xF3, 0xF2, 0x5F, 0xF4, 0xB1, 0x22, 0xC8, 0x30, 0x16, 0x8E, 0x75, 0x4D, 0xA8 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicStrings8Provider[] = {
- { EN_ANY, kPlatformDOS, { 0x00000056, 0x00001C95, { { 0x7E, 0x43, 0x73, 0xEC, 0x94, 0x0D, 0xF8, 0x1B, 0xF3, 0x1A, 0x62, 0x19, 0x96, 0x6A, 0x2C, 0xB5 } } } },
- { DE_DEU, kPlatformDOS, { 0x00000061, 0x0000213B, { { 0xE2, 0x3B, 0xA7, 0xB7, 0xE6, 0xA5, 0x0D, 0x0F, 0xE0, 0x94, 0x9B, 0xAE, 0xE1, 0x11, 0x97, 0x93 } } } },
- { EN_ANY, kPlatformDOS, { 0x00000085, 0x00002C0E, { { 0x6A, 0xEC, 0xF2, 0x5F, 0xA6, 0x3F, 0xB1, 0x1A, 0x74, 0x49, 0x5A, 0x47, 0xB0, 0x7A, 0xE6, 0x99 } } } },
- { DE_DEU, kPlatformDOS, { 0x00000096, 0x0000342E, { { 0x83, 0x48, 0x3B, 0xED, 0x73, 0x02, 0x03, 0xCA, 0xA9, 0x4D, 0x40, 0x0F, 0xDE, 0x17, 0x7D, 0x40 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseExpObjectTlModeProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000012, 0x0000000C, { { 0x98, 0x29, 0x54, 0xCD, 0xED, 0xAC, 0x7B, 0x61, 0x8D, 0x4F, 0x19, 0xE8, 0xA6, 0xB1, 0x51, 0x80 } } } },
- EXTRACT_END_ENTRY
-};
-const ExtractEntrySearchData kEoBBaseExpObjectTblIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000009, 0x00000005, { { 0xFE, 0xEA, 0xC4, 0x54, 0x62, 0x7E, 0x43, 0x6E, 0x89, 0x48, 0x03, 0xE7, 0x47, 0xBF, 0x7D, 0x9D } } } }, // EOB 1
- { UNK_LANG, kPlatformDOS, { 0x0000000E, 0x00000004, { { 0x63, 0x27, 0x19, 0x17, 0xBD, 0xC3, 0x8A, 0xA7, 0x1E, 0xF7, 0xD1, 0x78, 0x39, 0x3B, 0xD4, 0x4F } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-const ExtractEntrySearchData kEoBBaseExpObjectShpStartProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000034, { { 0x27, 0xC5, 0x09, 0x97, 0x8E, 0xD4, 0xF1, 0x8D, 0x77, 0xEB, 0x1D, 0x34, 0x55, 0xB2, 0x48, 0x38 } } } },
- EXTRACT_END_ENTRY
-};
-const ExtractEntrySearchData kEoBBaseExpObjectTbl1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000D, 0x0000005D, { { 0x49, 0xC4, 0x47, 0x55, 0xDC, 0x25, 0x08, 0x03, 0x3D, 0x23, 0xAD, 0x09, 0x5F, 0x9C, 0x34, 0x06 } } } },
- EXTRACT_END_ENTRY
-};
-const ExtractEntrySearchData kEoBBaseExpObjectTbl2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000A, 0x0000005C, { { 0xAB, 0x6A, 0x97, 0x35, 0xCC, 0x13, 0xC4, 0x17, 0x0B, 0xF2, 0xD3, 0xFD, 0xA2, 0x1C, 0x6C, 0xA8 } } } },
- EXTRACT_END_ENTRY
-};
-const ExtractEntrySearchData kEoBBaseExpObjectTbl3Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000B, 0x00000032, { { 0x59, 0x23, 0xB9, 0xBE, 0x0E, 0xFA, 0xEB, 0xDD, 0x82, 0x68, 0x5B, 0xB0, 0xBE, 0x9B, 0x1D, 0x8E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseExpObjectYProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000008, 0x0000016C, { { 0xCF, 0x5B, 0x04, 0xAB, 0x1A, 0xAF, 0xDD, 0x56, 0xAC, 0xF6, 0x23, 0x86, 0x33, 0x06, 0x5A, 0xC6 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkDefStepsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000008, 0x000002FD, { { 0xB5, 0x6F, 0x31, 0x5F, 0xC6, 0x47, 0xE9, 0x23, 0x0E, 0x73, 0xBF, 0x77, 0xC7, 0xEE, 0xDB, 0x27 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkDefSubStepsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x000000FF, { { 0x18, 0x27, 0x73, 0x45, 0x26, 0x58, 0x81, 0x82, 0x70, 0x86, 0x7A, 0x0D, 0xDE, 0xC1, 0x08, 0x52 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkDefShiftProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x0000000C, { { 0xCC, 0xDC, 0x78, 0xF9, 0xFE, 0x88, 0xF3, 0x87, 0xFD, 0x08, 0xE8, 0x8A, 0x38, 0xD5, 0x4C, 0x53 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkDefAddProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000008, 0x0000007F, { { 0x7F, 0x86, 0x2E, 0x14, 0xDB, 0x36, 0xED, 0x99, 0xD9, 0xCE, 0xAF, 0x11, 0xC2, 0x89, 0x21, 0x6B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkDefXProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000C, 0x000000A5, { { 0x77, 0xD7, 0xE0, 0x2D, 0xD4, 0x25, 0x94, 0x6E, 0x59, 0x3B, 0xAF, 0x9B, 0x16, 0x4F, 0x6D, 0x4C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkDefYProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x00000138, { { 0xB9, 0xA2, 0x72, 0x01, 0x2A, 0xD7, 0x61, 0xAB, 0x02, 0x57, 0x87, 0xC8, 0x86, 0x83, 0xDF, 0xB3 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkOfFlags1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000002C, 0x00000BF4, { { 0x94, 0x8C, 0x1B, 0x77, 0xBF, 0x3A, 0x51, 0x17, 0x89, 0x16, 0xD0, 0x74, 0x95, 0xBD, 0x85, 0x98 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkOfFlags2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000040, 0x000003FC, { { 0x40, 0x13, 0x5A, 0x9D, 0xBD, 0x29, 0x2E, 0x9C, 0xC1, 0xE7, 0xD4, 0xC9, 0x26, 0xFA, 0xF2, 0x70 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkOfShiftProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000010, 0x000000F0, { { 0xC5, 0xC8, 0x91, 0x7E, 0x78, 0x2F, 0xF1, 0xE5, 0xE0, 0x06, 0xB2, 0x39, 0xDC, 0x0D, 0x7A, 0x5F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkOfXProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000010, 0x00000528, { { 0x58, 0xE6, 0x24, 0x6A, 0xD3, 0xA4, 0xEF, 0x58, 0x4A, 0x9C, 0x32, 0x31, 0x4C, 0x61, 0xBC, 0x1C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSparkOfYProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000010, 0x000002D4, { { 0x74, 0x31, 0xFE, 0x7C, 0x38, 0x16, 0x0C, 0x05, 0x64, 0xAB, 0x8A, 0x69, 0xEA, 0x66, 0x29, 0x2F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseSpellPropertiesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000003EF, 0x0000BE7A, { { 0x10, 0xEA, 0x14, 0x26, 0xE2, 0xFC, 0xA1, 0xCB, 0xD9, 0x80, 0xFE, 0x9F, 0x69, 0x58, 0x4A, 0xCA } } } },
- { UNK_LANG, kPlatformDOS, { 0x000003EF, 0x00008FCE, { { 0xC9, 0x36, 0xDD, 0x7B, 0x05, 0x6E, 0x92, 0xBA, 0x2B, 0x39, 0x87, 0xA7, 0x3A, 0x7E, 0xB0, 0xAD } } } },
- { UNK_LANG, kPlatformDOS, { 0x000006D6, 0x0000CA78, { { 0xEB, 0x3B, 0x9F, 0xFD, 0x4E, 0x3F, 0x5C, 0xDE, 0xC6, 0xBA, 0xFE, 0x83, 0xB4, 0x10, 0x6D, 0x95 } } } },
- { UNK_LANG, kPlatformDOS, { 0x000006D6, 0x0000EC32, { { 0x52, 0xAE, 0x4D, 0xC2, 0x24, 0xC8, 0xD3, 0xBE, 0x09, 0x45, 0x98, 0x38, 0x17, 0x7D, 0xFF, 0xE4 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMagicFlightPropsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000060, 0x0000166F, { { 0x38, 0x30, 0xCA, 0x07, 0x64, 0xBA, 0xC4, 0xA4, 0x4F, 0x75, 0xB4, 0x84, 0x3A, 0x92, 0xFD, 0xE3 } } } },
- { UNK_LANG, kPlatformDOS, { 0x00000038, 0x00000DDC, { { 0x23, 0x32, 0x8D, 0x34, 0x4F, 0x72, 0x37, 0xE1, 0x0C, 0x1B, 0x47, 0x17, 0x5D, 0xDF, 0xDB, 0xF5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseTurnUndeadEffectProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000008C, 0x00002E8B, { { 0x96, 0x15, 0x61, 0x12, 0x43, 0xCF, 0x3A, 0x84, 0x1A, 0x89, 0xB5, 0x32, 0x0D, 0xB3, 0x20, 0x67 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseBurningHandsDestProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000008, 0x0000000C, { { 0x61, 0xD7, 0xAB, 0xE1, 0x56, 0x54, 0x51, 0x5B, 0xD9, 0x59, 0x2D, 0x3D, 0xAE, 0xA4, 0x49, 0x31 } } } }, // EOB1
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x0000003E, { { 0xA5, 0x8C, 0xCA, 0x13, 0xED, 0x0F, 0xB7, 0xA2, 0xD7, 0x9C, 0xCD, 0x11, 0x65, 0x11, 0x4B, 0xD8 } } } }, // EOB2
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseConeOfColdDest1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000007, 0x00000500, { { 0x48, 0xF1, 0xFE, 0x48, 0xEC, 0x64, 0x17, 0x51, 0x5C, 0x9A, 0x91, 0x35, 0x95, 0xC3, 0x73, 0x8E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseConeOfColdDest2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000007, 0x00000210, { { 0xBA, 0x62, 0xA0, 0x4F, 0x50, 0x0C, 0x02, 0xC3, 0xAD, 0x7C, 0x39, 0x63, 0x5F, 0x41, 0xB4, 0xFB } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseConeOfColdDest3Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000007, 0x00000200, { { 0xA0, 0x1F, 0xAC, 0x3A, 0x2D, 0x25, 0x1F, 0x5C, 0xD2, 0x04, 0xAC, 0xAB, 0x97, 0x8B, 0x61, 0xD7 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseConeOfColdDest4Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000007, 0x000004F0, { { 0xB3, 0x9A, 0x2B, 0x3A, 0x51, 0x24, 0x95, 0xBE, 0xDE, 0x0F, 0xD5, 0xE9, 0xE9, 0x21, 0x96, 0x04 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseConeOfColdGfxTblProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000010, 0x0000003E, { { 0x0A, 0xBA, 0xFD, 0x3F, 0xD8, 0x49, 0x3F, 0xD2, 0x26, 0x1B, 0x19, 0x53, 0x4F, 0x84, 0xB9, 0x4F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1MainMenuStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000037, 0x00000D79, { { 0x1D, 0x72, 0x7F, 0x8F, 0xEB, 0x4A, 0xBF, 0x82, 0xB7, 0xB5, 0x9D, 0xB0, 0x7B, 0xDA, 0xEC, 0xEE } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000034, 0x00000C6F, { { 0xF2, 0x5F, 0xBE, 0xFB, 0x27, 0x1C, 0x91, 0x33, 0x25, 0x09, 0xC1, 0xA0, 0x27, 0x89, 0xD7, 0xD5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1BonusStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000093, 0x000031B6, { { 0xC1, 0x54, 0x1D, 0x02, 0x4A, 0x35, 0x7F, 0x5D, 0x84, 0x2D, 0x2C, 0x9C, 0x06, 0x97, 0x29, 0x8D } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000093, 0x000031CD, { { 0x3E, 0x0F, 0x52, 0x02, 0xC7, 0x9E, 0x83, 0xB3, 0xB1, 0xAB, 0x03, 0x3A, 0x18, 0xE2, 0x87, 0x2E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroFilesOpeningProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000003F, 0x00001044, { { 0xF5, 0x8C, 0xC8, 0x39, 0x38, 0xBB, 0x0B, 0xCA, 0x34, 0x38, 0x1D, 0x11, 0x46, 0x91, 0xEF, 0x7E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroFilesTowerProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000001A, 0x000006E6, { { 0xBD, 0x06, 0x3B, 0x7D, 0x24, 0x79, 0xD6, 0xC2, 0xFA, 0xDA, 0x31, 0x15, 0x3E, 0xE2, 0x75, 0xF8 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroFilesOrbProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000015, 0x00000565, { { 0xA7, 0x91, 0x97, 0x5B, 0x29, 0xE8, 0x27, 0x90, 0xB3, 0x8F, 0xD5, 0x13, 0x77, 0x4A, 0x93, 0x37 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroFilesWdEntryProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000002C, 0x00000B42, { { 0x5C, 0xDF, 0xB1, 0x2A, 0x83, 0x03, 0x73, 0x47, 0x1E, 0x29, 0x7C, 0x16, 0x2E, 0x5D, 0x0F, 0xA4 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroFilesKingProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000016, 0x000005AE, { { 0xB5, 0xB5, 0x80, 0xD3, 0xC0, 0xF4, 0x9F, 0xE1, 0x12, 0x3C, 0xCB, 0xD6, 0xF2, 0x7F, 0x15, 0x5B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroFilesHandsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000A, 0x0000027C, { { 0x90, 0xC7, 0x36, 0xE6, 0x7D, 0x6D, 0xCB, 0x77, 0xA0, 0x03, 0x45, 0x48, 0x46, 0xF3, 0x80, 0xC8 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroFilesWdExitProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000033, 0x00000D2A, { { 0xA8, 0xF0, 0x36, 0x0E, 0x37, 0xC6, 0xCC, 0xDB, 0x9B, 0xB8, 0x52, 0x64, 0x02, 0x1E, 0x9D, 0x1C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroFilesTunnelProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000001A, 0x000006E2, { { 0xA1, 0xDD, 0x20, 0x50, 0x7A, 0xB6, 0x89, 0x67, 0x13, 0xAA, 0x47, 0x6B, 0xC0, 0xA0, 0x8A, 0xFD } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroOpeningFrmDelayProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000A, 0x000001E0, { { 0xDA, 0xE3, 0x06, 0xA2, 0x41, 0xF6, 0x5A, 0x6A, 0xBD, 0x0B, 0xA6, 0x09, 0x69, 0x03, 0x1D, 0x2C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroWdEncodeXProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000001F, 0x000001BB, { { 0x00, 0x50, 0x8E, 0xF5, 0x51, 0xA6, 0xF5, 0x57, 0x0D, 0x55, 0x6C, 0x14, 0x62, 0xCD, 0xD0, 0x7E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroWdEncodeYProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000001F, 0x0000000B, { { 0x39, 0x38, 0x02, 0xCE, 0x9D, 0x89, 0x1E, 0xBF, 0x32, 0x86, 0xA0, 0x79, 0xA4, 0xBE, 0xC5, 0x81 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroWdEncodeWHProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000001F, 0x00000027, { { 0xA8, 0x6C, 0x13, 0x2B, 0x4C, 0x26, 0x38, 0x3D, 0xDA, 0xC2, 0x90, 0xB3, 0x97, 0xA9, 0x45, 0x84 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroWdDsXProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000003E, 0x0000104A, { { 0xAC, 0x1F, 0xA6, 0x20, 0xD0, 0x02, 0xF0, 0x9D, 0x75, 0x93, 0x6C, 0x12, 0x0A, 0x76, 0x1B, 0x3F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroWdDsYProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000001F, 0x00000655, { { 0xF3, 0xF7, 0x65, 0xEC, 0xEA, 0x5C, 0x08, 0xCF, 0xAD, 0x48, 0x35, 0xA2, 0x5B, 0x82, 0xB0, 0xC5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroTvlX1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x00000027, { { 0x7F, 0x14, 0x7D, 0x8C, 0x20, 0x49, 0xDB, 0xC3, 0x31, 0x1A, 0xC3, 0x95, 0xA4, 0x8C, 0x96, 0xDC } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroTvlY1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x000000EC, { { 0x29, 0xB4, 0x8D, 0xE1, 0xDF, 0x36, 0x39, 0x27, 0xC8, 0xF6, 0x32, 0x1A, 0x3B, 0x74, 0xA1, 0x4F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroTvlX2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x00000051, { { 0x51, 0x33, 0x0A, 0x55, 0x76, 0xA2, 0x91, 0xDA, 0x59, 0xD6, 0x09, 0xD9, 0x3D, 0xD4, 0xB8, 0xFE } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroTvlY2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x0000016A, { { 0xD5, 0xA3, 0xF6, 0x12, 0x90, 0x87, 0xF2, 0xC7, 0x6A, 0x22, 0x77, 0xB5, 0x48, 0xB2, 0xCB, 0xCA } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroTvlWProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x0000004E, { { 0xCF, 0xC7, 0xA8, 0x59, 0x6A, 0x5B, 0x35, 0x7F, 0xC9, 0xEC, 0x59, 0x7E, 0x88, 0x31, 0x32, 0xA6 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1IntroTvlHProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x0000013D, { { 0x26, 0x7B, 0x3D, 0x5F, 0x64, 0x97, 0xF9, 0x1B, 0xB6, 0x65, 0x99, 0x95, 0x0A, 0x98, 0x38, 0x92 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1DoorShapeDefsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000060, 0x00000F8A, { { 0x95, 0x53, 0x1B, 0x07, 0x64, 0x81, 0x0E, 0x04, 0xC0, 0xDA, 0xB5, 0x74, 0x57, 0x04, 0x10, 0xE2 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1DoorSwitchShapeDefsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000060, 0x0000119E, { { 0xA4, 0xE6, 0x96, 0x36, 0x59, 0x05, 0xB8, 0x57, 0xF4, 0x6D, 0x79, 0x1D, 0x29, 0x52, 0xA0, 0xEE } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1DoorSwitchCoordsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000030, 0x000007F7, { { 0x85, 0x20, 0x98, 0x20, 0xE1, 0xD6, 0xA5, 0xBD, 0x9E, 0x59, 0x63, 0x6A, 0xEF, 0xEF, 0x80, 0x19 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1MonsterPropertiesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000252, 0x000038E5, { { 0x5E, 0xD7, 0xEF, 0x3B, 0xD5, 0xDA, 0x2A, 0x09, 0x78, 0xF6, 0xD8, 0x57, 0x68, 0xB4, 0x90, 0xCA } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1EnemyMageSpellListProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000A, 0x0000000F, { { 0x01, 0x1B, 0x9C, 0x51, 0xC9, 0xA2, 0x10, 0xBB, 0xA7, 0x82, 0xD4, 0x91, 0x7E, 0x84, 0x54, 0x93 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1EnemyMageSfxProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000A, 0x0000029B, { { 0xA2, 0x9F, 0x2E, 0xDE, 0x15, 0x23, 0x78, 0xDD, 0x26, 0x98, 0x6E, 0xA3, 0x77, 0xEA, 0xB5, 0x80 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1BeholderSpellListProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000079, { { 0x8E, 0x13, 0x54, 0x9D, 0x54, 0xF6, 0xC9, 0x6E, 0x10, 0xF1, 0xC0, 0xE9, 0x66, 0xDD, 0x95, 0xED } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1BeholderSfxProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x000000F5, { { 0xA9, 0x90, 0x41, 0x0D, 0xB5, 0xE0, 0x28, 0xFD, 0x0A, 0xC3, 0xF9, 0xEC, 0xC8, 0x47, 0xC1, 0x57 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1TurnUndeadStringProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000027, 0x00000BF2, { { 0x43, 0x0A, 0x1E, 0xEE, 0x84, 0xD6, 0xD6, 0x87, 0x20, 0x9F, 0x15, 0x22, 0x9B, 0x65, 0x24, 0xDB } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000030, 0x00000F48, { { 0xDA, 0x59, 0xEC, 0xC1, 0x9B, 0xCF, 0x90, 0x4A, 0x93, 0x3E, 0xE5, 0x26, 0x20, 0x8B, 0x74, 0x92 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingDefaultProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x0000002C, { { 0x7E, 0x1C, 0x75, 0xC3, 0x8E, 0xF7, 0x56, 0x62, 0x9B, 0xB6, 0xF4, 0x3A, 0x21, 0x03, 0xFA, 0xF5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingAltProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000030, { { 0x2A, 0x8C, 0xF6, 0xD7, 0x87, 0xFA, 0x7B, 0x22, 0x28, 0x2A, 0x50, 0xE2, 0x26, 0x7B, 0xC7, 0x44 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingInvProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x0000002E, { { 0x3A, 0x06, 0xBF, 0x0C, 0xD4, 0xD0, 0x15, 0x1F, 0xB5, 0xC5, 0x49, 0xFD, 0x21, 0xE1, 0xE1, 0x66 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingItemsLProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x0000002A, { { 0xE0, 0x85, 0xA1, 0x3A, 0x3D, 0xC9, 0xF8, 0x56, 0x17, 0x0A, 0xD8, 0x44, 0x56, 0xDF, 0x3C, 0x57 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingItemsSProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000036, { { 0x2E, 0x6F, 0xD4, 0x2E, 0xB2, 0x84, 0xB2, 0xC3, 0x36, 0x88, 0x80, 0xC1, 0x67, 0x5A, 0xEB, 0x60 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingThrownProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000030, { { 0x0C, 0x3D, 0x1E, 0xAB, 0x0B, 0x25, 0x9F, 0x78, 0xE6, 0xB1, 0x52, 0x79, 0x0F, 0x96, 0x33, 0x97 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingIconsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000039, { { 0x99, 0x50, 0x1A, 0xE1, 0xF3, 0x52, 0xC3, 0x5A, 0x4E, 0xBD, 0x03, 0x74, 0x2C, 0x39, 0xCA, 0x71 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingDecoProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000035, { { 0xA5, 0x17, 0xED, 0xEE, 0x02, 0x87, 0x8C, 0x9D, 0xAC, 0x96, 0xC6, 0x07, 0xB0, 0x8E, 0x5D, 0xE3 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaLevelMappingIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000000C, 0x00000013, { { 0x48, 0x5D, 0xDF, 0x8F, 0xFD, 0x5D, 0xA0, 0xB0, 0x00, 0xD8, 0xB3, 0x09, 0x90, 0x5D, 0x13, 0x3F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingLevel0Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000035, { { 0xC2, 0x4D, 0x2F, 0x0A, 0xB0, 0x3E, 0x46, 0x80, 0xD1, 0xEE, 0x32, 0x5F, 0xBA, 0x5C, 0xCC, 0x7A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingLevel1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000030, { { 0x94, 0x8E, 0xAE, 0x12, 0xB5, 0x68, 0xCD, 0x43, 0x95, 0xD2, 0x01, 0x21, 0x0C, 0xA1, 0x34, 0xF5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingLevel2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000030, { { 0x20, 0x6F, 0x9F, 0x57, 0x0C, 0xFD, 0xDA, 0x5C, 0xA0, 0x1D, 0x28, 0xB4, 0x88, 0x24, 0x68, 0x68 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingLevel3Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000030, { { 0x44, 0x95, 0x9A, 0x69, 0x70, 0xB2, 0x63, 0xB6, 0xFB, 0xD0, 0xFF, 0xD9, 0xF0, 0xCD, 0xD4, 0x75 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1CgaMappingLevel4Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000031, { { 0xEA, 0xC4, 0x01, 0xC0, 0x21, 0xFE, 0x66, 0xDD, 0xD4, 0x83, 0xC1, 0x2C, 0x09, 0xD3, 0xD0, 0x97 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1NpcShpDataProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000004C, 0x00000A42, { { 0x70, 0x21, 0x85, 0x8C, 0xD4, 0x04, 0xAA, 0x20, 0x1D, 0x0E, 0x9D, 0xB7, 0x74, 0x58, 0xCC, 0x0C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1NpcSubShpIndex1Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x00000035, { { 0x9A, 0x83, 0xF9, 0xA4, 0x27, 0xBA, 0xFC, 0xD2, 0xDE, 0x03, 0x65, 0xF2, 0xFA, 0x37, 0xDA, 0xF1 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1NpcSubShpIndex2Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x00000051, { { 0x7E, 0xAC, 0x0E, 0x54, 0x59, 0x5D, 0xF6, 0x53, 0x03, 0x22, 0x1D, 0xC7, 0xFC, 0x16, 0xC8, 0x88 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1NpcSubShpYProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x00000143, { { 0xC1, 0xED, 0x93, 0x5E, 0x84, 0xCE, 0x48, 0xCF, 0x4C, 0xF3, 0x9C, 0x93, 0xBF, 0xFE, 0xB8, 0x6F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc0StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000044, 0x000016E2, { { 0x7C, 0x28, 0x72, 0xC9, 0x57, 0xF5, 0xAB, 0x02, 0xD1, 0x42, 0xE8, 0xA3, 0xF9, 0x33, 0x70, 0xEE } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000050, 0x00001B13, { { 0x69, 0x05, 0xEB, 0xB6, 0x86, 0x81, 0xAC, 0x09, 0x53, 0x35, 0x4D, 0x55, 0xF3, 0x13, 0x6F, 0xC0 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc11StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000001B, 0x00000928, { { 0x86, 0x08, 0x95, 0x6B, 0xBF, 0x12, 0x2D, 0xF9, 0x62, 0x25, 0xD9, 0xAE, 0x25, 0x10, 0xDF, 0xDC } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000001A, 0x000008DB, { { 0xBD, 0xBB, 0x48, 0x8E, 0x04, 0x7D, 0xE4, 0x78, 0xBB, 0x59, 0x6E, 0x86, 0xE1, 0x06, 0x27, 0x50 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc12StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000016, 0x0000079C, { { 0x22, 0x57, 0x3A, 0x9C, 0x7C, 0xDB, 0x55, 0xD0, 0x9C, 0x84, 0x28, 0xA6, 0x9D, 0x40, 0x38, 0x6E } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000014, 0x000006ED, { { 0x88, 0x1C, 0x09, 0x61, 0x5D, 0x9D, 0xDE, 0x8A, 0x54, 0x1C, 0x40, 0xCF, 0x28, 0x2B, 0x52, 0x9D } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc21StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000014, 0x000006FD, { { 0x55, 0x77, 0x2F, 0xB0, 0xB3, 0x2D, 0x81, 0x29, 0xDE, 0x71, 0x83, 0x41, 0x06, 0x5B, 0x72, 0x21 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000015, 0x00000748, { { 0x3E, 0x15, 0x27, 0xFD, 0x76, 0xFB, 0x14, 0x8C, 0xF6, 0x14, 0x3E, 0x20, 0x0A, 0x04, 0xF5, 0x32 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc22StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000F, 0x000004D4, { { 0xE5, 0x97, 0x06, 0x45, 0x6A, 0xAC, 0x96, 0x6D, 0x0A, 0xC9, 0xDF, 0x8F, 0x96, 0x2D, 0x01, 0x5D } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000000D, 0x00000439, { { 0x87, 0xCB, 0x17, 0xD2, 0xC8, 0x7F, 0x34, 0xDA, 0x82, 0x30, 0xB2, 0x68, 0xB0, 0x10, 0xD9, 0x52 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc31StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000011, 0x00000597, { { 0x5C, 0xEB, 0x0A, 0xE6, 0xB1, 0x37, 0x0E, 0x8F, 0x14, 0xB4, 0x68, 0x86, 0xE5, 0xD2, 0xDE, 0xC7 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000012, 0x00000603, { { 0x8E, 0x68, 0x55, 0xCD, 0x29, 0x1E, 0x3C, 0x06, 0x7B, 0x97, 0xE1, 0x07, 0x49, 0x09, 0xF0, 0x57 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc32StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000020, 0x00000AE4, { { 0xED, 0x09, 0x04, 0xEC, 0xE3, 0x43, 0xDA, 0xEE, 0x5D, 0x78, 0x32, 0x63, 0x68, 0xFC, 0x4F, 0x9E } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000020, 0x00000B13, { { 0x87, 0x40, 0x88, 0xA5, 0xE2, 0x6F, 0x83, 0xBC, 0x99, 0x2B, 0xD3, 0xF5, 0x8D, 0x6B, 0x6E, 0x7D } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc4StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000D, 0x0000043C, { { 0x2C, 0xE7, 0xE5, 0xAA, 0xF3, 0x50, 0xA8, 0x6D, 0xC2, 0xC6, 0x88, 0xFE, 0x12, 0x96, 0xFE, 0x54 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000014, 0x00000720, { { 0xF8, 0x58, 0x9A, 0xDB, 0xE5, 0x3F, 0x67, 0x53, 0x1F, 0x27, 0x2E, 0x8D, 0x6E, 0xAD, 0x45, 0xF5 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc5StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000021, 0x00000ABC, { { 0xF1, 0xB5, 0x9E, 0x51, 0x9E, 0xF8, 0x84, 0x95, 0x55, 0x55, 0xE7, 0xDF, 0x36, 0xE1, 0x78, 0x9A } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000001D, 0x00000A8C, { { 0x4A, 0xAE, 0x5B, 0x3B, 0xAD, 0x18, 0x91, 0x3F, 0xC9, 0x5A, 0x82, 0x5D, 0xA7, 0x06, 0x1A, 0xAE } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc6StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000011, 0x00000612, { { 0x1B, 0xE2, 0x23, 0xD9, 0x00, 0x5C, 0xB9, 0x54, 0xCE, 0xA7, 0x6A, 0x51, 0xF6, 0xBB, 0x8A, 0xC9 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000012, 0x00000647, { { 0x6C, 0x3F, 0xE2, 0xD0, 0xB0, 0x75, 0x2D, 0x73, 0xEE, 0x6F, 0x17, 0x74, 0xAA, 0x7D, 0xA2, 0x21 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB1Npc7StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000018, 0x00000777, { { 0x60, 0xB4, 0x17, 0x72, 0x89, 0x87, 0x47, 0xE3, 0xD9, 0xC3, 0x59, 0x16, 0xFD, 0x03, 0x31, 0xD4 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000016, 0x000007B6, { { 0xAE, 0xB6, 0x3C, 0x14, 0x2B, 0x34, 0xB8, 0x7C, 0xCF, 0x87, 0xDA, 0x70, 0xBF, 0x0D, 0xAB, 0xE2 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2MainMenuStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000005F, 0x000017BE, { { 0x77, 0x8A, 0x50, 0x9F, 0x42, 0xD8, 0x00, 0x05, 0x60, 0x2A, 0x80, 0x25, 0x00, 0xDC, 0x7C, 0x92 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000005E, 0x000017F3, { { 0xD0, 0x93, 0x2E, 0x5F, 0x9D, 0xDB, 0xC4, 0xFB, 0x9E, 0x9F, 0x14, 0xD6, 0xB4, 0xBE, 0x3D, 0x0C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2TransferPortraitFramesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000040, 0x00000B25, { { 0x13, 0x25, 0x69, 0xC6, 0xE4, 0x9D, 0x35, 0x11, 0xAB, 0xE2, 0xC1, 0xEF, 0x21, 0x8B, 0xB8, 0x28 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2TransferConvertTableProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000031, 0x000004BC, { { 0x96, 0x53, 0xA2, 0xF1, 0x26, 0xFE, 0x1B, 0x5E, 0xDF, 0x62, 0x2C, 0x8C, 0xBD, 0x62, 0x5A, 0xF9 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2TransferItemTableProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x00000025, { { 0xD0, 0xA4, 0xB3, 0x7D, 0x74, 0x4D, 0x16, 0x43, 0x56, 0x07, 0x84, 0xAA, 0x96, 0xBD, 0x82, 0x25 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2TransferExpTableProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000018, 0x0000076B, { { 0x91, 0x65, 0x5B, 0x8D, 0xE8, 0x5B, 0x28, 0x32, 0x4D, 0x7A, 0x57, 0x8E, 0x18, 0x5B, 0x1A, 0xE9 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2TransferStrings1Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000010, 0x000003D3, { { 0x31, 0xE4, 0x65, 0x69, 0x0A, 0xA1, 0x1D, 0xD1, 0xFE, 0xF8, 0x5C, 0x29, 0xB1, 0x46, 0xBD, 0xBE } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000010, 0x000003E2, { { 0xF0, 0x10, 0xF8, 0x9F, 0x05, 0x1E, 0x31, 0x33, 0x4E, 0xC8, 0x49, 0xBC, 0x9E, 0xAD, 0xD4, 0x99 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2TransferStrings2Provider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000006A, 0x00002681, { { 0x12, 0x4D, 0x29, 0x9D, 0xD3, 0xFC, 0x39, 0x22, 0x73, 0x1E, 0x5C, 0xAF, 0x1F, 0xD1, 0xAA, 0x87 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000057, 0x00001F8E, { { 0x85, 0xD8, 0x39, 0x1E, 0x6D, 0x97, 0xBD, 0x0E, 0xDD, 0xCF, 0x19, 0x47, 0x31, 0xDC, 0x7C, 0x1A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2TransferLabelsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000A, 0x00000240, { { 0x2A, 0x8B, 0x54, 0x99, 0x94, 0x35, 0x2B, 0xAB, 0x7F, 0x7F, 0x98, 0xA3, 0xFD, 0x57, 0x20, 0xDE } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000009, 0x000001DF, { { 0x47, 0x6B, 0xBA, 0xCD, 0x99, 0x74, 0xCA, 0x3C, 0xAA, 0xC6, 0xB4, 0x50, 0x38, 0x90, 0x25, 0xB8 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2IntroStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000321, 0x0000DBC3, { { 0x11, 0x9B, 0x54, 0xB3, 0x34, 0xF0, 0xB5, 0xE1, 0xFA, 0x6A, 0x31, 0x02, 0x59, 0x29, 0xCA, 0x94 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000038E, 0x0001119C, { { 0x92, 0x63, 0x18, 0xDD, 0x9F, 0x62, 0xF5, 0xBC, 0x3D, 0x93, 0xDC, 0x6E, 0xE5, 0xBE, 0x8C, 0x0B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2IntroCPSFilesProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x000000A2, 0x0000296A, { { 0xE9, 0x28, 0x4A, 0x6E, 0xAA, 0x44, 0xF4, 0xD7, 0xD1, 0x29, 0xBF, 0x90, 0x6B, 0x82, 0xD1, 0x77 } } } },
- { DE_DEU, kPlatformUnknown, { 0x000000A2, 0x0000296B, { { 0x03, 0xA2, 0x0A, 0xAB, 0x76, 0x78, 0x04, 0x88, 0x6A, 0xE0, 0x36, 0x8B, 0x3A, 0x87, 0x44, 0xC8 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData00Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x000003E1, { { 0x38, 0xC2, 0x0F, 0xE1, 0x43, 0x6A, 0xE8, 0x7C, 0x82, 0x65, 0x9B, 0x4A, 0x9F, 0x83, 0xCD, 0xC8 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData01Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x000003A3, { { 0x84, 0x44, 0xF4, 0x46, 0x4E, 0x2B, 0xD7, 0xC6, 0xAD, 0x14, 0xF1, 0x9E, 0x8A, 0xBE, 0x7B, 0x42 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData02Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x00000446, { { 0x0C, 0xCA, 0x41, 0x0C, 0x89, 0x59, 0xD5, 0x28, 0x9A, 0xDC, 0x51, 0x1C, 0x0B, 0x8C, 0xD2, 0xDB } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData03Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002C, 0x0000010E, { { 0xAB, 0x48, 0x64, 0x02, 0xB3, 0xF3, 0x6C, 0x82, 0x9D, 0x37, 0x5F, 0x52, 0x0F, 0x5B, 0xDF, 0x96 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData04Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000021, 0x00000149, { { 0x3B, 0xAC, 0x14, 0x51, 0xDF, 0x5D, 0x22, 0x15, 0x46, 0x4E, 0xCD, 0xF3, 0xD4, 0x61, 0x29, 0x4A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData05Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002C, 0x0000010E, { { 0x28, 0x29, 0x5F, 0x31, 0x23, 0x53, 0xBA, 0xD7, 0x24, 0xB9, 0x21, 0x70, 0x84, 0x8A, 0x1C, 0x2E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData06Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000B0, 0x00001365, { { 0x91, 0x28, 0x2F, 0x10, 0x45, 0x4D, 0xCF, 0x3E, 0x70, 0x1E, 0xD4, 0xBA, 0x0E, 0x70, 0xDE, 0xD0 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData07Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x000003C4, { { 0x8C, 0x72, 0xDE, 0x4F, 0x92, 0x52, 0x0A, 0xED, 0xF4, 0x79, 0xD6, 0x3D, 0x8F, 0x59, 0x9D, 0x69 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData08Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000042, 0x00000442, { { 0xD2, 0x91, 0x51, 0xEB, 0x91, 0x13, 0x43, 0xCE, 0x7E, 0x60, 0xB8, 0xFF, 0xA7, 0xE2, 0x4C, 0x11 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData09Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002C, 0x000004BC, { { 0xD6, 0xC7, 0x44, 0x2E, 0xE7, 0x2A, 0x44, 0x09, 0x39, 0xC3, 0xD3, 0xA8, 0x02, 0xC8, 0xA0, 0x19 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData10Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000006E, 0x00000C12, { { 0x91, 0xDB, 0x41, 0x7A, 0x4F, 0x7C, 0x7B, 0x83, 0x32, 0x13, 0x68, 0xF6, 0x58, 0x79, 0xDA, 0x99 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData11Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000B0, 0x0000073C, { { 0x17, 0x1F, 0x4D, 0x05, 0x3F, 0x14, 0x2E, 0x77, 0xD3, 0xDB, 0x78, 0x67, 0xBB, 0x18, 0xDC, 0x85 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData12Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000021, 0x00000228, { { 0xC9, 0x50, 0x68, 0x51, 0xD0, 0xC1, 0x5D, 0xD4, 0xFF, 0x08, 0x28, 0xDE, 0xC4, 0x41, 0x8C, 0xDB } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData13Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002C, 0x00000340, { { 0x03, 0xCA, 0x5D, 0xD1, 0x15, 0xFA, 0x60, 0xD7, 0x70, 0x64, 0x3D, 0x44, 0x08, 0xB8, 0xDB, 0xAD } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData14Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000042, 0x000007C0, { { 0x82, 0xA9, 0x0B, 0x90, 0x9D, 0x65, 0x1E, 0xC7, 0x03, 0x5E, 0xB7, 0xDF, 0x6E, 0x1F, 0xED, 0xD6 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData15Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002C, 0x00000504, { { 0xA7, 0x91, 0x4F, 0xAD, 0xB1, 0x77, 0x80, 0x3A, 0xC7, 0xDE, 0x35, 0x7A, 0x96, 0x16, 0xD2, 0x13 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData16Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000079, 0x00000B3D, { { 0xCC, 0x63, 0x5A, 0x11, 0xEE, 0x8A, 0xAE, 0x3A, 0x14, 0xC3, 0xBC, 0xDA, 0xAF, 0x1D, 0xD4, 0x2C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData17Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000084, 0x00000911, { { 0x09, 0x1C, 0x4B, 0xD9, 0x0B, 0x2A, 0xD6, 0xC1, 0xE3, 0x8D, 0xFE, 0x43, 0x8F, 0x2E, 0x21, 0x51 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData18Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000058, 0x000008FA, { { 0xFE, 0x58, 0xD9, 0x67, 0x78, 0x97, 0xE2, 0xCD, 0x82, 0xB8, 0xC9, 0xC0, 0x1F, 0xCA, 0x7C, 0xF5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData19Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000009A, 0x00000D6B, { { 0xA1, 0xDD, 0x7B, 0x8B, 0x25, 0xA5, 0x96, 0x5A, 0x33, 0x5E, 0x80, 0x5F, 0xA5, 0xBB, 0xAC, 0x11 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData20Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000009A, 0x00000D6C, { { 0x19, 0xF9, 0x93, 0x1D, 0x01, 0xEE, 0x7C, 0x8B, 0x6C, 0x3E, 0x35, 0x2C, 0x5C, 0x88, 0xCD, 0xB6 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData21Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000009A, 0x00000D83, { { 0xCB, 0x4F, 0x21, 0x29, 0x63, 0x5B, 0x8C, 0xF2, 0xBA, 0x03, 0x49, 0xD1, 0xAF, 0x22, 0xB0, 0xD5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData22Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x00000200, { { 0x66, 0xEE, 0x45, 0xB1, 0x87, 0x66, 0xC4, 0x55, 0xCE, 0x60, 0x0C, 0x5B, 0xBB, 0x3C, 0x7D, 0x33 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData23Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x0000020D, { { 0xC4, 0x49, 0xE2, 0x5B, 0x2E, 0x17, 0x68, 0xC4, 0xBA, 0x20, 0xEC, 0xB1, 0xEB, 0x1A, 0xFB, 0xE0 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData24Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x00000214, { { 0xF1, 0x46, 0x82, 0xEF, 0x6D, 0xCA, 0x68, 0xA2, 0xF3, 0x55, 0x63, 0xD2, 0x13, 0x25, 0x19, 0xF7 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData25Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x00000256, { { 0x8F, 0xB9, 0xCD, 0xB8, 0x58, 0xCB, 0x90, 0x03, 0xFC, 0xB6, 0x95, 0x6F, 0x52, 0xF8, 0x7D, 0x19 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData26Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x00000263, { { 0x7A, 0x37, 0x07, 0xC4, 0x67, 0x72, 0x1F, 0xCB, 0xAC, 0x98, 0x46, 0x9A, 0xF3, 0x5F, 0xBA, 0x78 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData27Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x0000026A, { { 0x80, 0x11, 0xEE, 0x44, 0xDA, 0xE1, 0x26, 0x1F, 0x14, 0x7E, 0x93, 0x99, 0x44, 0x44, 0x9F, 0x85 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData28Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x000001F6, { { 0x45, 0xA1, 0xA5, 0xEC, 0x85, 0x06, 0xE2, 0x91, 0x28, 0xE0, 0xBB, 0x53, 0x74, 0x44, 0xD9, 0xA6 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData29Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x000001F9, { { 0x3F, 0x03, 0x2F, 0x8B, 0xFB, 0x6A, 0x97, 0x05, 0xED, 0xBB, 0xD6, 0xA0, 0xF5, 0x7A, 0x6D, 0x08 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData30Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x00000204, { { 0xA1, 0x37, 0x57, 0xC3, 0x72, 0x08, 0x98, 0xA6, 0xF4, 0x5E, 0x58, 0x9E, 0xF3, 0x11, 0x88, 0x1E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData31Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x00000212, { { 0x19, 0xCC, 0x6F, 0xA8, 0x29, 0xB5, 0x3B, 0x15, 0x2F, 0x2C, 0x43, 0xED, 0x7A, 0xF5, 0xC5, 0x69 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData32Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x000006C9, { { 0xBF, 0x65, 0xBA, 0x3F, 0x44, 0xEE, 0xB0, 0x5C, 0x8B, 0xBD, 0x15, 0xAB, 0x03, 0xD1, 0x55, 0x21 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData33Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000009A, 0x00001585, { { 0xB5, 0x44, 0x06, 0xC9, 0xE8, 0x27, 0x75, 0x6E, 0x63, 0x77, 0xE9, 0xA9, 0x68, 0x73, 0xF5, 0x78 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData34Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000058, 0x00000B43, { { 0x52, 0xB4, 0x1E, 0x14, 0x88, 0xBD, 0x8A, 0xD7, 0x38, 0xDF, 0x25, 0xB0, 0xAF, 0xAE, 0x76, 0xE1 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData35Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x000005A4, { { 0xFB, 0x82, 0xE7, 0xB2, 0x54, 0xDB, 0xB5, 0xE1, 0xCE, 0xFB, 0xD1, 0x23, 0x39, 0x8F, 0xA1, 0x0D } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData36Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000042, 0x00000572, { { 0x2C, 0x16, 0xD9, 0xBE, 0xDB, 0xBA, 0x04, 0xCA, 0x97, 0xB5, 0x88, 0x43, 0xA8, 0x62, 0xE2, 0x04 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData37Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x0000024E, { { 0xFF, 0x28, 0xD8, 0x62, 0xC6, 0xAD, 0x48, 0xC7, 0x31, 0x84, 0x6C, 0xBA, 0x9F, 0x4D, 0x15, 0xDA } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData38Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000001D9, 0x00001FB1, { { 0x16, 0xB0, 0xDF, 0x86, 0x8C, 0xB3, 0x52, 0xEF, 0x21, 0x04, 0x22, 0x6D, 0xC0, 0x03, 0xB8, 0xC6 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData39Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000004D, 0x00000582, { { 0x11, 0x6C, 0xBB, 0xF6, 0x1B, 0x3C, 0xAE, 0xAA, 0x40, 0x27, 0x3F, 0x86, 0x33, 0x92, 0xCB, 0xA9 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData40Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000160, 0x000010A2, { { 0xD9, 0x9D, 0xF1, 0x7D, 0xE1, 0x7C, 0x61, 0xC0, 0xD4, 0xD3, 0x05, 0x0C, 0x79, 0xDD, 0xDB, 0xD1 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData41Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x00000355, { { 0x92, 0x85, 0xBE, 0x5A, 0x38, 0x08, 0xF3, 0xDF, 0xC6, 0x56, 0x74, 0xC3, 0x0B, 0x3F, 0x72, 0x4D } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData42Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000021, 0x0000010B, { { 0x68, 0xF8, 0x1D, 0x74, 0x6D, 0x32, 0x1E, 0x3A, 0x1C, 0xD1, 0x1D, 0x4B, 0x89, 0x3D, 0x5F, 0x2B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2IntroAnimData43Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000037, 0x00000116, { { 0xD5, 0x46, 0xCB, 0x3F, 0x27, 0xBD, 0x2B, 0xD6, 0x35, 0x69, 0x9E, 0x0A, 0x28, 0xDA, 0xC9, 0x84 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2IntroShapes00Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000005A, 0x00000A86, { { 0xF9, 0xD5, 0xD2, 0x93, 0xBC, 0xC4, 0x86, 0x3F, 0x83, 0x0D, 0xDB, 0x38, 0x60, 0x6E, 0xA7, 0xDA } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2IntroShapes01Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000C, 0x0000009B, { { 0xAA, 0xDD, 0x25, 0x21, 0x57, 0x6A, 0xB7, 0xEB, 0xDA, 0xFD, 0x72, 0x3B, 0xCA, 0x68, 0xDB, 0x34 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2IntroShapes04Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x00000417, { { 0x13, 0x95, 0x81, 0x46, 0x84, 0x36, 0xF2, 0xFC, 0xDE, 0x15, 0x85, 0x81, 0xB3, 0x9A, 0x9D, 0x20 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2IntroShapes07Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000006C, 0x000021F1, { { 0x6F, 0x7C, 0x28, 0xBB, 0xC3, 0x52, 0xE4, 0x13, 0xB4, 0xE9, 0xA4, 0x47, 0x9A, 0xBE, 0x19, 0xDA } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2FinaleStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000031C, 0x0000E287, { { 0x1E, 0x73, 0x93, 0x79, 0xB7, 0xF8, 0x17, 0xEE, 0xE4, 0xFC, 0xF0, 0x34, 0x9D, 0x06, 0x4F, 0x55 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000039F, 0x00011660, { { 0xBC, 0x1D, 0x95, 0x20, 0x32, 0xF5, 0x83, 0xCF, 0xF7, 0x11, 0xE4, 0x1D, 0x89, 0x47, 0xF0, 0x65 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2CreditsDataProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000090C, 0x00023464, { { 0x55, 0x31, 0x9D, 0x60, 0x2C, 0xA1, 0x0B, 0xF9, 0xED, 0x46, 0xDF, 0x44, 0x1A, 0x9F, 0xB1, 0xB0 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000B11, 0x0002BBD7, { { 0x46, 0x24, 0x78, 0xE9, 0xCE, 0x75, 0x45, 0x7B, 0x3B, 0xAA, 0x15, 0xD8, 0x5B, 0xCB, 0x06, 0x3A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2FinaleCPSFilesProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000009C, 0x00002853, { { 0x1F, 0xB9, 0x3D, 0x48, 0x47, 0x31, 0x0D, 0xA8, 0x92, 0x52, 0xD1, 0x54, 0x48, 0x42, 0x47, 0xBD } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000009C, 0x00002878, { { 0x48, 0x3B, 0x7A, 0xC2, 0x9C, 0xEC, 0x10, 0x07, 0xD1, 0xB6, 0x9E, 0x89, 0xE9, 0xE1, 0xBF, 0xBF } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData00Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000079, 0x00000B66, { { 0x9B, 0x8C, 0x17, 0xFA, 0xD2, 0x4F, 0x4B, 0x0E, 0x3A, 0x43, 0xB1, 0x86, 0x0C, 0xDC, 0x73, 0xAB } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData01Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000063, 0x00000A03, { { 0xBB, 0x31, 0xEA, 0x35, 0xFB, 0x99, 0x4C, 0x3E, 0x72, 0xBD, 0x36, 0x6B, 0x5C, 0x03, 0x19, 0x7F } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData02Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002C, 0x000007C2, { { 0xF6, 0x83, 0x37, 0x58, 0x3C, 0x59, 0x84, 0x8F, 0x97, 0x80, 0xE2, 0xD8, 0xFD, 0x77, 0xA9, 0x54 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData03Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000042, 0x0000092B, { { 0x47, 0xE4, 0x34, 0xE8, 0x72, 0xCC, 0xA4, 0x4A, 0xA4, 0x8F, 0xBA, 0xBC, 0x0C, 0x04, 0x18, 0xAF } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData04Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000058, 0x0000080B, { { 0x16, 0xDB, 0x77, 0x4C, 0x8E, 0xFD, 0x44, 0xF6, 0x5E, 0x28, 0x0B, 0x74, 0x93, 0x45, 0x8F, 0xD9 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData05Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000004D, 0x00000C72, { { 0x6C, 0x57, 0x56, 0x7E, 0x87, 0x10, 0x9C, 0xE7, 0x69, 0xAC, 0x3B, 0x3F, 0xF6, 0x43, 0x5C, 0xD4 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData06Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x00000264, { { 0x48, 0x49, 0x5D, 0x78, 0xE2, 0xF1, 0x0D, 0x87, 0xEE, 0xEE, 0xD1, 0xA1, 0xC6, 0x64, 0xCA, 0x13 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData07Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000042, 0x00000ABE, { { 0xFE, 0xA9, 0x5D, 0x87, 0xAF, 0x55, 0x04, 0x92, 0x41, 0xD3, 0xAD, 0x1D, 0xFF, 0x03, 0x81, 0x3C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData08Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000021, 0x000004D8, { { 0x4E, 0xA7, 0xCC, 0x0B, 0x1B, 0x48, 0x22, 0x09, 0x33, 0xF7, 0x23, 0xF1, 0xF5, 0x9F, 0xA5, 0x7B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData09Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000058, 0x000004BE, { { 0xF6, 0xEA, 0xA0, 0x7F, 0x54, 0x61, 0x79, 0x4C, 0x71, 0xD7, 0x9B, 0xA6, 0xC3, 0x45, 0xEE, 0x3E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData10Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000009A, 0x00000FC4, { { 0xA9, 0xFB, 0x31, 0x55, 0xB8, 0x28, 0x63, 0xC3, 0x4B, 0x9E, 0x7D, 0x41, 0xC7, 0x1F, 0x2F, 0xBD } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData11Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000C6, 0x0000166B, { { 0xCC, 0x16, 0x50, 0xFF, 0xFF, 0xD5, 0xAE, 0x03, 0x40, 0xA3, 0x9A, 0x1F, 0xF8, 0x8E, 0x23, 0x7A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData12Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000FD, 0x00001A69, { { 0x6A, 0x80, 0x89, 0x7E, 0xFC, 0xE4, 0x01, 0xF5, 0xA2, 0x11, 0xE7, 0x26, 0x20, 0x96, 0x62, 0x7B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData13Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000FD, 0x00001886, { { 0xF9, 0x5B, 0x62, 0xDD, 0xAB, 0x14, 0x35, 0x77, 0x53, 0x05, 0xDB, 0xC5, 0xFD, 0x4D, 0x4F, 0x12 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData14Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000108, 0x00001895, { { 0x22, 0xA1, 0x88, 0x69, 0xF9, 0x1C, 0xA2, 0x64, 0x44, 0xCD, 0x00, 0xFA, 0xB1, 0x94, 0xEB, 0x3A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData15Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000D1, 0x000016E5, { { 0xD8, 0xE9, 0xA5, 0xEE, 0x54, 0x1B, 0x3E, 0x32, 0xDA, 0x78, 0x90, 0xC2, 0x54, 0xFC, 0xD5, 0x39 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData16Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000008F, 0x00000C69, { { 0xBC, 0x41, 0xE5, 0xAF, 0x89, 0xE2, 0x54, 0x12, 0x9E, 0xB0, 0x5F, 0x28, 0xFF, 0x92, 0x9D, 0x89 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData17Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000000DC, 0x0000170D, { { 0x7A, 0x7B, 0x74, 0xCB, 0x68, 0xC2, 0xFF, 0xC7, 0xBE, 0x47, 0xE9, 0x43, 0xF7, 0x15, 0x8D, 0x59 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData18Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000134, 0x00002651, { { 0x71, 0x26, 0x47, 0x0D, 0x7C, 0x96, 0x45, 0x0B, 0x82, 0xD0, 0x37, 0xB9, 0xD4, 0xD0, 0x84, 0xFC } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData19Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000004D, 0x000009C3, { { 0xDA, 0x96, 0xDF, 0x16, 0xEB, 0x5D, 0x49, 0xA4, 0x3F, 0xD3, 0x31, 0xBE, 0x49, 0x72, 0xF2, 0x71 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEob2FinaleAnimData20Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000021, 0x000003D8, { { 0xD9, 0xC8, 0x58, 0x4B, 0x7D, 0x79, 0x86, 0xCB, 0xEB, 0x77, 0xC2, 0xD4, 0xB7, 0xB4, 0xE9, 0x6A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2FinaleShapes00Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000018, 0x0000071C, { { 0xE8, 0x67, 0xCB, 0x76, 0x6D, 0x49, 0xC2, 0x05, 0x0D, 0xAD, 0xB6, 0x83, 0x35, 0xB3, 0xBE, 0xE5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2FinaleShapes03Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000012, 0x00000571, { { 0x91, 0xEC, 0xAC, 0x12, 0x08, 0x33, 0xDA, 0x7C, 0xBD, 0x51, 0x64, 0xE3, 0xAE, 0x43, 0x75, 0x14 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2FinaleShapes07Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000018, 0x00000166, { { 0xED, 0x6E, 0x0C, 0x85, 0x13, 0x6F, 0xAC, 0xEB, 0xCA, 0x74, 0x2E, 0x2D, 0x0E, 0xCE, 0x17, 0xD6 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2FinaleShapes09Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000036, 0x00000898, { { 0xEB, 0xB0, 0xD9, 0xC4, 0xB6, 0xBC, 0xE3, 0xAF, 0xB2, 0x5D, 0xE3, 0xCE, 0xF7, 0x26, 0x07, 0xE5 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2FinaleShapes10Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000018, 0x0000017F, { { 0x0F, 0x37, 0x94, 0xA6, 0xCE, 0x23, 0xE3, 0x2E, 0x5E, 0x2B, 0x78, 0x5B, 0x66, 0xC8, 0xE5, 0x96 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2NpcShapeDataProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000018, 0x0000045D, { { 0x69, 0xE0, 0x5E, 0x86, 0xEB, 0x7D, 0x25, 0x95, 0xC2, 0xA0, 0xE9, 0xD5, 0x3A, 0x4A, 0x65, 0xBC } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseClassModifierFlagsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000F, 0x00000059, { { 0x17, 0x2B, 0x23, 0x14, 0x0F, 0x9D, 0x94, 0xD3, 0xBF, 0x94, 0x83, 0x0B, 0x79, 0xDB, 0xC0, 0xA9 } } } }, // EOB 1
- { UNK_LANG, kPlatformUnknown, { 0x0000000F, 0x00000083, { { 0x54, 0x68, 0xF4, 0x07, 0x3E, 0x2A, 0xD4, 0x06, 0xF3, 0x10, 0x88, 0x6C, 0xE3, 0x34, 0x08, 0x30 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterStepTable01Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000004, 0x00000200, { { 0x26, 0x86, 0x10, 0x04, 0xC1, 0x48, 0xDD, 0xC0, 0x9F, 0x92, 0xD6, 0x20, 0x38, 0x36, 0xE2, 0xDD } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterStepTable02Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000008, 0x00000400, { { 0x6E, 0x53, 0x3C, 0x7A, 0x11, 0x46, 0x8B, 0xDC, 0x73, 0x24, 0xF8, 0x13, 0xCB, 0x6C, 0x9B, 0xE6 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterStepTable1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x00000400, { { 0x8B, 0x4C, 0x6B, 0x86, 0x93, 0xDA, 0x82, 0x1B, 0x04, 0x23, 0x92, 0x5B, 0x79, 0xB9, 0xFB, 0x06 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterStepTable2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x00000601, { { 0xE4, 0x36, 0x12, 0x93, 0x44, 0xDE, 0x6E, 0xA0, 0x4B, 0x98, 0x4B, 0x47, 0x87, 0xE3, 0x40, 0xD4 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterStepTable3Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x000007F8, { { 0x00, 0x0C, 0xB0, 0xDA, 0xE1, 0xC8, 0x45, 0x11, 0x57, 0xE4, 0x72, 0xD2, 0x32, 0xC6, 0x16, 0x2B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterCloseAttPosTable1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000004, 0x00000006, { { 0x4F, 0x9D, 0x50, 0xDA, 0xA1, 0x75, 0xB0, 0xD5, 0x90, 0xCA, 0xFF, 0x3E, 0xB5, 0xE8, 0x0D, 0xAA } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterCloseAttPosTable21Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000008, 0x0000000C, { { 0x6A, 0xED, 0x15, 0xCE, 0x69, 0x54, 0x7D, 0x7B, 0x6D, 0xCE, 0xC7, 0x2A, 0x01, 0xD7, 0xDC, 0xB0 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterCloseAttPosTable22Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x00000018, { { 0x6D, 0xB9, 0x69, 0x4A, 0xE3, 0x72, 0x03, 0x5B, 0x5A, 0xBB, 0x15, 0x4A, 0xDA, 0xFB, 0x99, 0x87 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterCloseAttUnkTableProvider[] = {////
- { UNK_LANG, kPlatformUnknown, { 0x0000000C, 0x000007FE, { { 0xF0, 0xCB, 0x3A, 0x53, 0xDD, 0x59, 0x04, 0x87, 0x6F, 0x1B, 0x5A, 0x13, 0xBA, 0x78, 0x62, 0xEC } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterCloseAttChkTable1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x00000008, { { 0x93, 0x27, 0x19, 0xA7, 0xA7, 0x49, 0x0E, 0xC9, 0xED, 0x5C, 0x8F, 0x9F, 0xC2, 0x34, 0x62, 0x07 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterCloseAttChkTable2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x00000008, { { 0xEB, 0xF0, 0x27, 0x7E, 0xA8, 0x09, 0x3A, 0x95, 0x3B, 0x71, 0x2A, 0x43, 0x2E, 0xCF, 0x22, 0x0B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterCloseAttDstTable1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x00000018, { { 0x1E, 0xC9, 0x6C, 0x5D, 0xDF, 0xD4, 0xC0, 0x87, 0xAD, 0xEE, 0x86, 0x29, 0xD5, 0x3E, 0x8D, 0xB4 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterCloseAttDstTable2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000078, { { 0x4C, 0xA8, 0x2A, 0x53, 0xB3, 0xAA, 0x52, 0x96, 0x1D, 0xE8, 0x37, 0xDB, 0x4A, 0x77, 0xD8, 0x5B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterProximityTableProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000020, 0x00000030, { { 0x25, 0xFC, 0xA3, 0xEB, 0x44, 0x93, 0x9B, 0x33, 0xB5, 0x86, 0xC4, 0xCB, 0x17, 0xEF, 0x2D, 0x47 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseFindBlockMonstersTableProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000040, 0x00000088, { { 0x6F, 0xEE, 0x8B, 0x4C, 0x21, 0xF0, 0xC6, 0x4F, 0x1D, 0x05, 0x95, 0x41, 0xD7, 0xD6, 0x52, 0x66 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterDirChangeTableProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x0000180C, { { 0xCD, 0xBB, 0xFD, 0xAB, 0xFB, 0x1D, 0x5C, 0x0F, 0xA2, 0xAC, 0x32, 0xA9, 0xA1, 0x93, 0x2D, 0x1C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseMonsterDistAttStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000076, 0x00002965, { { 0x1A, 0x22, 0x50, 0x04, 0x27, 0x05, 0xE9, 0x61, 0xF9, 0x0A, 0xF0, 0x50, 0x01, 0x0E, 0x65, 0xB4 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000008C, 0x00003274, { { 0xE7, 0x24, 0x17, 0x13, 0x4F, 0xB3, 0xF9, 0xB7, 0x90, 0xFA, 0x3D, 0xFF, 0xA7, 0xFB, 0x3F, 0x1F } } } },
- { EN_ANY, kPlatformUnknown, { 0x00000054, 0x00001D03, { { 0xEB, 0x07, 0xD4, 0x22, 0xFD, 0xA0, 0x77, 0x80, 0x22, 0x04, 0x2E, 0x27, 0x7F, 0x64, 0x99, 0x4E } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000062, 0x000023E0, { { 0xB8, 0x03, 0x5C, 0x31, 0xCC, 0x18, 0xCD, 0x8D, 0x60, 0xD1, 0xFB, 0x5B, 0x66, 0xC2, 0x9A, 0x4C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseEncodeMonsterDefsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000150, 0x00001ACB, { { 0x73, 0x67, 0x5B, 0x64, 0x22, 0xDB, 0x08, 0x3A, 0xCD, 0xEB, 0x30, 0x28, 0xBD, 0xAD, 0xF8, 0x9B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoBBaseNpcPresetsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000088B, 0x000038D0, { { 0x2E, 0xAE, 0xF0, 0x2A, 0x71, 0x6F, 0x7C, 0x5C, 0xF5, 0xAF, 0xB8, 0xBB, 0x47, 0xE5, 0xB6, 0xC3 } } } }, // EOB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000816, 0x00002C8E, { { 0xAB, 0xEE, 0x18, 0x0E, 0x59, 0xF6, 0xE0, 0x26, 0x93, 0xAB, 0x3B, 0x23, 0x29, 0x7A, 0x2C, 0x97 } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2Npc1StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000000B, 0x000003B9, { { 0xB1, 0x67, 0x80, 0x21, 0x92, 0xDD, 0xFA, 0x4C, 0x4D, 0x64, 0x7C, 0x05, 0x08, 0xDC, 0x55, 0xFD } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000000D, 0x0000049E, { { 0x2D, 0x78, 0xF6, 0x20, 0x30, 0xEC, 0x62, 0x6E, 0x58, 0xF7, 0xC7, 0x6D, 0xD7, 0xBD, 0x70, 0x76 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2Npc2StringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x00000012, 0x0000064C, { { 0xB0, 0x66, 0x0D, 0xDE, 0x16, 0xEB, 0x5E, 0x51, 0xAF, 0x4D, 0x19, 0xD1, 0x1E, 0x0B, 0xCB, 0xD6 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000018, 0x000008FF, { { 0x59, 0x29, 0x01, 0x6F, 0xF0, 0x49, 0xC8, 0x57, 0x3E, 0x70, 0x01, 0x7E, 0x5E, 0xF2, 0xEB, 0x35 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2MonsterDustStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000001F, 0x00000AD7, { { 0x2B, 0x66, 0x27, 0xFD, 0xC6, 0x17, 0x0B, 0x6B, 0xFC, 0x7D, 0x7F, 0xD2, 0xC4, 0x12, 0x8F, 0x33 } } } },
- { DE_DEU, kPlatformUnknown, { 0x0000001F, 0x00000A91, { { 0x1D, 0x7D, 0xEE, 0xB8, 0x9B, 0x37, 0x2E, 0x64, 0x13, 0xB6, 0x39, 0xED, 0x88, 0xB6, 0x8B, 0xD7 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2DreamStepsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000E, 0x00000114, { { 0x27, 0x32, 0xCB, 0x89, 0x27, 0xC5, 0xDD, 0x91, 0xBE, 0x97, 0x62, 0xF5, 0x76, 0xF7, 0xCD, 0x25 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2KheldranStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000001A, 0x00000887, { { 0xA6, 0xB4, 0x45, 0x1B, 0x33, 0x54, 0x36, 0xAD, 0x1D, 0xB1, 0xDA, 0xC3, 0x12, 0x85, 0x3C, 0x58 } } } },
- { DE_DEU, kPlatformUnknown, { 0x00000012, 0x00000511, { { 0xEE, 0x21, 0xA8, 0x6E, 0xF7, 0xEC, 0x9A, 0x8D, 0xBA, 0x8D, 0xE3, 0x4A, 0x17, 0x15, 0xCA, 0x8C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2HornStringsProvider[] = {
- { EN_ANY, kPlatformUnknown, { 0x0000009A, 0x00003541, { { 0xA5, 0x4D, 0x88, 0xAC, 0x1C, 0xCD, 0x57, 0xD4, 0x1E, 0x9F, 0xAE, 0x13, 0x46, 0xAD, 0xA0, 0x22 } } } },
- { DE_DEU, kPlatformUnknown, { 0x000000AB, 0x00003B6C, { { 0x36, 0x34, 0xB3, 0xB1, 0x55, 0x66, 0x7A, 0x90, 0x97, 0x01, 0xDC, 0x4A, 0xAF, 0x17, 0x6B, 0x5A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2HornSoundsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000004, 0x00000106, { { 0x3E, 0x7B, 0x96, 0xFD, 0xCA, 0x4E, 0xA7, 0xA6, 0xB8, 0x82, 0x67, 0xCF, 0x93, 0x86, 0xE4, 0x45 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2WallOfForceDsXProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000024, 0x00000D67, { { 0x51, 0xCF, 0xAB, 0x1E, 0xB4, 0xE0, 0xE3, 0x44, 0x29, 0xD1, 0xDC, 0x82, 0xCD, 0x08, 0x50, 0xF5 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2WallOfForceDsYProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000003, 0x00000048, { { 0x45, 0xFC, 0xEA, 0x8C, 0x34, 0xD7, 0xBE, 0x74, 0x05, 0x03, 0xE6, 0x94, 0x34, 0xB5, 0x45, 0x4D } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2WallOfForceNumWProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000003, 0x00000006, { { 0x52, 0x89, 0xDF, 0x73, 0x7D, 0xF5, 0x73, 0x26, 0xFC, 0xDD, 0x22, 0x59, 0x7A, 0xFB, 0x1F, 0xAC } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2WallOfForceNumHProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000003, 0x00000011, { { 0x33, 0x86, 0x06, 0xBE, 0x8D, 0xC8, 0x37, 0x2D, 0x0F, 0x61, 0x97, 0xA4, 0x26, 0xA9, 0xBC, 0x60 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kEoB2WallOfForceShpIdProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000003, 0x00000006, { { 0x77, 0xAE, 0x9B, 0x52, 0x9E, 0xF7, 0xEB, 0x48, 0xA8, 0x5E, 0xED, 0xC2, 0x08, 0x53, 0xCE, 0x3C } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLIngamePakFilesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000088, 0x0000224F, { { 0xDA, 0x24, 0x18, 0xA3, 0xEF, 0x16, 0x70, 0x8F, 0xA8, 0xC2, 0x2E, 0xC2, 0xED, 0x39, 0x03, 0xD1 } } } },
- { UNK_LANG, kPlatformPC98, { 0x00000084, 0x00002125, { { 0x7A, 0x89, 0xE2, 0x36, 0xEC, 0x6F, 0x52, 0x2B, 0xEF, 0xBA, 0x3D, 0x28, 0x54, 0xDA, 0xFB, 0x72 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x0000009D, 0x00002179, { { 0x7D, 0x7A, 0xE1, 0xD9, 0x69, 0x23, 0x9D, 0xFF, 0x83, 0x39, 0x73, 0xEC, 0xF4, 0x26, 0x20, 0x8E } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCharacterDefsProvider[] = {
- { RU_RUS, kPlatformDOS, { 0x00000492, 0x000052BA, { { 0x52, 0x29, 0x0D, 0x49, 0xFD, 0x17, 0xD7, 0x70, 0x6D, 0xCA, 0xEB, 0xB6, 0x7E, 0xFA, 0xBE, 0x08 } } } }, // floppy
- { EN_ANY, kPlatformDOS, { 0x00000492, 0x000046B0, { { 0x7A, 0x94, 0x8B, 0xC6, 0xF7, 0xF1, 0x2F, 0xF3, 0xBC, 0x1B, 0x0B, 0x4E, 0x00, 0xC9, 0x44, 0x58 } } } }, // floppy
- { DE_DEU, kPlatformDOS, { 0x00000492, 0x000047FD, { { 0x8C, 0x0B, 0x8B, 0xCE, 0xE0, 0xB0, 0x8F, 0xA9, 0x06, 0xC3, 0x98, 0xE6, 0x2E, 0x09, 0xB6, 0x93 } } } }, // floppy
- { FR_FRA, kPlatformDOS, { 0x00000492, 0x000047FD, { { 0x8C, 0x0B, 0x8B, 0xCE, 0xE0, 0xB0, 0x8F, 0xA9, 0x06, 0xC3, 0x98, 0xE6, 0x2E, 0x09, 0xB6, 0x93 } } } }, // floppy
- { EN_ANY, kPlatformDOS, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD
- { DE_DEU, kPlatformDOS, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD
- { FR_FRA, kPlatformDOS, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD
- { RU_RUS, kPlatformDOS, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD
- { IT_ITA, kPlatformDOS, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD
- { JA_JPN, kPlatformPC98, { 0x00000492, 0x00005893, { { 0x7C, 0x7E, 0xFB, 0x80, 0xD9, 0xB6, 0x16, 0x87, 0x80, 0xB7, 0x46, 0x9B, 0x96, 0x1A, 0x6A, 0xBE } } } },
- { JA_JPN, kPlatformFMTowns, { 0x00000492, 0x00005041, { { 0xAB, 0x07, 0x37, 0xFE, 0xC2, 0x4B, 0x5D, 0x16, 0xE4, 0xC4, 0x2C, 0x8C, 0xC3, 0x78, 0xCB, 0xCB } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLIngameSfxFilesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000008F2, 0x0001E5B6, { { 0x63, 0x5E, 0x37, 0xAA, 0x27, 0x80, 0x4C, 0x85, 0xB1, 0x9D, 0x7B, 0x1D, 0x64, 0xA3, 0xEB, 0x97 } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x000008F2, 0x0001E5B7, { { 0x9E, 0xC8, 0xE8, 0x19, 0x2F, 0x58, 0x0B, 0xC7, 0x2D, 0x41, 0x72, 0xE7, 0xF4, 0x80, 0x03, 0xCB } } } }, // CD
- { UNK_LANG, kPlatformPC98, { 0x000008EF, 0x0001E585, { { 0x85, 0x81, 0x5C, 0xA4, 0x34, 0x44, 0xF4, 0x58, 0xF9, 0x82, 0xEE, 0x0F, 0x6A, 0x0D, 0xA2, 0x7F } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x000008F0, 0x0001E585, { { 0xB7, 0x82, 0xFF, 0xAB, 0x71, 0x54, 0xEB, 0x52, 0x8D, 0xAC, 0x9A, 0xB4, 0x9E, 0x33, 0x00, 0x95 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLIngameSfxIndexProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x000003E8, 0x0000E8D2, { { 0x19, 0x39, 0x17, 0xED, 0xAE, 0xDC, 0x7A, 0xAC, 0x45, 0x5F, 0x2D, 0xCD, 0x65, 0x8D, 0xAD, 0xAE } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMusicTrackMapProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000000F0, 0x0000210D, { { 0x55, 0x25, 0x3E, 0x35, 0xD2, 0xD8, 0x13, 0xE3, 0x1D, 0xB1, 0xB3, 0x00, 0x2E, 0x17, 0x91, 0x2F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLIngameGMSfxIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000000FA, 0x00006281, { { 0x25, 0x89, 0xB0, 0x3B, 0x12, 0x09, 0x02, 0xF6, 0xFE, 0x76, 0xD5, 0xC9, 0x5B, 0x88, 0xAC, 0xAA } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLIngameMT32SfxIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000000FA, 0x00006579, { { 0x16, 0x40, 0x1C, 0x09, 0x69, 0xA9, 0x0D, 0x6D, 0x4B, 0x0C, 0x99, 0xF0, 0x40, 0x5D, 0xBB, 0x6E } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLIngamePcSpkSfxIndexProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000000FA, 0x00005EFC, { { 0xA3, 0x5C, 0x69, 0xED, 0x13, 0xEC, 0x08, 0x0E, 0xFA, 0x72, 0x83, 0x0D, 0xD7, 0x8D, 0x9C, 0x70 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLSpellPropertiesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000118, 0x00000B06, { { 0x27, 0x69, 0x53, 0x01, 0xA0, 0xE3, 0x76, 0xAA, 0x33, 0xA4, 0x52, 0x11, 0x52, 0xB1, 0x0E, 0xDA } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLGameShapeMapProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000114, 0x000038D3, { { 0xB2, 0x8A, 0x5D, 0x9A, 0x51, 0x63, 0x4D, 0x65, 0xE4, 0xF5, 0xBA, 0x88, 0x70, 0x6C, 0xA6, 0xF8 } } } }, // floppy + PC98
- { UNK_LANG, kPlatformDOS, { 0x00000114, 0x00003B97, { { 0x29, 0xE5, 0x0F, 0x51, 0xF0, 0x10, 0x35, 0x3E, 0x70, 0x3A, 0xAA, 0xFE, 0xD7, 0xD5, 0xAA, 0x9F } } } }, // CD
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLSceneItemOffsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000008, 0x00000300, { { 0x69, 0x80, 0x5A, 0x3E, 0x63, 0xC1, 0x04, 0x60, 0x09, 0x2F, 0x49, 0xD7, 0x26, 0x32, 0xAA, 0xE2 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCharInvIndexProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000A, 0x00000006, { { 0x19, 0x79, 0x4E, 0xFC, 0x05, 0x14, 0x89, 0x23, 0xEB, 0xCA, 0x94, 0x50, 0xE8, 0xD3, 0x81, 0x24 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000005, 0x00000006, { { 0x54, 0x11, 0x01, 0x79, 0x4D, 0xED, 0xF9, 0xEA, 0xDF, 0x03, 0x51, 0xAB, 0x8D, 0x9D, 0x2F, 0x34 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCharInvDefsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000058, 0x00001D7A, { { 0x25, 0xE4, 0xEB, 0x6D, 0xBE, 0xEA, 0xBD, 0x9A, 0x9F, 0xA5, 0x9E, 0xEB, 0x3D, 0x03, 0x1D, 0x72 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCharDefsManProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000012, 0x0000003D, { { 0xEB, 0x82, 0x32, 0x9D, 0x76, 0xC8, 0x3D, 0x5E, 0x8C, 0x26, 0x53, 0xDF, 0xC1, 0xFD, 0x0F, 0xC5 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCharDefsWomanProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000012, 0x0000003D, { { 0xEB, 0x82, 0x32, 0x9D, 0x76, 0xC8, 0x3D, 0x5E, 0x8C, 0x26, 0x53, 0xDF, 0xC1, 0xFD, 0x0F, 0xC5 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCharDefsKieranProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000012, 0x000002E3, { { 0xBF, 0xB1, 0x0F, 0x40, 0xBF, 0xA1, 0xD0, 0x2B, 0xC9, 0x80, 0x35, 0x40, 0xA9, 0xA3, 0x01, 0xC8 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCharDefsAkshelProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000012, 0x000002FB, { { 0x47, 0x3C, 0x07, 0x15, 0x20, 0xE6, 0x90, 0x59, 0x55, 0xF2, 0xA7, 0xC3, 0x27, 0x22, 0xAB, 0xDC } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLExpRequirementsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000002C, 0x00000C0A, { { 0x3F, 0x36, 0xFA, 0xE3, 0xB0, 0x76, 0x5E, 0xFF, 0xE9, 0xBA, 0xDF, 0xD0, 0x9D, 0xFF, 0xDD, 0x27 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterModifiers1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x00000142, { { 0x62, 0x4B, 0x5E, 0x46, 0x64, 0xA4, 0x3A, 0xB7, 0x11, 0x14, 0xA8, 0x41, 0xAF, 0x4E, 0xE6, 0x58 } } } }, // floppy + PC98 + FM-TOWNS
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x000000E8, { { 0x94, 0xCB, 0xD2, 0xE4, 0xF4, 0xA8, 0x4D, 0x46, 0x2E, 0x84, 0x8C, 0x6F, 0xF9, 0x75, 0xD7, 0x28 } } } }, // CD
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterModifiers2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x000000C2, { { 0x89, 0x12, 0xA7, 0x0D, 0xD9, 0xC7, 0x5B, 0x03, 0xD4, 0x21, 0x6F, 0x0A, 0x1D, 0x83, 0x1B, 0x98 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterModifiers3Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x000000C2, { { 0x56, 0x4D, 0x82, 0xCC, 0x2C, 0x00, 0x1E, 0x9D, 0xF7, 0x64, 0xB7, 0x60, 0x63, 0x0A, 0x03, 0xD7 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterModifiers4Provider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000006, 0x00000082, { { 0xA8, 0xFC, 0xBB, 0x1B, 0xC0, 0x85, 0x3B, 0xEF, 0xDB, 0xDE, 0xB0, 0x98, 0x58, 0x34, 0x75, 0xE9 } } } }, // CD
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterShiftOffsetsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000020, 0x00000803, { { 0x30, 0x55, 0x74, 0x0D, 0xC7, 0x3B, 0xD9, 0x5C, 0x26, 0xF0, 0x4E, 0x8F, 0xE4, 0x4D, 0xCB, 0x2A } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterDirFlagsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x00000080, { { 0xE5, 0xA1, 0xE3, 0xCE, 0xA0, 0x5F, 0x15, 0xE9, 0x5B, 0x28, 0x90, 0xC0, 0xDF, 0x21, 0xEC, 0x24 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterScaleYProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000001E, 0x00000982, { { 0xE2, 0x71, 0x5F, 0x57, 0x4A, 0x8F, 0x50, 0xDB, 0x3E, 0xDA, 0xAB, 0x10, 0xEB, 0xDB, 0x0D, 0x14 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterScaleXProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000020, 0x00000918, { { 0xF6, 0x14, 0xE6, 0x48, 0x4E, 0x5B, 0x43, 0xCC, 0xCE, 0x4E, 0x98, 0x71, 0x5A, 0xC2, 0x00, 0x1E } } } },
- { UNK_LANG, kPlatformPC98, { 0x0000001D, 0x000008D2, { { 0x1C, 0x25, 0x38, 0xE2, 0xBB, 0xB2, 0xDB, 0x93, 0x1B, 0x25, 0xB6, 0x89, 0xA9, 0x9B, 0x0A, 0xFE } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x0000001D, 0x000008D2, { { 0x1C, 0x25, 0x38, 0xE2, 0xBB, 0xB2, 0xDB, 0x93, 0x1B, 0x25, 0xB6, 0x89, 0xA9, 0x9B, 0x0A, 0xFE } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMonsterScaleWHProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000082, 0x00001D2A, { { 0x85, 0x7E, 0x18, 0xDD, 0x74, 0x1C, 0x62, 0x6F, 0xF4, 0xE5, 0xAF, 0x65, 0xEC, 0x6A, 0x90, 0xAD } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLFlyingObjectShpProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000082, 0x00000252, { { 0xDE, 0x9D, 0x89, 0xAF, 0x0F, 0x50, 0x14, 0x60, 0x68, 0xAF, 0x19, 0xD8, 0x54, 0x8A, 0x36, 0x27 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000075, 0x00000252, { { 0xD7, 0xE5, 0x13, 0x67, 0xDB, 0x9C, 0xD4, 0x12, 0x0E, 0x99, 0x0D, 0x2A, 0x70, 0x17, 0x95, 0x89 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLInventoryDescProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000016, 0x0000082D, { { 0x86, 0xB4, 0xB9, 0x50, 0xB6, 0xDA, 0x29, 0xB2, 0xC0, 0x0D, 0x34, 0x3F, 0x8D, 0x88, 0xAA, 0xE4 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLLevelShpListProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000007F, 0x00002090, { { 0x17, 0x31, 0x8A, 0xB5, 0x9B, 0x3A, 0xDA, 0x16, 0x9E, 0xE3, 0xD1, 0x5F, 0xB4, 0x7B, 0xB2, 0x25 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000091, 0x00002090, { { 0x51, 0x79, 0x1D, 0x60, 0xB0, 0x71, 0xB8, 0xF2, 0xDD, 0xD4, 0x36, 0x1B, 0xF8, 0x15, 0xBF, 0xB7 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLLevelDatListProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000007F, 0x00001FB8, { { 0xF6, 0xE9, 0x98, 0x79, 0x51, 0xCA, 0xA0, 0x35, 0xE4, 0xD0, 0xA1, 0xCD, 0x23, 0x89, 0x7D, 0x11 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000091, 0x00001FB8, { { 0x65, 0x1A, 0x3E, 0x96, 0x96, 0xA9, 0x94, 0xD6, 0xD5, 0x21, 0xBE, 0x60, 0xB5, 0x83, 0xF0, 0xE5 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCompassDefsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000100, 0x000030EF, { { 0x6F, 0xF0, 0x46, 0x6E, 0xB3, 0x72, 0xCF, 0xC7, 0xE3, 0xAF, 0xBE, 0x63, 0xA1, 0x1C, 0x33, 0x20 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLItemPricesProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000005C, 0x00001251, { { 0x18, 0x62, 0x5E, 0xE2, 0xE4, 0x2A, 0xB0, 0xA0, 0x8B, 0x8D, 0x9D, 0x07, 0x5F, 0x83, 0x53, 0xF7 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLStashSetupProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000C, 0x0000001E, { { 0x1C, 0x93, 0x66, 0x56, 0xDB, 0xD7, 0xA4, 0xB3, 0xE7, 0x2F, 0xEA, 0x88, 0xE2, 0xC8, 0x79, 0xD0 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscWallsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000024, 0x00000A2A, { { 0xAC, 0x4E, 0x73, 0x2C, 0xB0, 0xEE, 0x24, 0x0E, 0x66, 0x8D, 0x48, 0xE5, 0xCA, 0x6B, 0x7F, 0x7F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscShapeIndexProvider[] = {
- // LOL:
- { UNK_LANG, kPlatformUnknown, { 0x00000024, 0x00000728, { { 0x14, 0xBA, 0x6D, 0x5C, 0x7D, 0x20, 0x0D, 0x35, 0xA7, 0xB0, 0x8D, 0x2F, 0x1D, 0x2A, 0x49, 0xA4 } } } },
- // EOB:
- { UNK_LANG, kPlatformUnknown, { 0x00000024, 0x00000632, { { 0xBE, 0x3E, 0x84, 0x71, 0x89, 0x04, 0xC9, 0x1D, 0xCF, 0xE4, 0x3B, 0xD8, 0x2A, 0xF4, 0x0F, 0x54 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscOvlMapProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000A, 0x0000001F, { { 0x9C, 0xF2, 0xCC, 0x48, 0x42, 0xC6, 0x76, 0x83, 0xD3, 0x1A, 0x43, 0x42, 0x7F, 0xEF, 0x19, 0x0F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscScaleWidthDataProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000048, 0x00000ABE, { { 0x28, 0x9A, 0xAA, 0x16, 0xC4, 0xFD, 0x52, 0xA9, 0x76, 0x98, 0x72, 0x0C, 0x2D, 0xE4, 0xB0, 0x57 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscScaleHeightDataProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000048, 0x000009E8, { { 0x25, 0x35, 0x07, 0xBC, 0xF9, 0x82, 0x8B, 0x5B, 0x67, 0x7C, 0x38, 0xD1, 0xF8, 0x35, 0x81, 0xC7 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscXProvider[] = {
- // LOL
- { UNK_LANG, kPlatformUnknown, { 0x00000048, 0x00001468, { { 0x55, 0xC5, 0x30, 0x76, 0x0A, 0xDC, 0xEC, 0xAB, 0x68, 0x9B, 0x61, 0xF0, 0x58, 0x78, 0x56, 0xA6 } } } },
- // EOB
- { UNK_LANG, kPlatformUnknown, { 0x00000024, 0x00000BFA, { { 0x5F, 0x86, 0x9B, 0xDA, 0x5D, 0x6E, 0xC0, 0xB9, 0x29, 0x82, 0xA5, 0xD7, 0xC9, 0x34, 0x90, 0x63 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscYProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000024, 0x00000282, { { 0x09, 0x98, 0x3A, 0x33, 0x15, 0xA1, 0x4A, 0xFF, 0x76, 0x19, 0x2B, 0xB1, 0x74, 0x89, 0xF4, 0x37 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscTileIndexProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000012, 0x00000099, { { 0x18, 0xD9, 0x39, 0x27, 0x5B, 0x34, 0xAE, 0x7C, 0xA9, 0xA9, 0xDB, 0x42, 0x49, 0x61, 0x6B, 0x37 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscUnk2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000017, 0x000000D2, { { 0xDE, 0xDA, 0x75, 0x15, 0x2B, 0xDC, 0x90, 0x3F, 0xC9, 0x92, 0x04, 0x01, 0x23, 0x7A, 0xDA, 0x2E } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDoorShapeIndexProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000017, 0x0000000A, { { 0x2E, 0xC4, 0xA1, 0x47, 0x7C, 0xAE, 0xAD, 0xD8, 0x8A, 0x72, 0x95, 0x2F, 0x18, 0xC5, 0x08, 0x19 } } } }, // LOL
- { UNK_LANG, kPlatformUnknown, { 0x00000020, 0x00000021, { { 0xE3, 0x00, 0x85, 0x1C, 0x13, 0xCE, 0x5D, 0xA7, 0xA2, 0x93, 0x9B, 0x56, 0x1A, 0x0C, 0x43, 0x3E } } } }, // EOB 1
- { UNK_LANG, kPlatformUnknown, { 0x00000035, 0x0000000B, { { 0xC2, 0xBC, 0xCA, 0x95, 0x69, 0xE8, 0x3F, 0x1F, 0xC2, 0x1C, 0x37, 0x90, 0x63, 0x8F, 0xE6, 0x1D } } } }, // EOB 2
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDimData1Provider[] = {
- // LOL
- { UNK_LANG, kPlatformUnknown, { 0x00000144, 0x0001007D, { { 0x18, 0x3D, 0xA5, 0xF7, 0x1A, 0x5A, 0x90, 0xA7, 0x4E, 0x66, 0x1A, 0x4E, 0x0C, 0x69, 0x58, 0x31 } } } },
- // EOB
- { UNK_LANG, kPlatformUnknown, { 0x00000144, 0x00010115, { { 0x89, 0x37, 0x1C, 0x85, 0x53, 0xEE, 0xC0, 0xEC, 0x17, 0x26, 0x0B, 0xE5, 0xCC, 0x9C, 0x30, 0x58 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDimData2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000288, 0x00001BC2, { { 0x30, 0xD1, 0xD1, 0x35, 0x74, 0x2C, 0x86, 0x81, 0x23, 0xE2, 0x05, 0xCE, 0x75, 0x60, 0x3C, 0x55 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscBlockMapProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000C, 0x00000012, { { 0x01, 0xEE, 0x32, 0xA6, 0x71, 0x15, 0x8D, 0xFB, 0x33, 0xF2, 0xD6, 0x8A, 0x30, 0x00, 0x10, 0x4B } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDimMapProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000012, 0x00000014, { { 0x4D, 0x53, 0x2E, 0xF2, 0xA3, 0xF9, 0xE2, 0xEC, 0x44, 0xBE, 0x5F, 0x04, 0x91, 0xF8, 0xE1, 0x04 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscOvlIndexProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000028, 0x00000048, { { 0x3E, 0x8E, 0x62, 0xAF, 0xD1, 0x28, 0x39, 0x73, 0x0D, 0xD8, 0x4A, 0xA7, 0xF4, 0xD7, 0x32, 0x25 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscBlockIndexProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000048, 0x00002200, { { 0xF4, 0x8B, 0x32, 0xC3, 0xD3, 0xFB, 0x46, 0xF2, 0xB8, 0x3A, 0x58, 0x39, 0x94, 0x57, 0x97, 0x4B } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDoorY2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000080, 0x00000348, { { 0xC6, 0x58, 0x8B, 0xFE, 0x18, 0x72, 0x47, 0xF1, 0xB6, 0x3A, 0x0F, 0xFB, 0x3D, 0x99, 0x74, 0xD0 } } } }, // LOL
- { UNK_LANG, kPlatformUnknown, { 0x00000004, 0x00000046, { { 0x35, 0x36, 0xBC, 0xD8, 0x63, 0x25, 0x31, 0xA9, 0x61, 0x8E, 0xF6, 0x54, 0x4A, 0x79, 0x17, 0xF8 } } } }, // EOB
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDoorFrameY1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000020, 0x0000053B, { { 0xF0, 0x9E, 0xC5, 0xB1, 0xEA, 0x5A, 0x58, 0xBD, 0xAC, 0x7B, 0xB2, 0xD4, 0xFE, 0x3F, 0x4F, 0x51 } } } }, // EOB I
- { UNK_LANG, kPlatformUnknown, { 0x00000004, 0x00000046, { { 0xD4, 0xA4, 0xEC, 0xA2, 0x99, 0xB6, 0x5E, 0x12, 0x98, 0xFF, 0xF2, 0x55, 0xC8, 0xBD, 0xC5, 0x8F } } } }, // EOB II
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDoorFrameY2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000020, 0x0000053B, { { 0xF0, 0x9E, 0xC5, 0xB1, 0xEA, 0x5A, 0x58, 0xBD, 0xAC, 0x7B, 0xB2, 0xD4, 0xFE, 0x3F, 0x4F, 0x51 } } } }, // EOB I
- { UNK_LANG, kPlatformUnknown, { 0x00000004, 0x00000150, { { 0x49, 0x7E, 0xF4, 0xDF, 0x8D, 0x04, 0x0A, 0xCE, 0x49, 0xBB, 0xA2, 0x1D, 0x8D, 0xC2, 0x14, 0x9E } } } }, // EOB II
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDoorFrameIndex1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000C, 0x00000058, { { 0xC9, 0xAF, 0x1F, 0x68, 0xF1, 0xDE, 0x96, 0x9B, 0x3B, 0xCB, 0x56, 0xEC, 0x2E, 0x62, 0x9A, 0x0A } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kRpgCommonDscDoorFrameIndex2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000C, 0x000000E8, { { 0x8C, 0x10, 0x56, 0xEA, 0x4D, 0x1A, 0x9C, 0xB2, 0x55, 0x54, 0xA5, 0x61, 0x1D, 0x19, 0x4E, 0x50 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscDoorScaleProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000010, 0x0000024C, { { 0x8D, 0x83, 0x26, 0xEE, 0xDC, 0xF7, 0x13, 0xC0, 0xAA, 0x88, 0xC2, 0xAA, 0x66, 0xA7, 0x59, 0x41 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscDoor4Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000008, 0x00000103, { { 0x29, 0xC0, 0x4B, 0x7F, 0x36, 0x23, 0xBB, 0x38, 0x4C, 0x83, 0xC6, 0x9D, 0xB4, 0x8F, 0x29, 0x2E } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000008, 0x0000000F, { { 0x9C, 0x6B, 0xAF, 0x69, 0x42, 0xC9, 0xC9, 0xA0, 0xD9, 0xF3, 0x54, 0xD9, 0x9A, 0xAF, 0xCF, 0xD8 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscDoorXProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000480, 0x0001654D, { { 0x2A, 0x1F, 0xBF, 0xE3, 0xC4, 0xEF, 0x7E, 0xD1, 0x61, 0x51, 0xFE, 0x88, 0x8D, 0x1F, 0x59, 0x70 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLDscDoorYProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000480, 0x00026666, { { 0x06, 0xBF, 0xA4, 0xD4, 0x6E, 0x29, 0x42, 0xA2, 0xA0, 0x8E, 0x3C, 0x14, 0xF3, 0xD6, 0x3F, 0x87 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLScrollXTopProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000A, 0x0000004B, { { 0x18, 0x1E, 0x6E, 0xE9, 0x34, 0xF0, 0x02, 0xC6, 0x57, 0x34, 0xDF, 0x55, 0xD9, 0x39, 0xE8, 0x98 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLScrollYTopProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000A, 0x00000022, { { 0xF3, 0x20, 0x5A, 0xC1, 0xBB, 0x0C, 0x79, 0x52, 0x23, 0xC1, 0x36, 0x81, 0x70, 0x2F, 0x92, 0xFC } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLScrollXBottomProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000A, 0x0000004B, { { 0x18, 0x1E, 0x6E, 0xE9, 0x34, 0xF0, 0x02, 0xC6, 0x57, 0x34, 0xDF, 0x55, 0xD9, 0x39, 0xE8, 0x98 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLScrollYBottomProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000000A, 0x0000003C, { { 0x5B, 0x4F, 0xB7, 0xB5, 0x55, 0xA2, 0x9A, 0x21, 0xEF, 0xB4, 0x98, 0x47, 0x05, 0x57, 0x49, 0x55 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonDefsProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x0000082A, 0x0000CAAE, { { 0xC1, 0x83, 0x0D, 0xA0, 0x66, 0x16, 0x3D, 0x31, 0xCE, 0x30, 0x9F, 0x4E, 0x00, 0x65, 0x5A, 0xC8 } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x0000082A, 0x0000C34E, { { 0x7F, 0x9A, 0x0F, 0x28, 0x1A, 0x8F, 0x03, 0x46, 0x48, 0xEB, 0xC9, 0xB9, 0x23, 0x29, 0x5E, 0x50 } } } }, // floppy
- { UNK_LANG, kPlatformDOS, { 0x0000082A, 0x0000C47B, { { 0xDF, 0x1A, 0x18, 0x1F, 0x58, 0x05, 0x1F, 0x56, 0xD8, 0x6D, 0xBB, 0x93, 0xEC, 0x35, 0x9D, 0xA5 } } } }, // CD
- { UNK_LANG, kPlatformPC98, { 0x0000082A, 0x0000AB58, { { 0xDD, 0x2B, 0xA9, 0x54, 0x60, 0x25, 0x2C, 0x74, 0xF8, 0x5D, 0xC6, 0xD2, 0x2C, 0x1A, 0x24, 0x44 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x0000082A, 0x0000D271, { { 0xAF, 0xAD, 0x11, 0xF9, 0xDC, 0x41, 0x94, 0xB3, 0x0E, 0x48, 0x69, 0xB3, 0x32, 0x89, 0x7C, 0xDD } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonList1Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000050, 0x00000A37, { { 0x0F, 0x73, 0xEC, 0xDD, 0xAB, 0xFF, 0x49, 0x46, 0x5E, 0x8F, 0x0D, 0xC3, 0xE7, 0x1B, 0x89, 0x51 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000028, 0x00000938, { { 0x4B, 0xD9, 0x4A, 0x57, 0x58, 0xEC, 0x01, 0xE5, 0xA1, 0x25, 0x6A, 0x1A, 0x9C, 0x5D, 0x79, 0x19 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonList2Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000001E, 0x00000522, { { 0xEA, 0x41, 0x46, 0xE2, 0xFE, 0xAA, 0x7D, 0x5E, 0x89, 0x7F, 0xBF, 0x9B, 0x30, 0x60, 0x74, 0xF3 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x0000000F, 0x00000423, { { 0xD3, 0xA8, 0xD4, 0xFB, 0x1A, 0x56, 0x21, 0x8C, 0x01, 0xED, 0xF8, 0x54, 0xA9, 0xC5, 0x97, 0x04 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonList3Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000004, 0x0000023E, { { 0x70, 0xAA, 0xCA, 0xAC, 0x5C, 0x21, 0xCF, 0xA5, 0xBF, 0x7F, 0x5F, 0xBC, 0xF1, 0x24, 0x8A, 0xAF } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000002, 0x0000013F, { { 0xDF, 0xE4, 0x3D, 0x18, 0x94, 0x18, 0xA5, 0x74, 0xBA, 0x26, 0x7B, 0x31, 0x87, 0xAE, 0xEE, 0x22 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonList4Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000001E, 0x0000054D, { { 0x19, 0x2A, 0xBE, 0x7F, 0x94, 0x10, 0xA0, 0x60, 0x2A, 0x33, 0xD6, 0x11, 0x85, 0xF0, 0xA4, 0xA9 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x0000000F, 0x0000044E, { { 0x18, 0x1E, 0xBB, 0x7D, 0xAC, 0xA1, 0x87, 0x0F, 0x32, 0xA3, 0xBF, 0x5F, 0xBC, 0xBB, 0x90, 0xA4 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonList5Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000020, 0x0000045D, { { 0xE3, 0x7C, 0xC2, 0x36, 0x21, 0x46, 0xDB, 0xF3, 0xDD, 0x38, 0x4B, 0x40, 0xE0, 0x35, 0x09, 0xC3 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000010, 0x0000035E, { { 0x4E, 0xE2, 0xD6, 0x93, 0xA3, 0xEF, 0xD0, 0xEA, 0x28, 0xE6, 0xE7, 0xDD, 0xFC, 0x44, 0xE2, 0xB9 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonList6Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000001C, 0x000004C4, { { 0x21, 0x7C, 0x29, 0x3F, 0x95, 0x6F, 0x91, 0x8C, 0xB2, 0x30, 0x09, 0xA6, 0x7B, 0x48, 0x44, 0x8F } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x0000000E, 0x000003C5, { { 0x05, 0x10, 0x83, 0x1E, 0x18, 0x11, 0xC4, 0x43, 0x01, 0xE3, 0xE0, 0xD7, 0x79, 0x29, 0xA5, 0x86 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonList7Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000006, 0x0000021D, { { 0xDC, 0xCE, 0x1B, 0xEB, 0x11, 0x6D, 0xDE, 0x37, 0x17, 0xC8, 0x06, 0x51, 0xC3, 0x0C, 0xCB, 0xA6 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000003, 0x0000011E, { { 0xCF, 0x37, 0xEF, 0x83, 0xEC, 0x0D, 0x65, 0x41, 0xC8, 0x1D, 0xD1, 0x20, 0x82, 0x6B, 0xB5, 0x9B } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLButtonList8Provider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000004, 0x00000253, { { 0x0C, 0x7B, 0x10, 0x99, 0x93, 0xD0, 0x33, 0xCA, 0xAB, 0x8D, 0x7E, 0x24, 0xE5, 0x7E, 0x6C, 0x91 } } } },
- { UNK_LANG, kPlatformFMTowns, { 0x00000002, 0x00000154, { { 0xE9, 0x6B, 0x8A, 0xD7, 0x8E, 0xCF, 0x66, 0x07, 0xDC, 0xF1, 0xC0, 0xAA, 0x81, 0x88, 0xB8, 0xB9 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLLegendDataProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000030, 0x00000858, { { 0x63, 0x5E, 0x60, 0xC7, 0x62, 0x2C, 0x5D, 0x8F, 0x74, 0x71, 0x98, 0xB7, 0x09, 0xD2, 0x51, 0xC7 } } } },
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x00000A52, { { 0x81, 0xC5, 0xA4, 0xE7, 0x60, 0xDA, 0xD6, 0x5E, 0x19, 0xAB, 0xF3, 0xC7, 0xDD, 0xDB, 0x92, 0x5E } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMapCursorOvlProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x00000019, 0x000009CD, { { 0xF6, 0xD2, 0xFA, 0x36, 0x62, 0x95, 0x1D, 0x99, 0x7F, 0x11, 0x5F, 0xA8, 0x4D, 0x47, 0x72, 0x40 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLMapStringIdProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x0000003C, 0x00000CFB, { { 0xE3, 0xC3, 0x41, 0x06, 0xD1, 0x71, 0x77, 0x78, 0xAD, 0x39, 0xAE, 0x2C, 0x16, 0x21, 0x45, 0xB7 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLSpellbookAnimProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000038, 0x000003A1, { { 0x50, 0xA0, 0xF6, 0xA7, 0x53, 0x96, 0x86, 0x49, 0xB0, 0x8D, 0xA8, 0xB2, 0x2D, 0x9A, 0xE2, 0x1F } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLSpellbookCoordsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000018, 0x0000018F, { { 0xA5, 0xF6, 0x8A, 0x58, 0x9A, 0xC7, 0x3C, 0x3A, 0xB5, 0x87, 0x89, 0x87, 0x73, 0x51, 0x9B, 0x1B } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLHealShapeFramesProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000050, 0x000000F4, { { 0xC9, 0x6E, 0x39, 0xE1, 0xD7, 0xAD, 0x10, 0x4F, 0xE2, 0xFE, 0xDC, 0xAD, 0x00, 0x9D, 0x41, 0xEF } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLLightningDefsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000014, 0x00000385, { { 0x68, 0x39, 0x65, 0xCB, 0xA9, 0x80, 0x90, 0xFB, 0xDD, 0x77, 0x0C, 0x76, 0x5A, 0xB5, 0x05, 0x03 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLFireballCoordsProvider[] = {
- { UNK_LANG, kPlatformUnknown, { 0x00000200, 0x0000FD81, { { 0xB3, 0xE0, 0x6F, 0x89, 0xCD, 0xE5, 0xA9, 0x6A, 0x4B, 0x61, 0x7A, 0x3F, 0x47, 0x26, 0x73, 0x58 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLCreditsProvider[] = {
- { JA_JPN , kPlatformPC98, { 0x000005E7, 0x0001A1B0, { { 0x2A, 0xD0, 0x38, 0x84, 0x0C, 0x38, 0xCB, 0x52, 0x5D, 0x82, 0xBE, 0x03, 0x76, 0xFA, 0x0A, 0x4A } } } },
- { JA_JPN , kPlatformFMTowns, { 0x000005EC, 0x0001A219, { { 0x03, 0xBC, 0x67, 0x19, 0xA1, 0x99, 0x70, 0x10, 0x7A, 0x73, 0x85, 0xDA, 0xB4, 0x59, 0x49, 0xB0 } } } },
- EXTRACT_END_ENTRY
-};
-
-const ExtractEntrySearchData kLoLHistoryProvider[] = {
- { UNK_LANG, kPlatformDOS, { 0x000001D1, 0x00007F9B, { { 0x25, 0x10, 0x86, 0x40, 0xAC, 0x53, 0xFE, 0x11, 0x4D, 0xE2, 0xD9, 0x35, 0xD6, 0x89, 0xBB, 0x09 } } } },
-
- EXTRACT_END_ENTRY
-};
-
-// Provider tables
-
-struct ExtractEntry {
- int id;
- const ExtractEntrySearchData *providers;
-};
-
-const ExtractEntry extractProviders[] = {
- { k1ForestSeq, k1ForestSeqProvider },
- { k1KallakWritingSeq, k1KallakWritingSeqProvider },
- { k1KyrandiaLogoSeq, k1KyrandiaLogoSeqProvider },
- { k1KallakMalcolmSeq, k1KallakMalcolmSeqProvider },
- { k1MalcolmTreeSeq, k1MalcolmTreeSeqProvider },
- { k1WestwoodLogoSeq, k1WestwoodLogoSeqProvider },
- { k1Demo1Seq, k1Demo1SeqProvider },
- { k1Demo2Seq, k1Demo2SeqProvider },
- { k1Demo3Seq, k1Demo3SeqProvider },
- { k1Demo4Seq, k1Demo4SeqProvider },
- { k1AmuleteAnimSeq, k1AmuleteAnimSeqProvider },
- { k1OutroReunionSeq, k1OutroReunionSeqProvider },
- { k1IntroCPSStrings, k1IntroCPSStringsProvider },
- { k1IntroCOLStrings, k1IntroCOLStringsProvider },
- { k1IntroWSAStrings, k1IntroWSAStringsProvider },
- { k1IntroStrings, k1IntroStringsProvider },
- { k1OutroHomeString, k1OutroHomeStringProvider },
- { k1RoomFilenames, k1RoomFilenamesProvider },
- { k1RoomList, k1RoomListProvider },
- { k1CharacterImageFilenames, k1CharacterImageFilenamesProvider },
- { k1AudioTracks, k1AudioTracksProvider },
- { k1AudioTracks2, k1AudioTracks2Provider },
- { k1AudioTracksIntro, k1AudioTracksIntroProvider },
- { k1ItemNames, k1ItemNamesProvider },
- { k1TakenStrings, k1TakenStringsProvider },
- { k1PlacedStrings, k1PlacedStringsProvider },
- { k1DroppedStrings, k1DroppedStringsProvider },
- { k1NoDropStrings, k1NoDropStringsProvider },
- { k1PutDownString, k1PutDownStringProvider },
- { k1WaitAmuletString, k1WaitAmuletStringProvider },
- { k1BlackJewelString, k1BlackJewelStringProvider },
- { k1PoisonGoneString, k1PoisonGoneStringProvider },
- { k1HealingTipString, k1HealingTipStringProvider },
- { k1WispJewelStrings, k1WispJewelStringsProvider },
- { k1MagicJewelStrings, k1MagicJewelStringsProvider },
- { k1ThePoisonStrings, k1ThePoisonStringsProvider },
- { k1FluteStrings, k1FluteStringsProvider },
- { k1FlaskFullString, k1FlaskFullStringProvider },
- { k1FullFlaskString, k1FullFlaskStringProvider },
- { k1VeryCleverString, k1VeryCleverStringProvider },
- { k1NewGameString, k1NewGameStringProvider },
- { k1DefaultShapes, k1DefaultShapesProvider },
- { k1Healing1Shapes, k1Healing1ShapesProvider },
- { k1Healing2Shapes, k1Healing2ShapesProvider },
- { k1PoisonDeathShapes, k1PoisonDeathShapesProvider },
- { k1FluteShapes, k1FluteShapesProvider },
- { k1Winter1Shapes, k1Winter1ShapesProvider },
- { k1Winter2Shapes, k1Winter2ShapesProvider },
- { k1Winter3Shapes, k1Winter3ShapesProvider },
- { k1DrinkShapes, k1DrinkShapesProvider },
- { k1WispShapes, k1WispShapesProvider },
- { k1MagicAnimShapes, k1MagicAnimShapesProvider },
- { k1BranStoneShapes, k1BranStoneShapesProvider },
- { k1SpecialPalette1, k1SpecialPalette1Provider },
- { k1SpecialPalette2, k1SpecialPalette2Provider },
- { k1SpecialPalette3, k1SpecialPalette3Provider },
- { k1SpecialPalette4, k1SpecialPalette4Provider },
- { k1SpecialPalette5, k1SpecialPalette5Provider },
- { k1SpecialPalette6, k1SpecialPalette6Provider },
- { k1SpecialPalette7, k1SpecialPalette7Provider },
- { k1SpecialPalette8, k1SpecialPalette8Provider },
- { k1SpecialPalette9, k1SpecialPalette9Provider },
- { k1SpecialPalette10, k1SpecialPalette10Provider },
- { k1SpecialPalette11, k1SpecialPalette11Provider },
- { k1SpecialPalette12, k1SpecialPalette12Provider },
- { k1SpecialPalette13, k1SpecialPalette13Provider },
- { k1SpecialPalette14, k1SpecialPalette14Provider },
- { k1SpecialPalette15, k1SpecialPalette15Provider },
- { k1SpecialPalette16, k1SpecialPalette16Provider },
- { k1SpecialPalette17, k1SpecialPalette17Provider },
- { k1SpecialPalette18, k1SpecialPalette18Provider },
- { k1SpecialPalette19, k1SpecialPalette19Provider },
- { k1SpecialPalette20, k1SpecialPalette20Provider },
- { k1SpecialPalette21, k1SpecialPalette21Provider },
- { k1SpecialPalette22, k1SpecialPalette22Provider },
- { k1SpecialPalette23, k1SpecialPalette23Provider },
- { k1SpecialPalette24, k1SpecialPalette24Provider },
- { k1SpecialPalette25, k1SpecialPalette25Provider },
- { k1SpecialPalette26, k1SpecialPalette26Provider },
- { k1SpecialPalette27, k1SpecialPalette27Provider },
- { k1SpecialPalette28, k1SpecialPalette28Provider },
- { k1SpecialPalette29, k1SpecialPalette29Provider },
- { k1SpecialPalette30, k1SpecialPalette30Provider },
- { k1SpecialPalette31, k1SpecialPalette31Provider },
- { k1SpecialPalette32, k1SpecialPalette32Provider },
- { k1SpecialPalette33, k1SpecialPalette33Provider },
- { k1GUIStrings, k1GUIStringsProvider },
- { k1ConfigStrings, k1ConfigStringsProvider },
- { k1TownsMusicFadeTable, k1TownsMusicFadeTableProvider },
- { k1TownsSFXwdTable, k1TownsSFXwdTableProvider },
- { k1TownsSFXbtTable, k1TownsSFXbtTableProvider },
- { k1TownsCDATable, k1TownsCDATableProvider },
- { k1PC98StoryStrings, k1PC98StoryStringsProvider },
- { k1PC98IntroSfx, k1PC98IntroSfxProvider },
- { k1CreditsStrings, k1CreditsStringsProvider },
- { k1AmigaIntroSFXTable, k1AmigaIntroSFXTableProvider },
- { k1AmigaGameSFXTable, k1AmigaGameSFXTableProvider },
- { k2SeqplayPakFiles, k2SeqplayPakFilesProvider },
- { k2SeqplayStrings, k2SeqplayStringsProvider },
- { k2SeqplaySfxFiles, k2SeqplaySfxFilesProvider },
- { k2SeqplayTlkFiles, k2SeqplayTlkFilesProvider },
- { k2SeqplaySeqData, k2SeqplaySeqDataProvider },
- { k2SeqplayCredits, k2SeqplayCreditsProvider },
- { k2SeqplayCreditsSpecial, k2SeqplayCreditsSpecialProvider },
- { k2SeqplayIntroTracks, k2SeqplayIntroTracksProvider },
- { k2SeqplayFinaleTracks, k2SeqplayFinaleTracksProvider },
- { k2SeqplayIntroCDA, k2SeqplayIntroCDAProvider },
- { k2SeqplayFinaleCDA, k2SeqplayFinaleCDAProvider },
- { k2SeqplayShapeAnimData, k2SeqplayShapeAnimDataProvider },
- { k2IngamePakFiles, k2IngamePakFilesProvider },
- { k2IngameSfxFiles, k2IngameSfxFilesProvider },
- { k2IngameSfxIndex, k2IngameSfxIndexProvider },
- { k2IngameTracks, k2IngameTracksProvider },
- { k2IngameCDA, k2IngameCDAProvider },
- { k2IngameTalkObjIndex, k2IngameTalkObjIndexProvider },
- { k2IngameTimJpStrings, k2IngameTimJpStringsProvider },
- { k2IngameShapeAnimData, k2IngameShapeAnimDataProvider },
- { k2IngameTlkDemoStrings, k2IngameTlkDemoStringsProvider },
- { k3MainMenuStrings, k3MainMenuStringsProvider },
- { k3MusicFiles, k3MusicFilesProvider },
- { k3ScoreTable, k3ScoreTableProvider },
- { k3SfxFiles, k3SfxFilesProvider },
- { k3SfxMap, k3SfxMapProvider },
- { k3ItemAnimData, k3ItemAnimDataProvider },
- { k3ItemMagicTable, k3ItemMagicTableProvider },
- { k3ItemStringMap, k3ItemStringMapProvider },
-
- { kEoBBaseChargenStrings1, kEoBBaseChargenStrings1Provider },
- { kEoBBaseChargenStrings2, kEoBBaseChargenStrings2Provider },
- { kEoBBaseChargenStartLevels, kEoBBaseChargenStartLevelsProvider },
- { kEoBBaseChargenStatStrings, kEoBBaseChargenStatStringsProvider },
- { kEoBBaseChargenRaceSexStrings, kEoBBaseChargenRaceSexStringsProvider },
- { kEoBBaseChargenClassStrings, kEoBBaseChargenClassStringsProvider },
- { kEoBBaseChargenAlignmentStrings, kEoBBaseChargenAlignmentStringsProvider },
- { kEoBBaseChargenEnterGameStrings, kEoBBaseChargenEnterGameStringsProvider },
- { kEoBBaseChargenClassMinStats, kEoBBaseChargenClassMinStatsProvider },
- { kEoBBaseChargenRaceMinStats, kEoBBaseChargenRaceMinStatsProvider },
- { kEoBBaseChargenRaceMaxStats, kEoBBaseChargenRaceMaxStatsProvider },
-
- { kEoBBaseSaveThrowTable1, kEoBBaseSaveThrowTable1Provider },
- { kEoBBaseSaveThrowTable2, kEoBBaseSaveThrowTable2Provider },
- { kEoBBaseSaveThrowTable3, kEoBBaseSaveThrowTable3Provider },
- { kEoBBaseSaveThrowTable4, kEoBBaseSaveThrowTable4Provider },
- { kEoBBaseSaveThrwLvlIndex, kEoBBaseSaveThrwLvlIndexProvider },
- { kEoBBaseSaveThrwModDiv, kEoBBaseSaveThrwModDivProvider },
- { kEoBBaseSaveThrwModExt, kEoBBaseSaveThrwModExtProvider },
-
- { kEoBBasePryDoorStrings, kEoBBasePryDoorStringsProvider },
- { kEoBBaseWarningStrings, kEoBBaseWarningStringsProvider },
-
- { kEoBBaseItemSuffixStringsRings, kEoBBaseItemSuffixStringsRingsProvider },
- { kEoBBaseItemSuffixStringsPotions, kEoBBaseItemSuffixStringsPotionsProvider },
- { kEoBBaseItemSuffixStringsWands, kEoBBaseItemSuffixStringsWandsProvider },
-
- { kEoBBaseRipItemStrings, kEoBBaseRipItemStringsProvider },
- { kEoBBaseCursedString, kEoBBaseCursedStringProvider },
- { kEoBBaseEnchantedString, kEoBBaseEnchantedStringProvider },
- { kEoBBaseMagicObjectStrings, kEoBBaseMagicObjectStringsProvider },
- { kEoBBaseMagicObject5String, kEoBBaseMagicObject5StringProvider },
- { kEoBBasePatternSuffix, kEoBBasePatternSuffixProvider },
- { kEoBBasePatternGrFix1, kEoBBasePatternGrFix1Provider },
- { kEoBBasePatternGrFix2, kEoBBasePatternGrFix2Provider },
- { kEoBBaseValidateArmorString, kEoBBaseValidateArmorStringProvider },
- { kEoBBaseValidateCursedString, kEoBBaseValidateCursedStringProvider },
- { kEoBBaseValidateNoDropString, kEoBBaseValidateNoDropStringProvider },
- { kEoBBasePotionStrings, kEoBBasePotionStringsProvider },
- { kEoBBaseWandString, kEoBBaseWandStringProvider },
- { kEoBBaseItemMisuseStrings, kEoBBaseItemMisuseStringsProvider },
-
- { kEoBBaseTakenStrings, kEoBBaseTakenStringsProvider },
- { kEoBBasePotionEffectStrings, kEoBBasePotionEffectStringsProvider },
-
- { kEoBBaseYesNoStrings, kEoBBaseYesNoStringsProvider },
- { kRpgCommonMoreStrings, kRpgCommonMoreStringsProvider },
- { kEoBBaseNpcMaxStrings, kEoBBaseNpcMaxStringsProvider },
- { kEoBBaseOkStrings, kEoBBaseOkStringsProvider },
- { kEoBBaseNpcJoinStrings, kEoBBaseNpcJoinStringsProvider },
- { kEoBBaseCancelStrings, kEoBBaseCancelStringsProvider },
- { kEoBBaseAbortStrings, kEoBBaseAbortStringsProvider },
-
- { kEoBBaseMenuStringsMain, kEoBBaseMenuStringsMainProvider },
- { kEoBBaseMenuStringsSaveLoad, kEoBBaseMenuStringsSaveLoadProvider },
- { kEoBBaseMenuStringsOnOff, kEoBBaseMenuStringsOnOffProvider },
- { kEoBBaseMenuStringsSpells, kEoBBaseMenuStringsSpellsProvider },
- { kEoBBaseMenuStringsRest, kEoBBaseMenuStringsRestProvider },
- { kEoBBaseMenuStringsDrop, kEoBBaseMenuStringsDropProvider },
- { kEoBBaseMenuStringsExit, kEoBBaseMenuStringsExitProvider },
- { kEoBBaseMenuStringsStarve, kEoBBaseMenuStringsStarveProvider },
- { kEoBBaseMenuStringsScribe, kEoBBaseMenuStringsScribeProvider },
- { kEoBBaseMenuStringsDrop2, kEoBBaseMenuStringsDrop2Provider },
- { kEoBBaseMenuStringsHead, kEoBBaseMenuStringsHeadProvider },
- { kEoBBaseMenuStringsPoison, kEoBBaseMenuStringsPoisonProvider },
- { kEoBBaseMenuStringsMgc, kEoBBaseMenuStringsMgcProvider },
- { kEoBBaseMenuStringsPrefs, kEoBBaseMenuStringsPrefsProvider },
- { kEoBBaseMenuStringsRest2, kEoBBaseMenuStringsRest2Provider },
- { kEoBBaseMenuStringsRest3, kEoBBaseMenuStringsRest3Provider },
- { kEoBBaseMenuStringsRest4, kEoBBaseMenuStringsRest4Provider },
- { kEoBBaseMenuStringsDefeat, kEoBBaseMenuStringsDefeatProvider },
- { kEoBBaseMenuStringsTransfer, kEoBBaseMenuStringsTransferProvider },
- { kEoBBaseMenuStringsSpec, kEoBBaseMenuStringsSpecProvider },
- { kEoBBaseMenuStringsSpellNo, kEoBBaseMenuStringsSpellNoProvider },
- { kEoBBaseMenuYesNoStrings, kEoBBaseMenuYesNoStringsProvider },
-
- { kEoBBaseSpellLevelsMage, kEoBBaseSpellLevelsMageProvider },
- { kEoBBaseSpellLevelsCleric, kEoBBaseSpellLevelsClericProvider },
- { kEoBBaseNumSpellsCleric, kEoBBaseNumSpellsClericProvider },
- { kEoBBaseNumSpellsWisAdj, kEoBBaseNumSpellsWisAdjProvider },
- { kEoBBaseNumSpellsPal, kEoBBaseNumSpellsPalProvider },
- { kEoBBaseNumSpellsMage, kEoBBaseNumSpellsMageProvider },
-
- { kEoBBaseCharGuiStringsHp, kEoBBaseCharGuiStringsHpProvider },
- { kEoBBaseCharGuiStringsWp1, kEoBBaseCharGuiStringsWp1Provider },
- { kEoBBaseCharGuiStringsWp2, kEoBBaseCharGuiStringsWp2Provider },
- { kEoBBaseCharGuiStringsWr, kEoBBaseCharGuiStringsWrProvider },
- { kEoBBaseCharGuiStringsSt1, kEoBBaseCharGuiStringsSt1Provider },
- { kEoBBaseCharGuiStringsSt2, kEoBBaseCharGuiStringsSt2Provider },
- { kEoBBaseCharGuiStringsIn, kEoBBaseCharGuiStringsInProvider },
-
- { kEoBBaseCharStatusStrings7, kEoBBaseCharStatusStrings7Provider },
- { kEoBBaseCharStatusStrings81, kEoBBaseCharStatusStrings81Provider },
- { kEoBBaseCharStatusStrings82, kEoBBaseCharStatusStrings82Provider },
- { kEoBBaseCharStatusStrings9, kEoBBaseCharStatusStrings9Provider },
- { kEoBBaseCharStatusStrings12, kEoBBaseCharStatusStrings12Provider },
- { kEoBBaseCharStatusStrings131, kEoBBaseCharStatusStrings131Provider },
- { kEoBBaseCharStatusStrings132, kEoBBaseCharStatusStrings132Provider },
-
- { kEoBBaseLevelGainStrings, kEoBBaseLevelGainStringsProvider },
- { kEoBBaseExperienceTable0, kEoBBaseExperienceTable0Provider },
- { kEoBBaseExperienceTable1, kEoBBaseExperienceTable1Provider },
- { kEoBBaseExperienceTable2, kEoBBaseExperienceTable2Provider },
- { kEoBBaseExperienceTable3, kEoBBaseExperienceTable3Provider },
- { kEoBBaseExperienceTable4, kEoBBaseExperienceTable4Provider },
-
- { kEoBBaseWllFlagPreset, kEoBBaseWllFlagPresetProvider },
- { kEoBBaseDscShapeCoords, kEoBBaseDscShapeCoordsProvider },
- { kEoBBaseDscDoorScaleOffs, kEoBBaseDscDoorScaleOffsProvider },
- { kEoBBaseDscDoorScaleMult1, kEoBBaseDscDoorScaleMult1Provider },
- { kEoBBaseDscDoorScaleMult2, kEoBBaseDscDoorScaleMult2Provider },
- { kEoBBaseDscDoorScaleMult3, kEoBBaseDscDoorScaleMult3Provider },
- { kEoBBaseDscDoorScaleMult4, kEoBBaseDscDoorScaleMult4Provider },
- { kEoBBaseDscDoorScaleMult5, kEoBBaseDscDoorScaleMult5Provider },
- { kEoBBaseDscDoorScaleMult6, kEoBBaseDscDoorScaleMult6Provider },
- { kEoBBaseDscDoorType5Offs, kEoBBaseDscDoorType5OffsProvider },
- { kEoBBaseDscDoorXE, kEoBBaseDscDoorXEProvider },
- { kEoBBaseDscDoorY1, kEoBBaseDscDoorY1Provider },
- { kEoBBaseDscDoorY3, kEoBBaseDscDoorY3Provider },
- { kEoBBaseDscDoorY4, kEoBBaseDscDoorY4Provider },
- { kEoBBaseDscDoorY5, kEoBBaseDscDoorY5Provider },
- { kEoBBaseDscDoorY6, kEoBBaseDscDoorY6Provider },
- { kEoBBaseDscDoorY7, kEoBBaseDscDoorY7Provider },
- { kEoBBaseDscDoorCoordsExt, kEoBBaseDscDoorCoordsExtProvider },
- { kEoBBaseDscItemPosIndex, kEoBBaseDscItemPosIndexProvider },
- { kEoBBaseDscItemShpX, kEoBBaseDscItemShpXProvider },
- { kEoBBaseDscItemPosUnk, kEoBBaseDscItemPosUnkProvider },
- { kEoBBaseDscItemTileIndex, kEoBBaseDscItemTileIndexProvider },
- { kEoBBaseDscItemShapeMap, kEoBBaseDscItemShapeMapProvider },
- { kEoBBaseDscTelptrShpCoords, kEoBBaseDscTelptrShpCoordsProvider },
-
- { kEoBBasePortalSeqData, kEoBBasePortalSeqDataProvider },
- { kEoBBaseManDef, kEoBBaseManDefProvider },
- { kEoBBaseManWord, kEoBBaseManWordProvider },
- { kEoBBaseManPrompt, kEoBBaseManPromptProvider },
-
- { kEoBBaseDscMonsterFrmOffsTbl1, kEoBBaseDscMonsterFrmOffsTbl1Provider },
- { kEoBBaseDscMonsterFrmOffsTbl2, kEoBBaseDscMonsterFrmOffsTbl2Provider },
-
- { kEoBBaseInvSlotX, kEoBBaseInvSlotXProvider },
- { kEoBBaseInvSlotY, kEoBBaseInvSlotYProvider },
- { kEoBBaseSlotValidationFlags, kEoBBaseSlotValidationFlagsProvider },
-
- { kEoBBaseProjectileWeaponTypes, kEoBBaseProjectileWeaponTypesProvider },
- { kEoBBaseWandTypes, kEoBBaseWandTypesProvider },
-
- { kEoBBaseDrawObjPosIndex, kEoBBaseDrawObjPosIndexProvider },
- { kEoBBaseFlightObjFlipIndex, kEoBBaseFlightObjFlipIndexProvider },
- { kEoBBaseFlightObjShpMap, kEoBBaseFlightObjShpMapProvider },
- { kEoBBaseFlightObjSclIndex, kEoBBaseFlightObjSclIndexProvider },
-
- { kEoBBaseBookNumbers, kEoBBaseBookNumbersProvider },
- { kEoBBaseMageSpellsList, kEoBBaseMageSpellsListProvider },
- { kEoBBaseClericSpellsList, kEoBBaseClericSpellsListProvider },
- { kEoBBaseSpellNames, kEoBBaseSpellNamesProvider },
- { kEoBBaseMagicStrings1, kEoBBaseMagicStrings1Provider },
- { kEoBBaseMagicStrings2, kEoBBaseMagicStrings2Provider },
- { kEoBBaseMagicStrings3, kEoBBaseMagicStrings3Provider },
- { kEoBBaseMagicStrings4, kEoBBaseMagicStrings4Provider },
- { kEoBBaseMagicStrings6, kEoBBaseMagicStrings6Provider },
- { kEoBBaseMagicStrings7, kEoBBaseMagicStrings7Provider },
- { kEoBBaseMagicStrings8, kEoBBaseMagicStrings8Provider },
-
- { kEoBBaseExpObjectTlMode, kEoBBaseExpObjectTlModeProvider },
- { kEoBBaseExpObjectTblIndex, kEoBBaseExpObjectTblIndexProvider },
- { kEoBBaseExpObjectShpStart, kEoBBaseExpObjectShpStartProvider },
- { kEoBBaseExpObjectTbl1, kEoBBaseExpObjectTbl1Provider },
- { kEoBBaseExpObjectTbl2, kEoBBaseExpObjectTbl2Provider },
- { kEoBBaseExpObjectTbl3, kEoBBaseExpObjectTbl3Provider },
- { kEoBBaseExpObjectY, kEoBBaseExpObjectYProvider },
-
- { kEoBBaseSparkDefSteps, kEoBBaseSparkDefStepsProvider },
- { kEoBBaseSparkDefSubSteps, kEoBBaseSparkDefSubStepsProvider },
- { kEoBBaseSparkDefShift, kEoBBaseSparkDefShiftProvider },
- { kEoBBaseSparkDefAdd, kEoBBaseSparkDefAddProvider },
- { kEoBBaseSparkDefX, kEoBBaseSparkDefXProvider },
- { kEoBBaseSparkDefY, kEoBBaseSparkDefYProvider },
- { kEoBBaseSparkOfFlags1, kEoBBaseSparkOfFlags1Provider },
- { kEoBBaseSparkOfFlags2, kEoBBaseSparkOfFlags2Provider },
- { kEoBBaseSparkOfShift, kEoBBaseSparkOfShiftProvider },
- { kEoBBaseSparkOfX, kEoBBaseSparkOfXProvider },
- { kEoBBaseSparkOfY, kEoBBaseSparkOfYProvider },
-
- { kEoBBaseSpellProperties, kEoBBaseSpellPropertiesProvider },
- { kEoBBaseMagicFlightProps, kEoBBaseMagicFlightPropsProvider },
- { kEoBBaseTurnUndeadEffect, kEoBBaseTurnUndeadEffectProvider },
- { kEoBBaseBurningHandsDest, kEoBBaseBurningHandsDestProvider },
- { kEoBBaseConeOfColdDest1, kEoBBaseConeOfColdDest1Provider },
- { kEoBBaseConeOfColdDest2, kEoBBaseConeOfColdDest2Provider },
- { kEoBBaseConeOfColdDest3, kEoBBaseConeOfColdDest3Provider },
- { kEoBBaseConeOfColdDest4, kEoBBaseConeOfColdDest4Provider },
- { kEoBBaseConeOfColdGfxTbl, kEoBBaseConeOfColdGfxTblProvider },
-
- { kEoB1MainMenuStrings, kEoB1MainMenuStringsProvider },
- { kEoB1BonusStrings, kEoB1BonusStringsProvider },
-
- { kEoB1IntroFilesOpening, kEoB1IntroFilesOpeningProvider },
- { kEoB1IntroFilesTower, kEoB1IntroFilesTowerProvider },
- { kEoB1IntroFilesOrb, kEoB1IntroFilesOrbProvider },
- { kEoB1IntroFilesWdEntry, kEoB1IntroFilesWdEntryProvider },
- { kEoB1IntroFilesKing, kEoB1IntroFilesKingProvider },
- { kEoB1IntroFilesHands, kEoB1IntroFilesHandsProvider },
- { kEoB1IntroFilesWdExit, kEoB1IntroFilesWdExitProvider },
- { kEoB1IntroFilesTunnel, kEoB1IntroFilesTunnelProvider },
- { kEoB1IntroOpeningFrmDelay, kEoB1IntroOpeningFrmDelayProvider },
- { kEoB1IntroWdEncodeX, kEoB1IntroWdEncodeXProvider },
- { kEoB1IntroWdEncodeY, kEoB1IntroWdEncodeYProvider },
- { kEoB1IntroWdEncodeWH, kEoB1IntroWdEncodeWHProvider },
- { kEoB1IntroWdDsX, kEoB1IntroWdDsXProvider },
- { kEoB1IntroWdDsY, kEoB1IntroWdDsYProvider },
- { kEoB1IntroTvlX1, kEoB1IntroTvlX1Provider },
- { kEoB1IntroTvlY1, kEoB1IntroTvlY1Provider },
- { kEoB1IntroTvlX2, kEoB1IntroTvlX2Provider },
- { kEoB1IntroTvlY2, kEoB1IntroTvlY2Provider },
- { kEoB1IntroTvlW, kEoB1IntroTvlWProvider },
- { kEoB1IntroTvlH, kEoB1IntroTvlHProvider },
-
- { kEoB1DoorShapeDefs, kEoB1DoorShapeDefsProvider },
- { kEoB1DoorSwitchShapeDefs, kEoB1DoorSwitchShapeDefsProvider },
- { kEoB1DoorSwitchCoords, kEoB1DoorSwitchCoordsProvider },
- { kEoB1MonsterProperties, kEoB1MonsterPropertiesProvider },
-
- { kEoB1EnemyMageSpellList, kEoB1EnemyMageSpellListProvider },
- { kEoB1EnemyMageSfx, kEoB1EnemyMageSfxProvider },
- { kEoB1BeholderSpellList, kEoB1BeholderSpellListProvider },
- { kEoB1BeholderSfx, kEoB1BeholderSfxProvider },
- { kEoB1TurnUndeadString, kEoB1TurnUndeadStringProvider },
-
- { kEoB1CgaMappingDefault, kEoB1CgaMappingDefaultProvider },
- { kEoB1CgaMappingAlt, kEoB1CgaMappingAltProvider },
- { kEoB1CgaMappingInv, kEoB1CgaMappingInvProvider },
- { kEoB1CgaMappingItemsL, kEoB1CgaMappingItemsLProvider },
- { kEoB1CgaMappingItemsS, kEoB1CgaMappingItemsSProvider },
- { kEoB1CgaMappingThrown, kEoB1CgaMappingThrownProvider },
- { kEoB1CgaMappingIcons, kEoB1CgaMappingIconsProvider },
- { kEoB1CgaMappingDeco, kEoB1CgaMappingDecoProvider },
- { kEoB1CgaLevelMappingIndex, kEoB1CgaLevelMappingIndexProvider },
- { kEoB1CgaMappingLevel0, kEoB1CgaMappingLevel0Provider },
- { kEoB1CgaMappingLevel1, kEoB1CgaMappingLevel1Provider },
- { kEoB1CgaMappingLevel2, kEoB1CgaMappingLevel2Provider },
- { kEoB1CgaMappingLevel3, kEoB1CgaMappingLevel3Provider },
- { kEoB1CgaMappingLevel4, kEoB1CgaMappingLevel4Provider },
-
- { kEoB1NpcShpData, kEoB1NpcShpDataProvider },
- { kEoB1NpcSubShpIndex1, kEoB1NpcSubShpIndex1Provider },
- { kEoB1NpcSubShpIndex2, kEoB1NpcSubShpIndex2Provider },
- { kEoB1NpcSubShpY, kEoB1NpcSubShpYProvider },
- { kEoB1Npc0Strings, kEoB1Npc0StringsProvider },
- { kEoB1Npc11Strings, kEoB1Npc11StringsProvider },
- { kEoB1Npc12Strings, kEoB1Npc12StringsProvider },
- { kEoB1Npc21Strings, kEoB1Npc21StringsProvider },
- { kEoB1Npc22Strings, kEoB1Npc22StringsProvider },
- { kEoB1Npc31Strings, kEoB1Npc31StringsProvider },
- { kEoB1Npc32Strings, kEoB1Npc32StringsProvider },
- { kEoB1Npc4Strings, kEoB1Npc4StringsProvider },
- { kEoB1Npc5Strings, kEoB1Npc5StringsProvider },
- { kEoB1Npc6Strings, kEoB1Npc6StringsProvider },
- { kEoB1Npc7Strings, kEoB1Npc7StringsProvider },
-
- { kEoB2MainMenuStrings, kEoB2MainMenuStringsProvider },
-
- { kEoB2TransferPortraitFrames, kEoB2TransferPortraitFramesProvider },
- { kEoB2TransferConvertTable, kEoB2TransferConvertTableProvider },
- { kEoB2TransferItemTable, kEoB2TransferItemTableProvider },
- { kEoB2TransferExpTable, kEoB2TransferExpTableProvider },
- { kEoB2TransferStrings1, kEoB2TransferStrings1Provider },
- { kEoB2TransferStrings2, kEoB2TransferStrings2Provider },
- { kEoB2TransferLabels, kEoB2TransferLabelsProvider },
-
- { kEoB2IntroStrings, kEoB2IntroStringsProvider },
- { kEoB2IntroCPSFiles, kEoB2IntroCPSFilesProvider },
- { kEob2IntroAnimData00, kEob2IntroAnimData00Provider },
- { kEob2IntroAnimData01, kEob2IntroAnimData01Provider },
- { kEob2IntroAnimData02, kEob2IntroAnimData02Provider },
- { kEob2IntroAnimData03, kEob2IntroAnimData03Provider },
- { kEob2IntroAnimData04, kEob2IntroAnimData04Provider },
- { kEob2IntroAnimData05, kEob2IntroAnimData05Provider },
- { kEob2IntroAnimData06, kEob2IntroAnimData06Provider },
- { kEob2IntroAnimData07, kEob2IntroAnimData07Provider },
- { kEob2IntroAnimData08, kEob2IntroAnimData08Provider },
- { kEob2IntroAnimData09, kEob2IntroAnimData09Provider },
- { kEob2IntroAnimData10, kEob2IntroAnimData10Provider },
- { kEob2IntroAnimData11, kEob2IntroAnimData11Provider },
- { kEob2IntroAnimData12, kEob2IntroAnimData12Provider },
- { kEob2IntroAnimData13, kEob2IntroAnimData13Provider },
- { kEob2IntroAnimData14, kEob2IntroAnimData14Provider },
- { kEob2IntroAnimData15, kEob2IntroAnimData15Provider },
- { kEob2IntroAnimData16, kEob2IntroAnimData16Provider },
- { kEob2IntroAnimData17, kEob2IntroAnimData17Provider },
- { kEob2IntroAnimData18, kEob2IntroAnimData18Provider },
- { kEob2IntroAnimData19, kEob2IntroAnimData19Provider },
- { kEob2IntroAnimData20, kEob2IntroAnimData20Provider },
- { kEob2IntroAnimData21, kEob2IntroAnimData21Provider },
- { kEob2IntroAnimData22, kEob2IntroAnimData22Provider },
- { kEob2IntroAnimData23, kEob2IntroAnimData23Provider },
- { kEob2IntroAnimData24, kEob2IntroAnimData24Provider },
- { kEob2IntroAnimData25, kEob2IntroAnimData25Provider },
- { kEob2IntroAnimData26, kEob2IntroAnimData26Provider },
- { kEob2IntroAnimData27, kEob2IntroAnimData27Provider },
- { kEob2IntroAnimData28, kEob2IntroAnimData28Provider },
- { kEob2IntroAnimData29, kEob2IntroAnimData29Provider },
- { kEob2IntroAnimData30, kEob2IntroAnimData30Provider },
- { kEob2IntroAnimData31, kEob2IntroAnimData31Provider },
- { kEob2IntroAnimData32, kEob2IntroAnimData32Provider },
- { kEob2IntroAnimData33, kEob2IntroAnimData33Provider },
- { kEob2IntroAnimData34, kEob2IntroAnimData34Provider },
- { kEob2IntroAnimData35, kEob2IntroAnimData35Provider },
- { kEob2IntroAnimData36, kEob2IntroAnimData36Provider },
- { kEob2IntroAnimData37, kEob2IntroAnimData37Provider },
- { kEob2IntroAnimData38, kEob2IntroAnimData38Provider },
- { kEob2IntroAnimData39, kEob2IntroAnimData39Provider },
- { kEob2IntroAnimData40, kEob2IntroAnimData40Provider },
- { kEob2IntroAnimData41, kEob2IntroAnimData41Provider },
- { kEob2IntroAnimData42, kEob2IntroAnimData42Provider },
- { kEob2IntroAnimData43, kEob2IntroAnimData43Provider },
- { kEoB2IntroShapes00, kEoB2IntroShapes00Provider },
- { kEoB2IntroShapes01, kEoB2IntroShapes01Provider },
- { kEoB2IntroShapes04, kEoB2IntroShapes04Provider },
- { kEoB2IntroShapes07, kEoB2IntroShapes07Provider },
-
- { kEoB2FinaleStrings, kEoB2FinaleStringsProvider },
- { kEoB2CreditsData, kEoB2CreditsDataProvider },
- { kEoB2FinaleCPSFiles, kEoB2FinaleCPSFilesProvider },
- { kEob2FinaleAnimData00, kEob2FinaleAnimData00Provider },
- { kEob2FinaleAnimData01, kEob2FinaleAnimData01Provider },
- { kEob2FinaleAnimData02, kEob2FinaleAnimData02Provider },
- { kEob2FinaleAnimData03, kEob2FinaleAnimData03Provider },
- { kEob2FinaleAnimData04, kEob2FinaleAnimData04Provider },
- { kEob2FinaleAnimData05, kEob2FinaleAnimData05Provider },
- { kEob2FinaleAnimData06, kEob2FinaleAnimData06Provider },
- { kEob2FinaleAnimData07, kEob2FinaleAnimData07Provider },
- { kEob2FinaleAnimData08, kEob2FinaleAnimData08Provider },
- { kEob2FinaleAnimData09, kEob2FinaleAnimData09Provider },
- { kEob2FinaleAnimData10, kEob2FinaleAnimData10Provider },
- { kEob2FinaleAnimData11, kEob2FinaleAnimData11Provider },
- { kEob2FinaleAnimData12, kEob2FinaleAnimData12Provider },
- { kEob2FinaleAnimData13, kEob2FinaleAnimData13Provider },
- { kEob2FinaleAnimData14, kEob2FinaleAnimData14Provider },
- { kEob2FinaleAnimData15, kEob2FinaleAnimData15Provider },
- { kEob2FinaleAnimData16, kEob2FinaleAnimData16Provider },
- { kEob2FinaleAnimData17, kEob2FinaleAnimData17Provider },
- { kEob2FinaleAnimData18, kEob2FinaleAnimData18Provider },
- { kEob2FinaleAnimData19, kEob2FinaleAnimData19Provider },
- { kEob2FinaleAnimData20, kEob2FinaleAnimData20Provider },
- { kEoB2FinaleShapes00, kEoB2FinaleShapes00Provider },
- { kEoB2FinaleShapes03, kEoB2FinaleShapes03Provider },
- { kEoB2FinaleShapes07, kEoB2FinaleShapes07Provider },
- { kEoB2FinaleShapes09, kEoB2FinaleShapes09Provider },
- { kEoB2FinaleShapes10, kEoB2FinaleShapes10Provider },
-
- { kEoB2NpcShapeData, kEoB2NpcShapeDataProvider },
- { kEoBBaseClassModifierFlags, kEoBBaseClassModifierFlagsProvider },
-
- { kEoBBaseMonsterStepTable01, kEoBBaseMonsterStepTable01Provider },
- { kEoBBaseMonsterStepTable02, kEoBBaseMonsterStepTable02Provider },
- { kEoBBaseMonsterStepTable1, kEoBBaseMonsterStepTable1Provider },
- { kEoBBaseMonsterStepTable2, kEoBBaseMonsterStepTable2Provider },
- { kEoBBaseMonsterStepTable3, kEoBBaseMonsterStepTable3Provider },
- { kEoBBaseMonsterCloseAttPosTable1, kEoBBaseMonsterCloseAttPosTable1Provider },
- { kEoBBaseMonsterCloseAttPosTable21, kEoBBaseMonsterCloseAttPosTable21Provider },
- { kEoBBaseMonsterCloseAttPosTable22, kEoBBaseMonsterCloseAttPosTable22Provider },
- { kEoBBaseMonsterCloseAttUnkTable, kEoBBaseMonsterCloseAttUnkTableProvider },
- { kEoBBaseMonsterCloseAttChkTable1, kEoBBaseMonsterCloseAttChkTable1Provider },
- { kEoBBaseMonsterCloseAttChkTable2, kEoBBaseMonsterCloseAttChkTable2Provider },
- { kEoBBaseMonsterCloseAttDstTable1, kEoBBaseMonsterCloseAttDstTable1Provider },
- { kEoBBaseMonsterCloseAttDstTable2, kEoBBaseMonsterCloseAttDstTable2Provider },
-
- { kEoBBaseMonsterProximityTable, kEoBBaseMonsterProximityTableProvider },
- { kEoBBaseFindBlockMonstersTable, kEoBBaseFindBlockMonstersTableProvider },
- { kEoBBaseMonsterDirChangeTable, kEoBBaseMonsterDirChangeTableProvider },
- { kEoBBaseMonsterDistAttStrings, kEoBBaseMonsterDistAttStringsProvider },
- { kEoBBaseEncodeMonsterDefs, kEoBBaseEncodeMonsterDefsProvider },
- { kEoBBaseNpcPresets, kEoBBaseNpcPresetsProvider },
- { kEoB2Npc1Strings, kEoB2Npc1StringsProvider },
- { kEoB2Npc2Strings, kEoB2Npc2StringsProvider },
- { kEoB2MonsterDustStrings, kEoB2MonsterDustStringsProvider },
- { kEoB2DreamSteps, kEoB2DreamStepsProvider },
- { kEoB2KheldranStrings, kEoB2KheldranStringsProvider },
- { kEoB2HornStrings, kEoB2HornStringsProvider },
- { kEoB2HornSounds, kEoB2HornSoundsProvider },
- { kEoB2WallOfForceDsX, kEoB2WallOfForceDsXProvider },
- { kEoB2WallOfForceDsY, kEoB2WallOfForceDsYProvider },
- { kEoB2WallOfForceNumW, kEoB2WallOfForceNumWProvider },
- { kEoB2WallOfForceNumH, kEoB2WallOfForceNumHProvider },
- { kEoB2WallOfForceShpId, kEoB2WallOfForceShpIdProvider },
-
- { kLoLIngamePakFiles, kLoLIngamePakFilesProvider },
- { kLoLCharacterDefs, kLoLCharacterDefsProvider },
- { kLoLIngameSfxFiles, kLoLIngameSfxFilesProvider },
- { kLoLIngameSfxIndex, kLoLIngameSfxIndexProvider },
- { kLoLMusicTrackMap, kLoLMusicTrackMapProvider },
- { kLoLIngameGMSfxIndex, kLoLIngameGMSfxIndexProvider },
- { kLoLIngameMT32SfxIndex, kLoLIngameMT32SfxIndexProvider },
- { kLoLIngamePcSpkSfxIndex, kLoLIngamePcSpkSfxIndexProvider },
- { kLoLSpellProperties, kLoLSpellPropertiesProvider },
- { kLoLGameShapeMap, kLoLGameShapeMapProvider },
- { kLoLSceneItemOffs, kLoLSceneItemOffsProvider },
- { kLoLCharInvIndex, kLoLCharInvIndexProvider },
- { kLoLCharInvDefs, kLoLCharInvDefsProvider },
- { kLoLCharDefsMan, kLoLCharDefsManProvider },
- { kLoLCharDefsWoman, kLoLCharDefsWomanProvider },
- { kLoLCharDefsKieran, kLoLCharDefsKieranProvider },
- { kLoLCharDefsAkshel, kLoLCharDefsAkshelProvider },
- { kLoLExpRequirements, kLoLExpRequirementsProvider },
- { kLoLMonsterModifiers1, kLoLMonsterModifiers1Provider },
- { kLoLMonsterModifiers2, kLoLMonsterModifiers2Provider },
- { kLoLMonsterModifiers3, kLoLMonsterModifiers3Provider },
- { kLoLMonsterModifiers4, kLoLMonsterModifiers4Provider },
- { kLoLMonsterShiftOffsets, kLoLMonsterShiftOffsetsProvider },
- { kLoLMonsterDirFlags, kLoLMonsterDirFlagsProvider },
- { kLoLMonsterScaleY, kLoLMonsterScaleYProvider },
- { kLoLMonsterScaleX, kLoLMonsterScaleXProvider },
- { kLoLMonsterScaleWH, kLoLMonsterScaleWHProvider },
- { kLoLFlyingObjectShp, kLoLFlyingObjectShpProvider },
- { kLoLInventoryDesc, kLoLInventoryDescProvider },
- { kLoLLevelShpList, kLoLLevelShpListProvider },
- { kLoLLevelDatList, kLoLLevelDatListProvider },
- { kLoLCompassDefs, kLoLCompassDefsProvider },
- { kLoLItemPrices, kLoLItemPricesProvider },
- { kLoLStashSetup, kLoLStashSetupProvider },
- { kLoLDscWalls, kLoLDscWallsProvider },
- { kRpgCommonDscShapeIndex, kRpgCommonDscShapeIndexProvider },
- { kLoLDscOvlMap, kLoLDscOvlMapProvider },
- { kLoLDscScaleWidthData, kLoLDscScaleWidthDataProvider },
- { kLoLDscScaleHeightData, kLoLDscScaleHeightDataProvider },
- { kRpgCommonDscX, kRpgCommonDscXProvider },
- { kLoLDscY, kLoLDscYProvider },
- { kRpgCommonDscTileIndex, kRpgCommonDscTileIndexProvider },
- { kRpgCommonDscUnk2, kRpgCommonDscUnk2Provider },
- { kRpgCommonDscDoorShapeIndex, kRpgCommonDscDoorShapeIndexProvider },
- { kRpgCommonDscDimData1, kRpgCommonDscDimData1Provider },
- { kRpgCommonDscDimData2, kRpgCommonDscDimData2Provider },
- { kRpgCommonDscBlockMap, kRpgCommonDscBlockMapProvider },
- { kRpgCommonDscDimMap, kRpgCommonDscDimMapProvider },
- { kLoLDscOvlIndex, kLoLDscOvlIndexProvider },
- { kRpgCommonDscBlockIndex, kRpgCommonDscBlockIndexProvider },
- { kRpgCommonDscDoorY2, kRpgCommonDscDoorY2Provider },
- { kRpgCommonDscDoorFrameY1, kRpgCommonDscDoorFrameY1Provider },
- { kRpgCommonDscDoorFrameY2, kRpgCommonDscDoorFrameY2Provider },
- { kRpgCommonDscDoorFrameIndex1, kRpgCommonDscDoorFrameIndex1Provider },
- { kRpgCommonDscDoorFrameIndex2, kRpgCommonDscDoorFrameIndex2Provider },
- { kLoLDscDoorScale, kLoLDscDoorScaleProvider },
- { kLoLDscDoor4, kLoLDscDoor4Provider },
- { kLoLDscDoorX, kLoLDscDoorXProvider },
- { kLoLDscDoorY, kLoLDscDoorYProvider },
- { kLoLScrollXTop, kLoLScrollXTopProvider },
- { kLoLScrollYTop, kLoLScrollYTopProvider },
- { kLoLScrollXBottom, kLoLScrollXBottomProvider },
- { kLoLScrollYBottom, kLoLScrollYBottomProvider },
- { kLoLButtonDefs, kLoLButtonDefsProvider },
- { kLoLButtonList1, kLoLButtonList1Provider },
- { kLoLButtonList2, kLoLButtonList2Provider },
- { kLoLButtonList3, kLoLButtonList3Provider },
- { kLoLButtonList4, kLoLButtonList4Provider },
- { kLoLButtonList5, kLoLButtonList5Provider },
- { kLoLButtonList6, kLoLButtonList6Provider },
- { kLoLButtonList7, kLoLButtonList7Provider },
- { kLoLButtonList8, kLoLButtonList8Provider },
- { kLoLLegendData, kLoLLegendDataProvider },
- { kLoLMapCursorOvl, kLoLMapCursorOvlProvider },
- { kLoLMapStringId, kLoLMapStringIdProvider },
- { kLoLSpellbookAnim, kLoLSpellbookAnimProvider },
- { kLoLSpellbookCoords, kLoLSpellbookCoordsProvider },
- { kLoLHealShapeFrames, kLoLHealShapeFramesProvider },
- { kLoLLightningDefs, kLoLLightningDefsProvider },
- { kLoLFireballCoords, kLoLFireballCoordsProvider },
- { kLoLCredits, kLoLCreditsProvider },
- { kLoLHistory, kLoLHistoryProvider },
- { -1, NULL }
-};
-
-} // end of anonymous namespace
-
-ExtractEntryList getProvidersForId(int id) {
- ExtractEntryList list;
-
- for (const ExtractEntry *p = extractProviders; p->id != -1; ++p) {
- if (p->id == id) {
- for (const ExtractEntrySearchData *d = p->providers; d->hint.size != 0; ++d)
- list.push_back(*d);
- }
- }
-
- return list;
-}
diff --git a/devtools/create_kyradat/types.cpp b/devtools/create_kyradat/types.cpp
new file mode 100644
index 0000000000..1f8430ab7f
--- /dev/null
+++ b/devtools/create_kyradat/types.cpp
@@ -0,0 +1,663 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+// Disable symbol overrides so that we can use system headers.
+#define FORBIDDEN_SYMBOL_ALLOW_ALL
+
+#include "types.h"
+#include "pak.h"
+
+#include "common/endian.h"
+
+static void writeStringList(PAKFile &out, const char *filename, const StringListProvider *provider);
+static void writeRawData(PAKFile &out, const char *filename, const ByteProvider *provider);
+static void writeRoomList(PAKFile &out, const char *filename, const RoomProvider *provider);
+static void writeShapeList(PAKFile &out, const char *filename, const ShapeProvider *provider);
+static void writeAmigaSfxTable(PAKFile &out, const char *filename, const AmigaSfxTableProvider *provider);
+static void writeK2SeqData(PAKFile &out, const char *filename, const HoFSequenceProvider *provider);
+static void writeK2SeqItemAnimData(PAKFile &out, const char *filename, const HoFSeqItemAnimDataProvider *provider);
+static void writeK2ItemAnimDefinition(PAKFile &out, const char *filename, const ItemAnimDefinitionProvider *provider);
+static void writeLoLCharData(PAKFile &out, const char *filename, const LoLCharacterProvider *provider);
+static void writeLoLSpellData(PAKFile &out, const char *filename, const SpellPropertyProvider *provider);
+static void writeLoLCompassData(PAKFile &out, const char *filename, const CompassDefProvider *provider);
+static void writeLoLFlightShpData(PAKFile &out, const char *filename, const FlyingObjectShapeProvider *provider);
+static void writeLoLButtonData(PAKFile &out, const char *filename, const LoLButtonDefProvider *provider);
+static void writeRawDataBe16(PAKFile &out, const char *filename, const Uint16Provider *provider);
+static void writeRawDataBe32(PAKFile &out, const char *filename, const Uint32Provider *provider);
+static void writeEoB2SequenceData(PAKFile &out, const char *filename, const DarkMoonAnimCommandProvider *provider);
+static void writeEoB2ShapeData(PAKFile &out, const char *filename, const DarkMoonShapeDefProvider *provider);
+static void writeEoBNpcData(PAKFile &out, const char *filename, const EoBCharacterProvider *provider);
+
+void writeResource(PAKFile &out, const char *filename, ResTypes type, const void *provider) {
+ switch (type) {
+ case kStringList:
+ writeStringList(out, filename, (const StringListProvider *)provider);
+ break;
+
+ case kRawData:
+ writeRawData(out, filename, (const ByteProvider *)provider);
+ break;
+
+ case kRoomList:
+ writeRoomList(out, filename, (const RoomProvider *)provider);
+ break;
+
+ case kShapeList:
+ writeShapeList(out, filename, (const ShapeProvider *)provider);
+ break;
+
+ case kAmigaSfxTable:
+ writeAmigaSfxTable(out, filename, (const AmigaSfxTableProvider *)provider);
+ break;
+
+ case k2SeqData:
+ writeK2SeqData(out, filename, (const HoFSequenceProvider *)provider);
+ break;
+
+ case k2SeqItemAnimData:
+ writeK2SeqItemAnimData(out, filename, (const HoFSeqItemAnimDataProvider *)provider);
+ break;
+
+ case k2ItemAnimDefinition:
+ writeK2ItemAnimDefinition(out, filename, (const ItemAnimDefinitionProvider *)provider);
+ break;
+
+ case kLoLCharData:
+ writeLoLCharData(out, filename, (const LoLCharacterProvider *)provider);
+ break;
+
+ case kLoLSpellData:
+ writeLoLSpellData(out, filename, (const SpellPropertyProvider *)provider);
+ break;
+
+ case kLoLCompassData:
+ writeLoLCompassData(out, filename, (const CompassDefProvider *)provider);
+ break;
+
+ case kLoLFlightShpData:
+ writeLoLFlightShpData(out, filename, (const FlyingObjectShapeProvider *)provider);
+ break;
+
+ case kLoLButtonData:
+ writeLoLButtonData(out, filename, (const LoLButtonDefProvider *)provider);
+ break;
+
+ case kRawDataBe16:
+ writeRawDataBe16(out, filename, (const Uint16Provider *)provider);
+ break;
+
+ case kRawDataBe32:
+ writeRawDataBe32(out, filename, (const Uint32Provider *)provider);
+ break;
+
+ case kEoB2SequenceData:
+ writeEoB2SequenceData(out, filename, (const DarkMoonAnimCommandProvider *)provider);
+ break;
+
+ case kEoB2ShapeData:
+ writeEoB2ShapeData(out, filename, (const DarkMoonShapeDefProvider *)provider);
+ break;
+
+ case kEoBNpcData:
+ writeEoBNpcData(out, filename, (const EoBCharacterProvider *)provider);
+ break;
+ }
+}
+
+static void writeStringList(PAKFile &out, const char *filename, const StringListProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 4;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ size += strlen(provider->data[i]) + 1;
+ }
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ WRITE_BE_UINT32(dst, provider->numEntries); dst += 4;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ size_t num = strlen(provider->data[i]) + 1;
+ memcpy(dst, provider->data[i], num); dst += num;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeRawData(PAKFile &out, const char *filename, const ByteProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+ memcpy(output, provider->data, size);
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeRoomList(PAKFile &out, const char *filename, const RoomProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 4 + 9 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ WRITE_BE_UINT32(dst, provider->numEntries); dst += 4;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const Room &room = provider->data[i];
+
+ *dst = room.index; dst += 1;
+ WRITE_BE_UINT16(dst, room.north); dst += 2;
+ WRITE_BE_UINT16(dst, room.east); dst += 2;
+ WRITE_BE_UINT16(dst, room.south); dst += 2;
+ WRITE_BE_UINT16(dst, room.west); dst += 2;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeShapeList(PAKFile &out, const char *filename, const ShapeProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 4 + 7 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ WRITE_BE_UINT32(dst, provider->numEntries); dst += 4;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const Shape &shape = provider->data[i];
+
+ *dst = shape.imageIndex; dst += 1;
+ *dst = shape.x; dst += 1;
+ *dst = shape.y; dst += 1;
+ *dst = shape.w; dst += 1;
+ *dst = shape.h; dst += 1;
+ *dst = shape.xOffset; dst += 1;
+ *dst = shape.yOffset; dst += 1;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeAmigaSfxTable(PAKFile &out, const char *filename, const AmigaSfxTableProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 4 + 6 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ WRITE_BE_UINT32(dst, provider->numEntries); dst += 4;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const AmigaSfxTable &entry = provider->data[i];
+
+ *dst = entry.note; dst += 1;
+ *dst = entry.patch; dst += 1;
+ WRITE_BE_UINT16(dst, entry.duration); dst += 2;
+ *dst = entry.volume; dst += 1;
+ *dst = entry.pan; dst += 1;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeK2SeqData(PAKFile &out, const char *filename, const HoFSequenceProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 4 + (2 + 48) * provider->numSequences + (2 + 32) * provider->numNestedSequences;
+
+ const size_t startSequenceOffset = 4 + 2 * provider->numSequences + 2 * provider->numNestedSequences;
+ const size_t startNestedSequences = startSequenceOffset + 48 * provider->numSequences;
+ const size_t startControlOffset = size;
+
+ for (uint i = 0; i < provider->numNestedSequences; ++i) {
+ if (provider->nestedSequences[i].numControls) {
+ size += 1 + 4 * provider->nestedSequences[i].numControls;
+ }
+ }
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *offsetTable = output;
+ byte *sequenceDst = output + startSequenceOffset;
+ byte *nestedDst = output + startNestedSequences;
+ byte *controlDst = output + startControlOffset;
+
+ // First write all sequences
+ WRITE_BE_UINT16(offsetTable, provider->numSequences); offsetTable += 2;
+ for (uint i = 0; i < provider->numSequences; ++i) {
+ const HoFSequence &entry = provider->sequences[i];
+
+ // Write location to the offset table
+ WRITE_BE_UINT16(offsetTable, sequenceDst - output); offsetTable += 2;
+
+ // Write actual sequence data
+ WRITE_BE_UINT16(sequenceDst, entry.flags); sequenceDst += 2;
+ memcpy(sequenceDst, entry.wsaFile, 14); sequenceDst += 14;
+ memcpy(sequenceDst, entry.cpsFile, 14); sequenceDst += 14;
+ *sequenceDst = entry.fadeInTransitionType; sequenceDst += 1;
+ *sequenceDst = entry.fadeOutTransitionType; sequenceDst += 1;
+ WRITE_BE_UINT16(sequenceDst, entry.stringIndex1); sequenceDst += 2;
+ WRITE_BE_UINT16(sequenceDst, entry.stringIndex2); sequenceDst += 2;
+ WRITE_BE_UINT16(sequenceDst, entry.startFrame); sequenceDst += 2;
+ WRITE_BE_UINT16(sequenceDst, entry.numFrames); sequenceDst += 2;
+ WRITE_BE_UINT16(sequenceDst, entry.duration); sequenceDst += 2;
+ WRITE_BE_UINT16(sequenceDst, entry.xPos); sequenceDst += 2;
+ WRITE_BE_UINT16(sequenceDst, entry.yPos); sequenceDst += 2;
+ WRITE_BE_UINT16(sequenceDst, entry.timeout); sequenceDst += 2;
+ }
+
+ assert(sequenceDst == nestedDst);
+
+ // Then write all nested sequences
+ WRITE_BE_UINT16(offsetTable, provider->numNestedSequences); offsetTable += 2;
+ for (uint i = 0; i < provider->numNestedSequences; ++i) {
+ const HoFNestedSequence &entry = provider->nestedSequences[i];
+
+ // Write location to the offset table
+ WRITE_BE_UINT16(offsetTable, nestedDst - output); offsetTable += 2;
+
+ // Write the nested sequence data
+ WRITE_BE_UINT16(nestedDst, entry.flags); nestedDst += 2;
+ memcpy(nestedDst, entry.wsaFile, 14); nestedDst += 14;
+ WRITE_BE_UINT16(nestedDst, entry.startFrame); nestedDst += 2;
+ WRITE_BE_UINT16(nestedDst, entry.endFrame); nestedDst += 2;
+ WRITE_BE_UINT16(nestedDst, entry.frameDelay); nestedDst += 2;
+ WRITE_BE_UINT16(nestedDst, entry.x); nestedDst += 2;
+ WRITE_BE_UINT16(nestedDst, entry.y); nestedDst += 2;
+
+ if (entry.numControls) {
+ WRITE_BE_UINT16(nestedDst, controlDst - output); nestedDst += 2;
+
+ *controlDst = entry.numControls; controlDst += 1;
+ for (uint j = 0; j < entry.numControls; ++j) {
+ WRITE_BE_UINT16(controlDst, entry.wsaControl[j].index); controlDst += 2;
+ WRITE_BE_UINT16(controlDst, entry.wsaControl[j].delay); controlDst += 2;
+ }
+ } else {
+ WRITE_BE_UINT16(nestedDst, 0); nestedDst += 2;
+ }
+
+ WRITE_BE_UINT16(nestedDst, entry.fadeInTransitionType); nestedDst += 2;
+ WRITE_BE_UINT16(nestedDst, entry.fadeOutTransitionType); nestedDst += 2;
+ }
+
+ assert(offsetTable == output + startSequenceOffset);
+ assert(nestedDst == output + startControlOffset);
+ assert(controlDst == output + size);
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeK2SeqItemAnimData(PAKFile &out, const char *filename, const HoFSeqItemAnimDataProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 1 + 44 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ *dst = provider->numEntries; dst += 1;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const HoFSeqItemAnimData &entry = provider->data[i];
+
+ WRITE_BE_UINT16(dst, entry.itemIndex); dst += 2;
+ WRITE_BE_UINT16(dst, entry.y); dst += 2;
+
+ for (uint j = 0; j < 20; ++j) {
+ WRITE_BE_UINT16(dst, entry.frames[j]); dst += 2;
+ }
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeK2ItemAnimDefinition(PAKFile &out, const char *filename, const ItemAnimDefinitionProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 1 + 3 * provider->numEntries;
+
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ size += provider->data[i].numFrames * 4;
+ }
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ *dst = provider->numEntries; dst += 1;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const ItemAnimDefinition &entry = provider->data[i];
+
+ WRITE_BE_UINT16(dst, entry.itemIndex); dst += 2;
+ *dst = entry.numFrames; dst += 1;
+
+ for (uint j = 0; j < entry.numFrames; ++j) {
+ WRITE_BE_UINT16(dst, entry.frames[j].index); dst += 2;
+ WRITE_BE_UINT16(dst, entry.frames[j].delay); dst += 2;
+ }
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeLoLCharData(PAKFile &out, const char *filename, const LoLCharacterProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 130 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const LoLCharacter &entry = provider->data[i];
+
+ WRITE_LE_UINT16(dst, entry.flags); dst += 2;
+ memcpy(dst, entry.name, 11); dst += 11;
+ *dst = entry.raceClassSex; dst += 1;
+ WRITE_LE_UINT16(dst, entry.id); dst += 2;
+ *dst = entry.curFaceFrame; dst += 1;
+ *dst = entry.tempFaceFrame; dst += 1;
+ *dst = entry.screamSfx; dst += 1;
+ WRITE_BE_UINT32(dst, 0xDEADBEEF); dst += 4;
+ for (uint j = 0; j < 8; ++j) {
+ WRITE_LE_UINT16(dst, entry.itemsMight[j]); dst += 2;
+ }
+ for (uint j = 0; j < 8; ++j) {
+ WRITE_LE_UINT16(dst, entry.protectionAgainstItems[j]); dst += 2;
+ }
+ WRITE_LE_UINT16(dst, entry.itemProtection); dst += 2;
+ WRITE_LE_UINT16(dst, entry.hitPointsCur); dst += 2;
+ WRITE_LE_UINT16(dst, entry.hitPointsMax); dst += 2;
+ WRITE_LE_UINT16(dst, entry.magicPointsCur); dst += 2;
+ WRITE_LE_UINT16(dst, entry.magicPointsMax); dst += 2;
+ *dst = entry.field_41; dst += 1;
+ WRITE_LE_UINT16(dst, entry.damageSuffered); dst += 2;
+ WRITE_LE_UINT16(dst, entry.weaponHit); dst += 2;
+ WRITE_LE_UINT16(dst, entry.totalMightModifier); dst += 2;
+ WRITE_LE_UINT16(dst, entry.totalProtectionModifier); dst += 2;
+ WRITE_LE_UINT16(dst, entry.might); dst += 2;
+ WRITE_LE_UINT16(dst, entry.protection); dst += 2;
+ WRITE_LE_UINT16(dst, entry.nextAnimUpdateCountdown); dst += 2;
+ for (uint j = 0; j < 11; ++j) {
+ WRITE_LE_UINT16(dst, entry.items[j]); dst += 2;
+ }
+ for (uint j = 0; j < 3; ++j) {
+ *dst = entry.skillLevels[j]; dst += 1;
+ }
+ for (uint j = 0; j < 3; ++j) {
+ *dst = entry.skillModifiers[j]; dst += 1;
+ }
+ for (uint j = 0; j < 3; ++j) {
+ WRITE_LE_UINT32(dst, entry.experiencePts[j]); dst += 4;
+ }
+ for (uint j = 0; j < 5; ++j) {
+ *dst = entry.characterUpdateEvents[j]; dst += 1;
+ }
+ for (uint j = 0; j < 5; ++j) {
+ *dst = entry.characterUpdateDelay[j]; dst += 1;
+ }
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeLoLSpellData(PAKFile &out, const char *filename, const SpellPropertyProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 28 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const SpellProperty &entry = provider->data[i];
+
+ WRITE_LE_UINT16(dst, entry.spellNameCode); dst += 2;
+ for (uint j = 0; j < 4; ++j) {
+ WRITE_LE_UINT16(dst, entry.mpRequired[j]); dst += 2;
+ }
+ WRITE_LE_UINT16(dst, entry.field_a); dst += 2;
+ WRITE_LE_UINT16(dst, entry.field_c); dst += 2;
+ for (uint j = 0; j < 4; ++j) {
+ WRITE_LE_UINT16(dst, entry.hpRequired[j]); dst += 2;
+ }
+ WRITE_LE_UINT16(dst, entry.field_16); dst += 2;
+ WRITE_LE_UINT16(dst, entry.field_18); dst += 2;
+ WRITE_LE_UINT16(dst, entry.flags); dst += 2;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeLoLCompassData(PAKFile &out, const char *filename, const CompassDefProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 4 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const CompassDef &entry = provider->data[i];
+
+ *dst = entry.shapeIndex; dst += 1;
+ *dst = entry.x; dst += 1;
+ *dst = entry.y; dst += 1;
+ *dst = entry.flags; dst += 1;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeLoLFlightShpData(PAKFile &out, const char *filename, const FlyingObjectShapeProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 5 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const FlyingObjectShape &entry = provider->data[i];
+
+ *dst = entry.shapeFront; dst += 1;
+ *dst = entry.shapeBack; dst += 1;
+ *dst = entry.shapeLeft; dst += 1;
+ *dst = entry.drawFlags; dst += 1;
+ *dst = entry.flipFlags; dst += 1;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeLoLButtonData(PAKFile &out, const char *filename, const LoLButtonDefProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 18 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const LoLButtonDef &entry = provider->data[i];
+
+ WRITE_BE_UINT16(dst, entry.buttonFlags); dst += 2;
+ WRITE_BE_UINT16(dst, entry.keyCode); dst += 2;
+ WRITE_BE_UINT16(dst, entry.keyCode2); dst += 2;
+ WRITE_BE_UINT16(dst, entry.x); dst += 2;
+ WRITE_BE_UINT16(dst, entry.y); dst += 2;
+ WRITE_BE_UINT16(dst, entry.w); dst += 2;
+ WRITE_BE_UINT16(dst, entry.h); dst += 2;
+ WRITE_BE_UINT16(dst, entry.index); dst += 2;
+ WRITE_BE_UINT16(dst, entry.screenDim); dst += 2;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeRawDataBe16(PAKFile &out, const char *filename, const Uint16Provider *provider) {
+ // Step 1: Calculate size
+ size_t size = 2 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ WRITE_BE_UINT16(dst, provider->data[i]); dst += 2;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeRawDataBe32(PAKFile &out, const char *filename, const Uint32Provider *provider) {
+ // Step 1: Calculate size
+ size_t size = 4 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ WRITE_BE_UINT32(dst, provider->data[i]); dst += 4;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeEoB2SequenceData(PAKFile &out, const char *filename, const DarkMoonAnimCommandProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 11 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const DarkMoonAnimCommand &entry = provider->data[i];
+
+ *dst = entry.command; dst += 1;
+ *dst = entry.obj; dst += 1;
+ WRITE_BE_UINT16(dst, entry.x1); dst += 2;
+ *dst = entry.y1; dst += 1;
+ *dst = entry.delay; dst += 1;
+ *dst = entry.pal; dst += 1;
+ *dst = entry.x2; dst += 1;
+ *dst = entry.y2; dst += 1;
+ *dst = entry.w; dst += 1;
+ *dst = entry.h; dst += 1;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeEoB2ShapeData(PAKFile &out, const char *filename, const DarkMoonShapeDefProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 6 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const DarkMoonShapeDef &entry = provider->data[i];
+
+ WRITE_BE_UINT16(dst, entry.index); dst += 2;
+ *dst = entry.x; dst += 1;
+ *dst = entry.y; dst += 1;
+ *dst = entry.w; dst += 1;
+ *dst = entry.h; dst += 1;
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
+
+static void writeEoBNpcData(PAKFile &out, const char *filename, const EoBCharacterProvider *provider) {
+ // Step 1: Calculate size
+ size_t size = 2 + 111 * provider->numEntries;
+
+ // Step 2: Write data
+ byte *const output = new byte[size];
+
+ byte *dst = output;
+ WRITE_BE_UINT16(dst, provider->numEntries); dst += 2;
+ for (uint i = 0; i < provider->numEntries; ++i) {
+ const EoBCharacter &entry = provider->data[i];
+
+ *dst = entry.id; dst += 1;
+ *dst = entry.flags; dst += 1;
+ memcpy(dst, entry.name, 11); dst += 11;
+ *dst = entry.strengthCur; dst += 1;
+ *dst = entry.strengthMax; dst += 1;
+ *dst = entry.strengthExtCur; dst += 1;
+ *dst = entry.strengthExtMax; dst += 1;
+ *dst = entry.intelligenceCur; dst += 1;
+ *dst = entry.intelligenceMax; dst += 1;
+ *dst = entry.wisdomCur; dst += 1;
+ *dst = entry.wisdomMax; dst += 1;
+ *dst = entry.dexterityCur; dst += 1;
+ *dst = entry.dexterityMax; dst += 1;
+ *dst = entry.constitutionCur; dst += 1;
+ *dst = entry.constitutionMax; dst += 1;
+ *dst = entry.charismaCur; dst += 1;
+ *dst = entry.charismaMax; dst += 1;
+ WRITE_BE_UINT16(dst, entry.hitPointsCur); dst += 2;
+ WRITE_BE_UINT16(dst, entry.hitPointsMax); dst += 2;
+ *dst = entry.armorClass; dst += 1;
+ *dst = entry.disabledSlots; dst += 1;
+ *dst = entry.raceSex; dst += 1;
+ *dst = entry.cClass; dst += 1;
+ *dst = entry.alignment; dst += 1;
+ *dst = entry.portrait; dst += 1;
+ *dst = entry.food; dst += 1;
+ memcpy(dst, entry.level, 3); dst += 3;
+ WRITE_BE_UINT32(dst, entry.experience[0]); dst += 4;
+ WRITE_BE_UINT32(dst, entry.experience[1]); dst += 4;
+ WRITE_BE_UINT32(dst, entry.experience[2]); dst += 4;
+ WRITE_BE_UINT32(dst, entry.mageSpellsAvailableFlags); dst += 4;
+ for (uint j = 0; j < 27; ++j) {
+ WRITE_BE_UINT16(dst, entry.inventory[j]); dst += 2;
+ }
+ }
+
+ // Step 3: Add data to output
+ out.addFile(filename, output, size);
+}
diff --git a/devtools/create_kyradat/types.h b/devtools/create_kyradat/types.h
new file mode 100644
index 0000000000..bb97948a25
--- /dev/null
+++ b/devtools/create_kyradat/types.h
@@ -0,0 +1,238 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef CREATE_KYRADAT_TYPES_H
+#define CREATE_KYRADAT_TYPES_H
+
+#include "create_kyradat.h"
+
+struct Room {
+ byte index;
+ uint16 north, east, south, west;
+};
+
+struct Shape {
+ byte imageIndex;
+ byte x, y, w, h;
+ int8 xOffset, yOffset;
+};
+
+struct AmigaSfxTable {
+ byte note;
+ byte patch;
+ uint16 duration;
+ byte volume;
+ byte pan;
+};
+
+struct HoFSequence {
+ uint16 flags;
+ char wsaFile[14];
+ char cpsFile[14];
+ byte fadeInTransitionType;
+ byte fadeOutTransitionType;
+ uint16 stringIndex1;
+ uint16 stringIndex2;
+ uint16 startFrame;
+ uint16 numFrames;
+ uint16 duration;
+ uint16 xPos;
+ uint16 yPos;
+ uint16 timeout;
+};
+
+struct FrameControl {
+ uint16 index;
+ uint16 delay;
+};
+
+struct HoFNestedSequence {
+ uint16 flags;
+ char wsaFile[14];
+ uint16 startFrame;
+ uint16 endFrame;
+ uint16 frameDelay;
+ uint16 x;
+ uint16 y;
+ uint16 numControls;
+ const FrameControl *wsaControl;
+ uint16 fadeInTransitionType;
+ uint16 fadeOutTransitionType;
+};
+
+struct HoFSeqItemAnimData {
+ int16 itemIndex;
+ uint16 y;
+ uint16 frames[20];
+};
+
+struct ItemAnimDefinition {
+ int16 itemIndex;
+ byte numFrames;
+ const FrameControl *frames;
+};
+
+struct LoLCharacter {
+ uint16 flags;
+ char name[11];
+ byte raceClassSex;
+ int16 id;
+ byte curFaceFrame;
+ byte tempFaceFrame;
+ byte screamSfx;
+ /*uint32 unused;*/
+ uint16 itemsMight[8];
+ uint16 protectionAgainstItems[8];
+ uint16 itemProtection;
+ int16 hitPointsCur;
+ uint16 hitPointsMax;
+ int16 magicPointsCur;
+ uint16 magicPointsMax;
+ byte field_41;
+ uint16 damageSuffered;
+ uint16 weaponHit;
+ uint16 totalMightModifier;
+ uint16 totalProtectionModifier;
+ uint16 might;
+ uint16 protection;
+ int16 nextAnimUpdateCountdown;
+ uint16 items[11];
+ byte skillLevels[3];
+ byte skillModifiers[3];
+ uint32 experiencePts[3];
+ byte characterUpdateEvents[5];
+ byte characterUpdateDelay[5];
+};
+
+struct SpellProperty {
+ uint16 spellNameCode;
+ uint16 mpRequired[4];
+ uint16 field_a;
+ uint16 field_c;
+ uint16 hpRequired[4];
+ uint16 field_16;
+ uint16 field_18;
+ uint16 flags;
+};
+
+struct CompassDef {
+ byte shapeIndex;
+ int8 x, y;
+ byte flags;
+};
+
+struct FlyingObjectShape {
+ byte shapeFront;
+ byte shapeBack;
+ byte shapeLeft;
+ byte drawFlags;
+ byte flipFlags;
+};
+
+struct LoLButtonDef {
+ uint16 buttonFlags;
+ uint16 keyCode;
+ uint16 keyCode2;
+ int16 x, y;
+ uint16 w, h;
+ uint16 index;
+ uint16 screenDim;
+};
+
+struct DarkMoonAnimCommand {
+ byte command;
+ byte obj;
+ int16 x1;
+ byte y1;
+ byte delay;
+ byte pal;
+ byte x2, y2;
+ byte w, h;
+};
+
+struct DarkMoonShapeDef {
+ int16 index;
+ byte x, y, w, h;
+};
+
+struct EoBCharacter {
+ byte id;
+ byte flags;
+ char name[11];
+ int8 strengthCur, strengthMax;
+ int8 strengthExtCur, strengthExtMax;
+ int8 intelligenceCur, intelligenceMax;
+ int8 wisdomCur, wisdomMax;
+ int8 dexterityCur, dexterityMax;
+ int8 constitutionCur, constitutionMax;
+ int8 charismaCur, charismaMax;
+ int16 hitPointsCur, hitPointsMax;
+ int8 armorClass;
+ byte disabledSlots;
+ byte raceSex;
+ byte cClass;
+ byte alignment;
+ int8 portrait;
+ byte food;
+ byte level[3];
+ uint32 experience[3];
+ uint32 mageSpellsAvailableFlags;
+ uint16 inventory[27];
+};
+
+template<typename Type>
+struct ArrayProvider {
+ uint numEntries;
+ const Type *data;
+};
+
+typedef ArrayProvider<const char *> StringListProvider;
+typedef ArrayProvider<byte> ByteProvider;
+typedef ArrayProvider<Room> RoomProvider;
+typedef ArrayProvider<Shape> ShapeProvider;
+typedef ArrayProvider<AmigaSfxTable> AmigaSfxTableProvider;
+
+struct HoFSequenceProvider {
+ uint numSequences;
+ const HoFSequence *sequences;
+
+ uint numNestedSequences;
+ const HoFNestedSequence *nestedSequences;
+};
+
+typedef ArrayProvider<HoFSeqItemAnimData> HoFSeqItemAnimDataProvider;
+typedef ArrayProvider<ItemAnimDefinition> ItemAnimDefinitionProvider;
+typedef ArrayProvider<LoLCharacter> LoLCharacterProvider;
+typedef ArrayProvider<SpellProperty> SpellPropertyProvider;
+typedef ArrayProvider<CompassDef> CompassDefProvider;
+typedef ArrayProvider<FlyingObjectShape> FlyingObjectShapeProvider;
+typedef ArrayProvider<LoLButtonDef> LoLButtonDefProvider;
+typedef ArrayProvider<uint16> Uint16Provider;
+typedef ArrayProvider<uint32> Uint32Provider;
+typedef ArrayProvider<DarkMoonAnimCommand> DarkMoonAnimCommandProvider;
+typedef ArrayProvider<DarkMoonShapeDef> DarkMoonShapeDefProvider;
+typedef ArrayProvider<EoBCharacter> EoBCharacterProvider;
+
+class PAKFile;
+void writeResource(PAKFile &out, const char *filename, ResTypes type, const void *provider);
+
+#endif
diff --git a/devtools/create_kyradat/util.cpp b/devtools/create_kyradat/util.cpp
index 5ce8237b85..dd88d4ed85 100644
--- a/devtools/create_kyradat/util.cpp
+++ b/devtools/create_kyradat/util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_kyradat/util.h b/devtools/create_kyradat/util.h
index a2783cca71..666386ea93 100644
--- a/devtools/create_kyradat/util.h
+++ b/devtools/create_kyradat/util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_lure/create_lure_dat.cpp b/devtools/create_lure/create_lure_dat.cpp
index c53a6bf81d..0ac07c460d 100644
--- a/devtools/create_lure/create_lure_dat.cpp
+++ b/devtools/create_lure/create_lure_dat.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1348,7 +1348,7 @@ const char *germanTextStrings[NUM_TEXT_ENTRIES] = {
"Abbrechen", "Schneller Text\x8b",
"Langsamer Text\x8b", "Sound an", "Sound aus", "(nichts)", " nach ", " an ", " f\x8cr ",
"und dann", "Schlu\x92", "Sicher (j/n)?",
- "Du tr\x8dgst", "niets", "und du hast ", "silberm\x8cnzen", "silberm\x8cnzen"
+ "Du tr\x8dgst ", "nichts.", "und du hast ", "silberm\x8cnzen", "silberm\x8cnzen",
"keinen ", "keine ", "kein ", "der ", "die ", "das ", "den ", "einen ", "eine ", "ein "
};
@@ -1359,7 +1359,7 @@ const char *spanishTextStrings[NUM_TEXT_ENTRIES] = {
"Cr\x7f" "ditos", "Reiniciar", "Salvar juego", "Recuperar jue", "Abandonar", "Texto r\x98pido\x8b",
"Texto lento \x8b", "Sonido activado ", "Sonido desactivado ", "(nada)", " con ", " a ", " con ",
"y luego", "eso es todo", "\x94" "Est\x98s seguro? (S/N)",
- "Llevas ", "nada", "y tienes ", "moneda", "monedas"
+ "Llevas ", "nada", "y tienes ", "moneda", "monedas",
"el ", "la ", "los ", "las ", "este ", "esta ", "estos ", "estas ", NULL, NULL
};
diff --git a/devtools/create_lure/create_lure_dat.h b/devtools/create_lure/create_lure_dat.h
index ad49878d43..ed713dd4f3 100644
--- a/devtools/create_lure/create_lure_dat.h
+++ b/devtools/create_lure/create_lure_dat.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_lure/process_actions.cpp b/devtools/create_lure/process_actions.cpp
index d1ddbf03f2..20d8e50aa5 100644
--- a/devtools/create_lure/process_actions.cpp
+++ b/devtools/create_lure/process_actions.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_mortdat/create_mortdat.cpp b/devtools/create_mortdat/create_mortdat.cpp
index 693e277b91..f6b2884005 100644
--- a/devtools/create_mortdat/create_mortdat.cpp
+++ b/devtools/create_mortdat/create_mortdat.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_mortdat/create_mortdat.h b/devtools/create_mortdat/create_mortdat.h
index e5007ae653..a4ce3999f4 100644
--- a/devtools/create_mortdat/create_mortdat.h
+++ b/devtools/create_mortdat/create_mortdat.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_mortdat/enginetext.h b/devtools/create_mortdat/enginetext.h
index e1c40f898b..a257ddd5a2 100644
--- a/devtools/create_mortdat/enginetext.h
+++ b/devtools/create_mortdat/enginetext.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_mortdat/gametext.h b/devtools/create_mortdat/gametext.h
index 4f7b1f9776..7a83448bad 100644
--- a/devtools/create_mortdat/gametext.h
+++ b/devtools/create_mortdat/gametext.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_mortdat/menudata.h b/devtools/create_mortdat/menudata.h
index ec8724135c..2290666ffe 100644
--- a/devtools/create_mortdat/menudata.h
+++ b/devtools/create_mortdat/menudata.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_neverhood/create_neverhood.cpp b/devtools/create_neverhood/create_neverhood.cpp
index a37ff99ca9..a1201cdaa3 100644
--- a/devtools/create_neverhood/create_neverhood.cpp
+++ b/devtools/create_neverhood/create_neverhood.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_neverhood/create_neverhood.h b/devtools/create_neverhood/create_neverhood.h
index 6382c87375..205936601d 100644
--- a/devtools/create_neverhood/create_neverhood.h
+++ b/devtools/create_neverhood/create_neverhood.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_neverhood/md5.cpp b/devtools/create_neverhood/md5.cpp
index 50f7406a47..0477002654 100644
--- a/devtools/create_neverhood/md5.cpp
+++ b/devtools/create_neverhood/md5.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_neverhood/md5.h b/devtools/create_neverhood/md5.h
index 81bc03ff83..bf81d5ae1b 100644
--- a/devtools/create_neverhood/md5.h
+++ b/devtools/create_neverhood/md5.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_neverhood/tables.h b/devtools/create_neverhood/tables.h
index eb136491db..cea962d4c1 100644
--- a/devtools/create_neverhood/tables.h
+++ b/devtools/create_neverhood/tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_neverhood/util.cpp b/devtools/create_neverhood/util.cpp
index 5ce8237b85..dd88d4ed85 100644
--- a/devtools/create_neverhood/util.cpp
+++ b/devtools/create_neverhood/util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_neverhood/util.h b/devtools/create_neverhood/util.h
index a2783cca71..666386ea93 100644
--- a/devtools/create_neverhood/util.h
+++ b/devtools/create_neverhood/util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp
index 9d7ed532cb..876c116b5c 100644
--- a/devtools/create_project/create_project.cpp
+++ b/devtools/create_project/create_project.cpp
@@ -1305,6 +1305,7 @@ void ProjectProvider::createProject(BuildSetup &setup) {
createModuleList(setup.srcDir + "/audio", setup.defines, setup.testDirs, in, ex);
createModuleList(setup.srcDir + "/audio/softsynth/mt32", setup.defines, setup.testDirs, in, ex);
createModuleList(setup.srcDir + "/video", setup.defines, setup.testDirs, in, ex);
+ createModuleList(setup.srcDir + "/image", setup.defines, setup.testDirs, in, ex);
// Resource files
in.push_back(setup.srcDir + "/icons/" + setup.projectName + ".ico");
diff --git a/devtools/create_teenagent/create_teenagent.cpp b/devtools/create_teenagent/create_teenagent.cpp
index 79c61900f3..732532f9b2 100644
--- a/devtools/create_teenagent/create_teenagent.cpp
+++ b/devtools/create_teenagent/create_teenagent.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_teenagent/static_tables.h b/devtools/create_teenagent/static_tables.h
index 5c9b5b3d21..9094f98a74 100644
--- a/devtools/create_teenagent/static_tables.h
+++ b/devtools/create_teenagent/static_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_teenagent/util.cpp b/devtools/create_teenagent/util.cpp
index 5ce8237b85..dd88d4ed85 100644
--- a/devtools/create_teenagent/util.cpp
+++ b/devtools/create_teenagent/util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_teenagent/util.h b/devtools/create_teenagent/util.h
index a2783cca71..666386ea93 100644
--- a/devtools/create_teenagent/util.h
+++ b/devtools/create_teenagent/util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_tony/create_tony.cpp b/devtools/create_tony/create_tony.cpp
index f2d086c083..cb76e954c9 100644
--- a/devtools/create_tony/create_tony.cpp
+++ b/devtools/create_tony/create_tony.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_tony/create_tony.h b/devtools/create_tony/create_tony.h
index 3075835bd9..96793bf3aa 100644
--- a/devtools/create_tony/create_tony.h
+++ b/devtools/create_tony/create_tony.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_tony/staticdata.h b/devtools/create_tony/staticdata.h
index fff977d8dc..a2cacb3e58 100644
--- a/devtools/create_tony/staticdata.h
+++ b/devtools/create_tony/staticdata.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_toon/create_toon.cpp b/devtools/create_toon/create_toon.cpp
index 2cf8895d4b..08f8d8c543 100644
--- a/devtools/create_toon/create_toon.cpp
+++ b/devtools/create_toon/create_toon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_toon/create_toon.h b/devtools/create_toon/create_toon.h
index b047959215..0c26261dc9 100644
--- a/devtools/create_toon/create_toon.h
+++ b/devtools/create_toon/create_toon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_toon/staticdata.h b/devtools/create_toon/staticdata.h
index bc49c7adaf..1d00455d5d 100644
--- a/devtools/create_toon/staticdata.h
+++ b/devtools/create_toon/staticdata.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_translations/create_translations.cpp b/devtools/create_translations/create_translations.cpp
index a8b04a7a52..01e6446cb8 100644
--- a/devtools/create_translations/create_translations.cpp
+++ b/devtools/create_translations/create_translations.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_translations/create_translations.h b/devtools/create_translations/create_translations.h
index 1df01e6333..34a79913ac 100644
--- a/devtools/create_translations/create_translations.h
+++ b/devtools/create_translations/create_translations.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_translations/po_parser.cpp b/devtools/create_translations/po_parser.cpp
index e8d7d7a644..7882502ca4 100644
--- a/devtools/create_translations/po_parser.cpp
+++ b/devtools/create_translations/po_parser.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/create_translations/po_parser.h b/devtools/create_translations/po_parser.h
index 6991b1d11e..a3b1c9a9d7 100644
--- a/devtools/create_translations/po_parser.h
+++ b/devtools/create_translations/po_parser.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/extract_mort/extract_mort.cpp b/devtools/extract_mort/extract_mort.cpp
index a52458f9b2..7e4003a8c6 100644
--- a/devtools/extract_mort/extract_mort.cpp
+++ b/devtools/extract_mort/extract_mort.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/sci/musicplayer.cpp b/devtools/sci/musicplayer.cpp
index 25f2d684a8..73f0e12bb0 100644
--- a/devtools/sci/musicplayer.cpp
+++ b/devtools/sci/musicplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/sci/scidisasm.cpp b/devtools/sci/scidisasm.cpp
index 9b212c208d..6c7049e639 100644
--- a/devtools/sci/scidisasm.cpp
+++ b/devtools/sci/scidisasm.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/sci/scipack.cpp b/devtools/sci/scipack.cpp
index ff52e25061..9e9ebcd0a2 100644
--- a/devtools/sci/scipack.cpp
+++ b/devtools/sci/scipack.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/AsciiCptCompile.cpp b/devtools/skycpt/AsciiCptCompile.cpp
index f339f6816c..3d638b6c35 100644
--- a/devtools/skycpt/AsciiCptCompile.cpp
+++ b/devtools/skycpt/AsciiCptCompile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/KmpSearch.cpp b/devtools/skycpt/KmpSearch.cpp
index 9551156295..aaae48614c 100644
--- a/devtools/skycpt/KmpSearch.cpp
+++ b/devtools/skycpt/KmpSearch.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/KmpSearch.h b/devtools/skycpt/KmpSearch.h
index 7bec5f07a8..04a0c9ac89 100644
--- a/devtools/skycpt/KmpSearch.h
+++ b/devtools/skycpt/KmpSearch.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/TextFile.cpp b/devtools/skycpt/TextFile.cpp
index 038b1b9329..b03e66121f 100644
--- a/devtools/skycpt/TextFile.cpp
+++ b/devtools/skycpt/TextFile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/TextFile.h b/devtools/skycpt/TextFile.h
index 6c390c050d..80564fbd5e 100644
--- a/devtools/skycpt/TextFile.h
+++ b/devtools/skycpt/TextFile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/cptcompiler.cpp b/devtools/skycpt/cptcompiler.cpp
index 657f51b8a0..eb2c287a1d 100644
--- a/devtools/skycpt/cptcompiler.cpp
+++ b/devtools/skycpt/cptcompiler.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/cpthelp.cpp b/devtools/skycpt/cpthelp.cpp
index 0780888097..e2e4577a90 100644
--- a/devtools/skycpt/cpthelp.cpp
+++ b/devtools/skycpt/cpthelp.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/cpthelp.h b/devtools/skycpt/cpthelp.h
index 71d760af3f..54daac2128 100644
--- a/devtools/skycpt/cpthelp.h
+++ b/devtools/skycpt/cpthelp.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/idFinder.cpp b/devtools/skycpt/idFinder.cpp
index 99e4378867..b2b9b9b524 100644
--- a/devtools/skycpt/idFinder.cpp
+++ b/devtools/skycpt/idFinder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/stdafx.cpp b/devtools/skycpt/stdafx.cpp
index e91ca09470..fb87b37cba 100644
--- a/devtools/skycpt/stdafx.cpp
+++ b/devtools/skycpt/stdafx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/devtools/skycpt/stdafx.h b/devtools/skycpt/stdafx.h
index d4d389a2b6..55fdf33cd4 100644
--- a/devtools/skycpt/stdafx.h
+++ b/devtools/skycpt/stdafx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/dists/engine-data/kyra.dat b/dists/engine-data/kyra.dat
index 305c7e665c..37b3b0ef0b 100644
--- a/dists/engine-data/kyra.dat
+++ b/dists/engine-data/kyra.dat
Binary files differ
diff --git a/dists/engine-data/lure.dat b/dists/engine-data/lure.dat
index 4e0d2894af..8ca69224da 100644
--- a/dists/engine-data/lure.dat
+++ b/dists/engine-data/lure.dat
Binary files differ
diff --git a/doc/cz/PrectiMe b/doc/cz/PrectiMe
index 390d20ab1d..0f475b9539 100644
--- a/doc/cz/PrectiMe
+++ b/doc/cz/PrectiMe
@@ -1,1688 +1,1750 @@
-P՘EФŒTIMФš ScummVM
-------------------------------------------------------------------------
-
-Pro vУ­ce informacУ­, seznamy kompatibility, podrobnosti o dotacУ­ch, nejnovФ›jХЁУ­ verze,
-novinky o vУНvoji a dalХЁУ­, prosУ­m navХЁtivte domovskou strУЁnku ScummVM na: http://www.scummvm.org/
-
-
-Obsah:
-------
-1.0) Уšvod
- * 1.1 O ScummVM
- * 1.2 RychlУН nУЁvod
-2.0) Kontakt
- * 2.1 HlУЁХЁenУ­ chyb
-3.0) PodporovanУЉ hry
- * 3.1 Ochrana proti kopУ­rovУЁnУ­
- * 3.2 PoznУЁmky ke hrУЁm Commodore64
- * 3.3 PoznУЁmky k Maniac Mansion NES
- * 3.4 PoznУЁmky ke hrУЁm Macintosh
- * 3.5 PoznУЁmky ke hrУЁm Multi-CD
- * 3.6 PoznУЁmky k The Curse of Monkey Island
- * 3.7 PoznУЁmky ke hrУЁm Broken Sword
- * 3.8 PoznУЁmky k Beneath a Steel Sky
- * 3.9 PoznУЁmky k Flight of the Amazon Queen
- * 3.10 PoznУЁmky ke Gobliiins
- * 3.11 PoznУЁmky k Inherit the Earth: Quest for the Orb
- * 3.12 PoznУЁmky k Simon the Sorcerer
- * 3.13 PoznУЁmky k The Feeble Files
- * 3.14 PoznУЁmky k The Legend of Kyrandia
- * 3.15 PoznУЁmky k PХ™edvУ­davУЉmu VstupnУ­mu Dialogu her Sierra AGI
- * 3.16 PoznУЁmky k Mickey's Space Adventure
- * 3.17 PoznУЁmky k Winnie the Pooh
- * 3.18 PoznУЁmky k Troll's Tale
- * 3.19 PoznУЁmky k DraФУ­ Historie
- * 3.20 ZnУЁmУЉ problУЉmy
-4.0) PodporovanУЉ platformy
-5.0) SpuХЁtФ›nУ­ ScummVM
- * 5.1 MoХОnosti pХ™У­kazovУЉho Х™УЁdku
- * 5.2 Volby jazyka
- * 5.3 GrafickУЉ filtry
- * 5.4 GlobУЁlnУ­ menu
- * 5.5 KlУЁvesovУЉ zkratky
-6.0) UloХОenУЉ hry
- * 6.1 AutomatickУЉ uklУЁdУЁnУ­
- * 6.2 PХ™evod uloХОenУНch her
- * 6.3 ZobrazenУ­/NaФtenУ­ uloХОenУНch her z pХ™У­kazovУЉho Х™УЁdku
-7.0) Hudba a zvuk
- * 7.1 Emulace AdLib
- * 7.2 Emulace FluidSynth MIDI
- * 7.3 Emulace MT-32
- * 7.4 Emulace MIDI
- * 7.5 PХ™irozenУЁ podpora MIDI
- * 7.6 Podpora nativnУ­ho UNIX, ALSA a sekvencУЉru dmedia
- * 7.7 Podpora MIDI serveru TiMidity++
- * 7.8 PouХОitУ­ komprimovanУНch zvukovУНch souborХЏ (MP3, Ogg Vorbis, Flac)
- * 7.9 VУНstupnУ­ vzorkovacУ­ kmitoФet
-8.0) Soubor sТ nastavenУ­m
- * 8.1 RozpoznУЁvanУЁ klУ­ФovУЁ slova nastavenУ­
- * 8.2 VlastnУ­ hernУ­ volby, kterУЉ mohou bУНt pХ™epУ­nУЁny pomoci grafickУЉho rozhranУ­
-9.0) SestavenУ­
-
-
-1.0) Уšvod:
----- -----
-
-1.1) O ScummVM:
----- ----------
-ScummVM je program, kterУН VУЁm umoХОХˆuje spouХЁtФ›t urФitУЉ klasickУЉ grafickУЉ point-and-click adventury, za pХ™edpokladu, ХОe jiХО mУЁte jejich datovУЉ soubory. A teФ ta chytrУЁ ФУЁst: ScummVM jenom nahrazuje spouХЁtФ›Фe, kterУЉ jsou dodУЁvУЁny se hrou, coХО VУЁm umoХОХˆuje hrУЁt hry vТ systУЉmech, pro kterУЉ nikdy nebyly navrХОeny!
-
-PХЏvodnФ› byl navrХОen pro spouХЁtФ›nУ­ her SCUMM od LucasArts SCUMM, jako napХ™. Maniac Mansion, Monkey Island, Day of the Tentacle nebo Sam and Max. SCUMM znamenУЁ 'NУЁstroj pro VytvУЁХ™enУ­ Skriptu pro Maniac Mansion', coХО byla prvnУ­ hra, pro kterou LucasArts tento systУЉm navrhl. A mnohem pozdФ›ji dal svУЉ jmУЉno ScummVM ('VM' znamenУЁ VirtuУЁlnУ­ Stroj).
-
-Postupem Фasu byla pХ™idУЁna podpora pro spoustu her mimo SCUMM a
-ScummVM nynУ­ takУЉ podporuje mnoho AGI a SCI her od Sierra (napХ™. King's
-Quest 1-6, Space Quest 1-5, ...), Discworld 1 a 2, Simon the Sorcerer 1 and 2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword I a II, Flight of the Amazon Queen, Gobliiins 1-3, sУЉrie The Legend of Kyrandia, mnoho ze SCUMMТ her pro dФ›ti od Humongous Entertainment (vФetnФ› her Freddi Fish a Putt Putt) a mnoho dalХЁУ­ch. Na strУЁnce kompatibility mХЏХОete najУ­t УКplnУН seznam sТ podrobnostmi, kterУЉ adventury jsou podporovУЁny a jak dobХ™e. ScummVM je neustУЁle zlepХЁovУЁn a proto navХЁtФ›vujte naХЁe strУЁnky Фasto.
-
-Mezi systУЉmy, na kterУНch mХЏХОete tyto hrУЁt, jsou bФ›ХОnУЉ stolnУ­ poФУ­taФe (majУ­cУ­ Windows, Linux, Mac OS X, ...), hernУ­ konzole
-(Dreamcast, Nintendo DS a Wii, PS2, PSP, ...), chytrУЉ telefony (Android,
-iPhone, PocketPC, Symbian ...) a dalХЁУ­.
-
-VТ souФasnosti je ScummVM stУЁle velkou ФУЁstУ­ ve vУНvoji. NezapomeХˆte, ХОe i kdyХО se snaХОУ­me zajistit, aby mnoho her bylo moХОno dokonФit pouze sТ pУЁr vУЁХОnУНmi chybami, pУЁdy programu mohou nastat a my neposkytujeme ХОУЁdnУЉ zУЁruky. PХ™es to vХЁechno, nФ›kterУЉ hry byly podporovУЁny po dlouhou dobu
-A mФ›ly by fungovat vТ poХ™УЁdku seТ vХЁemi novФ›jХЁУ­mi stabilnУ­mi verzemi. Jak dobХ™e bude hra ve ScummVM fungovat mХЏХОete zjistit prohlУЉdnutУ­m strУЁnky kompatibility.
-VlastnФ›, pokud troХЁiФku zahledУЁte, mХЏХОete zjistit, ХОe ScummVM je pouХОУ­vУЁn i komerФnФ› pro znovu vydУЁnУ­ nФ›kterУНch podporovanУНch her na modernУ­ch platformУЁch. To ukazuje, ХОe i nФ›kolik spoleФnostУ­ je spokojeno sТ kvalitou softwaru a jako moc dobХ™e mХЏХОe nФ›kterУЉ hry spouХЁtФ›t.
-
-Pokud mУЁte ScummVM rУЁdi, mХЏХОete ho podpoХ™it dotacУ­ pomocУ­ tlaФУ­tka PayPal na strУЁnce ScummVM. To nУЁm pomХЏХОe zakoupit nУЁstroje potХ™ebnУЉ ke snadnФ›jХЁУ­mu a rychlejХЁУ­mu vУНvoji ScummVM. Pokud nemХЏХОete podpoХ™it dotacУ­, pomozte a pХ™ispФ›jte zУЁplatou!
-
-1.2) RychlУН nУЁvod:
----- -------------
-Pro ty netrpФ›livУЉ zТ VУЁs je tu nУЁvod, jak ScummVM spustit vТ nФ›kolika krocУ­ch.
-
-1. StУЁhnФ›te si ScummVM z <http://www.scummvm.org/downloads.php> a nainstalujte ho.
-
-2. Na VaХЁem pevnУЉm disku vytvoХ™te sloХОku a zkopУ­rujte datovУЉ soubory zТ pХЏvodnУ­ho mУЉdia do tУЉto sloХОky. Zopakujte pro vХЁechny hry, kterУЉ chcete hrУЁt
-
-3. SpusХЅte ScummVM, zvolte 'PХ™idat hru', zvolte adresУЁХ™ sТ datovУНmi soubory hry (nesnaХОte se volit datovУЉ soubory samotnУЉ!) a stisknФ›te
-'Zvolit'.
-
-4. MФ›lo by se objevit dialogovУЉ okno umoХОХˆujУ­cУ­ VУЁm pozmФ›nit rХЏznУЁ nastavenУ­, pokud tak chcete (i kdyХО by mФ›lo bУНt vТ poХ™УЁdku vХЁechno nechat ve vУНchozУ­m nastavenУ­). DialogovУЉ okno potvrФte.
-
-5. VТ seznamu vyberte hru, kterou chcete hrУЁt a stisknФ›te 'Spustit'.
-
-VТ budoucnu byste mФ›li bУНt schopni pХ™eskoФit na krok 5, pokud nechcete pХ™idat dalХЁУ­ hry.
-
-Rada: Pokud chcete pХ™idat vУ­ce her najednou, zkuste stisknout a drХОet klУЁvesu shift pХ™edtУ­m, neХО kliknete na 'PХ™idat hru' т€“ tlaФУ­tko se zmФ›nУ­ na 'HromadnУЉ PХ™idУЁnУ­' a pokud ho stisknФ›te, jste znovu poХОУЁdУЁni o zvolenУ­ sloХОky, ale tentokrУЁt ScummVM prohledУЁ vХЁechny podsloХОky pro podporovanУЉ hry.
-
-
-2.0) Kontakt:
----- --------
-NejjednoduХЁХЁУ­m zpХЏsobem, jak kontaktovat tУНm ScummVM je pХ™edloХОenУ­m hlУЁХЁenУ­ o chybФ› (viz oddУ­l 2.1) nebo pouХОitУ­m naХЁich fУГr na http://forums.scummvm.org .
-MХЏХОete se takУЉ pХ™ipojit a odesУ­lat a e-maily na korespondenФnУ­ seznam scummvm-devel, nebo s nУЁmi chatovat na IRC (#scummvm na irc.freenode.net) NeХОУЁdejte nУЁs, prosУ­m, o podporu nefungujУ­cУ­ hry т€“ nejdХ™У­ve si pХ™eФtФ›te nejФastФ›jХЁУ­ otУЁzky na naХЁУ­ strУЁnce
-
-2.1) HlУЁХЁenУ­ chyb:
----- -------------
-Abyste mohli nahlУЁsit chybu, nejdХ™У­ve si, prosУ­me, vytvoХ™te si УКФet na SourceForge a kliknФ›te na odkaz "Bug Tracker" na naХЁУ­ strУЁnce. UjistФ›te se, prosУ­m, ХОe se chyba dУЁ znovu zjistit a stУЁle se objevuje vТ nejnovФ›jХЁУ­ verzi git/dennУ­ho sestavenУ­. TakУЉ na naХЁУ­ strУЁnce zkontrolujte seznam znУЁmУНch problУЉmХЏ (nУ­ХОe) a seznam kompatibility pro tuto hru, abyste se ujistili, ХОe problУЉm jiХО nenУ­ znУЁm:
-
- http://www.scummvm.org/compatibility
-
-ProsУ­me, nenahlaХЁujte chyby ve hrУЁch, kterУЉ nejsou vТ seznamu vТ sekci 'Supported Games' nebo seznamu kompatibility uvedeny jako dokonФitelnУЉ. My т€“vУ­me-, ХОe tyto hry majУ­ chyby.
-
-ZahrХˆte, prosУ­m, nУЁsledujУ­cУ­ informace:
- - Verzi ScummVM (PROSУME, vyzkouХЁejte nejnovФ›jХЁУ­ sestavenУ­ git/Daily)
- - Podrobnosti o chybФ›, vФetnФ› postupu na jejУ­ znovu opakovУЁnУ­
- - Jazyk hry (angliФtina, nФ›mФina, ...)
- - Verze hry (s Х™eФУ­, z diskety, ...)
- - Platforma a kompilУЁtor (Win32, Linux, FreeBSD, ...)
- - Pokud moХОno, pХ™iloХОte uloХОenou hru
- - Pokud se tato chyba objevila pouze nedУЁvno, poznamenejte si poslednУ­ verzi bez chyby a prvnУ­ verzi sТ touto chybou. Takto ji mХЏХОeme rychle spravit tУ­m, ХОe se podУ­vУЁme na provedenУЉ zmФ›ny.
-
-Nakonec prosУ­me, abyste kaХОdou chybu nahlaХЁovali samostatnФ›; neohlaХЁujte nФ›kolik chyb vТ jednom hlУЁХЁenУ­. (Jinak bude obtУ­ХОnУЉ sledovat stav kaХОdУЉ jednotlivУЉ chyby).
-
-
-3.0) PodporovanУЉ hry:
----- ----------------
-VТ tuto chvУ­li je o nУЁsledujУ­cУ­ch hrУЁch znУЁmo, ХОe fungujУ­ a mФ›ly by bУНt hratelnУЉ aХО dokonce:
-
-Hry SCUMM od LucasArts:
- Maniac Mansion [maniac]
- Zak McKracken and the Alien Mindbenders [zak]
- Indiana Jones and the Last Crusade [indy3]
- Loom [loom]
- The Secret of Monkey Island [monkey]
- Monkey Island 2: LeChuck's Revenge [monkey2]
- Indiana Jones and the Fate of Atlantis [atlantis]
- Day of the Tentacle [tentacle]
- Sam & Max Hit the Road [samnmax]
- Full Throttle [ft]
- The Dig [dig]
- The Curse of Monkey Island [comi]
-
-Hry AGI od Sierra:
- The Black Cauldron [bc]
- Gold Rush! [goldrush]
- King's Quest I [kq1]
- King's Quest II [kq2]
- King's Quest III [kq3]
- King's Quest IV [kq4]
- Leisure Suit Larry in the Land of the
- Lounge Lizards [lsl1]
- Mixed-Up Mother Goose [mixedup]
- Manhunter 1: New York [mh1]
- Manhunter 2: San Francisco [mh2]
- Police Quest I: In Pursuit of the Death
- Angel [pq1]
- Space Quest I: The Sarien Encounter [sq1]
- Space Quest II: Vohaul's Revenge [sq2]
- Fanmade Games [agi-fanmade]
-
-Hry AGOS od Adventuresoft/Horrorsoft:
- Elvira - Mistress of the Dark [elvira1]
- Elvira II - The Jaws of Cerberus [elvira2]
- Personal Nightmare [pn]
- Waxworks [waxworks]
- Simon the Sorcerer 1 [simon1]
- Simon the Sorcerer 2 [simon2]
- Simon the Sorcerer's Puzzle Pack
- - Demon In My Pocket [dimp]
- Simon the Sorcerer's Puzzle Pack
- - Jumble [jumble]
- Simon the Sorcerer's Puzzle Pack
- - NoPatience [puzzle]
- Simon the Sorcerer's Puzzle Pack
- - Swampy Adventures [swampy]
- The Feeble Files [feeble]
-
-Hry GOB od Coktel Vision:
- Bambou le sauveur de la jungle [bambou]
- Bargon Attack [bargon]
- Fascination [fascination]
- Geisha [geisha]
- Gobliiins [gob1]
- Gobliins 2 [gob2]
- Goblins 3 [gob3]
- Lost in Time [lostintime]
- Once Upon A Time: Little Red Riding Hood [littlered]
- The Bizarre Adventures of Woodruff
- and the Schnibble [woodruff]
- Urban Runner [urban]
- Ween: The Prophecy [ween]
-
-Hry MADE od Activision:
- Leather Goddesses of Phobos 2 [lgop2]
- Return to Zork [rtz]
- Rodney's Funscreen [rodney]
- The Manhole [manhole]
-
-DalХЁУ­ hry:
- Beneath a Steel Sky [sky]
- Broken Sword: The Shadow of the Templars [sword1]
- Broken Sword II: The Smoking Mirror [sword2]
- Cruise for a Corpse [cruise]
- Discworld [dw]
- Discworld 2: Missing Presumed ...!? [dw2]
- Dragon History [draci]
- Drascula: The Vampire Strikes Back [drascula]
- Eye of the Beholder [eob]
- Eye of the Beholder II: The Legend of
- Darkmoon [eob2]
- Flight of the Amazon Queen [queen]
- Future Wars [fw]
- Inherit the Earth: Quest for the Orb [ite]
- Nippon Safes Inc. [nippon]
- Lands of Lore: The Throne of Chaos [lol]
- The Journeyman Project: Pegasus Prime [pegasus]
- The Legend of Kyrandia [kyra1]
- The Legend of Kyrandia: The Hand of Fate [kyra2]
- The Legend of Kyrandia: Malcolm's Revenge [kyra3]
- Touche: The Adventures of the Fifth
- Musketeer [touche]
-
-Hry SCUMM od Humongous Entertainment:
- Backyard Baseball [baseball]
- Backyard Baseball 2001 [baseball2001]
- Backyard Baseball 2003 [baseball2003]
- Backyard Football [football]
- Big Thinkers First Grade [thinker1]
- Big Thinkers Kindergarten [thinkerk]
- Blue's 123 Time Activities [Blues123Time]
- Blue's ABC Time Activities [BluesABCTime]
- Blue's Art Time Activities [arttime]
- Blue's Birthday Adventure [BluesBirthday]
- Blue's Reading Time Activities [readtime]
- Fatty Bear's Birthday Surprise [fbear]
- Fatty Bear's Fun Pack [fbpack]
- Freddi Fish 1: The Case of the Missing
- Kelp Seeds [freddi]
- Freddi Fish 2: The Case of the Haunted
- Schoolhouse [freddi2]
- Freddi Fish 3: The Case of the Stolen
- Conch Shell [freddi3]
- Freddi Fish 4: The Case of the Hogfish
- Rustlers of Briny Gulch [freddi4]
- Freddi Fish 5: The Case of the Creature
- of Coral Cove [freddicove]
- Freddi Fish and Luther's Maze Madness [maze]
- Freddi Fish and Luther's Water Worries [water]
- Let's Explore the Airport with Buzzy [airport]
- Let's Explore the Farm with Buzzy [farm]
- Let's Explore the Jungle with Buzzy [jungle]
- Pajama Sam 1: No Need to Hide When It's
- Dark Outside [pajama]
- Pajama Sam 2: Thunder and Lightning
- Aren't so Frightening [pajama2]
- Pajama Sam 3: You Are What You Eat
- From Your Head to Your Feet [pajama3]
- Pajama Sam's Lost & Found [lost]
- Pajama Sam's Sock Works [socks]
- Putt-Putt Joins the Parade [puttputt]
- Putt-Putt Goes to the Moon [puttmoon]
- Putt-Putt Saves the Zoo [puttzoo]
- Putt-Putt Travels Through Time [putttime]
- Putt-Putt Enters the Race [puttrace]
- Putt-Putt Joins the Circus [puttcircus]
- Putt-Putt and Pep's Balloon-O-Rama [balloon]
- Putt-Putt and Pep's Dog on a Stick [dog]
- Putt-Putt & Fatty Bear's Activity Pack [activity]
- Putt-Putt's Fun Pack [funpack]
- SPY Fox 1: Dry Cereal [spyfox]
- SPY Fox 2: Some Assembly Required [spyfox2]
- SPY Fox 3: Operation Ozone [spyozon]
- SPY Fox in Cheese Chase [chase]
- SPY Fox in Hold the Mustard [mustard]
-
-Hry Living Books:
- Aesop's Fables: The Tortoise and the Hare [tortoise]
- Arthur's Birthday [arthurbday]
- Arthur's Teacher Trouble [arthur]
- Dr. Seuss's ABC [seussabc]
- Green Eggs and Ham [greeneggs]
- Harry and the Haunted House [harryhh]
- Just Grandma and Me [grandma]
- Little Monster at School [lilmonster]
- Ruff's Bone [ruff]
- Sheila Rae, the Brave [sheila]
- Stellaluna [stellaluna]
- The Berenstain Bears Get in a Fight [bearfight]
- The Berenstain Bears in the Dark [beardark]
- The New Kid on the Block [newkid]
-
-NУЁsledujУ­cУ­ hry by mФ›ly jУ­t spustit, ale zatУ­m nejsou УКplnФ› hratelnУЉ. Hrajte je pouze na vlastnУ­ riziko a prosУ­me, abyste pro tyto hry nenahlaХЁovali chyby.
-Pokud chcete mУ­t nejnovФ›jХЁУ­ zprУЁvy o kompatibilitУЁch her, navХЁtivte naХЁУ­ strУЁnku a prohlУЉdnФ›te si tabulku kompatibilit.
-
- Backyard Football 2002 [football2002]
- Backyard Soccer [soccer]
- Backyard Soccer MLS [soccermls]
- Backyard Soccer 2004 [soccer2004]
- Blue's Treasure Hunt [BluesTreasureHunt]
- Pajama Sam: Games to Play on Any Day [pjgames]
-
-NУЁsledujУ­cУ­ hry jsou odvozeny od jУЁdra SCUMM, ale ScummVM je nepodporuje (zatУ­m):
-
- OstatnУ­ hry od Humongous Entertainment
-
-NezapomeХˆte, prosУ­m, ХОe jУЁdra mohou obsahovat chyby a nezavedenУЉ funkce, kterУЉ nФ›kdy zabrУЁnУ­ hru dokonФit. UklУЁdejte Фasto a nahlaste chyby, prosУ­m (instrukce pro hlУЁХЁenУ­ chyb jsou vУНХЁe), pokud na takovou chybu narazУ­te v 'podporovanУЉ' hХ™e.
-
-
-3.1) Ochrana proti kopУ­rovУЁnУ­:
----- -------------------------
-TУНm ScummVM nepodporuje pirУЁtstvУ­. NicmУЉnФ› existujУ­ pХ™У­pady, kdy hernУ­ spoleФnosti (jako LucasArts) sami ve svУНch hrУЁch poskytujУ­ 'cracknutУЉ'
-spouХЁtФ›Фe т€“ vТ tФ›chto pХ™У­padech datovУЉ soubory obsahujУ­ skripty pro ochranu proti kopУ­rovУЁnУ­, ale pХ™evadФ›Ф je obejde (toto mХЏХОe podobnФ› provУЁdФ›t nelegУЁlnФ› cracknutУЁ verze, sТ tУ­m rozdУ­lem, ХОe zde toto provedl vУНrobce hry. Neexistuje ХОУЁdnУН zpХЏsob, jak mХЏХОeme rozliХЁit legitimnУ­ a pirУЁtskУЉ datovУЉ soubory, takХОe vТ hrУЁch, o kterУНch vУ­me, ХОe byla nФ›kdy prodУЁvУЁna cracknutУЁ verze pХЏvodnУ­ho pХ™evadФ›Фe bude ScummVM muset vХОdy ochranu pХ™eskoФit.
-
-VТ nФ›kterУНch pХ™У­padech ScummVM pХ™esto zobrazУ­ obrazovku ochrany proti kopУ­rovУЁnУ­. Zkuste zadat jakoukoli odpovФ›Ф. Je tu moХОnost, ХОe toto bude fungovat.
-
-ScummVM pХ™eskakuje ochranu vТ nУЁsledujУ­cУ­ch hrУЁch:
-
- * Beneath a Steel Sky
- -- potlaФeno sТ laskavУНm svolenУ­m Revolution Software.
- * Dreamweb
- -- seznam dostupnУНch pХ™У­kazХЏ v terminУЁlech ve hХ™e je nynУ­ zobrazen
- kdyХО hrУЁФ pouХОije pХ™У­kaz 'help'
- * Inherit the Earth: Quest for the Orb (Floppy version)
- -- potlaФeno sТ laskavУНm svolenУ­m Wyrmkeep Entertainment,
- protoХОe byla potlaФena ve vХЁech vydУЁnУ­ch hry na CD.
- * Loom (EGA DOS)
- * Maniac Mansion
- * Monkey Island 2: LeChuck's Revenge
- * Simon the Sorcerer 1 (Floppy version)
- * Simon the Sorcerer 2 (Floppy version)
- -- potlaФeno sТ laskavУНm svolenУ­m from Adventure Soft,
- protoХОe byla potlaФena ve vХЁech vydУЁnУ­ch hry na CD.
- * The Secret of Monkey Island (VGA)
- * Waxworks
- * Zak McKracken and the Alien Mindbenders
-
-
-3.2) PoznУЁmky keТ hrУЁm Commodore64:
----- -----------------------------
-Jak Maniac Mansion tak Zak McKracken mohou bУНt spuХЁtФ›ny, ale Maniac Mansion nenУ­ jeХЁtФ› hratelnУН. JednoduХЁe pojmenujte disky D64 jako
-"maniac1.d64" a "maniac2.d64" nebo "zak1.d64" a "zak2.d64", pak by mФ›l ScummVM automaticky hru zjistit, pokud ho odkУЁХОete na sprУЁvnou sloХОku.
-
-Nebo mХЏХОete pouХОУ­t 'extract_mm_c64' zТ balУ­Фku nУЁstrojХЏ pro extrahovУЁnУ­ datovУНch souborХЏ. Pak ale ScummVM hru Х™УЁdnФ› automaticky nezjistУ­ ScummVM, a musУ­te se ujistit, ХОe platforma je nastavena na Commodore64. DoporuФujeme pouХОУ­t mnohem jednoduХЁХЁУ­ postup popsanУН vТ pХ™edchozУ­m odstavci.
-
-
-3.3) PoznУЁmky ke Maniac Mansion NES:
----- -------------------------
-PodporovanУЉ verze jsou BritskУЁ angliФtina (E), FrancouzХЁtina (F), NФ›mФina (G), ItalХЁtina (I), Х vУЉdХЁtina (SW) a AmerickУЁ angliФtina (U). ScummVM pro spuХЁtФ›nУ­ vyХОaduje pouze ФУЁst PRG a ne celУН ROM.
-
-Abyste mohli hru spustit, musУ­te vyjmout prvnУ­ch 16 bajtХЏ zТ ROM, sТ kterУНm pracujete. JakУНkoli hex editor bude fungovat, pokud mХЏХОete kopУ­rovat/vklУЁdat. PotУЉ. Co ROM otevХ™ete pomocУ­ hex editoru, zkopУ­rujte vХЁechno zТ druhУЉho Х™УЁdku (17. bajt) na konec. PotУЉ, co toto provedete, vloХОte ho do novУЉho hex souboru. Pojmenujte ho "Maniac Mansion (XX).prg" kde XX znamenУЁ verzi, se kterou pracujete (E, F, G, I, SW, nebo U). KoneФnУЁ velikost by mФ›la bУНt pХ™esnФ› 262144 bajtХЏ.
-
-Pokud hru pХ™idУЁvУЁte ruФnФ›, ujistФ›te se, ХОe platforma je nastavena na NES.
-
-NejbФ›ХОnФ›jХЁУ­ chyby, kterУЉ zabraХˆujУ­ spuХЁtФ›nУ­ hry:
-
- * Х patnУН soubor
- * ROM byl extrahovУЁn pomocУ­ nУЁstrojХЏ z verze 0.7.0
- * SnaХОУ­te se do ScummVM vklУЁdat CELУ ROM a ne jenom PRG ФУЁst.
-
-Je takУЉ moХОno extrahovat oddФ›lenУЉ soubory LFL zТ PRG ФУЁsti. Pro toto pouХОijte nУЁstroj 'extract_mm_nes' zТ balУ­Фku nУЁstrojХЏ.
-
-
-3.4) PoznУЁmky ke hrУЁm Macintosh:
----- ---------------------------
-VХЁechny adventury LucasArts zaloХОenУЉ na SCUMM, kromФ› COMI, takУЉ existujУ­ ve verzУ­ch pro in Macintosh. ScummVM mХЏХОe vФ›tХЁinu (vХЁechny?) pouХОУ­t, nicmУЉnФ›, vТ nФ›kterУНch pХ™У­padech je nutnУЁ dodateФnУЁ prУЁce. NejdХ™У­ve, pokud pro toto nepouХОУ­vУЁte Macintosh, pХ™У­stup kТ datХЏm na CD/disketФ› mХЏХОe bУНt obtУ­ХОnУН. DХЏvodem je to, ХОe Mac pouХОУ­vУЁ zvlУЁХЁtnУ­ formУЁt disku nazvanУН HFS, kterУН ostatnУ­ systУЉmy vФ›tХЁinou nepodporujУ­. NicmУЉnФ› existuje, nФ›kolik nУЁstrojХЏ, kterУЉ jsou zadarmo a umoХОХˆujУ­ ФУ­st takovУЉto svazky HFS. NapХ™У­klad "HFVExplorer" pro Windows a "hfsutils" pro Linux a ostatnУ­ UnixovУЉ operaФnУ­ systУЉmy.
-
-VФ›tХЁina novФ›jХЁУ­ch her na Macintosh je dodУЁvУЁna pouze sТ jednУ­m datovУНm souborem (v nФ›kterУНch pХ™У­padech byl tento soubor uФinФ›n neviditelnУНm, takХОe moХОnУЁ budete potХ™ebovat dodateФnУЉ nУЁstroje, abyste ho mohli zkopУ­rovat). ScummVM je schopen takovУНto soubor pouХОУ­t pХ™У­mo; jednoduХЁe odkaХОte ScummVM na sloХОku obsahujУ­cУ­ tento soubor a mФ›lo by to fungovat (tak jako sТ kaХОdou podporovanou hrou).
-
-VТ balУ­Фku nУЁstrojХЏ takУЉ poskytujeme nУЁstroj nazvanУН 'extract_scumm_mac', kterУН extrahuje data zТ tФ›chto datovУНch souborХЏ, ale toto nenУ­ ani potХ™eba, ani doporuФeno.
-
-Pro dalХЁУ­ informace o kopУ­rovУЁnУ­ hernУ­ch souborХЏ Macintosh na VУЁХЁ pevnУН disk si prohlУЉdnФ›te:
-
- http://wiki.scummvm.org/index.php/HOWTO-Mac_Games
-
-
-3.5) PoznУЁmky ke hrУЁm Multi-CD:
----- --------------------------
-ObecnФ› ScummVM moc dobХ™e nefunguje s hrami na Multi-CD. To je proto, ХОe ScummVM pХ™edpoklУЁdУЁ, ХОe vХЁechno o hХ™e mХЏХОe bУНt nalezeno vТ jednУЉ sloХОce. I kdyХО ScummVM mУЁ schopnost poХОУЁdat uХОivatele, aby vymФ›nil CD, pХЏvodnУ­ spouХЁtФ›Ф souboru vФ›tХЁinou nainstaluje malУЉ mnoХОstvУ­ souborХЏ na pevnУН disk. Pokud tyto soubory nelze najУ­t na vХЁech CD, ScummVM bude mУ­t potУ­ХОe.
-
-NaХЁtФ›stУ­ mХЏХОe ScummVM hry bez problУЉmХЏ spouХЁtФ›t pХ™У­mo zТ pevnУЉho disku, pokud vytvoХ™У­te sloХОku se sprУЁvnou kombinacУ­ souborХЏ. VФ›tХЁinou, kdyХО se soubor objevУ­ na vУ­ce, neХО jednom CD mХЏХОete vybrat jeden z nich.
-
-
-3.6) PoznУЁmky k The Curse of Monkey Island:
----- --------------------------------------
-Pro tuto hru budete potХ™ebovat soubory comi.la0, comi.la1 a comi.la2.
-Soubor comi.la0 mХЏХОete nalУЉzt na vХЁech CD hry, ale protoХОe jsou stejnУЉ, mХЏХОete pouХОУ­t kterУНkoli z nich.
-
-DУЁle potХ™ebujete vytvoХ™it podsloХОku "resource" obsahujУ­cУ­ vХЁechny soubory z т€“obou- podsloХОek "resource" na dvou CD. NФ›kterУЉ soubory se objevujУ­ na obou CD, ale znovu jsou stejnУЉ.
-
-
-3.7) PoznУЁmky ke hrУЁm Broken Sword:
----- ------------------------------
-Pokyny pro hry Broken Sword jsou pro verze od Sold-Out Software, kde kaХОdУЁ hra je na dvou CD, protoХОe tyto verze byly nejdostupnФ›jХЁУ­ vТ dobФ›, kdy je ScummVM zaФal podporovat. DoufУЁme, ХОe jsou dostateФnФ› obecnУЉ pro pouХОitУ­ i vТ jinУНch vydУЁnУ­ch her.
-
-
-3.7.1) Videa zТ her Broken Sword:
------- -------------------------
-Videa pro hry Broken Sword majУ­ vТ sobФ› trochu historie (viz dalХЁУ­ oddУ­l, pokud jste zvФ›davУ­), ale obecnФ› jedinУЉ, co potХ™ebujete udФ›lat, je zkopУ­rovat soubory .SMK ze sloХОek "SMACKS" nebo "SMACKSHI" na CD do stejnУЉ sloХОky jako ostatnУ­ datovУЉ soubory hry. (Broken Sword mУЁ takУЉ sloХОku "SMACKSLO" se stejnУНmi videi, ale ty jsouТ niХОХЁУ­ kvality.) MХЏХОete je umУ­stit do podsloХОky sТ nУЁzvem "video", pokud VУЁm to pХ™ijde hezФУ­.
-
-Ve verzУ­ch pro PlayStation, mХЏХОete pХЏvodnУ­ videa vypsat z disku. KaХОdУН soubor, kterУН mУЁ pХ™У­ponu "STR", byste mФ›li vypsat jako *Фist* sektory z disku (vХЁech 2352 bajtХЏ na sektor). MХЏХОete takУЉ mУ­st toho pouХОУ­t pХ™eformУЁtovanУЁ videa, kterУЁ jsou zmУ­nФ›na nУ­ХОe, ale to nebude fungovat pro vХЁechny videa v Broken Sword II. Pro vУ­ce informacУ­ si prohlУЉdnФ›te:
-
- http://wiki.scummvm.org/index.php/HOWTO-PlayStation_Videos
-
-NФ›kterУЁ vydУЁnУ­ hry, a takУЉ verze pro PlayStation, Smacker videa nemajУ­. Revolution Software nУЁm laskavФ› dovolilo poskytovat pХ™eformУЁtovanУЁ videa ke staХОenУ­ na naХЁУ­ strУЁnce:
-
- http://www.scummvm.org/downloads.php
-
-Tato videa jsou poskytovУЁna ve formУЁtu DXA se zvukem ve formУЁtu FLAC. Jejich kvalita se rovnУЁ originУЁlu dУ­ky pouХОitУ­ bezztrУЁtovУЉ komprese. ZobrazenУ­ tФ›chto videУ­ vyХОaduje, aby verze ScummVM byla sestavena sТ podporou FLAC i zlib.
-
-Pro systУЉmy, kterУЉ jsou pХ™У­liХЁ pomalУЉ, aby zvlУЁdli dekУГdovat formУЁt FLAC byl zvuk videУ­ takУЉ poskytnut oddФ›lenФ› ve formУЁtu OGG Vorbis audio. Toto vyХОaduje, aby verze ScummVM byla sestavena sТ podporou libVorbis a zlib.
-
-Pro Broken Sword takУЉ poskytujeme pХ™У­davek pro titulky. JednoduХЁe ho rozbalte a nУЁsledujte pokyny v souboru readme.txt. BalУ­Фek vТ souФasnosti nefunguje ve videУ­ch na PlayStation. (Broken Sword II jiХО titulky mУЁ; nenУ­ tХ™eba dalХЁУ­ prУЁce pro jejich pХ™idУЁnУ­.)
-
-
-3.7.2) Videa her Broken Sword ve zpФ›tnУЉm pohledu:
------- ------------------------------------------
-PХЏvodnУ­ vydУЁnУ­ her Broken Sword pouХОУ­valo formУЁt Smackerт„Ђ od RAD Game Tools. ProtoХОe spoleФnost RAD nebyla ochotna nУЁm otevХ™У­t starХЁУ­ zastaralУЉ verze tohoto formУЁtu a poХОУЁdala, abychom neprovУЁdФ›li jeho zpФ›tnou analУНzu, museli jsme nalУЉzt jinУЉ Х™eХЁenУ­.
-
-V Broken Sword II bylo moХОnУЉ pХ™ehrУЁt Х™eФ, aniХО by se muselo pХ™ehrУЁvat video. To zХЏstalo jako nouzovУЉ Х™eХЁenУ­ aХО do ScummVM 1.0.0, ale pro vХЁechny stabilnУ­ verze to nikdy nebylo jedinУЉ Х™eХЁenУ­.
-
-Ve ScummVM 0.6.0 jsme pouХОУ­vali MPEG, coХО zajistilo rozumnУН kompromis mezi velikostУ­ a kvalitou. Ve ScummVM 0.10.0 bylo toto nahrazeno DXA
-(pХЏvodnФ› pХ™idУЁno pro "The Feeble Files" od AdventureSoft). To nУЁm dalo moХОnost zajistit videa ve stejnУЉ kvalitФ› jako pХЏvodnУ­, za cenu vФ›tХЁУ­ velikosti.
-
-Nakonec na zaФУЁtku roku 2006 byl formУЁt Smacker zpФ›tnФ› analyzovУЁn pro projekt FFmpeg. DУ­ky jejich tvrdУЉ prУЁci ScummVM 1.0.0 nynУ­ podporuje pХЏvodnУ­ videa. ZУЁroveХˆ byla ukonФena podpora MPEG. ZТ technickУЉho hlediska je toto dobХ™e, protoХОe pХ™ehrУЁvУЁnУ­ videУ­ MPEG bylo velmi sloХОitУЉ a stejnФ› nevypadaly tak dobХ™e jako verze ve formУЁtu DXA a Smacker.
-
-
-3.7.3) Broken Sword:
------- -------------
-Pro tuto hru budete potХ™ebovat vХЁechny soubory ze seskupenУ­ sloХОek na obou CD. Pro verze Windows a Macintosh budete takУЉ potХ™ebovat soubory speech.clu ze sloХОek speech, ale protoХОe soubory nejsou stejnУЉ, budete je muset pХ™ejmenovat na speech1.clu a speech2.clu z CD 1 a 2 vТ tomto poХ™adУ­. Verze na PlayStation vyХОaduje speech.tab, speech.dat, speech.lis, a speech.inf.
-
-DУЁle verze pro Windows a Macintosh vyХОadujУ­ podsloХОku music se vХЁemi soubory z podsloХОek music na obou CD. NФ›kterУЉ zТ tФ›chto souborХЏ se objevujУ­ na obou CD, ale vТ tФ›chto pХ™У­padech jsou buФ stejnУЉ, nebo, vТ jednom pХ™У­padФ›, je tУЉmФ›Х™ stejnУН, ХОe to nemУЁ ХОУЁdnУН vУНznam. Verze pro PlayStation vYХОaduje tunes.dat a tunes.tab.
-
-
-3.7.4) Broken Sword II:
------- ----------------
-Pro tuto hru budete potХ™ebovat vХЁechny soubory ze seskupenУ­ sloХОek na obou CD. (Abych pravdu Х™ekl, pУЁr zТ nich nemusУ­ bУНt nezbytnФ› nutnУЉ, ale ty, o kterУНch nemУЁm jistotu, jsou velmi malУЉ.)
-Je takУЉ tХ™eba pХ™ejmenovat soubory speech.clu a music.clu na speech1.clu,
-speech2.clu, music1.clu a music2.clu, aby ScummVM mohl zjistit, kterУЉ jsou z CD 1 a kterУЉ z CD 2. VХЁechny ostatnУ­ soubory, kterУЉ jsou umУ­stФ›ny vТ seskupenУ­ sloХОek, jsou stejnУЉ. PouХОijte kterУЉkoli soubory chcete.
-
-KromФ› toho budete potХ™ebovat soubory cd.inf a, pХ™У­padnФ›, startup.inf ze sloХОky sword2 na CD 1.
-
-
-3.8) PoznУЁmky k Beneath a Steel Sky:
----- -------------------------------
-Od ScummVM 0.8.0 potХ™ebujete dodateФnУН soubor 'SKY.CPT', abyste mohli Beneath a Steel Sky spustit.
-
-Tento soubor je dostupnУН na strУЁnce 'Downloads' domovskУЉ strУЁnky ScummVM.
-MХЏХОete ho umУ­stit buФ do sloХОky obsahujУ­cУ­ ostatnУ­ datovУЉ soubory (SKY.DNR, SKY.DSK), na VaХЁi dodateФnou cestu, nebo do sloХОky. Kde se nachУЁzУ­ spouХЁtФ›cУ­ soubor ScummVM.
-
-
-3.9) PoznУЁmky k Flight of the Amazon Queen:
----- --------------------------------------
-Abyste mohli pouХОУ­t tu verzi, kterУЁ nenУ­ volnФ› ХЁiХ™itelnУЁ
-(z pХЏvodnУ­ho CD), musУ­te mУ­t soubor 'queen.tbl'
-(dostupnУН ze strУЁnky 'Downloads' naХЁУ­ domovskУЉ strУЁnky) a umУ­stit ho buФ do sloХОky obsahujУ­cУ­ soubor hry 'queen.1', na VaХЁi dodateФnou cestu, nebo do sloХОky. Kde se nachУЁzУ­ spouХЁtФ›cУ­ soubor ScummVM.
-
-TakУЉ mХЏХОete pouХОУ­t nУЁstroj 'compress_queen' zТ balУ­Фku nУЁstrojХЏ pro 'znovu sestavenУ­' VaХЁeho datovУЉho souboru FOTAQ pro zahrnutУ­ tabulky pro tuto konkrУЉtnУ­ verzi, ФУ­mХО odstranУ­te zУЁvislost na soubor 'queen.tbl' pХ™i spuХЁtФ›nУ­. Tento nУЁstroj VУЁm takУЉ umoХОХˆuje komprimovat Х™eФ a zvukovУЉ efekty do formУЁtu MP3, OGG nebo FLAC.
-
-
-3.10) PoznУЁmky ke Gobliiins:
------ ----------------------
-CD verze sУЉrie Gobliiins obsahuje jednu velkou zvukovou stopu, kterou potХ™ebujete vyjmout (viz oddУ­l o pouХОitУ­ komprimovanУНch zvukovУНch souborХЏ) a zkopУ­rovat ji do hernУ­ sloХОky, pokud chcete ve hХ™e hudbu, aniХО byste museli CD mУ­t stУЁle v jednotce. VТ tУЉto stopФ› jsou takУЉ Х™eФ a jejУ­ hlasitost se tedy takУЉ mФ›nУ­ podle hlasitosti hudby.
-
-
-3.11) PoznУЁmky k Inherit the Earth: Quest for the Orb:
------ ------------------------------------------------
-Abyste mohli spustit verzi pro Mac OS X od Wyrmkeep musУ­te data zkopУ­rovat zТ CD na VУЁХЁ pevnУН disk. Pokud pouХОУ­vУЁte PC, pak se podУ­vejte na:
-
- http://wiki.scummvm.org/index.php/HOWTO-Mac_Games
-
-I kdyХО se vТ tomto ФlУЁnku pУ­ХЁe hlavnФ› o hrУЁch SCUMM, je zde takУЉ zmУ­nФ›n nУЁstroj "HFVExplorer", kterУН potХ™ebujete kТ extrakci souborХЏ. NezapomeХˆte, ХОe data Х™eФi "Inherit the Earth Voices" musУ­te umУ­stit do stejnУЉho adresУЁХ™e, kde jsou uloХОena data hry:
-
- Inherit the Earth.app/Contents/Resources
-
-Ve starУЉ verzi pro Mac OS 9 potХ™ebujete soubory zkopУ­rovat ve formУЁtu MacBinary, protoХОe by mФ›li obsahovat jak zdrojovУЉ, tak datovУЉ vidlice. ZkopУ­rujte vХЁechny soubory 'ITE *'.
-
-
-3.12) PoznУЁmky k Simon the Sorcerer 1 a 2:
------ ------------------------------------
-Pokud mУЁte dvojitou verzi Simon the Sorcerer 1 nebo 2 na CD, verzi pro Windows naleznete vТ hlavnУ­ sloХОce na CD a verzi pro DOS ve sloХОce DOS na CD.
-
-
-3.13) PoznУЁmky k The Feeble Files:
------ ----------------------------
-Pokud mУЁte verzi pro Windows, je tХ™eba si uvФ›domit pУЁr vФ›cУ­.
-
-Mnoho souborХЏ, kterУЉ hra vyХОaduje, je uloХОeno v souboru InstallShield s nУЁzvem data1.cab, kterУН ScummVM nemХЏХОe rozbalit. Budete muset pouХОУ­t pХЏvodnУ­ instalУЁtor, nebo i5comp pro rozbalenУ­ obsahu tohoto souboru. NУЁstroj pro dekomprimaci i5comp mХЏХОe bУНt nalezen pХ™i hledУЁnУ­ na internetu.
-
-Abyste mohli pouХОУ­t soubory sТ Х™eФУ­ ve ScummVM, musУ­ bУНt pХ™ejmenovУЁny nУЁsledovnФ›:
-PХ™ejmenovat voices.wav na CD1 na voices1.wav
-PХ™ejmenovat voices.wav na CD2 na voices2.wav
-PХ™ejmenovat voices.wav na CD3 na voices3.wav
-PХ™ejmenovat voices.wav na CD4 na voices4.wav
-
-3.14) PoznУЁmky k The Legend of Kyrandia:
------ ----------------------------------
-Abyste mohli spustit The Legend of Kyrandia ve ScummVM potХ™ebujete soubor 'kyra.dat'.
-Soubor by mФ›l bУНt vХОdykcy souФУЁstУ­ oficiУЁlnУ­ch balУ­ФkХЏ ScummVM. V pХ™У­padФ›, ХОe ScummVM
-hlУЁsУ­, ХОe soubor chybУЁ, mХЏХОete ho najУ­t na strУЁnce ScummVM v sekci 'Downloads'.
-NezapomeХˆte, ХОe souФasnУЁ verze ScummVM pro Windows by mФ›la soubor obsahovat ve spouХЁtФ›Фi a tudУ­ХО ho
-musУ­te mУ­t pouze, kdyХО ScummVM soubor nemХЏХОe nalУЉzt.
-
-3.15) PoznУЁmky kТ PХ™edvУ­davУЉmu VstupnУ­mu Dialogu her Sierra AGI:
------ ---------------------------------------------------------
-PХ™edvУ­davУН VstupnУ­ Dialog je pomХЏcka ScummVM pro spouХЁtФ›nУ­ her pouХОУ­vajУ­cУ­ jУЁdro AGI (kterУН je znУЁm, ХОe vyХОaduje vstup zТ pХ™У­kazovУЉ Х™УЁdky) na zaХ™У­zenУ­ch sТ omezenou podporou klУЁvesnice. VТ tФ›chto situacУ­ch, kdy zadУЁvУЁnУ­ pomocУ­ emulovanУЉ klУЁvesnice je dosti УКnavnУЉ, mХЏХОou bУНt pХ™У­kazy rychle a snadno zadУЁny pomocУ­ PХ™edvУ­davУЉho VstupnУ­ho Dialogu.
-
-Abyste zapnuli pХ™edvУ­davУН vstup v hrУЁch AGI, potХ™ebujete zkopУ­rovat soubor pred.dic do dodateФnУЉ sloХОky ScummVM nebo do sloХОky hry, kterou chcete hrУЁt. Tento slovnУ­k byl vytvoХ™en analУНzou vХЁech znУЁmУНch her AGI a obsahuje maximУЁlnУ­ sadu bФ›ХОnУНch slov.
-
-Pokud je slovnУ­k zjiХЁtФ›n, je PХ™edvУ­davУН VstupnУ­ Dialog zobrazen buФ pХ™i klinutУ­ na oblast pХ™У­kazovУЉho Х™УЁdku (kdykoliv je poХОadovУЁn vstup klУЁvesnice, i vТ rУЁmeФcУ­ch dialogovУНch oken), nebo v nФ›kterУНch verzУ­ch pro jinУЉ systУЉmy stisknutУ­m urФenУЉ klУЁvesovУЉ zkratky.
-
-PХ™edvУ­davУН VstupnУ­ Dialog pracuje ve tХ™ech reХОimech, kterУЉ jsou pХ™epУ­nУЁny tlaФУ­tkem (*)Pre/123/Abc. HlavnУ­ vstupnУ­ metodou je pХ™edvУ­davУН reХОim
-(Pre), kterУН pХ™ipomУ­nУЁ "rychlУЉ zadУЁvУЁnУ­" vТ mobilnУ­ch telefonech.
-Abeceda je rozdФ›lena do 9 sad, kterУЉ pХ™irozenФ› odpovУ­dajУ­ 9 klУЁvesУЁm ФУ­selnУЉ klУЁvesnice (0 je mezera). Pro psanУ­ slova zmУЁФknФ›te jednou ФУ­slo sady, kterУЁ obsahuje pУ­smeno slova, kterУЉ chcete napsat, pak pokraФujete kТ dalХЁУ­mu. NapХ™У­klad, pokud chcete napsat pХ™У­kaz 'look', mФ›li byste zmУЁФknout 5665. Jak postupnФ› pУ­ХЁete ФУ­selnУН kУГd zamУНХЁlenУЉho slova, je slovnУ­k prohledУЁvУЁn pro znУЁmУЁ slova, kterУЁ se shodujУ­ sТ VaХЁУ­m vstupem aХО do tohoto bodu. Jak maФkУЁte vУ­ce klУЁves, slovnУ­k se pХ™iblУ­ХОУ­ ke sprУЁvnУЉmu slovu. To je dХЏvod, proФ vypsanУЉ slovo se mХЏХОe nУЁhle zmФ›nit mezi stisky klУЁves. NФ›kdy se ale vyskytnou pХ™У­pady, kdy vУ­ce neХО jedno slovo mУЁ stejnУЉ ФУ­selnУЉ zastoupenУ­. NapХ™У­klad slova 'quit' a 'suit' odpovУ­dajУ­ stejnУНm ФУ­slХЏm, a to 7848. VТ tФ›chto pХ™У­padech se rozsvУ­tУ­ tlaФУ­tko dalХЁУ­
-(#). Jeho stisknutУ­m mХЏХОete prochУЁzet seznam slov, kterУЁ sdУ­lejУ­ stejnУН kУГd a nakonec pХ™ijmout to sprУЁvnУЉ stisknutУ­m (0)mezera nebo tlaФУ­tka Ok.
-
-Druhou vstupnУ­ metodou (123) je ФУ­selnУН vstup: KaХОdou klУЁvesu, kterou stisknФ›te, je doslova zadУЁna jako ФУ­slo.
-
-TХ™etУ­ vstupnУ­ metodou (Abc) je vstupnУ­ reХОim Alfa/opakovanУЉho stisknutУ­ tlaФУ­tka. Tento reХОim je urФen pro zadУЁvУЁnУ­ textu bez pomoci od slovnУ­ku pХ™edvУ­davУЉho reХОimu (Pre). Text je zadУЁvУЁn po jednotlivУНch pУ­smenech. Pro kaХОdУЉ pУ­smeno nejdХ™У­ve stisknФ›te ФУ­slo sady, kterУЉ obsahuje pУ­smeno, kterУЉ chcete, pak pouХОijte tlaФУ­tko dalХЁУ­ (#) pro prochУЁzenУ­ pУ­smeny a opakujte sТ dalХЁУ­m ФУ­slem. NapХ™У­klad, pro zadУЁnУ­ slova 'look' musУ­te stisknout nУЁsledujУ­cУ­: 5##6##6##5#
-
-DialogovУЉ okno je plnФ› pouХОitelnУЉ pomocУ­ myХЁi, ale vТ nФ›kterУНch verzУ­ch ScummVM pro jinУЉ platformy, je pouХОitУ­ dialogu pohodlnФ›jХЁУ­ pomocУ­ ФУ­selnУЉ klУЁvesnice. NФ›kterУЁ tlaФУ­tka dialogu mohou bУНt takУЉ pouХОУ­vУЁna pomocУ­ ХЁipkovУНch klУЁves a enter.
-
-
-3.16) PoznУЁmky k Mickey's Space Adventure:
------ ------------------------------------
-Abyste mohli Mickey's Space Adventure hrУЁt ve ScummVM, potХ™ebujete spolu sТ datovУНmi soubory hry takУЉ pХЏvodnУ­ spouХЁtФ›Ф (mickey.exe).
-
-Pro tuto hru ve ScummVM, existuje rozХЁУ­Х™enУЁ podpora myХЁi, i kdyХО vТ pХЏvodnУ­ hХ™e takovУЁto podpora nebyla. PoloХОky menu mohou bУНt vybrУЁny pomocУ­ myХЁi a je takУЉ moХОnУЉ se myХЁУ­ pХ™esunout do jinУНch mУ­st. KdyХО se kurzor myХЁi nachУЁzУ­ na okraji obrazovky, zФervenУЁ, pokud je moХОnУЉ jУ­t vТ tomto smФ›ru. HrУЁФ pak mХЏХОe jednoduХЁe kliknout na okraje hernУ­ obrazovky pro zmФ›nu mУ­sta, podobnФ› jako mnoho adventur, coХО je jednoduХЁХЁУ­ a pХ™У­moФaХ™ejХЁУ­ neХО pohyb pomocУ­ menu.
-
-
-3.17) Winnie the Pooh notes:
------ ----------------------
-Je moХОnУЉ importovat uloХОenУЉ hry zТ pХЏvodnУ­ hry do ScummVM.
-
-Pro tuto hru ve ScummVM, existuje rozХЁУ­Х™enУЁ podpora myХЁi, i kdyХО vТ pХЏvodnУ­ hХ™e takovУЁto podpora nebyla. PoloХОky menu mohou bУНt vybrУЁny pomocУ­ myХЁi a je takУЉ moХОnУЉ se myХЁУ­ pХ™esunout do jinУНch mУ­st. KdyХО se kurzor myХЁi nachУЁzУ­ na okraji obrazovky, zФervenУЁ, pokud je moХОnУЉ jУ­t vТ tomto smФ›ru. HrУЁФ pak mХЏХОe jednoduХЁe kliknout na okraje hernУ­ obrazovky pro zmФ›nu mУ­sta, podobnФ› jako mnoho adventur, coХО je jednoduХЁХЁУ­ a pХ™У­moФaХ™ejХЁУ­ neХО pohyb pomocУ­ menu.
-
-
-3.18) PoznУЁmky k Troll's Tale:
------ ------------------------
-PХЏvodnУ­ hra vychУЁzela na zavУЁdФ›cУ­m disku PC, proto je nutnУЉ vypsat obsah tohoto disku jako obraz disku a pХ™ejmenovat ho na "troll.img", abyste tuho hru mohli hrУЁt ve ScummVM.
-
-
-3.19) PoznУЁmky k DraФУ­ Historie:
------ --------------------------
-ExistujУ­ 4 jazykovУЉ varianty tУЉto hry: ФeskУЁ, anglickУЁ, polskУЁ a
-nФ›meckУЁ. KaХОdУЁ je umУ­stФ›na vТ oddФ›lenУЉm archivu. JedinУЁ oficiУЁlnУ­ verze je ФeskУЁ, a anglickУЁ, polskУЁ a nФ›meckУЁ byly vХОdycky nedokonФenУЉ prУЁce a nikdy nebyly oficiУЁlnФ› vydУЁny. I kdyХО texty byly zcela pХ™eloХОeny, je znУЁmo, ХОe nФ›kterУЉ zТ nich obsahujУ­ pХ™eklepy.
-
-Pro tuto hru existuje nepovinnУН ФeskУН dabing. ZТ dХЏvodu velikosti si ho mХЏХОete dodateФnФ› stУЁhnout a pak ho rozbalit do adresУЁХ™e hry. MХЏХОete takУЉ ФeskУН dabing poslouchat se vХЁemi jazykovУНmi varianty hry, zatУ­mco Фtete titulky.
-
-VХЁechny hernУ­ soubory a nУЁvody mХЏХОou bУНt stУЁhnuty z
-http://www.ucw.cz/draci-historie/index-en.html
-
-
-3.20) ZnУЁmУЉ ProblУЉmy:
------ ---------------
-Toto vydУЁnУ­ mУЁ nУЁsledujУ­cУ­ znУЁmУЉ problУЉmy. NenУ­ tХ™eba je ohlaХЁovat, i kdyХО zУЁplaty pro jejich opravu jsou vУ­tУЁny. Pokud objevУ­te chybu, kterУЁ nenУ­ zde vТ seznamu, ani nenУ­ vТ seznamu kompatibility na internetovУЉ strУЁnce, prohlУЉdnФ›te si, prosУ­m, ФУЁst o hlУЁХЁenУ­ chyb.
-
- Hry CD Audio:
-- PХ™i hranУ­ her, kterУЉ pouХОУ­vajУ­ CD Audio (hry FM-TOWNS, Loom CD, atd) mХЏХОe u uХОivatelХЏ Microsoft Windows 2000/XP dochУЁzet kТ nУЁhodnУНm pУЁdХЏm. To je dУ­ky dlouhotrvajУ­cУ­ chybФ› Windows, kterУЁ mУЁ za nУЁsledek poХЁkozenУЉ soubory pХ™i ФtenУ­ z CD. Abyste se tomuto vyhnuli, zkopУ­rujte, prosУ­m, soubory na pevnУН disk
-
- Verze FM-TOWNS:
-- Verze KandХОi vyХОaduje ROM pУ­sma FM-TOWNS
-
- Loom:
-- VypnutУ­ titulkХЏ pomocУ­ souboru nastavenУ­ je nevypne spolehlivФ›, protoХОe skripty Loom je znovu automaticky zapnou
-- Podpora MIDI ve verzi EGA vyХОaduje aktualizaci Roland LucasArts
-- Verze KandХОi na PC-Engine vyХОaduje rom systУЉmovУЉ karty
-
- The Secret of Monkey Island:
-- Podpora MIDI ve verzi EGA vyХОaduje aktualizaci Roland LucasArts
-
- Beneath a Steel Sky:
-- Verze pro Amiga nejsou podporovУЁny
-- Demoverze zТ diskety nejsou podporovУЁny
-- NenУ­ chyba: Ve verzi na CD chybУ­ vТ jistУНch dialozУ­ch Х™eФ, to je normУЁlnУ­.
-
- Elvira - Mistress of the Dark
-- Ve verzi pro Atari ST nefunguje hudba
-
- Elvira II - The Jaws of Cerberus
-- Ve verzi pro Atari ST nefunguje hudba
-
-- Ve verzi pro PC nefungujУ­ zvukovУЉ efekty
-- Ve verzi pro Atari ST jsou problУЉmy s paletou
-
- Inherit the Earth: Quest for the Orb
-- Verze pro Amiga nejsou podporovУЁny
-
- Simon the Sorcerer 1:
-- VТ anglickУНch a nФ›meckУНch verzУ­ch na CD nejsou titulky dostupnУЉ, protoХОe jim vФ›tХЁina titulkХЏ chybУ­.
-
- Simon the Sorcerer 2:
-- Kombinace Х™eФi a titulkХЏ Фasto zpХЏsobУ­, ХОe Х™eФ je pХ™eruХЁena brzo, toto je omezenУ­ pХЏvodnУ­ hry.
-- Ve verzУ­ch pro Amiga a Macintosh je podporovУЁn pouze vУНchozУ­ jazyk datovУНch souborХЏ (angliФtina).
-
- Simon the Sorcerer's Puzzle Pack:
-- ХНУЁdnУЁ podpora pro zobrazovУЁnУ­, zadУЁvУЁnУ­, uklУЁdУЁnУ­, Фi naФУ­tУЁnУ­ nejvyХЁХЁУ­ch skУГre.
-- ХНУЁdnУЁ podpora pro zobrazovУЁnУ­ nУЁzvХЏ poloХОek, kdyХО na nФ› najedete myХЁУ­ ve Swampy Adventures.
-
- The Feeble Files:
-- Titulky jsou Фasto nedokonФenУЉ. VТ pХЏvodnУ­ hХ™e byly vХОdy zakУЁzУЁny.
-
- The Legend of Kyrandia:
-- Ve verzУ­ch na disketФ› pro Mac nenУ­ ХОУЁdnУЁ hudba ani zvukovУЉ efekty.
-- CD Macintosh pouХОУ­vУЁ zahrnutou hudbu a zvukovУЉ efekty z DOS.
-
- Hry Humongous Entertainment:
- - Pouze pХЏvodnУ­ rozhranУ­ pro uloХОenУ­ a naФtenУ­ mohou bУНt pouХОity.
- - ХНУЁdnУЁ podpora pro hru vУ­ce hrУЁФХЏ nebo tisknutУ­ obrУЁzkХЏ
-
-4.0) PodporovanУЉ Platformy:
----- ----------------------
-ScummVM byl vytvoХ™en tak, aby mohl fungovat na mnoha platformУЁch a operaФnУ­ch systУЉmech.
-Odkazy na tyto verze mХЏХОou bУНt nalezeny buФ na strУЁnkУЁch ScummVM nebo vyhledУЁvУЁnУ­m na internetu. Mnoho dУ­kХЏ naХЁim programУЁtorХЏm za jejich УКsilУ­. Pokud mУЁte verzi ScummVM pro jinou platformu/systУЉm a chcete ho odevzdat do hlavnУ­ho УКloХОiХЁtФ›, nevУЁhejte nУЁs kontaktovat!
-
-PodporovanУЉ platformy zahrnujУ­ (mimo jinУЉ):
-
- UNIX (Linux, Solaris, IRIX, *BSD, ...)
- Windows
- Windows CE a Windows Mobile (vФetnФ› SmartphonХЏ a PocketPCs)
- Mac OS X
- AmigaOS
- Android
- BeOS
- Dreamcast
- GP2x
- iPhone (vФetnФ› iPod Touch a iPad)
- Maemo (Nokia Internet tablet N810)
- Nintendo 64
- Nintendo DS
- Nintendo GameCube
- Nintendo Wii
- OS/2
- PlayStation 2
- PlayStation Portable
- Symbian
- WebOS
-
-Verze pro Dreamcast nepodporuje The Curse of Monkey Island, ani The Dig. Verze pro Nintendo DS nepodporuje Full Throttle, The Dig, nebo The Curse of Monkey Island.
-Pro dalХЁУ­ omezenУ­ vТ zУЁvislosti na platformФ› se, prosУ­m, podУ­vejte na naХЁУ­ Wiki:
- http://wiki.scummvm.org/index.php/Platforms
-
-Ve verzi pro Macintosh je stisknutУ­ pravУЉho tlaФУ­tka myХЁi emulovУЁno pomocУ­ Cmd-kliknutУ­ (to je, ХОe stisknete tlaФУ­tko myХЁi pХ™i drХОenУ­ klУЁvesy
-Command/Apple/Vrtule).
-
-TakУЉ existujУ­ neoficiУЁlnУ­ verze pro rХЏznУЉ platformy, vФetnФ› PlayStation 3, Xbox, a Xbox 360. NezapomeХˆte, ХОe my jsme tyto verze nevytvoХ™ili, takХОe je nemХЏХОeme ani schvУЁlit ani podporovat. PouХОУ­vejte na vlastnУ­ riziko!
-
-
-5.0) SpuХЁtФ›nУ­ ScummVM:
----- -----------------
-VХЁimnФ›te si prosУ­m, ХОe ScummVM bude uloХОenУЉ hry standardnФ› uklУЁdat do sloХОky zТ kterУЉ je spuХЁtФ›n, takХОe byste se mФ›li vyhnout jeho spouХЁtФ›nУ­ zТ vУ­ce umУ­stФ›nУ­. DalХЁУ­ informace, vФetnФ› jak urФit sloХОku pro uloХОenУЉ hry pro zamezenУ­ tohoto problУЉmu, najdete vТ oddУ­lu 6.0.
-
-ScummVM mХЏХОe bУНt takУЉ spuХЁtФ›n pХ™У­mo pomocУ­ spouХЁtФ›cУ­ho souboru. VТ tomto pХ™У­padФ› bude aktivovУЁn zabudovanУН spouХЁtФ›Ф. OdsuФ mХЏХОete pХ™idat hry
-(kliknФ›te na 'PХ™idat hru'), nebo spustit ty, co uХО jsou nastaveny.
-Hry mohou bУНt takУЉ pХ™idУЁny ve velkУЉm mnoХОstvУ­. StisknutУ­m shift + 'PХ™idat
-Hru' (VХЁimnФ›te si, ХОe se tlaФУ­tko zmФ›nУ­ na 'HromadnУЉ PХ™idУЁnУ­'), mХЏХОete zvolit sloХОku, vТ kterУЉ zaФУ­t, a ScummVM se potУЉ pokusУ­ zjistit hry ve vХЁech podsloХОkУЁch tУЉto sloХОky.
-
-ScummVM mХЏХОe takУЉ hru spustit pХ™У­mo pomocУ­ argumentХЏ pХ™У­kazovУЉ Х™УЁdky -- viz dalХЁУ­ ФУЁst.
-
-
-5.1) MoХОnosti pХ™У­kazovУЉho Х™УЁdku:
----- ---------------------------
-
- PouХОitУ­: scummvm [MOХНNOSTI]... [HRA]
-
- [HRA] KrУЁtkУЉ jmУЉno hry pro naФtenУ­. NapХ™У­klad 'monkey'pro Monkey Island. To mХЏХОe bУНt buФ id hry, nebo uХОivatelem urФenУН cУ­l.
- -v, --version ZobrazУ­ informace o verzi ScummVM a ukonФУ­ se
- -h, --help ZobrazУ­ struФnou nУЁpovФ›du a ukonФУ­ se
- -z, --list-games ZobrazУ­ seznam podporovanУНch her a ukonФУ­ se
- -t, --list-targets ZobrazУ­ seznam nastavenУНch cУ­lХЏ a ukonФУ­ se
- --list-saves=CУL ZobrazУ­ seznam uloХО. her pro urФenou hru (CУL)
- --console PovolУ­ okno konzole (vУНchozУ­: zapnuto) (Pouze pro Windows)
- -c, --config=NastavenУ­ PouХОije jinУН soubor s nastavenУ­m
- -p, --path=CESTA Cesta, kde je hra nainstalovУЁna
- -x, --save-slot[=ФŒУSLO] Pozice uloХОenУЉ hry pro naФtenУ­ (vУНchozУ­: automatickУЁ)
- -f, --fullscreen Vynutit reХОim celУЉ obrazovky
- -F, --no-fullscreen Vynutit reХОim do okna
- -g, --gfx-mode=REХНIM Vybere reХОim obrazu (viz takУЉ ФУЁst 5.3)
- --gui-theme=VZHLED Vybere vzhled rozhranУ­ (vУНchozУ­, modernУ­, klasickУН)
- --themepath=CESTA Cesta kde jsou vzhledy rozhranУ­ uloХОeny
- --list-themes ZobrazУ­ seznam vХЁech pouХОitelnУНch vzhledХЏ
- -e, --music-driver=REХНIM Vybere ovladaФ hudby (viz takУЉ ФУЁst 7.0)
- --list-audio-devices ZobrazУ­ seznam vХЁech dostupnУНch zvukovУНch zaХ™У­zenУ­
- -q, --language=JAZYK Vybere jazyk hry (viz takУЉ ФУЁst 5.2)
- -m, --music-volume=ФŒ. NastavУ­ hlasitost hudby, 0-255 (vУНchozУ­: 192)
- -s, --sfx-volume=ФŒ. NastavУ­ hlasitost zvukХЏ, 0-255 (vУНchozУ­: 192)
- -r, --speech-volume=ФŒ. NastavУ­ hlasitost hlasХЏ, 0-255 (vУНchozУ­: 192)
- --midi-gain=ФŒ. NastavУ­ zvУНХЁenУ­ pro pХ™ehrУЁvУЁnУ­ MIDI, 0-1000 (vУНchozУ­: 100) (podporovУЁno pouze nФ›kterУНmi ovladaФi MIDI)
- -n, --subtitles Zapne titulky (pouХОijte vТ hrУЁch s Х™eФУ­)
- -b, --boot-param=ФŒ. PХ™edУЁ ФУ­slo zavУЁdФ›jУ­cУ­mu skriptu (parametr zavedenУ­)
- -d, --debuglevel=ФŒ. NastavУ­ УКroveХˆ podrobnostУ­ ladФ›nУ­
- --debugflags=PХ˜УZNAKY PovolУ­ urФitУЉ pХ™У­znaky ladФ›nУ­ jУЁdra (oddФ›lenУЉ ФУЁrkami)
- -u, --dump-scripts PovolУ­ vУНpis skriptu, pokud sloХОka s nУЁzvem 'dumps' existuje vТ souФasnУЉ sloХОce
- --cdrom=ФŒУSLO Jednotka CD zТ kterУЉ pХ™ehrУЁvat CD audio (vУНchozУ­: 0 = prvnУ­ jednotka)
- --joystick[=ФŒУSLO] PovolУ­ vstup z joysticku (vУНchozУ­: 0 = prvnУ­ joystick)
- --platform=SLOVO UrФУ­ platformu hry (povolenУЉ hodnoty: 2gs, 3do, acorn, amiga, atari, c64, fmtowns, mac, nes, pc, pce, segacd, windows)
- --savepath=CESTA Cesta, kde jsou umУ­stФ›ny uloХОenУЉ hry
- --extrapath=CESTA DodateФnУЁ cesta pro dalХЁУ­ data hry
- --soundfont=SOUBOR Vybere SoundFont pro pХ™ehrУЁvУЁnУ­ MIDI (PodporovУЁno pouze nФ›kterУНmi ovladaФi MIDI)
- --multi-midi PovolУ­ kombinaci AdLib a pХ™irozenУЉho MIDI
- --native-mt32 PravУН Roland MT-32 (zakУЁХОe emulaci GM)
- --enable-gs PovolУ­ reХОim Roland GS pro pХ™ehrУЁvУЁnУ­ MIDI
- --output-rate=FREKVENCE VУНstupnУ­ vzorkovacУ­ kmitoФet v Hz (napХ™. 22050)
- --opl-driver=OVLADAФŒ Vybere emulУЁtor AdLib (OPL) (db, mame)
- --aspect-ratio PovolУ­ korekci pomФ›ru stran
- --render-mode=REХНIM PovolУ­ dodateФnУЉ reХОimy vykreslenУ­ (cga, ega, hercGreen, hercAmber, amiga)
- --alt-intro PouХОije alternativnУ­ intro pro CD verze Beneath a Steel Sky a Flight of the Amazon Queen
- --copy-protection PovolУ­ ochranu proti kopУ­rovУЁnУ­ vТ hrУЁch, kdyХО ji ScummVM standardnФ› zakazuje.
- --talkspeed=ФŒУSLO NastavУ­ zdrХОenУ­ mluvenУ­ v hrУЁch SCUMM, nebo rychlost mluvenУ­ vТ jinУНch hrУЁch (vУНchozУ­: 60)
- --demo-mode SpustУ­ reХОim dema v Maniac Mansion (KlasickУЁ verze)
- --tempo=NUM NastavУ­ rychlost hudby (v procentech, 50-200) pro hry SCUMM (vУНchozУ­: 100)
-
-
-VУНznam vХЁech dlouhУНch moХОnostУ­ (to jsou ty, kterУЉ zaФУ­najУ­ dvojitou pomlФkou) mХЏХОe bУНt pХ™evrУЁcen, kdyХО pХ™ed nФ› pХ™idУЁte "no-". NapХ™У­klad,
---no-aspect-ratio vypne korekci pomФ›ru stran. To je uХОiteФnУЉ, kdyХО chcete potlaФit nastavenУ­ v souboru.
-
-KrУЁtkУЉ jmУЉno hry ('cУ­l hry'), kterУН vidУ­te na konci pХ™У­kazovУЉho Х™УЁdku, urФuje, kterУЁ hra je spuХЁtФ›na. BuФ odpovУ­dУЁ libovolnУЉmu cУ­li urФenУЉho uХОivatelem (ze souboru sТ nastavenУ­m), nebo zabudovanУЉmu id hry. KrУЁtkУН seznam zabudovanУНch id mХЏХОe bУНt nalezen v ФУЁsti list 3.0.
-
-PХ™У­klady:
- * Win32:
- SpuХЁtФ›nУ­ Monkey Island, celУЁ obrazovka, zТ pevnУЉho disku:
- C:\Games\LucasArts\scummvm.exe -f -pC:\Games\LucasArts\monkey\ monkey
- SpuХЁtФ›nУ­ Full Throttle z CD, celУЁ obrazovka a se zapnutУНmi titulky:
- C:\Games\LucasArts\scummvm.exe -f -n -pD:\resource\ ft
-
- * Unix:
- SpuХЁtФ›nУ­ Monkey Island, celУЁ obrazovka, zТ pevnУЉho disku:
-
- /path/to/scummvm -f -p/games/LucasArts/monkey/ monkey
- SpuХЁtФ›nУ­ Full Throttle z CD, celУЁ obrazovka a se zapnutУНmi titulky:
- /path/to/scummvm -f -n -p/cdrom/resource/ ft
-
-
-5.2) Volby jazyka:
----- -------------
-ScummVM obsahuje volby jazyka pro Maniac Mansion, Zak McKracken,
-The Dig, The Curse of Monkey Island, Beneath a Steel Sky a
-Broken Sword.
-
-NezapomeХˆte, ХОe kromФ› Beneath a Steel Sky, Broken Sword, mnohajazykovУЉ verze her Goblins a Nippon Safes Inc., pouХОitУ­ tУЉto moХОnosti *nezmФ›nУ­* jazyk hry (kterУН je vФ›tХЁinou pevnФ› zakУГdovУЁn), ale spУ­ХЁe je pouХОita pro vybrУЁnУ­ sprУЁvnУЉho pУ­sma (napХ™. pro nФ›meckou verzi obsahujУ­cУ­ pХ™ehlУЁsky).
-
-VУНjimky jsou The Dig a The Curse of Monkey Island -- neanglickУЉ
-Verze mohou bУНt nastaveny na 'English'. NicmУЉnФ› toto ovlivХˆuje pouze titulky; Х™eФ ve hХ™e zХЏstane stejnУЁ.
-
-Maniac Mansion a Zak McKracken
- en - AngliФtina (vУНchozУ­)
- de - NФ›mФina
- fr - FrancouzХЁtina
- it - ItalХЁtina
- es - Х panФ›lХЁtina
-
-The Dig
- jp - JaponХЁtina
- zh - ФŒУ­nХЁtina
- kr - KorejХЁtina
-
-The Curse of Monkey Island
- en - AngliФtina (vУНchozУ­)
- de - NФ›mФina
- fr - FrancouzХЁtina
- it - ItalХЁtina
- pt - PortugalХЁtina
- es - Х panФ›lХЁtina
- jp - JaponХЁtina
- zh - ФŒУ­nХЁtina
- kr - KorejХЁtina
-
-Beneath a Steel Sky
- gb - AngliФtina (VelkУЁ BritУЁnie) (vУНchozУ­)
- en - AngliФtina (USA)
- de - NФ›mФina
- fr - FrancouzХЁtina
- it - ItalХЁtina
- pt - PortugalХЁtina
- es - Х panФ›lХЁtina
- se - Х vУЉdХЁtina
-
-Broken Sword
- en - AngliФtina (vУНchozУ­)
- de - NФ›mФina
- fr - FrancouzХЁtina
- it - ItalХЁtina
- pt - PortugalХЁtina
- es - Х panФ›lХЁtina
- cz - ФŒeХЁtina
-
-
-5.3) GrafickУЉ filtry:
----- ----------------
-ScummVM nabУ­zУ­ nФ›kolik filtrХЏ vyhlazujУ­cУ­ch hrany jako pokus o zlepХЁenУ­ obrazovУЉ kvality. Jsou to stejnУЉ filtry, kterУЉ pouХОУ­vУЁ i mnoho jinУНch emulУЁtorХЏ, jako MAME. Tyto filtry vezmou pХЏvodnУ­ grafiku hry a zvФ›tХЁУ­ ji o urФitou pevnou hodnotu (vФ›tХЁinou 2x nebo 3x) neХО ji VУЁm zobrazУ­. TakХОe napХ™У­klad, pokud hra pХЏvodnФ› pracovala vТ rozliХЁenУ­ 320x200 (typickУЉ pro vФ›tХЁinu her SCUMM), pak pouХОitУ­m filtru sТ faktorem zvФ›tХЁenУ­ 2x, ve skuteФnosti dostanete rozliХЁenУ­ 640x400. PodobnФ› sТ filtrem 3x dostanete 960x600.
-
-Jsou to:
- 1x - Bez filtrovУЁnУ­, bez zvФ›tХЁenУ­. NejrychlejХЁУ­.
- 2x - Bez filtrovУЁnУ­, zvФ›tХЁenУ­ 2x (vУНchozУ­ pro hry 640x480).
- 3x - Bez filtrovУЁnУ­, zvФ›tХЁenУ­ 3x.
- 2xsai - Filtr 2xSAI, zvФ›tХЁenУ­ 2x.
- super2xsai т€“ VylepХЁenУЉ filtrovУЁnУ­ 2xSAI, zvФ›tХЁenУ­ 2x.
- supereagle т€“ MУЉnФ› rozostХ™enУН neХО 2xSAI, ale pomalejХЁУ­. ZvФ›tХЁenУ­ 2x.
- advmame2x - NespolУЉhУЁ na rozostХ™enУ­ jako 2xSAI, rychlУЉ. ZvФ›tХЁenУ­ 2x.
- advmame3x - NespolУЉhУЁ na rozostХ™enУ­ jako 2xSAI, rychlУЉ. ZvФ›tХЁenУ­ 3x.
- hq2x - Velmi hezkУЁ vysokУЁ kvalita, ale pomalУН. ZvФ›tХЁenУ­ 2x.
- hq3x - Velmi hezkУЁ vysokУЁ kvalita, ale pomalУН. ZvФ›tХЁenУ­ 3x.
- tv2x - Filtr proklУЁdУЁnУ­, snaХОУ­ se emulovat TV. ZvФ›tХЁenУ­ 2x.
- dotmatrix - Efekt bodovУЉ matice. ZvФ›tХЁenУ­ 2x.
-
-Abyste filtr vybrali, zvolte ho ve spouХЁtФ›Фi, nebo pХ™edejte scummvm jeho jmУЉno pomocУ­ moХОnosti '-g', napХ™У­klad:
-
- scummvm -gadvmame2x monkey2
-
-PoznУЁmka #1: Ne vХЁechny jУЁdra podporujУ­ vХЁechny (nebo dokonce ХОУЁdnУЉ) zТ filtrХЏ vypsanУНch vУНХЁe; nФ›kterУЉ mohou podporovat i dalХЁУ­. Filtry vypsanУЉ vУНХЁe jsou ty podporovanУЉ standardnУ­m jУЁdrem SDL.
-
-PoznУЁmka #2: Filtry mohou bУНt velmi pomalУЉ, kdyХО je ScummVM sestaven vТ nastavenУ­ pro ladФ›nУ­ bez optimalizacУ­. PouХОitУ­ jakУЉkoliv formy vyhlazenУ­ hran/lineУЁrnУ­ho filtrovУЁnУ­ bude mУ­t vХОdycky dopad na rychlost.
-
-PoznУЁmka #3: Verze FM-TOWNS hry Zak McKracken mУЁ pХЏvodnУ­ rozliХЁenУ­ 320x240, coХО znamenУЁ, ХОe filtry vТ tУЉto hХ™e budou zvФ›tХЁovat na 640x480
-nebo 960x720. ObdobnФ› hry, kterУЉ majУ­ pХЏvodnУ­ rozliХЁenУ­ 640x480 (jako
-Curse of Monkey Island nebo Broken Sword) budou zvФ›tХЁeny na 1280x960 a
-1920x1440.
-
-
-5.4) GlobУЁlnУ­ menu:
----- --------------
-GlobУЁlnУ­ Menu je obecnУЉ menu, kterУЉ je dostupnУЉ vХЁem jУЁdrХЏm her stisknutУ­m Ctrl-F5. ZТ tohoto menu jsou dostupnУЉ nУЁsledujУ­cУ­ tlaФУ­tka: PokraФovat, Volby, O programu, NУЁvrat do SpouХЁtФ›Фe, a UkonФit. VУНbФ›rem
-'Volby' bude zobrazeno dialogovУЉ okno, kde mХЏХОou bУНt upravena zУЁkladnУ­ nastavenУ­ zvuku, jako hladiny hlasitosti. VУНbФ›rem 'NУЁvrat do SpouХЁtФ›Фe' souФasnou hru ukonФУ­ a uХОivatele navrУЁtУ­ do spouХЁtФ›Фe ScummVM, kde mХЏХОe bУНt vybrУЁna dalХЁУ­ hra ke hranУ­.
-
-PoznУЁmka: NУЁvrat do SpouХЁtФ›Фe nenУ­ podporovУЁn vХЁemi jУЁdry a tlaФУ­tko nebude vТ GlobУЁlnУ­m Menu funkФnУ­, pokud nenУ­ podporovУЁno.
-
-JУЁdra, kterУЁ vТ souФasnosti podporujУ­ nУЁvrat do spouХЁtФ›Фe, jsou:
-
- AGI
- AGOS
- CINE
- COMPOSER
- CRUISE
- DRACI
- DRASCULA
- GOB
- GROOVIE
- HUGO
- KYRA
- LURE
- MADE
- MOHAWK
- PARALLACTION
- QUEEN
- SAGA
- SCI
- SCUMM
- SKY
- SWORD1
- SWORD2
- TEENAGENT
- TOUCHE
- TSAGE
- TUCKER
-
-
-5.5) KlУЁvesovУЉ zkratky:
----- ------------------
-ScummVM podporuje rХЏznУЉ zkratky ve hХ™e. LiХЁУ­ se mezi rХЏznУНmi hrami SCUMM a jinУНmi hrami.
-
- SpoleФnУЉ:
- Ctrl-F5 - ZobrazУ­ GlobУЁlnУ­ Menu
- Cmd-q - UkonФit (Mac OS X)
- Ctrl-q - UkonФit (dalХЁУ­ unixy vФetnФ› Linux)
- Ctrl-z OR Alt-x - Quit (dalХЁУ­ platformy)
- Ctrl-u - ZeslabУ­ vХЁechny zvuky
- Ctrl-m - PХ™epУ­nat zachycenУ­ myХЁi
- Ctrl-Alt 1-8 - PХ™epУ­nat mezi grafickУНmi filtry
- Ctrl-Alt + and - - ZvФ›tХЁit/ZmenХЁit faktor zvФ›tХЁenУ­
-Ctrl-Alt a - PХ™epУ­nat korekci pomФ›ru stran. VФ›tХЁina her pouХОУ­vУЁ rozliХЁenУ­ 320x200 pixelХЏ, coХО mХЏХОe na vФ›tХЁinФ› novФ›jХЁУ­ch monitorХЏ vypadat splУЁcle. Korekce pomФ›ru stran obraz roztУЁhne, aby mУ­sto toho pouХОil 320x240, nebo jeho nУЁsobky
- Alt-Enter - PХ™epУ­nУЁ celou obrazovku/do okna
- Alt-s - VytvoХ™it snУ­mek obrazovky (pouze jУЁdro SDL)
-
- SCUMM:
- Ctrl 0-9 and Alt 0-9 - NahrУЁt a uloХОit stav hry
- Ctrl-d - Spustit ladФ›nУ­
- Ctrl-f - Zapnout rychlУН reХОim
- Ctrl-g - PХ™epnout do velmi VELMI rychlУЉho reХОimu
- Ctrl-t - PХ™epУ­nat mezi 'Pouze Х™eФ',
- '՘eФ a Titulky' a 'Pouze titulky'
- Tilda (~) - Zobrazit/skrУНt konzoli ladФ›nУ­
- [ and ] - Hlasitost hudby, zvУНХЁit/snУ­ХОit
- - and + - Rychlost textu, pomalejХЁУ­/rychlejХЁУ­
- F5 - ZobrazУ­ rУЁmeФek pro uloХОenУ­/naФtenУ­
- Alt-F5 - ZobrazУ­ pХЏvodnУ­ rУЁmeФek pro uloХОenУ­/naФtenУ­, pokud hra nФ›jakУН mУЁ. Zde mХЏХОete hru naФУ­st i uloХОit, nicmУЉnФ› pro tento УКФel nenУ­ urФen a vТ nФ›kterУНch hrУЁch mХЏХОe zpХЏsobit pУЁd ScummVM.
- i - ZobrazУ­ IQ body (Indiana Jones and the Last Crusade a Indiana Jones and the Fate of Atlantis)
- MezernУ­k - PozastavenУ­
- TeФka (.) - VТ nФ›kterУНch hrУЁch pХ™eskoФУ­ souФasnУН Х™УЁdek textu
- Enter - Simulovat stisknutУ­ levУЉho tlaФУ­tka myХЁi
- Tab - Simulovat stisknutУ­ pravУЉho tlaФУ­tka myХЁi
-
- Beneath a Steel Sky:
- Ctrl-d - SpustУ­ ladФ›nУ­
- Ctrl-f - Zapnout rychlУН reХОim
- Ctrl-g - PХ™epnout do velmi VELMI rychlУЉho reХОimu
- F5 - ZobrazУ­ rУЁmeФek pro uloХОenУ­/naФtenУ­
- Escape - PХ™eskoФУ­ УКvod hry
- Period (.) - PХ™eskoФУ­ souФasnУН Х™УЁdek textu
-
- Broken Sword:
- F5 nebo Escape - ZobrazУ­ rУЁmeФek pro uloХОenУ­/naФtenУ­
-
- Broken Sword II:
- Ctrl-d - Spustit ladФ›nУ­
- Ctrl-f - Zapnout rychlУН reХОim
- p - PozastavenУ­
-
- DraФУ­ Historie:
- F5 - ZobrazУ­ GlobУЁlnУ­ Menu
- LevУЉ klinutУ­ - JУ­t, zkoumat
- PravУЉ klinutУ­ - PouХОУ­t, mluvit
- Posun myХЁi nahoru, i - InventУЁХ™
- Posun myХЁi dolХЏ, m - Mapa
- Escape - PХ™eskoФУ­ УКvod, odejde z mapy/inventУЁХ™e
- JakУЉkoliv kliknutУ­ - PХ™eskoФУ­ souФasnФ› dabovanou vФ›tu
- q - ZapnutУ­/vypnutУ­ rychlУЉho chozenУ­
-
- Flight of the Amazon Queen:
- Ctrl-d - Spustit ladФ›nУ­
- Ctrl-f - Zapnout rychlУН reХОim
- F1 - PouХОУ­t DenУ­k (uklУЁdУЁnУ­/naФУ­tУЁnУ­)
- F11 - RychlУЉ naФtenУ­
- F12 - RychlУЉ uklУЁdУЁnУ­
- Escape - PХ™eskoФУ­ video
- MezernУ­k - PХ™eskoФУ­ souФasnУН Х™УЁdek textu
-
- Future Wars
- F1 - Prozkoumat
- F2 - VzУ­t
- F3 - InventУЁХ™
- F4 - PouХОУ­t
- F5 - Aktivovat
- F6 - Mluvit
- F9 - Menu "Aktivovat"
- F10 - Menu "PouХОУ­t"
- Escape - Zobrazit menu pХ™У­kazХЏ
-
- Nippon Safes
- Ctrl-d - Spustit ladФ›nУ­
- l - NaФУ­st hru
- s - UloХОit hru
-
- Simon the Sorcerer 1 a 2:
- Ctrl 0-9 a Alt 0-9 - NaФУ­st a uloХОit stav hry
- Ctrl-d - Spustit ladФ›nУ­
- Ctrl-f - Zapnout rychlУН reХОim
- F1 - F3 - Rychlost textu, rychlejХЁУ­ - pomalejХЁУ­
- F10 - ZobrazУ­ vХЁechny postavy a objekty sТ kterУНmi mХЏХОete nФ›co dФ›lat
- Escape - PХ™eskoФit videa
- - a + - Hlasitost hudby, snУ­ХОit/zvУНХЁit
- m - Hudba vypnout/zapnout
- s - ZvukovУЉ efekty zapnout/vypnout
- b - Zvuky pozadУ­ zapnout/vypnout [Pouze Simon the Sorcerer 2]
- Pause - PozastavenУ­
- t - PХ™epУ­nat mezi Х™eФУ­ a kombinacУ­ Х™eФi a titulkХЏ [Simon the Sorcerer 1 CD (jinУЉ neХО angliФtina a nФ›mФina) a Simon the Sorcerer 2 CD (vХЁechny jazyky)]
- v - PХ™epУ­nat mezi titulky a kombinacУ­ Х™eФi a titulkХЏ [Pouze Simon the Sorcerer 2 CD]
-
- Simon the Sorcerer's Puzzle Pack
- Ctrl-d - Spustit ladФ›nУ­
- Ctrl-f - Zapnout rychlУН reХОim
- F12 - Zapnout/vypnout reХОim rychle rychlosti ve Swampy Adventures
- - a + - Hlasitost hudby, snУ­ХОit/zvУНХЁit
- m - Hudba vypnout/zapnout
- s - ZvukovУЉ efekty zapnout/vypnout
- Pause - PozastavenУ­
-
- The Feeble Files
- Ctrl-d - Spustit ladФ›nУ­
- Ctrl-f - Zapnout rychlУН reХОim
- F7 - VymФ›nit postavy
- F9 - Zapnout/vypnout jmУЉna hitboxХЏ
- s - ZvukovУЉ efekty zapnout/vypnout
- Pause - PozastavenУ­
- t - PХ™epУ­nat mezi Х™eФУ­ a kombinacУ­ Х™eФi a titulkХЏ
- v - PХ™epУ­nat mezi titulky a kombinacУ­ Х™eФi a titulkХЏ
-
- The Legend of Kyrandia:
- Ctrl 0-9 and Alt 0-9 - NaФУ­st a uloХОit stav hry
-
- Ctrl-d - Spustit ladФ›nУ­
-
- TeenAgent
- F5 - ZobrazУ­ GlobУЁlnУ­ Menu
-
- Touche: The Adventures of the Fifth Musketeer:
- Ctrl-f - Zapnout rychlУН reХОim
- F5 - Zobrazit moХОnosti
- F9 - Zapnout reХОim rychlУЉ chХЏze
- F10 - Vypnout reХОim rychlУЉ chХЏze
- Escape - UkonФit
- MezernУ­k - PХ™eskoФУ­ souФasnУН Х™УЁdek textu
- t - PХ™epnout mezi 'Pouze ՘eФ',
- '՘eФ a Text' a ' Pouze Text'
-
-NezapomeХˆte, ХОe pouХОУ­vУЁnУ­ Ctrl-f nebo Ctrl-g nenУ­ doporuФeno: hry mohou spadnout, kdyХО bФ›ХОУ­ rychlostУ­ vyХЁХЁУ­ neХО jejich normУЁlnУ­, protoХОe skripty ztratУ­ synchronizaci.
-
-PoznУЁmka pro uХОivatele WinCE: KvХЏli omezenУЉmu vstupu zТ klУЁvesnice ve vФ›tХЁinФ› zaХ™У­zenУ­ je malУЉ mnoХОstvУ­ klУЁvesovУНch zkratek podporovУЁno pomocУ­ znovu mapovУЁnУ­ a/nebo ФinnostУ­ panelХЏ. ProsУ­m pХ™eФtФ›te si soubor README-WinCE.txt.
-
-
-6.0) UloХОenУЉ hry:
----- ------------
-UloХОenУЉ hry jsou na nФ›kterУНch platformУЁch standardnФ› umУ­stФ›ny do souФasnУЉ sloХОky a vТ jinУНch do pХ™ednastavenУЉ sloХОky. To mХЏХОete urФit vТ souboru sТ nastavenУ­m pomocУ­ parametru savepath. PodУ­vejte se na vzorovУН soubor sТ nastavenУ­m dУЁle vТ tomto souboru.
-
-Platformy, kterУЉ vТ souФasnosti majУ­ jinУЉ vУНchozУ­ sloХОky jsou:
- Mac OS X:
- $HOME/Documents/ScummVM Savegames/
-
- JinУЉ unixy:
- $HOME/.scummvm/
-
- Windows Vista/7:
- \Users\uХОjmУЉno\AppData\Roaming\ScummVM\Saved games\
-
- Windows 2000/XP:
- \Documents and Settings\uХОjmУЉno\Application Data\ScummVM\Saved games\
-
- Windows NT4:
- <windir>\Profiles\uХОjmУЉno\Application Data\ScummVM\Saved games\
-
-UloХОenУЉ hry jsou ve Windows NT4/2000/XP/Vista/7 uklУЁdУЁny ve skrytУЉ sloХОce,
-do kterУЉ mХЏХОete vstoupit spuХЁtФ›nУ­m "%APPDATA%\ScummVM\Saved Games\" nebo
-povolenУ­m zobrazenУ­ skrytУНch sloХОek v PrХЏzkumnУ­ku Windows.
-
-PoznУЁmka pro uХОivatele Windows NT4/2000/XP/Vista/7: VУНchozУ­ umУ­stФ›nУ­ uloХОenУНch her
-bylo ve ScummVM 1.5.0 zmФ›nФ›no. DУЁvkovУН soubor pХ™esunu mХЏХОe bУНt pouХОit pro zkopУ­rovУЁnУ­
-uloХОenУНch her ze starУЉho vУНchozУ­ho umУ­stФ›nУ­ do novУЉho.
-
-6.1) 6.1 AutomatickУЉ uklУЁdУЁnУ­:
----- -------------------------
-VТ nФ›kterУНch hrУЁch, (a to "Beneath a Steel Sky", "Flight of the Amazon
-Queen", vХЁechny hry AGI, a vХЁechny hry SCUMM), bude ScummVM standardnФ› automaticky uklУЁdat souФasnУН stav kaХОdУНch pФ›t minut (upravitelnУЉ pomocУ­ nastavenУ­ "autouklУЁdУЁnУ­"). Pro jУЁdra AGI a SCUMM, je bude uklУЁdat do pozice 0. V jУЁdru SCUMM mХЏХОe bУНt tento uloХОenУН stav znovu naФten pomocУ­ Ctrl-0 nebo menu F5.
-
-
-6.2) PХ™evod uloХОenУНch her:
----- ---------------------
-PouХОitУ­ uloХОenУНch her zТ pХЏvodnУ­ch verzУ­ nenУ­ podporovУЁno vХЁemi jУЁdry. Pouze nУЁsledujУ­cУ­ hry mohou pouХОУ­t pХЏvodnУ­ verze.
-
- Elvira 1
- - PХ™idejte 8 bajtХЏ (nУЁzev uloХОenУЉ hry) na zaФУЁtek souboru uloХОenУЉ hry
- - PХ™ejmenujte ho na 'elvira1.xxx'
-
- Elvira 2
- - PХ™idejte 8 bajtХЏ (nУЁzev uloХОenУЉ hry) na zaФУЁtek souboru uloХОenУЉ hry
- - PХ™ejmenujte ho na 'elvira2-pc.xxx' (verze DOS) nebo 'elvira2.xxx' (JinУЉ verze)
-
- Waxworks
- - PХ™idejte 8 bajtХЏ (nУЁzev uloХОenУЉ hry) na zaФУЁtek souboru uloХОenУЉ hry
- - PХ™ejmenujte ho na 'waxworks-pc.xxx' (verze DOS) nebo 'waxworks.xxx' (JinУЉ verze)
-
- Simon the Sorcerer 1
- - PХ™ejmenuje soubor uloХОenУЉ hry na 'simon1.xxx'
-
- Simon the Sorcerer 2
- - PХ™ejmenuje soubor uloХОenУЉ hry na 'simon2.xxx'
-
- The Feeble Files
- - PХ™ejmenuje soubor uloХОenУЉ hry na 'feeble.xxx'
-
-Kde 'xxx' je ФУ­slo pozice uloХОenУЉ hry (tj. 001) ve ScummVM
-
-
-6.3) ZobrazenУ­/NaФtenУ­ uloХОenУНch her z pХ™У­kazovУЉho Х™УЁdku:
----- ----------------------------------------------------
-
---list-saves:
-
- Tento pХ™epУ­naФ mХЏХОe bУНt pouХОit kТ zobrazenУ­ seznamu souФasnУНch uloХОenУНch her urФenУЉ cУ­lovУЉ hry a jejУ­ odpovУ­dajУ­cУ­ pozice.
-
- PouХОitУ­: --list-saves=[CУL], kde [CУL] je cУ­lovУЁ hra.
-
- JУЁdra, kterУЁ vТ souФasnosti podporujУ­ --list-saves jsou:
-
- AGI
- AGOS
- CGE
- CINE
- CRUISE
- DRACI
- GROOVIE
- HUGO
- KYRA
- LURE
- MOHAWK
- PARALLACTION
- QUEEN
- SAGA
- SCI
- SCUMM
- SKY
- SWORD1
- SWORD2
- TEENAGENT
- TINSEL
- TOON
- TOUCHE
- TSAGE
- TUCKER
-
---save-slot/-x:
-
- Tento pХ™epУ­naФ mХЏХОe bУНt pouХОit kТ naФtenУ­ uloХОenУЉ hry pХ™У­mo zТ pХ™У­kazovУЉho Х™УЁdku.
-
- PouХОitУ­: --save-slot[POZICE] nebo -x[POZICE], kde [POZICE] je ФУ­slo uloХОenУЉ pozice.
-
- JУЁdra, kterУЁ vТ souФasnosti podporujУ­--save-slot/-x jsou:
-
- AGI
- CGE
- CINE
- CRUISE
- DRACI
- GROOVIE
- HUGO
- KYRA
- LURE
- MOHAWK
- QUEEN
- SAGA
- SCI
- SCUMM
- SKY
- SWORD1
- SWORD2
- TEENAGENT
- TINSEL
- TOON
- TOUCHE
- TSAGE
- TUCKER
-
-
-7.0) Hudba a Zvuk:
----- -------------
-Ve vФ›tХЁinФ› operaФnУ­ch systУЉmХЏ a pro vФ›tХЁinu her bude ScummVM standardnФ› pouХОУ­vat MT-32 nebo emulaci AdLib pro pХ™ehrУЁvУЁnУ­ hudby. MIDI nemusУ­ bУНt
-DostupnУЉ ve vХЁech operaФnУ­ch systУЉmech, nebo potХ™ebuje ruФnУ­ nastavenУ­. Pokud chcete MIDI pouХОУ­t, mУЁte nФ›kolik rХЏznУНch voleb pro vУНstup, vТ zУЁvislosti na VaХЁem operaФnУ­m systУЉmu a nastavenУ­.
-
- null - PrУЁzdnУН vУНstup. NepХ™ehrУЁvat ХОУЁdnou hudbu.
- adlib - VnitХ™nУ­ emulace AdLib
- fluidsynth т€“ Emulace FluidSynth MIDI
- mt32 - VnitХ™nУ­ emulace MT-32
- pcjr - VnitХ™nУ­ emulace PCjr (pouХОitelnУЉ pouze ve hrУЁch SCUMM)
- pcspk - VnitХ™nУ­ emulace reproduktoru PC
- towns - VnitХ™nУ­ emulace FM-TOWNS YM2612
- (pouХОitelnУЉ pouze v hrУЁch SCUMM FM-TOWNS)
- alsa - VУНstup pomocУ­ zaХ™У­zenУ­ sekvencУЉru ALSA. Viz nУ­ХОe.
- core - Zvuk CoreAudio, pro uХОivatele Mac OS X.
- coremidi - Zvuk CoreMIDI, pro uХОivatele Mac OS X. PouХОУ­vejte pouze, pokud mУЁte hardwarovУН syntetizУЁtor MIDI.
- seq - PouХОitУ­ /dev/sequencer pro MIDI v systУЉmu *nix. Viz nУ­ХОe
- timidity - PХ™ipojenУ­ kТ MIDI serveru TiMidity++. Viz nУ­ХОe.
- windows - Windows MIDI. PouХОije zabudovanУН sekvencУЉr, pro Windows
-
-Abyste vybrali ovladaФ zvuku, zvolte ho ve spouХЁtФ›Фi, nebo pХ™edejte jeho jmУЉno ScummVM pomocУ­ moХОnosti '-e', napХ™У­klad:
-
- scummvm -eadlib monkey2
-
-
-7.1) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace AdLib:
----- --------------------------------------
-StandardnФ› bude karta AdLib emulovУЁna a ScummVM hudbu pХ™ehrУЁvУЁ jako vzorkovanУЉ vlny. To je vУНchozУ­ reХОim pro vФ›tХЁinu her a nabУ­zУ­ nejlepХЁУ­ kompatibilitu mezi stroji a hrami.
-
-
-7.2) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace FluidSynth MIDI:
----- ------------------------------------------------
-Pokud byl ScummVM sestaven s podporou libfluidsynth bude schopen pХ™ehrУЁvat hudbu MIDI pomocУ­ ovladaФe FluidSynth. Budete muset ale urФit, kterУН SoundFont pouХОУ­t.
-
-ProtoХОe vУНchozУ­ hlasitost vУНstupu od FluidSynth mХЏХОe bУНt velmi nУ­zkУЁ,
-ScummVM standardnФ› nastavУ­ zvУНХЁenУ­, aby dostal silnФ›jХЁУ­ signУЁl. To mХЏХОe bУНt dУЁle upaveno pouХОitУ­m moХОnosti pХ™У­kazovУЉho Х™УЁdku --midi-gain, nebo nastavenУ­m "midi_gain" vТ konfiguraФnУ­m souboru.
-
-NastavenУ­ mХЏХОe nabУНvat hodnoty od 0 po 1000 a vУНchozУ­ je 100. (Toto odpovУ­dУЁ nastavenУ­ zvУНХЁenУ­ FluidSynth's 0.0 aХО 10.0, coХО je pravdФ›podobnФ› mФ›Х™eno v decibelech.)
-
-POZNУMKA: PoХОadavky na procesor pro FluidSynth mХЏХОou bУНt vТ nФ›kterУНch pХ™У­padech dosti vysokУЉ. Je doporuФeno mУ­t rychlУЉ CPU.
-
-
-7.3) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace MT-32:
----- --------------------------------------
-NФ›kterУЉ hry, kterУЉ obsahujУ­ hudebnУ­ data MIDI, takУЉ majУ­ vylepХЁenУЉ stopuy urФenУЉ pro zvukovУН modul MT-32. ScummVM mХЏХОe toto zaХ™У­zenУ­ nynУ­ emulovat, nicmУЉnФ› aby toto zaХ™У­zenУ­ fungovalo, musУ­te mУ­t pХЏvodnУ­ ROMy MT-32:
-
-MT32_PCM.ROM - IC21 (512KB)
-MT32_CONTROL.ROM - IC26 (32KB) a IC27 (32KB), proklУЁdanУЉ podle bajtu
-
-Tyto ROMy umУ­stФ›te do hernУ­ho adresУЁХ™e, ve VaХЁУ­ dodateФnУЉ cestФ›, nebo vТ adresУЁХ™i, kde je umУ­stФ›n spouХЁtФ›Ф ScummVM.
-
-SТ tУ­mto ovladaФem nemusУ­te zadУЁvat --native-mt32, protoХОe je automaticky zapnut.
-
-POZNУMKA: PoХОadavky na procesor pro emulУЁtor jsou velmi vysokУЉ; rychlУЉ
-CPU je velmi doporuФeno.
-
-
-7.4) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace MIDI:
----- -------------------------------------
-NФ›kterУЉ hry (jako Sam & Max) obsahujУ­ pouze hudebnУ­ data MIDI. Toto brУЁnilo, aby hudba vТ tФ›chto hrУЁch fungovala na platformУЁch, kterУЉ MIDI nepodporujУ­, nebo na zvukovУНch kartУЁch, kterУЉ neposkytujУ­ ovladaФe MIDI (napХ™. mnoho zvukovУНch karet nebude vТ Linuxu MIDI pХ™ehrУЁvat). ScummVM nynУ­ mХЏХОe MIDI emulovat pomocУ­ vzorkovanУНch vln a AdLib, emulaci MIDI FluidSynth nebo emulace MT-32 pomocУ­ moХОnostУ­ -eadlib, -efluidsynth nebo -emt32 vТ tomto poХ™adУ­. NicmУЉnФ› pokud mУЁte moХОnost pouХОУ­t pХ™irozenУЉ MIDI, doporuФujeme pouХОУ­t jeden zТ reХОimХЏ MIDI nУ­ХОe pro nejlepХЁУ­ zvuk.
-
-
-7.5) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace PХ™irozenУЉho MIDI:
----- -------------------------------------------------
-PouХОijte vhodnou moХОnosti pХ™У­kazovУЉho Х™УЁdku -e<reХОim> ze seznamu vУНХЁe pro vybrУЁnУ­ VaХЁeho upХ™ednostХˆovanУЉho zaХ™У­zenУ­ MIDI. NapХ™У­klad pokud chcete pouХОУ­t ovladaФ Windows MIDI, pouХОijte moХОnost -ewindows.
-
-
-7.5.1) PouХОitУ­ moХОnostУ­ MIDI kТ pХ™izpХЏsobenУ­ vУНstupu pХ™irozenУЉ MIDI:
------- ------------------------------------------------------------
-ScummVM podporuje rХЏznУЉ reХОimy MIDI vТ zУЁvislosti na schopnostech VaХЁeho zaХ™У­zenУ­ MIDI.
-
-Pokud je zadУЁno --native-mt32, ScummVM se kТ VaХЁemu zaХ™У­zenУ­ bude chovat jako ke skuteФnУЉ MT-32. ProtoХОe mapovУЁnУ­ instrumentХЏ a vУНhradnУ­ systУЉmovУЉ pХ™У­kazy MT-32 se liХЁУ­ od zaХ™У­zenУ­ General MIDI, tuto moХОnost byste mФ›li povolit, pouze kdyХО pouХОУ­vУЁte skuteФnУЉ Roland MT-32, LAPC-I,CM-64, CM-32L, CM-500, nebo zaХ™У­zenУ­ GS s mapou MT-32.
-
-Pokud je zadУЁno --enable-gs, ScummVM zavede VaХЁe zaХ™У­zenУ­ kompatibilnУ­ s GS pomocУ­ nastavenУ­, kterУЁ napodobujУ­ nastavenУ­ dozvuku MT-32, (nedostatek) chУГru, citlivost ohУНbanУ­ tУГnu, atd. Pokud je toto spoleФnФ› pouХОito s --native-mt32, ScummVM vybere mapu kompatibilnУ­ s MT-32 a bicУ­ soupravu na VaХЁem zaХ™У­zenУ­ GS. Toto nastavenУ­ funguje lУЉpe neХО standardnУ­ emulace GM nebo GS ve hrУЁch, kterУЉ nemajУ­ vlastnУ­ mapovУЁnУ­ instrumentХЏ (Loom a Monkey1). ObФ› nastavenУ­ byste mФ›li pouХОУ­t pouze tehdy, pokud mУЁte zaХ™У­zenУ­ GS, kterУЉ mУЁ mapu MT-32, jako SC-55, SC-88, SC-88 Pro, SC-8820, SC-8850, atd. NezapomeХˆte, ХОe --enable-gs je automaticky zakУЁzУЁno v DOTT a Samnmax, protoХОe samostatnФ› pouХОУ­vajУ­ General MIDI.
-
-Pokud nenУ­ ani jedna zТ moХОnostУ­ vУНХЁe povolena, ScummVM VaХЁe zaХ™У­zenУ­ zavede vТ reХОimu General MIDI a pouХОije emulaci GM vТ hrУЁch se zvukovУНm doprovodem MT-32.
-
-NФ›kterУЉ hry obsahujУ­ zvukovУЉ efekty pouze v AdLib. Pro tyto hry, byste mФ›li zadat --multi-midi, abyste zkombinovali hudbu MIDI se zvukovУНmi efekty AdLib.
-
-
-7.6) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ SekvencУЉru MIDI: [POUZE UNIX]
----- ----------------------------------------
-Pokud VУЁХЁ ovladaФ podporuje sekvencУЉr, mХЏХОete nastavit promФ›nnou prostХ™edУ­ "SCUMMVM_MIDI" na VaХЁem zaХ™У­zenУ­ sekvencУЉru т€“ napХ™У­klad na /dev/sequencer
-
-Pokud mУЁte problУЉm se zvukem vТ tomto nastavenУ­, moХОnУЁ budete muset nastavit promФ›nnou prostХ™edУ­ "SCUMMVM_MIDIPORT" na 1 nebo 2. Toto vybere port, kterУН bude pouХОit ve zvolenУЉm sekvencУЉru. Pak spusХЅte scummvm s parametrem -eseq. To by mФ›lo fungovat pro nФ›kolik karet a mХЏХОe nabУ­zet lepХЁУ­ vУНkon a kvalitu, neХО emulace AdLib. NicmУЉnФ› pro systУЉmy, kde podpora sekvencУЉru nefunguje, mХЏХОete vХОdycky pХ™ejУ­t na emulaci AdLib.
-
-
-7.6.1) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ SekvencУЉru ALSA: [POUZE UNIX]
------- ----------------------------------------
-Pokud MУЁte nainstalovУЁn ovladaФ ALSA sТ podporou sekvencУЉru, pak mХЏХОete nastavit promФ›nnou prostХ™edУ­ "SCUMMVM_PORT" nebo promФ›nnou souboru s nastavenУ­m "alsa_port" pro urФenУ­ portu VaХЁeho sekvencУЉru. Pokud ani jedno nenУ­ nastaveno, jsou standardnФ› vyzkouХЁeny oba porty "65:0" a "17:0".
-
-Zde je krУЁtkУН nУЁvod, jak sekvencУЉr pouХОУ­t sТ VaХЁУ­ zvukovou kartou. Ve vХЁech pХ™У­padech, pro zУ­skУЁnУ­ seznamu vХЁech portХЏ sekvencУЉru, zkuste pХ™У­kaz "aconnect -o -l". To by mФ›lo mУ­t vУНstup podobnУН tomuto:
-
-client 14: 'Midi Through' [type=kernel]
- 0 'Midi Through Port-0'
-client 16: 'SBLive! Value [CT4832]' [type=kernel]
- 0 'EMU10K1 MPU-401 (UART)'
-client 17: 'Emu10k1 WaveTable' [type=kernel]
- 0 'Emu10k1 Port 0 '
- 1 'Emu10k1 Port 1 '
- 2 'Emu10k1 Port 2 '
- 3 'Emu10k1 Port 3 '
-client 128: 'TiMidity' [type=user]
- 0 'TiMidity port 0 '
- 1 'TiMidity port 1 '
- 2 'TiMidity port 2 '
- 3 'TiMidity port 3 '
-
-NejdХЏleХОitФ›jХЁУ­ ФУЁst zde je, ХОe existujУ­ ФtyХ™i vУНstupy WaveTable MIDI umУ­stФ›nУЉ na 17:0, 17:1, 17:2 a 17:3, a ФtyХ™i porty TiMidity umУ­stФ›nУЉ na 128:0, 128:1, 128:2 a 128:3.
-
-Pokud na VaХЁУ­ kartФ› mУЁte Фip FM FM, jako tХ™eba SB16, pak musУ­te naФУ­st SoundFonts pomocУ­ softwaru sbiload. NapХ™У­klad:
-
- sbiload -p 17:0 /etc/std.o3 /etc/drums.o3
-
-Pokud je VaХЁe karta schopnУЁ pouХОУ­vat WaveTable, musУ­te naФУ­st SoundFont sbk nebo sf2 pomocУ­ softwaru sfxload nebo asfxload. NapХ™У­klad:
-
- sfxload /cesta/k/8mbgmsfx.sf2
-
-Pokud VaХЁe karta neumУ­ sТ MIDI pracovat, existujУ­ dvФ› moХОnosti: FluidSynth a TiMidity. DoporuФujeme FluidSynth, protoХОe vТ mnoha systУЉmech bude TiMidity 'zaostУЁvat' za hudbou. To je velmi znatelnУЉ vТ hrУЁch pouХОУ­vajУ­cУ­
-iMUSE, kterУН pouХОУ­vУЁ rychlУЉ a dynamickУЉ pХ™echody hudby.
-SpuХЁtФ›nУ­m TiMidity jako root mu umoХОnУ­ nastavit prioritu vТ reУЁlnУЉm Фase, coХО mХЏХОe zaostУЁvУЁnУ­ snУ­ХОit.
-
-PХ™У­kaz pro TiMidity, aby se stal sekvencУЉrem ALSA:
-
- timidity -iAqqq -B2,8 -Os1S -s 44100 &
-
-(Pokud sТ tУ­mto nastavenУ­m dostУЁvУЁte zkreslenУН vУНstup, mХЏХОete zkusit vynechat -B2,8 nebo zmФ›nit hodnotu.)
-
-PХ™У­kaz pro TiMidity, aby se stal sekvencУЉrem ALSA (pouХОitУ­m SoundFonts):
-
- fluidsynth -m alsa_seq /cesta/k/8mbgmsfx.sf2
-
-Jakmile je TiMidity nebo FluidSynth spuХЁtФ›n, pouХОijte pХ™У­kaz 'aconnect -o -l' jak je pospУЁno vУНХЁe vТ tУЉto ФУЁsti.
-
-
-7.6.2) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ SekvencУЉru IRIX dmedia: [POUZE UNIX]
------- -----------------------------------------------
-Pokud pouХОУ­vУЁte IRIX a ovladaФ dmedia s podporou sekvencУЉru, mХЏХОete nastavit promФ›nnou prostХ™edУ­ "SCUMMVM_MIDIPORT" nebo promФ›nnou souboru sТ nastavenУ­m "dmedia_port" pro urФenУ­ portu VaХЁeho sekvencУЉru. StandardnФ› je pouХОit prvnУ­ port.
-
-Abyste zУ­skali seznam nastavenУНch rozhranУ­ midi ve VaХЁem systУЉmu, spusХЅte pХ™У­kaz "startmidi" bez parametrХЏ. VzorovУН vУНstup:
-
- 2 MIDI interfaces configured:
- Serial Port 2
- Software Synth
-
-VТ tomto pХ™У­padФ› mХЏХОete ScummVM nastavit, aby pouХОil "Software Synth" mУ­sto standardnУ­ho "Serial Port 2" pХ™idУЁnУ­m Х™УЁdku
-
- dmedia_port=Software Synth
-
-do VaХЁeho souboru s nastavenУ­m v ФУЁsti [scummvm], nebo nastavenУ­m SCUMMVM_PORT=Software Synth ve VaХЁem prostХ™edУ­.
-
-
-7.7) PouХОitУ­ MIDI serveru TiMidity++:
----- --------------------------------
-Pokud na VaХЁem systУЉmu chybУ­ jakУНkoliv sekvencУЉr MIDI, ale pХ™esto chcete lepХЁУ­ kvalitu MIDI, neХО kterou mХЏХОe nabУ­dnout standardnУ­ emulace AdLib, mХЏХОete zkusit MIDI server TiMidity++. ProhlУЉdnФ›te si http://timidity.sourceforge.net/ pro staХОenУ­ a pokyny k instalaci.
-
-NejdХ™У­ve musУ­te spustit daemona:
-
- timidity -ir 7777
-
-NynУ­ mХЏХОete spustit ScummVM a zkusit vybrat TiMidity jako vУНstup pro hudbu. StandardnФ› se pХ™ipojУ­ k localhost:7777, ale hostitele/port mХЏХОete zmФ›nit pomocУ­ promФ›nnУЉ prostХ™edУ­ "TIMIDITY_HOST". MХЏХОete takУЉ urФit
-"ФУ­slo zaХ™У­zenУ­" pouХОitУ­m promФ›nnУЉ "SCUMMVM_MIDIPORT".
-
-
-7.8) PouХОitУ­ komprimovanУНch zvukovУНch souborХЏ
----- ----------------------------------------
-
-7.8.0) PouХОitУ­ souborХЏ MP3 pro CD audio:
------- ---------------------------------
-PouХОijte LAME nebo jinУН kodУЉr MP3 pro vyjmutУ­ stop cd audio do souborХЏ.
-Soubory pojmenujte track1.mp3 track2.mp3 atd. ScummVM musУ­ bУНt sestaven s podporou MAD pro pouХОitУ­ tУЉto moХОnosti. Soubory budete muset zТ CD vyjmout ve formУЁtu WAV, pak je pХ™evУЉst do formУЁtu MP3 vТ konstantnУ­ pХ™enosovУЉ rychlosti. To mХЏХОe bУНt provedeno pomocУ­ nУЁsledujУ­cУ­ho pХ™У­kazovУЉho Х™УЁdku:
-
- lame -t -q 0 -b 96 track1.wav track1.mp3
-
-
-7.8.1) PouХОitУ­ souborХЏ Ogg Vorbis pro CD audio:
------- ----------------------------------------
-PouХОijte oggenc nebo jinУН kodУЉr vorbis kТ pХ™evedenУ­ zvukovУНch stop do souborХЏ. Pojmenujte je track1.ogg track2.ogg atd. ScummVM musУ­ bУНt sestaven s podporou vorbis pro pouХОitУ­ tУЉto moХОnosti. Soubory budete muset zТ CD vyjmout ve formУЁtu WAV, pak je pХ™evУЉst do formУЁtu vorbis. To mХЏХОe bУНt provedeno pomocУ­ nУЁsledujУ­cУ­ho pХ™У­kazovУЉho Х™УЁdku pro oggenc, kde hodnota po q urФuje poХОadovanou kvalitu od 0 do 10:
-
- oggenc -q 5 track1.wav
-
-
-7.8.2) PouХОitУ­ souborХЏ Flac pro CD audio:
------- ----------------------------------
-PouХОijte flac nebo jinУН kodУЉr flac kТ pХ™evedenУ­ zvukovУНch stop do souborХЏ.
-Pojmenujte je track1.flac track2.flac atd. Pokud VУЁХЁ souborovУН systУЉm podporuje pХ™У­pony pouze se tХ™emi pУ­smeny, pojmenujte je track1.fla track2.fla atd. ScummVM musУ­ bУНt sestaven s podporou flac pro pouХОitУ­ tУЉto moХОnosti. Soubory budete muset zТ CD vyjmout ve formУЁtu WAV, pak je pХ™evУЉst do formУЁtu flac. To mХЏХОe bУНt provedeno pomocУ­ nУЁsledujУ­cУ­ho pХ™У­kazovУЉho Х™УЁdku pro flac:
-
- flac --best track1.wav
-
-NezapomeХˆte, ХОe kvalita bude vХОdy stejnУЁ, rХЏznУЉ moХОnosti kodУЉru ovlivХˆujУ­ dobu kУГdovУЁnУ­ a vУНslednou velikost souboru.
-
-
-7.8.3) KomprimovУЁnУ­ MONSTER.SOU pomocУ­ MP3:
------- ------------------------------------
-PotХ™ebujete LAME a nУЁХЁ nУЁstroj 'compress_scumm_sou' z balУ­Фku
-scummvm-tools, abyste toto mohli provУЉst a ScummVM musУ­ bУНt sestaven s podporou MAD.
-
- compress_scumm_sou monster.sou
-
-Nakonec dostanete mnohem menХЁУ­ soubor monster.so3, tento soubor zkopУ­rujte do VaХЁУ­ sloХОky hry. Pak mХЏХОete soubor monster.sou odstranit.
-
-
-7.8.4) KomprimovУЁnУ­ MONSTER.SOU pomocУ­ Ogg Vorbis:
------- -------------------------------------------
-Tak jako vУНХЁe, ale ScummVM musУ­ bУНt sestaven s podporou OGG. SpusХЅte:
-
- compress_scumm_sou --vorbis monster.sou
-
-To by mФ›lo vytvoХ™it menХЁУ­ soubor monster.sog file, kterУН byste mФ›li zkopУ­rovat do sloХОky hry. KУГdovУЁnУ­ Ogg mХЏХОe trvat mnohem dУЉle neХО u MP3, takХОe mФ›jte po ruce dobrou knУ­ХОku.
-
-
-7.8.5) KomprimovУЁnУ­ MONSTER.SOU pomocУ­ Flac:
------- -------------------------------------
-Tak jako vУНХЁe, ale ScummVM musУ­ bУНt sestaven s podporou Flac. SpusХЅte:
-
- compress_scumm_sou --flac monster.sou
-
-To by mФ›lo vytvoХ™it menХЁУ­ soubor monster.sof, kterУН byste mФ›li zkopУ­rovat do sloХОky hry. NezapomeХˆte, ХОe kvalita bude vХОdy stejnУЁ, rХЏznУЉ moХОnosti kodУЉru ovlivХˆujУ­ dobu kУГdovУЁnУ­ a vУНslednou velikost souboru. ZmФ›na velikosti bloku (-b <hodnota>), mУЁ nejvФ›tХЁУ­ vliv na vУНslednou velikost souboru -- 1152 se zdУЁ bУНt dobrУЁ hodnota pro tento druh zvukovУНch souborХЏ. PХ™eФtФ›te si dokumentaci kodУЉru pХ™edtУ­m, neХО pouХОijete dalХЁУ­ hodnoty.
-
-
-7.8.6) KomprimovУЁnУ­ hudby/zvuku/hlasu v hrУЁch AGOS:
------- --------------------------------------------
-Pro tento УКkol pouХОijte nУЁХЁ nУЁstroj 'compress_agos' z balУ­Фku scummvm-tools. MХЏХОete volit mezi nФ›kolika cУ­lovУНmi formУЁty, ale nezapomeХˆte, ХОe je mХЏХОete pouХОУ­t pouze tehdy, kdyХО ScummVM byl sestaven se zapnutou podporou konkrУЉtnУ­ho dekodУЉru.
-
- compress_agos effects (Pro CD verzi Simon 1 od Acorn)
- compress_agos simon (Pro CD verzi Simon 1 od Acorn)
- compress_agos effects.voc (Pro DOS CD verzi Simon 1)
- compress_agos simon.voc (Pro DOS CD verzi Simon 1)
- compress_agos simon.wav (Pro Windows CD verzi Simon 1)
- compress_agos simon2.voc (Pro DOS CD verzi Simon 2)
- compress_agos simon2.wav (Pro Windows CD verzi Simon 2)
- compress_agos mac (Pro Macintosh verzi Simon 2)
-
- compress_agos voices1.wav (Pro Windows verzi Feeble na 2CD/4CD)
- compress_agos voices2.wav (Pro Windows verzi Feeble na 2CD/4CD)
- compress_agos voices3.wav (Pro Windows verzi Feeble na 4CD)
- compress_agos voices4.wav (Pro Windows verzi Feeble na 4CD)
-
- compress_agos Music (Pro Windows verzi Puzzle Pack)
-
-Pro Ogg Vorbis pХ™idejte k volbУЁm --vorbis, tj.
-
- compress_agos --vorbis
-
-Pro Flac pХ™idejte k volbУЁm --flac a dodateФnУЉ parametry, tj.
-
- compress_agos --flac
-
-Nakonec dostanete mnohem menХЁУ­ soubor *.mp3, *.ogg nebo *.fla, zkopУ­rujte ho do VaХЁУ­ sloХОky hry. StarУН soubor mХЏХОete bezpeФnУЉ odebrat.
-
-
-7.8.7) KomprimovУЁnУ­ Х™eФi/hudby v Broken Sword:
------- ---------------------------------------
-NУЁstroj 'compress_sword1' z balУ­Фku scummvm-tools mХЏХОe pХ™evУЉst hudbu a Х™eФ do MP3, Ogg Vorbis a takУЉ Flac. NejsnadnФ›jХЁУ­m zpХЏsobem, jak soubory pХ™evУЉst, je prostУЉ zkopУ­rovУЁnУ­ spouХЁtФ›Фe do VaХЁУ­ sloХОky BS1 (spolu s kodУЉrem lame) a pak ho odsud spustit. Tak bude vХЁechno automaticky pХ™evedeno na MP3. PotУЉ, mХЏХОete ruФnФ› odstranit soubory SPEECH?.CLU a hudebnУ­ soubory wave.
-
-SpuХЁtФ›nУ­m "compress_sword1 --vorbis" soubory zkomprimuje pomocУ­ Ogg Vorbis mУ­sto MP3.
-
-SpuХЁtФ›nУ­m "compress_sword1 --flac" soubory zkomprimuje pomocУ­ Flac
-mУ­sto MP3.
-
-PouХОijte "compress_sword1 --help", abyste dostali УКplnУН seznam moХОnostУ­.
-
-
-7.8.8) KomprimovУЁnУ­ Х™eФi/hudby v Broken Sword II:
------- ------------------------------------------
-Pro tento УКkol pouХОijte nУЁХЁ nУЁstroj 'compress_sword2'. MХЏХОete volit mezi nФ›kolika cУ­lovУНmi formУЁty, ale nezapomeХˆte, ХОe je mХЏХОete pouХОУ­t pouze tehdy, kdyХО ScummVM byl sestaven se zapnutou podporou konkrУЉtnУ­ho dekodУЉru.
-
- compress_sword2 speech1.clu
- compress_sword2 music1.clu
-
-Pro Ogg Vorbis pХ™idejte --vorbis k moХОnostem, tj.
-
- compress_sword2 --vorbis
-
-Nakonec budete mУ­t mnohem menХЁУ­ soubor *.cl3 nebo *.clg, tento soubor zkopУ­rujte do sloХОky hry. StarУН soubor mХЏХОete bezpeФnУЉ odstranit.
-
-Je moХОnУЉ pouХОУ­t Flac pro komprimaci pХ™idУЁnУ­m moХОnosti by --flac. NicmУЉnФ› vУНslednУН soubor *.clf je ve skuteФnosti vФ›tХЁУ­ neХО pХЏvodnУ­.
-
-NezapomeХˆte, prosУ­m, ХОe compress_sword2 bude fungovat pouze se ФtyХ™mi soubory Х™eФi/hudby v Broken Sword II. Nebude fungovat sТ dalХЁУ­mi soubory *.clu, ani nebude fungovat se soubory Х™eФi zТ Broken Sword.
-
-
-7.9) VУНstupnУ­ vzorkovacУ­ kmitoФet:
----- -----------------------------
-VУНstupnУ­ vzorkovacУ­ kmitoФet Х™У­kУЁ ScummVM, kolik vzorkХЏ zvuku mУЁ hrУЁt vТ kanУЁlu za sekundu. Je toho hodnФ›, co by se dalo Х™У­ct o tomto tУЉmatu, ale vФ›tХЁina toho je zde nepodstatnУЉ. KrУЁtkУЁ verze je, ХОe vФ›tХЁinФ› her staФУ­ 22050 Hz, ale vТ nФ›kterУНch pХ™У­padech je lepХЁУ­ 44100 Hz. Na extrУЉmnФ› pomalУНch systУЉmech byste radФ›ji mФ›li pouХОУ­t 11025 Hz, ale je nepravdФ›podobnФ›, ХОe byste se sТ tУ­mto museli zabУНvat.
-
-Abychom to rozvedli, vФ›tХЁina zvukХЏ, kterУЉ ScummVM musУ­ pХ™ehrУЁt, byla vzorkovУЁna buФ na 22050 Hz, nebo 11025 Hz. PouХОitУ­m vyХЁХЁУ­ho kmitoФtu jako kouzlem nezvУНХЁУ­ kvalitu tФ›chto zvukХЏ. Proto je 22050 Hz v poХ™УЁdku.
-
-NФ›kterУЉ hry pouХОУ­vajУ­ CD audio. Pokud pro toto pouХОУ­vУЁte komprimovanУЉ soubory, jsou pravdФ›podobnФ› vzorkovanУН na kmitoФtu 44100 Hz, takХОe pro tyto hry je toto pravdФ›podobnФ› lepХЁУ­ volba kmitoФtu.
-
-PХ™i pouХОitУ­ ovladaФХЏ hudby AdLib, FM Towns, PC Speaker nebo IBM PCjr je
-ScummVM zodpovФ›dnУН za vytvУЁХ™enУ­ vzorkХЏ. VФ›tХЁinou bude 22050 Hz staФit, ale existuje alespoХˆ jedna stopa hudby AdLib Beneath a Steel Sky, kterУЁ znУ­ lУЉpe pХ™i 44100 Hz.
-
-PouХОitУ­ kmitoФtХЏ mezi nenУ­ doporuФeno. Za prvУЉ VaХЁe zvukovУЁ karta ho nemusУ­ podporovat. Teoreticky by se ScummVM mФ›l vrУЁtit kТ rozumnУЉmu kmitoФtu, ale nespolУЉhejte na to. DХЏleХОitФ›jХЁУ­ je ale to, ХОe ScummVM musУ­ pХ™evzorkovat vХЁechny zvuky na jejich vУНstupnУ­ kmitoФet. To je mnohem snadnФ›jХЁУ­ kТ provedenУ­, kdyХО vУНstupnУ­ kmitoФet je nУЁsobkem pХЏvodnУ­ho.
-
-
-8.0) Soubor s nastavenУ­m:
----- --------------------
-StandardnФ› je soubor sТ nastavenУ­m uloХОen a naФУ­tУЁn:
-
- Windows Vista/7:
- \Users\jmУЉno uХОivatele\AppData\Roaming\ScummVM\scummvm.ini,
-
- Windows 2000/XP:
- \Documents and Settings\jmУЉno uХО\Application Data\ScummVM\scummvm.ini
-
- Windows NT4:
- <sloХОkawin>\Profiles\jmУЉno uХО\Application Data\ScummVM\scummvm.ini,
-
- Windows 95/98/ME:
- <sloХОkawin>\scummvm.ini,
-
- Pokud ve Windows nainstalovУЁna dХ™У­vФ›jХЁУ­ verze ScummVM bude ponechУЁno dХ™У­vФ›jХЁУ­ umУ­stФ›nУ­ '<sloХОkawin>\scummvm.ini'.
-
- Unix:
- ~/.scummvmrc
-
- Mac OS X:
- ~/Library/Preferences/ScummVM Preferences
- (zde ~ oznaФuje VaХЁi domovskou sloХОku)
-
- DalХЁУ­:
- scummvm.ini vТ souФasnУЉ sloХОce
-
-VzorovУН soubor sТ nastavenУ­m vypadУЁ takto:
-
- [scummvm]
- gfx_mode=supereagle
- fullscreen=true
- savepath=C:\saves\
-
- [sky]
- path=C:\games\SteelSky\
-
- [germansky]
- gameid=sky
- language=de
- path=C:\games\SteelSky\
- description=Beneath a Steel Sky w/ German subtitles
-
- [germandott]
- gameid=tentacle
- path=C:\german\tentacle\
- description=German version of DOTT
-
- [tentacle]
- path=C:\tentacle\
- subtitles=true
- music_volume=40
- sfx_volume=255
-
- [loomcd]
- cdrom=1
- path=C:\loom\
- talkspeed=5
- savepath=C:\loom\saves\
-
- [monkey2]
- path=C:\amiga_mi2\
- music_driver=windows
-
-8.1) RozpoznУЁvanУЁ klУ­ФovУЁ slova nastavenУ­
----- ------------------------------------
-Jsou rozpoznУЁvУЁna nУЁsledujУ­cУ­ klУ­ФovУЁ slova:
-
- path Х™etФ›zec Cesta, kde jsou umУ­stФ›ny datovУЉ soubory hry
- autosave_period ФУ­slo VteХ™iny mezi autouklУЁdУЁnУ­m (vУНchozУ­: 300)
- save_slot ФУ­slo ФŒУ­slo uloХОenУЉ, kterУЉ pХ™i spuХЁtФ›nУ­ naФУ­st.
- savepath Х™etФ›zec Cesta, kde hra bude uklУЁdat uloХОenУЉ hry.
- versioninfo Х™etФ›zec Verze ScummVM, kterУЁ vytvoХ™ila soubor.
- gameid Х™etФ›zec SkuteФnУЉ id hry. UХОiteФnУЉ, pokud mУЁte nФ›kolik verzУ­ stejnУЉ hry a chcete pro nФ› rХЏznУЉ pХ™ezdУ­vky. Viz pХ™У­klad.
- description Х™etФ›zec Popis hry jak se zobrazУ­ ve spouХЁtФ›Фi.
- language Х™etФ›zec UrФУ­ jazyk (en, us, de, fr, it, pt, es,
- jp, zh, kr, se, gb, hb, cz, ru)
- speech_mute boolean Pokud true, Х™eФ je ztlumena
- subtitles boolean Pokud true jsou titulky zapnuty.
- talkspeed ФУ­slo ZpoХОdФ›nУ­ textu v hrУЁch SCUMM, nebo rychlost textu vТ jinУНch hrУЁch.
- fullscreen boolean ReХОim celУЉ obrazovky
- aspect_ratio boolean Povolit korekci pomФ›ru stran
- gfx_mode Х™etФ›zec GrafickУН reХОim (normУЁlnУ­, 2x, 3x, 2xsai, super2xsai, supereagle, advmame2x, advmame3x,hq2x, hq3x, tv2x, dotmatrix)
- confirm_exit boolean Zeptat se uХОivatele na potvrzenУ­ pХ™ed ukonФenУ­m (pouze jУЁdro SDL).
- console boolean Povolit okno konzole (vУНchozУ­: zapnuto) (pouze Windows).
- cdrom ФУ­slo ФŒУ­slo jednotky CD-ROM, kterou pouХОУ­t pro zvuk. Pokud je zУЁpornУЉ, kТ pokusu o pХ™У­stup k CD-ROM nedojde.
- joystick_num ФУ­slo ФŒУ­slo zaХ™У­zenУ­ joysticku, kterУЉ pouХОУ­t pro vstup
- music_driver Х™etФ›zec KterУЉ hudebnУ­ jУЁdro pouХОУ­t.
- opl_driver Х™etФ›zec KterУН emulУЁtor AdLib (OPL) pouХОУ­t.
- output_rate ФУ­slo KterУН vУНstupnУ­ vzorkovacУ­ kmitoФet pouХОУ­t v Hz. RozumnУЉ hodnoty jsou 11025, 22050 a 44100.
- alsa_port Х™etФ›zec KterУН port pouХОУ­t pro vУНstup pХ™i pouХОitУ­ hudebnУ­ho ovladaФe ALSA.
- music_volume ФУ­slo NastavenУ­ hlasitosti hudby (0-255)
- multi_midi boolean Pokud true, jsou povoleny smУ­ХЁenУН AdLib a pХЏvodnУ­ MIDI.
- soundfont Х™etФ›zec KterУН SoundFont pouХОУ­t pro pХ™ehrУЁvУЁnУ­ MIDI. (PodporovУЁno pouze nФ›kterУНmi ovladaФi MIDI.)
- native_mt32 boolean Pokud true, zakУЁХОe emulaci GM a pХ™edpoklУЁdУЁ, ХОe je dostupnУН pravУН Roland MT-32.
- enable_gs boolean Pokud true, povolУ­ funkce urФenУЉ pro Roland GS ke zlepХЁenУ­ emulace GM. Pokud je native_mt32 takУЉ nastaven na true, zaХ™У­zenУ­ GS zvolУ­ mapu MT-32 pro pХ™ehrУЁvУЁnУ­ sprУЁvnУНch instrumentХЏ.
- sfx_volume ФУ­slo NastavenУ­ hlasitosti zvuku (0-255)
- tempo ФУ­slo Rychlost hudby (50-200) (vУНchozУ­: 100)
- speech_volume ФУ­slo NastavenУ­ hlasitosti Х™eФi (0-255)
- midi_gain ФУ­slo ZvУНХЁenУ­ MIDI (0-1000) (vУНchozУ­: 100) (PodporovУЁno pouze nФ›kterУНmi ovladaФi MIDI.)
- copy_protection boolean PovolУ­ ochranu proti kopУ­rovУЁnУ­ vТ urФitУНch hrУЁch, kde by ji ScummVM standardnФ› zakУЁzal.
- demo_mode boolean Spustit demoverzi v Maniac Mansion
- alt_intro boolean PouХОУ­t alternativnУ­ УКvod pro CD verze Beneath a Steel Sky a Flight of the Amazon Queen
- boot_param ФУ­slo PХ™edУЁ toto ФУ­slo zavУЁdФ›cУ­mu skriptu
-
-Hry Sierra pouХОУ­vajУ­cУ­ jУЁdro AGI pХ™idУЁvajУ­ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
-
-originalsaveload boolean Pokud true, jsou pouХОity pХЏvodnУ­ obrazovky nahrУЁvУЁnУ­/uloХОenУ­ mУ­sto vylepХЁenУНch ze ScummVM
-
-Hry Sierra pouХОУ­vajУ­cУ­ jУЁdro SCI pХ™idУЁvajУ­ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
-
- disable_dithering boolean Odstranit artefakty chvФ›nУ­ vТ nФ›kterУНch hrУЁch EGA
- prefer_digitalsfx boolean Pokud true, jsou upХ™ednostХˆovУЁny digitУЁlnУ­ zvukovУЉ efekty pХ™ed syntetizovanУНmi
- originalsaveload boolean Pokud true, jsou pouХОity pХЏvodnУ­ obrazovky nahrУЁvУЁnУ­/uloХОenУ­ mУ­sto vylepХЁenУНch ze ScummVM
- native_fb01 bool Pokud true, je ovladaФ hudby pro kartu IBM Music Feature nebo modul syntetizУЁtoru Yahama FB-01 FM pouХОit jako vУНstup MIDI
-Broken Sword II pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
-
- gfx_details ФУ­slo NastavenУ­ grafickУНch detailХЏ (0-3)
- music_mute boolean Pokud true, hudba je ztlumena
- object_labels boolean Pokud true, popisky objektХЏ jsou povoleny
- reverse_stereo boolean Pokud true, kanУЁly stereo jsou obrУЁceny
- sfx_mute boolean Pokud true, zvukovУЉ efekty jsou ztlumeny
-
-Flight of the Amazon Queen pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
-
- music_mute boolean Pokud true, hudba je ztlumena
- sfx_mute boolean Pokud true, zvukovУЉ efekty jsou ztlumeny
-
-Jones in the Fast Lane pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
-
- music_mute boolean Pokud true, je pouХОito CD audio mУ­sto zvukХЏ ve hХ™e
-
-King's Quest VI Windows pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
-
- windows_cursors boolean Pokud true, jsou pouХОity pХЏvodnУ­ ФernobУ­lУЉ kurzory mУ­sto kurzorХЏ z DOS. Pokud false, jsou ve verzi Windows pouХОity kurzory DOS, zvФ›tХЁenУЉ, aby se shodovaly se zbytkem zvФ›tХЁenУЉ grafiky
-
-Lands of Lore: The Throne of Chaos pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
-
- smooth_scrolling boolean Pokud true, je posunovУЁnУ­ pХ™i zmФ›nФ› zТ jednУЉ obrazovky na druhou plynulejХЁУ­
- floating_cursors boolean Pokud true, je kurzor zmФ›nФ›n na smФ›rovou ХЁipku pХ™i najetУ­ na okraj obrazovky. HrУЁФ pak mХЏХОe kliknout pro pohyb vТ tomto smФ›ru.
-
-Space Quest IV CD pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
-
- silver_cursors boolean Pokud true, je mУ­sto pХЏvodnУ­ch zlatУНch kurzorХЏ pouХОita alternativnУ­ sada stХ™У­brnУНch
-
-Simon the Sorcerer 1 a 2 pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
-
- music_mute boolean Pokud true, hudba je ztlumena
- sfx_mute boolean Pokud true, zvukovУЉ efekty jsou ztlumeny
-
-The Legend of Kyrandia pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
-
- walkspeed celУЉ ФУ­slo Rychlost chХЏze (0-4)
-
-The Legend of Kyrandia: The Hand of Fate pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
-
- walkspeed ФУ­slo Rychlost chХЏze (3 nebo 5, coХО znamenУЁ
- rychle nebo pomalu)
-
-The Legend of Kyrandia: Malcolm's Revenge pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
-
- walkspeed ФУ­slo Rychlost chХЏze (3 nebo 5, coХО znamenУЁ
- rychle nebo pomalu)
- studio_audience boolean Pokud true, je slyХЁet potlesk a smУ­ch kdykoliv Malcolm provede nФ›co vtipnУЉho
- skip_support boolean Pokud true, hrУЁФ mХЏХОe pХ™eskakovat text a scУЉny hry
- helium_mode boolean Pokud true, lidУЉ znФ›jУ­ tak, jakoby se nadУНchali hУЉlia
-
-The 7th Guest pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
-
- fast_movie_speed boolean Pokud true, jsou videa pХ™ehrУЁvУЁna pХ™i zvУНХЁenУЉ
- rychlosti, stejnУЉ jako ve verzi pro iOS.
- Videa bez zvuku jsou stУЁle pХ™ehrУЁvУЁna pХ™i
- normУЁlnУ­ rychlosti, aby nedoХЁlo k desynchronizaci
- hudby
-
-8.2) VlastnУ­ hernУ­ volby, kterУЉ mohou bУНt pХ™epУ­nУЁny pomoci grafickУЉho
----- ----------------------------------------------------------------
-rozhranУ­
---------
-Mnoho vlastnУ­ch hernУ­ch voleb vТ pХ™edchozУ­ ФУЁsti mХЏХОe bУНt pХ™epnuto pХ™es grafickУЉ rozhranУ­. Pokud je takovУЁto volba pro urФitou hru dostupnУЁ, objevУ­ se karta "JУЁdro" pХ™i pХ™idУЁvУЁnУ­ nebo УКpravФ› nastavenУ­ tУЉto hry.
-Pokud vlastnУ­ moХОnosti nejsou zobrazeny, musУ­ bУНt konkrУЉtnУ­ hry spuХЁtФ›ny jednou nebo znovu pХ™idУЁny do seznamu her spouХЁtФ›Фe ScummVM. Toto aktualizuje nastavenУ­ kaХОdУЉ poloХОky, ФУ­mХО umoХОnУ­ zobrazenУ­ vlastnУ­ch voleb.
-
-9.0) SestavenУ­:
----- ----------
-Pro aktuУЁlnУ­ pХ™ehled o tom, jak ScummVM sestavit pro rХЏznУЉ platformy, prohlУЉdnФ›te si, prosУ­m, naХЁУ­ Wiki, zvlУЁХЁtФ› tuto strУЁnku:
-
- http://wiki.scummvm.org/index.php/Compiling_ScummVM
-
-Pokud sestavujete ve Windows, Linux nebo Mac OS X, potХ™ebujete SDL-1.2.2
-Nebo novФ›jХЁУ­ (starХЁУ­ verze mohou fungovat, ale nejsou podporovУЁny) a podporovanУН kompilУЁtor. VФ›tХЁina kompilУЁtorХЏ, vФetnФ› GCC, mingw a novФ›jХЁУ­ch verzУ­ Microsoft Visual C++ jsou podporovУЁny. Pokud chcete pouХОУ­t stopy CD komprimovanУЉ do MP3 nebo soubory .SOU, musУ­te nainstalovat knihovnu MAD; podobnФ› potХ™ebujete vhodnУЉ knihovny pro komprimovanУН zvuk pomocУ­ Ogg Vorbis a FLAC. Pro komprimovanУЉ uloХОenУЉ stavy je potХ™eba mУ­t zlib.
-
-NФ›kterУЉ ФУЁsti ScummVM, zvlУЁХЁtФ› zvФ›tХЁovaФe, majУ­ vysoce optimalizovanУЉ verze napsanУЉ v assembleru. Pokud si pХ™ejete tuto moХОnost pouХОУ­t, potХ™ebuje mУ­t nainstalovУЁn assembler nasm (viz http://nasm.sf.net). NezapomeХˆte, ХОe vТ souФasnosti mУЁme pouze verze optimalizovanУЉ pro x86 MMX, a nebudou sestaveny pro jinУЉ procesory.
-
-Na Win9x/NT/XP mХЏХОete urФit USE_WINDBG a pХ™ipojit WinDbg pro prochУЁzenУ­ ladУ­cУ­ch zprУЁv (viz http://www.sysinternals.com/ntw2k/freeware/debugview.shtml).
-
- GCC a MinGW32:
- * Zadejte "./configure"
- * Zadejte "make" (nebo "gmake", Фi "gnumake", vТ zУЁvislosti na tom, jak je GNU make ve VaХЁem systУЉmu nazvУЁn) a ScummVM snad bude pro VУЁs sestaven.
- * Pro dalХЁУ­ informace si prohlУЉdnФ›te:
- http://wiki.scummvm.org/index.php/Compiling_ScummVM/GCC
- Фi
- http://wiki.scummvm.org/index.php/Compiling_ScummVM/MinGW
-
- Microsoft Visual C++ 8/9/10:
- * PХ™eФtФ›te si, jak vytvoХ™it soubory projektu ve "dists\msvc8",
- "dists\msvc9" pХ™У­sluХЁnФ› "dists\msvc10".
- * OtevХ™ete vУНslednУН soubor projektu.
- * Zadejte cestu k potХ™ebnУНm knihovnУЁm a hlsiФkovУНm souborХЏm v
- Tools|Options|Projects and Solutions|VC++ Directories".
- * TeФ by program mФ›l bУНt УКspФ›ХЁnФ› sestaven.
- * Pro dalХЁУ­ informace si prohlУЉdnФ›te:
- http://wiki.scummvm.org/index.php/Compiling_ScummVM/VS2005
-
- Windows Mobile:
- * PХ™eФtФ›te si prosУ­m:
- http://wiki.scummvm.org/index.php/Compiling_ScummVM/Windows_CE
-
- Mac OS X:
- * UjistФ›te se, ХОe mУЁte nainstalovУЁny nУЁstroje pro vУНvojУЁХ™e.
- * BalУ­Фek SDL pro vУНvojУЁХ™e na OS X, kterУН je dostupnУН na strУЁnce SDL _nenУ­_ vhodnУН. SpУ­ХЁe potХ™ebujete sestavenУ­ vТ unixovУЉm stylu. Jeden takovУН zpХЏsob, jak ho nainstalovat je pomocУ­ Fink
- (http://fink.sf.net). TakУЉ mХЏХОete SDL sestavit ruФnФ› ze zdrojovУЉho kУГdu pomocУ­ systУЉmu sestavenУ­ pro unix (configure a make).
- * Ve sloХОce ScummVM zadejte "./configure".
- * NynУ­ mХЏХОete zadat 'make' pro vytvoХ™enУ­ spouХЁtФ›Фe pХ™У­kazovУЉho Х™УЁdku.
- * Abyste zУ­skali verzi, kterou mХЏХОete spustit z Finder, zadejte 'make bundle' coХО vytvoХ™У­ ScummVM.app (to funguje pouze, kdyХО mУЁte SDL nainstalovУЁn do /sw, coХО se pХ™i instalaci Fink provede). Pokud jste SDL nainstalovali jinУНm zpХЏsobem, budete muset upravit ports.mk).
- * Pro dalХЁУ­ informace si prohlУЉdnФ›te:
- http://wiki.scummvm.org/index.php/Compiling_ScummVM/MacOS_X_Crosscompiling
-
- AmigaOS 4 (KХ™У­ХОovУЁ kompilace pomocУ­ Cygwin):
- * UjistФ›te se, ХОe mУЁte nainstalovУЁn SDL, mХЏХОete takУЉ potХ™ebovat
- libogg, libvorbis, libvorbisfile, zlib, libmad.
- * Zadejte ./configure --host=ppc-amigaos
- * Pokud dostanete chybu o sdl-config, pouХОijte parametr --with-sdl-prefix pro nastavenУ­ cesty.
- * Zkontrolujte soubor 'config.mk' a pokud je vХЁe v poХ™УЁdku:
- * SpusХЅte 'make'.
- * KХ™У­ХОovУЁ kompilace pomocУ­ Linux mХЏХОe bУНt takУЉ tak lehkУЁ.
-
- iPhone:
- * PХ™eФtФ›te si prosУ­m:
- http://wiki.scummvm.org/index.php/Compiling_ScummVM/iPhone
-
- Maemo:
- * Nainstalujte Maemo SDK s rootstrap 4.1.2
- * Nainstalujte libmad, Tremor, FLAC ze zdroje
- * SpusХЅte 'ln -s backends/platform/maemo/debian'
- * Aktualizujte debian/changelog
- * SpusХЅte 'sb2 dpkg-buildpackage -b'
-
-------------------------------------------------------------------------
-HodnФ› Х tФ›stУ­ a Х ХЅastnУЉ AdventurovУЁnУ­!
-TУНm ScummVM.
-http://www.scummvm.org/
-------------------------------------------------------------------------
-
-
-
-
+P՘EФŒTIMФš ScummVM
+------------------------------------------------------------------------
+
+Pro vУ­ce informacУ­, seznamy kompatibility, podrobnosti o dotacУ­ch, nejnovФ›jХЁУ­ verze,
+novinky o vУНvoji a dalХЁУ­, prosУ­m navХЁtivte domovskou strУЁnku ScummVM na: http://www.scummvm.org/
+
+
+Obsah:
+------
+1.0) Уšvod
+ * 1.1 O ScummVM
+ * 1.2 RychlУН nУЁvod
+2.0) Kontakt
+ * 2.1 HlУЁХЁenУ­ chyb
+3.0) PodporovanУЉ hry
+ * 3.1 Ochrana proti kopУ­rovУЁnУ­
+ * 3.2 PoznУЁmky ke hrУЁm Commodore64
+ * 3.3 PoznУЁmky k Maniac Mansion NES
+ * 3.4 PoznУЁmky ke hrУЁm Macintosh
+ * 3.5 PoznУЁmky ke hrУЁm Multi-CD
+ * 3.6 PoznУЁmky k The Curse of Monkey Island
+ * 3.7 PoznУЁmky ke hrУЁm Broken Sword
+ * 3.8 PoznУЁmky k Beneath a Steel Sky
+ * 3.9 PoznУЁmky k Flight of the Amazon Queen
+ * 3.10 PoznУЁmky ke Gobliiins
+ * 3.11 PoznУЁmky k Inherit the Earth: Quest for the Orb
+ * 3.12 PoznУЁmky k Simon the Sorcerer
+ * 3.13 PoznУЁmky k The Feeble Files
+ * 3.14 PoznУЁmky k The Legend of Kyrandia
+ * 3.15 PoznУЁmky k PХ™edvУ­davУЉmu VstupnУ­mu Dialogu her Sierra AGI
+ * 3.16 PoznУЁmky k Mickey's Space Adventure
+ * 3.17 PoznУЁmky k Winnie the Pooh
+ * 3.18 PoznУЁmky k Troll's Tale
+ * 3.19 PoznУЁmky k DraФУ­ Historie
+ * 3.20 Titulky a hlasy soubФ›ХОnФ› v hrУЁch Sierra SCI
+ * 3.21 ZnУЁmУЉ problУЉmy
+4.0) PodporovanУЉ platformy
+5.0) SpuХЁtФ›nУ­ ScummVM
+ * 5.1 MoХОnosti pХ™У­kazovУЉho Х™УЁdku
+ * 5.2 Volby jazyka
+ * 5.3 GrafickУЉ filtry
+ * 5.4 GlobУЁlnУ­ menu
+ * 5.5 KlУЁvesovУЉ zkratky
+6.0) UloХОenУЉ hry
+ * 6.1 AutomatickУЉ uklУЁdУЁnУ­
+ * 6.2 PХ™evod uloХОenУНch her
+ * 6.3 ZobrazenУ­/NaФtenУ­ uloХОenУНch her z pХ™У­kazovУЉho Х™УЁdku
+7.0) Hudba a zvuk
+ * 7.1 Emulace AdLib
+ * 7.2 Emulace FluidSynth MIDI
+ * 7.3 Emulace MT-32
+ * 7.4 Emulace MIDI
+ * 7.5 PХ™irozenУЁ podpora MIDI
+ * 7.6 Podpora nativnУ­ho UNIX, ALSA a sekvencУЉru dmedia
+ * 7.7 Podpora MIDI serveru TiMidity++
+ * 7.8 PouХОitУ­ komprimovanУНch zvukovУНch souborХЏ (MP3, Ogg Vorbis, Flac)
+ * 7.9 VУНstupnУ­ vzorkovacУ­ kmitoФet
+8.0) Soubor sТ nastavenУ­m
+ * 8.1 RozpoznУЁvanУЁ klУ­ФovУЁ slova nastavenУ­
+ * 8.2 VlastnУ­ hernУ­ volby, kterУЉ mohou bУНt pХ™epУ­nУЁny pomoci grafickУЉho rozhranУ­
+9.0) SestavenУ­
+
+
+1.0) Уšvod:
+---- -----
+
+1.1) O ScummVM:
+---- ----------
+ScummVM je program, kterУН VУЁm umoХОХˆuje spouХЁtФ›t urФitУЉ klasickУЉ grafickУЉ point-and-click adventury, za pХ™edpokladu, ХОe jiХО mУЁte jejich datovУЉ soubory. A teФ ta chytrУЁ ФУЁst: ScummVM jenom nahrazuje spouХЁtФ›Фe, kterУЉ jsou dodУЁvУЁny se hrou, coХО VУЁm umoХОХˆuje hrУЁt hry vТ systУЉmech, pro kterУЉ nikdy nebyly navrХОeny!
+
+PХЏvodnФ› byl navrХОen pro spouХЁtФ›nУ­ her SCUMM od LucasArts SCUMM, jako napХ™. Maniac Mansion, Monkey Island, Day of the Tentacle nebo Sam and Max. SCUMM znamenУЁ 'NУЁstroj pro VytvУЁХ™enУ­ Skriptu pro Maniac Mansion', coХО byla prvnУ­ hra, pro kterou LucasArts tento systУЉm navrhl. A mnohem pozdФ›ji dal svУЉ jmУЉno ScummVM ('VM' znamenУЁ VirtuУЁlnУ­ Stroj).
+
+Postupem Фasu byla pХ™idУЁna podpora pro spoustu her mimo SCUMM a
+ScummVM nynУ­ takУЉ podporuje mnoho AGI a SCI her od Sierra (napХ™. King's
+Quest 1-6, Space Quest 1-5, ...), Discworld 1 a 2, Simon the Sorcerer 1 and 2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword I a II, Flight of the Amazon Queen, Gobliiins 1-3, sУЉrie The Legend of Kyrandia, mnoho ze SCUMMТ her pro dФ›ti od Humongous Entertainment (vФetnФ› her Freddi Fish a Putt Putt) a mnoho dalХЁУ­ch. Na strУЁnce kompatibility mХЏХОete najУ­t УКplnУН seznam sТ podrobnostmi, kterУЉ adventury jsou podporovУЁny a jak dobХ™e. ScummVM je neustУЁle zlepХЁovУЁn a proto navХЁtФ›vujte naХЁe strУЁnky Фasto.
+
+Mezi systУЉmy, na kterУНch mХЏХОete tyto hrУЁt, jsou bФ›ХОnУЉ stolnУ­ poФУ­taФe (majУ­cУ­ Windows, Linux, Mac OS X, ...), hernУ­ konzole
+(Dreamcast, Nintendo DS a Wii, PS2, PSP, ...), chytrУЉ telefony (Android,
+iPhone, PocketPC, Symbian ...) a dalХЁУ­.
+
+VТ souФasnosti je ScummVM stУЁle velkou ФУЁstУ­ ve vУНvoji. NezapomeХˆte, ХОe i kdyХО se snaХОУ­me zajistit, aby mnoho her bylo moХОno dokonФit pouze sТ pУЁr vУЁХОnУНmi chybami, pУЁdy programu mohou nastat a my neposkytujeme ХОУЁdnУЉ zУЁruky. PХ™es to vХЁechno, nФ›kterУЉ hry byly podporovУЁny po dlouhou dobu
+A mФ›ly by fungovat vТ poХ™УЁdku seТ vХЁemi novФ›jХЁУ­mi stabilnУ­mi verzemi. Jak dobХ™e bude hra ve ScummVM fungovat mХЏХОete zjistit prohlУЉdnutУ­m strУЁnky kompatibility.
+VlastnФ›, pokud troХЁiФku zahledУЁte, mХЏХОete zjistit, ХОe ScummVM je pouХОУ­vУЁn i komerФnФ› pro znovu vydУЁnУ­ nФ›kterУНch podporovanУНch her na modernУ­ch platformУЁch. To ukazuje, ХОe i nФ›kolik spoleФnostУ­ je spokojeno sТ kvalitou softwaru a jako moc dobХ™e mХЏХОe nФ›kterУЉ hry spouХЁtФ›t.
+
+Pokud mУЁte ScummVM rУЁdi, mХЏХОete ho podpoХ™it dotacУ­ pomocУ­ tlaФУ­tka PayPal na strУЁnce ScummVM. To nУЁm pomХЏХОe zakoupit nУЁstroje potХ™ebnУЉ ke snadnФ›jХЁУ­mu a rychlejХЁУ­mu vУНvoji ScummVM. Pokud nemХЏХОete podpoХ™it dotacУ­, pomozte a pХ™ispФ›jte zУЁplatou!
+
+1.2) RychlУН nУЁvod:
+---- -------------
+Pro ty netrpФ›livУЉ zТ VУЁs je tu nУЁvod, jak ScummVM spustit vТ nФ›kolika krocУ­ch.
+
+1. StУЁhnФ›te si ScummVM z <http://www.scummvm.org/downloads.php> a nainstalujte ho.
+
+2. Na VaХЁem pevnУЉm disku vytvoХ™te sloХОku a zkopУ­rujte datovУЉ soubory zТ pХЏvodnУ­ho mУЉdia do tУЉto sloХОky. Zopakujte pro vХЁechny hry, kterУЉ chcete hrУЁt
+
+3. SpusХЅte ScummVM, zvolte 'PХ™idat hru', zvolte adresУЁХ™ sТ datovУНmi soubory hry (nesnaХОte se volit datovУЉ soubory samotnУЉ!) a stisknФ›te
+'Zvolit'.
+
+4. MФ›lo by se objevit dialogovУЉ okno umoХОХˆujУ­cУ­ VУЁm pozmФ›nit rХЏznУЁ nastavenУ­, pokud tak chcete (i kdyХО by mФ›lo bУНt vТ poХ™УЁdku vХЁechno nechat ve vУНchozУ­m nastavenУ­). DialogovУЉ okno potvrФte.
+
+5. VТ seznamu vyberte hru, kterou chcete hrУЁt a stisknФ›te 'Spustit'.
+
+VТ budoucnu byste mФ›li bУНt schopni pХ™eskoФit na krok 5, pokud nechcete pХ™idat dalХЁУ­ hry.
+
+Rada: Pokud chcete pХ™idat vУ­ce her najednou, zkuste stisknout a drХОet klУЁvesu shift pХ™edtУ­m, neХО kliknete na 'PХ™idat hru' т€“ tlaФУ­tko se zmФ›nУ­ na 'HromadnУЉ PХ™idУЁnУ­' a pokud ho stisknФ›te, jste znovu poХОУЁdУЁni o zvolenУ­ sloХОky, ale tentokrУЁt ScummVM prohledУЁ vХЁechny podsloХОky pro podporovanУЉ hry.
+
+
+2.0) Kontakt:
+---- --------
+NejjednoduХЁХЁУ­m zpХЏsobem, jak kontaktovat tУНm ScummVM je pХ™edloХОenУ­m hlУЁХЁenУ­ o chybФ› (viz oddУ­l 2.1) nebo pouХОitУ­m naХЁich fУГr na http://forums.scummvm.org .
+MХЏХОete se takУЉ pХ™ipojit a odesУ­lat a e-maily na korespondenФnУ­ seznam scummvm-devel, nebo s nУЁmi chatovat na IRC (#scummvm na irc.freenode.net) NeХОУЁdejte nУЁs, prosУ­m, o podporu nefungujУ­cУ­ hry т€“ nejdХ™У­ve si pХ™eФtФ›te nejФastФ›jХЁУ­ otУЁzky na naХЁУ­ strУЁnce
+
+2.1) HlУЁХЁenУ­ chyb:
+---- -------------
+Abyste mohli nahlУЁsit chybu, nejdХ™У­ve si, prosУ­me, vytvoХ™te si УКФet na SourceForge a kliknФ›te na odkaz "Bug Tracker" na naХЁУ­ strУЁnce. UjistФ›te se, prosУ­m, ХОe se chyba dУЁ znovu zjistit a stУЁle se objevuje vТ nejnovФ›jХЁУ­ verzi git/dennУ­ho sestavenУ­. TakУЉ na naХЁУ­ strУЁnce zkontrolujte seznam znУЁmУНch problУЉmХЏ (nУ­ХОe) a seznam kompatibility pro tuto hru, abyste se ujistili, ХОe problУЉm jiХО nenУ­ znУЁm:
+
+ http://www.scummvm.org/compatibility
+
+ProsУ­me, nenahlaХЁujte chyby ve hrУЁch, kterУЉ nejsou vТ seznamu vТ sekci 'Supported Games' nebo seznamu kompatibility uvedeny jako dokonФitelnУЉ. My т€“vУ­me-, ХОe tyto hry majУ­ chyby.
+
+ZahrХˆte, prosУ­m, nУЁsledujУ­cУ­ informace:
+ - Verzi ScummVM (PROSУME, vyzkouХЁejte nejnovФ›jХЁУ­ sestavenУ­ git/Daily)
+ - Podrobnosti o chybФ›, vФetnФ› postupu na jejУ­ znovu opakovУЁnУ­
+ - Jazyk hry (angliФtina, nФ›mФina, ...)
+ - Verze hry (s Х™eФУ­, z diskety, ...)
+ - Platforma a kompilУЁtor (Win32, Linux, FreeBSD, ...)
+ - Pokud moХОno, pХ™iloХОte uloХОenou hru
+ - Pokud se tato chyba objevila pouze nedУЁvno, poznamenejte si poslednУ­ verzi bez chyby a prvnУ­ verzi sТ touto chybou. Takto ji mХЏХОeme rychle spravit tУ­m, ХОe se podУ­vУЁme na provedenУЉ zmФ›ny.
+
+Nakonec prosУ­me, abyste kaХОdou chybu nahlaХЁovali samostatnФ›; neohlaХЁujte nФ›kolik chyb vТ jednom hlУЁХЁenУ­. (Jinak bude obtУ­ХОnУЉ sledovat stav kaХОdУЉ jednotlivУЉ chyby).
+
+
+3.0) PodporovanУЉ hry:
+---- ----------------
+VТ tuto chvУ­li je o nУЁsledujУ­cУ­ch hrУЁch znУЁmo, ХОe fungujУ­ a mФ›ly by bУНt hratelnУЉ aХО dokonce:
+
+Hry SCUMM od LucasArts:
+ Maniac Mansion [maniac]
+ Zak McKracken and the Alien Mindbenders [zak]
+ Indiana Jones and the Last Crusade [indy3]
+ Loom [loom]
+ The Secret of Monkey Island [monkey]
+ Monkey Island 2: LeChuck's Revenge [monkey2]
+ Indiana Jones and the Fate of Atlantis [atlantis]
+ Day of the Tentacle [tentacle]
+ Sam & Max Hit the Road [samnmax]
+ Full Throttle [ft]
+ The Dig [dig]
+ The Curse of Monkey Island [comi]
+
+Hry AGI od Sierra:
+ The Black Cauldron [bc]
+ Gold Rush! [goldrush]
+ King's Quest I [kq1]
+ King's Quest II [kq2]
+ King's Quest III [kq3]
+ King's Quest IV [kq4]
+ Leisure Suit Larry in the Land of the
+ Lounge Lizards [lsl1]
+ Mixed-Up Mother Goose [mixedup]
+ Manhunter 1: New York [mh1]
+ Manhunter 2: San Francisco [mh2]
+ Police Quest I: In Pursuit of the Death
+ Angel [pq1]
+ Space Quest I: The Sarien Encounter [sq1]
+ Space Quest II: Vohaul's Revenge [sq2]
+ Fanmade Games [agi-fanmade]
+
+Hry AGOS od Adventuresoft/Horrorsoft:
+ Elvira - Mistress of the Dark [elvira1]
+ Elvira II - The Jaws of Cerberus [elvira2]
+ Personal Nightmare [pn]
+ Waxworks [waxworks]
+ Simon the Sorcerer 1 [simon1]
+ Simon the Sorcerer 2 [simon2]
+ Simon the Sorcerer's Puzzle Pack
+ - Demon In My Pocket [dimp]
+ Simon the Sorcerer's Puzzle Pack
+ - Jumble [jumble]
+ Simon the Sorcerer's Puzzle Pack
+ - NoPatience [puzzle]
+ Simon the Sorcerer's Puzzle Pack
+ - Swampy Adventures [swampy]
+ The Feeble Files [feeble]
+
+Hry GOB od Coktel Vision:
+ Bambou le sauveur de la jungle [bambou]
+ Bargon Attack [bargon]
+ Fascination [fascination]
+ Geisha [geisha]
+ Gobliiins [gob1]
+ Gobliins 2 [gob2]
+ Goblins 3 [gob3]
+ Lost in Time [lostintime]
+ Once Upon A Time: Little Red Riding Hood [littlered]
+ The Bizarre Adventures of Woodruff
+ and the Schnibble [woodruff]
+ Urban Runner [urban]
+ Ween: The Prophecy [ween]
+
+Hry MADE od Activision:
+ Leather Goddesses of Phobos 2 [lgop2]
+ Return to Zork [rtz]
+ Rodney's Funscreen [rodney]
+ The Manhole [manhole]
+
+DalХЁУ­ hry:
+ Beneath a Steel Sky [sky]
+ Broken Sword: The Shadow of the Templars [sword1]
+ Broken Sword II: The Smoking Mirror [sword2]
+ Cruise for a Corpse [cruise]
+ Discworld [dw]
+ Discworld 2: Missing Presumed ...!? [dw2]
+ Dragon History [draci]
+ Drascula: The Vampire Strikes Back [drascula]
+ Eye of the Beholder [eob]
+ Eye of the Beholder II: The Legend of
+ Darkmoon [eob2]
+ Flight of the Amazon Queen [queen]
+ Future Wars [fw]
+ Inherit the Earth: Quest for the Orb [ite]
+ Nippon Safes Inc. [nippon]
+ Lands of Lore: The Throne of Chaos [lol]
+ The Journeyman Project: Pegasus Prime [pegasus]
+ The Legend of Kyrandia [kyra1]
+ The Legend of Kyrandia: The Hand of Fate [kyra2]
+ The Legend of Kyrandia: Malcolm's Revenge [kyra3]
+ Touche: The Adventures of the Fifth
+ Musketeer [touche]
+
+Hry SCUMM od Humongous Entertainment:
+ Backyard Baseball [baseball]
+ Backyard Baseball 2001 [baseball2001]
+ Backyard Baseball 2003 [baseball2003]
+ Backyard Football [football]
+ Big Thinkers First Grade [thinker1]
+ Big Thinkers Kindergarten [thinkerk]
+ Blue's 123 Time Activities [Blues123Time]
+ Blue's ABC Time Activities [BluesABCTime]
+ Blue's Art Time Activities [arttime]
+ Blue's Birthday Adventure [BluesBirthday]
+ Blue's Reading Time Activities [readtime]
+ Fatty Bear's Birthday Surprise [fbear]
+ Fatty Bear's Fun Pack [fbpack]
+ Freddi Fish 1: The Case of the Missing
+ Kelp Seeds [freddi]
+ Freddi Fish 2: The Case of the Haunted
+ Schoolhouse [freddi2]
+ Freddi Fish 3: The Case of the Stolen
+ Conch Shell [freddi3]
+ Freddi Fish 4: The Case of the Hogfish
+ Rustlers of Briny Gulch [freddi4]
+ Freddi Fish 5: The Case of the Creature
+ of Coral Cove [freddicove]
+ Freddi Fish and Luther's Maze Madness [maze]
+ Freddi Fish and Luther's Water Worries [water]
+ Let's Explore the Airport with Buzzy [airport]
+ Let's Explore the Farm with Buzzy [farm]
+ Let's Explore the Jungle with Buzzy [jungle]
+ Pajama Sam 1: No Need to Hide When It's
+ Dark Outside [pajama]
+ Pajama Sam 2: Thunder and Lightning
+ Aren't so Frightening [pajama2]
+ Pajama Sam 3: You Are What You Eat
+ From Your Head to Your Feet [pajama3]
+ Pajama Sam's Lost & Found [lost]
+ Pajama Sam's Sock Works [socks]
+ Putt-Putt Joins the Parade [puttputt]
+ Putt-Putt Goes to the Moon [puttmoon]
+ Putt-Putt Saves the Zoo [puttzoo]
+ Putt-Putt Travels Through Time [putttime]
+ Putt-Putt Enters the Race [puttrace]
+ Putt-Putt Joins the Circus [puttcircus]
+ Putt-Putt and Pep's Balloon-O-Rama [balloon]
+ Putt-Putt and Pep's Dog on a Stick [dog]
+ Putt-Putt & Fatty Bear's Activity Pack [activity]
+ Putt-Putt's Fun Pack [funpack]
+ SPY Fox 1: Dry Cereal [spyfox]
+ SPY Fox 2: Some Assembly Required [spyfox2]
+ SPY Fox 3: Operation Ozone [spyozon]
+ SPY Fox in Cheese Chase [chase]
+ SPY Fox in Hold the Mustard [mustard]
+
+Hry Living Books:
+ Aesop's Fables: The Tortoise and the Hare [tortoise]
+ Arthur's Birthday [arthurbday]
+ Arthur's Teacher Trouble [arthur]
+ Dr. Seuss's ABC [seussabc]
+ Green Eggs and Ham [greeneggs]
+ Harry and the Haunted House [harryhh]
+ Just Grandma and Me [grandma]
+ Little Monster at School [lilmonster]
+ Ruff's Bone [ruff]
+ Sheila Rae, the Brave [sheila]
+ Stellaluna [stellaluna]
+ The Berenstain Bears Get in a Fight [bearfight]
+ The Berenstain Bears in the Dark [beardark]
+ The New Kid on the Block [newkid]
+
+NУЁsledujУ­cУ­ hry by mФ›ly jУ­t spustit, ale zatУ­m nejsou УКplnФ› hratelnУЉ. Hrajte je pouze na vlastnУ­ riziko a prosУ­me, abyste pro tyto hry nenahlaХЁovali chyby.
+Pokud chcete mУ­t nejnovФ›jХЁУ­ zprУЁvy o kompatibilitУЁch her, navХЁtivte naХЁУ­ strУЁnku a prohlУЉdnФ›te si tabulku kompatibilit.
+
+ Backyard Football 2002 [football2002]
+ Backyard Soccer [soccer]
+ Backyard Soccer MLS [soccermls]
+ Backyard Soccer 2004 [soccer2004]
+ Blue's Treasure Hunt [BluesTreasureHunt]
+ Pajama Sam: Games to Play on Any Day [pjgames]
+
+NУЁsledujУ­cУ­ hry jsou odvozeny od jУЁdra SCUMM, ale ScummVM je nepodporuje (zatУ­m):
+
+ OstatnУ­ hry od Humongous Entertainment
+
+NezapomeХˆte, prosУ­m, ХОe jУЁdra mohou obsahovat chyby a nezavedenУЉ funkce, kterУЉ nФ›kdy zabrУЁnУ­ hru dokonФit. UklУЁdejte Фasto a nahlaste chyby, prosУ­m (instrukce pro hlУЁХЁenУ­ chyb jsou vУНХЁe), pokud na takovou chybu narazУ­te v 'podporovanУЉ' hХ™e.
+
+
+3.1) Ochrana proti kopУ­rovУЁnУ­:
+---- -------------------------
+TУНm ScummVM nepodporuje pirУЁtstvУ­. NicmУЉnФ› existujУ­ pХ™У­pady, kdy hernУ­ spoleФnosti (jako LucasArts) sami ve svУНch hrУЁch poskytujУ­ 'cracknutУЉ'
+spouХЁtФ›Фe т€“ vТ tФ›chto pХ™У­padech datovУЉ soubory obsahujУ­ skripty pro ochranu proti kopУ­rovУЁnУ­, ale pХ™evadФ›Ф je obejde (toto mХЏХОe podobnФ› provУЁdФ›t nelegУЁlnФ› cracknutУЁ verze, sТ tУ­m rozdУ­lem, ХОe zde toto provedl vУНrobce hry. Neexistuje ХОУЁdnУН zpХЏsob, jak mХЏХОeme rozliХЁit legitimnУ­ a pirУЁtskУЉ datovУЉ soubory, takХОe vТ hrУЁch, o kterУНch vУ­me, ХОe byla nФ›kdy prodУЁvУЁna cracknutУЁ verze pХЏvodnУ­ho pХ™evadФ›Фe bude ScummVM muset vХОdy ochranu pХ™eskoФit.
+
+VТ nФ›kterУНch pХ™У­padech ScummVM pХ™esto zobrazУ­ obrazovku ochrany proti kopУ­rovУЁnУ­. Zkuste zadat jakoukoli odpovФ›Ф. Je tu moХОnost, ХОe toto bude fungovat.
+
+ScummVM pХ™eskakuje ochranu vТ nУЁsledujУ­cУ­ch hrУЁch:
+
+ * Beneath a Steel Sky
+ -- potlaФeno sТ laskavУНm svolenУ­m Revolution Software.
+ * Dreamweb
+ -- seznam dostupnУНch pХ™У­kazХЏ v terminУЁlech ve hХ™e je nynУ­ zobrazen
+ kdyХО hrУЁФ pouХОije pХ™У­kaz 'help'
+ * Inherit the Earth: Quest for the Orb (Floppy version)
+ -- potlaФeno sТ laskavУНm svolenУ­m Wyrmkeep Entertainment,
+ protoХОe byla potlaФena ve vХЁech vydУЁnУ­ch hry na CD.
+ * Loom (EGA DOS)
+ * Maniac Mansion
+ * Monkey Island 2: LeChuck's Revenge
+ * Simon the Sorcerer 1 (Floppy version)
+ * Simon the Sorcerer 2 (Floppy version)
+ -- potlaФeno sТ laskavУНm svolenУ­m from Adventure Soft,
+ protoХОe byla potlaФena ve vХЁech vydУЁnУ­ch hry na CD.
+ * The Secret of Monkey Island (VGA)
+ * Waxworks
+ * Zak McKracken and the Alien Mindbenders
+
+
+3.2) PoznУЁmky keТ hrУЁm Commodore64:
+---- -----------------------------
+Jak Maniac Mansion tak Zak McKracken mohou bУНt spuХЁtФ›ny, ale Maniac Mansion nenУ­ jeХЁtФ› hratelnУН. JednoduХЁe pojmenujte disky D64 jako
+"maniac1.d64" a "maniac2.d64" nebo "zak1.d64" a "zak2.d64", pak by mФ›l ScummVM automaticky hru zjistit, pokud ho odkУЁХОete na sprУЁvnou sloХОku.
+
+Nebo mХЏХОete pouХОУ­t 'extract_mm_c64' zТ balУ­Фku nУЁstrojХЏ pro extrahovУЁnУ­ datovУНch souborХЏ. Pak ale ScummVM hru Х™УЁdnФ› automaticky nezjistУ­ ScummVM, a musУ­te se ujistit, ХОe platforma je nastavena na Commodore64. DoporuФujeme pouХОУ­t mnohem jednoduХЁХЁУ­ postup popsanУН vТ pХ™edchozУ­m odstavci.
+
+
+3.3) PoznУЁmky ke Maniac Mansion NES:
+---- -------------------------
+PodporovanУЉ verze jsou BritskУЁ angliФtina (E), FrancouzХЁtina (F), NФ›mФina (G), ItalХЁtina (I), Х vУЉdХЁtina (SW) a AmerickУЁ angliФtina (U). ScummVM pro spuХЁtФ›nУ­ vyХОaduje pouze ФУЁst PRG a ne celУН ROM.
+
+Abyste mohli hru spustit, musУ­te vyjmout prvnУ­ch 16 bajtХЏ zТ ROM, sТ kterУНm pracujete. JakУНkoli hex editor bude fungovat, pokud mХЏХОete kopУ­rovat/vklУЁdat. PotУЉ. Co ROM otevХ™ete pomocУ­ hex editoru, zkopУ­rujte vХЁechno zТ druhУЉho Х™УЁdku (17. bajt) na konec. PotУЉ, co toto provedete, vloХОte ho do novУЉho hex souboru. Pojmenujte ho "Maniac Mansion (XX).prg" kde XX znamenУЁ verzi, se kterou pracujete (E, F, G, I, SW, nebo U). KoneФnУЁ velikost by mФ›la bУНt pХ™esnФ› 262144 bajtХЏ.
+
+Pokud hru pХ™idУЁvУЁte ruФnФ›, ujistФ›te se, ХОe platforma je nastavena na NES.
+
+NejbФ›ХОnФ›jХЁУ­ chyby, kterУЉ zabraХˆujУ­ spuХЁtФ›nУ­ hry:
+
+ * Х patnУН soubor
+ * ROM byl extrahovУЁn pomocУ­ nУЁstrojХЏ z verze 0.7.0
+ * SnaХОУ­te se do ScummVM vklУЁdat CELУ ROM a ne jenom PRG ФУЁst.
+
+Je takУЉ moХОno extrahovat oddФ›lenУЉ soubory LFL zТ PRG ФУЁsti. Pro toto pouХОijte nУЁstroj 'extract_mm_nes' zТ balУ­Фku nУЁstrojХЏ.
+
+
+3.4) PoznУЁmky ke hrУЁm Macintosh:
+---- ---------------------------
+VХЁechny adventury LucasArts zaloХОenУЉ na SCUMM, kromФ› COMI, takУЉ existujУ­ ve verzУ­ch pro in Macintosh. ScummVM mХЏХОe vФ›tХЁinu (vХЁechny?) pouХОУ­t, nicmУЉnФ›, vТ nФ›kterУНch pХ™У­padech je nutnУЁ dodateФnУЁ prУЁce. NejdХ™У­ve, pokud pro toto nepouХОУ­vУЁte Macintosh, pХ™У­stup kТ datХЏm na CD/disketФ› mХЏХОe bУНt obtУ­ХОnУН. DХЏvodem je to, ХОe Mac pouХОУ­vУЁ zvlУЁХЁtnУ­ formУЁt disku nazvanУН HFS, kterУН ostatnУ­ systУЉmy vФ›tХЁinou nepodporujУ­. NicmУЉnФ› existuje, nФ›kolik nУЁstrojХЏ, kterУЉ jsou zadarmo a umoХОХˆujУ­ ФУ­st takovУЉto svazky HFS. NapХ™У­klad "HFVExplorer" pro Windows a "hfsutils" pro Linux a ostatnУ­ UnixovУЉ operaФnУ­ systУЉmy.
+
+VФ›tХЁina novФ›jХЁУ­ch her na Macintosh je dodУЁvУЁna pouze sТ jednУ­m datovУНm souborem (v nФ›kterУНch pХ™У­padech byl tento soubor uФinФ›n neviditelnУНm, takХОe moХОnУЁ budete potХ™ebovat dodateФnУЉ nУЁstroje, abyste ho mohli zkopУ­rovat). ScummVM je schopen takovУНto soubor pouХОУ­t pХ™У­mo; jednoduХЁe odkaХОte ScummVM na sloХОku obsahujУ­cУ­ tento soubor a mФ›lo by to fungovat (tak jako sТ kaХОdou podporovanou hrou).
+
+VТ balУ­Фku nУЁstrojХЏ takУЉ poskytujeme nУЁstroj nazvanУН 'extract_scumm_mac', kterУН extrahuje data zТ tФ›chto datovУНch souborХЏ, ale toto nenУ­ ani potХ™eba, ani doporuФeno.
+
+Pro dalХЁУ­ informace o kopУ­rovУЁnУ­ hernУ­ch souborХЏ Macintosh na VУЁХЁ pevnУН disk si prohlУЉdnФ›te:
+
+ http://wiki.scummvm.org/index.php/HOWTO-Mac_Games
+
+
+3.5) PoznУЁmky ke hrУЁm Multi-CD:
+---- --------------------------
+ObecnФ› ScummVM moc dobХ™e nefunguje s hrami na Multi-CD. To je proto, ХОe ScummVM pХ™edpoklУЁdУЁ, ХОe vХЁechno o hХ™e mХЏХОe bУНt nalezeno vТ jednУЉ sloХОce. I kdyХО ScummVM mУЁ schopnost poХОУЁdat uХОivatele, aby vymФ›nil CD, pХЏvodnУ­ spouХЁtФ›Ф souboru vФ›tХЁinou nainstaluje malУЉ mnoХОstvУ­ souborХЏ na pevnУН disk. Pokud tyto soubory nelze najУ­t na vХЁech CD, ScummVM bude mУ­t potУ­ХОe.
+
+NaХЁtФ›stУ­ mХЏХОe ScummVM hry bez problУЉmХЏ spouХЁtФ›t pХ™У­mo zТ pevnУЉho disku, pokud vytvoХ™У­te sloХОku se sprУЁvnou kombinacУ­ souborХЏ. VФ›tХЁinou, kdyХО se soubor objevУ­ na vУ­ce, neХО jednom CD mХЏХОete vybrat jeden z nich.
+
+
+3.6) PoznУЁmky k The Curse of Monkey Island:
+---- --------------------------------------
+Pro tuto hru budete potХ™ebovat soubory comi.la0, comi.la1 a comi.la2.
+Soubor comi.la0 mХЏХОete nalУЉzt na vХЁech CD hry, ale protoХОe jsou stejnУЉ, mХЏХОete pouХОУ­t kterУНkoli z nich.
+
+DУЁle potХ™ebujete vytvoХ™it podsloХОku "resource" obsahujУ­cУ­ vХЁechny soubory z т€“obou- podsloХОek "resource" na dvou CD. NФ›kterУЉ soubory se objevujУ­ na obou CD, ale znovu jsou stejnУЉ.
+
+
+3.7) PoznУЁmky ke hrУЁm Broken Sword:
+---- ------------------------------
+Pokyny pro hry Broken Sword jsou pro verze od Sold-Out Software, kde kaХОdУЁ hra je na dvou CD, protoХОe tyto verze byly nejdostupnФ›jХЁУ­ vТ dobФ›, kdy je ScummVM zaФal podporovat. DoufУЁme, ХОe jsou dostateФnФ› obecnУЉ pro pouХОitУ­ i vТ jinУНch vydУЁnУ­ch her.
+
+
+3.7.1) Videa zТ her Broken Sword:
+------ -------------------------
+Videa pro hry Broken Sword majУ­ vТ sobФ› trochu historie (viz dalХЁУ­ oddУ­l, pokud jste zvФ›davУ­), ale obecnФ› jedinУЉ, co potХ™ebujete udФ›lat, je zkopУ­rovat soubory .SMK ze sloХОek "SMACKS" nebo "SMACKSHI" na CD do stejnУЉ sloХОky jako ostatnУ­ datovУЉ soubory hry. (Broken Sword mУЁ takУЉ sloХОku "SMACKSLO" se stejnУНmi videi, ale ty jsouТ niХОХЁУ­ kvality.) MХЏХОete je umУ­stit do podsloХОky sТ nУЁzvem "video", pokud VУЁm to pХ™ijde hezФУ­.
+
+Ve verzУ­ch pro PlayStation, mХЏХОete pХЏvodnУ­ videa vypsat z disku. KaХОdУН soubor, kterУН mУЁ pХ™У­ponu "STR", byste mФ›li vypsat jako *Фist* sektory z disku (vХЁech 2352 bajtХЏ na sektor). MХЏХОete takУЉ mУ­st toho pouХОУ­t pХ™eformУЁtovanУЁ videa, kterУЁ jsou zmУ­nФ›na nУ­ХОe, ale to nebude fungovat pro vХЁechny videa v Broken Sword II. Pro vУ­ce informacУ­ si prohlУЉdnФ›te:
+
+ http://wiki.scummvm.org/index.php/HOWTO-PlayStation_Videos
+
+NФ›kterУЁ vydУЁnУ­ hry, a takУЉ verze pro PlayStation, Smacker videa nemajУ­. Revolution Software nУЁm laskavФ› dovolilo poskytovat pХ™eformУЁtovanУЁ videa ke staХОenУ­ na naХЁУ­ strУЁnce:
+
+ http://www.scummvm.org/downloads.php
+
+Tato videa jsou poskytovУЁna ve formУЁtu DXA se zvukem ve formУЁtu FLAC. Jejich kvalita se rovnУЁ originУЁlu dУ­ky pouХОitУ­ bezztrУЁtovУЉ komprese. ZobrazenУ­ tФ›chto videУ­ vyХОaduje, aby verze ScummVM byla sestavena sТ podporou FLAC i zlib.
+
+Pro systУЉmy, kterУЉ jsou pХ™У­liХЁ pomalУЉ, aby zvlУЁdli dekУГdovat formУЁt FLAC byl zvuk videУ­ takУЉ poskytnut oddФ›lenФ› ve formУЁtu OGG Vorbis audio. Toto vyХОaduje, aby verze ScummVM byla sestavena sТ podporou libVorbis a zlib.
+
+Pro Broken Sword takУЉ poskytujeme pХ™У­davek pro titulky. JednoduХЁe ho rozbalte a nУЁsledujte pokyny v souboru readme.txt. BalУ­Фek vТ souФasnosti nefunguje ve videУ­ch na PlayStation. (Broken Sword II jiХО titulky mУЁ; nenУ­ tХ™eba dalХЁУ­ prУЁce pro jejich pХ™idУЁnУ­.)
+
+
+3.7.2) Videa her Broken Sword ve zpФ›tnУЉm pohledu:
+------ ------------------------------------------
+PХЏvodnУ­ vydУЁnУ­ her Broken Sword pouХОУ­valo formУЁt Smackerт„Ђ od RAD Game Tools. ProtoХОe spoleФnost RAD nebyla ochotna nУЁm otevХ™У­t starХЁУ­ zastaralУЉ verze tohoto formУЁtu a poХОУЁdala, abychom neprovУЁdФ›li jeho zpФ›tnou analУНzu, museli jsme nalУЉzt jinУЉ Х™eХЁenУ­.
+
+V Broken Sword II bylo moХОnУЉ pХ™ehrУЁt Х™eФ, aniХО by se muselo pХ™ehrУЁvat video. To zХЏstalo jako nouzovУЉ Х™eХЁenУ­ aХО do ScummVM 1.0.0, ale pro vХЁechny stabilnУ­ verze to nikdy nebylo jedinУЉ Х™eХЁenУ­.
+
+Ve ScummVM 0.6.0 jsme pouХОУ­vali MPEG, coХО zajistilo rozumnУН kompromis mezi velikostУ­ a kvalitou. Ve ScummVM 0.10.0 bylo toto nahrazeno DXA
+(pХЏvodnФ› pХ™idУЁno pro "The Feeble Files" od AdventureSoft). To nУЁm dalo moХОnost zajistit videa ve stejnУЉ kvalitФ› jako pХЏvodnУ­, za cenu vФ›tХЁУ­ velikosti.
+
+Nakonec na zaФУЁtku roku 2006 byl formУЁt Smacker zpФ›tnФ› analyzovУЁn pro projekt FFmpeg. DУ­ky jejich tvrdУЉ prУЁci ScummVM 1.0.0 nynУ­ podporuje pХЏvodnУ­ videa. ZУЁroveХˆ byla ukonФena podpora MPEG. ZТ technickУЉho hlediska je toto dobХ™e, protoХОe pХ™ehrУЁvУЁnУ­ videУ­ MPEG bylo velmi sloХОitУЉ a stejnФ› nevypadaly tak dobХ™e jako verze ve formУЁtu DXA a Smacker.
+
+
+3.7.3) Broken Sword:
+------ -------------
+Pro tuto hru budete potХ™ebovat vХЁechny soubory ze seskupenУ­ sloХОek na obou CD. Pro verze Windows a Macintosh budete takУЉ potХ™ebovat soubory speech.clu ze sloХОek speech, ale protoХОe soubory nejsou stejnУЉ, budete je muset pХ™ejmenovat na speech1.clu a speech2.clu z CD 1 a 2 vТ tomto poХ™adУ­. Verze na PlayStation vyХОaduje speech.tab, speech.dat, speech.lis, a speech.inf.
+
+DУЁle verze pro Windows a Macintosh vyХОadujУ­ podsloХОku music se vХЁemi soubory z podsloХОek music na obou CD. NФ›kterУЉ zТ tФ›chto souborХЏ se objevujУ­ na obou CD, ale vТ tФ›chto pХ™У­padech jsou buФ stejnУЉ, nebo, vТ jednom pХ™У­padФ›, je tУЉmФ›Х™ stejnУН, ХОe to nemУЁ ХОУЁdnУН vУНznam. Verze pro PlayStation vYХОaduje tunes.dat a tunes.tab.
+
+
+3.7.4) Broken Sword II:
+------ ----------------
+Pro tuto hru budete potХ™ebovat vХЁechny soubory ze seskupenУ­ sloХОek na obou CD. (Abych pravdu Х™ekl, pУЁr zТ nich nemusУ­ bУНt nezbytnФ› nutnУЉ, ale ty, o kterУНch nemУЁm jistotu, jsou velmi malУЉ.)
+Je takУЉ tХ™eba pХ™ejmenovat soubory speech.clu a music.clu na speech1.clu,
+speech2.clu, music1.clu a music2.clu, aby ScummVM mohl zjistit, kterУЉ jsou z CD 1 a kterУЉ z CD 2. VХЁechny ostatnУ­ soubory, kterУЉ jsou umУ­stФ›ny vТ seskupenУ­ sloХОek, jsou stejnУЉ. PouХОijte kterУЉkoli soubory chcete.
+
+KromФ› toho budete potХ™ebovat soubory cd.inf a, pХ™У­padnФ›, startup.inf ze sloХОky sword2 na CD 1.
+
+
+3.8) PoznУЁmky k Beneath a Steel Sky:
+---- -------------------------------
+Od ScummVM 0.8.0 potХ™ebujete dodateФnУН soubor 'SKY.CPT', abyste mohli Beneath a Steel Sky spustit.
+
+Tento soubor je dostupnУН na strУЁnce 'Downloads' domovskУЉ strУЁnky ScummVM.
+MХЏХОete ho umУ­stit buФ do sloХОky obsahujУ­cУ­ ostatnУ­ datovУЉ soubory (SKY.DNR, SKY.DSK), na VaХЁi dodateФnou cestu, nebo do sloХОky. Kde se nachУЁzУ­ spouХЁtФ›cУ­ soubor ScummVM.
+
+
+3.9) PoznУЁmky k Flight of the Amazon Queen:
+---- --------------------------------------
+Abyste mohli pouХОУ­t tu verzi, kterУЁ nenУ­ volnФ› ХЁiХ™itelnУЁ
+(z pХЏvodnУ­ho CD), musУ­te mУ­t soubor 'queen.tbl'
+(dostupnУН ze strУЁnky 'Downloads' naХЁУ­ domovskУЉ strУЁnky) a umУ­stit ho buФ do sloХОky obsahujУ­cУ­ soubor hry 'queen.1', na VaХЁi dodateФnou cestu, nebo do sloХОky. Kde se nachУЁzУ­ spouХЁtФ›cУ­ soubor ScummVM.
+
+TakУЉ mХЏХОete pouХОУ­t nУЁstroj 'compress_queen' zТ balУ­Фku nУЁstrojХЏ pro 'znovu sestavenУ­' VaХЁeho datovУЉho souboru FOTAQ pro zahrnutУ­ tabulky pro tuto konkrУЉtnУ­ verzi, ФУ­mХО odstranУ­te zУЁvislost na soubor 'queen.tbl' pХ™i spuХЁtФ›nУ­. Tento nУЁstroj VУЁm takУЉ umoХОХˆuje komprimovat Х™eФ a zvukovУЉ efekty do formУЁtu MP3, OGG nebo FLAC.
+
+
+3.10) PoznУЁmky ke Gobliiins:
+----- ----------------------
+CD verze sУЉrie Gobliiins obsahuje jednu velkou zvukovou stopu, kterou potХ™ebujete vyjmout (viz oddУ­l o pouХОitУ­ komprimovanУНch zvukovУНch souborХЏ) a zkopУ­rovat ji do hernУ­ sloХОky, pokud chcete ve hХ™e hudbu, aniХО byste museli CD mУ­t stУЁle v jednotce. VТ tУЉto stopФ› jsou takУЉ Х™eФ a jejУ­ hlasitost se tedy takУЉ mФ›nУ­ podle hlasitosti hudby.
+
+
+3.11) PoznУЁmky k Inherit the Earth: Quest for the Orb:
+----- ------------------------------------------------
+Abyste mohli spustit verzi pro Mac OS X od Wyrmkeep musУ­te data zkopУ­rovat zТ CD na VУЁХЁ pevnУН disk. Pokud pouХОУ­vУЁte PC, pak se podУ­vejte na:
+
+ http://wiki.scummvm.org/index.php/HOWTO-Mac_Games
+
+I kdyХО se vТ tomto ФlУЁnku pУ­ХЁe hlavnФ› o hrУЁch SCUMM, je zde takУЉ zmУ­nФ›n nУЁstroj "HFVExplorer", kterУН potХ™ebujete kТ extrakci souborХЏ. NezapomeХˆte, ХОe data Х™eФi "Inherit the Earth Voices" musУ­te umУ­stit do stejnУЉho adresУЁХ™e, kde jsou uloХОena data hry:
+
+ Inherit the Earth.app/Contents/Resources
+
+Ve starУЉ verzi pro Mac OS 9 potХ™ebujete soubory zkopУ­rovat ve formУЁtu MacBinary, protoХОe by mФ›li obsahovat jak zdrojovУЉ, tak datovУЉ vidlice. ZkopУ­rujte vХЁechny soubory 'ITE *'.
+
+
+3.12) PoznУЁmky k Simon the Sorcerer 1 a 2:
+----- ------------------------------------
+Pokud mУЁte dvojitou verzi Simon the Sorcerer 1 nebo 2 na CD, verzi pro Windows naleznete vТ hlavnУ­ sloХОce na CD a verzi pro DOS ve sloХОce DOS na CD.
+
+
+3.13) PoznУЁmky k The Feeble Files:
+----- ----------------------------
+Pokud mУЁte verzi pro Windows, je tХ™eba si uvФ›domit pУЁr vФ›cУ­.
+
+Mnoho souborХЏ, kterУЉ hra vyХОaduje, je uloХОeno v souboru InstallShield s nУЁzvem data1.cab, kterУН ScummVM nemХЏХОe rozbalit. Budete muset pouХОУ­t pХЏvodnУ­ instalУЁtor, nebo i5comp pro rozbalenУ­ obsahu tohoto souboru. NУЁstroj pro dekomprimaci i5comp mХЏХОe bУНt nalezen pХ™i hledУЁnУ­ na internetu.
+
+Abyste mohli pouХОУ­t soubory sТ Х™eФУ­ ve ScummVM, musУ­ bУНt pХ™ejmenovУЁny nУЁsledovnФ›:
+PХ™ejmenovat voices.wav na CD1 na voices1.wav
+PХ™ejmenovat voices.wav na CD2 na voices2.wav
+PХ™ejmenovat voices.wav na CD3 na voices3.wav
+PХ™ejmenovat voices.wav na CD4 na voices4.wav
+
+3.14) PoznУЁmky k The Legend of Kyrandia:
+----- ----------------------------------
+Abyste mohli spustit The Legend of Kyrandia ve ScummVM potХ™ebujete soubor 'kyra.dat'.
+Soubor by mФ›l bУНt vХОdykcy souФУЁstУ­ oficiУЁlnУ­ch balУ­ФkХЏ ScummVM. V pХ™У­padФ›, ХОe ScummVM
+hlУЁsУ­, ХОe soubor chybУЁ, mХЏХОete ho najУ­t na strУЁnce ScummVM v sekci 'Downloads'.
+NezapomeХˆte, ХОe souФasnУЁ verze ScummVM pro Windows by mФ›la soubor obsahovat ve spouХЁtФ›Фi a tudУ­ХО ho
+musУ­te mУ­t pouze, kdyХО ScummVM soubor nemХЏХОe nalУЉzt.
+
+3.15) PoznУЁmky kТ PХ™edvУ­davУЉmu VstupnУ­mu Dialogu her Sierra AGI:
+----- ---------------------------------------------------------
+PХ™edvУ­davУН VstupnУ­ Dialog je pomХЏcka ScummVM pro spouХЁtФ›nУ­ her pouХОУ­vajУ­cУ­ jУЁdro AGI (kterУН je znУЁm, ХОe vyХОaduje vstup zТ pХ™У­kazovУЉ Х™УЁdky) na zaХ™У­zenУ­ch sТ omezenou podporou klУЁvesnice. VТ tФ›chto situacУ­ch, kdy zadУЁvУЁnУ­ pomocУ­ emulovanУЉ klУЁvesnice je dosti УКnavnУЉ, mХЏХОou bУНt pХ™У­kazy rychle a snadno zadУЁny pomocУ­ PХ™edvУ­davУЉho VstupnУ­ho Dialogu.
+
+Abyste zapnuli pХ™edvУ­davУН vstup v hrУЁch AGI, potХ™ebujete zkopУ­rovat soubor pred.dic do dodateФnУЉ sloХОky ScummVM nebo do sloХОky hry, kterou chcete hrУЁt. Tento slovnУ­k byl vytvoХ™en analУНzou vХЁech znУЁmУНch her AGI a obsahuje maximУЁlnУ­ sadu bФ›ХОnУНch slov.
+
+Pokud je slovnУ­k zjiХЁtФ›n, je PХ™edvУ­davУН VstupnУ­ Dialog zobrazen buФ pХ™i klinutУ­ na oblast pХ™У­kazovУЉho Х™УЁdku (kdykoliv je poХОadovУЁn vstup klУЁvesnice, i vТ rУЁmeФcУ­ch dialogovУНch oken), nebo v nФ›kterУНch verzУ­ch pro jinУЉ systУЉmy stisknutУ­m urФenУЉ klУЁvesovУЉ zkratky.
+
+PХ™edvУ­davУН VstupnУ­ Dialog pracuje ve tХ™ech reХОimech, kterУЉ jsou pХ™epУ­nУЁny tlaФУ­tkem (*)Pre/123/Abc. HlavnУ­ vstupnУ­ metodou je pХ™edvУ­davУН reХОim
+(Pre), kterУН pХ™ipomУ­nУЁ "rychlУЉ zadУЁvУЁnУ­" vТ mobilnУ­ch telefonech.
+Abeceda je rozdФ›lena do 9 sad, kterУЉ pХ™irozenФ› odpovУ­dajУ­ 9 klУЁvesУЁm ФУ­selnУЉ klУЁvesnice (0 je mezera). Pro psanУ­ slova zmУЁФknФ›te jednou ФУ­slo sady, kterУЁ obsahuje pУ­smeno slova, kterУЉ chcete napsat, pak pokraФujete kТ dalХЁУ­mu. NapХ™У­klad, pokud chcete napsat pХ™У­kaz 'look', mФ›li byste zmУЁФknout 5665. Jak postupnФ› pУ­ХЁete ФУ­selnУН kУГd zamУНХЁlenУЉho slova, je slovnУ­k prohledУЁvУЁn pro znУЁmУЁ slova, kterУЁ se shodujУ­ sТ VaХЁУ­m vstupem aХО do tohoto bodu. Jak maФkУЁte vУ­ce klУЁves, slovnУ­k se pХ™iblУ­ХОУ­ ke sprУЁvnУЉmu slovu. To je dХЏvod, proФ vypsanУЉ slovo se mХЏХОe nУЁhle zmФ›nit mezi stisky klУЁves. NФ›kdy se ale vyskytnou pХ™У­pady, kdy vУ­ce neХО jedno slovo mУЁ stejnУЉ ФУ­selnУЉ zastoupenУ­. NapХ™У­klad slova 'quit' a 'suit' odpovУ­dajУ­ stejnУНm ФУ­slХЏm, a to 7848. VТ tФ›chto pХ™У­padech se rozsvУ­tУ­ tlaФУ­tko dalХЁУ­
+(#). Jeho stisknutУ­m mХЏХОete prochУЁzet seznam slov, kterУЁ sdУ­lejУ­ stejnУН kУГd a nakonec pХ™ijmout to sprУЁvnУЉ stisknutУ­m (0)mezera nebo tlaФУ­tka Ok.
+
+Druhou vstupnУ­ metodou (123) je ФУ­selnУН vstup: KaХОdou klУЁvesu, kterou stisknФ›te, je doslova zadУЁna jako ФУ­slo.
+
+TХ™etУ­ vstupnУ­ metodou (Abc) je vstupnУ­ reХОim Alfa/opakovanУЉho stisknutУ­ tlaФУ­tka. Tento reХОim je urФen pro zadУЁvУЁnУ­ textu bez pomoci od slovnУ­ku pХ™edvУ­davУЉho reХОimu (Pre). Text je zadУЁvУЁn po jednotlivУНch pУ­smenech. Pro kaХОdУЉ pУ­smeno nejdХ™У­ve stisknФ›te ФУ­slo sady, kterУЉ obsahuje pУ­smeno, kterУЉ chcete, pak pouХОijte tlaФУ­tko dalХЁУ­ (#) pro prochУЁzenУ­ pУ­smeny a opakujte sТ dalХЁУ­m ФУ­slem. NapХ™У­klad, pro zadУЁnУ­ slova 'look' musУ­te stisknout nУЁsledujУ­cУ­: 5##6##6##5#
+
+DialogovУЉ okno je plnФ› pouХОitelnУЉ pomocУ­ myХЁi, ale vТ nФ›kterУНch verzУ­ch ScummVM pro jinУЉ platformy, je pouХОitУ­ dialogu pohodlnФ›jХЁУ­ pomocУ­ ФУ­selnУЉ klУЁvesnice. NФ›kterУЁ tlaФУ­tka dialogu mohou bУНt takУЉ pouХОУ­vУЁna pomocУ­ ХЁipkovУНch klУЁves a enter.
+
+
+3.16) PoznУЁmky k Mickey's Space Adventure:
+----- ------------------------------------
+Abyste mohli Mickey's Space Adventure hrУЁt ve ScummVM, potХ™ebujete spolu sТ datovУНmi soubory hry takУЉ pХЏvodnУ­ spouХЁtФ›Ф (mickey.exe).
+
+Pro tuto hru ve ScummVM, existuje rozХЁУ­Х™enУЁ podpora myХЁi, i kdyХО vТ pХЏvodnУ­ hХ™e takovУЁto podpora nebyla. PoloХОky menu mohou bУНt vybrУЁny pomocУ­ myХЁi a je takУЉ moХОnУЉ se myХЁУ­ pХ™esunout do jinУНch mУ­st. KdyХО se kurzor myХЁi nachУЁzУ­ na okraji obrazovky, zФervenУЁ, pokud je moХОnУЉ jУ­t vТ tomto smФ›ru. HrУЁФ pak mХЏХОe jednoduХЁe kliknout na okraje hernУ­ obrazovky pro zmФ›nu mУ­sta, podobnФ› jako mnoho adventur, coХО je jednoduХЁХЁУ­ a pХ™У­moФaХ™ejХЁУ­ neХО pohyb pomocУ­ menu.
+
+
+3.17) Winnie the Pooh notes:
+----- ----------------------
+Je moХОnУЉ importovat uloХОenУЉ hry zТ pХЏvodnУ­ hry do ScummVM.
+
+Pro tuto hru ve ScummVM, existuje rozХЁУ­Х™enУЁ podpora myХЁi, i kdyХО vТ pХЏvodnУ­ hХ™e takovУЁto podpora nebyla. PoloХОky menu mohou bУНt vybrУЁny pomocУ­ myХЁi a je takУЉ moХОnУЉ se myХЁУ­ pХ™esunout do jinУНch mУ­st. KdyХО se kurzor myХЁi nachУЁzУ­ na okraji obrazovky, zФervenУЁ, pokud je moХОnУЉ jУ­t vТ tomto smФ›ru. HrУЁФ pak mХЏХОe jednoduХЁe kliknout na okraje hernУ­ obrazovky pro zmФ›nu mУ­sta, podobnФ› jako mnoho adventur, coХО je jednoduХЁХЁУ­ a pХ™У­moФaХ™ejХЁУ­ neХО pohyb pomocУ­ menu.
+
+
+3.18) PoznУЁmky k Troll's Tale:
+----- ------------------------
+PХЏvodnУ­ hra vychУЁzela na zavУЁdФ›cУ­m disku PC, proto je nutnУЉ vypsat obsah tohoto disku jako obraz disku a pХ™ejmenovat ho na "troll.img", abyste tuho hru mohli hrУЁt ve ScummVM.
+
+
+3.19) PoznУЁmky k DraФУ­ Historie:
+----- --------------------------
+ExistujУ­ 4 jazykovУЉ varianty tУЉto hry: ФeskУЁ, anglickУЁ, polskУЁ a
+nФ›meckУЁ. KaХОdУЁ je umУ­stФ›na vТ oddФ›lenУЉm archivu. JedinУЁ oficiУЁlnУ­ verze je ФeskУЁ, a anglickУЁ, polskУЁ a nФ›meckУЁ byly vХОdycky nedokonФenУЉ prУЁce a nikdy nebyly oficiУЁlnФ› vydУЁny. I kdyХО texty byly zcela pХ™eloХОeny, je znУЁmo, ХОe nФ›kterУЉ zТ nich obsahujУ­ pХ™eklepy.
+
+Pro tuto hru existuje nepovinnУН ФeskУН dabing. ZТ dХЏvodu velikosti si ho mХЏХОete dodateФnФ› stУЁhnout a pak ho rozbalit do adresУЁХ™e hry. MХЏХОete takУЉ ФeskУН dabing poslouchat se vХЁemi jazykovУНmi varianty hry, zatУ­mco Фtete titulky.
+
+VХЁechny hernУ­ soubory a nУЁvody mХЏХОou bУНt stУЁhnuty z
+http://www.ucw.cz/draci-historie/index-en.html
+
+3.20) Titulky a hlasy soubФ›ХОnФ› v hrУЁch Sierra SCI:
+----- --------------------------------------------
+UrФitУЉ CD verze her Sierra SCI majУ­ textovУЁ i hlasovУЁ data.
+NФ›kterУЉ z nich majУ­ volbu pro pХ™epУ­nУЁnУ­ mezi nimi, ale existujУ­ pХ™У­pady
+kde nenУ­ moХОnost povolit oba najednou. Ve ScummVM je moХОnУЉ si uХОУ­t tento
+kombinovanУН reХОim, kde jsou zvuk i text zobrazeny souФasnФ›. Tento reХОim
+mХЏХОe bУНt povolen v nastavenУ­ zvuku ScummVM, ale kaХОdУЁ hra se chovУЁ jinak
+vzhledem k povolenУ­ textu a hlasu.
+
+Hry na CD, kde zvuk i titulky lze zobrazit souФasnФ›:
+ EcoQuest 1 CD
+ Freddy Pharkas CD
+ King's Quest 6 CD
+ Laura Bow 2 CD
+ Leisure Suit Larry 6 CD
+ Space Quest 4 CD
+
+EcoQuest 1 CD:
+ Hlas i text lze zapnout pomocУ­ volby "Mode" v oknФ› nastavenУ­,
+ nebo pХ™es nastavenУ­ zvuku ScummVM.
+
+Freddy Pharkas CD:
+ Ve hХ™e neexistuje moХОnost pro povolenУ­ hlasu a textu. Pro tuto funkci
+ je tХ™eba pouХОУ­t nastavenУ­ zvuku ve ScummVM. NФ›kterУЉ mluvenУЉ dialogy
+ chybУ­ v textech hry.
+
+King's Quest 6 CD
+ Hlas i text lze zapnout pomocУ­ volby "Mode" v oknФ› nastavenУ­ (kde je ve
+ ScummVM pХ™idУЁna dodateФnУЁ volba "Dual"), nebo pomocУ­ nastavenУ­
+ zvuku ve ScummVM.
+
+Laura Bow 2 CD
+ Hlas i text lze zapnout pomocУ­ volby "Mode" v oknФ› nastavenУ­ (kde je ve
+ ScummVM pХ™idУЁna dodateФnУЁ volba "Dual"), nebo pomocУ­ nastavenУ­
+ zvuku ve ScummVM.
+
+Leisure Suit Larry 6 CD
+ Ve hХ™e lze povolit buФ hlas, nebo hlas a text. Neexistuje moХОnost pro
+ povolenУ­ textu. Pouze nastavenУ­ zvuku ve ScummVM lze pouХОУ­t pro
+ zobrazenУ­ jen titulkХЏ.
+
+Space Quest 4 CD:
+ Hlas a text lze povolit pomocУ­ tlaФУ­tka "Display Mode" v
+ nastavenУ­ hry, nebo pomocУ­ nastavenУ­ zvuku ve ScummVM.
+
+
+3.21) ZnУЁmУЉ ProblУЉmy:
+----- ---------------
+Toto vydУЁnУ­ mУЁ nУЁsledujУ­cУ­ znУЁmУЉ problУЉmy. NenУ­ tХ™eba je ohlaХЁovat, i kdyХО zУЁplaty pro jejich opravu jsou vУ­tУЁny. Pokud objevУ­te chybu, kterУЁ nenУ­ zde vТ seznamu, ani nenУ­ vТ seznamu kompatibility na internetovУЉ strУЁnce, prohlУЉdnФ›te si, prosУ­m, ФУЁst o hlУЁХЁenУ­ chyb.
+
+ Hry CD Audio:
+- PХ™i hranУ­ her, kterУЉ pouХОУ­vajУ­ CD Audio (hry FM-TOWNS, Loom CD, atd) mХЏХОe u uХОivatelХЏ Microsoft Windows 2000/XP dochУЁzet kТ nУЁhodnУНm pУЁdХЏm. To je dУ­ky dlouhotrvajУ­cУ­ chybФ› Windows, kterУЁ mУЁ za nУЁsledek poХЁkozenУЉ soubory pХ™i ФtenУ­ z CD. Abyste se tomuto vyhnuli, zkopУ­rujte, prosУ­m, soubory na pevnУН disk
+
+ Verze FM-TOWNS:
+- Verze KandХОi vyХОaduje ROM pУ­sma FM-TOWNS
+
+ Loom:
+- VypnutУ­ titulkХЏ pomocУ­ souboru nastavenУ­ je nevypne spolehlivФ›, protoХОe skripty Loom je znovu automaticky zapnou
+- Podpora MIDI ve verzi EGA vyХОaduje aktualizaci Roland LucasArts
+- Verze KandХОi na PC-Engine vyХОaduje rom systУЉmovУЉ karty
+
+ The Secret of Monkey Island:
+- Podpora MIDI ve verzi EGA vyХОaduje aktualizaci Roland LucasArts
+
+ Beneath a Steel Sky:
+- Verze pro Amiga nejsou podporovУЁny
+- Demoverze zТ diskety nejsou podporovУЁny
+- NenУ­ chyba: Ve verzi na CD chybУ­ vТ jistУНch dialozУ­ch Х™eФ, to je normУЁlnУ­.
+
+ Elvira - Mistress of the Dark
+- Ve verzi pro Atari ST nefunguje hudba
+
+ Elvira II - The Jaws of Cerberus
+- Ve verzi pro Atari ST nefunguje hudba
+
+- Ve verzi pro PC nefungujУ­ zvukovУЉ efekty
+- Ve verzi pro Atari ST jsou problУЉmy s paletou
+
+ Inherit the Earth: Quest for the Orb
+- Verze pro Amiga nejsou podporovУЁny
+
+ Simon the Sorcerer 1:
+- VТ anglickУНch a nФ›meckУНch verzУ­ch na CD nejsou titulky dostupnУЉ, protoХОe jim vФ›tХЁina titulkХЏ chybУ­.
+
+ Simon the Sorcerer 2:
+- Kombinace Х™eФi a titulkХЏ Фasto zpХЏsobУ­, ХОe Х™eФ je pХ™eruХЁena brzo, toto je omezenУ­ pХЏvodnУ­ hry.
+- Ve verzУ­ch pro Amiga a Macintosh je podporovУЁn pouze vУНchozУ­ jazyk datovУНch souborХЏ (angliФtina).
+
+ Simon the Sorcerer's Puzzle Pack:
+- ХНУЁdnУЁ podpora pro zobrazovУЁnУ­, zadУЁvУЁnУ­, uklУЁdУЁnУ­, Фi naФУ­tУЁnУ­ nejvyХЁХЁУ­ch skУГre.
+- ХНУЁdnУЁ podpora pro zobrazovУЁnУ­ nУЁzvХЏ poloХОek, kdyХО na nФ› najedete myХЁУ­ ve Swampy Adventures.
+
+ The Feeble Files:
+- Titulky jsou Фasto nedokonФenУЉ. VТ pХЏvodnУ­ hХ™e byly vХОdy zakУЁzУЁny.
+
+ The Legend of Kyrandia:
+- Ve verzУ­ch na disketФ› pro Mac nenУ­ ХОУЁdnУЁ hudba ani zvukovУЉ efekty.
+- CD Macintosh pouХОУ­vУЁ zahrnutou hudbu a zvukovУЉ efekty z DOS.
+
+ Hry Humongous Entertainment:
+ - Pouze pХЏvodnУ­ rozhranУ­ pro uloХОenУ­ a naФtenУ­ mohou bУНt pouХОity.
+ - ХНУЁdnУЁ podpora pro hru vУ­ce hrУЁФХЏ nebo tisknutУ­ obrУЁzkХЏ
+
+4.0) PodporovanУЉ Platformy:
+---- ----------------------
+ScummVM byl vytvoХ™en tak, aby mohl fungovat na mnoha platformУЁch a operaФnУ­ch systУЉmech.
+Odkazy na tyto verze mХЏХОou bУНt nalezeny buФ na strУЁnkУЁch ScummVM nebo vyhledУЁvУЁnУ­m na internetu. Mnoho dУ­kХЏ naХЁim programУЁtorХЏm za jejich УКsilУ­. Pokud mУЁte verzi ScummVM pro jinou platformu/systУЉm a chcete ho odevzdat do hlavnУ­ho УКloХОiХЁtФ›, nevУЁhejte nУЁs kontaktovat!
+
+PodporovanУЉ platformy zahrnujУ­ (mimo jinУЉ):
+
+ UNIX (Linux, Solaris, IRIX, *BSD, ...)
+ Windows
+ Windows CE a Windows Mobile (vФetnФ› SmartphonХЏ a PocketPCs)
+ Mac OS X
+ AmigaOS
+ Android
+ BeOS
+ Dreamcast
+ GP2x
+ iPhone (vФetnФ› iPod Touch a iPad)
+ Maemo (Nokia Internet tablet N810)
+ Nintendo 64
+ Nintendo DS
+ Nintendo GameCube
+ Nintendo Wii
+ OS/2
+ PlayStation 2
+ PlayStation Portable
+ Symbian
+ WebOS
+
+Verze pro Dreamcast nepodporuje The Curse of Monkey Island, ani The Dig. Verze pro Nintendo DS nepodporuje Full Throttle, The Dig, nebo The Curse of Monkey Island.
+Pro dalХЁУ­ omezenУ­ vТ zУЁvislosti na platformФ› se, prosУ­m, podУ­vejte na naХЁУ­ Wiki:
+ http://wiki.scummvm.org/index.php/Platforms
+
+Ve verzi pro Macintosh je stisknutУ­ pravУЉho tlaФУ­tka myХЁi emulovУЁno pomocУ­ Cmd-kliknutУ­ (to je, ХОe stisknete tlaФУ­tko myХЁi pХ™i drХОenУ­ klУЁvesy
+Command/Apple/Vrtule).
+
+TakУЉ existujУ­ neoficiУЁlnУ­ verze pro rХЏznУЉ platformy, vФetnФ› PlayStation 3, Xbox, a Xbox 360. NezapomeХˆte, ХОe my jsme tyto verze nevytvoХ™ili, takХОe je nemХЏХОeme ani schvУЁlit ani podporovat. PouХОУ­vejte na vlastnУ­ riziko!
+
+
+5.0) SpuХЁtФ›nУ­ ScummVM:
+---- -----------------
+VХЁimnФ›te si prosУ­m, ХОe ScummVM bude uloХОenУЉ hry standardnФ› uklУЁdat do sloХОky zТ kterУЉ je spuХЁtФ›n, takХОe byste se mФ›li vyhnout jeho spouХЁtФ›nУ­ zТ vУ­ce umУ­stФ›nУ­. DalХЁУ­ informace, vФetnФ› jak urФit sloХОku pro uloХОenУЉ hry pro zamezenУ­ tohoto problУЉmu, najdete vТ oddУ­lu 6.0.
+
+ScummVM mХЏХОe bУНt takУЉ spuХЁtФ›n pХ™У­mo pomocУ­ spouХЁtФ›cУ­ho souboru. VТ tomto pХ™У­padФ› bude aktivovУЁn zabudovanУН spouХЁtФ›Ф. OdsuФ mХЏХОete pХ™idat hry
+(kliknФ›te na 'PХ™idat hru'), nebo spustit ty, co uХО jsou nastaveny.
+Hry mohou bУНt takУЉ pХ™idУЁny ve velkУЉm mnoХОstvУ­. StisknutУ­m shift + 'PХ™idat
+Hru' (VХЁimnФ›te si, ХОe se tlaФУ­tko zmФ›nУ­ na 'HromadnУЉ PХ™idУЁnУ­'), mХЏХОete zvolit sloХОku, vТ kterУЉ zaФУ­t, a ScummVM se potУЉ pokusУ­ zjistit hry ve vХЁech podsloХОkУЁch tУЉto sloХОky.
+
+ScummVM mХЏХОe takУЉ hru spustit pХ™У­mo pomocУ­ argumentХЏ pХ™У­kazovУЉ Х™УЁdky -- viz dalХЁУ­ ФУЁst.
+
+
+5.1) MoХОnosti pХ™У­kazovУЉho Х™УЁdku:
+---- ---------------------------
+
+ PouХОitУ­: scummvm [MOХНNOSTI]... [HRA]
+
+ [HRA] KrУЁtkУЉ jmУЉno hry pro naФtenУ­. NapХ™У­klad 'monkey'pro Monkey Island. To mХЏХОe bУНt buФ id hry, nebo uХОivatelem urФenУН cУ­l.
+ -v, --version ZobrazУ­ informace o verzi ScummVM a ukonФУ­ se
+ -h, --help ZobrazУ­ struФnou nУЁpovФ›du a ukonФУ­ se
+ -z, --list-games ZobrazУ­ seznam podporovanУНch her a ukonФУ­ se
+ -t, --list-targets ZobrazУ­ seznam nastavenУНch cУ­lХЏ a ukonФУ­ se
+ --list-saves=CУL ZobrazУ­ seznam uloХО. her pro urФenou hru (CУL)
+ --console PovolУ­ okno konzole (vУНchozУ­: zapnuto) (Pouze pro Windows)
+ -c, --config=NastavenУ­ PouХОije jinУН soubor s nastavenУ­m
+ -p, --path=CESTA Cesta, kde je hra nainstalovУЁna
+ -x, --save-slot[=ФŒУSLO] Pozice uloХОenУЉ hry pro naФtenУ­ (vУНchozУ­: automatickУЁ)
+ -f, --fullscreen Vynutit reХОim celУЉ obrazovky
+ -F, --no-fullscreen Vynutit reХОim do okna
+ -g, --gfx-mode=REХНIM Vybere reХОim obrazu (viz takУЉ ФУЁst 5.3)
+ --gui-theme=VZHLED Vybere vzhled rozhranУ­ (vУНchozУ­, modernУ­, klasickУН)
+ --themepath=CESTA Cesta kde jsou vzhledy rozhranУ­ uloХОeny
+ --list-themes ZobrazУ­ seznam vХЁech pouХОitelnУНch vzhledХЏ
+ -e, --music-driver=REХНIM Vybere ovladaФ hudby (viz takУЉ ФУЁst 7.0)
+ --list-audio-devices ZobrazУ­ seznam vХЁech dostupnУНch zvukovУНch zaХ™У­zenУ­
+ -q, --language=JAZYK Vybere jazyk hry (viz takУЉ ФУЁst 5.2)
+ -m, --music-volume=ФŒ. NastavУ­ hlasitost hudby, 0-255 (vУНchozУ­: 192)
+ -s, --sfx-volume=ФŒ. NastavУ­ hlasitost zvukХЏ, 0-255 (vУНchozУ­: 192)
+ -r, --speech-volume=ФŒ. NastavУ­ hlasitost hlasХЏ, 0-255 (vУНchozУ­: 192)
+ --midi-gain=ФŒ. NastavУ­ zvУНХЁenУ­ pro pХ™ehrУЁvУЁnУ­ MIDI, 0-1000 (vУНchozУ­: 100) (podporovУЁno pouze nФ›kterУНmi ovladaФi MIDI)
+ -n, --subtitles Zapne titulky (pouХОijte vТ hrУЁch s Х™eФУ­)
+ -b, --boot-param=ФŒ. PХ™edУЁ ФУ­slo zavУЁdФ›jУ­cУ­mu skriptu (parametr zavedenУ­)
+ -d, --debuglevel=ФŒ. NastavУ­ УКroveХˆ podrobnostУ­ ladФ›nУ­
+ --debugflags=PХ˜УZNAKY PovolУ­ urФitУЉ pХ™У­znaky ladФ›nУ­ jУЁdra (oddФ›lenУЉ ФУЁrkami)
+ -u, --dump-scripts PovolУ­ vУНpis skriptu, pokud sloХОka s nУЁzvem 'dumps' existuje vТ souФasnУЉ sloХОce
+ --cdrom=ФŒУSLO Jednotka CD zТ kterУЉ pХ™ehrУЁvat CD audio (vУНchozУ­: 0 = prvnУ­ jednotka)
+ --joystick[=ФŒУSLO] PovolУ­ vstup z joysticku (vУНchozУ­: 0 = prvnУ­ joystick)
+ --platform=SLOVO UrФУ­ platformu hry (povolenУЉ hodnoty: 2gs, 3do, acorn, amiga, atari, c64, fmtowns, mac, nes, pc, pce, segacd, windows)
+ --savepath=CESTA Cesta, kde jsou umУ­stФ›ny uloХОenУЉ hry
+ --extrapath=CESTA DodateФnУЁ cesta pro dalХЁУ­ data hry
+ --soundfont=SOUBOR Vybere SoundFont pro pХ™ehrУЁvУЁnУ­ MIDI (PodporovУЁno pouze nФ›kterУНmi ovladaФi MIDI)
+ --multi-midi PovolУ­ kombinaci AdLib a pХ™irozenУЉho MIDI
+ --native-mt32 PravУН Roland MT-32 (zakУЁХОe emulaci GM)
+ --enable-gs PovolУ­ reХОim Roland GS pro pХ™ehrУЁvУЁnУ­ MIDI
+ --output-rate=FREKVENCE VУНstupnУ­ vzorkovacУ­ kmitoФet v Hz (napХ™. 22050)
+ --opl-driver=OVLADAФŒ Vybere emulУЁtor AdLib (OPL) (db, mame)
+ --aspect-ratio PovolУ­ korekci pomФ›ru stran
+ --render-mode=REХНIM PovolУ­ dodateФnУЉ reХОimy vykreslenУ­ (cga, ega, hercGreen, hercAmber, amiga)
+ --alt-intro PouХОije alternativnУ­ intro pro CD verze Beneath a Steel Sky a Flight of the Amazon Queen
+ --copy-protection PovolУ­ ochranu proti kopУ­rovУЁnУ­ vТ hrУЁch, kdyХО ji ScummVM standardnФ› zakazuje.
+ --talkspeed=ФŒУSLO NastavУ­ zdrХОenУ­ mluvenУ­ v hrУЁch SCUMM, nebo rychlost mluvenУ­ vТ jinУНch hrУЁch (vУНchozУ­: 60)
+ --demo-mode SpustУ­ reХОim dema v Maniac Mansion (KlasickУЁ verze)
+ --tempo=NUM NastavУ­ rychlost hudby (v procentech, 50-200) pro hry SCUMM (vУНchozУ­: 100)
+
+
+VУНznam vХЁech dlouhУНch moХОnostУ­ (to jsou ty, kterУЉ zaФУ­najУ­ dvojitou pomlФkou) mХЏХОe bУНt pХ™evrУЁcen, kdyХО pХ™ed nФ› pХ™idУЁte "no-". NapХ™У­klad,
+--no-aspect-ratio vypne korekci pomФ›ru stran. To je uХОiteФnУЉ, kdyХО chcete potlaФit nastavenУ­ v souboru.
+
+KrУЁtkУЉ jmУЉno hry ('cУ­l hry'), kterУН vidУ­te na konci pХ™У­kazovУЉho Х™УЁdku, urФuje, kterУЁ hra je spuХЁtФ›na. BuФ odpovУ­dУЁ libovolnУЉmu cУ­li urФenУЉho uХОivatelem (ze souboru sТ nastavenУ­m), nebo zabudovanУЉmu id hry. KrУЁtkУН seznam zabudovanУНch id mХЏХОe bУНt nalezen v ФУЁsti list 3.0.
+
+PХ™У­klady:
+ * Win32:
+ SpuХЁtФ›nУ­ Monkey Island, celУЁ obrazovka, zТ pevnУЉho disku:
+ C:\Games\LucasArts\scummvm.exe -f -pC:\Games\LucasArts\monkey\ monkey
+ SpuХЁtФ›nУ­ Full Throttle z CD, celУЁ obrazovka a se zapnutУНmi titulky:
+ C:\Games\LucasArts\scummvm.exe -f -n -pD:\resource\ ft
+
+ * Unix:
+ SpuХЁtФ›nУ­ Monkey Island, celУЁ obrazovka, zТ pevnУЉho disku:
+
+ /path/to/scummvm -f -p/games/LucasArts/monkey/ monkey
+ SpuХЁtФ›nУ­ Full Throttle z CD, celУЁ obrazovka a se zapnutУНmi titulky:
+ /path/to/scummvm -f -n -p/cdrom/resource/ ft
+
+
+5.2) Volby jazyka:
+---- -------------
+ScummVM obsahuje volby jazyka pro Maniac Mansion, Zak McKracken,
+The Dig, The Curse of Monkey Island, Beneath a Steel Sky a
+Broken Sword.
+
+NezapomeХˆte, ХОe kromФ› Beneath a Steel Sky, Broken Sword, mnohajazykovУЉ verze her Goblins a Nippon Safes Inc., pouХОitУ­ tУЉto moХОnosti *nezmФ›nУ­* jazyk hry (kterУН je vФ›tХЁinou pevnФ› zakУГdovУЁn), ale spУ­ХЁe je pouХОita pro vybrУЁnУ­ sprУЁvnУЉho pУ­sma (napХ™. pro nФ›meckou verzi obsahujУ­cУ­ pХ™ehlУЁsky).
+
+VУНjimky jsou The Dig a The Curse of Monkey Island -- neanglickУЉ
+Verze mohou bУНt nastaveny na 'English'. NicmУЉnФ› toto ovlivХˆuje pouze titulky; Х™eФ ve hХ™e zХЏstane stejnУЁ.
+
+Maniac Mansion a Zak McKracken
+ en - AngliФtina (vУНchozУ­)
+ de - NФ›mФina
+ fr - FrancouzХЁtina
+ it - ItalХЁtina
+ es - Х panФ›lХЁtina
+
+The Dig
+ jp - JaponХЁtina
+ zh - ФŒУ­nХЁtina
+ kr - KorejХЁtina
+
+The Curse of Monkey Island
+ en - AngliФtina (vУНchozУ­)
+ de - NФ›mФina
+ fr - FrancouzХЁtina
+ it - ItalХЁtina
+ pt - PortugalХЁtina
+ es - Х panФ›lХЁtina
+ jp - JaponХЁtina
+ zh - ФŒУ­nХЁtina
+ kr - KorejХЁtina
+
+Beneath a Steel Sky
+ gb - AngliФtina (VelkУЁ BritУЁnie) (vУНchozУ­)
+ en - AngliФtina (USA)
+ de - NФ›mФina
+ fr - FrancouzХЁtina
+ it - ItalХЁtina
+ pt - PortugalХЁtina
+ es - Х panФ›lХЁtina
+ se - Х vУЉdХЁtina
+
+Broken Sword
+ en - AngliФtina (vУНchozУ­)
+ de - NФ›mФina
+ fr - FrancouzХЁtina
+ it - ItalХЁtina
+ pt - PortugalХЁtina
+ es - Х panФ›lХЁtina
+ cz - ФŒeХЁtina
+
+
+5.3) GrafickУЉ filtry:
+---- ----------------
+ScummVM nabУ­zУ­ nФ›kolik filtrХЏ vyhlazujУ­cУ­ch hrany jako pokus o zlepХЁenУ­ obrazovУЉ kvality. Jsou to stejnУЉ filtry, kterУЉ pouХОУ­vУЁ i mnoho jinУНch emulУЁtorХЏ, jako MAME. Tyto filtry vezmou pХЏvodnУ­ grafiku hry a zvФ›tХЁУ­ ji o urФitou pevnou hodnotu (vФ›tХЁinou 2x nebo 3x) neХО ji VУЁm zobrazУ­. TakХОe napХ™У­klad, pokud hra pХЏvodnФ› pracovala vТ rozliХЁenУ­ 320x200 (typickУЉ pro vФ›tХЁinu her SCUMM), pak pouХОitУ­m filtru sТ faktorem zvФ›tХЁenУ­ 2x, ve skuteФnosti dostanete rozliХЁenУ­ 640x400. PodobnФ› sТ filtrem 3x dostanete 960x600.
+
+Jsou to:
+ 1x - Bez filtrovУЁnУ­, bez zvФ›tХЁenУ­. NejrychlejХЁУ­.
+ 2x - Bez filtrovУЁnУ­, zvФ›tХЁenУ­ 2x (vУНchozУ­ pro hry 640x480).
+ 3x - Bez filtrovУЁnУ­, zvФ›tХЁenУ­ 3x.
+ 2xsai - Filtr 2xSAI, zvФ›tХЁenУ­ 2x.
+ super2xsai т€“ VylepХЁenУЉ filtrovУЁnУ­ 2xSAI, zvФ›tХЁenУ­ 2x.
+ supereagle т€“ MУЉnФ› rozostХ™enУН neХО 2xSAI, ale pomalejХЁУ­. ZvФ›tХЁenУ­ 2x.
+ advmame2x - NespolУЉhУЁ na rozostХ™enУ­ jako 2xSAI, rychlУЉ. ZvФ›tХЁenУ­ 2x.
+ advmame3x - NespolУЉhУЁ na rozostХ™enУ­ jako 2xSAI, rychlУЉ. ZvФ›tХЁenУ­ 3x.
+ hq2x - Velmi hezkУЁ vysokУЁ kvalita, ale pomalУН. ZvФ›tХЁenУ­ 2x.
+ hq3x - Velmi hezkУЁ vysokУЁ kvalita, ale pomalУН. ZvФ›tХЁenУ­ 3x.
+ tv2x - Filtr proklУЁdУЁnУ­, snaХОУ­ se emulovat TV. ZvФ›tХЁenУ­ 2x.
+ dotmatrix - Efekt bodovУЉ matice. ZvФ›tХЁenУ­ 2x.
+
+Abyste filtr vybrali, zvolte ho ve spouХЁtФ›Фi, nebo pХ™edejte scummvm jeho jmУЉno pomocУ­ moХОnosti '-g', napХ™У­klad:
+
+ scummvm -gadvmame2x monkey2
+
+PoznУЁmka #1: Ne vХЁechny jУЁdra podporujУ­ vХЁechny (nebo dokonce ХОУЁdnУЉ) zТ filtrХЏ vypsanУНch vУНХЁe; nФ›kterУЉ mohou podporovat i dalХЁУ­. Filtry vypsanУЉ vУНХЁe jsou ty podporovanУЉ standardnУ­m jУЁdrem SDL.
+
+PoznУЁmka #2: Filtry mohou bУНt velmi pomalУЉ, kdyХО je ScummVM sestaven vТ nastavenУ­ pro ladФ›nУ­ bez optimalizacУ­. PouХОitУ­ jakУЉkoliv formy vyhlazenУ­ hran/lineУЁrnУ­ho filtrovУЁnУ­ bude mУ­t vХОdycky dopad na rychlost.
+
+PoznУЁmka #3: Verze FM-TOWNS hry Zak McKracken mУЁ pХЏvodnУ­ rozliХЁenУ­ 320x240, coХО znamenУЁ, ХОe filtry vТ tУЉto hХ™e budou zvФ›tХЁovat na 640x480
+nebo 960x720. ObdobnФ› hry, kterУЉ majУ­ pХЏvodnУ­ rozliХЁenУ­ 640x480 (jako
+Curse of Monkey Island nebo Broken Sword) budou zvФ›tХЁeny na 1280x960 a
+1920x1440.
+
+
+5.4) GlobУЁlnУ­ menu:
+---- --------------
+GlobУЁlnУ­ Menu je obecnУЉ menu, kterУЉ je dostupnУЉ vХЁem jУЁdrХЏm her stisknutУ­m Ctrl-F5. ZТ tohoto menu jsou dostupnУЉ nУЁsledujУ­cУ­ tlaФУ­tka: PokraФovat, Volby, O programu, NУЁvrat do SpouХЁtФ›Фe, a UkonФit. VУНbФ›rem
+'Volby' bude zobrazeno dialogovУЉ okno, kde mХЏХОou bУНt upravena zУЁkladnУ­ nastavenУ­ zvuku, jako hladiny hlasitosti. VУНbФ›rem 'NУЁvrat do SpouХЁtФ›Фe' souФasnou hru ukonФУ­ a uХОivatele navrУЁtУ­ do spouХЁtФ›Фe ScummVM, kde mХЏХОe bУНt vybrУЁna dalХЁУ­ hra ke hranУ­.
+
+PoznУЁmka: NУЁvrat do SpouХЁtФ›Фe nenУ­ podporovУЁn vХЁemi jУЁdry a tlaФУ­tko nebude vТ GlobУЁlnУ­m Menu funkФnУ­, pokud nenУ­ podporovУЁno.
+
+JУЁdra, kterУЁ vТ souФasnosti podporujУ­ nУЁvrat do spouХЁtФ›Фe, jsou:
+
+ AGI
+ AGOS
+ CINE
+ COMPOSER
+ CRUISE
+ DRACI
+ DRASCULA
+ GOB
+ GROOVIE
+ HUGO
+ KYRA
+ LURE
+ MADE
+ MOHAWK
+ PARALLACTION
+ QUEEN
+ SAGA
+ SCI
+ SCUMM
+ SKY
+ SWORD1
+ SWORD2
+ TEENAGENT
+ TOUCHE
+ TSAGE
+ TUCKER
+
+
+5.5) KlУЁvesovУЉ zkratky:
+---- ------------------
+ScummVM podporuje rХЏznУЉ zkratky ve hХ™e. LiХЁУ­ se mezi rХЏznУНmi hrami SCUMM a jinУНmi hrami.
+
+ SpoleФnУЉ:
+ Ctrl-F5 - ZobrazУ­ GlobУЁlnУ­ Menu
+ Cmd-q - UkonФit (Mac OS X)
+ Ctrl-q - UkonФit (dalХЁУ­ unixy vФetnФ› Linux)
+ Ctrl-z OR Alt-x - Quit (dalХЁУ­ platformy)
+ Ctrl-u - ZeslabУ­ vХЁechny zvuky
+ Ctrl-m - PХ™epУ­nat zachycenУ­ myХЁi
+ Ctrl-Alt 1-8 - PХ™epУ­nat mezi grafickУНmi filtry
+ Ctrl-Alt + and - - ZvФ›tХЁit/ZmenХЁit faktor zvФ›tХЁenУ­
+Ctrl-Alt a - PХ™epУ­nat korekci pomФ›ru stran. VФ›tХЁina her pouХОУ­vУЁ rozliХЁenУ­ 320x200 pixelХЏ, coХО mХЏХОe na vФ›tХЁinФ› novФ›jХЁУ­ch monitorХЏ vypadat splУЁcle. Korekce pomФ›ru stran obraz roztУЁhne, aby mУ­sto toho pouХОil 320x240, nebo jeho nУЁsobky
+ Alt-Enter - PХ™epУ­nУЁ celou obrazovku/do okna
+ Alt-s - VytvoХ™it snУ­mek obrazovky (pouze jУЁdro SDL)
+
+ SCUMM:
+ Ctrl 0-9 and Alt 0-9 - NahrУЁt a uloХОit stav hry
+ Ctrl-d - Spustit ladФ›nУ­
+ Ctrl-f - Zapnout rychlУН reХОim
+ Ctrl-g - PХ™epnout do velmi VELMI rychlУЉho reХОimu
+ Ctrl-t - PХ™epУ­nat mezi 'Pouze Х™eФ',
+ '՘eФ a Titulky' a 'Pouze titulky'
+ Tilda (~) - Zobrazit/skrУНt konzoli ladФ›nУ­
+ [ and ] - Hlasitost hudby, zvУНХЁit/snУ­ХОit
+ - and + - Rychlost textu, pomalejХЁУ­/rychlejХЁУ­
+ F5 - ZobrazУ­ rУЁmeФek pro uloХОenУ­/naФtenУ­
+ Alt-F5 - ZobrazУ­ pХЏvodnУ­ rУЁmeФek pro uloХОenУ­/naФtenУ­, pokud hra nФ›jakУН mУЁ. Zde mХЏХОete hru naФУ­st i uloХОit, nicmУЉnФ› pro tento УКФel nenУ­ urФen a vТ nФ›kterУНch hrУЁch mХЏХОe zpХЏsobit pУЁd ScummVM.
+ i - ZobrazУ­ IQ body (Indiana Jones and the Last Crusade a Indiana Jones and the Fate of Atlantis)
+ MezernУ­k - PozastavenУ­
+ TeФka (.) - VТ nФ›kterУНch hrУЁch pХ™eskoФУ­ souФasnУН Х™УЁdek textu
+ Enter - Simulovat stisknutУ­ levУЉho tlaФУ­tka myХЁi
+ Tab - Simulovat stisknutУ­ pravУЉho tlaФУ­tka myХЁi
+
+ Beneath a Steel Sky:
+ Ctrl-d - SpustУ­ ladФ›nУ­
+ Ctrl-f - Zapnout rychlУН reХОim
+ Ctrl-g - PХ™epnout do velmi VELMI rychlУЉho reХОimu
+ F5 - ZobrazУ­ rУЁmeФek pro uloХОenУ­/naФtenУ­
+ Escape - PХ™eskoФУ­ УКvod hry
+ Period (.) - PХ™eskoФУ­ souФasnУН Х™УЁdek textu
+
+ Broken Sword:
+ F5 nebo Escape - ZobrazУ­ rУЁmeФek pro uloХОenУ­/naФtenУ­
+
+ Broken Sword II:
+ Ctrl-d - Spustit ladФ›nУ­
+ Ctrl-f - Zapnout rychlУН reХОim
+ p - PozastavenУ­
+
+ DraФУ­ Historie:
+ F5 - ZobrazУ­ GlobУЁlnУ­ Menu
+ LevУЉ klinutУ­ - JУ­t, zkoumat
+ PravУЉ klinutУ­ - PouХОУ­t, mluvit
+ Posun myХЁi nahoru, i - InventУЁХ™
+ Posun myХЁi dolХЏ, m - Mapa
+ Escape - PХ™eskoФУ­ УКvod, odejde z mapy/inventУЁХ™e
+ JakУЉkoliv kliknutУ­ - PХ™eskoФУ­ souФasnФ› dabovanou vФ›tu
+ q - ZapnutУ­/vypnutУ­ rychlУЉho chozenУ­
+
+ Flight of the Amazon Queen:
+ Ctrl-d - Spustit ladФ›nУ­
+ Ctrl-f - Zapnout rychlУН reХОim
+ F1 - PouХОУ­t DenУ­k (uklУЁdУЁnУ­/naФУ­tУЁnУ­)
+ F11 - RychlУЉ naФtenУ­
+ F12 - RychlУЉ uklУЁdУЁnУ­
+ Escape - PХ™eskoФУ­ video
+ MezernУ­k - PХ™eskoФУ­ souФasnУН Х™УЁdek textu
+
+ Future Wars
+ F1 - Prozkoumat
+ F2 - VzУ­t
+ F3 - InventУЁХ™
+ F4 - PouХОУ­t
+ F5 - Aktivovat
+ F6 - Mluvit
+ F9 - Menu "Aktivovat"
+ F10 - Menu "PouХОУ­t"
+ Escape - Zobrazit menu pХ™У­kazХЏ
+
+ Nippon Safes
+ Ctrl-d - Spustit ladФ›nУ­
+ l - NaФУ­st hru
+ s - UloХОit hru
+
+ Simon the Sorcerer 1 a 2:
+ Ctrl 0-9 a Alt 0-9 - NaФУ­st a uloХОit stav hry
+ Ctrl-d - Spustit ladФ›nУ­
+ Ctrl-f - Zapnout rychlУН reХОim
+ F1 - F3 - Rychlost textu, rychlejХЁУ­ - pomalejХЁУ­
+ F10 - ZobrazУ­ vХЁechny postavy a objekty sТ kterУНmi mХЏХОete nФ›co dФ›lat
+ Escape - PХ™eskoФit videa
+ - a + - Hlasitost hudby, snУ­ХОit/zvУНХЁit
+ m - Hudba vypnout/zapnout
+ s - ZvukovУЉ efekty zapnout/vypnout
+ b - Zvuky pozadУ­ zapnout/vypnout [Pouze Simon the Sorcerer 2]
+ Pause - PozastavenУ­
+ t - PХ™epУ­nat mezi Х™eФУ­ a kombinacУ­ Х™eФi a titulkХЏ [Simon the Sorcerer 1 CD (jinУЉ neХО angliФtina a nФ›mФina) a Simon the Sorcerer 2 CD (vХЁechny jazyky)]
+ v - PХ™epУ­nat mezi titulky a kombinacУ­ Х™eФi a titulkХЏ [Pouze Simon the Sorcerer 2 CD]
+
+ Simon the Sorcerer's Puzzle Pack
+ Ctrl-d - Spustit ladФ›nУ­
+ Ctrl-f - Zapnout rychlУН reХОim
+ F12 - Zapnout/vypnout reХОim rychle rychlosti ve Swampy Adventures
+ - a + - Hlasitost hudby, snУ­ХОit/zvУНХЁit
+ m - Hudba vypnout/zapnout
+ s - ZvukovУЉ efekty zapnout/vypnout
+ Pause - PozastavenУ­
+
+ The Feeble Files
+ Ctrl-d - Spustit ladФ›nУ­
+ Ctrl-f - Zapnout rychlУН reХОim
+ F7 - VymФ›nit postavy
+ F9 - Zapnout/vypnout jmУЉna hitboxХЏ
+ s - ZvukovУЉ efekty zapnout/vypnout
+ Pause - PozastavenУ­
+ t - PХ™epУ­nat mezi Х™eФУ­ a kombinacУ­ Х™eФi a titulkХЏ
+ v - PХ™epУ­nat mezi titulky a kombinacУ­ Х™eФi a titulkХЏ
+
+ The Legend of Kyrandia:
+ Ctrl 0-9 and Alt 0-9 - NaФУ­st a uloХОit stav hry
+
+ Ctrl-d - Spustit ladФ›nУ­
+
+ TeenAgent
+ F5 - ZobrazУ­ GlobУЁlnУ­ Menu
+
+ Touche: The Adventures of the Fifth Musketeer:
+ Ctrl-f - Zapnout rychlУН reХОim
+ F5 - Zobrazit moХОnosti
+ F9 - Zapnout reХОim rychlУЉ chХЏze
+ F10 - Vypnout reХОim rychlУЉ chХЏze
+ Escape - UkonФit
+ MezernУ­k - PХ™eskoФУ­ souФasnУН Х™УЁdek textu
+ t - PХ™epnout mezi 'Pouze ՘eФ',
+ '՘eФ a Text' a ' Pouze Text'
+
+NezapomeХˆte, ХОe pouХОУ­vУЁnУ­ Ctrl-f nebo Ctrl-g nenУ­ doporuФeno: hry mohou spadnout, kdyХО bФ›ХОУ­ rychlostУ­ vyХЁХЁУ­ neХО jejich normУЁlnУ­, protoХОe skripty ztratУ­ synchronizaci.
+
+PoznУЁmka pro uХОivatele WinCE: KvХЏli omezenУЉmu vstupu zТ klУЁvesnice ve vФ›tХЁinФ› zaХ™У­zenУ­ je malУЉ mnoХОstvУ­ klУЁvesovУНch zkratek podporovУЁno pomocУ­ znovu mapovУЁnУ­ a/nebo ФinnostУ­ panelХЏ. ProsУ­m pХ™eФtФ›te si soubor README-WinCE.txt.
+
+
+6.0) UloХОenУЉ hry:
+---- ------------
+UloХОenУЉ hry jsou na nФ›kterУНch platformУЁch standardnФ› umУ­stФ›ny do souФasnУЉ sloХОky a vТ jinУНch do pХ™ednastavenУЉ sloХОky. To mХЏХОete urФit vТ souboru sТ nastavenУ­m pomocУ­ parametru savepath. PodУ­vejte se na vzorovУН soubor sТ nastavenУ­m dУЁle vТ tomto souboru.
+
+Platformy, kterУЉ vТ souФasnosti majУ­ jinУЉ vУНchozУ­ sloХОky jsou:
+ Mac OS X:
+ $HOME/Documents/ScummVM Savegames/
+
+ JinУЉ unixy:
+ $HOME/.scummvm/
+
+ Windows Vista/7:
+ \Users\uХОjmУЉno\AppData\Roaming\ScummVM\Saved games\
+
+ Windows 2000/XP:
+ \Documents and Settings\uХОjmУЉno\Application Data\ScummVM\Saved games\
+
+ Windows NT4:
+ <windir>\Profiles\uХОjmУЉno\Application Data\ScummVM\Saved games\
+
+UloХОenУЉ hry jsou ve Windows NT4/2000/XP/Vista/7 uklУЁdУЁny ve skrytУЉ sloХОce,
+do kterУЉ mХЏХОete vstoupit spuХЁtФ›nУ­m "%APPDATA%\ScummVM\Saved Games\" nebo
+povolenУ­m zobrazenУ­ skrytУНch sloХОek v PrХЏzkumnУ­ku Windows.
+
+PoznУЁmka pro uХОivatele Windows NT4/2000/XP/Vista/7: VУНchozУ­ umУ­stФ›nУ­ uloХОenУНch her
+bylo ve ScummVM 1.5.0 zmФ›nФ›no. DУЁvkovУН soubor pХ™esunu mХЏХОe bУНt pouХОit pro zkopУ­rovУЁnУ­
+uloХОenУНch her ze starУЉho vУНchozУ­ho umУ­stФ›nУ­ do novУЉho.
+
+6.1) 6.1 AutomatickУЉ uklУЁdУЁnУ­:
+---- -------------------------
+VТ nФ›kterУНch hrУЁch, (a to "Beneath a Steel Sky", "Flight of the Amazon
+Queen", vХЁechny hry AGI, a vХЁechny hry SCUMM), bude ScummVM standardnФ› automaticky uklУЁdat souФasnУН stav kaХОdУНch pФ›t minut (upravitelnУЉ pomocУ­ nastavenУ­ "autouklУЁdУЁnУ­"). Pro jУЁdra AGI a SCUMM, je bude uklУЁdat do pozice 0. V jУЁdru SCUMM mХЏХОe bУНt tento uloХОenУН stav znovu naФten pomocУ­ Ctrl-0 nebo menu F5.
+
+
+6.2) PХ™evod uloХОenУНch her:
+---- ---------------------
+PouХОitУ­ uloХОenУНch her zТ pХЏvodnУ­ch verzУ­ nenУ­ podporovУЁno vХЁemi jУЁdry. Pouze nУЁsledujУ­cУ­ hry mohou pouХОУ­t pХЏvodnУ­ verze.
+
+ Elvira 1
+ - PХ™idejte 8 bajtХЏ (nУЁzev uloХОenУЉ hry) na zaФУЁtek souboru uloХОenУЉ hry
+ - PХ™ejmenujte ho na 'elvira1.xxx'
+
+ Elvira 2
+ - PХ™idejte 8 bajtХЏ (nУЁzev uloХОenУЉ hry) na zaФУЁtek souboru uloХОenУЉ hry
+ - PХ™ejmenujte ho na 'elvira2-pc.xxx' (verze DOS) nebo 'elvira2.xxx' (JinУЉ verze)
+
+ Waxworks
+ - PХ™idejte 8 bajtХЏ (nУЁzev uloХОenУЉ hry) na zaФУЁtek souboru uloХОenУЉ hry
+ - PХ™ejmenujte ho na 'waxworks-pc.xxx' (verze DOS) nebo 'waxworks.xxx' (JinУЉ verze)
+
+ Simon the Sorcerer 1
+ - PХ™ejmenuje soubor uloХОenУЉ hry na 'simon1.xxx'
+
+ Simon the Sorcerer 2
+ - PХ™ejmenuje soubor uloХОenУЉ hry na 'simon2.xxx'
+
+ The Feeble Files
+ - PХ™ejmenuje soubor uloХОenУЉ hry na 'feeble.xxx'
+
+Kde 'xxx' je ФУ­slo pozice uloХОenУЉ hry (tj. 001) ve ScummVM
+
+
+6.3) ZobrazenУ­/NaФtenУ­ uloХОenУНch her z pХ™У­kazovУЉho Х™УЁdku:
+---- ----------------------------------------------------
+
+--list-saves:
+
+ Tento pХ™epУ­naФ mХЏХОe bУНt pouХОit kТ zobrazenУ­ seznamu souФasnУНch uloХОenУНch her urФenУЉ cУ­lovУЉ hry a jejУ­ odpovУ­dajУ­cУ­ pozice.
+
+ PouХОitУ­: --list-saves=[CУL], kde [CУL] je cУ­lovУЁ hra.
+
+ JУЁdra, kterУЁ vТ souФasnosti podporujУ­ --list-saves jsou:
+
+ AGI
+ AGOS
+ CGE
+ CINE
+ CRUISE
+ DRACI
+ GROOVIE
+ HUGO
+ KYRA
+ LURE
+ MOHAWK
+ PARALLACTION
+ QUEEN
+ SAGA
+ SCI
+ SCUMM
+ SKY
+ SWORD1
+ SWORD2
+ TEENAGENT
+ TINSEL
+ TOON
+ TOUCHE
+ TSAGE
+ TUCKER
+
+--save-slot/-x:
+
+ Tento pХ™epУ­naФ mХЏХОe bУНt pouХОit kТ naФtenУ­ uloХОenУЉ hry pХ™У­mo zТ pХ™У­kazovУЉho Х™УЁdku.
+
+ PouХОitУ­: --save-slot[POZICE] nebo -x[POZICE], kde [POZICE] je ФУ­slo uloХОenУЉ pozice.
+
+ JУЁdra, kterУЁ vТ souФasnosti podporujУ­--save-slot/-x jsou:
+
+ AGI
+ CGE
+ CINE
+ CRUISE
+ DRACI
+ GROOVIE
+ HUGO
+ KYRA
+ LURE
+ MOHAWK
+ QUEEN
+ SAGA
+ SCI
+ SCUMM
+ SKY
+ SWORD1
+ SWORD2
+ TEENAGENT
+ TINSEL
+ TOON
+ TOUCHE
+ TSAGE
+ TUCKER
+
+
+7.0) Hudba a Zvuk:
+---- -------------
+Ve vФ›tХЁinФ› operaФnУ­ch systУЉmХЏ a pro vФ›tХЁinu her bude ScummVM standardnФ› pouХОУ­vat MT-32 nebo emulaci AdLib pro pХ™ehrУЁvУЁnУ­ hudby. MIDI nemusУ­ bУНt
+DostupnУЉ ve vХЁech operaФnУ­ch systУЉmech, nebo potХ™ebuje ruФnУ­ nastavenУ­. Pokud chcete MIDI pouХОУ­t, mУЁte nФ›kolik rХЏznУНch voleb pro vУНstup, vТ zУЁvislosti na VaХЁem operaФnУ­m systУЉmu a nastavenУ­.
+
+ null - PrУЁzdnУН vУНstup. NepХ™ehrУЁvat ХОУЁdnou hudbu.
+ adlib - VnitХ™nУ­ emulace AdLib
+ fluidsynth т€“ Emulace FluidSynth MIDI
+ mt32 - VnitХ™nУ­ emulace MT-32
+ pcjr - VnitХ™nУ­ emulace PCjr (pouХОitelnУЉ pouze ve hrУЁch SCUMM)
+ pcspk - VnitХ™nУ­ emulace reproduktoru PC
+ towns - VnitХ™nУ­ emulace FM-TOWNS YM2612
+ (pouХОitelnУЉ pouze v hrУЁch SCUMM FM-TOWNS)
+ alsa - VУНstup pomocУ­ zaХ™У­zenУ­ sekvencУЉru ALSA. Viz nУ­ХОe.
+ core - Zvuk CoreAudio, pro uХОivatele Mac OS X.
+ coremidi - Zvuk CoreMIDI, pro uХОivatele Mac OS X. PouХОУ­vejte pouze, pokud mУЁte hardwarovУН syntetizУЁtor MIDI.
+ seq - PouХОitУ­ /dev/sequencer pro MIDI v systУЉmu *nix. Viz nУ­ХОe
+ timidity - PХ™ipojenУ­ kТ MIDI serveru TiMidity++. Viz nУ­ХОe.
+ windows - Windows MIDI. PouХОije zabudovanУН sekvencУЉr, pro Windows
+
+Abyste vybrali ovladaФ zvuku, zvolte ho ve spouХЁtФ›Фi, nebo pХ™edejte jeho jmУЉno ScummVM pomocУ­ moХОnosti '-e', napХ™У­klad:
+
+ scummvm -eadlib monkey2
+
+
+7.1) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace AdLib:
+---- --------------------------------------
+StandardnФ› bude karta AdLib emulovУЁna a ScummVM hudbu pХ™ehrУЁvУЁ jako vzorkovanУЉ vlny. To je vУНchozУ­ reХОim pro vФ›tХЁinu her a nabУ­zУ­ nejlepХЁУ­ kompatibilitu mezi stroji a hrami.
+
+
+7.2) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace FluidSynth MIDI:
+---- ------------------------------------------------
+Pokud byl ScummVM sestaven s podporou libfluidsynth bude schopen pХ™ehrУЁvat hudbu MIDI pomocУ­ ovladaФe FluidSynth. Budete muset ale urФit, kterУН SoundFont pouХОУ­t.
+
+ProtoХОe vУНchozУ­ hlasitost vУНstupu od FluidSynth mХЏХОe bУНt velmi nУ­zkУЁ,
+ScummVM standardnФ› nastavУ­ zvУНХЁenУ­, aby dostal silnФ›jХЁУ­ signУЁl. To mХЏХОe bУНt dУЁle upaveno pouХОitУ­m moХОnosti pХ™У­kazovУЉho Х™УЁdku --midi-gain, nebo nastavenУ­m "midi_gain" vТ konfiguraФnУ­m souboru.
+
+NastavenУ­ mХЏХОe nabУНvat hodnoty od 0 po 1000 a vУНchozУ­ je 100. (Toto odpovУ­dУЁ nastavenУ­ zvУНХЁenУ­ FluidSynth's 0.0 aХО 10.0, coХО je pravdФ›podobnФ› mФ›Х™eno v decibelech.)
+
+POZNУMKA: PoХОadavky na procesor pro FluidSynth mХЏХОou bУНt vТ nФ›kterУНch pХ™У­padech dosti vysokУЉ. Je doporuФeno mУ­t rychlУЉ CPU.
+
+
+7.3) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace MT-32:
+---- --------------------------------------
+NФ›kterУЉ hry, kterУЉ obsahujУ­ hudebnУ­ data MIDI, takУЉ majУ­ vylepХЁenУЉ stopuy urФenУЉ pro zvukovУН modul MT-32. ScummVM mХЏХОe toto zaХ™У­zenУ­ nynУ­ emulovat, nicmУЉnФ› aby toto zaХ™У­zenУ­ fungovalo, musУ­te mУ­t pХЏvodnУ­ ROMy MT-32:
+
+MT32_PCM.ROM - IC21 (512KB)
+MT32_CONTROL.ROM - IC26 (32KB) a IC27 (32KB), proklУЁdanУЉ podle bajtu
+
+Tyto ROMy umУ­stФ›te do hernУ­ho adresУЁХ™e, ve VaХЁУ­ dodateФnУЉ cestФ›, nebo vТ adresУЁХ™i, kde je umУ­stФ›n spouХЁtФ›Ф ScummVM.
+
+SТ tУ­mto ovladaФem nemusУ­te zadУЁvat --native-mt32, protoХОe je automaticky zapnut.
+
+POZNУMKA: PoХОadavky na procesor pro emulУЁtor jsou velmi vysokУЉ; rychlУЉ
+CPU je velmi doporuФeno.
+
+
+7.4) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace MIDI:
+---- -------------------------------------
+NФ›kterУЉ hry (jako Sam & Max) obsahujУ­ pouze hudebnУ­ data MIDI. Toto brУЁnilo, aby hudba vТ tФ›chto hrУЁch fungovala na platformУЁch, kterУЉ MIDI nepodporujУ­, nebo na zvukovУНch kartУЁch, kterУЉ neposkytujУ­ ovladaФe MIDI (napХ™. mnoho zvukovУНch karet nebude vТ Linuxu MIDI pХ™ehrУЁvat). ScummVM nynУ­ mХЏХОe MIDI emulovat pomocУ­ vzorkovanУНch vln a AdLib, emulaci MIDI FluidSynth nebo emulace MT-32 pomocУ­ moХОnostУ­ -eadlib, -efluidsynth nebo -emt32 vТ tomto poХ™adУ­. NicmУЉnФ› pokud mУЁte moХОnost pouХОУ­t pХ™irozenУЉ MIDI, doporuФujeme pouХОУ­t jeden zТ reХОimХЏ MIDI nУ­ХОe pro nejlepХЁУ­ zvuk.
+
+
+7.5) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ emulace PХ™irozenУЉho MIDI:
+---- -------------------------------------------------
+PouХОijte vhodnou moХОnosti pХ™У­kazovУЉho Х™УЁdku -e<reХОim> ze seznamu vУНХЁe pro vybrУЁnУ­ VaХЁeho upХ™ednostХˆovanУЉho zaХ™У­zenУ­ MIDI. NapХ™У­klad pokud chcete pouХОУ­t ovladaФ Windows MIDI, pouХОijte moХОnost -ewindows.
+
+
+7.5.1) PouХОitУ­ moХОnostУ­ MIDI kТ pХ™izpХЏsobenУ­ vУНstupu pХ™irozenУЉ MIDI:
+------ ------------------------------------------------------------
+ScummVM podporuje rХЏznУЉ reХОimy MIDI vТ zУЁvislosti na schopnostech VaХЁeho zaХ™У­zenУ­ MIDI.
+
+Pokud je zadУЁno --native-mt32, ScummVM se kТ VaХЁemu zaХ™У­zenУ­ bude chovat jako ke skuteФnУЉ MT-32. ProtoХОe mapovУЁnУ­ instrumentХЏ a vУНhradnУ­ systУЉmovУЉ pХ™У­kazy MT-32 se liХЁУ­ od zaХ™У­zenУ­ General MIDI, tuto moХОnost byste mФ›li povolit, pouze kdyХО pouХОУ­vУЁte skuteФnУЉ Roland MT-32, LAPC-I,CM-64, CM-32L, CM-500, nebo zaХ™У­zenУ­ GS s mapou MT-32.
+
+Pokud je zadУЁno --enable-gs, ScummVM zavede VaХЁe zaХ™У­zenУ­ kompatibilnУ­ s GS pomocУ­ nastavenУ­, kterУЁ napodobujУ­ nastavenУ­ dozvuku MT-32, (nedostatek) chУГru, citlivost ohУНbanУ­ tУГnu, atd. Pokud je toto spoleФnФ› pouХОito s --native-mt32, ScummVM vybere mapu kompatibilnУ­ s MT-32 a bicУ­ soupravu na VaХЁem zaХ™У­zenУ­ GS. Toto nastavenУ­ funguje lУЉpe neХО standardnУ­ emulace GM nebo GS ve hrУЁch, kterУЉ nemajУ­ vlastnУ­ mapovУЁnУ­ instrumentХЏ (Loom a Monkey1). ObФ› nastavenУ­ byste mФ›li pouХОУ­t pouze tehdy, pokud mУЁte zaХ™У­zenУ­ GS, kterУЉ mУЁ mapu MT-32, jako SC-55, SC-88, SC-88 Pro, SC-8820, SC-8850, atd. NezapomeХˆte, ХОe --enable-gs je automaticky zakУЁzУЁno v DOTT a Samnmax, protoХОe samostatnФ› pouХОУ­vajУ­ General MIDI.
+
+Pokud nenУ­ ani jedna zТ moХОnostУ­ vУНХЁe povolena, ScummVM VaХЁe zaХ™У­zenУ­ zavede vТ reХОimu General MIDI a pouХОije emulaci GM vТ hrУЁch se zvukovУНm doprovodem MT-32.
+
+NФ›kterУЉ hry obsahujУ­ zvukovУЉ efekty pouze v AdLib. Pro tyto hry, byste mФ›li zadat --multi-midi, abyste zkombinovali hudbu MIDI se zvukovУНmi efekty AdLib.
+
+
+7.6) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ SekvencУЉru MIDI: [POUZE UNIX]
+---- ----------------------------------------
+Pokud VУЁХЁ ovladaФ podporuje sekvencУЉr, mХЏХОete nastavit promФ›nnou prostХ™edУ­ "SCUMMVM_MIDI" na VaХЁem zaХ™У­zenУ­ sekvencУЉru т€“ napХ™У­klad na /dev/sequencer
+
+Pokud mУЁte problУЉm se zvukem vТ tomto nastavenУ­, moХОnУЁ budete muset nastavit promФ›nnou prostХ™edУ­ "SCUMMVM_MIDIPORT" na 1 nebo 2. Toto vybere port, kterУН bude pouХОit ve zvolenУЉm sekvencУЉru. Pak spusХЅte scummvm s parametrem -eseq. To by mФ›lo fungovat pro nФ›kolik karet a mХЏХОe nabУ­zet lepХЁУ­ vУНkon a kvalitu, neХО emulace AdLib. NicmУЉnФ› pro systУЉmy, kde podpora sekvencУЉru nefunguje, mХЏХОete vХОdycky pХ™ejУ­t na emulaci AdLib.
+
+
+7.6.1) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ SekvencУЉru ALSA: [POUZE UNIX]
+------ ----------------------------------------
+Pokud MУЁte nainstalovУЁn ovladaФ ALSA sТ podporou sekvencУЉru, pak mХЏХОete nastavit promФ›nnou prostХ™edУ­ "SCUMMVM_PORT" nebo promФ›nnou souboru s nastavenУ­m "alsa_port" pro urФenУ­ portu VaХЁeho sekvencУЉru. Pokud ani jedno nenУ­ nastaveno, jsou standardnФ› vyzkouХЁeny oba porty "65:0" a "17:0".
+
+Zde je krУЁtkУН nУЁvod, jak sekvencУЉr pouХОУ­t sТ VaХЁУ­ zvukovou kartou. Ve vХЁech pХ™У­padech, pro zУ­skУЁnУ­ seznamu vХЁech portХЏ sekvencУЉru, zkuste pХ™У­kaz "aconnect -o -l". To by mФ›lo mУ­t vУНstup podobnУН tomuto:
+
+client 14: 'Midi Through' [type=kernel]
+ 0 'Midi Through Port-0'
+client 16: 'SBLive! Value [CT4832]' [type=kernel]
+ 0 'EMU10K1 MPU-401 (UART)'
+client 17: 'Emu10k1 WaveTable' [type=kernel]
+ 0 'Emu10k1 Port 0 '
+ 1 'Emu10k1 Port 1 '
+ 2 'Emu10k1 Port 2 '
+ 3 'Emu10k1 Port 3 '
+client 128: 'TiMidity' [type=user]
+ 0 'TiMidity port 0 '
+ 1 'TiMidity port 1 '
+ 2 'TiMidity port 2 '
+ 3 'TiMidity port 3 '
+
+NejdХЏleХОitФ›jХЁУ­ ФУЁst zde je, ХОe existujУ­ ФtyХ™i vУНstupy WaveTable MIDI umУ­stФ›nУЉ na 17:0, 17:1, 17:2 a 17:3, a ФtyХ™i porty TiMidity umУ­stФ›nУЉ na 128:0, 128:1, 128:2 a 128:3.
+
+Pokud na VaХЁУ­ kartФ› mУЁte Фip FM FM, jako tХ™eba SB16, pak musУ­te naФУ­st SoundFonts pomocУ­ softwaru sbiload. NapХ™У­klad:
+
+ sbiload -p 17:0 /etc/std.o3 /etc/drums.o3
+
+Pokud je VaХЁe karta schopnУЁ pouХОУ­vat WaveTable, musУ­te naФУ­st SoundFont sbk nebo sf2 pomocУ­ softwaru sfxload nebo asfxload. NapХ™У­klad:
+
+ sfxload /cesta/k/8mbgmsfx.sf2
+
+Pokud VaХЁe karta neumУ­ sТ MIDI pracovat, existujУ­ dvФ› moХОnosti: FluidSynth a TiMidity. DoporuФujeme FluidSynth, protoХОe vТ mnoha systУЉmech bude TiMidity 'zaostУЁvat' za hudbou. To je velmi znatelnУЉ vТ hrУЁch pouХОУ­vajУ­cУ­
+iMUSE, kterУН pouХОУ­vУЁ rychlУЉ a dynamickУЉ pХ™echody hudby.
+SpuХЁtФ›nУ­m TiMidity jako root mu umoХОnУ­ nastavit prioritu vТ reУЁlnУЉm Фase, coХО mХЏХОe zaostУЁvУЁnУ­ snУ­ХОit.
+
+PХ™У­kaz pro TiMidity, aby se stal sekvencУЉrem ALSA:
+
+ timidity -iAqqq -B2,8 -Os1S -s 44100 &
+
+(Pokud sТ tУ­mto nastavenУ­m dostУЁvУЁte zkreslenУН vУНstup, mХЏХОete zkusit vynechat -B2,8 nebo zmФ›nit hodnotu.)
+
+PХ™У­kaz pro TiMidity, aby se stal sekvencУЉrem ALSA (pouХОitУ­m SoundFonts):
+
+ fluidsynth -m alsa_seq /cesta/k/8mbgmsfx.sf2
+
+Jakmile je TiMidity nebo FluidSynth spuХЁtФ›n, pouХОijte pХ™У­kaz 'aconnect -o -l' jak je pospУЁno vУНХЁe vТ tУЉto ФУЁsti.
+
+
+7.6.2) PХ™ehrУЁvУЁnУ­ zvuku pomocУ­ SekvencУЉru IRIX dmedia: [POUZE UNIX]
+------ -----------------------------------------------
+Pokud pouХОУ­vУЁte IRIX a ovladaФ dmedia s podporou sekvencУЉru, mХЏХОete nastavit promФ›nnou prostХ™edУ­ "SCUMMVM_MIDIPORT" nebo promФ›nnou souboru sТ nastavenУ­m "dmedia_port" pro urФenУ­ portu VaХЁeho sekvencУЉru. StandardnФ› je pouХОit prvnУ­ port.
+
+Abyste zУ­skali seznam nastavenУНch rozhranУ­ midi ve VaХЁem systУЉmu, spusХЅte pХ™У­kaz "startmidi" bez parametrХЏ. VzorovУН vУНstup:
+
+ 2 MIDI interfaces configured:
+ Serial Port 2
+ Software Synth
+
+VТ tomto pХ™У­padФ› mХЏХОete ScummVM nastavit, aby pouХОil "Software Synth" mУ­sto standardnУ­ho "Serial Port 2" pХ™idУЁnУ­m Х™УЁdku
+
+ dmedia_port=Software Synth
+
+do VaХЁeho souboru s nastavenУ­m v ФУЁsti [scummvm], nebo nastavenУ­m SCUMMVM_PORT=Software Synth ve VaХЁem prostХ™edУ­.
+
+
+7.7) PouХОitУ­ MIDI serveru TiMidity++:
+---- --------------------------------
+Pokud na VaХЁem systУЉmu chybУ­ jakУНkoliv sekvencУЉr MIDI, ale pХ™esto chcete lepХЁУ­ kvalitu MIDI, neХО kterou mХЏХОe nabУ­dnout standardnУ­ emulace AdLib, mХЏХОete zkusit MIDI server TiMidity++. ProhlУЉdnФ›te si http://timidity.sourceforge.net/ pro staХОenУ­ a pokyny k instalaci.
+
+NejdХ™У­ve musУ­te spustit daemona:
+
+ timidity -ir 7777
+
+NynУ­ mХЏХОete spustit ScummVM a zkusit vybrat TiMidity jako vУНstup pro hudbu. StandardnФ› se pХ™ipojУ­ k localhost:7777, ale hostitele/port mХЏХОete zmФ›nit pomocУ­ promФ›nnУЉ prostХ™edУ­ "TIMIDITY_HOST". MХЏХОete takУЉ urФit
+"ФУ­slo zaХ™У­zenУ­" pouХОitУ­m promФ›nnУЉ "SCUMMVM_MIDIPORT".
+
+
+7.8) PouХОitУ­ komprimovanУНch zvukovУНch souborХЏ
+---- ----------------------------------------
+
+7.8.0) PouХОitУ­ souborХЏ MP3 pro CD audio:
+------ ---------------------------------
+PouХОijte LAME nebo jinУН kodУЉr MP3 pro vyjmutУ­ stop cd audio do souborХЏ.
+Soubory pojmenujte track1.mp3 track2.mp3 atd. ScummVM musУ­ bУНt sestaven s podporou MAD pro pouХОitУ­ tУЉto moХОnosti. Soubory budete muset zТ CD vyjmout ve formУЁtu WAV, pak je pХ™evУЉst do formУЁtu MP3 vТ konstantnУ­ pХ™enosovУЉ rychlosti. To mХЏХОe bУНt provedeno pomocУ­ nУЁsledujУ­cУ­ho pХ™У­kazovУЉho Х™УЁdku:
+
+ lame -t -q 0 -b 96 track1.wav track1.mp3
+
+
+7.8.1) PouХОitУ­ souborХЏ Ogg Vorbis pro CD audio:
+------ ----------------------------------------
+PouХОijte oggenc nebo jinУН kodУЉr vorbis kТ pХ™evedenУ­ zvukovУНch stop do souborХЏ. Pojmenujte je track1.ogg track2.ogg atd. ScummVM musУ­ bУНt sestaven s podporou vorbis pro pouХОitУ­ tУЉto moХОnosti. Soubory budete muset zТ CD vyjmout ve formУЁtu WAV, pak je pХ™evУЉst do formУЁtu vorbis. To mХЏХОe bУНt provedeno pomocУ­ nУЁsledujУ­cУ­ho pХ™У­kazovУЉho Х™УЁdku pro oggenc, kde hodnota po q urФuje poХОadovanou kvalitu od 0 do 10:
+
+ oggenc -q 5 track1.wav
+
+
+7.8.2) PouХОitУ­ souborХЏ Flac pro CD audio:
+------ ----------------------------------
+PouХОijte flac nebo jinУН kodУЉr flac kТ pХ™evedenУ­ zvukovУНch stop do souborХЏ.
+Pojmenujte je track1.flac track2.flac atd. Pokud VУЁХЁ souborovУН systУЉm podporuje pХ™У­pony pouze se tХ™emi pУ­smeny, pojmenujte je track1.fla track2.fla atd. ScummVM musУ­ bУНt sestaven s podporou flac pro pouХОitУ­ tУЉto moХОnosti. Soubory budete muset zТ CD vyjmout ve formУЁtu WAV, pak je pХ™evУЉst do formУЁtu flac. To mХЏХОe bУНt provedeno pomocУ­ nУЁsledujУ­cУ­ho pХ™У­kazovУЉho Х™УЁdku pro flac:
+
+ flac --best track1.wav
+
+NezapomeХˆte, ХОe kvalita bude vХОdy stejnУЁ, rХЏznУЉ moХОnosti kodУЉru ovlivХˆujУ­ dobu kУГdovУЁnУ­ a vУНslednou velikost souboru.
+
+
+7.8.3) KomprimovУЁnУ­ MONSTER.SOU pomocУ­ MP3:
+------ ------------------------------------
+PotХ™ebujete LAME a nУЁХЁ nУЁstroj 'compress_scumm_sou' z balУ­Фku
+scummvm-tools, abyste toto mohli provУЉst a ScummVM musУ­ bУНt sestaven s podporou MAD.
+
+ compress_scumm_sou monster.sou
+
+Nakonec dostanete mnohem menХЁУ­ soubor monster.so3, tento soubor zkopУ­rujte do VaХЁУ­ sloХОky hry. Pak mХЏХОete soubor monster.sou odstranit.
+
+
+7.8.4) KomprimovУЁnУ­ MONSTER.SOU pomocУ­ Ogg Vorbis:
+------ -------------------------------------------
+Tak jako vУНХЁe, ale ScummVM musУ­ bУНt sestaven s podporou OGG. SpusХЅte:
+
+ compress_scumm_sou --vorbis monster.sou
+
+To by mФ›lo vytvoХ™it menХЁУ­ soubor monster.sog file, kterУН byste mФ›li zkopУ­rovat do sloХОky hry. KУГdovУЁnУ­ Ogg mХЏХОe trvat mnohem dУЉle neХО u MP3, takХОe mФ›jte po ruce dobrou knУ­ХОku.
+
+
+7.8.5) KomprimovУЁnУ­ MONSTER.SOU pomocУ­ Flac:
+------ -------------------------------------
+Tak jako vУНХЁe, ale ScummVM musУ­ bУНt sestaven s podporou Flac. SpusХЅte:
+
+ compress_scumm_sou --flac monster.sou
+
+To by mФ›lo vytvoХ™it menХЁУ­ soubor monster.sof, kterУН byste mФ›li zkopУ­rovat do sloХОky hry. NezapomeХˆte, ХОe kvalita bude vХОdy stejnУЁ, rХЏznУЉ moХОnosti kodУЉru ovlivХˆujУ­ dobu kУГdovУЁnУ­ a vУНslednou velikost souboru. ZmФ›na velikosti bloku (-b <hodnota>), mУЁ nejvФ›tХЁУ­ vliv na vУНslednou velikost souboru -- 1152 se zdУЁ bУНt dobrУЁ hodnota pro tento druh zvukovУНch souborХЏ. PХ™eФtФ›te si dokumentaci kodУЉru pХ™edtУ­m, neХО pouХОijete dalХЁУ­ hodnoty.
+
+
+7.8.6) KomprimovУЁnУ­ hudby/zvuku/hlasu v hrУЁch AGOS:
+------ --------------------------------------------
+Pro tento УКkol pouХОijte nУЁХЁ nУЁstroj 'compress_agos' z balУ­Фku scummvm-tools. MХЏХОete volit mezi nФ›kolika cУ­lovУНmi formУЁty, ale nezapomeХˆte, ХОe je mХЏХОete pouХОУ­t pouze tehdy, kdyХО ScummVM byl sestaven se zapnutou podporou konkrУЉtnУ­ho dekodУЉru.
+
+ compress_agos effects (Pro CD verzi Simon 1 od Acorn)
+ compress_agos simon (Pro CD verzi Simon 1 od Acorn)
+ compress_agos effects.voc (Pro DOS CD verzi Simon 1)
+ compress_agos simon.voc (Pro DOS CD verzi Simon 1)
+ compress_agos simon.wav (Pro Windows CD verzi Simon 1)
+ compress_agos simon2.voc (Pro DOS CD verzi Simon 2)
+ compress_agos simon2.wav (Pro Windows CD verzi Simon 2)
+ compress_agos mac (Pro Macintosh verzi Simon 2)
+
+ compress_agos voices1.wav (Pro Windows verzi Feeble na 2CD/4CD)
+ compress_agos voices2.wav (Pro Windows verzi Feeble na 2CD/4CD)
+ compress_agos voices3.wav (Pro Windows verzi Feeble na 4CD)
+ compress_agos voices4.wav (Pro Windows verzi Feeble na 4CD)
+
+ compress_agos Music (Pro Windows verzi Puzzle Pack)
+
+Pro Ogg Vorbis pХ™idejte k volbУЁm --vorbis, tj.
+
+ compress_agos --vorbis
+
+Pro Flac pХ™idejte k volbУЁm --flac a dodateФnУЉ parametry, tj.
+
+ compress_agos --flac
+
+Nakonec dostanete mnohem menХЁУ­ soubor *.mp3, *.ogg nebo *.fla, zkopУ­rujte ho do VaХЁУ­ sloХОky hry. StarУН soubor mХЏХОete bezpeФnУЉ odebrat.
+
+
+7.8.7) KomprimovУЁnУ­ Х™eФi/hudby v Broken Sword:
+------ ---------------------------------------
+NУЁstroj 'compress_sword1' z balУ­Фku scummvm-tools mХЏХОe pХ™evУЉst hudbu a Х™eФ do MP3, Ogg Vorbis a takУЉ Flac. NejsnadnФ›jХЁУ­m zpХЏsobem, jak soubory pХ™evУЉst, je prostУЉ zkopУ­rovУЁnУ­ spouХЁtФ›Фe do VaХЁУ­ sloХОky BS1 (spolu s kodУЉrem lame) a pak ho odsud spustit. Tak bude vХЁechno automaticky pХ™evedeno na MP3. PotУЉ, mХЏХОete ruФnФ› odstranit soubory SPEECH?.CLU a hudebnУ­ soubory wave.
+
+SpuХЁtФ›nУ­m "compress_sword1 --vorbis" soubory zkomprimuje pomocУ­ Ogg Vorbis mУ­sto MP3.
+
+SpuХЁtФ›nУ­m "compress_sword1 --flac" soubory zkomprimuje pomocУ­ Flac
+mУ­sto MP3.
+
+PouХОijte "compress_sword1 --help", abyste dostali УКplnУН seznam moХОnostУ­.
+
+
+7.8.8) KomprimovУЁnУ­ Х™eФi/hudby v Broken Sword II:
+------ ------------------------------------------
+Pro tento УКkol pouХОijte nУЁХЁ nУЁstroj 'compress_sword2'. MХЏХОete volit mezi nФ›kolika cУ­lovУНmi formУЁty, ale nezapomeХˆte, ХОe je mХЏХОete pouХОУ­t pouze tehdy, kdyХО ScummVM byl sestaven se zapnutou podporou konkrУЉtnУ­ho dekodУЉru.
+
+ compress_sword2 speech1.clu
+ compress_sword2 music1.clu
+
+Pro Ogg Vorbis pХ™idejte --vorbis k moХОnostem, tj.
+
+ compress_sword2 --vorbis
+
+Nakonec budete mУ­t mnohem menХЁУ­ soubor *.cl3 nebo *.clg, tento soubor zkopУ­rujte do sloХОky hry. StarУН soubor mХЏХОete bezpeФnУЉ odstranit.
+
+Je moХОnУЉ pouХОУ­t Flac pro komprimaci pХ™idУЁnУ­m moХОnosti by --flac. NicmУЉnФ› vУНslednУН soubor *.clf je ve skuteФnosti vФ›tХЁУ­ neХО pХЏvodnУ­.
+
+NezapomeХˆte, prosУ­m, ХОe compress_sword2 bude fungovat pouze se ФtyХ™mi soubory Х™eФi/hudby v Broken Sword II. Nebude fungovat sТ dalХЁУ­mi soubory *.clu, ani nebude fungovat se soubory Х™eФi zТ Broken Sword.
+
+
+7.9) VУНstupnУ­ vzorkovacУ­ kmitoФet:
+---- -----------------------------
+VУНstupnУ­ vzorkovacУ­ kmitoФet Х™У­kУЁ ScummVM, kolik vzorkХЏ zvuku mУЁ hrУЁt vТ kanУЁlu za sekundu. Je toho hodnФ›, co by se dalo Х™У­ct o tomto tУЉmatu, ale vФ›tХЁina toho je zde nepodstatnУЉ. KrУЁtkУЁ verze je, ХОe vФ›tХЁinФ› her staФУ­ 22050 Hz, ale vТ nФ›kterУНch pХ™У­padech je lepХЁУ­ 44100 Hz. Na extrУЉmnФ› pomalУНch systУЉmech byste radФ›ji mФ›li pouХОУ­t 11025 Hz, ale je nepravdФ›podobnФ›, ХОe byste se sТ tУ­mto museli zabУНvat.
+
+Abychom to rozvedli, vФ›tХЁina zvukХЏ, kterУЉ ScummVM musУ­ pХ™ehrУЁt, byla vzorkovУЁna buФ na 22050 Hz, nebo 11025 Hz. PouХОitУ­m vyХЁХЁУ­ho kmitoФtu jako kouzlem nezvУНХЁУ­ kvalitu tФ›chto zvukХЏ. Proto je 22050 Hz v poХ™УЁdku.
+
+NФ›kterУЉ hry pouХОУ­vajУ­ CD audio. Pokud pro toto pouХОУ­vУЁte komprimovanУЉ soubory, jsou pravdФ›podobnФ› vzorkovanУН na kmitoФtu 44100 Hz, takХОe pro tyto hry je toto pravdФ›podobnФ› lepХЁУ­ volba kmitoФtu.
+
+PХ™i pouХОitУ­ ovladaФХЏ hudby AdLib, FM Towns, PC Speaker nebo IBM PCjr je
+ScummVM zodpovФ›dnУН za vytvУЁХ™enУ­ vzorkХЏ. VФ›tХЁinou bude 22050 Hz staФit, ale existuje alespoХˆ jedna stopa hudby AdLib Beneath a Steel Sky, kterУЁ znУ­ lУЉpe pХ™i 44100 Hz.
+
+PouХОitУ­ kmitoФtХЏ mezi nenУ­ doporuФeno. Za prvУЉ VaХЁe zvukovУЁ karta ho nemusУ­ podporovat. Teoreticky by se ScummVM mФ›l vrУЁtit kТ rozumnУЉmu kmitoФtu, ale nespolУЉhejte na to. DХЏleХОitФ›jХЁУ­ je ale to, ХОe ScummVM musУ­ pХ™evzorkovat vХЁechny zvuky na jejich vУНstupnУ­ kmitoФet. To je mnohem snadnФ›jХЁУ­ kТ provedenУ­, kdyХО vУНstupnУ­ kmitoФet je nУЁsobkem pХЏvodnУ­ho.
+
+
+8.0) Soubor s nastavenУ­m:
+---- --------------------
+StandardnФ› je soubor sТ nastavenУ­m uloХОen a naФУ­tУЁn:
+
+ Windows Vista/7:
+ \Users\jmУЉno uХОivatele\AppData\Roaming\ScummVM\scummvm.ini,
+
+ Windows 2000/XP:
+ \Documents and Settings\jmУЉno uХО\Application Data\ScummVM\scummvm.ini
+
+ Windows NT4:
+ <sloХОkawin>\Profiles\jmУЉno uХО\Application Data\ScummVM\scummvm.ini,
+
+ Windows 95/98/ME:
+ <sloХОkawin>\scummvm.ini,
+
+ Pokud ve Windows nainstalovУЁna dХ™У­vФ›jХЁУ­ verze ScummVM bude ponechУЁno dХ™У­vФ›jХЁУ­ umУ­stФ›nУ­ '<sloХОkawin>\scummvm.ini'.
+
+ Unix:
+ ~/.scummvmrc
+
+ Mac OS X:
+ ~/Library/Preferences/ScummVM Preferences
+ (zde ~ oznaФuje VaХЁi domovskou sloХОku)
+
+ DalХЁУ­:
+ scummvm.ini vТ souФasnУЉ sloХОce
+
+VzorovУН soubor sТ nastavenУ­m vypadУЁ takto:
+
+ [scummvm]
+ gfx_mode=supereagle
+ fullscreen=true
+ savepath=C:\saves\
+
+ [sky]
+ path=C:\games\SteelSky\
+
+ [germansky]
+ gameid=sky
+ language=de
+ path=C:\games\SteelSky\
+ description=Beneath a Steel Sky w/ German subtitles
+
+ [germandott]
+ gameid=tentacle
+ path=C:\german\tentacle\
+ description=German version of DOTT
+
+ [tentacle]
+ path=C:\tentacle\
+ subtitles=true
+ music_volume=40
+ sfx_volume=255
+
+ [loomcd]
+ cdrom=1
+ path=C:\loom\
+ talkspeed=5
+ savepath=C:\loom\saves\
+
+ [monkey2]
+ path=C:\amiga_mi2\
+ music_driver=windows
+
+8.1) RozpoznУЁvanУЁ klУ­ФovУЁ slova nastavenУ­
+---- ------------------------------------
+Jsou rozpoznУЁvУЁna nУЁsledujУ­cУ­ klУ­ФovУЁ slova:
+
+ path Х™etФ›zec Cesta, kde jsou umУ­stФ›ny datovУЉ soubory hry
+ autosave_period ФУ­slo VteХ™iny mezi autouklУЁdУЁnУ­m (vУНchozУ­: 300)
+ save_slot ФУ­slo ФŒУ­slo uloХОenУЉ, kterУЉ pХ™i spuХЁtФ›nУ­ naФУ­st.
+ savepath Х™etФ›zec Cesta, kde hra bude uklУЁdat uloХОenУЉ hry.
+ versioninfo Х™etФ›zec Verze ScummVM, kterУЁ vytvoХ™ila soubor.
+ gameid Х™etФ›zec SkuteФnУЉ id hry. UХОiteФnУЉ, pokud mУЁte nФ›kolik verzУ­ stejnУЉ hry a chcete pro nФ› rХЏznУЉ pХ™ezdУ­vky. Viz pХ™У­klad.
+ description Х™etФ›zec Popis hry jak se zobrazУ­ ve spouХЁtФ›Фi.
+ language Х™etФ›zec UrФУ­ jazyk (en, us, de, fr, it, pt, es,
+ jp, zh, kr, se, gb, hb, cz, ru)
+ speech_mute boolean Pokud true, Х™eФ je ztlumena
+ subtitles boolean Pokud true jsou titulky zapnuty.
+ talkspeed ФУ­slo ZpoХОdФ›nУ­ textu v hrУЁch SCUMM, nebo rychlost textu vТ jinУНch hrУЁch.
+ fullscreen boolean ReХОim celУЉ obrazovky
+ aspect_ratio boolean Povolit korekci pomФ›ru stran
+ gfx_mode Х™etФ›zec GrafickУН reХОim (normУЁlnУ­, 2x, 3x, 2xsai, super2xsai, supereagle, advmame2x, advmame3x,hq2x, hq3x, tv2x, dotmatrix)
+ confirm_exit boolean Zeptat se uХОivatele na potvrzenУ­ pХ™ed ukonФenУ­m (pouze jУЁdro SDL).
+ console boolean Povolit okno konzole (vУНchozУ­: zapnuto) (pouze Windows).
+ cdrom ФУ­slo ФŒУ­slo jednotky CD-ROM, kterou pouХОУ­t pro zvuk. Pokud je zУЁpornУЉ, kТ pokusu o pХ™У­stup k CD-ROM nedojde.
+ joystick_num ФУ­slo ФŒУ­slo zaХ™У­zenУ­ joysticku, kterУЉ pouХОУ­t pro vstup
+ music_driver Х™etФ›zec KterУЉ hudebnУ­ jУЁdro pouХОУ­t.
+ opl_driver Х™etФ›zec KterУН emulУЁtor AdLib (OPL) pouХОУ­t.
+ output_rate ФУ­slo KterУН vУНstupnУ­ vzorkovacУ­ kmitoФet pouХОУ­t v Hz. RozumnУЉ hodnoty jsou 11025, 22050 a 44100.
+ alsa_port Х™etФ›zec KterУН port pouХОУ­t pro vУНstup pХ™i pouХОitУ­ hudebnУ­ho ovladaФe ALSA.
+ music_volume ФУ­slo NastavenУ­ hlasitosti hudby (0-255)
+ multi_midi boolean Pokud true, jsou povoleny smУ­ХЁenУН AdLib a pХЏvodnУ­ MIDI.
+ soundfont Х™etФ›zec KterУН SoundFont pouХОУ­t pro pХ™ehrУЁvУЁnУ­ MIDI. (PodporovУЁno pouze nФ›kterУНmi ovladaФi MIDI.)
+ native_mt32 boolean Pokud true, zakУЁХОe emulaci GM a pХ™edpoklУЁdУЁ, ХОe je dostupnУН pravУН Roland MT-32.
+ enable_gs boolean Pokud true, povolУ­ funkce urФenУЉ pro Roland GS ke zlepХЁenУ­ emulace GM. Pokud je native_mt32 takУЉ nastaven na true, zaХ™У­zenУ­ GS zvolУ­ mapu MT-32 pro pХ™ehrУЁvУЁnУ­ sprУЁvnУНch instrumentХЏ.
+ sfx_volume ФУ­slo NastavenУ­ hlasitosti zvuku (0-255)
+ tempo ФУ­slo Rychlost hudby (50-200) (vУНchozУ­: 100)
+ speech_volume ФУ­slo NastavenУ­ hlasitosti Х™eФi (0-255)
+ midi_gain ФУ­slo ZvУНХЁenУ­ MIDI (0-1000) (vУНchozУ­: 100) (PodporovУЁno pouze nФ›kterУНmi ovladaФi MIDI.)
+ copy_protection boolean PovolУ­ ochranu proti kopУ­rovУЁnУ­ vТ urФitУНch hrУЁch, kde by ji ScummVM standardnФ› zakУЁzal.
+ demo_mode boolean Spustit demoverzi v Maniac Mansion
+ alt_intro boolean PouХОУ­t alternativnУ­ УКvod pro CD verze Beneath a Steel Sky a Flight of the Amazon Queen
+ boot_param ФУ­slo PХ™edУЁ toto ФУ­slo zavУЁdФ›cУ­mu skriptu
+
+Hry Sierra pouХОУ­vajУ­cУ­ jУЁdro AGI pХ™idУЁvajУ­ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+
+originalsaveload boolean Pokud true, jsou pouХОity pХЏvodnУ­ obrazovky nahrУЁvУЁnУ­/uloХОenУ­ mУ­sto vylepХЁenУНch ze ScummVM
+
+Hry Sierra pouХОУ­vajУ­cУ­ jУЁdro SCI pХ™idУЁvajУ­ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
+
+ disable_dithering boolean Odstranit artefakty chvФ›nУ­ vТ nФ›kterУНch hrУЁch EGA
+ prefer_digitalsfx boolean Pokud true, jsou upХ™ednostХˆovУЁny digitУЁlnУ­ zvukovУЉ efekty pХ™ed syntetizovanУНmi
+ originalsaveload boolean Pokud true, jsou pouХОity pХЏvodnУ­ obrazovky nahrУЁvУЁnУ­/uloХОenУ­ mУ­sto vylepХЁenУНch ze ScummVM
+ native_fb01 bool Pokud true, je ovladaФ hudby pro kartu IBM Music Feature nebo modul syntetizУЁtoru Yahama FB-01 FM pouХОit jako vУНstup MIDI
+Broken Sword II pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
+
+ gfx_details ФУ­slo NastavenУ­ grafickУНch detailХЏ (0-3)
+ music_mute boolean Pokud true, hudba je ztlumena
+ object_labels boolean Pokud true, popisky objektХЏ jsou povoleny
+ reverse_stereo boolean Pokud true, kanУЁly stereo jsou obrУЁceny
+ sfx_mute boolean Pokud true, zvukovУЉ efekty jsou ztlumeny
+
+Flight of the Amazon Queen pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
+
+ music_mute boolean Pokud true, hudba je ztlumena
+ sfx_mute boolean Pokud true, zvukovУЉ efekty jsou ztlumeny
+
+Hopkins FBI pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+ enable_gore boolean Pokud true, povolУ­ nФ›kterУЉ nepivnnУЉ krvavУЉ scУЉny ve hХ™e
+
+Jones in the Fast Lane pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+
+ music_mute boolean Pokud true, je pouХОito CD audio mУ­sto zvukХЏ ve hХ™e
+
+King's Quest VI Windows pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+
+ windows_cursors boolean Pokud true, jsou pouХОity pХЏvodnУ­ ФernobУ­lУЉ kurzory mУ­sto kurzorХЏ z DOS. Pokud false, jsou ve verzi Windows pouХОity kurzory DOS, zvФ›tХЁenУЉ, aby se shodovaly se zbytkem zvФ›tХЁenУЉ grafiky
+
+Lands of Lore: The Throne of Chaos pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
+
+ smooth_scrolling boolean Pokud true, je posunovУЁnУ­ pХ™i zmФ›nФ› zТ jednУЉ obrazovky na druhou plynulejХЁУ­
+ floating_cursors boolean Pokud true, je kurzor zmФ›nФ›n na smФ›rovou ХЁipku pХ™i najetУ­ na okraj obrazovky. HrУЁФ pak mХЏХОe kliknout pro pohyb vТ tomto smФ›ru.
+
+Space Quest IV CD pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+
+ silver_cursors boolean Pokud true, je mУ­sto pХЏvodnУ­ch zlatУНch kurzorХЏ pouХОita alternativnУ­ sada stХ™У­brnУНch
+
+Simon the Sorcerer 1 a 2 pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
+
+ music_mute boolean Pokud true, hudba je ztlumena
+ sfx_mute boolean Pokud true, zvukovУЉ efekty jsou ztlumeny
+
+Soltys pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+ enable_color_blind bool Pokud true, jsou pХЏvodnУ­ barvy nahrazeny odstУ­ny ХЁedi
+
+The Legend of Kyrandia pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+
+ walkspeed celУЉ ФУ­slo Rychlost chХЏze (0-4)
+
+The Legend of Kyrandia: The Hand of Fate pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+
+ walkspeed ФУ­slo Rychlost chХЏze (3 nebo 5, coХО znamenУЁ
+ rychle nebo pomalu)
+
+The Legend of Kyrandia: Malcolm's Revenge pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
+
+ walkspeed ФУ­slo Rychlost chХЏze (3 nebo 5, coХО znamenУЁ
+ rychle nebo pomalu)
+ studio_audience boolean Pokud true, je slyХЁet potlesk a smУ­ch kdykoliv Malcolm provede nФ›co vtipnУЉho
+ skip_support boolean Pokud true, hrУЁФ mХЏХОe pХ™eskakovat text a scУЉny hry
+ helium_mode boolean Pokud true, lidУЉ znФ›jУ­ tak, jakoby se nadУНchali hУЉlia
+
+The Neverhood pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЁ slova:
+
+ originalsaveload boolean Pokud true, jsou pouХОity pХЏvodnУ­ obrazovky pro
+ naФУ­tУЁnУ­/uklУЁdУЁnУ­ mУ­sto obrazovek ScummVM
+ skiphallofrecordsscenes boolean
+ Pokud true, umoХОnУ­ hrУЁФi pХ™eskoФit
+ obrazovky v SУ­ni zУЁznamХЏ
+ scalemakingofvideos boolean Pokud true, je zmФ›nФ›no rozliХЁenУ­ dokumentu o
+ vytvУЁХ™enУ­ hry tak, aby zaplnilo celou obrazovku
+
+The 7th Guest pХ™idУЁvУЁ nУЁsledujУ­cУ­ nestandardnУ­ klУ­ФovУЉ slovo:
+
+ fast_movie_speed boolean Pokud true, jsou videa pХ™ehrУЁvУЁna pХ™i zvУНХЁenУЉ
+ rychlosti, stejnУЉ jako ve verzi pro iOS.
+ Videa bez zvuku jsou stУЁle pХ™ehrУЁvУЁna pХ™i
+ normУЁlnУ­ rychlosti, aby nedoХЁlo k desynchronizaci
+ hudby
+
+8.2) VlastnУ­ hernУ­ volby, kterУЉ mohou bУНt pХ™epУ­nУЁny pomoci grafickУЉho
+---- ----------------------------------------------------------------
+rozhranУ­
+--------
+Mnoho vlastnУ­ch hernУ­ch voleb vТ pХ™edchozУ­ ФУЁsti mХЏХОe bУНt pХ™epnuto pХ™es grafickУЉ rozhranУ­. Pokud je takovУЁto volba pro urФitou hru dostupnУЁ, objevУ­ se karta "JУЁdro" pХ™i pХ™idУЁvУЁnУ­ nebo УКpravФ› nastavenУ­ tУЉto hry.
+Pokud vlastnУ­ moХОnosti nejsou zobrazeny, musУ­ bУНt konkrУЉtnУ­ hry spuХЁtФ›ny jednou nebo znovu pХ™idУЁny do seznamu her spouХЁtФ›Фe ScummVM. Toto aktualizuje nastavenУ­ kaХОdУЉ poloХОky, ФУ­mХО umoХОnУ­ zobrazenУ­ vlastnУ­ch voleb.
+
+9.0) SestavenУ­:
+---- ----------
+Pro aktuУЁlnУ­ pХ™ehled o tom, jak ScummVM sestavit pro rХЏznУЉ platformy, prohlУЉdnФ›te si, prosУ­m, naХЁУ­ Wiki, zvlУЁХЁtФ› tuto strУЁnku:
+
+ http://wiki.scummvm.org/index.php/Compiling_ScummVM
+
+Pokud sestavujete ve Windows, Linux nebo Mac OS X, potХ™ebujete SDL-1.2.2
+Nebo novФ›jХЁУ­ (starХЁУ­ verze mohou fungovat, ale nejsou podporovУЁny) a podporovanУН kompilУЁtor. VФ›tХЁina kompilУЁtorХЏ, vФetnФ› GCC, mingw a novФ›jХЁУ­ch verzУ­ Microsoft Visual C++ jsou podporovУЁny. Pokud chcete pouХОУ­t stopy CD komprimovanУЉ do MP3 nebo soubory .SOU, musУ­te nainstalovat knihovnu MAD; podobnФ› potХ™ebujete vhodnУЉ knihovny pro komprimovanУН zvuk pomocУ­ Ogg Vorbis a FLAC. Pro komprimovanУЉ uloХОenУЉ stavy je potХ™eba mУ­t zlib.
+
+NФ›kterУЉ ФУЁsti ScummVM, zvlУЁХЁtФ› zvФ›tХЁovaФe, majУ­ vysoce optimalizovanУЉ verze napsanУЉ v assembleru. Pokud si pХ™ejete tuto moХОnost pouХОУ­t, potХ™ebuje mУ­t nainstalovУЁn assembler nasm (viz http://nasm.sf.net). NezapomeХˆte, ХОe vТ souФasnosti mУЁme pouze verze optimalizovanУЉ pro x86 MMX, a nebudou sestaveny pro jinУЉ procesory.
+
+Na Win9x/NT/XP mХЏХОete urФit USE_WINDBG a pХ™ipojit WinDbg pro prochУЁzenУ­ ladУ­cУ­ch zprУЁv (viz http://www.sysinternals.com/ntw2k/freeware/debugview.shtml).
+
+ GCC a MinGW32:
+ * Zadejte "./configure"
+ * Zadejte "make" (nebo "gmake", Фi "gnumake", vТ zУЁvislosti na tom, jak je GNU make ve VaХЁem systУЉmu nazvУЁn) a ScummVM snad bude pro VУЁs sestaven.
+ * Pro dalХЁУ­ informace si prohlУЉdnФ›te:
+ http://wiki.scummvm.org/index.php/Compiling_ScummVM/GCC
+ Фi
+ http://wiki.scummvm.org/index.php/Compiling_ScummVM/MinGW
+
+ Microsoft Visual C++ 8/9/10:
+ * PХ™eФtФ›te si, jak vytvoХ™it soubory projektu ve "dists\msvc8",
+ "dists\msvc9" pХ™У­sluХЁnФ› "dists\msvc10".
+ * OtevХ™ete vУНslednУН soubor projektu.
+ * Zadejte cestu k potХ™ebnУНm knihovnУЁm a hlsiФkovУНm souborХЏm v
+ Tools|Options|Projects and Solutions|VC++ Directories".
+ * TeФ by program mФ›l bУНt УКspФ›ХЁnФ› sestaven.
+ * Pro dalХЁУ­ informace si prohlУЉdnФ›te:
+ http://wiki.scummvm.org/index.php/Compiling_ScummVM/VS2005
+
+ Windows Mobile:
+ * PХ™eФtФ›te si prosУ­m:
+ http://wiki.scummvm.org/index.php/Compiling_ScummVM/Windows_CE
+
+ Mac OS X:
+ * UjistФ›te se, ХОe mУЁte nainstalovУЁny nУЁstroje pro vУНvojУЁХ™e.
+ * BalУ­Фek SDL pro vУНvojУЁХ™e na OS X, kterУН je dostupnУН na strУЁnce SDL _nenУ­_ vhodnУН. SpУ­ХЁe potХ™ebujete sestavenУ­ vТ unixovУЉm stylu. Jeden takovУН zpХЏsob, jak ho nainstalovat je pomocУ­ Fink
+ (http://fink.sf.net). TakУЉ mХЏХОete SDL sestavit ruФnФ› ze zdrojovУЉho kУГdu pomocУ­ systУЉmu sestavenУ­ pro unix (configure a make).
+ * Ve sloХОce ScummVM zadejte "./configure".
+ * NynУ­ mХЏХОete zadat 'make' pro vytvoХ™enУ­ spouХЁtФ›Фe pХ™У­kazovУЉho Х™УЁdku.
+ * Abyste zУ­skali verzi, kterou mХЏХОete spustit z Finder, zadejte 'make bundle' coХО vytvoХ™У­ ScummVM.app (to funguje pouze, kdyХО mУЁte SDL nainstalovУЁn do /sw, coХО se pХ™i instalaci Fink provede). Pokud jste SDL nainstalovali jinУНm zpХЏsobem, budete muset upravit ports.mk).
+ * Pro dalХЁУ­ informace si prohlУЉdnФ›te:
+ http://wiki.scummvm.org/index.php/Compiling_ScummVM/MacOS_X_Crosscompiling
+
+ AmigaOS 4 (KХ™У­ХОovУЁ kompilace pomocУ­ Cygwin):
+ * UjistФ›te se, ХОe mУЁte nainstalovУЁn SDL, mХЏХОete takУЉ potХ™ebovat
+ libogg, libvorbis, libvorbisfile, zlib, libmad.
+ * Zadejte ./configure --host=ppc-amigaos
+ * Pokud dostanete chybu o sdl-config, pouХОijte parametr --with-sdl-prefix pro nastavenУ­ cesty.
+ * Zkontrolujte soubor 'config.mk' a pokud je vХЁe v poХ™УЁdku:
+ * SpusХЅte 'make'.
+ * KХ™У­ХОovУЁ kompilace pomocУ­ Linux mХЏХОe bУНt takУЉ tak lehkУЁ.
+
+ iPhone:
+ * PХ™eФtФ›te si prosУ­m:
+ http://wiki.scummvm.org/index.php/Compiling_ScummVM/iPhone
+
+ Maemo:
+ * Nainstalujte Maemo SDK s rootstrap 4.1.2
+ * Nainstalujte libmad, Tremor, FLAC ze zdroje
+ * SpusХЅte 'ln -s backends/platform/maemo/debian'
+ * Aktualizujte debian/changelog
+ * SpusХЅte 'sb2 dpkg-buildpackage -b'
+
+------------------------------------------------------------------------
+HodnФ› Х tФ›stУ­ a Х ХЅastnУЉ AdventurovУЁnУ­!
+TУНm ScummVM.
+http://www.scummvm.org/
+------------------------------------------------------------------------
+
+
+
+
diff --git a/engines/advancedDetector.cpp b/engines/advancedDetector.cpp
index 40783a2407..fa23f5fa1a 100644
--- a/engines/advancedDetector.cpp
+++ b/engines/advancedDetector.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/advancedDetector.h b/engines/advancedDetector.h
index 376a59e471..ad551698f6 100644
--- a/engines/advancedDetector.h
+++ b/engines/advancedDetector.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/agi.cpp b/engines/agi/agi.cpp
index 57561c00ee..6bdbabd33e 100644
--- a/engines/agi/agi.cpp
+++ b/engines/agi/agi.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/agi.h b/engines/agi/agi.h
index 93a456b9a6..6256de05d2 100644
--- a/engines/agi/agi.h
+++ b/engines/agi/agi.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/checks.cpp b/engines/agi/checks.cpp
index 624476509e..e61146e901 100644
--- a/engines/agi/checks.cpp
+++ b/engines/agi/checks.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/console.cpp b/engines/agi/console.cpp
index b9a64bc572..5f222adf89 100644
--- a/engines/agi/console.cpp
+++ b/engines/agi/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/console.h b/engines/agi/console.h
index f8025e0562..6e86067373 100644
--- a/engines/agi/console.h
+++ b/engines/agi/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/cycle.cpp b/engines/agi/cycle.cpp
index 702ca907d7..6b34605364 100644
--- a/engines/agi/cycle.cpp
+++ b/engines/agi/cycle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/detection.cpp b/engines/agi/detection.cpp
index 3f55117868..1d58900056 100644
--- a/engines/agi/detection.cpp
+++ b/engines/agi/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/detection_tables.h b/engines/agi/detection_tables.h
index a7a3920df8..2d7fba3507 100644
--- a/engines/agi/detection_tables.h
+++ b/engines/agi/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -846,6 +846,7 @@ static const AGIGameDescription gameDescriptions[] = {
FANMADE("Time Quest (Demo v0.1)", "12e1a6f03ea4b8c5531acd0400b4ed8d"),
FANMADE("Time Quest (Demo v0.2)", "7b710608abc99e0861ac59b967bf3f6d"),
FANMADE_SVP("Time Quest", "90314f473d8317be5cd1f0306f139aea", 300, 0x2440, Common::kPlatformCoCo3),
+ FANMADE("Toby's World (Demo)", "3f8ebea0eb32303e65e2a6e8341c6741"),
FANMADE("Tonight The Shrieking Corpses Bleed (Demo v0.11)", "bcc57a7c8d563fa0c333107ae1c0a6e6"),
FANMADE("Tonight The Shrieking Corpses Bleed (v1.01)", "36b38f621b38e8d104aa0807302dc8c9"),
FANMADE("Turks' Quest - Heir to the Planet", "3d19254b737c8b218e5bc4580542b79a"),
diff --git a/engines/agi/font.h b/engines/agi/font.h
index c2516d3520..c77d8cf0c3 100644
--- a/engines/agi/font.h
+++ b/engines/agi/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/global.cpp b/engines/agi/global.cpp
index fdece0737e..7d55316d7b 100644
--- a/engines/agi/global.cpp
+++ b/engines/agi/global.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/graphics.cpp b/engines/agi/graphics.cpp
index 4bb3877f7d..34651c70b2 100644
--- a/engines/agi/graphics.cpp
+++ b/engines/agi/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/graphics.h b/engines/agi/graphics.h
index 037dacd8de..15668fbed3 100644
--- a/engines/agi/graphics.h
+++ b/engines/agi/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/id.cpp b/engines/agi/id.cpp
index dd370d4189..c35ff36488 100644
--- a/engines/agi/id.cpp
+++ b/engines/agi/id.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/inv.cpp b/engines/agi/inv.cpp
index a165a32b29..f1e4e5094b 100644
--- a/engines/agi/inv.cpp
+++ b/engines/agi/inv.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/keyboard.cpp b/engines/agi/keyboard.cpp
index b7e52f4dc3..0aa521bdc8 100644
--- a/engines/agi/keyboard.cpp
+++ b/engines/agi/keyboard.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/keyboard.h b/engines/agi/keyboard.h
index 665ee6a62c..89d6a89ce3 100644
--- a/engines/agi/keyboard.h
+++ b/engines/agi/keyboard.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/loader_v1.cpp b/engines/agi/loader_v1.cpp
index 3b862ed91f..404fb6ee0e 100644
--- a/engines/agi/loader_v1.cpp
+++ b/engines/agi/loader_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/loader_v2.cpp b/engines/agi/loader_v2.cpp
index 458927a3bc..787eeaa0c7 100644
--- a/engines/agi/loader_v2.cpp
+++ b/engines/agi/loader_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/loader_v3.cpp b/engines/agi/loader_v3.cpp
index 1dd00dc18e..fa135e5476 100644
--- a/engines/agi/loader_v3.cpp
+++ b/engines/agi/loader_v3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/logic.cpp b/engines/agi/logic.cpp
index 22798ba831..7429b117c8 100644
--- a/engines/agi/logic.cpp
+++ b/engines/agi/logic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/logic.h b/engines/agi/logic.h
index 14137f01d2..a30a37bc47 100644
--- a/engines/agi/logic.h
+++ b/engines/agi/logic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/lzw.cpp b/engines/agi/lzw.cpp
index a00281bd49..ba47c13543 100644
--- a/engines/agi/lzw.cpp
+++ b/engines/agi/lzw.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/lzw.h b/engines/agi/lzw.h
index c732491e8e..26db1bbf14 100644
--- a/engines/agi/lzw.h
+++ b/engines/agi/lzw.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/menu.cpp b/engines/agi/menu.cpp
index d23a5a2e27..008c208c82 100644
--- a/engines/agi/menu.cpp
+++ b/engines/agi/menu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/menu.h b/engines/agi/menu.h
index 1d5828d78a..000973db23 100644
--- a/engines/agi/menu.h
+++ b/engines/agi/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/motion.cpp b/engines/agi/motion.cpp
index e4de232267..363291ac0b 100644
--- a/engines/agi/motion.cpp
+++ b/engines/agi/motion.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/objects.cpp b/engines/agi/objects.cpp
index 447cff2a3f..27cde61065 100644
--- a/engines/agi/objects.cpp
+++ b/engines/agi/objects.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/op_cmd.cpp b/engines/agi/op_cmd.cpp
index 2366d97a82..662454f3c1 100644
--- a/engines/agi/op_cmd.cpp
+++ b/engines/agi/op_cmd.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/op_dbg.cpp b/engines/agi/op_dbg.cpp
index 87e235cf17..997da9db7d 100644
--- a/engines/agi/op_dbg.cpp
+++ b/engines/agi/op_dbg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/op_test.cpp b/engines/agi/op_test.cpp
index 18861a2190..9839f0ec90 100644
--- a/engines/agi/op_test.cpp
+++ b/engines/agi/op_test.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/opcodes.cpp b/engines/agi/opcodes.cpp
index d893e44c12..621fbb8e82 100644
--- a/engines/agi/opcodes.cpp
+++ b/engines/agi/opcodes.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/opcodes.h b/engines/agi/opcodes.h
index 7f0f287550..6bd31c339a 100644
--- a/engines/agi/opcodes.h
+++ b/engines/agi/opcodes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/picture.cpp b/engines/agi/picture.cpp
index 47e40fb5f1..58dfb9db68 100644
--- a/engines/agi/picture.cpp
+++ b/engines/agi/picture.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/picture.h b/engines/agi/picture.h
index 45a95202e5..9ff1e742f4 100644
--- a/engines/agi/picture.h
+++ b/engines/agi/picture.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/preagi.cpp b/engines/agi/preagi.cpp
index 0b5afc7f8c..daadb5ffef 100644
--- a/engines/agi/preagi.cpp
+++ b/engines/agi/preagi.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/preagi.h b/engines/agi/preagi.h
index 5d50fb5af8..c2962b09b3 100644
--- a/engines/agi/preagi.h
+++ b/engines/agi/preagi.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/preagi_mickey.cpp b/engines/agi/preagi_mickey.cpp
index d0f6540651..561b56d199 100644
--- a/engines/agi/preagi_mickey.cpp
+++ b/engines/agi/preagi_mickey.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/preagi_mickey.h b/engines/agi/preagi_mickey.h
index 18b0593d78..55b3633c8c 100644
--- a/engines/agi/preagi_mickey.h
+++ b/engines/agi/preagi_mickey.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/preagi_troll.cpp b/engines/agi/preagi_troll.cpp
index 17d980dfd8..2889407c85 100644
--- a/engines/agi/preagi_troll.cpp
+++ b/engines/agi/preagi_troll.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/preagi_troll.h b/engines/agi/preagi_troll.h
index c14a7872c2..41ddbea166 100644
--- a/engines/agi/preagi_troll.h
+++ b/engines/agi/preagi_troll.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/preagi_winnie.cpp b/engines/agi/preagi_winnie.cpp
index 1be385be37..d5ae0b59a0 100644
--- a/engines/agi/preagi_winnie.cpp
+++ b/engines/agi/preagi_winnie.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/preagi_winnie.h b/engines/agi/preagi_winnie.h
index f34c80cec1..b5e8b8d10b 100644
--- a/engines/agi/preagi_winnie.h
+++ b/engines/agi/preagi_winnie.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/saveload.cpp b/engines/agi/saveload.cpp
index c449f076e7..41a7a943ff 100644
--- a/engines/agi/saveload.cpp
+++ b/engines/agi/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound.cpp b/engines/agi/sound.cpp
index 56c7ebcb0b..8f678cbac9 100644
--- a/engines/agi/sound.cpp
+++ b/engines/agi/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound.h b/engines/agi/sound.h
index f300af83a3..992feb1186 100644
--- a/engines/agi/sound.h
+++ b/engines/agi/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_2gs.cpp b/engines/agi/sound_2gs.cpp
index f088ad3a01..b940eed762 100644
--- a/engines/agi/sound_2gs.cpp
+++ b/engines/agi/sound_2gs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_2gs.h b/engines/agi/sound_2gs.h
index 12e7b7b951..8a1999c8eb 100644
--- a/engines/agi/sound_2gs.h
+++ b/engines/agi/sound_2gs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_coco3.cpp b/engines/agi/sound_coco3.cpp
index 64818e4e34..3cd79a1154 100644
--- a/engines/agi/sound_coco3.cpp
+++ b/engines/agi/sound_coco3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_coco3.h b/engines/agi/sound_coco3.h
index d24acf5cc5..078495b5ed 100644
--- a/engines/agi/sound_coco3.h
+++ b/engines/agi/sound_coco3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_midi.cpp b/engines/agi/sound_midi.cpp
index 24e3ca8fb7..35dc896789 100644
--- a/engines/agi/sound_midi.cpp
+++ b/engines/agi/sound_midi.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_midi.h b/engines/agi/sound_midi.h
index ac1b100b12..e026e26594 100644
--- a/engines/agi/sound_midi.h
+++ b/engines/agi/sound_midi.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_pcjr.cpp b/engines/agi/sound_pcjr.cpp
index 5bffca5765..51b2d067a4 100644
--- a/engines/agi/sound_pcjr.cpp
+++ b/engines/agi/sound_pcjr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_pcjr.h b/engines/agi/sound_pcjr.h
index 1b4d1e9efb..7f84112345 100644
--- a/engines/agi/sound_pcjr.h
+++ b/engines/agi/sound_pcjr.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_sarien.cpp b/engines/agi/sound_sarien.cpp
index 576801bc56..98479f3edc 100644
--- a/engines/agi/sound_sarien.cpp
+++ b/engines/agi/sound_sarien.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sound_sarien.h b/engines/agi/sound_sarien.h
index 04f274ca7d..1c4dbb7bca 100644
--- a/engines/agi/sound_sarien.h
+++ b/engines/agi/sound_sarien.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sprite.cpp b/engines/agi/sprite.cpp
index ea2d329fb0..92f88d8fcb 100644
--- a/engines/agi/sprite.cpp
+++ b/engines/agi/sprite.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/sprite.h b/engines/agi/sprite.h
index 851c2438fb..549eb59832 100644
--- a/engines/agi/sprite.h
+++ b/engines/agi/sprite.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/text.cpp b/engines/agi/text.cpp
index 4877be2647..eb48857bf2 100644
--- a/engines/agi/text.cpp
+++ b/engines/agi/text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/view.cpp b/engines/agi/view.cpp
index 3f3686561e..6a274a1b73 100644
--- a/engines/agi/view.cpp
+++ b/engines/agi/view.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/view.h b/engines/agi/view.h
index 5cf59d7df5..b82fbe04d7 100644
--- a/engines/agi/view.h
+++ b/engines/agi/view.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/wagparser.cpp b/engines/agi/wagparser.cpp
index 644ca7c103..0b49866531 100644
--- a/engines/agi/wagparser.cpp
+++ b/engines/agi/wagparser.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/wagparser.h b/engines/agi/wagparser.h
index 81cfecef1b..8f900c9ab8 100644
--- a/engines/agi/wagparser.h
+++ b/engines/agi/wagparser.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agi/words.cpp b/engines/agi/words.cpp
index f423995de8..ff9049fdc5 100644
--- a/engines/agi/words.cpp
+++ b/engines/agi/words.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/agos.cpp b/engines/agos/agos.cpp
index 359a6f7289..7266c75474 100644
--- a/engines/agos/agos.cpp
+++ b/engines/agos/agos.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -510,6 +510,7 @@ AGOSEngine::AGOSEngine(OSystem *system, const AGOSGameDescription *gd)
_saveLoadType = 0;
_saveLoadSlot = 0;
memset(_saveLoadName, 0, sizeof(_saveLoadName));
+ memset(_saveBuf, 0, sizeof(_saveBuf));
_saveGameNameLen = 0;
_saveLoadRowCurPos = 0;
@@ -550,7 +551,7 @@ AGOSEngine::AGOSEngine(OSystem *system, const AGOSGameDescription *gd)
SearchMan.addSubDirectoryMatching(gameDataDir, "execute");
// Add default file directories for Amiga/Macintosh
- // verisons of Simon the Sorcerer 2
+ // versions of Simon the Sorcerer 2
SearchMan.addSubDirectoryMatching(gameDataDir, "voices");
// Add default file directories for Amiga & Macintosh
diff --git a/engines/agos/agos.h b/engines/agos/agos.h
index 0b8e585f57..5e49fce5ff 100644
--- a/engines/agos/agos.h
+++ b/engines/agos/agos.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -584,6 +584,7 @@ protected:
byte _saveLoadType, _saveLoadSlot;
char _saveLoadName[108];
+ char _saveBuf[200];
Graphics::Surface *_backGroundBuf;
Graphics::Surface *_backBuf;
@@ -834,6 +835,9 @@ protected:
void displayBoxStars();
void invertBox(HitArea * ha, byte a, byte b, byte c, byte d);
+ virtual void handleMouseWheelUp();
+ virtual void handleMouseWheelDown();
+
virtual void initMouse();
virtual void handleMouseMoved();
virtual void drawMousePointer();
@@ -1706,10 +1710,13 @@ protected:
void setExitState(Item *i, uint16 n, uint16 d, uint16 s);
void setSRExit(Item *i, int n, int d, uint16 s);
- virtual void listSaveGames(char *dst);
+ virtual void handleMouseWheelUp();
+ virtual void handleMouseWheelDown();
+
+ virtual void listSaveGames();
virtual bool confirmOverWrite(WindowBlock *window);
virtual void userGame(bool load);
- virtual int userGameGetKey(bool *b, char *buf, uint maxChar);
+ virtual int userGameGetKey(bool *b, uint maxChar);
virtual Common::String genSaveName(int slot) const;
};
@@ -1829,6 +1836,9 @@ protected:
virtual void clearName();
+ virtual void handleMouseWheelUp();
+ virtual void handleMouseWheelDown();
+
virtual void drawIcon(WindowBlock *window, uint icon, uint x, uint y);
virtual void initMouse();
@@ -1841,9 +1851,9 @@ protected:
virtual void playSpeech(uint16 speechId, uint16 vgaSpriteId);
- virtual void listSaveGames(char *dst);
+ virtual void listSaveGames();
virtual void userGame(bool load);
- virtual int userGameGetKey(bool *b, char *buf, uint maxChar);
+ virtual int userGameGetKey(bool *b, uint maxChar);
virtual void playMusic(uint16 music, uint16 track);
@@ -1927,6 +1937,7 @@ public:
void off_listSaveGames();
void off_checkCD();
void off_screenTextBox();
+ void off_b2Set();
void off_isAdjNoun();
void off_hyperLinkOn();
void off_hyperLinkOff();
@@ -1969,12 +1980,17 @@ protected:
virtual uint16 readUint16Wrapper(const void *src);
virtual uint32 readUint32Wrapper(const void *src);
+ void setLoyaltyRating(byte rating);
+
void playVideo(const char *filename, bool lastSceneUsed = false);
void stopInteractiveVideo();
virtual void drawImage(VC10_state *state);
void scaleClip(int16 h, int16 w, int16 y, int16 x, int16 scrollY);
+ virtual void handleMouseWheelUp();
+ virtual void handleMouseWheelDown();
+
void drawMousePart(int image, byte x, byte y);
virtual void initMouse();
virtual void drawMousePointer();
diff --git a/engines/agos/animation.cpp b/engines/agos/animation.cpp
index d438de049a..83682d567b 100644
--- a/engines/agos/animation.cpp
+++ b/engines/agos/animation.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -287,7 +287,7 @@ void MoviePlayerDXA::copyFrameToBuffer(byte *dst, uint x, uint y, uint pitch) {
void MoviePlayerDXA::playVideo() {
// Most of the videos included in the Amiga version, reduced the
- // resoluton to 384 x 280, so require the screen to be cleared,
+ // resolution to 384 x 280, so require the screen to be cleared,
// before starting playing those videos.
if (getWidth() == 384 && getHeight() == 280) {
_vm->clearSurfaces();
diff --git a/engines/agos/animation.h b/engines/agos/animation.h
index 9e31fced6d..86808cbc27 100644
--- a/engines/agos/animation.h
+++ b/engines/agos/animation.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/charset-fontdata.cpp b/engines/agos/charset-fontdata.cpp
index b6b90eefcc..ae31814e43 100644
--- a/engines/agos/charset-fontdata.cpp
+++ b/engines/agos/charset-fontdata.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/charset.cpp b/engines/agos/charset.cpp
index eca9728643..4d83a4ef1c 100644
--- a/engines/agos/charset.cpp
+++ b/engines/agos/charset.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/contain.cpp b/engines/agos/contain.cpp
index 173194d45e..0fab0a35f2 100644
--- a/engines/agos/contain.cpp
+++ b/engines/agos/contain.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/cursor.cpp b/engines/agos/cursor.cpp
index 7c64d68048..65fdc9ec99 100644
--- a/engines/agos/cursor.cpp
+++ b/engines/agos/cursor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/debug.cpp b/engines/agos/debug.cpp
index 841ac6bb1a..ad5bfb56f4 100644
--- a/engines/agos/debug.cpp
+++ b/engines/agos/debug.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -101,7 +101,7 @@ const byte *AGOSEngine::dumpOpcode(const byte *p) {
}
case 'W':{
- int n = (int16)READ_BE_UINT16(p);
+ uint16 n = READ_BE_UINT16(p);
p += 2;
if (getGameType() == GType_PP) {
if (n >= 60000 && n < 62048)
@@ -222,14 +222,18 @@ void AGOSEngine::dumpVideoScript(const byte *src, bool singeOpcode) {
error("dumpVideoScript: Opcode %d out of range (%d)", opcode, _numVideoOpcodes);
}
- if (getGameType() == GType_FF || getGameType() == GType_PP) {
+ if (getGameType() == GType_PP) {
+ strn = str = puzzlepack_videoOpcodeNameTable[opcode];
+ } else if (getGameType() == GType_FF) {
strn = str = feeblefiles_videoOpcodeNameTable[opcode];
} else if (getGameType() == GType_SIMON2) {
strn = str = simon2_videoOpcodeNameTable[opcode];
} else if (getGameType() == GType_SIMON1) {
strn = str = simon1_videoOpcodeNameTable[opcode];
- } else if (getGameType() == GType_ELVIRA2 || getGameType() == GType_WW) {
+ } else if (getGameType() == GType_WW) {
strn = str = ww_videoOpcodeNameTable[opcode];
+ } else if (getGameType() == GType_ELVIRA2) {
+ strn = str = elvira2_videoOpcodeNameTable[opcode];
} else if (getGameType() == GType_ELVIRA1) {
strn = str = elvira1_videoOpcodeNameTable[opcode];
} else {
@@ -250,25 +254,39 @@ void AGOSEngine::dumpVideoScript(const byte *src, bool singeOpcode) {
case 'x':
debugN("\n");
return;
- case 'b':
+ case 'b': {
debugN("%d ", *src++);
break;
- case 'd':
+ }
+ case 'w': {
+ int16 v = (int16)readUint16Wrapper(src);
+ src += 2;
+ if (v < 0)
+ debugN("[%d] ", -v);
+ else
+ debugN("%d ", v);
+ break;
+ }
+ case 'd': {
debugN("%d ", (int16)readUint16Wrapper(src));
src += 2;
break;
- case 'v':
+ }
+ case 'v': {
debugN("[%d] ", readUint16Wrapper(src));
src += 2;
break;
- case 'i':
+ }
+ case 'i': {
debugN("%d ", (int16)readUint16Wrapper(src));
src += 2;
break;
- case 'j':
+ }
+ case 'j': {
debugN("-> ");
break;
- case 'q':
+ }
+ case 'q': {
while (readUint16Wrapper(src) != end) {
debugN("(%d,%d) ", readUint16Wrapper(src),
readUint16Wrapper(src + 2));
@@ -276,6 +294,7 @@ void AGOSEngine::dumpVideoScript(const byte *src, bool singeOpcode) {
}
src += 2;
break;
+ }
default:
error("dumpVideoScript: Invalid fmt string '%c' in decompile VGA", *str);
}
diff --git a/engines/agos/debug.h b/engines/agos/debug.h
index fe14ae4860..4d521de9b9 100644
--- a/engines/agos/debug.h
+++ b/engines/agos/debug.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -2468,7 +2468,7 @@ const char *const elvira1_videoOpcodeNameTable[] = {
"dd|DELAY_IF_NOT_EQ",
};
-const char *const ww_videoOpcodeNameTable[] = {
+const char *const elvira2_videoOpcodeNameTable[] = {
/* 0 */
"x|RET",
"ddd|FADEOUT",
@@ -2485,7 +2485,7 @@ const char *const ww_videoOpcodeNameTable[] = {
"dddd|DRAW",
"d|ON_STOP",
/* 12 */
- "d|DELAY",
+ "w|DELAY",
"d|SET_SPRITE_OFFSET_X",
"d|SET_SPRITE_OFFSET_Y",
"d|SYNC",
@@ -2551,11 +2551,94 @@ const char *const ww_videoOpcodeNameTable[] = {
"|FASTFADEIN",
};
+const char *const ww_videoOpcodeNameTable[] = {
+ /* 0 */
+ "x|RET",
+ "ddd|FADEOUT",
+ "w|CALL",
+ "ddddd|NEW_SPRITE",
+ /* 4 */
+ "ddd|FADEIN",
+ "vdj|IF_EQUAL",
+ "dj|IF_OBJECT_HERE",
+ "dj|IF_OBJECT_NOT_HERE",
+ /* 8 */
+ "ddj|IF_OBJECT_IS_AT",
+ "ddj|IF_OBJECT_STATE_IS",
+ "dddd|DRAW",
+ "d|ON_STOP",
+ /* 12 */
+ "w|DELAY",
+ "d|SET_SPRITE_OFFSET_X",
+ "d|SET_SPRITE_OFFSET_Y",
+ "d|SYNC",
+ /* 16 */
+ "d|WAIT_SYNC",
+ "d|WAIT_END",
+ "i|JUMP_REL",
+ "|CHAIN_TO",
+ /* 20 */
+ "dd|SET_REPEAT",
+ "i|END_REPEAT",
+ "d|SET_PALETTE",
+ "d|SET_PRIORITY",
+ /* 24 */
+ "wiid|SET_SPRITE_XY",
+ "x|HALT_SPRITE",
+ "ddddd|SET_WINDOW",
+ "|RESET",
+ /* 28 */
+ "dddd|PLAY_SOUND",
+ "|STOP_ALL_SOUNDS",
+ "d|SET_FRAME_RATE",
+ "d|SET_WINDOW",
+ /* 32 */
+ "|SAVE_SCREEN",
+ "|MOUSE_ON",
+ "|MOUSE_OFF",
+ "dd|CLEAR_WINDOW",
+ /* 36 */
+ "dd|SET_WINDOW_IMAGE",
+ "dd|POKE_PALETTE",
+ "vj|IF_VAR_NOT_ZERO",
+ "vd|SET_VAR",
+ /* 40 */
+ "vd|ADD_VAR",
+ "vd|SUB_VAR",
+ "vd|DELAY_IF_NOT_EQ",
+ "dj|IF_BIT_SET",
+ /* 44 */
+ "dj|IF_BIT_CLEAR",
+ "dd|SET_WINDOW_PALETTE",
+ "d|SET_PALETTE_SLOT1",
+ "d|SET_PALETTE_SLOT2",
+ /* 48 */
+ "d|SET_PALETTE_SLOT3",
+ "d|SET_BIT",
+ "d|CLEAR_BIT",
+ "d|ENABLE_BOX",
+ /* 52 */
+ "d|PLAY_EFFECT",
+ "dd|DISSOLVE_IN",
+ "ddd|DISSOLVE_OUT",
+ "ddd|MOVE_BOX",
+ /* 56 */
+ "|FULL_SCREEN",
+ "|BLACK_PALETTE",
+ "|CHECK_CODE_WHEEL",
+ "j|IF_EGA",
+ /* 60 */
+ "d|STOP_ANIMATE",
+ "d|INTRO",
+ "|FASTFADEOUT",
+ "|FASTFADEIN",
+};
+
const char *const simon1_videoOpcodeNameTable[] = {
/* 0 */
"x|RET",
"ddd|FADEOUT",
- "d|CALL",
+ "w|CALL",
"ddddd|NEW_SPRITE",
/* 4 */
"ddd|FADEIN",
@@ -2568,7 +2651,7 @@ const char *const simon1_videoOpcodeNameTable[] = {
"ddddd|DRAW",
"|CLEAR_PATHFIND_ARRAY",
/* 12 */
- "d|DELAY",
+ "w|DELAY",
"d|SET_SPRITE_OFFSET_X",
"d|SET_SPRITE_OFFSET_Y",
"d|SYNC",
@@ -2583,7 +2666,7 @@ const char *const simon1_videoOpcodeNameTable[] = {
"dd|SET_PALETTE",
"d|SET_PRIORITY",
/* 24 */
- "diid|SET_SPRITE_XY",
+ "wiid|SET_SPRITE_XY",
"x|HALT_SPRITE",
"ddddd|SET_WINDOW",
"|RESET",
@@ -2629,7 +2712,7 @@ const char *const simon1_videoOpcodeNameTable[] = {
"j|IF_SPEECH",
/* 60 */
"d|STOP_ANIMATE",
- "ddd|MASK",
+ "wdd|MASK",
"|FASTFADEOUT",
"|FASTFADEIN",
};
@@ -2638,7 +2721,7 @@ const char *const simon2_videoOpcodeNameTable[] = {
/* 0 */
"x|RET",
"ddd|FADEOUT",
- "d|CALL",
+ "w|CALL",
"dddddd|NEW_SPRITE",
/* 4 */
"ddd|FADEIN",
@@ -2666,7 +2749,7 @@ const char *const simon2_videoOpcodeNameTable[] = {
"dd|SET_PALETTE",
"d|SET_PRIORITY",
/* 24 */
- "diib|SET_SPRITE_XY",
+ "wiib|SET_SPRITE_XY",
"x|HALT_SPRITE",
"ddddd|SET_WINDOW",
"|RESET",
@@ -2706,13 +2789,13 @@ const char *const simon2_videoOpcodeNameTable[] = {
"ddd|DUMMY_54",
"ddd|MOVE_BOX",
/* 56 */
- "i|WAIT_BIG",
+ "w|WAIT_BIG",
"|BLACK_PALETTE",
"ddd|SET_PRIORITIES",
"ddd|STOP_ANIMATIONS",
/* 60 */
"dd|STOP_ANIMATE",
- "ddd|MASK",
+ "wdd|MASK",
"|FASTFADEOUT",
"|FASTFADEIN",
/* 64 */
@@ -2735,7 +2818,7 @@ const char *const feeblefiles_videoOpcodeNameTable[] = {
/* 0 */
"x|RET",
"ddd|FADEOUT",
- "d|CALL",
+ "w|CALL",
"dddddd|NEW_SPRITE",
/* 4 */
"ddd|FADEIN",
@@ -2763,7 +2846,7 @@ const char *const feeblefiles_videoOpcodeNameTable[] = {
"dd|SET_PALETTE",
"d|SET_PRIORITY",
/* 24 */
- "diib|SET_SPRITE_XY",
+ "wiib|SET_SPRITE_XY",
"x|HALT_SPRITE",
"ddddd|SET_WINDOW",
"|RESET",
@@ -2803,7 +2886,116 @@ const char *const feeblefiles_videoOpcodeNameTable[] = {
"ddd|DUMMY_54",
"ddd|MOVE_BOX",
/* 56 */
- "i|WAIT_BIG",
+ "w|WAIT_BIG",
+ "|BLACK_PALETTE",
+ "ddd|SET_PRIORITIES",
+ "ddd|STOP_ANIMATIONS",
+ /* 60 */
+ "dd|STOP_ANIMATE",
+ "wdd|MASK",
+ "|FASTFADEOUT",
+ "|FASTFADEIN",
+ /* 64 */
+ "j|IF_SPEECH",
+ "|SLOW_FADE_IN",
+ "ddj|IF_VAR_EQUAL",
+ "ddj|IF_VAR_LE",
+ /* 68 */
+ "ddj|IF_VAR_GE",
+ "dd|PLAY_SEQ",
+ "dd|JOIN_SEQ",
+ "|IF_SEQ_WAITING",
+ /* 72 */
+ "dd|SEQUE",
+ "bb|SET_MARK",
+ "bb|CLEAR_MARK",
+ "dd|SETSCALE",
+ /* 76 */
+ "ddd|SETSCALEXOFFS",
+ "ddd|SETSCALEYOFFS",
+ "|COMPUTEXY",
+ "|COMPUTEPOSNUM",
+ /* 80 */
+ "wdd|SETOVERLAYIMAGE",
+ "dd|SETRANDOM",
+ "d|GETPATHVALUE",
+ "ddd|PLAYSOUNDLOOP",
+ "|STOPSOUNDLOOP",
+};
+
+const char *const puzzlepack_videoOpcodeNameTable[] = {
+ /* 0 */
+ "x|RET",
+ "ddd|FADEOUT",
+ "w|CALL",
+ "dddddd|NEW_SPRITE",
+ /* 4 */
+ "ddd|FADEIN",
+ "wdj|IF_EQUAL",
+ "dj|IF_OBJECT_HERE",
+ "dj|IF_OBJECT_NOT_HERE",
+ /* 8 */
+ "ddj|IF_OBJECT_IS_AT",
+ "ddj|IF_OBJECT_STATE_IS",
+ "ddddb|DRAW",
+ "|CLEAR_PATHFIND_ARRAY",
+ /* 12 */
+ "b|DELAY",
+ "d|SET_SPRITE_OFFSET_X",
+ "d|SET_SPRITE_OFFSET_Y",
+ "d|SYNC",
+ /* 16 */
+ "d|WAIT_SYNC",
+ "dq|SET_PATHFIND_ITEM",
+ "i|JUMP_REL",
+ "|CHAIN_TO",
+ /* 20 */
+ "dd|SET_REPEAT",
+ "i|END_REPEAT",
+ "dd|SET_PALETTE",
+ "d|SET_PRIORITY",
+ /* 24 */
+ "wiib|SET_SPRITE_XY",
+ "x|HALT_SPRITE",
+ "ddddd|SET_WINDOW",
+ "|RESET",
+ /* 28 */
+ "dddd|PLAY_SOUND",
+ "|STOP_ALL_SOUNDS",
+ "d|SET_FRAME_RATE",
+ "d|SET_WINDOW",
+ /* 32 */
+ "vv|COPY_VAR",
+ "|MOUSE_ON",
+ "|MOUSE_OFF",
+ "dd|CLEAR_WINDOW",
+ /* 36 */
+ "dd|SET_WINDOW_IMAGE",
+ "v|SET_SPRITE_OFFSET_Y",
+ "wj|IF_VAR_NOT_ZERO",
+ "wd|SET_VAR",
+ /* 40 */
+ "vd|ADD_VAR",
+ "vd|SUB_VAR",
+ "vd|DELAY_IF_NOT_EQ",
+ "dj|IF_BIT_SET",
+ /* 44 */
+ "dj|IF_BIT_CLEAR",
+ "v|SET_SPRITE_X",
+ "v|SET_SPRITE_Y",
+ "vv|ADD_VAR_F",
+ /* 48 */
+ "|COMPUTE_YOFS",
+ "d|SET_BIT",
+ "d|CLEAR_BIT",
+ "d|ENABLE_BOX",
+ /* 52 */
+ "ddd|PLAY_EFFECT",
+ "ddd|PAN_SFX",
+ "ddd|DUMMY_54",
+ "ddd|MOVE_BOX",
+ /* 56 */
+ "w|WAIT_BIG",
"|BLACK_PALETTE",
"ddd|SET_PRIORITIES",
"ddd|STOP_ANIMATIONS",
@@ -2833,7 +3025,7 @@ const char *const feeblefiles_videoOpcodeNameTable[] = {
"|COMPUTEXY",
"|COMPUTEPOSNUM",
/* 80 */
- "ddd|SETOVERLAYIMAGE",
+ "wdd|SETOVERLAYIMAGE",
"dd|SETRANDOM",
"d|GETPATHVALUE",
"ddd|PLAYSOUNDLOOP",
diff --git a/engines/agos/debugger.cpp b/engines/agos/debugger.cpp
index fc24c6d363..512137b685 100644
--- a/engines/agos/debugger.cpp
+++ b/engines/agos/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/debugger.h b/engines/agos/debugger.h
index 0ab992ebbe..caac6e2caf 100644
--- a/engines/agos/debugger.h
+++ b/engines/agos/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/detection.cpp b/engines/agos/detection.cpp
index b6d3c2f020..72a38a3645 100644
--- a/engines/agos/detection.cpp
+++ b/engines/agos/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/detection_tables.h b/engines/agos/detection_tables.h
index 329af75d0c..77fc88c6bb 100644
--- a/engines/agos/detection_tables.h
+++ b/engines/agos/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -2622,7 +2622,7 @@ static const AGOSGameDescription gameDescriptions[] = {
GType_FF,
GID_FEEBLEFILES,
- GF_OLD_BUNDLE | GF_TALKIE | GF_PACKED
+ GF_OLD_BUNDLE | GF_TALKIE | GF_PACKED | GF_BROKEN_FF_RATING
},
// The Feeble Files - English Windows 4CD
@@ -2645,7 +2645,7 @@ static const AGOSGameDescription gameDescriptions[] = {
GType_FF,
GID_FEEBLEFILES,
- GF_OLD_BUNDLE | GF_TALKIE
+ GF_OLD_BUNDLE | GF_TALKIE | GF_BROKEN_FF_RATING
},
// The Feeble Files - French Windows 4CD
diff --git a/engines/agos/draw.cpp b/engines/agos/draw.cpp
index d27aed29db..4ba9446eb2 100644
--- a/engines/agos/draw.cpp
+++ b/engines/agos/draw.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/event.cpp b/engines/agos/event.cpp
index 65c7f7fd77..95bcc68234 100644
--- a/engines/agos/event.cpp
+++ b/engines/agos/event.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -468,6 +468,14 @@ void AGOSEngine::delay(uint amount) {
sprintf(_saveLoadName, "Quick %d", _saveLoadSlot);
_saveLoadType = (event.kbd.hasFlags(Common::KBD_ALT)) ? 1 : 2;
quickLoadOrSave();
+ } else if (event.kbd.hasFlags(Common::KBD_ALT)) {
+ if (event.kbd.keycode == Common::KEYCODE_u) {
+ dumpAllSubroutines();
+ } else if (event.kbd.keycode == Common::KEYCODE_i) {
+ dumpAllVgaImageFiles();
+ } else if (event.kbd.keycode == Common::KEYCODE_v) {
+ dumpAllVgaScriptFiles();
+ }
} else if (event.kbd.hasFlags(Common::KBD_CTRL)) {
if (event.kbd.keycode == Common::KEYCODE_a) {
GUI::Dialog *_aboutDialog;
@@ -477,10 +485,6 @@ void AGOSEngine::delay(uint amount) {
_fastMode = !_fastMode;
} else if (event.kbd.keycode == Common::KEYCODE_d) {
_debugger->attach();
- } else if (event.kbd.keycode == Common::KEYCODE_s) {
- dumpAllSubroutines();
- } else if (event.kbd.keycode == Common::KEYCODE_i) {
- dumpAllVgaImageFiles();
}
}
@@ -520,6 +524,12 @@ void AGOSEngine::delay(uint amount) {
case Common::EVENT_RTL:
case Common::EVENT_QUIT:
return;
+ case Common::EVENT_WHEELUP:
+ handleMouseWheelUp();
+ break;
+ case Common::EVENT_WHEELDOWN:
+ handleMouseWheelDown();
+ break;
default:
break;
}
diff --git a/engines/agos/feeble.cpp b/engines/agos/feeble.cpp
index a96caa9f8b..bfd11fa8ea 100644
--- a/engines/agos/feeble.cpp
+++ b/engines/agos/feeble.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/gfx.cpp b/engines/agos/gfx.cpp
index 266fcc9796..6e97084811 100644
--- a/engines/agos/gfx.cpp
+++ b/engines/agos/gfx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/icons.cpp b/engines/agos/icons.cpp
index 5647fece7e..2db2a52cbc 100644
--- a/engines/agos/icons.cpp
+++ b/engines/agos/icons.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/input.cpp b/engines/agos/input.cpp
index 24e5339420..8a4e87017a 100644
--- a/engines/agos/input.cpp
+++ b/engines/agos/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -416,6 +416,115 @@ void AGOSEngine::hitarea_stuff_helper_2() {
_runScriptReturn1 = false;
}
+#ifdef ENABLE_AGOS2
+void AGOSEngine_Feeble::handleMouseWheelUp() {
+ if (getGameType() == GType_PP || !(getBitFlag(99)))
+ return;
+
+ if (_mouse.x >= 128 && _mouse.x <= 515 && _mouse.y >= 102 && _mouse.y <= 206) {
+ oracleTextDown();
+ } else if (_mouse.x >= 172 && _mouse.x <= 469 && _mouse.y >= 287 && _mouse.y <= 382) {
+ HitArea *ha = findBox(0x7FFB);
+ if (ha != NULL && (ha->flags & kBFBoxInUse)) {
+ if (!isSpriteLoaded(21, 9) && !isSpriteLoaded(23, 9))
+ inventoryUp(ha->window);
+ }
+ }
+}
+
+void AGOSEngine_Feeble::handleMouseWheelDown() {
+ if (getGameType() == GType_PP || !(getBitFlag(99)))
+ return;
+
+ if (_mouse.x >= 128 && _mouse.x <= 515 && _mouse.y >= 102 && _mouse.y <= 206) {
+ oracleTextUp();
+ } else if (_mouse.x >= 172 && _mouse.x <= 469 && _mouse.y >= 287 && _mouse.y <= 382) {
+ HitArea *ha = findBox(0x7FFC);
+ if (ha != NULL && (ha->flags & kBFBoxInUse)) {
+ if (!isSpriteLoaded(21, 9) && !isSpriteLoaded(23, 9))
+ inventoryDown(ha->window);
+ }
+ }
+}
+#endif
+
+void AGOSEngine_Simon1::handleMouseWheelUp() {
+ HitArea *ha = findBox(206);
+ if (ha != NULL && (ha->flags & kBFBoxInUse) && !(ha->flags & kBFBoxDead)) {
+ if (_saveLoadRowCurPos != 1) {
+ if (_saveLoadRowCurPos < 7)
+ _saveLoadRowCurPos = 1;
+ else
+ _saveLoadRowCurPos -= 1;
+
+ _saveLoadEdit = false;
+ listSaveGames();
+ }
+ } else {
+ AGOSEngine::handleMouseWheelUp();
+ }
+}
+
+void AGOSEngine_Simon1::handleMouseWheelDown() {
+ HitArea *ha = findBox(207);
+ if (ha != NULL && (ha->flags & kBFBoxInUse) && !(ha->flags & kBFBoxDead)) {
+ if (_saveDialogFlag) {
+ _saveLoadRowCurPos += 1;
+ if (_saveLoadRowCurPos >= _numSaveGameRows)
+ _saveLoadRowCurPos = _numSaveGameRows;
+
+ _saveLoadEdit = false;
+ listSaveGames();
+ }
+ } else {
+ AGOSEngine::handleMouseWheelDown();
+ }
+}
+
+void AGOSEngine_Elvira2::handleMouseWheelUp() {
+ HitArea *ha = findBox(224);
+ if (ha != NULL && (ha->flags & kBFBoxInUse)) {
+ _saveGameNameLen = 0;
+
+ if (_saveLoadRowCurPos < 3)
+ _saveLoadRowCurPos = 1;
+ else
+ _saveLoadRowCurPos -= 3;
+
+ listSaveGames();
+ } else {
+ AGOSEngine::handleMouseWheelUp();
+ }
+}
+
+void AGOSEngine_Elvira2::handleMouseWheelDown() {
+ HitArea *ha = findBox(224);
+ if (ha != NULL && (ha->flags & kBFBoxInUse)) {
+ _saveGameNameLen = 0;
+ _saveLoadRowCurPos += 3;
+ if (_saveLoadRowCurPos >= _numSaveGameRows)
+ _saveLoadRowCurPos = 1;
+
+ listSaveGames();
+ } else {
+ AGOSEngine::handleMouseWheelDown();
+ }
+}
+
+void AGOSEngine::handleMouseWheelUp() {
+ HitArea *ha = findBox(0x7FFB);
+ if (ha != NULL && (ha->flags & kBFBoxInUse)) {
+ inventoryUp(ha->window);
+ }
+}
+
+void AGOSEngine::handleMouseWheelDown() {
+ HitArea *ha = findBox(0x7FFC);
+ if (ha != NULL && (ha->flags & kBFBoxInUse)) {
+ inventoryDown(ha->window);
+ }
+}
+
void AGOSEngine::permitInput() {
if (_mortalFlag)
return;
diff --git a/engines/agos/input_pn.cpp b/engines/agos/input_pn.cpp
index b3a44f2b2f..a852ef320b 100644
--- a/engines/agos/input_pn.cpp
+++ b/engines/agos/input_pn.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/intern.h b/engines/agos/intern.h
index 773b9c15bd..3f5c8c519b 100644
--- a/engines/agos/intern.h
+++ b/engines/agos/intern.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -246,16 +246,17 @@ enum SubObjectFlags {
};
enum GameFeatures {
- GF_TALKIE = 1 << 0,
- GF_OLD_BUNDLE = 1 << 1,
- GF_CRUNCHED = 1 << 2,
- GF_CRUNCHED_GAMEPC = 1 << 3,
- GF_ZLIBCOMP = 1 << 4,
- GF_32COLOR = 1 << 5,
- GF_EGA = 1 << 6,
- GF_PLANAR = 1 << 7,
- GF_DEMO = 1 << 8,
- GF_PACKED = 1 << 9
+ GF_TALKIE = 1 << 0,
+ GF_OLD_BUNDLE = 1 << 1,
+ GF_CRUNCHED = 1 << 2,
+ GF_CRUNCHED_GAMEPC = 1 << 3,
+ GF_ZLIBCOMP = 1 << 4,
+ GF_32COLOR = 1 << 5,
+ GF_EGA = 1 << 6,
+ GF_PLANAR = 1 << 7,
+ GF_DEMO = 1 << 8,
+ GF_PACKED = 1 << 9,
+ GF_BROKEN_FF_RATING = 1 << 10
};
enum GameFileTypes {
diff --git a/engines/agos/items.cpp b/engines/agos/items.cpp
index 3bb5a132ef..86abe403b4 100644
--- a/engines/agos/items.cpp
+++ b/engines/agos/items.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/menus.cpp b/engines/agos/menus.cpp
index 85c50e421b..77a37cb601 100644
--- a/engines/agos/menus.cpp
+++ b/engines/agos/menus.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/midi.cpp b/engines/agos/midi.cpp
index b3ade91107..392ee08ea1 100644
--- a/engines/agos/midi.cpp
+++ b/engines/agos/midi.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -235,6 +235,10 @@ void MidiPlayer::startTrack(int track) {
_music.parser = parser; // That plugs the power cord into the wall
} else if (_music.parser) {
if (!_music.parser->setTrack(track)) {
+ // The Roland MT32 music in Simon the Sorcerer 2
+ // is missing the extra tracks in many scenes,
+ // like the introduction sequence.
+ stop();
return;
}
_currentTrack = (byte)track;
diff --git a/engines/agos/midi.h b/engines/agos/midi.h
index 635e091906..3efadddc2f 100644
--- a/engines/agos/midi.h
+++ b/engines/agos/midi.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/midiparser_s1d.cpp b/engines/agos/midiparser_s1d.cpp
index bef7199a98..c2c08bf451 100644
--- a/engines/agos/midiparser_s1d.cpp
+++ b/engines/agos/midiparser_s1d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/oracle.cpp b/engines/agos/oracle.cpp
index 025a833b77..122f800e78 100644
--- a/engines/agos/oracle.cpp
+++ b/engines/agos/oracle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -180,7 +180,7 @@ void AGOSEngine_Feeble::oracleTextUp() {
if (_textWindow->scrollY > _oracleMaxScrollY) // For scroll up
_oracleMaxScrollY = _textWindow->scrollY;
- while (1) {
+ while (!shouldQuit()) {
if (_textWindow->scrollY == _oracleMaxScrollY)
break;
_textWindow->textRow = 105;
@@ -214,7 +214,7 @@ void AGOSEngine_Feeble::oracleTextDown() {
if (_textWindow->scrollY > _oracleMaxScrollY) // For scroll up
_oracleMaxScrollY = _textWindow->scrollY;
- while (1) {
+ while (!shouldQuit()) {
if (_textWindow->scrollY == 0)
break;
diff --git a/engines/agos/pn.cpp b/engines/agos/pn.cpp
index 667a5c3fc8..d94f180b00 100644
--- a/engines/agos/pn.cpp
+++ b/engines/agos/pn.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/res.cpp b/engines/agos/res.cpp
index 1c79a073e8..2631f7998e 100644
--- a/engines/agos/res.cpp
+++ b/engines/agos/res.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -802,7 +802,6 @@ void AGOSEngine::loadVGABeardFile(uint16 id) {
}
} else {
offs = _gameOffsetsPtr[id];
-
size = _gameOffsetsPtr[id + 1] - offs;
readGameFile(_vgaBufferPointers[11].vgaFile2, offs, size);
}
@@ -817,9 +816,9 @@ void AGOSEngine::loadVGAVideoFile(uint16 id, uint8 type, bool useError) {
if ((getGameType() == GType_SIMON1 || getGameType() == GType_SIMON2) &&
id == 2 && type == 2) {
- // WORKAROUND: For the exta long strings in foreign languages
+ // WORKAROUND: For the extra long strings in foreign languages
// Allocate more space for text to cope with foreign languages that use
- // up more space than english. I hope 6400 bytes are enough. This number
+ // up more space than English. I hope 6400 bytes are enough. This number
// is base on: 2 (lines) * 320 (screen width) * 10 (textheight) -- olki
extraBuffer += 6400;
}
@@ -911,8 +910,16 @@ void AGOSEngine::loadVGAVideoFile(uint16 id, uint8 type, bool useError) {
} else {
id = id * 2 + (type - 1);
offs = _gameOffsetsPtr[id];
-
dstSize = _gameOffsetsPtr[id + 1] - offs;
+
+ if (!dstSize) {
+ if (useError)
+ error("loadVGAVideoFile: Can't load id %d type %d", id, type);
+
+ _block = _blockEnd = NULL;
+ return;
+ }
+
dst = allocBlock(dstSize + extraBuffer);
readGameFile(dst, offs, dstSize);
}
diff --git a/engines/agos/res_ami.cpp b/engines/agos/res_ami.cpp
index 32adfa29e6..4b3d575142 100644
--- a/engines/agos/res_ami.cpp
+++ b/engines/agos/res_ami.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/res_snd.cpp b/engines/agos/res_snd.cpp
index 86d24e0b07..5d6ab60c8b 100644
--- a/engines/agos/res_snd.cpp
+++ b/engines/agos/res_snd.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/rooms.cpp b/engines/agos/rooms.cpp
index fb7b313e9c..6185653d42 100644
--- a/engines/agos/rooms.cpp
+++ b/engines/agos/rooms.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/saveload.cpp b/engines/agos/saveload.cpp
index 8b133971de..5d5e2d7b03 100644
--- a/engines/agos/saveload.cpp
+++ b/engines/agos/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -37,9 +37,8 @@ namespace AGOS {
// FIXME: This code counts savegames, but callers in many cases assume
// that the return value + 1 indicates an empty slot.
int AGOSEngine::countSaveGames() {
- Common::InSaveFile *f = NULL;
Common::StringArray filenames;
- uint i = 1;
+ uint s, numSaveGames = 1;
int slotNum;
bool marks[256];
@@ -60,18 +59,13 @@ int AGOSEngine::countSaveGames() {
marks[slotNum] = true; //mark this slot as valid
}
- // FIXME: Why does this already try to actually open the savegames?
- // Historical accident?
- while (i < 256) {
- if (marks[i] &&
- (f = _saveFileMan->openForLoading(genSaveName(i)))) {
- i++;
- delete f;
- } else
- break;
+ // locate first empty slot
+ for (s = 1; s < 256; s++) {
+ if (marks[s])
+ numSaveGames++;
}
- return i;
+ return numSaveGames;
}
#ifdef ENABLE_AGOS2
@@ -296,7 +290,7 @@ void AGOSEngine::userGame(bool load) {
const char *message1;
int i = 0, numSaveGames;
char *name;
- char buf[10];
+ memset(_saveBuf, 0, sizeof(_saveBuf));
numSaveGames = countSaveGames();
@@ -325,8 +319,8 @@ restart:
for (; *message1; message1++)
windowPutChar(window, *message1);
- memset(buf, 0, 10);
- name = buf;
+ memset(_saveBuf, 0, 10);
+ name = _saveBuf;
_saveGameNameLen = 0;
while (!shouldQuit()) {
@@ -384,9 +378,10 @@ restart:
_gameStoppedClock = getTime() - saveTime + _gameStoppedClock;
}
-void AGOSEngine_Elvira2::listSaveGames(char *dst) {
+void AGOSEngine_Elvira2::listSaveGames() {
Common::InSaveFile *in;
uint y, slot;
+ char *dst = _saveBuf;
const uint8 num = (getGameType() == GType_WW) ? 3 : 4;
@@ -469,7 +464,7 @@ void AGOSEngine_Elvira2::userGame(bool load) {
int i, numSaveGames;
char *name;
bool b;
- char buf[200];
+ memset(_saveBuf, 0, sizeof(_saveBuf));
_saveOrLoad = load;
@@ -485,28 +480,28 @@ void AGOSEngine_Elvira2::userGame(bool load) {
const uint8 num = (getGameType() == GType_WW) ? 3 : 4;
- listSaveGames(buf);
+ listSaveGames();
if (!load) {
WindowBlock *window = _windowArray[num];
int16 slot = -1;
- name = buf + 192;
+ name = _saveBuf + 192;
while (!shouldQuit()) {
windowPutChar(window, 128);
_saveLoadEdit = true;
- i = userGameGetKey(&b, buf, 128);
+ i = userGameGetKey(&b, 128);
if (b) {
if (i <= 223) {
if (!confirmOverWrite(window)) {
- listSaveGames(buf);
+ listSaveGames();
continue;
}
- if (!saveGame(_saveLoadRowCurPos + i, buf + i * 8))
+ if (!saveGame(_saveLoadRowCurPos + i, _saveBuf + i * 8))
fileError(_windowArray[num], true);
}
@@ -518,7 +513,7 @@ void AGOSEngine_Elvira2::userGame(bool load) {
slot = matchSaveGame(name, numSaveGames);
if (slot >= 0) {
if (!confirmOverWrite(window)) {
- listSaveGames(buf);
+ listSaveGames();
continue;
}
}
@@ -540,11 +535,11 @@ void AGOSEngine_Elvira2::userGame(bool load) {
if (slot < 0)
slot = numSaveGames;
- if (!saveGame(slot, buf + 192))
+ if (!saveGame(slot, _saveBuf + 192))
fileError(_windowArray[num], true);
}
} else {
- i = userGameGetKey(&b, buf, 128);
+ i = userGameGetKey(&b, 128);
if (i != 225) {
if (!loadGame(genSaveName(_saveLoadRowCurPos + i)))
fileError(_windowArray[num], false);
@@ -560,7 +555,7 @@ get_out:;
restartAnimation();
}
-int AGOSEngine_Elvira2::userGameGetKey(bool *b, char *buf, uint maxChar) {
+int AGOSEngine_Elvira2::userGameGetKey(bool *b, uint maxChar) {
HitArea *ha;
*b = true;
@@ -588,7 +583,7 @@ int AGOSEngine_Elvira2::userGameGetKey(bool *b, char *buf, uint maxChar) {
if (_saveLoadRowCurPos >= _numSaveGameRows)
_saveLoadRowCurPos = 1;
- listSaveGames(buf);
+ listSaveGames();
} else if (ha->id < 224) {
return ha->id - 200;
}
@@ -597,9 +592,10 @@ int AGOSEngine_Elvira2::userGameGetKey(bool *b, char *buf, uint maxChar) {
return 225;
}
-void AGOSEngine_Simon1::listSaveGames(char *dst) {
+void AGOSEngine_Simon1::listSaveGames() {
Common::InSaveFile *in;
uint16 i, slot, lastSlot;
+ char *dst = _saveBuf;
disableFileBoxes();
@@ -681,7 +677,7 @@ void AGOSEngine_Simon1::userGame(bool load) {
WindowBlock *window;
char *name;
bool b;
- char buf[108];
+ memset(_saveBuf, 0, sizeof(_saveBuf));
int maxChar = (_language == Common::HE_ISR) ? 155: 128;
_saveOrLoad = load;
@@ -704,7 +700,7 @@ void AGOSEngine_Simon1::userGame(bool load) {
_saveLoadEdit = false;
restart:;
- i = userGameGetKey(&b, buf, maxChar);
+ i = userGameGetKey(&b, maxChar);
if (i == 205)
goto get_out;
@@ -730,7 +726,7 @@ restart:;
}
window->textLength = 3;
- name = buf + i * 18;
+ name = _saveBuf + i * 18;
// now process entire savegame name to get correct x offset for cursor
_saveGameNameLen = 0;
@@ -763,7 +759,7 @@ restart:;
_saveLoadEdit = true;
- i = userGameGetKey(&b, buf, maxChar);
+ i = userGameGetKey(&b, maxChar);
if (b) {
if (i == 205)
@@ -814,7 +810,7 @@ restart:;
}
}
- if (!saveGame(_saveLoadRowCurPos + result, buf + result * 18))
+ if (!saveGame(_saveLoadRowCurPos + result, _saveBuf + result * 18))
fileError(_windowArray[5], true);
} else {
if (!loadGame(genSaveName(_saveLoadRowCurPos + i)))
@@ -827,12 +823,12 @@ get_out:;
_gameStoppedClock = getTime() - saveTime + _gameStoppedClock;
}
-int AGOSEngine_Simon1::userGameGetKey(bool *b, char *buf, uint maxChar) {
+int AGOSEngine_Simon1::userGameGetKey(bool *b, uint maxChar) {
HitArea *ha;
*b = true;
if (!_saveLoadEdit) {
- listSaveGames(buf);
+ listSaveGames();
}
_keyPressed.reset();
@@ -861,7 +857,7 @@ int AGOSEngine_Simon1::userGameGetKey(bool *b, char *buf, uint maxChar) {
_saveLoadRowCurPos -= 6;
_saveLoadEdit = false;
- listSaveGames(buf);
+ listSaveGames();
}
} else if (ha->id == 207) {
if (_saveDialogFlag) {
@@ -870,7 +866,7 @@ int AGOSEngine_Simon1::userGameGetKey(bool *b, char *buf, uint maxChar) {
_saveLoadRowCurPos = _numSaveGameRows;
_saveLoadEdit = false;
- listSaveGames(buf);
+ listSaveGames();
}
} else if (ha->id < 214) {
return ha->id - 208;
diff --git a/engines/agos/script.cpp b/engines/agos/script.cpp
index 1c36454278..6f809d9e2d 100644
--- a/engines/agos/script.cpp
+++ b/engines/agos/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -264,7 +264,7 @@ void AGOSEngine::o_add() {
uint var = getVarWrapper();
writeVariable(var, readVariable(var) + getVarOrWord());
- // WORKAROUND: The converation of the male in Vid-Phone Booth at Dave's Space Bar
+ // WORKAROUND: The conversation of the male in Vid-Phone Booth at Dave's Space Bar
// is based on variable 116, but stops due to a missing option (37).
if (getGameType() == GType_FF && _currentTable->id == 10538 && readVariable(116) == 37)
writeVariable(116, 38);
diff --git a/engines/agos/script_dp.cpp b/engines/agos/script_dp.cpp
index f51e15dc67..85ab308226 100644
--- a/engines/agos/script_dp.cpp
+++ b/engines/agos/script_dp.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/script_e1.cpp b/engines/agos/script_e1.cpp
index c7a2f5b0a2..a022335ebc 100644
--- a/engines/agos/script_e1.cpp
+++ b/engines/agos/script_e1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/script_e2.cpp b/engines/agos/script_e2.cpp
index 79a7e89a89..21b651ec12 100644
--- a/engines/agos/script_e2.cpp
+++ b/engines/agos/script_e2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/script_ff.cpp b/engines/agos/script_ff.cpp
index e2a4d0820f..e4fadcf360 100644
--- a/engines/agos/script_ff.cpp
+++ b/engines/agos/script_ff.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -243,7 +243,7 @@ void AGOSEngine_Feeble::setupOpcodes() {
/* 164 */
OPCODE(oe2_getDollar2),
OPCODE(off_isAdjNoun),
- OPCODE(oe2_b2Set),
+ OPCODE(off_b2Set),
OPCODE(oe2_b2Clear),
/* 168 */
OPCODE(oe2_b2Zero),
@@ -296,6 +296,39 @@ void AGOSEngine_Feeble::executeOpcode(int opcode) {
(this->*op) ();
}
+void AGOSEngine_Feeble::setLoyaltyRating(byte rating) {
+ // WORKAROUND: The 4CD version of The Feeble File is missing the parts
+ // of the script that set the loyalty rating. This approximates the
+ // script from the 2CD version. See bug #6525.
+
+ switch (rating) {
+ case 1:
+ // Kicking vending machine: Possibility of Undesirable Character Flaws
+ writeVariable(120, 1);
+ break;
+ case 2:
+ // Confessing: Confirmed Minor Character Flaws
+ writeVariable(120, 2);
+ break;
+ case 3:
+ // Being sent to Cygnus Alpha: Suspected Subversive Activity
+ writeVariable(120, 3);
+ break;
+ case 4:
+ // Escaping from Cygnus Alpha: Confirmed Subversive Activity
+ writeVariable(120, 4);
+ break;
+ case 5:
+ // Being brought before Filbert: Confirmed Treasonous Activity
+ writeVariable(120, 5);
+ break;
+ case 6:
+ // Arriving at rebel base: Freedom Fighters Operative
+ writeVariable(120, 6);
+ break;
+ }
+}
+
// -----------------------------------------------------------------------
// Feeble Files Opcodes
// -----------------------------------------------------------------------
@@ -467,6 +500,34 @@ void AGOSEngine_Feeble::off_isAdjNoun() {
setScriptCondition(false);
}
+void AGOSEngine_Feeble::off_b2Set() {
+ // 166: set bit2
+ uint bit = getVarOrByte();
+ _bitArrayTwo[bit / 16] |= (1 << (bit & 15));
+
+ if (getFeatures() & GF_BROKEN_FF_RATING) {
+ switch (bit) {
+ case 152:
+ setLoyaltyRating(1);
+ break;
+ case 153:
+ setLoyaltyRating(2);
+ break;
+ case 240:
+ setLoyaltyRating(3);
+ break;
+ case 251:
+ setLoyaltyRating(4);
+ break;
+ case 253:
+ setLoyaltyRating(6);
+ break;
+ default:
+ break;
+ }
+ }
+}
+
void AGOSEngine_Feeble::off_hyperLinkOn() {
// 171: oracle hyperlink on
hyperLinkOn(getVarOrWord());
@@ -565,6 +626,12 @@ void AGOSEngine_Feeble::off_loadVideo() {
assert(_moviePlayer);
_moviePlayer->load();
+
+ if (getFeatures() & GF_BROKEN_FF_RATING) {
+ if (strcmp((const char *)filename, "Statue1.smk") == 0) {
+ setLoyaltyRating(5);
+ }
+ }
}
void AGOSEngine_Feeble::off_playVideo() {
diff --git a/engines/agos/script_pn.cpp b/engines/agos/script_pn.cpp
index e98cd2795a..60948db35a 100644
--- a/engines/agos/script_pn.cpp
+++ b/engines/agos/script_pn.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/script_pp.cpp b/engines/agos/script_pp.cpp
index 0a599506b5..799b26fbc6 100644
--- a/engines/agos/script_pp.cpp
+++ b/engines/agos/script_pp.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/script_s1.cpp b/engines/agos/script_s1.cpp
index 03aad7ebb9..ec3de9bf94 100644
--- a/engines/agos/script_s1.cpp
+++ b/engines/agos/script_s1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/script_s2.cpp b/engines/agos/script_s2.cpp
index c35771f8ec..44552ecd8a 100644
--- a/engines/agos/script_s2.cpp
+++ b/engines/agos/script_s2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/script_ww.cpp b/engines/agos/script_ww.cpp
index 873f258743..aff3229f8e 100644
--- a/engines/agos/script_ww.cpp
+++ b/engines/agos/script_ww.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/sound.cpp b/engines/agos/sound.cpp
index a6a731ab24..812f46504f 100644
--- a/engines/agos/sound.cpp
+++ b/engines/agos/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -121,8 +121,14 @@ Common::SeekableReadStream *BaseSound::getSoundStream(uint sound) const {
int i = 1;
while (_offsets[sound + i] == _offsets[sound])
i++;
+ uint end;
+ if (_offsets[sound + i] > _offsets[sound]) {
+ end = _offsets[sound + i];
+ } else {
+ end = file->size();
+ }
- return new Common::SeekableSubReadStream(file, _offsets[sound], _offsets[sound + i], DisposeAfterUse::YES);
+ return new Common::SeekableSubReadStream(file, _offsets[sound], end, DisposeAfterUse::YES);
}
///////////////////////////////////////////////////////////////////////////////
@@ -190,7 +196,7 @@ bool LoopingAudioStream::endOfData() const {
#pragma mark -
static void convertVolume(int &vol) {
- // DirectSound was orginally used, which specifies volume
+ // DirectSound was originally used, which specifies volume
// and panning differently than ScummVM does, using a logarithmic scale
// rather than a linear one.
//
@@ -442,12 +448,16 @@ void Sound::loadVoiceFile(const GameSpecificSettings *gss) {
if (file.open("voices.idx")) {
int end = file.size();
_filenums = (uint16 *)malloc((end / 6 + 1) * 2);
- _offsets = (uint32 *)malloc((end / 6 + 1) * 4);
+ _offsets = (uint32 *)malloc((end / 6 + 1 + 1) * 4);
for (int i = 1; i <= end / 6; i++) {
_filenums[i] = file.readUint16BE();
_offsets[i] = file.readUint32BE();
}
+ // We need to add a terminator entry otherwise we get an out of
+ // bounds read when the offset table is accessed in
+ // BaseSound::getSoundStream.
+ _offsets[end / 6 + 1] = 0;
_hasVoiceFile = true;
return;
diff --git a/engines/agos/sound.h b/engines/agos/sound.h
index 8633fe2f70..5feb288b9d 100644
--- a/engines/agos/sound.h
+++ b/engines/agos/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/string.cpp b/engines/agos/string.cpp
index ee1b9df246..3eb0aca04d 100644
--- a/engines/agos/string.cpp
+++ b/engines/agos/string.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/string_pn.cpp b/engines/agos/string_pn.cpp
index 4d4e2be16a..7a364f3ea9 100644
--- a/engines/agos/string_pn.cpp
+++ b/engines/agos/string_pn.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/subroutine.cpp b/engines/agos/subroutine.cpp
index 7a84a20808..39bc468dea 100644
--- a/engines/agos/subroutine.cpp
+++ b/engines/agos/subroutine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/verb.cpp b/engines/agos/verb.cpp
index f5b57a01c8..fb3878381f 100644
--- a/engines/agos/verb.cpp
+++ b/engines/agos/verb.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -216,7 +216,14 @@ void AGOSEngine_Simon2::clearName() {
return;
}
- AGOSEngine_Simon1::clearName();
+ if (_currentVerbBox == _lastVerbOn)
+ return;
+
+ resetNameWindow();
+ _lastVerbOn = _currentVerbBox;
+
+ if (_currentVerbBox != NULL && !(_currentVerbBox->flags & kBFBoxDead))
+ printVerbOf(_currentVerbBox->id);
}
void AGOSEngine_Simon1::clearName() {
@@ -242,12 +249,18 @@ void AGOSEngine::clearName() {
resetNameWindow();
}
+static const byte convertVerbID[9] = {
+ 0, 1, 5, 11, 8, 7, 10, 3, 2
+};
+
void AGOSEngine::printVerbOf(uint hitarea_id) {
const char *txt;
const char * const *verb_names;
const char * const *verb_prep_names;
hitarea_id -= 101;
+ if (getGameType() == GType_SIMON2)
+ hitarea_id = convertVerbID[hitarea_id];
if (_showPreposition) {
switch (_language) {
diff --git a/engines/agos/verb_pn.cpp b/engines/agos/verb_pn.cpp
index 9dd0079b6d..53025822ba 100644
--- a/engines/agos/verb_pn.cpp
+++ b/engines/agos/verb_pn.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/vga.cpp b/engines/agos/vga.cpp
index cc5ede5f2c..c656c0167a 100644
--- a/engines/agos/vga.cpp
+++ b/engines/agos/vga.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/vga.h b/engines/agos/vga.h
index 5a5764532e..30b3a3b77a 100644
--- a/engines/agos/vga.h
+++ b/engines/agos/vga.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/vga_e2.cpp b/engines/agos/vga_e2.cpp
index 4eb337c687..bc26058640 100644
--- a/engines/agos/vga_e2.cpp
+++ b/engines/agos/vga_e2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/vga_ff.cpp b/engines/agos/vga_ff.cpp
index c8c9673506..52e30699b0 100644
--- a/engines/agos/vga_ff.cpp
+++ b/engines/agos/vga_ff.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/vga_pn.cpp b/engines/agos/vga_pn.cpp
index b7f80ebf91..306c41c71c 100644
--- a/engines/agos/vga_pn.cpp
+++ b/engines/agos/vga_pn.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/vga_s1.cpp b/engines/agos/vga_s1.cpp
index ef05063fc1..c5f0f7874d 100644
--- a/engines/agos/vga_s1.cpp
+++ b/engines/agos/vga_s1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/vga_s2.cpp b/engines/agos/vga_s2.cpp
index e0780b491a..0c716d06c4 100644
--- a/engines/agos/vga_s2.cpp
+++ b/engines/agos/vga_s2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/vga_ww.cpp b/engines/agos/vga_ww.cpp
index ca93fa9fec..5bf8f84551 100644
--- a/engines/agos/vga_ww.cpp
+++ b/engines/agos/vga_ww.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/window.cpp b/engines/agos/window.cpp
index 892df92554..de0b768d02 100644
--- a/engines/agos/window.cpp
+++ b/engines/agos/window.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/agos/zones.cpp b/engines/agos/zones.cpp
index 483b9949eb..1644213579 100644
--- a/engines/agos/zones.cpp
+++ b/engines/agos/zones.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -76,7 +76,7 @@ void AGOSEngine::loadZone(uint16 zoneNum, bool useError) {
return;
}
- // Loading order is important due to resource managment
+ // Loading order is important due to resource management
if (getPlatform() == Common::kPlatformAmiga && getGameType() == GType_WW &&
zoneTable[zoneNum] == 3) {
diff --git a/engines/avalanche/animation.cpp b/engines/avalanche/animation.cpp
index 639abe99b3..451b4a1c68 100644
--- a/engines/avalanche/animation.cpp
+++ b/engines/avalanche/animation.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -764,7 +764,7 @@ void Animation::catacombMove(byte ped) {
spr1->init(5, true); // ...Load Geida.
appearPed(1, geidaPed(ped));
spr1->_callEachStepFl = true;
- spr1->_eachStepProc = kProcGeida;
+ spr1->_eachStepProc = kProcFollowAvvy;
}
}
@@ -815,10 +815,9 @@ void Animation::callSpecial(uint16 which) {
}
break;
case 4: // This is the ghost room link.
- _vm->fadeOut();
- _sprites[0]->turn(kDirRight); // you'll see this after we get back from bootstrap
+ _sprites[0]->turn(kDirRight); // You'll see this after we get back.
_vm->_timer->addTimer(1, Timer::kProcGhostRoomPhew, Timer::kReasonGhostRoomPhew);
- //_vm->_enid->backToBootstrap(3); TODO: Replace it with proper ScummVM-friendly function(s)! Do not remove until then!
+ _vm->_ghostroom->run();
break;
case 5:
if (_vm->_friarWillTieYouUp) {
@@ -1122,7 +1121,7 @@ void Animation::spin(Direction dir, byte &tripnum) {
}
}
-void Animation::geidaProcs(byte tripnum) {
+void Animation::follow(byte tripnum) {
AnimationType *tripSpr = _sprites[tripnum];
AnimationType *avvy = _sprites[0];
@@ -1133,14 +1132,14 @@ void Animation::geidaProcs(byte tripnum) {
}
if (tripSpr->_y < (avvy->_y - 2)) {
- // Geida is further from the screen than Avvy.
+ // The following NPC is further from the screen than Avvy.
spin(kDirDown, tripnum);
tripSpr->_moveY = 1;
tripSpr->_moveX = 0;
takeAStep(tripnum);
return;
} else if (tripSpr->_y > (avvy->_y + 2)) {
- // Avvy is further from the screen than Geida.
+ // Avvy is further from the screen than the following NPC.
spin(kDirUp, tripnum);
tripSpr->_moveY = -1;
tripSpr->_moveX = 0;
@@ -1206,8 +1205,9 @@ void Animation::drawSprites() {
* @remarks Originally called 'trippancy_link'
*/
void Animation::animLink() {
- if (_vm->_menu->isActive() || _vm->_seeScroll)
+ if (_vm->_dropdown->isActive() || !_vm->_animationsEnabled)
return;
+
for (int16 i = 0; i < kSpriteNumbMax; i++) {
AnimationType *curSpr = _sprites[i];
if (curSpr->_quick && curSpr->_visible)
@@ -1236,8 +1236,8 @@ void Animation::animLink() {
case kProcGrabAvvy :
grabAvvy(i);
break;
- case kProcGeida :
- geidaProcs(i);
+ case kProcFollowAvvy :
+ follow(i);
break;
default:
break;
@@ -1330,7 +1330,7 @@ void Animation::handleMoveKey(const Common::Event &event) {
if (!_vm->_userMovesAvvy)
return;
- if (_vm->_menu->_activeMenuItem._activeNow)
+ if (_vm->_dropdown->_activeMenuItem._activeNow)
_vm->_parser->tryDropdown();
else {
switch (event.kbd.keycode) {
diff --git a/engines/avalanche/animation.h b/engines/avalanche/animation.h
index aa4e6482a4..d1ee4a3ebd 100644
--- a/engines/avalanche/animation.h
+++ b/engines/avalanche/animation.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -102,9 +102,8 @@ public:
kProcBackAndForth,
kProcFaceAvvy,
kProcArrow,
- kProcSpludwick, // Unused
kProcGrabAvvy,
- kProcGeida // Spludwick uses it as well for homing! TODO: Unify it with kProcSpludwick.
+ kProcFollowAvvy
};
AnimationType *_sprites[kSpriteNumbMax];
@@ -167,7 +166,7 @@ private:
// Movements for Homing NPCs: Spludwick and Geida.
void spin(Direction dir, byte &tripnum);
void takeAStep(byte &tripnum);
- void geidaProcs(byte tripnum);
+ void follow(byte tripnum);
void drawSprites();
};
diff --git a/engines/avalanche/avalanche.cpp b/engines/avalanche/avalanche.cpp
index a7e7be0ad3..6cfe4dfdb6 100644
--- a/engines/avalanche/avalanche.cpp
+++ b/engines/avalanche/avalanche.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -46,16 +46,18 @@ AvalancheEngine::AvalancheEngine(OSystem *syst, const AvalancheGameDescription *
_clock = nullptr;
_graphics = nullptr;
_parser = nullptr;
- _pingo = nullptr;
_dialogs = nullptr;
_background = nullptr;
_sequence = nullptr;
_timer = nullptr;
_animation = nullptr;
- _menu = nullptr;
+ _dropdown = nullptr;
_closing = nullptr;
_sound = nullptr;
_nim = nullptr;
+ _ghostroom = nullptr;
+ _help = nullptr;
+ _highscore = nullptr;
_platform = gd->desc.platform;
initVariables();
@@ -69,16 +71,18 @@ AvalancheEngine::~AvalancheEngine() {
delete _parser;
delete _clock;
- delete _pingo;
delete _dialogs;
delete _background;
delete _sequence;
delete _timer;
delete _animation;
- delete _menu;
+ delete _dropdown;
delete _closing;
delete _sound;
delete _nim;
+ delete _ghostroom;
+ delete _help;
+ delete _highscore;
for (int i = 0; i < 31; i++) {
for (int j = 0; j < 2; j++) {
@@ -140,7 +144,7 @@ void AvalancheEngine::initVariables() {
_letMeOut = false;
_thinks = 2;
_thinkThing = true;
- _seeScroll = false;
+ _animationsEnabled = true;
_currentMouse = 177;
_holdLeftMouse = false;
@@ -152,16 +156,18 @@ Common::ErrorCode AvalancheEngine::initialize() {
_parser = new Parser(this);
_clock = new Clock(this);
- _pingo = new Pingo(this);
_dialogs = new Dialogs(this);
_background = new Background(this);
_sequence = new Sequence(this);
_timer = new Timer(this);
_animation = new Animation(this);
- _menu = new Menu(this);
+ _dropdown = new DropDownMenu(this);
_closing = new Closing(this);
_sound = new SoundHandler(this);
_nim = new Nim(this);
+ _ghostroom = new GhostRoom(this);
+ _help = new Help(this);
+ _highscore = new HighScore(this);
_graphics->init();
_dialogs->init();
@@ -197,7 +203,7 @@ void AvalancheEngine::synchronize(Common::Serializer &sz) {
sz.syncAsByte(_carryNum);
for (int i = 0; i < kObjectNum; i++)
sz.syncAsByte(_objects[i]);
- sz.syncAsSint16LE(_dnascore);
+ sz.syncAsSint16LE(_score);
sz.syncAsSint32LE(_money);
sz.syncAsByte(_room);
if (sz.isSaving())
@@ -273,9 +279,9 @@ void AvalancheEngine::synchronize(Common::Serializer &sz) {
if (!_favoriteSong.empty())
_favoriteSong.clear();
- uint16 favourite_songSize = 0;
- sz.syncAsUint16LE(favourite_songSize);
- for (uint16 i = 0; i < favourite_songSize; i++) {
+ uint16 favoriteSongSize = 0;
+ sz.syncAsUint16LE(favoriteSongSize);
+ for (uint16 i = 0; i < favoriteSongSize; i++) {
sz.syncAsByte(actChr);
_favoriteSong += actChr;
}
@@ -333,8 +339,8 @@ void AvalancheEngine::synchronize(Common::Serializer &sz) {
}
-bool AvalancheEngine::canSaveGameStateCurrently() { // TODO: Refine these!!!
- return (!_seeScroll && _alive);
+bool AvalancheEngine::canSaveGameStateCurrently() {
+ return (_animationsEnabled && _alive);
}
Common::Error AvalancheEngine::saveGameState(int slot, const Common::String &desc) {
@@ -378,8 +384,8 @@ Common::String AvalancheEngine::getSaveFileName(const int slot) {
return Common::String::format("%s.%03d", _targetName.c_str(), slot);
}
-bool AvalancheEngine::canLoadGameStateCurrently() { // TODO: Refine these!!!
- return (!_seeScroll);
+bool AvalancheEngine::canLoadGameStateCurrently() {
+ return (_animationsEnabled);
}
Common::Error AvalancheEngine::loadGameState(int slot) {
@@ -429,7 +435,7 @@ bool AvalancheEngine::loadGame(const int16 slot) {
_isLoaded = true;
- _seeScroll = true; // This prevents display of the new sprites before the new picture is loaded.
+ _animationsEnabled = false;
if (_holdTheDawn) {
_holdTheDawn = false;
@@ -438,7 +444,7 @@ bool AvalancheEngine::loadGame(const int16 slot) {
_background->release();
minorRedraw();
- _menu->setup();
+ _dropdown->setup();
setRoom(kPeopleAvalot, _room);
_alive = true;
refreshObjectList();
diff --git a/engines/avalanche/avalanche.h b/engines/avalanche/avalanche.h
index fe13fa8d9e..6eb5e675cc 100644
--- a/engines/avalanche/avalanche.h
+++ b/engines/avalanche/avalanche.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -32,17 +32,21 @@
#include "avalanche/graphics.h"
#include "avalanche/parser.h"
#include "avalanche/avalot.h"
-#include "avalanche/pingo.h"
#include "avalanche/dialogs.h"
#include "avalanche/background.h"
#include "avalanche/sequence.h"
#include "avalanche/timer.h"
#include "avalanche/animation.h"
-#include "avalanche/menu.h"
+#include "avalanche/dropdown.h"
#include "avalanche/closing.h"
#include "avalanche/sound.h"
#include "avalanche/nim.h"
#include "avalanche/clock.h"
+#include "avalanche/ghostroom.h"
+#include "avalanche/help.h"
+#include "avalanche/shootemup.h"
+#include "avalanche/mainmenu.h"
+#include "avalanche/highscore.h"
#include "common/serializer.h"
@@ -77,16 +81,18 @@ public:
Clock *_clock;
GraphicManager *_graphics;
Parser *_parser;
- Pingo *_pingo;
Dialogs *_dialogs;
Background *_background;
Sequence *_sequence;
Timer *_timer;
Animation *_animation;
- Menu *_menu;
+ DropDownMenu *_dropdown;
Closing *_closing;
SoundHandler *_sound;
Nim *_nim;
+ GhostRoom *_ghostroom;
+ Help *_help;
+ HighScore *_highscore;
OSystem *_system;
@@ -146,7 +152,7 @@ public:
// Former DNA structure
byte _carryNum; // How many objects you're carrying...
bool _objects[kObjectNum]; // ...and which ones they are.
- int16 _dnascore; // your score, of course
+ int16 _score; // your score, of course
int32 _money; // your current amount of dosh
Room _room; // your current room
bool _wonNim; // Have you *won* Nim? (That's harder.)
@@ -206,7 +212,7 @@ public:
bool _letMeOut;
byte _thinks;
bool _thinkThing;
- bool _seeScroll; // TODO: maybe this means we're interacting with the toolbar / a scroll?
+ bool _animationsEnabled; // If set to TRUE, it stops the animation system working. This prevents display of the new sprites before the new picture is loaded or during the display of a scroll. Original name: seescroll.
char _objectList[10];
// Called .free() for them in ~Gyro().
@@ -232,6 +238,7 @@ public:
bool _isLoaded; // Is it a loaded gamestate?
void callVerb(VerbCode id);
+ void loadBackground(byte num);
void loadRoom(byte num);
void thinkAbout(byte object, bool type); // Hey!!! Get it and put it!!!
void incScore(byte num); // Add on no. of points
@@ -244,9 +251,9 @@ public:
void gameOver();
uint16 bearing(byte whichPed); // Returns the bearing from ped 'whichped' to Avvy, in degrees.
- // There are two kinds of redraw: Major and Minor. Minor is what happens when you load a game, etc. Major redraws EVERYTHING.
+ // There are two kinds of redraw: Major and Minor. Minor is what happens when you load a game, etc.
+ // Major was replaced with GraphicManager::refreshScreen(), it redraws EVERYTHING.
void minorRedraw();
- void majorRedraw();
void spriteRun();
diff --git a/engines/avalanche/avalot.cpp b/engines/avalanche/avalot.cpp
index 6648e8d961..c8f5599687 100644
--- a/engines/avalanche/avalot.cpp
+++ b/engines/avalanche/avalot.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -190,7 +190,6 @@ void AvalancheEngine::setup() {
_animation->resetAnims();
- drawToolbar();
_dialogs->setReadyLight(2);
fadeIn();
@@ -199,7 +198,11 @@ void AvalancheEngine::setup() {
_animation->_sprites[0]->_speedX = kWalk;
_animation->updateSpeed();
- _menu->init();
+ _dropdown->init();
+
+ _graphics->drawSoundLight(_sound->_soundFl);
+
+ drawToolbar();
int16 loadSlot = ConfMan.instance().getInt("save_slot");
if (loadSlot >= 0) {
@@ -208,10 +211,15 @@ void AvalancheEngine::setup() {
loadGame(loadSlot);
} else {
+ // We don't need the MainMenu during the whole game, only at the beginning of it.
+ MainMenu *mainmenu = new MainMenu(this);
+ mainmenu->run();
+ delete mainmenu;
+ if (_letMeOut)
+ return;
+
newGame();
- _soundFx = !_soundFx;
- fxToggle();
thinkAbout(kObjectMoney, kThing);
_dialogs->displayScrollChain('Q', 83); // Info on the game, etc.
@@ -221,13 +229,13 @@ void AvalancheEngine::setup() {
void AvalancheEngine::runAvalot() {
setup();
- do {
+ while (!_letMeOut && !shouldQuit()) {
uint32 beginLoop = _system->getMillis();
updateEvents(); // The event handler.
_clock->update();
- _menu->update();
+ _dropdown->update();
_background->update();
_animation->animLink();
checkClick();
@@ -239,9 +247,7 @@ void AvalancheEngine::runAvalot() {
uint32 delay = _system->getMillis() - beginLoop;
if (delay <= 55)
_system->delayMillis(55 - delay); // Replaces slowdown(); 55 comes from 18.2 Hz (B Flight).
- } while (!_letMeOut && !shouldQuit());
-
- warning("STUB: run()");
+ };
_closing->exitGame();
}
@@ -408,9 +414,7 @@ void AvalancheEngine::loadAlso(byte num) {
}
}
-void AvalancheEngine::loadRoom(byte num) {
- CursorMan.showMouse(false);
-
+void AvalancheEngine::loadBackground(byte num) {
Common::String filename = Common::String::format("place%d.avd", num);
Common::File file;
if (!file.open(filename))
@@ -432,9 +436,15 @@ void AvalancheEngine::loadRoom(byte num) {
_graphics->refreshBackground();
file.close();
+}
+
+void AvalancheEngine::loadRoom(byte num) {
+ CursorMan.showMouse(false);
+ loadBackground(num);
loadAlso(num);
- _background->load(num);
+ _background->loadSprites(num);
+
CursorMan.showMouse(true);
}
@@ -452,7 +462,7 @@ void AvalancheEngine::findPeople(byte room) {
void AvalancheEngine::exitRoom(byte x) {
_sound->stopSound();
_background->release();
- _seeScroll = true; // This stops the trippancy system working over the length of this procedure.
+ _animationsEnabled = false;
switch (x) {
case kRoomSpludwicks:
@@ -475,7 +485,7 @@ void AvalancheEngine::exitRoom(byte x) {
}
_interrogation = 0; // Leaving the room cancels all the questions automatically.
- _seeScroll = false; // Now it can work again!
+ _animationsEnabled = true;
_lastRoom = _room;
if (_room != kRoomMap)
@@ -488,7 +498,7 @@ void AvalancheEngine::exitRoom(byte x) {
* @remarks Originally called 'new_town'
*/
void AvalancheEngine::enterNewTown() {
- _menu->setup();
+ _dropdown->setup();
switch (_room) {
case kRoomOutsideNottsPub: // Entry into Nottingham.
@@ -522,11 +532,11 @@ void AvalancheEngine::putGeidaAt(byte whichPed, byte ped) {
spr1->init(5, false); // load Geida
_animation->appearPed(1, whichPed);
spr1->_callEachStepFl = true;
- spr1->_eachStepProc = Animation::kProcGeida;
+ spr1->_eachStepProc = Animation::kProcFollowAvvy;
}
void AvalancheEngine::enterRoom(Room roomId, byte ped) {
- _seeScroll = true; // This stops the trippancy system working over the length of this procedure.
+ _animationsEnabled = false;
findPeople(roomId);
_room = roomId;
@@ -607,7 +617,7 @@ void AvalancheEngine::enterRoom(Room roomId, byte ped) {
}
spr1->_callEachStepFl = true;
- spr1->_eachStepProc = Animation::kProcGeida;
+ spr1->_eachStepProc = Animation::kProcFollowAvvy;
} else
_whereIs[kPeopleSpludwick - 150] = kRoomNowhere;
break;
@@ -910,7 +920,7 @@ void AvalancheEngine::enterRoom(Room roomId, byte ped) {
break;
}
- _seeScroll = false; // Now it can work again!
+ _animationsEnabled = true;
}
void AvalancheEngine::thinkAbout(byte object, bool type) {
@@ -945,7 +955,7 @@ void AvalancheEngine::drawToolbar() {
}
void AvalancheEngine::drawScore() {
- uint16 score = _dnascore;
+ uint16 score = _score;
int8 numbers[3] = {0, 0, 0};
for (int i = 0; i < 2; i++) {
byte divisor = 1;
@@ -971,15 +981,14 @@ void AvalancheEngine::drawScore() {
void AvalancheEngine::incScore(byte num) {
for (int i = 1; i <= num; i++) {
- _dnascore++;
+ _score++;
if (_soundFx) {
for (int j = 1; j <= 97; j++)
- // Length os 2 is a guess, the original doesn't have a delay specified
- _sound->playNote(177 + _dnascore * 3, 2);
+ // Length of 2 is a guess, the original doesn't have a delay specified
+ _sound->playNote(177 + _score * 3, 2);
}
}
- warning("STUB: points()");
drawScore();
}
@@ -1104,7 +1113,7 @@ void AvalancheEngine::checkClick() {
_graphics->loadMouse(kCurIBeam); //I-beam
else if ((340 <= cursorPos.y) && (cursorPos.y <= 399))
_graphics->loadMouse(kCurScrewDriver); // screwdriver
- else if (!_menu->isActive()) { // Dropdown can handle its own pointers.
+ else if (!_dropdown->isActive()) { // Dropdown can handle its own pointers.
if (_holdLeftMouse) {
_graphics->loadMouse(kCurCrosshair); // Mark's crosshairs
guideAvvy(cursorPos); // Normally, if you click on the picture, you're guiding Avvy around.
@@ -1115,7 +1124,7 @@ void AvalancheEngine::checkClick() {
if (_holdLeftMouse) {
if ((0 <= cursorPos.y) && (cursorPos.y <= 21)) { // Click on the dropdown menu.
if (_dropsOk)
- _menu->update();
+ _dropdown->update();
} else if ((317 <= cursorPos.y) && (cursorPos.y <= 339)) { // Click on the command line.
_parser->_inputTextPos = (cursorPos.x - 23) / 8;
if (_parser->_inputTextPos > _parser->_inputText.size() + 1)
@@ -1155,7 +1164,7 @@ void AvalancheEngine::checkClick() {
_animation->_sprites[0]->_speedX = kRun;
_animation->updateSpeed();
} else if ((396 <= cursorPos.x) && (cursorPos.x <= 483))
- fxToggle();
+ _sound->toggleSound();
else if ((535 <= cursorPos.x) && (cursorPos.x <= 640))
_mouseText.insertChar(kControlNewLine, 0);
} else if (!_dropsOk)
@@ -1164,7 +1173,14 @@ void AvalancheEngine::checkClick() {
}
void AvalancheEngine::errorLed() {
- warning("STUB: errorled()");
+ _dialogs->setReadyLight(0);
+ _graphics->drawErrorLight(true);
+ for (int i = 177; i >= 1; i--) {
+ _sound->playNote(177 + (i * 177177) / 999, 1);
+ _system->delayMillis(1);
+ }
+ _graphics->drawErrorLight(false);
+ _dialogs->setReadyLight(2);
}
/**
@@ -1274,10 +1290,6 @@ void AvalancheEngine::minorRedraw() {
fadeIn();
}
-void AvalancheEngine::majorRedraw() {
- _graphics->refreshScreen();
-}
-
uint16 AvalancheEngine::bearing(byte whichPed) {
AnimationType *avvy = _animation->_sprites[0];
PedType *curPed = &_peds[whichPed];
@@ -1321,7 +1333,7 @@ void AvalancheEngine::resetVariables() {
for (int i = 0; i < kObjectNum; i++)
_objects[i] = false;
- _dnascore = 0;
+ _score = 0;
_money = 0;
_room = kRoomNowhere;
_saveNum = 0;
@@ -1394,7 +1406,7 @@ void AvalancheEngine::resetAllVariables() {
_animation->resetVariables();
_sequence->resetVariables();
_background->resetVariables();
- _menu->resetVariables();
+ _dropdown->resetVariables();
_timer->resetVariables();
}
@@ -1427,7 +1439,7 @@ void AvalancheEngine::newGame() {
_thinkThing = true;
_thinks = 2;
refreshObjectList();
- _seeScroll = false;
+ _animationsEnabled = true;
avvy->appear(300, 117, kDirRight); // Needed to initialize Avalot.
//for (gd = 0; gd <= 30; gd++) for (gm = 0; gm <= 1; gm++) also[gd][gm] = nil;
@@ -1445,7 +1457,7 @@ void AvalancheEngine::newGame() {
enterRoom(kRoomYours, 1);
avvy->_visible = false;
drawScore();
- _menu->setup();
+ _dropdown->setup();
_clock->update();
spriteRun();
}
diff --git a/engines/avalanche/avalot.h b/engines/avalanche/avalot.h
index 9afb4a7b63..04b945fd20 100644
--- a/engines/avalanche/avalot.h
+++ b/engines/avalanche/avalot.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/background.cpp b/engines/avalanche/background.cpp
index 5d168a20af..f1ba659a55 100644
--- a/engines/avalanche/background.cpp
+++ b/engines/avalanche/background.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -48,7 +48,7 @@ Background::~Background() {
* @remarks Originally called 'pics_link'
*/
void Background::update() {
- if (_vm->_menu->isActive())
+ if (_vm->_dropdown->isActive())
return; // No animation when the menus are up.
switch (_vm->_room) {
@@ -261,7 +261,7 @@ void Background::update() {
}
}
-void Background::load(byte number) {
+void Background::loadSprites(byte number) {
Common::File f;
_filename = _filename.format("chunk%d.avd", number);
if (!f.open(_filename))
@@ -279,24 +279,24 @@ void Background::load(byte number) {
sprite._type = (PictureType)(f.readByte());
sprite._x = f.readSint16LE();
sprite._y = f.readSint16LE();
- sprite._xl = f.readSint16LE();
- sprite._yl = f.readSint16LE();
+ sprite._width = f.readSint16LE();
+ sprite._height = f.readSint16LE();
sprite._size = f.readSint32LE();
bool natural = f.readByte();
bool memorize = f.readByte();
if (memorize) {
_sprites[i]._x = sprite._x;
- _sprites[i]._xl = sprite._xl;
+ _sprites[i]._width = sprite._width;
_sprites[i]._y = sprite._y;
- _sprites[i]._yl = sprite._yl;
+ _sprites[i]._height = sprite._height;
_sprites[i]._type = sprite._type;
if (natural)
_vm->_graphics->getNaturalPicture(_sprites[i]);
else {
_sprites[i]._size = sprite._size;
- _sprites[i]._picture = _vm->_graphics->loadPictureRaw(f, _sprites[i]._xl * 8, _sprites[i]._yl + 1);
+ _sprites[i]._picture = _vm->_graphics->loadPictureRaw(f, _sprites[i]._width * 8, _sprites[i]._height + 1);
}
} else
_sprites[i]._x = kOnDisk;
@@ -335,11 +335,11 @@ void Background::draw(int16 destX, int16 destY, byte sprId) {
sprite._type = (PictureType)(f.readByte());
sprite._x = f.readSint16LE();
sprite._y = f.readSint16LE();
- sprite._xl = f.readSint16LE();
- sprite._yl = f.readSint16LE();
+ sprite._width = f.readSint16LE();
+ sprite._height = f.readSint16LE();
sprite._size = f.readSint32LE();
f.skip(2); // Natural and Memorize are used in Load()
- sprite._picture = _vm->_graphics->loadPictureRaw(f, sprite._xl * 8, sprite._yl + 1);
+ sprite._picture = _vm->_graphics->loadPictureRaw(f, sprite._width * 8, sprite._height + 1);
if (destX < 0) {
destX = sprite._x * 8;
diff --git a/engines/avalanche/background.h b/engines/avalanche/background.h
index 34d7a9a2cc..e994d9eae9 100644
--- a/engines/avalanche/background.h
+++ b/engines/avalanche/background.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -40,7 +40,7 @@ enum PictureType {kEga, kBgi, kNaturalImage};
struct SpriteType {
PictureType _type;
int16 _x, _y;
- int16 _xl, _yl;
+ int16 _width, _height;
int32 _size;
Graphics::Surface _picture;
};
@@ -51,7 +51,7 @@ public:
~Background();
void update();
- void load(byte number);
+ void loadSprites(byte number);
void release();
// Setting the destination to negative coordinates means the picture should be drawn to it's original position.
diff --git a/engines/avalanche/clock.cpp b/engines/avalanche/clock.cpp
index 1c2c50c3bf..6d398d9921 100644
--- a/engines/avalanche/clock.cpp
+++ b/engines/avalanche/clock.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
/*
* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
diff --git a/engines/avalanche/clock.h b/engines/avalanche/clock.h
index 68e8e119f0..85ea508a80 100644
--- a/engines/avalanche/clock.h
+++ b/engines/avalanche/clock.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
/*
* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
diff --git a/engines/avalanche/closing.cpp b/engines/avalanche/closing.cpp
index 1cb2e84218..552b71b563 100644
--- a/engines/avalanche/closing.cpp
+++ b/engines/avalanche/closing.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/closing.h b/engines/avalanche/closing.h
index 25217e347e..6e65deb310 100644
--- a/engines/avalanche/closing.h
+++ b/engines/avalanche/closing.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/console.cpp b/engines/avalanche/console.cpp
index e4b52116e4..29ae5cf9c3 100644
--- a/engines/avalanche/console.cpp
+++ b/engines/avalanche/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/console.h b/engines/avalanche/console.h
index 166515d913..b5b5fb63fc 100644
--- a/engines/avalanche/console.h
+++ b/engines/avalanche/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/detection.cpp b/engines/avalanche/detection.cpp
index 5f4f03a78b..028f167e70 100644
--- a/engines/avalanche/detection.cpp
+++ b/engines/avalanche/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/dialogs.cpp b/engines/avalanche/dialogs.cpp
index 2174df3580..e843d17c5b 100644
--- a/engines/avalanche/dialogs.cpp
+++ b/engines/avalanche/dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -93,6 +93,7 @@ void Dialogs::setReadyLight(byte state) {
if (_vm->_ledStatus == state)
return; // Already like that!
+ // TODO: Implement different patterns for green color.
Color color = kColorBlack;
switch (state) {
case 0:
@@ -104,9 +105,7 @@ void Dialogs::setReadyLight(byte state) {
color = kColorGreen;
break; // Hit a key
}
- warning("STUB: Dialogs::setReadyLight()");
-
- CursorMan.showMouse(false);
+
_vm->_graphics->drawReadyLight(color);
CursorMan.showMouse(true);
_vm->_ledStatus = state;
@@ -158,7 +157,7 @@ void Dialogs::scrollModeNormal() {
Common::String e = "(c) 1994";
setReadyLight(3);
- _vm->_seeScroll = true;
+ _vm->_animationsEnabled = false;
_vm->_graphics->loadMouse(kCurFletch);
_vm->_graphics->saveScreen();
@@ -175,7 +174,8 @@ void Dialogs::scrollModeNormal() {
(event.kbd.keycode == Common::KEYCODE_PLUS)))) {
escape = true;
break;
- }
+ } else if (event.type == Common::EVENT_KEYDOWN)
+ _vm->errorLed();
}
}
@@ -216,10 +216,8 @@ void Dialogs::scrollModeNormal() {
#endif
setReadyLight(0);
- _vm->_seeScroll = false;
+ _vm->_animationsEnabled = true;
_vm->_holdLeftMouse = false; // Used in Lucerna::checkclick().
-
- warning("STUB: Scrolls::scrollModeNormal()");
}
/**
@@ -290,7 +288,7 @@ bool Dialogs::theyMatch(TuneType &played) {
*/
void Dialogs::scrollModeMusic() {
setReadyLight(3);
- _vm->_seeScroll = true;
+ _vm->_animationsEnabled = false;
CursorMan.showMouse(false);
_vm->_graphics->loadMouse(kCurFletch);
@@ -299,7 +297,7 @@ void Dialogs::scrollModeMusic() {
played[i] = kPitchInvalid;
int8 lastOne = -1, thisOne = -1; // Invalid values.
- _vm->_seeScroll = true;
+ _vm->_animationsEnabled = false;
_vm->_graphics->saveScreen();
_vm->_graphics->showScroll();
@@ -363,6 +361,7 @@ void Dialogs::scrollModeMusic() {
value = 11;
break;
default:
+ error("cannot happen");
break;
}
@@ -392,7 +391,7 @@ void Dialogs::scrollModeMusic() {
_vm->_graphics->restoreScreen();
_vm->_graphics->removeBackup();
- _vm->_seeScroll = false;
+ _vm->_animationsEnabled = true;
CursorMan.showMouse(true);
}
@@ -455,7 +454,7 @@ void Dialogs::drawScroll(DialogFunctionType modeFunc) {
mx -= lx;
my -= ly + 2;
- bool centre = false;
+ bool center = false;
byte iconIndent = 0;
switch (_useIcon) {
@@ -481,11 +480,11 @@ void Dialogs::drawScroll(DialogFunctionType modeFunc) {
if (!_scroll[i].empty())
switch (_scroll[i][_scroll[i].size() - 1]) {
case kControlCenter:
- centre = true;
+ center = true;
_scroll[i].deleteLastChar();
break;
case kControlLeftJustified:
- centre = false;
+ center = false;
_scroll[i].deleteLastChar();
break;
case kControlQuestion:
@@ -497,7 +496,7 @@ void Dialogs::drawScroll(DialogFunctionType modeFunc) {
break;
}
- if (centre)
+ if (center)
say(320 - _scroll[i].size() * 4 + iconIndent, my, _scroll[i]);
else
say(mx + iconIndent, my, _scroll[i]);
@@ -645,9 +644,6 @@ void Dialogs::solidify(byte n) {
* 'calldriver' and 'display' by using Common::String instead of a private buffer.
*/
void Dialogs::displayText(Common::String text) {
-// bool was_virtual; // Was the mouse cursor virtual on entry to this proc?
- warning("STUB: Scrolls::calldrivers()");
-
_vm->_sound->stopSound();
setReadyLight(0);
@@ -822,6 +818,8 @@ void Dialogs::displayText(Common::String text) {
}
}
}
+
+ setReadyLight(2);
}
void Dialogs::setTalkPos(int16 x, int16 y) {
diff --git a/engines/avalanche/dialogs.h b/engines/avalanche/dialogs.h
index defd152db5..4b50a61732 100644
--- a/engines/avalanche/dialogs.h
+++ b/engines/avalanche/dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/menu.cpp b/engines/avalanche/dropdown.cpp
index c3fa709ee4..97adfc2581 100644
--- a/engines/avalanche/menu.cpp
+++ b/engines/avalanche/dropdown.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -28,42 +28,42 @@
/* Original name: DROPDOWN A customized version of Oopmenu (qv). */
#include "avalanche/avalanche.h"
-#include "avalanche/menu.h"
+#include "avalanche/dropdown.h"
namespace Avalanche {
-void HeadType::init(char trig, char altTrig, Common::String title, byte pos, MenuFunc setupFunc, MenuFunc chooseFunc, Menu *menu) {
+void HeadType::init(char trig, char altTrig, Common::String title, byte pos, MenuFunc setupFunc, MenuFunc chooseFunc, DropDownMenu *menu) {
_trigger = trig;
_altTrigger = altTrig;
_title = title;
_position = pos;
- _xpos = _position * _menu->kSpacing + _menu->kIndent;
- _xright = (_position + 1) * _menu->kSpacing + _menu->kIndent;
+ _xpos = _position * _dropdown->kSpacing + _dropdown->kIndent;
+ _xright = (_position + 1) * _dropdown->kSpacing + _dropdown->kIndent;
_setupFunc = setupFunc;
_chooseFunc = chooseFunc;
- _menu = menu;
+ _dropdown = menu;
}
void HeadType::draw() {
CursorMan.showMouse(false);
- _menu->drawMenuText(_xpos, 1, _trigger, _title, true, false);
+ _dropdown->drawMenuText(_xpos, 1, _trigger, _title, true, false);
CursorMan.showMouse(true);
}
void HeadType::highlight() {
CursorMan.showMouse(false);
- _menu->_vm->_sound->stopSound();
- _menu->drawMenuText(_xpos, 1, _trigger, _title, true, true);
+ _dropdown->_vm->_sound->stopSound();
+ _dropdown->drawMenuText(_xpos, 1, _trigger, _title, true, true);
- _menu->_activeMenuItem._left = _xpos;
- _menu->_activeMenuItem._activeNow = true;
- _menu->_activeMenuItem._activeNum = _position;
- _menu->_menuActive = true;
+ _dropdown->_activeMenuItem._left = _xpos;
+ _dropdown->_activeMenuItem._activeNow = true;
+ _dropdown->_activeMenuItem._activeNum = _position;
+ _dropdown->_menuActive = true;
// Force reload and redraw of cursor.
- _menu->_vm->_currentMouse = 177;
+ _dropdown->_vm->_currentMouse = 177;
}
@@ -73,12 +73,12 @@ bool HeadType::parseAltTrigger(char key) {
return false;
}
-void MenuItem::init(Menu *menu) {
- _menu = menu;
+void MenuItem::init(DropDownMenu *menu) {
+ _dropdown = menu;
_activeNow = false;
_activeNum = 1;
- _menu->_menuActive = false;
+ _dropdown->_menuActive = false;
}
void MenuItem::reset() {
@@ -113,8 +113,8 @@ void MenuItem::displayOption(byte y, bool highlit) {
else
backgroundColor = kColorLightgray;
- _menu->_vm->_graphics->drawMenuBlock((_flx1 + 1) * 8, 3 + (y + 1) * 10, (_flx2 + 1) * 8, 13 + (y + 1) * 10, backgroundColor);
- _menu->drawMenuText(_left, 4 + (y + 1) * 10, _options[y]._trigger, text, _options[y]._valid, highlit);
+ _dropdown->_vm->_graphics->drawMenuBlock((_flx1 + 1) * 8, 3 + (y + 1) * 10, (_flx2 + 1) * 8, 13 + (y + 1) * 10, backgroundColor);
+ _dropdown->drawMenuText(_left, 4 + (y + 1) * 10, _options[y]._trigger, text, _options[y]._valid, highlit);
}
void MenuItem::display() {
@@ -125,15 +125,15 @@ void MenuItem::display() {
_flx2 = _left + _width;
_fly = 15 + _optionNum * 10;
_activeNow = true;
- _menu->_menuActive = true;
+ _dropdown->_menuActive = true;
- _menu->_vm->_graphics->drawMenuItem((_flx1 + 1) * 8, 12, (_flx2 + 1) * 8, _fly);
+ _dropdown->_vm->_graphics->drawMenuItem((_flx1 + 1) * 8, 12, (_flx2 + 1) * 8, _fly);
displayOption(0, true);
for (int y = 1; y < _optionNum; y++)
displayOption(y, false);
- _menu->_vm->_currentMouse = 177;
+ _dropdown->_vm->_currentMouse = 177;
CursorMan.showMouse(true); // 4 = fletch
}
@@ -141,12 +141,12 @@ void MenuItem::display() {
void MenuItem::wipe() {
CursorMan.showMouse(false);
- _menu->drawMenuText(_menu->_menuBar._menuItems[_menu->_activeMenuItem._activeNum]._xpos, 1,
- _menu->_menuBar._menuItems[_menu->_activeMenuItem._activeNum]._trigger,
- _menu->_menuBar._menuItems[_menu->_activeMenuItem._activeNum]._title, true, false);
+ _dropdown->drawMenuText(_dropdown->_menuBar._menuItems[_dropdown->_activeMenuItem._activeNum]._xpos, 1,
+ _dropdown->_menuBar._menuItems[_dropdown->_activeMenuItem._activeNum]._trigger,
+ _dropdown->_menuBar._menuItems[_dropdown->_activeMenuItem._activeNum]._title, true, false);
_activeNow = false;
- _menu->_menuActive = false;
+ _dropdown->_menuActive = false;
_firstlix = false;
CursorMan.showMouse(true);
@@ -191,7 +191,7 @@ void MenuItem::select(byte which) {
if (_choiceNum > _optionNum)
_choiceNum = 0; // Off the top, I suppose.
- (_menu->*_menu->_menuBar._menuItems[_activeNum]._chooseFunc)();
+ (_dropdown->*_dropdown->_menuBar._menuItems[_activeNum]._chooseFunc)();
}
void MenuItem::parseKey(char c) {
@@ -204,34 +204,34 @@ void MenuItem::parseKey(char c) {
}
}
if (!found)
- _menu->_vm->_sound->blip();
+ _dropdown->_vm->_sound->blip();
}
MenuBar::MenuBar() {
_menuNum = 0;
- _menu = nullptr;
+ _dropdown = nullptr;
}
-void MenuBar::init(Menu *menu) {
- _menu = menu;
+void MenuBar::init(DropDownMenu *menu) {
+ _dropdown = menu;
_menuNum = 0;
}
void MenuBar::createMenuItem(char trig, Common::String title, char altTrig, MenuFunc setupFunc, MenuFunc chooseFunc) {
- _menuItems[_menuNum].init(trig, altTrig, title, _menuNum, setupFunc, chooseFunc, _menu);
+ _menuItems[_menuNum].init(trig, altTrig, title, _menuNum, setupFunc, chooseFunc, _dropdown);
_menuNum++;
}
void MenuBar::draw() {
- _menu->_vm->_graphics->drawMenuBar(kMenuBackgroundColor);
+ _dropdown->_vm->_graphics->drawMenuBar(kMenuBackgroundColor);
- byte savecp = _menu->_vm->_cp;
- _menu->_vm->_cp = 3;
+ byte savecp = _dropdown->_vm->_cp;
+ _dropdown->_vm->_cp = 3;
for (int i = 0; i < _menuNum; i++)
_menuItems[i].draw();
- _menu->_vm->_cp = savecp;
+ _dropdown->_vm->_cp = savecp;
}
void MenuBar::parseAltTrigger(char c) {
@@ -244,13 +244,13 @@ void MenuBar::parseAltTrigger(char c) {
}
void MenuBar::setupMenuItem(byte which) {
- if (_menu->_activeMenuItem._activeNow) {
- _menu->_activeMenuItem.wipe(); // Get rid of menu.
- if (_menu->_activeMenuItem._activeNum == _menuItems[which]._position)
+ if (_dropdown->_activeMenuItem._activeNow) {
+ _dropdown->_activeMenuItem.wipe(); // Get rid of menu.
+ if (_dropdown->_activeMenuItem._activeNum == _menuItems[which]._position)
return; // Clicked on own highlight.
}
_menuItems[which].highlight();
- (_menu->*_menuItems[which]._setupFunc)();
+ (_dropdown->*_menuItems[which]._setupFunc)();
}
void MenuBar::chooseMenuItem(int16 x) {
@@ -262,7 +262,7 @@ void MenuBar::chooseMenuItem(int16 x) {
}
}
-Menu::Menu(AvalancheEngine *vm) {
+DropDownMenu::DropDownMenu(AvalancheEngine *vm) {
_vm = vm;
_activeMenuItem.init(this);
_menuBar.init(this);
@@ -271,7 +271,7 @@ Menu::Menu(AvalancheEngine *vm) {
_lastPerson = kPeopleNone;
}
-void Menu::findWhatYouCanDoWithIt() {
+void DropDownMenu::findWhatYouCanDoWithIt() {
switch (_vm->_thinks) {
case kObjectWine:
case kObjectPotion:
@@ -299,7 +299,7 @@ void Menu::findWhatYouCanDoWithIt() {
}
}
-void Menu::drawMenuText(int16 x, int16 y, char trigger, Common::String text, bool valid, bool highlighted) {
+void DropDownMenu::drawMenuText(int16 x, int16 y, char trigger, Common::String text, bool valid, bool highlighted) {
Color fontColor;
Color backgroundColor;
if (highlighted) {
@@ -342,11 +342,11 @@ void Menu::drawMenuText(int16 x, int16 y, char trigger, Common::String text, boo
_vm->_graphics->refreshScreen();
}
-void Menu::bleep() {
+void DropDownMenu::bleep() {
_vm->_sound->playNote(177, 7);
}
-void Menu::parseKey(char r, char re) {
+void DropDownMenu::parseKey(char r, char re) {
#if 0
switch (r) {
case 0:
@@ -395,24 +395,24 @@ void Menu::parseKey(char r, char re) {
warning("STUB: Dropdown::parseKey()"); // To be implemented properly later! Don't remove the comment above!
}
-Common::String Menu::selectGender(byte x) {
+Common::String DropDownMenu::selectGender(byte x) {
if (x < 175)
return "im";
else
return "er";
}
-void Menu::setupMenuGame() {
+void DropDownMenu::setupMenuGame() {
_activeMenuItem.reset();
_activeMenuItem.setupOption("Help...", 'H', "f1", true);
- _activeMenuItem.setupOption("Boss Key", 'B', "alt-B", false);
- _activeMenuItem.setupOption("Untrash screen", 'U', "ctrl-f7", true);
+ _activeMenuItem.setupOption("Boss Key", 'B', "alt-B", true);
+ _activeMenuItem.setupOption("Untrash screen", 'U', "ctrl-f7", false);
_activeMenuItem.setupOption("Score and rank", 'S', "f9", true);
_activeMenuItem.setupOption("About Avvy...", 'A', "shift-f10", true);
_activeMenuItem.display();
}
-void Menu::setupMenuFile() {
+void DropDownMenu::setupMenuFile() {
_activeMenuItem.reset();
_activeMenuItem.setupOption("New game", 'N', "f4", true);
_activeMenuItem.setupOption("Load...", 'L', "^f3", true);
@@ -423,7 +423,7 @@ void Menu::setupMenuFile() {
_activeMenuItem.display();
}
-void Menu::setupMenuAction() {
+void DropDownMenu::setupMenuAction() {
_activeMenuItem.reset();
Common::String f5Does = _vm->f5Does();
@@ -449,7 +449,7 @@ void Menu::setupMenuAction() {
_activeMenuItem.display();
}
-void Menu::setupMenuPeople() {
+void DropDownMenu::setupMenuPeople() {
if (!people.empty())
people.clear();
@@ -465,7 +465,7 @@ void Menu::setupMenuPeople() {
_activeMenuItem.display();
}
-void Menu::setupMenuObjects() {
+void DropDownMenu::setupMenuObjects() {
_activeMenuItem.reset();
for (int i = 0; i < kObjectNum; i++) {
if (_vm->_objects[i])
@@ -474,7 +474,7 @@ void Menu::setupMenuObjects() {
_activeMenuItem.display();
}
-void Menu::setupMenuWith() {
+void DropDownMenu::setupMenuWith() {
_activeMenuItem.reset();
if (_vm->_thinkThing) {
@@ -531,7 +531,7 @@ void Menu::setupMenuWith() {
_activeMenuItem.display();
}
-void Menu::runMenuGame() {
+void DropDownMenu::runMenuGame() {
// Help, boss, untrash screen.
switch (_activeMenuItem._choiceNum) {
case 0:
@@ -541,7 +541,7 @@ void Menu::runMenuGame() {
_vm->callVerb(kVerbCodeBoss);
break;
case 2:
- _vm->majorRedraw();
+ _vm->_graphics->refreshScreen();
break;
case 3:
_vm->callVerb(kVerbCodeScore);
@@ -552,7 +552,7 @@ void Menu::runMenuGame() {
}
}
-void Menu::runMenuFile() {
+void DropDownMenu::runMenuFile() {
// New game, load, save, save as, DOS shell, about, quit.
switch (_activeMenuItem._choiceNum) {
case 0:
@@ -579,7 +579,7 @@ void Menu::runMenuFile() {
}
}
-void Menu::runMenuAction() {
+void DropDownMenu::runMenuAction() {
// Get up, pause game, open door, look, inventory, walk/run.
switch (_activeMenuItem._choiceNum) {
case 0: {
@@ -616,16 +616,16 @@ void Menu::runMenuAction() {
}
}
-void Menu::runMenuObjects() {
+void DropDownMenu::runMenuObjects() {
_vm->thinkAbout(_vm->_objectList[_activeMenuItem._choiceNum], AvalancheEngine::kThing);
}
-void Menu::runMenuPeople() {
+void DropDownMenu::runMenuPeople() {
_vm->thinkAbout(people[_activeMenuItem._choiceNum], AvalancheEngine::kPerson);
_lastPerson = (People)people[_activeMenuItem._choiceNum];
}
-void Menu::runMenuWith() {
+void DropDownMenu::runMenuWith() {
_vm->_parser->_thing = _vm->_thinks;
if (_vm->_thinkThing) {
@@ -664,21 +664,21 @@ void Menu::runMenuWith() {
_vm->callVerb((VerbCode)(byte)_verbStr[_activeMenuItem._choiceNum]);
}
-void Menu::setup() {
+void DropDownMenu::setup() {
_menuBar.init(this);
_activeMenuItem.init(this);
- _menuBar.createMenuItem('F', "File", '!', &Avalanche::Menu::setupMenuFile, &Avalanche::Menu::runMenuFile);
- _menuBar.createMenuItem('G', "Game", 34, &Avalanche::Menu::setupMenuGame, &Avalanche::Menu::runMenuGame);
- _menuBar.createMenuItem('A', "Action", 30, &Avalanche::Menu::setupMenuAction, &Avalanche::Menu::runMenuAction);
- _menuBar.createMenuItem('O', "Objects", 24, &Avalanche::Menu::setupMenuObjects, &Avalanche::Menu::runMenuObjects);
- _menuBar.createMenuItem('P', "People", 25, &Avalanche::Menu::setupMenuPeople, &Avalanche::Menu::runMenuPeople);
- _menuBar.createMenuItem('W', "With", 17, &Avalanche::Menu::setupMenuWith, &Avalanche::Menu::runMenuWith);
+ _menuBar.createMenuItem('F', "File", '!', &Avalanche::DropDownMenu::setupMenuFile, &Avalanche::DropDownMenu::runMenuFile);
+ _menuBar.createMenuItem('G', "Game", 34, &Avalanche::DropDownMenu::setupMenuGame, &Avalanche::DropDownMenu::runMenuGame);
+ _menuBar.createMenuItem('A', "Action", 30, &Avalanche::DropDownMenu::setupMenuAction, &Avalanche::DropDownMenu::runMenuAction);
+ _menuBar.createMenuItem('O', "Objects", 24, &Avalanche::DropDownMenu::setupMenuObjects, &Avalanche::DropDownMenu::runMenuObjects);
+ _menuBar.createMenuItem('P', "People", 25, &Avalanche::DropDownMenu::setupMenuPeople, &Avalanche::DropDownMenu::runMenuPeople);
+ _menuBar.createMenuItem('W', "With", 17, &Avalanche::DropDownMenu::setupMenuWith, &Avalanche::DropDownMenu::runMenuWith);
_menuBar.draw();
}
-void Menu::update() { // TODO: Optimize it ASAP!!! It really needs it...
+void DropDownMenu::update() {
_vm->_graphics->saveScreen();
Common::Point cursorPos = _vm->getMousePos();
@@ -769,7 +769,7 @@ void Menu::update() { // TODO: Optimize it ASAP!!! It really needs it...
_vm->_graphics->removeBackup();
}
-char Menu::getThingChar(byte which) {
+char DropDownMenu::getThingChar(byte which) {
static const char thingsChar[] = "WMBParCLguKeSnIohn"; // V=Vinegar
char result;
@@ -786,7 +786,7 @@ char Menu::getThingChar(byte which) {
return result;
}
-byte Menu::getNameChar(People whose) {
+byte DropDownMenu::getNameChar(People whose) {
static const char ladChar[] = "ASCDMTRwLfgeIyPu";
static const char lassChar[] = "kG\0xB1o";
@@ -798,7 +798,7 @@ byte Menu::getNameChar(People whose) {
error("getName() - Unexpected character id %d", (byte) whose);
}
-Common::String Menu::getThing(byte which) {
+Common::String DropDownMenu::getThing(byte which) {
static const char things[kObjectNum][20] = {
"Wine", "Money-bag", "Bodkin", "Potion", "Chastity belt",
"Crossbow bolt", "Crossbow", "Lute", "Pilgrim's badge", "Mushroom", "Key",
@@ -830,15 +830,15 @@ Common::String Menu::getThing(byte which) {
return result;
}
-bool Menu::isActive() {
+bool DropDownMenu::isActive() {
return _menuActive;
}
-void Menu::init() {
+void DropDownMenu::init() {
_menuActive = false;
}
-void Menu::resetVariables() {
+void DropDownMenu::resetVariables() {
_lastPerson = kPeoplePardon;
}
} // End of namespace Avalanche.
diff --git a/engines/avalanche/menu.h b/engines/avalanche/dropdown.h
index b7674fbb9d..417b775c3d 100644
--- a/engines/avalanche/menu.h
+++ b/engines/avalanche/dropdown.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -27,17 +27,17 @@
/* Original name: DROPDOWN A customized version of Oopmenu (qv). */
-#ifndef AVALANCHE_MENU_H
-#define AVALANCHE_MENU_H
+#ifndef AVALANCHE_DROPDOWN_H
+#define AVALANCHE_DROPDOWN_H
#include "common/str.h"
namespace Avalanche {
class AvalancheEngine;
-class Menu;
+class DropDownMenu;
-typedef void (Menu::*MenuFunc)();
+typedef void (DropDownMenu::*MenuFunc)();
static const Color kMenuBackgroundColor = kColorLightgray;
static const Color kMenuBorderColor = kColorBlack;
@@ -49,13 +49,13 @@ public:
int16 _xpos, _xright;
MenuFunc _setupFunc, _chooseFunc;
- void init(char trig, char alTtrig, Common::String title, byte pos, MenuFunc setupFunc, MenuFunc chooseFunc, Menu *menu);
+ void init(char trig, char alTtrig, Common::String title, byte pos, MenuFunc setupFunc, MenuFunc chooseFunc, DropDownMenu *menu);
void draw();
void highlight();
bool parseAltTrigger(char key);
private:
- Menu *_menu;
+ DropDownMenu *_dropdown;
};
struct OptionType {
@@ -75,7 +75,7 @@ public:
byte _activeNum; // And if so, which is it?
byte _choiceNum; // Your choice?
- void init(Menu *menu);
+ void init(DropDownMenu *menu);
void reset();
void setupOption(Common::String title, char trigger, Common::String shortcut, bool valid);
void display();
@@ -88,7 +88,7 @@ private:
byte _optionNum;
byte _highlightNum;
- Menu *_menu;
+ DropDownMenu *_dropdown;
void displayOption(byte y, bool highlit);
void moveHighlight(int8 inc);
@@ -103,20 +103,20 @@ public:
byte _menuNum;
MenuBar();
- void init(Menu *menu);
+ void init(DropDownMenu *menu);
void createMenuItem(char trig, Common::String title, char altTrig, MenuFunc setupFunc, MenuFunc chooseFunc);
void draw();
void chooseMenuItem(int16 x);
private:
- Menu *_menu;
+ DropDownMenu *_dropdown;
void setupMenuItem(byte which);
// CHECKME: Useless function
void parseAltTrigger(char c);
};
-class Menu {
+class DropDownMenu {
public:
friend class HeadType;
friend class MenuItem;
@@ -125,7 +125,7 @@ public:
MenuItem _activeMenuItem;
MenuBar _menuBar;
- Menu(AvalancheEngine *vm);
+ DropDownMenu(AvalancheEngine *vm);
void update();
void setup(); // Standard menu bar.
@@ -179,4 +179,4 @@ private:
} // End of namespace Avalanche.
-#endif // AVALANCHE_MENU_H
+#endif // AVALANCHE_DROPDOWN_H
diff --git a/engines/avalanche/enums.h b/engines/avalanche/enums.h
index 2b5db67609..0ba39321bc 100644
--- a/engines/avalanche/enums.h
+++ b/engines/avalanche/enums.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -29,6 +29,11 @@
#define AVALANCHE_ENUMS_H
namespace Avalanche {
+
+enum MonsterType { kMonsterTypeGhost, kMonsterTypeGlerk };
+
+enum Flavour { kFlavourEga, kFlavourBgi, kFlavourNatural, kFlavourTwo, kFlavourOne };
+
enum Color {
kColorBlack = 0, kColorBlue, kColorGreen, kColorCyan, kColorRed,
kColorMagenta = 5, kColorBrown, kColorLightgray, kColorDarkgray, kColorLightblue,
@@ -87,7 +92,7 @@ enum VerbCode {
enum MouseCursor {
kCurUpArrow = 0, kCurScrewDriver = 1, kCurRightArrow = 2, kCurFletch = 3, kCurWait = 4, kCurHand = 5,
- kCurCrosshair = 6, kCurIBeam = 7
+ kCurCrosshair = 6, kCurIBeam = 7, kCurHelp = 8
};
// Magic/portal constants:
diff --git a/engines/avalanche/ghostroom.cpp b/engines/avalanche/ghostroom.cpp
new file mode 100644
index 0000000000..16c79fdee0
--- /dev/null
+++ b/engines/avalanche/ghostroom.cpp
@@ -0,0 +1,395 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike: Mark and Thomas Thurman.
+*/
+
+#include "avalanche/avalanche.h"
+#include "avalanche/ghostroom.h"
+
+#include "common/random.h"
+
+namespace Avalanche {
+
+const int8 GhostRoom::kAdjustment[5] = { 7, 0, 7, 7, 7 };
+const byte GhostRoom::kWaveOrder[5] = { 4, 0, 1, 2, 3 };
+const byte GhostRoom::kGlerkFade[26] = { 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 0 };
+const byte GhostRoom::kGreldetFade[18] = { 0, 1, 2, 3, 4, 5, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, 0, 0 };
+
+GhostRoom::GhostRoom(AvalancheEngine *vm) {
+ _vm = vm;
+
+ _glerkStage = 0;
+ _batX = 0;
+ _batY = 0;
+ _batCount = 0;
+ _aarghCount = 0;
+ _greldetX = _greldetY = 0;
+ _greldetCount = 0;
+ _redGreldet = false;
+ _wasLoaded = false;
+}
+
+GhostRoom::~GhostRoom() {
+ for (int i = 0; i < 2; i++)
+ _eyes[i].free();
+
+ _exclamation.free();
+
+ for (int i = 0; i < 3; i++)
+ _bat[i].free();
+
+ for (int i = 0; i < 6; i++)
+ _aargh[i].free();
+
+ for (int i = 0; i < 5; i++)
+ _greenEyes[i].free();
+
+ for (int i = 0; i < 2; i++) {
+ for (int j = 0; j < 6; j++)
+ _greldet[j][i].free();
+ }
+
+ if (_wasLoaded) {
+ for (int i = 0; i < 5; i++) {
+ for (int j = 0; j < 2; j++) {
+ for (int y = 0; y < 66; y++) {
+ delete[] _ghost[i][j][y];
+ }
+ delete[] _ghost[i][j];
+ }
+ delete[] _ghost[i];
+ }
+ delete[] _ghost;
+
+ for (int i = 0; i < 6; i++) {
+ for (int j = 0; j < 4; j++) {
+ for (int y = 0; y < 35; y++) {
+ delete[] _glerk[i][j][y];
+ }
+ delete[] _glerk[i][j];
+ }
+ delete[] _glerk[i];
+ }
+ delete[] _glerk;
+ }
+}
+
+void GhostRoom::wait(uint16 howLong) {
+ for (int i = 0; i < howLong; i++) {
+ Common::Event event;
+ _vm->getEvent(event);
+ if (event.type == Common::EVENT_KEYDOWN)
+ _vm->_sound->playNote(6177, 1);
+ _vm->_system->delayMillis(1);
+ }
+}
+
+void GhostRoom::doBat() {
+ _batCount++;
+
+ int8 dx = 0;
+ int8 iy = 0;
+ byte batImage = 0;
+ if ((_batCount % 2) == 1) {
+ if ((1 <= _batCount) && (_batCount <= 90)) {
+ dx = 2;
+ iy = 1;
+ batImage = 0;
+ } else if ((91 <= _batCount) && (_batCount <= 240)) {
+ dx = 1;
+ iy = 1;
+ batImage = 1;
+ } else if((241 <= _batCount) && (_batCount <= 260)) {
+ dx = 1;
+ iy = 4;
+ batImage = 2;
+ }
+
+ if ((_batCount == 91) || (_batCount == 241)) // When the bat changes, blank out the old one.
+ _vm->_graphics->drawFilledRectangle(Common::Rect(_batX + _bat[batImage].w, _batY, _batX + _bat[batImage - 1].w, _batY + _bat[batImage - 1].h), kColorBlack);
+
+ _vm->_graphics->drawFilledRectangle(Common::Rect(_batX, _batY, _batX + _bat[batImage].w, _batY + iy), kColorBlack);
+ _vm->_graphics->drawFilledRectangle(Common::Rect(_batX + _bat[batImage].w - dx, _batY, _batX + _bat[batImage].w, _batY + _bat[batImage].h), kColorBlack);
+
+ _batX -= dx;
+ _batY++;
+ _vm->_graphics->ghostDrawPicture(_bat[batImage], _batX, _batY);
+ }
+}
+
+void GhostRoom::bigGreenEyes(byte how) {
+ _vm->_graphics->ghostDrawPicture(_greenEyes[how], 330, 103);
+ _vm->_graphics->ghostDrawPicture(_greenEyes[how], 376, 103);
+ _vm->_graphics->refreshScreen();
+}
+
+ChunkBlock GhostRoom::readChunkBlock(Common::File &file) {
+ ChunkBlock cb;
+ cb._flavour = (Flavour)file.readByte();
+ cb._x = file.readSint16LE();
+ cb._y = file.readSint16LE();
+ cb._width = file.readSint16LE();
+ cb._height = file.readSint16LE();
+ cb._size = file.readSint32LE();
+ return cb;
+}
+
+void GhostRoom::loadPictures() {
+ Common::File file;
+
+ if (!file.open("spooky.avd"))
+ error("AVALANCHE: GhostRoom: File not found: spooky.avd");
+
+ file.seek(44);
+
+ // Initializing ghost's array.
+ _ghost = new byte***[5];
+ for (int i = 0; i < 5; i++) {
+ _ghost[i] = new byte**[2];
+ for (int j = 0; j < 2; j++) {
+ _ghost[i][j] = new byte*[66];
+ for (int y = 0; y < 66; y++) {
+ _ghost[i][j][y] = new byte[26];
+ for (int x = 0; x < 26; x++)
+ _ghost[i][j][y][x] = 0;
+ }
+ }
+ }
+
+ // Read in the pictures of the ghost.
+ for (int i = 0; i < 5; i++) {
+ ChunkBlock cb = readChunkBlock(file);
+ for (int j = 0; j < 2; j++) {
+ for (int y = 0; y <= cb._height; y++)
+ file.read(_ghost[i][j][y], cb._width / 8);
+ }
+ }
+
+ for (int i = 0; i < 2; i++)
+ _eyes[i] = _vm->_graphics->ghostLoadPicture(file, dummyCoord);
+
+ _exclamation = _vm->_graphics->ghostLoadPicture(file, dummyCoord);
+
+ // Actually this function not just loads, but also draws the images, but they are part of the background
+ // and they are need to be drawn only once.
+ _vm->_graphics->ghostDrawBackgroundItems(file);
+
+ for (int i = 0; i < 3; i++)
+ _bat[i] = _vm->_graphics->ghostLoadPicture(file, dummyCoord);
+
+ // Initializing glerk's array.
+ _glerk = new byte***[6];
+ for (int i = 0; i < 6; i++) {
+ _glerk[i] = new byte**[4];
+ for (int j = 0; j < 4; j++) {
+ _glerk[i][j] = new byte*[35];
+ for (int y = 0; y < 35; y++) {
+ _glerk[i][j][y] = new byte[9];
+ for (int x = 0; x < 9; x++)
+ _glerk[i][j][y][x] = 0;
+ }
+ }
+ }
+
+ // Read in the pictures of the "glerk".
+ for (int i = 0; i < 6; i++) {
+ ChunkBlock cb = readChunkBlock(file);
+ for (int j = 0; j < 4; j++) {
+ for (int y = 0; y <= cb._height; y++)
+ file.read(_glerk[i][j][y], cb._width / 8);
+ }
+ }
+
+ for (int i = 0; i < 6; i++)
+ _aargh[i] = _vm->_graphics->ghostLoadPicture(file, _aarghWhere[i]);
+
+ for (int i = 0; i < 5; i++)
+ _greenEyes[i] = _vm->_graphics->ghostLoadPicture(file, dummyCoord);
+
+ for (int i = 0; i < 2; i++) {
+ for (int j = 0; j < 6; j++)
+ _greldet[j][i] = _vm->_graphics->ghostLoadPicture(file, dummyCoord);
+ }
+
+ file.close();
+}
+
+void GhostRoom::run() {
+ CursorMan.showMouse(false);
+ _vm->_graphics->saveScreen();
+ _vm->fadeOut();
+ _vm->_graphics->blackOutScreen();
+ _vm->fadeIn();
+
+ // Only load the pictures if it's our first time walking into the room.
+ // After that we simply use the already loaded images.
+ if (!_wasLoaded) {
+ loadPictures();
+ _wasLoaded = true;
+ }
+
+ // Avvy walks over:
+ _glerkStage = 0;
+ _batX = 277;
+ _batY = 40;
+ _batCount = 0;
+
+ for (int x = 500; x >= 217; x--) {
+ // The floating eyeballs:
+ int xBound = x % 30;
+ if ((22 <= xBound) && (xBound <= 27)) {
+ if (xBound == 27)
+ _vm->_graphics->drawFilledRectangle(Common::Rect(x, 135, x + 17, 137), kColorBlack);
+ _vm->_graphics->ghostDrawPicture(_eyes[0], x, 136);
+ _vm->_graphics->drawDot(x + 16, 137, kColorBlack);
+ } else {
+ if (xBound == 21)
+ _vm->_graphics->drawFilledRectangle(Common::Rect(x, 137, x + 18, 139), kColorBlack);
+ _vm->_graphics->ghostDrawPicture(_eyes[0], x, 135);
+ _vm->_graphics->drawDot(x + 16, 136, kColorBlack); // Eyes would leave a trail 1 pixel high behind them.
+ }
+
+ // Plot the Glerk:
+ if ((x % 10) == 0) {
+ if (_glerkStage > 25)
+ break;
+
+ _vm->_graphics->ghostDrawMonster(_glerk[kGlerkFade[_glerkStage]], 456, 14, kMonsterTypeGlerk);
+ _glerkStage++;
+ }
+
+ doBat();
+
+ _vm->_graphics->refreshScreen();
+
+ wait(15);
+ }
+
+ // Blank out the Glerk's space.
+ _vm->_graphics->drawFilledRectangle(Common::Rect(456, 14, 531, 51), kColorBlack);
+ _vm->_graphics->refreshScreen();
+
+
+ // Here comes the descending ghost:
+ for (int y = -64; y <= 103; y++) {
+ _vm->_graphics->ghostDrawMonster(_ghost[1 + (abs(y / 7) % 2) * 3], 0, y, kMonsterTypeGhost);
+ if (y > 0)
+ _vm->_graphics->drawFilledRectangle(Common::Rect(0, y - 1, 26 * 8 + 1, y + 1), kColorBlack);
+ _vm->_graphics->refreshScreen();
+
+ wait(27);
+ }
+
+ // Then it waves:
+ _aarghCount = -15;
+
+ for (int i = 0; i < 4; i++) {
+ for (int j = 0; j < 5; j++) {
+ _vm->_graphics->drawFilledRectangle(Common::Rect(0, 96, 26 * 8, 170), kColorBlack);
+ _vm->_graphics->ghostDrawMonster(_ghost[kWaveOrder[j]], 0, 96 + kAdjustment[j], kMonsterTypeGhost);
+
+ _aarghCount++;
+
+ if (_aarghCount >= 0) {
+ for (int k = 0; k <= _aarghCount; k++)
+ _vm->_graphics->ghostDrawPicture(_aargh[k], _aarghWhere[k].x, _aarghWhere[k].y);
+ }
+
+ _vm->_graphics->refreshScreen();
+
+ wait(177);
+ }
+ }
+
+ // The exclamation mark appears:
+ _vm->_graphics->ghostDrawPicture(_exclamation, 246, 127);
+ _vm->_graphics->refreshScreen();
+ wait(777);
+
+ // Erase "aargh":
+ _vm->_graphics->drawFilledRectangle(Common::Rect(172, 78, 348, 112), kColorBlack);
+ _vm->_graphics->refreshScreen();
+
+ for (int i = 4; i >= 0; i--) {
+ wait(377);
+ bigGreenEyes(i);
+ }
+
+ // Erase the exclamation mark:
+ _vm->_graphics->drawFilledRectangle(Common::Rect(246, 127, 252, 134), kColorBlack);
+ _vm->_graphics->refreshScreen();
+
+ // Avvy hurries back:
+ _glerkStage = 0;
+ _greldetCount = 18;
+ _redGreldet = false;
+
+ for (int x = 217; x <= 479; x++) {
+ // The floating eyeballs again:
+ int xBound = x % 30;
+ if ((22 <= xBound) && (xBound <= 27)) {
+ if (xBound == 22)
+ _vm->_graphics->drawFilledRectangle(Common::Rect(x + 22, 134, x + 39, 138), kColorBlack);
+ _vm->_graphics->ghostDrawPicture(_eyes[1], x + 23, 136);
+ _vm->_graphics->drawDot(x + 22, 137, kColorBlack);
+ } else {
+ if (xBound == 28)
+ _vm->_graphics->drawFilledRectangle(Common::Rect(x + 22, 135, x + 39, 139), kColorBlack);
+ _vm->_graphics->ghostDrawPicture(_eyes[1], x + 23, 135);
+ _vm->_graphics->drawDot(x + 22, 136, kColorBlack); // Eyes would leave a trail 1 pixel high behind them.
+ }
+
+ // Plot the Green Eyes:
+ if ((x % 53) == 5) {
+ bigGreenEyes(_glerkStage);
+ _glerkStage++;
+ }
+
+ // Plot the Greldet:
+ if (_greldetCount == 18) {
+ _greldetX = _vm->_rnd->getRandomNumber(599);
+ _greldetY = _vm->_rnd->getRandomNumber(79);
+ _greldetCount = 0;
+ _redGreldet = !_redGreldet;
+ }
+
+ _vm->_graphics->ghostDrawPicture(_greldet[kGreldetFade[_greldetCount]][_redGreldet], _greldetX, _greldetY);
+ _greldetCount++;
+
+ _vm->_graphics->refreshScreen();
+
+ wait(10);
+ }
+
+ CursorMan.showMouse(true);
+
+ _vm->fadeOut();
+ _vm->_graphics->restoreScreen();
+ _vm->_graphics->removeBackup();
+ _vm->_animation->animLink();
+ _vm->fadeIn();
+}
+
+} // End of namespace Avalanche
diff --git a/engines/avalanche/ghostroom.h b/engines/avalanche/ghostroom.h
new file mode 100644
index 0000000000..4c659128ce
--- /dev/null
+++ b/engines/avalanche/ghostroom.h
@@ -0,0 +1,88 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike: Mark and Thomas Thurman.
+*/
+
+#ifndef AVALANCHE_GHOSTROOM_H
+#define AVALANCHE_GHOSTROOM_H
+
+#include "common/scummsys.h"
+#include "graphics/surface.h"
+
+namespace Avalanche {
+class AvalancheEngine;
+
+struct ChunkBlock {
+ Flavour _flavour;
+ int16 _x, _y;
+ int16 _width, _height;
+ int32 _size;
+};
+
+class GhostRoom {
+public:
+ GhostRoom(AvalancheEngine *vm);
+ ~GhostRoom();
+
+ void run();
+ ChunkBlock readChunkBlock(Common::File &file);
+
+private:
+ AvalancheEngine *_vm;
+
+ static const int8 kAdjustment[5];
+ static const byte kWaveOrder[5];
+ static const byte kGlerkFade[26];
+ static const byte kGreldetFade[18];
+
+ Common::Point dummyCoord;
+ byte ****_ghost;// [5][2][66][26]
+ Graphics::Surface _eyes[2];
+ Graphics::Surface _exclamation;
+ Graphics::Surface _bat[3];
+ byte ****_glerk; // [6][4][35][9]
+ Graphics::Surface _aargh[6];
+ Common::Point _aarghWhere[6];
+ Graphics::Surface _greenEyes[5];
+ Graphics::Surface _greldet[6][2];
+
+ int16 _batX, _batY;
+ uint16 _batCount;
+ byte _glerkStage;
+ int8 _aarghCount;
+ int16 _greldetX, _greldetY;
+ byte _greldetCount;
+ bool _redGreldet;
+ bool _wasLoaded;
+
+ void loadPictures();
+ void wait(uint16 howLong);
+ void doBat();
+ void bigGreenEyes(byte how);
+};
+
+} // End of namespace Avalanche
+
+#endif // AVALANCHE_GHOSTROOM_H
diff --git a/engines/avalanche/graphics.cpp b/engines/avalanche/graphics.cpp
index 82248f5087..513cd72c8c 100644
--- a/engines/avalanche/graphics.cpp
+++ b/engines/avalanche/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -198,7 +198,7 @@ void GraphicManager::drawToolbar() {
Common::Point GraphicManager::drawArc(Graphics::Surface &surface, int16 x, int16 y, int16 stAngle, int16 endAngle, uint16 radius, Color color) {
Common::Point endPoint;
- const float convfac = M_PI / 180.0;
+ const double convfac = M_PI / 180.0;
int32 xRadius = radius;
int32 yRadius = radius * kScreenWidth / (8 * kScreenHeight); // Just don't ask why...
@@ -281,6 +281,10 @@ Common::Point GraphicManager::drawArc(Graphics::Surface &surface, int16 x, int16
return endPoint;
}
+void GraphicManager::drawDot(int x, int y, Color color) {
+ *(byte *)_surface.getBasePtr(x, y) = color;
+}
+
void GraphicManager::drawLine(int x1, int y1, int x2, int y2, int penX, int penY, Color color) {
_surface.drawThickLine(x1, y1, x2, y2, penX, penY, color);
}
@@ -348,6 +352,25 @@ void GraphicManager::drawNormalText(const Common::String text, FontType font, by
drawText(_surface, text, font, fontHeight, x, y, color);
}
+/**
+ * Draws text double the size of the normal.
+ */
+void GraphicManager::drawBigText(Graphics::Surface &surface, const Common::String text, FontType font, byte fontHeight, int16 x, int16 y, Color color) {
+ for (uint i = 0; i < text.size(); i++) {
+ for (int j = 0; j < fontHeight; j++) {
+ byte pixel = font[(byte)text[i]][j];
+ byte pixelBit = 0;
+ for (int bit = 0; bit < 16; bit++) {
+ if ((bit % 2) == 0)
+ pixelBit = (pixel >> (bit / 2)) & 1;
+ for (int k = 0; k < 2; k++)
+ if (pixelBit)
+ *(byte *)surface.getBasePtr(x + i * 16 + 16 - bit, y + j * 2 + k) = color;
+ }
+ }
+ }
+}
+
void GraphicManager::drawScrollText(const Common::String text, FontType font, byte fontHeight, int16 x, int16 y, Color color) {
drawText(_scrolls, text, font, fontHeight, x, y, color);
}
@@ -455,12 +478,16 @@ void GraphicManager::drawDebugLines() {
}
}
+void GraphicManager::drawRectangle(Common::Rect rect, Color color) {
+ _surface.frameRect(rect, color);
+}
+
void GraphicManager::drawFilledRectangle(Common::Rect rect, Color color) {
_surface.fillRect(rect, color);
}
-void GraphicManager::drawRectangle(Common::Rect rect, Color color) {
- _surface.frameRect(rect, color);
+void GraphicManager::blackOutScreen() {
+ _vm->_graphics->drawFilledRectangle(Common::Rect(0, 0, 640, 200), kColorBlack);
}
void GraphicManager::nimLoad() {
@@ -500,6 +527,375 @@ void GraphicManager::nimFree() {
_nimLogo.free();
}
+void GraphicManager::ghostDrawMonster(byte ***picture, uint16 destX, int16 destY, MonsterType type) {
+ uint16 height = 0;
+ uint16 width = 0;
+ // Only for the Ghost:
+ const byte kPlaneToUse[4] = { 0, 0, 0, 1 };
+ int yStart = 0;
+
+ // Constants from the original code:
+ switch (type) {
+ case kMonsterTypeGhost:
+ height = 66;
+ width = 208; // 26 * 8
+
+ // We have to mess around with the coords and the sizes since
+ // the ghost isn't always placed fully on the screen.
+ if (destY < 0) {
+ yStart = abs(destY);
+ height -= yStart;
+ destY = 0;
+ }
+ break;
+ case kMonsterTypeGlerk:
+ height = 35;
+ width = 72; // 9 * 8
+ break;
+ default:
+ break;
+ }
+
+ Graphics::Surface monsterPicture;
+ monsterPicture.create(width, height, Graphics::PixelFormat::createFormatCLUT8());
+
+ for (int y = 0; y < height; y++) {
+ for (int plane = 0; plane < 4; plane++) {
+ for (uint16 x = 0; x < width / 8; x++) {
+ byte pixel = 0;
+
+ switch (type) {
+ case kMonsterTypeGhost:
+ pixel = picture[kPlaneToUse[plane]][y + yStart][x];
+ break;
+ case kMonsterTypeGlerk:
+ pixel = picture[plane][y][x];
+ break;
+ default:
+ break;
+ }
+
+ for (int bit = 0; bit < 8; bit++) {
+ byte pixelBit = (pixel >> bit) & 1;
+ *(byte *)monsterPicture.getBasePtr(x * 8 + 7 - bit, y) += (pixelBit << plane);
+ }
+ }
+ }
+ }
+
+ drawPicture(_surface, monsterPicture, destX, destY);
+
+ monsterPicture.free();
+}
+
+/**
+ * With the use of the second argument, it replaces get_meg_aargh as well.
+ * @remarks Originally called 'get_me' and was located in Ghostroom.
+ */
+Graphics::Surface GraphicManager::ghostLoadPicture(Common::File &file, Common::Point &coord) {
+ ChunkBlock cb = _vm->_ghostroom->readChunkBlock(file);
+
+ coord.x = cb._x;
+ coord.y = cb._y;
+
+ Graphics::Surface picture = loadPictureGraphic(file);
+
+ skipDifference(cb._size, picture, file);
+
+ return picture;
+}
+
+void GraphicManager::ghostDrawPicture(const Graphics::Surface &picture, uint16 destX, uint16 destY) {
+ drawPicture(_surface, picture, destX, destY);
+}
+
+/**
+ * Loads and puts 3 images (in this order: cobweb, Mark's signature, open door) into the background at the beginning of the ghostroom scene.
+ * @remarks Originally called 'plain_grab' and was located in Ghostroom. It was originally called 3 times. I unified these in one function, used a for cycle.
+ */
+void GraphicManager::ghostDrawBackgroundItems(Common::File &file) {
+ for (int num = 0; num < 3; num++) {
+ ChunkBlock cb = _vm->_ghostroom->readChunkBlock(file);
+
+ int width = cb._width;
+ int height = cb._height + 1;
+
+ Graphics::Surface picture;
+ picture.create(width, height, Graphics::PixelFormat::createFormatCLUT8());
+
+ // Load the picture according to it's type.
+ switch (cb._flavour) {
+ case kFlavourOne: // There is only one plane.
+ for (uint16 y = 0; y < height; y++) {
+ for (uint16 x = 0; x < width; x += 8) {
+ byte pixel = file.readByte();
+ for (int i = 0; i < 8; i++) {
+ byte pixelBit = (pixel >> i) & 1;
+ *(byte *)picture.getBasePtr(x + 7 - i, y) = (pixelBit << 3);
+ }
+ }
+ }
+ break;
+ case kFlavourEga:
+ picture = loadPictureRaw(file, width, height);
+ break;
+ default:
+ break;
+ }
+
+ drawPicture(_surface, picture, cb._x, cb._y);
+
+ picture.free();
+ }
+ refreshScreen();
+}
+
+/**
+* @remarks Originally called 'plot_button'
+*/
+void GraphicManager::helpDrawButton(int y, byte which) {
+ if (y > 200) {
+ _vm->_graphics->setBackgroundColor(kColorGreen);
+ _vm->_system->delayMillis(10);
+ _vm->_graphics->setBackgroundColor(kColorBlack);
+ return;
+ }
+
+ Common::File file;
+
+ if (!file.open("buttons.avd"))
+ error("AVALANCHE: Help: File not found: buttons.avd");
+
+ file.seek(which * 930); // 930 is the size of one button.
+
+ Graphics::Surface button = loadPictureGraphic(file);
+
+ int x = 0;
+ if (y == -177) {
+ x = 229;
+ y = 5;
+ }
+ else
+ x = 470;
+
+ _vm->_graphics->drawPicture(_surface, button, x, y);
+
+ button.free();
+ file.close();
+}
+
+/**
+ * @remarks Originally called 'light'
+ */
+void GraphicManager::helpDrawHighlight(byte which, Color color) {
+ if (which == 177) // Dummy value for "no button at all".
+ return;
+
+ which &= 31;
+ drawRectangle(Common::Rect(466, 38 + which * 27, 556, 63 + which * 27), color);
+}
+
+void GraphicManager::helpDrawBigText(const Common::String text, int16 x, int16 y, Color color) {
+ drawBigText(_surface, text, _vm->_font, 8, x, y, color);
+}
+
+/**
+ * @remarks Originally called 'titles'
+ */
+void GraphicManager::seuDrawTitle() {
+ Common::File file;
+
+ if (!file.open("shoot1.avd"))
+ error("AVALANCHE: ShootEmUp: File not found: shoot1.avd");
+
+ const uint16 width = 320;
+ const uint16 height = 200;
+
+ Graphics::Surface picture = loadPictureRaw(file, width, height);
+
+ Graphics::Surface doubledPicture;
+ doubledPicture.create(width * 2, height, Graphics::PixelFormat::createFormatCLUT8());
+
+ // These cycles are for doubling the picture's width.
+ for (int x = (width * 2) - 2 ; x >= 0; x -= 2) {
+ for (int y = 0; y < height; y++) {
+ *(byte *)doubledPicture.getBasePtr(x, y) = *(byte *)doubledPicture.getBasePtr(x + 1, y) = *(byte *)picture.getBasePtr(x / 2, y);
+ }
+ }
+
+ drawPicture(_surface, doubledPicture, 0, 0);
+ refreshScreen();
+
+ picture.free();
+ doubledPicture.free();
+
+ file.close();
+}
+
+void GraphicManager::seuLoad() {
+ Common::File file;
+
+ if (!file.open("notts.avd"))
+ error("AVALANCHE: ShootEmUp: File not found: notts.avd");
+
+ for (int i = 0; i < 99; i++) {
+ int size = file.readUint16LE();
+ _seuPictures[i] = loadPictureGraphic(file);
+ skipDifference(size, _seuPictures[i], file);
+ }
+
+ file.close();
+}
+
+void GraphicManager::seuFree() {
+ for (int i = 0; i < 99; i++)
+ _seuPictures[i].free();
+}
+
+/**
+ * @remarks Originally called 'display' and it also replaces 'display_const'
+ */
+void GraphicManager::seuDrawPicture(int x, int y, byte which) {
+ drawPicture(_surface, _seuPictures[which], x, y);
+}
+
+/**
+ * @remarks Originally called 'cameo_display'
+ */
+void GraphicManager::seuDrawCameo(int destX, int destY, byte w1, byte w2) {
+ // First we make the pixels of the previous sprite (cameo) blank:
+ uint16 maxX = _seuPictures[w2].w;
+ uint16 maxY = _seuPictures[w2].h;
+
+ if (destX + maxX > _surface.w)
+ maxX = _surface.w - destX;
+
+ if (destY + maxY > _surface.h)
+ maxY = _surface.h - destY;
+
+ for (uint16 y = 0; y < maxY; y++) {
+ for (uint16 x = 0; x < maxX; x++) {
+ if (*(const byte *)_seuPictures[w2].getBasePtr(x, y) != 0)
+ *(byte *)_surface.getBasePtr(x + destX, y + destY) = 0;
+ }
+ }
+
+ // Then we draw the desired sprite:
+ drawPicture(_surface, _seuPictures[w1], destX, destY);
+}
+
+uint16 GraphicManager::seuGetPicWidth(int which) {
+ return _seuPictures[which].w;
+}
+
+uint16 GraphicManager::seuGetPicHeight(int which) {
+ return _seuPictures[which].h;
+}
+
+void GraphicManager::menuRefreshScreen() {
+ g_system->copyRectToScreen(_menu.getPixels(), _menu.pitch, 0, 0, kScreenWidth, kMenuScreenHeight);
+ g_system->updateScreen();
+}
+
+void GraphicManager::menuInitialize() {
+ initGraphics(kScreenWidth, kMenuScreenHeight, true);
+ _menu.create(kScreenWidth, kMenuScreenHeight, Graphics::PixelFormat::createFormatCLUT8());
+}
+
+void GraphicManager::menuFree() {
+ _menu.free();
+}
+
+void GraphicManager::menuRestoreScreen() {
+ initGraphics(kScreenWidth, 2 * kScreenHeight, true);
+}
+
+void GraphicManager::menuLoadPictures() {
+ _menu.fillRect(Common::Rect(0, 0, kScreenWidth, kMenuScreenHeight), kColorBlack);
+
+ Common::File file;
+
+ if (!file.open("menu.avd"))
+ error("AVALANCHE: MainMenu: File not found: menu.avd");
+
+ int height = 33;
+ int width = 9 * 8;
+
+ for (int plane = 0; plane < 4; plane++) {
+ // The icons themselves:
+ int n = 0;
+ for (uint16 y = 70; y < 70 + height * 6; y++) {
+ for (uint16 x = 48; x < 48 + width; x += 8) {
+ if (n < 1773) { // Magic value deciphered from the original code.
+ byte pixel = file.readByte();
+ n++;
+ for (int i = 0; i < 8; i++) {
+ byte pixelBit = (pixel >> i) & 1;
+ *(byte *)_menu.getBasePtr(x + 7 - i, y) += (pixelBit << plane);
+ }
+ }
+ }
+ }
+ // The right borders of the menuboxes:
+ for (int a = 0; a < 33; a++) {
+ byte pixel = file.readByte();
+ for (int b = 0; b < 6; b++) {
+ for (int i = 0; i < 8; i++) {
+ byte pixelBit = (pixel >> i) & 1;
+ *(byte *)_menu.getBasePtr(584 + 7 - i, 70 + b * 33 + a) += (pixelBit << plane);
+ }
+ }
+ }
+ }
+
+ for (int i = 0; i < 6; i++) {
+ _menu.fillRect(Common::Rect(114, 73 + i * 33, 584, 100 + i * 33), kColorLightgray);
+ _menu.fillRect(Common::Rect(114, 70 + i * 33, 584, 73 + i * 33), kColorWhite);
+ _menu.fillRect(Common::Rect(114, 100 + i * 33, 584, 103 + i * 33), kColorDarkgray);
+ }
+
+ file.close();
+
+ // The title on the top of the screen:
+ if (!file.open("mainmenu.avd"))
+ error("AVALANCHE: MainMenu: File not found: mainmenu.avd");
+
+ Graphics::Surface title = loadPictureRaw(file, 640, 59);
+ drawPicture(_menu, title, 0, 0);
+ title.free();
+
+ file.close();
+}
+
+void GraphicManager::menuDrawBigText(FontType font, uint16 x, uint16 y, Common::String text, Color color) {
+ drawBigText(_menu, text, font, 14, x, y, color);
+}
+
+void GraphicManager::menuDrawIndicator(int x) { // TODO: Implement striped pattern for the indicator.
+ if (x > 0)
+ _menu.fillRect(Common::Rect(x - 1, 330, x, 337), kColorBlack);
+ _menu.fillRect(Common::Rect(x, 330, x + 1, 337), kColorWhite);
+ menuRefreshScreen();
+}
+
+/**
+ * This function is for skipping the difference between a stored 'size' value associated with a picture
+ * and the actual size of the pictures when reading them from files for Ghostroom and Shoot em' up.
+ * It's needed bacuse the original code loaded the pictures to arrays first and only used the useful parts
+ * of these arrays when drawing the images, but in the ScummVM version, we only read the
+ * useful parts from the files, so we have to skip these differences between readings.
+ */
+void GraphicManager::skipDifference(int size, const Graphics::Surface &picture, Common::File &file) {
+ int bytesPerRow = (picture.w / 8);
+ if ((picture.w % 8) > 0)
+ bytesPerRow += 1;
+ int loadedBytes = picture.h * bytesPerRow * 4 + 4;
+ // * 4 is for the four planes, + 4 is for the reading of the width and the height at loadPictureGraphic's beginning.
+
+ int bytesToSkip = size - loadedBytes;
+ file.skip(bytesToSkip);
+}
+
/**
* This function mimics Pascal's getimage().
*/
@@ -518,6 +914,8 @@ Graphics::Surface GraphicManager::loadPictureGraphic(Common::File &file) {
byte pixel = file.readByte();
for (int bit = 0; bit < 8; bit++) {
byte pixelBit = (pixel >> bit) & 1;
+ // If the picture's width is not a multiple of 8, and we get over the boundary with the 'x' cycle, pixelBit is surely == 0.
+ // Otherwise, it doesn't cause trouble, since addign 0 doesn't have an effect at all.
if (pixelBit != 0)
*(byte *)picture.getBasePtr(x + 7 - bit, y) += (pixelBit << plane);
}
@@ -552,23 +950,21 @@ Graphics::Surface GraphicManager::loadPictureRaw(Common::File &file, uint16 widt
return picture;
}
-Graphics::Surface GraphicManager::loadPictureSign(Common::File &file, int xl, int yl) {
+Graphics::Surface GraphicManager::loadPictureSign(Common::File &file, uint16 width, uint16 height) {
// I know it looks very similar to the other loadPicture methods, but in truth it's the combination of the two.
- uint16 width = xl * 8;
- uint16 height = yl;
+ width *= 8;
Graphics::Surface picture; // We make a Surface object for the picture itself.
picture.create(width, height, Graphics::PixelFormat::createFormatCLUT8());
// Produce the picture. We read it in row-by-row, and every row has 4 planes.
- for (int yy = 0; yy < height; yy++) {
+ for (int y = 0; y < height; y++) {
for (int8 plane = 0; plane < 4; plane++) { // The planes are in the "right" order.
- for (uint16 xx = 0; xx < width; xx += 8) {
+ for (uint16 x = 0; x < width; x += 8) {
byte pixel = file.readByte();
for (int bit = 0; bit < 8; bit++) {
byte pixelBit = (pixel >> bit) & 1;
- if (pixelBit != 0)
- *(byte *)picture.getBasePtr(xx + 7 - bit, yy) += (pixelBit << plane);
+ *(byte *)picture.getBasePtr(x + 7 - bit, y) += (pixelBit << plane);
}
}
}
@@ -587,6 +983,19 @@ void GraphicManager::shiftScreen() {
_surface.drawLine(0, 0, _surface.w, 0, kColorBlack);
}
+void GraphicManager::drawWinningPic() {
+ Common::File file;
+
+ if (!file.open("finale.avd"))
+ error("AVALANCHE: Timer: File not found: finale.avd");
+
+ Graphics::Surface winning = loadPictureRaw(file, 640, 200);
+ drawPicture(_surface, winning, 0, 0);
+
+ winning.free();
+ file.close();
+}
+
void GraphicManager::clearAlso() {
_magics.fillRect(Common::Rect(0, 0, 640, 200), 0);
_magics.frameRect(Common::Rect(0, 45, 640, 161), 15);
@@ -674,7 +1083,27 @@ void GraphicManager::drawCursor(byte pos) {
}
void GraphicManager::drawReadyLight(Color color) {
- _surface.fillRect(Common::Rect(419, 195, 438, 197), color);
+ _surface.fillRect(Common::Rect(419, 195, 439, 198), color);
+ _scrolls.fillRect(Common::Rect(419, 195, 439, 198), color);
+}
+
+void GraphicManager::drawSoundLight(bool state) {
+ Color color = kColorBlack;
+ if (state)
+ color = kColorCyan;
+ else
+ color = kColorBlack;
+ _surface.fillRect(Common::Rect(419, 175, 439, 178), color);
+}
+
+void GraphicManager::drawErrorLight(bool state) {
+ Color color = kColorBlack;
+ if (state)
+ color = kColorRed;
+ else
+ color = kColorBlack;
+ _surface.fillRect(Common::Rect(419, 184, 439, 187), color);
+ refreshScreen();
}
/**
@@ -799,10 +1228,10 @@ void GraphicManager::showScroll() {
void GraphicManager::getNaturalPicture(SpriteType &sprite) {
sprite._type = kNaturalImage; // We simply read from the screen and later, in drawSprite() we draw it right back.
- sprite._size = sprite._xl * 8 * sprite._yl + 1;
- sprite._picture.create(sprite._xl * 8, sprite._yl + 1, Graphics::PixelFormat::createFormatCLUT8());
- for (uint16 y = 0; y < sprite._yl + 1; y++) {
- for (uint16 x = 0; x < sprite._xl * 8; x++)
+ sprite._size = sprite._width * 8 * sprite._height + 1;
+ sprite._picture.create(sprite._width * 8, sprite._height + 1, Graphics::PixelFormat::createFormatCLUT8());
+ for (uint16 y = 0; y < sprite._height + 1; y++) {
+ for (uint16 x = 0; x < sprite._width * 8; x++)
*(byte *)sprite._picture.getBasePtr(x, y) = *(byte *)_vm->_graphics->_surface.getBasePtr(sprite._x * 8 + x, sprite._y + y);
}
}
diff --git a/engines/avalanche/graphics.h b/engines/avalanche/graphics.h
index 636ae6fdf9..bd8fc6c8ff 100644
--- a/engines/avalanche/graphics.h
+++ b/engines/avalanche/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -38,6 +38,7 @@ namespace Avalanche {
class AvalancheEngine;
class AnimationType;
struct SpriteType;
+struct ChunkBlock;
typedef byte FontType[256][16];
typedef byte ManiType[2049];
@@ -58,6 +59,10 @@ public:
void loadDigits();
void loadMouse(byte which);
+ void drawRectangle(Common::Rect rect, Color color);
+ void drawFilledRectangle(Common::Rect rect, Color color);
+ void blackOutScreen();
+ void drawDot(int x, int y, Color color);
void drawLine(int x1, int y1, int x2, int y2, int penX, int penY, Color color);
Common::Point drawScreenArc(int16 x, int16 y, int16 stAngle, int16 endAngle, uint16 radius, Color color);
void drawPieSlice(int16 x, int16 y, int16 stAngle, int16 endAngle, uint16 radius, Color color);
@@ -79,8 +84,6 @@ public:
void drawDebugLines();
// For the mini-game "Nim".
- void drawFilledRectangle(Common::Rect rect, Color color);
- void drawRectangle(Common::Rect rect, Color color);
void nimLoad();
void nimDrawStone(int x, int y);
void nimDrawInitials();
@@ -90,6 +93,40 @@ public:
// Used in wobble()
void shiftScreen();
+ // Used in winning()
+ void drawWinningPic();
+
+ // Ghostroom's functions:
+ void ghostDrawMonster(byte ***picture, uint16 destX, int16 destY, MonsterType type);
+ Graphics::Surface ghostLoadPicture(Common::File &file, Common::Point &coord);
+ void ghostDrawPicture(const Graphics::Surface &picture, uint16 destX, uint16 destY);
+ void ghostDrawBackgroundItems(Common::File &file);
+
+ // Help's function:
+ void helpDrawButton(int y, byte which);
+ void helpDrawHighlight(byte which, Color color);
+ void helpDrawBigText(const Common::String text, int16 x, int16 y, Color color);
+
+ // Shoot em' up's functions:
+ void seuDrawTitle();
+ void seuLoad();
+ void seuFree();
+ void seuDrawPicture(int x, int y, byte which);
+ void seuDrawCameo(int destX, int destY, byte w1, byte w2);
+ uint16 seuGetPicWidth(int which);
+ uint16 seuGetPicHeight(int which);
+
+ // Main Menu's functions:
+ // The main menu uses a different screen height (350) from the game itself (200 * 2)
+ // so it needs it's own graphic functions on that matter.
+ void menuRefreshScreen();
+ void menuInitialize();
+ void menuFree();
+ void menuRestoreScreen();
+ void menuLoadPictures();
+ void menuDrawBigText(FontType font, uint16 x, uint16 y, Common::String text, Color color);
+ void menuDrawIndicator(int x);
+
void clearAlso();
void clearTextBar();
void setAlsoLine(int x1, int y1, int x2, int y2, Color color);
@@ -104,6 +141,8 @@ public:
void drawToolbar();
void drawCursor(byte pos);
void drawReadyLight(Color color);
+ void drawSoundLight(bool state);
+ void drawErrorLight(bool state);
void drawSign(Common::String name, int16 xl, int16 yl, int16 y);
void drawIcon(int16 x, int16 y, byte which);
void drawScreenLine(int16 x, int16 y, int16 x2, int16 y2, Color color);
@@ -128,6 +167,7 @@ private:
static const byte kEgaPaletteIndex[16];
static const byte kBackgroundHeight = 8 * 12080 / kScreenWidth; // With 640 width it's 151.
// The 8 = number of bits in a byte, and 12080 comes from Lucerna::load().
+ static const uint16 kMenuScreenHeight = 350;
Graphics::Surface _background;
Graphics::Surface _backup;
@@ -137,26 +177,32 @@ private:
Graphics::Surface _screen; // Only used in refreshScreen() to make it more optimized. (No recreation of it at every call of the function.)
Graphics::Surface _scrolls;
Graphics::Surface _surface;
+ Graphics::Surface _menu;
// For the mini-game "Nim".
- Graphics::Surface _nimStone;
+ Graphics::Surface _nimStone;
Graphics::Surface _nimInitials[3];
Graphics::Surface _nimLogo;
+ // For the mini-game "Shoot em' up".
+ Graphics::Surface _seuPictures[99];
+
byte _egaPalette[64][3];
AvalancheEngine *_vm;
+ void skipDifference(int size, const Graphics::Surface &picture, Common::File &file);
+
// Further information about these two: http://www.shikadi.net/moddingwiki/Raw_EGA_data
Graphics::Surface loadPictureGraphic(Common::File &file); // Reads Graphic-planar EGA data.
- Graphics::Surface loadPictureSign(Common::File &file, int xl, int yl); // Reads a tricky type of picture used for the "game over"/"about" scrolls and in the mini-game Nim.
-
+ Graphics::Surface loadPictureSign(Common::File &file, uint16 width, uint16 height); // Reads a tricky type of picture used for the "game over"/"about" scrolls and in the mini-game Nim.
+
void drawText(Graphics::Surface &surface, const Common::String text, FontType font, byte fontHeight, int16 x, int16 y, Color color);
+ void drawBigText(Graphics::Surface &surface, const Common::String text, FontType font, byte fontHeight, int16 x, int16 y, Color color);
void drawPicture(Graphics::Surface &target, const Graphics::Surface picture, uint16 destX, uint16 destY);
// Taken from Free Pascal's Procedure InternalEllipseDefault. Used to replace Pascal's procedure arc.
// Returns the end point of the arc. (Needed in Clock.)
- // TODO: Make it more accurate later.
Common::Point drawArc(Graphics::Surface &surface, int16 x, int16 y, int16 stAngle, int16 endAngle, uint16 radius, Color color);
};
diff --git a/engines/avalanche/help.cpp b/engines/avalanche/help.cpp
new file mode 100644
index 0000000000..9b077eb4fb
--- /dev/null
+++ b/engines/avalanche/help.cpp
@@ -0,0 +1,270 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike, Mark and Thomas Thurman.
+*/
+
+/* Original name: HELPER The help system unit. */
+
+#include "avalanche/avalanche.h"
+#include "avalanche/help.h"
+
+#include "common/scummsys.h"
+
+namespace Avalanche {
+
+Help::Help(AvalancheEngine *vm) {
+ _vm = vm;
+
+ for (int i = 0; i < 10; i++) {
+ _buttons[i]._trigger = Common::KEYCODE_INVALID;
+ _buttons[i]._whither = 0;
+ }
+ _highlightWas = 0;
+ _buttonNum = 0;
+ _holdLeft = false;
+}
+
+/**
+ * Loads and draws the chosen page of the help.
+ * @remarks Originally called 'getme'
+ */
+void Help::switchPage(byte which) {
+ // Help icons are 80x20.
+
+ _highlightWas = 177; // Forget where the highlight was.
+
+ Common::File file;
+
+ if (!file.open("help.avd"))
+ error("AVALANCHE: Help: File not found: help.avd");
+
+ file.seek(which * 2);
+ uint16 offset = file.readUint16LE();
+ file.seek(offset);
+
+ Common::String title = getLine(file);
+
+ _vm->_graphics->drawFilledRectangle(Common::Rect(0, 0, 640, 200), kColorBlue);
+ _vm->_graphics->drawFilledRectangle(Common::Rect(8, 40, 450, 200), kColorWhite);
+
+ byte index = file.readByte();
+ _vm->_graphics->helpDrawButton(-177, index);
+
+ // Plot the title:
+ _vm->_graphics->drawNormalText(title, _vm->_font, 8, 629 - 8 * title.size(), 26, kColorBlack);
+ _vm->_graphics->drawNormalText(title, _vm->_font, 8, 630 - 8 * title.size(), 25, kColorCyan);
+
+ _vm->_graphics->helpDrawBigText("help!", 549, 1, kColorBlack);
+ _vm->_graphics->helpDrawBigText("help!", 550, 0, kColorCyan);
+
+ byte y = 0;
+ do {
+ Common::String line = getLine(file);
+ if (!line.empty()) {
+ if (line.compareTo(Common::String('!')) == 0) // End of the help text is signalled with a '!'.
+ break;
+ if (line[0] == '\\') {
+ line.deleteChar(0);
+ _vm->_graphics->drawNormalText(line, _vm->_font, 8, 16, 41 + y * 10, kColorRed);
+ }
+ else
+ _vm->_graphics->drawNormalText(line, _vm->_font, 8, 16, 41 + y * 10, kColorBlack);
+ }
+ y++;
+ } while (true);
+
+ // We are now at the end of the text. Next we must read the icons:
+ y = 0;
+ _buttonNum = 0;
+ while (!file.eos()) {
+ int trigger = file.readByte();
+
+ if (trigger == 177)
+ break;
+ switch (trigger) {
+ case 254: // Escape
+ trigger = 27;
+ break;
+ case 214: // PageUp
+ trigger = 280;
+ break;
+ case 216: // PageDown
+ trigger = 281;
+ break;
+ default: // A - Z
+ // The characters are stored in the file in uppercase, but we need the lowercase versions for KeyCode:
+ trigger = tolower(trigger);
+ break;
+ }
+
+ _buttons[y]._trigger = Common::KeyCode(trigger);
+ index = file.readByte();
+ if (_buttons[y]._trigger != Common::KEYCODE_INVALID)
+ _vm->_graphics->helpDrawButton(13 + (y + 1) * 27, index);
+ _buttons[y]._whither = file.readByte(); // This is the position to jump to.
+
+ Common::String text = "";
+ switch (_buttons[y]._trigger) {
+ case Common::KEYCODE_ESCAPE:
+ text = Common::String("Esc");
+ break;
+ case Common::KEYCODE_PAGEUP:
+ text = Common::String(24);
+ break;
+ case Common::KEYCODE_PAGEDOWN:
+ text = Common::String(25);
+ break;
+ default:
+ text = Common::String(toupper(_buttons[y]._trigger));
+ break;
+ }
+
+ _vm->_graphics->helpDrawBigText(text, 589 - (text.size() * 8), 18 + (y + 1) * 27, kColorBlack);
+ _vm->_graphics->helpDrawBigText(text, 590 - (text.size() * 8), 17 + (y + 1) * 27, kColorCyan);
+
+ y++;
+ _buttonNum++;
+ }
+
+ _vm->_graphics->refreshScreen();
+
+ file.close();
+}
+
+Common::String Help::getLine(Common::File &file) {
+ Common::String line;
+ byte length = file.readByte();
+ for (int i = 0; i < length; i++) {
+ char c = file.readByte();
+ line += (c ^ 177);
+ }
+ return line;
+}
+
+bool Help::handleMouse(const Common::Event &event) {
+ Common::Point mousePos;
+ mousePos.x = event.mouse.x;
+ mousePos.y = event.mouse.y / 2;
+
+ int index = -1;
+
+ if (event.type == Common::EVENT_LBUTTONUP) { // Clicked *somewhere*...
+ _holdLeft = false;
+
+ if ((mousePos.x < 470) || (mousePos.x > 550) || (((mousePos.y - 13) % 27) > 20))
+ index = -1;
+ else // Clicked on a button.
+ index = ((mousePos.y - 13) / 27) - 1;
+ } else { // LBUTTONDOWN or MOUSEMOVE
+ int highlightIs = 0;
+
+ // Decide which button we are hovering the cursor over:
+ if ((mousePos.x > 470) && (mousePos.x <= 550) && (((mousePos.y - 13) % 27) <= 20)) { // No click, so highlight.
+ highlightIs = (mousePos.y - 13) / 27 - 1;
+ if ((highlightIs < 0) || (5 < highlightIs))
+ highlightIs = 177; // In case of silly values.
+ } else
+ highlightIs = 177;
+
+ Color highlightColor = kColorLightblue;
+ // If we clicked on a button or we are holding down the button, we have to highlight it with cyan:
+ if (((highlightIs != 177) && (event.type == Common::EVENT_LBUTTONDOWN)) || _holdLeft) {
+ _holdLeft = true;
+ highlightColor = kColorLightcyan;
+ }
+
+ // Erase the previous highlight only if it's needed:
+ if (_highlightWas != highlightIs)
+ _vm->_graphics->helpDrawHighlight(_highlightWas, kColorBlue);
+
+ // Highlight the current one with the proper color:
+ if ((highlightIs != 177) && (_buttons[highlightIs]._trigger != Common::KEYCODE_INVALID)) {
+ _highlightWas = highlightIs;
+ _vm->_graphics->helpDrawHighlight(highlightIs, highlightColor);
+ }
+ }
+
+ if ((index >= 0) && (_buttons[index]._trigger != Common::KEYCODE_INVALID)) {
+ if (_buttons[index]._trigger == Common::KEYCODE_ESCAPE)
+ return true;
+ else {
+ _vm->fadeOut();
+ switchPage(_buttons[index]._whither);
+ _vm->fadeIn();
+ return false;
+ }
+ }
+
+ return false;
+}
+
+bool Help::handleKeyboard(const Common::Event &event) {
+ if (event.kbd.keycode == Common::KEYCODE_ESCAPE)
+ return true;
+
+ for (int i = 0; i < _buttonNum; i++) {
+ if (_buttons[i]._trigger == event.kbd.keycode) {
+ _vm->fadeOut();
+ switchPage(_buttons[i]._whither);
+ _vm->fadeIn();
+ return false;
+ }
+ }
+
+ return false;
+}
+
+/**
+ * @remarks Originally called 'boot_help'
+ */
+void Help::run() {
+ _vm->_graphics->saveScreen();
+ _vm->fadeOut();
+ switchPage(0);
+ _vm->fadeIn();
+
+ _vm->_graphics->loadMouse(kCurHelp);
+
+ // Originally it was the body of 'continue_help':
+ bool close = false;
+ while (!_vm->shouldQuit() && !close) {
+ Common::Event event;
+ _vm->getEvent(event);
+ if (event.type == Common::EVENT_KEYDOWN)
+ close = handleKeyboard(event);
+ else if ((event.type == Common::EVENT_LBUTTONDOWN) || (event.type == Common::EVENT_LBUTTONUP) || (event.type == Common::EVENT_MOUSEMOVE))
+ close = handleMouse(event);
+
+ _vm->_graphics->refreshScreen();
+ }
+ // End of 'continue_help'.
+
+ _vm->fadeOut();
+ _vm->_graphics->restoreScreen();
+ _vm->_graphics->removeBackup();
+ _vm->fadeIn();
+}
+
+} // End of namespace Avalanche
diff --git a/engines/avalanche/help.h b/engines/avalanche/help.h
new file mode 100644
index 0000000000..7543d87047
--- /dev/null
+++ b/engines/avalanche/help.h
@@ -0,0 +1,65 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike, Mark and Thomas Thurman.
+*/
+
+/* Original name: HELPER The help system unit. */
+
+#ifndef AVALANCHE_HELP_H
+#define AVALANCHE_HELP_H
+
+namespace Avalanche {
+class AvalancheEngine;
+
+class Help {
+public:
+ Help(AvalancheEngine *vm);
+
+ void run();
+
+private:
+ struct Button {
+ Common::KeyCode _trigger;
+ byte _whither;
+ };
+
+ AvalancheEngine *_vm;
+
+ Button _buttons[10];
+ byte _highlightWas;
+ byte _buttonNum; // How many buttons do we have on the screen at the moment?
+ bool _holdLeft; // Is the left mouse button is still being held?
+
+ void switchPage(byte which);
+ Common::String getLine(Common::File &file); // It was a nested function in getMe().
+
+ // These two return true if we have to leave the Help:
+ bool handleMouse(const Common::Event &event);
+ bool handleKeyboard(const Common::Event &event);
+};
+
+} // End of namespace Avalanche
+
+#endif // AVALANCHE_HELP_H
diff --git a/engines/avalanche/highscore.cpp b/engines/avalanche/highscore.cpp
new file mode 100644
index 0000000000..5f47aeb894
--- /dev/null
+++ b/engines/avalanche/highscore.cpp
@@ -0,0 +1,110 @@
+/* ScummVM - Graphic Adventure Engine
+*
+* ScummVM is the legal property of its developers, whose names
+* are too numerous to list here. Please refer to the COPYRIGHT
+* file distributed with this source distribution.
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License
+* as published by the Free Software Foundation; either version 2
+* of the License, or (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+*
+*/
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike: Mark and Thomas Thurman.
+*/
+
+#include "avalanche/avalanche.h"
+#include "avalanche/highscore.h"
+
+#include "common/savefile.h"
+
+namespace Avalanche {
+
+HighScore::HighScore(AvalancheEngine *vm) {
+ _vm = vm;
+}
+
+void HighScore::displayHighScores() {
+ warning("STUB: HighScore::displayHighScores(");
+}
+
+void HighScore::saveHighScores() {
+ int firstSmaller = 0;
+ while ((firstSmaller < 12) && (_data[firstSmaller]._score >= _vm->_score))
+ firstSmaller++;
+
+ if (firstSmaller < 12) {
+ // Shift all the lower scores down a space:
+ for (int i = firstSmaller; i < 11; i++)
+ _data[i + 1] = _data[i];
+ // Set the new high score:
+ _data[firstSmaller]._name = "Player"; // TODO: Come up with something for that. In the original it wasn't implemented at all...
+ _data[firstSmaller]._rank = _vm->_parser->rank();
+ _data[firstSmaller]._score = _vm->_score;
+ }
+
+ Common::OutSaveFile *f = g_system->getSavefileManager()->openForSaving("scores.avd");
+ if (!f) {
+ warning("Can't create file 'scores.avd', high scores are not saved.");
+ return;
+ }
+ Common::Serializer sz(NULL, f);
+ syncHighScores(sz);
+ f->finalize();
+ delete f;
+}
+
+void HighScore::loadHighScroes() {
+ Common::File file;
+ if (!file.exists("scores.avd")) {
+ produceDefaultHighScores();
+ } else {
+ Common::InSaveFile *f = g_system->getSavefileManager()->openForLoading("scores.avd");
+ if (!f)
+ return;
+ Common::Serializer sz(f, NULL);
+ syncHighScores(sz);
+ delete f;
+ }
+}
+
+void HighScore::produceDefaultHighScores() {
+ for (int i = 0; i < 12; i++) {
+ _data[i]._score = 32 - (i + 1) * 2;
+ _data[i]._rank = "...";
+ }
+ _data[0]._name = "Mike";
+ _data[1]._name = "Liz";
+ _data[2]._name = "Thomas";
+ _data[3]._name = "Mark";
+ _data[4]._name = "Mandy";
+ _data[5]._name = "Andrew";
+ _data[6]._name = "Lucy Tryphena";
+ _data[7]._name = "Tammy the dog";
+ _data[8]._name = "Avaricius";
+ _data[9]._name = "Spellchick";
+ _data[10]._name = "Caddelli";
+ _data[11]._name = "Spludwick";
+}
+
+void HighScore::syncHighScores(Common::Serializer &sz) {
+ for (int i = 0; i < 12; i++) {
+ sz.syncString(_data[i]._name);
+ sz.syncAsUint16LE(_data[i]._score);
+ sz.syncString(_data[i]._rank);
+ }
+}
+
+} // End of namespace Avalanche
diff --git a/engines/avalanche/highscore.h b/engines/avalanche/highscore.h
new file mode 100644
index 0000000000..de7ec36ed5
--- /dev/null
+++ b/engines/avalanche/highscore.h
@@ -0,0 +1,59 @@
+/* ScummVM - Graphic Adventure Engine
+*
+* ScummVM is the legal property of its developers, whose names
+* are too numerous to list here. Please refer to the COPYRIGHT
+* file distributed with this source distribution.
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License
+* as published by the Free Software Foundation; either version 2
+* of the License, or (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+*
+*/
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike: Mark and Thomas Thurman.
+*/
+
+#ifndef AVALANCHE_HIGHSCORE_H
+#define AVALANCHE_HIGHSCORE_H
+
+namespace Avalanche {
+class AvalancheEngine;
+
+struct HighScoreData {
+ Common::String _name;
+ uint16 _score;
+ Common::String _rank;
+};
+
+class HighScore {
+public:
+ HighScore(AvalancheEngine *vm);
+
+ void displayHighScores();
+ void saveHighScores();
+ void loadHighScroes();
+
+private:
+ AvalancheEngine *_vm;
+
+ HighScoreData _data[12];
+
+ void produceDefaultHighScores();
+ void syncHighScores(Common::Serializer &sz);
+};
+
+} // End of namespace Avalanche
+
+#endif // AVALANCHE_HIGHSCORE_H
diff --git a/engines/avalanche/mainmenu.cpp b/engines/avalanche/mainmenu.cpp
new file mode 100644
index 0000000000..543684556c
--- /dev/null
+++ b/engines/avalanche/mainmenu.cpp
@@ -0,0 +1,116 @@
+/* ScummVM - Graphic Adventure Engine
+*
+* ScummVM is the legal property of its developers, whose names
+* are too numerous to list here. Please refer to the COPYRIGHT
+* file distributed with this source distribution.
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License
+* as published by the Free Software Foundation; either version 2
+* of the License, or (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+*
+*/
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike, Mark and Thomas Thurman.
+*/
+
+#include "avalanche/avalanche.h"
+#include "avalanche/mainmenu.h"
+
+namespace Avalanche {
+
+MainMenu::MainMenu(AvalancheEngine *vm) {
+ _vm = vm;
+
+ _registrant = Common::String("");
+}
+
+void MainMenu::run() {
+ CursorMan.showMouse(false);
+ _vm->_graphics->menuInitialize();
+ _vm->_graphics->menuLoadPictures();
+ loadRegiInfo();
+ loadFont();
+
+ option(1, "Play the game.");
+ option(2, "Read the background.");
+ option(3, "Preview... perhaps...");
+ option(4, "View the documentation.");
+ option(5, "Registration info.");
+ option(6, "Exit back to DOS.");
+ centre(274, _registrant);
+ centre(301, "Make your choice, or wait for the demo.");
+
+ _vm->_graphics->menuRefreshScreen();
+
+ wait();
+}
+
+void MainMenu::loadFont() {
+ Common::File file;
+ if (!file.open("avalot.fnt"))
+ error("AVALANCHE: Scrolls: File not found: avalot.fnt");
+ for (int16 i = 0; i < 256; i++)
+ file.read(_font[i], 16);
+ file.close();
+}
+
+void MainMenu::loadRegiInfo() {
+ _registrant = "(Unregistered evaluation copy.)";
+ warning("STUB: MainMenu::loadRegiInfo()");
+}
+
+void MainMenu::option(byte which, Common::String what) {
+ _vm->_graphics->menuDrawBigText(_font, 127, 39 + which * 33, Common::String(which + 48) + ')', kColorBlack);
+ _vm->_graphics->menuDrawBigText(_font, 191, 39 + which * 33, what, kColorBlack);
+}
+
+void MainMenu::centre(int16 y, Common::String text) {
+ _vm->_graphics->menuDrawBigText(_font, 320 - text.size() * 8, y, text, kColorLightgray);
+}
+
+void MainMenu::wait() {
+ int x = 0;
+ while (!_vm->shouldQuit()) {
+ _vm->_graphics->menuDrawIndicator(x);
+ _vm->_system->delayMillis(40);
+ x++;
+ if (x == 641)
+ x = 0;
+ Common::Event event;
+ _vm->getEvent(event);
+ if (event.type == Common::EVENT_KEYDOWN) {
+ switch (event.kbd.keycode) {
+ case Common::KEYCODE_SPACE:
+ case Common::KEYCODE_RETURN:
+ case Common::KEYCODE_1: // Falltroughs are inteded.
+ // Play the game
+ _vm->_graphics->menuFree();
+ _vm->_graphics->menuRestoreScreen();
+ CursorMan.showMouse(true);
+ return;
+ case Common::KEYCODE_ESCAPE:
+ case Common::KEYCODE_6: // Falltroughs are inteded.
+ // Exit back to DOS
+ _vm->_letMeOut = true;
+ _vm->_graphics->menuFree();
+ return;
+ default:
+ break;
+ }
+ }
+ }
+}
+
+} // End of namespace Avalanche
diff --git a/engines/avalanche/mainmenu.h b/engines/avalanche/mainmenu.h
new file mode 100644
index 0000000000..e973e0ccf3
--- /dev/null
+++ b/engines/avalanche/mainmenu.h
@@ -0,0 +1,55 @@
+/* ScummVM - Graphic Adventure Engine
+*
+* ScummVM is the legal property of its developers, whose names
+* are too numerous to list here. Please refer to the COPYRIGHT
+* file distributed with this source distribution.
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License
+* as published by the Free Software Foundation; either version 2
+* of the License, or (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+*
+*/
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike, Mark and Thomas Thurman.
+*/
+
+#ifndef AVALANCHE_MAINMENU_H
+#define AVALANCHE_MAINMENU_H
+
+namespace Avalanche {
+class AvalancheEngine;
+
+class MainMenu {
+public:
+ MainMenu(AvalancheEngine *vm);
+
+ void run();
+
+private:
+ AvalancheEngine *_vm;
+
+ Common::String _registrant;
+ FontType _font;
+
+ void loadFont();
+ void loadRegiInfo();
+ void option(byte which, Common::String what);
+ void centre(int16 y, Common::String text);
+ void wait();
+};
+
+} // End of namespace Avalanche
+
+#endif // AVALANCHE_MAINMENU_H
diff --git a/engines/avalanche/module.mk b/engines/avalanche/module.mk
index 39ca94e3f8..29bc039b42 100644
--- a/engines/avalanche/module.mk
+++ b/engines/avalanche/module.mk
@@ -9,15 +9,19 @@ MODULE_OBJS = \
console.o \
detection.o \
graphics.o \
- menu.o \
+ dropdown.o \
parser.o \
- pingo.o \
dialogs.o \
sequence.o \
sound.o \
timer.o \
nim.o \
- clock.o
+ clock.o \
+ ghostroom.o \
+ help.o \
+ shootemup.o \
+ mainmenu.o \
+ highscore.o
# This module can be built as a plugin
ifeq ($(ENABLE_AVALANCHE), DYNAMIC_PLUGIN)
diff --git a/engines/avalanche/nim.cpp b/engines/avalanche/nim.cpp
index e4897a6d49..9457a5065b 100644
--- a/engines/avalanche/nim.cpp
+++ b/engines/avalanche/nim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -152,7 +152,7 @@ void Nim::setup() {
_vm->fadeIn();
_vm->_graphics->nimLoad();
- _vm->_graphics->drawFilledRectangle(Common::Rect(0, 0, 640, 200), kColorBlack);
+ _vm->_graphics->blackOutScreen();
// Upper left rectangle.
_vm->_graphics->drawRectangle(Common::Rect(10, 5, 381, 71), kColorRed);
_vm->_graphics->drawFilledRectangle(Common::Rect(11, 6, 380, 70), kColorBrown);
@@ -383,8 +383,8 @@ void Nim::takeSome() {
int x1 = 63 + (_stones[_row] - _number) * 64;
int y1 = 38 + 35 * (_row + 1);
- int x2 = 54 + _stones[_row] * 64;
- int y2 = 63 + 35 * (_row + 1);
+ int x2 = 55 + _stones[_row] * 64;
+ int y2 = 64 + 35 * (_row + 1);
_vm->_graphics->drawRectangle(Common::Rect(x1, y1, x2, y2), kColorBlue); // Draw the selection rectangle.
_vm->_graphics->refreshScreen();
@@ -396,8 +396,8 @@ void Nim::takeSome() {
_vm->_graphics->drawRectangle(Common::Rect(x1, y1, x2, y2), kColorBlack); // Erase the previous selection.
x1 = 63 + (_stones[_row] - _number) * 64;
y1 = 38 + 35 * (_row + 1);
- x2 = 54 + _stones[_row] * 64;
- y2 = 63 + 35 * (_row + 1);
+ x2 = 55 + _stones[_row] * 64;
+ y2 = 64 + 35 * (_row + 1);
_vm->_graphics->drawRectangle(Common::Rect(x1, y1, x2, y2), kColorBlue); // Draw the new one.
_vm->_graphics->refreshScreen();
}
diff --git a/engines/avalanche/nim.h b/engines/avalanche/nim.h
index 7e5f55e69f..3c2f0455cf 100644
--- a/engines/avalanche/nim.h
+++ b/engines/avalanche/nim.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/parser.cpp b/engines/avalanche/parser.cpp
index b0524a0d7e..b152747ab0 100644
--- a/engines/avalanche/parser.cpp
+++ b/engines/avalanche/parser.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -381,8 +381,8 @@ void Parser::init() {
void Parser::handleInputText(const Common::Event &event) {
byte inChar = event.kbd.ascii;
warning("STUB: Parser::handleInputText()");
-// if (_vm->_menu->_activeMenuItem._activeNow) {
-// _vm->_menu->parseKey(inChar, _vm->_enhanced->extd);
+// if (_vm->_dropdown->_activeMenuItem._activeNow) {
+// _vm->_dropdown->parseKey(inChar, _vm->_enhanced->extd);
// } else {
if (_inputText.size() < 76) {
if ((inChar == '"') || (inChar == '`')) {
@@ -402,7 +402,7 @@ void Parser::handleInputText(const Common::Event &event) {
}
void Parser::handleBackspace() {
- if (_vm->_menu->_activeMenuItem._activeNow)
+ if (_vm->_dropdown->_activeMenuItem._activeNow)
return;
if (_inputTextPos > 0) {
@@ -416,7 +416,7 @@ void Parser::handleBackspace() {
}
void Parser::handleReturn() {
- if (_vm->_menu->_activeMenuItem._activeNow)
+ if (_vm->_dropdown->_activeMenuItem._activeNow)
tryDropdown();
else if (!_inputText.empty()) {
_inputTextBackup = _inputText;
@@ -468,7 +468,7 @@ void Parser::handleFunctionKey(const Common::Event &event) {
break;
case Common::KEYCODE_F7:
if (event.kbd.flags & Common::KBD_CTRL)
- _vm->majorRedraw();
+ _vm->_graphics->refreshScreen();
else
_vm->callVerb(kVerbCodeOpen);
break;
@@ -602,7 +602,7 @@ Common::String Parser::rank() {
};
for (int i = 0; i < 8; i++) {
- if ((_vm->_dnascore >= ranks[i]._score) && (_vm->_dnascore < ranks[i + 1]._score))
+ if ((_vm->_score >= ranks[i]._score) && (_vm->_score < ranks[i + 1]._score))
return Common::String(ranks[i]._title);
}
return "";
@@ -2021,8 +2021,7 @@ void Parser::doThat() {
break;
case 55:
if (_vm->_room == kRoomArgentPub)
- // play_nim();
- warning("STUB: Parser::doThat() - case kVerbCodeplay - play_nim()");
+ _vm->_nim->playNim();
else
_vm->_dialogs->displayText(kWhat);
break;
@@ -2043,8 +2042,7 @@ void Parser::doThat() {
}
break;
case kVerbCodeHelp:
- // boot_help();
- warning("STUB: Parser::doThat() - case kVerbCodehelp");
+ _vm->_help->run();
break;
case kVerbCodeLarrypass:
_vm->_dialogs->displayText("Wrong game!");
@@ -2053,8 +2051,7 @@ void Parser::doThat() {
_vm->_dialogs->displayText("Hello, Phaon!");
break;
case kVerbCodeBoss:
- // bosskey();
- warning("STUB: Parser::doThat() - case kVerbCodeboss");
+ bossKey();
break;
case kVerbCodePee:
if (_vm->getFlag('P')) {
@@ -2309,7 +2306,7 @@ void Parser::doThat() {
break;
case kVerbCodeScore: {
Common::String tmpStr = Common::String::format("Your score is %d,%c%cout of a possible 128.%c%c " \
- "This gives you a rank of %s.%c%c%s", _vm->_dnascore, kControlCenter, kControlNewLine, kControlNewLine,
+ "This gives you a rank of %s.%c%c%s", _vm->_score, kControlCenter, kControlNewLine, kControlNewLine,
kControlNewLine, rank().c_str(), kControlNewLine, kControlNewLine, totalTime().c_str());
_vm->_dialogs->displayText(tmpStr);
}
@@ -2427,6 +2424,25 @@ void Parser::doThat() {
}
}
+void Parser::bossKey() {
+ _vm->_graphics->saveScreen();
+ _vm->_graphics->blackOutScreen();
+ _vm->_graphics->loadMouse(kCurUpArrow);
+ _vm->loadBackground(98);
+ _vm->_graphics->drawNormalText("Graph/Histo/Draw/Sample: \"JANJUN93.GRA\": (W3-AB3)", _vm->_font, 8, 120, 169, kColorDarkgray);
+ _vm->_graphics->drawNormalText("Press any key or click the mouse to return.", _vm->_font, 8, 144, 182, kColorDarkgray);
+ _vm->_graphics->refreshScreen();
+ Common::Event event;
+ _vm->getEvent(event);
+ while ((!_vm->shouldQuit()) && (event.type != Common::EVENT_KEYDOWN) && (event.type != Common::EVENT_LBUTTONDOWN)){
+ _vm->getEvent(event);
+ _vm->_graphics->refreshScreen();
+ }
+ _vm->_graphics->restoreScreen();
+ _vm->_graphics->removeBackup();
+ _vm->loadBackground(_vm->_room);
+}
+
void Parser::verbOpt(byte verb, Common::String &answer, char &ansKey) {
// kVerbCodegive isn't dealt with by this procedure, but by ddm__with.
switch (verb) {
diff --git a/engines/avalanche/parser.h b/engines/avalanche/parser.h
index 20066329e5..6133c41442 100644
--- a/engines/avalanche/parser.h
+++ b/engines/avalanche/parser.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -72,13 +72,11 @@ public:
byte _wearing; // what you're wearing
Parser(AvalancheEngine *vm);
-
void init();
void parse();
void doThat();
void verbOpt(byte verb, Common::String &answer, char &ansKey);
void drink();
-
void handleInputText(const Common::Event &event);
void handleBackspace();
void handleReturn();
@@ -89,7 +87,7 @@ public:
void tryDropdown();
int16 getPos(const Common::String &crit, const Common::String &src);
void doVerb(VerbCode id);
-
+ Common::String rank();
void resetVariables();
void synchronize(Common::Serializer &sz);
@@ -112,10 +110,7 @@ private:
byte wordNum(Common::String word);
void replace(Common::String oldChars, byte newChar);
-
- Common::String rank();
Common::String totalTime();
-
void clearWords();
void cheatParse(Common::String codes);
void stripPunctuation(Common::String &word);
@@ -146,6 +141,7 @@ private:
void playHarp();
void winSequence();
void wipeText();
+ void bossKey();
};
} // End of namespace Avalanche
diff --git a/engines/avalanche/pingo.cpp b/engines/avalanche/pingo.cpp
deleted file mode 100644
index 40467ab839..0000000000
--- a/engines/avalanche/pingo.cpp
+++ /dev/null
@@ -1,94 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-/*
- * This code is based on the original source code of Lord Avalot d'Argent version 1.3.
- * Copyright (c) 1994-1995 Mike, Mark and Thomas Thurman.
- */
-
-/* PINGO Full-screen sub-parts of the game. */
-
-#include "avalanche/avalanche.h"
-#include "avalanche/pingo.h"
-
-namespace Avalanche {
-
-Pingo::Pingo(AvalancheEngine *vm) {
- _vm = vm;
-}
-
-void Pingo::dPlot(int16 x, int16 y, Common::String z) {
- warning("STUB: Pingo::dPlot()");
-}
-
-void Pingo::bossKey() {
- warning("STUB: Pingo::bossKey()");
-}
-
-void Pingo::copy02() { // taken from Wobble (below)
- warning("STUB: Pingo::copy02()");
-}
-
-void Pingo::copy03() { // taken from Wobble (below)
- warning("STUB: Pingo::copy03()");
-}
-
-void Pingo::copyPage(byte frp, byte top) { // taken from Copy02 (above)
- warning("STUB: Pingo::copyPage()");
-}
-
-void Pingo::winningPic() {
- Common::File f;
- _vm->fadeOut();
-
- if (!f.open("finale.avd"))
- error("AVALANCHE: File not found: finale.avd");
-
-#if 0
- for (int bit = 0; bit <= 3; bit++) {
- port[0x3c4] = 2;
- port[0x3ce] = 4;
- port[0x3c5] = 1 << bit;
- port[0x3cf] = bit;
- blockread(f, mem[0xa000 * 0], 16000);
- }
-#endif
-
- f.close();
-
- warning("STUB: Pingo::winningPic()");
-
- _vm->fadeIn();
-
-#if 0
- do {
- _vm->check();
- } while (!(keypressed() || (mrelease > 0)));
- while (keypressed())
- char r = readkey();
- major_redraw();
-#endif
-
- warning("STUB: Pingo::winningPic()");
-}
-
-} // End of namespace Avalanche.
diff --git a/engines/avalanche/sequence.cpp b/engines/avalanche/sequence.cpp
index 3a60c4ec1d..d63532a457 100644
--- a/engines/avalanche/sequence.cpp
+++ b/engines/avalanche/sequence.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/sequence.h b/engines/avalanche/sequence.h
index d3c1b54963..8062118059 100644
--- a/engines/avalanche/sequence.h
+++ b/engines/avalanche/sequence.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/shootemup.cpp b/engines/avalanche/shootemup.cpp
new file mode 100644
index 0000000000..cabd19d6f9
--- /dev/null
+++ b/engines/avalanche/shootemup.cpp
@@ -0,0 +1,693 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike, Mark and Thomas Thurman.
+*/
+
+#include "avalanche/avalanche.h"
+#include "avalanche/shootemup.h"
+
+#include "common/random.h"
+
+namespace Avalanche {
+
+const byte ShootEmUp::kStocks = 27;
+const byte ShootEmUp::kAvvyShoots = 86;
+const byte ShootEmUp::kFacingRight = 87;
+const byte ShootEmUp::kFacingLeft = 93;
+const long int ShootEmUp::kFlag = -20047;
+const byte ShootEmUp::kFrameDelayMax = 2;
+const byte ShootEmUp::kAvvyY = 150;
+const byte ShootEmUp::kShooting[7] = { 86, 79, 80, 81, 80, 79, 86 };
+const byte ShootEmUp::kTimesASecond = 18;
+const byte ShootEmUp::kFlashTime = 20; // If flash_time is <= this, the word "time" will flash. Should be about 20.
+const byte ShootEmUp::kLeftMargin = 10;
+const int16 ShootEmUp::kRightMargin = 605;
+
+ShootEmUp::ShootEmUp(AvalancheEngine *vm) {
+ _vm = vm;
+
+ _time = 120;
+ for (int i = 0; i < 7; i++)
+ _stockStatus[i] = 0;
+ for (int i = 0; i < 99; i++) {
+ _sprites[i]._ix = 0;
+ _sprites[i]._iy = 0;
+ _sprites[i]._x = kFlag;
+ _sprites[i]._y = 0;
+ _sprites[i]._p = 0;
+ _sprites[i]._timeout = 0;
+ _sprites[i]._cameo = false;
+ _sprites[i]._cameoFrame = 0;
+ _sprites[i]._missile = false;
+ _sprites[i]._wipe = false;
+ }
+ _rectNum = 0;
+ _avvyWas = 320;
+ _avvyPos = 320;
+ _avvyAnim = 1;
+ _avvyFacing = kFacingLeft;
+ _altWasPressedBefore = false;
+ _throwNext = 73;
+ _firing = false;
+ for (int i = 0; i < 4; i++) {
+ _running[i]._x = kFlag;
+ _running[i]._y = 0;
+ _running[i]._frame = 0;
+ _running[i]._tooHigh = 0;
+ _running[i]._lowest = 0;
+ _running[i]._ix = 0;
+ _running[i]._iy = 0;
+ _running[i]._frameDelay = 0;
+ }
+ for (int i = 0; i < 7; i++)
+ _hasEscaped[i] = false;
+ _count321 = 255; // Counting down.
+ _howManyHaveEscaped = 0;
+ _escapeCount = 0;
+ _escaping = false;
+ _timeThisSecond = 0;
+ _cp = false;
+ _wasFacing = 0;
+ _score = 0;
+ _escapeStock = 0;
+ _gotOut = false;
+}
+
+uint16 ShootEmUp::run() {
+ CursorMan.showMouse(false);
+ _vm->_graphics->saveScreen();
+ _vm->fadeOut();
+ _vm->_graphics->seuDrawTitle();
+ _vm->fadeIn();
+
+ _vm->_graphics->seuLoad();
+
+ // Should we show the instructions?
+ while (!_vm->shouldQuit()) {
+ Common::Event event;
+ _vm->getEvent(event);
+ if (event.type == Common::EVENT_KEYDOWN) {
+ if ((event.kbd.keycode == Common::KEYCODE_i) || (event.kbd.keycode == Common::KEYCODE_F1))
+ instructions();
+ break; // We don't show the instructions and simply go on with the minigame if not I or F1 was pressed.
+ }
+ }
+
+ setup();
+
+ while ((_time != 0) && (!_vm->shouldQuit())) {
+ uint32 beginLoop = _vm->_system->getMillis();
+
+ blankIt();
+ hitPeople();
+ plotThem();
+ moveThem();
+ moveAvvy();
+ bumpFolk();
+ peopleRunning();
+ animate();
+ escapeCheck();
+ collisionCheck();
+ updateTime();
+ check321();
+ readKbd();
+
+ _cp = !_cp;
+
+ _vm->_graphics->refreshScreen();
+
+ uint32 delay = _vm->_system->getMillis() - beginLoop;
+ if (delay <= 55)
+ _vm->_system->delayMillis(55 - delay); // Replaces slowdown(); 55 comes from 18.2 Hz (B Flight).
+ };
+
+ _vm->fadeOut();
+ _vm->_graphics->restoreScreen();
+ _vm->_graphics->removeBackup();
+ _vm->fadeIn();
+ CursorMan.showMouse(true);
+
+ return _score;
+}
+
+bool ShootEmUp::overlap(uint16 a1x, uint16 a1y, uint16 a2x, uint16 a2y, uint16 b1x, uint16 b1y, uint16 b2x, uint16 b2y) {
+ // By De Morgan's law:
+ return (a2x >= b1x) && (b2x >= a1x) && (a2y >= b1y) && (b2y >= a1y);
+}
+
+byte ShootEmUp::getStockNumber(byte index) {
+ while (_hasEscaped[index]) {
+ index++;
+ if (index == 7)
+ index = 0;
+ }
+ return index;
+}
+
+void ShootEmUp::blankIt() {
+ for (int i = 0; i < _rectNum; i++)
+ _vm->_graphics->drawFilledRectangle(_rectangles[i], kColorBlack);
+ _rectNum = 0;
+}
+
+void ShootEmUp::moveThem() {
+ for (int i = 0; i < 99; i++) {
+ if (_sprites[i]._x != kFlag) {
+ _sprites[i]._x += _sprites[i]._ix;
+ _sprites[i]._y += _sprites[i]._iy;
+ }
+ }
+}
+
+void ShootEmUp::blank(Common::Rect rect) {
+ _rectangles[_rectNum++] = rect;
+}
+
+void ShootEmUp::plotThem() {
+ for (int i = 0; i < 99; i++) {
+ if (_sprites[i]._x != kFlag) {
+ if (_sprites[i]._cameo) {
+ _vm->_graphics->seuDrawCameo(_sprites[i]._x, _sprites[i]._y, _sprites[i]._p, _sprites[i]._cameoFrame);
+ if (!_cp) {
+ _sprites[i]._cameoFrame += 2;
+ _sprites[i]._p += 2;
+ }
+ } else
+ _vm->_graphics->seuDrawPicture(_sprites[i]._x, _sprites[i]._y, _sprites[i]._p);
+
+ if (_sprites[i]._wipe)
+ blank(Common::Rect(_sprites[i]._x, _sprites[i]._y, _sprites[i]._x + _vm->_graphics->seuGetPicWidth(_sprites[i]._p), _sprites[i]._y + _vm->_graphics->seuGetPicHeight(_sprites[i]._p)));
+
+ if (_sprites[i]._timeout > 0) {
+ _sprites[i]._timeout--;
+ if (_sprites[i]._timeout == 0)
+ _sprites[i]._x = kFlag;
+ }
+ }
+ }
+}
+
+void ShootEmUp::define(int16 x, int16 y, int8 p, int8 ix, int8 iy, int16 time, bool isAMissile, bool doWeWipe) {
+ for (int i = 0; i < 99; i++) {
+ if (_sprites[i]._x == kFlag) {
+ _sprites[i]._x = x;
+ _sprites[i]._y = y;
+ _sprites[i]._p = p;
+ _sprites[i]._ix = ix;
+ _sprites[i]._iy = iy;
+ _sprites[i]._timeout = time;
+ _sprites[i]._cameo = false;
+ _sprites[i]._missile = isAMissile;
+ _sprites[i]._wipe = doWeWipe;
+ return;
+ }
+ }
+}
+
+void ShootEmUp::defineCameo(int16 x, int16 y, int8 p, int16 time) {
+ for (int i = 0; i < 99; i++) {
+ if (_sprites[i]._x == kFlag) {
+ _sprites[i]._x = x;
+ _sprites[i]._y = y;
+ _sprites[i]._p = p;
+ _sprites[i]._ix = 0;
+ _sprites[i]._iy = 0;
+ _sprites[i]._timeout = time;
+ _sprites[i]._cameo = true;
+ _sprites[i]._cameoFrame = p + 1;
+ _sprites[i]._missile = false;
+ _sprites[i]._wipe = false;
+ return;
+ }
+ }
+}
+
+void ShootEmUp::showStock(byte index) {
+ if (_escaping && (index == _escapeStock)) {
+ _vm->_graphics->seuDrawPicture(index * 90 + 20, 30, kStocks + 2);
+ return;
+ }
+
+ if (_stockStatus[index] > 5)
+ return;
+
+ _vm->_graphics->seuDrawPicture(index * 90 + 20, 30, kStocks + _stockStatus[index]);
+ _stockStatus[index] = 1 - _stockStatus[index];
+}
+
+void ShootEmUp::drawNumber(int number, int size, int x) {
+ for (int i = 0; i < size - 1; i++) {
+ int divisor = 10;
+ for (int j = 0; j < size - 2 - i; j++)
+ divisor *= 10;
+ char value = number / divisor;
+ _vm->_graphics->seuDrawPicture(x + i * 10, 0, value);
+ number -= value * divisor;
+ }
+ _vm->_graphics->seuDrawPicture(x + (size - 1) * 10, 0, number % 10);
+}
+
+void ShootEmUp::showScore() {
+ drawNumber(_score, 5, 40);
+}
+
+void ShootEmUp::showTime() {
+ drawNumber(_time, 3, 140);
+}
+
+void ShootEmUp::gain(int8 howMuch) {
+ if ((_score + howMuch) < 0) // howMuch can be negative!
+ _score = 0;
+ else
+ _score += howMuch;
+
+ showScore();
+}
+
+void ShootEmUp::newEscape() {
+ _escapeCount = _vm->_rnd->getRandomNumber(17) * 20;
+ _escaping = false;
+}
+
+void ShootEmUp::nextPage() {
+ _vm->_graphics->drawNormalText("Press a key for next page >", _vm->_font, 8, 400, 190, kColorWhite);
+ _vm->_graphics->refreshScreen();
+
+ while (!_vm->shouldQuit()) {
+ Common::Event event;
+ _vm->getEvent(event);
+ if (event.type == Common::EVENT_KEYDOWN) {
+ break;
+ }
+ }
+
+ _vm->_graphics->blackOutScreen();
+}
+
+void ShootEmUp::instructions() {
+ _vm->_graphics->blackOutScreen();
+ _vm->_graphics->seuDrawPicture(25, 25, kFacingRight);
+ _vm->_graphics->drawNormalText("< Avvy, our hero, needs your help - you must move him around.", _vm->_font, 8, 60, 35, kColorWhite);
+ _vm->_graphics->drawNormalText("(He''s too terrified to move himself!)", _vm->_font, 8, 80, 45, kColorWhite);
+ _vm->_graphics->drawNormalText("Your task is to prevent the people in the stocks from escaping", _vm->_font, 8, 0, 75, kColorWhite);
+ _vm->_graphics->drawNormalText("by pelting them with rotten fruit, eggs and bread. The keys are:", _vm->_font, 8, 0, 85, kColorWhite);
+ _vm->_graphics->drawNormalText("LEFT SHIFT", _vm->_font, 8, 80, 115, kColorWhite);
+ _vm->_graphics->drawNormalText("Move left.", _vm->_font, 8, 200, 115, kColorWhite);
+ _vm->_graphics->drawNormalText("RIGHT SHIFT", _vm->_font, 8, 72, 135, kColorWhite);
+ _vm->_graphics->drawNormalText("Move right.", _vm->_font, 8, 200, 135, kColorWhite);
+ _vm->_graphics->drawNormalText("ALT", _vm->_font, 8, 136, 155, kColorWhite);
+ _vm->_graphics->drawNormalText("Throw something.", _vm->_font, 8, 200, 155, kColorWhite);
+
+ nextPage();
+
+ _vm->_graphics->seuDrawPicture(25, 35, kStocks);
+ _vm->_graphics->drawNormalText("This man is in the stocks. Your job is to stop him getting out.", _vm->_font, 8, 80, 35, kColorWhite);
+ _vm->_graphics->drawNormalText("UNFORTUNATELY... the locks on the stocks are loose, and every", _vm->_font, 8, 88, 45, kColorWhite);
+ _vm->_graphics->drawNormalText("so often, someone will discover this and try to get out.", _vm->_font, 8, 88, 55, kColorWhite);
+ _vm->_graphics->seuDrawPicture(25, 85, kStocks + 2);
+ _vm->_graphics->drawNormalText("< Someone who has found a way out!", _vm->_font, 8, 80, 85, kColorWhite);
+ _vm->_graphics->drawNormalText("You MUST IMMEDIATELY hit people smiling like this, or they", _vm->_font, 8, 88, 95, kColorWhite);
+ _vm->_graphics->drawNormalText("will disappear and lose you points.", _vm->_font, 8, 88, 105, kColorWhite);
+ _vm->_graphics->seuDrawPicture(25, 125, kStocks + 5);
+ _vm->_graphics->seuDrawPicture(25, 155, kStocks + 4);
+ _vm->_graphics->drawNormalText("< Oh dear!", _vm->_font, 8, 80, 125, kColorWhite);
+
+ nextPage();
+
+ _vm->_graphics->drawNormalText("Your task is made harder by:", _vm->_font, 8, 0, 35, kColorWhite);
+ _vm->_graphics->seuDrawPicture(25, 55, 48);
+ _vm->_graphics->drawNormalText("< Yokels. These people will run in front of you. If you hit", _vm->_font, 8, 60, 55, kColorWhite);
+ _vm->_graphics->drawNormalText("them, you will lose MORE points than you get hitting people", _vm->_font, 8, 68, 65, kColorWhite);
+ _vm->_graphics->drawNormalText("in the stocks. So BEWARE!", _vm->_font, 8, 68, 75, kColorWhite);
+ _vm->_graphics->drawNormalText("Good luck with the game!", _vm->_font, 8, 80, 125, kColorWhite);
+
+ nextPage();
+}
+
+void ShootEmUp::setup() {
+ _vm->_graphics->blackOutScreen();
+
+ newEscape();
+
+ for (int i = 0; i < 7; i++) {
+ _stockStatus[i] = _vm->_rnd->getRandomNumber(1);
+ showStock(i);
+ }
+
+ // Set up status line:
+ _vm->_graphics->seuDrawPicture(0, 0, 16); // Score:
+ showScore(); // Value of score (00000 here).
+ _vm->_graphics->seuDrawPicture(110, 0, 19); // Time:
+ showTime(); // Value of time.
+
+ _vm->_graphics->refreshScreen();
+
+ // From the original core cycle:
+ initRunner(20, 70, 48, 54, _vm->_rnd->getRandomNumber(4) + 1, _vm->_rnd->getRandomNumber(3) - 2);
+ initRunner(600, 70, 48, 54, _vm->_rnd->getRandomNumber(4) + 1, _vm->_rnd->getRandomNumber(3) - 2);
+ initRunner(600, 100, 61, 67, (-(int8)_vm->_rnd->getRandomNumber(4)) + 1, _vm->_rnd->getRandomNumber(3) - 2);
+ initRunner(20, 100, 61, 67, (-(int8)_vm->_rnd->getRandomNumber(4)) + 1, _vm->_rnd->getRandomNumber(3) - 2);
+}
+
+void ShootEmUp::initRunner(int16 x, int16 y, byte f1, byte f2, int8 ix, int8 iy) {
+ for (int i = 0; i < 4; i++) {
+ if (_running[i]._x == kFlag) {
+ _running[i]._x = x;
+ _running[i]._y = y;
+ _running[i]._frame = f1;
+ _running[i]._tooHigh = f2;
+ _running[i]._lowest = f1;
+ _running[i]._ix = ix;
+ _running[i]._iy = iy;
+ if ((ix == 0) && (iy == 0))
+ _running[i]._ix = 2; // To stop them running on the spot!
+ _running[i]._frameDelay = kFrameDelayMax;
+ return;
+ }
+ }
+}
+
+void ShootEmUp::moveAvvy() {
+ if (_avvyWas < _avvyPos)
+ _avvyFacing = kFacingRight;
+ else if (_avvyWas > _avvyPos)
+ _avvyFacing = kFacingLeft;
+
+ if (!_firing) {
+ if (_avvyWas == _avvyPos)
+ _avvyAnim = 1;
+ else {
+ _avvyAnim++;
+ if (_avvyAnim == 6)
+ _avvyAnim = 0;
+ }
+ }
+
+ if (_avvyFacing == kAvvyShoots)
+ define(_avvyPos, kAvvyY, kShooting[_avvyAnim], 0, 0, 1, false, true);
+ else
+ define(_avvyPos, kAvvyY, _avvyAnim + _avvyFacing, 0, 0, 1, false, true);
+
+ _avvyWas = _avvyPos;
+
+ if (_avvyFacing == kAvvyShoots) {
+ if (_avvyAnim == 6) {
+ _avvyFacing = _wasFacing;
+ _avvyAnim = 0;
+ _firing = false;
+ } else
+ _avvyAnim++;
+ }
+}
+
+void ShootEmUp::readKbd() {
+ Common::Event event;
+ _vm->getEvent(event);
+
+ if ((event.type == Common::EVENT_KEYUP) && ((event.kbd.keycode == Common::KEYCODE_LALT) || (event.kbd.keycode == Common::KEYCODE_RALT))) {
+ // Don't let the player fire continuously by holding down one of the ALT keys.
+ _altWasPressedBefore = false;
+ return;
+ }
+
+ if (_firing) // So you can't stack up shots while the shooting animation plays.
+ return;
+
+ if (event.type == Common::EVENT_KEYDOWN) {
+ switch (event.kbd.keycode) {
+ case Common::KEYCODE_LALT: // Alt was pressed - shoot!
+ case Common::KEYCODE_RALT: // Falltrough is intended.
+ if (_altWasPressedBefore || (_count321 != 0))
+ return;
+
+ _altWasPressedBefore = true;
+ _firing = true;
+ define(_avvyPos + 27, kAvvyY + 5, _throwNext, 0, -2, 53, true, true);
+ _throwNext++;
+ if (_throwNext == 79)
+ _throwNext = 73;
+ _avvyAnim = 0;
+ _wasFacing = _avvyFacing;
+ _avvyFacing = kAvvyShoots;
+ return;
+ case Common::KEYCODE_RSHIFT: // Right shift: move right.
+ _avvyPos += 5;
+ if (_avvyPos > kRightMargin)
+ _avvyPos = kRightMargin;
+ return;
+ case Common::KEYCODE_LSHIFT: // Left shift: move left.
+ _avvyPos -= 5;
+ if (_avvyPos < kLeftMargin)
+ _avvyPos = kLeftMargin;
+ return;
+ default:
+ break;
+ }
+ }
+}
+
+void ShootEmUp::animate() {
+ if (_vm->_rnd->getRandomNumber(9) == 1)
+ showStock(getStockNumber(_vm->_rnd->getRandomNumber(5)));
+ for (int i = 0; i < 7; i++) {
+ if (_stockStatus[i] > 5) {
+ _stockStatus[i]--;
+ if (_stockStatus[i] == 8) {
+ _stockStatus[i] = 0;
+ showStock(i);
+ }
+ }
+ }
+}
+
+void ShootEmUp::collisionCheck() {
+ for (int i = 0; i < 99; i++) {
+ if ((_sprites[i]._x != kFlag) && (_sprites[i]._missile) &&
+ (_sprites[i]._y < 60) && (_sprites[i]._timeout == 1)) {
+ int distFromSide = (_sprites[i]._x - 20) % 90;
+ int thisStock = (_sprites[i]._x - 20) / 90;
+ if ((!_hasEscaped[thisStock]) && (distFromSide > 17) && (distFromSide < 34)) {
+ _vm->_sound->playNote(999, 3);
+ _vm->_system->delayMillis(3);
+ define(_sprites[i]._x + 20, _sprites[i]._y, 25 + _vm->_rnd->getRandomNumber(1), 3, 1, 12, false, true); // Well done!
+ define(thisStock * 90 + 20, 30, 30, 0, 0, 7, false, false); // Face of man
+ defineCameo(thisStock * 90 + 20 + 10, 35, 40, 7); // Splat!
+ define(thisStock * 90 + 20 + 20, 50, 33 + _vm->_rnd->getRandomNumber(4), 0, 2, 9, false, true); // Oof!
+ _stockStatus[thisStock] = 17;
+ gain(3); // Score for hitting a face.
+
+ if (_escaping && (_escapeStock = thisStock)) { // Hit the escaper.
+ _vm->_sound->playNote(1777, 1);
+ _vm->_system->delayMillis(1);
+ gain(5); // Bonus for hitting escaper.
+ _escaping = false;
+ newEscape();
+ }
+ } else {
+ define(_sprites[i]._x, _sprites[i]._y, 82 + _vm->_rnd->getRandomNumber(2), 2, 2, 17, false, true); // Missed!
+ if ((!_hasEscaped[thisStock]) && (distFromSide > 3) && (distFromSide < 43)) {
+ define(thisStock * 90 + 20, 30, 29, 0, 0, 7, false, false); // Face of man
+ if (distFromSide > 35)
+ defineCameo(_sprites[i]._x - 27, 35, 40, 7); // Splat!
+ else
+ defineCameo(_sprites[i]._x - 7, 35, 40, 7);
+ _stockStatus[thisStock] = 17;
+ }
+ }
+ }
+ }
+}
+
+void ShootEmUp::turnAround(byte who, bool randomX) {
+ if (randomX) {
+ int8 ix = (_vm->_rnd->getRandomNumber(4) + 1);
+ if (_running[who]._ix > 0)
+ _running[who]._ix = -(ix);
+ else
+ _running[who]._ix = ix;
+ } else
+ _running[who]._ix = -(_running[who]._ix);
+
+ _running[who]._iy = -(_running[who]._iy);
+}
+
+void ShootEmUp::bumpFolk() {
+ for (int i = 0; i < 4; i++) {
+ if (_running[i]._x != kFlag) {
+ for (int j = i + 1; j < 4; j++) {
+ bool overlaps = overlap(_running[i]._x, _running[i]._y, _running[i]._x + 17, _running[i]._y + 24,
+ _running[j]._x, _running[j]._y, _running[j]._x + 17, _running[j]._y + 24);
+ if ((_running[i]._x != kFlag) && overlaps) {
+ turnAround(i, false); // Opp. directions.
+ turnAround(j, false);
+ }
+ }
+ }
+ }
+}
+
+void ShootEmUp::peopleRunning() {
+ if (_count321 != 0)
+ return;
+
+ for (int i = 0; i < 4; i++) {
+ if (_running[i]._x != kFlag) {
+ if (((_running[i]._y + _running[i]._iy) <= 53) || ((_running[i]._y + _running[i]._iy) >= 120))
+ _running[i]._iy = -(_running[i]._iy);
+
+ byte frame = 0;
+ if (_running[i]._ix < 0)
+ frame = _running[i]._frame - 1;
+ else
+ frame = _running[i]._frame + 6;
+ define(_running[i]._x, _running[i]._y, frame, 0, 0, 1, false, true);
+
+ if (_running[i]._frameDelay == 0) {
+ _running[i]._frame++;
+ if (_running[i]._frame == _running[i]._tooHigh)
+ _running[i]._frame = _running[i]._lowest;
+ _running[i]._frameDelay = kFrameDelayMax;
+ _running[i]._y += _running[i]._iy;
+ } else
+ _running[i]._frameDelay--;
+
+ if (((_running[i]._x + _running[i]._ix) <= 0) || ((_running[i]._x + _running[i]._ix) >= 620))
+ turnAround(i, true);
+
+ _running[i]._x += _running[i]._ix;
+ }
+ }
+}
+
+void ShootEmUp::updateTime() {
+ if (_count321 != 0)
+ return;
+
+ _timeThisSecond++;
+
+ if (_timeThisSecond < kTimesASecond)
+ return;
+
+ _time--;
+ showTime();
+ _timeThisSecond = 0;
+
+ if (_time <= kFlashTime) {
+ int timeMode = 0;
+ if ((_time % 2) == 1)
+ timeMode = 19; // Normal 'Time:'
+ else
+ timeMode = 85; // Flash 'Time:'
+
+ _vm->_graphics->seuDrawPicture(110, 0, timeMode);
+ }
+}
+
+void ShootEmUp::hitPeople() {
+ if (_count321 != 0)
+ return;
+
+ for (int i = 0; i < 99; i++) {
+ if ((_sprites[i]._missile) && (_sprites[i]._x != kFlag)) {
+ for (int j = 0; j < 4; j++) {
+
+ bool overlaps = overlap(_sprites[i]._x, _sprites[i]._y, _sprites[i]._x + 7, _sprites[i]._y + 10,
+ _running[j]._x, _running[j]._y, _running[j]._x + 17, _running[j]._y + 24);
+
+ if ((_running[j]._x != kFlag) && (overlaps)) {
+ _vm->_sound->playNote(7177, 1);
+ _sprites[i]._x = kFlag;
+ gain(-5);
+ define(_running[j]._x + 20, _running[j]._y + 3, 33 + _vm->_rnd->getRandomNumber(5), 1, 3, 9, false, true); // Oof!
+ define(_sprites[i]._x, _sprites[i]._y, 82, 1, 0, 17, false, true); // Oops!
+ }
+ }
+ }
+ }
+}
+
+void ShootEmUp::escapeCheck() {
+ if (_count321 != 0)
+ return;
+
+ if (_escapeCount > 0) {
+ _escapeCount--;
+ return;
+ }
+
+ // Escape_count = 0; now what ?
+
+ if (_escaping) {
+ if (_gotOut) {
+ newEscape();
+ _escaping = false;
+ _vm->_graphics->seuDrawPicture(_escapeStock * 90 + 20, 30, kStocks + 4);
+ } else {
+ _vm->_graphics->seuDrawPicture(_escapeStock * 90 + 20, 30, kStocks + 5);
+ _escapeCount = 20;
+ _gotOut = true;
+ define(_escapeStock * 90 + 20, 50, 24, 0, 2, 17, false, true); // Escaped!
+ gain(-10);
+ _hasEscaped[_escapeStock] = true;
+
+ _howManyHaveEscaped++;
+
+ if (_howManyHaveEscaped == 7) {
+ _vm->_graphics->seuDrawPicture(266, 90, 23);
+ _time = 0;
+ }
+ }
+ } else {
+ _escapeStock = getStockNumber(_vm->_rnd->getRandomNumber(6));
+ _escaping = true;
+ _gotOut = false;
+ _vm->_graphics->seuDrawPicture(_escapeStock * 90 + 20, 30, kStocks + 2); // Smiling!
+ _escapeCount = 200;
+ }
+}
+
+void ShootEmUp::check321() {
+ if (_count321 == 0)
+ return;
+
+ _count321--;
+
+ switch (_count321) {
+ case 84:
+ define(320, 60, 15, 2, 1, 94, false, true);
+ break;
+ case 169:
+ define(320, 60, 14, 0, 1, 94, false, true);
+ break;
+ case 254:
+ define(320, 60, 13, -2, 1, 94, false, true);
+ define(0, 100, 17, 2, 0, 254, false, true);
+ break;
+ default:
+ break;
+ }
+}
+
+} // End of namespace Avalanche
diff --git a/engines/avalanche/shootemup.h b/engines/avalanche/shootemup.h
new file mode 100644
index 0000000000..3cdcc1d5cd
--- /dev/null
+++ b/engines/avalanche/shootemup.h
@@ -0,0 +1,134 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+/*
+* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
+* Copyright (c) 1994-1995 Mike, Mark and Thomas Thurman.
+*/
+
+#ifndef AVALANCHE_SHOOTEMUP_H
+#define AVALANCHE_SHOOTEMUP_H
+
+namespace Avalanche {
+class AvalancheEngine;
+
+class ShootEmUp {
+public:
+ ShootEmUp(AvalancheEngine *vm);
+
+ uint16 run();
+
+private:
+ struct Sprite {
+ int8 _ix, _iy;
+ int16 _x, _y;
+ int8 _p;
+ int16 _timeout;
+ bool _cameo;
+ byte _cameoFrame;
+ bool _missile;
+ bool _wipe;
+ };
+
+ struct Runner {
+ int16 _x, _y;
+ byte _frame;
+ byte _tooHigh;
+ byte _lowest;
+ int8 _ix, _iy;
+ byte _frameDelay;
+ };
+
+ static const byte kStocks;
+ static const byte kAvvyShoots;
+ static const byte kFacingRight;
+ static const byte kFacingLeft;
+ static const long int kFlag;
+ static const byte kFrameDelayMax;
+ static const byte kAvvyY;
+ static const byte kShooting[7];
+ static const byte kTimesASecond;
+ static const byte kFlashTime;
+ static const byte kLeftMargin;
+ static const int16 kRightMargin;
+
+ AvalancheEngine *_vm;
+
+ uint16 _score;
+ byte _time;
+ byte _stockStatus[7];
+ Sprite _sprites[99];
+ byte _rectNum; // Original: 'rsize'
+ Common::Rect _rectangles[99];
+ uint16 _avvyWas;
+ uint16 _avvyPos;
+ byte _avvyAnim;
+ byte _avvyFacing;
+ bool _altWasPressedBefore;
+ byte _throwNext;
+ bool _firing;
+ Runner _running[4];
+ bool _hasEscaped[7];
+ byte _count321;
+ byte _howManyHaveEscaped;
+ uint16 _escapeCount;
+ bool _escaping;
+ byte _timeThisSecond;
+ bool _cp;
+ byte _wasFacing;
+ byte _escapeStock;
+ bool _gotOut;
+
+ bool overlap(uint16 a1x, uint16 a1y, uint16 a2x, uint16 a2y, uint16 b1x, uint16 b1y, uint16 b2x, uint16 b2y);
+ byte getStockNumber(byte index);
+ void blankIt();
+ void moveThem();
+ void blank(Common::Rect rect);
+ void plotThem();
+ void define(int16 x, int16 y, int8 p, int8 ix, int8 iy, int16 time, bool isAMissile, bool doWeWipe);
+ void defineCameo(int16 x, int16 y, int8 p, int16 time);
+ void showStock(byte index);
+ void drawNumber(int number, int size, int x);
+ void showScore();
+ void showTime();
+ void gain(int8 howMuch);
+ void newEscape();
+ void nextPage(); // Internal function of 'instructions' in the original.
+ void instructions();
+ void setup();
+ void initRunner(int16 xx, int16 yy, byte f1, byte f2, int8 ixx, int8 iyy);
+ void moveAvvy();
+ void readKbd();
+ void animate();
+ void collisionCheck();
+ void turnAround(byte who, bool randomX);
+ void bumpFolk();
+ void peopleRunning();
+ void updateTime();
+ void hitPeople();
+ void escapeCheck();
+ void check321();
+};
+
+} // End of namespace Avalanche
+
+#endif // AVALANCHE_SHOOTEMUP_H
diff --git a/engines/avalanche/sound.cpp b/engines/avalanche/sound.cpp
index c324df4713..0223bead48 100644
--- a/engines/avalanche/sound.cpp
+++ b/engines/avalanche/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -51,6 +51,7 @@ void SoundHandler::stopSound() {
*/
void SoundHandler::toggleSound() {
_soundFl = !_soundFl;
+ _vm->_graphics->drawSoundLight(_soundFl);
}
void SoundHandler::syncVolume() {
diff --git a/engines/avalanche/sound.h b/engines/avalanche/sound.h
index 25b6b267d3..a67016a206 100644
--- a/engines/avalanche/sound.h
+++ b/engines/avalanche/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/avalanche/timer.cpp b/engines/avalanche/timer.cpp
index c8ea820c0e..a9753b3cce 100644
--- a/engines/avalanche/timer.cpp
+++ b/engines/avalanche/timer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -64,7 +64,7 @@ void Timer::addTimer(int32 duration, byte action, byte reason) {
* @remarks Originally called 'one_tick'
*/
void Timer::updateTimer() {
- if (_vm->_menu->isActive())
+ if (_vm->_dropdown->isActive())
return;
for (int i = 0; i < 7; i++) {
@@ -327,16 +327,17 @@ void Timer::hangAround2() {
_vm->_animation->_sprites[0]->remove();
spr->remove(); // Get rid of Robin Hood and Friar Tuck.
- addTimer(1, kProcAfterTheShootemup, kReasonHangingAround);
- // Immediately call the following proc (when you have a chance).
+ addTimer(1, kProcAfterTheShootemup, kReasonHangingAround); // Immediately call the following proc (when you have a chance).
_vm->_tiedUp = false;
- // _vm->_enid->backToBootstrap(1); Call the shoot-'em-up. TODO: Replace it with proper ScummVM-friendly function(s)! Do not remove until then!
+ // We don't need the ShootEmUp during the whole game, it's only playable once.
+ ShootEmUp *shootemup = new ShootEmUp(_vm);
+ _shootEmUpScore = shootemup->run();
+ delete shootemup;
}
void Timer::afterTheShootemup() {
- // Only placed this here to replace the minigame. TODO: Remove it when the shoot em' up is implemented!
_vm->flipRoom(_vm->_room, 1);
_vm->_animation->_sprites[0]->init(0, true); // Avalot.
@@ -345,27 +346,15 @@ void Timer::afterTheShootemup() {
_vm->_objects[kObjectCrossbow - 1] = true;
_vm->refreshObjectList();
- // Same as the added line above: TODO: Remove it later!!!
- _vm->_dialogs->displayText(Common::String("P.S.: There should have been the mini-game called \"shoot em' up\", " \
- "but I haven't implemented it yet: you get the crossbow automatically.") + kControlNewLine + kControlNewLine + "Peter (uruk)");
-
-#if 0
- byte shootscore, gain;
-
- shootscore = mem[storage_seg * storage_ofs];
- gain = (shootscore + 5) / 10; // Rounding up.
-
- display(string("\6Your score was ") + strf(shootscore) + '.' + "\r\rYou gain (" +
- strf(shootscore) + " 0xF6 10) = " + strf(gain) + " points.");
+ byte gain = (_shootEmUpScore + 5) / 10; // Rounding up.
+ _vm->_dialogs->displayText(Common::String::format("%cYour score was %d.%c%cYou gain (%d \xf6 10) = %d points.", kControlItalic, _shootEmUpScore, kControlNewLine, kControlNewLine, _shootEmUpScore, gain));
if (gain > 20) {
- display("But we won't let you have more than 20 points!");
- points(20);
+ _vm->_dialogs->displayText("But we won't let you have more than 20 points!");
+ _vm->incScore(20);
} else
- points(gain);
-#endif
+ _vm->incScore(gain);
- warning("STUB: Timer::after_the_shootemup()");
_vm->_dialogs->displayScrollChain('Q', 70);
}
@@ -632,17 +621,39 @@ void Timer::arkataShouts() {
addTimer(160, kProcArkataShouts, kReasonArkataShouts);
}
+/**
+ * @remarks Contains the content of the function 'winning_pic', originally located in PINGO.
+ */
void Timer::winning() {
_vm->_dialogs->displayScrollChain('Q', 79);
- _vm->_pingo->winningPic();
- warning("STUB: Timer::winning()");
-#if 0
- do {
- _vm->checkclick();
- } while (!(_vm->mrelease == 0));
-#endif
- // TODO: To be implemented with Pingo::winningPic().
+ // This was originally located in winning_pic:
+ CursorMan.showMouse(false);
+ _vm->_graphics->saveScreen();
+ _vm->fadeOut();
+ _vm->_graphics->drawWinningPic();
+ _vm->_graphics->refreshScreen();
+ _vm->fadeIn();
+
+ // Waiting for a keypress or a left mouseclick:
+ Common::Event event;
+ bool escape = false;
+ while (!_vm->shouldQuit() && !escape) {
+ _vm->_graphics->refreshScreen();
+ while (_vm->getEvent(event)) {
+ if ((event.type == Common::EVENT_LBUTTONUP) || (event.type == Common::EVENT_KEYDOWN)) {
+ escape = true;
+ break;
+ }
+ }
+ }
+
+ _vm->fadeOut();
+ _vm->_graphics->restoreScreen();
+ _vm->_graphics->removeBackup();
+ _vm->fadeIn();
+ CursorMan.showMouse(true);
+ // winning_pic's end.
_vm->callVerb(kVerbCodeScore);
_vm->_dialogs->displayText(" T H E E N D ");
@@ -688,6 +699,8 @@ void Timer::resetVariables() {
_times[i]._action = 0;
_times[i]._reason = 0;
}
+
+ _shootEmUpScore = 0;
}
} // End of namespace Avalanche.
diff --git a/engines/avalanche/timer.h b/engines/avalanche/timer.h
index 9a91c4d24b..ad6ac0eae6 100644
--- a/engines/avalanche/timer.h
+++ b/engines/avalanche/timer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -170,7 +170,7 @@ public:
private:
AvalancheEngine *_vm;
-
+ byte _shootEmUpScore;
};
} // End of namespace Avalanche.
diff --git a/engines/bbvs/bbvs.cpp b/engines/bbvs/bbvs.cpp
new file mode 100644
index 0000000000..d2e13e525c
--- /dev/null
+++ b/engines/bbvs/bbvs.cpp
@@ -0,0 +1,1392 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/bbvs.h"
+#include "bbvs/dialogs.h"
+#include "bbvs/gamemodule.h"
+#include "bbvs/graphics.h"
+#include "bbvs/sound.h"
+#include "bbvs/spritemodule.h"
+#include "bbvs/minigames/minigame.h"
+#include "bbvs/minigames/bbairguitar.h"
+#include "bbvs/minigames/bbant.h"
+#include "bbvs/minigames/bbloogie.h"
+#include "bbvs/minigames/bbtennis.h"
+#include "bbvs/minigames/minigame.h"
+
+#include "audio/audiostream.h"
+#include "common/config-manager.h"
+#include "common/debug-channels.h"
+#include "common/error.h"
+#include "common/fs.h"
+#include "common/timer.h"
+#include "engines/util.h"
+#include "graphics/cursorman.h"
+#include "graphics/font.h"
+#include "graphics/fontman.h"
+#include "graphics/palette.h"
+#include "graphics/surface.h"
+
+namespace Bbvs {
+
+static const BBPoint kInventorySlotPositions[] = {
+ { 66, 191}, { 94, 217}, {192, 217}, {159, 213}, {228, 49},
+ {137, 49}, {168, 165}, {101, 55}, {177, 46}, {165, 165},
+ {202, 74}, {141, 53}, {164, 164}, {165, 78}, {167, 71},
+ {142, 188}, {171, 100}, {250, 216}, {200, 72}, {200, 72},
+ {101, 82}, { 67, 93}, {133, 87}, {123, 220}, {199, 129},
+ {188, 192}, {102, 82}, {188, 192}, { 99, 170}, { 68, 126},
+ {159, 130}, {102, 116}, {207, 157}, {130, 141}, {236, 100},
+ {102, 197}, {141, 186}, {200, 102}, {221, 220}, {222, 188},
+ {135, 93}, {134, 145}, { 96, 224}, {128, 224}, {160, 224},
+ {192, 224}, {224, 224}, {240, 224}, {256, 224}, { 0, 0}
+};
+
+static const BBRect kVerbRects[6] = {
+ {-32, -2, 19, 27}, {-33, -33, 19, 27}, { 12, -2, 19, 27},
+ { 13, -33, 19, 27}, {-10, 8, 19, 27}, {-11, -49, 19, 27}
+};
+
+static const byte kTurnTbl[] = {
+ 2, 6, 4, 0, 2, 6, 4, 0,
+ 3, 1, 5, 7, 0, 0, 0, 0
+};
+
+bool WalkArea::contains(const Common::Point &pt) const {
+ return Common::Rect(x, y, x + width, y + height).contains(pt);
+}
+
+BbvsEngine::BbvsEngine(OSystem *syst, const ADGameDescription *gd) :
+ Engine(syst), _gameDescription(gd) {
+
+ _random = new Common::RandomSource("bbvs");
+ _currActionCommandIndex = -1;
+ _buttheadObject = nullptr;
+ _beavisObject = nullptr;
+ _currCameraNum = 0;
+ _walkAreasCount = 0;
+ _walkInfosCount = 0;
+ _walkableRectsCount = 0;
+ _sourceWalkArea = nullptr;
+ _destWalkArea = nullptr;
+ _currWalkDistance = kMaxDistance;
+ _walkReachedDestArea = false;
+ _hasSnapshot = false;
+ _snapshot = nullptr;
+ _snapshotStream = nullptr;
+ _isSaveAllowed = false;
+
+ for (int i = 0; i < 80; i++) {
+ _walkAreas[i].x = 0;
+ _walkAreas[i].y = 0;
+ _walkAreas[i].width = 0;
+ _walkAreas[i].height = 0;
+ _walkAreas[i].checked = false;
+ _walkAreas[i].linksCount = 0;
+ for (int j = 0; j < 16; j++)
+ _walkAreas[i].links[j] = nullptr;
+ for (int j = 0; j < 32; j++) {
+ _walkAreas[i].linksD1[j] = nullptr;
+ _walkAreas[i].linksD2[j] = nullptr;
+ }
+ }
+
+ for (int i = 0; i < 256; i++) {
+ _walkInfoPtrs[i] = nullptr;
+ }
+
+ Engine::syncSoundSettings();
+
+}
+
+BbvsEngine::~BbvsEngine() {
+
+ delete _random;
+
+}
+
+void BbvsEngine::newGame() {
+ _currInventoryItem = -1;
+ _newSceneNum = 32;
+}
+
+void BbvsEngine::continueGameFromQuickSave() {
+ _bootSaveSlot = 0;
+}
+
+void BbvsEngine::setNewSceneNum(int newSceneNum) {
+ _newSceneNum = newSceneNum;
+}
+
+Common::Error BbvsEngine::run() {
+
+ _isSaveAllowed = false;
+ _hasSnapshot = false;
+
+ initGraphics(320, 240, false);
+
+ _screen = new Screen(_system);
+ _gameModule = new GameModule();
+ _spriteModule = new SpriteModule();
+ _sound = new SoundMan();
+
+ allocSnapshot();
+ memset(_easterEggInput, 0, sizeof(_easterEggInput));
+
+ _gameTicks = 0;
+ _playVideoNumber = 0;
+ _bootSaveSlot = -1;
+
+ memset(_inventoryItemStatus, 0, sizeof(_inventoryItemStatus));
+ memset(_gameVars, 0, sizeof(_gameVars));
+ memset(_sceneVisited, 0, sizeof(_sceneVisited));
+
+ _mouseX = 160;
+ _mouseY = 120;
+ _mouseButtons = 0;
+
+ _currVerbNum = kVerbLook;
+ _currInventoryItem = -1;
+ _currTalkObjectIndex = -1;
+ _currSceneNum = 0;
+ _newSceneNum = 31;
+
+ if (ConfMan.hasKey("save_slot"))
+ _bootSaveSlot = ConfMan.getInt("save_slot");
+
+ while (!shouldQuit()) {
+ updateEvents();
+ if (_currSceneNum < kMainMenu || _newSceneNum > 0 || _bootSaveSlot >= 0)
+ updateGame();
+ else if (_currSceneNum == kMainMenu)
+ runMainMenu();
+ else if (_currSceneNum == kCredits &&
+ (_mouseButtons & kAnyButtonClicked)) {
+ _mouseButtons &= ~kAnyButtonClicked;
+ _newSceneNum = kMainMenu;
+ }
+ if (_playVideoNumber > 0) {
+ playVideo(_playVideoNumber);
+ _playVideoNumber = 0;
+ }
+ }
+
+ writeContinueSavegame();
+
+ freeSnapshot();
+
+ delete _sound;
+ delete _spriteModule;
+ delete _gameModule;
+ delete _screen;
+
+ return Common::kNoError;
+}
+
+bool BbvsEngine::hasFeature(EngineFeature f) const {
+ return
+ (f == kSupportsRTL) ||
+ (f == kSupportsLoadingDuringRuntime) ||
+ (f == kSupportsSavingDuringRuntime);
+}
+
+void BbvsEngine::updateEvents() {
+ Common::Event event;
+
+ while (_eventMan->pollEvent(event)) {
+ switch (event.type) {
+ case Common::EVENT_KEYDOWN:
+ _keyCode = event.kbd.keycode;
+ break;
+ case Common::EVENT_KEYUP:
+ checkEasterEgg(event.kbd.ascii);
+ _keyCode = Common::KEYCODE_INVALID;
+ break;
+ case Common::EVENT_MOUSEMOVE:
+ _mouseX = event.mouse.x;
+ _mouseY = event.mouse.y;
+ break;
+ case Common::EVENT_LBUTTONDOWN:
+ _mouseButtons |= kLeftButtonClicked;
+ _mouseButtons |= kLeftButtonDown;
+ break;
+ case Common::EVENT_LBUTTONUP:
+ _mouseButtons &= ~kLeftButtonDown;
+ break;
+ case Common::EVENT_RBUTTONDOWN:
+ _mouseButtons |= kRightButtonClicked;
+ _mouseButtons |= kRightButtonDown;
+ break;
+ case Common::EVENT_RBUTTONUP:
+ _mouseButtons &= ~kRightButtonDown;
+ break;
+ case Common::EVENT_QUIT:
+ quitGame();
+ break;
+ default:
+ break;
+ }
+ }
+}
+
+int BbvsEngine::getRandom(int max) {
+ return max == 0 ? 0 : _random->getRandomNumber(max - 1);
+}
+
+void BbvsEngine::drawDebugInfo() {
+#if 0
+ Graphics::Surface *s = _screen->_surface;
+ const Graphics::Font *font = FontMan.getFontByUsage(Graphics::FontManager::kConsoleFont);
+ for (int i = 0; i < _walkAreasCount; ++i) {
+ WalkArea *walkArea = &_walkAreas[i];
+ Common::Rect r(walkArea->x, walkArea->y, walkArea->x + walkArea->width, walkArea->y + walkArea->height);
+ s->frameRect(r, 255);
+ Common::String text = Common::String::format("%d", i);
+ font->drawString(s, text, r.left + 1, r.top + 1, 100, 11);
+ }
+#endif
+}
+
+void BbvsEngine::drawScreen() {
+ drawDebugInfo();
+ _screen->copyToScreen();
+}
+
+void BbvsEngine::updateGame() {
+ int inputTicks;
+
+ if (_gameTicks > 0) {
+ int currTicks = _system->getMillis();
+ inputTicks = (currTicks - _gameTicks) / 17;
+ _gameTicks = currTicks - (currTicks - _gameTicks) % 17;
+ } else {
+ inputTicks = 1;
+ _gameTicks = _system->getMillis();
+ }
+
+ if (inputTicks > 20) {
+ inputTicks = 20;
+ _gameTicks = _system->getMillis();
+ }
+
+ if (inputTicks == 0)
+ return;
+
+ if (_mouseX >= 320 || _mouseY >= 240) {
+ _mouseY = -1;
+ _mouseX = -1;
+ }
+
+ bool done;
+
+ do {
+ done = !update(_mouseX, _mouseY, _mouseButtons, _keyCode);
+ _mouseButtons &= ~kLeftButtonClicked;
+ _mouseButtons &= ~kRightButtonClicked;
+ _keyCode = Common::KEYCODE_INVALID;
+ } while (--inputTicks && _playVideoNumber == 0 && _gameTicks > 0 && !done);
+
+ if (!done && _playVideoNumber == 0 && _gameTicks > 0) {
+ DrawList drawList;
+ buildDrawList(drawList);
+ _screen->drawDrawList(drawList, _spriteModule);
+ drawScreen();
+ }
+
+ _system->delayMillis(10);
+
+}
+
+void BbvsEngine::updateBackgroundSounds() {
+ for (int i = 0; i < _gameModule->getSceneSoundsCount(); ++i) {
+ SceneSound *sceneSound = _gameModule->getSceneSound(i);
+ bool isActive = evalCondition(sceneSound->conditions);
+ debug(5, "bgSound(%d) isActive: %d; soundNum: %d", i, isActive, sceneSound->soundNum);
+ if (isActive && !_backgroundSoundsActive[i]) {
+ playSound(sceneSound->soundNum, true);
+ _backgroundSoundsActive[i] = 1;
+ } else if (!isActive && _backgroundSoundsActive[i]) {
+ stopSound(sceneSound->soundNum);
+ _backgroundSoundsActive[i] = 0;
+ }
+ }
+}
+
+bool BbvsEngine::update(int mouseX, int mouseY, uint mouseButtons, Common::KeyCode keyCode) {
+
+ if (_bootSaveSlot >= 0) {
+ loadGameState(_bootSaveSlot);
+ _gameTicks = 0;
+ _bootSaveSlot = -1;
+ return false;
+ }
+
+ if (_newSceneNum != 0) {
+ _gameTicks = 0;
+ return changeScene();
+ }
+
+ _mousePos.x = mouseX + _cameraPos.x;
+ _mousePos.y = mouseY + _cameraPos.y;
+
+ switch (_gameState) {
+
+ case kGSScene:
+ _isSaveAllowed = true;
+ saveSnapshot();
+ if (mouseButtons & kRightButtonDown) {
+ _verbPos = _mousePos;
+ if (_mousePos.x - _cameraPos.x < 33)
+ _verbPos.x = _cameraPos.x + 33;
+ if (_verbPos.x - _cameraPos.x > 287)
+ _verbPos.x = _cameraPos.x + 287;
+ if (_verbPos.y - _cameraPos.y < 51)
+ _verbPos.y = _cameraPos.y + 51;
+ if (_verbPos.y - _cameraPos.y > 208)
+ _verbPos.y = _cameraPos.y + 208;
+ _gameState = kGSVerbs;
+ } else {
+ switch (keyCode) {
+ case Common::KEYCODE_SPACE:
+ case Common::KEYCODE_i:
+ _inventoryButtonIndex = -1;
+ _gameState = kGSInventory;
+ return true;
+ case Common::KEYCODE_l:
+ _currVerbNum = kVerbLook;
+ break;
+ case Common::KEYCODE_t:
+ _currVerbNum = kVerbTalk;
+ break;
+ case Common::KEYCODE_u:
+ _currVerbNum = kVerbUse;
+ break;
+ case Common::KEYCODE_w:
+ _currVerbNum = kVerbWalk;
+ break;
+ default:
+ break;
+ }
+ updateScene(mouseButtons & kLeftButtonClicked);
+ updateCommon();
+ }
+ break;
+
+ case kGSInventory:
+ _isSaveAllowed = true;
+ saveSnapshot();
+ if (mouseButtons & kRightButtonClicked)
+ _currVerbNum = kVerbUse;
+ switch (keyCode) {
+ case Common::KEYCODE_SPACE:
+ case Common::KEYCODE_i:
+ _gameState = kGSScene;
+ stopSpeech();
+ return true;
+ case Common::KEYCODE_l:
+ _currVerbNum = kVerbLook;
+ break;
+ case Common::KEYCODE_u:
+ _currVerbNum = kVerbUse;
+ break;
+ default:
+ break;
+ }
+ updateInventory(mouseButtons & kLeftButtonClicked);
+ break;
+
+ case kGSVerbs:
+ _isSaveAllowed = false;
+ updateVerbs();
+ if (!(mouseButtons & kRightButtonDown)) {
+ if (_currVerbNum == kVerbShowInv) {
+ _inventoryButtonIndex = -1;
+ _gameState = kGSInventory;
+ } else {
+ _gameState = kGSScene;
+ }
+ }
+ break;
+
+ case kGSWait:
+ case kGSWaitDialog:
+ _isSaveAllowed = false;
+ _activeItemType = kITEmpty;
+ _activeItemIndex = 0;
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(9);
+ if (keyCode == Common::KEYCODE_ESCAPE)
+ skipCurrAction();
+ else
+ updateCommon();
+ break;
+
+ case kGSDialog:
+ _isSaveAllowed = true;
+ saveSnapshot();
+ updateDialog(mouseButtons & kLeftButtonClicked);
+ updateCommon();
+ break;
+
+ }
+
+ return true;
+}
+
+void BbvsEngine::buildDrawList(DrawList &drawList) {
+
+ if (_gameState == kGSInventory) {
+
+ // Inventory background
+ drawList.add(_gameModule->getGuiSpriteIndex(15), 0, 0, 0);
+
+ // Inventory button
+ if (_inventoryButtonIndex == 0)
+ drawList.add(_gameModule->getGuiSpriteIndex(18 + 0), 97, 13, 1);
+ else if (_inventoryButtonIndex == 1)
+ drawList.add(_gameModule->getGuiSpriteIndex(18 + 1), 135, 15, 1);
+ else if (_inventoryButtonIndex == 2)
+ drawList.add(_gameModule->getGuiSpriteIndex(18 + 2), 202, 13, 1);
+
+ // Inventory items
+ int currItem = -1;
+ if (_currVerbNum == kVerbInvItem)
+ currItem = _currInventoryItem;
+ for (int i = 0; i < 50; ++i)
+ if (_inventoryItemStatus[i] && currItem != i)
+ drawList.add(_gameModule->getInventoryItemSpriteIndex(i * 2), kInventorySlotPositions[i].x, kInventorySlotPositions[i].y, 1);
+
+ } else {
+
+ // Scene objects
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i) {
+ SceneObject *sceneObject = &_sceneObjects[i];
+ Animation *anim = sceneObject->anim;
+ if (anim) {
+ drawList.add(anim->frameSpriteIndices[sceneObject->frameIndex],
+ (sceneObject->x >> 16) - _cameraPos.x, (sceneObject->y >> 16) - _cameraPos.y,
+ sceneObject->y >> 16);
+ }
+ }
+
+ // Background objects
+ for (int i = 0; i < _gameModule->getBgSpritesCount(); ++i)
+ drawList.add(_gameModule->getBgSpriteIndex(i), -_cameraPos.x, -_cameraPos.y, _gameModule->getBgSpritePriority(i));
+
+ if (_gameState == kGSVerbs) {
+ // Verbs icon background
+ for (int i = 0; i < 6; ++i) {
+ if (i != 4) {
+ int index = (i == _activeItemIndex) ? 17 : 16;
+ drawList.add(_gameModule->getGuiSpriteIndex(index), _verbPos.x + kVerbRects[i].x - _cameraPos.x,
+ _verbPos.y + kVerbRects[i].y - _cameraPos.y, 499);
+ }
+ }
+ // Verbs background
+ drawList.add(_gameModule->getGuiSpriteIndex(13), _verbPos.x - _cameraPos.x,
+ _verbPos.y - _cameraPos.y, 500);
+ // Selected inventory item
+ if (_currInventoryItem >= 0) {
+ drawList.add(_gameModule->getInventoryItemSpriteIndex(2 * _currInventoryItem), _verbPos.x - _cameraPos.x,
+ _verbPos.y - _cameraPos.y + 27, 500);
+ }
+ }
+
+ if (_gameState == kGSDialog) {
+ // Dialog background
+ drawList.add(_gameModule->getGuiSpriteIndex(14), 0, 0, 500);
+ // Dialog icons
+ int iconX = 16;
+ for (int i = 0; i < 50; ++i)
+ if (_dialogItemStatus[i]) {
+ drawList.add(_gameModule->getDialogItemSpriteIndex(i), iconX, 36, 501);
+ iconX += 32;
+ }
+ }
+
+ }
+
+ // Mouse cursor
+ if (_mouseCursorSpriteIndex > 0 && _mousePos.x >= 0)
+ drawList.add(_mouseCursorSpriteIndex, _mousePos.x - _cameraPos.x, _mousePos.y - _cameraPos.y, 1000);
+
+}
+
+void BbvsEngine::updateVerbs() {
+
+ _activeItemIndex = 99;
+
+ if (_mousePos.x < 0) {
+ _mouseCursorSpriteIndex = 0;
+ return;
+ }
+
+ for (int i = 0; i < 6; ++i) {
+ const BBRect &verbRect = kVerbRects[i];
+ const int16 x = _verbPos.x + verbRect.x;
+ const int16 y = _verbPos.y + verbRect.y;
+ if (Common::Rect(x, y, x + verbRect.width, y + verbRect.height).contains(_mousePos)) {
+ if (i != kVerbInvItem || _currInventoryItem >= 0) {
+ _currVerbNum = i;
+ _activeItemIndex = i;
+ }
+ break;
+ }
+ }
+
+ switch (_currVerbNum) {
+ case kVerbLook:
+ case kVerbUse:
+ case kVerbTalk:
+ case kVerbWalk:
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(2 * _currVerbNum);
+ break;
+ case kVerbInvItem:
+ _mouseCursorSpriteIndex = _gameModule->getInventoryItemSpriteIndex(2 * _currInventoryItem);
+ break;
+ case kVerbShowInv:
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(8);
+ break;
+ }
+
+}
+
+void BbvsEngine::updateDialog(bool clicked) {
+
+ if (_mousePos.x < 0) {
+ _mouseCursorSpriteIndex = 0;
+ _activeItemType = 0;
+ return;
+ }
+
+ if (_mousePos.y > 32) {
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(10);
+ _activeItemIndex = 0;
+ _activeItemType = kITEmpty;
+ if (clicked)
+ _gameState = kGSScene;
+ return;
+ }
+
+ int slotX = (_mousePos.x - _cameraPos.x) / 32;
+
+ if (slotX >= _dialogSlotCount) {
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(4);
+ _activeItemType = kITEmpty;
+ _activeItemIndex = 0;
+ return;
+ }
+
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(5);
+ _activeItemType = kITDialog;
+
+ // Find the selected dialog item index
+ for (int i = 0; i < 50 && slotX >= 0; ++i) {
+ if (_dialogItemStatus[i]) {
+ --slotX;
+ _activeItemIndex = i;
+ }
+ }
+
+ // Select the dialog item action if it was clicked
+ if (clicked) {
+ for (int i = 0; i < _gameModule->getActionsCount(); ++i) {
+ Action *action = _gameModule->getAction(i);
+ if (evalCondition(action->conditions)) {
+ _mouseCursorSpriteIndex = 0;
+ _gameState = kGSWaitDialog;
+ _currAction = action;
+ break;
+ }
+ }
+ }
+
+}
+
+void BbvsEngine::updateInventory(bool clicked) {
+
+ Common::Rect kInvButtonRects[3] = {
+ Common::Rect(97, 13, 97 + 20, 13 + 26),
+ Common::Rect(135, 15, 135 + 46, 15 + 25),
+ Common::Rect(202, 13, 202 + 20, 13 + 26)};
+
+ if (_mousePos.x < 0) {
+ _mouseCursorSpriteIndex = 0;
+ _activeItemType = 0;
+ return;
+ }
+
+ if (_currVerbNum != kVerbLook && _currVerbNum != kVerbUse && _currVerbNum != kVerbInvItem)
+ _currVerbNum = kVerbUse;
+
+ const int16 mx = _mousePos.x - _cameraPos.x;
+ const int16 my = _mousePos.y - _cameraPos.y;
+
+ // Check inventory exit left/right edge of screen
+ if (mx < 40 || mx > 280) {
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(10);
+ _activeItemIndex = 0;
+ _activeItemType = kITEmpty;
+ if (clicked) {
+ _gameState = kGSScene;
+ stopSpeech();
+ }
+ return;
+ }
+
+ // Check hovered/clicked inventory button
+ _inventoryButtonIndex = -1;
+ if (kInvButtonRects[0].contains(mx, my)) {
+ _inventoryButtonIndex = 0;
+ if (clicked)
+ _currVerbNum = kVerbLook;
+ } else if (kInvButtonRects[2].contains(mx, my)) {
+ _inventoryButtonIndex = 2;
+ if (clicked)
+ _currVerbNum = kVerbUse;
+ } else if (kInvButtonRects[1].contains(mx, my)) {
+ _inventoryButtonIndex = 1;
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(10);
+ _activeItemIndex = 0;
+ _activeItemType = kITEmpty;
+ if (clicked) {
+ _gameState = kGSScene;
+ stopSpeech();
+ }
+ return;
+ }
+
+ // Find hovered/clicked inventory item
+
+ int currItem = -1;
+
+ if (_currVerbNum == kVerbInvItem)
+ currItem = _currInventoryItem;
+
+ _activeItemType = kITEmpty;
+
+ for (int i = 0; i < 50; ++i) {
+ if (_inventoryItemStatus[i] && i != currItem) {
+ InventoryItemInfo *info = _gameModule->getInventoryItemInfo(i);
+ const int16 sx = kInventorySlotPositions[i].x + info->xOffs;
+ const int16 sy = kInventorySlotPositions[i].y + info->yOffs;
+ if (Common::Rect(sx, sy, sx + info->width, sy + info->height).contains(mx, my)) {
+ _activeItemType = kITInvItem;
+ _activeItemIndex = i;
+ break;
+ }
+ }
+ }
+
+ // Update mouse cursor and select inventory item if clicked
+
+ if (_activeItemType == kITInvItem) {
+ if (clicked) {
+ if (_currVerbNum == kVerbLook) {
+ stopSpeech();
+ playSpeech(_activeItemIndex + 10000);
+ } else if (_currVerbNum == kVerbUse) {
+ _currInventoryItem = _activeItemIndex;
+ _currVerbNum = kVerbInvItem;
+ _mouseCursorSpriteIndex = _gameModule->getInventoryItemSpriteIndex(2 * _activeItemIndex);
+ } else if (_currVerbNum == kVerbInvItem) {
+ if ((_currInventoryItem == 22 && _activeItemIndex == 39) ||
+ (_currInventoryItem == 39 && _activeItemIndex == 22)) {
+ _inventoryItemStatus[22] = 0;
+ _inventoryItemStatus[39] = 0;
+ _inventoryItemStatus[40] = 1;
+ _currVerbNum = kVerbInvItem;
+ _currInventoryItem = 40;
+ _mouseCursorSpriteIndex = _gameModule->getInventoryItemSpriteIndex(40);
+ }
+ if ((_currInventoryItem == 25 && _activeItemIndex == 26) ||
+ (_currInventoryItem == 26 && _activeItemIndex == 25)) {
+ _inventoryItemStatus[26] = 0;
+ _inventoryItemStatus[25] = 0;
+ _inventoryItemStatus[27] = 1;
+ _currVerbNum = kVerbInvItem;
+ _currInventoryItem = 27;
+ _mouseCursorSpriteIndex = _gameModule->getInventoryItemSpriteIndex(27);
+ }
+ }
+ } else {
+ if (_currVerbNum == kVerbLook)
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(1);
+ else if (_currVerbNum == kVerbUse)
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(3);
+ else if (_currVerbNum == kVerbInvItem)
+ _mouseCursorSpriteIndex = _gameModule->getInventoryItemSpriteIndex(2 * _currInventoryItem + 1);
+ }
+ } else {
+ if (_currVerbNum >= kVerbInvItem)
+ _mouseCursorSpriteIndex = _gameModule->getInventoryItemSpriteIndex(2 * _currInventoryItem);
+ else
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(2 * _currVerbNum);
+ }
+
+}
+
+void BbvsEngine::updateScene(bool clicked) {
+
+ if (_mousePos.x < 0) {
+ _mouseCursorSpriteIndex = 0;
+ _activeItemType = kITNone;
+ return;
+ }
+
+ int lastPriority = 0;
+
+ _activeItemType = kITEmpty;
+
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i) {
+ SceneObject *sceneObject = &_sceneObjects[i];
+ if (sceneObject->anim) {
+ Common::Rect frameRect = sceneObject->anim->frameRects1[sceneObject->frameIndex];
+ const int objY = sceneObject->y >> 16;
+ frameRect.translate(sceneObject->x >> 16, objY);
+ if (lastPriority <= objY && frameRect.width() > 0 && frameRect.contains(_mousePos)) {
+ lastPriority = objY;
+ _activeItemIndex = i;
+ _activeItemType = KITSceneObject;
+ }
+ }
+ }
+
+ for (int i = 0; i < _gameModule->getBgObjectsCount(); ++i) {
+ BgObject *bgObject = _gameModule->getBgObject(i);
+ if (lastPriority <= bgObject->rect.bottom && bgObject->rect.contains(_mousePos)) {
+ lastPriority = bgObject->rect.bottom;
+ _activeItemIndex = i;
+ _activeItemType = kITBgObject;
+ }
+ }
+
+ if (_currVerbNum >= kVerbInvItem)
+ _mouseCursorSpriteIndex = _gameModule->getInventoryItemSpriteIndex(2 * _currInventoryItem);
+ else
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(2 * _currVerbNum);
+
+ bool checkMore = true;
+
+ if (_activeItemType == KITSceneObject || _activeItemType == kITBgObject) {
+ for (int i = 0; i < _gameModule->getActionsCount(); ++i) {
+ Action *action = _gameModule->getAction(i);
+ if (evalCondition(action->conditions)) {
+ checkMore = false;
+ if (clicked) {
+ _mouseCursorSpriteIndex = 0;
+ _gameState = kGSWait;
+ _currAction = action;
+ if (_currVerbNum == kVerbTalk)
+ _currTalkObjectIndex = _activeItemIndex;
+ if (_buttheadObject) {
+ _buttheadObject->walkDestPt.x = -1;
+ _buttheadObject->walkCount = 0;
+ }
+ } else {
+ if (_currVerbNum >= kVerbInvItem)
+ _mouseCursorSpriteIndex = _gameModule->getInventoryItemSpriteIndex(2 * _currInventoryItem + 1);
+ else
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(2 * _currVerbNum + 1);
+ }
+ break;
+ }
+ }
+ }
+
+ // Test scroll arrow left
+ if (checkMore && _buttheadObject && _buttheadObject->anim && _mousePos.x - _cameraPos.x < 16 && _currCameraNum > 0) {
+ --_currCameraNum;
+ for (int i = 0; i < _gameModule->getActionsCount(); ++i) {
+ Action *action = _gameModule->getAction(i);
+ if (evalCameraCondition(action->conditions, _currCameraNum + 1)) {
+ checkMore = false;
+ if (clicked) {
+ _mouseCursorSpriteIndex = 0;
+ _gameState = kGSWait;
+ _currAction = action;
+ _buttheadObject->walkDestPt.x = -1;
+ _buttheadObject->walkCount = 0;
+ } else {
+ _activeItemType = kITScroll;
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(12);
+ }
+ break;
+ }
+ }
+ ++_currCameraNum;
+ }
+
+ // Test scroll arrow right
+ if (checkMore && _buttheadObject && _buttheadObject->anim && _mousePos.x - _cameraPos.x >= 304 && _currCameraNum < 4) {
+ ++_currCameraNum;
+ for (int i = 0; i < _gameModule->getActionsCount(); ++i) {
+ Action *action = _gameModule->getAction(i);
+ if (evalCameraCondition(action->conditions, _currCameraNum - 1)) {
+ checkMore = false;
+ if (clicked) {
+ _mouseCursorSpriteIndex = 0;
+ _gameState = kGSWait;
+ _currAction = action;
+ _buttheadObject->walkDestPt.x = -1;
+ _buttheadObject->walkCount = 0;
+ } else {
+ _activeItemType = kITScroll;
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(11);
+ }
+ break;
+ }
+ }
+ --_currCameraNum;
+ }
+
+ if (checkMore && _buttheadObject && _buttheadObject->anim) {
+ _walkMousePos = _mousePos;
+
+ while (1) {
+ int foundIndex = -1;
+
+ for (int i = 0; i < _walkableRectsCount; ++i)
+ if (_walkableRects[i].contains(_walkMousePos)) {
+ foundIndex = i;
+ break;
+ }
+
+ if (foundIndex >= 0) {
+ if (_walkMousePos.y != _mousePos.y)
+ _walkMousePos.y = _walkableRects[foundIndex].top;
+ break;
+ } else {
+ _walkMousePos.y += 4;
+ if (_walkMousePos.y >= 240)
+ break;
+ }
+
+ }
+
+ if (_beavisObject->anim) {
+ Common::Rect frameRect = _beavisObject->anim->frameRects2[_beavisObject->frameIndex];
+ frameRect.translate(_beavisObject->x >> 16, (_beavisObject->y >> 16) + 1);
+ if (!frameRect.isEmpty() && frameRect.contains(_walkMousePos))
+ _walkMousePos.y = frameRect.bottom;
+ }
+
+ if (_walkMousePos.y < 240 && canButtheadWalkToDest(_walkMousePos)) {
+ if (clicked) {
+ _buttheadObject->walkDestPt = _walkMousePos;
+ _buttheadObject->walkCount = 0;
+ }
+ for (int i = 0; i < _gameModule->getSceneExitsCount(); ++i) {
+ SceneExit *sceneExit = _gameModule->getSceneExit(i);
+ if (sceneExit->rect.contains(_walkMousePos.x, _walkMousePos.y)) {
+ _activeItemIndex = i;
+ _activeItemType = kITSceneExit;
+ _mouseCursorSpriteIndex = _gameModule->getGuiSpriteIndex(10);
+ }
+ }
+ } else {
+ _walkMousePos.x = -1;
+ _walkMousePos.y = -1;
+ }
+
+ }
+
+}
+
+bool BbvsEngine::performActionCommand(ActionCommand *actionCommand) {
+ debug(5, "BbvsEngine::performActionCommand() cmd: %d", actionCommand->cmd);
+
+ switch (actionCommand->cmd) {
+
+ case kActionCmdStop:
+ stopSpeech();
+ return false;
+
+ case kActionCmdWalkObject:
+ {
+ SceneObject *sceneObject = &_sceneObjects[actionCommand->sceneObjectIndex];
+ debug(5, "[%s] walks from (%d, %d) to (%d, %d)", sceneObject->sceneObjectDef->name,
+ sceneObject->x >> 16, sceneObject->y >> 16, actionCommand->walkDest.x, actionCommand->walkDest.y);
+ walkObject(sceneObject, actionCommand->walkDest, actionCommand->param);
+ }
+ return true;
+
+ case kActionCmdMoveObject:
+ {
+ SceneObject *sceneObject = &_sceneObjects[actionCommand->sceneObjectIndex];
+ sceneObject->x = actionCommand->walkDest.x << 16;
+ sceneObject->y = actionCommand->walkDest.y << 16;
+ sceneObject->xIncr = 0;
+ sceneObject->yIncr = 0;
+ sceneObject->walkCount = 0;
+ }
+ return true;
+
+ case kActionCmdAnimObject:
+ {
+ SceneObject *sceneObject = &_sceneObjects[actionCommand->sceneObjectIndex];
+ if (actionCommand->param == 0) {
+ sceneObject->anim = 0;
+ sceneObject->animIndex = 0;
+ sceneObject->frameTicks = 0;
+ sceneObject->frameIndex = 0;
+ } else if (actionCommand->timeStamp != 0 || sceneObject->anim != _gameModule->getAnimation(actionCommand->param)) {
+ sceneObject->animIndex = actionCommand->param;
+ sceneObject->anim = _gameModule->getAnimation(actionCommand->param);
+ sceneObject->frameIndex = sceneObject->anim->frameCount - 1;
+ sceneObject->frameTicks = 1;
+ }
+ }
+ return true;
+
+ case kActionCmdSetCameraPos:
+ _currCameraNum = actionCommand->param;
+ _newCameraPos = _gameModule->getCameraInit(_currCameraNum)->cameraPos;
+ updateBackgroundSounds();
+ return true;
+
+ case kActionCmdPlaySpeech:
+ playSpeech(actionCommand->param);
+ return true;
+
+ case kActionCmdPlaySound:
+ playSound(actionCommand->param);
+ return true;
+
+ case kActionCmdStartBackgroundSound:
+ {
+ const uint soundIndex = _gameModule->getSceneSoundIndex(actionCommand->param);
+ if (!_backgroundSoundsActive[soundIndex]) {
+ _backgroundSoundsActive[soundIndex] = 1;
+ playSound(actionCommand->param, true);
+ }
+ }
+ return true;
+
+ case kActionCmdStopBackgroundSound:
+ {
+ const uint soundIndex = _gameModule->getSceneSoundIndex(actionCommand->param);
+ _backgroundSoundsActive[soundIndex] = 0;
+ stopSound(actionCommand->param);
+ }
+ return true;
+
+ default:
+ return true;
+
+ }
+
+}
+
+bool BbvsEngine::processCurrAction() {
+ bool actionsFinished = false;
+
+ if (_sceneObjectActions.size() == 0) {
+
+ for (uint i = 0; i < _currAction->actionCommands.size(); ++i) {
+ ActionCommand *actionCommand = &_currAction->actionCommands[i];
+ if (actionCommand->timeStamp != 0)
+ break;
+
+ if (actionCommand->cmd == kActionCmdMoveObject || actionCommand->cmd == kActionCmdAnimObject) {
+ SceneObjectAction *sceneObjectAction = 0;
+ // See if there's already an entry for the SceneObject
+ for (uint j = 0; j < _sceneObjectActions.size(); ++j)
+ if (_sceneObjectActions[j].sceneObjectIndex == actionCommand->sceneObjectIndex) {
+ sceneObjectAction = &_sceneObjectActions[j];
+ break;
+ }
+ // If not, add one
+ if (!sceneObjectAction) {
+ SceneObjectAction newSceneObjectAction;
+ newSceneObjectAction.sceneObjectIndex = actionCommand->sceneObjectIndex;
+ _sceneObjectActions.push_back(newSceneObjectAction);
+ sceneObjectAction = &_sceneObjectActions.back();
+ }
+ if (actionCommand->cmd == kActionCmdMoveObject) {
+ sceneObjectAction->walkDest = actionCommand->walkDest;
+ } else {
+ sceneObjectAction->animationIndex = actionCommand->param;
+ }
+ }
+
+ if (actionCommand->cmd == kActionCmdSetCameraPos) {
+ _currCameraNum = actionCommand->param;
+ _newCameraPos = _gameModule->getCameraInit(actionCommand->param)->cameraPos;
+ }
+
+ }
+
+ // Delete entries for SceneObjects without anim
+ for (uint i = 0; i < _sceneObjectActions.size();) {
+ if (!_sceneObjects[_sceneObjectActions[i].sceneObjectIndex].anim)
+ _sceneObjectActions.remove_at(i);
+ else
+ ++i;
+ }
+
+ // Prepare affected scene objects
+ for (uint i = 0; i < _sceneObjectActions.size(); ++i) {
+ _sceneObjects[_sceneObjectActions[i].sceneObjectIndex].walkCount = 0;
+ _sceneObjects[_sceneObjectActions[i].sceneObjectIndex].turnCount = 0;
+ }
+
+ }
+
+ actionsFinished = true;
+
+ // Update SceneObject actions (walk and turn)
+ for (uint i = 0; i < _sceneObjectActions.size(); ++i) {
+ SceneObjectAction *soAction = &_sceneObjectActions[i];
+ SceneObject *sceneObject = &_sceneObjects[soAction->sceneObjectIndex];
+ if (sceneObject->walkDestPt.x != -1) {
+ debug(5, "waiting for walk to finish");
+ actionsFinished = false;
+ } else if ((int16)(sceneObject->x >> 16) != soAction->walkDest.x || (int16)(sceneObject->y >> 16) != soAction->walkDest.y) {
+ debug(5, "starting to walk");
+ sceneObject->walkDestPt = soAction->walkDest;
+ actionsFinished = false;
+ } else if (sceneObject->walkCount == 0 && sceneObject->turnCount == 0) {
+ debug(5, "not walking");
+ for (int turnCount = 0; turnCount < 8; ++turnCount)
+ if (sceneObject->sceneObjectDef->animIndices[kWalkTurnTbl[turnCount]] == soAction->animationIndex && sceneObject->turnValue != turnCount) {
+ sceneObject->turnCount = turnCount | 0x80;
+ break;
+ }
+ }
+ if (sceneObject->turnCount)
+ actionsFinished = false;
+ }
+
+ if (actionsFinished)
+ _sceneObjectActions.clear();
+
+ return actionsFinished;
+}
+
+void BbvsEngine::skipCurrAction() {
+ ActionCommands &actionCommands = _currAction->actionCommands;
+ while (_currAction && _newSceneNum == 0)
+ updateCommon();
+ for (uint i = 0; i < actionCommands.size(); ++i)
+ if (actionCommands[i].cmd == kActionCmdPlaySound)
+ stopSound(actionCommands[i].param);
+ _system->delayMillis(250);
+ _gameTicks = 0;
+}
+
+void BbvsEngine::updateCommon() {
+
+ if (_currAction) {
+
+ bool doActionCommands = true;
+
+ if (_currActionCommandTimeStamp == 0) {
+ doActionCommands = processCurrAction();
+ _currActionCommandIndex = 0;
+ }
+
+ if (doActionCommands) {
+
+ ActionCommand *actionCommand = &_currAction->actionCommands[_currActionCommandIndex];
+
+ while (actionCommand->timeStamp == _currActionCommandTimeStamp &&
+ _currActionCommandIndex < (int)_currAction->actionCommands.size()) {
+ if (!performActionCommand(actionCommand)) {
+ _gameState = kGSScene;
+ evalActionResults(_currAction->results);
+ if (_gameState == kGSDialog)
+ updateDialogConditions();
+ _currAction = 0;
+ _currActionCommandTimeStamp = 0;
+ _currActionCommandIndex = -1;
+ updateSceneObjectsTurnValue();
+ updateWalkableRects();
+ break;
+ }
+ actionCommand = &_currAction->actionCommands[++_currActionCommandIndex];
+ }
+
+ if (_currAction) {
+ ++_currActionCommandTimeStamp;
+ } else {
+ _activeItemIndex = 0;
+ _mouseCursorSpriteIndex = 0;
+ _activeItemType = kITEmpty;
+ for (int i = 0; i < _gameModule->getActionsCount(); ++i) {
+ Action *action = _gameModule->getAction(i);
+ if (evalCondition(action->conditions)) {
+ _gameState = kGSWait;
+ _currAction = action;
+ }
+ }
+ }
+
+ }
+
+ }
+
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i) {
+ SceneObject *sceneObject = &_sceneObjects[i];
+
+ if (sceneObject->walkDestPt.x != -1) {
+ if (sceneObject->walkCount == 0) {
+ debug(5, "[%s] needs to walk", sceneObject->sceneObjectDef->name);
+ startWalkObject(sceneObject);
+ if (sceneObject->walkCount == 0) {
+ debug(5, "no walk possible");
+ sceneObject->walkDestPt.x = -1;
+ sceneObject->walkDestPt.y = -1;
+ sceneObject->xIncr = 0;
+ sceneObject->yIncr = 0;
+ }
+ }
+ updateWalkObject(sceneObject);
+ }
+
+ if (sceneObject->walkCount > 0 && sceneObject->turnCount == 0) {
+ debug(5, "walk step, xIncr: %d, yIncr: %d", sceneObject->xIncr, sceneObject->yIncr);
+ sceneObject->x += sceneObject->xIncr;
+ sceneObject->y += sceneObject->yIncr;
+ --sceneObject->walkCount;
+ } else if (sceneObject->turnCount != 0) {
+ debug(5, "need turn, turnCount: %d", sceneObject->turnCount);
+ turnObject(sceneObject);
+ }
+
+ if (sceneObject == _buttheadObject && sceneObject->walkDestPt.x != -1) {
+ for (uint j = 0; j < _walkAreaActions.size(); ++j) {
+ if (_walkAreaActions[j] != _currAction && evalCondition(_walkAreaActions[j]->conditions)) {
+ _sceneObjectActions.clear();
+ _gameState = kGSWait;
+ _currAction = _walkAreaActions[j];
+ _currActionCommandTimeStamp = 0;
+ _currActionCommandIndex = -1;
+ for (int k = 0; k < _gameModule->getSceneObjectDefsCount(); ++k) {
+ SceneObject *sceneObject2 = &_sceneObjects[k];
+ sceneObject2->walkDestPt.x = -1;
+ sceneObject2->walkDestPt.y = -1;
+ sceneObject2->walkCount = 0;
+ }
+ break;
+ }
+ }
+ }
+
+ if (sceneObject->anim && --sceneObject->frameTicks == 0) {
+ if (++sceneObject->frameIndex >= sceneObject->anim->frameCount)
+ sceneObject->frameIndex = 0;
+ sceneObject->frameTicks = sceneObject->anim->frameTicks[sceneObject->frameIndex];
+ }
+
+ }
+
+ if (!_currAction && _buttheadObject) {
+ int16 buttheadX = _buttheadObject->x >> 16;
+ int16 buttheadY = _buttheadObject->y >> 16;
+ CameraInit *cameraInit = _gameModule->getCameraInit(_currCameraNum);
+ for (int i = 0; i < 8; ++i) {
+ if (cameraInit->rects[i].contains(buttheadX, buttheadY)) {
+ int newCameraNum = cameraInit->cameraLinks[i];
+ if (_currCameraNum != newCameraNum) {
+ int prevCameraNum = _currCameraNum;
+ _currCameraNum = newCameraNum;
+ _newCameraPos = _gameModule->getCameraInit(newCameraNum)->cameraPos;
+ for (int j = 0; j < _gameModule->getActionsCount(); ++j) {
+ Action *action = _gameModule->getAction(j);
+ if (evalCameraCondition(action->conditions, prevCameraNum)) {
+ _gameState = kGSWait;
+ _currAction = action;
+ _mouseCursorSpriteIndex = 0;
+ _buttheadObject->walkDestPt.x = -1;
+ _buttheadObject->walkCount = 0;
+ break;
+ }
+ }
+ updateBackgroundSounds();
+ }
+ }
+ }
+ }
+
+ if (_cameraPos.x < _newCameraPos.x)
+ ++_cameraPos.x;
+ if (_cameraPos.x > _newCameraPos.x)
+ --_cameraPos.x;
+ if (_cameraPos.y < _newCameraPos.y)
+ ++_cameraPos.y;
+ if (_cameraPos.y > _newCameraPos.y)
+ --_cameraPos.y;
+
+ // Check if Butthead is inside a scene exit
+ if (_newSceneNum == 0 && !_currAction && _buttheadObject) {
+ int16 buttheadX = _buttheadObject->x >> 16;
+ int16 buttheadY = _buttheadObject->y >> 16;
+ for (int i = 0; i < _gameModule->getSceneExitsCount(); ++i) {
+ SceneExit *sceneExit = _gameModule->getSceneExit(i);
+ if (sceneExit->rect.contains(buttheadX, buttheadY)) {
+ _newSceneNum = sceneExit->newModuleNum;
+ break;
+ }
+ }
+ }
+
+}
+
+void BbvsEngine::updateSceneObjectsTurnValue() {
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i) {
+ SceneObject *sceneObject = &_sceneObjects[i];
+ sceneObject->turnValue = 0;
+ for (int j = 0; j < 12; ++j) {
+ if (sceneObject->sceneObjectDef->animIndices[j] == sceneObject->animIndex) {
+ sceneObject->turnValue = kTurnTbl[j];
+ break;
+ }
+ }
+ }
+}
+
+void BbvsEngine::updateDialogConditions() {
+ _dialogSlotCount = 0;
+ memset(_dialogItemStatus, 0, sizeof(_dialogItemStatus));
+ for (int i = 0; i < _gameModule->getActionsCount(); ++i) {
+ Action *action = _gameModule->getAction(i);
+ int slotIndex = evalDialogCondition(action->conditions);
+ if (slotIndex >= 0) {
+ _dialogItemStatus[slotIndex] = 1;
+ ++_dialogSlotCount;
+ }
+ }
+}
+
+void BbvsEngine::playSpeech(int soundNum) {
+ debug(5, "playSpeech(%0d)", soundNum);
+ Common::String sndFilename = Common::String::format("snd/snd%05d.aif", soundNum);
+ Common::File *fd = new Common::File();
+ fd->open(sndFilename);
+ Audio::AudioStream *audioStream = Audio::makeAIFFStream(fd, DisposeAfterUse::YES);
+ _mixer->playStream(Audio::Mixer::kSpeechSoundType, &_speechSoundHandle, audioStream);
+
+}
+
+void BbvsEngine::stopSpeech() {
+ _mixer->stopHandle(_speechSoundHandle);
+}
+
+void BbvsEngine::playSound(uint soundNum, bool loop) {
+ debug(5, "playSound(%0d)", soundNum);
+ for (uint i = 0; i < _gameModule->getPreloadSoundsCount(); ++i)
+ if (_gameModule->getPreloadSound(i) == soundNum) {
+ _sound->playSound(i, loop);
+ break;
+ }
+}
+
+void BbvsEngine::stopSound(uint soundNum) {
+ for (uint i = 0; i < _gameModule->getPreloadSoundsCount(); ++i)
+ if (_gameModule->getPreloadSound(i) == soundNum) {
+ _sound->stopSound(i);
+ break;
+ }
+}
+
+void BbvsEngine::stopSounds() {
+ _sound->stopAllSounds();
+}
+
+bool BbvsEngine::runMinigame(int minigameNum) {
+ debug(0, "BbvsEngine::runMinigame() minigameNum: %d", minigameNum);
+
+ bool fromMainGame = _currSceneNum != kMainMenu;
+
+ _sound->unloadSounds();
+
+ Minigame *minigame = 0;
+
+ switch (minigameNum) {
+ case kMinigameBbLoogie:
+ minigame = new MinigameBbLoogie(this);
+ break;
+ case kMinigameBbTennis:
+ minigame = new MinigameBbTennis(this);
+ break;
+ case kMinigameBbAnt:
+ minigame = new MinigameBbAnt(this);
+ break;
+ case kMinigameBbAirGuitar:
+ minigame = new MinigameBbAirGuitar(this);
+ break;
+ default:
+ error("Incorrect minigame number %d", minigameNum);
+ break;
+ }
+
+ bool minigameResult = minigame->run(fromMainGame);
+
+ delete minigame;
+
+ // Check if the principal was hit with a megaloogie in the loogie minigame
+ if (minigameNum == 0 && minigameResult)
+ _gameVars[42] = 1;
+
+#if 0
+ //DEBUG Fake it :)
+ if (minigameNum == 0)
+ _gameVars[42] = 1;
+#endif
+
+ return true;
+}
+
+void BbvsEngine::runMainMenu() {
+ MainMenu *mainMenu = new MainMenu(this);
+ mainMenu->runModal();
+ delete mainMenu;
+}
+
+void BbvsEngine::checkEasterEgg(char key) {
+
+ static const char * const kEasterEggStrings[] = {
+ "BOIDUTS",
+ "YNNIF",
+ "SKCUS",
+ "NAMTAH"
+ };
+
+ static const int kEasterEggLengths[] = {
+ 7, 5, 5, 6
+ };
+
+ if (_currSceneNum == kCredits) {
+ memcpy(&_easterEggInput[1], &_easterEggInput[0], 6);
+ _easterEggInput[0] = key;
+ for (int i = 0; i < ARRAYSIZE(kEasterEggStrings); ++i) {
+ if (!scumm_strnicmp(kEasterEggStrings[i], _easterEggInput, kEasterEggLengths[i])) {
+ _easterEggInput[0] = 0;
+ _newSceneNum = 100 + i;
+ break;
+ }
+ }
+ }
+
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/bbvs.h b/engines/bbvs/bbvs.h
new file mode 100644
index 0000000000..6a9a13905c
--- /dev/null
+++ b/engines/bbvs/bbvs.h
@@ -0,0 +1,423 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_BBVS_H
+#define BBVS_BBVS_H
+
+#include "audio/mixer.h"
+#include "audio/decoders/aiff.h"
+#include "common/array.h"
+#include "common/events.h"
+#include "common/file.h"
+#include "common/memstream.h"
+#include "common/random.h"
+#include "common/str.h"
+#include "common/substream.h"
+#include "common/system.h"
+#include "common/winexe.h"
+#include "common/winexe_pe.h"
+#include "engines/engine.h"
+
+struct ADGameDescription;
+
+namespace Bbvs {
+
+class ActionCommands;
+struct Action;
+class GameModule;
+struct Condition;
+struct Conditions;
+struct ActionResult;
+struct ActionResults;
+struct ActionCommand;
+struct CameraInit;
+struct SceneObjectDef;
+struct SceneObjectInit;
+struct SceneExit;
+struct Animation;
+struct SceneSound;
+class DrawList;
+class SpriteModule;
+class Screen;
+class SoundMan;
+
+#define BBVS_SAVEGAME_VERSION 0
+
+enum {
+ kVerbLook = 0,
+ kVerbUse = 1,
+ kVerbTalk = 2,
+ kVerbWalk = 3,
+ kVerbInvItem = 4,
+ kVerbShowInv = 5
+};
+
+enum {
+ kITNone = 0,
+ kITEmpty = 1,
+ KITSceneObject = 2,
+ kITBgObject = 3,
+ kITDialog = 4,
+ kITScroll = 5,
+ kITSceneExit = 6,
+ kITInvItem = 7
+};
+
+enum {
+ kGSScene = 0,
+ kGSInventory = 1,
+ kGSVerbs = 2,
+ kGSWait = 3,
+ kGSDialog = 4,
+ kGSWaitDialog = 5
+};
+
+enum {
+ kActionCmdStop = 0,
+ kActionCmdWalkObject = 3,
+ kActionCmdMoveObject = 4,
+ kActionCmdAnimObject = 5,
+ kActionCmdSetCameraPos = 7,
+ kActionCmdPlaySpeech = 8,
+ kActionCmdPlaySound = 10,
+ kActionCmdStartBackgroundSound = 11,
+ kActionCmdStopBackgroundSound = 12
+};
+
+enum {
+ kCondUnused = 1,
+ kCondSceneObjectVerb = 2,
+ kCondBgObjectVerb = 3,
+ kCondSceneObjectInventory = 4,
+ kCondBgObjectInventory = 5,
+ kCondHasInventoryItem = 6,
+ kCondHasNotInventoryItem = 7,
+ kCondIsGameVar = 8,
+ kCondIsNotGameVar = 9,
+ kCondIsPrevSceneNum = 10,
+ kCondIsCurrTalkObject = 11,
+ kCondIsDialogItem = 12,
+ kCondIsCameraNum = 13,
+ kCondIsNotPrevSceneNum = 14,
+ kCondDialogItem0 = 15,
+ kCondIsButtheadAtBgObject = 16,
+ kCondIsNotSceneVisited = 17,
+ kCondIsSceneVisited = 18,
+ kCondIsCameraNumTransition = 19
+};
+
+enum {
+ kActResAddInventoryItem = 1,
+ kActResRemoveInventoryItem = 2,
+ kActResSetGameVar = 3,
+ kActResUnsetGameVar = 4,
+ kActResStartDialog = 5,
+ kActResChangeScene = 6
+};
+
+enum {
+ kLeftButtonClicked = 1,
+ kRightButtonClicked = 2,
+ kLeftButtonDown = 4,
+ kRightButtonDown = 8,
+ kAnyButtonClicked = kLeftButtonClicked | kRightButtonClicked,
+ kAnyButtonDown = kLeftButtonDown | kRightButtonDown
+};
+
+struct BBPoint {
+ int16 x, y;
+};
+
+struct BBRect {
+ int16 x, y, width, height;
+};
+
+struct BBPolygon {
+ const BBPoint *points;
+ int pointsCount;
+};
+
+struct Rect {
+ int16 left, top, right, bottom;
+};
+
+struct SceneObject {
+ uint32 x, y;
+ SceneObjectDef *sceneObjectDef;
+ Animation *anim;
+ int animIndex;
+ int frameIndex;
+ int frameTicks;
+ int walkCount;
+ int xIncr, yIncr;
+ int turnValue, turnCount, turnTicks;
+ Common::Point walkDestPt;
+ SceneObject() : sceneObjectDef(0), anim(0) {
+ }
+};
+
+struct SceneObjectAction {
+ int sceneObjectIndex;
+ int animationIndex;
+ Common::Point walkDest;
+};
+
+struct WalkInfo {
+ int16 x, y;
+ int delta;
+ int direction;
+ Common::Point midPt;
+ int walkAreaIndex;
+};
+
+struct WalkArea {
+ int16 x, y, width, height;
+ bool checked;
+ int linksCount;
+ WalkArea *links[16];
+ WalkInfo *linksD1[32];
+ WalkInfo *linksD2[32];
+ bool contains(const Common::Point &pt) const;
+};
+
+const int kSnapshotSize = 23072;
+const int kSceneObjectsCount = 64;
+const int kSceneSoundsCount = 8;
+const int kInventoryItemStatusCount = 50;
+const int kDialogItemStatusCount = 50;
+const int kGameVarsCount = 2000;
+const int kSceneVisitedCount = 64;
+
+const int kMainMenu = 44;
+const int kCredits = 45;
+
+const int kMaxDistance = 0xFFFFFF;
+static const int8 kWalkTurnTbl[] = {
+ 7, 9, 4, 8, 6, 10, 5, 11
+};
+
+class BbvsEngine : public Engine {
+protected:
+ Common::Error run();
+ virtual bool hasFeature(EngineFeature f) const;
+public:
+ BbvsEngine(OSystem *syst, const ADGameDescription *gd);
+ ~BbvsEngine();
+ void newGame();
+ void continueGameFromQuickSave();
+ void setNewSceneNum(int newSceneNum);
+ const Common::String getTargetName() { return _targetName; }
+private:
+ const ADGameDescription *_gameDescription;
+ Graphics::PixelFormat _pixelFormat;
+public:
+ Common::RandomSource *_random;
+
+ GameModule *_gameModule;
+ SpriteModule *_spriteModule;
+ SoundMan *_sound;
+
+ Screen *_screen;
+
+ int _bootSaveSlot;
+
+ int _mouseX, _mouseY;
+ uint _mouseButtons;
+ Common::KeyCode _keyCode;
+
+ int _mouseCursorSpriteIndex;
+
+ int _gameState;
+ int _gameTicks;
+
+ Common::Point _mousePos;
+ Common::Point _verbPos;
+ Common::Point _walkMousePos;
+
+ int _activeItemType;
+ int _activeItemIndex;
+ int _currTalkObjectIndex;
+
+ Common::Point _cameraPos, _newCameraPos;
+
+ int _newSceneNum, _prevSceneNum, _currSceneNum;
+ int _playVideoNumber;
+
+ int _dialogSlotCount;
+ byte _dialogItemStatus[kDialogItemStatusCount];
+
+ byte _gameVars[kGameVarsCount];
+ byte _sceneVisited[kSceneVisitedCount];
+
+ int _currVerbNum;
+
+ int _currInventoryItem;
+ byte _inventoryItemStatus[kInventoryItemStatusCount];
+ int _inventoryButtonIndex;
+
+ Action *_currAction;
+ uint32 _currActionCommandTimeStamp;
+ int _currActionCommandIndex;
+
+ Common::Array<Action*> _walkAreaActions;
+
+ SceneObject _sceneObjects[kSceneObjectsCount];
+ Common::Array<SceneObjectAction> _sceneObjectActions;
+
+ SceneObject *_buttheadObject, *_beavisObject;
+ int _currCameraNum;
+
+ byte _backgroundSoundsActive[kSceneSoundsCount];
+ Audio::SoundHandle _speechSoundHandle;
+
+ int _walkAreasCount;
+ WalkArea _walkAreas[80];
+ int _walkInfosCount;
+ WalkInfo _walkInfos[256];
+ int _walkableRectsCount;
+ Common::Rect _walkableRects[256];
+ Common::Rect _tempWalkableRects1[256];
+ Common::Rect _tempWalkableRects2[256];
+ WalkInfo *_walkInfoPtrs[256];
+
+ WalkArea *_sourceWalkArea, *_destWalkArea;
+ Common::Point _sourceWalkAreaPt, _destWalkAreaPt, _finalWalkPt;
+ int _currWalkDistance;
+ bool _walkReachedDestArea;
+
+ bool _hasSnapshot;
+ byte *_snapshot;
+ Common::SeekableMemoryWriteStream *_snapshotStream;
+
+ char _easterEggInput[7];
+
+ void updateEvents();
+ int getRandom(int max);
+
+ void drawDebugInfo();
+ void drawScreen();
+
+ void updateGame();
+
+ bool evalCondition(Conditions &conditions);
+ bool evalCameraCondition(Conditions &conditions, int value);
+ int evalDialogCondition(Conditions &conditions);
+ void evalActionResults(ActionResults &results);
+
+ void updateBackgroundSounds();
+
+ void loadScene(int sceneNum);
+ void initScene(bool sounds);
+ bool changeScene();
+ bool update(int mouseX, int mouseY, uint mouseButtons, Common::KeyCode keyCode);
+
+ void buildDrawList(DrawList &drawList);
+
+ void updateVerbs();
+ void updateDialog(bool clicked);
+ void updateInventory(bool clicked);
+ void updateScene(bool clicked);
+
+ bool performActionCommand(ActionCommand *actionCommand);
+ bool processCurrAction();
+ void skipCurrAction();
+
+ void updateCommon();
+
+ void updateWalkableRects();
+ void startWalkObject(SceneObject *sceneObject);
+ void updateWalkObject(SceneObject *sceneObject);
+ void walkObject(SceneObject *sceneObject, const Common::Point &destPt, int walkSpeed);
+ void turnObject(SceneObject *sceneObject);
+
+ int rectSubtract(const Common::Rect &rect1, const Common::Rect &rect2, Common::Rect *outRects);
+
+ WalkInfo *addWalkInfo(int16 x, int16 y, int delta, int direction, int16 midPtX, int16 midPtY, int walkAreaIndex);
+ void initWalkAreas(SceneObject *sceneObject);
+ WalkArea *getWalkAreaAtPos(const Common::Point &pt);
+ bool canButtheadWalkToDest(const Common::Point &destPt);
+ void canWalkToDest(WalkArea *walkArea, int infoCount);
+ bool walkTestLineWalkable(const Common::Point &sourcePt, const Common::Point &destPt, WalkInfo *walkInfo);
+ void walkFindPath(WalkArea *sourceWalkArea, int infoCount);
+ int calcDistance(const Common::Point &pt1, const Common::Point &pt2);
+ void walkFoundPath(int count);
+
+ void updateSceneObjectsTurnValue();
+ void updateDialogConditions();
+
+ void playSpeech(int soundNum);
+ void stopSpeech();
+
+ void playSound(uint soundNum, bool loop = false);
+ void stopSound(uint soundNum);
+ void stopSounds();
+
+ bool runMinigame(int minigameNum);
+ void playVideo(int videoNum);
+
+ void runMainMenu();
+ void checkEasterEgg(char key);
+
+ // Savegame API
+
+ enum kReadSaveHeaderError {
+ kRSHENoError = 0,
+ kRSHEInvalidType = 1,
+ kRSHEInvalidVersion = 2,
+ kRSHEIoError = 3
+ };
+
+ struct SaveHeader {
+ Common::String description;
+ uint32 version;
+ byte gameID;
+ uint32 flags;
+ uint32 saveDate;
+ uint32 saveTime;
+ uint32 playTime;
+ Graphics::Surface *thumbnail;
+ };
+
+ bool _isSaveAllowed;
+
+ bool canLoadGameStateCurrently() { return _isSaveAllowed; }
+ bool canSaveGameStateCurrently() { return _isSaveAllowed; }
+ Common::Error loadGameState(int slot);
+ Common::Error saveGameState(int slot, const Common::String &description);
+ void savegame(const char *filename, const char *description);
+ void loadgame(const char *filename);
+ const char *getSavegameFilename(int num);
+ bool existsSavegame(int num);
+ static Common::String getSavegameFilename(const Common::String &target, int num);
+ static kReadSaveHeaderError readSaveHeader(Common::SeekableReadStream *in, bool loadThumbnail, SaveHeader &header);
+
+ void allocSnapshot();
+ void freeSnapshot();
+ void saveSnapshot();
+
+ void writeContinueSavegame();
+
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_BBVS_H
diff --git a/engines/bbvs/configure.engine b/engines/bbvs/configure.engine
new file mode 100644
index 0000000000..c1dc1ef924
--- /dev/null
+++ b/engines/bbvs/configure.engine
@@ -0,0 +1,3 @@
+# This file is included from the main "configure" script
+# add_engine [name] [desc] [build-by-default] [subengines] [base games] [deps]
+add_engine bbvs "Beavis and Butthead in Virtual Stupidity" no
diff --git a/engines/bbvs/detection.cpp b/engines/bbvs/detection.cpp
new file mode 100644
index 0000000000..e7383163f5
--- /dev/null
+++ b/engines/bbvs/detection.cpp
@@ -0,0 +1,162 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/bbvs.h"
+
+#include "common/config-manager.h"
+#include "engines/advancedDetector.h"
+#include "common/savefile.h"
+#include "common/system.h"
+#include "base/plugins.h"
+#include "graphics/thumbnail.h"
+
+static const PlainGameDescriptor bbvsGames[] = {
+ { "bbvs", "Beavis and Butthead in Virtual Stupidity" },
+ { 0, 0 }
+};
+
+namespace Bbvs {
+
+static const ADGameDescription gameDescriptions[] = {
+ {
+ "bbvs",
+ 0,
+ AD_ENTRY1s("game0001.vnm", "637e5411751c7065bc385dd73d224561", 64004),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO0()
+ },
+
+ AD_TABLE_END_MARKER
+};
+
+} // End of namespace Bbvs
+
+static const char * const directoryGlobs[] = {
+ "vnm",
+ 0
+};
+
+class BbvsMetaEngine : public AdvancedMetaEngine {
+public:
+ BbvsMetaEngine() : AdvancedMetaEngine(Bbvs::gameDescriptions, sizeof(ADGameDescription), bbvsGames) {
+ _singleid = "bbvs";
+ _maxScanDepth = 3;
+ _directoryGlobs = directoryGlobs;
+ }
+
+ virtual const char *getName() const {
+ return "MTV's Beavis and Butt-Head in Virtual Stupidity";
+ }
+
+ virtual const char *getOriginalCopyright() const {
+ return "(C) 1995 Viacom New Media";
+ }
+
+ virtual bool hasFeature(MetaEngineFeature f) const;
+ virtual bool createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const;
+ virtual int getMaximumSaveSlot() const;
+ virtual SaveStateList listSaves(const char *target) const;
+ SaveStateDescriptor querySaveMetaInfos(const char *target, int slot) const;
+ virtual void removeSaveState(const char *target, int slot) const;
+};
+
+bool BbvsMetaEngine::hasFeature(MetaEngineFeature f) const {
+ return
+ (f == kSupportsListSaves) ||
+ (f == kSupportsDeleteSave) ||
+ (f == kSupportsLoadingDuringStartup) ||
+ (f == kSavesSupportMetaInfo) ||
+ (f == kSavesSupportThumbnail) ||
+ (f == kSavesSupportCreationDate);
+}
+
+void BbvsMetaEngine::removeSaveState(const char *target, int slot) const {
+ Common::String fileName = Common::String::format("%s.%03d", target, slot);
+ g_system->getSavefileManager()->removeSavefile(fileName);
+}
+
+int BbvsMetaEngine::getMaximumSaveSlot() const {
+ return 999;
+}
+
+SaveStateList BbvsMetaEngine::listSaves(const char *target) const {
+ Common::SaveFileManager *saveFileMan = g_system->getSavefileManager();
+ Bbvs::BbvsEngine::SaveHeader header;
+ Common::String pattern = target;
+ pattern += ".???";
+ Common::StringArray filenames;
+ filenames = saveFileMan->listSavefiles(pattern.c_str());
+ Common::sort(filenames.begin(), filenames.end()); // Sort (hopefully ensuring we are sorted numerically..)
+ SaveStateList saveList;
+ for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); ++file) {
+ // Obtain the last 3 digits of the filename, since they correspond to the save slot
+ int slotNum = atoi(file->c_str() + file->size() - 3);
+ if (slotNum >= 0 && slotNum <= 999) {
+ Common::InSaveFile *in = saveFileMan->openForLoading(file->c_str());
+ if (in) {
+ if (Bbvs::BbvsEngine::readSaveHeader(in, false, header) == Bbvs::BbvsEngine::kRSHENoError) {
+ saveList.push_back(SaveStateDescriptor(slotNum, header.description));
+ }
+ delete in;
+ }
+ }
+ }
+ return saveList;
+}
+
+SaveStateDescriptor BbvsMetaEngine::querySaveMetaInfos(const char *target, int slot) const {
+ Common::String filename = Bbvs::BbvsEngine::getSavegameFilename(target, slot);
+ Common::InSaveFile *in = g_system->getSavefileManager()->openForLoading(filename.c_str());
+ if (in) {
+ Bbvs::BbvsEngine::SaveHeader header;
+ Bbvs::BbvsEngine::kReadSaveHeaderError error;
+ error = Bbvs::BbvsEngine::readSaveHeader(in, true, header);
+ delete in;
+ if (error == Bbvs::BbvsEngine::kRSHENoError) {
+ SaveStateDescriptor desc(slot, header.description);
+ // Slot 0 is used for the "Continue" save
+ desc.setDeletableFlag(slot != 0);
+ desc.setWriteProtectedFlag(slot == 0);
+ desc.setThumbnail(header.thumbnail);
+ desc.setSaveDate(header.saveDate & 0xFFFF, (header.saveDate >> 16) & 0xFF, (header.saveDate >> 24) & 0xFF);
+ desc.setSaveTime((header.saveTime >> 16) & 0xFF, (header.saveTime >> 8) & 0xFF);
+ desc.setPlayTime(header.playTime * 1000);
+ return desc;
+ }
+ }
+ return SaveStateDescriptor();
+}
+
+bool BbvsMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const {
+ if (desc) {
+ *engine = new Bbvs::BbvsEngine(syst, desc);
+ }
+ return desc != 0;
+}
+
+#if PLUGIN_ENABLED_DYNAMIC(BBVS)
+ REGISTER_PLUGIN_DYNAMIC(BBVS, PLUGIN_TYPE_ENGINE, BbvsMetaEngine);
+#else
+ REGISTER_PLUGIN_STATIC(BBVS, PLUGIN_TYPE_ENGINE, BbvsMetaEngine);
+#endif
diff --git a/engines/bbvs/dialogs.cpp b/engines/bbvs/dialogs.cpp
new file mode 100644
index 0000000000..5247a58ec8
--- /dev/null
+++ b/engines/bbvs/dialogs.cpp
@@ -0,0 +1,182 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/dialogs.h"
+#include "common/events.h"
+#include "gui/gui-manager.h"
+#include "gui/ThemeEval.h"
+
+namespace Bbvs {
+
+struct MenuButton {
+ const char *label;
+ uint32 cmd;
+};
+
+static const MenuButton kMenuButtons[] = {
+ // Main menu
+ {"New Game", kCmdNewGame},
+ {"Continue", kCmdContinue},
+ {"Options", kCmdOptions},
+ {"Mini Games", kCmdMiniGames},
+ {"Quit", kCmdQuit},
+ // Options
+ {"Uninstall", kCmdUninstall},
+ {"Credits", kCmdCredits},
+ {"Opening", kCmdOpening},
+ {"Chicks 'n' Stuff", kCmdChicksNStuff},
+ {"Back ..", kCmdBack},
+ // Minigames
+ {"Hock-A-Loogie", kCmdHockALoogie},
+ {"Bug Justice", kCmdBugJustice},
+ {"Court Chaos", kCmdCourtChaos},
+ {"Air Guitar", kCmdAirGuitar},
+ {"Back ..", kCmdBack}
+};
+
+MainMenu::MainMenu(BbvsEngine *vm) : Dialog(0, 0, 1, 1), _vm(vm) {
+ init();
+}
+
+MainMenu::~MainMenu() {
+}
+
+void MainMenu::init() {
+ _buttons[0] = new GUI::ButtonWidget(this, 0, 0, 1, 1, "", 0, 0);
+ _buttons[1] = new GUI::ButtonWidget(this, 0, 0, 1, 1, "", 0, 0);
+ _buttons[2] = new GUI::ButtonWidget(this, 0, 0, 1, 1, "", 0, 0);
+ _buttons[3] = new GUI::ButtonWidget(this, 0, 0, 1, 1, "", 0, 0);
+ _buttons[4] = new GUI::ButtonWidget(this, 0, 0, 1, 1, "", 0, 0);
+ gotoMenuScreen(kMainMenuScr);
+}
+
+void MainMenu::reflowLayout() {
+ const int screenW = g_system->getOverlayWidth();
+ const int screenH = g_system->getOverlayHeight();
+
+ const int buttonWidth = screenW * 70 / 320;
+ const int buttonHeight = screenH * 14 / 240;
+ const int buttonPadding = screenW * 3 / 320;
+
+ _w = 2 * buttonWidth + buttonPadding;
+ _h = 3 * buttonHeight + 3 * buttonPadding;
+ _x = (screenW - _w) / 2;
+ _y = screenH - _h;
+
+ int x = 0, y = 0;
+
+ x = 0;
+ y = 0;
+ _buttons[0]->resize(x, y, buttonWidth, buttonHeight);
+ x += buttonWidth + buttonPadding;
+ _buttons[1]->resize(x, y, buttonWidth, buttonHeight);
+
+ x = 0;
+ y += buttonHeight + buttonPadding;
+ _buttons[2]->resize(x, y, buttonWidth, buttonHeight);
+ x += buttonWidth + buttonPadding;
+ _buttons[3]->resize(x, y, buttonWidth, buttonHeight);
+
+ x = (_w - buttonWidth) / 2; // Center the last button
+ y += buttonHeight + buttonPadding;
+ _buttons[4]->resize(x, y, buttonWidth, buttonHeight);
+
+ GUI::Dialog::reflowLayout();
+
+}
+
+void MainMenu::handleCommand(GUI::CommandSender *sender, uint32 command, uint32 data) {
+ switch (command) {
+ // Main menu
+ case kCmdNewGame:
+ close();
+ _vm->newGame();
+ break;
+ case kCmdContinue:
+ close();
+ _vm->continueGameFromQuickSave();
+ break;
+ case kCmdOptions:
+ gotoMenuScreen(kOptionsMenuScr);
+ break;
+ case kCmdMiniGames:
+ gotoMenuScreen(kMiniGamesMenuScr);
+ break;
+ case kCmdQuit:
+ close();
+ _vm->quitGame();
+ break;
+ // Options menu
+ case kCmdUninstall:
+ break;
+ case kCmdCredits:
+ gotoScene(45);
+ break;
+ case kCmdOpening:
+ gotoScene(43);
+ break;
+ case kCmdChicksNStuff:
+ gotoScene(41);
+ break;
+ // Minigames menu
+ case kCmdHockALoogie:
+ gotoScene(27);
+ break;
+ case kCmdBugJustice:
+ gotoScene(29);
+ break;
+ case kCmdCourtChaos:
+ gotoScene(28);
+ break;
+ case kCmdAirGuitar:
+ gotoScene(30);
+ break;
+ case kCmdBack:
+ gotoMenuScreen(kMainMenuScr);
+ break;
+ default:
+ Dialog::handleCommand(sender, command, data);
+ }
+}
+
+void MainMenu::gotoMenuScreen(int screen) {
+ for (int i = 0; i < 5; ++i) {
+ const MenuButton *btn = &kMenuButtons[screen * 5 + i];
+ _buttons[i]->setLabel(btn->label);
+ _buttons[i]->setCmd(btn->cmd);
+ _buttons[i]->setEnabled(btn->cmd != 0);
+ }
+ // Enable the "Continue" button if a savegame at slot 0 exists
+ if (screen == kMainMenuScr)
+ _buttons[1]->setEnabled(canContinue());
+}
+
+bool MainMenu::canContinue() {
+ return _vm->existsSavegame(0);
+}
+
+void MainMenu::gotoScene(int sceneNum) {
+ close();
+ _vm->setNewSceneNum(sceneNum);
+}
+
+} // End of namespace Hugo
diff --git a/engines/bbvs/dialogs.h b/engines/bbvs/dialogs.h
new file mode 100644
index 0000000000..2dce2a110b
--- /dev/null
+++ b/engines/bbvs/dialogs.h
@@ -0,0 +1,81 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_DIALOGS_H
+#define BBVS_DIALOGS_H
+
+#include "bbvs/bbvs.h"
+#include "gui/dialog.h"
+#include "gui/widgets/edittext.h"
+
+namespace Bbvs {
+
+enum {
+ // Main menu
+ kCmdNewGame = 'NEWG',
+ kCmdContinue = 'CONT',
+ kCmdOptions = 'OPTN',
+ kCmdMiniGames = 'MINI',
+ kCmdQuit = 'QUIT',
+ // Options
+ kCmdUninstall = 0,
+ kCmdCredits = 'CRED',
+ kCmdOpening = 'OPEN',
+ kCmdChicksNStuff = 'CHIC',
+ // Minigames
+ kCmdHockALoogie = 'HOCK',
+ kCmdBugJustice = 'BUGJ',
+ kCmdCourtChaos = 'CORT',
+ kCmdAirGuitar = 'AIRG',
+ kCmdBack = 'BACK'
+};
+
+enum {
+ kMainMenuScr = 0,
+ kOptionsMenuScr = 1,
+ kMiniGamesMenuScr = 2
+};
+
+class MainMenu : public GUI::Dialog {
+public:
+ MainMenu(BbvsEngine *vm);
+ ~MainMenu();
+
+ void reflowLayout();
+ void handleCommand(GUI::CommandSender *sender, uint32 command, uint32 data);
+
+protected:
+ BbvsEngine *_vm;
+
+ void init();
+
+ GUI::ButtonWidget *_buttons[5];
+
+ void gotoMenuScreen(int index);
+ bool canContinue();
+ void gotoScene(int sceneNum);
+
+};
+
+}
+
+#endif // BBVS_DIALOGS_H
diff --git a/engines/bbvs/gamemodule.cpp b/engines/bbvs/gamemodule.cpp
new file mode 100644
index 0000000000..d6343084ab
--- /dev/null
+++ b/engines/bbvs/gamemodule.cpp
@@ -0,0 +1,500 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/gamemodule.h"
+#include "engines/util.h"
+
+namespace Bbvs {
+
+GameModule::GameModule()
+ : _bgSpriteCount(0), _bgSpriteIndices(0), _bgSpritePriorities(0), _walkRectsCount(0),
+ _walkRects(0), _sceneExitsCount(0), _sceneExits(0), _bgObjectsCount(0), _bgObjects(0),
+ _animationsCount(0), _animations(0), _sceneObjectDefsCount(0), _sceneObjectDefs(0),
+ _sceneObjectInitsCount(0), _sceneObjectInits(0), _actionsCount(0), _actions(0),
+ _sceneSoundsCount(0), _sceneSounds(0), _preloadSoundsCount(0), _preloadSounds(0) {
+}
+
+GameModule::~GameModule() {
+ unload();
+}
+
+void GameModule::load(const char *filename) {
+ debug(0, "GameModule::load()");
+
+ unload();
+
+ Common::File fd;
+
+ if (!fd.open(filename))
+ error("GameModule::load() Could not open %s", filename);
+
+ loadBgSprites(fd);
+ loadCameraInits(fd);
+ loadWalkRects(fd);
+ loadSceneExits(fd);
+ loadBgObjects(fd);
+ loadAnimations(fd);
+ loadSceneObjectDefs(fd);
+ loadSceneObjectInits(fd);
+ loadActions(fd);
+ loadGuiSpriteIndices(fd);
+ loadInventoryItemSpriteIndices(fd);
+ loadInventoryItemInfos(fd);
+ loadDialogItemSpriteIndices(fd);
+ loadSceneSounds(fd);
+ loadPreloadSounds(fd);
+
+ fd.seek(0xC);
+ _fieldC = fd.readUint32LE();
+
+ fd.seek(0x1A8);
+ _buttheadObjectIndex = fd.readUint32LE();
+
+ fd.close();
+
+ debug(0, "GameModule::load() OK");
+}
+
+int GameModule::getFieldC() {
+ return _fieldC;
+}
+
+int GameModule::getButtheadObjectIndex() {
+ return _buttheadObjectIndex;
+}
+
+int GameModule::getGuiSpriteIndex(int index) {
+ assert(index < kGuiSpriteCount);
+ return _guiSpriteIndices[index];
+}
+
+int GameModule::getInventoryItemSpriteIndex(int index) {
+ assert(index < kInventoryItemSpriteCount);
+ return _inventoryItemSpriteIndices[index];
+}
+
+int GameModule::getDialogItemSpriteIndex(int index) {
+ assert(index < kDialogItemSpriteCount);
+ return _dialogItemSpriteIndices[index];
+}
+
+int GameModule::getActionsCount() {
+ return _actionsCount;
+}
+
+Action *GameModule::getAction(int index) {
+ assert(index < _actionsCount);
+ return &_actions[index];
+}
+
+InventoryItemInfo *GameModule::getInventoryItemInfo(int index) {
+ assert(index < kInventoryItemCount);
+ return &_inventoryItemInfos[index];
+}
+
+CameraInit *GameModule::getCameraInit(int cameraNum) {
+ assert(cameraNum < kCameraInitsCount);
+ return &_cameraInits[cameraNum];
+}
+
+int GameModule::getSceneExitsCount() {
+ return _sceneExitsCount;
+}
+
+SceneExit *GameModule::getSceneExit(int index) {
+ assert(index < _sceneExitsCount);
+ return &_sceneExits[index];
+}
+
+int GameModule::getWalkRectsCount() {
+ return _walkRectsCount;
+}
+
+Common::Rect *GameModule::getWalkRects() {
+ return _walkRects;
+}
+
+int GameModule::getSceneObjectDefsCount() {
+ return _sceneObjectDefsCount;
+}
+
+SceneObjectDef *GameModule::getSceneObjectDef(int index) {
+ assert(index < _sceneObjectDefsCount);
+ return &_sceneObjectDefs[index];
+}
+
+int GameModule::getSceneObjectInitsCount() {
+ return _sceneObjectInitsCount;
+}
+
+SceneObjectInit *GameModule::getSceneObjectInit(int index) {
+ assert(index < _sceneObjectInitsCount);
+ return &_sceneObjectInits[index];
+}
+
+int GameModule::getBgObjectsCount() {
+ return _bgObjectsCount;
+}
+
+BgObject *GameModule::getBgObject(int index) {
+ assert(index < _bgObjectsCount);
+ return &_bgObjects[index];
+}
+
+int GameModule::getBgSpritesCount() {
+ return _bgSpriteCount;
+}
+
+int GameModule::getBgSpriteIndex(int index) {
+ assert(index < _bgSpriteCount);
+ return _bgSpriteIndices[index];
+}
+
+int GameModule::getBgSpritePriority(int index) {
+ assert(index < _bgSpriteCount);
+ return _bgSpritePriorities[index];
+}
+
+int GameModule::getSceneSoundsCount() {
+ return _sceneSoundsCount;
+}
+
+SceneSound *GameModule::getSceneSound(int index) {
+ assert(index < _sceneSoundsCount);
+ return &_sceneSounds[index];
+}
+
+uint GameModule::getSceneSoundIndex(uint soundNum) {
+ for (int i = 0; i < getSceneSoundsCount(); ++i)
+ if (getSceneSound(i)->soundNum == soundNum)
+ return i;
+ return 0;
+}
+
+uint GameModule::getPreloadSoundsCount() {
+ return _preloadSoundsCount;
+}
+
+uint GameModule::getPreloadSound(uint index) {
+ assert(index < _preloadSoundsCount);
+ return _preloadSounds[index];
+}
+
+Animation *GameModule::getAnimation(int index) {
+ assert(index < _animationsCount);
+ return &_animations[index];
+}
+
+Common::Point GameModule::readPoint(Common::SeekableReadStream &s) {
+ Common::Point p;
+ p.x = s.readUint16LE();
+ p.y = s.readUint16LE();
+ return p;
+}
+
+Common::Rect GameModule::readRect(Common::SeekableReadStream &s) {
+ Common::Rect r;
+ r.left = s.readUint16LE();
+ r.top = s.readUint16LE();
+ r.setWidth(s.readUint16LE());
+ r.setHeight(s.readUint16LE());
+ return r;
+}
+
+Conditions GameModule::readConditions(Common::SeekableReadStream &s) {
+ Conditions c;
+ for (int i = 0; i < 8; ++i) {
+ c.conditions[i].cond = s.readByte();
+ c.conditions[i].value1 = s.readByte();
+ c.conditions[i].value2 = s.readUint16LE();
+ }
+ return c;
+}
+
+void GameModule::unload() {
+ delete[] _bgSpriteIndices;
+ delete[] _bgSpritePriorities;
+ delete[] _walkRects;
+ delete[] _sceneExits;
+ delete[] _bgObjects;
+ delete[] _animations;
+ delete[] _sceneObjectDefs;
+ delete[] _sceneObjectInits;
+ delete[] _actions;
+ delete[] _sceneSounds;
+ delete[] _preloadSounds;
+ _bgSpriteIndices = 0;
+ _bgSpritePriorities = 0;
+ _walkRects = 0;
+ _sceneExits = 0;
+ _bgObjects = 0;
+ _animations = 0;
+ _sceneObjectDefs = 0;
+ _sceneObjectInits = 0;
+ _actions = 0;
+ _sceneSounds = 0;
+ _preloadSounds = 0;
+}
+
+void GameModule::loadBgSprites(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadBgSprites()");
+
+ s.seek(0x14);
+ _bgSpriteCount = s.readUint32LE();
+ uint32 bgSpriteIndicesOffs = s.readUint32LE();
+ uint32 bgSpritePrioritiesOffs = s.readUint32LE();
+ _bgSpriteIndices = new int[_bgSpriteCount];
+ _bgSpritePriorities = new int16[_bgSpriteCount];
+ s.seek(bgSpriteIndicesOffs);
+ for (int i = 0; i < _bgSpriteCount; ++i)
+ _bgSpriteIndices[i] = s.readUint32LE();
+ s.seek(bgSpritePrioritiesOffs);
+ for (int i = 0; i < _bgSpriteCount; ++i)
+ _bgSpritePriorities[i] = s.readUint16LE();
+
+}
+
+void GameModule::loadCameraInits(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadCameraInits()");
+
+ s.seek(0x20);
+ for (int i = 0; i < kCameraInitsCount; ++i) {
+ CameraInit &cameraInit = _cameraInits[i];
+ cameraInit.cameraPos = readPoint(s);
+ for (int j = 0; j < 8; ++j)
+ cameraInit.cameraLinks[j] = s.readByte();
+ for (int j = 0; j < 8; ++j)
+ cameraInit.rects[j] = readRect(s);
+ }
+}
+
+void GameModule::loadWalkRects(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadWalkRects()");
+
+ s.seek(0x150);
+ _walkRectsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _walkRects = new Common::Rect[_walkRectsCount];
+ s.seek(offs);
+ for (int i = 0; i < _walkRectsCount; ++i)
+ _walkRects[i] = readRect(s);
+}
+
+void GameModule::loadSceneExits(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadSceneExits()");
+
+ s.seek(0x158);
+ _sceneExitsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _sceneExits = new SceneExit[_sceneExitsCount];
+ s.seek(offs);
+ for (int i = 0; i < _sceneExitsCount; ++i) {
+ _sceneExits[i].rect = readRect(s);
+ _sceneExits[i].newModuleNum = s.readUint32LE();
+ }
+}
+
+void GameModule::loadBgObjects(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadBgObjects()");
+
+ s.seek(0x160);
+ _bgObjectsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _bgObjects = new BgObject[_bgObjectsCount];
+ s.seek(offs);
+ for (int i = 0; i < _bgObjectsCount; ++i) {
+ s.read(_bgObjects[i].name, 20);
+ _bgObjects[i].rect = readRect(s);
+ }
+}
+
+void GameModule::loadAnimations(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadAnimations()");
+
+ s.seek(0x168);
+ _animationsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _animations = new Animation[_animationsCount];
+ for (int i = 0; i < _animationsCount; ++i) {
+ Animation &anim = _animations[i];
+ s.seek(offs + i * 20);
+ anim.frameCount = s.readUint32LE();
+ uint32 frameSpriteIndicesOffs = s.readUint32LE();
+ uint32 frameTicksOffs = s.readUint32LE();
+ uint32 frameRects1Offs = s.readUint32LE();
+ uint32 frameRects2Offs = s.readUint32LE();
+ anim.frameSpriteIndices = new int[anim.frameCount];
+ s.seek(frameSpriteIndicesOffs);
+ for (int j = 0; j < anim.frameCount; ++j)
+ anim.frameSpriteIndices[j] = s.readUint32LE();
+ anim.frameTicks = new int16[anim.frameCount];
+ s.seek(frameTicksOffs);
+ for (int j = 0; j < anim.frameCount; ++j)
+ anim.frameTicks[j] = s.readUint16LE();
+ anim.frameRects1 = new Common::Rect[anim.frameCount];
+ s.seek(frameRects1Offs);
+ for (int j = 0; j < anim.frameCount; ++j)
+ anim.frameRects1[j] = readRect(s);
+ anim.frameRects2 = new Common::Rect[anim.frameCount];
+ s.seek(frameRects2Offs);
+ for (int j = 0; j < anim.frameCount; ++j)
+ anim.frameRects2[j] = readRect(s);
+ }
+}
+
+void GameModule::loadSceneObjectDefs(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadSceneObjectDefs()");
+
+ s.seek(0x170);
+ _sceneObjectDefsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _sceneObjectDefs = new SceneObjectDef[_sceneObjectDefsCount];
+ s.seek(offs);
+ for (int i = 0; i < _sceneObjectDefsCount; ++i) {
+ s.read(_sceneObjectDefs[i].name, 20);
+ _sceneObjectDefs[i].walkSpeed = s.readUint32LE();
+ for (int j = 0; j < 16; ++j)
+ _sceneObjectDefs[i].animIndices[j] = s.readUint32LE();
+ }
+}
+
+void GameModule::loadSceneObjectInits(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadSceneObjectInits()");
+
+ s.seek(0x178);
+ _sceneObjectInitsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _sceneObjectInits = new SceneObjectInit[_sceneObjectInitsCount];
+ s.seek(offs);
+ for (int i = 0; i < _sceneObjectInitsCount; ++i) {
+ _sceneObjectInits[i].conditions = readConditions(s);
+ _sceneObjectInits[i].sceneObjectIndex = s.readUint32LE();
+ _sceneObjectInits[i].animIndex = s.readUint32LE();
+ _sceneObjectInits[i].x = s.readUint16LE();
+ _sceneObjectInits[i].y = s.readUint16LE();
+ }
+}
+
+void GameModule::loadActions(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadActions()");
+
+ s.seek(0x180);
+ _actionsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _actions = new Action[_actionsCount];
+ for (int i = 0; i < _actionsCount; ++i) {
+ s.seek(offs + i * 72);
+ debug(0, "Action(%d) offs: %08X", i, offs + i * 72);
+ _actions[i].conditions = readConditions(s);
+ for (int j = 0; j < 8; ++j) {
+ _actions[i].results.actionResults[j].kind = s.readByte();
+ _actions[i].results.actionResults[j].value1 = s.readByte();
+ _actions[i].results.actionResults[j].value2 = s.readUint16LE();
+ }
+ const int actionListCount = s.readUint32LE();
+ const uint32 actionListOffs = s.readUint32LE();
+ s.seek(actionListOffs);
+ for (int j = 0; j < actionListCount; ++j) {
+ ActionCommand actionCommand;
+ actionCommand.cmd = s.readUint16LE();
+ actionCommand.sceneObjectIndex = s.readUint16LE();
+ actionCommand.timeStamp = s.readUint32LE();
+ actionCommand.walkDest = readPoint(s);
+ actionCommand.param = s.readUint32LE();
+ _actions[i].actionCommands.push_back(actionCommand);
+ }
+ }
+}
+
+void GameModule::loadGuiSpriteIndices(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadGuiSpriteIndices()");
+
+ s.seek(0x188);
+ uint32 offs = s.readUint32LE();
+ s.seek(offs);
+ for (int i = 0; i < kGuiSpriteCount; ++i)
+ _guiSpriteIndices[i] = s.readUint32LE();
+}
+
+void GameModule::loadInventoryItemSpriteIndices(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadInventoryItemSpriteIndices()");
+
+ s.seek(0x18C);
+ uint32 offs = s.readUint32LE();
+ s.seek(offs);
+ for (int i = 0; i < kInventoryItemSpriteCount; ++i)
+ _inventoryItemSpriteIndices[i] = s.readUint32LE();
+}
+
+void GameModule::loadInventoryItemInfos(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadInventoryItemInfos()");
+
+ s.seek(0x190);
+ uint32 offs = s.readUint32LE();
+ s.seek(offs);
+ for (int i = 0; i < kInventoryItemCount; ++i) {
+ _inventoryItemInfos[i].xOffs = s.readUint16LE();
+ _inventoryItemInfos[i].yOffs = s.readUint16LE();
+ _inventoryItemInfos[i].width = s.readUint16LE();
+ _inventoryItemInfos[i].height = s.readUint16LE();
+ s.skip(8); // Unused
+ }
+}
+
+void GameModule::loadDialogItemSpriteIndices(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadDialogItemSpriteIndices()");
+
+ s.seek(0x194);
+ uint32 offs = s.readUint32LE();
+ s.seek(offs);
+ for (int i = 0; i < kDialogItemSpriteCount; ++i) {
+ _dialogItemSpriteIndices[i] = s.readUint32LE();
+ }
+}
+
+void GameModule::loadSceneSounds(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadSceneSounds()");
+
+ s.seek(0x1A0);
+ _sceneSoundsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _sceneSounds = new SceneSound[_sceneSoundsCount];
+ s.seek(offs);
+ for (int i = 0; i < _sceneSoundsCount; ++i) {
+ _sceneSounds[i].conditions = readConditions(s);
+ _sceneSounds[i].soundNum = s.readUint32LE();
+ }
+}
+
+void GameModule::loadPreloadSounds(Common::SeekableReadStream &s) {
+ debug(0, "GameModule::loadPreloadSounds()");
+
+ s.seek(0x198);
+ _preloadSoundsCount = s.readUint32LE();
+ uint32 offs = s.readUint32LE();
+ _preloadSounds = new uint[_preloadSoundsCount];
+ s.seek(offs);
+ for (uint i = 0; i < _preloadSoundsCount; ++i)
+ _preloadSounds[i] = s.readUint32LE();
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/gamemodule.h b/engines/bbvs/gamemodule.h
new file mode 100644
index 0000000000..4d4f5b90a1
--- /dev/null
+++ b/engines/bbvs/gamemodule.h
@@ -0,0 +1,251 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_GAMEMODULE_H
+#define BBVS_GAMEMODULE_H
+
+#include "common/array.h"
+#include "common/file.h"
+#include "common/memstream.h"
+#include "common/rect.h"
+#include "common/str.h"
+
+namespace Bbvs {
+
+const int kInventoryItemCount = 42;
+const int kInventoryItemSpriteCount = 2 * kInventoryItemCount;
+const int kDialogItemSpriteCount = 26;
+const int kGuiSpriteCount = 21;
+const int kCameraInitsCount = 4;
+
+struct Condition {
+ byte cond;
+ byte value1;
+ int16 value2;
+};
+
+struct Conditions {
+ Condition conditions[8];
+};
+
+struct ActionResult {
+ byte kind;
+ byte value1;
+ int16 value2;
+};
+
+struct ActionResults {
+ ActionResult actionResults[8];
+};
+
+struct ActionCommand {
+ uint16 cmd;
+ int16 sceneObjectIndex;
+ uint32 timeStamp;
+ Common::Point walkDest;
+ int32 param;
+};
+
+class ActionCommands : public Common::Array<ActionCommand> {
+};
+
+struct Action {
+ Conditions conditions;
+ ActionResults results;
+ ActionCommands actionCommands;
+};
+
+struct InventoryItemInfo {
+ int16 xOffs, yOffs;
+ int16 width, height;
+};
+
+struct CameraInit {
+ Common::Point cameraPos;
+ byte cameraLinks[8];
+ Common::Rect rects[8];
+};
+
+struct SceneObjectDef {
+ char name[20];
+ int animIndices[16];
+ int walkSpeed;
+};
+
+struct SceneObjectInit {
+ Conditions conditions;
+ int sceneObjectIndex;
+ int animIndex;
+ int x, y;
+};
+
+struct BgObject {
+ char name[20];
+ Common::Rect rect;
+};
+
+struct Animation {
+ int frameCount;
+ int *frameSpriteIndices;
+ int16 *frameTicks;
+ Common::Rect *frameRects1;
+ Common::Rect *frameRects2;
+ Animation()
+ : frameCount(0), frameSpriteIndices(0), frameTicks(0), frameRects1(0), frameRects2(0) {
+ }
+ ~Animation() {
+ delete[] frameSpriteIndices;
+ delete[] frameTicks;
+ delete[] frameRects1;
+ delete[] frameRects2;
+ }
+};
+
+struct SceneExit {
+ Common::Rect rect;
+ int newModuleNum;
+};
+
+struct SceneSound {
+ Conditions conditions;
+ uint soundNum;
+};
+
+class GameModule {
+public:
+ GameModule();
+ ~GameModule();
+
+ void load(const char *filename);
+
+ int getFieldC();
+ int getButtheadObjectIndex();
+
+ int getGuiSpriteIndex(int index);
+ int getInventoryItemSpriteIndex(int index);
+ int getDialogItemSpriteIndex(int index);
+
+ int getActionsCount();
+ Action *getAction(int index);
+
+ InventoryItemInfo *getInventoryItemInfo(int index);
+
+ CameraInit *getCameraInit(int cameraNum);
+
+ int getSceneExitsCount();
+ SceneExit *getSceneExit(int index);
+
+ int getWalkRectsCount();
+ Common::Rect *getWalkRects();
+
+ int getSceneObjectDefsCount();
+ SceneObjectDef *getSceneObjectDef(int index);
+
+ int getSceneObjectInitsCount();
+ SceneObjectInit *getSceneObjectInit(int index);
+
+ int getBgObjectsCount();
+ BgObject *getBgObject(int index);
+
+ int getBgSpritesCount();
+ int getBgSpriteIndex(int index);
+ int getBgSpritePriority(int index);
+
+ int getSceneSoundsCount();
+ SceneSound *getSceneSound(int index);
+ uint getSceneSoundIndex(uint soundNum);
+
+ uint getPreloadSoundsCount();
+ uint getPreloadSound(uint index);
+
+ Animation *getAnimation(int index);
+
+protected:
+
+ int _bgSpriteCount;
+ int *_bgSpriteIndices;
+ int16 *_bgSpritePriorities;
+
+ CameraInit _cameraInits[kCameraInitsCount];
+
+ int _walkRectsCount;
+ Common::Rect *_walkRects;
+
+ int _sceneExitsCount;
+ SceneExit *_sceneExits;
+
+ int _bgObjectsCount;
+ BgObject *_bgObjects;
+
+ int _animationsCount;
+ Animation *_animations;
+
+ int _sceneObjectDefsCount;
+ SceneObjectDef *_sceneObjectDefs;
+
+ int _sceneObjectInitsCount;
+ SceneObjectInit *_sceneObjectInits;
+
+ int _actionsCount;
+ Action *_actions;
+
+ int _sceneSoundsCount;
+ SceneSound *_sceneSounds;
+
+ uint _preloadSoundsCount;
+ uint *_preloadSounds;
+
+ int _guiSpriteIndices[kGuiSpriteCount];
+ int _inventoryItemSpriteIndices[kInventoryItemSpriteCount];
+ InventoryItemInfo _inventoryItemInfos[kInventoryItemCount];
+ int _dialogItemSpriteIndices[kDialogItemSpriteCount];
+
+ int _fieldC;
+ int _buttheadObjectIndex;
+
+ Common::Point readPoint(Common::SeekableReadStream &s);
+ Common::Rect readRect(Common::SeekableReadStream &s);
+ Conditions readConditions(Common::SeekableReadStream &s);
+
+ void unload();
+
+ void loadBgSprites(Common::SeekableReadStream &s);
+ void loadCameraInits(Common::SeekableReadStream &s);
+ void loadWalkRects(Common::SeekableReadStream &s);
+ void loadSceneExits(Common::SeekableReadStream &s);
+ void loadBgObjects(Common::SeekableReadStream &s);
+ void loadAnimations(Common::SeekableReadStream &s);
+ void loadSceneObjectDefs(Common::SeekableReadStream &s);
+ void loadSceneObjectInits(Common::SeekableReadStream &s);
+ void loadActions(Common::SeekableReadStream &s);
+ void loadGuiSpriteIndices(Common::SeekableReadStream &s);
+ void loadInventoryItemSpriteIndices(Common::SeekableReadStream &s);
+ void loadInventoryItemInfos(Common::SeekableReadStream &s);
+ void loadDialogItemSpriteIndices(Common::SeekableReadStream &s);
+ void loadSceneSounds(Common::SeekableReadStream &s);
+ void loadPreloadSounds(Common::SeekableReadStream &s);
+
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_GAMEMODULE_H
diff --git a/engines/bbvs/graphics.cpp b/engines/bbvs/graphics.cpp
new file mode 100644
index 0000000000..810d910abf
--- /dev/null
+++ b/engines/bbvs/graphics.cpp
@@ -0,0 +1,141 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/graphics.h"
+
+namespace Bbvs {
+
+void DrawList::add(int index, int x, int y, int priority) {
+ debug(5, "DrawList::add() %d (%d, %d) %d", index, x, y, priority);
+ DrawListEntry drawListEntry;
+ drawListEntry.index = index;
+ drawListEntry.x = x;
+ drawListEntry.y = y;
+ drawListEntry.priority = priority;
+ // Insert the sprite at the correct position
+ uint insertIndex = 0;
+ while (insertIndex < size() && (*this)[insertIndex].priority <= priority)
+ ++insertIndex;
+ insert_at(insertIndex, drawListEntry);
+}
+
+Screen::Screen(OSystem *system) : _system(system) {
+ _surface = new Graphics::Surface();
+ _surface->create(320, 240, Graphics::PixelFormat::createFormatCLUT8());
+}
+
+Screen::~Screen() {
+ _surface->free();
+ delete _surface;
+}
+
+void Screen::setPalette(Palette &palette) {
+ byte pal[768];
+ memset(pal, 0, 768);
+ memcpy(&pal[palette.start * 3], palette.data, palette.count * 3);
+ _system->getPaletteManager()->setPalette(pal, 0, 256);
+}
+
+void Screen::copyToScreen() {
+ _system->copyRectToScreen((const byte*)_surface->getBasePtr(0, 0), _surface->pitch, 0, 0, 320, 240);
+ _system->updateScreen();
+}
+
+void Screen::clear() {
+ _surface->fillRect(Common::Rect(0, 0, 320, 240), 0);
+}
+
+void Screen::drawDrawList(DrawList &drawList, SpriteModule *spriteModule) {
+ for (uint i = 0; i < drawList.size(); ++i) {
+ debug(1, "index: %d; x: %d; y: %d; priority: %d", drawList[i].index, drawList[i].x, drawList[i].y, drawList[i].priority);
+ Sprite sprite = spriteModule->getSprite(drawList[i].index);
+ drawSprite(sprite, drawList[i].x, drawList[i].y);
+ }
+}
+
+void Screen::drawSprite(Sprite &sprite, int x, int y) {
+ debug(5, "Screen::drawSprite()");
+
+ int destX, destY, width, height, skipX = 0, skipY = 0;
+
+ destX = sprite.xOffs + x;
+ destY = sprite.yOffs + y;
+
+ if (destX >= _surface->w || destY >= _surface->h)
+ return;
+
+ height = sprite.height;
+ if (destY < 0) {
+ height += destY;
+ if (height <= 0)
+ return;
+ skipY = -destY;
+ destY = 0;
+ }
+ if (destY + height > _surface->h)
+ height = _surface->h - destY;
+
+ width = sprite.width;
+ if (destX < 0) {
+ width += destX;
+ if (width <= 0)
+ return;
+ skipX = -destX;
+ destX = 0;
+ }
+ if (destX + width >= _surface->w)
+ width = _surface->w - destX;
+
+ debug(0, "drawSprite() (%d, %d, %d, %d); skipX: %d; skipY: %d; %d", destX, destY, width, height, skipX, skipY, sprite.type);
+
+ if (sprite.type == 1) {
+ for (int yc = 0; yc < height; ++yc) {
+ byte *source = sprite.getRow(skipY + yc);
+ byte *dest = (byte*)_surface->getBasePtr(destX, destY + yc);
+ int currWidth = -skipX;
+ while (currWidth < width) {
+ int8 op = *source++;
+ if (op < 0) {
+ currWidth += (-op);
+ } else {
+ while (op >= 0 && currWidth < width) {
+ if (currWidth >= 0)
+ dest[currWidth] = *source;
+ ++source;
+ ++currWidth;
+ --op;
+ }
+ }
+ }
+ }
+ } else {
+ for (int yc = 0; yc < height; ++yc) {
+ byte *source = sprite.getRow(skipY + yc) + skipX;
+ byte *dest = (byte*)_surface->getBasePtr(destX, destY + yc);
+ memcpy(dest, source, width);
+ }
+ }
+
+ debug(5, "Screen::drawSprite() OK");
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/graphics.h b/engines/bbvs/graphics.h
new file mode 100644
index 0000000000..acb8eb953a
--- /dev/null
+++ b/engines/bbvs/graphics.h
@@ -0,0 +1,61 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_GRAPHICS_H
+#define BBVS_GRAPHICS_H
+
+#include "bbvs/spritemodule.h"
+#include "common/array.h"
+#include "common/system.h"
+#include "graphics/palette.h"
+#include "graphics/surface.h"
+
+namespace Bbvs {
+
+struct DrawListEntry {
+ int index;
+ int x, y;
+ int priority;
+};
+
+class DrawList : public Common::Array<DrawListEntry> {
+public:
+ void add(int index, int x, int y, int priority);
+};
+
+class Screen {
+public:
+ Screen(OSystem *system);
+ ~Screen();
+ void setPalette(Palette &palette);
+ void copyToScreen();
+ void drawDrawList(DrawList &drawList, SpriteModule *spriteModule);
+ void drawSprite(Sprite &sprite, int x, int y);
+ void clear();
+//protected:
+ OSystem *_system;
+ Graphics::Surface *_surface;
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_GRAPHICS_H
diff --git a/engines/bbvs/logic.cpp b/engines/bbvs/logic.cpp
new file mode 100644
index 0000000000..06792e2df1
--- /dev/null
+++ b/engines/bbvs/logic.cpp
@@ -0,0 +1,265 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/bbvs.h"
+#include "bbvs/gamemodule.h"
+
+namespace Bbvs {
+
+bool BbvsEngine::evalCondition(Conditions &conditions) {
+ bool result = true;
+ for (int i = 0; i < 8 && result; ++i) {
+ const Condition &condition = conditions.conditions[i];
+ switch (condition.cond) {
+ case kCondSceneObjectVerb:
+ result = _activeItemType == KITSceneObject &&
+ condition.value1 == _currVerbNum &&
+ condition.value2 == _activeItemIndex;
+ break;
+ case kCondBgObjectVerb:
+ result = _activeItemType == kITBgObject &&
+ condition.value1 == _currVerbNum &&
+ condition.value2 == _activeItemIndex;
+ break;
+ case kCondSceneObjectInventory:
+ result = _activeItemType == KITSceneObject &&
+ _currVerbNum == kVerbInvItem &&
+ condition.value1 == _currInventoryItem &&
+ condition.value2 == _activeItemIndex;
+ break;
+ case kCondBgObjectInventory:
+ result = _activeItemType == kITBgObject &&
+ _currVerbNum == kVerbInvItem &&
+ condition.value1 == _currInventoryItem &&
+ condition.value2 == _activeItemIndex;
+ break;
+ case kCondHasInventoryItem:
+ result = _inventoryItemStatus[condition.value1] != 0;
+ break;
+ case kCondHasNotInventoryItem:
+ result = _inventoryItemStatus[condition.value1] == 0;
+ break;
+ case kCondIsGameVar:
+ result = _gameVars[condition.value2] != 0;
+ break;
+ case kCondIsNotGameVar:
+ result = _gameVars[condition.value2] == 0;
+ break;
+ case kCondIsPrevSceneNum:
+ result = condition.value2 == _prevSceneNum;
+ break;
+ case kCondIsCurrTalkObject:
+ result = condition.value2 == _currTalkObjectIndex;
+ break;
+ case kCondIsDialogItem:
+ result = _activeItemType == kITDialog &&
+ condition.value1 == _activeItemIndex;
+ break;
+ case kCondIsCameraNum:
+ result = condition.value1 == _currCameraNum;
+ break;
+ case kCondIsNotPrevSceneNum:
+ result = condition.value2 != _prevSceneNum;
+ break;
+ case kCondIsButtheadAtBgObject:
+ result = _buttheadObject &&
+ _gameModule->getBgObject(condition.value2)->rect.contains(_buttheadObject->x >> 16, _buttheadObject->y >> 16);
+ break;
+ case kCondIsNotSceneVisited:
+ result = _sceneVisited[_currSceneNum] == 0;
+ break;
+ case kCondIsSceneVisited:
+ result = _sceneVisited[_currSceneNum] != 0;
+ break;
+ case kCondUnused:
+ case kCondDialogItem0:
+ case kCondIsCameraNumTransition:
+ result = false;
+ break;
+ }
+ }
+ return result;
+}
+
+bool BbvsEngine::evalCameraCondition(Conditions &conditions, int value) {
+ bool result = true;
+ for (int i = 0; i < 8 && result; ++i) {
+ const Condition &condition = conditions.conditions[i];
+ switch (condition.cond) {
+ case kCondHasInventoryItem:
+ result = _inventoryItemStatus[condition.value1] != 0;
+ break;
+ case kCondHasNotInventoryItem:
+ result = _inventoryItemStatus[condition.value1] == 0;
+ break;
+ case kCondIsGameVar:
+ result = _gameVars[condition.value2] != 0;
+ break;
+ case kCondIsNotGameVar:
+ result = _gameVars[condition.value2] == 0;
+ break;
+ case kCondIsPrevSceneNum:
+ result = condition.value2 == _prevSceneNum;
+ break;
+ case kCondIsNotPrevSceneNum:
+ result = condition.value2 != _prevSceneNum;
+ break;
+ case kCondIsNotSceneVisited:
+ result = _sceneVisited[_currSceneNum] == 0;
+ break;
+ case kCondIsSceneVisited:
+ result = _sceneVisited[_currSceneNum] != 0;
+ break;
+ case kCondIsCameraNumTransition:
+ result = condition.value1 == _currCameraNum &&
+ condition.value2 == value;
+ break;
+ case kCondUnused:
+ case kCondSceneObjectVerb:
+ case kCondBgObjectVerb:
+ case kCondSceneObjectInventory:
+ case kCondBgObjectInventory:
+ case kCondIsCurrTalkObject:
+ case kCondIsDialogItem:
+ case kCondIsCameraNum:
+ case kCondDialogItem0:
+ case kCondIsButtheadAtBgObject:
+ result = false;
+ break;
+ default:
+ break;
+ }
+ }
+ return result;
+}
+
+int BbvsEngine::evalDialogCondition(Conditions &conditions) {
+ int result = -1;
+ bool success = false;
+ for (int i = 0; i < 8; ++i) {
+ const Condition &condition = conditions.conditions[i];
+ switch (condition.cond) {
+ case kCondSceneObjectVerb:
+ success = _activeItemType == KITSceneObject &&
+ condition.value1 == _currVerbNum &&
+ condition.value2 == _activeItemIndex;
+ break;
+ case kCondBgObjectVerb:
+ success = _activeItemType == kITBgObject &&
+ condition.value1 == _currVerbNum &&
+ condition.value2 == _activeItemIndex;
+ break;
+ case kCondSceneObjectInventory:
+ success = _activeItemType == KITSceneObject &&
+ _currVerbNum == kVerbInvItem &&
+ condition.value1 == _currInventoryItem &&
+ condition.value2 == _activeItemIndex;
+ break;
+ case kCondBgObjectInventory:
+ success = _activeItemType == kITBgObject &&
+ _currVerbNum == kVerbInvItem &&
+ condition.value1 == _currInventoryItem &&
+ condition.value2 == _activeItemIndex;
+ break;
+ case kCondHasInventoryItem:
+ success = _inventoryItemStatus[condition.value1] != 0;
+ break;
+ case kCondHasNotInventoryItem:
+ success = _inventoryItemStatus[condition.value1] == 0;
+ break;
+ case kCondIsGameVar:
+ success = _gameVars[condition.value2] != 0;
+ break;
+ case kCondIsNotGameVar:
+ success = _gameVars[condition.value2] == 0;
+ break;
+ case kCondIsPrevSceneNum:
+ success = condition.value2 == _prevSceneNum;
+ break;
+ case kCondIsCurrTalkObject:
+ success = condition.value2 == _currTalkObjectIndex;
+ break;
+ case kCondIsDialogItem:
+ result = condition.value1;
+ break;
+ case kCondIsCameraNum:
+ success = condition.value1 == _currCameraNum;
+ break;
+ case kCondIsNotPrevSceneNum:
+ success = condition.value2 != _prevSceneNum;
+ break;
+ case kCondIsButtheadAtBgObject:
+ success = _buttheadObject &&
+ _gameModule->getBgObject(condition.value2)->rect.contains(_buttheadObject->x >> 16, _buttheadObject->y >> 16);
+ break;
+ case kCondIsNotSceneVisited:
+ success = _sceneVisited[_currSceneNum] == 0;
+ break;
+ case kCondIsSceneVisited:
+ success = _sceneVisited[_currSceneNum] != 0;
+ break;
+ case kCondDialogItem0:
+ return 0;
+ case kCondUnused:
+ case kCondIsCameraNumTransition:
+ success = false;
+ break;
+ }
+ if (!success)
+ return -1;
+ }
+ return result;
+}
+
+void BbvsEngine::evalActionResults(ActionResults &results) {
+ for (int i = 0; i < 8; ++i) {
+ const ActionResult &result = results.actionResults[i];
+ switch (result.kind) {
+ case kActResAddInventoryItem:
+ _inventoryItemStatus[result.value1] = 1;
+ _currVerbNum = kVerbInvItem;
+ _currInventoryItem = result.value1;
+ break;
+ case kActResRemoveInventoryItem:
+ _inventoryItemStatus[result.value1] = 0;
+ if (result.value1 == _currInventoryItem)
+ _currInventoryItem = -1;
+ if (_currVerbNum == kVerbInvItem)
+ _currVerbNum = kVerbLook;
+ break;
+ case kActResSetGameVar:
+ _gameVars[result.value2] = 1;
+ break;
+ case kActResUnsetGameVar:
+ _gameVars[result.value2] = 0;
+ break;
+ case kActResStartDialog:
+ _gameState = kGSDialog;
+ break;
+ case kActResChangeScene:
+ _newSceneNum = result.value2;
+ break;
+ }
+ }
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/bbairguitar.cpp b/engines/bbvs/minigames/bbairguitar.cpp
new file mode 100644
index 0000000000..f2e42313e3
--- /dev/null
+++ b/engines/bbvs/minigames/bbairguitar.cpp
@@ -0,0 +1,1198 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/minigames/bbairguitar.h"
+
+namespace Bbvs {
+
+static const char * const kNoteSoundFilenames[] = {
+ "a.aif", "a#.aif", "b.aif", "c.aif", "c#.aif",
+ "d.aif", "d#.aif", "e.aif", "f.aif", "f#.aif",
+ "g.aif", "g#.aif", "a_oct.aif"
+};
+
+static const uint kNoteSoundFilenamesCount = ARRAYSIZE(kNoteSoundFilenames);
+
+static const char * const kPatchDirectories[] = {
+ "rock", "burp", "fart"
+};
+
+static const uint kPatchDirectoriesCount = ARRAYSIZE(kPatchDirectories);
+
+static const BBPoint kPianoKeyArea1[] = {{29, 192}, {38, 192}, {38, 222}, {41, 222}, {41, 239}, {29, 239}};
+static const BBPoint kPianoKeyArea2[] = {{38, 192}, {43, 192}, {43, 222}, {38, 222}};
+static const BBPoint kPianoKeyArea3[] = {{43, 192}, {49, 192}, {49, 222}, {52, 222}, {52, 239}, {41, 239}, {41, 222}, {43, 222}};
+static const BBPoint kPianoKeyArea4[] = {{49, 192}, {54, 192}, {54, 222}, {49, 222}};
+static const BBPoint kPianoKeyArea5[] = {{54, 192}, {63, 192}, {63, 239}, {52, 239}, {52, 222}, {54, 222}};
+static const BBPoint kPianoKeyArea6[] = {{63, 192}, {71, 192}, {71, 222}, {74, 222}, {74, 239}, {63, 239}};
+static const BBPoint kPianoKeyArea7[] = {{71, 192}, {76, 192}, {76, 222}, {71, 222}};
+static const BBPoint kPianoKeyArea8[] = {{76, 192}, {82, 192}, {82, 222}, {85, 222}, {85, 239}, {74, 239}, {74, 222}, {76, 222}};
+static const BBPoint kPianoKeyArea9[] = {{82, 192}, {87, 192}, {87, 222}, {82, 222}};
+static const BBPoint kPianoKeyArea10[] = {{87, 192}, {94, 192}, {94, 222}, {96, 222}, {96, 239}, {85, 239}, {85, 222}, {87, 222}};
+static const BBPoint kPianoKeyArea11[] = {{94, 192}, {99, 192}, {99, 222}, {94, 222}};
+static const BBPoint kPianoKeyArea12[] = {{99, 192}, {107, 192}, {107, 239}, {96, 239}, {96, 222}, {99, 222}};
+static const BBPoint kPianoKeyArea13[] = {{107, 192}, {118, 192}, {118, 239}, {107, 239}};
+
+static const BBPolygon kPianoKeyAreas[] = {
+ {kPianoKeyArea1, ARRAYSIZE(kPianoKeyArea1)},
+ {kPianoKeyArea2, ARRAYSIZE(kPianoKeyArea2)},
+ {kPianoKeyArea3, ARRAYSIZE(kPianoKeyArea3)},
+ {kPianoKeyArea4, ARRAYSIZE(kPianoKeyArea4)},
+ {kPianoKeyArea5, ARRAYSIZE(kPianoKeyArea5)},
+ {kPianoKeyArea6, ARRAYSIZE(kPianoKeyArea6)},
+ {kPianoKeyArea7, ARRAYSIZE(kPianoKeyArea7)},
+ {kPianoKeyArea8, ARRAYSIZE(kPianoKeyArea8)},
+ {kPianoKeyArea9, ARRAYSIZE(kPianoKeyArea9)},
+ {kPianoKeyArea10, ARRAYSIZE(kPianoKeyArea10)},
+ {kPianoKeyArea11, ARRAYSIZE(kPianoKeyArea11)},
+ {kPianoKeyArea12, ARRAYSIZE(kPianoKeyArea12)},
+ {kPianoKeyArea13, ARRAYSIZE(kPianoKeyArea13)},
+};
+
+static const BBPoint kObjPoints[] = {
+ {161, 189}, {269, 189}, {161, 208}, {279, 208}, {172, 208},
+ {141, 224}, {257, 191}, {257, 199}, {148, 223}, {124, 224},
+ { 29, 192}, {182, 220}, {245, 220}, {269, 220}, {161, 220},
+ {203, 220}, {224, 220}, {123, 189}, {123, 199}, {123, 209},
+ {134, 224}, { 29, 185}, {124, 224}, {226, 127}, {226, 127},
+ {209, 141}, {244, 141}, {226, 127}, { 99, 107}, { 99, 107},
+ { 76, 137}, {118, 136}, { 99, 107}, {195, 104}, {100, 78}
+};
+
+static const MinigameBbAirGuitar::PianoKeyInfo kPianoKeyInfos[] = {
+ { 30, 192, 0},
+ { 38, 192, 5},
+ { 41, 192, 1},
+ { 49, 192, 5},
+ { 52, 192, 2},
+ { 63, 192, 3},
+ { 71, 192, 5},
+ { 74, 192, 1},
+ { 82, 192, 5},
+ { 85, 192, 1},
+ { 94, 192, 5},
+ { 96, 192, 2},
+ {107, 192, 4}
+};
+
+static const Rect kRect2 = {29, 189, 290, 239};
+static const Rect kPianoRect = {29, 192, 118, 239};
+
+static const Rect kPlayerButtonRects[] = {
+ {123, 189, 145, 199},
+ {123, 199, 145, 209},
+ {123, 209, 145, 220},
+ {148, 223, 156, 236},
+ {161, 189, 182, 205},
+ {161, 208, 171, 218},
+ {161, 220, 182, 231},
+ {182, 220, 203, 231},
+ {203, 220, 224, 231},
+ {224, 220, 245, 231},
+ {245, 220, 266, 231},
+ {269, 220, 290, 231},
+ {269, 189, 290, 205},
+ {279, 208, 290, 218}
+};
+
+static const BBPoint kPointsTbl1[] = {
+ {196, 191}, {202, 191}, {207, 191}, {212, 191}, {217, 191},
+ {223, 191}, {228, 191}, {233, 191}, {238, 191}, {244, 191},
+ {249, 191}
+};
+
+static const BBPoint kPointsTbl2[] = {
+ {196, 199}, {202, 199}, {207, 199}, {212, 199}, {217, 199},
+ {223, 199}, {228, 199}, {233, 199}, {238, 199}, {244, 199},
+ {249, 199}
+};
+
+static const struct { int frameIndex; byte flag; } kNoteFrameTbl[13] = {
+ {2, 0}, {2, 1}, {3, 0}, {3, 1}, {4, 0},
+ {5, 0}, {5, 1}, {6, 0}, {6, 1}, {0, 0},
+ {0, 1}, {1, 0}, {2, 0}
+};
+
+const int kTrackBarMinX = 172;
+const int kTrackBarMaxX = 272;
+
+bool MinigameBbAirGuitar::ptInRect(const Rect *r, int x, int y) {
+ return r && Common::Rect(r->left, r->top, r->right, r->bottom).contains(x, y);
+}
+
+bool MinigameBbAirGuitar::ptInPoly(const BBPolygon *poly, int x, int y) {
+ if (!poly)
+ return false;
+ const BBPoint *points = poly->points;
+ int pointsCount = poly->pointsCount;
+ bool result = false;
+ if (pointsCount > 0)
+ for (int i = 0, j = pointsCount - 1; i < pointsCount; j = i++)
+ if (((points[i].y > y) != (points[j].y > y)) &&
+ (x < (points[j].x - points[i].x) * (y - points[i].y) /
+ (points[j].y - points[i].y) + points[i].x))
+ result = !result;
+ return result;
+}
+
+void MinigameBbAirGuitar::buildDrawList(DrawList &drawList) {
+ switch (_gameState) {
+ case 0:
+ buildDrawList0(drawList);
+ break;
+ case 1:
+ buildDrawList1(drawList);
+ break;
+ }
+}
+
+void MinigameBbAirGuitar::buildDrawList0(DrawList &drawList) {
+
+ drawList.add(_objects[0].anim->frameIndices[0], _objects[0].x, _objects[0].y, 2000);
+
+ for (int i = 1; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind)
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, obj->y + 16);
+ }
+
+ if (_titleScreenSpriteIndex> 0)
+ drawList.add(_titleScreenSpriteIndex, 0, 0, 0);
+
+}
+
+void MinigameBbAirGuitar::buildDrawList1(DrawList &drawList) {
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind)
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, 255 - i);
+ }
+
+ if (_movingTrackBar) {
+ _trackBarX = _trackBarMouseX;
+ } else if (_totalTrackLength > 0) {
+ _trackBarX = 100 * _currTrackPos / _totalTrackLength + kTrackBarMinX;
+ } else {
+ _trackBarX = kTrackBarMinX;
+ }
+
+ if (_trackBarX > kTrackBarMaxX)
+ _trackBarX = kTrackBarMaxX;
+
+ _trackBarThumbRect.top = 208;
+ _trackBarThumbRect.bottom = 218;
+ _trackBarThumbRect.left = _trackBarX;
+ _trackBarThumbRect.right = _trackBarX + 6;
+
+ drawList.add(_objects[5].anim->frameIndices[0], _trackBarX, 208, 100);
+
+ if (_playerMode != 0) {
+ for (int i = 36; i < _vuMeterLeft2 + 36; ++i) {
+ int frameIndex = 0;
+ if (i >= 45)
+ frameIndex = 3;
+ else if (i >= 43)
+ frameIndex = 2;
+ else if (i >= 41)
+ frameIndex = 1;
+ drawList.add(_objects[i].anim->frameIndices[frameIndex], kPointsTbl1[i - 36].x, kPointsTbl1[i - 36].y, 254);
+ }
+ for (int i = 47; i < _vuMeterRight2 + 47; ++i) {
+ int frameIndex = 0;
+ if (i >= 56)
+ frameIndex = 3;
+ else if (i >= 54)
+ frameIndex = 2;
+ else if (i >= 52)
+ frameIndex = 1;
+ drawList.add(_objects[i].anim->frameIndices[frameIndex], kPointsTbl2[i - 47].x, kPointsTbl2[i - 47].y, 254);
+ }
+ }
+
+ if (_backgroundSpriteIndex > 0)
+ drawList.add(_backgroundSpriteIndex, 0, 0, 0);
+
+}
+
+void MinigameBbAirGuitar::drawSprites() {
+ DrawList drawList;
+ buildDrawList(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ _vm->_screen->copyToScreen();
+}
+
+void MinigameBbAirGuitar::initObjs() {
+ for (int i = 0; i < kMaxObjectsCount; ++i)
+ _objects[i].kind = 0;
+}
+
+MinigameBbAirGuitar::Obj *MinigameBbAirGuitar::getFreeObject() {
+ for (int i = 0; i < kMaxObjectsCount; ++i)
+ if (_objects[i].kind == 0)
+ return &_objects[i];
+ return 0;
+}
+
+void MinigameBbAirGuitar::initObjects() {
+ switch (_gameState) {
+ case 0:
+ initObjects0();
+ break;
+ case 1:
+ initObjects1();
+ break;
+ }
+}
+
+void MinigameBbAirGuitar::initObjects0() {
+ _objects[0].anim = getAnimation(0);
+ _objects[0].frameIndex = 0;
+ _objects[0].ticks = getAnimation(0)->frameTicks[0];
+ _objects[0].x = 160;
+ _objects[0].y = 120;
+ _objects[0].kind = 1;
+ _objects[1].anim = getAnimation(37);
+ _objects[1].frameIndex = 0;
+ _objects[1].ticks = getAnimation(37)->frameTicks[0];
+ _objects[1].x = 40;
+ _objects[1].y = 240;
+ _objects[1].kind = 2;
+ _objects[2].anim = getAnimation(36);
+ _objects[2].frameIndex = 0;
+ _objects[2].ticks = getAnimation(36)->frameTicks[0];
+ _objects[2].x = 280;
+ _objects[2].y = 240;
+ _objects[2].kind = 2;
+
+}
+
+void MinigameBbAirGuitar::initObjects1() {
+
+ for (int i = 0; i < 60; ++i)
+ _objects[i].kind = 0;
+
+ _objects[0].kind = 0;
+ _objects[0].kind = 1;
+ _objects[0].anim = getAnimation(0);
+ _objects[0].ticks = getAnimation(0)->frameTicks[0];
+ _objects[1].anim = getAnimation(1);
+ _objects[1].ticks = getAnimation(1)->frameTicks[0];
+ _objects[2].anim = getAnimation(2);
+ _objects[2].ticks = getAnimation(2)->frameTicks[0];
+ _objects[3].anim = getAnimation(3);
+ _objects[3].ticks = getAnimation(3)->frameTicks[0];
+ _objects[4].anim = getAnimation(4);
+ _objects[4].ticks = getAnimation(4)->frameTicks[0];
+ _objects[5].anim = getAnimation(5);
+ _objects[5].ticks = getAnimation(5)->frameTicks[0];
+ _objects[6].anim = getAnimation(6);
+ _objects[6].ticks = getAnimation(6)->frameTicks[0];
+ _objects[7].anim = getAnimation(8);
+ _objects[7].ticks = getAnimation(8)->frameTicks[0];
+ _objects[8].anim = getAnimation(9);
+ _objects[8].ticks = getAnimation(9)->frameTicks[0];
+ _objects[9].anim = getAnimation(10);
+ _objects[9].ticks = getAnimation(10)->frameTicks[0];
+ _objects[10].anim = getAnimation(11);
+ _objects[10].ticks = getAnimation(11)->frameTicks[0];
+ _objects[11].anim = getAnimation(12);
+ _objects[11].ticks = getAnimation(12)->frameTicks[0];
+ _objects[12].anim = getAnimation(13);
+ _objects[12].ticks = getAnimation(13)->frameTicks[0];
+ _objects[13].anim = getAnimation(14);
+ _objects[13].ticks = getAnimation(14)->frameTicks[0];
+ _objects[14].anim = getAnimation(15);
+ _objects[14].ticks = getAnimation(15)->frameTicks[0];
+ _objects[15].anim = getAnimation(16);
+ _objects[15].ticks = getAnimation(16)->frameTicks[0];
+ _objects[16].anim = getAnimation(17);
+ _objects[16].ticks = getAnimation(17)->frameTicks[0];
+ _objects[17].anim = getAnimation(18);
+ _objects[17].ticks = getAnimation(18)->frameTicks[0];
+ _objects[18].anim = getAnimation(19);
+ _objects[18].ticks = getAnimation(19)->frameTicks[0];
+ _objects[19].anim = getAnimation(20);
+ _objects[19].ticks = getAnimation(20)->frameTicks[0];
+ _objects[20].anim = getAnimation(21);
+ _objects[20].ticks = getAnimation(21)->frameTicks[0];
+ _objects[21].anim = getAnimation(11);
+ _objects[21].ticks = getAnimation(11)->frameTicks[0];
+ _objects[22].anim = getAnimation(22);
+ _objects[22].ticks = getAnimation(22)->frameTicks[0];
+ _objects[23].anim = getAnimation(23);
+ _objects[23].ticks = getAnimation(23)->frameTicks[0];
+ _objects[24].anim = getAnimation(24);
+ _objects[24].ticks = getAnimation(24)->frameTicks[0];
+ _objects[25].anim = getAnimation(25);
+ _objects[25].ticks = getAnimation(25)->frameTicks[0];
+ _objects[26].anim = getAnimation(26);
+ _objects[26].ticks = getAnimation(26)->frameTicks[0];
+ _objects[27].anim = getAnimation(27);
+ _objects[27].ticks = getAnimation(27)->frameTicks[0];
+ _objects[28].anim = getAnimation(28);
+ _objects[28].ticks = getAnimation(28)->frameTicks[0];
+ _objects[29].anim = getAnimation(29);
+ _objects[29].ticks = getAnimation(29)->frameTicks[0];
+ _objects[30].anim = getAnimation(30);
+ _objects[30].ticks = getAnimation(30)->frameTicks[0];
+ _objects[31].anim = getAnimation(31);
+ _objects[31].ticks = getAnimation(31)->frameTicks[0];
+ _objects[32].anim = getAnimation(32);
+ _objects[32].ticks = getAnimation(32)->frameTicks[0];
+ _objects[33].anim = getAnimation(33);
+ _objects[33].ticks = getAnimation(33)->frameTicks[0];
+ _objects[34].anim = getAnimation(34);
+ _objects[34].ticks = getAnimation(34)->frameTicks[0];
+ _objects[35].anim = getAnimation(35);
+ _objects[35].ticks = getAnimation(35)->frameTicks[0];
+
+ for (int i = 36; i <= 57; ++i) {
+ _objects[i].anim = getAnimation(7);
+ _objects[i].ticks = getAnimation(7)->frameTicks[0];
+ }
+
+ for (int i = 1; i <= 35; ++i) {
+ _objects[i].x = kObjPoints[i - 1].x;
+ _objects[i].y = kObjPoints[i - 1].y;
+ }
+
+ _objects[22].kind = 1;
+ _objects[6].kind = 1;
+ _objects[26].kind = 1;
+ _objects[26].frameIndex = 3;
+ _objects[27].kind = 1;
+ _objects[27].frameIndex = 3;
+ _objects[31].kind = 1;
+ _objects[31].frameIndex = 3;
+ _objects[32].kind = 1;
+ _objects[32].frameIndex = 3;
+ _objects[28].kind = 1;
+ _objects[33].kind = 1;
+ _objects[34].kind = 1;
+ _objects[35].kind = 1;
+
+ _track[0].noteNum = -1;
+ stop();
+ changePatch(0);
+
+}
+
+bool MinigameBbAirGuitar::updateStatus(int mouseX, int mouseY, uint mouseButtons) {
+ switch (_gameState) {
+ case 0:
+ return updateStatus0(mouseX, mouseY, mouseButtons);
+ case 1:
+ return updateStatus1(mouseX, mouseY, mouseButtons);
+ }
+ return false;
+}
+
+bool MinigameBbAirGuitar::updateStatus0(int mouseX, int mouseY, uint mouseButtons) {
+
+ if (mouseButtons & kAnyButtonDown) {
+ stopSound(1);
+ _rockTunePlaying = false;
+ _gameState = 1;
+ initObjects();
+ _gameTicks = 0;
+ } else {
+
+ if (!_rockTunePlaying) {
+ _rockTunePlaying = true;
+ playSound(1, true);
+ }
+
+ _objects[0].x = mouseX;
+ _objects[0].y = mouseY;
+
+ for (int i = 1; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind && --obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex >= obj->anim->frameCount)
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ }
+ }
+
+ }
+
+ return true;
+}
+
+bool MinigameBbAirGuitar::updateStatus1(int mouseX, int mouseY, uint mouseButtons) {
+
+ int currTicks = _vm->_system->getMillis();
+
+ if (_playerMode == 1 && _track[_trackIndex].ticks <= currTicks - _noteStartTime) {
+ noteOff(_track[_trackIndex].noteNum);
+ if (_trackIndex < _trackCount && _track[++_trackIndex].noteNum != -1)
+ noteOn(_track[_trackIndex].noteNum);
+ else
+ stop();
+ }
+
+ if (_vuMeterLeft1 - 2 <= _vuMeterLeft2) {
+ if (_vuMeterLeft1 + 1 >= _vuMeterLeft2) {
+ int incr = MIN(_vm->getRandom(4), 2) - 1;
+ if (incr < 0 && _vuMeterLeft2 == 0)
+ incr = -incr;
+ if (incr > 0 && _vuMeterLeft2 == 11)
+ incr = -incr;
+ _vuMeterLeft2 += incr;
+ } else {
+ --_vuMeterLeft2;
+ }
+ } else {
+ ++_vuMeterLeft2;
+ }
+
+ if (_vuMeterRight1 - 2 <= _vuMeterRight2) {
+ if (_vuMeterRight1 + 1 >= _vuMeterRight2) {
+ int incr = MIN(_vm->getRandom(4), 2) - 1;
+ if (incr < 0 && _vuMeterRight2 == 0)
+ incr = -incr;
+ if (incr > 0 && _vuMeterRight2 == 11)
+ incr = -incr;
+ _vuMeterRight2 += incr;
+ } else {
+ --_vuMeterRight2;
+ }
+ } else {
+ ++_vuMeterRight2;
+ }
+
+ if (_resetAnims && _vm->_system->getMillis() - _noteStartTime >= 1000)
+ resetObjs();
+
+ _objects[0].x = mouseX;
+ _objects[0].y = mouseY;
+
+ _trackBarMouseX = CLIP(mouseX, kTrackBarMinX, kTrackBarMaxX);
+
+ bool checkClick = false;
+
+ if (mouseButtons & kAnyButtonClicked) {
+ checkClick = true;
+ } else if (!(mouseButtons & kAnyButtonDown)) {
+ afterButtonReleased();
+ } else if (!_movingTrackBar && ((_currButtonNum >= 14 && ptInPoly(_currPianoKeyArea, mouseX, mouseY)) || ptInRect(_currPlayerButtonRect, mouseX, mouseY))) {
+ if (_currButtonNum == 5 && _trackIndex > 0) {
+ --_trackIndex;
+ calcTotalTicks2();
+ } else if (_currButtonNum == 13 && _trackIndex < _trackCount) {
+ ++_trackIndex;
+ calcTotalTicks2();
+ }
+ } else if (!_movingTrackBar)
+ checkClick = true;
+
+ if (checkClick) {
+
+ afterButtonReleased();
+ _objects[0].frameIndex = 1;
+
+ if (ptInRect(&kRect2, mouseX, mouseY)) {
+
+ if (_playerMode != 1 && ptInRect(&kPianoRect, mouseX, mouseY)) {
+ for (int i = 0; i <= 12; ++i) {
+ if (ptInPoly(&kPianoKeyAreas[i], mouseX, mouseY)) {
+ _currButtonNum = i + 14;
+ _currPianoKeyArea = &kPianoKeyAreas[i];
+ _objects[11].kind = 1;
+ _objects[11].x = kPianoKeyInfos[i].x;
+ _objects[11].y = kPianoKeyInfos[i].y;
+ _objects[11].frameIndex = kPianoKeyInfos[i].frameIndex;
+ noteOn(i);
+ break;
+ }
+ }
+ } else if (_playerMode != 1 && ptInRect(&_trackBarThumbRect, mouseX, mouseY)) {
+ _movingTrackBar = true;
+ } else {
+
+ int playerButtonNum = -1;
+ for (int i = 0; i < 14; ++i) {
+ if (ptInRect(&kPlayerButtonRects[i], mouseX, mouseY)) {
+ playerButtonNum = i;
+ break;
+ }
+ }
+
+ if (playerButtonNum >= 0) {
+ _currButtonNum = playerButtonNum;
+ _currPlayerButtonRect = &kPlayerButtonRects[playerButtonNum];
+
+ switch (playerButtonNum) {
+
+ case 0:
+ if (_playerMode == 0) {
+ changePatch(0);
+ _currFrameIndex = &_objects[18 + 0].frameIndex;
+ *_currFrameIndex = 0;
+ }
+ break;
+
+ case 1:
+ if (_playerMode == 0) {
+ changePatch(1);
+ _currFrameIndex = &_objects[18 + 1].frameIndex;
+ *_currFrameIndex = 0;
+ }
+ break;
+
+ case 2:
+ if (_playerMode == 0) {
+ changePatch(2);
+ _currFrameIndex = &_objects[18 + 2].frameIndex;
+ *_currFrameIndex = 0;
+ }
+ break;
+
+ case 3:
+ _btn3KindToggle = !_btn3KindToggle;
+ _objects[9].kind = _btn3KindToggle ? 0 : 1;
+ _objects[22].frameIndex = _btn3KindToggle ? 0 : 1;
+ break;
+
+ case 4:
+ if (_playerMode == 0) {
+ _objects[1].kind = 1;
+ _currFrameIndex = &_objects[1].frameIndex;
+ _objects[1].frameIndex = 0;
+ }
+ break;
+
+ case 5:
+ if (_playerMode == 0) {
+ if (_trackIndex > 0)
+ --_trackIndex;
+ _objects[3].kind = 1;
+ calcTotalTicks2();
+ }
+ break;
+
+ case 6:
+ stop();
+ _currFrameIndex = &_objects[15].frameIndex;
+ _objects[15].frameIndex = 0;
+ break;
+
+ case 7:
+ if (_playerMode == 0) {
+ play();
+ _currFrameIndex = &_objects[12].frameIndex;
+ _objects[12].frameIndex = 0;
+ }
+ break;
+
+ case 8:
+ if (_playerMode == 0) {
+ _trackIndex = 0;
+ _objects[16].kind = 1;
+ calcTotalTicks2();
+ }
+ break;
+
+ case 9:
+ if (_playerMode == 0) {
+ _trackIndex = _trackCount;
+ _objects[17].kind = 1;
+ calcTotalTicks2();
+ }
+ break;
+
+ case 10:
+ if (_playerMode == 0) {
+ record();
+ _currFrameIndex = &_objects[13].frameIndex;
+ _objects[13].frameIndex = 0;
+ }
+ break;
+
+ case 11:
+ if (_playerMode == 0) {
+ setPlayerMode3();
+ _currFrameIndex = &_objects[14].frameIndex;
+ _objects[14].frameIndex = 0;
+ }
+ break;
+
+ case 12:
+ if (_playerMode == 0) {
+ _objects[2].kind = 1;
+ _currFrameIndex = &_objects[2].frameIndex;
+ _objects[2].frameIndex = 0;
+ }
+ break;
+
+ case 13:
+ if (_playerMode == 0) {
+ if (_trackIndex < _trackCount)
+ ++_trackIndex;
+ _objects[4].kind = 1;
+ calcTotalTicks2();
+ }
+ break;
+
+ }
+ }
+ }
+ }
+ }
+
+ if (_playerMode != 0) {
+ _currTrackPos = currTicks + _actionStartTrackPos - _actionStartTime;
+ if (_currTrackPos > _actionTrackPos && _playerMode != 1) {
+ if (_currTrackPos >= 15000) {
+ _currTrackPos = 15000;
+ _actionTrackPos = 15000;
+ stop();
+ } else {
+ _actionTrackPos = currTicks + _actionStartTrackPos - _actionStartTime;
+ }
+ }
+ }
+
+ if (_buttonClickTicks + 1000 < currTicks)
+ _buttonClickTicks = currTicks;
+
+ int newKind = _buttonClickTicks + 500 < currTicks ? 1 : 0;
+
+ switch (_playerMode) {
+
+ case 1:
+ if (_currButtonNum == 7) {
+ _objects[12].kind = 1;
+ _objects[12].frameIndex = 0;
+ } else {
+ _objects[12].kind = newKind;
+ _objects[12].frameIndex = 1;
+ }
+ break;
+
+ case 2:
+ if (_currButtonNum == 10) {
+ _objects[13].kind = 1;
+ _objects[13].frameIndex = 0;
+ } else {
+ _objects[13].kind = newKind;
+ _objects[13].frameIndex = 1;
+ }
+ break;
+
+ case 3:
+ if (_currButtonNum == 11) {
+ _objects[14].kind = 1;
+ _objects[14].frameIndex = 0;
+ } else {
+ _objects[14].kind = newKind;
+ _objects[14].frameIndex = 1;
+ }
+ break;
+
+ }
+
+ updateObjs();
+
+ return true;
+}
+
+void MinigameBbAirGuitar::updateObjs() {
+ for (int i = 24; i <= 33; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind && --obj->ticks == 0) {
+ if (obj->frameIndex + 1 >= obj->anim->frameCount) {
+ obj->ticks = -1;
+ } else {
+ ++obj->frameIndex;
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ }
+ }
+ }
+}
+
+bool MinigameBbAirGuitar::run(bool fromMainGame) {
+
+ memset(_objects, 0, sizeof(_objects));
+
+ _modified = false;
+ _currPatchNum = -1;
+ _btn3KindToggle = 0;
+ _currButtonNum = 27;
+ _actionStartTime = 0;
+ _currFrameIndex = 0;
+ _currPlayerButtonRect = 0;
+ _currPianoKeyArea = 0;
+ _trackCount = 0;
+ _trackIndex = 0;
+ _totalTrackLength = 0;
+ _actionTrackPos = 0;
+ _noteStartTime = 0;
+ _actionStartTrackPos = 0;
+ _trackBarX = kTrackBarMinX;
+ _currTrackPos = 0;
+ _currNoteNum = -2;
+ _resetAnims = false;
+ _vuMeterLeft2 = 0;
+ _vuMeterRight2 = 0;
+ _vuMeterLeft1 = 0;
+ _vuMeterRight1 = 0;
+ _rockTunePlaying = false;
+
+ _backgroundSpriteIndex = 97;
+ _titleScreenSpriteIndex = 98;
+
+ _fromMainGame = fromMainGame;
+
+ _gameState = 0;
+ _gameTicks = 0;
+ _gameResult = false;
+ _gameDone = false;
+ initObjects();
+
+ _spriteModule = new SpriteModule();
+ _spriteModule->load("bbairg/bbairg.000");
+
+ Palette palette = _spriteModule->getPalette();
+ _vm->_screen->setPalette(palette);
+
+ loadSounds();
+
+ while (!_vm->shouldQuit() &&!_gameDone) {
+ _vm->updateEvents();
+ update();
+ }
+
+ _vm->_sound->unloadSounds();
+
+ delete _spriteModule;
+
+ return _gameResult;
+}
+
+void MinigameBbAirGuitar::update() {
+
+ int inputTicks;
+
+ if (_gameTicks > 0) {
+ int currTicks = _vm->_system->getMillis();
+ inputTicks = 3 * (currTicks - _gameTicks) / 50;
+ _gameTicks = currTicks - (currTicks - _gameTicks - 50 * inputTicks / 3);
+ } else {
+ inputTicks = 1;
+ _gameTicks = _vm->_system->getMillis();
+ }
+
+ if (_vm->_keyCode == Common::KEYCODE_ESCAPE) {
+ _gameDone = true;
+ return;
+ }
+
+ if (inputTicks == 0)
+ return;
+
+ bool done;
+
+ do {
+ done = !updateStatus(_vm->_mouseX, _vm->_mouseY, _vm->_mouseButtons);
+ _vm->_mouseButtons &= ~kLeftButtonClicked;
+ _vm->_mouseButtons &= ~kRightButtonClicked;
+ _vm->_keyCode = Common::KEYCODE_INVALID;
+ } while (--inputTicks && _gameTicks > 0 && !done);
+
+ drawSprites();
+
+ _vm->_system->delayMillis(10);
+
+}
+
+void MinigameBbAirGuitar::play() {
+ if (_track[_trackIndex].noteNum != -1) {
+ _playerMode = 1;
+ _objects[7].kind = 1;
+ _objects[8].kind = 0;
+ _objects[15].kind = 0;
+ _actionStartTime = _vm->_system->getMillis();
+ _actionStartTrackPos = _currTrackPos;
+ noteOn(_track[_trackIndex].noteNum);
+ }
+}
+
+
+void MinigameBbAirGuitar::record() {
+ _playerMode = 2;
+ _objects[7].kind = 1;
+ _objects[8].kind = 0;
+ _objects[15].kind = 0;
+ _totalTrackLength = 15000;
+ _actionStartTime = _vm->_system->getMillis();
+ _actionStartTrackPos = _currTrackPos;
+ _noteStartTime = _vm->_system->getMillis();
+ _actionTrackPos = _currTrackPos;
+ _trackCount = _trackIndex;
+ _vuMeterRight1 = 0;
+ _vuMeterRight2 = 0;
+ _vuMeterLeft1 = 0;
+ _vuMeterLeft2 = 0;
+ _modified = true;
+ _track[_trackIndex].noteNum = -2;
+}
+
+void MinigameBbAirGuitar::setPlayerMode3() {
+ _playerMode = 3;
+ _objects[7].kind = 1;
+ _objects[8].kind = 0;
+ _objects[15].kind = 0;
+ _totalTrackLength = 15000;
+ _actionStartTime = _vm->_system->getMillis();
+ _actionStartTrackPos = _currTrackPos;
+ _noteStartTime = _vm->_system->getMillis();
+ _actionTrackPos = _currTrackPos;
+ _trackCount = _trackIndex;
+ _vuMeterRight1 = 0;
+ _vuMeterRight2 = 0;
+ _vuMeterLeft1 = 0;
+ _vuMeterLeft2 = 0;
+ _modified = true;
+ _track[_trackIndex].noteNum = -2;
+}
+
+void MinigameBbAirGuitar::stop() {
+ noteOff(_currNoteNum);
+ if (_playerMode == 2 || _playerMode == 3) {
+ _totalTrackLength = _actionTrackPos;
+ _track[_trackCount].noteNum = -1;
+ }
+ _playerMode = 0;
+ _objects[7].kind = 0;
+ _objects[8].kind = 1;
+ _objects[15].kind = 1;
+ _objects[15].frameIndex = 1;
+ _objects[12].kind = 0;
+ _objects[13].kind = 0;
+ _objects[14].kind = 0;
+ resetObjs();
+}
+
+void MinigameBbAirGuitar::changePatch(int patchNum) {
+
+ resetObjs();
+
+ if (patchNum == -1 || patchNum != _currPatchNum)
+ _currPatchNum = -1;
+
+ _objects[20].kind = 0;
+ _objects[19].kind = _objects[20].kind;
+ _objects[18].kind = _objects[19].kind;
+ _objects[patchNum + 18].kind = 1;
+ _objects[patchNum + 18].frameIndex = 1;
+ _objects[6].frameIndex = patchNum;
+ _currPatchNum = patchNum;
+}
+
+void MinigameBbAirGuitar::afterButtonReleased() {
+ if (_movingTrackBar) {
+ _movingTrackBar = false;
+ _currTrackPos = _totalTrackLength * (_trackBarX - kTrackBarMinX) / 100;
+ calcTotalTicks1();
+ } else {
+ switch (_currButtonNum) {
+ case 0:
+ case 1:
+ case 2:
+ *_currFrameIndex = 1;
+ break;
+ case 4:
+ *_currFrameIndex = 1;
+ // TODO Run load dialog
+ break;
+ case 5:
+ _objects[3].kind = 0;
+ break;
+ case 6:
+ *_currFrameIndex = 1;
+ break;
+ case 7:
+ *_currFrameIndex = 1;
+ break;
+ case 8:
+ _objects[16].kind = 0;
+ break;
+ case 9:
+ _objects[17].kind = 0;
+ break;
+ case 10:
+ *_currFrameIndex = 1;
+ break;
+ case 11:
+ *_currFrameIndex = 1;
+ break;
+ case 12:
+ *_currFrameIndex = 1;
+ // TODO Run save dialog
+ break;
+ case 13:
+ _objects[4].kind = 0;
+ break;
+ case 14:
+ case 15:
+ case 16:
+ case 17:
+ case 18:
+ case 19:
+ case 20:
+ case 21:
+ case 22:
+ case 23:
+ case 24:
+ case 25:
+ case 26:
+ noteOff(_currButtonNum - 14);
+ break;
+ }
+ }
+
+ _objects->frameIndex = 0;
+ _currPlayerButtonRect = 0;
+ _currPianoKeyArea = 0;
+ _currButtonNum = 27;
+}
+
+void MinigameBbAirGuitar::calcTotalTicks2() {
+ _currTrackPos = 0;
+ for (int i = 0; i < _trackIndex; ++i)
+ _currTrackPos += _track[i].ticks;
+}
+
+void MinigameBbAirGuitar::calcTotalTicks1() {
+ int totalTicks = 0;
+ // TODO Try to clean this up
+ _trackIndex = 0;
+ if (_track[0].ticks <= _currTrackPos) {
+ do {
+ totalTicks += _track[_trackIndex].ticks;
+ if (_trackIndex >= _trackCount)
+ break;
+ ++_trackIndex;
+ } while (totalTicks + _track[_trackIndex].ticks <= _currTrackPos);
+ }
+ _currTrackPos = totalTicks;
+}
+
+void MinigameBbAirGuitar::noteOn(int noteNum) {
+
+ if (_currNoteNum != -2) {
+ if (noteNum == _currNoteNum)
+ return;
+ noteOff(_currNoteNum);
+ }
+
+ if (noteNum == -2) {
+ _vuMeterRight1 = 0;
+ _vuMeterRight2 = 0;
+ _vuMeterLeft1 = 0;
+ _vuMeterLeft2 = 0;
+ } else {
+ playNote(noteNum);
+ _vuMeterRight1 = 10;
+ _vuMeterRight2 = 10;
+ _vuMeterLeft1 = 10;
+ _vuMeterLeft2 = 10;
+ if (_btn3KindToggle) {
+ _objects[23].kind = 1;
+ _objects[23].frameIndex = noteNum;
+ } else {
+ _objects[10].kind = 1;
+ _objects[10].frameIndex = kNoteFrameTbl[noteNum].frameIndex;
+ if (kNoteFrameTbl[noteNum].flag) {
+ _objects[21].kind = 1;
+ _objects[21].frameIndex = 7;
+ }
+ }
+ }
+
+ _currNoteNum = noteNum;
+
+ if (_playerMode == 2 || _playerMode == 3) {
+ _ticksDelta = _vm->_system->getMillis() - _noteStartTime;
+ _track[_trackCount].ticks = _ticksDelta;
+ if (_trackCount < kMaxTracks - 1)
+ ++_trackCount;
+ _track[_trackCount].noteNum = noteNum;
+ }
+
+ _noteStartTime = _vm->_system->getMillis();
+
+ if (noteNum != -2) {
+ _resetAnims = false;
+ if (_currPatchNum == 0) {
+ _objects[25].kind = 1;
+ _objects[28].kind = 0;
+ _objects[25].frameIndex = 0;
+ _objects[25].ticks = getAnimation(25)->frameTicks[0];
+ _objects[26].frameIndex = 0;
+ _objects[26].ticks = getAnimation(26)->frameTicks[0];
+ _objects[27].frameIndex = 0;
+ _objects[27].ticks = getAnimation(27)->frameTicks[0];
+ _objects[30].kind = 1;
+ _objects[33].kind = 0;
+ _objects[30].frameIndex = 0;
+ _objects[30].ticks = getAnimation(30)->frameTicks[0];
+ _objects[31].frameIndex = 0;
+ _objects[31].ticks = getAnimation(31)->frameTicks[0];
+ _objects[32].frameIndex = 0;
+ _objects[32].ticks = getAnimation(32)->frameTicks[0];
+ } else if (_currPatchNum == 1) {
+ _objects[29].kind = 1;
+ _objects[33].kind = 0;
+ _objects[29].frameIndex = 0;
+ _objects[29].ticks = getAnimation(29)->frameTicks[0];
+ _objects[31].frameIndex = 0;
+ _objects[31].ticks = getAnimation(31)->frameTicks[0];
+ _objects[32].frameIndex = 0;
+ _objects[32].ticks = getAnimation(32)->frameTicks[0];
+ } else if (_currPatchNum == 2) {
+ _objects[24].kind = 1;
+ _objects[28].kind = 0;
+ _objects[24].frameIndex = 0;
+ _objects[24].ticks = getAnimation(24)->frameTicks[0];
+ _objects[26].frameIndex = 0;
+ _objects[26].ticks = getAnimation(26)->frameTicks[0];
+ _objects[27].frameIndex = 0;
+ _objects[27].ticks = getAnimation(27)->frameTicks[0];
+ }
+ }
+
+}
+
+void MinigameBbAirGuitar::noteOff(int noteNum) {
+
+ if (_currNoteNum != noteNum)
+ return;
+
+ if (noteNum != -2)
+ stopNote(noteNum);
+
+ _objects[21].kind = 0;
+ _objects[23].kind = _objects[21].kind;
+ _objects[10].kind = _objects[23].kind;
+
+ _vuMeterRight1 = 0;
+ _vuMeterRight2 = 0;
+ _vuMeterLeft1 = 0;
+ _vuMeterLeft2 = 0;
+
+ _currNoteNum = -2;
+
+ _objects[11].kind = 0;
+
+ _ticksDelta = _vm->_system->getMillis() - _noteStartTime;
+
+ if (_playerMode == 2 || _playerMode == 3) {
+ if (_actionTrackPos + _ticksDelta > 15000)
+ _ticksDelta = 15000 - _actionTrackPos;
+ _track[_trackCount].ticks = _ticksDelta;
+ if (_trackCount < 2048)
+ ++_trackCount;
+ _track[_trackCount].noteNum = -2;
+ _noteStartTime = _vm->_system->getMillis();
+ }
+
+ if (noteNum != -2) {
+ if (_playerMode == 0) {
+ _resetAnims = true;
+ _noteStartTime = _vm->_system->getMillis();
+ }
+ if (_currPatchNum == 0) {
+ _objects[25].frameIndex = 3;
+ _objects[25].ticks = -1;
+ _objects[26].frameIndex = 3;
+ _objects[26].ticks = -1;
+ _objects[27].frameIndex = 3;
+ _objects[27].ticks = -1;
+ _objects[30].frameIndex = 3;
+ _objects[30].ticks = -1;
+ _objects[31].frameIndex = 3;
+ _objects[31].ticks = -1;
+ _objects[32].frameIndex = 3;
+ _objects[32].ticks = -1;
+ } else if (_currPatchNum == 1) {
+ _objects[29].frameIndex = 3;
+ _objects[29].ticks = -1;
+ _objects[31].frameIndex = 3;
+ _objects[31].ticks = -1;
+ _objects[32].frameIndex = 3;
+ _objects[32].ticks = -1;
+ } else if (_currPatchNum == 2) {
+ _objects[24].frameIndex = 2;
+ _objects[24].ticks = -1;
+ _objects[26].frameIndex = 3;
+ _objects[26].ticks = -1;
+ _objects[27].frameIndex = 3;
+ _objects[27].ticks = -1;
+ }
+ }
+
+}
+
+void MinigameBbAirGuitar::resetObjs() {
+ _resetAnims = false;
+ _objects[25].kind = 0;
+ _objects[24].kind = 0;
+ _objects[28].kind = 1;
+ _objects[26].frameIndex = 0;
+ _objects[26].ticks = -1;
+ _objects[27].frameIndex = 0;
+ _objects[27].ticks = -1;
+ _objects[30].kind = 0;
+ _objects[29].kind = 0;
+ _objects[33].kind = 1;
+ _objects[31].frameIndex = 0;
+ _objects[31].ticks = -1;
+ _objects[32].frameIndex = 0;
+ _objects[32].ticks = -1;
+}
+
+void MinigameBbAirGuitar::loadSounds() {
+ _vm->_sound->loadSound("bbairg/audio/rocktune.aif");
+ for (uint i = 0; i < kPatchDirectoriesCount; ++i) {
+ const char *patchDirectory = kPatchDirectories[i];
+ for (uint j = 0; j < kNoteSoundFilenamesCount; ++j) {
+ Common::String filename = Common::String::format("bbairg/audio/%s/%s", patchDirectory, kNoteSoundFilenames[j]);
+ _vm->_sound->loadSound(filename.c_str());
+ }
+ }
+}
+
+void MinigameBbAirGuitar::playNote(int noteNum) {
+ if (noteNum >= 0 && _currPatchNum >= 0)
+ playSound(2 + _currPatchNum * kNoteSoundFilenamesCount + noteNum);
+}
+
+void MinigameBbAirGuitar::stopNote(int noteNum) {
+ if (noteNum >= 0 && _currPatchNum >= 0)
+ stopSound(2 + _currPatchNum * kNoteSoundFilenamesCount + noteNum);
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/bbairguitar.h b/engines/bbvs/minigames/bbairguitar.h
new file mode 100644
index 0000000000..d4fd6ec30c
--- /dev/null
+++ b/engines/bbvs/minigames/bbairguitar.h
@@ -0,0 +1,148 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_MINIGAMES_BBAIRGUITAR_H
+#define BBVS_MINIGAMES_BBAIRGUITAR_H
+
+#include "bbvs/minigames/minigame.h"
+
+namespace Bbvs {
+
+class MinigameBbAirGuitar : public Minigame {
+public:
+ MinigameBbAirGuitar(BbvsEngine *vm) : Minigame(vm) {};
+ bool run(bool fromMainGame);
+public:
+
+ struct Obj {
+ int kind;
+ int x, y;
+ int xIncr, yIncr;
+ const ObjAnimation *anim;
+ int frameIndex;
+ int ticks;
+ int status;
+ int16 frameIndexAdd;
+ int16 unk2;
+ };
+
+ enum {
+ kMaxObjectsCount = 256,
+ kMaxTracks = 2049
+ };
+
+ struct PianoKeyInfo {
+ int x, y;
+ int frameIndex;
+ };
+
+ struct TrackEvt {
+ int8 noteNum;
+ int16 ticks;
+ };
+
+ Obj _objects[kMaxObjectsCount];
+
+ int _playerMode;
+
+ bool _modified;
+
+ TrackEvt _track[kMaxTracks];
+ int _trackIndex, _trackCount;
+
+ int _noteStartTime;
+
+ int _vuMeterLeft1, _vuMeterLeft2;
+ int _vuMeterRight1, _vuMeterRight2;
+
+ bool _resetAnims;
+ bool _rockTunePlaying;
+
+ int _currButtonNum;
+ int _buttonClickTicks;
+
+ int *_currFrameIndex;
+ int _btn3KindToggle;
+
+ const BBPolygon *_currPianoKeyArea;
+ const Rect *_currPlayerButtonRect;
+
+ bool _movingTrackBar;
+ int _trackBarMouseX;
+ int _trackBarX;
+ Rect _trackBarThumbRect;
+
+ int _currTrackPos, _totalTrackLength;
+ int _ticksDelta;
+
+ int _actionStartTrackPos, _actionTrackPos;
+ int _actionStartTime;
+
+ int _currNoteNum;
+ int _currPatchNum;
+
+ const ObjAnimation *getAnimation(int animIndex);
+ bool ptInRect(const Rect *r, int x, int y);
+ bool ptInPoly(const BBPolygon *poly, int x, int y);
+
+ void buildDrawList(DrawList &drawList);
+ void buildDrawList0(DrawList &drawList);
+ void buildDrawList1(DrawList &drawList);
+
+ void drawSprites();
+
+ void initObjs();
+ Obj *getFreeObject();
+
+ void initObjects();
+ void initObjects0();
+ void initObjects1();
+
+ bool updateStatus(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus0(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus1(int mouseX, int mouseY, uint mouseButtons);
+
+ void updateObjs();
+
+ void update();
+
+ void play();
+ void record();
+ void setPlayerMode3();
+ void stop();
+ void changePatch(int patchNum);
+ void afterButtonReleased();
+ void calcTotalTicks2();
+ void calcTotalTicks1();
+ void noteOn(int noteNum);
+ void noteOff(int noteNum);
+ void resetObjs();
+
+ void loadSounds();
+ void playNote(int noteNum);
+ void stopNote(int noteNum);
+
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_MINIGAMES_BBAIRGUITAR_H
diff --git a/engines/bbvs/minigames/bbairguitar_anims.cpp b/engines/bbvs/minigames/bbairguitar_anims.cpp
new file mode 100644
index 0000000000..4f87eb5c78
--- /dev/null
+++ b/engines/bbvs/minigames/bbairguitar_anims.cpp
@@ -0,0 +1,186 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/minigames/bbairguitar.h"
+
+namespace Bbvs {
+
+static const int kAnim0FrameIndices[] = {0, 1};
+static const int16 kAnim0FrameTicks[] = {6, 6};
+static const BBRect kAnim0FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim1FrameIndices[] = {2, 3};
+static const int16 kAnim1FrameTicks[] = {6, 6};
+static const BBRect kAnim1FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim2FrameIndices[] = {4, 5};
+static const int16 kAnim2FrameTicks[] = {6, 6};
+static const BBRect kAnim2FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim3FrameIndices[] = {6};
+static const int16 kAnim3FrameTicks[] = {6};
+static const BBRect kAnim3FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim4FrameIndices[] = {7};
+static const int16 kAnim4FrameTicks[] = {6};
+static const BBRect kAnim4FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim5FrameIndices[] = {8};
+static const int16 kAnim5FrameTicks[] = {6};
+static const BBRect kAnim5FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim6FrameIndices[] = {9, 10, 11};
+static const int16 kAnim6FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim6FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim7FrameIndices[] = {12, 13, 14, 15};
+static const int16 kAnim7FrameTicks[] = {10, 10, 10, 10};
+static const BBRect kAnim7FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim8FrameIndices[] = {16};
+static const int16 kAnim8FrameTicks[] = {10};
+static const BBRect kAnim8FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim9FrameIndices[] = {17};
+static const int16 kAnim9FrameTicks[] = {10};
+static const BBRect kAnim9FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim10FrameIndices[] = {18};
+static const int16 kAnim10FrameTicks[] = {6};
+static const BBRect kAnim10FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim11FrameIndices[] = {19, 20, 21, 22, 23, 24, 25, 26, 27};
+static const int16 kAnim11FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim11FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim12FrameIndices[] = {28, 29, 30, 31, 32, 33};
+static const int16 kAnim12FrameTicks[] = {10, 10, 10, 10, 10, 10};
+static const BBRect kAnim12FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim13FrameIndices[] = {34, 35};
+static const int16 kAnim13FrameTicks[] = {6, 6};
+static const BBRect kAnim13FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim14FrameIndices[] = {36, 37};
+static const int16 kAnim14FrameTicks[] = {6, 6};
+static const BBRect kAnim14FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim15FrameIndices[] = {38, 39};
+static const int16 kAnim15FrameTicks[] = {6, 6};
+static const BBRect kAnim15FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim16FrameIndices[] = {40, 41};
+static const int16 kAnim16FrameTicks[] = {6, 6};
+static const BBRect kAnim16FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim17FrameIndices[] = {42};
+static const int16 kAnim17FrameTicks[] = {6};
+static const BBRect kAnim17FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim18FrameIndices[] = {43};
+static const int16 kAnim18FrameTicks[] = {6};
+static const BBRect kAnim18FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim19FrameIndices[] = {44, 45};
+static const int16 kAnim19FrameTicks[] = {6, 6};
+static const BBRect kAnim19FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim20FrameIndices[] = {46, 47};
+static const int16 kAnim20FrameTicks[] = {6, 6};
+static const BBRect kAnim20FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim21FrameIndices[] = {48, 49};
+static const int16 kAnim21FrameTicks[] = {6, 6};
+static const BBRect kAnim21FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim22FrameIndices[] = {50, 51};
+static const int16 kAnim22FrameTicks[] = {10, 10};
+static const BBRect kAnim22FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim23FrameIndices[] = {52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64};
+static const int16 kAnim23FrameTicks[] = {8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8};
+static const BBRect kAnim23FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim24FrameIndices[] = {65, 66, 67};
+static const int16 kAnim24FrameTicks[] = {11, 16, 6};
+static const BBRect kAnim24FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim25FrameIndices[] = {68, 67, 69, 67};
+static const int16 kAnim25FrameTicks[] = {6, 6, 11, 6};
+static const BBRect kAnim25FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim26FrameIndices[] = {70, 71, 72, 71};
+static const int16 kAnim26FrameTicks[] = {6, 6, 6, 6};
+static const BBRect kAnim26FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim27FrameIndices[] = {73, 74, 75, 74};
+static const int16 kAnim27FrameTicks[] = {6, 6, 6, 6};
+static const BBRect kAnim27FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim28FrameIndices[] = {76};
+static const int16 kAnim28FrameTicks[] = {6};
+static const BBRect kAnim28FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim29FrameIndices[] = {77, 78, 79, 78};
+static const int16 kAnim29FrameTicks[] = {6, 6, 18, 6};
+static const BBRect kAnim29FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim30FrameIndices[] = {77, 80, 81, 80};
+static const int16 kAnim30FrameTicks[] = {6, 6, 10, 6};
+static const BBRect kAnim30FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim31FrameIndices[] = {82, 83, 84, 83};
+static const int16 kAnim31FrameTicks[] = {6, 6, 6, 6};
+static const BBRect kAnim31FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim32FrameIndices[] = {85, 86, 87, 86};
+static const int16 kAnim32FrameTicks[] = {6, 6, 6, 6};
+static const BBRect kAnim32FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim33FrameIndices[] = {88};
+static const int16 kAnim33FrameTicks[] = {6};
+static const BBRect kAnim33FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim34FrameIndices[] = {89};
+static const int16 kAnim34FrameTicks[] = {6};
+static const BBRect kAnim34FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim35FrameIndices[] = {90};
+static const int16 kAnim35FrameTicks[] = {6};
+static const BBRect kAnim35FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim36FrameIndices[] = {91, 92, 93, 91, 93, 91, 92, 93, 92, 91, 92, 93, 91, 93, 91, 92, 93, 92};
+static const int16 kAnim36FrameTicks[] = {10, 6, 8, 6, 6, 8, 6, 6, 6, 10, 6, 8, 6, 6, 8, 6, 6, 6};
+static const BBRect kAnim36FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim37FrameIndices[] = {94, 95, 96, 94, 96, 94, 95, 96, 95, 94, 95, 96, 94, 96, 94, 95, 96, 95};
+static const int16 kAnim37FrameTicks[] = {10, 6, 8, 6, 6, 8, 6, 6, 6, 10, 6, 8, 6, 6, 8, 6, 6, 6};
+static const BBRect kAnim37FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const ObjAnimation kAnimations[] = {
+ {2, kAnim0FrameIndices, kAnim0FrameTicks, kAnim0FrameRects},
+ {2, kAnim1FrameIndices, kAnim1FrameTicks, kAnim1FrameRects},
+ {2, kAnim2FrameIndices, kAnim2FrameTicks, kAnim2FrameRects},
+ {1, kAnim3FrameIndices, kAnim3FrameTicks, kAnim3FrameRects},
+ {1, kAnim4FrameIndices, kAnim4FrameTicks, kAnim4FrameRects},
+ {1, kAnim5FrameIndices, kAnim5FrameTicks, kAnim5FrameRects},
+ {3, kAnim6FrameIndices, kAnim6FrameTicks, kAnim6FrameRects},
+ {4, kAnim7FrameIndices, kAnim7FrameTicks, kAnim7FrameRects},
+ {1, kAnim8FrameIndices, kAnim8FrameTicks, kAnim8FrameRects},
+ {1, kAnim9FrameIndices, kAnim9FrameTicks, kAnim9FrameRects},
+ {1, kAnim10FrameIndices, kAnim10FrameTicks, kAnim10FrameRects},
+ {9, kAnim11FrameIndices, kAnim11FrameTicks, kAnim11FrameRects},
+ {6, kAnim12FrameIndices, kAnim12FrameTicks, kAnim12FrameRects},
+ {2, kAnim13FrameIndices, kAnim13FrameTicks, kAnim13FrameRects},
+ {2, kAnim14FrameIndices, kAnim14FrameTicks, kAnim14FrameRects},
+ {2, kAnim15FrameIndices, kAnim15FrameTicks, kAnim15FrameRects},
+ {2, kAnim16FrameIndices, kAnim16FrameTicks, kAnim16FrameRects},
+ {1, kAnim17FrameIndices, kAnim17FrameTicks, kAnim17FrameRects},
+ {1, kAnim18FrameIndices, kAnim18FrameTicks, kAnim18FrameRects},
+ {2, kAnim19FrameIndices, kAnim19FrameTicks, kAnim19FrameRects},
+ {2, kAnim20FrameIndices, kAnim20FrameTicks, kAnim20FrameRects},
+ {2, kAnim21FrameIndices, kAnim21FrameTicks, kAnim21FrameRects},
+ {2, kAnim22FrameIndices, kAnim22FrameTicks, kAnim22FrameRects},
+ {13, kAnim23FrameIndices, kAnim23FrameTicks, kAnim23FrameRects},
+ {3, kAnim24FrameIndices, kAnim24FrameTicks, kAnim24FrameRects},
+ {4, kAnim25FrameIndices, kAnim25FrameTicks, kAnim25FrameRects},
+ {4, kAnim26FrameIndices, kAnim26FrameTicks, kAnim26FrameRects},
+ {4, kAnim27FrameIndices, kAnim27FrameTicks, kAnim27FrameRects},
+ {1, kAnim28FrameIndices, kAnim28FrameTicks, kAnim28FrameRects},
+ {4, kAnim29FrameIndices, kAnim29FrameTicks, kAnim29FrameRects},
+ {4, kAnim30FrameIndices, kAnim30FrameTicks, kAnim30FrameRects},
+ {4, kAnim31FrameIndices, kAnim31FrameTicks, kAnim31FrameRects},
+ {4, kAnim32FrameIndices, kAnim32FrameTicks, kAnim32FrameRects},
+ {1, kAnim33FrameIndices, kAnim33FrameTicks, kAnim33FrameRects},
+ {1, kAnim34FrameIndices, kAnim34FrameTicks, kAnim34FrameRects},
+ {1, kAnim35FrameIndices, kAnim35FrameTicks, kAnim35FrameRects},
+ {18, kAnim36FrameIndices, kAnim36FrameTicks, kAnim36FrameRects},
+ {18, kAnim37FrameIndices, kAnim37FrameTicks, kAnim37FrameRects}
+};
+
+const ObjAnimation *MinigameBbAirGuitar::getAnimation(int animIndex) {
+ return &kAnimations[animIndex];
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/bbant.cpp b/engines/bbvs/minigames/bbant.cpp
new file mode 100644
index 0000000000..9786682ada
--- /dev/null
+++ b/engines/bbvs/minigames/bbant.cpp
@@ -0,0 +1,1317 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/minigames/bbant.h"
+
+namespace Bbvs {
+
+static const BBPoint kPosIncrTbl1[] = {
+ {0, -1}, {-1, -1}, {-1, 0}, {-1, 1},
+ { 0, 1}, { 1, 1}, { 1, 0}, { 1, -1}
+};
+
+static const BBPoint kPosIncrTbl2[] = {
+ {0, -2}, {-2, -2}, {-2, 0}, {-2, 2},
+ { 0, 2}, { 2, 2}, { 2, 0}, { 2, -2}
+};
+
+static const int kScoreTbl[] = {
+ 0, 1, 1, 3, 2, 4
+};
+
+static const char * const kSoundFilenames[] = {
+ "ant1.aif", "ant2.aif", "ant3.aif", "ant4.aif", "ant5.aif",
+ "ant6.aif", "ant7.aif", "ant8.aif", "ant9.aif", "ant10.aif",
+ "ant11.aif", "antmus1.aif", "fryant.aif", "stomp.aif", "bing.aif",
+ "bvyell.aif"
+};
+
+static const uint kSoundFilenamesCount = ARRAYSIZE(kSoundFilenames);
+
+static const uint kSoundTbl1[] = {
+ 2, 3, 4, 6
+};
+
+static const uint kSoundTbl2[] = {
+ 5, 7, 11
+};
+
+static const uint kSoundTbl3[] = {
+ 8, 10, 11
+};
+
+static const uint kSoundTbl4[] = {
+ 2, 3, 4, 6, 8, 10, 11, 5, 7, 16
+};
+
+void MinigameBbAnt::buildDrawList0(DrawList &drawList) {
+
+ if (_titleScreenSpriteIndex)
+ drawList.add(_titleScreenSpriteIndex, 0, 0, 0);
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind)
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, obj->priority);
+ }
+
+}
+
+void MinigameBbAnt::buildDrawList1(DrawList &drawList) {
+
+ if (_backgroundSpriteIndex)
+ drawList.add(_backgroundSpriteIndex, _stompX, _stompY, 0);
+
+ for (int i = 1; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind) {
+ drawList.add(obj->anim->frameIndices[obj->frameIndex],
+ _stompX + (obj->x >> 16), _stompY + (obj->y >> 16),
+ obj->priority);
+ }
+ }
+
+ drawList.add(getAnimation(164)->frameIndices[0], 5, 2, 2000);
+ drawNumber(drawList, _score, 68, 16);
+ drawList.add(getAnimation(166)->frameIndices[0], 230, 2, 2000);
+ drawNumber(drawList, _levelTimeLeft, 280, 16);
+
+ for (int i = 0; i < _stompCount; ++i)
+ drawList.add(getAnimation(130)->frameIndices[0], 20 + i * 30, 230, 2000);
+
+}
+
+void MinigameBbAnt::buildDrawList2(DrawList &drawList) {
+ buildDrawList1(drawList);
+ drawList.add(getAnimation(168)->frameIndices[0], 40, 100, 2000);
+ drawNumber(drawList, _counter1, 190, 112);
+ drawNumber(drawList, _countdown5, 258, 112);
+ drawList.add(getAnimation(169)->frameIndices[0], 120, 120, 2000);
+ drawNumber(drawList, _counter4, 192, 132);
+}
+
+void MinigameBbAnt::buildDrawList3(DrawList &drawList) {
+ buildDrawList1(drawList);
+ drawList.add(getAnimation(163)->frameIndices[0], 120, 70, 2000);
+ drawList.add(getAnimation(165)->frameIndices[0], 95, 95, 2000);
+ drawNumber(drawList, _hiScore, 208, 107);
+}
+
+void MinigameBbAnt::drawMagnifyingGlass(DrawList &drawList) {
+ scale2x(_objects[0].x - 28, _objects[0].y - 27);
+ drawList.clear();
+ drawList.add(_objects[0].anim->frameIndices[0], _objects[0].x, _objects[0].y, _objects[0].priority);
+ drawList.add(_objects[0].anim->frameIndices[1], _objects[0].x, _objects[0].y, _objects[0].priority);
+ drawList.add(_objects[0].anim->frameIndices[2], _objects[0].x, _objects[0].y, _objects[0].priority);
+}
+
+void MinigameBbAnt::drawSprites() {
+ switch (_gameState) {
+ case 0:
+ drawSprites0();
+ break;
+ case 1:
+ drawSprites1();
+ break;
+ case 2:
+ drawSprites2();
+ break;
+ case 3:
+ drawSprites3();
+ break;
+ }
+}
+
+void MinigameBbAnt::drawSprites0() {
+ DrawList drawList;
+ buildDrawList0(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ _vm->_screen->copyToScreen();
+}
+
+void MinigameBbAnt::drawSprites1() {
+ DrawList drawList;
+ buildDrawList1(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ drawMagnifyingGlass(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ _vm->_screen->copyToScreen();
+}
+
+void MinigameBbAnt::drawSprites2() {
+ DrawList drawList;
+ buildDrawList2(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ drawMagnifyingGlass(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ _vm->_screen->copyToScreen();
+}
+
+void MinigameBbAnt::drawSprites3() {
+ DrawList drawList;
+ buildDrawList3(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ _vm->_screen->copyToScreen();
+}
+
+MinigameBbAnt::Obj *MinigameBbAnt::getFreeObject() {
+ for (int i = 12; i < kMaxObjectsCount; ++i)
+ if (_objects[i].kind == 0)
+ return &_objects[i];
+ return 0;
+}
+
+void MinigameBbAnt::initObjects() {
+ switch (_gameState) {
+ case 0:
+ initObjects0();
+ break;
+ case 1:
+ initObjects1();
+ break;
+ case 2:
+ case 3:
+ // Nothing
+ break;
+ }
+}
+
+void MinigameBbAnt::initObjects0() {
+ _objects[0].anim = getAnimation(172);
+ _objects[0].frameIndex = 0;
+ _objects[0].ticks = getAnimation(172)->frameTicks[0];
+ _objects[0].x = 160;
+ _objects[0].y = 120;
+ _objects[0].priority = 2000;
+ _objects[0].kind = 1;
+ _objects[1].anim = getAnimation(170);
+ _objects[1].frameIndex = 0;
+ _objects[1].ticks = getAnimation(170)->frameTicks[0];
+ _objects[1].x = 40;
+ _objects[1].y = 240;
+ _objects[1].priority = 100;
+ _objects[1].kind = 2;
+ _objects[2].anim = getAnimation(171);
+ _objects[2].frameIndex = 0;
+ _objects[2].ticks = getAnimation(171)->frameTicks[0];
+ _objects[2].x = 280;
+ _objects[2].y = 240;
+ _objects[2].priority = 100;
+ _objects[2].kind = 2;
+}
+
+void MinigameBbAnt::initObjects1() {
+ _objects[0].kind = 0;
+ _objects[0].x = 160;
+ _objects[0].y = 120;
+ _objects[0].xIncr = 0;
+ _objects[0].yIncr = 0;
+ _objects[0].anim = getAnimation(159);
+ _objects[0].frameIndex = 0;
+ _objects[0].ticks = _objects[0].anim->frameTicks[0];
+ _objects[0].priority = 1000;
+ _objects[1].kind = 8;
+ _objects[1].x = 0x1E0000;
+ _objects[1].y = 0x280000;
+ _objects[1].xIncr = 0;
+ _objects[1].yIncr = 0;
+ _objects[1].anim = getAnimation(160);
+ _objects[1].frameIndex = 0;
+ _objects[1].ticks = _objects[0].anim->frameTicks[0];
+ _objects[1].priority = 900;
+ _objects[1].smokeCtr = 0;
+ _objects[1].hasSmoke = false;
+ _objects[1].status = 0;
+ _objects[2].kind = 8;
+ _objects[2].x = 0x280000;
+ _objects[2].y = 0x4B0000;
+ _objects[2].xIncr = 0;
+ _objects[2].yIncr = 0;
+ _objects[2].anim = getAnimation(161);
+ _objects[2].frameIndex = 0;
+ _objects[2].ticks = _objects[0].anim->frameTicks[0];
+ _objects[2].priority = 900;
+ _objects[2].smokeCtr = 0;
+ _objects[2].hasSmoke = false;
+ _objects[2].status = 0;
+ for (int i = 3; i < 12; ++i) {
+ const ObjInit *objInit = getObjInit(i - 3);
+ _objects[i].kind = 6;
+ _objects[i].x = objInit->x << 16;
+ _objects[i].y = objInit->y << 16;
+ _objects[i].xIncr = 0;
+ _objects[i].yIncr = 0;
+ _objects[i].anim = objInit->anim1;
+ _objects[i].frameIndex = 0;
+ _objects[i].ticks = _objects[0].anim->frameTicks[0];
+ _objects[i].priority = 600;
+ _objects[i].status = 9;
+ _objects[i].damageCtr = 0;
+
+ }
+}
+
+void MinigameBbAnt::initVars() {
+ switch (_gameState) {
+ case 0:
+ // Nothing
+ break;
+ case 1:
+ initVars1();
+ break;
+ case 2:
+ initVars2();
+ break;
+ case 3:
+ initVars3();
+ break;
+ }
+}
+
+void MinigameBbAnt::initVars1() {
+ _stompX = 0;
+ _stompY = 0;
+ _stompDelay1 = 0;
+ _stompCount = 1;
+ _stompCounter1 = 80;
+ _stompCounter2 = 80;
+ _totalBugsCount = 0;
+ _hasLastStompObj = false;
+ _counter1 = 9;
+ _countdown10 = 140;
+ _score = 0;
+ _counter4 = 1;
+ _gameTicks = 0;
+ _skullBugCtr = 500;
+ _levelTimeDelay = 58;
+ _levelTimeLeft = 30;
+ _bugsChanceByKind[0] = 0;
+ _bugsChanceByKind[1] = 20;
+ _bugsChanceByKind[2] = 20;
+ _bugsChanceByKind[3] = 5;
+ _bugsChanceByKind[4] = 7;
+ _bugsCountByKind[0] = 0;
+ _bugsCountByKind[1] = 0;
+ _bugsCountByKind[2] = 0;
+ _bugsCountByKind[3] = 0;
+ _bugsCountByKind[4] = 0;
+ _bugsCountByKind[5] = 0;
+}
+
+void MinigameBbAnt::initVars2() {
+ _countdown4 = 0;
+ _countdown3 = 0;
+ _levelTimeDelay = 58;
+ _countdown6 = 60;
+ _countdown5 = 50 * _counter1;
+}
+
+void MinigameBbAnt::initVars3() {
+ if (_score > _hiScore)
+ _hiScore = _score;
+ playSound(9);
+}
+
+bool MinigameBbAnt::updateStatus(int mouseX, int mouseY, uint mouseButtons) {
+ switch (_gameState) {
+ case 0:
+ return updateStatus0(mouseX, mouseY, mouseButtons);
+ case 1:
+ return updateStatus1(mouseX, mouseY, mouseButtons);
+ case 2:
+ return updateStatus2(mouseX, mouseY, mouseButtons);
+ case 3:
+ return updateStatus3(mouseX, mouseY, mouseButtons);
+ }
+ return false;
+}
+
+bool MinigameBbAnt::updateStatus0(int mouseX, int mouseY, uint mouseButtons) {
+
+ _objects[0].x = mouseX;
+ _objects[0].y = mouseY;
+
+ if (_objects[0].x >= 320)
+ _objects[0].x = 320 - 1;
+ if (_objects[0].y >= 240)
+ _objects[0].y = 240 - 1;
+ if (_objects[0].x < 0)
+ _objects[0].x = 0;
+ if (_objects[0].y < 0)
+ _objects[0].y = 0;
+
+ if ((mouseButtons & kLeftButtonDown) || (mouseButtons & kRightButtonDown)) {
+ _gameState = 1;
+ initObjects();
+ initVars();
+ _gameTicks = 0;
+ playSound(1);
+ } else {
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind == 2) {
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex >= obj->anim->frameCount)
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ }
+ }
+ }
+ }
+
+ return true;
+}
+
+bool MinigameBbAnt::updateStatus1(int mouseX, int mouseY, uint mouseButtons) {
+ const int kMaxBugsCount = 52;
+
+ --_levelTimeDelay;
+ if (!_levelTimeDelay) {
+ _levelTimeDelay = 58;
+ --_levelTimeLeft;
+ }
+
+ _objects[0].x = mouseX;
+ _objects[0].y = mouseY;
+
+ if (_objects[0].x >= 320)
+ _objects[0].x = 320 - 1;
+ if (_objects[0].y >= 240)
+ _objects[0].y = 240 - 1;
+ if (_objects[0].x < 0)
+ _objects[0].x = 0;
+ if (_objects[0].y < 0)
+ _objects[0].y = 0;
+
+ if (!_levelTimeLeft) {
+ _gameState = 2;
+ initVars();
+ initObjects();
+ _gameTicks = 0;
+ return true;
+ }
+
+ if (_counter1 == 0) {
+ _gameState = 3;
+ initVars();
+ initObjects();
+ _gameTicks = 0;
+ return true;
+ }
+
+ if ((mouseButtons & kRightButtonClicked) && (_stompCount > 0|| _hasLastStompObj) && !_objects[2].status) {
+ if (_hasLastStompObj)
+ removeStompObj(_lastStompObj);
+ --_stompCount;
+ _objects[2].status = 1;
+ }
+
+ if ((mouseButtons & kLeftButtonClicked) && _objects[2].status == 0 && isMagGlassAtBeavisLeg(2)) {
+ if (_vm->getRandom(10) == 1 && !isAnySoundPlaying(kSoundTbl4, 10))
+ playSound(16);
+ insertSmokeObj(_objects[0].x << 16, _objects[0].y << 16);
+ }
+
+ if (_skullBugCtr > 0) {
+ if (--_skullBugCtr == 0) {
+ _skullBugCtr = _vm->getRandom(150) + 500;
+ insertRandomBugObj(5);
+ }
+ }
+
+ if (_stompCounter2 > 0)
+ --_stompCounter2;
+
+ if (_totalBugsCount < kMaxBugsCount && _vm->getRandom(_stompCounter2) == 0) {
+ int testTbl[4];
+ int maxKindCount = 0, objKind = 0;
+
+ _stompCounter2 = _stompCounter1;
+
+ for (int i = 0; i < 4; ++i)
+ testTbl[i] = _vm->getRandom(_bugsChanceByKind[i] - _bugsCountByKind[i]);
+
+ for (int i = 0; i < 4; ++i) {
+ if (testTbl[i] >= maxKindCount) {
+ maxKindCount = testTbl[i];
+ objKind = i + 1;
+ }
+ }
+
+ if (objKind)
+ insertRandomBugObj(objKind);
+
+ }
+
+ updateObjs(mouseButtons);
+ updateFootObj(2);
+
+ if (--_countdown10 == 0) {
+ _countdown10 = 140;
+ if (_stompCounter1 > 20)
+ --_stompCounter1;
+ }
+
+ return true;
+}
+
+bool MinigameBbAnt::updateStatus2(int mouseX, int mouseY, uint mouseButtons) {
+
+ _objects[0].x = mouseX;
+ _objects[0].y = mouseY;
+
+ if (_objects[0].x >= 320)
+ _objects[0].x = 320 - 1;
+ if (_objects[0].y >= 240)
+ _objects[0].y = 240 - 1;
+ if (_objects[0].x < 0)
+ _objects[0].x = 0;
+ if (_objects[0].y < 0)
+ _objects[0].y = 0;
+
+ if (_countdown6 > 0) {
+ if (--_countdown6 == 0) {
+ _countdown4 = 150;
+ playSound(15, true);
+ }
+ } else if (_countdown4 > 0) {
+ if (--_countdown4 == 0) {
+ _countdown3 = 150;
+ } else if (_countdown5 > 0) {
+ ++_countdown4;
+ ++_score;
+ if (--_countdown5 == 0) {
+ stopSound(15);
+ _bugsChanceByKind[5] = 10;
+ _countdown7 = 40;
+ _countdown4 = 10 * (13 - _counter1);
+ return true;
+ }
+ } else {
+ if (--_countdown7 == 0) {
+ bool flag1 = false;
+ _countdown7 = _bugsChanceByKind[5];
+ for (int i = 3; i < 12 && !flag1; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->status == 13) {
+ const ObjInit *objInit = getObjInit(i - 3);
+ obj->x = objInit->x << 16;
+ obj->y = objInit->y << 16;
+ obj->anim = objInit->anim3;
+ obj->frameIndex = 0;
+ obj->ticks = _objects[0].anim->frameTicks[0];
+ obj->status = 9;
+ obj->damageCtr = 0;
+ obj->priority = 600;
+ ++_counter1;
+ playSound(15);
+ flag1 = true;
+ }
+ }
+ }
+ }
+ } else if (_countdown3 > 0) {
+ if ((mouseButtons & kLeftButtonDown) || (mouseButtons & kRightButtonDown) || (--_countdown3 == 0)) {
+ _levelTimeDelay = 58;
+ _levelTimeLeft = 30;
+ _gameState = 1;
+ _gameTicks = 0;
+ ++_counter4;
+ }
+ }
+
+ return true;
+}
+
+bool MinigameBbAnt::updateStatus3(int mouseX, int mouseY, uint mouseButtons) {
+ if (!isSoundPlaying(9) && _fromMainGame) {
+ _vm->_system->delayMillis(1000);
+ _gameDone = true;
+ }
+ return true;
+}
+
+void MinigameBbAnt::getRandomBugObjValues(int &x, int &y, int &animIndexIncr, int &field30) {
+ field30 = _vm->getRandom(4);
+ switch (field30) {
+ case 0:
+ y = -5;
+ x = _vm->getRandom(190) + 120;
+ animIndexIncr = 4;
+ break;
+ case 1:
+ x = 325;
+ y = _vm->getRandom(220) + 10;
+ animIndexIncr = 2;
+ break;
+ case 2:
+ y = 245;
+ x = _vm->getRandom(300) + 10;
+ animIndexIncr = 0;
+ break;
+ case 3:
+ x = -5;
+ y = _vm->getRandom(190) + 120;
+ animIndexIncr = 6;
+ break;
+ }
+}
+
+void MinigameBbAnt::insertBugSmokeObj(int x, int y, int bugObjIndex) {
+ Obj *obj = getFreeObject();
+ if (obj) {
+ Obj *bugObj = &_objects[bugObjIndex];
+ bugObj->hasSmoke = true;
+ obj->kind = 7;
+ obj->x = x;
+ obj->y = y;
+ obj->priority = 950;
+ if (bugObj->status >= 4 && (bugObj->status <= 6 || bugObj->status == 8)) {
+ obj->xIncr = 0;
+ obj->yIncr = (-1 << 16);
+ } else {
+ obj->xIncr = bugObj->xIncr / 8;
+ obj->yIncr = bugObj->yIncr / 8;
+ }
+ obj->anim = getAnimation(158);
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ }
+}
+
+void MinigameBbAnt::insertSmokeObj(int x, int y) {
+ Obj *obj = getFreeObject();
+ if (obj) {
+ obj->kind = 7;
+ obj->x = x;
+ obj->y = y;
+ obj->priority = 950;
+ obj->xIncr = 0x2000;
+ obj->yIncr = -0xC000;
+ obj->anim = getAnimation(158);
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ }
+}
+
+void MinigameBbAnt::resetObj(int objIndex) {
+ _objects[objIndex].kind = 0;
+}
+
+void MinigameBbAnt::insertStompObj(int x, int y) {
+ Obj *obj = getFreeObject();
+ if (obj) {
+ obj->kind = 9;
+ obj->x = x;
+ obj->y = y;
+ obj->priority = 2000;
+ obj->xIncr = (0x1E0000 * _stompCount - x + 0x140000) / 15;
+ obj->yIncr = (0xE60000 - y) / 15;
+ obj->anim = getAnimation(130);
+ obj->frameIndex = 0;
+ obj->ticks = 15;
+ _lastStompObj = obj;
+ _hasLastStompObj = true;
+ }
+}
+
+void MinigameBbAnt::removeStompObj(Obj *obj) {
+ ++_stompCount;
+ _hasLastStompObj = false;
+ obj->kind = 0;
+}
+
+void MinigameBbAnt::insertBugObj(int kind, int animIndexIncr, int always0, int x, int y, int field30, int always1) {
+ Obj *obj = getFreeObject();
+ if (obj) {
+ const ObjAnimation * const *objKindAnimTable = getObjKindAnimTable(kind);
+ obj->field30 = field30;
+ obj->animIndexIncr = animIndexIncr;
+ obj->kind = kind;
+ obj->x = x << 16;
+ obj->y = y << 16;
+ obj->priority = 610;
+ obj->xIncr = kPosIncrTbl1[0].x << 16;
+ obj->yIncr = kPosIncrTbl1[0].y << 16;
+ obj->anim = objKindAnimTable[0];
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ obj->animIndex = 0;
+ obj->status = 1;
+ obj->damageCtr = 0;
+ obj->hasSmoke = false;
+ obj->flag = 0;
+ ++_bugsCountByKind[kind];
+ ++_totalBugsCount;
+ }
+}
+
+void MinigameBbAnt::removeBugObj(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+ --_totalBugsCount;
+ --_bugsCountByKind[obj->kind];
+ obj->hasSmoke = false;
+ obj->kind = 0;
+}
+
+void MinigameBbAnt::updateBugObjAnim(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ switch (obj->field30) {
+ case 0:
+ obj->animIndexIncr = 4;
+ break;
+ case 1:
+ obj->animIndexIncr = 2;
+ break;
+ case 2:
+ obj->animIndexIncr = 0;
+ break;
+ case 3:
+ obj->animIndexIncr = 6;
+ break;
+ }
+ const ObjAnimation * const *objKindAnimTable = getObjKindAnimTable(obj->kind);
+ obj->xIncr = kPosIncrTbl1[obj->animIndexIncr].x << 16;
+ obj->yIncr = kPosIncrTbl1[obj->animIndexIncr].y << 16;
+ obj->anim = objKindAnimTable[obj->animIndexIncr];
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+}
+
+void MinigameBbAnt::updateObjAnim2(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ obj->animIndexIncr += _vm->getRandom(3) - 1;
+ if (obj->animIndexIncr < 0)
+ obj->animIndexIncr = 7;
+ if (obj->animIndexIncr > 7)
+ obj->animIndexIncr = 0;
+ obj->animIndexIncr += 4;
+ if (obj->animIndexIncr >= 8)
+ obj->animIndexIncr %= 8;
+ const ObjAnimation * const *objKindAnimTable = getObjKindAnimTable(obj->kind);
+ obj->xIncr = kPosIncrTbl1[obj->animIndex + obj->animIndexIncr].x << 16;
+ obj->yIncr = kPosIncrTbl1[obj->animIndex + obj->animIndexIncr].y << 16;
+ obj->anim = objKindAnimTable[obj->animIndex + obj->animIndexIncr];
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+}
+
+void MinigameBbAnt::insertRandomBugObj(int kind) {
+ int x, y, animIndexIncr, field30;
+ getRandomBugObjValues(x, y, animIndexIncr, field30);
+ insertBugObj(kind, animIndexIncr, 0, x, y, field30, 1);
+}
+
+bool MinigameBbAnt::isBugOutOfScreen(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ return
+ obj->x < (-10 << 16) || obj->x > (330 << 16) ||
+ obj->y < (-10 << 16) || obj->y > (250 << 16);
+}
+
+void MinigameBbAnt::updateObjAnim3(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ obj->animIndexIncr += _vm->getRandom(3) - 1;
+ if (obj->animIndexIncr < 0)
+ obj->animIndexIncr = 7;
+ if (obj->animIndexIncr > 7)
+ obj->animIndexIncr = 0;
+ const ObjAnimation * const *objKindAnimTable = getObjKindAnimTable(obj->kind);
+ obj->xIncr = kPosIncrTbl1[obj->animIndexIncr].x << 16;
+ obj->yIncr = kPosIncrTbl1[obj->animIndexIncr].y << 16;
+ obj->anim = objKindAnimTable[obj->animIndexIncr];
+}
+
+void MinigameBbAnt::updateBugObj1(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+ bool flag1 = false;
+ bool flag2 = false;
+
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->anim->frameCount == obj->frameIndex) {
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ flag1 = true;
+ } else {
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ flag2 = true;
+ }
+ }
+
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+
+ if (obj->status != 7) {
+ if (obj->damageCtr <= 5) {
+ obj->hasSmoke = false;
+ } else if (!obj->hasSmoke) {
+ obj->smokeCtr = 6;
+ insertBugSmokeObj(obj->x, obj->y, objIndex);
+ } else if (obj->damageCtr > 200 && obj->status != 4 && obj->status != 6) {
+ _score += kScoreTbl[obj->kind];
+ if (obj->status == 3) {
+ _objects[obj->otherObjIndex].status = 9;
+ _objects[obj->otherObjIndex].priority = 600;
+ if (_vm->getRandom(3) == 1 && !isAnySoundPlaying(kSoundTbl4, 10))
+ playSound(kSoundTbl3[_vm->getRandom(3)]);
+ } else {
+ if (_vm->getRandom(3) == 1 && !isAnySoundPlaying(kSoundTbl4, 10))
+ playSound(kSoundTbl2[_vm->getRandom(3)]);
+ }
+ flag1 = false;
+ const ObjAnimation * const *objKindAnimTable = getObjKindAnimTable(obj->kind);
+ obj->hasSmoke = false;
+ obj->status = 4;
+ obj->xIncr = 0;
+ obj->yIncr = 0;
+ obj->anim = objKindAnimTable[16];
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ obj->priority = 605;
+ if (obj->kind == 5) {
+ // Skull Beetle
+ if (_stompCount < 10)
+ insertStompObj(obj->x, obj->y);
+ obj->kind = 4;
+ obj->anim = getObjAnim(70);
+ obj->ticks = obj->anim->frameTicks[0];
+ }
+ } else if (--obj->smokeCtr == 0) {
+ obj->smokeCtr = 6;
+ insertBugSmokeObj(obj->x, obj->y, objIndex);
+ }
+ }
+
+ switch (obj->status) {
+
+ case 1:
+ if (isBugOutOfScreen(objIndex))
+ removeBugObj(objIndex);
+ else if (flag1 && !obj->flag)
+ updateObjAnim3(objIndex);
+ break;
+
+ case 3:
+ // Bug carries candy
+ _objects[obj->otherObjIndex].x = obj->x;
+ _objects[obj->otherObjIndex].y = obj->y;
+ if (isBugOutOfScreen(objIndex)) {
+ _objects[obj->otherObjIndex].status = 13;
+ _objects[obj->otherObjIndex].x = (500 << 16);
+ _objects[obj->otherObjIndex].y = (500 << 16);
+ removeBugObj(objIndex);
+ --_counter1;
+ }
+ break;
+
+ case 4:
+ if (flag1) {
+ const ObjAnimation * const *objKindAnimTable = getObjKindAnimTable(obj->kind);
+ obj->status = 6;
+ obj->xIncr = 0;
+ obj->yIncr = 0;
+ obj->anim = objKindAnimTable[17];
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ }
+ break;
+
+ case 6:
+ if (flag1) {
+ const ObjAnimation * const *objKindAnimTable = getObjKindAnimTable(obj->kind);
+ obj->status = 7;
+ obj->xIncr = kPosIncrTbl2[obj->animIndexIncr].x << 16;
+ obj->yIncr = kPosIncrTbl2[obj->animIndexIncr].y << 16;
+ obj->anim = objKindAnimTable[obj->animIndexIncr + 8];
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[0];
+ obj->animIndex = 8;
+ obj->priority = 610;
+ }
+ break;
+
+ case 7:
+ if (isBugOutOfScreen(objIndex))
+ removeBugObj(objIndex);
+ break;
+
+ case 8:
+ if (--obj->counter != 0) {
+ if (flag2 && obj->frameIndex == 13) {
+ obj->frameIndex = 4;
+ obj->ticks = obj->anim->frameTicks[4];
+ }
+ } else {
+ obj->status = obj->status2;
+ obj->anim = obj->anim2;
+ obj->frameIndex = obj->frameIndex2;
+ obj->ticks = obj->ticks2;
+ obj->xIncr = kPosIncrTbl1[obj->animIndex + obj->animIndexIncr].x << 16;
+ obj->yIncr = kPosIncrTbl1[obj->animIndex + obj->animIndexIncr].y << 16;
+ obj->priority = 610;
+ }
+ break;
+
+ }
+
+}
+
+void MinigameBbAnt::updateObjKind2(int objIndex) {
+ updateBugObj1(objIndex);
+}
+
+void MinigameBbAnt::updateObjKind3(int objIndex) {
+ updateBugObj1(objIndex);
+}
+
+void MinigameBbAnt::updateObjKind4(int objIndex) {
+ updateBugObj1(objIndex);
+}
+
+void MinigameBbAnt::updateObjKind5(int objIndex) {
+ ++_skullBugCtr;
+ updateBugObj1(objIndex);
+}
+
+void MinigameBbAnt::updateStompObj(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+ if (--obj->ticks == 0)
+ removeStompObj(obj);
+}
+
+void MinigameBbAnt::updateSmokeObj(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->anim->frameCount == obj->frameIndex)
+ resetObj(objIndex);
+ else
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ }
+}
+
+void MinigameBbAnt::updateFootObj(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ switch (obj->status) {
+
+ case 1:
+ obj->xIncr = -0x8000;
+ obj->yIncr = (-4 << 16);
+ obj->status = 2;
+ _stompCounter1 += 5;
+ _stompCounter2 = 100;
+ break;
+
+ case 2:
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+ obj->yIncr += 0x2000;
+ if (obj->y < (20 << 16)) {
+ obj->xIncr = 0x8000;
+ obj->yIncr = (7 << 16);
+ obj->status = 3;
+ }
+ break;
+
+ case 3:
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+ obj->yIncr += 0x2000;
+ if (obj->y >= 0x4B0000) {
+ obj->x = (40 << 16);
+ obj->y = (75 << 16);
+ obj->status = 4;
+ _stompDelay1 = 6;
+ _stompY = 0;
+ playSound(14);
+ }
+ break;
+
+ case 4:
+ if (--_stompDelay1 == 0) {
+ _gameTicks = 0;
+ if (_stompDelay1 % 2)
+ _stompY = _stompY < 1 ? -8 : 0;
+ } else {
+ obj->status = 0;
+ _stompX = 0;
+ _stompY = 0;
+ // Stun all bugs
+ for (int i = 12; i < kMaxObjectsCount; ++i) {
+ Obj *bugObj = &_objects[i];
+ if (bugObj->kind >= 1 && bugObj->kind <= 5) {
+ bugObj->counter = _vm->getRandom(200) + 360;
+ const ObjAnimation * const *objKindAnimTable = getObjKindAnimTable(bugObj->kind);
+ if (bugObj->status == 8) {
+ bugObj->hasSmoke = false;
+ bugObj->xIncr = 0;
+ bugObj->yIncr = 0;
+ bugObj->status2 = 7;
+ bugObj->anim2 = objKindAnimTable[bugObj->animIndexIncr + 8];
+ bugObj->frameIndex2 = 0;
+ bugObj->ticks2 = obj->anim->frameTicks[0];
+ bugObj->anim = objKindAnimTable[17];
+ bugObj->frameIndex = 0;
+ bugObj->ticks = _vm->getRandom(4) + obj->anim->frameTicks[0];
+ bugObj->animIndex = 8;
+ } else {
+ if (bugObj->status == 3) {
+ bugObj->priority = 610;
+ _objects[bugObj->otherObjIndex].status = 9;
+ _objects[bugObj->otherObjIndex].priority = 600;
+ }
+ bugObj->hasSmoke = false;
+ bugObj->xIncr = 0;
+ bugObj->yIncr = 0;
+ bugObj->status2 = 1;
+ bugObj->anim2 = bugObj->anim;
+ bugObj->frameIndex2 = bugObj->frameIndex;
+ bugObj->ticks2 = bugObj->ticks;
+ bugObj->anim = objKindAnimTable[17];
+ bugObj->frameIndex = 0;
+ bugObj->ticks = _vm->getRandom(4) + obj->anim->frameTicks[0];
+ }
+ bugObj->status = 8;
+ bugObj->priority = 605;
+ }
+ }
+ }
+ break;
+
+ }
+
+}
+
+bool MinigameBbAnt::isBugAtCandy(int objIndex, int &candyObjIndex) {
+ Obj *obj = &_objects[objIndex];
+ bool result = false;
+
+ if (obj->kind >= 1 && obj->kind <= 4) {
+ const BBRect &frameRect1 = obj->anim->frameRects[obj->frameIndex];
+ const int obj1X1 = frameRect1.x + (obj->x >> 16);
+ const int obj1Y1 = frameRect1.y + (obj->y >> 16);
+ const int obj1X2 = obj1X1 + frameRect1.width;
+ const int obj1Y2 = obj1Y1 + frameRect1.height;
+ for (int i = 3; i < 12 && !result; ++i) {
+ Obj *obj2 = &_objects[i];
+ const BBRect &frameRect2 = obj->anim->frameRects[obj2->frameIndex]; // sic
+ const int obj2X1 = (obj2->x >> 16) + frameRect2.x;
+ const int obj2Y1 = (obj2->y >> 16) + frameRect2.y;
+ const int obj2X2 = obj2X1 + frameRect2.width;
+ const int obj2Y2 = obj2Y1 + frameRect2.height;
+ if (obj2->status == 9 && obj1X1 <= obj2X2 && obj1X2 >= obj2X1 && obj1Y1 <= obj2Y2 && obj1Y2 >= obj2Y1) {
+ result = true;
+ candyObjIndex = i;
+ }
+ }
+ }
+ return result;
+}
+
+bool MinigameBbAnt::isMagGlassAtBug(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+ Obj *obj0 = &_objects[0];
+ bool result = false;
+
+ if (obj->kind >= 1 && obj->kind <= 5) {
+ const BBRect &frameRect1 = obj0->anim->frameRects[0];
+ const int obj1X1 = obj0->x + frameRect1.x;
+ const int obj1Y1 = obj0->y + frameRect1.y;
+ const int obj1X2 = obj1X1 + frameRect1.width;
+ const int obj1Y2 = obj1Y1 + frameRect1.height;
+ const BBRect &frameRect2 = obj->anim->frameRects[obj->frameIndex];
+ const int obj2X1 = (obj->x >> 16) + frameRect2.x;
+ const int obj2Y1 = (obj->y >> 16) + frameRect2.y;
+ const int obj2X2 = obj2X1 + frameRect2.width;
+ const int obj2Y2 = obj2Y1 + frameRect2.height;
+ if (obj2X2 >= obj1X1 && obj1X2 >= obj2X1 && obj1Y1 <= obj2Y2 && obj1Y2 >= obj2Y1)
+ result = true;
+ }
+ return result;
+}
+
+bool MinigameBbAnt::isMagGlassAtBeavisLeg(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+ Obj *magGlassObj = &_objects[0];
+ bool result = false;
+
+ const BBRect &frameRect1 = magGlassObj->anim->frameRects[0];
+ const int obj1X1 = magGlassObj->x + frameRect1.x;
+ const int obj1Y1 = magGlassObj->y + frameRect1.y;
+ const int obj1X2 = obj1X1 + frameRect1.width;
+ const int obj1Y2 = obj1Y1 + frameRect1.height;
+ const BBRect &frameRect2 = obj->anim->frameRects[obj->frameIndex];
+ const int obj2X1 = (obj->x >> 16) + frameRect2.x;
+ const int obj2Y1 = (obj->y >> 16) + frameRect2.y;
+ const int obj2X2 = obj2X1 + frameRect2.width;
+ const int obj2Y2 = obj2Y1 + frameRect2.height;
+ if (obj2X2 >= obj1X1 && obj1X2 >= obj2X1 && obj1Y1 <= obj2Y2 && obj1Y2 >= obj2Y1)
+ result = true;
+ return result;
+}
+
+bool MinigameBbAnt::testObj5(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+ bool result = false;
+ if (obj->kind >= 1 && obj->kind <= 5) {
+ const int x = obj->x >> 16;
+ const int y = obj->y >> 16;
+ if (x < 0 || x >= 110 || y < 0 || y >= 110) {
+ obj->flag = 0;
+ } else if (!obj->flag) {
+ obj->flag = 1;
+ result = true;
+ }
+ }
+ return result;
+}
+
+void MinigameBbAnt::updateObjs(uint mouseButtons) {
+
+ for (int i = 12; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+
+ if (obj->kind) {
+
+ if ((mouseButtons & kLeftButtonClicked) && isMagGlassAtBug(i))
+ obj->damageCtr += 100;
+
+ if (obj->status == 1) {
+ int candyObjIndex;
+ if (isBugAtCandy(i, candyObjIndex)) {
+ obj->status = 3;
+ obj->otherObjIndex = candyObjIndex;
+ _objects[candyObjIndex].otherObjIndex = i;
+ _objects[candyObjIndex].status = 10;
+ _objects[candyObjIndex].priority = 620;
+ _objects[candyObjIndex].status = 11;
+ _objects[candyObjIndex].anim = getObjInit(candyObjIndex - 3)->anim3;
+ updateBugObjAnim(i);
+ if (_vm->getRandom(3) == 1 && !isAnySoundPlaying(kSoundTbl4, 10))
+ playSound(kSoundTbl1[_vm->getRandom(4)]);
+ }
+ }
+
+ if (testObj5(i)) {
+ updateObjAnim2(i);
+ }
+
+ if (obj->damageCtr) {
+ --obj->damageCtr;
+ if (!isSoundPlaying(13))
+ playSound(13);
+ }
+
+ switch (obj->kind) {
+ case 1:
+ updateBugObj1(i);
+ break;
+ case 2:
+ updateObjKind2(i);
+ break;
+ case 3:
+ updateObjKind3(i);
+ break;
+ case 4:
+ updateObjKind4(i);
+ break;
+ case 5:
+ updateObjKind5(i);
+ break;
+ case 7:
+ updateSmokeObj(i);
+ break;
+ case 9:
+ updateStompObj(i);
+ break;
+ }
+
+ }
+
+ }
+
+}
+
+bool MinigameBbAnt::run(bool fromMainGame) {
+
+ memset(_objects, 0, sizeof(_objects));
+
+ _numbersAnim = getAnimation(167);
+
+ _backgroundSpriteIndex = 303;
+ _titleScreenSpriteIndex = 304;
+
+ _fromMainGame = fromMainGame;
+
+ _hiScore = 0;
+ if (!_fromMainGame)
+ _hiScore = loadHiscore(kMinigameBbAnt);
+
+ _gameState = 0;
+ _gameResult = false;
+ _gameDone = false;
+ initObjects();
+ initVars();
+
+ _spriteModule = new SpriteModule();
+ _spriteModule->load("bbant/bbant.000");
+
+ Palette palette = _spriteModule->getPalette();
+ _vm->_screen->setPalette(palette);
+
+ loadSounds();
+
+ _gameTicks = 0;
+ playSound(12, true);
+
+ while (!_vm->shouldQuit() &&!_gameDone) {
+ _vm->updateEvents();
+ update();
+ }
+
+ _vm->_sound->unloadSounds();
+
+ if (!_fromMainGame)
+ saveHiscore(kMinigameBbAnt, _hiScore);
+
+ delete _spriteModule;
+
+ return _gameResult;
+}
+
+void MinigameBbAnt::update() {
+
+ int inputTicks;
+
+ if (_gameTicks > 0) {
+ int currTicks = _vm->_system->getMillis();
+ inputTicks = 3 * (currTicks - _gameTicks) / 50;
+ _gameTicks = currTicks - (currTicks - _gameTicks - 50 * inputTicks / 3);
+ } else {
+ inputTicks = 1;
+ _gameTicks = _vm->_system->getMillis();
+ }
+
+ if (_vm->_keyCode == Common::KEYCODE_ESCAPE) {
+ _gameDone = true;
+ return;
+ }
+
+ if (inputTicks == 0)
+ return;
+
+ bool done;
+
+ do {
+ done = !updateStatus(_vm->_mouseX, _vm->_mouseY, _vm->_mouseButtons);
+ _vm->_mouseButtons &= ~kLeftButtonClicked;
+ _vm->_mouseButtons &= ~kRightButtonClicked;
+ _vm->_keyCode = Common::KEYCODE_INVALID;
+ } while (--inputTicks && _gameTicks > 0 && !done);
+
+ drawSprites();
+
+ _vm->_system->delayMillis(10);
+
+}
+
+void MinigameBbAnt::scale2x(int x, int y) {
+ Graphics::Surface *surface = _vm->_screen->_surface;
+
+ int srcX = x + 14, srcY = y + 14;
+ int srcW = kScaleDim, srcH = kScaleDim;
+
+ if (srcX < 0) {
+ srcW += srcX;
+ srcX = 0;
+ }
+
+ if (srcY < 0) {
+ srcH += srcY;
+ srcY = 0;
+ }
+
+ if (srcX + srcW >= 320)
+ srcW = 320 - srcX - 1;
+
+ if (srcY + srcH >= 240)
+ srcH = 240 - srcY - 1;
+
+ for (int yc = 0; yc < srcH; ++yc) {
+ byte *src = (byte*)surface->getBasePtr(srcX, srcY + yc);
+ memcpy(&_scaleBuf[yc * kScaleDim], src, srcW);
+ }
+
+ int dstX = x, dstY = y;
+ int dstW = 2 * kScaleDim, dstH = 2 * kScaleDim;
+
+ if (dstX < 0) {
+ dstW += dstX;
+ dstX = 0;
+ }
+
+ if (dstY < 0) {
+ dstH += dstY;
+ dstY = 0;
+ }
+
+ if (dstX + dstW >= 320)
+ dstW = 320 - dstX - 1;
+
+ if (dstY + dstH >= 240)
+ dstH = 240 - dstY - 1;
+
+ int w = MIN(srcW * 2, dstW), h = MIN(srcH * 2, dstH);
+
+ for (int yc = 0; yc < h; ++yc) {
+ byte *src = _scaleBuf + kScaleDim * (yc / 2);
+ byte *dst = (byte*)surface->getBasePtr(dstX, dstY + yc);
+ for (int xc = 0; xc < w; ++xc)
+ dst[xc] = src[xc / 2];
+ }
+
+}
+
+void MinigameBbAnt::loadSounds() {
+ for (uint i = 0; i < kSoundFilenamesCount; ++i) {
+ Common::String filename = Common::String::format("bbant/%s", kSoundFilenames[i]);
+ _vm->_sound->loadSound(filename.c_str());
+ }
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/bbant.h b/engines/bbvs/minigames/bbant.h
new file mode 100644
index 0000000000..be2afe688d
--- /dev/null
+++ b/engines/bbvs/minigames/bbant.h
@@ -0,0 +1,173 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_MINIGAMES_BBANT_H
+#define BBVS_MINIGAMES_BBANT_H
+
+#include "bbvs/minigames/minigame.h"
+
+namespace Bbvs {
+
+class MinigameBbAnt : public Minigame {
+public:
+ MinigameBbAnt(BbvsEngine *vm) : Minigame(vm) {};
+ bool run(bool fromMainGame);
+public:
+
+ struct Obj {
+ int kind;
+ int x, y, priority;
+ int xIncr, yIncr;
+ const ObjAnimation *anim;
+ int frameIndex;
+ int ticks;
+ int otherObjIndex;
+ int animIndex;
+ int animIndexIncr;
+ int status;
+ int field30;
+ int damageCtr;
+ int smokeCtr;
+ int counter;
+ int hasSmoke;
+ const ObjAnimation *anim2;
+ int frameIndex2;
+ int ticks2;
+ int status2;
+ int flag;
+ };
+
+ enum {
+ kMaxObjectsCount = 256,
+ kScaleDim = 28
+ };
+
+ struct ObjInit {
+ const ObjAnimation *anim1;
+ const ObjAnimation *anim2;
+ const ObjAnimation *anim3;
+ int x, y;
+ };
+
+ Obj _objects[kMaxObjectsCount];
+
+ int _score, _hiScore;
+
+ int _totalBugsCount;
+ int _bugsChanceByKind[6], _bugsCountByKind[6];
+ int _skullBugCtr;
+
+ int _stompX, _stompY;
+ int _stompDelay1;
+ int _stompCounter1;
+ int _stompCounter2;
+
+ int _stompCount;
+ int _hasLastStompObj;
+ Obj *_lastStompObj;
+
+ int _counter1;
+ int _countdown10;
+ int _counter4;
+ int _levelTimeDelay;
+ int _levelTimeLeft;
+
+ int _countdown4;
+ int _countdown3;
+ int _countdown6;
+ int _countdown5;
+ int _countdown7;
+
+ byte _scaleBuf[kScaleDim * kScaleDim];
+
+ const ObjAnimation *getAnimation(int animIndex);
+ const ObjInit *getObjInit(int index);
+ const ObjAnimation * const *getObjKindAnimTable(int kind);
+ const ObjAnimation *getObjAnim(int index);
+
+ void buildDrawList0(DrawList &drawList);
+ void buildDrawList1(DrawList &drawList);
+ void buildDrawList2(DrawList &drawList);
+ void buildDrawList3(DrawList &drawList);
+ void drawMagnifyingGlass(DrawList &drawList);
+
+ void drawSprites();
+ void drawSprites0();
+ void drawSprites1();
+ void drawSprites2();
+ void drawSprites3();
+
+ Obj *getFreeObject();
+
+ void initObjects();
+ void initObjects0();
+ void initObjects1();
+
+ void initVars();
+ void initVars1();
+ void initVars2();
+ void initVars3();
+
+ bool updateStatus(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus0(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus1(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus2(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus3(int mouseX, int mouseY, uint mouseButtons);
+
+ void getRandomBugObjValues(int &x, int &y, int &animIndexIncr, int &field30);
+ void insertBugSmokeObj(int x, int y, int bugObjIndex);
+ void insertSmokeObj(int x, int y);
+ void resetObj(int objIndex);
+ void insertStompObj(int x, int y);
+ void removeStompObj(Obj *obj);
+ void insertBugObj(int kind, int animIndexIncr, int always0, int x, int y, int field30, int always1);
+ void removeBugObj(int objIndex);
+ void updateBugObjAnim(int objIndex);
+ void updateObjAnim2(int objIndex);
+ void insertRandomBugObj(int kind);
+ bool isBugOutOfScreen(int objIndex);
+ void updateObjAnim3(int objIndex);
+ void updateBugObj1(int objIndex);
+ void updateObjKind2(int objIndex);
+ void updateObjKind3(int objIndex);
+ void updateObjKind4(int objIndex);
+ void updateObjKind5(int objIndex);
+ void updateStompObj(int objIndex);
+ void updateSmokeObj(int objIndex);
+ void updateFootObj(int objIndex);
+ bool isBugAtCandy(int objIndex, int &candyObjIndex);
+ bool isMagGlassAtBug(int objIndex);
+ bool isMagGlassAtBeavisLeg(int objIndex);
+ bool testObj5(int objIndex);
+ void updateObjs(uint mouseButtons);
+
+ void update();
+
+ void scale2x(int x, int y);
+
+ void loadSounds();
+
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_MINIGAMES_BBANT_H
diff --git a/engines/bbvs/minigames/bbant_anims.cpp b/engines/bbvs/minigames/bbant_anims.cpp
new file mode 100644
index 0000000000..c9223adca1
--- /dev/null
+++ b/engines/bbvs/minigames/bbant_anims.cpp
@@ -0,0 +1,757 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/minigames/bbant.h"
+
+namespace Bbvs {
+
+static const int kAnim0FrameIndices[] = {0, 1, 2};
+static const int16 kAnim0FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim0FrameRects[] = {{-3, -8, 6, 14}, {-3, -8, 6, 13}, {-3, -7, 6, 12}};
+static const int kAnim1FrameIndices[] = {3, 4, 5};
+static const int16 kAnim1FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim1FrameRects[] = {{-5, -6, 13, 9}, {-5, -6, 13, 10}, {-5, -6, 13, 10}};
+static const int kAnim2FrameIndices[] = {6, 7, 8};
+static const int16 kAnim2FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim2FrameRects[] = {{-6, -6, 17, 7}, {-6, -6, 15, 6}, {-7, -6, 17, 6}};
+static const int kAnim3FrameIndices[] = {9, 10, 11};
+static const int16 kAnim3FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim3FrameRects[] = {{-5, -7, 13, 8}, {-5, -7, 12, 7}, {-5, -7, 12, 9}};
+static const int kAnim4FrameIndices[] = {12, 13, 14};
+static const int16 kAnim4FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim4FrameRects[] = {{-3, -9, 7, 11}, {-3, -9, 7, 11}, {-3, -9, 7, 11}};
+static const int kAnim5FrameIndices[] = {15, 16, 17};
+static const int16 kAnim5FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim5FrameRects[] = {{-7, -8, 13, 9}, {-7, -7, 13, 8}, {-7, -7, 13, 8}};
+static const int kAnim6FrameIndices[] = {18, 19, 20};
+static const int16 kAnim6FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim6FrameRects[] = {{-10, -6, 17, 7}, {-11, -6, 18, 7}, {-11, -6, 18, 6}};
+static const int kAnim7FrameIndices[] = {21, 22, 23};
+static const int16 kAnim7FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim7FrameRects[] = {{-7, -6, 13, 8}, {-7, -7, 12, 9}, {-7, -7, 13, 9}};
+static const int kAnim8FrameIndices[] = {24};
+static const int16 kAnim8FrameTicks[] = {8};
+static const BBRect kAnim8FrameRects[] = {{-3, -9, 6, 12}};
+static const int kAnim9FrameIndices[] = {25};
+static const int16 kAnim9FrameTicks[] = {8};
+static const BBRect kAnim9FrameRects[] = {{-5, -6, 12, 7}};
+static const int kAnim10FrameIndices[] = {26};
+static const int16 kAnim10FrameTicks[] = {8};
+static const BBRect kAnim10FrameRects[] = {{-4, -6, 13, 6}};
+static const int kAnim11FrameIndices[] = {27};
+static const int16 kAnim11FrameTicks[] = {8};
+static const BBRect kAnim11FrameRects[] = {{-5, -7, 11, 8}};
+static const int kAnim12FrameIndices[] = {28};
+static const int16 kAnim12FrameTicks[] = {8};
+static const BBRect kAnim12FrameRects[] = {{-2, -10, 5, 12}};
+static const int kAnim13FrameIndices[] = {29};
+static const int16 kAnim13FrameTicks[] = {8};
+static const BBRect kAnim13FrameRects[] = {{-6, -8, 13, 9}};
+static const int kAnim14FrameIndices[] = {30};
+static const int16 kAnim14FrameTicks[] = {8};
+static const BBRect kAnim14FrameRects[] = {{-8, -6, 13, 6}};
+static const int kAnim15FrameIndices[] = {31};
+static const int16 kAnim15FrameTicks[] = {8};
+static const BBRect kAnim15FrameRects[] = {{-7, -7, 12, 8}};
+static const int kAnim16FrameIndices[] = {0, 1, 2};
+static const int16 kAnim16FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim16FrameRects[] = {{-3, -8, 6, 14}, {-3, -8, 6, 13}, {-3, -7, 6, 12}};
+static const int kAnim17FrameIndices[] = {3, 4, 5};
+static const int16 kAnim17FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim17FrameRects[] = {{-5, -6, 13, 9}, {-5, -6, 13, 10}, {-5, -6, 13, 10}};
+static const int kAnim18FrameIndices[] = {6, 7, 8};
+static const int16 kAnim18FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim18FrameRects[] = {{-6, -6, 17, 7}, {-6, -6, 15, 6}, {-7, -6, 17, 6}};
+static const int kAnim19FrameIndices[] = {9, 10, 11};
+static const int16 kAnim19FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim19FrameRects[] = {{-5, -7, 13, 8}, {-5, -7, 12, 7}, {-5, -7, 12, 9}};
+static const int kAnim20FrameIndices[] = {12, 13, 14};
+static const int16 kAnim20FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim20FrameRects[] = {{-3, -9, 7, 11}, {-3, -9, 7, 11}, {-3, -9, 7, 11}};
+static const int kAnim21FrameIndices[] = {15, 16, 17};
+static const int16 kAnim21FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim21FrameRects[] = {{-7, -8, 13, 9}, {-7, -7, 13, 8}, {-7, -7, 13, 8}};
+static const int kAnim22FrameIndices[] = {18, 19, 20};
+static const int16 kAnim22FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim22FrameRects[] = {{-10, -6, 17, 7}, {-11, -6, 18, 7}, {-11, -6, 18, 6}};
+static const int kAnim23FrameIndices[] = {21, 22, 23};
+static const int16 kAnim23FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim23FrameRects[] = {{-7, -6, 13, 8}, {-7, -7, 12, 9}, {-7, -7, 13, 9}};
+static const int kAnim24FrameIndices[] = {32, 33, 34, 35, 36, 37, 36, 37, 36, 37, 36, 37, 36, 38};
+static const int16 kAnim24FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim24FrameRects[] = {{-3, -14, 12, 10}, {-2, -21, 11, 11}, {0, -23, 8, 14}, {-6, -15, 13, 11}, {-8, -4, 15, 5}, {-9, -4, 16, 6}, {-8, -4, 15, 5}, {-9, -4, 16, 6}, {-8, -4, 15, 5}, {-9, -4, 16, 6}, {-8, -4, 15, 5}, {-9, -4, 16, 6}, {-8, -4, 15, 5}, {-9, -4, 16, 5}};
+static const int kAnim25FrameIndices[] = {39, 40, 41, 42, 43, 44, 43, 44, 43, 44, 43, 44, 43, 45};
+static const int16 kAnim25FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim25FrameRects[] = {{-9, -14, 13, 10}, {-8, -22, 12, 12}, {-8, -24, 8, 15}, {-7, -15, 13, 10}, {-6, -4, 15, 7}, {-7, -4, 16, 6}, {-6, -4, 15, 7}, {-7, -4, 16, 6}, {-6, -4, 15, 7}, {-7, -4, 16, 6}, {-6, -4, 15, 7}, {-7, -4, 16, 6}, {-6, -4, 15, 7}, {-7, -4, 16, 6}};
+static const int kAnim26FrameIndices[] = {46, 47, 48};
+static const int16 kAnim26FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim26FrameRects[] = {{-3, -8, 6, 14}, {-3, -8, 6, 13}, {-3, -7, 6, 12}};
+static const int kAnim27FrameIndices[] = {49, 50, 51};
+static const int16 kAnim27FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim27FrameRects[] = {{-5, -6, 13, 9}, {-5, -6, 13, 10}, {-5, -6, 13, 10}};
+static const int kAnim28FrameIndices[] = {52, 53, 54};
+static const int16 kAnim28FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim28FrameRects[] = {{-6, -6, 17, 7}, {-6, -6, 15, 6}, {-7, -6, 17, 6}};
+static const int kAnim29FrameIndices[] = {55, 56, 57};
+static const int16 kAnim29FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim29FrameRects[] = {{-5, -7, 13, 8}, {-5, -7, 12, 7}, {-5, -7, 12, 9}};
+static const int kAnim30FrameIndices[] = {58, 59, 60};
+static const int16 kAnim30FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim30FrameRects[] = {{-3, -9, 7, 11}, {-3, -9, 7, 11}, {-3, -9, 7, 11}};
+static const int kAnim31FrameIndices[] = {61, 62, 63};
+static const int16 kAnim31FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim31FrameRects[] = {{-7, -8, 13, 9}, {-7, -7, 13, 8}, {-7, -7, 13, 8}};
+static const int kAnim32FrameIndices[] = {64, 65, 66};
+static const int16 kAnim32FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim32FrameRects[] = {{-10, -6, 17, 7}, {-11, -6, 18, 7}, {-11, -6, 18, 6}};
+static const int kAnim33FrameIndices[] = {67, 68, 69};
+static const int16 kAnim33FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim33FrameRects[] = {{-7, -6, 13, 8}, {-7, -7, 12, 9}, {-7, -7, 13, 9}};
+static const int kAnim34FrameIndices[] = {70};
+static const int16 kAnim34FrameTicks[] = {8};
+static const BBRect kAnim34FrameRects[] = {{-3, -9, 6, 12}};
+static const int kAnim35FrameIndices[] = {71};
+static const int16 kAnim35FrameTicks[] = {8};
+static const BBRect kAnim35FrameRects[] = {{-5, -6, 12, 7}};
+static const int kAnim36FrameIndices[] = {72};
+static const int16 kAnim36FrameTicks[] = {8};
+static const BBRect kAnim36FrameRects[] = {{-4, -6, 13, 6}};
+static const int kAnim37FrameIndices[] = {73};
+static const int16 kAnim37FrameTicks[] = {8};
+static const BBRect kAnim37FrameRects[] = {{-5, -7, 11, 8}};
+static const int kAnim38FrameIndices[] = {74};
+static const int16 kAnim38FrameTicks[] = {8};
+static const BBRect kAnim38FrameRects[] = {{-2, -10, 5, 12}};
+static const int kAnim39FrameIndices[] = {75};
+static const int16 kAnim39FrameTicks[] = {8};
+static const BBRect kAnim39FrameRects[] = {{-6, -8, 13, 9}};
+static const int kAnim40FrameIndices[] = {76};
+static const int16 kAnim40FrameTicks[] = {8};
+static const BBRect kAnim40FrameRects[] = {{-8, -6, 13, 6}};
+static const int kAnim41FrameIndices[] = {77};
+static const int16 kAnim41FrameTicks[] = {8};
+static const BBRect kAnim41FrameRects[] = {{-7, -7, 12, 8}};
+static const int kAnim42FrameIndices[] = {46, 47, 48};
+static const int16 kAnim42FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim42FrameRects[] = {{-3, -8, 6, 14}, {-3, -8, 6, 13}, {-3, -7, 6, 12}};
+static const int kAnim43FrameIndices[] = {49, 50, 51};
+static const int16 kAnim43FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim43FrameRects[] = {{-5, -6, 13, 9}, {-5, -6, 13, 10}, {-5, -6, 13, 10}};
+static const int kAnim44FrameIndices[] = {52, 53, 54};
+static const int16 kAnim44FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim44FrameRects[] = {{-6, -6, 17, 7}, {-6, -6, 15, 6}, {-7, -6, 17, 6}};
+static const int kAnim45FrameIndices[] = {55, 56, 57};
+static const int16 kAnim45FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim45FrameRects[] = {{-5, -7, 13, 8}, {-5, -7, 12, 7}, {-5, -7, 12, 9}};
+static const int kAnim46FrameIndices[] = {58, 59, 60};
+static const int16 kAnim46FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim46FrameRects[] = {{-3, -9, 7, 11}, {-3, -9, 7, 11}, {-3, -9, 7, 11}};
+static const int kAnim47FrameIndices[] = {61, 62, 63};
+static const int16 kAnim47FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim47FrameRects[] = {{-7, -8, 13, 9}, {-7, -7, 13, 8}, {-7, -7, 13, 8}};
+static const int kAnim48FrameIndices[] = {64, 65, 66};
+static const int16 kAnim48FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim48FrameRects[] = {{-10, -6, 17, 7}, {-11, -6, 18, 7}, {-11, -6, 18, 6}};
+static const int kAnim49FrameIndices[] = {67, 68, 69};
+static const int16 kAnim49FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim49FrameRects[] = {{-7, -6, 13, 8}, {-7, -7, 12, 9}, {-7, -7, 13, 9}};
+static const int kAnim50FrameIndices[] = {78, 79, 80, 81, 82, 83, 82, 83, 82, 83, 82, 83, 82, 84};
+static const int16 kAnim50FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim50FrameRects[] = {{-3, -14, 12, 10}, {-2, -21, 11, 11}, {0, -23, 8, 14}, {-6, -15, 13, 11}, {-8, -4, 15, 5}, {-9, -4, 16, 6}, {-8, -4, 15, 5}, {-9, -4, 16, 6}, {-8, -4, 15, 5}, {-9, -4, 16, 6}, {-8, -4, 15, 5}, {-9, -4, 16, 6}, {-8, -4, 15, 5}, {-9, -4, 16, 5}};
+static const int kAnim51FrameIndices[] = {85, 86, 87, 88, 89, 90, 89, 90, 89, 90, 89, 90, 89, 91};
+static const int16 kAnim51FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim51FrameRects[] = {{-9, -14, 13, 10}, {-8, -22, 12, 12}, {-8, -24, 8, 15}, {-7, -15, 13, 10}, {-6, -4, 15, 7}, {-7, -4, 16, 6}, {-6, -4, 15, 7}, {-7, -4, 16, 6}, {-6, -4, 15, 7}, {-7, -4, 16, 6}, {-6, -4, 15, 7}, {-7, -4, 16, 6}, {-6, -4, 15, 7}, {-7, -4, 16, 6}};
+static const int kAnim52FrameIndices[] = {92, 93, 94};
+static const int16 kAnim52FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim52FrameRects[] = {{-6, -14, 13, 24}, {-7, -13, 14, 23}, {-6, -13, 12, 22}};
+static const int kAnim53FrameIndices[] = {95, 96, 97};
+static const int16 kAnim53FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim53FrameRects[] = {{-4, -12, 19, 17}, {-3, -12, 18, 18}, {-2, -12, 17, 18}};
+static const int kAnim54FrameIndices[] = {98, 99, 100};
+static const int16 kAnim54FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim54FrameRects[] = {{-6, -16, 23, 14}, {-6, -15, 24, 13}, {-7, -15, 25, 14}};
+static const int kAnim55FrameIndices[] = {101, 102, 103};
+static const int16 kAnim55FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim55FrameRects[] = {{-4, -22, 16, 20}, {-3, -23, 14, 22}, {-4, -23, 14, 22}};
+static const int kAnim56FrameIndices[] = {104, 105, 106};
+static const int16 kAnim56FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim56FrameRects[] = {{-5, -24, 11, 23}, {-5, -25, 11, 25}, {-5, -25, 11, 26}};
+static const int kAnim57FrameIndices[] = {107, 108, 109};
+static const int16 kAnim57FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim57FrameRects[] = {{-10, -23, 15, 21}, {-11, -22, 16, 20}, {-11, -23, 17, 21}};
+static const int kAnim58FrameIndices[] = {110, 111, 112};
+static const int16 kAnim58FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim58FrameRects[] = {{-17, -15, 25, 15}, {-17, -15, 25, 14}, {-17, -15, 25, 14}};
+static const int kAnim59FrameIndices[] = {113, 114, 115};
+static const int16 kAnim59FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim59FrameRects[] = {{-14, -12, 20, 17}, {-14, -13, 19, 18}, {-14, -13, 19, 18}};
+static const int kAnim60FrameIndices[] = {116};
+static const int16 kAnim60FrameTicks[] = {6};
+static const BBRect kAnim60FrameRects[] = {{-6, -12, 12, 23}};
+static const int kAnim61FrameIndices[] = {117};
+static const int16 kAnim61FrameTicks[] = {6};
+static const BBRect kAnim61FrameRects[] = {{-5, -11, 20, 19}};
+static const int kAnim62FrameIndices[] = {118};
+static const int16 kAnim62FrameTicks[] = {6};
+static const BBRect kAnim62FrameRects[] = {{-8, -14, 27, 15}};
+static const int kAnim63FrameIndices[] = {119};
+static const int16 kAnim63FrameTicks[] = {6};
+static const BBRect kAnim63FrameRects[] = {{-4, -22, 17, 20}};
+static const int kAnim64FrameIndices[] = {120};
+static const int16 kAnim64FrameTicks[] = {6};
+static const BBRect kAnim64FrameRects[] = {{-6, -25, 13, 25}};
+static const int kAnim65FrameIndices[] = {121};
+static const int16 kAnim65FrameTicks[] = {6};
+static const BBRect kAnim65FrameRects[] = {{-11, -23, 17, 23}};
+static const int kAnim66FrameIndices[] = {122};
+static const int16 kAnim66FrameTicks[] = {6};
+static const BBRect kAnim66FrameRects[] = {{-18, -13, 29, 13}};
+static const int kAnim67FrameIndices[] = {123};
+static const int16 kAnim67FrameTicks[] = {6};
+static const BBRect kAnim67FrameRects[] = {{-14, -12, 21, 19}};
+static const int kAnim68FrameIndices[] = {92, 93, 94};
+static const int16 kAnim68FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim68FrameRects[] = {{-6, -14, 13, 24}, {-7, -13, 14, 23}, {-6, -13, 12, 22}};
+static const int kAnim69FrameIndices[] = {95, 96, 97};
+static const int16 kAnim69FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim69FrameRects[] = {{-4, -12, 19, 17}, {-3, -12, 18, 18}, {-2, -12, 17, 18}};
+static const int kAnim70FrameIndices[] = {98, 99, 100};
+static const int16 kAnim70FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim70FrameRects[] = {{-6, -16, 23, 14}, {-6, -15, 24, 13}, {-7, -15, 25, 14}};
+static const int kAnim71FrameIndices[] = {101, 102, 103};
+static const int16 kAnim71FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim71FrameRects[] = {{-4, -22, 16, 20}, {-3, -23, 14, 22}, {-4, -23, 14, 22}};
+static const int kAnim72FrameIndices[] = {104, 105, 106};
+static const int16 kAnim72FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim72FrameRects[] = {{-5, -24, 11, 23}, {-5, -25, 11, 25}, {-5, -25, 11, 26}};
+static const int kAnim73FrameIndices[] = {107, 108, 109};
+static const int16 kAnim73FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim73FrameRects[] = {{-10, -23, 15, 21}, {-11, -22, 16, 20}, {-11, -23, 17, 21}};
+static const int kAnim74FrameIndices[] = {110, 111, 112};
+static const int16 kAnim74FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim74FrameRects[] = {{-17, -15, 25, 15}, {-17, -15, 25, 14}, {-17, -15, 25, 14}};
+static const int kAnim75FrameIndices[] = {113, 114, 115};
+static const int16 kAnim75FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim75FrameRects[] = {{-14, -12, 20, 17}, {-14, -13, 19, 18}, {-14, -13, 19, 18}};
+static const int kAnim76FrameIndices[] = {124, 125, 126, 127, 128, 129, 128, 129, 128, 129, 128, 129, 128, 130};
+static const int16 kAnim76FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim76FrameRects[] = {{-14, -23, 23, 18}, {-12, -32, 18, 23}, {-16, -29, 18, 22}, {-17, -17, 23, 17}, {-17, -10, 26, 14}, {-17, -12, 25, 15}, {-17, -10, 26, 14}, {-17, -12, 25, 15}, {-17, -10, 26, 14}, {-17, -12, 25, 15}, {-17, -10, 26, 14}, {-17, -12, 25, 15}, {-17, -10, 26, 14}, {-18, -13, 28, 14}};
+static const int kAnim77FrameIndices[] = {131, 132, 133, 134, 135, 136, 135, 136, 135, 136, 135, 136, 135, 137};
+static const int16 kAnim77FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim77FrameRects[] = {{-6, -24, 21, 19}, {-5, -33, 19, 24}, {-1, -29, 18, 22}, {-5, -17, 22, 17}, {-6, -10, 23, 14}, {-7, -10, 26, 13}, {-6, -10, 23, 14}, {-7, -10, 26, 13}, {-6, -10, 23, 14}, {-7, -10, 26, 13}, {-6, -10, 23, 14}, {-7, -10, 26, 13}, {-6, -10, 23, 14}, {-7, -12, 26, 14}};
+static const int kAnim78FrameIndices[] = {138, 139, 140};
+static const int16 kAnim78FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim78FrameRects[] = {{-3, -17, 7, 20}, {-3, -16, 7, 19}, {-3, -16, 7, 19}};
+static const int kAnim79FrameIndices[] = {141, 142, 143};
+static const int16 kAnim79FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim79FrameRects[] = {{-6, -14, 13, 15}, {-7, -13, 14, 14}, {-6, -13, 13, 14}};
+static const int kAnim80FrameIndices[] = {144, 145, 146};
+static const int16 kAnim80FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim80FrameRects[] = {{-10, -10, 20, 9}, {-9, -9, 19, 8}, {-9, -9, 19, 8}};
+static const int kAnim81FrameIndices[] = {147, 148, 149};
+static const int16 kAnim81FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim81FrameRects[] = {{-7, -11, 16, 10}, {-7, -11, 16, 10}, {-7, -11, 16, 10}};
+static const int kAnim82FrameIndices[] = {150, 151, 152};
+static const int16 kAnim82FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim82FrameRects[] = {{-3, -13, 7, 16}, {-3, -13, 7, 16}, {-3, -12, 7, 15}};
+static const int kAnim83FrameIndices[] = {153, 154, 155};
+static const int16 kAnim83FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim83FrameRects[] = {{-8, -11, 18, 10}, {-7, -11, 16, 11}, {-7, -10, 17, 9}};
+static const int kAnim84FrameIndices[] = {156, 157, 158};
+static const int16 kAnim84FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim84FrameRects[] = {{-8, -9, 20, 7}, {-9, -9, 21, 8}, {-9, -9, 21, 8}};
+static const int kAnim85FrameIndices[] = {159, 160, 161};
+static const int16 kAnim85FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim85FrameRects[] = {{-6, -14, 15, 15}, {-5, -13, 12, 14}, {-6, -13, 14, 14}};
+static const int kAnim86FrameIndices[] = {162};
+static const int16 kAnim86FrameTicks[] = {6};
+static const BBRect kAnim86FrameRects[] = {{-3, -15, 8, 18}};
+static const int kAnim87FrameIndices[] = {163};
+static const int16 kAnim87FrameTicks[] = {6};
+static const BBRect kAnim87FrameRects[] = {{-7, -13, 14, 14}};
+static const int kAnim88FrameIndices[] = {164};
+static const int16 kAnim88FrameTicks[] = {6};
+static const BBRect kAnim88FrameRects[] = {{-11, -9, 21, 8}};
+static const int kAnim89FrameIndices[] = {165};
+static const int16 kAnim89FrameTicks[] = {6};
+static const BBRect kAnim89FrameRects[] = {{-9, -11, 18, 11}};
+static const int kAnim90FrameIndices[] = {166};
+static const int16 kAnim90FrameTicks[] = {6};
+static const BBRect kAnim90FrameRects[] = {{-3, -12, 7, 15}};
+static const int kAnim91FrameIndices[] = {167};
+static const int16 kAnim91FrameTicks[] = {6};
+static const BBRect kAnim91FrameRects[] = {{-8, -11, 17, 12}};
+static const int kAnim92FrameIndices[] = {168};
+static const int16 kAnim92FrameTicks[] = {6};
+static const BBRect kAnim92FrameRects[] = {{-9, -10, 21, 9}};
+static const int kAnim93FrameIndices[] = {169};
+static const int16 kAnim93FrameTicks[] = {6};
+static const BBRect kAnim93FrameRects[] = {{-6, -14, 14, 15}};
+static const int kAnim94FrameIndices[] = {138, 139, 140};
+static const int16 kAnim94FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim94FrameRects[] = {{-3, -17, 7, 20}, {-3, -16, 7, 19}, {-3, -16, 7, 19}};
+static const int kAnim95FrameIndices[] = {141, 142, 143};
+static const int16 kAnim95FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim95FrameRects[] = {{-6, -14, 13, 15}, {-7, -13, 14, 14}, {-6, -13, 13, 14}};
+static const int kAnim96FrameIndices[] = {144, 145, 146};
+static const int16 kAnim96FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim96FrameRects[] = {{-10, -10, 20, 9}, {-9, -9, 19, 8}, {-9, -9, 19, 8}};
+static const int kAnim97FrameIndices[] = {147, 148, 149};
+static const int16 kAnim97FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim97FrameRects[] = {{-7, -11, 16, 10}, {-7, -11, 16, 10}, {-7, -11, 16, 10}};
+static const int kAnim98FrameIndices[] = {150, 151, 152};
+static const int16 kAnim98FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim98FrameRects[] = {{-3, -13, 7, 16}, {-3, -13, 7, 16}, {-3, -12, 7, 15}};
+static const int kAnim99FrameIndices[] = {153, 154, 155};
+static const int16 kAnim99FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim99FrameRects[] = {{-8, -11, 18, 10}, {-7, -11, 16, 11}, {-7, -10, 17, 9}};
+static const int kAnim100FrameIndices[] = {156, 157, 158};
+static const int16 kAnim100FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim100FrameRects[] = {{-8, -9, 20, 7}, {-9, -9, 21, 8}, {-9, -9, 21, 8}};
+static const int kAnim101FrameIndices[] = {159, 160, 161};
+static const int16 kAnim101FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim101FrameRects[] = {{-6, -14, 15, 15}, {-5, -13, 12, 14}, {-6, -13, 14, 14}};
+static const int kAnim102FrameIndices[] = {170, 171, 172, 173, 174, 175, 174, 175, 174, 175, 174, 175, 174, 176};
+static const int16 kAnim102FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim102FrameRects[] = {{-7, -18, 15, 14}, {-6, -24, 11, 18}, {-6, -24, 9, 17}, {-5, -14, 16, 11}, {-7, -6, 18, 7}, {-8, -7, 19, 8}, {-7, -6, 18, 7}, {-8, -7, 19, 8}, {-7, -6, 18, 7}, {-8, -7, 19, 8}, {-7, -6, 18, 7}, {-8, -7, 19, 8}, {-7, -6, 18, 7}, {-8, -7, 19, 8}};
+static const int kAnim103FrameIndices[] = {177, 178, 179, 180, 181, 182, 181, 182, 181, 182, 181, 182, 181, 183};
+static const int16 kAnim103FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim103FrameRects[] = {{-9, -18, 16, 15}, {-6, -24, 12, 18}, {-6, -24, 13, 16}, {-12, -15, 17, 13}, {-10, -7, 19, 8}, {-11, -7, 21, 9}, {-10, -7, 19, 8}, {-11, -7, 21, 9}, {-10, -7, 19, 8}, {-11, -7, 21, 9}, {-10, -7, 19, 8}, {-11, -7, 21, 9}, {-10, -7, 19, 8}, {-11, -6, 21, 6}};
+static const int kAnim104FrameIndices[] = {184, 185, 186};
+static const int16 kAnim104FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim104FrameRects[] = {{-3, -17, 7, 20}, {-3, -16, 7, 19}, {-3, -16, 7, 19}};
+static const int kAnim105FrameIndices[] = {187, 188, 189};
+static const int16 kAnim105FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim105FrameRects[] = {{-6, -14, 13, 15}, {-7, -13, 14, 14}, {-6, -13, 13, 14}};
+static const int kAnim106FrameIndices[] = {190, 191, 192};
+static const int16 kAnim106FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim106FrameRects[] = {{-10, -10, 20, 9}, {-9, -9, 19, 8}, {-9, -9, 19, 8}};
+static const int kAnim107FrameIndices[] = {193, 194, 195};
+static const int16 kAnim107FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim107FrameRects[] = {{-7, -11, 16, 10}, {-7, -11, 16, 10}, {-7, -11, 16, 10}};
+static const int kAnim108FrameIndices[] = {196, 197, 198};
+static const int16 kAnim108FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim108FrameRects[] = {{-3, -13, 7, 16}, {-3, -13, 7, 16}, {-3, -12, 7, 15}};
+static const int kAnim109FrameIndices[] = {199, 200, 201};
+static const int16 kAnim109FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim109FrameRects[] = {{-8, -11, 18, 10}, {-7, -11, 16, 11}, {-7, -10, 17, 9}};
+static const int kAnim110FrameIndices[] = {202, 203, 204};
+static const int16 kAnim110FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim110FrameRects[] = {{-8, -9, 20, 7}, {-9, -9, 21, 8}, {-9, -9, 21, 8}};
+static const int kAnim111FrameIndices[] = {205, 206, 207};
+static const int16 kAnim111FrameTicks[] = {10, 8, 8};
+static const BBRect kAnim111FrameRects[] = {{-6, -14, 15, 15}, {-5, -13, 12, 14}, {-6, -13, 14, 14}};
+static const int kAnim112FrameIndices[] = {208};
+static const int16 kAnim112FrameTicks[] = {6};
+static const BBRect kAnim112FrameRects[] = {{-3, -15, 8, 18}};
+static const int kAnim113FrameIndices[] = {209};
+static const int16 kAnim113FrameTicks[] = {6};
+static const BBRect kAnim113FrameRects[] = {{-7, -13, 14, 14}};
+static const int kAnim114FrameIndices[] = {210};
+static const int16 kAnim114FrameTicks[] = {6};
+static const BBRect kAnim114FrameRects[] = {{-11, -9, 21, 8}};
+static const int kAnim115FrameIndices[] = {211};
+static const int16 kAnim115FrameTicks[] = {6};
+static const BBRect kAnim115FrameRects[] = {{-9, -11, 18, 11}};
+static const int kAnim116FrameIndices[] = {212};
+static const int16 kAnim116FrameTicks[] = {6};
+static const BBRect kAnim116FrameRects[] = {{-3, -12, 7, 15}};
+static const int kAnim117FrameIndices[] = {213};
+static const int16 kAnim117FrameTicks[] = {6};
+static const BBRect kAnim117FrameRects[] = {{-8, -11, 17, 12}};
+static const int kAnim118FrameIndices[] = {214};
+static const int16 kAnim118FrameTicks[] = {6};
+static const BBRect kAnim118FrameRects[] = {{-9, -10, 21, 9}};
+static const int kAnim119FrameIndices[] = {215};
+static const int16 kAnim119FrameTicks[] = {6};
+static const BBRect kAnim119FrameRects[] = {{-6, -14, 14, 15}};
+static const int kAnim120FrameIndices[] = {184, 185, 186};
+static const int16 kAnim120FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim120FrameRects[] = {{-3, -17, 7, 20}, {-3, -16, 7, 19}, {-3, -16, 7, 19}};
+static const int kAnim121FrameIndices[] = {187, 188, 189};
+static const int16 kAnim121FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim121FrameRects[] = {{-6, -14, 13, 15}, {-7, -13, 14, 14}, {-6, -13, 13, 14}};
+static const int kAnim122FrameIndices[] = {190, 191, 192};
+static const int16 kAnim122FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim122FrameRects[] = {{-10, -10, 20, 9}, {-9, -9, 19, 8}, {-9, -9, 19, 8}};
+static const int kAnim123FrameIndices[] = {193, 194, 195};
+static const int16 kAnim123FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim123FrameRects[] = {{-7, -11, 16, 10}, {-7, -11, 16, 10}, {-7, -11, 16, 10}};
+static const int kAnim124FrameIndices[] = {196, 197, 198};
+static const int16 kAnim124FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim124FrameRects[] = {{-3, -13, 7, 16}, {-3, -13, 7, 16}, {-3, -12, 7, 15}};
+static const int kAnim125FrameIndices[] = {199, 200, 201};
+static const int16 kAnim125FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim125FrameRects[] = {{-8, -11, 18, 10}, {-7, -11, 16, 11}, {-7, -10, 17, 9}};
+static const int kAnim126FrameIndices[] = {202, 203, 204};
+static const int16 kAnim126FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim126FrameRects[] = {{-8, -9, 20, 7}, {-9, -9, 21, 8}, {-9, -9, 21, 8}};
+static const int kAnim127FrameIndices[] = {205, 206, 207};
+static const int16 kAnim127FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim127FrameRects[] = {{-6, -14, 15, 15}, {-5, -13, 12, 14}, {-6, -13, 14, 14}};
+static const int kAnim128FrameIndices[] = {216, 217, 218, 219, 220, 221, 220, 221, 220, 221, 220, 221, 220, 222};
+static const int16 kAnim128FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim128FrameRects[] = {{-7, -18, 15, 14}, {-6, -24, 11, 18}, {-6, -24, 9, 17}, {-5, -14, 16, 11}, {-7, -6, 18, 7}, {-8, -7, 19, 8}, {-7, -6, 18, 7}, {-8, -7, 19, 8}, {-7, -6, 18, 7}, {-8, -7, 19, 8}, {-7, -6, 18, 7}, {-8, -7, 19, 8}, {-7, -6, 18, 7}, {-8, -7, 19, 8}};
+static const int kAnim129FrameIndices[] = {223, 224, 225, 226, 227, 228, 227, 228, 227, 228, 227, 228, 227, 229};
+static const int16 kAnim129FrameTicks[] = {6, 6, 6, 6, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim129FrameRects[] = {{-9, -18, 16, 15}, {-6, -24, 12, 18}, {-6, -24, 13, 16}, {-12, -15, 17, 13}, {-10, -7, 19, 8}, {-11, -7, 21, 9}, {-10, -7, 19, 8}, {-11, -7, 21, 9}, {-10, -7, 19, 8}, {-11, -7, 21, 9}, {-10, -7, 19, 8}, {-11, -7, 21, 9}, {-10, -7, 19, 8}, {-11, -6, 21, 6}};
+static const int kAnim130FrameIndices[] = {230};
+static const int16 kAnim130FrameTicks[] = {6};
+static const BBRect kAnim130FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim131FrameIndices[] = {231};
+static const int16 kAnim131FrameTicks[] = {6};
+static const BBRect kAnim131FrameRects[] = {{-8, -9, 16, 12}};
+static const int kAnim132FrameIndices[] = {231, 232, 233};
+static const int16 kAnim132FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim132FrameRects[] = {{-8, -9, 16, 12}, {-8, -11, 16, 12}, {-8, -13, 16, 12}};
+static const int kAnim133FrameIndices[] = {233};
+static const int16 kAnim133FrameTicks[] = {6};
+static const BBRect kAnim133FrameRects[] = {{-8, -13, 16, 12}};
+static const int kAnim134FrameIndices[] = {234};
+static const int16 kAnim134FrameTicks[] = {6};
+static const BBRect kAnim134FrameRects[] = {{-7, -6, 14, 10}};
+static const int kAnim135FrameIndices[] = {234, 235, 236};
+static const int16 kAnim135FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim135FrameRects[] = {{-7, -6, 14, 10}, {-7, -9, 14, 9}, {-7, -12, 14, 9}};
+static const int kAnim136FrameIndices[] = {236};
+static const int16 kAnim136FrameTicks[] = {6};
+static const BBRect kAnim136FrameRects[] = {{-7, -12, 14, 9}};
+static const int kAnim137FrameIndices[] = {237};
+static const int16 kAnim137FrameTicks[] = {6};
+static const BBRect kAnim137FrameRects[] = {{-7, -8, 16, 13}};
+static const int kAnim138FrameIndices[] = {237, 238, 239};
+static const int16 kAnim138FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim138FrameRects[] = {{-7, -8, 16, 13}, {-7, -11, 16, 12}, {-7, -14, 16, 13}};
+static const int kAnim139FrameIndices[] = {239};
+static const int16 kAnim139FrameTicks[] = {6};
+static const BBRect kAnim139FrameRects[] = {{-7, -14, 16, 13}};
+static const int kAnim140FrameIndices[] = {240};
+static const int16 kAnim140FrameTicks[] = {6};
+static const BBRect kAnim140FrameRects[] = {{-4, -4, 11, 7}};
+static const int kAnim141FrameIndices[] = {240, 241, 242};
+static const int16 kAnim141FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim141FrameRects[] = {{-4, -4, 11, 7}, {-5, -7, 12, 7}, {-5, -10, 12, 7}};
+static const int kAnim142FrameIndices[] = {242};
+static const int16 kAnim142FrameTicks[] = {6};
+static const BBRect kAnim142FrameRects[] = {{-5, -10, 12, 7}};
+static const int kAnim143FrameIndices[] = {243};
+static const int16 kAnim143FrameTicks[] = {6};
+static const BBRect kAnim143FrameRects[] = {{-5, -4, 12, 7}};
+static const int kAnim144FrameIndices[] = {243, 244, 245};
+static const int16 kAnim144FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim144FrameRects[] = {{-5, -4, 12, 7}, {-5, -7, 12, 7}, {-5, -10, 11, 7}};
+static const int kAnim145FrameIndices[] = {245};
+static const int16 kAnim145FrameTicks[] = {6};
+static const BBRect kAnim145FrameRects[] = {{-5, -10, 11, 7}};
+static const int kAnim146FrameIndices[] = {246};
+static const int16 kAnim146FrameTicks[] = {6};
+static const BBRect kAnim146FrameRects[] = {{-9, -11, 19, 15}};
+static const int kAnim147FrameIndices[] = {246, 247, 248};
+static const int16 kAnim147FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim147FrameRects[] = {{-9, -11, 19, 15}, {-9, -13, 19, 14}, {-9, -17, 19, 15}};
+static const int kAnim148FrameIndices[] = {248};
+static const int16 kAnim148FrameTicks[] = {6};
+static const BBRect kAnim148FrameRects[] = {{-9, -17, 19, 15}};
+static const int kAnim149FrameIndices[] = {249};
+static const int16 kAnim149FrameTicks[] = {6};
+static const BBRect kAnim149FrameRects[] = {{-9, -12, 22, 17}};
+static const int kAnim150FrameIndices[] = {249, 250, 251};
+static const int16 kAnim150FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim150FrameRects[] = {{-9, -12, 22, 17}, {-9, -15, 22, 17}, {-9, -18, 22, 17}};
+static const int kAnim151FrameIndices[] = {251};
+static const int16 kAnim151FrameTicks[] = {6};
+static const BBRect kAnim151FrameRects[] = {{-9, -18, 22, 17}};
+static const int kAnim152FrameIndices[] = {252};
+static const int16 kAnim152FrameTicks[] = {6};
+static const BBRect kAnim152FrameRects[] = {{-8, -5, 18, 9}};
+static const int kAnim153FrameIndices[] = {252, 253, 254};
+static const int16 kAnim153FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim153FrameRects[] = {{-8, -5, 18, 9}, {-7, -9, 17, 9}, {-8, -11, 19, 9}};
+static const int kAnim154FrameIndices[] = {254};
+static const int16 kAnim154FrameTicks[] = {6};
+static const BBRect kAnim154FrameRects[] = {{-8, -11, 19, 9}};
+static const int kAnim155FrameIndices[] = {255};
+static const int16 kAnim155FrameTicks[] = {6};
+static const BBRect kAnim155FrameRects[] = {{-8, -9, 18, 13}};
+static const int kAnim156FrameIndices[] = {255, 256, 257};
+static const int16 kAnim156FrameTicks[] = {6, 6, 6};
+static const BBRect kAnim156FrameRects[] = {{-8, -9, 18, 13}, {-8, -12, 18, 13}, {-7, -15, 17, 13}};
+static const int kAnim157FrameIndices[] = {257};
+static const int16 kAnim157FrameTicks[] = {6};
+static const BBRect kAnim157FrameRects[] = {{-7, -15, 17, 13}};
+static const int kAnim158FrameIndices[] = {258, 259, 260, 261, 262, 263};
+static const int16 kAnim158FrameTicks[] = {6, 8, 8, 8, 6, 6};
+static const BBRect kAnim158FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim159FrameIndices[] = {264, 265, 266};
+static const int16 kAnim159FrameTicks[] = {1, 1, 1};
+static const BBRect kAnim159FrameRects[] = {{-9, -8, 18, 16}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim160FrameIndices[] = {267};
+static const int16 kAnim160FrameTicks[] = {6};
+static const BBRect kAnim160FrameRects[] = {{-25, -83, 43, 54}};
+static const int kAnim161FrameIndices[] = {268};
+static const int16 kAnim161FrameTicks[] = {6};
+static const BBRect kAnim161FrameRects[] = {{-33, -93, 41, 60}};
+static const int kAnim162FrameIndices[] = {269};
+static const int16 kAnim162FrameTicks[] = {1};
+static const BBRect kAnim162FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim163FrameIndices[] = {270};
+static const int16 kAnim163FrameTicks[] = {5};
+static const BBRect kAnim163FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim164FrameIndices[] = {271};
+static const int16 kAnim164FrameTicks[] = {1};
+static const BBRect kAnim164FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim165FrameIndices[] = {272};
+static const int16 kAnim165FrameTicks[] = {1};
+static const BBRect kAnim165FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim166FrameIndices[] = {273};
+static const int16 kAnim166FrameTicks[] = {2};
+static const BBRect kAnim166FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim167FrameIndices[] = {274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286};
+static const int16 kAnim167FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim167FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim168FrameIndices[] = {287};
+static const int16 kAnim168FrameTicks[] = {1};
+static const BBRect kAnim168FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim169FrameIndices[] = {288};
+static const int16 kAnim169FrameTicks[] = {6};
+static const BBRect kAnim169FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim170FrameIndices[] = {289, 290, 291, 292, 293, 294};
+static const int16 kAnim170FrameTicks[] = {6, 6, 6, 6, 6, 6};
+static const BBRect kAnim170FrameRects[] = {{-22, -91, 45, 93}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}};
+static const int kAnim171FrameIndices[] = {295, 296, 297, 298, 299, 300};
+static const int16 kAnim171FrameTicks[] = {6, 6, 6, 6, 6, 6};
+static const BBRect kAnim171FrameRects[] = {{-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}};
+static const int kAnim172FrameIndices[] = {301, 302};
+static const int16 kAnim172FrameTicks[] = {6, 6};
+static const BBRect kAnim172FrameRects[] = {{-9, -9, 17, 15}, {-11, -10, 19, 16}};
+static const ObjAnimation kAnimations[] = {
+ {3, kAnim0FrameIndices, kAnim0FrameTicks, kAnim0FrameRects},
+ {3, kAnim1FrameIndices, kAnim1FrameTicks, kAnim1FrameRects},
+ {3, kAnim2FrameIndices, kAnim2FrameTicks, kAnim2FrameRects},
+ {3, kAnim3FrameIndices, kAnim3FrameTicks, kAnim3FrameRects},
+ {3, kAnim4FrameIndices, kAnim4FrameTicks, kAnim4FrameRects},
+ {3, kAnim5FrameIndices, kAnim5FrameTicks, kAnim5FrameRects},
+ {3, kAnim6FrameIndices, kAnim6FrameTicks, kAnim6FrameRects},
+ {3, kAnim7FrameIndices, kAnim7FrameTicks, kAnim7FrameRects},
+ {1, kAnim8FrameIndices, kAnim8FrameTicks, kAnim8FrameRects},
+ {1, kAnim9FrameIndices, kAnim9FrameTicks, kAnim9FrameRects},
+ {1, kAnim10FrameIndices, kAnim10FrameTicks, kAnim10FrameRects},
+ {1, kAnim11FrameIndices, kAnim11FrameTicks, kAnim11FrameRects},
+ {1, kAnim12FrameIndices, kAnim12FrameTicks, kAnim12FrameRects},
+ {1, kAnim13FrameIndices, kAnim13FrameTicks, kAnim13FrameRects},
+ {1, kAnim14FrameIndices, kAnim14FrameTicks, kAnim14FrameRects},
+ {1, kAnim15FrameIndices, kAnim15FrameTicks, kAnim15FrameRects},
+ {3, kAnim16FrameIndices, kAnim16FrameTicks, kAnim16FrameRects},
+ {3, kAnim17FrameIndices, kAnim17FrameTicks, kAnim17FrameRects},
+ {3, kAnim18FrameIndices, kAnim18FrameTicks, kAnim18FrameRects},
+ {3, kAnim19FrameIndices, kAnim19FrameTicks, kAnim19FrameRects},
+ {3, kAnim20FrameIndices, kAnim20FrameTicks, kAnim20FrameRects},
+ {3, kAnim21FrameIndices, kAnim21FrameTicks, kAnim21FrameRects},
+ {3, kAnim22FrameIndices, kAnim22FrameTicks, kAnim22FrameRects},
+ {3, kAnim23FrameIndices, kAnim23FrameTicks, kAnim23FrameRects},
+ {14, kAnim24FrameIndices, kAnim24FrameTicks, kAnim24FrameRects},
+ {14, kAnim25FrameIndices, kAnim25FrameTicks, kAnim25FrameRects},
+ {3, kAnim26FrameIndices, kAnim26FrameTicks, kAnim26FrameRects},
+ {3, kAnim27FrameIndices, kAnim27FrameTicks, kAnim27FrameRects},
+ {3, kAnim28FrameIndices, kAnim28FrameTicks, kAnim28FrameRects},
+ {3, kAnim29FrameIndices, kAnim29FrameTicks, kAnim29FrameRects},
+ {3, kAnim30FrameIndices, kAnim30FrameTicks, kAnim30FrameRects},
+ {3, kAnim31FrameIndices, kAnim31FrameTicks, kAnim31FrameRects},
+ {3, kAnim32FrameIndices, kAnim32FrameTicks, kAnim32FrameRects},
+ {3, kAnim33FrameIndices, kAnim33FrameTicks, kAnim33FrameRects},
+ {1, kAnim34FrameIndices, kAnim34FrameTicks, kAnim34FrameRects},
+ {1, kAnim35FrameIndices, kAnim35FrameTicks, kAnim35FrameRects},
+ {1, kAnim36FrameIndices, kAnim36FrameTicks, kAnim36FrameRects},
+ {1, kAnim37FrameIndices, kAnim37FrameTicks, kAnim37FrameRects},
+ {1, kAnim38FrameIndices, kAnim38FrameTicks, kAnim38FrameRects},
+ {1, kAnim39FrameIndices, kAnim39FrameTicks, kAnim39FrameRects},
+ {1, kAnim40FrameIndices, kAnim40FrameTicks, kAnim40FrameRects},
+ {1, kAnim41FrameIndices, kAnim41FrameTicks, kAnim41FrameRects},
+ {3, kAnim42FrameIndices, kAnim42FrameTicks, kAnim42FrameRects},
+ {3, kAnim43FrameIndices, kAnim43FrameTicks, kAnim43FrameRects},
+ {3, kAnim44FrameIndices, kAnim44FrameTicks, kAnim44FrameRects},
+ {3, kAnim45FrameIndices, kAnim45FrameTicks, kAnim45FrameRects},
+ {3, kAnim46FrameIndices, kAnim46FrameTicks, kAnim46FrameRects},
+ {3, kAnim47FrameIndices, kAnim47FrameTicks, kAnim47FrameRects},
+ {3, kAnim48FrameIndices, kAnim48FrameTicks, kAnim48FrameRects},
+ {3, kAnim49FrameIndices, kAnim49FrameTicks, kAnim49FrameRects},
+ {14, kAnim50FrameIndices, kAnim50FrameTicks, kAnim50FrameRects},
+ {14, kAnim51FrameIndices, kAnim51FrameTicks, kAnim51FrameRects},
+ {3, kAnim52FrameIndices, kAnim52FrameTicks, kAnim52FrameRects},
+ {3, kAnim53FrameIndices, kAnim53FrameTicks, kAnim53FrameRects},
+ {3, kAnim54FrameIndices, kAnim54FrameTicks, kAnim54FrameRects},
+ {3, kAnim55FrameIndices, kAnim55FrameTicks, kAnim55FrameRects},
+ {3, kAnim56FrameIndices, kAnim56FrameTicks, kAnim56FrameRects},
+ {3, kAnim57FrameIndices, kAnim57FrameTicks, kAnim57FrameRects},
+ {3, kAnim58FrameIndices, kAnim58FrameTicks, kAnim58FrameRects},
+ {3, kAnim59FrameIndices, kAnim59FrameTicks, kAnim59FrameRects},
+ {1, kAnim60FrameIndices, kAnim60FrameTicks, kAnim60FrameRects},
+ {1, kAnim61FrameIndices, kAnim61FrameTicks, kAnim61FrameRects},
+ {1, kAnim62FrameIndices, kAnim62FrameTicks, kAnim62FrameRects},
+ {1, kAnim63FrameIndices, kAnim63FrameTicks, kAnim63FrameRects},
+ {1, kAnim64FrameIndices, kAnim64FrameTicks, kAnim64FrameRects},
+ {1, kAnim65FrameIndices, kAnim65FrameTicks, kAnim65FrameRects},
+ {1, kAnim66FrameIndices, kAnim66FrameTicks, kAnim66FrameRects},
+ {1, kAnim67FrameIndices, kAnim67FrameTicks, kAnim67FrameRects},
+ {3, kAnim68FrameIndices, kAnim68FrameTicks, kAnim68FrameRects},
+ {3, kAnim69FrameIndices, kAnim69FrameTicks, kAnim69FrameRects},
+ {3, kAnim70FrameIndices, kAnim70FrameTicks, kAnim70FrameRects},
+ {3, kAnim71FrameIndices, kAnim71FrameTicks, kAnim71FrameRects},
+ {3, kAnim72FrameIndices, kAnim72FrameTicks, kAnim72FrameRects},
+ {3, kAnim73FrameIndices, kAnim73FrameTicks, kAnim73FrameRects},
+ {3, kAnim74FrameIndices, kAnim74FrameTicks, kAnim74FrameRects},
+ {3, kAnim75FrameIndices, kAnim75FrameTicks, kAnim75FrameRects},
+ {14, kAnim76FrameIndices, kAnim76FrameTicks, kAnim76FrameRects},
+ {14, kAnim77FrameIndices, kAnim77FrameTicks, kAnim77FrameRects},
+ {3, kAnim78FrameIndices, kAnim78FrameTicks, kAnim78FrameRects},
+ {3, kAnim79FrameIndices, kAnim79FrameTicks, kAnim79FrameRects},
+ {3, kAnim80FrameIndices, kAnim80FrameTicks, kAnim80FrameRects},
+ {3, kAnim81FrameIndices, kAnim81FrameTicks, kAnim81FrameRects},
+ {3, kAnim82FrameIndices, kAnim82FrameTicks, kAnim82FrameRects},
+ {3, kAnim83FrameIndices, kAnim83FrameTicks, kAnim83FrameRects},
+ {3, kAnim84FrameIndices, kAnim84FrameTicks, kAnim84FrameRects},
+ {3, kAnim85FrameIndices, kAnim85FrameTicks, kAnim85FrameRects},
+ {1, kAnim86FrameIndices, kAnim86FrameTicks, kAnim86FrameRects},
+ {1, kAnim87FrameIndices, kAnim87FrameTicks, kAnim87FrameRects},
+ {1, kAnim88FrameIndices, kAnim88FrameTicks, kAnim88FrameRects},
+ {1, kAnim89FrameIndices, kAnim89FrameTicks, kAnim89FrameRects},
+ {1, kAnim90FrameIndices, kAnim90FrameTicks, kAnim90FrameRects},
+ {1, kAnim91FrameIndices, kAnim91FrameTicks, kAnim91FrameRects},
+ {1, kAnim92FrameIndices, kAnim92FrameTicks, kAnim92FrameRects},
+ {1, kAnim93FrameIndices, kAnim93FrameTicks, kAnim93FrameRects},
+ {3, kAnim94FrameIndices, kAnim94FrameTicks, kAnim94FrameRects},
+ {3, kAnim95FrameIndices, kAnim95FrameTicks, kAnim95FrameRects},
+ {3, kAnim96FrameIndices, kAnim96FrameTicks, kAnim96FrameRects},
+ {3, kAnim97FrameIndices, kAnim97FrameTicks, kAnim97FrameRects},
+ {3, kAnim98FrameIndices, kAnim98FrameTicks, kAnim98FrameRects},
+ {3, kAnim99FrameIndices, kAnim99FrameTicks, kAnim99FrameRects},
+ {3, kAnim100FrameIndices, kAnim100FrameTicks, kAnim100FrameRects},
+ {3, kAnim101FrameIndices, kAnim101FrameTicks, kAnim101FrameRects},
+ {14, kAnim102FrameIndices, kAnim102FrameTicks, kAnim102FrameRects},
+ {14, kAnim103FrameIndices, kAnim103FrameTicks, kAnim103FrameRects},
+ {3, kAnim104FrameIndices, kAnim104FrameTicks, kAnim104FrameRects},
+ {3, kAnim105FrameIndices, kAnim105FrameTicks, kAnim105FrameRects},
+ {3, kAnim106FrameIndices, kAnim106FrameTicks, kAnim106FrameRects},
+ {3, kAnim107FrameIndices, kAnim107FrameTicks, kAnim107FrameRects},
+ {3, kAnim108FrameIndices, kAnim108FrameTicks, kAnim108FrameRects},
+ {3, kAnim109FrameIndices, kAnim109FrameTicks, kAnim109FrameRects},
+ {3, kAnim110FrameIndices, kAnim110FrameTicks, kAnim110FrameRects},
+ {3, kAnim111FrameIndices, kAnim111FrameTicks, kAnim111FrameRects},
+ {1, kAnim112FrameIndices, kAnim112FrameTicks, kAnim112FrameRects},
+ {1, kAnim113FrameIndices, kAnim113FrameTicks, kAnim113FrameRects},
+ {1, kAnim114FrameIndices, kAnim114FrameTicks, kAnim114FrameRects},
+ {1, kAnim115FrameIndices, kAnim115FrameTicks, kAnim115FrameRects},
+ {1, kAnim116FrameIndices, kAnim116FrameTicks, kAnim116FrameRects},
+ {1, kAnim117FrameIndices, kAnim117FrameTicks, kAnim117FrameRects},
+ {1, kAnim118FrameIndices, kAnim118FrameTicks, kAnim118FrameRects},
+ {1, kAnim119FrameIndices, kAnim119FrameTicks, kAnim119FrameRects},
+ {3, kAnim120FrameIndices, kAnim120FrameTicks, kAnim120FrameRects},
+ {3, kAnim121FrameIndices, kAnim121FrameTicks, kAnim121FrameRects},
+ {3, kAnim122FrameIndices, kAnim122FrameTicks, kAnim122FrameRects},
+ {3, kAnim123FrameIndices, kAnim123FrameTicks, kAnim123FrameRects},
+ {3, kAnim124FrameIndices, kAnim124FrameTicks, kAnim124FrameRects},
+ {3, kAnim125FrameIndices, kAnim125FrameTicks, kAnim125FrameRects},
+ {3, kAnim126FrameIndices, kAnim126FrameTicks, kAnim126FrameRects},
+ {3, kAnim127FrameIndices, kAnim127FrameTicks, kAnim127FrameRects},
+ {14, kAnim128FrameIndices, kAnim128FrameTicks, kAnim128FrameRects},
+ {14, kAnim129FrameIndices, kAnim129FrameTicks, kAnim129FrameRects},
+ {1, kAnim130FrameIndices, kAnim130FrameTicks, kAnim130FrameRects},
+ {1, kAnim131FrameIndices, kAnim131FrameTicks, kAnim131FrameRects},
+ {3, kAnim132FrameIndices, kAnim132FrameTicks, kAnim132FrameRects},
+ {1, kAnim133FrameIndices, kAnim133FrameTicks, kAnim133FrameRects},
+ {1, kAnim134FrameIndices, kAnim134FrameTicks, kAnim134FrameRects},
+ {3, kAnim135FrameIndices, kAnim135FrameTicks, kAnim135FrameRects},
+ {1, kAnim136FrameIndices, kAnim136FrameTicks, kAnim136FrameRects},
+ {1, kAnim137FrameIndices, kAnim137FrameTicks, kAnim137FrameRects},
+ {3, kAnim138FrameIndices, kAnim138FrameTicks, kAnim138FrameRects},
+ {1, kAnim139FrameIndices, kAnim139FrameTicks, kAnim139FrameRects},
+ {1, kAnim140FrameIndices, kAnim140FrameTicks, kAnim140FrameRects},
+ {3, kAnim141FrameIndices, kAnim141FrameTicks, kAnim141FrameRects},
+ {1, kAnim142FrameIndices, kAnim142FrameTicks, kAnim142FrameRects},
+ {1, kAnim143FrameIndices, kAnim143FrameTicks, kAnim143FrameRects},
+ {3, kAnim144FrameIndices, kAnim144FrameTicks, kAnim144FrameRects},
+ {1, kAnim145FrameIndices, kAnim145FrameTicks, kAnim145FrameRects},
+ {1, kAnim146FrameIndices, kAnim146FrameTicks, kAnim146FrameRects},
+ {3, kAnim147FrameIndices, kAnim147FrameTicks, kAnim147FrameRects},
+ {1, kAnim148FrameIndices, kAnim148FrameTicks, kAnim148FrameRects},
+ {1, kAnim149FrameIndices, kAnim149FrameTicks, kAnim149FrameRects},
+ {3, kAnim150FrameIndices, kAnim150FrameTicks, kAnim150FrameRects},
+ {1, kAnim151FrameIndices, kAnim151FrameTicks, kAnim151FrameRects},
+ {1, kAnim152FrameIndices, kAnim152FrameTicks, kAnim152FrameRects},
+ {3, kAnim153FrameIndices, kAnim153FrameTicks, kAnim153FrameRects},
+ {1, kAnim154FrameIndices, kAnim154FrameTicks, kAnim154FrameRects},
+ {1, kAnim155FrameIndices, kAnim155FrameTicks, kAnim155FrameRects},
+ {3, kAnim156FrameIndices, kAnim156FrameTicks, kAnim156FrameRects},
+ {1, kAnim157FrameIndices, kAnim157FrameTicks, kAnim157FrameRects},
+ {6, kAnim158FrameIndices, kAnim158FrameTicks, kAnim158FrameRects},
+ {3, kAnim159FrameIndices, kAnim159FrameTicks, kAnim159FrameRects},
+ {1, kAnim160FrameIndices, kAnim160FrameTicks, kAnim160FrameRects},
+ {1, kAnim161FrameIndices, kAnim161FrameTicks, kAnim161FrameRects},
+ {1, kAnim162FrameIndices, kAnim162FrameTicks, kAnim162FrameRects},
+ {1, kAnim163FrameIndices, kAnim163FrameTicks, kAnim163FrameRects},
+ {1, kAnim164FrameIndices, kAnim164FrameTicks, kAnim164FrameRects},
+ {1, kAnim165FrameIndices, kAnim165FrameTicks, kAnim165FrameRects},
+ {1, kAnim166FrameIndices, kAnim166FrameTicks, kAnim166FrameRects},
+ {13, kAnim167FrameIndices, kAnim167FrameTicks, kAnim167FrameRects},
+ {1, kAnim168FrameIndices, kAnim168FrameTicks, kAnim168FrameRects},
+ {1, kAnim169FrameIndices, kAnim169FrameTicks, kAnim169FrameRects},
+ {6, kAnim170FrameIndices, kAnim170FrameTicks, kAnim170FrameRects},
+ {6, kAnim171FrameIndices, kAnim171FrameTicks, kAnim171FrameRects},
+ {2, kAnim172FrameIndices, kAnim172FrameTicks, kAnim172FrameRects}
+};
+
+static const MinigameBbAnt::ObjInit kObjInits[] = {
+ {&kAnimations[131], &kAnimations[132], &kAnimations[133], 160, 120},
+ {&kAnimations[134], &kAnimations[135], &kAnimations[136], 155, 130},
+ {&kAnimations[137], &kAnimations[138], &kAnimations[139], 150, 100},
+ {&kAnimations[140], &kAnimations[141], &kAnimations[142], 195, 150},
+ {&kAnimations[143], &kAnimations[144], &kAnimations[145], 120, 110},
+ {&kAnimations[146], &kAnimations[147], &kAnimations[148], 170, 170},
+ {&kAnimations[149], &kAnimations[150], &kAnimations[151], 175, 95},
+ {&kAnimations[152], &kAnimations[153], &kAnimations[154], 145, 165},
+ {&kAnimations[155], &kAnimations[156], &kAnimations[157], 110, 175}
+};
+static const ObjAnimation * const kAnimationsTbl[] = {&kAnimations[0], &kAnimations[1], &kAnimations[2], &kAnimations[3], &kAnimations[4], &kAnimations[5], &kAnimations[6], &kAnimations[7], &kAnimations[16], &kAnimations[17], &kAnimations[18], &kAnimations[19], &kAnimations[20], &kAnimations[21], &kAnimations[22], &kAnimations[23], &kAnimations[24], &kAnimations[25], &kAnimations[26], &kAnimations[27], &kAnimations[28], &kAnimations[29], &kAnimations[30], &kAnimations[31], &kAnimations[32], &kAnimations[33], &kAnimations[42], &kAnimations[43], &kAnimations[44], &kAnimations[45], &kAnimations[46], &kAnimations[47], &kAnimations[48], &kAnimations[49], &kAnimations[50], &kAnimations[51], &kAnimations[52], &kAnimations[53], &kAnimations[54], &kAnimations[55], &kAnimations[56], &kAnimations[57], &kAnimations[58], &kAnimations[59], &kAnimations[68], &kAnimations[69], &kAnimations[70], &kAnimations[71], &kAnimations[72], &kAnimations[73], &kAnimations[74], &kAnimations[75], &kAnimations[76], &kAnimations[77], &kAnimations[78], &kAnimations[79], &kAnimations[80], &kAnimations[81], &kAnimations[82], &kAnimations[83], &kAnimations[84], &kAnimations[85], &kAnimations[94], &kAnimations[95], &kAnimations[96], &kAnimations[97], &kAnimations[98], &kAnimations[99], &kAnimations[100], &kAnimations[101], &kAnimations[102], &kAnimations[103], &kAnimations[104], &kAnimations[105], &kAnimations[106], &kAnimations[107], &kAnimations[108], &kAnimations[109], &kAnimations[110], &kAnimations[111], &kAnimations[120], &kAnimations[121], &kAnimations[122], &kAnimations[123], &kAnimations[124], &kAnimations[125], &kAnimations[126], &kAnimations[127], &kAnimations[128], &kAnimations[129]};
+
+static const ObjAnimation * const * const kObjKindAnimTables[] = {
+ 0, &kAnimationsTbl[0],
+ &kAnimationsTbl[18], &kAnimationsTbl[36],
+ &kAnimationsTbl[54], &kAnimationsTbl[72]
+};
+
+const ObjAnimation *MinigameBbAnt::getAnimation(int animIndex) {
+ return &kAnimations[animIndex];
+}
+
+const MinigameBbAnt::ObjInit *MinigameBbAnt::getObjInit(int index) {
+ return &kObjInits[index];
+}
+
+const ObjAnimation * const *MinigameBbAnt::getObjKindAnimTable(int kind) {
+ return kObjKindAnimTables[kind];
+}
+
+const ObjAnimation *MinigameBbAnt::getObjAnim(int index) {
+ return kAnimationsTbl[index];
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/bbloogie.cpp b/engines/bbvs/minigames/bbloogie.cpp
new file mode 100644
index 0000000000..4601e9ff93
--- /dev/null
+++ b/engines/bbvs/minigames/bbloogie.cpp
@@ -0,0 +1,1353 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/minigames/bbloogie.h"
+
+namespace Bbvs {
+
+static const int kLoogieOffY[16] = {
+ 0, 1, 1, 2, 2, 3, 3, 4,
+ 4, 5, 5, 6, 6, 7, 7, 0
+};
+
+static const int kSquirrelOffX[] = {
+ -43, -43, -38, -33, -33, -27, -23, -23,
+ -23, -23, -23, -23, -18, -14, -8, -4,
+ 2, 8, 12, 18, 20, 20, 26, 31,
+ 37, 37, 37, 37, 37, 37, 37, 32,
+ 29, 26, 21, 14, 10, 6, 6, 6,
+ 6, 6, 6, 6, 0, -6, -15, -20,
+ -27, -37, -41, -41, -41, -41
+};
+
+static const int kPlaneOffX[] = {
+ 0, -1, -1, -1, 0, 1, 1, 1
+};
+
+static const int kPlaneOffY[] = {
+ -1, -1, 0, 1, 1, 1, 0, -1
+};
+
+static const int kLevelScores[] = {
+ 20, 50, 90, 140, 200, 270, 350, 440, 540, 10000
+};
+
+static const int kLevelTimes[] = {
+ 120, 110, 100, 90, 80, 70, 60, 50, 40, 30
+};
+
+static const uint kBeavisSounds1[] = {
+ 14, 15, 19, 20, 22, 23, 24, 26
+};
+
+static const uint kButtheadSounds1[] = {
+ 16, 14, 15, 22, 23
+};
+
+static const uint kBeavisSounds2[] = {
+ 9, 3, 4, 5, 7, 14, 15, 19, 20, 22, 23, 24, 26
+};
+
+static const uint kButtheadSounds2[] = {
+ 9, 3, 4, 5, 7, 16, 14, 15, 22, 23
+};
+
+static const uint kPrincipalSounds[] = {
+ 3, 4, 5, 7
+};
+
+static const char * const kSoundFilenames[] = {
+ "loog1.aif", "loog2.aif", "loog3.aif", "loog4.aif", "loog5.aif",
+ "loog6.aif", "loog7.aif", "loog8.aif", "loog9.aif", "loog10.aif",
+ "loog11.aif", "loog12.aif", "loog13.aif", "loog14.aif", "loog15.aif",
+ "loog16.aif", "loog17.aif", "loog18.aif", "loog19.aif", "loog20.aif",
+ "loog21.aif", "loog22.aif", "loog23.aif", "loog24.aif", "loog25.aif",
+ "loog26.aif", "loog27.aif", "meghoker.aif", "spit1.aif", "megaloog.aif",
+ "megaspit.aif", "gamemuse.aif", "bing.aif", "carhit.aif", "bikehit.aif",
+ "squirhit.aif", "planehit.aif", "bing2.aif"
+};
+
+static const uint kSoundFilenamesCount = ARRAYSIZE(kSoundFilenames);
+
+void MinigameBbLoogie::buildDrawList(DrawList &drawList) {
+ switch (_gameState) {
+ case kGSTitleScreen:
+ buildDrawList0(drawList);
+ break;
+ case kGSMainGame:
+ buildDrawList1(drawList);
+ break;
+ case kGSStandaloneGame:
+ buildDrawList2(drawList);
+ break;
+ case kGSScoreCountUp:
+ buildDrawList3(drawList);
+ break;
+ }
+}
+
+void MinigameBbLoogie::buildDrawList0(DrawList &drawList) {
+ drawList.add(_objects[0].anim->frameIndices[_objects[0].frameIndex], _objects[0].x, _objects[0].y, 2000);
+ for (int i = 1; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind != 0)
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, obj->y + 16);
+ }
+ if (_titleScreenSpriteIndex)
+ drawList.add(_titleScreenSpriteIndex, 0, 0, 0);
+}
+
+void MinigameBbLoogie::buildDrawList1(DrawList &drawList) {
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ switch (obj->kind) {
+ case 0:
+ // Empty object
+ break;
+ case 2:
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, 400);
+ break;
+ case 3:
+ drawList.add(obj->anim->frameIndices[obj->frameIndex + obj->frameIndexAdd], obj->x, obj->y, 1000);
+ break;
+ case 7:
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, 390);
+ break;
+ case 8:
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, 1000);
+ break;
+ default:
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, obj->y + 16);
+ break;
+ }
+ }
+
+ if (_backgroundSpriteIndex)
+ drawList.add(_backgroundSpriteIndex, 0, 0, 0);
+
+ if (_fromMainGame) {
+ drawList.add(getAnimation(8)->frameIndices[0], 8, 2, 2000);
+ drawNumber(drawList, _numberOfHits, 56, 16);
+ } else {
+ drawList.add(getAnimation(10)->frameIndices[0], 230, 2, 2000);
+ drawNumber(drawList, _levelTimeLeft, 280, 16);
+ drawList.add(getAnimation(15)->frameIndices[0], 5, 2, 2000);
+ int numberX2 = drawNumber(drawList, _currScore, 68, 16);
+ drawList.add(getAnimation(9)->frameIndices[10], numberX2, 16, 2000);
+ drawNumber(drawList, _dispLevelScore, numberX2 + 10, 16);
+ }
+
+ for (int i = 0; i < _megaLoogieCount; ++i)
+ drawList.add(getAnimation(19)->frameIndices[0], 20 + i * 25, 236, 2000);
+
+}
+
+void MinigameBbLoogie::buildDrawList2(DrawList &drawList) {
+
+ buildDrawList1(drawList);
+
+ if (_level > 0 && (_bonusDisplayDelay1 > 0 || _bonusDisplayDelay2 > 0)) {
+ drawList.add(getAnimation(12)->frameIndices[0], 100, 80, 2000);
+ drawNumber(drawList, _timeBonusCtr, 212, 94);
+ }
+
+ if (_bonusDisplayDelay3 > 0) {
+ drawList.add(getAnimation(14)->frameIndices[0], 65, 80, 2000);
+ int numberX2 = drawNumber(drawList, _nextLevelScore, 170, 92);
+ drawList.add(getAnimation(11)->frameIndices[0], numberX2, 80, 2000);
+ }
+
+}
+
+void MinigameBbLoogie::buildDrawList3(DrawList &drawList) {
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind == 2)
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, 400);
+ else
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, obj->y + 16);
+ }
+
+ if (_backgroundSpriteIndex)
+ drawList.add(_backgroundSpriteIndex, 0, 0, 0);
+
+ drawList.add(getAnimation(10)->frameIndices[0], 230, 2, 2000);
+
+ drawNumber(drawList, _levelTimeLeft, 280, 16);
+
+ drawList.add(getAnimation(15)->frameIndices[0], 5, 2, 2000);
+
+ int numberX2 = drawNumber(drawList, _currScore, 68, 16);
+ drawList.add(getAnimation(9)->frameIndices[10], numberX2, 16, 2000);
+ drawNumber(drawList, _dispLevelScore, numberX2 + 10, 16);
+
+ drawList.add(getAnimation(20)->frameIndices[0], 120, 70, 2000);
+ drawList.add(getAnimation(13)->frameIndices[0], 95, 95, 2000);
+
+ drawNumber(drawList, _hiScore, 210, 109);
+
+}
+
+void MinigameBbLoogie::drawSprites() {
+ DrawList drawList;
+ buildDrawList(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ _vm->_screen->copyToScreen();
+}
+
+void MinigameBbLoogie::initObjs() {
+ for (int i = 0; i < kMaxObjectsCount; ++i)
+ _objects[i].kind = 0;
+}
+
+MinigameBbLoogie::Obj *MinigameBbLoogie::getFreeObject() {
+ for (int i = 0; i < kMaxObjectsCount; ++i)
+ if (_objects[i].kind == 0)
+ return &_objects[i];
+ return 0;
+}
+
+MinigameBbLoogie::Obj *MinigameBbLoogie::findLoogieObj(int startObjIndex) {
+ for (int i = startObjIndex; i < kMaxObjectsCount; ++i)
+ if (_objects[i].kind == 3)
+ return &_objects[i];
+ return 0;
+}
+
+bool MinigameBbLoogie::isHit(Obj *obj1, Obj *obj2) {
+ const BBRect &frameRect1 = obj1->anim->frameRects[obj1->frameIndex];
+ const BBRect &frameRect2 = obj2->anim->frameRects[obj2->frameIndex];
+ const int obj1X1 = obj1->x + frameRect1.x;
+ const int obj1Y1 = obj1->y + frameRect1.y;
+ const int obj1X2 = obj1X1 + frameRect1.width;
+ const int obj1Y2 = obj1Y1 + frameRect1.height;
+ const int obj2X1 = obj2->x + frameRect2.x;
+ const int obj2Y1 = obj2->y + frameRect2.y;
+ const int obj2X2 = obj2X1 + frameRect2.width;
+ const int obj2Y2 = obj2Y1 + frameRect2.height;
+ return obj1X1 <= obj2X2 && obj1X2 >= obj2X1 && obj1Y1 <= obj2Y2 && obj1Y2 >= obj2Y1;
+}
+
+bool MinigameBbLoogie::isCursorAtObj(int objIndex) {
+ return isHit(&_objects[0], &_objects[objIndex]);
+}
+
+void MinigameBbLoogie::initObjects() {
+ switch (_gameState) {
+ case kGSTitleScreen:
+ initObjects0();
+ break;
+ case kGSMainGame:
+ initObjects1();
+ break;
+ case kGSStandaloneGame:
+ // Nothing
+ break;
+ case kGSScoreCountUp:
+ initObjects3();
+ break;
+ }
+}
+
+void MinigameBbLoogie::initObjects0() {
+ initObjs();
+ _objects[0].anim = getAnimation(25);
+ _objects[0].frameIndex = 0;
+ _objects[0].ticks = getAnimation(25)->frameTicks[0];
+ _objects[0].x = 160;
+ _objects[0].y = 120;
+ _objects[0].kind = 1;
+ _objects[1].anim = getAnimation(21);
+ _objects[1].frameIndex = 0;
+ _objects[1].ticks = getAnimation(21)->frameTicks[0];
+ _objects[1].x = 40;
+ _objects[1].y = 240;
+ _objects[1].kind = 1;
+ _objects[2].anim = getAnimation(23);
+ _objects[2].frameIndex = 0;
+ _objects[2].ticks = getAnimation(23)->frameTicks[0];
+ _objects[2].x = 280;
+ _objects[2].y = 240;
+ _objects[2].kind = 1;
+ _objects[3].anim = getAnimation(22);
+ _objects[3].frameIndex = 0;
+ _objects[3].ticks = getAnimation(22)->frameTicks[0];
+ _objects[3].x = 40;
+ _objects[3].y = 240;
+ _objects[3].kind = 0;
+ _objects[4].anim = getAnimation(24);
+ _objects[4].frameIndex = 0;
+ _objects[4].ticks = getAnimation(24)->frameTicks[0];
+ _objects[4].x = 280;
+ _objects[4].y = 240;
+ _objects[4].kind = 0;
+}
+
+void MinigameBbLoogie::initObjects1() {
+ initObjs();
+ _objects[0].anim = _playerAnim;
+ _objects[0].frameIndex = 0;
+ _objects[0].ticks = _playerAnim->frameTicks[0];
+ _objects[0].status = 0;
+ _objects[0].x = 160;
+ _objects[0].y = 240;
+ _objects[0].kind = 1;
+ _objects[1].anim = getAnimation(4);
+ _objects[1].frameIndex = 0;
+ _objects[1].ticks = getAnimation(4)->frameTicks[0];
+ _objects[1].x = 248;
+ _objects[1].y = 24;
+ _objects[1].kind = 2;
+}
+
+void MinigameBbLoogie::initObjects3() {
+ initObjs();
+ _objects[0].anim = _playerAnim;
+ _objects[0].frameIndex = 0;
+ _objects[0].ticks = _playerAnim->frameTicks[0];
+ _objects[0].status = 0;
+ _objects[0].kind = 1;
+ _objects[1].anim = getAnimation(4);
+ _objects[1].frameIndex = 0;
+ _objects[1].ticks = getAnimation(4)->frameTicks[0];
+ _objects[1].x = 248;
+ _objects[1].y = 24;
+ _objects[1].kind = 2;
+}
+
+void MinigameBbLoogie::initVars() {
+ switch (_gameState) {
+ case kGSTitleScreen:
+ initVars0();
+ break;
+ case kGSMainGame:
+ initVars1();
+ break;
+ case kGSStandaloneGame:
+ initVars2();
+ break;
+ case kGSScoreCountUp:
+ initVars3();
+ break;
+ }
+}
+
+void MinigameBbLoogie::initVars0() {
+ _carDelay = 120;
+ _bikeDelay = 250;
+ _squirrelDelay = 40;
+ _paperPlaneDelay = 400; // Uninitialized in the original
+ _principalDelay = 1750;
+ _levelTimeDelay = 58;
+ _principalAngry = false;
+ _squirrelDirection = false;
+ _numberOfHits = 0;
+ _megaLoogieCount = 0;
+ _level = 0;
+ _levelTimeLeft = 0;
+ _currScore = 0;
+ _dispLevelScore = 0;
+}
+
+void MinigameBbLoogie::initVars1() {
+ _carDelay = 120;
+ _bikeDelay = 250;
+ _squirrelDelay = 40;
+ _paperPlaneDelay = 400; // Uninitialized in the original
+ _principalDelay = 1750;
+ _squirrelDirection = false;
+ _numberOfHits = 0;
+ _megaLoogieCount = 0;
+}
+
+void MinigameBbLoogie::initVars2() {
+ _timeBonusCtr = _levelTimeLeft;
+ _levelTimeDelay = 58;
+ _bonusDisplayDelay1 = 60;
+ _levelTimeLeft = kLevelTimes[_level];
+ _nextLevelScore = kLevelScores[_level] + _currScore;
+ _bonusDisplayDelay2 = 0;
+ _bonusDisplayDelay3 = 0;
+}
+
+void MinigameBbLoogie::initVars3() {
+ if (_currScore > _hiScore)
+ _hiScore = _currScore;
+ if (_playerKind) {
+ playSound(11);
+ } else {
+ playSound(21);
+ }
+}
+
+bool MinigameBbLoogie::updateStatus(int mouseX, int mouseY, uint mouseButtons) {
+ switch (_gameState) {
+ case kGSTitleScreen:
+ return updateStatus0(mouseX, mouseY, mouseButtons);
+ case kGSMainGame:
+ return updateStatus1(mouseX, mouseY, mouseButtons);
+ case kGSStandaloneGame:
+ return updateStatus2(mouseX, mouseY, mouseButtons);
+ case kGSScoreCountUp:
+ return updateStatus3(mouseX, mouseY, mouseButtons);
+ }
+ return false;
+}
+
+bool MinigameBbLoogie::updateStatus0(int mouseX, int mouseY, uint mouseButtons) {
+
+ _objects[0].x = mouseX;
+ _objects[0].y = mouseY;
+
+ if (_objects[1].kind != 0 && isCursorAtObj(1)) {
+ _objects[0].frameIndex = 1;
+ _objects[1].kind = 0;
+ _objects[3].kind = 11;
+ _objects[3].frameIndex = 0;
+ _objects[3].ticks = _objects[3].anim->frameTicks[0];
+ } else if (!isCursorAtObj(3)) {
+ if (_objects[4].kind == 0)
+ _objects[0].frameIndex = 0;
+ _objects[3].kind = 0;
+ _objects[1].kind = 1;
+ }
+
+ if (_objects[2].kind && isCursorAtObj(2)) {
+ _objects[0].frameIndex = 1;
+ _objects[2].kind = 0;
+ _objects[4].kind = 11;
+ _objects[4].frameIndex = 0;
+ _objects[4].ticks = _objects[4].anim->frameTicks[0];
+ } else if (!isCursorAtObj(4)) {
+ if (_objects[3].kind == 0)
+ _objects[0].frameIndex = 0;
+ _objects[4].kind = 0;
+ _objects[2].kind = 1;
+ }
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind == 11) {
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex >= obj->anim->frameCount)
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ }
+ }
+ }
+
+ if ((mouseButtons & kLeftButtonDown) &&
+ (_objects[3].kind != 0 || _objects[4].kind != 0)) {
+ if (_objects[4].kind != 0) {
+ // Beavis
+ _playerKind = 0;
+ _playerAnim = getAnimation(0);
+ _playerSounds1 = kBeavisSounds1;
+ _playerSounds1Count = 8;
+ _playerSounds2 = kBeavisSounds2;
+ _playerSounds2Count = 13;
+ playSound(15);
+ while (isSoundPlaying(15)) { }
+ } else {
+ // Butt-head
+ _playerKind = 1;
+ _playerAnim = getAnimation(1);
+ _playerSounds1 = kButtheadSounds1;
+ _playerSounds1Count = 5;
+ _playerSounds2 = kButtheadSounds2;
+ _playerSounds2Count = 10;
+ playSound(23);
+ while (isSoundPlaying(23)) { }
+ }
+ _gameState = _fromMainGame ? kGSMainGame : kGSStandaloneGame;
+ initObjects1();
+ initObjects();
+ initVars();
+ _gameTicks = 0;
+ }
+
+ return true;
+}
+
+bool MinigameBbLoogie::updateStatus1(int mouseX, int mouseY, uint mouseButtons) {
+
+ if (--_levelTimeDelay == 0) {
+ _levelTimeDelay = 58;
+ --_levelTimeLeft;
+ }
+
+ if (!_fromMainGame && _levelTimeLeft == 0) {
+ _gameState = kGSScoreCountUp;
+ initObjects();
+ initVars();
+ } else if (_fromMainGame || _currScore < _nextLevelScore) {
+ _objects->x = CLIP(mouseX, 0, 319);
+ _objects->y = 240;
+ if (!_principalAngry &&
+ ((mouseButtons & kLeftButtonDown) || ((mouseButtons & kRightButtonDown) && _megaLoogieCount)) &&
+ _objects[0].status == 0 && mouseX != 32512 && mouseY != 32512) {
+ _objects[0].ticks = _playerAnim->frameTicks[13];
+ _objects[0].frameIndex = 14;
+ _objects[0].status = 1;
+ _objects[0].unk2 = 0;
+ Obj *newObj = getFreeObject();
+ newObj->anim = getAnimation(17);
+ newObj->frameIndex = 0;
+ newObj->ticks = 1;
+ newObj->x = 0;
+ newObj->y = 140;
+ newObj->kind = 8;
+ if (mouseButtons & kLeftButtonDown) {
+ _doubleScore = 0;
+ playSound(28);
+ } else {
+ _doubleScore = 17;
+ playSound(30);
+ }
+ }
+ updateObjs(mouseButtons);
+ } else {
+ _gameState = kGSStandaloneGame;
+ ++_level;
+ initObjects();
+ initVars();
+ }
+ return true;
+}
+
+bool MinigameBbLoogie::updateStatus2(int mouseX, int mouseY, uint mouseButtons) {
+
+ _objects[0].x = mouseX;
+
+ if (_bonusDisplayDelay1 > 0) {
+ if (--_bonusDisplayDelay1 == 0) {
+ _bonusDisplayDelay2 = 60;
+ if (_timeBonusCtr)
+ playSound(33, true);
+ }
+ } else if (_bonusDisplayDelay2 > 0) {
+ if (--_bonusDisplayDelay2 == 0) {
+ _bonusDisplayDelay3 = 150;
+ playSound(38);
+ } else if (_timeBonusCtr > 0) {
+ ++_bonusDisplayDelay2;
+ ++_levelTimeLeft;
+ if (--_timeBonusCtr == 0)
+ stopSound(33);
+ }
+ } else if (_bonusDisplayDelay3 > 0) {
+ if ((mouseButtons & kAnyButtonDown) || (--_bonusDisplayDelay3 == 0)) {
+ _dispLevelScore = _nextLevelScore;
+ _gameState = kGSMainGame;
+ _gameTicks = 0;
+ }
+ }
+ return true;
+}
+
+bool MinigameBbLoogie::updateStatus3(int mouseX, int mouseY, uint mouseButtons) {
+
+ _objects[0].x = mouseX;
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind == 2) {
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex >= obj->anim->frameCount)
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ }
+ }
+ }
+
+ return true;
+}
+
+void MinigameBbLoogie::updateObjs(uint mouseButtons) {
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ switch (obj->kind) {
+ case 1:
+ updatePlayer(i, mouseButtons);
+ break;
+ case 2:
+ updateObjKind2(i);
+ break;
+ case 3:
+ updateLoogie(i);
+ break;
+ case 4:
+ updateCar(i);
+ break;
+ case 5:
+ updateBike(i);
+ break;
+ case 6:
+ updateSquirrel(i);
+ break;
+ case 7:
+ updatePaperPlane(i);
+ break;
+ case 8:
+ updateIndicator(i);
+ break;
+ case 9:
+ updatePrincipal(i);
+ break;
+ }
+ }
+
+ if (--_carDelay == 0) {
+ // Car
+ Obj *obj = getFreeObject();
+ obj->anim = getAnimation(2);
+ obj->kind = 4;
+ obj->frameIndex = 0;
+ obj->x = 379;
+ obj->y = 22;
+ obj->xIncr = -2;
+ obj->yIncr = 0;
+ _carDelay = _vm->getRandom(256) + 800;
+ }
+
+ if (--_bikeDelay == 0) {
+ // Bike
+ Obj *obj = getFreeObject();
+ obj->kind = 5;
+ obj->anim = getAnimation(3);
+ obj->frameIndex = 0;
+ obj->x = 360;
+ obj->y = _vm->getRandom(32) + 82;
+ obj->xIncr = -1;
+ obj->yIncr = 0;
+ _bikeDelay = _vm->getRandom(512) + 500;
+ }
+
+ if (--_squirrelDelay == 0) {
+ // Squirrel
+ Obj *obj = getFreeObject();
+ obj->kind = 6;
+ obj->anim = getAnimation(7);
+ obj->frameIndex = !_squirrelDirection ? 0 : 29;
+ obj->x = 160;
+ obj->y = 36;
+ obj->xIncr = 0;
+ obj->yIncr = 0;
+ _squirrelDirection = !_squirrelDirection;
+ if (_vm->getRandom(5) == 1 && !isAnySoundPlaying(_playerSounds2, _playerSounds2Count))
+ playSound(9);
+ _squirrelDelay = _vm->getRandom(512) + 300;
+ }
+
+ if (--_paperPlaneDelay == 0) {
+ // Paper plane
+ Obj *obj = getFreeObject();
+ obj->kind = 7;
+ obj->anim = getAnimation(16);
+ obj->frameIndex = 0;
+ obj->x = 86;
+ obj->y = 187;
+ obj->xIncr = 0;
+ obj->yIncr = -1;
+ switch (_vm->getRandom(3)) {
+ case 1:
+ obj->frameIndex = 1;
+ obj->xIncr = -1;
+ break;
+ case 2:
+ obj->frameIndex = 7;
+ obj->xIncr = 1;
+ break;
+ }
+ _paperPlaneDelay = 400;
+ }
+
+ if (_principalDelay >= 0 && --_principalDelay == 0) {
+ // Principal
+ Obj *obj = getFreeObject();
+ obj->kind = 9;
+ obj->anim = getAnimation(18);
+ obj->frameIndex = 11;
+ obj->x = -20;
+ obj->y = 130;
+ obj->xIncr = 1;
+ obj->yIncr = 0;
+ obj->status = 0;
+ obj->frameIndexAdd = 0;
+ obj->unk2 = _vm->getRandom(256) + 100;
+ _principalCtr = 0;
+ _principalFirstFrameIndex = 11;
+ _principalLastFrameIndex = 16;
+ }
+
+}
+
+void MinigameBbLoogie::updatePlayer(int objIndex, uint mouseButtons) {
+
+ Obj *obj = &_objects[0];
+
+ switch (obj->status) {
+
+ case 1:
+ if (obj->ticks-- == 0) {
+ if (obj->frameIndex != 15) {
+ ++obj->frameIndex;
+ obj->ticks = _playerAnim->frameTicks[obj->frameIndex];
+ }
+ }
+ if ((((mouseButtons & kLeftButtonDown) && _doubleScore == 0) ||
+ ((mouseButtons & kRightButtonDown) && _doubleScore == 17))
+ && obj->unk2 != 61) {
+ ++obj->unk2;
+ } else {
+ obj->status = 2;
+ obj->frameIndex = 16;
+ obj->ticks = _playerAnim->frameTicks[16];
+ if (obj->unk2 >= 30) {
+ obj->status = 3;
+ obj->frameIndex = 21;
+ obj->ticks = _playerAnim->frameTicks[21];
+ }
+ if (obj->unk2 < 30) {
+ Obj *newObj = getFreeObject();
+ newObj->kind = 3;
+ newObj->anim = getAnimation(5);
+ newObj->frameIndex = 0;
+ newObj->ticks = getAnimation(5)->frameTicks[0];
+ newObj->x = obj->x;
+ newObj->y = 172;
+ newObj->unk2 = obj->unk2;
+ newObj->frameIndexAdd = _doubleScore;
+ if (_doubleScore)
+ --_megaLoogieCount;
+ }
+ if (_doubleScore) {
+ stopSound(30);
+ playSound(31);
+ } else {
+ stopSound(28);
+ playSound(29);
+ }
+ }
+ break;
+
+ case 2:
+ if (obj->ticks-- == 0) {
+ if (obj->frameIndex == 17) {
+ obj->frameIndex = 0;
+ obj->status = 0;
+ } else {
+ ++obj->frameIndex;
+ obj->ticks = _playerAnim->frameTicks[obj->frameIndex];
+ }
+ }
+ break;
+
+ case 3:
+ if (obj->ticks-- == 0) {
+ if (obj->frameIndex == 23) {
+ obj->frameIndex = 0;
+ obj->status = 0;
+ } else {
+ ++obj->frameIndex;
+ obj->ticks = _playerAnim->frameTicks[obj->frameIndex];
+ if (obj->frameIndex == 22) {
+ Obj *newObj = getFreeObject();
+ newObj->kind = 3;
+ newObj->anim = getAnimation(5);
+ newObj->frameIndex = 0;
+ newObj->ticks = getAnimation(5)->frameTicks[0];
+ newObj->x = obj->x;
+ newObj->y = 154;
+ newObj->unk2 = obj->unk2;
+ newObj->frameIndexAdd = _doubleScore;
+ if (_doubleScore)
+ --_megaLoogieCount;
+ }
+ }
+ }
+ break;
+
+ }
+
+}
+
+void MinigameBbLoogie::updateObjKind2(int objIndex) {
+
+ Obj *obj = &_objects[objIndex];
+
+ if (obj->ticks-- == 0) {
+ obj->ticks = getAnimation(4)->frameTicks[0];
+ if (obj->frameIndex > 7)
+ obj->frameIndex = 1;
+ if (obj->frameIndex++ >= 7)
+ obj->frameIndex = 0;
+ }
+
+}
+
+void MinigameBbLoogie::updateLoogie(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ if (obj->unk2 > 0) {
+ obj->y -= kLoogieOffY[obj->unk2 / 8];
+ --obj->unk2;
+ }
+
+ if (obj->ticks-- == 0) {
+ obj->ticks = getAnimation(5)->frameTicks[0];
+ ++obj->frameIndex;
+ if (obj->frameIndex >= 17) {
+ obj->kind = 0;
+ obj->anim = getAnimation(6);
+ obj->frameIndex = 0;
+ }
+ }
+
+}
+
+void MinigameBbLoogie::updateCar(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ obj->x += obj->xIncr;
+
+ if (obj->ticks-- == 0) {
+ if (obj->frameIndex++ == 3 || obj->frameIndex == 6)
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(2)->frameTicks[obj->frameIndex];
+ }
+
+ if (obj->x <= -60) {
+ obj->kind = 0;
+ obj->anim = getAnimation(6);
+ obj->frameIndex = 0;
+ } else if (!_principalAngry && obj->frameIndex <= 3) {
+ int loogieObjIndex = 0;
+ Obj *loogieObj = findLoogieObj(loogieObjIndex++);
+ while (loogieObj) {
+ if (loogieObj->frameIndex >= 8 && loogieObj->frameIndex <= 10 && isHit(obj, loogieObj)) {
+ incNumberOfHits();
+ incScore(7);
+ loogieObj->frameIndex = 13;
+ loogieObj->ticks = getAnimation(5)->frameTicks[12];
+ obj->frameIndex = 4;
+ obj->ticks = getAnimation(2)->frameTicks[4];
+ playSound(34);
+ playRndSound();
+ }
+ loogieObj = findLoogieObj(loogieObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbLoogie::updateBike(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ obj->x += obj->xIncr;
+
+ if (obj->ticks-- == 0) {
+ if (obj->frameIndex++ == 3 || obj->frameIndex == 7)
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(3)->frameTicks[obj->frameIndex];
+ }
+
+ if (obj->x == -40) {
+ obj->kind = 0;
+ obj->anim = getAnimation(6);
+ obj->frameIndex = 0;
+ } else if (!_principalAngry && obj->frameIndex <= 3) {
+ int loogieObjIndex = 0;
+ Obj *loogieObj = findLoogieObj(loogieObjIndex++);
+ while (loogieObj) {
+ if (loogieObj->frameIndex >= 7 && loogieObj->frameIndex <= 11 && isHit(obj, loogieObj)) {
+ incNumberOfHits();
+ incScore(2);
+ loogieObj->frameIndex = 13;
+ loogieObj->ticks = getAnimation(5)->frameTicks[12];
+ obj->frameIndex = 4;
+ obj->ticks = getAnimation(3)->frameTicks[4];
+ playSound(35);
+ playRndSound();
+ }
+ loogieObj = findLoogieObj(loogieObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbLoogie::updateSquirrel(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ if (obj->ticks-- == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 29 || obj->frameIndex == 54 ||
+ obj->frameIndex == 58 || obj->frameIndex == 62) {
+ obj->kind = 0;
+ obj->anim = getAnimation(6);
+ obj->frameIndex = 0;
+ }
+ obj->ticks = getAnimation(7)->frameTicks[obj->frameIndex];
+ }
+
+ if (!_principalAngry && obj->frameIndex <= 53) {
+ int loogieObjIndex = 0;
+ Obj *loogieObj = findLoogieObj(loogieObjIndex++);
+ while (loogieObj) {
+ if (loogieObj->frameIndex >= 7 && loogieObj->frameIndex <= 9 && isHit(obj, loogieObj)) {
+ incNumberOfHits();
+ incScore(10);
+ loogieObj->frameIndex = 13;
+ loogieObj->ticks = getAnimation(5)->frameTicks[12];
+ obj->x += kSquirrelOffX[obj->frameIndex];
+ obj->frameIndex = obj->frameIndex < 29 ? 54 : 58;
+ obj->ticks = getAnimation(7)->frameTicks[obj->frameIndex];
+ playSound(36);
+ playRndSound();
+ }
+ loogieObj = findLoogieObj(loogieObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbLoogie::updatePaperPlane(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+
+ if (obj->x == -16 || obj->x == 336 || obj->y == -16) {
+ obj->kind = 0;
+ obj->anim = getAnimation(6);
+ obj->frameIndex = 0;
+ }
+
+ if (!_principalAngry && obj->frameIndex <= 53) {
+ int loogieObjIndex = 0;
+ Obj *loogieObj = findLoogieObj(loogieObjIndex++);
+ while (loogieObj) {
+ if (loogieObj->frameIndex >= 4 && loogieObj->frameIndex <= 7 && isHit(obj, loogieObj)) {
+ incNumberOfHits();
+ incScore(5);
+ loogieObj->frameIndex = 13;
+ loogieObj->ticks = getAnimation(5)->frameTicks[12];
+ obj->frameIndex = (obj->frameIndex + 1) % 8;
+ obj->xIncr = kPlaneOffX[obj->frameIndex];
+ obj->yIncr = kPlaneOffY[obj->frameIndex];
+ playSound(37);
+ playRndSound();
+ }
+ loogieObj = findLoogieObj(loogieObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbLoogie::updateIndicator(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+ Obj *loogieObj = &_objects[0];
+
+ if (obj->ticks-- == 0) {
+ obj->frameIndex = (obj->frameIndex + 1) % 2;
+ obj->ticks = getAnimation(17)->frameTicks[0];
+ }
+
+ if (loogieObj->status != 0) {
+ int unk2mod = loogieObj->unk2 / 8;
+ int unk2div = loogieObj->unk2 / 8 * 8;
+ int v6 = 0;
+ if (unk2div > 8) {
+ int v7 = 1;
+ do {
+ v6 += 8 * kLoogieOffY[v7++];
+ } while (v7 != unk2mod);
+ }
+ int yOfs = (loogieObj->unk2 % 8 + 1) * kLoogieOffY[loogieObj->unk2 / 8] + v6;
+ if (loogieObj->unk2 >= 30)
+ yOfs += 18;
+ obj->y = 140 - yOfs;
+ } else {
+ obj->kind = 0;
+ obj->anim = getAnimation(6);
+ }
+
+}
+
+void MinigameBbLoogie::updatePrincipal(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ switch (obj->status) {
+
+ case 0:
+ if (obj->unk2--) {
+ if (obj->ticks-- == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == _principalLastFrameIndex)
+ obj->frameIndex = _principalFirstFrameIndex;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ ++_principalCtr;
+ if (_principalCtr % 2 != 0) {
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+ if (obj->xIncr > 0 && obj->x == 340) {
+ obj->xIncr = -1;
+ _principalLastFrameIndex = 34;
+ _principalFirstFrameIndex = 29;
+ obj->frameIndex = 29;
+ obj->status = 2;
+ obj->ticks = _vm->getRandom(256) + 60;
+ }
+ if (obj->xIncr < 0 && obj->x == -20) {
+ obj->xIncr = 1;
+ _principalLastFrameIndex = 16;
+ _principalFirstFrameIndex = 11;
+ obj->frameIndex = 11;
+ obj->status = 2;
+ obj->ticks = _vm->getRandom(256) + 60;
+ }
+ }
+ } else {
+ obj->unk2 = _vm->getRandom(64) + 20;
+ ++obj->status;
+ if (_vm->getRandom(2) == 1) {
+ obj->frameIndex = _principalFirstFrameIndex < 11 ? 17 : 26;
+ _principalFirstFrameIndex = 19;
+ } else {
+ obj->frameIndex = _principalFirstFrameIndex < 11 ? 8 : 35;
+ _principalFirstFrameIndex = 1;
+ }
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ break;
+
+ case 1:
+ if (obj->unk2--) {
+ if (obj->ticks-- == 0)
+ obj->frameIndex = _principalFirstFrameIndex;
+ } else {
+ obj->unk2 = _vm->getRandom(256) + 100;
+ ++obj->status;
+ if (_vm->getRandom(2) == 1) {
+ _principalLastFrameIndex = 16;
+ _principalFirstFrameIndex = 11;
+ obj->frameIndex = obj->frameIndex < 1 ? 8 : 17;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ obj->xIncr = 1;
+ } else {
+ _principalLastFrameIndex = 34;
+ _principalFirstFrameIndex = 29;
+ obj->frameIndex = obj->frameIndex < 1 ? 35 : 26;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ obj->xIncr = -1;
+ }
+ }
+ break;
+
+ case 2:
+ if (obj->ticks-- == 0) {
+ obj->status = 0;
+ obj->frameIndex = _principalFirstFrameIndex;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ break;
+
+ case 3:
+ if (obj->ticks-- == 0) {
+ obj->status = _prevPrincipalStatus;
+ obj->frameIndex = _principalFirstFrameIndex;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ break;
+
+ case 4:
+ if (obj->ticks-- == 0) {
+ switch (obj->frameIndex) {
+ case 8:
+ obj->frameIndex = 36;
+ break;
+ case 26:
+ obj->frameIndex = 28;
+ break;
+ case 28:
+ obj->frameIndex = 35;
+ break;
+ case 35:
+ ++obj->frameIndex;
+ break;
+ case 36:
+ obj->status = 5;
+ ++obj->frameIndex;
+ break;
+ }
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ break;
+
+ case 5:
+ if (obj->ticks-- == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 48)
+ obj->frameIndex = 36;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ if (!isSoundPlaying(1)) {
+ _gameResult = true;
+ if (_fromMainGame) {
+ _principalAngry = true;
+ if (obj->x <= 140 || obj->x >= 165) {
+ obj->status = 6;
+ if (obj->x >= 160) {
+ _principalLastFrameIndex = 34;
+ _principalFirstFrameIndex = 29;
+ obj->frameIndex = 29;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ obj->xIncr = -1;
+ } else {
+ _principalLastFrameIndex = 16;
+ _principalFirstFrameIndex = 11;
+ obj->frameIndex = 11;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ obj->xIncr = 1;
+ }
+ } else {
+ obj->status = 7;
+ _principalFirstFrameIndex = 2;
+ _principalLastFrameIndex = 7;
+ obj->frameIndex = 2;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ obj->xIncr = 0;
+ obj->yIncr = 1;
+ }
+ } else {
+ obj->status = _prevPrincipalStatus;
+ obj->frameIndex = _principalFirstFrameIndex;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ }
+ break;
+
+ case 6:
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+ if (obj->ticks-- == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == _principalLastFrameIndex)
+ obj->frameIndex = _principalFirstFrameIndex;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ if (obj->x > 145 && obj->x < 160) {
+ obj->status = 7;
+ _principalFirstFrameIndex = 2;
+ _principalLastFrameIndex = 7;
+ obj->frameIndex = 2;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ obj->xIncr = 0;
+ obj->yIncr = 1;
+ }
+ break;
+
+ case 7:
+ obj->x += obj->xIncr;
+ obj->y += obj->yIncr;
+ if (obj->ticks-- == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == _principalLastFrameIndex)
+ obj->frameIndex = _principalFirstFrameIndex;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ }
+ if (obj->y > 175) {
+ // Angry principal enters school, end the minigame
+ _gameDone = true;
+ }
+ break;
+
+ }
+
+ if (!_principalAngry) {
+ int loogieObjIndex = 0;
+ Obj *loogieObj = findLoogieObj(loogieObjIndex++);
+ while (loogieObj) {
+ if (loogieObj->frameIndex >= 7 && loogieObj->frameIndex <= 12 && isHit(obj, loogieObj)) {
+ incNumberOfHits();
+ incScore(1);
+ loogieObj->frameIndex = 13;
+ loogieObj->ticks = getAnimation(5)->frameTicks[12];
+ if (obj->status != 3 && obj->status != 4 && obj->status != 5) {
+ _prevPrincipalStatus = obj->status;
+ obj->status = 3;
+ if (_principalFirstFrameIndex == 1 || _principalFirstFrameIndex == 19)
+ obj->frameIndex = _principalFirstFrameIndex - 1;
+ else
+ obj->frameIndex = _principalFirstFrameIndex - 2;
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ if (loogieObj->frameIndexAdd > 0) {
+ obj->status = 4;
+ switch (obj->frameIndex) {
+ case 0:
+ obj->frameIndex = 36;
+ break;
+ case 9:
+ obj->frameIndex = 8;
+ break;
+ case 27:
+ obj->frameIndex = 35;
+ break;
+ case 18:
+ obj->frameIndex = 26;
+ break;
+ }
+ obj->ticks = getAnimation(18)->frameTicks[obj->frameIndex];
+ playSound(1);
+ } else {
+ if (!isAnySoundPlaying(_playerSounds2, _playerSounds2Count))
+ playSound(kPrincipalSounds[_vm->getRandom(4)]);
+ playRndSound();
+ }
+ }
+ }
+ loogieObj = findLoogieObj(loogieObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbLoogie::incNumberOfHits() {
+ ++_numberOfHits;
+ if (_numberOfHits == 1000)
+ _numberOfHits = 0;
+ if (_numberOfHits % 10 == 0) {
+ ++_megaLoogieCount;
+ if (_megaLoogieCount > 11)
+ _megaLoogieCount = 11;
+ }
+}
+
+void MinigameBbLoogie::incScore(int incrAmount) {
+ if (_doubleScore)
+ _currScore += 2 * incrAmount;
+ else
+ _currScore += incrAmount;
+}
+
+void MinigameBbLoogie::playRndSound() {
+ if (!isAnySoundPlaying(_playerSounds2, _playerSounds2Count))
+ playSound(_playerSounds1[_vm->getRandom(_playerSounds1Count)]);
+}
+
+bool MinigameBbLoogie::run(bool fromMainGame) {
+
+ memset(_objects, 0, sizeof(_objects));
+
+ _numbersAnim = getAnimation(9);
+
+ _backgroundSpriteIndex = 210;
+ _titleScreenSpriteIndex = 211;
+
+ _fromMainGame = fromMainGame;
+
+ _hiScore = 0;
+ if (!_fromMainGame)
+ _hiScore = loadHiscore(kMinigameBbLoogie);
+
+ _gameState = kGSTitleScreen;
+ _gameTicks = 0;
+ _gameResult = false;
+ _gameDone = false;
+ initObjects();
+ initVars();
+
+ _spriteModule = new SpriteModule();
+ _spriteModule->load("bbloogie/bbloogie.000");
+
+ Palette palette = _spriteModule->getPalette();
+ _vm->_screen->setPalette(palette);
+
+ loadSounds();
+
+ playSound(32, true);
+
+ while (!_vm->shouldQuit() &&!_gameDone) {
+ _vm->updateEvents();
+ update();
+ }
+
+ _vm->_sound->unloadSounds();
+
+ if (!_fromMainGame)
+ saveHiscore(kMinigameBbLoogie, _hiScore);
+
+ delete _spriteModule;
+
+ return _gameResult;
+}
+
+void MinigameBbLoogie::update() {
+
+ int inputTicks;
+
+ if (_gameTicks > 0) {
+ int currTicks = _vm->_system->getMillis();
+ inputTicks = (currTicks - _gameTicks) / 17;
+ _gameTicks = currTicks - (currTicks - _gameTicks) % 17;
+ } else {
+ inputTicks = 1;
+ _gameTicks = _vm->_system->getMillis();
+ }
+
+ if (_vm->_keyCode == Common::KEYCODE_ESCAPE) {
+ _gameDone = true;
+ return;
+ }
+
+ if (inputTicks == 0)
+ return;
+
+ bool done;
+
+ do {
+ done = !updateStatus(_vm->_mouseX, _vm->_mouseY, _vm->_mouseButtons);
+ _vm->_mouseButtons &= ~kLeftButtonClicked;
+ _vm->_mouseButtons &= ~kRightButtonClicked;
+ _vm->_keyCode = Common::KEYCODE_INVALID;
+ } while (--inputTicks && _gameTicks > 0 && !done);
+
+ drawSprites();
+
+ _vm->_system->delayMillis(10);
+
+}
+
+void MinigameBbLoogie::loadSounds() {
+ for (uint i = 0; i < kSoundFilenamesCount; ++i) {
+ Common::String filename = Common::String::format("bbloogie/%s", kSoundFilenames[i]);
+ _vm->_sound->loadSound(filename.c_str());
+ }
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/bbloogie.h b/engines/bbvs/minigames/bbloogie.h
new file mode 100644
index 0000000000..1dd4049b41
--- /dev/null
+++ b/engines/bbvs/minigames/bbloogie.h
@@ -0,0 +1,141 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_MINIGAMES_BBLOOGIE_H
+#define BBVS_MINIGAMES_BBLOOGIE_H
+
+#include "bbvs/minigames/minigame.h"
+
+namespace Bbvs {
+
+class MinigameBbLoogie : public Minigame {
+public:
+ MinigameBbLoogie(BbvsEngine *vm) : Minigame(vm) {};
+ bool run(bool fromMainGame);
+public:
+
+ struct Obj {
+ int kind;
+ int x, y;
+ int xIncr, yIncr;
+ const ObjAnimation *anim;
+ int frameIndex;
+ int ticks;
+ int status;
+ int16 frameIndexAdd;
+ int16 unk2;
+ };
+
+ enum {
+ kMaxObjectsCount = 256
+ };
+
+ enum {
+ kGSTitleScreen = 0, // Title screen
+ kGSMainGame = 1, // Game when called as part of the main game
+ kGSStandaloneGame = 2, // Game when called as standalone game
+ kGSScoreCountUp = 3 // Score countup and next level text
+ };
+
+ Obj _objects[kMaxObjectsCount];
+
+ int _playerKind;
+ const ObjAnimation *_playerAnim;
+ const uint *_playerSounds1, *_playerSounds2;
+ uint _playerSounds1Count, _playerSounds2Count;
+
+ int _level, _levelTimeLeft, _levelTimeDelay;
+ int _numberOfHits, _currScore, _hiScore;
+ int _doubleScore, _megaLoogieCount;
+
+ int _dispLevelScore, _nextLevelScore;
+
+ int _timeBonusCtr, _bonusDisplayDelay1, _bonusDisplayDelay2, _bonusDisplayDelay3;
+
+ int _carDelay;
+ int _bikeDelay;
+ int _squirrelDelay;
+ bool _squirrelDirection;
+ int _paperPlaneDelay;
+ int _principalDelay;
+
+ int _prevPrincipalStatus;
+ int _principalCtr, _principalFirstFrameIndex, _principalLastFrameIndex;
+ bool _principalAngry;
+
+ const ObjAnimation *getAnimation(int animIndex);
+
+ void buildDrawList(DrawList &drawList);
+ void buildDrawList0(DrawList &drawList);
+ void buildDrawList1(DrawList &drawList);
+ void buildDrawList2(DrawList &drawList);
+ void buildDrawList3(DrawList &drawList);
+
+ void drawSprites();
+
+ void initObjs();
+ Obj *getFreeObject();
+ Obj *findLoogieObj(int startObjIndex);
+ bool isHit(Obj *obj1, Obj *obj2);
+ bool isCursorAtObj(int objIndex);
+
+ void initObjects();
+ void initObjects0();
+ void initObjects1();
+ void initObjects3();
+
+ void initVars();
+ void initVars0();
+ void initVars1();
+ void initVars2();
+ void initVars3();
+
+ bool updateStatus(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus0(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus1(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus2(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus3(int mouseX, int mouseY, uint mouseButtons);
+
+ void updateObjs(uint mouseButtons);
+ void updatePlayer(int objIndex, uint mouseButtons);
+ void updateObjKind2(int objIndex);
+ void updateLoogie(int objIndex);
+ void updateCar(int objIndex);
+ void updateBike(int objIndex);
+ void updateSquirrel(int objIndex);
+ void updatePaperPlane(int objIndex);
+ void updateIndicator(int objIndex);
+ void updatePrincipal(int objIndex);
+
+ void incNumberOfHits();
+ void incScore(int incrAmount);
+ void playRndSound();
+
+ void update();
+
+ void loadSounds();
+
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_MINIGAMES_BBLOOGIE_H
diff --git a/engines/bbvs/minigames/bbloogie_anims.cpp b/engines/bbvs/minigames/bbloogie_anims.cpp
new file mode 100644
index 0000000000..a82be8a279
--- /dev/null
+++ b/engines/bbvs/minigames/bbloogie_anims.cpp
@@ -0,0 +1,138 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/minigames/bbloogie.h"
+
+namespace Bbvs {
+
+static const int kAnim0FrameIndices[] = {0, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 0, 5, 6, 7, 0, 0, 5, 6, 7, 8, 0, 4, 3, 2, 1, 4, 3, 2, 1, 4, 3, 2, 1, 0};
+static const int16 kAnim0FrameTicks[] = {22, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 20, 8, 8, 10, 10, 10, 8, 22, 6, 12, 20, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 22};
+static const BBRect kAnim0FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim1FrameIndices[] = {9, 10, 11, 12, 13, 10, 11, 12, 13, 10, 11, 12, 13, 9, 14, 15, 16, 9, 9, 14, 15, 16, 17, 9, 13, 12, 11, 10, 13, 12, 11, 10, 13, 12, 11, 10, 9};
+static const int16 kAnim1FrameTicks[] = {22, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 20, 8, 8, 10, 10, 10, 8, 22, 6, 12, 20, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 22};
+static const BBRect kAnim1FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim2FrameIndices[] = {18, 19, 20, 18, 21, 22};
+static const int16 kAnim2FrameTicks[] = {6, 6, 6, 6, 6, 6};
+static const BBRect kAnim2FrameRects[] = {{-45, -43, 86, 38}, {-45, -43, 86, 38}, {-45, -43, 86, 38}, {-45, -43, 86, 38}, {-45, -43, 86, 38}, {-45, -43, 86, 38}};
+static const int kAnim3FrameIndices[] = {23, 24, 25, 26, 27, 28, 27};
+static const int16 kAnim3FrameTicks[] = {6, 6, 6, 6, 6, 7, 6};
+static const BBRect kAnim3FrameRects[] = {{-24, -17, 48, 14}, {-24, -17, 48, 14}, {-24, -17, 48, 14}, {-24, -17, 48, 14}, {-24, -17, 48, 14}, {-24, -17, 48, 14}, {-24, -17, 48, 14}};
+static const int kAnim4FrameIndices[] = {29, 30, 31, 32, 33, 34, 35, 36};
+static const int16 kAnim4FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim4FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim5FrameIndices[] = {37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70};
+static const int16 kAnim5FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim5FrameRects[] = {{-1, -11, 4, 11}, {-2, -15, 6, 8}, {-3, -24, 8, 8}, {-3, -31, 7, 9}, {-3, -33, 8, 8}, {-3, -34, 8, 10}, {-2, -34, 7, 8}, {-1, -34, 6, 7}, {-1, -34, 5, 6}, {-1, -34, 4, 4}, {0, -34, 3, 4}, {-1, -34, 4, 3}, {0, -34, 3, 4}, {0, -33, 3, 3}, {-1, -35, 5, 5}, {-3, -37, 9, 9}, {-4, -39, 12, 13}, {-3, -11, 7, 8}, {-3, -15, 8, 9}, {-5, -24, 11, 13}, {-4, -31, 10, 13}, {-5, -34, 11, 13}, {-5, -34, 11, 11}, {-4, -34, 9, 10}, {-4, -34, 9, 9}, {-3, -34, 7, 8}, {-2, -34, 6, 7}, {-2, -34, 5, 6}, {-2, -34, 4, 5}, {-7, -38, 13, 13}, {-10, -44, 22, 22}, {-13, -47, 27, 27}, {-17, -49, 32, 30}, {-17, -50, 34, 33}};
+static const int kAnim6FrameIndices[] = {71};
+static const int16 kAnim6FrameTicks[] = {1};
+static const BBRect kAnim6FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim7FrameIndices[] = {72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 80, 79, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 110, 109, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129};
+static const int16 kAnim7FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 30, 6, 20, 6, 30, 6, 6, 6, 6, 6, 6, 6, 6, 6, 30, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 30, 6, 20, 6, 30, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim7FrameRects[] = {{-46, -6, 7, 6}, {-46, -12, 11, 12}, {-47, -15, 17, 15}, {-46, -14, 20, 12}, {-47, -10, 24, 10}, {-41, -11, 22, 11}, {-33, -10, 15, 10}, {-32, -10, 14, 10}, {-32, -9, 13, 9}, {-32, -9, 13, 9}, {-32, -9, 13, 9}, {-32, -10, 13, 10}, {-34, -11, 24, 11}, {-30, -12, 25, 9}, {-24, -10, 24, 10}, {-18, -11, 22, 11}, {-14, -11, 24, 10}, {-9, -12, 25, 9}, {-3, -10, 24, 10}, {4, -11, 22, 11}, {11, -10, 15, 10}, {12, -10, 13, 10}, {10, -11, 24, 11}, {15, -12, 25, 9}, {22, -16, 22, 16}, {34, -16, 9, 16}, {35, -12, 9, 12}, {38, -6, 6, 6}, {38, -6, 4, 4}, {36, -6, 7, 6}, {31, -12, 12, 12}, {27, -15, 17, 15}, {24, -12, 20, 12}, {19, -11, 22, 11}, {13, -11, 24, 11}, {7, -11, 25, 9}, {4, -10, 24, 10}, {1, -11, 22, 11}, {1, -10, 15, 10}, {2, -10, 13, 10}, {2, -10, 13, 10}, {2, -9, 13, 9}, {2, -10, 13, 10}, {2, -10, 13, 10}, {-7, -11, 24, 11}, {-14, -11, 25, 9}, {-21, -10, 24, 11}, {-27, -11, 23, 11}, {-34, -12, 24, 11}, {-44, -18, 22, 16}, {-44, -16, 9, 16}, {-46, -12, 9, 12}, {-45, -6, 7, 6}, {-45, -4, 6, 5}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim8FrameIndices[] = {130};
+static const int16 kAnim8FrameTicks[] = {6};
+static const BBRect kAnim8FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim9FrameIndices[] = {131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141};
+static const int16 kAnim9FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim9FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim10FrameIndices[] = {142};
+static const int16 kAnim10FrameTicks[] = {2};
+static const BBRect kAnim10FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim11FrameIndices[] = {143};
+static const int16 kAnim11FrameTicks[] = {1};
+static const BBRect kAnim11FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim12FrameIndices[] = {144};
+static const int16 kAnim12FrameTicks[] = {1};
+static const BBRect kAnim12FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim13FrameIndices[] = {145};
+static const int16 kAnim13FrameTicks[] = {1};
+static const BBRect kAnim13FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim14FrameIndices[] = {146};
+static const int16 kAnim14FrameTicks[] = {1};
+static const BBRect kAnim14FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim15FrameIndices[] = {147};
+static const int16 kAnim15FrameTicks[] = {1};
+static const BBRect kAnim15FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim16FrameIndices[] = {148, 149, 150, 151, 152, 153, 154, 155};
+static const int16 kAnim16FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim16FrameRects[] = {{-5, -5, 9, 9}, {-6, -5, 11, 11}, {-6, -4, 9, 9}, {-5, -5, 10, 10}, {-5, -3, 9, 9}, {-6, -5, 10, 10}, {-4, -4, 9, 9}, {-6, -4, 10, 10}};
+static const int kAnim17FrameIndices[] = {156, 157};
+static const int16 kAnim17FrameTicks[] = {6, 6};
+static const BBRect kAnim17FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim18FrameIndices[] = {158, 159, 160, 161, 160, 162, 163, 162, 164, 165, 166, 167, 168, 167, 169, 170, 169, 171, 172, 173, 174, 175, 174, 176, 177, 176, 178, 179, 180, 181, 182, 181, 183, 184, 183, 185, 186, 187, 188, 189, 190, 188, 189, 191, 188, 190, 189, 187, 186};
+static const int16 kAnim18FrameTicks[] = {10, 20, 8, 8, 8, 8, 8, 8, 6, 10, 20, 8, 8, 8, 8, 8, 8, 6, 10, 20, 8, 8, 8, 8, 8, 8, 6, 10, 20, 8, 8, 8, 8, 8, 8, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim18FrameRects[] = {{-13, -16, 26, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-10, -19, 18, 20}, {-8, -20, 15, 23}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-10, -18, 19, 20}, {-12, -17, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-12, -16, 24, 16}, {-10, -18, 20, 19}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-8, -20, 16, 22}, {-9, -19, 18, 20}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}, {-12, -17, 24, 17}};
+static const int kAnim19FrameIndices[] = {192};
+static const int16 kAnim19FrameTicks[] = {8};
+static const BBRect kAnim19FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim20FrameIndices[] = {193};
+static const int16 kAnim20FrameTicks[] = {5};
+static const BBRect kAnim20FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim21FrameIndices[] = {194};
+static const int16 kAnim21FrameTicks[] = {6};
+static const BBRect kAnim21FrameRects[] = {{-7, -80, 17, 81}};
+static const int kAnim22FrameIndices[] = {195, 196, 197, 198, 199, 200};
+static const int16 kAnim22FrameTicks[] = {6, 6, 6, 6, 6, 6};
+static const BBRect kAnim22FrameRects[] = {{-22, -91, 45, 93}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}};
+static const int kAnim23FrameIndices[] = {201};
+static const int16 kAnim23FrameTicks[] = {6};
+static const BBRect kAnim23FrameRects[] = {{-12, -75, 21, 75}};
+static const int kAnim24FrameIndices[] = {202, 203, 204, 205, 206, 207};
+static const int16 kAnim24FrameTicks[] = {6, 6, 6, 6, 6, 6};
+static const BBRect kAnim24FrameRects[] = {{-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}};
+static const int kAnim25FrameIndices[] = {208, 209};
+static const int16 kAnim25FrameTicks[] = {6, 6};
+static const BBRect kAnim25FrameRects[] = {{-9, -9, 17, 15}, {-11, -10, 19, 16}};
+static const ObjAnimation kAnimations[] = {
+ {37, kAnim0FrameIndices, kAnim0FrameTicks, kAnim0FrameRects},
+ {37, kAnim1FrameIndices, kAnim1FrameTicks, kAnim1FrameRects},
+ {6, kAnim2FrameIndices, kAnim2FrameTicks, kAnim2FrameRects},
+ {7, kAnim3FrameIndices, kAnim3FrameTicks, kAnim3FrameRects},
+ {8, kAnim4FrameIndices, kAnim4FrameTicks, kAnim4FrameRects},
+ {34, kAnim5FrameIndices, kAnim5FrameTicks, kAnim5FrameRects},
+ {1, kAnim6FrameIndices, kAnim6FrameTicks, kAnim6FrameRects},
+ {62, kAnim7FrameIndices, kAnim7FrameTicks, kAnim7FrameRects},
+ {1, kAnim8FrameIndices, kAnim8FrameTicks, kAnim8FrameRects},
+ {11, kAnim9FrameIndices, kAnim9FrameTicks, kAnim9FrameRects},
+ {1, kAnim10FrameIndices, kAnim10FrameTicks, kAnim10FrameRects},
+ {1, kAnim11FrameIndices, kAnim11FrameTicks, kAnim11FrameRects},
+ {1, kAnim12FrameIndices, kAnim12FrameTicks, kAnim12FrameRects},
+ {1, kAnim13FrameIndices, kAnim13FrameTicks, kAnim13FrameRects},
+ {1, kAnim14FrameIndices, kAnim14FrameTicks, kAnim14FrameRects},
+ {1, kAnim15FrameIndices, kAnim15FrameTicks, kAnim15FrameRects},
+ {8, kAnim16FrameIndices, kAnim16FrameTicks, kAnim16FrameRects},
+ {2, kAnim17FrameIndices, kAnim17FrameTicks, kAnim17FrameRects},
+ {49, kAnim18FrameIndices, kAnim18FrameTicks, kAnim18FrameRects},
+ {1, kAnim19FrameIndices, kAnim19FrameTicks, kAnim19FrameRects},
+ {1, kAnim20FrameIndices, kAnim20FrameTicks, kAnim20FrameRects},
+ {1, kAnim21FrameIndices, kAnim21FrameTicks, kAnim21FrameRects},
+ {6, kAnim22FrameIndices, kAnim22FrameTicks, kAnim22FrameRects},
+ {1, kAnim23FrameIndices, kAnim23FrameTicks, kAnim23FrameRects},
+ {6, kAnim24FrameIndices, kAnim24FrameTicks, kAnim24FrameRects},
+ {2, kAnim25FrameIndices, kAnim25FrameTicks, kAnim25FrameRects}
+};
+
+const ObjAnimation *MinigameBbLoogie::getAnimation(int animIndex) {
+ return &kAnimations[animIndex];
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/bbtennis.cpp b/engines/bbvs/minigames/bbtennis.cpp
new file mode 100644
index 0000000000..926642cc5f
--- /dev/null
+++ b/engines/bbvs/minigames/bbtennis.cpp
@@ -0,0 +1,1274 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/sound.h"
+#include "bbvs/minigames/bbtennis.h"
+
+namespace Bbvs {
+
+static const int kLeftPlayerOffX[] = {
+ -44, -44, -44, -44, -39, -39, -34,
+ -26, -26, -14, -6, -6, -6, -6
+};
+
+static const int kLeftPlayerOffY[] = {
+ -31, -31, -31, -31, -23, -23, -21,
+ -18, -18, -14, -11, -11, -11, -11
+};
+
+static const char * const kSoundFilenames[] = {
+ "tenis9.aif", "tenis10.aif", "tenis11.aif", "tenis12.aif", "tenis13.aif",
+ "tenis14.aif", "tenis15.aif", "tenis16.aif", "tenis17.aif", "tenis18.aif",
+ "tenis19.aif", "tenis20.aif", "tenis21.aif", "1ahh.aif", "1dammit.aif",
+ "1getawy.aif", "1getthem.aif", "1owww.aif", "1pardon.aif", "1rcktbll.aif",
+ "1yourout.aif", "2hey.aif", "2inhere.aif", "2stoptht.aif", "2theyare.aif",
+ "3oh.aif", "3ow.aif", "3upunks.aif", "tenismus.aif", "canon1.aif",
+ "canon2.aif"
+};
+
+static const uint kSoundFilenamesCount = ARRAYSIZE(kSoundFilenames);
+
+static const int kLeftNetPlayAnims[] = {
+ 13, 15, 17
+};
+
+static const int kRightNetPlayAnims[] = {
+ 14, 16, 18
+};
+
+static const uint kYuppieHitSounds[] = {
+ 14, 15, 18, 22, 26, 27
+};
+
+static const uint kYuppieEnteringCourtSounds[] = {
+ 19, 20
+};
+
+static const uint kYuppieChargeSounds[] = {
+ 16, 17, 23, 24, 28, 0
+};
+
+static const uint kAllSounds[] = {
+ 3, 4, 7, 9, 19, 20, 16, 17, 23, 24, 28
+};
+
+void MinigameBbTennis::buildDrawList(DrawList &drawList) {
+ switch (_gameState) {
+ case 0:
+ buildDrawList0(drawList);
+ break;
+ case 1:
+ buildDrawList1(drawList);
+ break;
+ case 2:
+ buildDrawList2(drawList);
+ break;
+ }
+}
+
+void MinigameBbTennis::buildDrawList0(DrawList &drawList) {
+
+ drawList.add(_objects[0].anim->frameIndices[_objects[0].frameIndex], _objects[0].x, _objects[0].y, 2000);
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind)
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, obj->y + 16);
+ }
+
+ if (_titleScreenSpriteIndex > 0)
+ drawList.add(_titleScreenSpriteIndex, 0, 0, 0);
+
+}
+
+void MinigameBbTennis::buildDrawList1(DrawList &drawList) {
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+
+ if (obj->kind) {
+ int index = obj->anim->frameIndices[obj->frameIndex];
+ int x = obj->x;
+ int y = obj->y;
+ int priority = obj->y + 16;
+
+ switch (obj->kind) {
+
+ case 1:
+ priority = 3000;
+ break;
+
+ case 2:
+ priority = 550;
+ if (obj->frameIndex == 0)
+ drawList.add(obj->anim->frameIndices[8], obj->x, obj->y, 550);
+ break;
+
+ case 6:
+ if (obj->frameIndex == 31) {
+ y = 640;
+ index = obj->anim->frameIndices[26];
+ }
+ if (obj->status == 4) {
+ --obj->blinkCtr;
+ if (obj->blinkCtr % 2)
+ y = 600;
+ if (obj->blinkCtr == 0)
+ obj->kind = 0;
+ }
+ break;
+
+ case 7:
+ priority = 540;
+ if (obj->frameIndex == 0)
+ drawList.add(obj->anim->frameIndices[8], obj->x, obj->y, 550);
+ break;
+
+ case 4:
+ if (obj->status == 8) {
+ --obj->blinkCtr;
+ if (obj->blinkCtr % 2)
+ y = 600;
+ if (obj->blinkCtr == 0)
+ obj->kind = 0;
+ }
+ break;
+
+ }
+
+ drawList.add(index, x, y, priority);
+
+ }
+ }
+
+ if (_rapidFireBallsCount > 0) {
+ drawList.add(getAnimation(19)->frameIndices[0], 24, 208, 990);
+ drawList.add(getAnimation(20)->frameIndices[_rapidFireBallsCount / 10 % 10], 19, 198, 2000);
+ drawList.add(getAnimation(20)->frameIndices[_rapidFireBallsCount % 10], 29, 198, 2000);
+
+ }
+
+ if (_backgroundSpriteIndex > 0)
+ drawList.add(_backgroundSpriteIndex, 0, 0, 0);
+
+ drawList.add(getAnimation(8)->frameIndices[0], 9, 53, 500);
+ drawList.add(getAnimation(9)->frameIndices[0], 256, 52, 500);
+ drawList.add(getAnimation(10)->frameIndices[0], 60, 162, 500);
+ drawList.add(getAnimation(21)->frameIndices[0], 36, 18, 2000);
+
+ drawNumber(drawList, _score, 70, 18);
+
+ for (int i = 0; i < _numHearts; ++i)
+ drawList.add(getAnimation(7)->frameIndices[0], 20 + i * 20, 236, 990);
+
+}
+
+void MinigameBbTennis::buildDrawList2(DrawList &drawList) {
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind)
+ drawList.add(obj->anim->frameIndices[obj->frameIndex], obj->x, obj->y, obj->y + 16);
+ }
+
+ if (_backgroundSpriteIndex > 0)
+ drawList.add(_backgroundSpriteIndex, 0, 0, 0);
+
+ drawList.add(getAnimation(21)->frameIndices[0], 36, 18, 2000);
+
+ drawNumber(drawList, _score, 70, 18);
+
+ drawList.add(getAnimation(22)->frameIndices[0], 120, 70, 2000);
+ drawList.add(getAnimation(23)->frameIndices[0], 95, 95, 2000);
+
+ drawNumber(drawList, _hiScore, 210, 109);
+
+}
+
+void MinigameBbTennis::drawSprites() {
+ DrawList drawList;
+ buildDrawList(drawList);
+ _vm->_screen->drawDrawList(drawList, _spriteModule);
+ _vm->_screen->copyToScreen();
+}
+
+void MinigameBbTennis::initObjs() {
+ for (int i = 0; i < kMaxObjectsCount; ++i)
+ _objects[i].kind = 0;
+}
+
+MinigameBbTennis::Obj *MinigameBbTennis::getFreeObject() {
+ for (int i = 0; i < kMaxObjectsCount; ++i)
+ if (_objects[i].kind == 0)
+ return &_objects[i];
+ return 0;
+}
+
+MinigameBbTennis::Obj *MinigameBbTennis::findTennisBall(int startObjIndex) {
+ for (int i = startObjIndex; i < kMaxObjectsCount; ++i)
+ if (_objects[i].kind == 2)
+ return &_objects[i];
+ return 0;
+}
+
+bool MinigameBbTennis::isHit(Obj *obj1, Obj *obj2) {
+ const BBRect &frameRect1 = obj1->anim->frameRects[obj1->frameIndex];
+ const BBRect &frameRect2 = obj2->anim->frameRects[obj2->frameIndex];
+ const int obj1X1 = obj1->x + frameRect1.x;
+ const int obj1Y1 = obj1->y + frameRect1.y;
+ const int obj1X2 = obj1X1 + frameRect1.width;
+ const int obj1Y2 = obj1Y1 + frameRect1.height;
+ const int obj2X1 = obj2->x + frameRect2.x;
+ const int obj2Y1 = obj2->y + frameRect2.y;
+ const int obj2X2 = obj2X1 + frameRect2.width;
+ const int obj2Y2 = obj2Y1 + frameRect2.height;
+ return obj1X1 <= obj2X2 && obj1X2 >= obj2X1 && obj1Y1 <= obj2Y2 && obj1Y2 >= obj2Y1;
+}
+
+void MinigameBbTennis::initObjects() {
+ switch (_gameState) {
+ case 0:
+ initObjects0();
+ break;
+ case 1:
+ initObjects1();
+ break;
+ case 2:
+ initObjects2();
+ break;
+ }
+}
+
+void MinigameBbTennis::initObjects0() {
+ _objects[0].anim = getAnimation(24);
+ _objects[0].frameIndex = 0;
+ _objects[0].ticks = getAnimation(24)->frameTicks[0];
+ _objects[0].x = 160;
+ _objects[0].y = 100;
+ _objects[0].kind = 1;
+ _objects[1].anim = getAnimation(25);
+ _objects[1].frameIndex = 0;
+ _objects[1].ticks = getAnimation(25)->frameTicks[0];
+ _objects[1].x = 40;
+ _objects[1].y = 240;
+ _objects[1].kind = 2;
+ _objects[2].anim = getAnimation(26);
+ _objects[2].frameIndex = 0;
+ _objects[2].ticks = getAnimation(26)->frameTicks[0];
+ _objects[2].x = 280;
+ _objects[2].y = 240;
+ _objects[2].kind = 2;
+}
+
+void MinigameBbTennis::initObjects1() {
+ _objects[0].anim = getAnimation(5);
+ _objects[0].frameIndex = 0;
+ _objects[0].ticks = getAnimation(5)->frameTicks[0];
+ _objects[0].status = 0;
+ _objects[0].x = 160;
+ _objects[0].y = 100;
+ _objects[0].kind = 1;
+ for (int i = 1; i < kMaxObjectsCount; ++i)
+ _objects[i].kind = 0;
+}
+
+void MinigameBbTennis::initObjects2() {
+ // Nothing
+}
+
+void MinigameBbTennis::initVars() {
+ switch (_gameState) {
+ case 0:
+ initVars0();
+ break;
+ case 1:
+ initVars1();
+ break;
+ case 2:
+ initVars2();
+ break;
+ }
+}
+
+void MinigameBbTennis::initVars0() {
+ // Nothing
+}
+
+void MinigameBbTennis::initVars1() {
+ _numHearts = 15;
+ _allHeartsGone = false;
+ _squirrelDelay = 500;
+ _tennisPlayerDelay = 300;
+ _throwerDelay = 400;
+ _netPlayerDelay = 340;
+ _playerDecrease = 0;
+ _delayDecreaseTimer = 0;
+ _numBalls = 0;
+ _newBallTimer = 1;
+ _initBallTimer = 10;
+ _maxBalls = 5;
+ _rapidFireBallsCount = 0;
+ _score = 0;
+ _hitMissRatio = 0;
+ _playedThisIsTheCoolest = false;
+ _startSoundPlayed = false;
+ _endSoundPlaying = false;
+ stopSound(12);
+}
+
+void MinigameBbTennis::initVars2() {
+ if (_score > _hiScore)
+ _hiScore = _score;
+}
+
+bool MinigameBbTennis::updateStatus(int mouseX, int mouseY, uint mouseButtons) {
+ switch (_gameState) {
+ case 0:
+ return updateStatus0(mouseX, mouseY, mouseButtons);
+ case 1:
+ return updateStatus1(mouseX, mouseY, mouseButtons);
+ case 2:
+ return updateStatus2(mouseX, mouseY, mouseButtons);
+ }
+ return false;
+}
+
+bool MinigameBbTennis::updateStatus0(int mouseX, int mouseY, uint mouseButtons) {
+
+ if ((mouseButtons & kLeftButtonDown) || (mouseButtons & kRightButtonDown)) {
+ _gameState = 1;
+ initObjects();
+ initVars();
+ _gameTicks = 0;
+ return true;
+ }
+
+ _objects[0].x = mouseX;
+ _objects[0].y = mouseY;
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ if (obj->kind == 2) {
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex >= obj->anim->frameCount)
+ obj->frameIndex = 0;
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ }
+ }
+ }
+
+ return true;
+}
+
+bool MinigameBbTennis::updateStatus1(int mouseX, int mouseY, uint mouseButtons) {
+
+ _objects[0].x = mouseX;
+ _objects[0].y = mouseY;
+
+ if (_allHeartsGone) {
+ _gameState = 2;
+ initObjects();
+ initVars();
+ _gameTicks = 0;
+ return true;
+ }
+
+ if (!_startSoundPlayed) {
+ playSound(12);
+ _startSoundPlayed = true;
+ }
+
+ if (((mouseButtons & kLeftButtonClicked) || (_rapidFireBallsCount > 0 && (mouseButtons & kLeftButtonDown))) &&
+ _newBallTimer == 0 && _numBalls < _maxBalls) {
+ // Insert a ball
+ Obj *obj = getFreeObject();
+ obj->anim = getAnimation(6);
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(6)->frameTicks[0];
+ obj->x = 160;
+ obj->y = 240;
+ obj->kind = 2;
+ obj->targetX = mouseX;
+ obj->targetY = mouseY;
+ obj->ballStep = 12;
+ obj->ballStepCtr = 0;
+ obj->fltX = 160.0;
+ obj->fltY = 240.0;
+ obj->fltStepX = ((160 - mouseX) * 0.75) / 12.0;
+ obj->fltStepY = ((240 - mouseY) * 0.75) / 12.0;
+ _newBallTimer = _initBallTimer;
+ ++_numBalls;
+ playSound(31);
+ if (_rapidFireBallsCount > 0 && --_rapidFireBallsCount == 0) {
+ _initBallTimer = 10;
+ _maxBalls = 5;
+ }
+ }
+
+ if (_newBallTimer > 0)
+ --_newBallTimer;
+
+ if (++_delayDecreaseTimer == 30) {
+ _delayDecreaseTimer = 0;
+ if (_playerDecrease < 199)
+ ++_playerDecrease;
+ }
+
+ updateObjs();
+
+ if (!_playedThisIsTheCoolest && _score > 3 && _vm->getRandom(10) == 1 && !isAnySoundPlaying(kAllSounds, 11)) {
+ _playedThisIsTheCoolest = true;
+ playSound(9);
+ }
+
+ return true;
+}
+
+bool MinigameBbTennis::updateStatus2(int mouseX, int mouseY, uint mouseButtons) {
+ if (_endSoundPlaying) {
+ if (!isSoundPlaying(21) && _fromMainGame) {
+ //_vm->delayMillis(1000);
+ _gameDone = true;
+ }
+ } else {
+ playSound(21);
+ _endSoundPlaying = true;
+ }
+ return true;
+}
+
+void MinigameBbTennis::updateObjs() {
+
+ for (int i = 0; i < kMaxObjectsCount; ++i) {
+ Obj *obj = &_objects[i];
+ switch (obj->kind) {
+ case 2:
+ updateTennisBall(i);
+ break;
+ case 3:
+ updateSquirrel(i);
+ break;
+ case 4:
+ updateTennisPlayer(i);
+ break;
+ case 5:
+ updateThrower(i);
+ break;
+ case 6:
+ updateNetPlayer(i);
+ break;
+ case 7:
+ updateEnemyTennisBall(i);
+ break;
+ }
+ }
+
+ if (_rapidFireBallsCount == 0) {
+ --_squirrelDelay;
+ if (--_squirrelDelay == 0) {
+ Obj *obj = getFreeObject();
+ obj->kind = 3;
+ obj->x = 100;
+ obj->y = 69;
+ obj->anim = getAnimation(1);
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(1)->frameTicks[0];
+ obj->status = 0;
+ obj->blinkCtr = _vm->getRandom(128) + 10;
+ _squirrelDelay = _vm->getRandom(512) + 1000;
+ }
+ }
+
+ if (--_tennisPlayerDelay == 0) {
+ Obj *obj = getFreeObject();
+ obj->kind = 4;
+ obj->y = 146;
+ obj->anim = getAnimation(11);
+ obj->ticks = getAnimation(11)->frameTicks[0];
+ if (_vm->getRandom(2) == 1) {
+ obj->x = 40;
+ obj->frameIndex = 0;
+ obj->status = 0;
+ } else {
+ obj->x = _vm->getRandom(2) == 1 ? 40 : 274;
+ obj->frameIndex = 16;
+ obj->status = 4;
+ }
+ obj->blinkCtr = _vm->getRandom(64) + 60;
+ _tennisPlayerDelay = _vm->getRandom(128) + 400 - _playerDecrease;
+ if (_vm->getRandom(10) == 1 && !isAnySoundPlaying(kAllSounds, 0x11))
+ playSound(kYuppieEnteringCourtSounds[_vm->getRandom(2)]);
+ }
+
+ if (--_throwerDelay == 0) {
+ Obj *obj = getFreeObject();
+ obj->kind = 5;
+ obj->x = 50;
+ obj->y = 62;
+ obj->anim = getAnimation(12);
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(12)->frameTicks[0];
+ obj->status = 0;
+ _throwerDelay = _vm->getRandom(128) + 200 - _playerDecrease;
+ if (_vm->getRandom(10) == 1 && !isAnySoundPlaying(kAllSounds, 11))
+ playSound(kYuppieChargeSounds[_vm->getRandom(2)]);
+ }
+
+ if (--_netPlayerDelay == 0) {
+ Obj *obj = getFreeObject();
+ obj->kind = 6;
+ obj->y = 176;
+ if (_vm->getRandom(2) == 1) {
+ obj->x = 110;
+ obj->netPlayDirection = 1;
+ obj->anim = getAnimation(kLeftNetPlayAnims[_vm->getRandom(3)]);
+ } else {
+ obj->x = 216;
+ obj->netPlayDirection = 0;
+ obj->anim = getAnimation(kRightNetPlayAnims[_vm->getRandom(3)]);
+ }
+ obj->frameIndex = 1;
+ obj->ticks = obj->anim->frameTicks[1];
+ obj->status = 0;
+ obj->blinkCtr = 1;
+ _netPlayerDelay = _vm->getRandom(128) + 250 - _playerDecrease;
+ if (_vm->getRandom(10) == 1 && !isAnySoundPlaying(kAllSounds, 11))
+ playSound(kYuppieChargeSounds[_vm->getRandom(2)]);
+ }
+
+}
+
+void MinigameBbTennis::updateTennisBall(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 7) {
+ obj->kind = 0;
+ --_numBalls;
+ if (_hitMissRatio > 0) {
+ if (--_hitMissRatio == 0 && _vm->getRandom(8) == 1 && !isAnySoundPlaying(kAllSounds, 11))
+ playSound(3);
+ } else {
+ if (_vm->getRandom(10) == 1 && !isAnySoundPlaying(kAllSounds, 11))
+ playSound(3);
+ }
+ return;
+ }
+ obj->ticks = getAnimation(6)->frameTicks[obj->frameIndex];
+ }
+
+ if (--obj->ballStep == 0) {
+ obj->ballStep = 12;
+ ++obj->ballStepCtr;
+ if (obj->ballStepCtr == 1) {
+ obj->fltStepX = ((obj->fltX - (float)obj->targetX) * 0.75) / 12.0;
+ obj->fltStepY = ((obj->fltY - (float)obj->targetY) * 0.75) / 12.0;
+ } else if (obj->ballStepCtr == 2) {
+ obj->fltStepX = (obj->fltX - (float)obj->targetX) / 12.0;
+ obj->fltStepY = (obj->fltY - (float)obj->targetY) / 12.0;
+ } else {
+ obj->fltStepX = 0.0;
+ obj->fltStepY = 0.0;
+ }
+ }
+
+ obj->fltX = obj->fltX - obj->fltStepX;
+ obj->x = obj->fltX;
+ obj->fltY = obj->fltY - obj->fltStepY;
+ obj->y = obj->fltY;
+
+}
+
+void MinigameBbTennis::updateSquirrel(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ switch (obj->status) {
+
+ case 0:
+ --obj->ticks;
+ if (--obj->ticks == 0) {
+ if (++obj->frameIndex == 4) {
+ obj->anim = getAnimation(0);
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(0)->frameTicks[0];
+ obj->y += 2;
+ ++obj->status;
+ } else {
+ obj->ticks = getAnimation(1)->frameTicks[obj->frameIndex];
+ ++_squirrelDelay;
+ }
+ } else {
+ ++_squirrelDelay;
+ }
+ break;
+
+ case 1:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 4)
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(0)->frameTicks[obj->frameIndex];
+ }
+ ++obj->x;
+ if (obj->x < 230) {
+ if (--obj->blinkCtr <= 0) {
+ obj->anim = getAnimation(4);
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(4)->frameTicks[obj->frameIndex];
+ obj->status = 3;
+ }
+ ++_squirrelDelay;
+ } else {
+ obj->anim = getAnimation(2);
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(2)->frameTicks[0];
+ obj->y -= 2;
+ ++obj->status;
+ }
+ break;
+
+ case 2:
+ if (--obj->ticks == 0) {
+ if (++obj->frameIndex == 4) {
+ obj->kind = 0;
+ } else {
+ obj->ticks = getAnimation(2)->frameTicks[0];
+ ++_squirrelDelay;
+ }
+ } else {
+ ++_squirrelDelay;
+ }
+ break;
+
+ case 3:
+ if (--obj->ticks) {
+ if (++obj->frameIndex == 2) {
+ obj->anim = getAnimation(0);
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(0)->frameTicks[0];
+ obj->status = 1;
+ obj->blinkCtr = _vm->getRandom(128) + 10;
+ } else {
+ obj->ticks = getAnimation(4)->frameTicks[obj->frameIndex];
+ ++_squirrelDelay;
+ }
+ } else {
+ ++_squirrelDelay;
+ }
+ break;
+
+ case 4:
+ if (--obj->ticks == 0) {
+ if (++obj->frameIndex == 5) {
+ obj->kind = 0;
+ } else {
+ obj->ticks = getAnimation(3)->frameTicks[obj->frameIndex];
+ ++_squirrelDelay;
+ }
+ } else {
+ ++_squirrelDelay;
+ }
+ break;
+
+ }
+
+ if (obj->status != 4) {
+ int tennisBallObjIndex = 0;
+ Obj *tennisBallObj = findTennisBall(tennisBallObjIndex++);
+ while (tennisBallObj) {
+ if (tennisBallObj->frameIndex >= 6 && isHit(obj, tennisBallObj)) {
+ hitSomething();
+ tennisBallObj->kind = 0;
+ --_numBalls;
+ obj->status = 4;
+ obj->anim = getAnimation(3);
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(3)->frameTicks[0];
+ _rapidFireBallsCount = 50;
+ _maxBalls = 10;
+ _initBallTimer = 6;
+ if (!isAnySoundPlaying(kAllSounds, 11))
+ playSound(4);
+ break;
+ }
+ tennisBallObj = findTennisBall(tennisBallObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbTennis::updateTennisPlayer(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ switch (obj->status) {
+
+ case 0:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 6)
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(11)->frameTicks[0];
+ }
+ ++obj->x;
+ if (obj->x == 280)
+ obj->kind = 0;
+ --obj->blinkCtr;
+ if (obj->blinkCtr <= 0) {
+ obj->frameIndex = 6;
+ obj->ticks = getAnimation(11)->frameTicks[6];
+ ++obj->status;
+ }
+ ++_tennisPlayerDelay;
+ break;
+
+ case 1:
+ if (--obj->ticks == 0) {
+ if (++obj->frameIndex == 9) {
+ if (obj->x < 210) {
+ obj->frameIndex = 9;
+ obj->status = 2;
+ } else {
+ obj->frameIndex = 15;
+ obj->status = 3;
+ }
+ obj->blinkCtr = _vm->getRandom(64) + 40;
+ }
+ obj->ticks = getAnimation(11)->frameTicks[obj->frameIndex];
+ }
+ if ((obj->ticks % 2) && obj->frameIndex != 8) {
+ ++obj->x;
+ if (obj->x == 280)
+ obj->kind = 0;
+ }
+ ++_tennisPlayerDelay;
+ break;
+
+ case 2:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 15)
+ ++obj->status;
+ obj->ticks = getAnimation(11)->frameTicks[obj->frameIndex];
+ if (obj->frameIndex == 13)
+ makeEnemyBall(obj->x, obj->y - 31, 4);
+ }
+ ++_tennisPlayerDelay;
+ break;
+
+ case 3:
+ if (--obj->ticks == 0) {
+ ++obj->status;
+ obj->frameIndex = 16;
+ obj->ticks = getAnimation(11)->frameTicks[16];
+ }
+ if (obj->ticks % 2) {
+ --obj->x;
+ if (obj->x <= 40)
+ obj->kind = 0;
+ } else
+ ++_tennisPlayerDelay;
+ break;
+
+ case 4:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 22)
+ obj->frameIndex = 16;
+ obj->ticks = getAnimation(11)->frameTicks[obj->frameIndex];
+ }
+ --obj->x;
+ if (obj->x > 40) {
+ if (--obj->blinkCtr <= 0) {
+ ++obj->status;
+ obj->frameIndex = 22;
+ obj->ticks = getAnimation(11)->frameTicks[22];
+ }
+ ++_tennisPlayerDelay;
+ } else {
+ obj->kind = 0;
+ }
+ break;
+
+ case 5:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 25) {
+ if (obj->x <= 70) {
+ obj->frameIndex = 33;
+ obj->status = 7;
+ } else {
+ obj->frameIndex = 25;
+ obj->status = 6;
+ }
+ obj->blinkCtr = _vm->getRandom(64) + 40;
+ }
+ obj->ticks = getAnimation(11)->frameTicks[obj->frameIndex];
+ }
+ if ((obj->ticks % 2) && obj->frameIndex != 24) {
+ --obj->x;
+ if (obj->x <= 40)
+ obj->kind = 0;
+ } else
+ ++_tennisPlayerDelay;
+ break;
+
+ case 6:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 33)
+ ++obj->status;
+ obj->ticks = getAnimation(11)->frameTicks[obj->frameIndex];
+ if (obj->frameIndex == 31)
+ makeEnemyBall(obj->x + 8, obj->y - 49, 4);
+ }
+ ++_tennisPlayerDelay;
+ break;
+
+ case 7:
+ if (--obj->ticks == 0) {
+ obj->frameIndex = 0;
+ obj->ticks = getAnimation(11)->frameTicks[0];
+ obj->status = 0;
+ }
+ if (obj->ticks % 2) {
+ ++obj->x;
+ if (obj->x == 280)
+ obj->kind = 0;
+ }
+ ++_tennisPlayerDelay;
+ break;
+
+ case 8:
+ break;
+
+ }
+
+ if (obj->status != 8) {
+ int tennisBallObjIndex = 0;
+ Obj *tennisBallObj = findTennisBall(tennisBallObjIndex++);
+ while (tennisBallObj) {
+ if (tennisBallObj->frameIndex >= 6 && isHit(obj, tennisBallObj)) {
+ hitSomething();
+ tennisBallObj->kind = 0;
+ --_numBalls;
+ obj->status = 8;
+ obj->blinkCtr = 20;
+ playSound(kYuppieHitSounds[_vm->getRandom(6)]);
+ break;
+ }
+ tennisBallObj = findTennisBall(tennisBallObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbTennis::updateThrower(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ switch (obj->status) {
+
+ case 0:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 4)
+ ++obj->status;
+ obj->ticks = getAnimation(12)->frameTicks[obj->frameIndex];
+ }
+ ++_throwerDelay;
+ break;
+
+ case 1:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 8)
+ ++obj->status;
+ obj->ticks = getAnimation(12)->frameTicks[obj->frameIndex];
+ if (obj->frameIndex == 7)
+ makeEnemyBall(obj->x - 10, obj->y - 10, 3);
+ }
+ ++_throwerDelay;
+ break;
+
+ case 2:
+ --obj->ticks;
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 12) {
+ obj->kind = 0;
+ } else {
+ obj->ticks = getAnimation(12)->frameTicks[obj->frameIndex];
+ ++_throwerDelay;
+ }
+ } else {
+ ++_throwerDelay;
+ }
+ break;
+
+ case 3:
+ --obj->ticks;
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 14) {
+ obj->kind = 0;
+ } else {
+ obj->ticks = getAnimation(12)->frameTicks[obj->frameIndex];
+ ++_throwerDelay;
+ }
+ } else {
+ ++_throwerDelay;
+ }
+ break;
+
+ }
+
+ if (obj->status != 3) {
+ int tennisBallObjIndex = 0;
+ Obj *tennisBallObj = findTennisBall(tennisBallObjIndex++);
+ while (tennisBallObj) {
+ if (tennisBallObj->frameIndex >= 5 && tennisBallObj->frameIndex <= 7 && isHit(obj, tennisBallObj)) {
+ hitSomething();
+ tennisBallObj->kind = 0;
+ --_numBalls;
+ obj->status = 3;
+ obj->frameIndex = 12;
+ obj->ticks = getAnimation(12)->frameTicks[12];
+ playSound(kYuppieHitSounds[_vm->getRandom(6)]);
+ break;
+ }
+ tennisBallObj = findTennisBall(tennisBallObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbTennis::updateNetPlayer(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ switch (obj->status) {
+
+ case 0:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 15) {
+ obj->blinkCtr = _vm->getRandom(32) + 10;
+ ++obj->status;
+ obj->frameIndex = 31;
+ } else {
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ ++_netPlayerDelay;
+ }
+ } else {
+ ++_netPlayerDelay;
+ }
+ break;
+
+ case 1:
+ if (--obj->blinkCtr <= 0) {
+ ++obj->status;
+ obj->frameIndex = 15;
+ obj->ticks = obj->anim->frameTicks[15];
+ obj->x = _vm->getRandom(128) + 100;
+ }
+ ++_netPlayerDelay;
+ break;
+
+ case 2:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 24) {
+ ++obj->status;
+ obj->frameIndex = 28;
+ }
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ if (obj->frameIndex == 23)
+ makeEnemyBall(obj->x - 8, obj->y - 40, 3);
+ }
+ ++_netPlayerDelay;
+ break;
+
+ case 3:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 31) {
+ obj->status = 1;
+ obj->frameIndex = 31;
+ obj->blinkCtr = _vm->getRandom(32) + 10;
+ } else {
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ ++_netPlayerDelay;
+ }
+ } else {
+ ++_netPlayerDelay;
+ }
+ break;
+
+ case 5:
+ if (--obj->ticks == 0) {
+ ++obj->frameIndex;
+ if (obj->frameIndex == 27)
+ obj->kind = 0;
+ obj->ticks = obj->anim->frameTicks[obj->frameIndex];
+ }
+ break;
+
+ case 4:
+ break;
+
+ }
+
+ if (obj->status < 4 && obj->frameIndex != 31) {
+ int tennisBallObjIndex = 0;
+ Obj *tennisBallObj = findTennisBall(tennisBallObjIndex++);
+ while (tennisBallObj) {
+ if (obj->status == 0 && tennisBallObj->frameIndex >= 3 && tennisBallObj->frameIndex <= 6 &&
+ isHit(obj, tennisBallObj)) {
+ hitSomething();
+ tennisBallObj->kind = 0;
+ --_numBalls;
+ if (obj->netPlayDirection) {
+ obj->x += kLeftPlayerOffX[obj->frameIndex] + 10;
+ obj->y += kLeftPlayerOffY[obj->frameIndex] + 10;
+ } else {
+ obj->x -= kLeftPlayerOffX[obj->frameIndex] + 12;
+ obj->y += kLeftPlayerOffY[obj->frameIndex] + 10;
+ }
+ obj->status = 4;
+ obj->frameIndex = 0;
+ obj->blinkCtr = 20;
+ playSound(kYuppieHitSounds[_vm->getRandom(6)]);
+ break;
+ } else if (obj->status > 1 && obj->status < 4 && tennisBallObj->frameIndex >= 3 && tennisBallObj->frameIndex <= 4 &&
+ isHit(obj, tennisBallObj)) {
+ hitSomething();
+ tennisBallObj->kind = 0;
+ --_numBalls;
+ obj->status = 5;
+ obj->frameIndex = 24;
+ obj->ticks = obj->anim->frameTicks[24];
+ playSound(kYuppieHitSounds[_vm->getRandom(6)]);
+ break;
+ }
+ tennisBallObj = findTennisBall(tennisBallObjIndex++);
+ }
+ }
+
+}
+
+void MinigameBbTennis::updateEnemyTennisBall(int objIndex) {
+ Obj *obj = &_objects[objIndex];
+
+ if (--obj->ticks == 0) {
+ --obj->frameIndex;
+ obj->ticks = getAnimation(6)->frameTicks[obj->frameIndex];
+ }
+
+ if (--obj->ballStep == 0) {
+ obj->ballStep = 12;
+ --obj->ballStepCtr;
+ if (obj->ballStepCtr == 1) {
+ obj->fltStepX = (obj->fltX - (float)obj->targetX) / 12.0;
+ obj->fltStepY = (obj->fltY - (float)obj->targetY) / 12.0;
+ } else if (obj->ballStepCtr == 2) {
+ obj->fltStepX = ((obj->fltX - (float)obj->targetX) * 0.18) / 12.0;
+ obj->fltStepY = ((obj->fltY - (float)obj->targetY) * 0.18) / 12.0;
+ } else {
+ obj->kind = 0;
+ if (_numHearts > 0 && --_numHearts == 0)
+ _allHeartsGone = true;
+ }
+ }
+
+ obj->fltX = obj->fltX - obj->fltStepX;
+ obj->x = obj->fltX;
+ obj->fltY = obj->fltY - obj->fltStepY;
+ obj->y = obj->fltY;
+
+}
+
+void MinigameBbTennis::makeEnemyBall(int x, int y, int frameIndex) {
+ Obj *obj = getFreeObject();
+
+ obj->kind = 7;
+ obj->x = x;
+ obj->y = y;
+ obj->anim = getAnimation(6);
+ obj->frameIndex = frameIndex;
+ obj->ticks = getAnimation(6)->frameTicks[frameIndex];
+ obj->targetX = 160;
+ obj->targetY = 180;
+ obj->fltX = (float)x;
+ obj->fltY = (float)y;
+
+ switch (frameIndex) {
+
+ case 6:
+ obj->ballStep = 18;
+ obj->ballStepCtr = 3;
+ obj->fltStepX = 0.0;
+ obj->fltStepY = 0.0;
+ break;
+
+ case 5:
+ obj->ballStep = 12;
+ obj->ballStepCtr = 3;
+ obj->fltStepX = ((float)(x - 160) * 0.07) / 12.0;
+ obj->fltStepY = ((float)(y - 180) * 0.07) / 12.0;
+ break;
+
+ case 4:
+ obj->ballStep = 6;
+ obj->ballStepCtr = 3;
+ obj->fltStepX = ((float)(x - 160) * 0.07) / 6.0;
+ obj->fltStepY = ((float)(y - 180) * 0.07) / 6.0;
+ break;
+
+ case 3:
+ obj->ballStep = 12;
+ obj->ballStepCtr = 2;
+ obj->fltStepX = ((float)(x - 160) * 0.18) / 12.0;
+ obj->fltStepY = ((float)(y - 180) * 0.18) / 12.0;
+ break;
+
+ case 2:
+ obj->ballStep = 6;
+ obj->ballStepCtr = 2;
+ obj->fltStepX = ((float)(x - 160) * 0.18) / 6.0;
+ obj->fltStepY = ((float)(y - 180) * 0.18) / 6.0;
+ break;
+
+ case 1:
+ obj->ballStep = 12;
+ obj->ballStepCtr = 1;
+ obj->fltStepX = (float)((x - 160) / 12);
+ obj->fltStepY = (float)((y - 180) / 12);
+ break;
+
+ case 0:
+ obj->ballStep = 6;
+ obj->ballStepCtr = 1;
+ obj->fltStepX = (float)((x - 160) / 6);
+ obj->fltStepY = (float)((y - 180) / 6);
+ break;
+
+ }
+
+}
+
+void MinigameBbTennis::hitSomething() {
+ if (_hitMissRatio < 15)
+ _hitMissRatio += 3;
+ ++_score;
+}
+
+bool MinigameBbTennis::run(bool fromMainGame) {
+
+ memset(_objects, 0, sizeof(_objects));
+
+ _numbersAnim = getAnimation(20);
+
+ _backgroundSpriteIndex = 272;
+ _titleScreenSpriteIndex = 273;
+
+ _fromMainGame = fromMainGame;
+
+ _hiScore = 0;
+ if (!_fromMainGame)
+ _hiScore = loadHiscore(kMinigameBbTennis);
+
+ _gameState = 0;
+ _gameResult = false;
+ _gameDone = false;
+ initObjects();
+ initVars();
+
+ _spriteModule = new SpriteModule();
+ _spriteModule->load("bbtennis/bbtennis.000");
+
+ Palette palette = _spriteModule->getPalette();
+ _vm->_screen->setPalette(palette);
+
+ loadSounds();
+
+ _gameTicks = 0;
+ playSound(29, true);
+
+ while (!_vm->shouldQuit() &&!_gameDone) {
+ _vm->updateEvents();
+ update();
+ }
+
+ _vm->_sound->unloadSounds();
+
+ if (!_fromMainGame)
+ saveHiscore(kMinigameBbTennis, _hiScore);
+
+ delete _spriteModule;
+
+ return _gameResult;
+}
+
+void MinigameBbTennis::update() {
+
+ int inputTicks;
+
+ if (_gameTicks > 0) {
+ int currTicks = _vm->_system->getMillis();
+ inputTicks = 3 * (currTicks - _gameTicks) / 50;
+ _gameTicks = currTicks - (currTicks - _gameTicks - 50 * inputTicks / 3);
+ } else {
+ inputTicks = 1;
+ _gameTicks = _vm->_system->getMillis();
+ }
+
+ if (_vm->_keyCode == Common::KEYCODE_ESCAPE) {
+ _gameDone = true;
+ return;
+ }
+
+ if (inputTicks == 0)
+ return;
+
+ bool done;
+
+ do {
+ done = !updateStatus(_vm->_mouseX, _vm->_mouseY, _vm->_mouseButtons);
+ _vm->_mouseButtons &= ~kLeftButtonClicked;
+ _vm->_mouseButtons &= ~kRightButtonClicked;
+ _vm->_keyCode = Common::KEYCODE_INVALID;
+ } while (--inputTicks && _gameTicks > 0 && !done);
+
+ drawSprites();
+
+ _vm->_system->delayMillis(10);
+
+}
+
+void MinigameBbTennis::loadSounds() {
+ for (uint i = 0; i < kSoundFilenamesCount; ++i) {
+ Common::String filename = Common::String::format("bbtennis/%s", kSoundFilenames[i]);
+ _vm->_sound->loadSound(filename.c_str());
+ }
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/bbtennis.h b/engines/bbvs/minigames/bbtennis.h
new file mode 100644
index 0000000000..690bd724a0
--- /dev/null
+++ b/engines/bbvs/minigames/bbtennis.h
@@ -0,0 +1,134 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_MINIGAMES_BBTENNIS_H
+#define BBVS_MINIGAMES_BBTENNIS_H
+
+#include "bbvs/minigames/minigame.h"
+
+namespace Bbvs {
+
+class MinigameBbTennis : public Minigame {
+public:
+ MinigameBbTennis(BbvsEngine *vm) : Minigame(vm) {};
+ bool run(bool fromMainGame);
+public:
+
+ struct Obj {
+ int kind;
+ int x, y;
+ const ObjAnimation *anim;
+ int frameIndex;
+ int ticks;
+ int status;
+ int blinkCtr;
+ float fltStepX;
+ float fltStepY;
+ float fltX;
+ float fltY;
+ int targetX;
+ int targetY;
+ int ballStep;
+ int ballStepCtr;
+ int netPlayDirection;
+ };
+
+ enum {
+ kMaxObjectsCount = 256
+ };
+
+ enum {
+ kGSTitleScreen = 0, // Title screen
+ kGSMainGame = 1, // Game when called as part of the main game
+ kGSStandaloneGame = 2, // Game when called as standalone game
+ kGSScoreCountUp = 3 // Score countup and next level text
+ };
+
+ Obj _objects[kMaxObjectsCount];
+
+ int _numHearts;
+ int _squirrelDelay;
+ int _tennisPlayerDelay;
+ int _throwerDelay;
+ int _netPlayerDelay;
+ int _playerDecrease;
+ int _delayDecreaseTimer;
+ int _numBalls;
+ int _newBallTimer;
+ int _initBallTimer;
+ int _maxBalls;
+ int _rapidFireBallsCount;
+ int _score, _hiScore;
+ int _hitMissRatio;
+ bool _allHeartsGone;
+ bool _playedThisIsTheCoolest;
+ bool _startSoundPlayed;
+ bool _endSoundPlaying;
+
+ const ObjAnimation *getAnimation(int animIndex);
+
+ void buildDrawList(DrawList &drawList);
+ void buildDrawList0(DrawList &drawList);
+ void buildDrawList1(DrawList &drawList);
+ void buildDrawList2(DrawList &drawList);
+
+ void drawSprites();
+
+ void initObjs();
+ Obj *getFreeObject();
+ Obj *findTennisBall(int startObjIndex);
+ bool isHit(Obj *obj1, Obj *obj2);
+
+ void initObjects();
+ void initObjects0();
+ void initObjects1();
+ void initObjects2();
+
+ void initVars();
+ void initVars0();
+ void initVars1();
+ void initVars2();
+
+ bool updateStatus(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus0(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus1(int mouseX, int mouseY, uint mouseButtons);
+ bool updateStatus2(int mouseX, int mouseY, uint mouseButtons);
+
+ void updateObjs();
+ void updateTennisBall(int objIndex);
+ void updateSquirrel(int objIndex);
+ void updateTennisPlayer(int objIndex);
+ void updateThrower(int objIndex);
+ void updateNetPlayer(int objIndex);
+ void updateEnemyTennisBall(int objIndex);
+ void makeEnemyBall(int x, int y, int frameIndex);
+ void hitSomething();
+
+ void update();
+
+ void loadSounds();
+
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_MINIGAMES_BBTENNIS_H
diff --git a/engines/bbvs/minigames/bbtennis_anims.cpp b/engines/bbvs/minigames/bbtennis_anims.cpp
new file mode 100644
index 0000000000..7441c66749
--- /dev/null
+++ b/engines/bbvs/minigames/bbtennis_anims.cpp
@@ -0,0 +1,142 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/minigames/bbtennis.h"
+
+namespace Bbvs {
+
+static const int kAnim0FrameIndices[] = {0, 1, 2, 3};
+static const int16 kAnim0FrameTicks[] = {6, 6, 6, 6};
+static const BBRect kAnim0FrameRects[] = {{-15, -11, 22, 10}, {-15, -12, 23, 10}, {-14, -11, 22, 8}, {-13, -11, 20, 10}};
+static const int kAnim1FrameIndices[] = {4, 5, 6, 7, 8, 3};
+static const int16 kAnim1FrameTicks[] = {6, 6, 6, 6, 6, 6};
+static const BBRect kAnim1FrameRects[] = {{-16, -3, 7, 6}, {-13, -8, 11, 10}, {-14, -12, 15, 12}, {-15, -10, 17, 10}, {-17, -10, 22, 9}, {-13, -12, 20, 12}};
+static const int kAnim2FrameIndices[] = {9, 10, 11, 12};
+static const int16 kAnim2FrameTicks[] = {6, 8, 8, 8};
+static const BBRect kAnim2FrameRects[] = {{-11, -14, 20, 14}, {-1, -14, 10, 15}, {3, -9, 6, 10}, {2, -5, 7, 6}};
+static const int kAnim3FrameIndices[] = {13, 14, 15, 16, 17};
+static const int16 kAnim3FrameTicks[] = {8, 8, 6, 6, 6};
+static const BBRect kAnim3FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim4FrameIndices[] = {18, 19};
+static const int16 kAnim4FrameTicks[] = {61, 22};
+static const BBRect kAnim4FrameRects[] = {{-8, -12, 14, 11}, {-8, -12, 14, 11}};
+static const int kAnim5FrameIndices[] = {20};
+static const int16 kAnim5FrameTicks[] = {6};
+static const BBRect kAnim5FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim6FrameIndices[] = {21, 22, 23, 24, 25, 26, 27, 28, 29};
+static const int16 kAnim6FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim6FrameRects[] = {{-59, -43, 114, 114}, {-24, -13, 44, 46}, {-12, -5, 24, 25}, {-8, -3, 15, 15}, {-5, -3, 8, 8}, {-3, -2, 5, 5}, {-1, -1, 3, 3}, {0, 0, 2, 2}, {-56, 25, 102, 50}};
+static const int kAnim7FrameIndices[] = {30};
+static const int16 kAnim7FrameTicks[] = {6};
+static const BBRect kAnim7FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim8FrameIndices[] = {31};
+static const int16 kAnim8FrameTicks[] = {6};
+static const BBRect kAnim8FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim9FrameIndices[] = {32};
+static const int16 kAnim9FrameTicks[] = {6};
+static const BBRect kAnim9FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim10FrameIndices[] = {33};
+static const int16 kAnim10FrameTicks[] = {6};
+static const BBRect kAnim10FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim11FrameIndices[] = {34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 48, 58, 59, 60, 61, 62, 63, 64, 42, 65};
+static const int16 kAnim11FrameTicks[] = {10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 6, 6, 6, 6, 10, 10, 10, 10};
+static const BBRect kAnim11FrameRects[] = {{0, -50, 16, 47}, {1, -49, 16, 47}, {-1, -49, 17, 46}, {0, -47, 16, 45}, {2, -46, 15, 46}, {0, -48, 17, 45}, {2, -50, 14, 49}, {-2, -46, 17, 46}, {0, -57, 15, 57}, {-2, -56, 14, 56}, {-4, -56, 13, 56}, {-4, -56, 15, 56}, {5, -51, 14, 49}, {4, -52, 15, 52}, {-1, -57, 13, 57}, {0, -55, 14, 55}, {-5, -50, 17, 49}, {-9, -50, 17, 49}, {-9, -48, 16, 47}, {-6, -49, 14, 48}, {-8, -50, 17, 50}, {-10, -48, 19, 48}, {-2, -50, 14, 50}, {2, -47, 13, 48}, {-1, -57, 13, 57}, {4, -55, 12, 56}, {4, -58, 13, 59}, {5, -58, 12, 59}, {5, -57, 15, 58}, {1, -57, 14, 57}, {-7, -51, 15, 51}, {-5, -53, 16, 53}, {0, -57, 15, 57}, {1, -55, 14, 55}};
+static const int kAnim12FrameIndices[] = {66, 67, 68, 69, 70, 71, 72, 73, 69, 68, 67, 66, 74, 75};
+static const int16 kAnim12FrameTicks[] = {10, 10, 10, 20, 10, 10, 6, 10, 20, 10, 10, 10, 8, 6};
+static const BBRect kAnim12FrameRects[] = {{-5, -8, 12, 6}, {-12, -17, 24, 15}, {-12, -28, 24, 28}, {-10, -36, 20, 35}, {-9, -36, 18, 37}, {-11, -37, 17, 38}, {-6, -36, 16, 34}, {-5, -35, 20, 39}, {-10, -36, 20, 35}, {-12, -28, 24, 28}, {-12, -17, 24, 15}, {-5, -8, 12, 6}, {-15, -27, 23, 38}, {-19, -17, 15, 17}};
+static const int kAnim13FrameIndices[] = {76, 77, 78, 77, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 98, 102, 103, 90};
+static const int16 kAnim13FrameTicks[] = {16, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 6, 10, 10, 6, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim13FrameRects[] = {{-21, -61, 16, 52}, {-42, -76, 7, 14}, {-43, -75, 13, 24}, {-42, -76, 7, 14}, {-42, -75, 4, 42}, {-42, -76, 11, 57}, {-40, -74, 13, 55}, {-36, -74, 11, 55}, {-31, -72, 12, 56}, {-27, -71, 14, 57}, {-20, -69, 15, 55}, {-12, -65, 15, 51}, {-7, -57, 18, 44}, {-3, -43, 18, 29}, {4, -27, 20, 14}, {0, -28, 13, 14}, {0, -38, 14, 24}, {-1, -49, 19, 36}, {0, -61, 17, 47}, {-2, -63, 19, 49}, {-5, -64, 19, 50}, {-3, -62, 18, 48}, {0, -61, 19, 47}, {0, -61, 16, 47}, {-4, -48, 17, 34}, {-9, -37, 15, 23}, {-13, -26, 14, 12}, {0, -61, 16, 47}, {0, -50, 15, 36}, {0, -39, 13, 25}, {0, -28, 12, 14}};
+static const int kAnim14FrameIndices[] = {104, 105, 106, 105, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 126, 130, 131, 118};
+static const int16 kAnim14FrameTicks[] = {16, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 6, 10, 10, 6, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim14FrameRects[] = {{6, -61, 14, 52}, {35, -77, 7, 16}, {29, -76, 13, 24}, {35, -77, 7, 16}, {38, -76, 4, 43}, {32, -75, 10, 55}, {24, -74, 16, 54}, {22, -74, 14, 53}, {18, -72, 12, 55}, {12, -71, 15, 57}, {2, -69, 17, 55}, {-5, -65, 18, 51}, {-13, -57, 18, 43}, {-20, -43, 23, 29}, {-26, -30, 25, 16}, {-13, -28, 13, 14}, {-16, -38, 24, 24}, {-16, -49, 20, 35}, {-15, -61, 17, 47}, {-15, -63, 17, 49}, {-13, -64, 17, 51}, {-14, -62, 15, 48}, {-19, -61, 19, 47}, {-16, -61, 16, 48}, {-18, -48, 22, 34}, {-6, -37, 14, 23}, {0, -27, 12, 14}, {-16, -61, 16, 48}, {-16, -50, 19, 36}, {-14, -39, 15, 25}, {-12, -28, 12, 15}};
+static const int kAnim15FrameIndices[] = {132, 133, 134, 133, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 154, 158, 159, 146};
+static const int16 kAnim15FrameTicks[] = {16, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 6, 10, 10, 6, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim15FrameRects[] = {{-21, -61, 16, 52}, {-42, -76, 7, 14}, {-43, -75, 13, 24}, {-42, -76, 7, 14}, {-42, -75, 4, 42}, {-42, -76, 11, 57}, {-40, -74, 13, 55}, {-36, -74, 11, 55}, {-31, -72, 12, 56}, {-27, -71, 14, 57}, {-20, -69, 15, 55}, {-12, -65, 15, 51}, {-7, -57, 18, 44}, {-3, -43, 18, 29}, {4, -27, 20, 14}, {0, -28, 13, 14}, {0, -38, 14, 24}, {-1, -49, 19, 36}, {0, -61, 17, 47}, {-2, -63, 19, 49}, {-5, -64, 19, 50}, {-3, -62, 18, 48}, {0, -61, 19, 47}, {0, -61, 16, 47}, {-4, -48, 17, 34}, {-9, -37, 15, 23}, {-13, -26, 14, 12}, {0, -61, 16, 47}, {0, -50, 15, 36}, {0, -39, 13, 25}, {0, -28, 12, 14}};
+static const int kAnim16FrameIndices[] = {160, 161, 162, 161, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 182, 186, 187, 174};
+static const int16 kAnim16FrameTicks[] = {16, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 6, 10, 10, 6, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim16FrameRects[] = {{6, -61, 14, 52}, {35, -77, 7, 16}, {29, -76, 13, 24}, {35, -77, 7, 16}, {38, -76, 4, 43}, {32, -75, 10, 55}, {24, -74, 16, 54}, {22, -74, 14, 53}, {18, -72, 12, 55}, {12, -71, 15, 57}, {2, -69, 17, 55}, {-5, -65, 18, 51}, {-13, -57, 18, 43}, {-20, -43, 23, 29}, {-26, -30, 25, 16}, {-13, -28, 13, 14}, {-16, -38, 24, 24}, {-16, -49, 20, 35}, {-15, -61, 17, 47}, {-15, -63, 17, 49}, {-13, -64, 17, 51}, {-14, -62, 15, 48}, {-19, -61, 19, 47}, {-16, -61, 16, 48}, {-18, -48, 22, 34}, {-6, -37, 14, 23}, {0, -27, 12, 14}, {-16, -61, 16, 48}, {-16, -50, 19, 36}, {-14, -39, 15, 25}, {-12, -28, 12, 15}};
+static const int kAnim17FrameIndices[] = {188, 189, 190, 189, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 210, 214, 215, 202};
+static const int16 kAnim17FrameTicks[] = {16, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 6, 10, 10, 6, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim17FrameRects[] = {{-21, -61, 16, 52}, {-42, -76, 7, 14}, {-43, -75, 13, 24}, {-42, -76, 7, 14}, {-42, -75, 4, 42}, {-42, -76, 11, 57}, {-40, -74, 13, 55}, {-36, -74, 11, 55}, {-31, -72, 12, 56}, {-27, -71, 14, 57}, {-20, -69, 15, 55}, {-12, -65, 15, 51}, {-7, -57, 18, 44}, {-3, -43, 18, 29}, {4, -27, 20, 14}, {0, -28, 13, 14}, {0, -38, 14, 24}, {-1, -49, 19, 36}, {0, -61, 17, 47}, {-2, -63, 19, 49}, {-5, -64, 19, 50}, {-3, -62, 18, 48}, {0, -61, 19, 47}, {0, -61, 16, 47}, {-4, -48, 17, 34}, {-9, -37, 15, 23}, {-13, -26, 14, 12}, {0, -61, 16, 47}, {0, -50, 15, 36}, {0, -39, 13, 25}, {0, -28, 12, 14}};
+static const int kAnim18FrameIndices[] = {216, 217, 218, 217, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 238, 242, 243, 230};
+static const int16 kAnim18FrameTicks[] = {16, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 6, 10, 10, 6, 10, 10, 10, 10, 10, 10};
+static const BBRect kAnim18FrameRects[] = {{6, -61, 14, 52}, {35, -77, 7, 16}, {29, -76, 13, 24}, {35, -77, 7, 16}, {38, -76, 4, 43}, {32, -75, 10, 55}, {24, -74, 16, 54}, {22, -74, 14, 53}, {18, -72, 12, 55}, {12, -71, 15, 57}, {2, -69, 17, 55}, {-5, -65, 18, 51}, {-13, -57, 18, 43}, {-20, -43, 23, 29}, {-26, -30, 25, 16}, {-13, -28, 13, 14}, {-16, -38, 24, 24}, {-16, -49, 20, 35}, {-15, -61, 17, 47}, {-15, -63, 17, 49}, {-13, -64, 17, 51}, {-14, -62, 15, 48}, {-19, -61, 19, 47}, {-16, -61, 16, 48}, {-18, -48, 22, 34}, {-6, -37, 14, 23}, {0, -27, 12, 14}, {-16, -61, 16, 48}, {-16, -50, 19, 36}, {-14, -39, 15, 25}, {-12, -28, 12, 15}};
+static const int kAnim19FrameIndices[] = {244};
+static const int16 kAnim19FrameTicks[] = {6};
+static const BBRect kAnim19FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim20FrameIndices[] = {245, 246, 247, 248, 249, 250, 251, 252, 253, 254};
+static const int16 kAnim20FrameTicks[] = {6, 6, 6, 6, 6, 6, 6, 6, 6, 6};
+static const BBRect kAnim20FrameRects[] = {{0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}};
+static const int kAnim21FrameIndices[] = {255};
+static const int16 kAnim21FrameTicks[] = {1};
+static const BBRect kAnim21FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim22FrameIndices[] = {256};
+static const int16 kAnim22FrameTicks[] = {5};
+static const BBRect kAnim22FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim23FrameIndices[] = {257};
+static const int16 kAnim23FrameTicks[] = {1};
+static const BBRect kAnim23FrameRects[] = {{0, 0, 0, 0}};
+static const int kAnim24FrameIndices[] = {258, 259};
+static const int16 kAnim24FrameTicks[] = {6, 6};
+static const BBRect kAnim24FrameRects[] = {{-9, -9, 17, 15}, {-11, -10, 19, 16}};
+static const int kAnim25FrameIndices[] = {260, 261, 262, 263, 264, 265};
+static const int16 kAnim25FrameTicks[] = {6, 6, 6, 6, 6, 6};
+static const BBRect kAnim25FrameRects[] = {{-22, -91, 45, 93}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}, {-21, -92, 43, 95}};
+static const int kAnim26FrameIndices[] = {266, 267, 268, 269, 270, 271};
+static const int16 kAnim26FrameTicks[] = {6, 6, 6, 6, 6, 6};
+static const BBRect kAnim26FrameRects[] = {{-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}, {-21, -85, 38, 86}};
+static const ObjAnimation kAnimations[] = {
+ {4, kAnim0FrameIndices, kAnim0FrameTicks, kAnim0FrameRects},
+ {6, kAnim1FrameIndices, kAnim1FrameTicks, kAnim1FrameRects},
+ {4, kAnim2FrameIndices, kAnim2FrameTicks, kAnim2FrameRects},
+ {5, kAnim3FrameIndices, kAnim3FrameTicks, kAnim3FrameRects},
+ {2, kAnim4FrameIndices, kAnim4FrameTicks, kAnim4FrameRects},
+ {1, kAnim5FrameIndices, kAnim5FrameTicks, kAnim5FrameRects},
+ {9, kAnim6FrameIndices, kAnim6FrameTicks, kAnim6FrameRects},
+ {1, kAnim7FrameIndices, kAnim7FrameTicks, kAnim7FrameRects},
+ {1, kAnim8FrameIndices, kAnim8FrameTicks, kAnim8FrameRects},
+ {1, kAnim9FrameIndices, kAnim9FrameTicks, kAnim9FrameRects},
+ {1, kAnim10FrameIndices, kAnim10FrameTicks, kAnim10FrameRects},
+ {34, kAnim11FrameIndices, kAnim11FrameTicks, kAnim11FrameRects},
+ {14, kAnim12FrameIndices, kAnim12FrameTicks, kAnim12FrameRects},
+ {31, kAnim13FrameIndices, kAnim13FrameTicks, kAnim13FrameRects},
+ {31, kAnim14FrameIndices, kAnim14FrameTicks, kAnim14FrameRects},
+ {31, kAnim15FrameIndices, kAnim15FrameTicks, kAnim15FrameRects},
+ {31, kAnim16FrameIndices, kAnim16FrameTicks, kAnim16FrameRects},
+ {31, kAnim17FrameIndices, kAnim17FrameTicks, kAnim17FrameRects},
+ {31, kAnim18FrameIndices, kAnim18FrameTicks, kAnim18FrameRects},
+ {1, kAnim19FrameIndices, kAnim19FrameTicks, kAnim19FrameRects},
+ {10, kAnim20FrameIndices, kAnim20FrameTicks, kAnim20FrameRects},
+ {1, kAnim21FrameIndices, kAnim21FrameTicks, kAnim21FrameRects},
+ {1, kAnim22FrameIndices, kAnim22FrameTicks, kAnim22FrameRects},
+ {1, kAnim23FrameIndices, kAnim23FrameTicks, kAnim23FrameRects},
+ {2, kAnim24FrameIndices, kAnim24FrameTicks, kAnim24FrameRects},
+ {6, kAnim25FrameIndices, kAnim25FrameTicks, kAnim25FrameRects},
+ {6, kAnim26FrameIndices, kAnim26FrameTicks, kAnim26FrameRects}
+};
+
+const ObjAnimation *MinigameBbTennis::getAnimation(int animIndex) {
+ return &kAnimations[animIndex];
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/minigame.cpp b/engines/bbvs/minigames/minigame.cpp
new file mode 100644
index 0000000000..aae18072d9
--- /dev/null
+++ b/engines/bbvs/minigames/minigame.cpp
@@ -0,0 +1,112 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/minigames/minigame.h"
+#include "common/savefile.h"
+
+namespace Bbvs {
+
+Minigame::Minigame(BbvsEngine *vm)
+ : _vm(vm), _spriteModule(nullptr) {
+
+ memset(_hiScoreTable, 0, sizeof(_hiScoreTable));
+ _gameState = 0;
+ _gameTicks = 0;
+ _gameResult = false;
+ _gameDone = false;
+ _fromMainGame = false;
+ _backgroundSpriteIndex = 0;
+ _titleScreenSpriteIndex = 0;
+ _numbersAnim = nullptr;
+}
+
+Minigame::~Minigame() {
+}
+
+int Minigame::drawNumber(DrawList &drawList, int number, int x, int y) {
+ int digits = 1, rightX = x;
+
+ for (int mag = 10; number / mag != 0; mag *= 10)
+ ++digits;
+
+ rightX = x + digits * 10;
+ x = rightX;
+
+ while (digits--) {
+ const int n = number % 10;
+ x -= 10;
+ drawList.add(_numbersAnim->frameIndices[n], x, y, 2000);
+ number /= 10;
+ }
+
+ return rightX;
+}
+
+void Minigame::playSound(uint index, bool loop) {
+ if (index > 0)
+ _vm->_sound->playSound(index - 1, loop);
+}
+
+void Minigame::stopSound(uint index) {
+ if (index > 0)
+ _vm->_sound->stopSound(index - 1);
+}
+
+bool Minigame::isSoundPlaying(uint index) {
+ return index > 0 && _vm->_sound->isSoundPlaying(index - 1);
+}
+
+bool Minigame::isAnySoundPlaying(const uint *indices, uint count) {
+ for (uint i = 0; i < count; ++i)
+ if (isSoundPlaying(indices[i]))
+ return true;
+ return false;
+}
+
+void Minigame::saveHiscore(int minigameNum, int score) {
+ Common::String filename = _vm->getTargetName() + "-highscore.dat";
+ Common::OutSaveFile *file = g_system->getSavefileManager()->openForSaving(filename);
+ if (file) {
+ // Reserve a byte for future usage (rarely a bad idea, you never know...)
+ file->writeByte(0);
+ _hiScoreTable[minigameNum] = score;
+ for (int i = 0; i < kMinigameCount; ++i)
+ file->writeUint32LE(_hiScoreTable[i]);
+ delete file;
+ }
+}
+
+int Minigame::loadHiscore(int minigameNum) {
+ int score = 0;
+ Common::String filename = _vm->getTargetName() + "-highscore.dat";
+ Common::InSaveFile *file = g_system->getSavefileManager()->openForLoading(filename);
+ if (file) {
+ file->readByte();
+ for (int i = 0; i < kMinigameCount; ++i)
+ _hiScoreTable[i] = file->readUint32LE();
+ delete file;
+ score = _hiScoreTable[minigameNum];
+ }
+ return score;
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/minigames/minigame.h b/engines/bbvs/minigames/minigame.h
new file mode 100644
index 0000000000..675dec360d
--- /dev/null
+++ b/engines/bbvs/minigames/minigame.h
@@ -0,0 +1,82 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_MINIGAMES_MINIGAME_H
+#define BBVS_MINIGAMES_MINIGAME_H
+
+#include "bbvs/bbvs.h"
+#include "bbvs/graphics.h"
+#include "bbvs/sound.h"
+#include "bbvs/spritemodule.h"
+
+namespace Bbvs {
+
+enum {
+ kMinigameBbLoogie = 0,
+ kMinigameBbTennis = 1,
+ kMinigameBbAnt = 2,
+ kMinigameBbAirGuitar = 3,
+ kMinigameCount
+};
+
+struct ObjAnimation {
+ int frameCount;
+ const int *frameIndices;
+ const int16 *frameTicks;
+ const BBRect *frameRects;
+};
+
+class Minigame {
+public:
+ Minigame(BbvsEngine *vm);
+ virtual ~Minigame();
+ virtual bool run(bool fromMainGame) = 0;
+protected:
+ BbvsEngine *_vm;
+ SpriteModule *_spriteModule;
+
+ int _gameState;
+ int _gameTicks;
+ bool _gameResult;
+ bool _gameDone;
+ bool _fromMainGame;
+ int _hiScoreTable[kMinigameCount];
+
+ int _backgroundSpriteIndex, _titleScreenSpriteIndex;
+
+ const ObjAnimation *_numbersAnim;
+
+ int drawNumber(DrawList &drawList, int number, int x, int y);
+
+ void playSound(uint index, bool loop = false);
+ void stopSound(uint index);
+ bool isSoundPlaying(uint index);
+ bool isAnySoundPlaying(const uint *indices, uint count);
+
+ void saveHiscore(int minigameNum, int score);
+ int loadHiscore(int minigameNum);
+
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_MINIGAMES_MINIGAME_H
diff --git a/engines/bbvs/module.mk b/engines/bbvs/module.mk
new file mode 100644
index 0000000000..90c62d0acb
--- /dev/null
+++ b/engines/bbvs/module.mk
@@ -0,0 +1,32 @@
+MODULE := engines/bbvs
+
+MODULE_OBJS := \
+ bbvs.o \
+ detection.o \
+ dialogs.o \
+ gamemodule.o \
+ graphics.o \
+ logic.o \
+ saveload.o \
+ scene.o \
+ sound.o \
+ spritemodule.o \
+ videoplayer.o \
+ walk.o \
+ minigames/bbairguitar.o \
+ minigames/bbairguitar_anims.o \
+ minigames/bbant.o \
+ minigames/bbant_anims.o \
+ minigames/bbloogie.o \
+ minigames/bbloogie_anims.o \
+ minigames/bbtennis.o \
+ minigames/bbtennis_anims.o \
+ minigames/minigame.o
+
+# This module can be built as a plugin
+ifeq ($(ENABLE_BBVS), DYNAMIC_PLUGIN)
+PLUGIN := 1
+endif
+
+# Include common rules
+include $(srcdir)/rules.mk
diff --git a/engines/bbvs/saveload.cpp b/engines/bbvs/saveload.cpp
new file mode 100644
index 0000000000..ff53cc457b
--- /dev/null
+++ b/engines/bbvs/saveload.cpp
@@ -0,0 +1,278 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ *
+ */
+
+#include "bbvs/bbvs.h"
+#include "bbvs/gamemodule.h"
+#include "common/savefile.h"
+#include "graphics/thumbnail.h"
+
+namespace Bbvs {
+
+BbvsEngine::kReadSaveHeaderError BbvsEngine::readSaveHeader(Common::SeekableReadStream *in, bool loadThumbnail, SaveHeader &header) {
+
+ header.version = in->readUint32LE();
+ if (header.version > BBVS_SAVEGAME_VERSION)
+ return kRSHEInvalidVersion;
+
+ byte descriptionLen = in->readByte();
+ header.description = "";
+ while (descriptionLen--)
+ header.description += (char)in->readByte();
+
+ if (loadThumbnail) {
+ header.thumbnail = Graphics::loadThumbnail(*in);
+ } else {
+ Graphics::skipThumbnail(*in);
+ }
+
+ // Not used yet, reserved for future usage
+ header.gameID = in->readByte();
+ header.flags = in->readUint32LE();
+
+ header.saveDate = in->readUint32LE();
+ header.saveTime = in->readUint32LE();
+ header.playTime = in->readUint32LE();
+
+ return ((in->eos() || in->err()) ? kRSHEIoError : kRSHENoError);
+}
+
+void BbvsEngine::savegame(const char *filename, const char *description) {
+
+ Common::OutSaveFile *out;
+ if (!(out = g_system->getSavefileManager()->openForSaving(filename))) {
+ warning("Can't create file '%s', game not saved", filename);
+ return;
+ }
+
+ TimeDate curTime;
+ g_system->getTimeAndDate(curTime);
+
+ // Header start
+ out->writeUint32LE(BBVS_SAVEGAME_VERSION);
+
+ byte descriptionLen = strlen(description);
+ out->writeByte(descriptionLen);
+ out->write(description, descriptionLen);
+
+ Graphics::saveThumbnail(*out);
+
+ // Not used yet, reserved for future usage
+ out->writeByte(0);
+ out->writeUint32LE(0);
+ uint32 saveDate = ((curTime.tm_mday & 0xFF) << 24) | (((curTime.tm_mon + 1) & 0xFF) << 16) | ((curTime.tm_year + 1900) & 0xFFFF);
+ uint32 saveTime = ((curTime.tm_hour & 0xFF) << 16) | (((curTime.tm_min) & 0xFF) << 8) | ((curTime.tm_sec) & 0xFF);
+ uint32 playTime = g_engine->getTotalPlayTime() / 1000;
+ out->writeUint32LE(saveDate);
+ out->writeUint32LE(saveTime);
+ out->writeUint32LE(playTime);
+ // Header end
+
+ out->write(_snapshot, _snapshotStream->pos());
+
+ out->finalize();
+ delete out;
+}
+
+void BbvsEngine::loadgame(const char *filename) {
+ Common::InSaveFile *in;
+ if (!(in = g_system->getSavefileManager()->openForLoading(filename))) {
+ warning("Can't open file '%s', game not loaded", filename);
+ return;
+ }
+
+ SaveHeader header;
+
+ kReadSaveHeaderError errorCode = readSaveHeader(in, false, header);
+
+ if (errorCode != kRSHENoError) {
+ warning("Error loading savegame '%s'", filename);
+ delete in;
+ return;
+ }
+
+ g_engine->setTotalPlayTime(header.playTime * 1000);
+
+ memset(_sceneObjects, 0, sizeof(_sceneObjects));
+ for (int i = 0; i < kSceneObjectsCount; ++i) {
+ _sceneObjects[i].walkDestPt.x = -1;
+ _sceneObjects[i].walkDestPt.y = -1;
+ }
+
+ _currSceneNum = 0;
+ _newSceneNum = in->readUint32LE();
+
+ initScene(false);
+
+ _prevSceneNum = in->readUint32LE();
+ _gameState = in->readUint32LE();
+ _mouseCursorSpriteIndex = in->readUint32LE();
+ _mousePos.x = in->readUint16LE();
+ _mousePos.y = in->readUint16LE();
+ _currVerbNum = in->readUint32LE();
+ _activeItemType = in->readUint32LE();
+ _activeItemIndex = in->readUint32LE();
+ _verbPos.x = in->readUint16LE();
+ _verbPos.y = in->readUint16LE();
+ _inventoryButtonIndex = in->readUint32LE();
+ _currInventoryItem = in->readUint32LE();
+ _currTalkObjectIndex = in->readUint32LE();
+ _currCameraNum = in->readUint32LE();
+ _cameraPos.x = in->readUint16LE();
+ _cameraPos.y = in->readUint16LE();
+ _newCameraPos.x = in->readUint16LE();
+ _newCameraPos.y = in->readUint16LE();
+ _dialogSlotCount = in->readUint32LE();
+ _walkMousePos.x = in->readUint16LE();
+ _walkMousePos.y = in->readUint16LE();
+ in->read(_backgroundSoundsActive, kSceneSoundsCount);
+ in->read(_inventoryItemStatus, kInventoryItemStatusCount);
+ in->read(_dialogItemStatus, kDialogItemStatusCount);
+ in->read(_gameVars, kGameVarsCount);
+ in->read(_sceneVisited, kSceneVisitedCount);
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i) {
+ SceneObject *obj = &_sceneObjects[i];
+ obj->x = in->readUint32LE();
+ obj->y = in->readUint32LE();
+ obj->animIndex = in->readUint32LE();
+ obj->frameIndex = in->readUint32LE();
+ obj->frameTicks = in->readUint32LE();
+ obj->walkCount = in->readUint32LE();
+ obj->xIncr = in->readUint32LE();
+ obj->yIncr = in->readUint32LE();
+ obj->turnValue = in->readUint32LE();
+ obj->turnCount = in->readUint32LE();
+ obj->turnTicks = in->readUint32LE();
+ obj->walkDestPt.x = in->readUint16LE();
+ obj->walkDestPt.y = in->readUint16LE();
+ obj->anim = obj->animIndex > 0 ? _gameModule->getAnimation(obj->animIndex) : 0;
+ }
+
+ updateWalkableRects();
+
+ // Restart scene background sounds
+ for (int i = 0; i < _gameModule->getSceneSoundsCount(); ++i) {
+ if (_backgroundSoundsActive[i]) {
+ SceneSound *sceneSound = _gameModule->getSceneSound(i);
+ playSound(sceneSound->soundNum, true);
+ }
+ }
+
+ _currAction = 0;
+ _currActionCommandIndex = -1;
+
+ delete in;
+
+}
+
+Common::Error BbvsEngine::loadGameState(int slot) {
+ const char *fileName = getSavegameFilename(slot);
+ loadgame(fileName);
+ return Common::kNoError;
+}
+
+Common::Error BbvsEngine::saveGameState(int slot, const Common::String &description) {
+ const char *fileName = getSavegameFilename(slot);
+ savegame(fileName, description.c_str());
+ return Common::kNoError;
+}
+
+const char *BbvsEngine::getSavegameFilename(int num) {
+ static Common::String filename;
+ filename = getSavegameFilename(_targetName, num);
+ return filename.c_str();
+}
+
+Common::String BbvsEngine::getSavegameFilename(const Common::String &target, int num) {
+ assert(num >= 0 && num <= 999);
+ return Common::String::format("%s.%03d", target.c_str(), num);
+}
+
+bool BbvsEngine::existsSavegame(int num) {
+ return _system->getSavefileManager()->listSavefiles(getSavegameFilename(_targetName, num)).size() != 0;
+}
+
+void BbvsEngine::allocSnapshot() {
+ _snapshot = new byte[kSnapshotSize];
+ _snapshotStream = new Common::SeekableMemoryWriteStream(_snapshot, kSnapshotSize);
+}
+
+void BbvsEngine::freeSnapshot() {
+ delete _snapshotStream;
+ delete[] _snapshot;
+}
+
+void BbvsEngine::saveSnapshot() {
+ _hasSnapshot = true;
+ _snapshotStream->seek(0);
+ _snapshotStream->writeUint32LE(_currSceneNum);
+ _snapshotStream->writeUint32LE(_prevSceneNum);
+ _snapshotStream->writeUint32LE(_gameState);
+ _snapshotStream->writeUint32LE(_mouseCursorSpriteIndex);
+ _snapshotStream->writeUint16LE(_mousePos.x);
+ _snapshotStream->writeUint16LE(_mousePos.y);
+ _snapshotStream->writeUint32LE(_currVerbNum);
+ _snapshotStream->writeUint32LE(_activeItemType);
+ _snapshotStream->writeUint32LE(_activeItemIndex);
+ _snapshotStream->writeUint16LE(_verbPos.x);
+ _snapshotStream->writeUint16LE(_verbPos.y);
+ _snapshotStream->writeUint32LE(_inventoryButtonIndex);
+ _snapshotStream->writeUint32LE(_currInventoryItem);
+ _snapshotStream->writeUint32LE(_currTalkObjectIndex);
+ _snapshotStream->writeUint32LE(_currCameraNum);
+ _snapshotStream->writeUint16LE(_cameraPos.x);
+ _snapshotStream->writeUint16LE(_cameraPos.y);
+ _snapshotStream->writeUint16LE(_newCameraPos.x);
+ _snapshotStream->writeUint16LE(_newCameraPos.y);
+ _snapshotStream->writeUint32LE(_dialogSlotCount);
+ _snapshotStream->writeUint16LE(_walkMousePos.x);
+ _snapshotStream->writeUint16LE(_walkMousePos.y);
+ _snapshotStream->write(_backgroundSoundsActive, kSceneSoundsCount);
+ _snapshotStream->write(_inventoryItemStatus, kInventoryItemStatusCount);
+ _snapshotStream->write(_dialogItemStatus, kDialogItemStatusCount);
+ _snapshotStream->write(_gameVars, kGameVarsCount);
+ _snapshotStream->write(_sceneVisited, kSceneVisitedCount);
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i) {
+ SceneObject *obj = &_sceneObjects[i];
+ _snapshotStream->writeUint32LE(obj->x);
+ _snapshotStream->writeUint32LE(obj->y);
+ _snapshotStream->writeUint32LE(obj->animIndex);
+ _snapshotStream->writeUint32LE(obj->frameIndex);
+ _snapshotStream->writeUint32LE(obj->frameTicks);
+ _snapshotStream->writeUint32LE(obj->walkCount);
+ _snapshotStream->writeUint32LE(obj->xIncr);
+ _snapshotStream->writeUint32LE(obj->yIncr);
+ _snapshotStream->writeUint32LE(obj->turnValue);
+ _snapshotStream->writeUint32LE(obj->turnCount);
+ _snapshotStream->writeUint32LE(obj->turnTicks);
+ _snapshotStream->writeUint16LE(obj->walkDestPt.x);
+ _snapshotStream->writeUint16LE(obj->walkDestPt.y);
+ }
+}
+
+void BbvsEngine::writeContinueSavegame() {
+ if (_hasSnapshot) {
+ saveGameState(0, "Continue");
+ }
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/scene.cpp b/engines/bbvs/scene.cpp
new file mode 100644
index 0000000000..0d86eb4dbc
--- /dev/null
+++ b/engines/bbvs/scene.cpp
@@ -0,0 +1,227 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/bbvs.h"
+#include "bbvs/gamemodule.h"
+#include "bbvs/graphics.h"
+#include "bbvs/sound.h"
+
+namespace Bbvs {
+
+static const int kAfterVideoSceneNum[] = {
+ 0, 43, 23, 12, 4, 44, 2,
+ 16, 4, 4, 4, 44, 12, 44
+};
+
+void BbvsEngine::loadScene(int sceneNum) {
+ debug(0, "BbvsEngine::loadScene() sceneNum: %d", sceneNum);
+
+ Common::String sprFilename = Common::String::format("vnm/vspr%04d.vnm", sceneNum);
+ Common::String gamFilename = Common::String::format("vnm/game%04d.vnm", sceneNum);
+
+ _screen->clear();
+
+ _spriteModule->load(sprFilename.c_str());
+ _gameModule->load(gamFilename.c_str());
+
+ Palette palette = _spriteModule->getPalette();
+ _screen->setPalette(palette);
+
+ // Preload sounds
+ for (uint i = 0; i < _gameModule->getPreloadSoundsCount(); ++i) {
+ Common::String filename = Common::String::format("snd/snd%05d.aif", _gameModule->getPreloadSound(i));
+ _sound->loadSound(filename);
+ }
+
+ if (sceneNum >= kMainMenu) {
+ DrawList drawList;
+ drawList.add(_gameModule->getBgSpriteIndex(0), 0, 0, 0);
+ _screen->drawDrawList(drawList, _spriteModule);
+ drawScreen();
+ }
+
+}
+
+void BbvsEngine::initScene(bool sounds) {
+
+ stopSpeech();
+ stopSounds();
+ _sound->unloadSounds();
+
+ _gameState = kGSScene;
+ _prevSceneNum = _currSceneNum;
+ _sceneVisited[_currSceneNum] = 1;
+ _mouseCursorSpriteIndex = 0;
+ _verbPos.x = -1;
+ _verbPos.y = -1;
+ _activeItemType = kITEmpty;
+ _activeItemIndex = 0;
+ _cameraPos.x = 0;
+ _cameraPos.y = 0;
+ _newCameraPos.x = 0;
+ _newCameraPos.y = 0;
+ _inventoryButtonIndex = -1;
+ _currTalkObjectIndex = -1;
+ _currCameraNum = 0;
+ _walkMousePos.x = -1;
+ _walkMousePos.y = -1;
+ _currAction = 0;
+ _currActionCommandIndex = -1;
+ _currActionCommandTimeStamp = 0;
+ _dialogSlotCount = 0;
+ _buttheadObject = 0;
+ _beavisObject = 0;
+
+ memset(_backgroundSoundsActive, 0, sizeof(_backgroundSoundsActive));
+
+ memset(_sceneObjects, 0, sizeof(_sceneObjects));
+ for (int i = 0; i < kSceneObjectsCount; ++i) {
+ _sceneObjects[i].walkDestPt.x = -1;
+ _sceneObjects[i].walkDestPt.y = -1;
+ }
+
+ memset(_dialogItemStatus, 0, sizeof(_dialogItemStatus));
+
+ _sceneObjectActions.clear();
+
+ loadScene(_newSceneNum);
+ _currSceneNum = _newSceneNum;
+ _newSceneNum = 0;
+
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i)
+ _sceneObjects[i].sceneObjectDef = _gameModule->getSceneObjectDef(i);
+
+ for (int i = 0; i < _gameModule->getSceneObjectInitsCount(); ++i) {
+ SceneObjectInit *soInit = _gameModule->getSceneObjectInit(i);
+ if (evalCondition(soInit->conditions)) {
+ SceneObject *sceneObject = &_sceneObjects[soInit->sceneObjectIndex];
+ sceneObject->anim = _gameModule->getAnimation(soInit->animIndex);
+ sceneObject->animIndex = soInit->animIndex;
+ sceneObject->frameIndex = sceneObject->anim->frameCount - 1;
+ sceneObject->frameTicks = 1;
+ sceneObject->x = soInit->x << 16;
+ sceneObject->y = soInit->y << 16;
+ }
+ }
+
+ if (_gameModule->getButtheadObjectIndex() >= 0) {
+ _buttheadObject = &_sceneObjects[_gameModule->getButtheadObjectIndex()];
+ // Search for the Beavis object
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i)
+ if (!strcmp(_sceneObjects[i].sceneObjectDef->name, "Beavis")) {
+ _beavisObject = &_sceneObjects[i];
+ break;
+ }
+ }
+
+ updateSceneObjectsTurnValue();
+
+ updateWalkableRects();
+
+ _currCameraNum = 0;
+ if (_buttheadObject) {
+ int minDistance = 0xFFFFFF;
+ for (int cameraNum = 0; cameraNum < 4; ++cameraNum) {
+ CameraInit *cameraInit = _gameModule->getCameraInit(cameraNum);
+ int curDistance = ABS(cameraInit->cameraPos.x - (int)(_buttheadObject->x >> 16) + 160);
+ if (curDistance < minDistance) {
+ minDistance = curDistance;
+ _currCameraNum = cameraNum;
+ }
+ }
+ }
+
+ _cameraPos = _gameModule->getCameraInit(_currCameraNum)->cameraPos;
+ _newCameraPos = _cameraPos;
+
+ _walkAreaActions.clear();
+ for (int i = 0; i < _gameModule->getActionsCount(); ++i) {
+ Action *action = _gameModule->getAction(i);
+ for (int j = 0; j < 8; ++j)
+ if (action->conditions.conditions[j].cond == kCondIsButtheadAtBgObject)
+ _walkAreaActions.push_back(action);
+ }
+
+ _mouseCursorSpriteIndex = 0;
+
+ _activeItemIndex = 0;
+ _activeItemType = kITEmpty;
+
+ for (int i = 0; i < _gameModule->getActionsCount(); ++i) {
+ Action *action = _gameModule->getAction(i);
+ if (evalCondition(action->conditions)) {
+ _gameState = kGSWait;
+ _currAction = action;
+ for (uint j = 0; j < action->actionCommands.size(); ++j) {
+ ActionCommand *actionCommand = &action->actionCommands[j];
+ if (actionCommand->cmd == kActionCmdSetCameraPos) {
+ _currCameraNum = actionCommand->param;
+ _cameraPos = _gameModule->getCameraInit(_currCameraNum)->cameraPos;
+ _newCameraPos = _cameraPos;
+ break;
+ }
+ }
+ break;
+ }
+ }
+
+ if (sounds)
+ updateBackgroundSounds();
+
+}
+
+bool BbvsEngine::changeScene() {
+
+ writeContinueSavegame();
+
+ if (_newSceneNum >= 27 && _newSceneNum <= 30) {
+ // Run minigames
+ stopSpeech();
+ stopSounds();
+ _sceneVisited[_currSceneNum] = 1;
+ if (runMinigame(_newSceneNum - 27)) {
+ SWAP(_currSceneNum, _newSceneNum);
+ }
+ } else if (_newSceneNum >= 31 && _newSceneNum <= 43) {
+ // Play video
+ stopSpeech();
+ stopSounds();
+ _sceneVisited[_currSceneNum] = 1;
+ _playVideoNumber = _newSceneNum - 30;
+ _currSceneNum = _newSceneNum;
+ _newSceneNum = kAfterVideoSceneNum[_playVideoNumber];
+ } else if (_newSceneNum >= 100 && _currSceneNum == kCredits) {
+ // Play secret video
+ stopSounds();
+ _playVideoNumber = _newSceneNum;
+ _currSceneNum = 49;
+ _newSceneNum = kCredits;
+ } else {
+ // Normal scene
+ initScene(true);
+ }
+
+ return true;
+
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/sound.cpp b/engines/bbvs/sound.cpp
new file mode 100644
index 0000000000..7f9c00ad48
--- /dev/null
+++ b/engines/bbvs/sound.cpp
@@ -0,0 +1,107 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/sound.h"
+#include "audio/decoders/aiff.h"
+#include "common/debug.h"
+#include "common/file.h"
+#include "common/system.h"
+
+namespace Bbvs {
+
+Sound::Sound() : _stream(0) {
+}
+
+Sound::~Sound() {
+ stop();
+ delete _stream;
+}
+
+void Sound::load(const Common::String &filename) {
+ Common::File *fd = new Common::File();
+ if (!fd->open(filename)) {
+ delete fd;
+ error("SoundMan::loadSound() Could not load %s", filename.c_str());
+ }
+ _stream = Audio::makeAIFFStream(fd, DisposeAfterUse::YES);
+ _filename = filename;
+}
+
+void Sound::play(bool loop) {
+ debug(0, "Sound::play() [%s] loop:%d", _filename.c_str(), loop);
+ stop();
+ _stream->rewind();
+ Audio::AudioStream *audioStream = Audio::makeLoopingAudioStream(_stream, loop ? 0 : 1);
+ g_system->getMixer()->playStream(Audio::Mixer::kSFXSoundType, &_handle, audioStream,
+ -1, Audio::Mixer::kMaxChannelVolume, 0, DisposeAfterUse::NO);
+}
+
+void Sound::stop() {
+ g_system->getMixer()->stopHandle(_handle);
+}
+
+bool Sound::isPlaying() {
+ return g_system->getMixer()->isSoundHandleActive(_handle);
+}
+
+SoundMan::~SoundMan() {
+ stopAllSounds();
+ unloadSounds();
+}
+
+void SoundMan::loadSound(const Common::String &filename) {
+ Sound *sound = new Sound();
+ sound->load(filename);
+ _sounds.push_back(sound);
+}
+
+void SoundMan::playSound(uint index, bool loop) {
+ _sounds[index]->play(loop);
+}
+
+void SoundMan::stopSound(uint index) {
+ _sounds[index]->stop();
+}
+
+bool SoundMan::isSoundPlaying(uint index) {
+ return _sounds[index]->isPlaying();
+}
+
+bool SoundMan::isAnySoundPlaying(uint *indices, uint count) {
+ for (uint i = 0; i < count; ++i)
+ if (isSoundPlaying(indices[i]))
+ return true;
+ return false;
+}
+
+void SoundMan::unloadSounds() {
+ for (uint i = 0; i < _sounds.size(); ++i)
+ delete _sounds[i];
+ _sounds.clear();
+}
+
+void SoundMan::stopAllSounds() {
+ for (uint i = 0; i < _sounds.size(); ++i)
+ _sounds[i]->stop();
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/sound.h b/engines/bbvs/sound.h
new file mode 100644
index 0000000000..4e44c2b962
--- /dev/null
+++ b/engines/bbvs/sound.h
@@ -0,0 +1,63 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_SOUND_H
+#define BBVS_SOUND_H
+
+#include "audio/audiostream.h"
+#include "audio/mixer.h"
+#include "common/array.h"
+
+namespace Bbvs {
+
+class Sound {
+public:
+ Sound();
+ ~Sound();
+ void load(const Common::String &filename);
+ void play(bool loop);
+ void stop();
+ bool isPlaying();
+protected:
+ Audio::SeekableAudioStream *_stream;
+ Audio::SoundHandle _handle;
+ // Keep the filename for debugging purposes
+ Common::String _filename;
+};
+
+class SoundMan {
+public:
+ ~SoundMan();
+ void loadSound(const Common::String &fileName);
+ void playSound(uint index, bool loop = false);
+ void stopSound(uint index);
+ bool isSoundPlaying(uint index);
+ bool isAnySoundPlaying(uint *indices, uint count);
+ void unloadSounds();
+ void stopAllSounds();
+protected:
+ Common::Array<Sound*> _sounds;
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_SOUND_H
diff --git a/engines/bbvs/spritemodule.cpp b/engines/bbvs/spritemodule.cpp
new file mode 100644
index 0000000000..8eae7f9a6a
--- /dev/null
+++ b/engines/bbvs/spritemodule.cpp
@@ -0,0 +1,112 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/spritemodule.h"
+
+namespace Bbvs {
+
+byte *Sprite::getRow(int y) {
+ if (type == 1)
+ return data + READ_LE_UINT32((data + offset) + y * 4);
+ else
+ return data + offset + y * width;
+}
+
+SpriteModule::SpriteModule()
+ : _spritesCount(0), _paletteStart(0), _paletteCount(0), _spriteData(0) {
+}
+
+SpriteModule::~SpriteModule() {
+ unload();
+}
+
+void SpriteModule::load(const char *filename) {
+ unload();
+
+ Common::File fd;
+ if (!fd.open(filename))
+ error("SpriteModule::load() Could not open %s", filename);
+
+ fd.readUint32LE(); // Skip magic
+ fd.readUint32LE(); // Skip unused
+ fd.readUint32LE(); // Skip filesize
+
+ _paletteOffs = fd.readUint32LE();
+ fd.readUint32LE(); // Skip unused flagsTbl1Ofs
+ fd.readUint32LE(); // Skip unused flagsTbl2Ofs
+ _spriteTblOffs = fd.readUint32LE();
+ _paletteStart = fd.readUint32LE();
+ _paletteCount = fd.readUint32LE();
+ _spritesCount = fd.readUint32LE();
+
+ debug(0, "_paletteOffs: %08X", _paletteOffs);
+ debug(0, "_spriteTblOffs: %08X", _spriteTblOffs);
+ debug(0, "_paletteStart: %d", _paletteStart);
+ debug(0, "_paletteCount: %d", _paletteCount);
+ debug(0, "_spritesCount: %d", _spritesCount);
+
+ _spriteDataSize = fd.size();
+ _spriteData = new byte[_spriteDataSize];
+ fd.seek(0);
+ fd.read(_spriteData, _spriteDataSize);
+
+ // Convert palette
+ byte *palette = _spriteData + _paletteOffs;
+ for (int i = 0; i < _paletteCount; ++i) {
+ palette[i * 3 + 0] <<= 2;
+ palette[i * 3 + 1] <<= 2;
+ palette[i * 3 + 2] <<= 2;
+ }
+
+}
+
+Sprite SpriteModule::getSprite(int index) {
+ Sprite sprite;
+ uint32 spriteOffs = READ_LE_UINT32(_spriteData + _spriteTblOffs + index * 4);
+ byte *info = _spriteData + spriteOffs;
+ sprite.data = _spriteData;
+ sprite.offset = READ_LE_UINT32(info + 0);
+ sprite.type = READ_LE_UINT32(info + 4);
+ sprite.width = READ_LE_UINT32(info + 8);
+ sprite.height = READ_LE_UINT32(info + 12);
+ sprite.xOffs = READ_LE_UINT32(info + 16);
+ sprite.yOffs = READ_LE_UINT32(info + 20);
+ return sprite;
+}
+
+Palette SpriteModule::getPalette() {
+ Palette palette;
+ palette.data = _spriteData + _paletteOffs;
+ palette.start = _paletteStart;
+ palette.count = _paletteCount;
+ return palette;
+}
+
+void SpriteModule::unload() {
+ _spritesCount = 0;
+ _paletteStart = 0;
+ _paletteCount = 0;
+ delete[] _spriteData;
+ _spriteData = 0;
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/spritemodule.h b/engines/bbvs/spritemodule.h
new file mode 100644
index 0000000000..c287815dec
--- /dev/null
+++ b/engines/bbvs/spritemodule.h
@@ -0,0 +1,68 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef BBVS_SPRITEMODULE_H
+#define BBVS_SPRITEMODULE_H
+
+#include "common/array.h"
+#include "common/file.h"
+#include "common/memstream.h"
+#include "common/rect.h"
+#include "common/str.h"
+
+namespace Bbvs {
+
+struct Sprite {
+ int type;
+ int xOffs, yOffs;
+ int width, height;
+ byte *data;
+ uint32 offset;
+ byte *getRow(int y);
+};
+
+struct Palette {
+ byte *data;
+ int start, count;
+};
+
+class SpriteModule {
+public:
+ SpriteModule();
+ ~SpriteModule();
+ void load(const char *filename);
+ int getSpriteCount() { return _spritesCount; }
+ Sprite getSprite(int index);
+ Palette getPalette();
+protected:
+ byte *_spriteData;
+ int _spriteDataSize;
+ int _spritesCount;
+ uint32 _spriteTblOffs;
+ uint32 _paletteOffs;
+ int _paletteStart, _paletteCount;
+ void unload();
+};
+
+} // End of namespace Bbvs
+
+#endif // BBVS_SPRITEMODULE_H
diff --git a/engines/bbvs/videoplayer.cpp b/engines/bbvs/videoplayer.cpp
new file mode 100644
index 0000000000..fda9372ade
--- /dev/null
+++ b/engines/bbvs/videoplayer.cpp
@@ -0,0 +1,82 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/bbvs.h"
+#include "engines/util.h"
+#include "graphics/palette.h"
+#include "graphics/surface.h"
+#include "video/avi_decoder.h"
+
+namespace Bbvs {
+
+void BbvsEngine::playVideo(int videoNum) {
+ Common::String videoFilename;
+
+ if (videoNum >= 100)
+ videoFilename = Common::String::format("snd/snd%05d.aif", videoNum + 1400);
+ else
+ videoFilename = Common::String::format("vid/video%03d.avi", videoNum - 1);
+
+ // Set the correct video mode
+ initGraphics(320, 240, false, 0);
+ if (_system->getScreenFormat().bytesPerPixel == 1) {
+ warning("Couldn't switch to a RGB color video mode to play a video.");
+ return;
+ }
+
+ Video::VideoDecoder *videoDecoder = new Video::AVIDecoder();
+ if (!videoDecoder->loadFile(videoFilename)) {
+ delete videoDecoder;
+ warning("Unable to open video %s", videoFilename.c_str());
+ return;
+ }
+
+ videoDecoder->start();
+
+ bool skipVideo = false;
+
+ while (!shouldQuit() && !videoDecoder->endOfVideo() && !skipVideo) {
+ if (videoDecoder->needsUpdate()) {
+ const Graphics::Surface *frame = videoDecoder->decodeNextFrame();
+ if (frame) {
+ _system->copyRectToScreen(frame->getPixels(), frame->pitch, 0, 0, frame->w, frame->h);
+ _system->updateScreen();
+ }
+ }
+
+ Common::Event event;
+ while (g_system->getEventManager()->pollEvent(event)) {
+ if ((event.type == Common::EVENT_KEYDOWN && event.kbd.keycode == Common::KEYCODE_ESCAPE) ||
+ event.type == Common::EVENT_LBUTTONUP)
+ skipVideo = true;
+ }
+
+ _system->delayMillis(10);
+ }
+
+ delete videoDecoder;
+
+ initGraphics(320, 240, false);
+
+}
+
+} // End of namespace Bbvs
diff --git a/engines/bbvs/walk.cpp b/engines/bbvs/walk.cpp
new file mode 100644
index 0000000000..cf8942e525
--- /dev/null
+++ b/engines/bbvs/walk.cpp
@@ -0,0 +1,464 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "bbvs/bbvs.h"
+#include "bbvs/gamemodule.h"
+
+namespace Bbvs {
+
+static const int8 kTurnInfo[8][8] = {
+ { 0, 1, 1, 1, 1, -1, -1, -1},
+ {-1, 0, 1, 1, 1, 1, -1, -1},
+ {-1, -1, 0, 1, 1, 1, 1, -1},
+ {-1, -1, -1, 0, 1, 1, 1, 1},
+ { 1, -1, -1, -1, 0, 1, 1, 1},
+ { 1, 1, -1, -1, -1, 0, 1, 1},
+ { 1, 1, 1, -1, -1, -1, 0, 1},
+ { 1, 1, 1, 1, -1, -1, -1, 0}
+};
+
+static const int8 kWalkAnimTbl[32] = {
+ 3, 0, 0, 0, 2, 1, 1, 1,
+ 15, 12, 14, 13, 0, 0, 0, 0,
+ 7, 9, 4, 8, 6, 10, 5, 11,
+ 3, 0, 2, 1, 15, 12, 14, 13
+};
+
+void BbvsEngine::startWalkObject(SceneObject *sceneObject) {
+ if (_buttheadObject != sceneObject && _beavisObject != sceneObject)
+ return;
+
+ initWalkAreas(sceneObject);
+ _sourceWalkAreaPt.x = sceneObject->x >> 16;
+ _sourceWalkAreaPt.y = sceneObject->y >> 16;
+
+ _sourceWalkArea = getWalkAreaAtPos(_sourceWalkAreaPt);
+ if (!_sourceWalkArea)
+ return;
+
+ _destWalkAreaPt = sceneObject->walkDestPt;
+
+ _destWalkArea = getWalkAreaAtPos(_destWalkAreaPt);
+ if (!_destWalkArea)
+ return;
+
+ if (_sourceWalkArea != _destWalkArea) {
+ _currWalkDistance = kMaxDistance;
+ walkFindPath(_sourceWalkArea, 0);
+ _destWalkAreaPt = _currWalkDistance == kMaxDistance ? _sourceWalkAreaPt : _finalWalkPt;
+ }
+
+ walkObject(sceneObject, _destWalkAreaPt, sceneObject->sceneObjectDef->walkSpeed);
+
+}
+
+void BbvsEngine::updateWalkObject(SceneObject *sceneObject) {
+ int animIndex;
+
+ if (sceneObject->walkCount > 0 && (sceneObject->xIncr != 0 || sceneObject->yIncr != 0)) {
+ if (ABS(sceneObject->xIncr) <= ABS(sceneObject->yIncr))
+ sceneObject->turnValue = sceneObject->yIncr >= 0 ? 0 : 4;
+ else
+ sceneObject->turnValue = sceneObject->xIncr >= 0 ? 6 : 2;
+ animIndex = sceneObject->sceneObjectDef->animIndices[kWalkAnimTbl[sceneObject->turnValue]];
+ sceneObject->turnCount = 0;
+ sceneObject->turnTicks = 0;
+ } else {
+ animIndex = sceneObject->sceneObjectDef->animIndices[kWalkTurnTbl[sceneObject->turnValue]];
+ }
+
+ Animation *anim = 0;
+ if (animIndex > 0)
+ anim = _gameModule->getAnimation(animIndex);
+
+ if (sceneObject->anim != anim) {
+ if (anim) {
+ sceneObject->anim = anim;
+ sceneObject->animIndex = animIndex;
+ sceneObject->frameTicks = 1;
+ sceneObject->frameIndex = anim->frameCount - 1;
+ } else {
+ sceneObject->anim = 0;
+ sceneObject->animIndex = 0;
+ sceneObject->frameTicks = 0;
+ sceneObject->frameIndex = 0;
+ }
+ }
+
+}
+
+void BbvsEngine::walkObject(SceneObject *sceneObject, const Common::Point &destPt, int walkSpeed) {
+ int deltaX = destPt.x - (sceneObject->x >> 16);
+ int deltaY = destPt.y - (sceneObject->y >> 16);
+ float distance = sqrt((double)(deltaX * deltaX + deltaY * deltaY));
+ // NOTE The original doesn't have this check but without it the whole pathfinding breaks
+ if (distance > 0.0) {
+ sceneObject->walkCount = distance / ((((float)ABS(deltaX) / distance) + 1.0) * ((float)walkSpeed / 120));
+ sceneObject->xIncr = ((float)deltaX / sceneObject->walkCount) * 65536.0;
+ sceneObject->yIncr = ((float)deltaY / sceneObject->walkCount) * 65536.0;
+ sceneObject->x = (sceneObject->x & 0xFFFF0000) | 0x8000;
+ sceneObject->y = (sceneObject->y & 0xFFFF0000) | 0x8000;
+ } else
+ sceneObject->walkCount = 0;
+}
+
+void BbvsEngine::turnObject(SceneObject *sceneObject) {
+ if (sceneObject->turnTicks > 0) {
+ --sceneObject->turnTicks;
+ } else {
+ int turnDir = kTurnInfo[sceneObject->turnValue][sceneObject->turnCount & 0x7F];
+ if (turnDir) {
+ sceneObject->turnValue = (sceneObject->turnValue + turnDir) & 7;
+ int turnAnimIndex = sceneObject->sceneObjectDef->animIndices[kWalkTurnTbl[sceneObject->turnValue]];
+ if (turnAnimIndex) {
+ Animation *anim = _gameModule->getAnimation(turnAnimIndex);
+ if (anim) {
+ sceneObject->anim = anim;
+ sceneObject->animIndex = turnAnimIndex;
+ sceneObject->turnTicks = 4;
+ sceneObject->frameTicks = 1;
+ sceneObject->frameIndex = anim->frameCount - 1;
+ }
+ }
+ } else {
+ sceneObject->turnCount = 0;
+ }
+ }
+}
+
+int BbvsEngine::rectSubtract(const Common::Rect &rect1, const Common::Rect &rect2, Common::Rect *outRects) {
+ int count = 0;
+ Common::Rect workRect = rect1.findIntersectingRect(rect2);
+ if (!workRect.isEmpty()) {
+ count = 0;
+ outRects[count] = Common::Rect(rect2.width(), workRect.top - rect2.top);
+ if (!outRects[count].isEmpty()) {
+ outRects[count].translate(rect2.left, rect2.top);
+ ++count;
+ }
+ outRects[count] = Common::Rect(workRect.left - rect2.left, workRect.height());
+ if (!outRects[count].isEmpty()) {
+ outRects[count].translate(rect2.left, workRect.top);
+ ++count;
+ }
+ outRects[count] = Common::Rect(rect2.right - workRect.right, workRect.height());
+ if (!outRects[count].isEmpty()) {
+ outRects[count].translate(workRect.right, workRect.top);
+ ++count;
+ }
+ outRects[count] = Common::Rect(rect2.width(), rect2.bottom - workRect.bottom);
+ if (!outRects[count].isEmpty()) {
+ outRects[count].translate(rect2.left, workRect.bottom);
+ ++count;
+ }
+ } else {
+ outRects[0] = rect2;
+ count = 1;
+ }
+ return count;
+}
+
+WalkInfo *BbvsEngine::addWalkInfo(int16 x, int16 y, int delta, int direction, int16 midPtX, int16 midPtY, int walkAreaIndex) {
+ WalkInfo *walkInfo = &_walkInfos[_walkInfosCount++];
+ walkInfo->walkAreaIndex = walkAreaIndex;
+ walkInfo->direction = direction;
+ walkInfo->x = x;
+ walkInfo->y = y;
+ walkInfo->delta = delta;
+ walkInfo->midPt.x = midPtX;
+ walkInfo->midPt.y = midPtY;
+ return walkInfo;
+}
+
+void BbvsEngine::initWalkAreas(SceneObject *sceneObject) {
+ int16 objX = sceneObject->x >> 16;
+ int16 objY = sceneObject->y >> 16;
+ Common::Rect rect;
+ bool doRect = false;
+ Common::Rect *workWalkableRects;
+
+ if (_buttheadObject == sceneObject && _beavisObject->anim) {
+ rect = _beavisObject->anim->frameRects2[_beavisObject->frameIndex];
+ rect.translate(_beavisObject->x >> 16, 1 + (_beavisObject->y >> 16));
+ doRect = !rect.isEmpty();
+ } else if (_buttheadObject->anim) {
+ rect = _buttheadObject->anim->frameRects2[_buttheadObject->frameIndex];
+ rect.translate(_buttheadObject->x >> 16, 1 + (_buttheadObject->y >> 16));
+ doRect = !rect.isEmpty();
+ }
+
+ workWalkableRects = _walkableRects;
+
+ _walkAreasCount = _walkableRectsCount;
+
+ if (doRect && !rect.contains(objX, objY)) {
+ _walkAreasCount = 0;
+ for (int i = 0; i < _walkableRectsCount; ++i)
+ _walkAreasCount += rectSubtract(rect, _walkableRects[i], &_tempWalkableRects1[_walkAreasCount]);
+ workWalkableRects = _tempWalkableRects1;
+ }
+
+ for (int i = 0; i < _walkAreasCount; ++i) {
+ _walkAreas[i].x = workWalkableRects[i].left;
+ _walkAreas[i].y = workWalkableRects[i].top;
+ _walkAreas[i].width = workWalkableRects[i].width();
+ _walkAreas[i].height = workWalkableRects[i].height();
+ _walkAreas[i].checked = false;
+ _walkAreas[i].linksCount = 0;
+ }
+
+ _walkInfosCount = 0;
+
+ // Find connections between the walkRects
+
+ for (int i = 0; i < _walkAreasCount; ++i) {
+ WalkArea *walkArea1 = &_walkAreas[i];
+ int xIter = walkArea1->x + walkArea1->width;
+ int yIter = walkArea1->y + walkArea1->height;
+
+ for (int j = 0; j < _walkAreasCount; ++j) {
+ WalkArea *walkArea2 = &_walkAreas[j];
+
+ if (i == j)
+ continue;
+
+ if (walkArea2->y == yIter) {
+ int wa1x = MAX(walkArea1->x, walkArea2->x);
+ int wa2x = MIN(walkArea2->x + walkArea2->width, xIter);
+ if (wa2x > wa1x) {
+ debug(5, "WalkArea %d connected to %d by Y", i, j);
+ WalkInfo *walkInfo1 = addWalkInfo(wa1x, yIter - 1, wa2x - wa1x, 0, wa1x + (wa2x - wa1x) / 2, yIter - 1, i);
+ WalkInfo *walkInfo2 = addWalkInfo(wa1x, yIter, wa2x - wa1x, 0, wa1x + (wa2x - wa1x) / 2, yIter, j);
+ walkArea1->linksD1[walkArea1->linksCount] = walkInfo1;
+ walkArea1->linksD2[walkArea1->linksCount] = walkInfo2;
+ walkArea1->links[walkArea1->linksCount++] = walkArea2;
+ walkArea2->linksD1[walkArea2->linksCount] = walkInfo2;
+ walkArea2->linksD2[walkArea2->linksCount] = walkInfo1;
+ walkArea2->links[walkArea2->linksCount++] = walkArea1;
+ }
+ }
+
+ if (walkArea2->x == xIter) {
+ int wa1y = MAX(walkArea1->y, walkArea2->y);
+ int wa2y = MIN(walkArea2->y + walkArea2->height, yIter);
+ if (wa2y > wa1y) {
+ debug(5, "WalkArea %d connected to %d by X", i, j);
+ WalkInfo *walkInfo1 = addWalkInfo(xIter - 1, wa1y, wa2y - wa1y, 1, xIter - 1, wa1y + (wa2y - wa1y) / 2, i);
+ WalkInfo *walkInfo2 = addWalkInfo(xIter, wa1y, wa2y - wa1y, 1, xIter, wa1y + (wa2y - wa1y) / 2, j);
+ walkArea1->linksD1[walkArea1->linksCount] = walkInfo1;
+ walkArea1->linksD2[walkArea1->linksCount] = walkInfo2;
+ walkArea1->links[walkArea1->linksCount++] = walkArea2;
+ walkArea2->linksD1[walkArea2->linksCount] = walkInfo2;
+ walkArea2->linksD2[walkArea2->linksCount] = walkInfo1;
+ walkArea2->links[walkArea2->linksCount++] = walkArea1;
+ }
+ }
+
+ }
+
+ }
+
+}
+
+WalkArea *BbvsEngine::getWalkAreaAtPos(const Common::Point &pt) {
+ for (int i = 0; i < _walkAreasCount; ++i) {
+ WalkArea *walkArea = &_walkAreas[i];
+ if (walkArea->contains(pt))
+ return walkArea;
+ }
+ return 0;
+}
+
+bool BbvsEngine::canButtheadWalkToDest(const Common::Point &destPt) {
+ Common::Point srcPt;
+
+ _walkReachedDestArea = false;
+ initWalkAreas(_buttheadObject);
+ srcPt.x = _buttheadObject->x >> 16;
+ srcPt.y = _buttheadObject->y >> 16;
+ _sourceWalkArea = getWalkAreaAtPos(srcPt);
+ if (_sourceWalkArea) {
+ _destWalkArea = getWalkAreaAtPos(destPt);
+ if (_destWalkArea)
+ canWalkToDest(_sourceWalkArea, 0);
+ }
+ return _walkReachedDestArea;
+}
+
+void BbvsEngine::canWalkToDest(WalkArea *walkArea, int infoCount) {
+
+ if (_destWalkArea == walkArea) {
+ _walkReachedDestArea = true;
+ return;
+ }
+
+ if (_gameModule->getFieldC() <= 320 || infoCount <= 20) {
+ walkArea->checked = true;
+ for (int linkIndex = 0; linkIndex < walkArea->linksCount; ++linkIndex) {
+ if (!walkArea->links[linkIndex]->checked) {
+ canWalkToDest(walkArea->links[linkIndex], infoCount + 2);
+ if (_walkReachedDestArea)
+ break;
+ }
+ }
+ walkArea->checked = false;
+ }
+
+}
+
+bool BbvsEngine::walkTestLineWalkable(const Common::Point &sourcePt, const Common::Point &destPt, WalkInfo *walkInfo) {
+ const float ptDeltaX = destPt.x - sourcePt.x;
+ const float ptDeltaY = destPt.y - sourcePt.y;
+ const float wDeltaX = walkInfo->x - sourcePt.x;
+ const float wDeltaY = walkInfo->y - sourcePt.y;
+ if (destPt.x == sourcePt.x)
+ return true;
+ if (walkInfo->direction) {
+ const float nDeltaY = wDeltaX * ptDeltaY / ptDeltaX + (float)sourcePt.y - (float)walkInfo->y;
+ return (nDeltaY >= 0.0) && (nDeltaY < (float)walkInfo->delta);
+ } else {
+ const float nDeltaX = wDeltaY / ptDeltaX * ptDeltaY + (float)sourcePt.x - (float)walkInfo->x;
+ return (nDeltaX >= 0.0) && (nDeltaX < (float)walkInfo->delta);
+ }
+ return false;
+}
+
+void BbvsEngine::walkFindPath(WalkArea *sourceWalkArea, int infoCount) {
+ if (_destWalkArea == sourceWalkArea) {
+ walkFoundPath(infoCount);
+ } else if (_gameModule->getFieldC() <= 320 || infoCount <= 20) {
+ sourceWalkArea->checked = true;
+ for (int linkIndex = 0; linkIndex < sourceWalkArea->linksCount; ++linkIndex) {
+ if (!sourceWalkArea->links[linkIndex]->checked) {
+ _walkInfoPtrs[infoCount + 0] = sourceWalkArea->linksD1[linkIndex];
+ _walkInfoPtrs[infoCount + 1] = sourceWalkArea->linksD2[linkIndex];
+ walkFindPath(sourceWalkArea->links[linkIndex], infoCount + 2);
+ }
+ }
+ sourceWalkArea->checked = false;
+ }
+}
+
+int BbvsEngine::calcDistance(const Common::Point &pt1, const Common::Point &pt2) {
+ return (int)sqrt((double)(pt1.x - pt2.x) * (pt1.x - pt2.x) + (pt1.y - pt2.y) * (pt1.y - pt2.y));
+}
+
+void BbvsEngine::walkFoundPath(int count) {
+ debug(5, "BbvsEngine::walkFoundPath(%d)", count);
+
+ Common::Point midPt = _sourceWalkAreaPt;
+ int totalMidPtDistance = 0;
+
+ if (count > 0) {
+ Common::Point lastMidPt;
+ int halfCount = (count + 1) >> 1;
+ for (int i = 0; i < halfCount; ++i) {
+ lastMidPt = midPt;
+ midPt = _walkInfoPtrs[i * 2]->midPt;
+ totalMidPtDistance += calcDistance(midPt, lastMidPt);
+ }
+ }
+
+ int distance = calcDistance(midPt, _destWalkAreaPt) + totalMidPtDistance;
+
+ debug(5, "BbvsEngine::walkFoundPath() distance: %d; _currWalkDistance: %d", distance, _currWalkDistance);
+
+ if (distance >= _currWalkDistance)
+ return;
+
+ debug(5, "BbvsEngine::walkFoundPath() distance smaller");
+
+ _currWalkDistance = distance;
+
+ Common::Point destPt = _destWalkAreaPt, newDestPt;
+
+ while (1) {
+
+ int index = 0;
+ if (count > 0) {
+ do {
+ if (!walkTestLineWalkable(_sourceWalkAreaPt, destPt, _walkInfoPtrs[index]))
+ break;
+ ++index;
+ } while (index < count);
+ }
+
+ if (index == count)
+ break;
+
+ WalkInfo *walkInfo = _walkInfoPtrs[--count];
+ destPt.x = walkInfo->x;
+ destPt.y = walkInfo->y;
+
+ if (walkInfo->direction) {
+ newDestPt.x = walkInfo->x;
+ newDestPt.y = walkInfo->y + walkInfo->delta - 1;
+ } else {
+ newDestPt.x = walkInfo->x + walkInfo->delta - 1;
+ newDestPt.y = walkInfo->y;
+ }
+
+ if ((newDestPt.x - _destWalkAreaPt.x) * (newDestPt.x - _destWalkAreaPt.x) +
+ (newDestPt.y - _destWalkAreaPt.y) * (newDestPt.y - _destWalkAreaPt.y) <
+ (destPt.x - _destWalkAreaPt.x) * (destPt.x - _destWalkAreaPt.x) +
+ (destPt.y - _destWalkAreaPt.y) * (destPt.y - _destWalkAreaPt.y))
+ destPt = newDestPt;
+
+ }
+
+ debug(5, "BbvsEngine::walkFoundPath() destPt: (%d, %d)", destPt.x, destPt.y);
+
+ _finalWalkPt = destPt;
+
+ debug(5, "BbvsEngine::walkFoundPath() OK");
+
+}
+
+void BbvsEngine::updateWalkableRects() {
+ // Go through all walkable rects and subtract all scene object rects
+ Common::Rect *rectsList1 = _tempWalkableRects1;
+ Common::Rect *rectsList2 = _gameModule->getWalkRects();
+ _walkableRectsCount = _gameModule->getWalkRectsCount();
+ for (int i = 0; i < _gameModule->getSceneObjectDefsCount(); ++i) {
+ SceneObject *sceneObject = &_sceneObjects[i];
+ Animation *anim = sceneObject->anim;
+ if (anim && _buttheadObject != sceneObject && _beavisObject != sceneObject) {
+ Common::Rect rect = sceneObject->anim->frameRects2[sceneObject->frameIndex];
+ rect.translate(sceneObject->x >> 16, sceneObject->y >> 16);
+ int count = _walkableRectsCount;
+ _walkableRectsCount = 0;
+ for (int j = 0; j < count; ++j)
+ _walkableRectsCount += rectSubtract(rect, rectsList2[j], &rectsList1[_walkableRectsCount]);
+ if (rectsList1 == _tempWalkableRects1) {
+ rectsList1 = _tempWalkableRects2;
+ rectsList2 = _tempWalkableRects1;
+ } else {
+ rectsList1 = _tempWalkableRects1;
+ rectsList2 = _tempWalkableRects2;
+ }
+ }
+ }
+ for (int i = 0; i < _walkableRectsCount; ++i)
+ _walkableRects[i] = rectsList2[i];
+}
+
+} // End of namespace Bbvs
diff --git a/engines/cge/bitmap.cpp b/engines/cge/bitmap.cpp
index 5acd111c97..536db5e73b 100644
--- a/engines/cge/bitmap.cpp
+++ b/engines/cge/bitmap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -293,6 +293,7 @@ bool Bitmap::solidAt(int16 x, int16 y) {
switch (t) {
case kBmpEOI:
r--;
+ // No break on purpose
case kBmpSKP:
w = 0;
break;
diff --git a/engines/cge/bitmap.h b/engines/cge/bitmap.h
index 3de05ac2fd..2768271b23 100644
--- a/engines/cge/bitmap.h
+++ b/engines/cge/bitmap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/cge.cpp b/engines/cge/cge.cpp
index af7e91f7eb..3f7aa4abc9 100644
--- a/engines/cge/cge.cpp
+++ b/engines/cge/cge.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -50,12 +50,68 @@ CGEEngine::CGEEngine(OSystem *syst, const ADGameDescription *gameDescription)
DebugMan.addDebugChannel(kCGEDebugFile, "file", "CGE IO debug channel");
DebugMan.addDebugChannel(kCGEDebugEngine, "engine", "CGE Engine debug channel");
- _startupMode = 1;
- _oldLev = 0;
- _pocPtr = 0;
- _bitmapPalette = NULL;
+ _bitmapPalette = nullptr;
+ _pocLight = nullptr;
+ _keyboard = nullptr;
+ _mouse = nullptr;
+ _sprite = nullptr;
+ _miniScene = nullptr;
+ _shadow = nullptr;
+ _horzLine = nullptr;
+ _infoLine = nullptr;
+ _debugLine = nullptr;
+ _sceneLight = nullptr;
+ _commandHandler = nullptr;
+ _commandHandlerTurbo = nullptr;
+ _eventManager = nullptr;
+ _fx = nullptr;
+ _sound = nullptr;
+ _resman = nullptr;
+ for (int i = 0; i < 8; i++)
+ _pocket[i] = nullptr;
+ _hero = nullptr;
+ _text = nullptr;
+ _talk = nullptr;
+ _midiPlayer = nullptr;
+ _miniShp = nullptr;
+ _miniShpList = nullptr;
+ _console = nullptr;
+ _sprTv = nullptr;
+ _sprK1 = nullptr;
+ _sprK2 = nullptr;
+ _sprK3 = nullptr;
+ _font = nullptr;
+ _vga = nullptr;
+ _sys = nullptr;
+
_quitFlag = false;
_showBoundariesFl = false;
+ _music = true;
+ _dark = false;
+ _game = false;
+ _endGame = false;
+ for (int i = 0; i < 4; i++)
+ _flag[i] = false;
+
+ _startupMode = 1;
+ _oldLev = 0;
+ _pocPtr = 0;
+ _startGameSlot = -1;
+ _recentStep = -2;
+ _lastFrame = 0;
+ _lastTick = 0;
+ _maxScene = 0;
+ _now = 1;
+ _lev = -1;
+ _mode = 0;
+ _gameCase2Cpt = 0;
+ _offUseCount = 0;
+ _volume[0] = 0;
+ _volume[1] = 0;
+ for (int i = 0; i < kPocketNX; i++)
+ _pocref[i] = -1;
+
+ initSceneValues();
}
void CGEEngine::initSceneValues() {
@@ -71,31 +127,30 @@ void CGEEngine::initSceneValues() {
}
void CGEEngine::init() {
- debugC(1, kCGEDebugEngine, "CGEEngine::setup()");
+ debugC(1, kCGEDebugEngine, "CGEEngine::init()");
+
+ // Initialize fields
+ _hero = nullptr;
+ _shadow = nullptr;
+ _miniScene = nullptr;
+ _miniShp = nullptr;
+ _miniShpList = nullptr;
+ _sprite = nullptr;
- // Initialise fields
- _lastFrame = 0;
- _lastTick = 0;
- _hero = NULL;
- _shadow = NULL;
- _miniScene = NULL;
- _miniShp = NULL;
- _miniShpList = NULL;
- _sprite = NULL;
_resman = new ResourceManager();
// Create debugger console
_console = new CGEConsole(this);
- // Initialise engine objects
+ // Initialize engine objects
_font = new Font(this, "CGE");
_text = new Text(this, "CGE");
- _talk = NULL;
+ _talk = nullptr;
_vga = new Vga(this);
_sys = new System(this);
_pocLight = new PocLight(this);
for (int i = 0; i < kPocketNX; i++)
- _pocket[i] = NULL;
+ _pocket[i] = nullptr;
_horzLine = new HorizLine(this);
_infoLine = new InfoLine(this, kInfoW);
_sceneLight = new SceneLight(this);
@@ -110,30 +165,6 @@ void CGEEngine::init() {
_sound = new Sound(this);
_offUseCount = atoi(_text->getText(kOffUseCount));
- _music = true;
-
- for (int i = 0; i < kPocketNX; i++)
- _pocref[i] = -1;
- _volume[0] = 0;
- _volume[1] = 0;
-
- initSceneValues();
-
- _maxScene = 0;
- _dark = false;
- _game = false;
- _endGame = false;
- _now = 1;
- _lev = -1;
- _recentStep = -2;
-
- for (int i = 0; i < 4; i++)
- _flag[i] = false;
-
- _mode = 0;
- _soundOk = 1;
- _sprTv = NULL;
- _gameCase2Cpt = 0;
_startGameSlot = ConfMan.hasKey("save_slot") ? ConfMan.getInt("save_slot") : -1;
}
diff --git a/engines/cge/cge.h b/engines/cge/cge.h
index 61558c0989..a65069ff46 100644
--- a/engines/cge/cge.h
+++ b/engines/cge/cge.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef CGE_H
#define CGE_H
@@ -107,7 +107,6 @@ struct SavegameHeader {
Graphics::Surface *thumbnail;
int saveYear, saveMonth, saveDay;
int saveHour, saveMinutes;
- int totalFrames;
};
extern const char *savegameStr;
@@ -168,7 +167,6 @@ public:
int _now;
int _lev;
int _mode;
- int _soundOk;
int _gameCase2Cpt;
int _offUseCount;
Dac *_bitmapPalette;
diff --git a/engines/cge/cge_main.cpp b/engines/cge/cge_main.cpp
index 602b36d6ef..e738b6ebb3 100644
--- a/engines/cge/cge_main.cpp
+++ b/engines/cge/cge_main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -125,9 +125,8 @@ char *CGEEngine::mergeExt(char *buf, const char *name, const char *ext) {
}
int CGEEngine::takeEnum(const char **tab, const char *text) {
- const char **e;
if (text) {
- for (e = tab; *e; e++) {
+ for (const char **e = tab; *e; e++) {
if (scumm_stricmp(text, *e) == 0) {
return e - tab;
}
@@ -196,7 +195,6 @@ bool CGEEngine::loadGame(int slotNumber, SavegameHeader *header, bool tiny) {
debugC(1, kCGEDebugEngine, "CGEEngine::loadgame(%d, header, %s)", slotNumber, tiny ? "true" : "false");
Common::MemoryReadStream *readStream;
- SavegameHeader saveHeader;
if (slotNumber == -1) {
// Loading the data for the initial game state
@@ -232,6 +230,8 @@ bool CGEEngine::loadGame(int slotNumber, SavegameHeader *header, bool tiny) {
return false;
} else {
// Found header
+ SavegameHeader saveHeader;
+
if (!readSavegameHeader(readStream, saveHeader)) {
delete readStream;
return false;
@@ -398,7 +398,7 @@ void CGEEngine::syncGame(Common::SeekableReadStream *readStream, Common::WriteSt
}
} else {
// Loading game
- if (_soundOk == 1 && _mode == 0) {
+ if (_mode == 0) {
// Skip Digital and Midi volumes, useless under ScummVM
sndSetVolume();
}
@@ -425,7 +425,7 @@ void CGEEngine::syncGame(Common::SeekableReadStream *readStream, Common::WriteSt
}
bool CGEEngine::readSavegameHeader(Common::InSaveFile *in, SavegameHeader &header) {
- header.thumbnail = NULL;
+ header.thumbnail = nullptr;
// Get the savegame version
header.version = in->readByte();
@@ -657,14 +657,15 @@ void CGEEngine::sceneUp() {
_vga->copyPage(0, 1);
selectPocket(-1);
- if (_hero)
+ if (_hero) {
_vga->_showQ->insert(_vga->_showQ->remove(_hero));
- if (_shadow) {
- _vga->_showQ->remove(_shadow);
- _shadow->makeXlat(_vga->glass(_vga->_sysPal, 204, 204, 204));
- _vga->_showQ->insert(_shadow, _hero);
- _shadow->_z = _hero->_z;
+ if (_shadow) {
+ _vga->_showQ->remove(_shadow);
+ _shadow->makeXlat(_vga->glass(_vga->_sysPal, 204, 204, 204));
+ _vga->_showQ->insert(_shadow, _hero);
+ _shadow->_z = _hero->_z;
+ }
}
feedSnail(_vga->_showQ->locate(BakRef + 999), kTake);
_vga->show();
@@ -1029,7 +1030,6 @@ void CGEEngine::loadSprite(const char *fname, int ref, int scene, int col = 0, i
bool east = false;
bool port = false;
bool tran = false;
- int i, lcnt = 0;
char tmpStr[kLineMax + 1];
Common::String line;
@@ -1041,6 +1041,7 @@ void CGEEngine::loadSprite(const char *fname, int ref, int scene, int col = 0, i
error("Bad SPR [%s]", tmpStr);
uint16 len;
+ int i, lcnt = 0;
for (line = sprf.readLine(); !sprf.eos(); line = sprf.readLine()) {
len = line.size();
lcnt++;
@@ -1483,25 +1484,6 @@ bool CGEEngine::showTitle(const char *name) {
selectPocket(-1);
_vga->sunrise(_vga->_sysPal);
- if (_mode < 2 && !_soundOk) {
- _vga->copyPage(1, 2);
- _vga->copyPage(0, 1);
- _vga->_showQ->append(_mouse);
- _mouse->on();
- for (; !_commandHandler->idle() || Vmenu::_addr;) {
- mainLoop();
- if (_quitFlag)
- return false;
- }
-
- _mouse->off();
- _vga->_showQ->clear();
- _vga->copyPage(0, 2);
- _soundOk = 2;
- if (_music)
- _midiPlayer->loadMidi(0);
- }
-
if (_mode < 2) {
// At this point the game originally set the protection variables
// used by the copy protection check
@@ -1540,7 +1522,7 @@ void CGEEngine::cge_main() {
if (_horzLine)
_horzLine->_flags._hide = true;
- if (_music && _soundOk)
+ if (_music)
_midiPlayer->loadMidi(0);
if (_startGameSlot != -1) {
diff --git a/engines/cge/cge_main.h b/engines/cge/cge_main.h
index bde8306f36..e0438f7a39 100644
--- a/engines/cge/cge_main.h
+++ b/engines/cge/cge_main.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/console.cpp b/engines/cge/console.cpp
index 105f241944..447875c06f 100644
--- a/engines/cge/console.cpp
+++ b/engines/cge/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/console.h b/engines/cge/console.h
index ea36dfbaae..ad4471283f 100644
--- a/engines/cge/console.h
+++ b/engines/cge/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/detection.cpp b/engines/cge/detection.cpp
index c377970c51..4c2f81c1ae 100644
--- a/engines/cge/detection.cpp
+++ b/engines/cge/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -24,10 +24,22 @@
#include "engines/advancedDetector.h"
#include "common/savefile.h"
#include "common/system.h"
+#include "common/translation.h"
#include "base/plugins.h"
#include "graphics/thumbnail.h"
#include "cge/cge.h"
+namespace CGE {
+
+struct CgeGameDescription {
+ ADGameDescription desc;
+ GameType gameType;
+};
+
+#define GAMEOPTION_COLOR_BLIND_DEFAULT_OFF GUIO_GAMEOPTIONS1
+
+} // End of namespace CGE
+
static const PlainGameDescriptor CGEGames[] = {
{ "soltys", "Soltys" },
{ "sfinx", "Sfinx" },
@@ -36,11 +48,6 @@ static const PlainGameDescriptor CGEGames[] = {
namespace CGE {
-struct CgeGameDescription {
- ADGameDescription desc;
- GameType gameType;
-};
-
static const CgeGameDescription gameDescriptions[] = {
{
@@ -63,7 +70,7 @@ static const CgeGameDescription gameDescriptions[] = {
{"vol.dat", 0, "f9ae2e7f8f7cac91378cdafca43faf1e", 8437676},
AD_LISTEND
},
- Common::PL_POL, Common::kPlatformDOS, ADGF_NO_FLAGS, GUIO0()
+ Common::PL_POL, Common::kPlatformDOS, ADGF_NO_FLAGS, GUIO1(GAMEOPTION_COLOR_BLIND_DEFAULT_OFF)
},
kGameTypeSoltys
},
@@ -75,7 +82,7 @@ static const CgeGameDescription gameDescriptions[] = {
{"vol.dat", 0, "75d385a6074c58b69f7730481f256051", 1796710},
AD_LISTEND
},
- Common::EN_ANY, Common::kPlatformDOS, ADGF_DEMO , GUIO0()
+ Common::EN_ANY, Common::kPlatformDOS, ADGF_DEMO , GUIO1(GAMEOPTION_COLOR_BLIND_DEFAULT_OFF)
},
kGameTypeSoltys
},
@@ -87,7 +94,7 @@ static const CgeGameDescription gameDescriptions[] = {
{"vol.dat", 0, "c5d9b15863cab61dc125551576dece04", 1075272},
AD_LISTEND
},
- Common::PL_POL, Common::kPlatformDOS, ADGF_DEMO , GUIO0()
+ Common::PL_POL, Common::kPlatformDOS, ADGF_DEMO , GUIO1(GAMEOPTION_COLOR_BLIND_DEFAULT_OFF)
},
kGameTypeSoltys
},
@@ -99,7 +106,7 @@ static const CgeGameDescription gameDescriptions[] = {
{"vol.dat", 0, "4ffeff4abc99ac5999b55ccfc56ab1df", 8430868},
AD_LISTEND
},
- Common::EN_ANY, Common::kPlatformDOS, ADGF_NO_FLAGS , GUIO0()
+ Common::EN_ANY, Common::kPlatformDOS, ADGF_NO_FLAGS , GUIO1(GAMEOPTION_COLOR_BLIND_DEFAULT_OFF)
},
kGameTypeSoltys
},
@@ -111,7 +118,7 @@ static const CgeGameDescription gameDescriptions[] = {
{"vol.dat", 0, "0e43331c846094d77f5dd201827e0a3b", 8439339},
AD_LISTEND
},
- Common::PL_POL, Common::kPlatformDOS, ADGF_NO_FLAGS, GUIO0()
+ Common::PL_POL, Common::kPlatformDOS, ADGF_NO_FLAGS, GUIO1(GAMEOPTION_COLOR_BLIND_DEFAULT_OFF)
},
kGameTypeSoltys
},
@@ -123,7 +130,7 @@ static const CgeGameDescription gameDescriptions[] = {
{"vol.dat", 0, "ff10d54acc2c95696c57e05819b6906f", 8450151},
AD_LISTEND
},
- Common::ES_ESP, Common::kPlatformDOS, ADGF_NO_FLAGS , GUIO0()
+ Common::ES_ESP, Common::kPlatformDOS, ADGF_NO_FLAGS , GUIO1(GAMEOPTION_COLOR_BLIND_DEFAULT_OFF)
},
kGameTypeSoltys
},
@@ -136,7 +143,7 @@ static const CgeGameDescription gameDescriptions[] = {
{"vol.dat", 0, "de14291869a8eb7c2732ab783c7542ef", 34180844},
AD_LISTEND
},
- Common::PL_POL, Common::kPlatformDOS, ADGF_NO_FLAGS, GUIO0()
+ Common::PL_POL, Common::kPlatformDOS, ADGF_NO_FLAGS, GUIO1(GAMEOPTION_COLOR_BLIND_DEFAULT_OFF)
},
kGameTypeSfinx
},
@@ -148,12 +155,25 @@ static const ADFileBasedFallback fileBasedFallback[] = {
{ &gameDescriptions[0].desc, { "vol.cat", "vol.dat", 0 } },
{ 0, { 0 } }
};
-
} // End of namespace CGE
+static const ADExtraGuiOptionsMap optionsList[] = {
+ {
+ GAMEOPTION_COLOR_BLIND_DEFAULT_OFF,
+ {
+ _s("Color Blind Mode"),
+ _s("Enable Color Blind Mode by default"),
+ "enable_color_blind",
+ false
+ }
+ },
+
+ AD_EXTRA_GUI_OPTIONS_TERMINATOR
+};
+
class CGEMetaEngine : public AdvancedMetaEngine {
public:
- CGEMetaEngine() : AdvancedMetaEngine(CGE::gameDescriptions, sizeof(CGE::CgeGameDescription), CGEGames) {
+ CGEMetaEngine() : AdvancedMetaEngine(CGE::gameDescriptions, sizeof(CGE::CgeGameDescription), CGEGames, optionsList) {
_singleid = "soltys";
}
@@ -169,8 +189,6 @@ public:
return "Soltys (c) 1994-1996 L.K. Avalon";
}
-
-
virtual bool hasFeature(MetaEngineFeature f) const;
virtual bool createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const;
virtual int getMaximumSaveSlot() const;
@@ -208,10 +226,9 @@ SaveStateList CGEMetaEngine::listSaves(const char *target) const {
sort(filenames.begin(), filenames.end()); // Sort (hopefully ensuring we are sorted numerically..)
SaveStateList saveList;
- int slotNum = 0;
for (Common::StringArray::const_iterator filename = filenames.begin(); filename != filenames.end(); ++filename) {
// Obtain the last 3 digits of the filename, since they correspond to the save slot
- slotNum = atoi(filename->c_str() + filename->size() - 3);
+ int slotNum = atoi(filename->c_str() + filename->size() - 3);
if (slotNum >= 0 && slotNum <= 99) {
@@ -291,7 +308,7 @@ bool CGEMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameD
}
#if PLUGIN_ENABLED_DYNAMIC(CGE)
-REGISTER_PLUGIN_DYNAMIC(CGE, PLUGIN_TYPE_ENGINE, CGEMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(CGE, PLUGIN_TYPE_ENGINE, CGEMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(CGE, PLUGIN_TYPE_ENGINE, CGEMetaEngine);
+ REGISTER_PLUGIN_STATIC(CGE, PLUGIN_TYPE_ENGINE, CGEMetaEngine);
#endif
diff --git a/engines/cge/events.cpp b/engines/cge/events.cpp
index 89802058f4..24b3a270cf 100644
--- a/engines/cge/events.cpp
+++ b/engines/cge/events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/events.h b/engines/cge/events.h
index ab8d87212d..63f02b7475 100644
--- a/engines/cge/events.h
+++ b/engines/cge/events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/fileio.cpp b/engines/cge/fileio.cpp
index 8ee726c46d..2b1f74db02 100644
--- a/engines/cge/fileio.cpp
+++ b/engines/cge/fileio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -93,13 +93,11 @@ ResourceManager::~ResourceManager() {
delete _buff[i]._page;
}
-uint16 ResourceManager::XCrypt(byte *buf, uint16 length) {
+void ResourceManager::XCrypt(byte *buf, uint16 length) {
byte *b = buf;
for (uint16 i = 0; i < length; i++)
*b++ ^= kCryptSeed;
-
- return kCryptSeed;
}
bool ResourceManager::seek(int32 offs, int whence) {
@@ -118,7 +116,7 @@ uint16 ResourceManager::read(byte *buf, uint16 length) {
}
BtPage *ResourceManager::getPage(int level, uint16 pageId) {
- debugC(1, kCGEDebugFile, "IoHand::getPage(%d, %d)", level, pageId);
+ debugC(1, kCGEDebugFile, "ResourceManager::getPage(%d, %d)", level, pageId);
if (_buff[level]._pageNo != pageId) {
int32 pos = pageId * kBtSize;
@@ -142,7 +140,7 @@ BtPage *ResourceManager::getPage(int level, uint16 pageId) {
}
BtKeypack *ResourceManager::find(const char *key) {
- debugC(1, kCGEDebugFile, "IoHand::find(%s)", key);
+ debugC(1, kCGEDebugFile, "ResourceManager::find(%s)", key);
int lev = 0;
uint16 nxt = kBtValRoot;
diff --git a/engines/cge/fileio.h b/engines/cge/fileio.h
index 653aabae8f..059d2c9a44 100644
--- a/engines/cge/fileio.h
+++ b/engines/cge/fileio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -86,13 +86,13 @@ class ResourceManager {
uint16 catRead(byte *buf, uint16 length);
Common::File *_catFile;
Common::File *_datFile;
- uint16 XCrypt(byte *buf, uint16 length);
+ void XCrypt(byte *buf, uint16 length);
public:
ResourceManager();
~ResourceManager();
uint16 read(byte *buf, uint16 length);
- bool seek(int32 offs, int whence = 0);
+ bool seek(int32 offs, int whence = SEEK_SET);
BtKeypack *find(const char *key);
bool exist(const char *name);
diff --git a/engines/cge/game.cpp b/engines/cge/game.cpp
index 851f6c59fb..49fe12f517 100644
--- a/engines/cge/game.cpp
+++ b/engines/cge/game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/game.h b/engines/cge/game.h
index 4d5acf7371..330eb20928 100644
--- a/engines/cge/game.h
+++ b/engines/cge/game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/general.h b/engines/cge/general.h
index 9e3fc7f249..ac7c6f4da5 100644
--- a/engines/cge/general.h
+++ b/engines/cge/general.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/module.mk b/engines/cge/module.mk
index 5745aa5d48..1fa406f6c8 100644
--- a/engines/cge/module.mk
+++ b/engines/cge/module.mk
@@ -25,6 +25,6 @@ ifeq ($(ENABLE_CGE), DYNAMIC_PLUGIN)
PLUGIN := 1
endif
-# Include common rules
+# Include common rules
include $(srcdir)/rules.mk
diff --git a/engines/cge/snail.cpp b/engines/cge/snail.cpp
index b9030efb4d..1a6ca0789e 100644
--- a/engines/cge/snail.cpp
+++ b/engines/cge/snail.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -658,6 +658,9 @@ void CGEEngine::selectPocket(int n) {
void CGEEngine::pocFul() {
debugC(1, kCGEDebugEngine, "CGEEngine::pocFul()");
+ if (!_hero)
+ error("pocFul - Unexpected null _hero");
+
_hero->park();
_commandHandler->addCommand(kCmdWait, -1, -1, _hero);
_commandHandler->addCommand(kCmdSeq, -1, kSeqPocketFull, _hero);
diff --git a/engines/cge/snail.h b/engines/cge/snail.h
index 6a9e717441..2f56768fed 100644
--- a/engines/cge/snail.h
+++ b/engines/cge/snail.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/sound.cpp b/engines/cge/sound.cpp
index 892b826318..370b768bca 100644
--- a/engines/cge/sound.cpp
+++ b/engines/cge/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -228,6 +228,7 @@ MusicPlayer::MusicPlayer(CGEEngine *vm) : _vm(vm) {
_driver->setTimerCallback(this, &timerCallback);
}
+ _dataSize = -1;
}
MusicPlayer::~MusicPlayer() {
diff --git a/engines/cge/sound.h b/engines/cge/sound.h
index a3f4d4d777..dc67f9408b 100644
--- a/engines/cge/sound.h
+++ b/engines/cge/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/talk.cpp b/engines/cge/talk.cpp
index f5d570b389..e377a72601 100644
--- a/engines/cge/talk.cpp
+++ b/engines/cge/talk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/talk.h b/engines/cge/talk.h
index 66e3d85214..2f89881b8d 100644
--- a/engines/cge/talk.h
+++ b/engines/cge/talk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/text.cpp b/engines/cge/text.cpp
index 08ff005e1e..7d8c89befa 100644
--- a/engines/cge/text.cpp
+++ b/engines/cge/text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/text.h b/engines/cge/text.h
index 13ce6bbfbb..9bd990f486 100644
--- a/engines/cge/text.h
+++ b/engines/cge/text.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/vga13h.cpp b/engines/cge/vga13h.cpp
index 4954e638ab..d5e1be5122 100644
--- a/engines/cge/vga13h.cpp
+++ b/engines/cge/vga13h.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -26,6 +26,7 @@
*/
#include "common/array.h"
+#include "common/config-manager.h"
#include "common/rect.h"
#include "graphics/palette.h"
#include "cge/general.h"
@@ -210,10 +211,10 @@ Sprite *Sprite::expand() {
error("Bad SPR [%s]", fname);
Common::String line;
char tmpStr[kLineMax + 1];
- int len = 0, lcnt = 0;
+ int lcnt = 0;
for (line = sprf.readLine(); !sprf.eos(); line = sprf.readLine()) {
- len = line.size();
+ int len = line.size();
Common::strlcpy(tmpStr, line.c_str(), sizeof(tmpStr));
lcnt++;
if (len == 0 || *tmpStr == '.')
@@ -637,6 +638,10 @@ Vga::Vga(CGEEngine *vm) : _frmCnt(0), _msg(NULL), _name(NULL), _setPal(false), _
_page[idx]->create(320, 200, Graphics::PixelFormat::createFormatCLUT8());
}
+ if (ConfMan.getBool("enable_color_blind"))
+ _mono = 1;
+
+
_oldColors = (Dac *)malloc(sizeof(Dac) * kPalCount);
_newColors = (Dac *)malloc(sizeof(Dac) * kPalCount);
getColors(_oldColors);
@@ -756,7 +761,7 @@ void Vga::setColors(Dac *tab, int lum) {
if (_mono) {
destP = _newColors;
for (int idx = 0; idx < kPalCount; idx++, destP++) {
- // Form a greyscalce colour from 30% R, 59% G, 11% B
+ // Form a greyscalce color from 30% R, 59% G, 11% B
uint8 intensity = (((int)destP->_r * 77) + ((int)destP->_g * 151) + ((int)destP->_b * 28)) >> 8;
destP->_r = intensity;
destP->_g = intensity;
diff --git a/engines/cge/vga13h.h b/engines/cge/vga13h.h
index a816f7756f..9511559df0 100644
--- a/engines/cge/vga13h.h
+++ b/engines/cge/vga13h.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/vmenu.cpp b/engines/cge/vmenu.cpp
index 910e54d267..89f0039e02 100644
--- a/engines/cge/vmenu.cpp
+++ b/engines/cge/vmenu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/vmenu.h b/engines/cge/vmenu.h
index 928b48f11c..1cab57080d 100644
--- a/engines/cge/vmenu.h
+++ b/engines/cge/vmenu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/walk.cpp b/engines/cge/walk.cpp
index 22c06a17c1..1ab7574c0c 100644
--- a/engines/cge/walk.cpp
+++ b/engines/cge/walk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cge/walk.h b/engines/cge/walk.h
index 00ec080416..982c96dbaa 100644
--- a/engines/cge/walk.h
+++ b/engines/cge/walk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/anim.cpp b/engines/cine/anim.cpp
index 075a59cfb6..c6099447d8 100644
--- a/engines/cine/anim.cpp
+++ b/engines/cine/anim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -287,7 +287,7 @@ void AnimData::load(byte *d, int type, uint16 w, uint16 h, int16 file,
_fileIdx = file;
_frameIdx = frame;
memset(_name, 0, sizeof(_name));
- strcpy(_name, n);
+ Common::strlcpy(_name, n, sizeof(_name));
_realWidth = w;
switch (type) {
diff --git a/engines/cine/anim.h b/engines/cine/anim.h
index c5130aab82..7b4daafa88 100644
--- a/engines/cine/anim.h
+++ b/engines/cine/anim.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/bg.cpp b/engines/cine/bg.cpp
index 2bad2183f5..ce808e0f6a 100644
--- a/engines/cine/bg.cpp
+++ b/engines/cine/bg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -48,7 +48,7 @@ byte loadCtFW(const char *ctName) {
}
if (currentCtName != ctName)
- strcpy(currentCtName, ctName);
+ Common::strlcpy(currentCtName, ctName, sizeof(currentCtName));
ptr = dataPtr = readBundleFile(foundFileIdx);
@@ -75,7 +75,7 @@ byte loadCtOS(const char *ctName) {
}
if (currentCtName != ctName)
- strcpy(currentCtName, ctName);
+ Common::strlcpy(currentCtName, ctName, sizeof(currentCtName));
ptr = dataPtr = readBundleFile(foundFileIdx);
diff --git a/engines/cine/bg.h b/engines/cine/bg.h
index c464cd68be..ac884463cb 100644
--- a/engines/cine/bg.h
+++ b/engines/cine/bg.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/bg_list.cpp b/engines/cine/bg_list.cpp
index 36ecf53dea..d2f05a3fbd 100644
--- a/engines/cine/bg_list.cpp
+++ b/engines/cine/bg_list.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/bg_list.h b/engines/cine/bg_list.h
index c564b4b43f..3cfc33e274 100644
--- a/engines/cine/bg_list.h
+++ b/engines/cine/bg_list.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/cine.cpp b/engines/cine/cine.cpp
index 63092a8ffd..a4af8f2201 100644
--- a/engines/cine/cine.cpp
+++ b/engines/cine/cine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -55,6 +55,14 @@ CineEngine::CineEngine(OSystem *syst, const CINEGameDescription *gameDesc)
_console = new CineConsole(this);
g_cine = this;
+
+ for (int i = 0; i < NUM_FONT_CHARS; i++) {
+ _textHandler.fontParamTable[i].characterIdx = 0;
+ _textHandler.fontParamTable[i].characterWidth = 0;
+ }
+ _restartRequested = false;
+ _preLoad = false;
+ _timerDelayMultiplier = 12;
}
CineEngine::~CineEngine() {
diff --git a/engines/cine/cine.h b/engines/cine/cine.h
index 47edf51c30..e620d2ffa5 100644
--- a/engines/cine/cine.h
+++ b/engines/cine/cine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/console.cpp b/engines/cine/console.cpp
index 46f0ea61d3..82197693d4 100644
--- a/engines/cine/console.cpp
+++ b/engines/cine/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/console.h b/engines/cine/console.h
index 7c19621e5f..9b901982b9 100644
--- a/engines/cine/console.h
+++ b/engines/cine/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/detection.cpp b/engines/cine/detection.cpp
index a3d36cfd97..4202bdc942 100644
--- a/engines/cine/detection.cpp
+++ b/engines/cine/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/detection_tables.h b/engines/cine/detection_tables.h
index 224ebe5de2..6069e3a99b 100644
--- a/engines/cine/detection_tables.h
+++ b/engines/cine/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/gfx.cpp b/engines/cine/gfx.cpp
index 636c0cf8d9..f6419ecafc 100644
--- a/engines/cine/gfx.cpp
+++ b/engines/cine/gfx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -246,17 +246,16 @@ void FWRenderer::incrustSprite(const BGIncrust &incrust) {
* Draw command box on screen
*/
void FWRenderer::drawCommand() {
- unsigned int i;
- int x = 10, y = _cmdY;
-
if (disableSystemMenu == 0) {
+ int x = 10, y = _cmdY;
+
drawPlainBox(x, y, 301, 11, 0);
drawBorder(x - 1, y - 1, 302, 12, 2);
x += 2;
y += 2;
- for (i = 0; i < _cmd.size(); i++) {
+ for (unsigned int i = 0; i < _cmd.size(); i++) {
x = drawChar(_cmd[i], x, y);
}
}
@@ -458,12 +457,12 @@ void FWRenderer::drawDoubleBorder(int x, int y, int width, int height, byte colo
* @param y Character coordinate
*/
int FWRenderer::drawChar(char character, int x, int y) {
- int width, idx;
+ int width;
if (character == ' ') {
x += 5;
} else if ((width = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterWidth)) {
- idx = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterIdx;
+ int idx = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterIdx;
drawSpriteRaw(g_cine->_textHandler.textTable[idx][FONT_DATA], g_cine->_textHandler.textTable[idx][FONT_MASK], FONT_WIDTH, FONT_HEIGHT, _backBuffer, x, y);
x += width + 1;
}
@@ -481,12 +480,12 @@ int FWRenderer::drawChar(char character, int x, int y) {
* @param y Character coordinate
*/
int FWRenderer::undrawChar(char character, int x, int y) {
- int width, idx;
+ int width;
if (character == ' ') {
x += 5;
} else if ((width = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterWidth)) {
- idx = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterIdx;
+ int idx = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterIdx;
const byte *sprite = g_cine->_textHandler.textTable[idx][FONT_DATA];
for (uint i = 0; i < FONT_HEIGHT; ++i) {
byte *dst = _backBuffer + (y + i) * 320 + x;
@@ -731,7 +730,7 @@ void FWRenderer::loadBg16(const byte *bg, const char *name, unsigned int idx) {
assert(_background);
- strcpy(_bgName, name);
+ Common::strlcpy(_bgName, name, sizeof(_bgName));
// Load the 16 color palette
_backupPal.load(bg, kLowPalNumBytes, kLowPalFormat, kLowPalNumColors, CINE_BIG_ENDIAN);
@@ -997,11 +996,10 @@ void SelectionMenu::drawMenu(FWRenderer &r, bool top) {
}
int lineY = y + 4;
- int charX;
const int elemCount = getElementCount();
for (int i = 0; i < elemCount; ++i, lineY += 9) {
- charX = x + 4;
+ int charX = x + 4;
if (i == _selection) {
int color;
@@ -1228,12 +1226,12 @@ void OSRenderer::incrustSprite(const BGIncrust &incrust) {
* @param y Character coordinate
*/
int OSRenderer::drawChar(char character, int x, int y) {
- int width, idx;
+ int width;
if (character == ' ') {
x += 5;
} else if ((width = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterWidth)) {
- idx = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterIdx;
+ int idx = g_cine->_textHandler.fontParamTable[(unsigned char)character].characterIdx;
drawSpriteRaw2(g_cine->_textHandler.textTable[idx][FONT_DATA], 0, FONT_WIDTH, FONT_HEIGHT, _backBuffer, x, y);
x += width + 1;
}
@@ -1405,7 +1403,7 @@ void OSRenderer::loadBg16(const byte *bg, const char *name, unsigned int idx) {
assert(_bgTable[idx].bg);
- strcpy(_bgTable[idx].name, name);
+ Common::strlcpy(_bgTable[idx].name, name, sizeof(_bgTable[idx].name));
// Load the 16 color palette
_bgTable[idx].pal.load(bg, kLowPalNumBytes, kLowPalFormat, kLowPalNumColors, CINE_BIG_ENDIAN);
@@ -1443,7 +1441,7 @@ void OSRenderer::loadBg256(const byte *bg, const char *name, unsigned int idx) {
assert(_bgTable[idx].bg);
- strcpy(_bgTable[idx].name, name);
+ Common::strlcpy(_bgTable[idx].name, name, sizeof(_bgTable[idx].name));
_bgTable[idx].pal.load(bg, kHighPalNumBytes, kHighPalFormat, kHighPalNumColors, CINE_LITTLE_ENDIAN);
memcpy(_bgTable[idx].bg, bg + kHighPalNumBytes, _screenSize);
}
@@ -1834,7 +1832,7 @@ void OSRenderer::drawSprite(overlay *overlayPtr, const byte *spritePtr, int16 wi
}
}
}
- it++;
+ ++it;
}
// now, draw with the mask we created
@@ -1887,7 +1885,6 @@ void maskBgOverlay(const byte *bgPtr, const byte *maskPtr, int16 width, int16 he
byte *page, int16 x, int16 y) {
int16 i, j, tmpWidth, tmpHeight;
Common::List<BGIncrust>::iterator it;
- byte *mask;
const byte *backup = maskPtr;
// background pass
@@ -1915,7 +1912,7 @@ void maskBgOverlay(const byte *bgPtr, const byte *maskPtr, int16 width, int16 he
for (it = g_cine->_bgIncrustList.begin(); it != g_cine->_bgIncrustList.end(); ++it) {
tmpWidth = g_cine->_animDataTable[it->frame]._realWidth;
tmpHeight = g_cine->_animDataTable[it->frame]._height;
- mask = (byte *)malloc(tmpWidth * tmpHeight);
+ byte *mask = (byte *)malloc(tmpWidth * tmpHeight);
if (it->param == 0) {
generateMask(g_cine->_animDataTable[it->frame].data(), mask, tmpWidth * tmpHeight, it->part);
diff --git a/engines/cine/gfx.h b/engines/cine/gfx.h
index 8b8843fd72..bfb7dbde1d 100644
--- a/engines/cine/gfx.h
+++ b/engines/cine/gfx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/main_loop.cpp b/engines/cine/main_loop.cpp
index c822f1cabd..9ce683445f 100644
--- a/engines/cine/main_loop.cpp
+++ b/engines/cine/main_loop.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -254,7 +254,7 @@ void purgeSeqList() {
it = g_cine->_seqList.erase(it);
} else {
// Let the element be and jump to the next element
- it++;
+ ++it;
}
}
}
diff --git a/engines/cine/main_loop.h b/engines/cine/main_loop.h
index 4ab29149d8..98e8f8878a 100644
--- a/engines/cine/main_loop.h
+++ b/engines/cine/main_loop.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/msg.cpp b/engines/cine/msg.cpp
index b84982b19e..5366da4a05 100644
--- a/engines/cine/msg.cpp
+++ b/engines/cine/msg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/msg.h b/engines/cine/msg.h
index 8d6291e2df..dce70c4295 100644
--- a/engines/cine/msg.h
+++ b/engines/cine/msg.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/object.cpp b/engines/cine/object.cpp
index a75828abb1..f014843f9d 100644
--- a/engines/cine/object.cpp
+++ b/engines/cine/object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/object.h b/engines/cine/object.h
index 8331cf9f89..9c44162d28 100644
--- a/engines/cine/object.h
+++ b/engines/cine/object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/pal.cpp b/engines/cine/pal.cpp
index 10077ecdc9..f3985c691e 100644
--- a/engines/cine/pal.cpp
+++ b/engines/cine/pal.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -62,9 +62,9 @@ int16 findPaletteFromName(const char *fileName) {
uint16 position = 0;
uint16 i;
- strcpy(buffer, fileName);
+ Common::strlcpy(buffer, fileName, sizeof(buffer));
- while (position < strlen(fileName)) {
+ while (position < strlen(buffer)) {
if (buffer[position] > 'a' && buffer[position] < 'z') {
buffer[position] += 'A' - 'a';
}
diff --git a/engines/cine/pal.h b/engines/cine/pal.h
index d41154aa0b..6dc56d8c19 100644
--- a/engines/cine/pal.h
+++ b/engines/cine/pal.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/part.cpp b/engines/cine/part.cpp
index 7c0ba3af0a..30d9461a6a 100644
--- a/engines/cine/part.cpp
+++ b/engines/cine/part.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -47,7 +47,7 @@ void loadPart(const char *partName) {
g_cine->_partFileHandle.readUint16BE(); // entry size
if (currentPartName != partName)
- strcpy(currentPartName, partName);
+ Common::strlcpy(currentPartName, partName, sizeof(currentPartName));
for (uint16 i = 0; i < g_cine->_partBuffer.size(); i++) {
g_cine->_partFileHandle.read(g_cine->_partBuffer[i].partName, 14);
diff --git a/engines/cine/part.h b/engines/cine/part.h
index 3d321f17e1..9886a4ab43 100644
--- a/engines/cine/part.h
+++ b/engines/cine/part.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/prc.cpp b/engines/cine/prc.cpp
index ba9ba70110..6c78274a09 100644
--- a/engines/cine/prc.cpp
+++ b/engines/cine/prc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/prc.h b/engines/cine/prc.h
index ff0147d81e..262b129e1c 100644
--- a/engines/cine/prc.h
+++ b/engines/cine/prc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/rel.cpp b/engines/cine/rel.cpp
index 0af9a2bc1f..09b8499618 100644
--- a/engines/cine/rel.cpp
+++ b/engines/cine/rel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/rel.h b/engines/cine/rel.h
index d102791f6b..f32f6301c4 100644
--- a/engines/cine/rel.h
+++ b/engines/cine/rel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/saveload.cpp b/engines/cine/saveload.cpp
index 51d2c1f6be..c707c60695 100644
--- a/engines/cine/saveload.cpp
+++ b/engines/cine/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/saveload.h b/engines/cine/saveload.h
index fd661904af..91c9452d60 100644
--- a/engines/cine/saveload.h
+++ b/engines/cine/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/script.h b/engines/cine/script.h
index a07c8d6cfc..ec8278065f 100644
--- a/engines/cine/script.h
+++ b/engines/cine/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/script_fw.cpp b/engines/cine/script_fw.cpp
index 2abe32f797..c0b0c1f5da 100644
--- a/engines/cine/script_fw.cpp
+++ b/engines/cine/script_fw.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1419,19 +1419,19 @@ int FWScript::o1_loadNewPrcName() {
switch (param1) {
case 0:
debugC(5, kCineDebugScript, "Line: %d: loadPrc(\"%s\")", _line, param2);
- strcpy(newPrcName, param2);
+ Common::strlcpy(newPrcName, param2, sizeof(newPrcName));
break;
case 1:
debugC(5, kCineDebugScript, "Line: %d: loadRel(\"%s\")", _line, param2);
- strcpy(newRelName, param2);
+ Common::strlcpy(newRelName, param2, sizeof(newRelName));
break;
case 2:
debugC(5, kCineDebugScript, "Line: %d: loadObject(\"%s\")", _line, param2);
- strcpy(newObjectName, param2);
+ Common::strlcpy(newObjectName, param2, sizeof(newObjectName));
break;
case 3:
debugC(5, kCineDebugScript, "Line: %d: loadMsg(\"%s\")", _line, param2);
- strcpy(newMsgName, param2);
+ Common::strlcpy(newMsgName, param2, sizeof(newMsgName));
break;
}
return 0;
diff --git a/engines/cine/script_os.cpp b/engines/cine/script_os.cpp
index 84bb484369..07ed295eab 100644
--- a/engines/cine/script_os.cpp
+++ b/engines/cine/script_os.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/sound.cpp b/engines/cine/sound.cpp
index de6f91d8c3..069a4787ac 100644
--- a/engines/cine/sound.cpp
+++ b/engines/cine/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -813,7 +813,7 @@ bool PCSoundFxPlayer::load(const char *song) {
if (dot) {
*dot = '\0';
}
- strcat(instrument, _driver->getInstrumentExtension());
+ Common::strlcat(instrument, _driver->getInstrumentExtension(), sizeof(instrument));
uint32 instrumentSize;
_instrumentsData[i] = readBundleSoundFile(instrument, &instrumentSize);
if (!_instrumentsData[i]) {
diff --git a/engines/cine/sound.h b/engines/cine/sound.h
index fdb183ad34..efb3811f9a 100644
--- a/engines/cine/sound.h
+++ b/engines/cine/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/texte.cpp b/engines/cine/texte.cpp
index 998075c6ce..8d904cb1f2 100644
--- a/engines/cine/texte.cpp
+++ b/engines/cine/texte.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/texte.h b/engines/cine/texte.h
index 185dc53bfd..1e0944c312 100644
--- a/engines/cine/texte.h
+++ b/engines/cine/texte.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/unpack.cpp b/engines/cine/unpack.cpp
index f68fbbc02c..6741b07118 100644
--- a/engines/cine/unpack.cpp
+++ b/engines/cine/unpack.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/unpack.h b/engines/cine/unpack.h
index d22c4944a7..0fa58874df 100644
--- a/engines/cine/unpack.h
+++ b/engines/cine/unpack.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cine/various.cpp b/engines/cine/various.cpp
index 99d93cfc09..8687699a44 100644
--- a/engines/cine/various.cpp
+++ b/engines/cine/various.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -557,12 +557,20 @@ int16 selectSubObject(int16 x, int16 y, int16 param) {
}
}
+ if (selectedObject >= 20)
+ error("Invalid value for selectedObject: %d", selectedObject);
return objListTab[selectedObject];
}
-// TODO: Make separate functions for Future Wars's and Operation Stealth's version of this function, this is getting too messy
-// TODO: Add support for using the different prepositions for different verbs (Doesn't work currently)
void makeCommandLine() {
+ if (g_cine->getGameType() == Cine::GType_FW)
+ makeFWCommandLine();
+ else
+ makeOSCommandLine();
+}
+
+// TODO: Add support for using the different prepositions for different verbs (Doesn't work currently)
+void makeOSCommandLine() {
uint16 x, y;
commandVar1 = 0;
@@ -578,28 +586,16 @@ void makeCommandLine() {
int16 si;
getMouseData(mouseUpdateStatus, &dummyU16, &x, &y);
-
- if (g_cine->getGameType() == Cine::GType_FW) {
- si = selectSubObject(x, y + 8, -2);
- } else {
- si = selectSubObject(x, y + 8, -subObjectUseTable[playerCommand]);
- }
+ si = selectSubObject(x, y + 8, -subObjectUseTable[playerCommand]);
if (si < 0) {
- if (g_cine->getGameType() == Cine::GType_OS) {
- canUseOnObject = 0;
- } else { // Future Wars
- playerCommand = -1;
- g_cine->_commandBuffer = "";
- }
+ canUseOnObject = 0;
} else {
- if (g_cine->getGameType() == Cine::GType_OS) {
- if (si >= 8000) {
- si -= 8000;
- canUseOnObject = canUseOnItemTable[playerCommand];
- } else {
- canUseOnObject = 0;
- }
+ if (si >= 8000) {
+ si -= 8000;
+ canUseOnObject = canUseOnItemTable[playerCommand];
+ } else {
+ canUseOnObject = 0;
}
commandVar3[0] = si;
@@ -607,27 +603,21 @@ void makeCommandLine() {
g_cine->_commandBuffer += " ";
g_cine->_commandBuffer += g_cine->_objectTable[commandVar3[0]].name;
g_cine->_commandBuffer += " ";
- if (g_cine->getGameType() == Cine::GType_OS) {
- g_cine->_commandBuffer += commandPrepositionTable[playerCommand];
- } else { // Future Wars
- g_cine->_commandBuffer += defaultCommandPreposition;
- }
+ g_cine->_commandBuffer += commandPrepositionTable[playerCommand];
}
}
- if (g_cine->getGameType() == Cine::GType_OS || !(playerCommand != -1 && choiceResultTable[playerCommand] == 2)) {
- if (playerCommand == 2) {
- getMouseData(mouseUpdateStatus, &dummyU16, &x, &y);
- CursorMan.showMouse(false);
- processInventory(x, y + 8);
- playerCommand = -1;
- commandVar1 = 0;
- g_cine->_commandBuffer = "";
- CursorMan.showMouse(true);
- }
+ if (playerCommand == 2) {
+ getMouseData(mouseUpdateStatus, &dummyU16, &x, &y);
+ CursorMan.showMouse(false);
+ processInventory(x, y + 8);
+ playerCommand = -1;
+ commandVar1 = 0;
+ g_cine->_commandBuffer = "";
+ CursorMan.showMouse(true);
}
- if (g_cine->getGameType() == Cine::GType_OS && playerCommand != 2) {
+ if (playerCommand != 2) {
if (playerCommand != -1 && canUseOnObject != 0) { // call use on sub object
int16 si;
@@ -665,7 +655,55 @@ void makeCommandLine() {
}
}
- if (g_cine->getGameType() == Cine::GType_OS || !disableSystemMenu) {
+ isDrawCommandEnabled = 1;
+ renderer->setCommand(g_cine->_commandBuffer);
+}
+
+// TODO: Add support for using the different prepositions for different verbs (Doesn't work currently)
+void makeFWCommandLine() {
+ uint16 x, y;
+
+ commandVar1 = 0;
+ commandVar2 = -10;
+
+ if (playerCommand != -1) {
+ g_cine->_commandBuffer = defaultActionCommand[playerCommand];
+ } else {
+ g_cine->_commandBuffer = "";
+ }
+
+ if ((playerCommand != -1) && (choiceResultTable[playerCommand] == 2)) { // need object selection?
+ int16 si;
+
+ getMouseData(mouseUpdateStatus, &dummyU16, &x, &y);
+ si = selectSubObject(x, y + 8, -2);
+
+ if (si < 0) {
+ playerCommand = -1;
+ g_cine->_commandBuffer = "";
+ } else {
+ commandVar3[0] = si;
+ commandVar1 = 1;
+ g_cine->_commandBuffer += " ";
+ g_cine->_commandBuffer += g_cine->_objectTable[commandVar3[0]].name;
+ g_cine->_commandBuffer += " ";
+ g_cine->_commandBuffer += defaultCommandPreposition;
+ }
+ }
+
+ if (!(playerCommand != -1 && choiceResultTable[playerCommand] == 2)) {
+ if (playerCommand == 2) {
+ getMouseData(mouseUpdateStatus, &dummyU16, &x, &y);
+ CursorMan.showMouse(false);
+ processInventory(x, y + 8);
+ playerCommand = -1;
+ commandVar1 = 0;
+ g_cine->_commandBuffer = "";
+ CursorMan.showMouse(true);
+ }
+ }
+
+ if (!disableSystemMenu) {
isDrawCommandEnabled = 1;
renderer->setCommand(g_cine->_commandBuffer);
}
diff --git a/engines/cine/various.h b/engines/cine/various.h
index 813619816d..eb6312997d 100644
--- a/engines/cine/various.h
+++ b/engines/cine/various.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -37,6 +37,8 @@ void initLanguage(Common::Language lang);
int16 makeMenuChoice(const CommandeType commandList[], uint16 height, uint16 X, uint16 Y, uint16 width, bool recheckValue = false);
void makeCommandLine();
+void makeFWCommandLine();
+void makeOSCommandLine();
void makeActionMenu();
void waitPlayerInput();
void setTextWindow(uint16 param1, uint16 param2, uint16 param3, uint16 param4);
diff --git a/engines/composer/composer.cpp b/engines/composer/composer.cpp
index 10906480fe..471a29030b 100644
--- a/engines/composer/composer.cpp
+++ b/engines/composer/composer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/composer/composer.h b/engines/composer/composer.h
index f945df8bb1..47398fe36d 100644
--- a/engines/composer/composer.h
+++ b/engines/composer/composer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/composer/console.cpp b/engines/composer/console.cpp
index 8c68b3205b..d4676b0de5 100644
--- a/engines/composer/console.cpp
+++ b/engines/composer/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/composer/console.h b/engines/composer/console.h
index 0567d8bc6f..fc2583611f 100644
--- a/engines/composer/console.h
+++ b/engines/composer/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/composer/detection.cpp b/engines/composer/detection.cpp
index 8411441c60..036c1e88d8 100644
--- a/engines/composer/detection.cpp
+++ b/engines/composer/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -420,7 +420,7 @@ bool Composer::ComposerEngine::hasFeature(EngineFeature f) const {
}
#if PLUGIN_ENABLED_DYNAMIC(COMPOSER)
-REGISTER_PLUGIN_DYNAMIC(COMPOSER, PLUGIN_TYPE_ENGINE, ComposerMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(COMPOSER, PLUGIN_TYPE_ENGINE, ComposerMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(COMPOSER, PLUGIN_TYPE_ENGINE, ComposerMetaEngine);
+ REGISTER_PLUGIN_STATIC(COMPOSER, PLUGIN_TYPE_ENGINE, ComposerMetaEngine);
#endif
diff --git a/engines/composer/graphics.cpp b/engines/composer/graphics.cpp
index caf3ba3a40..87694636d8 100644
--- a/engines/composer/graphics.cpp
+++ b/engines/composer/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/composer/graphics.h b/engines/composer/graphics.h
index e9d82920ba..a8f37ddf60 100644
--- a/engines/composer/graphics.h
+++ b/engines/composer/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/composer/resource.cpp b/engines/composer/resource.cpp
index fa29cc886b..d867f734a9 100644
--- a/engines/composer/resource.cpp
+++ b/engines/composer/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/composer/resource.h b/engines/composer/resource.h
index e0052cd868..b624da1776 100644
--- a/engines/composer/resource.h
+++ b/engines/composer/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/composer/scripting.cpp b/engines/composer/scripting.cpp
index 3a201c841a..94ca2c1bc8 100644
--- a/engines/composer/scripting.cpp
+++ b/engines/composer/scripting.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/actor.cpp b/engines/cruise/actor.cpp
index 94f620ed7b..ab3b581825 100644
--- a/engines/cruise/actor.cpp
+++ b/engines/cruise/actor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/actor.h b/engines/cruise/actor.h
index b409bf7b7f..5d8cce1f99 100644
--- a/engines/cruise/actor.h
+++ b/engines/cruise/actor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/background.cpp b/engines/cruise/background.cpp
index 9da5413013..a59db8ef95 100644
--- a/engines/cruise/background.cpp
+++ b/engines/cruise/background.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/background.h b/engines/cruise/background.h
index 7a8f2d5494..ea9e7bba87 100644
--- a/engines/cruise/background.h
+++ b/engines/cruise/background.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/backgroundIncrust.cpp b/engines/cruise/backgroundIncrust.cpp
index ddda8dee45..3286cd6ebf 100644
--- a/engines/cruise/backgroundIncrust.cpp
+++ b/engines/cruise/backgroundIncrust.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/backgroundIncrust.h b/engines/cruise/backgroundIncrust.h
index 567df0a51e..f29e38edcf 100644
--- a/engines/cruise/backgroundIncrust.h
+++ b/engines/cruise/backgroundIncrust.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/cell.cpp b/engines/cruise/cell.cpp
index f0fb580ec1..b7cef41764 100644
--- a/engines/cruise/cell.cpp
+++ b/engines/cruise/cell.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/cell.h b/engines/cruise/cell.h
index 3620a0c945..7865f02fe1 100644
--- a/engines/cruise/cell.h
+++ b/engines/cruise/cell.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/cruise.cpp b/engines/cruise/cruise.cpp
index 2147419886..6dcb0b1432 100644
--- a/engines/cruise/cruise.cpp
+++ b/engines/cruise/cruise.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/cruise.h b/engines/cruise/cruise.h
index 3e49e77770..c81e5dd5ec 100644
--- a/engines/cruise/cruise.h
+++ b/engines/cruise/cruise.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/cruise_main.cpp b/engines/cruise/cruise_main.cpp
index 911041c1a4..9227eca8cb 100644
--- a/engines/cruise/cruise_main.cpp
+++ b/engines/cruise/cruise_main.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/cruise_main.h b/engines/cruise/cruise_main.h
index 9afae4336b..caaaad2068 100644
--- a/engines/cruise/cruise_main.h
+++ b/engines/cruise/cruise_main.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/ctp.cpp b/engines/cruise/ctp.cpp
index a7b6faec1c..b5151f3f7a 100644
--- a/engines/cruise/ctp.cpp
+++ b/engines/cruise/ctp.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/ctp.h b/engines/cruise/ctp.h
index 340832e6fb..93f7466c52 100644
--- a/engines/cruise/ctp.h
+++ b/engines/cruise/ctp.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/dataLoader.cpp b/engines/cruise/dataLoader.cpp
index b2a319bb85..e38343c215 100644
--- a/engines/cruise/dataLoader.cpp
+++ b/engines/cruise/dataLoader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/dataLoader.h b/engines/cruise/dataLoader.h
index 96188c7982..cf19145beb 100644
--- a/engines/cruise/dataLoader.h
+++ b/engines/cruise/dataLoader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/debugger.cpp b/engines/cruise/debugger.cpp
index a74f600ddd..4ef66ee11e 100644
--- a/engines/cruise/debugger.cpp
+++ b/engines/cruise/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/debugger.h b/engines/cruise/debugger.h
index 3cef6b371d..a79773f37e 100644
--- a/engines/cruise/debugger.h
+++ b/engines/cruise/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/decompiler.cpp b/engines/cruise/decompiler.cpp
index 74a78201bc..0c83bd6968 100644
--- a/engines/cruise/decompiler.cpp
+++ b/engines/cruise/decompiler.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/delphine-unpack.cpp b/engines/cruise/delphine-unpack.cpp
index ee7dbd3c5e..84140fb896 100644
--- a/engines/cruise/delphine-unpack.cpp
+++ b/engines/cruise/delphine-unpack.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/detection.cpp b/engines/cruise/detection.cpp
index bce3f184db..4ca88a08d6 100644
--- a/engines/cruise/detection.cpp
+++ b/engines/cruise/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -286,7 +286,7 @@ bool CruiseMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGa
#if PLUGIN_ENABLED_DYNAMIC(CRUISE)
-REGISTER_PLUGIN_DYNAMIC(CRUISE, PLUGIN_TYPE_ENGINE, CruiseMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(CRUISE, PLUGIN_TYPE_ENGINE, CruiseMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(CRUISE, PLUGIN_TYPE_ENGINE, CruiseMetaEngine);
+ REGISTER_PLUGIN_STATIC(CRUISE, PLUGIN_TYPE_ENGINE, CruiseMetaEngine);
#endif
diff --git a/engines/cruise/font.cpp b/engines/cruise/font.cpp
index 2fd86a11b7..80fb0e8a02 100644
--- a/engines/cruise/font.cpp
+++ b/engines/cruise/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -148,8 +148,6 @@ void initSystem() {
preloadData[i].nofree = 0;
}
- lowMemory = 0;
-
doFade = 0;
fadeFlag = 0;
scroll = 0;
diff --git a/engines/cruise/font.h b/engines/cruise/font.h
index 679faf194d..12745c5b59 100644
--- a/engines/cruise/font.h
+++ b/engines/cruise/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/function.cpp b/engines/cruise/function.cpp
index 610465e962..7af6b73238 100644
--- a/engines/cruise/function.cpp
+++ b/engines/cruise/function.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -606,7 +606,7 @@ int16 Op_InitializeState() {
}
int16 Op_GetlowMemory() {
- return lowMemory;
+ return 0;
}
int16 Op_AniDir() {
diff --git a/engines/cruise/function.h b/engines/cruise/function.h
index 4fba8d3c63..39e7e22506 100644
--- a/engines/cruise/function.h
+++ b/engines/cruise/function.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/gfxModule.cpp b/engines/cruise/gfxModule.cpp
index aa2dbc5370..39385459d9 100644
--- a/engines/cruise/gfxModule.cpp
+++ b/engines/cruise/gfxModule.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/gfxModule.h b/engines/cruise/gfxModule.h
index ce58c65d34..a394ccfe97 100644
--- a/engines/cruise/gfxModule.h
+++ b/engines/cruise/gfxModule.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/linker.cpp b/engines/cruise/linker.cpp
index e8ef415fe7..817345d06e 100644
--- a/engines/cruise/linker.cpp
+++ b/engines/cruise/linker.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/linker.h b/engines/cruise/linker.h
index 25f4a5cc2a..85f65348f4 100644
--- a/engines/cruise/linker.h
+++ b/engines/cruise/linker.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/mainDraw.cpp b/engines/cruise/mainDraw.cpp
index 24f65500db..0863a2a84e 100644
--- a/engines/cruise/mainDraw.cpp
+++ b/engines/cruise/mainDraw.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/mainDraw.h b/engines/cruise/mainDraw.h
index bb21f515af..bb71b9759b 100644
--- a/engines/cruise/mainDraw.h
+++ b/engines/cruise/mainDraw.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/menu.cpp b/engines/cruise/menu.cpp
index 512259f7d7..8f162ee1ad 100644
--- a/engines/cruise/menu.cpp
+++ b/engines/cruise/menu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/menu.h b/engines/cruise/menu.h
index d605903cdc..c6f607506e 100644
--- a/engines/cruise/menu.h
+++ b/engines/cruise/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/mouse.cpp b/engines/cruise/mouse.cpp
index 6248bd01d3..9e01044bb0 100644
--- a/engines/cruise/mouse.cpp
+++ b/engines/cruise/mouse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/mouse.h b/engines/cruise/mouse.h
index a5f5c19073..4407718168 100644
--- a/engines/cruise/mouse.h
+++ b/engines/cruise/mouse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/object.cpp b/engines/cruise/object.cpp
index b4a3489c1d..3e61ff4d7d 100644
--- a/engines/cruise/object.cpp
+++ b/engines/cruise/object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/object.h b/engines/cruise/object.h
index cbe5872a9d..954bed0687 100644
--- a/engines/cruise/object.h
+++ b/engines/cruise/object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/overlay.cpp b/engines/cruise/overlay.cpp
index d618ab5599..61df716742 100644
--- a/engines/cruise/overlay.cpp
+++ b/engines/cruise/overlay.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/overlay.h b/engines/cruise/overlay.h
index 3b69f2acef..cfba75dd7a 100644
--- a/engines/cruise/overlay.h
+++ b/engines/cruise/overlay.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/perso.cpp b/engines/cruise/perso.cpp
index 85c9b1614f..3a599bca22 100644
--- a/engines/cruise/perso.cpp
+++ b/engines/cruise/perso.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/perso.h b/engines/cruise/perso.h
index e0ca479dff..6d8120793e 100644
--- a/engines/cruise/perso.h
+++ b/engines/cruise/perso.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/polys.cpp b/engines/cruise/polys.cpp
index 964540f802..bec03a06a6 100644
--- a/engines/cruise/polys.cpp
+++ b/engines/cruise/polys.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/polys.h b/engines/cruise/polys.h
index 8505f791a6..6add9c6ded 100644
--- a/engines/cruise/polys.h
+++ b/engines/cruise/polys.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/saveload.cpp b/engines/cruise/saveload.cpp
index 26bea0441c..a734db4b3b 100644
--- a/engines/cruise/saveload.cpp
+++ b/engines/cruise/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -182,11 +182,13 @@ static void syncFilesDatabase(Common::Serializer &s) {
s.syncAsUint16LE(fe.resType);
s.syncAsUint16LE(fe.height);
- // TODO: Have a look at the saving/loading of this pointer
+ // Remember whether this file database was open or not.
+ // Upon loading, loadSavegameData uses this information
+ // in order to re-open the file databases accordingly.
tmp = (fe.subData.ptr) ? 1 : 0;
s.syncAsUint32LE(tmp);
if (s.isLoading()) {
- fe.subData.ptr = (uint8 *)tmp;
+ fe.subData.ptr = tmp ? (uint8 *)1 : 0;
}
s.syncAsSint16LE(fe.subData.index);
@@ -195,11 +197,11 @@ static void syncFilesDatabase(Common::Serializer &s) {
s.syncAsSint16LE(fe.subData.transparency);
- // TODO: Have a look at the saving/loading of this pointer
+ // Treat fe.subData.ptrMask the same as fe.subData.ptr.
tmp = (fe.subData.ptrMask) ? 1 : 0;
s.syncAsUint32LE(tmp);
if (s.isLoading()) {
- fe.subData.ptrMask = (uint8 *)tmp;
+ fe.subData.ptrMask = tmp ? (uint8 *)1 : 0;
}
s.syncAsUint16LE(fe.subData.resourceType);
@@ -806,7 +808,6 @@ Common::Error saveSavegameData(int saveGameIdx, const Common::String &saveName)
}
Common::Error loadSavegameData(int saveGameIdx) {
- int lowMemorySave;
Common::String saveName;
cellStruct *currentcellHead;
@@ -878,20 +879,19 @@ Common::Error loadSavegameData(int saveGameIdx) {
lastAni[0] = 0;
- lowMemorySave = lowMemory;
-
for (int i = 0; i < NUM_FILE_ENTRIES; i++) {
if (filesDatabase[i].subData.ptr) {
int j;
int k;
- for (j = i + 1; j < NUM_FILE_ENTRIES && filesDatabase[j].subData.ptr && !strcmp(filesDatabase[i].subData.name, filesDatabase[j].subData.name) && (filesDatabase[j].subData.index == (j - i)); j++)
+ for (j = i + 1; j < NUM_FILE_ENTRIES &&
+ filesDatabase[j].subData.ptr &&
+ !strcmp(filesDatabase[i].subData.name, filesDatabase[j].subData.name) &&
+ (filesDatabase[j].subData.index == (j - i));
+ j++)
;
for (k = i; k < j; k++) {
- if (filesDatabase[k].subData.ptrMask)
- lowMemory = 0;
-
filesDatabase[k].subData.ptr = NULL;
filesDatabase[k].subData.ptrMask = NULL;
}
@@ -908,7 +908,6 @@ Common::Error loadSavegameData(int saveGameIdx) {
}
i = j - 1;
- lowMemory = lowMemorySave;
}
}
diff --git a/engines/cruise/saveload.h b/engines/cruise/saveload.h
index 695913f46f..6fb1f4b545 100644
--- a/engines/cruise/saveload.h
+++ b/engines/cruise/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/script.cpp b/engines/cruise/script.cpp
index d753d938bd..65da84b9ce 100644
--- a/engines/cruise/script.cpp
+++ b/engines/cruise/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/script.h b/engines/cruise/script.h
index cba4f580f8..15f29e8921 100644
--- a/engines/cruise/script.h
+++ b/engines/cruise/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/sound.cpp b/engines/cruise/sound.cpp
index 21d9a75297..86146e3189 100644
--- a/engines/cruise/sound.cpp
+++ b/engines/cruise/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/sound.h b/engines/cruise/sound.h
index c1975dc579..57035e2b11 100644
--- a/engines/cruise/sound.h
+++ b/engines/cruise/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/stack.cpp b/engines/cruise/stack.cpp
index 985fe8d7fd..e4ecf72133 100644
--- a/engines/cruise/stack.cpp
+++ b/engines/cruise/stack.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/stack.h b/engines/cruise/stack.h
index fe2d594c9e..1c96f430d9 100644
--- a/engines/cruise/stack.h
+++ b/engines/cruise/stack.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/staticres.cpp b/engines/cruise/staticres.cpp
index 08ff4d7548..e9ba941ae0 100644
--- a/engines/cruise/staticres.cpp
+++ b/engines/cruise/staticres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/staticres.h b/engines/cruise/staticres.h
index acf0b640be..3691260078 100644
--- a/engines/cruise/staticres.h
+++ b/engines/cruise/staticres.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/various.cpp b/engines/cruise/various.cpp
index 90b072b478..a7d701f9a1 100644
--- a/engines/cruise/various.cpp
+++ b/engines/cruise/various.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/various.h b/engines/cruise/various.h
index b59593961d..c2ff1e22bb 100644
--- a/engines/cruise/various.h
+++ b/engines/cruise/various.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/vars.cpp b/engines/cruise/vars.cpp
index f381358356..9a59c8a714 100644
--- a/engines/cruise/vars.cpp
+++ b/engines/cruise/vars.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,7 +31,6 @@ uint8 selectColor = 3;
uint8 titleColor = 2;
uint8 subColor = 5;
-int16 lowMemory;
int16 scroll;
int16 switchPal;
char cmdLine[90];
diff --git a/engines/cruise/vars.h b/engines/cruise/vars.h
index ccbf149610..fe3f7d6303 100644
--- a/engines/cruise/vars.h
+++ b/engines/cruise/vars.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -59,7 +59,6 @@ extern uint8 selectColor;
extern uint8 titleColor;
extern uint8 subColor;
-extern int16 lowMemory;
extern int16 scroll;
extern int16 switchPal;
extern char cmdLine[90];
diff --git a/engines/cruise/volume.cpp b/engines/cruise/volume.cpp
index 9fb6842882..5b125a5142 100644
--- a/engines/cruise/volume.cpp
+++ b/engines/cruise/volume.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/cruise/volume.h b/engines/cruise/volume.h
index 80e1f10db2..0caa894744 100644
--- a/engines/cruise/volume.h
+++ b/engines/cruise/volume.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dialogs.cpp b/engines/dialogs.cpp
index 1713b99dd1..8498e50b8d 100644
--- a/engines/dialogs.cpp
+++ b/engines/dialogs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "base/version.h"
diff --git a/engines/dialogs.h b/engines/dialogs.h
index 32174031cc..a38cf2f61e 100644
--- a/engines/dialogs.h
+++ b/engines/dialogs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GLOBAL_DIALOGS_H
diff --git a/engines/draci/animation.cpp b/engines/draci/animation.cpp
index 6e6f167fba..2528383f4f 100644
--- a/engines/draci/animation.cpp
+++ b/engines/draci/animation.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/animation.h b/engines/draci/animation.h
index 8b2a3d98b8..c555e383ee 100644
--- a/engines/draci/animation.h
+++ b/engines/draci/animation.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/barchive.cpp b/engines/draci/barchive.cpp
index 584367fdfb..0cd1097981 100644
--- a/engines/draci/barchive.cpp
+++ b/engines/draci/barchive.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/barchive.h b/engines/draci/barchive.h
index 52ce79ad2d..cb0619612a 100644
--- a/engines/draci/barchive.h
+++ b/engines/draci/barchive.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/console.cpp b/engines/draci/console.cpp
index 07f0ff5542..dc87b06cf4 100644
--- a/engines/draci/console.cpp
+++ b/engines/draci/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/console.h b/engines/draci/console.h
index 714871ffd3..a1a584bdb3 100644
--- a/engines/draci/console.h
+++ b/engines/draci/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/detection.cpp b/engines/draci/detection.cpp
index 98a74824c8..c7cfe227df 100644
--- a/engines/draci/detection.cpp
+++ b/engines/draci/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/draci.cpp b/engines/draci/draci.cpp
index 06730cfba7..b40d61a04f 100644
--- a/engines/draci/draci.cpp
+++ b/engines/draci/draci.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/draci.h b/engines/draci/draci.h
index 55ebff083e..540c288d3d 100644
--- a/engines/draci/draci.h
+++ b/engines/draci/draci.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/font.cpp b/engines/draci/font.cpp
index b4e799deb7..c688f4292d 100644
--- a/engines/draci/font.cpp
+++ b/engines/draci/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/font.h b/engines/draci/font.h
index 3d150f733e..2c640837de 100644
--- a/engines/draci/font.h
+++ b/engines/draci/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/game.cpp b/engines/draci/game.cpp
index 009f1bb3d2..3a335f249a 100644
--- a/engines/draci/game.cpp
+++ b/engines/draci/game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -72,6 +72,7 @@ Game::Game(DraciEngine *vm) : _vm(vm), _walkingState(vm) {
_fadePhases = 0;
_fadePhase = 0;
_fadeTick = 0;
+ _isFadeOut = 1;
_mouseChangeTick = 0;
_enableQuickHero = 0;
_wantQuickHero = 0;
@@ -216,6 +217,7 @@ void Game::start() {
// init scripts. This flag was turned on to skip the rest of
// those programs. Don't call loop(), because the
// location may have changed.
+ fadePalette(true);
continue;
}
@@ -478,6 +480,7 @@ void Game::handleDialogueLoop() {
}
void Game::fadePalette(bool fading_out) {
+ _isFadeOut = fading_out;
const byte *startPal = NULL;
const byte *endPal = _currentRoom._palette >= 0
? _vm->_paletteArchive->getFile(_currentRoom._palette)->_data
@@ -551,6 +554,19 @@ void Game::advanceAnimationsAndTestLoopExit() {
_vm->_anims->drawScene(_vm->_screen->getSurface());
_vm->_screen->copyToScreen();
_vm->_system->delayMillis(kTimeUnit);
+ if(_isFadeOut) {
+ fadePalette(false);
+ // Set cursor state
+ // Need to do this after we set the palette since the cursors use it
+ if (_currentRoom._mouseOn) {
+ debugC(6, kDraciLogicDebugLevel, "Mouse: ON");
+ _vm->_mouse->cursorOn();
+ _vm->_mouse->setCursorType(kNormalCursor);
+ } else {
+ debugC(6, kDraciLogicDebugLevel, "Mouse: OFF");
+ _vm->_mouse->cursorOff();
+ }
+ }
// If the hero has arrived at his destination, after even the last
// phase was correctly animated, run the callback.
@@ -598,6 +614,8 @@ void Game::loop(LoopSubstatus substatus, bool shouldExit) {
break;
}
+ advanceAnimationsAndTestLoopExit();
+
if (_vm->_mouse->isCursorOn()) {
// Find animation under cursor and the game object
// corresponding to it
@@ -629,8 +647,6 @@ void Game::loop(LoopSubstatus substatus, bool shouldExit) {
}
}
- advanceAnimationsAndTestLoopExit();
-
} while (!shouldExitLoop());
setLoopSubstatus(kOuterLoop);
@@ -926,10 +942,12 @@ void Game::inventoryDraw() {
void Game::inventoryReload() {
// Make sure all items are loaded into memory (e.g., after loading a
// savegame) by re-putting them on the same spot in the inventory.
+ GameItem *tempItem = _currentItem;
for (uint i = 0; i < kInventorySlots; ++i) {
putItem(_inventory[i], i);
}
setPreviousItemPosition(0);
+ _currentItem = tempItem;
}
void Game::inventorySwitch(int keycode) {
@@ -1433,7 +1451,6 @@ void Game::enterNewRoom() {
_vm->_screen->setPalette(NULL, 0, kNumColors);
_vm->_anims->drawScene(_vm->_screen->getSurface());
_vm->_screen->copyToScreen();
- fadePalette(false);
// Run the program for the gate the dragon came through
debugC(6, kDraciLogicDebugLevel, "Running program for gate %d", _newGate);
@@ -1446,17 +1463,6 @@ void Game::enterNewRoom() {
// Don't immediately switch to the map or inventory even if the mouse
// position tell us to.
_mouseChangeTick = kMouseDoNotSwitch;
-
- // Set cursor state
- // Need to do this after we set the palette since the cursors use it
- if (_currentRoom._mouseOn) {
- debugC(6, kDraciLogicDebugLevel, "Mouse: ON");
- _vm->_mouse->cursorOn();
- _vm->_mouse->setCursorType(kNormalCursor);
- } else {
- debugC(6, kDraciLogicDebugLevel, "Mouse: OFF");
- _vm->_mouse->cursorOff();
- }
}
void Game::positionAnimAsHero(Animation *anim) {
@@ -1572,7 +1578,7 @@ Game::~Game() {
delete[] _items;
}
-void Game::DoSync(Common::Serializer &s) {
+void Game::DoSync(Common::Serializer &s, uint8 saveVersion) {
s.syncAsUint16LE(_currentRoom._roomNum);
for (uint i = 0; i < _info._numObjects; ++i) {
@@ -1603,6 +1609,25 @@ void Game::DoSync(Common::Serializer &s) {
s.syncAsSint16LE(_dialogueVars[i]);
}
+ if(saveVersion >= 2) {
+ setPositionLoaded(true);
+ if (s.isSaving()) {
+ s.syncAsSint16LE(_hero.x);
+ s.syncAsSint16LE(_hero.y);
+
+ int handItemID = _currentItem ? _currentItem->_absNum : -1;
+ s.syncAsSint16LE(handItemID);
+ } else {
+ s.syncAsSint16LE(_heroLoading.x);
+ s.syncAsSint16LE(_heroLoading.y);
+
+ int handItemID = -1;
+ s.syncAsSint16LE(handItemID);
+ _currentItem = getItem(handItemID);
+ }
+ } else {
+ _currentItem = 0;
+ }
}
static double real_to_double(byte real[6]) {
diff --git a/engines/draci/game.h b/engines/draci/game.h
index 47821fcf86..638c979d61 100644
--- a/engines/draci/game.h
+++ b/engines/draci/game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -215,6 +215,7 @@ public:
void walkHero(int x, int y, SightDirection dir); // start walking and leave callback as is
void setHeroPosition(const Common::Point &p);
const Common::Point &getHeroPosition() const { return _hero; }
+ const Common::Point &getHeroLoadingPosition() const { return _heroLoading; }
void positionAnimAsHero(Animation *anim);
void positionHeroAsAnim(Animation *anim);
@@ -290,6 +291,8 @@ public:
void setExitLoop(bool exit) { _shouldExitLoop = exit; }
bool isReloaded() const { return _isReloaded; }
void setIsReloaded(bool value) { _isReloaded = value; }
+ bool isPositionLoaded() { return _isPositionLoaded; }
+ void setPositionLoaded(bool value) { _isPositionLoaded = value; }
void setSpeechTiming(uint tick, uint duration);
void shiftSpeechAndFadeTick(int delta);
@@ -327,7 +330,7 @@ public:
void setEnableSpeedText(bool value) { _enableSpeedText = value; }
bool getEnableSpeedText() const { return _enableSpeedText; }
- void DoSync(Common::Serializer &s);
+ void DoSync(Common::Serializer &s, uint8 saveVersion);
private:
void updateOrdinaryCursor();
@@ -352,6 +355,7 @@ private:
GameInfo _info;
Common::Point _hero;
+ Common::Point _heroLoading;
int *_variables;
Person *_persons;
@@ -395,6 +399,7 @@ private:
bool _shouldQuit;
bool _shouldExitLoop;
bool _isReloaded;
+ bool _isPositionLoaded;
uint _speechTick;
uint _speechDuration;
@@ -408,6 +413,7 @@ private:
int _fadePhases;
int _fadePhase;
uint _fadeTick;
+ bool _isFadeOut;
int _mouseChangeTick;
bool _enableQuickHero;
diff --git a/engines/draci/module.mk b/engines/draci/module.mk
index e6c9511687..9bac1d9ddc 100644
--- a/engines/draci/module.mk
+++ b/engines/draci/module.mk
@@ -1,5 +1,5 @@
MODULE := engines/draci
-
+
MODULE_OBJS := \
animation.o \
barchive.o \
@@ -17,11 +17,11 @@ MODULE_OBJS := \
sprite.o \
surface.o \
walking.o
-
+
# This module can be built as a plugin
ifeq ($(ENABLE_DRACI), DYNAMIC_PLUGIN)
PLUGIN := 1
endif
-
-# Include common rules
+
+# Include common rules
include $(srcdir)/rules.mk
diff --git a/engines/draci/mouse.cpp b/engines/draci/mouse.cpp
index 90c04ed4c3..6bbdee787f 100644
--- a/engines/draci/mouse.cpp
+++ b/engines/draci/mouse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/mouse.h b/engines/draci/mouse.h
index b934475ade..8806bd942d 100644
--- a/engines/draci/mouse.h
+++ b/engines/draci/mouse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/music.cpp b/engines/draci/music.cpp
index 3179c79ca4..cda2007a8e 100644
--- a/engines/draci/music.cpp
+++ b/engines/draci/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/music.h b/engines/draci/music.h
index 62288a01dc..a3010c93ce 100644
--- a/engines/draci/music.h
+++ b/engines/draci/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/saveload.cpp b/engines/draci/saveload.cpp
index e3551c78b3..3e7f8651c1 100644
--- a/engines/draci/saveload.cpp
+++ b/engines/draci/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -45,7 +45,8 @@ bool readSavegameHeader(Common::InSaveFile *in, DraciSavegameHeader &header) {
return false;
header.version = in->readByte();
- if (header.version != DRACI_SAVEGAME_VERSION)
+ // Version 1 is compatible with Version 2
+ if (header.version > DRACI_SAVEGAME_VERSION)
return false;
// Read in the string
@@ -106,7 +107,7 @@ Common::Error saveSavegameData(int saveGameIdx, const Common::String &saveName,
} else {
// Create the remainder of the savegame
Common::Serializer s(NULL, f);
- vm._game->DoSync(s);
+ vm._game->DoSync(s, header.version);
f->finalize();
delete f;
@@ -140,7 +141,7 @@ Common::Error loadSavegameData(int saveGameIdx, DraciEngine *vm) {
// Synchronise the remaining data of the savegame
Common::Serializer s(f, NULL);
- vm->_game->DoSync(s);
+ vm->_game->DoSync(s, header.version);
delete f;
// Post-processing
diff --git a/engines/draci/saveload.h b/engines/draci/saveload.h
index 3cc13701db..6f951a3409 100644
--- a/engines/draci/saveload.h
+++ b/engines/draci/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -29,7 +29,7 @@
namespace Draci {
-#define DRACI_SAVEGAME_VERSION 1
+#define DRACI_SAVEGAME_VERSION 2
struct DraciSavegameHeader {
uint8 version;
diff --git a/engines/draci/screen.cpp b/engines/draci/screen.cpp
index e43e367300..2434a1312e 100644
--- a/engines/draci/screen.cpp
+++ b/engines/draci/screen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/screen.h b/engines/draci/screen.h
index 5a8297feba..55d2a9c171 100644
--- a/engines/draci/screen.h
+++ b/engines/draci/screen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/script.cpp b/engines/draci/script.cpp
index 504476869e..09c74f5e0d 100644
--- a/engines/draci/script.cpp
+++ b/engines/draci/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -634,8 +634,16 @@ void Script::stayOn(const Common::Array<int> &params) {
return;
}
- int x = params[0];
- int y = params[1];
+ int x, y;
+ Common::Point afterLoadingPos = _vm->_game->getHeroLoadingPosition();
+ if(_vm->_game->isPositionLoaded() == true) {
+ x = afterLoadingPos.x;
+ y = afterLoadingPos.y;
+ }
+ else {
+ x = params[0];
+ y = params[1];
+ }
SightDirection dir = static_cast<SightDirection> (params[2]);
// Jumps into the given position regardless of the walking map.
@@ -670,6 +678,11 @@ void Script::walkOnPlay(const Common::Array<int> &params) {
return;
}
+ if(_vm->_game->isPositionLoaded() == true) {
+ _vm->_game->setPositionLoaded(false);
+ return;
+ }
+
int x = params[0];
int y = params[1];
SightDirection dir = static_cast<SightDirection> (params[2]);
@@ -687,6 +700,10 @@ void Script::newRoom(const Common::Array<int> &params) {
return;
}
+ if(_vm->_game->isPositionLoaded() == true) {
+ _vm->_game->setPositionLoaded(false);
+ }
+
int room = params[0] - 1;
int gate = params[1] - 1;
diff --git a/engines/draci/script.h b/engines/draci/script.h
index 72d6f6c344..aa36a30408 100644
--- a/engines/draci/script.h
+++ b/engines/draci/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/sound.cpp b/engines/draci/sound.cpp
index d534f46a6e..cbc9eb983d 100644
--- a/engines/draci/sound.cpp
+++ b/engines/draci/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/sound.h b/engines/draci/sound.h
index 358c228604..d8d19e62e2 100644
--- a/engines/draci/sound.h
+++ b/engines/draci/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/sprite.cpp b/engines/draci/sprite.cpp
index 9a78904d25..8b5e5a918a 100644
--- a/engines/draci/sprite.cpp
+++ b/engines/draci/sprite.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/sprite.h b/engines/draci/sprite.h
index c86728914e..5831f7772e 100644
--- a/engines/draci/sprite.h
+++ b/engines/draci/sprite.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/surface.cpp b/engines/draci/surface.cpp
index 4156398070..4b438880ad 100644
--- a/engines/draci/surface.cpp
+++ b/engines/draci/surface.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/surface.h b/engines/draci/surface.h
index 71a3722a2a..fa2d931a43 100644
--- a/engines/draci/surface.h
+++ b/engines/draci/surface.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/walking.cpp b/engines/draci/walking.cpp
index 195b968860..1467ecee35 100644
--- a/engines/draci/walking.cpp
+++ b/engines/draci/walking.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/draci/walking.h b/engines/draci/walking.h
index 7e4a3184f5..ee2b48d083 100644
--- a/engines/draci/walking.h
+++ b/engines/draci/walking.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -111,7 +111,7 @@ public:
_turningFinished = 0;
_callbackOffset = 0;
- stopWalking();
+ stopWalking();
}
~WalkingState() {}
diff --git a/engines/drascula/actors.cpp b/engines/drascula/actors.cpp
index e0983809fa..51148bbc05 100644
--- a/engines/drascula/actors.cpp
+++ b/engines/drascula/actors.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/animation.cpp b/engines/drascula/animation.cpp
index ee981c36da..b158969f46 100644
--- a/engines/drascula/animation.cpp
+++ b/engines/drascula/animation.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/console.cpp b/engines/drascula/console.cpp
index c0d2748ec3..50e96c8757 100644
--- a/engines/drascula/console.cpp
+++ b/engines/drascula/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/console.h b/engines/drascula/console.h
index 894c85ff42..01a5e8cba7 100644
--- a/engines/drascula/console.h
+++ b/engines/drascula/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/converse.cpp b/engines/drascula/converse.cpp
index b3749445ec..48317289d5 100644
--- a/engines/drascula/converse.cpp
+++ b/engines/drascula/converse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/detection.cpp b/engines/drascula/detection.cpp
index 1917bc879d..833363669d 100644
--- a/engines/drascula/detection.cpp
+++ b/engines/drascula/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/drascula.cpp b/engines/drascula/drascula.cpp
index 14cb4be5a0..35461f1d71 100644
--- a/engines/drascula/drascula.cpp
+++ b/engines/drascula/drascula.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/drascula.h b/engines/drascula/drascula.h
index 53fce9c212..762add50a5 100644
--- a/engines/drascula/drascula.h
+++ b/engines/drascula/drascula.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/graphics.cpp b/engines/drascula/graphics.cpp
index fe954279c3..077047a6eb 100644
--- a/engines/drascula/graphics.cpp
+++ b/engines/drascula/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/interface.cpp b/engines/drascula/interface.cpp
index f0b6d12027..07f192cd4c 100644
--- a/engines/drascula/interface.cpp
+++ b/engines/drascula/interface.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/objects.cpp b/engines/drascula/objects.cpp
index 519e919433..cd7d502194 100644
--- a/engines/drascula/objects.cpp
+++ b/engines/drascula/objects.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/palette.cpp b/engines/drascula/palette.cpp
index 500333badf..1bd9a03c14 100644
--- a/engines/drascula/palette.cpp
+++ b/engines/drascula/palette.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/resource.cpp b/engines/drascula/resource.cpp
index 95a95e3487..5e0e2fe9cc 100644
--- a/engines/drascula/resource.cpp
+++ b/engines/drascula/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/rooms.cpp b/engines/drascula/rooms.cpp
index 25f3da0080..8691bd2cb4 100644
--- a/engines/drascula/rooms.cpp
+++ b/engines/drascula/rooms.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/saveload.cpp b/engines/drascula/saveload.cpp
index 61d6f0b4af..d0f16aa941 100644
--- a/engines/drascula/saveload.cpp
+++ b/engines/drascula/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/sound.cpp b/engines/drascula/sound.cpp
index 59b5e1d237..148dae76f5 100644
--- a/engines/drascula/sound.cpp
+++ b/engines/drascula/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/drascula/talk.cpp b/engines/drascula/talk.cpp
index 6aabd91c6a..ed29dc5fe4 100644
--- a/engines/drascula/talk.cpp
+++ b/engines/drascula/talk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/backdrop.cpp b/engines/dreamweb/backdrop.cpp
index 5ccc68704a..783c5e349a 100644
--- a/engines/dreamweb/backdrop.cpp
+++ b/engines/dreamweb/backdrop.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/console.cpp b/engines/dreamweb/console.cpp
index 532bf815ef..62c02b8617 100644
--- a/engines/dreamweb/console.cpp
+++ b/engines/dreamweb/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/console.h b/engines/dreamweb/console.h
index a90794e94e..5517d7ffa8 100644
--- a/engines/dreamweb/console.h
+++ b/engines/dreamweb/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/detection.cpp b/engines/dreamweb/detection.cpp
index f2e2f42216..01cfc7e506 100644
--- a/engines/dreamweb/detection.cpp
+++ b/engines/dreamweb/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/detection_tables.h b/engines/dreamweb/detection_tables.h
index ec54484d28..cb9bebb304 100644
--- a/engines/dreamweb/detection_tables.h
+++ b/engines/dreamweb/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp
index 7323dfc4a8..94a2e60ef1 100644
--- a/engines/dreamweb/dreamweb.cpp
+++ b/engines/dreamweb/dreamweb.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -199,7 +199,7 @@ DreamWebEngine::DreamWebEngine(OSystem *syst, const DreamWebGameDescription *gam
_saveLoadPage = 0;
_currentSlot = 0;
_cursorPos = 0;
- _colourPos = 0;
+ _colorPos = 0;
_fadeDirection = 0;
_numToFade = 0;
_fadeCount = 0;
diff --git a/engines/dreamweb/dreamweb.h b/engines/dreamweb/dreamweb.h
index 87a9f5423f..e39f8c0d51 100644
--- a/engines/dreamweb/dreamweb.h
+++ b/engines/dreamweb/dreamweb.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -415,7 +415,7 @@ public:
uint8 _saveLoadPage;
uint8 _currentSlot;
uint8 _cursorPos;
- uint8 _colourPos;
+ uint8 _colorPos;
uint8 _fadeDirection;
uint8 _numToFade;
uint8 _fadeCount;
@@ -515,8 +515,8 @@ public:
int findCommand(const char *const cmdList[]);
// from newplace.cpp
- void getUnderCentre();
- void putUnderCentre();
+ void getUnderCenter();
+ void putUnderCenter();
void showArrows();
uint8 getLocation(uint8 index);
void setLocation(uint8 index);
@@ -996,7 +996,7 @@ public:
void useDryer();
void callEdensDLift();
void callEdensLift();
- void openYourNeighbour();
+ void openYourNeighbor();
void openRyan();
void openPoolBoss();
void openEden();
diff --git a/engines/dreamweb/keypad.cpp b/engines/dreamweb/keypad.cpp
index 7bbca2b979..50e452eb82 100644
--- a/engines/dreamweb/keypad.cpp
+++ b/engines/dreamweb/keypad.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/monitor.cpp b/engines/dreamweb/monitor.cpp
index 108f9d2b60..5f0566c8ba 100644
--- a/engines/dreamweb/monitor.cpp
+++ b/engines/dreamweb/monitor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/mouse.cpp b/engines/dreamweb/mouse.cpp
index 77d907611d..fe5c580738 100644
--- a/engines/dreamweb/mouse.cpp
+++ b/engines/dreamweb/mouse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/newplace.cpp b/engines/dreamweb/newplace.cpp
index 6b1f9d097b..3834a114e5 100644
--- a/engines/dreamweb/newplace.cpp
+++ b/engines/dreamweb/newplace.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -113,7 +113,7 @@ void DreamWebEngine::lookAtPlace() {
delPointer();
delTextLine();
- getUnderCentre();
+ getUnderCenter();
showFrame(_newplaceGraphics3, 60, 72, 0, 0);
showFrame(_newplaceGraphics3, 60, 72 + 55, 4, 0);
if (_foreignRelease)
@@ -127,15 +127,15 @@ void DreamWebEngine::lookAtPlace() {
hangOnP(500);
_pointerMode = 0;
_pointerFrame = 0;
- putUnderCentre();
+ putUnderCenter();
workToScreenM();
}
-void DreamWebEngine::getUnderCentre() {
+void DreamWebEngine::getUnderCenter() {
multiGet(_mapStore, 58, 72, 254, 110);
}
-void DreamWebEngine::putUnderCentre() {
+void DreamWebEngine::putUnderCenter() {
multiPut(_mapStore, 58, 72, 254, 110);
}
diff --git a/engines/dreamweb/object.cpp b/engines/dreamweb/object.cpp
index bee3a6d511..181987d721 100644
--- a/engines/dreamweb/object.cpp
+++ b/engines/dreamweb/object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/pathfind.cpp b/engines/dreamweb/pathfind.cpp
index 64cffde4de..8351a3798a 100644
--- a/engines/dreamweb/pathfind.cpp
+++ b/engines/dreamweb/pathfind.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/people.cpp b/engines/dreamweb/people.cpp
index 53f04d482b..6e47513a21 100644
--- a/engines/dreamweb/people.cpp
+++ b/engines/dreamweb/people.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/print.cpp b/engines/dreamweb/print.cpp
index bec58322d5..c119f284cc 100644
--- a/engines/dreamweb/print.cpp
+++ b/engines/dreamweb/print.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/rain.cpp b/engines/dreamweb/rain.cpp
index b636b7def7..4f68811a3e 100644
--- a/engines/dreamweb/rain.cpp
+++ b/engines/dreamweb/rain.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/saveload.cpp b/engines/dreamweb/saveload.cpp
index 8a0791d19b..ce89dae732 100644
--- a/engines/dreamweb/saveload.cpp
+++ b/engines/dreamweb/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/sound.cpp b/engines/dreamweb/sound.cpp
index 570f76f2f9..d3b417de90 100644
--- a/engines/dreamweb/sound.cpp
+++ b/engines/dreamweb/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/sound.h b/engines/dreamweb/sound.h
index 1ab06dc694..6553a81b62 100644
--- a/engines/dreamweb/sound.h
+++ b/engines/dreamweb/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/sprite.cpp b/engines/dreamweb/sprite.cpp
index 1fa2e7d6a4..633db73bcd 100644
--- a/engines/dreamweb/sprite.cpp
+++ b/engines/dreamweb/sprite.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/structs.h b/engines/dreamweb/structs.h
index 24b67e317a..cc300e8931 100644
--- a/engines/dreamweb/structs.h
+++ b/engines/dreamweb/structs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index 057a0c847a..68b223392c 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -2566,14 +2566,14 @@ void DreamWebEngine::showGun() {
greyscaleSum();
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 128;
hangOn(130);
endPalToStart();
clearEndPal();
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 128;
hangOn(200);
_roomsSample = 34;
@@ -2749,7 +2749,7 @@ void DreamWebEngine::entryAnims() {
// Make doors open
removeSetObject(4);
placeSetObject(5);
- } else if (_vars._location == 47) { // Dream centre
+ } else if (_vars._location == 47) { // Dream center
placeSetObject(4);
placeSetObject(5);
} else if (_vars._location == 38) { // Car park
diff --git a/engines/dreamweb/talk.cpp b/engines/dreamweb/talk.cpp
index 2629c23355..8bb469b8fd 100644
--- a/engines/dreamweb/talk.cpp
+++ b/engines/dreamweb/talk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/titles.cpp b/engines/dreamweb/titles.cpp
index 4e4faa75a0..bd0957c1bd 100644
--- a/engines/dreamweb/titles.cpp
+++ b/engines/dreamweb/titles.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/dreamweb/use.cpp b/engines/dreamweb/use.cpp
index 476f847c40..c393fa1173 100644
--- a/engines/dreamweb/use.cpp
+++ b/engines/dreamweb/use.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -73,7 +73,7 @@ void DreamWebEngine::useRoutine() {
{ &DreamWebEngine::openLouis, "ENTA" },
{ &DreamWebEngine::openRyan, "ENTB" },
{ &DreamWebEngine::openPoolBoss, "ENTE" },
- { &DreamWebEngine::openYourNeighbour, "ENTC" },
+ { &DreamWebEngine::openYourNeighbor, "ENTC" },
{ &DreamWebEngine::openEden, "ENTD" },
{ &DreamWebEngine::openSarters, "ENTH" },
{ &DreamWebEngine::wearWatch, "WWAT" },
@@ -458,7 +458,7 @@ void DreamWebEngine::callEdensDLift() {
}
}
-void DreamWebEngine::openYourNeighbour() {
+void DreamWebEngine::openYourNeighbor() {
enterCode(255, 255, 255, 255);
_getBack = 1;
}
diff --git a/engines/dreamweb/vgafades.cpp b/engines/dreamweb/vgafades.cpp
index d1e2480f70..65930aef7d 100644
--- a/engines/dreamweb/vgafades.cpp
+++ b/engines/dreamweb/vgafades.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -72,11 +72,11 @@ void DreamWebEngine::doFade() {
return;
processEvents();
- uint8 *src = _startPal + 3 * _colourPos;
- setPalette(src, _colourPos, _numToFade);
+ uint8 *src = _startPal + 3 * _colorPos;
+ setPalette(src, _colorPos, _numToFade);
- _colourPos += _numToFade;
- if (_colourPos == 0)
+ _colorPos += _numToFade;
+ if (_colorPos == 0)
fadeCalculation();
}
@@ -109,7 +109,7 @@ void DreamWebEngine::fadeUpYellows() {
memset(_endPal + 246 * 3, 0, 1 * 3);
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 128;
hangOn(128);
}
@@ -121,7 +121,7 @@ void DreamWebEngine::fadeUpMonFirst() {
memset(_startPal + 246 * 3, 0, 1 * 3);
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 128;
hangOn(64);
_sound->playChannel1(26);
@@ -136,7 +136,7 @@ void DreamWebEngine::fadeDownMon() {
memset(_endPal + 246 * 3, 0, 1 * 3);
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 128;
hangOn(64);
}
@@ -148,7 +148,7 @@ void DreamWebEngine::fadeUpMon() {
memset(_startPal + 246 * 3, 0, 1 * 3);
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 128;
hangOn(128);
}
@@ -166,7 +166,7 @@ void DreamWebEngine::fadeScreenUp() {
palToEndPal();
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 128;
}
@@ -175,7 +175,7 @@ void DreamWebEngine::fadeScreenUps() {
palToEndPal();
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 64;
}
@@ -184,7 +184,7 @@ void DreamWebEngine::fadeScreenUpHalf() {
palToEndPal();
_fadeDirection = 1;
_fadeCount = 31;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 32;
}
@@ -193,7 +193,7 @@ void DreamWebEngine::fadeScreenDown() {
clearEndPal();
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 128;
}
@@ -202,7 +202,7 @@ void DreamWebEngine::fadeScreenDowns() {
clearEndPal();
_fadeDirection = 1;
_fadeCount = 63;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 64;
}
@@ -222,7 +222,7 @@ void DreamWebEngine::fadeScreenDownHalf() {
_fadeDirection = 1;
_fadeCount = 31;
- _colourPos = 0;
+ _colorPos = 0;
_numToFade = 32;
}
diff --git a/engines/dreamweb/vgagrafx.cpp b/engines/dreamweb/vgagrafx.cpp
index d8984d312b..c59d3e3ad5 100644
--- a/engines/dreamweb/vgagrafx.cpp
+++ b/engines/dreamweb/vgagrafx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,7 +23,7 @@
#include "dreamweb/dreamweb.h"
#include "engines/util.h"
#include "graphics/surface.h"
-#include "graphics/decoders/pcx.h"
+#include "image/pcx.h"
namespace DreamWeb {
@@ -161,7 +161,7 @@ void DreamWebEngine::showPCX(const Common::String &suffix) {
return;
}
- Graphics::PCXDecoder pcx;
+ Image::PCXDecoder pcx;
if (!pcx.loadStream(pcxFile)) {
warning("showpcx: Could not process '%s'", name.c_str());
return;
@@ -235,7 +235,7 @@ void DreamWebEngine::showFrame(const GraphicsFile &frameData, uint16 x, uint16 y
void DreamWebEngine::showFrameInternal(const uint8 *pSrc, uint16 x, uint16 y, uint8 effectsFlag, uint8 width, uint8 height) {
if (effectsFlag) {
- if (effectsFlag & 128) { //centred
+ if (effectsFlag & 128) { //centered
x -= width / 2;
y -= height / 2;
}
diff --git a/engines/engine.cpp b/engines/engine.cpp
index 8326a1fe89..c63437f800 100644
--- a/engines/engine.cpp
+++ b/engines/engine.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#define FORBIDDEN_SYMBOL_EXCEPTION_getcwd
diff --git a/engines/engine.h b/engines/engine.h
index 33416dda44..e325cc1ba2 100644
--- a/engines/engine.h
+++ b/engines/engine.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef ENGINES_ENGINE_H
diff --git a/engines/fullpipe/behavior.cpp b/engines/fullpipe/behavior.cpp
index 75cb027d7a..14e9c33bdf 100644
--- a/engines/fullpipe/behavior.cpp
+++ b/engines/fullpipe/behavior.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -83,7 +83,7 @@ void BehaviorManager::updateBehaviors() {
if (!_isActive)
return;
- debug(0, "BehaviorManager::updateBehaviors()");
+ debug(4, "BehaviorManager::updateBehaviors()");
for (uint i = 0; i < _behaviors.size(); i++) {
BehaviorInfo *beh = _behaviors[i];
@@ -122,7 +122,7 @@ void BehaviorManager::updateBehaviors() {
}
void BehaviorManager::updateBehavior(BehaviorInfo *behaviorInfo, BehaviorEntry *entry) {
- debug(0, "BehaviorManager::updateBehavior() %d", entry->_itemsCount);
+ debug(4, "BehaviorManager::updateBehavior() %d", entry->_itemsCount);
for (int i = 0; i < entry->_itemsCount; i++) {
BehaviorEntryInfo *bhi = entry->_items[i];
if (!(bhi->_flags & 1)) {
@@ -144,7 +144,7 @@ void BehaviorManager::updateBehavior(BehaviorInfo *behaviorInfo, BehaviorEntry *
}
void BehaviorManager::updateStaticAniBehavior(StaticANIObject *ani, int delay, BehaviorEntry *bhe) {
- debug(0, "BehaviorManager::updateStaticAniBehavior(%s)", transCyrillic((byte *)ani->_objectName));
+ debug(4, "BehaviorManager::updateStaticAniBehavior(%s)", transCyrillic((byte *)ani->_objectName));
MessageQueue *mq = 0;
@@ -236,7 +236,7 @@ void BehaviorInfo::clear() {
}
void BehaviorInfo::initAmbientBehavior(GameVar *var, Scene *sc) {
- debug(0, "BehaviorInfo::initAmbientBehavior(%s)", transCyrillic((byte *)var->_varName));
+ debug(4, "BehaviorInfo::initAmbientBehavior(%s)", transCyrillic((byte *)var->_varName));
clear();
_itemsCount = 1;
@@ -260,7 +260,7 @@ void BehaviorInfo::initAmbientBehavior(GameVar *var, Scene *sc) {
}
void BehaviorInfo::initObjectBehavior(GameVar *var, Scene *sc, StaticANIObject *ani) {
- debug(0, "BehaviorInfo::initObjectBehavior(%s)", transCyrillic((byte *)var->_varName));
+ debug(4, "BehaviorInfo::initObjectBehavior(%s)", transCyrillic((byte *)var->_varName));
clear();
diff --git a/engines/fullpipe/behavior.h b/engines/fullpipe/behavior.h
index 90bb38dc9b..1ec98d5bf2 100644
--- a/engines/fullpipe/behavior.h
+++ b/engines/fullpipe/behavior.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/console.cpp b/engines/fullpipe/console.cpp
index 2d27fc2ddd..cb76345d66 100644
--- a/engines/fullpipe/console.cpp
+++ b/engines/fullpipe/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/console.h b/engines/fullpipe/console.h
index af2b5114ac..24f213a50f 100644
--- a/engines/fullpipe/console.h
+++ b/engines/fullpipe/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index dfc2146332..f76a12fb2b 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -39,12 +39,19 @@ namespace Fullpipe {
#define MSG_MANSHADOWSOFF 5196
#define MSG_MANSHADOWSON 5197
#define MV_FLY_FLY 4917
+#define MV_LFT_CLOSE 1053
+#define MV_LFT_OPEN 1048
#define MV_MAN_GOLADDER 451
#define MV_MAN_GOLADDER2 2844
+#define MV_MAN_HMRKICK 1028
+#define MV_MAN_HMRKICK_COINLESS 1445
+#define MV_MAN_LIFTDOWN 1052
+#define MV_MAN_LIFTUP 1051
#define MV_MAN_LOOKUP 4773
#define rMV_MAN_LOOKUP 4775
#define MV_MAN_TOLADDER 448
#define MV_MAN_TOLADDER2 2841
+#define MV_MAN_STARTD 478
#define MV_MAN_STARTLADDER 452
#define MV_MAN_STARTLADDER2 2842
#define MV_MAN_STOPLADDER 454
@@ -83,6 +90,7 @@ namespace Fullpipe {
#define PIC_CSR_ITN_RED 5329
#define PIC_CSR_LIFT 5176
#define PIC_CSR_MAP 5339
+#define PIC_HLP_BGR 3562
#define PIC_IN1_GAMETITLE 5169
#define PIC_IN1_PIPETITLE 5167
#define PIC_INV_MENU 991
@@ -210,35 +218,52 @@ namespace Fullpipe {
#define SC_INTRO2 3907
#define SC_INV 858
#define SC_LDR 635
+#define SC_MAINMENU 4620
#define SC_MAP 5222
#define SC_TITLES 5166
+#define SND_CMN_015 3139
#define SND_CMN_031 3516
+#define SND_CMN_032 3517
+#define SND_CMN_054 4762
+#define SND_CMN_055 4763
#define SND_CMN_060 4921
#define SND_CMN_061 4922
#define SND_CMN_070 5199
#define SND_INTR_019 5220
#define ST_EGTR_SLIMSORROW 340
#define ST_FLY_FLY 4918
+#define ST_LBN_0H 2835
+#define ST_LBN_1H 2791
+#define ST_LBN_2H 2793
+#define ST_LBN_3H 2795
+#define ST_LBN_4H 2797
+#define ST_LBN_5H 2799
+#define ST_LBN_6H 2801
+#define ST_LBN_7H 2803
+#define ST_LBN_8H 2805
+#define ST_LBN_9H 2807
#define ST_LBN_0N 2832
-#define ST_LBN_0P 2833
#define ST_LBN_1N 2753
-#define ST_LBN_1P 2754
#define ST_LBN_2N 2756
-#define ST_LBN_2P 2757
#define ST_LBN_3N 2759
-#define ST_LBN_3P 2760
#define ST_LBN_4N 2762
-#define ST_LBN_4P 2763
#define ST_LBN_5N 2765
-#define ST_LBN_5P 2766
#define ST_LBN_6N 2768
-#define ST_LBN_6P 2769
#define ST_LBN_7N 2771
-#define ST_LBN_7P 2772
#define ST_LBN_8N 2774
-#define ST_LBN_8P 2775
#define ST_LBN_9N 2777
+#define ST_LBN_0P 2833
+#define ST_LBN_1P 2754
+#define ST_LBN_2P 2757
+#define ST_LBN_3P 2760
+#define ST_LBN_4P 2763
+#define ST_LBN_5P 2766
+#define ST_LBN_6P 2769
+#define ST_LBN_7P 2772
+#define ST_LBN_8P 2775
#define ST_LBN_9P 2778
+#define ST_LFT_CLOSED 1049
+#define ST_LFT_OPEN_NEW 1071
#define ST_MAN_EMPTY 476
#define ST_MAN_GOU 459
#define ST_MAN_RIGHT 325
@@ -246,6 +271,27 @@ namespace Fullpipe {
#define TrubaLeft 474
#define TrubaUp 680
+// Main Menu
+#define PIC_MNU_AUTHORS_L 4624
+#define PIC_MNU_CONTINUE_L 4626
+#define PIC_MNU_DEBUG_L 4632
+#define PIC_MNU_EXIT_L 4622
+#define PIC_MNU_LOAD_L 4628
+#define PIC_MNU_MUSICSLIDER_D 4914
+#define PIC_MNU_MUSICSLIDER_L 4915
+#define PIC_MNU_RESTART_L 5299
+#define PIC_MNU_SAVE_L 4630
+#define PIC_MNU_SLIDER_D 4913
+#define PIC_MNU_SLIDER_L 4912
+
+// Query dialog
+#define PIC_MEX_BGR 5300
+#define PIC_MEX_CANCEL 5302
+#define PIC_MEX_OK 5301
+#define PIC_MOV_BGR 5343
+#define PIC_MOV_CANCEL 5345
+#define PIC_MOV_OK 5344
+
// Intro
#define ANI_IN1MAN 5110
#define MSG_INTR_ENDINTRO 5139
@@ -565,6 +611,37 @@ namespace Fullpipe {
#define ST_MAN8_STAND 774
#define ST_VMT_MIN 766
+// Scene 9
+#define ANI_BALL9 933
+#define ANI_GLOTATEL 924
+#define ANI_GRIT_9 2719
+#define ANI_PLEVATEL 919
+#define ANI_VISUNCHIK 904
+#define MSG_SC9_EATBALL 941
+#define MSG_SC9_FLOWN 943
+#define MSG_SC9_FROMLADDER 4207
+#define MSG_SC9_PLVCLICK 965
+#define MSG_SC9_SETSCROLL 964
+#define MSG_SC9_SHOWBALL 936
+#define MSG_SC9_STARTTIOTIA 4942
+#define MSG_SC9_TOLADDER 4206
+#define MV_BALL9_EXPLODE 939
+#define MV_GLT_FLYAWAY 931
+#define MV_MAN9_SHOOT 922
+#define MV_VSN_CYCLE2 2987
+#define PIC_SC9_LADDER_R 2700
+#define QU_SC9_BALLEXPLODE 938
+#define QU_SC9_EATBALL 942
+#define QU_TTA9_GOL 4937
+#define SND_9_006 3650
+#define SND_9_018 4200
+#define SND_9_019 4201
+#define ST_GLT_SIT 926
+#define ST_GRT9_GRIT 2722
+#define ST_GRT9_NORM 2721
+#define ST_PLV_SIT 921
+#define ST_VSN_NORMAL 906
+
// Scene 10
#define ANI_GUM 978
#define ANI_NADUVATEL 944
@@ -821,10 +898,70 @@ namespace Fullpipe {
#define ST_SMG_SIT 1399
// Scene 18
+#define ANI_BOY18 1477
+#define ANI_DOMINO_18 3174
+#define ANI_GIRL18 1484
+#define ANI_KRESLO 1459
+#define ANI_WHIRLIGIG_18 829
+#define MSG_SC18_CLICKBOARD 3297
+#define MSG_SC18_MANCLIMBEDDOWN 1540
+#define MSG_SC18_MANCLIMBEDUP 1539
+#define MSG_SC18_MANREADY 1507
+#define MSG_SC18_SHOWBOYJUMP 1495
+#define MSG_SC18_SHOWBOYJUMPTO 1497
+#define MSG_SC18_SHOWGIRLJUMP 1496
+#define MSG_SC18_SHOWGIRLJUMPTO 1499
+#define MSG_SC18_SHOWMANJUMP 1510
+#define MSG_SC18_SHOWMANJUMPTO 1508
+#define MV_BOY18_JUMPFROM 1478
+#define MV_BOY18_JUMPTO 1481
+#define MV_GRL18_JUMPFROM 1485
+#define MV_GRL18_JUMPTO 1488
+#define MV_KSL_CALMDOWN 1476
+#define MV_KSL_INBOY 1491
+#define MV_KSL_INGIRL 1493
+#define MV_KSL_INMAN 1504
+#define MV_KSL_JUMPBOY 1473
+#define MV_KSL_JUMPGIRL 1475
+#define MV_KSL_JUMPMAN 1509
+#define MV_KSL_SWING 1460
+#define MV_KSL_SWINGBOY 1462
+#define MV_KSL_SWINGGIRL 1464
+#define MV_KSL_SWINGMAN 1502
+#define MV_MAN18_JUMPTOTRUBA 1511
+#define MV_MAN18_STANDKRESLO 1500
+#define MV_WHR18_SPIN 1300
+#define PIC_SC18_DOMIN 5184
+#define PIC_SC18_LADDER1 1471
+#define PIC_SC18_LADDER2 1472
+#define PIC_SC18_LADDER3 3299
#define PIC_SC18_RTRUBA 1520
+#define QU_SC19_MANJUMP1 1516
+#define QU_SC19_MANJUMP2 1517
+#define QU_SC19_MANJUMP3 1518
+#define SND_18_006 3906
+#define SND_18_010 4994
+#define ST_KSL_BOY 1463
+#define ST_KSL_GIRL 1465
+#define ST_KSL_JUMPBOY 1492
+#define ST_KSL_JUMPGIRL 1494
+#define ST_KSL_JUMPMAN 1505
+#define ST_KSL_MAN 1503
+#define ST_KSL_REACT 1474
// Scene 19
+#define ANI_CORDIE 1529
+#define ANI_WHIRLGIG_19 1302
+#define MSG_SC19_UPDATENUMRIDES 5203
+#define MV_WHR19_SPIN 1317
+#define PIC_SC19_RTRUBA1 1513
+#define PIC_SC19_RTRUBA2 1514
#define PIC_SC19_RTRUBA3 1515
+#define PIC_SC19_RTRUBA31 5320
+#define SND_19_015 3928
+#define SND_19_016 4995
+#define ST_CDI_EMPTY2 1543
+#define ST_KSL_NORM 1461
// Scene 20
#define ANI_GRANDMA_20 2427
@@ -1063,6 +1200,52 @@ namespace Fullpipe {
#define ST_VNT26_RIGHT2 3348
#define ST_VNT26_UP2 1948
+// Scene 27
+#define ANI_BITA 2026
+#define ANI_BITAHANDLER 3349
+#define ANI_MAID 2015
+#define ANI_VODILLA 1994
+#define MSG_SC27_CLICKBET 2048
+#define MSG_SC27_HANDLERTOBACK 3372
+#define MSG_SC27_HANDLERTOFRONT 3371
+#define MSG_SC27_SHOWNEXTBET 3369
+#define MSG_SC27_STARTBET 2047
+#define MSG_SC27_STARTWIPE 2057
+#define MSG_SC27_TAKEVENT 4584
+#define MV_BTA_FALL 2049
+#define MV_BTH_1_0 3366
+#define MV_BTH_2_1 3364
+#define MV_BTH_3_2 3362
+#define MV_BTH_4_3 3360
+#define MV_BTH_5_4 3358
+#define MV_MAN27_FLOW 1990
+#define MV_MAN27_THROWBET 1989
+#define PIC_SC27_HITZONE2 4756
+#define QU_DRV_GIVEVENT 2040
+#define QU_DRV_PUSHBUTTON 2056
+#define QU_DRV_PUSHBUTTON_NOVENT 4578
+#define QU_MID_CLEANVENT 4583
+#define QU_MID_SWITCHBACK 2044
+#define QU_SC27_RESTARTBETS 3370
+#define QU_SC27_SHOWBET 3368
+#define SND_27_026 4127
+#define SND_27_027 4128
+#define SND_27_044 4687
+#define ST_BTA_FALL 2054
+#define ST_BTA_HILITE 2052
+#define ST_BTA_NORM 2028
+#define ST_BTH_1 3365
+#define ST_BTH_2 3363
+#define ST_BTH_3 3361
+#define ST_BTH_4 3359
+#define ST_BTH_5 3357
+#define ST_DRV_SITNOVENT 1999
+#define ST_DRV_VENT 1996
+#define ST_MID_BROOM 2022
+#define ST_MID_SPADE 3489
+#define ST_MID_SWAB 2017
+#define ST_MID_SWAB2 2019
+
// Scene 28
#define ANI_LIFT 982
#define ANI_LIFT_28 4238
@@ -1119,6 +1302,65 @@ namespace Fullpipe {
#define QU_SC28_WMN_START 3452
#define ST_MAN28_RIGHT 4249
+// Scene 29
+#define ANI_ASS 2120
+#define ANI_PORTER 2082
+#define ANI_SHELL_GREEN 2116
+#define ANI_SHELL_RED 2130
+#define ANI_SHOOTER1 2108
+#define ANI_SHOOTER2 2111
+#define MSG_SC29_DISABLEPORTER 2097
+#define MSG_SC29_DISABLERIDEBACK 2106
+#define MSG_SC29_ENABLEPORTER 2096
+#define MSG_SC29_ENABLERIDEBACK 2105
+#define MSG_SC29_LAUGH 4760
+#define MSG_SC29_SHOOTGREEN 2119
+#define MSG_SC29_SHOOTRED 2137
+#define MSG_SC29_SHOWLASTGREEN 2730
+#define MSG_SC29_SHOWLASTRED 2731
+#define MSG_SC29_STOPRIDE 2107
+#define MV_ASS_HITGREEN 2138
+#define MV_ASS_HITRED 2139
+#define MV_BRDCMN_GOR 4735
+#define MV_MAN29_BEND 2091
+#define MV_MAN29_HIT 2088
+#define MV_MAN29_JUMP 2090
+#define MV_MAN29_RUN 2095
+#define MV_MAN29_STANDUP 2092
+#define MV_MAN29_STANDUP_NORM 2093
+#define MV_PTR_MOVEFAST 2102
+#define MV_SHG_HITASS 2151
+#define MV_SHG_HITMAN 2147
+#define MV_SHG_NORM 2117
+#define MV_SHR_HITASS 2152
+#define MV_SHR_HITMAN 2149
+#define MV_SHR_NORM 2131
+#define MV_STR1_SHOOT 2109
+#define MV_STR2_SHOOT 2112
+#define PIC_SC29_LTRUBA 2081
+#define QU_SC29_BRD1 4741
+#define QU_SC29_BRD2 4742
+#define QU_SC29_BRDOUT1 4743
+#define QU_SC29_BRDOUT2 4744
+#define QU_SC29_ESCAPE 2129
+#define QU_SC29_MANFROM_L 2101
+#define QU_SC29_MANFROM_R 2104
+#define QU_SC29_MANTO_L 2103
+#define QU_SC29_MANTO_R 2100
+#define SND_29_014 4348
+#define SND_29_027 4757
+#define SND_29_028 4758
+#define SND_29_029 4759
+#define ST_ASS_NORM 2122
+#define ST_BRDCMN_GOR 4734
+#define ST_BRDCMN_RIGHT 4732
+#define ST_MAN29_RUNR 2140
+#define ST_MAN29_SITR 2141
+#define ST_STR1_RIGHT 2143
+#define ST_STR2_RIGHT 2144
+#define ST_STR1_STAND 2110
+#define ST_STR2_STAND 2113
+
// Scene 30
#define ANI_LEG 2322
#define MSG_SC30_UPDATEPATH 2358
diff --git a/engines/fullpipe/detection.cpp b/engines/fullpipe/detection.cpp
index 8c4a422333..62c5dd3b80 100644
--- a/engines/fullpipe/detection.cpp
+++ b/engines/fullpipe/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/floaters.cpp b/engines/fullpipe/floaters.cpp
index 9e5ca7b3f1..eb29706f72 100644
--- a/engines/fullpipe/floaters.cpp
+++ b/engines/fullpipe/floaters.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/floaters.h b/engines/fullpipe/floaters.h
index 3ecbbeea9c..bd7b7ffd2c 100644
--- a/engines/fullpipe/floaters.h
+++ b/engines/fullpipe/floaters.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/fullpipe.cpp b/engines/fullpipe/fullpipe.cpp
index 1c319d3660..5369c05de7 100644
--- a/engines/fullpipe/fullpipe.cpp
+++ b/engines/fullpipe/fullpipe.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -71,6 +71,7 @@ FullpipeEngine::FullpipeEngine(OSystem *syst, const ADGameDescription *gameDesc)
_flgSoundList = true;
_sfxVolume = 0;
+ _musicVolume = 0;
_inputController = 0;
_inputDisabled = false;
@@ -82,12 +83,20 @@ FullpipeEngine::FullpipeEngine(OSystem *syst, const ADGameDescription *gameDesc)
_modalObject = 0;
+ _liftEnterMQ = 0;
+ _liftExitMQ = 0;
+ _lift = 0;
+ _lastLiftButton = 0;
+ _liftX = 0;
+ _liftY = 0;
+
_gameContinue = true;
_needRestart = false;
_flgPlayIntro = true;
_gamePaused = false;
_inputArFlag = false;
_recordEvents = false;
+ _mainMenu_debugEnabled = false;
_flgGameIsRunning = true;
@@ -95,6 +104,18 @@ FullpipeEngine::FullpipeEngine(OSystem *syst, const ADGameDescription *gameDesc)
_musicAllowed = -1;
_musicGameVar = 0;
+ _musicMinDelay = 0;
+ _musicMaxDelay = 0;
+ _musicLocal = 0;
+ _trackStartDelay = 0;
+
+ memset(_sceneTracks, 0, sizeof(_sceneTracks));
+ memset(_trackName, 0, sizeof(_trackName));
+ memset(_sceneTracksCurrentTrack, 0, sizeof(_sceneTracksCurrentTrack));
+
+ _numSceneTracks = 0;
+ _sceneTrackHasSequence = false;
+ _sceneTrackIsPlaying = false;
_aniMan = 0;
_aniMan2 = 0;
@@ -183,6 +204,10 @@ void FullpipeEngine::initialize() {
_mgm = new MGM;
}
+void FullpipeEngine::restartGame() {
+ warning("STUB: FullpipeEngine::restartGame()");
+}
+
Common::Error FullpipeEngine::run() {
const Graphics::PixelFormat format(2, 5, 6, 5, 0, 11, 5, 0, 0);
// Initialize backend
diff --git a/engines/fullpipe/fullpipe.h b/engines/fullpipe/fullpipe.h
index 0fc69c2de3..27505252ab 100644
--- a/engines/fullpipe/fullpipe.h
+++ b/engines/fullpipe/fullpipe.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -60,6 +60,7 @@ class GameProject;
class GameObject;
class GlobalMessageQueueList;
struct MessageHandler;
+class MessageQueue;
struct MovTable;
class MGM;
class NGIArchive;
@@ -90,6 +91,7 @@ public:
GUI::Debugger *getDebugger() { return _console; }
void initialize();
+ void restartGame();
void setMusicAllowed(int val) { _musicAllowed = val; }
@@ -124,6 +126,7 @@ public:
bool _flgGameIsRunning;
bool _inputArFlag;
bool _recordEvents;
+ bool _mainMenu_debugEnabled;
Common::Rect _sceneRect;
int _sceneWidth;
@@ -148,18 +151,32 @@ public:
int _currSoundListCount;
bool _soundEnabled;
bool _flgSoundList;
+ char _sceneTracks[10][260];
+ int _numSceneTracks;
+ bool _sceneTrackHasSequence;
+ int _musicMinDelay;
+ int _musicMaxDelay;
+ int _musicLocal;
+ char _trackName[2600];
+ int _trackStartDelay;
+ char _sceneTracksCurrentTrack[260];
+ bool _sceneTrackIsPlaying;
void stopAllSounds();
void toggleMute();
void playSound(int id, int flag);
void playTrack(GameVar *sceneVar, const char *name, bool delayed);
+ int getSceneTrack();
void startSceneTrack();
+ void startSoundStream1(char *trackName);
void stopSoundStream2();
void stopAllSoundStreams();
void stopAllSoundInstances(int id);
void updateSoundVolume();
+ void setMusicVolume(int vol);
int _sfxVolume;
+ int _musicVolume;
GlobalMessageQueueList *_globalMessageQueueList;
MessageHandler *_messageHandlers;
@@ -269,21 +286,33 @@ public:
void getAllInventory();
+ StaticANIObject *_lastLiftButton;
+ MessageQueue *_liftEnterMQ;
+ MessageQueue *_liftExitMQ;
+ StaticANIObject *_lift;
+ int _liftX;
+ int _liftY;
+
int lift_getButtonIdP(int objid);
+ int lift_getButtonIdH(int objid);
+ int lift_getButtonIdN(int objid);
void lift_setButton(const char *name, int state);
- void lift_sub5(Scene *sc, int qu1, int qu2);
- void lift_sub7(Scene *sc, int buttonId);
+ void lift_init(Scene *sc, int qu1, int qu2);
+ void lift_setButtonStatics(Scene *sc, int buttonId);
void lift_exitSeq(ExCommand *ex);
void lift_closedoorSeq();
- void lift_animation3();
+ void lift_clickButton();
+ void lift_walkAndGo();
void lift_goAnimation();
- void lift_sub1(StaticANIObject *ani);
+ void lift_animateButton(StaticANIObject *button);
void lift_startExitQueue();
- void lift_sub05(ExCommand *ex);
+ void lift_hoverButton(ExCommand *ex);
bool lift_checkButton(const char *varname);
+ void lift_openLift();
GameVar *_musicGameVar;
Audio::SoundHandle _sceneTrackHandle;
+
public:
bool _isSaveAllowed;
diff --git a/engines/fullpipe/gameloader.cpp b/engines/fullpipe/gameloader.cpp
index 845655dded..d9f7327a6b 100644
--- a/engines/fullpipe/gameloader.cpp
+++ b/engines/fullpipe/gameloader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -272,7 +272,7 @@ bool preloadCallback(PreloadItem &pre, int flag) {
g_fp->_currSoundList1[0] = g_fp->accessScene(SC_COMMON)->_soundList;
}
- g_vars->scene18_var01 = 0;
+ g_vars->scene18_inScene18p1 = false;
if ((pre.preloadId1 != SC_18 || pre.sceneId != SC_19) && (pre.preloadId1 != SC_19 || (pre.sceneId != SC_18 && pre.sceneId != SC_19))) {
if (g_fp->_scene3) {
@@ -282,9 +282,9 @@ bool preloadCallback(PreloadItem &pre, int flag) {
g_fp->_scene3 = 0;
}
} else {
- scene19_preload(g_fp->accessScene(pre.preloadId1), pre.keyCode);
+ scene19_setMovements(g_fp->accessScene(pre.preloadId1), pre.keyCode);
- g_vars->scene18_var01 = 1;
+ g_vars->scene18_inScene18p1 = true;
if (pre.preloadId1 == SC_18) {
g_fp->_gameLoader->saveScenePicAniInfos(SC_18);
diff --git a/engines/fullpipe/gameloader.h b/engines/fullpipe/gameloader.h
index 85bd6ab0fb..a79c0e11b4 100644
--- a/engines/fullpipe/gameloader.h
+++ b/engines/fullpipe/gameloader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/gfx.cpp b/engines/fullpipe/gfx.cpp
index 2d68600dbb..7c66a9a747 100644
--- a/engines/fullpipe/gfx.cpp
+++ b/engines/fullpipe/gfx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -90,7 +90,16 @@ Background::Background() {
}
Background::~Background() {
- warning("STUB: Background::~Background()");
+ _picObjList.clear();
+
+ for (int i = 0; i < _bigPictureArray1Count; i++) {
+ for (int j = 0; j < _bigPictureArray2Count; j++)
+ delete _bigPictureArray[i][j];
+
+ free(_bigPictureArray[i]);
+ }
+
+ free(_bigPictureArray);
}
bool Background::load(MfcArchive &file) {
@@ -159,7 +168,9 @@ PictureObject::PictureObject() {
}
PictureObject::~PictureObject() {
- warning("STUB: PictureObject::~PictureObject()");
+ delete _picture;
+ _pictureObject2List->clear();
+ delete _pictureObject2List;
}
PictureObject::PictureObject(PictureObject *src) : GameObject(src) {
@@ -979,6 +990,9 @@ void Bitmap::putDibCB(int32 *palette) {
byte *srcPtr = &_pixels[pitch * (endy - _y)];
+ if (endy - _y < _height)
+ srcPtr = &_pixels[pitch * (_height - 1)];
+
int starty = _y;
if (starty < 0) {
starty = 0;
@@ -992,7 +1006,7 @@ void Bitmap::putDibCB(int32 *palette) {
}
if (_flags & 0x1000000) {
- for (int y = starty; y < endy; srcPtr -= pitch, y++) {
+ for (int y = starty; y <= endy; srcPtr -= pitch, y++) {
curDestPtr = (uint16 *)g_fp->_backgroundSurface.getBasePtr(startx, y);
copierKeyColor(curDestPtr, srcPtr, endx - startx + 1, _flags & 0xff, (int32 *)palette, cb05_format);
}
diff --git a/engines/fullpipe/gfx.h b/engines/fullpipe/gfx.h
index d640decc80..b3e22b610b 100644
--- a/engines/fullpipe/gfx.h
+++ b/engines/fullpipe/gfx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/init.cpp b/engines/fullpipe/init.cpp
index 8de37b5c9e..9602803010 100644
--- a/engines/fullpipe/init.cpp
+++ b/engines/fullpipe/init.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -96,7 +96,7 @@ void FullpipeEngine::initObjectStates() {
setObjectState(sO_Pool, getObjectEnumState(sO_Pool, sO_Overfull));
setObjectState(sO_Board_25, getObjectEnumState(sO_Board_25, sO_NearDudesStairs));
setObjectState(sO_Driver, getObjectEnumState(sO_Driver, sO_WithSteering));
- setObjectState(sO_Janitress, getObjectEnumState(sO_Janitress, sO_WithMop));
+ setObjectState(sO_Maid, getObjectEnumState(sO_Maid, sO_WithSwab));
setObjectState(sO_LeftPipe_29, getObjectEnumState(sO_LeftPipe_29, sO_IsClosed));
setObjectState(sO_LeftPipe_30, getObjectEnumState(sO_LeftPipe_30, sO_IsClosed));
setObjectState(sO_Leg, getObjectEnumState(sO_Leg, sO_ShowingHeel));
diff --git a/engines/fullpipe/input.cpp b/engines/fullpipe/input.cpp
index 5294c4b4ea..7c97461a24 100644
--- a/engines/fullpipe/input.cpp
+++ b/engines/fullpipe/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -275,6 +275,8 @@ void FullpipeEngine::updateCursorCommon() {
}
void FullpipeEngine::initArcadeKeys(const char *varname) {
+ _arcadeKeys.clear();
+
GameVar *var = getGameLoaderGameVar()->getSubVarByName(varname)->getSubVarByName("KEYPOS");
if (!var)
@@ -294,6 +296,37 @@ void FullpipeEngine::initArcadeKeys(const char *varname) {
}
}
+void FullpipeEngine::processArcade(ExCommand *cmd) {
+ if (!g_fp->_aniMan2)
+ return;
+
+ int idx;
+
+ if (cmd->_sceneClickX <= g_fp->_aniMan2->_ox) {
+ for (idx = (int)_arcadeKeys.size() - 1; idx >= 0; idx--) {
+ if (_arcadeKeys[idx]->x < g_fp->_aniMan2->_ox)
+ break;
+ }
+
+ if (idx < 0)
+ return;
+ } else {
+ for (idx = 0; idx < (int)_arcadeKeys.size(); idx++) {
+ if (_arcadeKeys[idx]->x > g_fp->_aniMan2->_ox)
+ break;
+ }
+
+ if (idx >= (int)_arcadeKeys.size())
+ return;
+ }
+
+ cmd->_sceneClickX = _arcadeKeys[idx]->x;
+ cmd->_sceneClickY = _arcadeKeys[idx]->y;
+
+ cmd->_x = cmd->_sceneClickX - g_fp->_sceneRect.left;
+ cmd->_y = cmd->_sceneClickY - g_fp->_sceneRect.top;
+}
+
void FullpipeEngine::setArcadeOverlay(int picId) {
Common::Point point;
Common::Point point2;
diff --git a/engines/fullpipe/input.h b/engines/fullpipe/input.h
index bfd547ae2f..6a1d0f8b07 100644
--- a/engines/fullpipe/input.h
+++ b/engines/fullpipe/input.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/interaction.cpp b/engines/fullpipe/interaction.cpp
index 59b01a1777..84e9688e30 100644
--- a/engines/fullpipe/interaction.cpp
+++ b/engines/fullpipe/interaction.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -56,7 +56,9 @@ bool canInteractAny(GameObject *obj1, GameObject *obj2, int invId) {
}
InteractionController::~InteractionController() {
- warning("STUB: InteractionController::~InteractionController()");
+ _interactions.clear();
+
+ removeMessageHandler(124, -1);
}
bool InteractionController::load(MfcArchive &file) {
@@ -427,7 +429,14 @@ Interaction::Interaction() {
}
Interaction::~Interaction() {
- warning("STUB: Interaction::~Interaction()");
+ if (_messageQueue) {
+ while (_messageQueue->getExCommandByIndex(0))
+ _messageQueue->deleteExCommandByIndex(0, 1);
+ }
+
+ delete _messageQueue;
+
+ free(_actionName);
}
bool Interaction::load(MfcArchive &file) {
diff --git a/engines/fullpipe/interaction.h b/engines/fullpipe/interaction.h
index 7d9ee0bd51..cb1eac002a 100644
--- a/engines/fullpipe/interaction.h
+++ b/engines/fullpipe/interaction.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/inventory.cpp b/engines/fullpipe/inventory.cpp
index f5af0611cb..e79f9c54df 100644
--- a/engines/fullpipe/inventory.cpp
+++ b/engines/fullpipe/inventory.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,7 +31,7 @@
namespace Fullpipe {
Inventory::~Inventory() {
- warning("STUB: Inventory::~Inventory()");
+ _itemsPool.clear();
}
bool Inventory::load(MfcArchive &file) {
@@ -90,7 +90,7 @@ Inventory2::Inventory2() {
}
Inventory2::~Inventory2() {
- warning("STUB: Inventory2::~Inventory2()");
+ removeMessageHandler(125, -1);
}
bool Inventory2::loadPartial(MfcArchive &file) { // Inventory2_SerializePartially
@@ -123,7 +123,25 @@ void Inventory2::removeItem(int itemId, int count) {
}
void Inventory2::removeItem2(Scene *sceneObj, int itemId, int x, int y, int priority) {
- warning("STUB: void removeItem2(sc, %d, %d, %d, %d)", itemId, x, y, priority);
+ int idx = getInventoryItemIndexById(itemId);
+
+ if (idx >= 0) {
+ if (_inventoryItems[idx]->itemId >> 16) {
+ removeItem(itemId, 1);
+
+ Scene *sc = g_fp->accessScene(_sceneId);
+
+ if (sc) {
+ StaticANIObject *ani = new StaticANIObject(sc->getStaticANIObject1ById(itemId, -1));
+
+ sceneObj->addStaticANIObject(ani, 1);
+
+ ani->_statics = (Statics *)ani->_staticsList[0];
+ ani->setOXY(x, y);
+ ani->_priority = priority;
+ }
+ }
+ }
}
int Inventory2::getCountItemsWithId(int itemId) {
@@ -201,7 +219,7 @@ void Inventory2::rebuildItemRects() {
InventoryIcon *icn = new InventoryIcon();
icn->inventoryItemId = _itemsPool[idx]->id;
-
+
icn->pictureObjectNormal = _scene->getPictureObjectById(_itemsPool[idx]->pictureObjectNormal, 0);
icn->pictureObjectHover = _scene->getPictureObjectById(_itemsPool[idx]->pictureObjectHover, 0);
icn->pictureObjectSelected = _scene->getPictureObjectById(_itemsPool[idx]->pictureObjectSelected, 0);
@@ -334,7 +352,7 @@ bool Inventory2::handleLeftClick(ExCommand *cmd) {
bool res = false;
for (uint i = 0; i < _inventoryIcons.size(); i++) {
- if (cmd->_x >= _inventoryIcons[i]->x1 && cmd->_x <= _inventoryIcons[i]->x2 &&
+ if (cmd->_x >= _inventoryIcons[i]->x1 && cmd->_x <= _inventoryIcons[i]->x2 &&
cmd->_y >= _inventoryIcons[i]->y1 && cmd->_y <= _inventoryIcons[i]->y2) {
if (getSelectedItemId()) {
if (getSelectedItemId() != _inventoryIcons[i]->inventoryItemId)
@@ -429,6 +447,15 @@ int Inventory2::getHoveredItem(Common::Point *point) {
return 0;
}
+void Inventory2::clear() {
+ unselectItem(0);
+
+ for (uint i = 0; i < _inventoryItems.size(); i++)
+ getInventoryPoolItemFieldCById(_inventoryItems[i]->itemId);
+
+ _inventoryItems.clear();
+}
+
void FullpipeEngine::getAllInventory() {
Inventory2 *inv = getGameLoaderInventory();
diff --git a/engines/fullpipe/inventory.h b/engines/fullpipe/inventory.h
index bc5847312b..46b55c5669 100644
--- a/engines/fullpipe/inventory.h
+++ b/engines/fullpipe/inventory.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -129,6 +129,8 @@ class Inventory2 : public Inventory {
bool unselectItem(bool flag);
void draw();
+
+ void clear();
};
} // End of namespace Fullpipe
diff --git a/engines/fullpipe/lift.cpp b/engines/fullpipe/lift.cpp
index e5c566ebcf..9a3d91540a 100644
--- a/engines/fullpipe/lift.cpp
+++ b/engines/fullpipe/lift.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -26,43 +26,142 @@
#include "fullpipe/objectnames.h"
#include "fullpipe/constants.h"
+#include "fullpipe/scene.h"
+#include "fullpipe/statics.h"
+#include "fullpipe/messages.h"
+#include "fullpipe/gameloader.h"
+#include "fullpipe/motion.h"
+
namespace Fullpipe {
int FullpipeEngine::lift_getButtonIdP(int objid) {
switch (objid) {
case ST_LBN_0N:
return ST_LBN_0P;
- break;
+
case ST_LBN_1N:
return ST_LBN_1P;
- break;
+
case ST_LBN_2N:
return ST_LBN_2P;
- break;
+
case ST_LBN_3N:
return ST_LBN_3P;
- break;
+
case ST_LBN_4N:
return ST_LBN_4P;
- break;
+
case ST_LBN_5N:
return ST_LBN_5P;
- break;
+
case ST_LBN_6N:
return ST_LBN_6P;
- break;
+
case ST_LBN_7N:
return ST_LBN_7P;
- break;
+
case ST_LBN_8N:
return ST_LBN_8P;
- break;
+
case ST_LBN_9N:
return ST_LBN_9P;
- break;
+
+ default:
+ return 0;
+ }
+}
+
+int FullpipeEngine::lift_getButtonIdH(int objid) {
+ switch (objid) {
+ case ST_LBN_0P:
+ return ST_LBN_0H;
+
+ case ST_LBN_1P:
+ return ST_LBN_1H;
+
+ case ST_LBN_2P:
+ return ST_LBN_2H;
+
+ case ST_LBN_3P:
+ return ST_LBN_3H;
+
+ case ST_LBN_4P:
+ return ST_LBN_4H;
+
+ case ST_LBN_5P:
+ return ST_LBN_5H;
+
+ case ST_LBN_6P:
+ return ST_LBN_6H;
+
+ case ST_LBN_7P:
+ return ST_LBN_7H;
+
+ case ST_LBN_8P:
+ return ST_LBN_8H;
+
+ case ST_LBN_9P:
+ return ST_LBN_9H;
+
+ default:
+ return 0;
+ }
+}
+
+int FullpipeEngine::lift_getButtonIdN(int objid) {
+ switch (objid) {
+ case ST_LBN_0H:
+ case ST_LBN_0N:
+ case ST_LBN_0P:
+ return ST_LBN_0N;
+
+ case ST_LBN_1H:
+ case ST_LBN_1N:
+ case ST_LBN_1P:
+ return ST_LBN_1N;
+
+ case ST_LBN_2H:
+ case ST_LBN_2N:
+ case ST_LBN_2P:
+ return ST_LBN_2N;
+
+ case ST_LBN_3H:
+ case ST_LBN_3N:
+ case ST_LBN_3P:
+ return ST_LBN_3N;
+
+ case ST_LBN_4H:
+ case ST_LBN_4N:
+ case ST_LBN_4P:
+ return ST_LBN_4N;
+
+ case ST_LBN_5H:
+ case ST_LBN_5N:
+ case ST_LBN_5P:
+ return ST_LBN_5N;
+
+ case ST_LBN_6H:
+ case ST_LBN_6N:
+ case ST_LBN_6P:
+ return ST_LBN_6N;
+
+ case ST_LBN_7H:
+ case ST_LBN_7N:
+ case ST_LBN_7P:
+ return ST_LBN_7N;
+
+ case ST_LBN_8H:
+ case ST_LBN_8N:
+ case ST_LBN_8P:
+ return ST_LBN_8N;
+
+ case ST_LBN_9H:
+ case ST_LBN_9N:
+ case ST_LBN_9P:
+ return ST_LBN_9N;
+
default:
return 0;
- break;
}
}
@@ -73,46 +172,346 @@ void FullpipeEngine::lift_setButton(const char *name, int state) {
var->setSubVarAsInt(name, state);
}
-void FullpipeEngine::lift_sub5(Scene *sc, int qu1, int qu2) {
- warning("STUB: FullpipeEngine::lift_sub5()");
+void FullpipeEngine::lift_init(Scene *sc, int enterSeq, int exitSeq) {
+ _lastLiftButton = 0;
+
+ _liftEnterMQ = sc->getMessageQueueById(enterSeq);
+ if (!_liftEnterMQ)
+ return;
+
+ _liftExitMQ = sc->getMessageQueueById(exitSeq);
+
+ if (!_liftExitMQ)
+ return;
+
+ ExCommand *ex = _liftEnterMQ->getExCommandByIndex(0);
+
+ if (!ex)
+ return;
+
+ _liftX = ex->_x;
+ _liftY = ex->_y;
+
+ _lift = sc->getStaticANIObject1ById(ANI_LIFT, -1);
+
+ for (uint i = 0; i < sc->_staticANIObjectList1.size(); i++) {
+ StaticANIObject *ani = (StaticANIObject *)sc->_staticANIObjectList1[i];
+
+ if (ani->_id == ANI_LIFTBUTTON)
+ ani->_statics = ani->getStaticsById(lift_getButtonIdP(ani->_statics->_staticsId));
+ }
+
+ GameVar *var = getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_LiftButtons);
+ if (var) {
+ for (var = var->_subVars; var; var = var->_nextVarObj) {
+ for (uint i = 0; i < sc->_staticANIObjectList1.size(); i++) {
+ StaticANIObject *ani = (StaticANIObject *)sc->_staticANIObjectList1[i];
+
+ if (ani->_id == ANI_LIFTBUTTON) {
+ int id = lift_getButtonIdN(ani->_statics->_staticsId);
+
+ if (id == var->_value.intValue)
+ ani->_statics = ani->getStaticsById(id);
+ }
+
+ }
+ }
+ }
}
-void FullpipeEngine::lift_exitSeq(ExCommand *ex) {
- warning("STUB: FullpipeEngine::lift_exitSeq()");
+void FullpipeEngine::lift_exitSeq(ExCommand *cmd) {
+ if (cmd) {
+ MessageQueue *mq = _globalMessageQueueList->getMessageQueueById(cmd->_parId);
+
+ if (mq)
+ mq->activateExCommandsByKind(34);
+ }
+
+ _lift->changeStatics2(ST_LFT_CLOSED);
+
+ MessageQueue *mq = new MessageQueue(_globalMessageQueueList->compact());
+
+ ExCommand *ex = new ExCommand(_aniMan->_id, 34, 256, 0, 0, 0, 1, 0, 0, 0);
+
+ ex->_field_14 = 256;
+ ex->_messageNum = 256;
+ ex->_excFlags |= 3;
+ mq->addExCommandToEnd(ex);
+
+ if (!cmd) {
+ ex = new ExCommand(_aniMan->_id, 2, 40, 0, 0, 0, 1, 0, 0, 0);
+ ex->_keyCode = _aniMan->_okeyCode;
+ ex->_excFlags |= 2;
+ mq->addExCommandToEnd(ex);
+ }
+
+ ex = new ExCommand(_lift->_id, 1, MV_LFT_OPEN, 0, 0, 0, 1, 0, 0, 0);
+ ex->_keyCode = _lift->_okeyCode;
+ ex->_excFlags |= 2;
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(_aniMan->_id, 1, MV_MAN_STARTD, 0, 0, 0, 1, 0, 0, 0);
+ ex->_keyCode = _aniMan->_okeyCode;
+ ex->_excFlags |= 2;
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(_aniMan->_id, 5, -1, 0, 0, 0, 1, 0, 0, 0);
+ ex->_keyCode = _aniMan->_okeyCode;
+ ex->_field_14 = 10;
+ ex->_x = -1;
+ ex->_y = -1;
+ ex->_excFlags |= 3;
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(_aniMan->_id, 34, 256, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags |= 3;
+ ex->_field_14 = 256;
+ ex->_messageNum = 0;
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(0, 17, MSG_LIFT_STARTEXITQUEUE, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags |= 3;
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(_lift->_id, 1, MV_LFT_CLOSE, 0, 0, 0, 1, 0, 0, 0);
+ ex->_keyCode = _lift->_okeyCode;
+ ex->_excFlags |= 2;
+
+ mq->addExCommandToEnd(ex);
+
+ mq->chain(0);
}
void FullpipeEngine::lift_closedoorSeq() {
- warning("STUB: FullpipeEngine::lift_closedoorSeq()");
+ if (_lift->_movement) {
+ if (_lift->_movement->_id == MV_LFT_CLOSE) {
+ _lift->queueMessageQueue(0);
+ } else if (_lift->_movement->_id == MV_LFT_OPEN) {
+ int ph = _lift->_movement->_currDynamicPhaseIndex;
+
+ _lift->changeStatics2(ST_LFT_OPEN_NEW);
+ _lift->startAnim(MV_LFT_CLOSE, 0, -1);
+
+ if (_lift->_movement->_currMovement)
+ _lift->_movement->setDynamicPhaseIndex(_lift->_movement->_currMovement->_dynamicPhases.size() - ph);
+ else
+ _lift->_movement->setDynamicPhaseIndex(_lift->_movement->_dynamicPhases.size() - ph);
+ } else {
+ _lift->changeStatics2(ST_LFT_OPEN_NEW);
+
+ _lift->startAnim(MV_LFT_CLOSE, 0, -1);
+ }
+ } else {
+ if (_lift->_statics->_staticsId == ST_LFT_CLOSED ) {
+ _lift->changeStatics2(ST_LFT_CLOSED);
+ } else {
+ _lift->startAnim(MV_LFT_CLOSE, 0, -1);
+ }
+ }
+
+ MessageQueue *mq = new MessageQueue(_globalMessageQueueList->compact());
+ ExCommand *ex = new ExCommand(0, 17, MSG_LIFT_GO, 0, 0, 0, 1, 0, 0, 0);
+
+ ex->_excFlags |= 3;
+ mq->addExCommandToEnd(ex);
+
+ if (!mq->chain(_lift))
+ delete mq;
}
-void FullpipeEngine::lift_animation3() {
- warning("STUB: FullpipeEngine::lift_animation3()");
+void FullpipeEngine::lift_walkAndGo() {
+ MessageQueue *mq;
+ ExCommand *ex;
+
+ if (abs(_liftX - _aniMan->_ox) > 1 || abs(_liftY - _aniMan->_oy) > 1 || _aniMan->_movement || _aniMan->_statics->_staticsId != ST_MAN_UP) {
+ mq = getCurrSceneSc2MotionController()->method34(_aniMan, _liftX, _liftY, 1, ST_MAN_UP);
+
+ if (mq) {
+ ex = new ExCommand(0, 17, MSG_LIFT_CLICKBUTTON, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags |= 3;
+
+ mq->addExCommandToEnd(ex);
+ }
+ } else {
+ lift_openLift();
+
+ mq = new MessageQueue(_liftEnterMQ, 0, 0);
+
+ mq->setFlags(mq->getFlags() | 1);
+
+ ex = new ExCommand(_aniMan->_id, 2, 15, 0, 0, 0, 1, 0, 0, 0);
+ ex->_keyCode = _aniMan->_okeyCode;
+ ex->_excFlags |= 2;
+ mq->addExCommand(ex);
+
+ ex = new ExCommand(_aniMan->_id, 5, -1, 0, 0, 0, 1, 0, 0, 0);
+ ex->_keyCode = _aniMan->_okeyCode;
+ ex->_field_14 = _lift->_priority + 1;
+ ex->_x = -1;
+ ex->_y = -1;
+ ex->_excFlags |= 3;
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(0, 17, MSG_LIFT_CLOSEDOOR, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags |= 3;
+ mq->addExCommandToEnd(ex);
+
+ mq->chain(0);
+
+ _aniMan->_flags |= 1;
+ }
}
-void FullpipeEngine::lift_goAnimation() {
- warning("STUB: FullpipeEngine::lift_goAnimation()");
+void FullpipeEngine::lift_openLift() {
+ if (_lift->_movement) {
+ if (_lift->_movement->_id == MV_LFT_OPEN) {
+ _lift->queueMessageQueue(0);
+ } else if (_lift->_movement->_id == MV_LFT_CLOSE) {
+ int idx = _lift->_movement->_currDynamicPhaseIndex;
+
+ _lift->changeStatics2(ST_LFT_CLOSED);
+ _lift->startAnim(MV_LFT_OPEN, 0, -1);
+
+ if (_lift->_movement->_currMovement)
+ _lift->_movement->setDynamicPhaseIndex(_lift->_movement->_currMovement->_dynamicPhases.size() - idx);
+ else
+ _lift->_movement->setDynamicPhaseIndex(_lift->_movement->_dynamicPhases.size() - idx);
+ } else {
+ _lift->changeStatics2(ST_LFT_CLOSED);
+ _lift->startAnim(MV_LFT_OPEN, 0, -1);
+ }
+ } else if (_lift->_statics->_staticsId == ST_LFT_OPEN_NEW) {
+ _lift->changeStatics2(ST_LFT_OPEN_NEW);
+ } else {
+ _lift->startAnim(MV_LFT_OPEN, 0, -1);
+ }
}
-void FullpipeEngine::lift_sub1(StaticANIObject *ani) {
- warning("STUB: FullpipeEngine::lift_sub1()");
+void FullpipeEngine::lift_clickButton() {
+ if (_lastLiftButton)
+ lift_walkAndGo();
+}
+
+void FullpipeEngine::lift_goAnimation() { if (_lastLiftButton) {
+ int parentId = _currentScene->_sceneId;
+ int buttonId = lift_getButtonIdN(_lastLiftButton->_statics->_staticsId);
+
+ if (!buttonId)
+ return;
+
+ int numItems = _gameLoader->_preloadItems.size();
+
+ for (int i = 0; i < numItems; i++) {
+ PreloadItem *pre = _gameLoader->_preloadItems[i];
+
+ if (pre->preloadId2 == buttonId && pre->preloadId1 == _currentScene->_sceneId) {
+ MessageQueue *mq = new MessageQueue(_globalMessageQueueList->compact());
+
+ ExCommand *ex = new ExCommand(ANI_MAN, 1, (pre->keyCode != LiftDown ? MV_MAN_LIFTDOWN : MV_MAN_LIFTUP), 0, 0, 0, 1, 0, 0, 0);
+
+ ex->_keyCode = -1;
+ ex->_field_24 = 1;
+ ex->_excFlags |= 2;
+
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(parentId, 17, 61, 0, 0, 0, 1, 0, 0, 0);
+
+ ex->_keyCode = buttonId;
+ ex->_excFlags |= 3;
+
+ mq->addExCommandToEnd(ex);
+
+ _aniMan->_flags &= 0xFEFF;
+
+ if (!mq->chain(_aniMan))
+ delete mq;
+
+ _aniMan->_flags |= 1;
+ }
+ }
+ }
+
+ lift_exitSeq(0);
+
+ if (_lastLiftButton) {
+ _lastLiftButton->_statics = _lastLiftButton->getStaticsById(lift_getButtonIdN(_lastLiftButton->_statics->_staticsId));
+ _lastLiftButton = 0;
+ }
+}
+
+void FullpipeEngine::lift_animateButton(StaticANIObject *button) {
+ int butId = lift_getButtonIdP(button->_statics->_staticsId);
+
+ if (butId && butId != button->_statics->_staticsId) {
+ if (button == _lastLiftButton) {
+ playSound(SND_CMN_032, 0);
+ } else {
+ if (_lastLiftButton) {
+ int id = lift_getButtonIdN(_lastLiftButton->_statics->_staticsId);
+
+ if (id)
+ _lastLiftButton->_statics = _lastLiftButton->getStaticsById(id);
+
+ _lastLiftButton = 0;
+ }
+
+ if (_aniMan->isIdle() && !(_aniMan->_flags & 0x100)) {
+ _lastLiftButton = button;
+ button->_statics = button->getStaticsById(butId);
+
+ ExCommand *ex = new ExCommand(0, 35, SND_CMN_032, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags |= 3;
+ ex->_field_14 = 1;
+ ex->postMessage();
+
+ int id = lift_getButtonIdH(_lastLiftButton->_statics->_staticsId);
+
+ if (id) {
+ _lastLiftButton->_statics = _lastLiftButton->getStaticsById(id);
+
+ lift_walkAndGo();
+ }
+ }
+ }
+ }
}
void FullpipeEngine::lift_startExitQueue() {
- warning("STUB: FullpipeEngine::lift_startExitQueue()");
+ MessageQueue *mq = new MessageQueue(_liftExitMQ, 0, 0);
+
+ mq->chain(0);
}
-void FullpipeEngine::lift_sub05(ExCommand *ex) {
- warning("STUB: FullpipeEngine::lift_sub05()");
+void FullpipeEngine::lift_hoverButton(ExCommand *cmd) {
+ if (_lastLiftButton) {
+ if (!(cmd->_keyCode & 2) || _liftX != cmd->_x || _liftY != cmd->_y) {
+ _lastLiftButton->_statics = _lastLiftButton->getStaticsById(lift_getButtonIdN(_lastLiftButton->_statics->_staticsId));
+ _lastLiftButton = 0;
+ }
+ }
}
-bool FullpipeEngine::lift_checkButton(const char *varname) {
- warning("STUB: FullpipeEngine::lift_checkButton(%s)", varname);
+bool FullpipeEngine::lift_checkButton(const char *varName) {
+ GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_LiftButtons);
+
+ if (var)
+ return lift_getButtonIdP(var->getSubVarByName(varName)->_value.intValue) > 0;
return false;
}
-void FullpipeEngine::lift_sub7(Scene *sc, int buttonId) {
- warning("STUB: lift_sub7()");
+void FullpipeEngine::lift_setButtonStatics(Scene *sc, int buttonId) {
+ for (uint i = 0; i < sc->_staticANIObjectList1.size(); i++) {
+ StaticANIObject *ani = (StaticANIObject *)sc->_staticANIObjectList1[i];
+
+ if (ani->_id == ANI_LIFTBUTTON) {
+ int id = lift_getButtonIdN(ani->_statics->_staticsId);
+
+ if (id == buttonId)
+ ani->_statics = ani->getStaticsById(id);
+ }
+ }
}
diff --git a/engines/fullpipe/messagehandlers.cpp b/engines/fullpipe/messagehandlers.cpp
index 44a3e4cb60..15aa78d342 100644
--- a/engines/fullpipe/messagehandlers.cpp
+++ b/engines/fullpipe/messagehandlers.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -34,11 +34,69 @@
namespace Fullpipe {
void global_messageHandler_KickStucco() {
- warning("STUB: global_messageHandler_KickStucco()");
+ Movement *mov = g_fp->_aniMan->getMovementById(MV_MAN_HMRKICK);
+ int end = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size();
+ bool flip = false;
+
+ for (int i = 0; i < end; i++) {
+ ExCommand *ex = mov->getDynamicPhaseByIndex(i)->_exCommand;
+
+ if (ex)
+ if (ex->_messageKind == 35)
+ if (ex->_messageNum == SND_CMN_015) {
+ if (flip) {
+ ex->_messageNum = SND_CMN_055;
+ } else {
+ ex->_messageNum = SND_CMN_054;
+ flip = true;
+ }
+ }
+ }
+
+ mov = g_fp->_aniMan->getMovementById(MV_MAN_HMRKICK_COINLESS);
+ end = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size();
+ flip = false;
+
+ for (int i = 0; i < end; i++) {
+ ExCommand *ex = mov->getDynamicPhaseByIndex(i)->_exCommand;
+
+ if (ex)
+ if (ex->_messageKind == 35)
+ if (ex->_messageNum == SND_CMN_015) {
+ if (flip) {
+ ex->_messageNum = SND_CMN_055;
+ } else {
+ ex->_messageNum = SND_CMN_054;
+ flip = true;
+ }
+ }
+ }
}
void global_messageHandler_KickMetal() {
- warning("STUB: global_messageHandler_KickMetal()");
+ Movement *mov = g_fp->_aniMan->getMovementById(MV_MAN_HMRKICK);
+ int end = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size();
+
+ for (int i = 0; i < end; i++) {
+ ExCommand *ex = mov->getDynamicPhaseByIndex(i)->_exCommand;
+
+ if (ex)
+ if (ex->_messageKind == 35)
+ if (ex->_messageNum == SND_CMN_054 || ex->_messageNum == SND_CMN_055)
+ ex->_messageNum = SND_CMN_015;
+ }
+
+ mov = g_fp->_aniMan->getMovementById(MV_MAN_HMRKICK_COINLESS);
+ end = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size();
+
+ for (int i = 0; i < end; i++) {
+ ExCommand *ex = mov->getDynamicPhaseByIndex(i)->_exCommand;
+
+ if (ex)
+ if (ex->_messageKind == 35)
+ if (ex->_messageNum == SND_CMN_054 || ex->_messageNum == SND_CMN_055)
+ ex->_messageNum = SND_CMN_015;
+ }
}
int global_messageHandler1(ExCommand *cmd) {
@@ -151,7 +209,7 @@ int global_messageHandler1(ExCommand *cmd) {
if (g_fp->_updateFlag && (invItem = g_fp->_inventory->getHoveredItem(&g_fp->_mouseScreenPos))) {
g_fp->_cursorId = PIC_CSR_ITN;
- if (!g_fp->_currSelectedInventoryItemId && !g_fp->_aniMan->_movement &&
+ if (!g_fp->_currSelectedInventoryItemId && !g_fp->_aniMan->_movement &&
!(g_fp->_aniMan->_flags & 0x100) && g_fp->_aniMan->isIdle()) {
int st = g_fp->_aniMan->_statics->_staticsId;
ExCommand *newex = 0;
@@ -528,9 +586,9 @@ int global_messageHandler4(ExCommand *cmd) {
ExCommand2 *cmd2 = (ExCommand2 *)cmd;
if (cmd->_excFlags & 1) {
- ani->startAnimSteps(cmd->_messageNum, 0, cmd->_x, cmd->_y, cmd2->_points, cmd2->_pointsSize >> 3, flags);
+ ani->startAnimSteps(cmd->_messageNum, 0, cmd->_x, cmd->_y, cmd2->_points, cmd2->_pointsSize, flags);
} else {
- ani->startAnimSteps(cmd->_messageNum, cmd->_parId, cmd->_x, cmd->_y, cmd2->_points, cmd2->_pointsSize >> 3, flags);
+ ani->startAnimSteps(cmd->_messageNum, cmd->_parId, cmd->_x, cmd->_y, cmd2->_points, cmd2->_pointsSize, flags);
}
break;
}
diff --git a/engines/fullpipe/messages.cpp b/engines/fullpipe/messages.cpp
index 7dfdd06fc8..8257d1459f 100644
--- a/engines/fullpipe/messages.cpp
+++ b/engines/fullpipe/messages.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -47,7 +47,7 @@ ExCommand *ExCommand::createClone() {
return new ExCommand(this);
}
-ExCommand::ExCommand(int16 parentId, int messageKind, int messageNum, int x, int y, int a7, int a8, int sceneClickX, int sceneClickY, int a11) :
+ExCommand::ExCommand(int16 parentId, int messageKind, int messageNum, int x, int y, int a7, int a8, int sceneClickX, int sceneClickY, int a11) :
Message(parentId, messageKind, x, y, a7, a8, sceneClickX, sceneClickY, a11) {
_field_3C = 1;
_messageNum = messageNum;
@@ -182,7 +182,7 @@ ExCommand2 *ExCommand2::createClone() {
Message::Message() {
_messageKind = 0;
- _parentId = 0;
+ _parentId = 0;
_x = 0;
_y = 0;
@@ -610,6 +610,23 @@ void MessageQueue::changeParam28ForObjectId(int objId, int oldParam28, int newPa
}
}
+int MessageQueue::activateExCommandsByKind(int kind) {
+ int res = 0;
+
+ for (uint i = 0; i < getCount(); i++) {
+ ExCommand *ex = getExCommandByIndex(i);
+
+ if (ex->_messageKind == kind) {
+ ex->_messageKind = 0;
+ ex->_excFlags |= 1;
+
+ res++;
+ }
+ }
+
+ return res;
+}
+
MessageQueue *GlobalMessageQueueList::getMessageQueueById(int id) {
for (Common::Array<MessageQueue *>::iterator s = begin(); s != end(); ++s) {
if ((*s)->_id == id)
@@ -682,6 +699,10 @@ void GlobalMessageQueueList::addMessageQueue(MessageQueue *msg) {
push_back(msg);
}
+void clearGlobalMessageQueueList() {
+ g_fp->_globalMessageQueueList->clear();
+}
+
void clearGlobalMessageQueueList1() {
clearMessages();
@@ -883,7 +904,7 @@ void processMessages() {
}
void updateGlobalMessageQueue(int id, int objid) {
- MessageQueue *m = g_fp->_globalMessageQueueList->getMessageQueueById(id);
+ MessageQueue *m = g_fp->_globalMessageQueueList->getMessageQueueById(id);
if (m) {
m->update();
}
diff --git a/engines/fullpipe/messages.h b/engines/fullpipe/messages.h
index 33bb827888..e6f7f05150 100644
--- a/engines/fullpipe/messages.h
+++ b/engines/fullpipe/messages.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -158,6 +158,8 @@ class MessageQueue : public CObject {
int calcDuration(StaticANIObject *obj);
void changeParam28ForObjectId(int objId, int oldParam28, int newParam28);
+
+ int activateExCommandsByKind(int kind);
};
class GlobalMessageQueueList : public Common::Array<MessageQueue *> {
@@ -191,6 +193,7 @@ void clearMessageHandlers();
void processMessages();
void updateGlobalMessageQueue(int id, int objid);
void clearMessages();
+void clearGlobalMessageQueueList();
void clearGlobalMessageQueueList1();
bool chainQueue(int queueId, int flags);
diff --git a/engines/fullpipe/modal.cpp b/engines/fullpipe/modal.cpp
index 2c2252811d..459c714984 100644
--- a/engines/fullpipe/modal.cpp
+++ b/engines/fullpipe/modal.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -21,12 +21,13 @@
*/
#include "fullpipe/fullpipe.h"
-#include "fullpipe/modal.h"
#include "fullpipe/messages.h"
#include "fullpipe/constants.h"
#include "fullpipe/motion.h"
#include "fullpipe/scenes.h"
#include "fullpipe/gameloader.h"
+#include "fullpipe/statics.h"
+#include "fullpipe/modal.h"
#include "fullpipe/constants.h"
@@ -383,7 +384,7 @@ void ModalMap::initMap() {
PictureObject *pic;
for (int i = 0; i < 200; i++) {
- if (!g_fp->_mapTable[i] >> 16)
+ if (!(g_fp->_mapTable[i] >> 16))
break;
pic = _mapScene->getPictureObjectById(g_fp->_mapTable[i] >> 16, 0);
@@ -718,7 +719,7 @@ bool ModalCredits::init(int counterdiff) {
g_fp->_modalObject = menu;
- menu->_field_34 = 1;
+ menu->_mfield_34 = 1;
}
return true;
@@ -750,17 +751,808 @@ void ModalCredits::update() {
}
ModalMainMenu::ModalMainMenu() {
- warning("STUB: ModalMainMenu::ModalMainMenu()");
+ _areas.clear();
+
+ _lastArea = 0;
+ _hoverAreaId = 0;
+ _mfield_34 = 0;
+ _scene = g_fp->accessScene(SC_MAINMENU);
+ _debugKeyCount = 0;
+ _sliderOffset = 0;
+ _screct.left = g_fp->_sceneRect.left;
+ _screct.top = g_fp->_sceneRect.top;
+ _screct.right = g_fp->_sceneRect.right;
+ _screct.bottom = g_fp->_sceneRect.bottom;
+
+ if (g_fp->_currentScene) {
+ _bgX = g_fp->_currentScene->_x;
+ _bgY = g_fp->_currentScene->_y;
+ } else {
+ _bgX = 0;
+ _bgY = 0;
+ }
+
+ g_fp->_sceneRect.top = 0;
+ g_fp->_sceneRect.left = 0;
+ g_fp->_sceneRect.right = 800;
+ g_fp->_sceneRect.bottom = 600;
+
+ MenuArea *area;
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_EXIT_L;
+ area->picObjD = 0;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_CONTINUE_L;
+ area->picObjD = 0;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+
+ if (isSaveAllowed()) {
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_SAVE_L;
+ area->picObjD = 0;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+ }
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_LOAD_L;
+ area->picObjD = 0;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_RESTART_L;
+ area->picObjD = 0;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_AUTHORS_L;
+ area->picObjD = 0;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_SLIDER_L;
+ area->picObjD = _scene->getPictureObjectById(PIC_MNU_SLIDER_D, 0);
+ area->picObjD->_flags |= 4;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+ _menuSliderIdx = _areas.size() - 1;
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_MUSICSLIDER_L;
+ area->picObjD = _scene->getPictureObjectById(PIC_MNU_MUSICSLIDER_D, 0);
+ area->picObjD->_flags |= 4;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+ _musicSliderIdx = _areas.size() - 1;
+
+ if (g_fp->_mainMenu_debugEnabled)
+ enableDebugMenuButton();
+
+ setSliderPos();
+}
+
+void ModalMainMenu::update() {
+ _scene->draw();
+}
+
+bool ModalMainMenu::handleMessage(ExCommand *message) {
+ if (message->_messageKind != 17)
+ return false;
+
+ Common::Point point;
+
+ if (message->_messageNum == 29) {
+ point.x = message->_x;
+ point.y = message->_y;
+
+ int numarea = checkHover(point);
+
+ if (numarea >= 0) {
+ if (numarea == _menuSliderIdx) {
+ _lastArea = _areas[_menuSliderIdx];
+ _sliderOffset = _lastArea->picObjL->_ox - point.x;
+
+ return false;
+ }
+
+ if (numarea == _musicSliderIdx) {
+ _lastArea = _areas[_musicSliderIdx];
+ _sliderOffset = _lastArea->picObjL->_ox - point.x;
+
+ return false;
+ }
+
+ _hoverAreaId = _areas[numarea]->picIdL;
+ }
+
+ return false;
+ }
+
+ if (message->_messageNum == 30) {
+ if (_lastArea)
+ _lastArea = 0;
+
+ return false;
+ }
+
+ if (message->_messageNum != 36)
+ return false;
+
+ if (message->_keyCode == 27)
+ _hoverAreaId = PIC_MNU_CONTINUE_L;
+ else
+ enableDebugMenu(message->_keyCode);
+
+ return false;
+}
+
+bool ModalMainMenu::init(int counterdiff) {
+ switch (_hoverAreaId) {
+ case PIC_MNU_RESTART_L:
+ g_fp->restartGame();
+
+ if (this == g_fp->_modalObject)
+ return false;
+
+ delete this;
+ break;
+
+ case PIC_MNU_EXIT_L:
+ {
+ ModalQuery *mq = new ModalQuery();
+
+ g_fp->_modalObject = mq;
+
+ mq->_parentObj = this;
+ mq->create(_scene, (PictureObject *)_scene->_picObjList[0], PIC_MEX_BGR);
+
+ _hoverAreaId = 0;
+
+ return true;
+ }
+
+ case PIC_MNU_DEBUG_L:
+ g_fp->_gameLoader->unloadScene(SC_MAINMENU);
+ g_fp->_sceneRect = _screct;
+
+ if (!g_fp->_currentScene)
+ error("ModalMainMenu::init: Bad state");
+
+ g_fp->_currentScene->_x = _bgX;
+ g_fp->_currentScene->_y = _bgY;
+
+ g_fp->_gameLoader->preloadScene(g_fp->_currentScene->_sceneId, SC_DBGMENU);
+
+ return false;
+
+ case PIC_MNU_CONTINUE_L:
+ if (!_mfield_34) {
+ g_fp->_gameLoader->unloadScene(SC_MAINMENU);
+ g_fp->_sceneRect = _screct;
+
+ if (g_fp->_currentScene) {
+ g_fp->_currentScene->_x = _bgX;
+ g_fp->_currentScene->_y = _bgY;
+ }
+
+ return false;
+ }
+
+ g_fp->restartGame();
+
+ if (this == g_fp->_modalObject)
+ return false;
+
+ delete this;
+ break;
+
+ case PIC_MNU_AUTHORS_L:
+ g_fp->_modalObject = new ModalCredits();
+ g_fp->_modalObject->_parentObj = this;
+
+ _hoverAreaId = 0;
+
+ return true;
+
+ case PIC_MNU_SAVE_L:
+ case PIC_MNU_LOAD_L:
+ {
+ ModalSaveGame *sg = new ModalSaveGame();
+
+ g_fp->_modalObject = sg;
+ g_fp->_modalObject->_parentObj = _parentObj;
+
+ int mode = 0;
+ if (_hoverAreaId == PIC_MNU_SAVE_L)
+ mode = 1;
+
+ sg->setup(g_fp->accessScene(SC_MAINMENU), mode);
+ sg->setScene(g_fp->accessScene(SC_MAINMENU));
+
+ sg->_rect = _screct;
+ sg->_oldBgX = _bgX;
+ sg->_oldBgY = _bgY;
+
+ delete this;
+ }
+
+ break;
+
+ default:
+ if (_lastArea) {
+ updateSliderPos();
+ } else {
+ g_fp->_cursorId = PIC_CSR_DEFAULT;
+
+ int idx = checkHover(g_fp->_mouseScreenPos);
+
+ if (idx < 0)
+ goto LABEL_40;
+
+ g_fp->_cursorId = PIC_CSR_DEFAULT;
+
+ if (idx != this->_menuSliderIdx && idx != this->_musicSliderIdx )
+ goto LABEL_40;
+ }
+
+ g_fp->_cursorId = PIC_CSR_LIFT;
+
+ LABEL_40:
+ g_fp->setCursor(g_fp->_cursorId);
+
+ updateVolume();
+
+ return true;
+ }
+
+ return true;
+}
+
+void ModalMainMenu::updateVolume() {
+ if (g_fp->_soundEnabled ) {
+ for (int s = 0; s < g_fp->_currSoundListCount; s++)
+ for (int i = 0; i < g_fp->_currSoundList1[s]->getCount(); i++) {
+ updateSoundVolume(g_fp->_currSoundList1[s]->getSoundByIndex(i));
+ }
+ }
+}
+
+void ModalMainMenu::updateSoundVolume(Sound *snd) {
+ if (!snd->_objectId)
+ return;
+
+ StaticANIObject *ani = g_fp->_currentScene->getStaticANIObject1ById(snd->_objectId, -1);
+ if (!ani)
+ return;
+
+ int a, b;
+
+ if (ani->_ox >= _screct.left) {
+ int par, pan;
+
+ if (ani->_ox <= _screct.right) {
+ int dx;
+
+ if (ani->_oy <= _screct.bottom) {
+ if (ani->_oy >= _screct.top) {
+ snd->setPanAndVolume(g_fp->_sfxVolume, 0);
+
+ return;
+ }
+ dx = _screct.top - ani->_oy;
+ } else {
+ dx = ani->_oy - _screct.bottom;
+ }
+
+ par = 0;
+
+ if (dx > 800) {
+ snd->setPanAndVolume(-3500, 0);
+ return;
+ }
+
+ pan = -3500;
+ a = g_fp->_sfxVolume - (-3500);
+ b = 800 - dx;
+ } else {
+ int dx = ani->_ox - _screct.right;
+
+ if (dx > 800) {
+ snd->setPanAndVolume(-3500, 0);
+ return;
+ }
+
+ pan = -3500;
+ par = dx * (-3500) / -800;
+ a = g_fp->_sfxVolume - (-3500);
+ b = 800 - dx;
+ }
+
+ int32 pp = b * a; //(0x51EB851F * b * a) >> 32) >> 8; // TODO FIXME
+
+ snd->setPanAndVolume(pan + (pp >> 31) + pp, par);
+
+ return;
+ }
+
+ int dx = _screct.left - ani->_ox;
+ if (dx <= 800) {
+ int32 s = 0x51EB851F * (800 - dx) * (g_fp->_sfxVolume - (-3500)); // TODO FIXME
+ int32 p = -3500 + (s >> 31) + (s >> 8);
+
+ if (p > g_fp->_sfxVolume)
+ p = g_fp->_sfxVolume;
+
+ snd->setPanAndVolume(p, dx * (-3500) / 800);
+ } else {
+ snd->setPanAndVolume(-3500, 0);
+ }
+
+ warning("STUB: ModalMainMenu::updateSoundVolume()");
+}
+
+void ModalMainMenu::updateSliderPos() {
+ if (_lastArea->picIdL == PIC_MNU_SLIDER_L) {
+ int x = g_fp->_mouseScreenPos.x + _sliderOffset;
+
+ if (x >= 65) {
+ if (x > 238)
+ x = 238;
+ } else {
+ x = 65;
+ }
+
+ _lastArea->picObjD->setOXY(x, _lastArea->picObjD->_oy);
+ _lastArea->picObjL->setOXY(x, _lastArea->picObjD->_oy);
+
+ int vol = 1000 * (3 * x - 195);
+ g_fp->_sfxVolume = vol / 173 - 3000;
+
+ if (!(vol / 173))
+ g_fp->_sfxVolume = -10000;
+
+ g_fp->updateSoundVolume();
+ } else if (_lastArea->picIdL == PIC_MNU_MUSICSLIDER_L) {
+ int x = g_fp->_mouseScreenPos.x + _sliderOffset;
+
+ if (x >= 65) {
+ if (x > 238)
+ x = 238;
+ } else {
+ x = 65;
+ }
+
+ _lastArea->picObjD->setOXY(x, _lastArea->picObjD->_oy);
+ _lastArea->picObjL->setOXY(x, _lastArea->picObjD->_oy);
+
+ g_fp->setMusicVolume(255 * (x - 65) / 173);
+ }
+}
+
+int ModalMainMenu::checkHover(Common::Point &point) {
+ for (uint i = 0; i < _areas.size(); i++) {
+ if (_areas[i]->picObjL->isPixelHitAtPos(point.x, point.y)) {
+ _areas[i]->picObjL->_flags |= 4;
+
+ return i;
+ } else {
+ _areas[i]->picObjL->_flags &= 0xFFFB;
+ }
+ }
+
+ if (isOverArea(_areas[_menuSliderIdx]->picObjL, &point)) {
+ _areas[_menuSliderIdx]->picObjL->_flags |= 4;
+
+ return _menuSliderIdx;
+ }
+
+ if (isOverArea(_areas[_musicSliderIdx]->picObjL, &point)) {
+ _areas[_musicSliderIdx]->picObjL->_flags |= 4;
+
+ return _musicSliderIdx;
+ }
- _field_34 = 0;
+ return -1;
}
+bool ModalMainMenu::isOverArea(PictureObject *obj, Common::Point *point) {
+ Common::Point p;
+
+ obj->getDimensions(&p);
+
+ int left = point->x - 8;
+ int right = point->x + 12;
+ int down = point->y - 11;
+ int up = point->y + 9;
+
+ if (left >= obj->_ox && right < obj->_ox + p.x && down >= obj->_oy && up < obj->_oy + p.y)
+ return true;
+
+ return false;
+}
+
+bool ModalMainMenu::isSaveAllowed() {
+ if (!g_fp->_isSaveAllowed)
+ return false;
+
+ if (g_fp->_aniMan->_flags & 0x100)
+ return false;
+
+ for (Common::Array<MessageQueue *>::iterator s = g_fp->_globalMessageQueueList->begin(); s != g_fp->_globalMessageQueueList->end(); ++s) {
+ if (!(*s)->_isFinished && ((*s)->getFlags() & 1))
+ return false;
+ }
+
+ return true;
+}
+
+void ModalMainMenu::enableDebugMenu(char c) {
+ const char deb[] = "DEBUGER";
+
+ if (c == deb[_debugKeyCount]) {
+ _debugKeyCount++;
+
+ if (deb[_debugKeyCount] )
+ return;
+
+ enableDebugMenuButton();
+ }
+
+ _debugKeyCount = 0;
+}
+
+void ModalMainMenu::enableDebugMenuButton() {
+ MenuArea *area;
+
+ for (uint i = 0; i < _areas.size(); i++)
+ if (_areas[i]->picIdL == PIC_MNU_DEBUG_L)
+ return;
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_DEBUG_L;
+ area->picObjD = 0;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
+}
+
+void ModalMainMenu::setSliderPos() {
+ int x = 173 * (g_fp->_sfxVolume + 3000) / 3000 + 65;
+ PictureObject *obj = _areas[_menuSliderIdx]->picObjD;
+
+ if (x >= 65) {
+ if (x > 238)
+ x = 238;
+ } else {
+ x = 65;
+ }
+
+ obj->setOXY(x, obj->_oy);
+ _areas[_menuSliderIdx]->picObjL->setOXY(x, obj->_oy);
+
+ x = 173 * g_fp->_musicVolume / 255 + 65;
+ obj = _areas[_musicSliderIdx]->picObjD;
+
+ if (x >= 65) {
+ if (x > 238)
+ x = 238;
+ } else {
+ x = 65;
+ }
+
+ obj->setOXY(x, obj->_oy);
+ _areas[_musicSliderIdx]->picObjL->setOXY(x, obj->_oy);
+}
+
+ModalHelp::ModalHelp() {
+ _mainMenuScene = 0;
+ _bg = 0;
+ _isRunning = false;
+ _rect = g_fp->_sceneRect;
+ _hx = g_fp->_currentScene->_x;
+ _hy = g_fp->_currentScene->_y;
+
+ g_fp->_sceneRect.left = 0;
+ g_fp->_sceneRect.bottom = 600;
+ g_fp->_sceneRect.top = 0;
+ g_fp->_sceneRect.right = 800;
+}
+
+ModalHelp::~ModalHelp() {
+ g_fp->_gameLoader->unloadScene(SC_MAINMENU);
+
+ g_fp->_sceneRect = _rect;
+
+ g_fp->_currentScene->_x = _hx;
+ g_fp->_currentScene->_y = _hy;
+}
+
+bool ModalHelp::handleMessage(ExCommand *cmd) {
+ if (cmd->_messageKind == 17) {
+ int msg = cmd->_messageNum;
+
+ if (msg == 29 || msg == 36 || msg == 107) {
+ _isRunning = 0;
+
+ return true;
+ }
+ }
+
+ return false;
+}
+
+bool ModalHelp::init(int counterdiff) {
+ g_fp->setCursor(PIC_CSR_DEFAULT);
+
+ return _isRunning;
+}
+
+void ModalHelp::update() {
+ g_fp->_sceneRect.left = 0;
+ g_fp->_sceneRect.top = 0;
+ g_fp->_sceneRect.right = 800;
+ g_fp->_sceneRect.bottom = 600;
+
+ _bg->draw(0, 0, 0, 0);
+}
+
+void ModalHelp::launch() {
+ _mainMenuScene = g_fp->accessScene(SC_MAINMENU);
+
+ if (_mainMenuScene) {
+ _bg = _mainMenuScene->getPictureObjectById(PIC_HLP_BGR, 0)->_picture;
+ _isRunning = 1;
+ }
+}
+
+ModalQuery::ModalQuery() {
+ _picObjList = 0;
+ _bg = 0;
+ _okBtn = 0;
+ _cancelBtn = 0;
+ _queryResult = -1;
+}
+
+ModalQuery::~ModalQuery() {
+ _bg->_flags &= 0xFFFB;
+ _cancelBtn->_flags &= 0xFFFB;
+ _okBtn->_flags &= 0xFFFB;
+}
+
+bool ModalQuery::create(Scene *sc, PictureObject *picObjList, int id) {
+ if (id == PIC_MEX_BGR) {
+ _bg = sc->getPictureObjectById(PIC_MEX_BGR, 0);
+
+ if (!_bg)
+ return false;
+
+ _okBtn = sc->getPictureObjectById(PIC_MEX_OK, 0);
+
+ if (!_okBtn)
+ return false;
+
+ _cancelBtn = sc->getPictureObjectById(PIC_MEX_CANCEL, 0);
+
+ if (!_cancelBtn)
+ return 0;
+ } else {
+ if (id != PIC_MOV_BGR)
+ return false;
+
+ _bg = sc->getPictureObjectById(PIC_MOV_BGR, 0);
+
+ if (!_bg)
+ return false;
+
+ _okBtn = sc->getPictureObjectById(PIC_MOV_OK, 0);
+
+ if (!_okBtn)
+ return false;
+
+ _cancelBtn = sc->getPictureObjectById(PIC_MOV_CANCEL, 0);
+
+ if (!_cancelBtn)
+ return false;
+ }
+
+ _queryResult = -1;
+ _picObjList = picObjList;
+
+ return true;
+}
+
+void ModalQuery::update() {
+ if (_picObjList)
+ _picObjList->draw();
+
+ _bg->draw();
+
+ if (_okBtn->_flags & 4)
+ _okBtn->draw();
+
+ if (_cancelBtn->_flags & 4)
+ _cancelBtn->draw();
+}
+
+bool ModalQuery::handleMessage(ExCommand *cmd) {
+ if (cmd->_messageKind == 17) {
+ if (cmd->_messageNum == 29) {
+ if (_okBtn->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y)) {
+ _queryResult = 1;
+
+ return false;
+ }
+
+ if (_cancelBtn->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y))
+ _queryResult = 0;
+ } else if (cmd->_messageNum == 36 && cmd->_keyCode == 27) {
+ _queryResult = 0;
+
+ return false;
+ }
+ }
+
+ return false;
+}
+
+bool ModalQuery::init(int counterdiff) {
+ if (_okBtn->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y))
+ _okBtn->_flags |= 4;
+ else
+ _okBtn->_flags &= 0xFFFB;
+
+ if (_cancelBtn->isPointInside(g_fp->_mouseScreenPos.x, g_fp->_mouseScreenPos.y))
+ _cancelBtn->_flags |= 4;
+ else
+ _cancelBtn->_flags &= 0xFFFB;
+
+ if (_queryResult == -1) {
+ return true;
+ } else {
+ if (_bg->_id == PIC_MEX_BGR) {
+ _cancelBtn->_flags &= 0xFFFB;
+ _okBtn->_flags &= 0xFFFB;
+
+ if (_queryResult == 1) {
+ warning("STUB: ModalQuery::init()");
+ //sceneFade(g_vrtDrawHandle, (Scene *)this->_picObjList, 0);
+
+ //if (inputArFlag) {
+ // g_needRestart = 1;
+ // return 0;
+ //}
+ //SendMessageA(hwndCallback, WM_DESTROY, 0, 0);
+ }
+ }
+ }
+
+ return false;
+}
+
+ModalSaveGame::ModalSaveGame() {
+ _oldBgX = 0;
+ _oldBgY = 0;
+
+ _bgr = 0;
+ _okD = 0;
+ _okL = 0;
+ _cancelD = 0;
+ _cancelL = 0;
+ _emptyD = 0;
+ _emptyL = 0;
+ _queryRes = -1;
+ _rect = g_fp->_sceneRect;
+ _queryDlg = 0;
+ _mode = 1;
+}
+
+ModalSaveGame::~ModalSaveGame() {
+ g_fp->_sceneRect = _rect;
+
+ _arrayD.clear();
+ _arrayL.clear();
+
+ for (uint i = 0; i < _filenames.size(); i++)
+ free(_filenames[i]);
+
+ _filenames.clear();
+}
+
+void ModalSaveGame::setScene(Scene *sc) {
+ _queryRes = -1;
+ _menuScene = sc;
+}
+
+void ModalSaveGame::processKey(int key) {
+ if (key == 27)
+ _queryRes = 0;
+}
+
+bool ModalSaveGame::init(int counterdiff) {
+ if (_queryDlg) {
+ if (!_queryDlg->init(counterdiff)) {
+ if (!_queryDlg->getQueryResult())
+ _queryRes = -1;
+
+ delete _queryDlg;
+ _queryDlg = 0;
+ }
+
+ return true;
+ }
+
+ if (_queryRes == -1)
+ return true;
+
+ g_fp->_sceneRect = _rect;
+
+ if (g_fp->_currentScene) {
+ g_fp->_currentScene->_x = _oldBgX;
+ g_fp->_currentScene->_y = _oldBgY;
+ }
+
+ if (!_queryRes) {
+ ModalMainMenu *m = new ModalMainMenu;
+
+ g_fp->_modalObject = m;
+
+ m->_parentObj = _parentObj;
+ m->_screct = _rect;
+ m->_bgX = _oldBgX;
+ m->_bgY = _oldBgY;
+
+ delete this;
+
+ return true;
+ }
+
+ return false;
+}
+
+void ModalSaveGame::setup(Scene *sc, int mode) {
+ warning("STUB: ModalSaveGame::setup()");
+}
+
+char *ModalSaveGame::getSaveName() {
+ if (_queryRes < 0)
+ return 0;
+
+ return _filenames[_queryRes];
+}
+
+
void FullpipeEngine::openHelp() {
- warning("STUB: FullpipeEngine::openHelp()");
+ if (!_modalObject) {
+ ModalHelp *help = new ModalHelp;
+
+ _modalObject = help;
+
+ help->launch();
+ }
}
void FullpipeEngine::openMainMenu() {
- warning("STUB: FullpipeEngine::openMainMenu()");
+ ModalMainMenu *menu = new ModalMainMenu;
+
+ menu->_parentObj = g_fp->_modalObject;
+
+ g_fp->_modalObject = menu;
}
} // End of namespace Fullpipe
diff --git a/engines/fullpipe/modal.h b/engines/fullpipe/modal.h
index 438e341c1c..e2962ab595 100644
--- a/engines/fullpipe/modal.h
+++ b/engines/fullpipe/modal.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -26,6 +26,8 @@
namespace Fullpipe {
class PictureObject;
+class Picture;
+class Sound;
class BaseModalObject {
public:
@@ -146,19 +148,131 @@ class ModalCredits : public BaseModalObject {
virtual void saveload() {}
};
+struct MenuArea {
+ int picIdL;
+ PictureObject *picObjD;
+ PictureObject *picObjL;
+};
+
class ModalMainMenu : public BaseModalObject {
public:
- int _field_34;
+ Scene *_scene;
+ int _hoverAreaId;
+ Common::Array<MenuArea *> _areas;
+ int _menuSliderIdx;
+ int _musicSliderIdx;
+ MenuArea *_lastArea;
+ int _sliderOffset;
+ int _mfield_34;
+ Common::Rect _screct;
+ int _bgX;
+ int _bgY;
+ int _debugKeyCount;
public:
ModalMainMenu();
virtual ~ModalMainMenu() {}
virtual bool pollEvent() { return true; }
+ virtual bool handleMessage(ExCommand *message);
+ virtual bool init(int counterdiff);
+ virtual void update();
+ virtual void saveload() {}
+
+private:
+ bool isSaveAllowed();
+ void enableDebugMenuButton();
+ void setSliderPos();
+ void enableDebugMenu(char c);
+ int checkHover(Common::Point &point);
+ void updateVolume();
+ void updateSoundVolume(Sound *snd);
+ void updateSliderPos();
+ bool isOverArea(PictureObject *obj, Common::Point *point);
+};
+
+class ModalHelp : public BaseModalObject {
+public:
+ Scene *_mainMenuScene;
+ Picture *_bg;
+ bool _isRunning;
+ Common::Rect _rect;
+ int _hx;
+ int _hy;
+
+public:
+ ModalHelp();
+ virtual ~ModalHelp();
+
+ virtual bool pollEvent() { return true; }
+ virtual bool handleMessage(ExCommand *message);
+ virtual bool init(int counterdiff);
+ virtual void update();
+ virtual void saveload() {}
+
+ void launch();
+};
+
+class ModalQuery : public BaseModalObject {
+public:
+ ModalQuery();
+ virtual ~ModalQuery();
+
+ virtual bool pollEvent() { return true; }
+ virtual bool handleMessage(ExCommand *message);
+ virtual bool init(int counterdiff);
+ virtual void update();
+ virtual void saveload() {}
+
+ bool create(Scene *sc, PictureObject *picObjList, int picId);
+ int getQueryResult() { return _queryResult; }
+
+
+private:
+ PictureObject *_picObjList;
+ PictureObject *_bg;
+ PictureObject *_okBtn;
+ PictureObject *_cancelBtn;
+ int _queryResult;
+
+};
+
+class ModalSaveGame : public BaseModalObject {
+public:
+ ModalSaveGame();
+ virtual ~ModalSaveGame();
+
+ virtual bool pollEvent() { return true; }
virtual bool handleMessage(ExCommand *message) { return false; }
- virtual bool init(int counterdiff) { return true; }
+ virtual bool init(int counterdiff);
virtual void update() {}
virtual void saveload() {}
+
+ void setScene(Scene *sc);
+ void setup(Scene *sc, int mode);
+ void processKey(int key);
+
+ char *getSaveName();
+
+ Common::Rect _rect;
+ int _oldBgX;
+ int _oldBgY;
+ PictureObject *_bgr;
+ PictureObject *_okD;
+ PictureObject *_okL;
+ PictureObject *_cancelD;
+ PictureObject *_cancelL;
+ PictureObject *_emptyD;
+ PictureObject *_emptyL;
+ PictureObject *_fullD;
+ PictureObject *_fullL;
+ Scene *_menuScene;
+ int _mode;
+ ModalQuery *_queryDlg;
+ Common::Array <char *> _filenames;
+ Common::Array <PictureObject *> _arrayL;
+ Common::Array <PictureObject *> _arrayD;
+ int _queryRes;
};
diff --git a/engines/fullpipe/module.mk b/engines/fullpipe/module.mk
index f6a94de421..3962fe64ba 100644
--- a/engines/fullpipe/module.mk
+++ b/engines/fullpipe/module.mk
@@ -33,6 +33,7 @@ MODULE_OBJS = \
scenes/scene06.o \
scenes/scene07.o \
scenes/scene08.o \
+ scenes/scene09.o \
scenes/scene10.o \
scenes/scene11.o \
scenes/scene12.o \
@@ -49,7 +50,9 @@ MODULE_OBJS = \
scenes/scene24.o \
scenes/scene25.o \
scenes/scene26.o \
+ scenes/scene27.o \
scenes/scene28.o \
+ scenes/scene29.o \
scenes/scene30.o \
scenes/scene31.o \
scenes/scene32.o \
diff --git a/engines/fullpipe/motion.cpp b/engines/fullpipe/motion.cpp
index f0318581f1..35da154570 100644
--- a/engines/fullpipe/motion.cpp
+++ b/engines/fullpipe/motion.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -159,10 +159,72 @@ void MctlCompound::freeItems() {
_motionControllers[i]->_motionControllerObj->freeItems();
}
-MessageQueue *MctlCompound::method34(StaticANIObject *subj, int xpos, int ypos, int fuzzyMatch, int staticsId) {
- warning("STUB: MctlCompound::method34()");
+MessageQueue *MctlCompound::method34(StaticANIObject *ani, int sourceX, int sourceY, int fuzzyMatch, int staticsId) {
+ int idx = -1;
+ int sourceIdx = -1;
- return 0;
+ if (!ani)
+ return 0;
+
+ for (uint i = 0; i < _motionControllers.size(); i++) {
+ if (_motionControllers[i]->_movGraphReactObj) {
+ if (_motionControllers[i]->_movGraphReactObj->pointInRegion(ani->_ox, ani->_oy)) {
+ idx = i;
+ break;
+ }
+ }
+ }
+
+ for (uint i = 0; i < _motionControllers.size(); i++) {
+ if (_motionControllers[i]->_movGraphReactObj) {
+ if (_motionControllers[i]->_movGraphReactObj->pointInRegion(sourceX, sourceY)) {
+ sourceIdx = i;
+ break;
+ }
+ }
+ }
+
+ if (idx == -1)
+ return 0;
+
+ if (sourceIdx == -1)
+ return 0;
+
+ if (idx == sourceIdx)
+ return _motionControllers[idx]->_motionControllerObj->method34(ani, sourceX, sourceY, fuzzyMatch, staticsId);
+
+ MctlConnectionPoint *cp = findClosestConnectionPoint(ani->_ox, ani->_oy, idx, sourceX, sourceY, sourceIdx, &sourceIdx);
+
+ if (!cp)
+ return 0;
+
+ MessageQueue *mq = _motionControllers[idx]->_motionControllerObj->doWalkTo(ani, cp->_connectionX, cp->_connectionY, 1, cp->_field_14);
+
+ if (!mq)
+ return 0;
+
+ for (uint i = 0; i < cp->_messageQueueObj->getCount(); i++) {
+ ExCommand *ex = new ExCommand(cp->_messageQueueObj->getExCommandByIndex(i));
+
+ ex->_excFlags |= 2;
+
+ mq->addExCommandToEnd(ex);
+ }
+
+ ExCommand *ex = new ExCommand(ani->_id, 51, 0, sourceX, sourceY, 0, 1, 0, 0, 0);
+
+ ex->_excFlags |= 2;
+ ex->_field_20 = fuzzyMatch;
+ ex->_keyCode = ani->_okeyCode;
+
+ mq->addExCommandToEnd(ex);
+
+ if (!mq->chain(ani)) {
+ delete mq;
+ return 0;
+ }
+
+ return mq;
}
MessageQueue *MctlCompound::doWalkTo(StaticANIObject *subj, int xpos, int ypos, int fuzzyMatch, int staticsId) {
@@ -255,7 +317,7 @@ int MctlLadder::collisionDetection(StaticANIObject *man) {
if ((double)(man->_oy - _ladderY) / (double)_height < 0.0)
delta = -0.5;
- else
+ else
delta = 0.5;
int res = (int)((double)(man->_oy - _ladderY) / (double)_height + delta);
@@ -269,7 +331,7 @@ int MctlLadder::collisionDetection(StaticANIObject *man) {
void MctlLadder::addObject(StaticANIObject *obj) {
if (findObjectPos(obj) < 0) {
MctlLadderMovement *movement = new MctlLadderMovement;
-
+
if (initMovement(obj, movement)) {
_mgm.addItem(obj->_id);
_movements.push_back(movement);
@@ -598,6 +660,14 @@ void MovGraph::calcNodeDistancesAndAngles() {
}
}
+int MovGraph::getItemIndexByStaticAni(StaticANIObject *ani) {
+ for (uint i = 0; i < _items.size(); i++)
+ if (_items[i]->ani == ani)
+ return i;
+
+ return -1;
+}
+
int MovGraph2::getItemIndexByGameObjectId(int objectId) {
for (uint i = 0; i < _items2.size(); i++)
if (_items2[i]->_objectId == objectId)
@@ -1693,7 +1763,7 @@ double MovGraph2::findMinPath(LinkInfo *linkInfoSource, LinkInfo *linkInfoDest,
} else if (linkInfoSource->link) {
linkInfoWorkSource.node = linkInfoSource->link->_movGraphNode1;
linkInfoWorkSource.link = 0;
-
+
Common::Array<MovGraphLink *> tmpList;
double newDistance = findMinPath(&linkInfoWorkSource, linkInfoDest, &tmpList);
@@ -1709,9 +1779,9 @@ double MovGraph2::findMinPath(LinkInfo *linkInfoSource, LinkInfo *linkInfoDest,
linkInfoWorkSource.link = 0;
linkInfoWorkSource.node = linkInfoSource->link->_movGraphNode2;
-
+
tmpList.clear();
-
+
newDistance = findMinPath(&linkInfoWorkSource, linkInfoDest, &tmpList);
if (newDistance >= 0 && (minDistance < 0.0 || newDistance < minDistance)) {
@@ -1754,6 +1824,89 @@ void MGM::clear() {
_items.clear();
}
+MessageQueue *MGM::genMQ(StaticANIObject *ani, int staticsIndex, int staticsId, int *resStatId, Common::Point **pointArr) {
+ int idx = getItemIndexById(ani->_id);
+
+ if (idx == -1)
+ return 0;
+
+ int stid = staticsId;
+
+ if (!staticsId) {
+ if (ani->_movement) {
+ stid = ani->_movement->_staticsObj2->_staticsId;
+ } else {
+ if (!ani->_statics)
+ return 0;
+
+ stid = ani->_statics->_staticsId;
+ }
+ }
+
+ if (stid == staticsIndex)
+ return new MessageQueue(g_fp->_globalMessageQueueList->compact());
+
+ int startidx = getStaticsIndexById(idx, stid);
+ int endidx = getStaticsIndexById(idx, staticsIndex);
+ int subidx = startidx + endidx * _items[idx]->statics.size();
+
+ if (!_items[idx]->subItems[subidx]->movement) {
+ clearMovements2(idx);
+ recalcOffsets(idx, startidx, endidx, 0, 1);
+ }
+
+ if (!_items[idx]->subItems[subidx]->movement)
+ return 0;
+
+ MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact());
+ Common::Point point;
+ ExCommand *ex;
+
+ int i = 0;
+ do {
+ subidx = startidx + endidx * _items[idx]->statics.size();
+
+ _items[idx]->subItems[subidx]->movement->calcSomeXY(point, 0);
+
+ if (pointArr) {
+ int sz;
+
+ if (_items[idx]->subItems[subidx]->movement->_currMovement)
+ sz = _items[idx]->subItems[subidx]->movement->_currMovement->_dynamicPhases.size();
+ else
+ sz = _items[idx]->subItems[subidx]->movement->_dynamicPhases.size();
+
+ ex = new ExCommand2(20, ani->_id, &pointArr[i], sz);
+
+ ex->_messageNum = _items[idx]->subItems[subidx]->movement->_id;
+ } else {
+ ex = new ExCommand(ani->_id, 1, _items[idx]->subItems[subidx]->movement->_id, 0, 0, 0, 1, 0, 0, 0);
+ }
+
+ ex->_keyCode = ani->_okeyCode;
+ ex->_field_3C = 1;
+ ex->_field_24 = 1;
+
+ mq->addExCommandToEnd(ex);
+
+ if (resStatId)
+ *resStatId = _items[idx]->subItems[subidx]->movement->_id;
+
+ startidx = _items[idx]->subItems[subidx]->staticsIndex;
+
+ uint step;
+
+ if (_items[idx]->subItems[subidx]->movement->_currMovement)
+ step = _items[idx]->subItems[subidx]->movement->_currMovement->_dynamicPhases.size();
+ else
+ step = _items[idx]->subItems[subidx]->movement->_dynamicPhases.size();
+
+ i += step;
+ } while (startidx != endidx);
+
+ return mq;
+}
+
MGMItem::MGMItem() {
objId = 0;
}
@@ -1811,11 +1964,228 @@ int MGM::getItemIndexById(int objId) {
}
MessageQueue *MGM::genMovement(MGMInfo *mgminfo) {
- warning("STUB: MGM::genMovement()");
+ if (!mgminfo->ani)
+ return 0;
- return 0;
+ Movement *mov = mgminfo->ani->_movement;
+
+ if (!mov && !mgminfo->ani->_statics)
+ return 0;
+
+ if (!(mgminfo->flags & 1)) {
+ if (mov)
+ mgminfo->staticsId1 = mov->_staticsObj2->_staticsId;
+ else
+ mgminfo->staticsId1 = mgminfo->ani->_statics->_staticsId;
+ }
+
+ Common::Point point;
+
+ if (!(mgminfo->flags & 0x10) || !(mgminfo->flags & 0x20)) {
+ int nx = mgminfo->ani->_ox;
+ int ny = mgminfo->ani->_oy;
+
+ if (mgminfo->ani->_movement) {
+ mgminfo->ani->calcNextStep(&point);
+
+ nx += point.x;
+ ny += point.y;
+ }
+
+ if (!(mgminfo->flags & 0x10))
+ mgminfo->x2 = nx;
+
+ if (!(mgminfo->flags & 0x20))
+ mgminfo->y2 = ny;
+ }
+
+ mov = mgminfo->ani->getMovementById(mgminfo->movementId);
+
+ if (!mov)
+ return 0;
+
+ int itemIdx = getItemIndexById(mgminfo->ani->_id);
+ int subIdx = getStaticsIndexById(itemIdx, mgminfo->staticsId1);
+ int st2idx = getStaticsIndexById(itemIdx, mov->_staticsObj1->_staticsId);
+ int st1idx = getStaticsIndexById(itemIdx, mov->_staticsObj2->_staticsId);
+ int subOffset = getStaticsIndexById(itemIdx, mgminfo->staticsId2);
+
+ clearMovements2(itemIdx);
+ recalcOffsets(itemIdx, subIdx, st2idx, 0, 1);
+ clearMovements2(itemIdx);
+ recalcOffsets(itemIdx, st1idx, subOffset, 0, 1);
+
+ MGMSubItem *sub1 = _items[itemIdx]->subItems[subIdx + st2idx * _items[itemIdx]->statics.size()];
+ MGMSubItem *sub2 = _items[itemIdx]->subItems[st1idx + subOffset * _items[itemIdx]->statics.size()];
+
+ if (subIdx != st2idx && !sub1->movement)
+ return 0;
+
+ if (st1idx != subOffset && !sub2->movement)
+ return 0;
+
+ int n1x = mgminfo->x1 - mgminfo->x2 - sub1->x - sub2->x;
+ int n1y = mgminfo->y1 - mgminfo->y2 - sub1->y - sub2->y;
+
+ Common::Point point1;
+
+ mov->calcSomeXY(point1, 0);
+
+ int n2x = point1.x;
+ int n2y = point1.y;
+ int mult;
+ int len;
+
+ if (mgminfo->flags & 0x40) {
+ mult = mgminfo->field_10;
+ len = -1;
+ n2x *= mult;
+ n2y *= mult;
+ } else {
+ calcLength(&point, mov, n1x, n1y, &mult, &len, 1);
+ n2x = point.x;
+ n2y = point.y;
+ }
+
+ if (!(mgminfo->flags & 2)) {
+ len = -1;
+ n2x = mult * point1.x;
+ n1x = mult * point1.x;
+ mgminfo->x1 = mgminfo->x2 + mult * point1.x + sub1->x + sub2->x;
+ }
+
+ if (!(mgminfo->flags & 4)) {
+ n2y = mult * point1.y;
+ n1y = mult * point1.y;
+ len = -1;
+ mgminfo->y1 = mgminfo->y2 + mult * point1.y + sub1->y + sub2->y;
+ }
+
+ int px = 0;
+ int py = 0;
+
+ if (sub1->movement) {
+ px = countPhases(itemIdx, subIdx, st2idx, 1);
+ py = countPhases(itemIdx, subIdx, st2idx, 2);
+ }
+
+ if (mult > 1) {
+ px += (mult - 1) * mov->countPhasesWithFlag(-1, 1);
+ py += (mult - 1) * mov->countPhasesWithFlag(-1, 2);
+ }
+
+ if (mult > 0) {
+ px += mov->countPhasesWithFlag(len, 1);
+ py += mov->countPhasesWithFlag(len, 2);
+ }
+
+ if (sub2->movement) {
+ px += countPhases(itemIdx, st1idx, subOffset, 1);
+ py += countPhases(itemIdx, st1idx, subOffset, 2);
+ }
+
+ int dx1 = n1x - n2x;
+ int dy1 = n1y - n2y;
+ int x1, y1;
+
+ if (px) {
+ x1 = (int)((double)dx1 / (double)px);
+ } else {
+ x1 = 0;
+ }
+
+ if (py) {
+ y1 = (int)((double)dy1 / (double)py);
+ } else {
+ y1 = 0;
+ }
+
+ Common::Point x2, y2;
+
+ y2.x = dx1 - px * x1;
+ y2.y = dy1 - py * y1;
+
+ if (n1x - n2x == px * x1)
+ x2.x = 0;
+ else
+ x2.x = (dx1 - px * x1) / abs(dx1 - px * x1);
+
+ if (dy1 == py * y1)
+ x2.y = 0;
+ else
+ x2.y = (dy1 - py * y1) / abs(dy1 - py * y1);
+
+ MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact());
+ ExCommand2 *ex2;
+
+ for (int i = subIdx; i != st2idx;) {
+ MGMSubItem *s = _items[itemIdx]->subItems[i + subOffset * _items[itemIdx]->statics.size()];
+
+ ex2 = buildExCommand2(s->movement, mgminfo->ani->_id, x1, y1, &x2, &y2, -1);
+ ex2->_parId = mq->_id;
+ ex2->_keyCode = mgminfo->ani->_okeyCode;
+
+ mq->addExCommandToEnd(ex2);
+
+ i = s->staticsIndex;
+ }
+
+ for (int i = 0; i < mult; ++i) {
+ int plen;
+
+ if (i == mult - 1)
+ plen = len;
+ else
+ plen = -1;
+
+ ex2 = buildExCommand2(mov, mgminfo->ani->_id, x1, y1, &x2, &y2, plen);
+ ex2->_parId = mq->_id;
+ ex2->_keyCode = mgminfo->ani->_okeyCode;
+
+ mq->addExCommandToEnd(ex2);
+ }
+
+ for (int j = st1idx; j != subOffset;) {
+ MGMSubItem *s = _items[itemIdx]->subItems[j + subOffset * _items[itemIdx]->statics.size()];
+
+ ex2 = buildExCommand2(s->movement, mgminfo->ani->_id, x1, y1, &x2, &y2, -1);
+ ex2->_parId = mq->_id;
+ ex2->_keyCode = mgminfo->ani->_okeyCode;
+
+ mq->addExCommandToEnd(ex2);
+
+ j = s->staticsIndex;
+ }
+
+ ExCommand *ex = new ExCommand(mgminfo->ani->_id, 5, -1, mgminfo->x1, mgminfo->y1, 0, 1, 0, 0, 0);
+
+ ex->_field_14 = mgminfo->field_1C;
+ ex->_keyCode = mgminfo->ani->_okeyCode;
+ ex->_field_24 = 0;
+ ex->_excFlags |= 3;
+
+ mq->addExCommandToEnd(ex);
+
+ return mq;
}
+int MGM::countPhases(int idx, int subIdx, int endIdx, int flag) {
+ int res = 0;
+
+ if (endIdx < 0)
+ return 0;
+
+ while (subIdx != endIdx) {
+ if (subIdx < 0)
+ break;
+
+ res += _items[idx]->subItems[subIdx + endIdx * _items[idx]->statics.size()]->movement->countPhasesWithFlag(-1, flag);
+
+ subIdx = _items[idx]->subItems[subIdx + 6 * endIdx * _items[idx]->statics.size()]->staticsIndex;
+ }
+
+ return res;
+}
void MGM::updateAnimStatics(StaticANIObject *ani, int staticsId) {
if (getItemIndexById(ani->_id) == -1)
return;
@@ -1914,39 +2284,129 @@ void MGM::clearMovements2(int idx) {
}
int MGM::recalcOffsets(int idx, int st1idx, int st2idx, bool flip, bool flop) {
- warning("STUB: MGM::recalcOffsets()");
+ MGMItem *item = _items[idx];
+ int subIdx = st1idx + st2idx * item->statics.size();
- return 0;
+ if (st1idx == st2idx) {
+ memset(&item->subItems[subIdx], 0, sizeof(item->subItems[subIdx]));
+ return 0;
+ }
+
+ if (item->subItems[subIdx])
+ return item->subItems[subIdx]->field_8;
+
+ Common::Point point;
+
+ for (uint i = 0; i < item->movements1.size(); i++) {
+ Movement *mov = item->movements1[i];
+
+ if (mov->_staticsObj1 == item->statics[st1idx]) {
+ if (!item->movements2[i] && (!flop || mov->_field_50)) {
+ item->movements2[i] = 1;
+
+ int stidx = getStaticsIndex(idx, item->movements1[i]->_staticsObj2);
+ int recalc = recalcOffsets(idx, stidx, st2idx, flip, flop);
+ int sz = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size();
+ int newsz = sz + item->subItems[stidx + 6 * st2idx * _items[idx]->statics.size()]->field_C;
+
+ if (recalc >= 0) {
+ if (!item->subItems[subIdx]->movement || item->subItems[subIdx]->field_8 > recalc + 1 ||
+ (item->subItems[subIdx]->field_8 == recalc + 1 && item->subItems[subIdx]->field_C > newsz)) {
+ item->subItems[subIdx]->movement = mov;
+ item->subItems[subIdx]->staticsIndex = stidx;
+ item->subItems[subIdx]->field_8 = recalc + 1;
+ item->subItems[subIdx]->field_C = newsz;
+
+ mov->calcSomeXY(point, 0);
+
+ item->subItems[subIdx]->x = item->subItems[stidx + 6 * st2idx * _items[idx]->statics.size()]->x + point.x;
+ item->subItems[subIdx]->y = item->subItems[stidx + 6 * st2idx * _items[idx]->statics.size()]->y + point.y;
+ }
+ }
+ }
+ } else if (flip) {
+ if (mov->_staticsObj2 == item->statics[st1idx]) {
+ if (!item->movements2[i] && (!flop || mov->_field_50)) {
+ item->movements2[i] = 1;
+
+ int stidx = getStaticsIndex(idx, mov->_staticsObj1);
+ int recalc = recalcOffsets(idx, stidx, st2idx, flip, flop);
+
+ if (recalc >= 0) {
+ if (!item->subItems[subIdx]->movement || item->subItems[subIdx]->field_8 > recalc + 1) {
+ item->subItems[subIdx]->movement = mov;
+ item->subItems[subIdx]->staticsIndex = stidx;
+ item->subItems[subIdx]->field_8 = recalc + 1;
+
+ int sz = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size();
+
+ item->subItems[subIdx]->field_C = sz + item->subItems[stidx + 6 * st2idx * _items[idx]->statics.size()]->field_C;
+
+ mov->calcSomeXY(point, 0);
+
+ item->subItems[subIdx]->x = item->subItems[stidx + 6 * st2idx * _items[idx]->statics.size()]->x - point.x;
+ item->subItems[subIdx]->y = item->subItems[stidx + 6 * st2idx * _items[idx]->statics.size()]->y - point.y;
+ }
+ }
+ }
+ }
+ }
+ }
+
+ if (item->subItems[subIdx]->movement)
+ return item->subItems[subIdx]->field_8;
+
+ return -1;
+}
+
+int MGM::refreshOffsets(int objectId, int idx1, int idx2) {
+ int idx = getItemIndexById(objectId);
+
+ if (idx != -1) {
+ int from = getStaticsIndexById(idx, idx1);
+ int to = getStaticsIndexById(idx, idx2);
+
+ MGMSubItem *sub = _items[idx]->subItems[from + to * _items[idx]->statics.size()];
+
+ if (sub->movement) {
+ idx = sub->field_8;
+ } else {
+ clearMovements2(idx);
+ idx = recalcOffsets(idx, from, to, 0, 1);
+ }
+ }
+
+ return idx;
}
-Common::Point *MGM::calcLength(Common::Point *pRes, Movement *mov, int x, int y, int *x1, int *y1, int flag) {
+Common::Point *MGM::calcLength(Common::Point *pRes, Movement *mov, int x, int y, int *mult, int *len, int flag) {
Common::Point point;
mov->calcSomeXY(point, 0);
int p1x = point.x;
int p1y = point.y;
- int newx1 = 0;
- int oldy1 = *y1;
+ int newmult = 0;
+ int oldlen = *len;
if (abs(p1y) > abs(p1x)) {
if (mov->calcSomeXY(point, 0)->y)
- newx1 = (int)((double)y / point.y);
+ newmult = (int)((double)y / point.y);
} else if (mov->calcSomeXY(point, 0)->x) {
- newx1 = (int)((double)x / point.y);
+ newmult = (int)((double)x / point.y);
}
- if (newx1 < 0)
- newx1 = 0;
+ if (newmult < 0)
+ newmult = 0;
- *x1 = newx1;
+ *mult = newmult;
int phase = 1;
int sz;
if (flag) {
if (abs(p1y) > abs(p1x)) {
- while (abs(p1y * newx1 + mov->calcSomeXY(point, 0)->y) < abs(y)) {
+ while (abs(p1y * newmult + mov->calcSomeXY(point, 0)->y) < abs(y)) {
sz = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size();
if (phase >= sz) {
@@ -1958,7 +2418,7 @@ Common::Point *MGM::calcLength(Common::Point *pRes, Movement *mov, int x, int y,
phase++;
}
} else {
- while (abs(p1x * newx1 + mov->calcSomeXY(point, 0)->x) < abs(x)) {
+ while (abs(p1x * newmult + mov->calcSomeXY(point, 0)->x) < abs(x)) {
sz = mov->_currMovement ? mov->_currMovement->_dynamicPhases.size() : mov->_dynamicPhases.size();
if (phase >= sz) {
@@ -1971,19 +2431,19 @@ Common::Point *MGM::calcLength(Common::Point *pRes, Movement *mov, int x, int y,
}
}
- *y1 = phase - 1;
+ *len = phase - 1;
} else {
- *y1 = -1;
+ *len = -1;
}
int p2x = 0;
int p2y = 0;
- if (!oldy1)
- oldy1 = -1;
+ if (!oldlen)
+ oldlen = -1;
- if (oldy1 > 0) {
- ++*x1;
+ if (oldlen > 0) {
+ ++*mult;
mov->calcSomeXY(point, 0);
p2x = point.x;
@@ -1995,8 +2455,8 @@ Common::Point *MGM::calcLength(Common::Point *pRes, Movement *mov, int x, int y,
p2y = p1y;
}
- pRes->x = p2x + p1x * newx1;
- pRes->y = p2y + p1y * newx1;
+ pRes->x = p2x + p1x * newmult;
+ pRes->y = p2y + p1y * newmult;
return pRes;
}
diff --git a/engines/fullpipe/motion.h b/engines/fullpipe/motion.h
index 6ad46e719a..4d92fd7fed 100644
--- a/engines/fullpipe/motion.h
+++ b/engines/fullpipe/motion.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -138,7 +138,7 @@ struct MGMItem {
Common::Array<MGMSubItem *> subItems;
Common::Array<Statics *> statics;
Common::Array<Movement *> movements1;
- Common::Array<Movement *> movements2;
+ Common::Array<int> movements2;
MGMItem();
};
@@ -176,8 +176,11 @@ public:
int getStaticsIndex(int idx, Statics *st);
void clearMovements2(int idx);
int recalcOffsets(int idx, int st1idx, int st2idx, bool flip, bool flop);
- Common::Point *calcLength(Common::Point *point, Movement *mov, int x, int y, int *x1, int *y1, int flag);
+ Common::Point *calcLength(Common::Point *point, Movement *mov, int x, int y, int *mult, int *len, int flag);
ExCommand2 *buildExCommand2(Movement *mov, int objId, int x1, int y1, Common::Point *x2, Common::Point *y2, int len);
+ MessageQueue *genMQ(StaticANIObject *ani, int staticsIndex, int staticsId, int *resStatId, Common::Point **pointArr);
+ int countPhases(int idx, int subIdx, int subOffset, int flag);
+ int refreshOffsets(int objectId, int idx1, int idx2);
};
struct MctlLadderMovementVars {
@@ -347,6 +350,7 @@ public:
double calcDistance(Common::Point *point, MovGraphLink *link, int fuzzyMatch);
void calcNodeDistancesAndAngles();
MovGraphNode *calcOffset(int ox, int oy);
+ int getItemIndexByStaticAni(StaticANIObject *ani);
};
class Movement;
diff --git a/engines/fullpipe/objectnames.h b/engines/fullpipe/objectnames.h
index eafdb2a8e7..0baf83b175 100644
--- a/engines/fullpipe/objectnames.h
+++ b/engines/fullpipe/objectnames.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -192,7 +192,7 @@ namespace Fullpipe {
#define sO_WithPlunger "\xd1 \xe2\xe0\xed\xf2\xf3\xe7\xee\xec" // "аЁ аВаАаНб‚бƒаЗаОаМ"
#define sO_WithJug "\xd1 \xe3\xee\xf0\xf8\xea\xee\xec" // "аЁ аГаОб€бˆаКаОаМ"
#define sO_WithGum "\xd1 \xe6\xe2\xe0\xf7\xea\xee\xe9" // "аЁ аЖаВаАб‡аКаОаЙ"
-#define sO_WithShovel "\xd1 \xeb\xee\xef\xe0\xf2\xee\xe9" // "аЁ аЛаОаПаАб‚аОаЙ"
+#define sO_WithSpade "\xd1 \xeb\xee\xef\xe0\xf2\xee\xe9" // "аЁ аЛаОаПаАб‚аОаЙ"
#define sO_WithSmall "\xd1 \xec\xe0\xeb\xfb\xec" // "аЁ аМаАаЛб‹аМ"
#define sO_WithHammer "\xd1 \xec\xee\xeb\xee\xf2\xea\xee\xec" // "аЁ аМаОаЛаОб‚аКаОаМ"
#define sO_WithCoin "\xd1 \xec\xee\xed\xe5\xf2\xee\xe9" // "аЁ аМаОаНаЕб‚аОаЙ"
@@ -208,9 +208,9 @@ namespace Fullpipe {
#define sO_IsSitting "\xd1\xe8\xe4\xe8\xf2" // "аЁаИаДаИб‚"
#define sO_IsLaughing "\xd1\xec\xe5\xe5\xf2\xf1\xff" // "аЁаМаЕаЕб‚бб"
#define sO_WithAll "\xd1\xee \xe2\xf1\xe5\xec\xe8" // "аЁаО аВбаЕаМаИ"
-#define sO_WithMop "\xd1\xee \xf8\xe2\xe0\xe1\xf0\xee\xe9" // "аЁаО бˆаВаАаБб€аОаЙ"
+#define sO_WithSwab "\xd1\xee \xf8\xe2\xe0\xe1\xf0\xee\xe9" // "аЁаО бˆаВаАаБб€аОаЙ"
#define sO_WithHose "\xd1\xee \xf8\xeb\xe0\xed\xe3\xee\xec" // "аЁаО бˆаЛаАаНаГаОаМ"
-#define sO_WithBrush "\xd1\xee \xf9\xe5\xf2\xea\xee\xe9" // "аЁаО б‰аЕб‚аКаОаЙ"
+#define sO_WithBroom "\xd1\xee \xf9\xe5\xf2\xea\xee\xe9" // "аЁаО б‰аЕб‚аКаОаЙ"
#define sO_IsSleeping "\xd1\xef\xe8\xf2" // "аЁаПаИб‚"
#define sO_OnRight "\xd1\xef\xf0\xe0\xe2\xe0" // "аЁаПб€аАаВаА"
#define sO_IsStandingInBoots "\xd1\xf2\xee\xe8\xf2 \xe2 \xe1\xee\xf2\xe8\xed\xea\xe0\xf5" // "аЁб‚аОаИб‚ аВ аБаОб‚аИаНаКаАб…"
@@ -229,7 +229,7 @@ namespace Fullpipe {
#define sO_NearPipeWithStool "\xd3 \xf2\xf0\xf3\xe1\xfb \xf1 \xf2\xe0\xe1\xf3\xf0\xe5\xf2\xea\xee\xe9" // "аЃ б‚б€бƒаБб‹ б б‚аАаБбƒб€аЕб‚аКаОаЙ"
#define sO_NearPipe "\xd3 \xf2\xf0\xf3\xe1\xfb" // "аЃ б‚б€бƒаБб‹"
#define sO_Janitors "\xd3\xe1\xee\xf0\xf9\xe8\xea\xe8" // "аЃаБаОб€б‰аИаКаИ"
-#define sO_Janitress "\xd3\xe1\xee\xf0\xf9\xe8\xf6\xe0" // "аЃаБаОб€б‰аИб†аА"
+#define sO_Maid "\xd3\xe1\xee\xf0\xf9\xe8\xf6\xe0" // "аЃаБаОб€б‰аИб†аА"
#define sO_IsGone "\xd3\xe5\xf5\xe0\xeb\xe0" // "аЃаЕб…аАаЛаА"
#define sO_FallenTwice "\xd3\xef\xe0\xeb \xe4\xe2\xe0" // "аЃаПаАаЛ аДаВаА"
#define sO_FallenOnce "\xd3\xef\xe0\xeb \xf0\xe0\xe7" // "аЃаПаАаЛ б€аАаЗ"
diff --git a/engines/fullpipe/objects.h b/engines/fullpipe/objects.h
index d13559429a..1849bcb96e 100644
--- a/engines/fullpipe/objects.h
+++ b/engines/fullpipe/objects.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scene.cpp b/engines/fullpipe/scene.cpp
index 997d92ae1c..462401b3b2 100644
--- a/engines/fullpipe/scene.cpp
+++ b/engines/fullpipe/scene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -334,6 +334,10 @@ void Scene::setPictureObjectsFlag4() {
}
}
+void Scene::stopAllSounds() {
+ warning("STUB: Scene:stopAllSounds()");
+}
+
PictureObject *Scene::getPictureObjectById(int objId, int flags) {
for (uint i = 0; i < _picObjList.size(); i++) {
if (((PictureObject *)_picObjList[i])->_id == objId && ((PictureObject *)_picObjList[i])->_okeyCode == flags)
diff --git a/engines/fullpipe/scene.h b/engines/fullpipe/scene.h
index fc04a877f5..8306974f7b 100644
--- a/engines/fullpipe/scene.h
+++ b/engines/fullpipe/scene.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -78,6 +78,8 @@ class Scene : public Background {
void initObjectCursors(const char *name);
+ void stopAllSounds();
+
private:
static bool compareObjPriority(const void *p1, const void *p2);
void objectList_sortByPriority(PtrList &list, bool skipFirst = false);
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index 71c8b1efb5..7420c1b1cf 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,6 +31,7 @@
#include "fullpipe/behavior.h"
#include "fullpipe/constants.h"
+#include "fullpipe/objectnames.h"
#include "fullpipe/scenes.h"
#include "fullpipe/interaction.h"
@@ -155,6 +156,28 @@ Vars::Vars() {
scene08_stairsVisible = true;
scene08_manOffsetY = 0;
+ scene09_flyingBall = 0;
+ scene09_numSwallenBalls = 0;
+ scene09_gulper = 0;
+ scene09_spitter = 0;
+ scene09_grit = 0;
+ scene09_dudeY = 0;
+ scene09_gulperIsPresent = true;
+ scene09_dudeIsOnLadder = false;
+ scene09_interactingHanger = -1;
+ scene09_intHangerPhase = -1;
+ scene09_intHangerMaxPhase = -1000;
+ scene09_numMovingHangers = 0;
+ scene09_clickY = 0;
+ scene09_hangerOffsets[0].x = 0;
+ scene09_hangerOffsets[0].y = -15;
+ scene09_hangerOffsets[1].x = 15;
+ scene09_hangerOffsets[1].y = 0;
+ scene09_hangerOffsets[2].x = 0;
+ scene09_hangerOffsets[2].y = 0;
+ scene09_hangerOffsets[3].x = 0;
+ scene09_hangerOffsets[3].y = 0;
+
scene10_gum = 0;
scene10_packet = 0;
scene10_packet2 = 0;
@@ -247,7 +270,38 @@ Vars::Vars() {
scene17_handPhase = false;
scene17_sceneEdgeX = 0;
- scene18_var01 = 0;
+ scene18_inScene18p1 = false;
+ scene18_whirlgig = 0;
+ scene18_wheelCenterX = 0;
+ scene18_wheelCenterY = 0;
+ scene18_bridgeIsConvoluted = false;
+ scene18_whirlgigMovMum = 0;
+ scene18_girlIsSwinging = false;
+ scene18_rotationCounter = 0;
+ scene18_manY = 0;
+ scene18_wheelFlipper = false;
+ scene18_wheelIsTurning = true;
+ scene18_kidIsOnWheel = -1;
+ scene18_boyIsOnWheel = 0;
+ scene18_girlIsOnWheel = 0;
+ scene18_boyJumpedOff = true;
+ scene18_jumpDistance = -1;
+ scene18_jumpAngle = -1;
+ scene18_manIsReady = false;
+ scene18_enteredTrubaRight = false;
+ scene18_manWheelPos = 0;
+ scene18_manWheelPosTo = -1;
+ scene18_kidWheelPos = 0;
+ scene18_kidWheelPosTo = 0;
+ scene18_boy = 0;
+ scene18_girl = 0;
+ scene18_domino = 0;
+ scene18_boyJumpX = 290;
+ scene18_boyJumpY = -363;
+ scene18_girlJumpX = 283;
+ scene18_girlJumpY = -350;
+
+ scene19_enteredTruba3 = false;
scene20_fliesCountdown = 0;
scene20_grandma = 0;
@@ -300,6 +354,22 @@ Vars::Vars() {
scene26_sock = 0;
scene26_activeVent = 0;
+ scene27_hitZone = 0;
+ scene27_driver = 0;
+ scene27_maid = 0;
+ scene27_batHandler = 0;
+ scene27_driverHasVent = true;
+ scene27_bat = 0;
+ scene27_dudeIsAiming = false;
+ scene27_maxPhaseReached = false;
+ scene27_wipeIsNeeded = false;
+ scene27_driverPushedButton = false;
+ scene27_numLostBats = 0;
+ scene27_knockCount = 0;
+ scene27_aimStartX = 0;
+ scene27_aimStartY = 0;
+ scene27_launchPhase = 0;
+
scene28_fliesArePresent = true;
scene28_beardedDirection = true;
scene28_darkeningObject = 0;
@@ -308,6 +378,23 @@ Vars::Vars() {
scene28_headBeardedFlipper = false;
scene28_lift6inside = false;
+ scene29_porter = 0;
+ scene29_shooter1 = 0;
+ scene29_shooter2 = 0;
+ scene29_ass = 0;
+ scene29_manIsRiding = false;
+ scene29_arcadeIsOn = false;
+ scene29_reachedFarRight = false;
+ scene29_rideBackEnabled = false;
+ scene29_shootCountdown = 0;
+ scene29_shootDistance = 75;
+ scene29_manIsHit = 0;
+ scene29_scrollSpeed = 0;
+ scene29_scrollingDisabled = 0;
+ scene29_hitBall = 0;
+ scene29_manX = 0;
+ scene29_manY = 0;
+
scene30_leg = 0;
scene30_liftFlag = 1;
@@ -618,7 +705,6 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
_updateCursorCallback = scene08_updateCursor;
break;
-#if 0
case SC_9:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_9");
scene->preloadMovements(sceneVar);
@@ -629,7 +715,6 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
insertMessageHandler(sceneHandler09, 2, 2);
_updateCursorCallback = scene09_updateCursor;
break;
-#endif
case SC_10:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_10");
@@ -722,16 +807,17 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
_updateCursorCallback = scene17_updateCursor;
break;
-#if 0
case SC_18:
- sub_40E1B0();
+ scene18_setupEntrance();
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_18");
scene->preloadMovements(sceneVar);
- sub_4062D0();
- if (dword_476C38)
+ g_fp->stopAllSounds();
+
+ if (g_vars->scene18_inScene18p1)
scene18_initScene1(scene);
else
scene18_initScene2(scene);
+
_behaviorManager->initBehavior(scene, sceneVar);
scene->initObjectCursors("SC_18");
setSceneMusicParameters(sceneVar);
@@ -740,30 +826,34 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
break;
case SC_19:
- if (!g_scene3) {
- g_scene3 = accessScene(SC_18);
- getGameLoader()->loadScene(SC_18);
- scene18_initScene2(g_scene3);
- sub_40C5F0();
- scene19_sub_420B10(g_scene3, entrance->field_4);
- dword_476C38 = 1;
+ if (!g_fp->_scene3) {
+ g_fp->_scene3 = accessScene(SC_18);
+ g_fp->_gameLoader->loadScene(SC_18);
+
+ scene18_initScene2(g_fp->_scene3);
+ scene18_preload();
+ scene19_setMovements(g_fp->_scene3, entrance->_field_4);
+
+ g_vars->scene18_inScene18p1 = true;
}
- sub_40C650();
+
+ scene19_preload();
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_19");
scene->preloadMovements(sceneVar);
- sub_4062D0();
- if (dword_476C38)
+ g_fp->stopAllSounds();
+
+ if (g_vars->scene18_inScene18p1)
scene18_initScene1(scene);
else
scene19_initScene2();
+
_behaviorManager->initBehavior(scene, sceneVar);
scene->initObjectCursors("SC_19");
setSceneMusicParameters(sceneVar);
addMessageHandler(sceneHandler19, 2);
- scene19_sub_4211D0(scene);
+ scene19_setSugarState(scene);
_updateCursorCallback = scene19_updateCursor;
break;
-#endif
case SC_20:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_20");
@@ -847,7 +937,6 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
_updateCursorCallback = scene26_updateCursor;
break;
-#if 0
case SC_27:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_27");
scene->preloadMovements(sceneVar);
@@ -858,7 +947,6 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
addMessageHandler(sceneHandler27, 2);
_updateCursorCallback = scene27_updateCursor;
break;
-#endif
case SC_28:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_28");
@@ -871,7 +959,6 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
_updateCursorCallback = scene28_updateCursor;
break;
-#if 0
case SC_29:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_29");
scene->preloadMovements(sceneVar);
@@ -882,7 +969,6 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
addMessageHandler(sceneHandler29, 2);
_updateCursorCallback = scene29_updateCursor;
break;
-#endif
case SC_30:
sceneVar = _gameLoader->_gameVar->getSubVarByName("SC_30");
@@ -1020,10 +1106,6 @@ int defaultUpdateCursor() {
return g_fp->_cursorId;
}
-void FullpipeEngine::processArcade(ExCommand *ex) {
- warning("STUB: FullpipeEngine::processArcade()");
-}
-
void FullpipeEngine::updateMapPiece(int mapId, int update) {
for (int i = 0; i < 200; i++) {
int hiWord = (_mapTable[i] >> 16) & 0xffff;
@@ -1211,7 +1293,7 @@ void FullpipeEngine::updateMap(PreloadItem *pre) {
break;
case SC_23:
- if (getObjectState("а’аЕб€б…аНаИаЙ аЛбŽаК_23") == getObjectEnumState("а’аЕб€б…аНаИаЙ аЛбŽаК_23", "аžб‚аКб€б‹б‚")) {
+ if (getObjectState(sO_UpperHatch_23) == getObjectEnumState(sO_UpperHatch_23, sO_Opened)) {
updateMapPiece(PIC_MAP_S23_1, 0);
updateMapPiece(PIC_MAP_S23_2, 1);
updateMapPiece(PIC_MAP_P07, 1);
@@ -1284,7 +1366,7 @@ void FullpipeEngine::updateMap(PreloadItem *pre) {
case SC_31:
updateMapPiece(PIC_MAP_S31_2, 1);
- if (getObjectState("аšаАаКб‚бƒб") == getObjectEnumState("аšаАаКб‚бƒб", "а’б‹б€аОб"))
+ if (getObjectState(sO_Cactus) == getObjectEnumState(sO_Cactus, sO_HasGrown))
updateMapPiece(PIC_MAP_S31_1, 1);
if (pre->keyCode == TrubaRight)
@@ -1295,7 +1377,7 @@ void FullpipeEngine::updateMap(PreloadItem *pre) {
case SC_32:
updateMapPiece(PIC_MAP_S32_2, 1);
- if (getObjectState("аšаАаКб‚бƒб") == getObjectEnumState("аšаАаКб‚бƒб", "а’б‹б€аОб"))
+ if (getObjectState(sO_Cactus) == getObjectEnumState(sO_Cactus, sO_HasGrown))
updateMapPiece(PIC_MAP_S32_1, 1);
break;
@@ -1356,5 +1438,54 @@ void FullpipeEngine::updateMap(PreloadItem *pre) {
}
}
+void BallChain::init(Ball **ball) {
+ *ball = pTail;
+ pTail = (Ball *)ball;
+ numBalls--;
+
+ if (!numBalls) {
+ for (Ball *i = pHead; i; i = i->p0 )
+ ;
+ numBalls = 0;
+ pTail = 0;
+ field_8 = 0;
+ pHead = 0;
+ free(cPlex);
+ cPlex = 0;
+ }
+}
+
+Ball *BallChain::sub04(Ball *ballP, Ball *ballN) {
+ warning("STUB: BallChain::sub04");
+
+ return pTail;
+}
+
+void BallChain::removeBall(Ball *ball) {
+ if (ball == pHead)
+ pHead = ball->p0;
+ else
+ ball->p1->p0 = ball->p0;
+
+ if (ball == field_8)
+ field_8 = ball->p1;
+ else
+ ball->p0->p1 = ball->p1;
+
+ ball->p0 = pTail;
+ pTail = ball;
+
+ numBalls--;
+
+ if (!numBalls) {
+ numBalls = 0;
+ pTail = 0;
+ field_8 = 0;
+ pHead = 0;
+ free(cPlex);
+ cPlex = 0;
+ }
+}
+
} // End of namespace Fullpipe
diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h
index 5f77f74706..0b7c4e7c8f 100644
--- a/engines/fullpipe/scenes.h
+++ b/engines/fullpipe/scenes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -25,11 +25,15 @@
namespace Fullpipe {
+struct Bat;
struct BehaviorEntryInfo;
+struct Hanger;
class MGM;
class MctlLadder;
struct Ring;
class StaticANIObject;
+struct Swinger;
+struct WalkingBearder;
int defaultUpdateCursor();
@@ -69,6 +73,10 @@ void scene08_setupMusic();
int sceneHandler08(ExCommand *cmd);
int scene08_updateCursor();
+int scene09_updateCursor();
+void scene09_initScene(Scene *sc);
+int sceneHandler09(ExCommand *cmd);
+
void scene10_initScene(Scene *sc);
int sceneHandler10(ExCommand *cmd);
int scene10_updateCursor();
@@ -103,7 +111,19 @@ int sceneHandler17(ExCommand *cmd);
int scene17_updateCursor();
void scene18_preload();
-void scene19_preload(Scene *sc, int key);
+void scene18_setupEntrance();
+void scene18_initScene1(Scene *sc);
+void scene18_initScene2(Scene *sc);
+int sceneHandler18(ExCommand *cmd);
+int scene18_updateCursor();
+
+void scene19_preload();
+void scene19_setMovements(Scene *sc, int entranceId);
+void scene19_initScene2();
+void scene19_setMovements(Scene *sc, int key);
+int sceneHandler19(ExCommand *cmd);
+int scene19_updateCursor();
+void scene19_setSugarState(Scene *sc);
void scene20_initScene(Scene *sc);
int sceneHandler20(ExCommand *ex);
@@ -136,10 +156,18 @@ void scene26_setupDrop(Scene *sc);
int sceneHandler26(ExCommand *cmd);
int scene26_updateCursor();
+void scene27_initScene(Scene *sc);
+int sceneHandler27(ExCommand *ex);
+int scene27_updateCursor();
+
void scene28_initScene(Scene *sc);
- int sceneHandler28(ExCommand *ex);
+int sceneHandler28(ExCommand *ex);
int scene28_updateCursor();
+int scene29_updateCursor();
+void scene29_initScene(Scene *sc);
+int sceneHandler29(ExCommand *cmd);
+
int scene30_updateCursor();
void scene30_initScene(Scene *sc, int flag);
int sceneHandler30(ExCommand *cmd);
@@ -183,6 +211,31 @@ int sceneHandlerFinal(ExCommand *cmd);
void sceneDbgMenu_initScene(Scene *sc);
int sceneHandlerDbgMenu(ExCommand *cmd);
+struct Ball {
+ Ball *p0;
+ Ball *p1;
+ StaticANIObject *ani;
+
+ Ball() : p0(0), p1(0), ani(0) {}
+};
+
+struct BallChain {
+ Ball *pHead;
+ Ball *field_8;
+ int numBalls;
+ Ball *pTail;
+ byte *cPlex;
+ int cPlexLen;
+
+ BallChain() : pHead(0), field_8(0), pTail(0), numBalls(0), cPlex(0), cPlexLen(0) {}
+ ~BallChain() { free(cPlex); }
+
+ void init(Ball **ball);
+ Ball *sub04(Ball *ballP, Ball *ballN);
+ void removeBall(Ball *ball);
+ void reset() { pHead = 0; pTail = 0; field_8 = 0; numBalls = 0; free(cPlex); cPlex = 0; cPlexLen = 0; }
+};
+
class Vars {
public:
Vars();
@@ -314,6 +367,24 @@ public:
bool scene08_stairsVisible;
int scene08_manOffsetY;
+ int scene09_dudeY;
+ StaticANIObject *scene09_flyingBall;
+ int scene09_numSwallenBalls;
+ StaticANIObject *scene09_gulper;
+ StaticANIObject *scene09_spitter;
+ StaticANIObject *scene09_grit;
+ bool scene09_gulperIsPresent;
+ bool scene09_dudeIsOnLadder;
+ int scene09_interactingHanger;
+ int scene09_intHangerPhase;
+ int scene09_intHangerMaxPhase;
+ BallChain scene09_balls;
+ Common::Array<Hanger *> scene09_hangers;
+ BallChain scene09_flyingBalls;
+ int scene09_numMovingHangers;
+ int scene09_clickY;
+ Common::Point scene09_hangerOffsets[4];
+
StaticANIObject *scene10_gum;
StaticANIObject *scene10_packet;
StaticANIObject *scene10_packet2;
@@ -408,7 +479,39 @@ public:
bool scene17_handPhase;
int scene17_sceneEdgeX;
- int scene18_var01;
+ bool scene18_inScene18p1;
+ StaticANIObject *scene18_whirlgig;
+ Common::Array<Swinger *> scene18_swingers;
+ int scene18_wheelCenterX;
+ int scene18_wheelCenterY;
+ bool scene18_bridgeIsConvoluted;
+ int scene18_whirlgigMovMum;
+ bool scene18_girlIsSwinging;
+ int scene18_rotationCounter;
+ int scene18_manY;
+ bool scene18_wheelFlipper;
+ bool scene18_wheelIsTurning;
+ int scene18_kidIsOnWheel;
+ int scene18_boyIsOnWheel;
+ int scene18_girlIsOnWheel;
+ bool scene18_boyJumpedOff;
+ int scene18_manWheelPos;
+ int scene18_manWheelPosTo;
+ int scene18_kidWheelPos;
+ int scene18_kidWheelPosTo;
+ int scene18_jumpDistance;
+ int scene18_jumpAngle;
+ bool scene18_manIsReady;
+ bool scene18_enteredTrubaRight;
+ StaticANIObject *scene18_boy;
+ StaticANIObject *scene18_girl;
+ StaticANIObject *scene18_domino;
+ int scene18_boyJumpX;
+ int scene18_boyJumpY;
+ int scene18_girlJumpX;
+ int scene18_girlJumpY;
+
+ bool scene19_enteredTruba3;
int scene20_fliesCountdown;
StaticANIObject *scene20_grandma;
@@ -461,6 +564,25 @@ public:
StaticANIObject *scene26_sock;
StaticANIObject *scene26_activeVent;
+ PictureObject *scene27_hitZone;
+ StaticANIObject *scene27_driver;
+ StaticANIObject *scene27_maid;
+ StaticANIObject *scene27_batHandler;
+ bool scene27_driverHasVent;
+ StaticANIObject *scene27_bat;
+ bool scene27_dudeIsAiming;
+ bool scene27_maxPhaseReached;
+ bool scene27_wipeIsNeeded;
+ bool scene27_driverPushedButton;
+ int scene27_numLostBats;
+ int scene27_knockCount;
+ int scene27_aimStartX;
+ int scene27_aimStartY;
+ int scene27_launchPhase;
+ BallChain scene27_balls;
+ Common::Array<Bat *> scene27_bats;
+ Common::Array<Bat *> scene27_var07;
+
bool scene28_fliesArePresent;
bool scene28_beardedDirection;
PictureObject *scene28_darkeningObject;
@@ -469,6 +591,29 @@ public:
bool scene28_headBeardedFlipper;
bool scene28_lift6inside;
+ StaticANIObject *scene29_porter;
+ StaticANIObject *scene29_shooter1;
+ StaticANIObject *scene29_shooter2;
+ StaticANIObject *scene29_ass;
+ BallChain scene29_balls;
+ BallChain scene29_redBalls;
+ BallChain scene29_flyingRedBalls;
+ BallChain scene29_greenBalls;
+ bool scene29_manIsRiding;
+ bool scene29_arcadeIsOn;
+ bool scene29_reachedFarRight;
+ bool scene29_rideBackEnabled;
+ int scene29_shootCountdown;
+ int scene29_shootDistance;
+ int scene29_manIsHit;
+ int scene29_scrollSpeed;
+ bool scene29_scrollingDisabled;
+ int scene29_hitBall;
+ Common::Array<WalkingBearder *> scene29_bearders;
+ int scene29_manX;
+ int scene29_manY;
+ MGM scene29_mgm;
+
StaticANIObject *scene30_leg;
int scene30_liftFlag;
diff --git a/engines/fullpipe/scenes/scene01.cpp b/engines/fullpipe/scenes/scene01.cpp
index 6c8f26d209..e24eb1fa45 100644
--- a/engines/fullpipe/scenes/scene01.cpp
+++ b/engines/fullpipe/scenes/scene01.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene02.cpp b/engines/fullpipe/scenes/scene02.cpp
index 95cf1df7dd..109a20a07a 100644
--- a/engines/fullpipe/scenes/scene02.cpp
+++ b/engines/fullpipe/scenes/scene02.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene03.cpp b/engines/fullpipe/scenes/scene03.cpp
index 40e70e2ea5..e6c9fa3bbd 100644
--- a/engines/fullpipe/scenes/scene03.cpp
+++ b/engines/fullpipe/scenes/scene03.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -59,7 +59,7 @@ void scene03_initScene(Scene *sc) {
g_fp->lift_setButton(sO_Level2, ST_LBN_2N);
- g_fp->lift_sub5(sc, QU_SC3_ENTERLIFT, QU_SC3_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC3_ENTERLIFT, QU_SC3_EXITLIFT);
}
void scene03_setEaterState() {
@@ -215,7 +215,7 @@ int sceneHandler03(ExCommand *ex) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC3_HIDEDOMINO:
@@ -239,14 +239,14 @@ int sceneHandler03(ExCommand *ex) {
break;
case 64:
- g_fp->lift_sub05(ex);
+ g_fp->lift_hoverButton(ex);
break;
case 29:
{
StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY);
if (ani && ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
ex->_messageKind = 0;
return 0;
diff --git a/engines/fullpipe/scenes/scene04.cpp b/engines/fullpipe/scenes/scene04.cpp
index 332935072c..b47553ef6f 100644
--- a/engines/fullpipe/scenes/scene04.cpp
+++ b/engines/fullpipe/scenes/scene04.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -263,8 +263,8 @@ void sceneHandler04_clickButton() {
StaticANIObject *but = g_fp->_currentScene->getStaticANIObject1ById(ANI_BUTTON, -1);
if (but) {
- if (!g_vars->scene04_clock->_movement ||
- (g_vars->scene04_clock->_movement->_id == MV_CLK_GO && g_vars->scene04_clock->_movement->_currDynamicPhaseIndex > 3 &&
+ if (!g_vars->scene04_clock->_movement ||
+ (g_vars->scene04_clock->_movement->_id == MV_CLK_GO && g_vars->scene04_clock->_movement->_currDynamicPhaseIndex > 3 &&
g_vars->scene04_clock->_movement->_currDynamicPhaseIndex < 105)) {
if (!g_vars->scene04_hand->_movement && !g_vars->scene04_bottleIsTaken) {
but->startAnim(MV_BTN_CLICK, 0, -1);
@@ -1196,7 +1196,7 @@ void sceneHandler04_takeBottle() {
void sceneHandler04_takeKozyawka() {
if (g_vars->scene04_kozyawkiAni.size() > 0) {
- if (g_vars->scene04_kozyawkiAni.size() == 1)
+ if (g_vars->scene04_kozyawkiAni.size() == 1)
g_vars->scene04_objectIsTaken = true;
StaticANIObject *koz = g_vars->scene04_kozyawkiAni.front();
@@ -1284,7 +1284,7 @@ int sceneHandler04(ExCommand *ex) {
case MSG_UPDATEBOTTLE:
sceneHandler04_updateBottle();
break;
-
+
case MSG_CLICKBOTTLE:
sceneHandler04_clickBottle();
break;
@@ -1486,7 +1486,7 @@ int sceneHandler04(ExCommand *ex) {
case MSG_SC4_DROPBOTTLE:
sceneHandler04_dropBottle();
break;
-
+
case MSG_SC4_COINOUT:
g_vars->scene04_clock->changeStatics2(ST_CLK_CLOSED);
g_vars->scene04_coinPut = false;
diff --git a/engines/fullpipe/scenes/scene05.cpp b/engines/fullpipe/scenes/scene05.cpp
index c6e21daf1e..8864794691 100644
--- a/engines/fullpipe/scenes/scene05.cpp
+++ b/engines/fullpipe/scenes/scene05.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -123,7 +123,7 @@ void sceneHandler05_makeWackoFeedback() {
}
void sceneHandler05_resetTicks() {
- if (g_fp->_aniMan->_movement && (g_fp->_aniMan->_movement->_id == MV_MANHDL_HANDLEUP
+ if (g_fp->_aniMan->_movement && (g_fp->_aniMan->_movement->_id == MV_MANHDL_HANDLEUP
|| g_fp->_aniMan->_movement->_id == MV_MANHDL_HANDLEDOWN))
g_vars->scene05_wackoTicker = g_fp->_updateTicks;
else
@@ -312,7 +312,7 @@ int sceneHandler05(ExCommand *ex) {
break;
case MSG_SC5_MAKEOTMFEEDBACK:
- if (!g_fp->_aniMan->_movement || (g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEUP
+ if (!g_fp->_aniMan->_movement || (g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEUP
&& g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEDOWN)) {
sceneHandler05_makeWackoFeedback();
g_vars->scene05_wackoTicker = 0;
@@ -341,7 +341,7 @@ int sceneHandler05(ExCommand *ex) {
sceneHandler05_testHatch(ex);
break;
- case 33:
+ case 33:
{
int res = 0;
if (g_fp->_aniMan2) {
@@ -356,7 +356,7 @@ int sceneHandler05(ExCommand *ex) {
if (g_vars->scene05_wackoTicker) {
if ((g_fp->_updateTicks - g_vars->scene05_wackoTicker) > 62) {
- if (!g_fp->_aniMan->_movement || (g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEUP
+ if (!g_fp->_aniMan->_movement || (g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEUP
&& g_fp->_aniMan->_movement->_id != MV_MANHDL_HANDLEDOWN)) {
if (g_vars->scene05_handleFlipper % 2)
sceneHandler05_makeWackoFeedback();
diff --git a/engines/fullpipe/scenes/scene06.cpp b/engines/fullpipe/scenes/scene06.cpp
index c352d27dd6..d54ebf4514 100644
--- a/engines/fullpipe/scenes/scene06.cpp
+++ b/engines/fullpipe/scenes/scene06.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -531,7 +531,7 @@ void scene06_initScene(Scene *sc) {
g_vars->scene06_mumsy->hide();
g_fp->lift_setButton(sO_Level3, ST_LBN_3N);
- g_fp->lift_sub5(sc, QU_SC6_ENTERLIFT, QU_SC6_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC6_ENTERLIFT, QU_SC6_EXITLIFT);
g_fp->initArcadeKeys("SC_6");
sceneHandler06_setExits(sc);
@@ -590,7 +590,7 @@ int sceneHandler06(ExCommand *ex) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SPINHANDLE:
@@ -622,7 +622,7 @@ int sceneHandler06(ExCommand *ex) {
break;
case 64:
- g_fp->lift_sub05(ex);
+ g_fp->lift_hoverButton(ex);
break;
case MSG_SC6_TAKEBALL:
@@ -647,7 +647,7 @@ int sceneHandler06(ExCommand *ex) {
if (st) {
if (!g_vars->scene06_arcadeEnabled && st->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(st);
+ g_fp->lift_animateButton(st);
ex->_messageKind = 0;
return 0;
}
@@ -671,7 +671,7 @@ int sceneHandler06(ExCommand *ex) {
if (!pic || !canInteractAny(g_fp->_aniMan, pic, ex->_keyCode)) {
if ((g_fp->_sceneRect.right - ex->_sceneClickX < 47
- && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1)
+ && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1)
|| (ex->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) {
g_fp->processArcade(ex);
return 0;
diff --git a/engines/fullpipe/scenes/scene07.cpp b/engines/fullpipe/scenes/scene07.cpp
index 207189d151..6db8c30932 100644
--- a/engines/fullpipe/scenes/scene07.cpp
+++ b/engines/fullpipe/scenes/scene07.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene08.cpp b/engines/fullpipe/scenes/scene08.cpp
index 716ca1f593..a5f5a8b389 100644
--- a/engines/fullpipe/scenes/scene08.cpp
+++ b/engines/fullpipe/scenes/scene08.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene09.cpp b/engines/fullpipe/scenes/scene09.cpp
new file mode 100644
index 0000000000..99cf0b20fd
--- /dev/null
+++ b/engines/fullpipe/scenes/scene09.cpp
@@ -0,0 +1,747 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "fullpipe/fullpipe.h"
+
+#include "fullpipe/objectnames.h"
+#include "fullpipe/constants.h"
+
+#include "fullpipe/gameloader.h"
+#include "fullpipe/motion.h"
+#include "fullpipe/scenes.h"
+#include "fullpipe/statics.h"
+
+#include "fullpipe/interaction.h"
+#include "fullpipe/behavior.h"
+
+
+namespace Fullpipe {
+
+struct Hanger {
+ StaticANIObject *ani;
+ int field_4;
+ int field_8;
+ int phase;
+};
+
+void scene09_setupGrit(Scene *sc) {
+ if (g_vars->scene09_grit->_statics->_staticsId == ST_GRT9_GRIT) {
+ if (!getGameLoaderInventory()->getCountItemsWithId(ANI_INV_COIN)) {
+ if (g_fp->getObjectState(sO_CoinSlot_1) == g_fp->getObjectEnumState(sO_CoinSlot_1, sO_Empty)
+ && (g_vars->swallowedEgg1->_value.intValue == ANI_INV_EGGBOOT || g_vars->swallowedEgg2->_value.intValue == ANI_INV_EGGBOOT || g_vars->swallowedEgg3->_value.intValue == ANI_INV_EGGBOOT)) {
+ Scene *oldsc = g_fp->_currentScene;
+ g_fp->_currentScene = sc;
+ g_vars->scene09_grit->changeStatics2(ST_GRT9_NORM);
+ g_fp->_currentScene = oldsc;
+ }
+ }
+ }
+}
+
+void scene09_initScene(Scene *sc) {
+ g_vars->scene09_flyingBall = 0;
+ g_vars->scene09_numSwallenBalls = 0;
+ g_vars->scene09_gulper = sc->getStaticANIObject1ById(ANI_GLOTATEL, -1);
+ g_vars->scene09_spitter = sc->getStaticANIObject1ById(ANI_PLEVATEL, -1);
+ g_vars->scene09_grit = sc->getStaticANIObject1ById(ANI_GRIT_9, -1);
+ g_vars->scene09_gulperIsPresent = true;
+ g_vars->scene09_dudeIsOnLadder = false;
+ g_vars->scene09_interactingHanger = -1;
+ g_vars->scene09_intHangerPhase = -1;
+ g_vars->scene09_intHangerMaxPhase = -1000;
+
+ g_vars->scene09_balls.cPlexLen = 10;
+ g_vars->scene09_flyingBalls.cPlexLen = 10;
+
+ while (g_vars->scene09_balls.numBalls) {
+ Ball *b = g_vars->scene09_balls.pHead->p0;
+
+ g_vars->scene09_balls.pHead = g_vars->scene09_balls.pHead->p0;
+
+ if (g_vars->scene09_balls.pHead)
+ g_vars->scene09_balls.pHead->p0->p1 = 0;
+ else
+ g_vars->scene09_balls.field_8 = 0;
+
+ g_vars->scene09_balls.init(&b);
+ }
+
+ g_vars->scene09_hangers.clear();
+ g_vars->scene09_numMovingHangers = 4;
+
+ StaticANIObject *hanger = sc->getStaticANIObject1ById(ANI_VISUNCHIK, -1);
+ Hanger *hng = new Hanger;
+
+ hng->ani = hanger;
+ hng->phase = 0;
+ hng->field_4 = 0;
+ hng->field_8 = 0;
+
+ g_vars->scene09_hangers.push_back(hng);
+
+ int x = 75;
+
+ for (int i = 1; x < 300; i++, x += 75) {
+ StaticANIObject *ani = new StaticANIObject(hanger);
+
+ ani->show1(x + hanger->_ox, hanger->_oy, MV_VSN_CYCLE2, 0);
+ sc->addStaticANIObject(hanger, 1);
+
+ hng = new Hanger;
+
+ hng->ani = ani;
+ hng->phase = 0;
+ hng->field_4 = 0;
+ hng->field_8 = 0;
+
+ g_vars->scene09_hangers.push_back(hng);
+ }
+
+ while (g_vars->scene09_flyingBalls.numBalls) {
+ Ball *ohead = g_vars->scene09_flyingBalls.pHead;
+
+ g_vars->scene09_flyingBalls.pHead = g_vars->scene09_flyingBalls.pHead->p0;
+
+ if (g_vars->scene09_flyingBalls.pHead)
+ ohead->p0->p1 = 0;
+ else
+ g_vars->scene09_flyingBalls.field_8 = 0;
+
+ ohead->p0 = g_vars->scene09_flyingBalls.pTail;
+
+ g_vars->scene09_flyingBalls.pTail = ohead;
+
+ g_vars->scene09_flyingBalls.numBalls--;
+ }
+
+ g_vars->scene09_flyingBalls.reset();
+
+ Ball *b9 = g_vars->scene09_flyingBalls.sub04(g_vars->scene09_flyingBalls.field_8, 0);
+
+ b9->ani = sc->getStaticANIObject1ById(ANI_BALL9, -1);
+ b9->ani->setAlpha(0xc8);
+
+ if (g_vars->scene09_flyingBalls.field_8) {
+ g_vars->scene09_flyingBalls.field_8->p0 = b9;
+ g_vars->scene09_flyingBalls.field_8 = b9;
+ } else {
+ g_vars->scene09_flyingBalls.pHead = b9;
+ g_vars->scene09_flyingBalls.field_8 = b9;
+ }
+
+ for (int i = 0; i < 4; i++) {
+ StaticANIObject *newball = new StaticANIObject(b9->ani);
+
+ newball->setAlpha(0xc8);
+
+ Ball *runPtr = g_vars->scene09_flyingBalls.pTail;
+ Ball *lastP = g_vars->scene09_flyingBalls.field_8;
+
+ if (!g_vars->scene09_flyingBalls.pTail) {
+ g_vars->scene09_flyingBalls.cPlex = (byte *)calloc(g_vars->scene09_flyingBalls.cPlexLen, sizeof(Ball));
+
+ byte *p1 = g_vars->scene09_flyingBalls.cPlex + (g_vars->scene09_flyingBalls.cPlexLen - 1) * sizeof(Ball);
+
+ if (g_vars->scene09_flyingBalls.cPlexLen - 1 < 0) {
+ runPtr = g_vars->scene09_flyingBalls.pTail;
+ } else {
+ runPtr = g_vars->scene09_flyingBalls.pTail;
+
+ for (int j = 0; j < g_vars->scene09_flyingBalls.cPlexLen; j++) {
+ ((Ball *)p1)->p1 = runPtr;
+ runPtr = (Ball *)p1;
+
+ p1 -= sizeof(Ball);
+ }
+
+ g_vars->scene09_flyingBalls.pTail = runPtr;
+ }
+ }
+
+ g_vars->scene09_flyingBalls.pTail = runPtr->p0;
+ runPtr->p1 = lastP;
+ runPtr->p0 = 0;
+ runPtr->ani = newball;
+
+ g_vars->scene09_flyingBalls.numBalls++;
+
+ if (g_vars->scene09_flyingBalls.field_8)
+ g_vars->scene09_flyingBalls.field_8->p0 = runPtr;
+ else
+ g_vars->scene09_flyingBalls.pHead = runPtr;
+
+ g_vars->scene09_flyingBalls.field_8 = runPtr;
+
+ sc->addStaticANIObject(newball, 1);
+ }
+
+ g_fp->setObjectState(sO_RightStairs_9, g_fp->getObjectEnumState(sO_RightStairs_9, sO_IsClosed));
+
+ GameVar *eggvar = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName(sO_GulpedEggs);
+
+ g_vars->swallowedEgg1 = eggvar->getSubVarByName(sO_Egg1);
+ g_vars->swallowedEgg2 = eggvar->getSubVarByName(sO_Egg2);
+ g_vars->swallowedEgg3 = eggvar->getSubVarByName(sO_Egg3);
+
+ scene09_setupGrit(sc);
+
+ g_fp->initArcadeKeys("SC_9");
+
+ g_fp->lift_setButton(sO_Level1, ST_LBN_1N);
+
+ g_fp->setArcadeOverlay(PIC_CSR_ARCADE4);
+}
+
+int sceneHandler09_updateScreenCallback() {
+ int res = g_fp->drawArcadeOverlay(g_fp->_objectIdAtCursor == ANI_VISUNCHIK || g_vars->scene09_interactingHanger >= 0);
+
+ if (!res)
+ g_fp->_updateScreenCallback = 0;
+
+ return res;
+}
+
+int scene09_updateCursor() {
+ g_fp->updateCursorCommon();
+
+ if (g_vars->scene09_interactingHanger < 0) {
+ if (g_fp->_objectIdAtCursor == ANI_VISUNCHIK) {
+ if (g_fp->_cursorId == PIC_CSR_ITN)
+ g_fp->_updateScreenCallback = sceneHandler09_updateScreenCallback;
+ } else {
+ if (g_fp->_objectIdAtCursor == PIC_SC9_LADDER_R && g_fp->_cursorId == PIC_CSR_ITN)
+ g_fp->_cursorId = (g_vars->scene09_dudeY < 350) ? PIC_CSR_GOD : PIC_CSR_GOU;
+ }
+ } else {
+ g_fp->_cursorId = PIC_CSR_ITN;
+ }
+
+ return g_fp->_cursorId;
+}
+
+void sceneHandler09_winArcade() {
+ if (g_vars->scene09_gulper->_flags & 4) {
+ g_vars->scene09_gulper->changeStatics2(ST_GLT_SIT);
+ g_vars->scene09_gulper->startAnim(MV_GLT_FLYAWAY, 0, -1);
+
+ g_fp->setObjectState(sO_Jug, g_fp->getObjectEnumState(sO_Jug, sO_Unblocked));
+ g_fp->setObjectState(sO_RightStairs_9, g_fp->getObjectEnumState(sO_RightStairs_9, sO_IsOpened));
+
+ g_vars->scene09_gulperIsPresent = false;
+ }
+}
+
+void sceneHandler09_startAuntie() {
+ MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_TTA9_GOL), 0, 1);
+
+ mq->getExCommandByIndex(0)->_x = g_fp->_sceneRect.right + 30;
+ mq->chain(0);
+}
+
+void sceneHandler09_spitterClick() {
+ if (g_vars->scene09_spitter->_flags & 4) {
+ PicAniInfo info;
+
+ g_vars->scene09_spitter->getPicAniInfo(&info);
+ g_vars->scene09_spitter->_messageQueueId = 0;
+ g_vars->scene09_spitter->changeStatics2(ST_PLV_SIT);
+
+ int x = g_vars->scene09_spitter->_ox - 10;
+ int y = g_vars->scene09_spitter->_oy + 145;
+
+ g_vars->scene09_spitter->setPicAniInfo(&info);
+
+ if (ABS(x - g_fp->_aniMan->_ox) > 1 || ABS(y - g_fp->_aniMan->_oy) > 1) {
+ MessageQueue *mq = getCurrSceneSc2MotionController()->method34(g_fp->_aniMan, x, y, 1, ST_MAN_UP);
+
+ if (mq) {
+ ExCommand *ex = new ExCommand(0, 17, MSG_SC9_PLVCLICK, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags = 2;
+ mq->addExCommandToEnd(ex);
+
+ postExCommand(g_fp->_aniMan->_id, 2, x, y, 0, -1);
+ }
+ } else {
+ if (!g_fp->_aniMan->_movement) {
+ g_vars->scene09_spitter->changeStatics2(ST_PLV_SIT);
+ g_vars->scene09_spitter->hide();
+
+ g_fp->_aniMan->startAnim(MV_MAN9_SHOOT, 0, -1);
+
+ g_fp->stopAllSoundInstances(SND_9_006);
+ }
+
+ g_fp->_aniMan2 = 0;
+
+ if (g_fp->_sceneRect.left < 800)
+ g_fp->_currentScene->_x = 800 - g_fp->_sceneRect.left;
+ }
+ }
+}
+
+void sceneHandler09_eatBall() {
+ if (g_vars->scene09_flyingBall) {
+ g_vars->scene09_flyingBall->hide();
+
+ Ball *ball = g_vars->scene09_balls.pHead;
+
+ if (ball) {
+ while (ball && ball->ani != g_vars->scene09_flyingBall)
+ ball = ball->p0;
+
+ if (ball) {
+ if (ball == g_vars->scene09_balls.pHead)
+ g_vars->scene09_balls.pHead = ball->p0;
+ else
+ ball->p1->p0 = ball->p0;
+
+ if (ball == g_vars->scene09_balls.field_8)
+ g_vars->scene09_balls.field_8 = ball->p1;
+ else
+ ball->p0->p1 = ball->p1;
+
+ ball->p0 = g_vars->scene09_balls.pTail;
+ g_vars->scene09_balls.pTail = ball;
+
+ g_vars->scene09_balls.numBalls--;
+
+ if (!g_vars->scene09_balls.numBalls)
+ g_vars->scene09_balls.reset();
+ }
+ }
+
+ ball = g_vars->scene09_flyingBalls.sub04(g_vars->scene09_flyingBalls.field_8, 0);
+ ball->ani = g_vars->scene09_flyingBall;
+
+ if (g_vars->scene09_flyingBalls.field_8)
+ g_vars->scene09_flyingBalls.field_8->p0 = ball;
+ else
+ g_vars->scene09_flyingBalls.pHead = ball;
+
+ g_vars->scene09_flyingBalls.field_8 = ball;
+
+ g_vars->scene09_flyingBall = 0;
+ g_vars->scene09_numSwallenBalls++;
+
+ if (g_vars->scene09_numSwallenBalls >= 3) {
+ MessageQueue *mq = g_vars->scene09_gulper->getMessageQueue();
+
+ if (mq) {
+ ExCommand *ex = new ExCommand(ANI_GLOTATEL, 1, MV_GLT_FLYAWAY, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags |= 2;
+
+ mq->addExCommandToEnd(ex);
+ }
+
+ g_fp->setObjectState(sO_Jug, g_fp->getObjectEnumState(sO_Jug, sO_Unblocked));
+ g_fp->setObjectState(sO_RightStairs_9, g_fp->getObjectEnumState(sO_RightStairs_9, sO_IsOpened));
+
+ g_vars->scene09_gulperIsPresent = false;
+ }
+ }
+}
+
+void sceneHandler09_showBall() {
+ if (g_vars->scene09_flyingBalls.numBalls) {
+ StaticANIObject *ani = g_vars->scene09_flyingBalls.pHead->ani;
+ Ball *ph = g_vars->scene09_flyingBalls.pHead;
+ g_vars->scene09_flyingBalls.pHead = ph->p0;
+
+ if (g_vars->scene09_flyingBalls.pHead)
+ ph->p0->p1 = 0;
+ else
+ g_vars->scene09_flyingBalls.field_8 = 0;
+
+ ph->p0 = g_vars->scene09_flyingBalls.pTail;
+
+ g_vars->scene09_flyingBalls.pTail = ph;
+ g_vars->scene09_flyingBalls.numBalls--;
+
+ if (!g_vars->scene09_flyingBalls.numBalls) {
+ g_vars->scene09_flyingBalls.numBalls = 0;
+ g_vars->scene09_flyingBalls.pTail = 0;
+ g_vars->scene09_flyingBalls.field_8 = 0;
+ g_vars->scene09_flyingBalls.pHead = 0;
+
+ free(g_vars->scene09_flyingBalls.cPlex);
+ g_vars->scene09_flyingBalls.cPlex = 0;
+ }
+
+ Ball *ball = g_vars->scene09_balls.sub04(g_vars->scene09_balls.field_8, 0);
+ ball->ani = ani;
+
+ if (g_vars->scene09_balls.field_8)
+ g_vars->scene09_balls.field_8->p0 = ball;
+ else
+ g_vars->scene09_balls.pHead = ball;
+
+ g_vars->scene09_balls.field_8 = ball;
+
+ ani->show1(g_fp->_aniMan->_ox + 94, g_fp->_aniMan->_oy - 162, MV_BALL9_EXPLODE, 0);
+ }
+}
+
+void sceneHandler09_cycleHangers() {
+ for (int i = 0; i < g_vars->scene09_numMovingHangers; i++) {
+ Movement *mov = g_vars->scene09_hangers[i]->ani->_movement;
+
+ if (mov && mov->_id == MV_VSN_CYCLE2) {
+ int idx;
+
+ if (g_vars->scene09_hangers[i]->phase >= 0)
+ idx = 18 - g_vars->scene09_hangers[i]->phase / 5;
+ else
+ idx = 18 - g_vars->scene09_hangers[i]->phase * 10 / 43;
+
+ if (idx > 38)
+ idx = 38;
+
+ if (idx < 1)
+ idx = 1;
+
+ mov->setDynamicPhaseIndex(idx);
+ }
+ }
+}
+
+void sceneHandler09_limitHangerPhase() {
+ for (int i = 0; i < g_vars->scene09_numMovingHangers; i++) {
+ if (i != g_vars->scene09_interactingHanger) {
+ g_vars->scene09_hangers[i]->phase += g_vars->scene09_hangers[i]->field_8;
+
+ if (g_vars->scene09_hangers[i]->phase > 85)
+ g_vars->scene09_hangers[i]->phase = 85;
+
+ if (g_vars->scene09_hangers[i]->phase < -85)
+ g_vars->scene09_hangers[i]->phase = -85;
+
+ if (g_vars->scene09_hangers[i]->phase < 0)
+ g_vars->scene09_hangers[i]->field_8++;
+
+ if (g_vars->scene09_hangers[i]->phase > 0)
+ g_vars->scene09_hangers[i]->field_8--;
+ }
+ }
+}
+
+void sceneHandler09_collideBall(Ball *ball) {
+ if (g_vars->scene09_gulperIsPresent) {
+ g_vars->scene09_flyingBall = ball->ani;
+
+ if (g_vars->scene09_gulper) {
+ g_vars->scene09_gulper->changeStatics2(ST_GLT_SIT);
+
+ MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC9_EATBALL), 0, 0);
+
+ mq->setFlags(mq->getFlags() | 1);
+
+ if (!mq->chain(g_vars->scene09_gulper))
+ delete mq;
+ }
+ }
+}
+
+void sceneHandler09_ballExplode(Ball *ball) {
+ if (ball == g_vars->scene09_balls.pHead)
+ g_vars->scene09_balls.pHead = ball->p0;
+ else
+ ball->p1->p0 = ball->p0;
+
+ if (ball == g_vars->scene09_balls.field_8)
+ g_vars->scene09_balls.field_8 = ball->p1;
+ else
+ ball->p0->p1 = ball->p1;
+
+ ball->p0 = g_vars->scene09_balls.pTail;
+
+ g_vars->scene09_balls.pTail = ball;
+ g_vars->scene09_balls.numBalls--;
+
+ if (!g_vars->scene09_balls.numBalls) {
+ g_vars->scene09_balls.pTail = 0;
+ g_vars->scene09_balls.field_8 = 0;
+ g_vars->scene09_balls.pHead = 0;
+ free(g_vars->scene09_balls.cPlex);
+ g_vars->scene09_balls.cPlex = 0;
+ }
+
+ MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC9_BALLEXPLODE), 0, 1);
+
+ mq->replaceKeyCode(-1, ball->ani->_okeyCode);
+
+ if (!mq->chain(ball->ani))
+ delete mq;
+
+ Ball *runPtr = g_vars->scene09_flyingBalls.pTail;
+ Ball *lastP = g_vars->scene09_flyingBalls.field_8;
+
+ if (!g_vars->scene09_flyingBalls.pTail) {
+ g_vars->scene09_flyingBalls.cPlex = (byte *)calloc(g_vars->scene09_flyingBalls.cPlexLen, sizeof(Ball));
+
+ byte *p1 = g_vars->scene09_flyingBalls.cPlex + (g_vars->scene09_flyingBalls.cPlexLen - 1) * sizeof(Ball);
+
+ if (g_vars->scene09_flyingBalls.cPlexLen - 1 < 0) {
+ runPtr = g_vars->scene09_flyingBalls.pTail;
+ } else {
+ runPtr = g_vars->scene09_flyingBalls.pTail;
+
+ for (int j = 0; j < g_vars->scene09_flyingBalls.cPlexLen; j++) {
+ ((Ball *)p1)->p1 = runPtr;
+ runPtr = (Ball *)p1;
+
+ p1 -= sizeof(Ball);
+ }
+
+ g_vars->scene09_flyingBalls.pTail = runPtr;
+ }
+ }
+
+ g_vars->scene09_flyingBalls.pTail = runPtr->p0;
+ runPtr->p1 = lastP;
+ runPtr->p0 = 0;
+ runPtr->ani = ball->ani;
+
+ g_vars->scene09_flyingBalls.numBalls++;
+
+ if (g_vars->scene09_flyingBalls.field_8) {
+ g_vars->scene09_flyingBalls.field_8->p0 = runPtr;
+ g_vars->scene09_flyingBalls.field_8 = runPtr;
+ } else {
+ g_vars->scene09_flyingBalls.pHead = runPtr;
+ g_vars->scene09_flyingBalls.field_8 = runPtr;
+ }
+}
+
+void sceneHandler09_checkHangerCollide() {
+ for (Ball *ball = g_vars->scene09_balls.pHead; ball; ball = ball->p0) {
+ int newx = ball->ani->_ox + 5;
+
+ ball->ani->setOXY(newx, ball->ani->_oy);
+
+ if (newx <= 1398 || g_vars->scene09_flyingBall) {
+ if (g_vars->scene09_gulperIsPresent)
+ goto LABEL_11;
+ } else if (g_vars->scene09_gulperIsPresent) {
+ sceneHandler09_collideBall(ball);
+ continue;
+ }
+
+ if (newx > 1600) {
+ sceneHandler09_ballExplode(ball);
+ continue;
+ }
+
+ LABEL_11:
+ int pixel;
+
+ for (int i = 0; i < g_vars->scene09_numMovingHangers; i++) {
+ for (int j = 0; j < 4; j++) {
+ g_vars->scene09_hangers[i]->ani->getPixelAtPos(newx + g_vars->scene09_hangerOffsets[j].x, ball->ani->_oy + g_vars->scene09_hangerOffsets[j].y, &pixel);
+
+ if (pixel) {
+ sceneHandler09_ballExplode(ball);
+ break;
+ }
+ }
+ }
+ }
+}
+
+void sceneHandler09_hangerStartCycle() {
+ StaticANIObject *ani = g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->ani;
+
+ if (ani->_movement) {
+ ani->startAnim(MV_VSN_CYCLE2, 0, -1);
+ g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->field_8 = 0;
+ g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->phase = g_vars->scene09_intHangerPhase + (g_fp->_mouseScreenPos.y - g_vars->scene09_clickY) / 2;
+
+ if (g_vars->scene09_intHangerMaxPhase != -1000 && g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->phase != g_vars->scene09_intHangerMaxPhase) {
+ ExCommand *ex = new ExCommand(0, 35, SND_9_019, 0, 0, 0, 1, 0, 0, 0);
+
+ ex->_field_14 = 1;
+ ex->_excFlags |= 2;
+ ex->postMessage();
+
+ g_vars->scene09_intHangerMaxPhase = -1000;
+ }
+ } else {
+ g_vars->scene09_interactingHanger = -1;
+ }
+}
+
+int sceneHandler09(ExCommand *cmd) {
+ if (cmd->_messageKind != 17)
+ return 0;
+
+ switch (cmd->_messageNum) {
+ case MSG_CMN_WINARCADE:
+ sceneHandler09_winArcade();
+ break;
+
+ case MSG_SC9_STARTTIOTIA:
+ sceneHandler09_startAuntie();
+ break;
+
+ case MSG_SC9_FROMLADDER:
+ getCurrSceneSc2MotionController()->setEnabled();
+ getGameLoaderInteractionController()->enableFlag24();
+
+ g_vars->scene09_dudeIsOnLadder = false;
+ break;
+
+ case MSG_SC9_TOLADDER:
+ getCurrSceneSc2MotionController()->clearEnabled();
+ getGameLoaderInteractionController()->disableFlag24();
+
+ g_vars->scene09_dudeIsOnLadder = true;
+ break;
+
+ case MSG_SC9_PLVCLICK:
+ sceneHandler09_spitterClick();
+ break;
+
+ case MSG_SC9_FLOWN:
+ g_vars->scene09_gulperIsPresent = false;
+ break;
+
+ case MSG_SC9_EATBALL:
+ sceneHandler09_eatBall();
+ break;
+
+ case MSG_SC9_SHOWBALL:
+ sceneHandler09_showBall();
+ break;
+
+ case 33:
+ {
+ int res = 0;
+
+ if (g_fp->_aniMan2) {
+ int x = g_fp->_aniMan2->_ox;
+
+ g_vars->scene09_dudeY = g_fp->_aniMan2->_oy;
+
+ if (x < g_fp->_sceneRect.left + 200)
+ g_fp->_currentScene->_x = x - g_fp->_sceneRect.left - 300;
+
+ if (x > g_fp->_sceneRect.right - 200)
+ g_fp->_currentScene->_x = x - g_fp->_sceneRect.right + 300;
+
+ res = 1;
+ } else {
+ if (g_fp->_aniMan->_movement && g_fp->_aniMan->_movement->_id != MV_MAN9_SHOOT)
+ g_fp->_aniMan2 = g_fp->_aniMan;
+ }
+
+ sceneHandler09_cycleHangers();
+ sceneHandler09_limitHangerPhase();
+ sceneHandler09_checkHangerCollide();
+
+ if (g_vars->scene09_interactingHanger >= 0)
+ sceneHandler09_hangerStartCycle();
+
+ g_fp->_behaviorManager->updateBehaviors();
+
+ g_fp->startSceneTrack();
+
+ return res;
+ }
+
+ case 30:
+ if (g_vars->scene09_interactingHanger >= 0) {
+ if (ABS(g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->phase) < 15) {
+ g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->ani->_callback2 = 0;
+ g_vars->scene09_hangers[g_vars->scene09_interactingHanger]->ani->changeStatics2(ST_VSN_NORMAL);
+ }
+ }
+
+ g_vars->scene09_interactingHanger = -1;
+
+ break;
+
+ case 29:
+ {
+ StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y);
+
+ if (ani) {
+ if (ani->_id == ANI_PLEVATEL) {
+ sceneHandler09_spitterClick();
+ break;
+ }
+
+ if (ani->_id == ANI_VISUNCHIK) {
+ if (g_vars->scene09_numMovingHangers > 0) {
+ int hng = 0;
+
+ while (g_vars->scene09_hangers[hng]->ani != ani) {
+ ++hng;
+
+ if (hng >= g_vars->scene09_numMovingHangers)
+ break;
+ }
+
+ g_vars->scene09_interactingHanger = hng;
+ g_vars->scene09_intHangerPhase = g_vars->scene09_hangers[hng]->phase;
+ g_vars->scene09_intHangerMaxPhase = g_vars->scene09_hangers[hng]->phase;
+
+ g_vars->scene09_clickY = cmd->_y;
+
+ if (!g_vars->scene09_hangers[hng]->ani->_movement || g_vars->scene09_hangers[hng]->ani->_movement->_id != MV_VSN_CYCLE2) {
+ g_vars->scene09_hangers[hng]->ani->changeStatics2(ST_VSN_NORMAL);
+ g_vars->scene09_hangers[hng]->ani->startAnim(MV_VSN_CYCLE2, 0, -1);
+ g_vars->scene09_hangers[hng]->ani->_callback2 = 0;
+ }
+
+ ExCommand *ex = new ExCommand(0, 35, SND_9_018, 0, 0, 0, 1, 0, 0, 0);
+
+ ex->_field_14 = 1;
+ ex->_excFlags |= 2;
+ ex->postMessage();
+ }
+
+ break;
+ }
+ }
+
+ if (g_vars->scene09_dudeIsOnLadder && g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC9_LADDER_R
+ && !cmd->_keyCode && !g_fp->_aniMan->_movement) {
+ handleObjectInteraction(g_fp->_aniMan, g_fp->_currentScene->getPictureObjectById(PIC_SC9_LADDER_R, 0), 0);
+ }
+
+ if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_keyCode)) {
+ int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
+ PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0);
+
+ if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_keyCode)) {
+ if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1) || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0))
+ g_fp->processArcade(cmd);
+ }
+ }
+
+ break;
+ }
+ }
+
+ return 0;
+}
+
+} // End of namespace Fullpipe
diff --git a/engines/fullpipe/scenes/scene10.cpp b/engines/fullpipe/scenes/scene10.cpp
index f8d16b2759..8c9e0b67d0 100644
--- a/engines/fullpipe/scenes/scene10.cpp
+++ b/engines/fullpipe/scenes/scene10.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -43,7 +43,7 @@ void scene10_initScene(Scene *sc) {
g_vars->scene10_ladder = sc->getPictureObjectById(PIC_SC10_LADDER, 0);
g_fp->lift_setButton(sO_Level1, ST_LBN_1N);
- g_fp->lift_sub5(sc, QU_SC10_ENTERLIFT, QU_SC10_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC10_ENTERLIFT, QU_SC10_EXITLIFT);
if (g_fp->getObjectState(sO_Inflater) == g_fp->getObjectEnumState(sO_Inflater, sO_WithGum)) {
g_vars->scene10_hasGum = 1;
@@ -140,7 +140,7 @@ int sceneHandler10(ExCommand *ex) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC10_LADDERTOBACK:
@@ -170,7 +170,7 @@ int sceneHandler10(ExCommand *ex) {
break;
case 64:
- g_fp->lift_sub05(ex);
+ g_fp->lift_hoverButton(ex);
break;
case 29:
@@ -185,7 +185,7 @@ int sceneHandler10(ExCommand *ex) {
StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(ex->_sceneClickX, ex->_sceneClickY);
if (ani && ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
ex->_messageKind = 0;
return 0;
diff --git a/engines/fullpipe/scenes/scene11.cpp b/engines/fullpipe/scenes/scene11.cpp
index e7ed947a00..0ce82f5d5f 100644
--- a/engines/fullpipe/scenes/scene11.cpp
+++ b/engines/fullpipe/scenes/scene11.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene12.cpp b/engines/fullpipe/scenes/scene12.cpp
index 0295efcaf5..f63bb9a9fd 100644
--- a/engines/fullpipe/scenes/scene12.cpp
+++ b/engines/fullpipe/scenes/scene12.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene13.cpp b/engines/fullpipe/scenes/scene13.cpp
index 0a0c2f3906..c7b3c96b93 100644
--- a/engines/fullpipe/scenes/scene13.cpp
+++ b/engines/fullpipe/scenes/scene13.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene14.cpp b/engines/fullpipe/scenes/scene14.cpp
index 4a09bc9cb6..21dbe8101f 100644
--- a/engines/fullpipe/scenes/scene14.cpp
+++ b/engines/fullpipe/scenes/scene14.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -72,7 +72,7 @@ void scene14_initScene(Scene *sc) {
}
g_fp->lift_setButton(sO_Level4, ST_LBN_4N);
- g_fp->lift_sub5(sc, QU_SC14_ENTERLIFT, QU_SC14_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC14_ENTERLIFT, QU_SC14_EXITLIFT);
g_fp->initArcadeKeys("SC_14");
g_fp->setArcadeOverlay(PIC_CSR_ARCADE6);
@@ -665,7 +665,7 @@ int sceneHandler14(ExCommand *cmd) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC14_SHOWBALLGMAHIT:
@@ -749,7 +749,7 @@ int sceneHandler14(ExCommand *cmd) {
break;
case 64:
- g_fp->lift_sub05(cmd);
+ g_fp->lift_hoverButton(cmd);
break;
case 33:
@@ -820,7 +820,7 @@ int sceneHandler14(ExCommand *cmd) {
StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
if (ani && ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
cmd->_messageKind = 0;
break;
}
diff --git a/engines/fullpipe/scenes/scene15.cpp b/engines/fullpipe/scenes/scene15.cpp
index 046e9c9adc..452f2edeca 100644
--- a/engines/fullpipe/scenes/scene15.cpp
+++ b/engines/fullpipe/scenes/scene15.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -88,7 +88,7 @@ void scene15_initScene(Scene *sc) {
g_fp->_currentScene = oldsc;
g_fp->lift_setButton(sO_Level5, ST_LBN_5N);
- g_fp->lift_sub5(sc, QU_SC15_ENTERLIFT, QU_SC15_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC15_ENTERLIFT, QU_SC15_EXITLIFT);
}
int scene15_updateCursor() {
@@ -144,7 +144,7 @@ int sceneHandler15(ExCommand *cmd) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC15_PULL:
@@ -156,7 +156,7 @@ int sceneHandler15(ExCommand *cmd) {
break;
case 64:
- g_fp->lift_sub05(cmd);
+ g_fp->lift_hoverButton(cmd);
break;
case 29:
@@ -171,7 +171,7 @@ int sceneHandler15(ExCommand *cmd) {
StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
if (ani && ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
cmd->_messageKind = 0;
}
diff --git a/engines/fullpipe/scenes/scene16.cpp b/engines/fullpipe/scenes/scene16.cpp
index b1e261287a..9ed355fdd9 100644
--- a/engines/fullpipe/scenes/scene16.cpp
+++ b/engines/fullpipe/scenes/scene16.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene17.cpp b/engines/fullpipe/scenes/scene17.cpp
index 73bf7ab1c0..d40f8cf816 100644
--- a/engines/fullpipe/scenes/scene17.cpp
+++ b/engines/fullpipe/scenes/scene17.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene18and19.cpp b/engines/fullpipe/scenes/scene18and19.cpp
index a965cfb98e..4f6677876b 100644
--- a/engines/fullpipe/scenes/scene18and19.cpp
+++ b/engines/fullpipe/scenes/scene18and19.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -36,14 +36,897 @@
namespace Fullpipe {
+struct Swinger {
+ StaticANIObject *ani;
+ int sfield_4;
+ double angle;
+ int sx;
+ int sy;
+ int ix;
+ int iy;
+ int sflags;
+ int sfield_24;
+};
+
+
+#define ANGLE(x) ((x) * M_PI / 180)
+
void scene18_preload() {
- warning("WARNING: scene18_preload()");
+ g_fp->_scene3 = 0;
+
+ for (SceneTagList::iterator s = g_fp->_gameProject->_sceneTagList->begin(); s != g_fp->_gameProject->_sceneTagList->end(); ++s) {
+ if (s->_sceneId == SC_18) {
+ g_fp->_scene3 = s->_scene;
+ s->_scene = 0;
+
+ g_fp->_scene3->getStaticANIObject1ById(ANI_WHIRLIGIG_18, -1)->freeMovementsPixelData();
+
+ break;
+ }
+ }
+}
+
+void scene18_setupEntrance() {
+ GameVar *var = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME");
+
+ if (var->getSubVarAsInt("Entrance") == TrubaRight)
+ var->setSubVarAsInt("Entrance", TrubaLeft);
+}
+
+void scene19_setSugarState(Scene *sc) {
+ if (g_fp->getObjectState(sO_Sugar) != g_fp->getObjectEnumState(sO_Sugar, sO_Present)) {
+ Scene *oldsc = g_fp->_currentScene;
+
+ g_fp->_currentScene = sc;
+ sc->getStaticANIObject1ById(ANI_CORDIE, -1)->changeStatics2(ST_CDI_EMPTY2);
+ g_fp->_currentScene = oldsc;
+ }
+}
+
+void scene19_setMovements(Scene *sc, int entranceId) {
+ if (entranceId == TrubaRight) {
+ g_vars->scene18_enteredTrubaRight = true;
+ } else {
+ g_vars->scene18_enteredTrubaRight = false;
+ g_vars->scene19_enteredTruba3 = (entranceId == PIC_SC19_RTRUBA3);
+ }
+
+ for (uint i = 0; i < g_vars->scene18_swingers.size(); i++) {
+ if (!g_vars->scene18_enteredTrubaRight && (g_vars->scene18_swingers[i]->sflags & 0x20)) {
+ Scene *oldsc = g_fp->_currentScene;
+
+ g_vars->scene18_swingers[i]->sflags = 1;
+
+ g_fp->_currentScene = sc;
+ g_vars->scene18_swingers[i]->ani->changeStatics2(ST_KSL_NORM);
+ g_vars->scene18_swingers[i]->ani->_priority = 30;
+ g_fp->_currentScene = oldsc;
+ }
+
+ sc->deleteStaticANIObject(g_vars->scene18_swingers[i]->ani);
+ }
+
+ if (g_vars->scene18_whirlgig->_movement) {
+ g_vars->scene18_whirlgigMovMum = g_vars->scene18_whirlgig->_movement->_currDynamicPhaseIndex + 1;
+
+ int mx;
+
+ if (g_vars->scene18_whirlgig->_movement->_currMovement)
+ mx = g_vars->scene18_whirlgig->_movement->_currMovement->_dynamicPhases.size();
+ else
+ mx = g_vars->scene18_whirlgig->_movement->_dynamicPhases.size();
+
+ if (g_vars->scene18_whirlgigMovMum > mx - 1)
+ g_vars->scene18_whirlgigMovMum = -1;
+ } else {
+ g_vars->scene18_whirlgigMovMum = 0;
+ }
+
+ sc->deleteStaticANIObject(g_vars->scene18_boy);
+ sc->deleteStaticANIObject(g_vars->scene18_girl);
+ sc->stopAllSounds();
+}
+
+void scene19_preload() {
+ for (SceneTagList::iterator s = g_fp->_gameProject->_sceneTagList->begin(); s != g_fp->_gameProject->_sceneTagList->end(); ++s) {
+ if (s->_sceneId == SC_18) {
+ s->_scene = g_fp->_scene3;
+
+ break;
+ }
+ }
}
-void scene19_preload(Scene *sc, int key) {
- warning("WARNING: scene19_preload()");
+void scene18_setupSwingers(StaticANIObject *ani, Scene *sc) {
+ Swinger *swinger;
+
+ g_vars->scene18_swingers.clear();
+
+ Scene *oldsc = g_fp->_currentScene;
+ g_fp->_currentScene = sc;
+
+ for (int i = 0; i < 8; i++) {
+ swinger = new Swinger;
+
+ swinger->angle = (double)i * ANGLE(45);
+ swinger->sx = g_vars->scene18_wheelCenterX - (int)(cos(swinger->angle) * -575.0);
+ swinger->sy = g_vars->scene18_wheelCenterY - (int)(sin(swinger->angle) * -575.0) + 87;
+ swinger->ix = swinger->sx;
+ swinger->iy = swinger->sy;
+
+ if (i) {
+ StaticANIObject *newani = new StaticANIObject(ani);
+
+ ani = newani;
+
+ swinger->ani = newani;
+ swinger->sflags = 2;
+
+ sc->addStaticANIObject(newani, 1);
+ } else {
+ swinger->ani = ani;
+ swinger->sflags = g_vars->scene18_girlIsSwinging ? 4 : 1;
+ }
+
+ ani->_statics = ani->getStaticsById(ST_KSL_NORM);
+ //ani->_movement = 0;
+ ani->setOXY(swinger->sx, swinger->sy);
+ ani->_priority = 30;
+ ani->_flags |= 4;
+
+ if (swinger->sflags & 2)
+ ani->startAnim(MV_KSL_SWINGBOY, 0, -1);
+ else if (swinger->sflags & 4)
+ ani->startAnim(MV_KSL_SWINGGIRL, 0, -1);
+ else
+ ani->startAnim(MV_KSL_SWING, 0, -1);
+
+ ani->_movement->setDynamicPhaseIndex(g_fp->_rnd->getRandomNumber(17));
+
+ g_vars->scene18_swingers.push_back(swinger);
+ }
+
+ g_fp->_currentScene = oldsc;
}
+void scene18_initScene1(Scene *sc) {
+ PicAniInfo info;
+
+ int oldx = g_vars->scene18_wheelCenterX;
+ int oldy = g_vars->scene18_wheelCenterY;
+
+ g_vars->scene18_girlIsSwinging = (g_fp->getObjectState(sO_Girl) == g_fp->getObjectEnumState(sO_Girl, sO_IsSwinging));
+
+ if (sc->_sceneId == SC_18) {
+ g_vars->scene18_whirlgig = sc->getStaticANIObject1ById(ANI_WHIRLIGIG_18, -1);
+ g_vars->scene18_wheelCenterX = 1032;
+ g_vars->scene18_wheelCenterY = -318;
+ } else {
+ g_vars->scene18_whirlgig = sc->getStaticANIObject1ById(ANI_WHIRLGIG_19, -1);
+ g_vars->scene18_wheelCenterX = 1024;
+ g_vars->scene18_wheelCenterY = 242;
+ }
+
+ int newx = g_vars->scene18_wheelCenterX - oldx;
+ int newy = g_vars->scene18_wheelCenterY - oldy;
+
+ g_vars->scene18_boyJumpX += newx;
+ g_vars->scene18_boyJumpY += newy;
+ g_vars->scene18_girlJumpX += newx;
+ g_vars->scene18_girlJumpY += newy;
+
+ for (uint i = 0; i < g_vars->scene18_swingers.size(); i++) {
+ g_vars->scene18_swingers[i]->ani->getPicAniInfo(&info);
+ sc->addStaticANIObject(g_vars->scene18_swingers[i]->ani, 1);
+ g_vars->scene18_swingers[i]->ani->setPicAniInfo(&info);
+
+ g_vars->scene18_swingers[i]->sx += newx;
+ g_vars->scene18_swingers[i]->sy += newy;
+ g_vars->scene18_swingers[i]->ix += newx;
+ g_vars->scene18_swingers[i]->iy += newy;
+
+ GameObject *go;
+
+ if (g_vars->scene18_swingers[i]->ani->_movement)
+ go = g_vars->scene18_swingers[i]->ani->_movement;
+ else
+ go = g_vars->scene18_swingers[i]->ani;
+
+ go->setOXY(newx + go->_ox, newy + go->_oy);
+ }
+
+ if (g_vars->scene18_bridgeIsConvoluted && g_vars->scene18_whirlgigMovMum != -1) {
+ g_vars->scene18_whirlgig->startAnim(sc->_sceneId != SC_18 ? MV_WHR19_SPIN : MV_WHR18_SPIN, 0, -1);
+ g_vars->scene18_whirlgig->_movement->setDynamicPhaseIndex(g_vars->scene18_whirlgigMovMum);
+ }
+
+ int sndid;
+
+ if (sc->_sceneId == SC_19) {
+ if (g_vars->scene18_bridgeIsConvoluted)
+ sndid = SND_19_015;
+ else
+ sndid = SND_19_016;
+ } else {
+ if (g_vars->scene18_bridgeIsConvoluted)
+ sndid = SND_18_006;
+ else
+ sndid = SND_18_010;
+ }
+
+ g_fp->playSound(sndid, 1);
+
+ g_vars->scene18_boy->getPicAniInfo(&info);
+ sc->addStaticANIObject(g_vars->scene18_boy, 1);
+ g_vars->scene18_boy->setPicAniInfo(&info);
+
+ int x, y;
+
+ if (g_vars->scene18_boy->_movement) {
+ x = g_vars->scene18_boy->_movement->_ox;
+ y = g_vars->scene18_boy->_movement->_oy;
+ } else {
+ x = g_vars->scene18_boy->_ox;
+ y = g_vars->scene18_boy->_oy;
+ }
+
+ g_vars->scene18_boy->setOXY(newx + x, newy + y);
+
+ g_vars->scene18_girl->getPicAniInfo(&info);
+ sc->addStaticANIObject(g_vars->scene18_girl, 1);
+ g_vars->scene18_girl->setPicAniInfo(&info);
+
+ if (g_vars->scene18_girl->_movement) {
+ x = g_vars->scene18_girl->_movement->_ox;
+ y = g_vars->scene18_girl->_movement->_oy;
+ } else {
+ x = g_vars->scene18_girl->_ox;
+ y = g_vars->scene18_girl->_oy;
+ }
+
+ g_vars->scene18_girl->setOXY(newx + x, newy + y);
+
+ g_vars->scene18_wheelFlipper = false;
+ g_vars->scene18_jumpDistance = -1;
+ g_vars->scene18_jumpAngle = -1;
+
+ if (g_vars->scene18_enteredTrubaRight) {
+ if (sc->_sceneId == SC_19)
+ g_fp->_aniMan2 = 0;
+ else
+ g_fp->_aniMan2 = g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani;
+ } else {
+ g_fp->_aniMan2 = g_fp->_aniMan;
+ }
+}
+
+void scene18_initScene2(Scene *sc) {
+ g_vars->scene18_whirlgig = sc->getStaticANIObject1ById(ANI_WHIRLIGIG_18, -1);
+ g_vars->scene18_wheelCenterX = 1032;
+ g_vars->scene18_wheelCenterY = -318;
+
+ StaticANIObject *armchair = sc->getStaticANIObject1ById(ANI_KRESLO, -1);
+
+ armchair->loadMovementsPixelData();
+
+ g_vars->scene18_girlIsSwinging = (g_fp->getObjectState(sO_Girl) == g_fp->getObjectEnumState(sO_Girl, sO_IsSwinging));
+
+ if (g_fp->getObjectState(sO_Bridge) == g_fp->getObjectEnumState(sO_Bridge, sO_Convoluted)) {
+ g_vars->scene18_bridgeIsConvoluted = true;
+ g_fp->playSound(SND_18_006, 1);
+ } else {
+ g_vars->scene18_bridgeIsConvoluted = false;
+ g_fp->playSound(SND_18_010, 1);
+ }
+
+ scene18_setupSwingers(armchair, sc);
+
+ g_vars->scene18_rotationCounter = 0;
+ g_vars->scene18_wheelFlipper = false;
+ g_vars->scene18_wheelIsTurning = true;
+ g_vars->scene18_kidIsOnWheel = -1;
+ g_vars->scene18_boyIsOnWheel = 0;
+ g_vars->scene18_girlIsOnWheel = 0;
+ g_vars->scene18_boyJumpedOff = true;
+ g_vars->scene18_manWheelPosTo = -1;
+ g_vars->scene18_jumpDistance = -1;
+ g_vars->scene18_jumpAngle = -1;
+ g_vars->scene18_manIsReady = false;
+ g_vars->scene18_enteredTrubaRight = 0;
+ g_vars->scene18_boy = sc->getStaticANIObject1ById(ANI_BOY18, -1);
+ g_vars->scene18_girl = sc->getStaticANIObject1ById(ANI_GIRL18, -1);
+ g_vars->scene18_domino = sc->getStaticANIObject1ById(ANI_DOMINO_18, -1);
+ g_vars->scene18_boyJumpX = 290;
+ g_vars->scene18_boyJumpY = -363;
+ g_vars->scene18_girlJumpX = 283;
+ g_vars->scene18_girlJumpY = -350;
+
+ g_fp->initArcadeKeys("SC_18");
+}
+
+void scene19_initScene2() {
+ g_fp->_aniMan2 = 0;
+}
+
+int scene18_updateCursor() {
+ if (g_vars->scene18_enteredTrubaRight) {
+ g_fp->_cursorId = PIC_CSR_DEFAULT;
+ } else {
+ g_fp->updateCursorCommon();
+
+ if (g_fp->_cursorId == PIC_CSR_ITN) {
+ if (g_fp->_objectIdAtCursor == PIC_SC18_LADDER1) {
+ g_fp->_cursorId = (g_vars->scene18_manY <= 250) ? PIC_CSR_GOD : PIC_CSR_GOU;
+ } else if (g_fp->_objectIdAtCursor == PIC_SC18_LADDER2 || g_fp->_objectIdAtCursor == PIC_SC18_LADDER3) {
+ g_fp->_cursorId = PIC_CSR_GOU;
+ }
+ } else if (g_fp->_cursorId == PIC_CSR_DEFAULT && g_fp->_objectIdAtCursor == PIC_SC18_DOMIN && g_vars->scene18_domino && (g_vars->scene18_domino->_flags & 4)) {
+ g_fp->_cursorId = PIC_CSR_ITN;
+ }
+ }
+
+ return g_fp->_cursorId;
+}
+
+int scene19_updateCursor() {
+ g_fp->updateCursorCommon();
+
+ if (g_fp->_objectIdAtCursor == PIC_SC19_RTRUBA31)
+ g_fp->_cursorId = g_vars->scene19_enteredTruba3 ? PIC_CSR_GOR : PIC_CSR_DEFAULT;
+
+ return g_fp->_cursorId;
+}
+
+void sceneHandler18_clickBoard() {
+ if (ABS(967 - g_fp->_aniMan->_ox) > 1 || ABS(379 - g_fp->_aniMan->_oy) > 1 || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) {
+ MessageQueue *mq = getCurrSceneSc2MotionController()->method34(g_fp->_aniMan, 967, 379, 1, ST_MAN_RIGHT);
+ ExCommand *ex = new ExCommand(0, 17, MSG_SC18_MANREADY, 0, 0, 0, 1, 0, 0, 0);
+
+ ex->_excFlags = 2;
+
+ mq->addExCommandToEnd(ex);
+
+ postExCommand(g_fp->_aniMan->_id, 2, 967, 379, 0, -1);
+ } else {
+ g_vars->scene18_manIsReady = true;
+ }
+}
+
+void sceneHandler18_showManJumpTo() {
+ g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT);
+ g_fp->_aniMan->_flags &= 0xFFFB;
+ g_fp->_aniMan->_flags &= 0xFEFF;
+ g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->sflags = 0x20;
+
+ g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani->changeStatics2(ST_KSL_JUMPMAN);
+ g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani->startAnim(MV_KSL_INMAN, 0, -1);
+ g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani->_priority = 20;
+
+ g_vars->scene18_manIsReady = false;
+ g_vars->scene18_enteredTrubaRight = true;
+
+ g_fp->_aniMan2 = g_vars->scene18_swingers[g_vars->scene18_manWheelPosTo]->ani;
+}
+
+void sceneHandler18and19_showManJump() {
+ int x, y;
+
+ if (g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->ani->_movement) {
+ x = g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->ani->_movement->_ox;
+ y = g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->ani->_movement->_oy;
+ } else {
+ x = g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->ani->_ox;
+ y = g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->ani->_oy;
+ }
+
+ g_fp->_aniMan->show1(x + 62, y + 5, MV_MAN18_JUMPTOTRUBA, 0);
+ g_fp->_aniMan->_priority = 35;
+
+ int mqid = 0;
+
+ if (g_vars->scene18_jumpDistance == 1) {
+ mqid = QU_SC19_MANJUMP1;
+ } else if (g_vars->scene18_jumpDistance == 2) {
+ mqid = QU_SC19_MANJUMP2;
+ } else if (g_vars->scene18_jumpDistance == 3) {
+ mqid = QU_SC19_MANJUMP3;
+ }
+
+ if (mqid) {
+ MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(mqid), 0, 0);
+
+ g_fp->_aniMan2 = g_fp->_aniMan;
+ g_vars->scene18_enteredTrubaRight = false;
+
+ mq->setFlags(mq->getFlags() | 1);
+ mq->chain(0);
+ }
+
+ g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->sflags = 1;
+
+ g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->ani->changeStatics2(ST_KSL_NORM);
+ g_vars->scene18_swingers[g_vars->scene18_manWheelPos]->ani->_priority = 30;
+}
+
+void sceneHandler18and19_showGirlJumpTo() {
+ g_vars->scene18_girl->stopAnim_maybe();
+ g_vars->scene18_girl->hide();
+
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPosTo]->sflags = 4;
+
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPosTo]->ani->changeStatics2(ST_KSL_JUMPGIRL);
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPosTo]->ani->startAnim(MV_KSL_INGIRL, 0, -1);
+
+ g_vars->scene18_kidIsOnWheel--;
+ g_vars->scene18_girlIsOnWheel--;
+}
+
+void sceneHandler18and19_showGirlJump() {
+ StaticANIObject *ani = g_vars->scene18_swingers[g_vars->scene18_kidWheelPos]->ani;
+ int x, y;
+
+ if (ani->_movement) {
+ x = ani->_movement->_ox;
+ y = ani->_movement->_oy;
+ } else {
+ x = ani->_ox;
+ y = ani->_oy;
+ }
+
+ g_vars->scene18_girl->show1(x - 62, y - 10, MV_GRL18_JUMPFROM, 0);
+ g_vars->scene18_girl->_priority = 50;
+ g_vars->scene18_girl->startAnim(MV_GRL18_JUMPFROM, 0, -1);
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPos]->sflags = 1;
+
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPos]->ani->changeStatics2(ST_KSL_REACT);
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPos]->ani->startAnim(MV_KSL_CALMDOWN, 0, -1);
+
+ g_vars->scene18_kidIsOnWheel = 1;
+ g_vars->scene18_girlIsOnWheel++;
+}
+
+void sceneHandler18and19_showBoyJumpTo() {
+ g_vars->scene18_boy->stopAnim_maybe();
+ g_vars->scene18_boy->hide();
+
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPosTo]->sflags = 2;
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPosTo]->ani->changeStatics2(ST_KSL_JUMPBOY);
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPosTo]->ani->startAnim(MV_KSL_INBOY, 0, -1);
+
+ g_vars->scene18_kidIsOnWheel--;
+ g_vars->scene18_boyIsOnWheel--;
+}
+
+void sceneHandler18and19_showBoyJump() {
+ StaticANIObject *ani = g_vars->scene18_swingers[g_vars->scene18_kidWheelPos]->ani;
+ int x, y;
+
+ if (ani->_movement) {
+ x = ani->_movement->_ox;
+ y = ani->_movement->_oy;
+ } else {
+ x = ani->_ox;
+ y = ani->_oy;
+ }
+
+ g_vars->scene18_boy->show1(x - 48, y + 8, MV_BOY18_JUMPFROM, 0);
+ g_vars->scene18_boy->_priority = 50;
+ g_vars->scene18_boy->startAnim(MV_BOY18_JUMPFROM, 0, -1);
+
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPos]->sflags = 1;
+
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPos]->ani->changeStatics2(ST_KSL_REACT);
+ g_vars->scene18_swingers[g_vars->scene18_kidWheelPos]->ani->startAnim(MV_KSL_CALMDOWN, 0, -1);
+
+ g_vars->scene18_boyJumpedOff = true;
+}
+
+void sceneHandler18and19_boyJumpTo() {
+ g_vars->scene18_boy->stopAnim_maybe();
+ g_vars->scene18_boy->show1(g_vars->scene18_boyJumpX, g_vars->scene18_boyJumpY, MV_BOY18_JUMPTO, 0);
+ g_vars->scene18_boy->_priority = 50;
+ g_vars->scene18_boy->startAnim(MV_BOY18_JUMPTO, 0, -1);
+}
+
+void sceneHandler18and19_girlJumpTo() {
+ g_vars->scene18_girl->stopAnim_maybe();
+ g_vars->scene18_girl->show1(g_vars->scene18_girlJumpX, g_vars->scene18_girlJumpY, MV_GRL18_JUMPTO, 0);
+ g_vars->scene18_girl->_priority = 50;
+ g_vars->scene18_girl->startAnim(MV_GRL18_JUMPTO, 0, -1);
+}
+
+void sceneHandler18and19_manStandArmchair() {
+ g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT);
+ g_fp->_aniMan->_flags |= 1;
+ g_fp->_aniMan->_priority = 35;
+ g_fp->_aniMan->startAnim(MV_MAN18_STANDKRESLO, 0, -1);
+}
+
+void sceneHandler18and19_drawRiders() {
+ g_vars->scene18_rotationCounter++;
+
+ if (g_vars->scene18_rotationCounter >= 359)
+ g_vars->scene18_rotationCounter = 0;
+
+ for (uint i = 0; i < g_vars->scene18_swingers.size(); i++) {
+ Swinger *swinger = g_vars->scene18_swingers[i];
+
+ double oldangle = swinger->angle;
+
+ swinger->angle += ANGLE(1);
+
+ if (swinger->angle > ANGLE(360)) {
+ swinger->angle -= ANGLE(360);
+ oldangle -= ANGLE(360);
+ }
+
+ int ix = g_vars->scene18_wheelCenterX - (int)(cos(swinger->angle) * -575.0);
+ int iy = g_vars->scene18_wheelCenterY - (int)(sin(swinger->angle) * -575.0) + 87;
+
+ if (!g_vars->scene18_rotationCounter) {
+ ix = swinger->sx;
+ iy = swinger->sy;
+ swinger->angle = (double)i * ANGLE(45);
+ }
+
+ if (swinger->ani->_movement)
+ swinger->ani->setOXY(ix - swinger->ix + swinger->ani->_movement->_ox, iy - swinger->iy + swinger->ani->_movement->_oy);
+ else
+ swinger->ani->setOXY(ix - swinger->ix + swinger->ani->_ox, iy - swinger->iy + swinger->ani->_oy);
+
+ swinger->ix = ix;
+ swinger->iy = iy;
+
+ if (!swinger->ani->_movement) {
+ int mv = 0;
+
+ if (swinger->sflags & 2) {
+ mv = MV_KSL_SWINGBOY;
+ } else if (swinger->sflags & 4) {
+ mv = MV_KSL_SWINGGIRL;
+ } else if (swinger->sflags & 0x20) {
+ mv = MV_KSL_SWINGMAN;
+ } else if (swinger->sflags & 1) {
+ mv = MV_KSL_SWING;
+ }
+
+ if (mv)
+ swinger->ani->startAnim(mv, 0, -1);
+
+ if (swinger->ani->_movement)
+ swinger->ani->_movement->_counter = 0;
+ }
+
+ if (g_vars->scene18_wheelIsTurning) {
+ if ((swinger->sflags & 2) && swinger->angle >= ANGLE(160) && oldangle < ANGLE(160)) {
+ swinger->sflags = 8;
+ swinger->ani->changeStatics2(ST_KSL_BOY);
+ swinger->ani->startAnim(MV_KSL_JUMPBOY, 0, -1);
+ g_vars->scene18_kidWheelPos = i;
+ } else if ((swinger->sflags & 4) && swinger->angle >= ANGLE(162) && oldangle < ANGLE(162)) {
+ swinger->sflags = 16;
+ swinger->ani->changeStatics2(ST_KSL_GIRL);
+ swinger->ani->startAnim(MV_KSL_JUMPGIRL, 0, -1);
+ g_vars->scene18_kidWheelPos = i;
+ } else if (g_vars->scene18_kidIsOnWheel) {
+ if (g_vars->scene18_boyIsOnWheel > 0 && (swinger->sflags & 1) && swinger->angle >= ANGLE(185) && oldangle < ANGLE(185)) {
+ g_vars->scene18_kidWheelPosTo = i;
+ sceneHandler18and19_boyJumpTo();
+ }
+ } else if (g_vars->scene18_girlIsOnWheel > 0 && (swinger->sflags & 1) && swinger->angle >= ANGLE(187) && oldangle < ANGLE(187)) {
+ g_vars->scene18_kidWheelPosTo = i;
+ sceneHandler18and19_girlJumpTo();
+ }
+
+ if (swinger->angle >= ANGLE(200) && oldangle < ANGLE(200)) {
+ if (g_vars->scene18_boyJumpedOff)
+ g_vars->scene18_boyIsOnWheel++;
+
+ g_vars->scene18_boyJumpedOff = false;
+ }
+ }
+
+ if (g_vars->scene18_manIsReady && (swinger->sflags & 1) && swinger->angle >= ANGLE(83) && oldangle < ANGLE(83)) {
+ g_vars->scene18_manWheelPosTo = i;
+ sceneHandler18and19_manStandArmchair();
+ }
+
+ if (!g_vars->scene18_enteredTrubaRight)
+ continue;
+
+ if ((int)i == g_vars->scene18_manWheelPosTo) {
+ if (swinger->angle >= ANGLE(170) && oldangle < ANGLE(170)) {
+ g_fp->_gameLoader->preloadScene(SC_18, TrubaRight);
+ } else if (swinger->angle >= ANGLE(25) && oldangle < ANGLE(25)) {
+ g_fp->_gameLoader->preloadScene(SC_19, TrubaRight);
+ } else if (swinger->angle >= ANGLE(270) && oldangle < ANGLE(270)) {
+ g_fp->_sceneRect.translate(1200, 0);
+ }
+ }
+
+ if (g_vars->scene18_jumpDistance > 0) {
+ if (swinger->sflags & 0x20) {
+ double newa = (double)g_vars->scene18_jumpAngle * ANGLE(1);
+
+ if (newa <= swinger->angle && oldangle < newa) {
+ swinger->ani->changeStatics2(ST_KSL_MAN);
+ swinger->ani->startAnim(MV_KSL_JUMPMAN, 0, -1);
+ swinger->ani->_priority = 35;
+
+ g_vars->scene18_manWheelPos = i;
+ }
+ }
+ }
+ }
+}
+
+void sceneHandler18and19_animateRiders() {
+ for (uint i = 0; i < g_vars->scene18_swingers.size(); i++) {
+ Swinger *swinger = g_vars->scene18_swingers[i];
+
+ if (!swinger->ani->_movement) {
+ int mv = 0;
+
+ if (swinger->sflags & 2)
+ mv = MV_KSL_SWINGBOY;
+ else if (swinger->sflags & 4)
+ mv = MV_KSL_SWINGGIRL;
+ else if (swinger->sflags & 0x20)
+ mv = MV_KSL_SWINGMAN;
+
+ if (mv)
+ swinger->ani->startAnim(mv, 0, -1);
+
+ if (swinger->ani->_movement)
+ swinger->ani->_movement->_counter = 0;
+ }
+ }
+}
+
+int sceneHandler18(ExCommand *cmd) {
+ if (cmd->_messageKind != 17)
+ return 0;
+
+ switch (cmd->_messageNum) {
+ case MSG_SC18_CLICKBOARD:
+ sceneHandler18_clickBoard();
+ break;
+
+ case MSG_SC3_HIDEDOMINO:
+ g_vars->scene18_domino->_flags &= 0xFFFB;
+ break;
+
+ case MSG_SC18_SHOWMANJUMP:
+ sceneHandler18and19_showManJump();
+ break;
+
+ case MSG_SC18_MANREADY:
+ g_vars->scene18_manIsReady = true;
+ break;
+
+ case MSG_SC18_SHOWMANJUMPTO:
+ sceneHandler18_showManJumpTo();
+ break;
+
+ case MSG_SC18_SHOWGIRLJUMPTO:
+ sceneHandler18and19_showGirlJumpTo();
+ break;
+
+ case MSG_SC18_SHOWGIRLJUMP:
+ sceneHandler18and19_showGirlJump();
+ break;
+
+ case MSG_SC18_SHOWBOYJUMPTO:
+ sceneHandler18and19_showBoyJumpTo();
+ break;
+
+ case MSG_SC18_SHOWBOYJUMP:
+ sceneHandler18and19_showBoyJump();
+ break;
+
+ case 29:
+ {
+ if (g_vars->scene18_enteredTrubaRight) {
+ cmd->_messageKind = 0;
+
+ break;
+ }
+
+ StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
+
+ if (!ani || !canInteractAny(g_fp->_aniMan, ani, cmd->_keyCode)) {
+ int picId = g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
+ PictureObject *pic = g_fp->_currentScene->getPictureObjectById(picId, 0);
+
+ if (pic && pic->_id == PIC_SC18_DOMIN && g_vars->scene18_domino
+ && (g_vars->scene18_domino->_flags & 4) && g_fp->_aniMan->isIdle()) {
+ if (!(g_fp->_aniMan->_flags & 0x100) && g_fp->_msgObjectId2 != g_vars->scene18_domino->_id) {
+ handleObjectInteraction(g_fp->_aniMan, g_vars->scene18_domino, cmd->_keyCode);
+ cmd->_messageKind = 0;
+
+ break;
+ }
+ }
+
+ if (!pic || !canInteractAny(g_fp->_aniMan, pic, cmd->_keyCode)) {
+ if ((g_fp->_sceneRect.right - cmd->_sceneClickX < 47 && g_fp->_sceneRect.right < g_fp->_sceneWidth - 1)
+ || (cmd->_sceneClickX - g_fp->_sceneRect.left < 47 && g_fp->_sceneRect.left > 0)) {
+ g_fp->processArcade(cmd);
+
+ g_vars->scene18_manIsReady = false;
+
+ break;
+ }
+ }
+ }
+ break;
+ }
+
+ case 33:
+ if (g_fp->_aniMan2) {
+ int x = g_fp->_aniMan2->_ox;
+
+ g_vars->scene18_manY = g_fp->_aniMan2->_oy;
+
+ if (x < g_fp->_sceneRect.left + 200)
+ g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left;
+
+ if (x > g_fp->_sceneRect.right - 200)
+ g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right;
+ }
+
+ if (g_vars->scene18_manIsReady && g_fp->_aniMan->_movement)
+ g_vars->scene18_manIsReady = false;
+
+ if (g_vars->scene18_bridgeIsConvoluted) {
+ if (!g_vars->scene18_wheelFlipper)
+ sceneHandler18and19_drawRiders();
+
+ g_vars->scene18_wheelFlipper = !g_vars->scene18_wheelFlipper;
+
+ if (!g_vars->scene18_whirlgig->_movement) {
+ g_vars->scene18_whirlgig->startAnim(MV_WHR18_SPIN, 0, -1);
+ g_fp->_behaviorManager->updateBehaviors();
+
+ break;
+ }
+ } else {
+ sceneHandler18and19_animateRiders();
+ }
+
+ g_fp->_behaviorManager->updateBehaviors();
+
+ break;
+ }
+
+ return 0;
+}
+
+void sceneHandler19_updateNumRides() {
+ int numRides = g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarAsInt(sO_DudeSwinged) + 1;
+
+ if (numRides > 1) {
+ g_fp->setObjectState(sO_Girl, g_fp->getObjectEnumState(sO_Girl, sO_IsSwinging));
+
+ g_vars->scene18_kidIsOnWheel = 1;
+ g_vars->scene18_girlIsOnWheel++;
+
+ numRides = 0;
+ }
+
+ g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->setSubVarAsInt(sO_DudeSwinged, numRides);
+}
+
+int sceneHandler19(ExCommand *cmd) {
+ if (cmd->_messageKind != 17)
+ return 0;
+
+ switch (cmd->_messageNum) {
+ case MSG_SC18_SHOWMANJUMP:
+ sceneHandler18and19_showManJump();
+ break;
+
+ case MSG_SC19_UPDATENUMRIDES:
+ sceneHandler19_updateNumRides();
+ break;
+
+ case MSG_SC18_SHOWGIRLJUMPTO:
+ sceneHandler18and19_showGirlJumpTo();
+ break;
+
+ case MSG_SC18_SHOWBOYJUMPTO:
+ sceneHandler18and19_showBoyJumpTo();
+ break;
+
+ case MSG_SC18_SHOWGIRLJUMP:
+ sceneHandler18and19_showGirlJump();
+ break;
+
+ case MSG_SC18_SHOWBOYJUMP:
+ sceneHandler18and19_showBoyJump();
+ break;
+
+ case 29:
+ if (g_vars->scene18_enteredTrubaRight) {
+ switch (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY)) {
+ case PIC_SC19_RTRUBA1:
+ g_vars->scene18_jumpDistance = 1;
+ g_vars->scene18_jumpAngle = 331;
+ cmd->_messageKind = 0;
+ break;
+
+ case PIC_SC19_RTRUBA2:
+ g_vars->scene18_jumpDistance = 2;
+ g_vars->scene18_jumpAngle = 350;
+ cmd->_messageKind = 0;
+ break;
+
+ case PIC_SC19_RTRUBA3:
+ g_vars->scene18_jumpDistance = 3;
+ g_vars->scene18_jumpAngle = 9;
+ cmd->_messageKind = 0;
+ break;
+
+ default:
+ g_vars->scene18_jumpDistance = -1;
+ g_vars->scene18_jumpAngle = -1;
+ cmd->_messageKind = 0;
+ break;
+ }
+ break;
+ }
+
+ if (g_vars->scene19_enteredTruba3) {
+ if (g_fp->_currentScene->getPictureObjectIdAtPos(cmd->_sceneClickX, cmd->_sceneClickY) == PIC_SC19_RTRUBA3) {
+ if (g_fp->_aniMan->isIdle()) {
+ if (!(g_fp->_aniMan->_flags & 0x100)) {
+ PictureObject *pic = g_fp->_currentScene->getPictureObjectById(PIC_SC19_RTRUBA31, 0);
+
+ handleObjectInteraction(g_fp->_aniMan, pic, cmd->_keyCode);
+ break;
+ }
+ }
+ }
+ }
+ break;
+
+ case 33:
+ if (g_fp->_aniMan2) {
+ int x = g_fp->_aniMan2->_ox;
+
+ g_vars->scene18_manY = g_fp->_aniMan2->_oy;
+
+ if (x < g_fp->_sceneRect.left + 200)
+ g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left;
+
+ if (x > g_fp->_sceneRect.right - 200)
+ g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right;
+ }
+
+ if (g_vars->scene18_bridgeIsConvoluted) {
+ if (!g_vars->scene18_wheelFlipper)
+ sceneHandler18and19_drawRiders();
+
+ g_vars->scene18_wheelFlipper = !g_vars->scene18_wheelFlipper;
+
+ if (!g_vars->scene18_whirlgig->_movement) {
+ g_vars->scene18_whirlgig->startAnim(MV_WHR19_SPIN, 0, -1);
+
+ g_fp->_behaviorManager->updateBehaviors();
+
+ break;
+ }
+ } else {
+ sceneHandler18and19_animateRiders();
+ }
+
+ g_fp->_behaviorManager->updateBehaviors();
+
+ break;
+ }
+
+ return 0;
+}
} // End of namespace Fullpipe
diff --git a/engines/fullpipe/scenes/scene20.cpp b/engines/fullpipe/scenes/scene20.cpp
index 5fed24aabd..7f19f175cc 100644
--- a/engines/fullpipe/scenes/scene20.cpp
+++ b/engines/fullpipe/scenes/scene20.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene21.cpp b/engines/fullpipe/scenes/scene21.cpp
index 5a6509964d..8918515431 100644
--- a/engines/fullpipe/scenes/scene21.cpp
+++ b/engines/fullpipe/scenes/scene21.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene22.cpp b/engines/fullpipe/scenes/scene22.cpp
index 13c9ab36e9..542834b51a 100644
--- a/engines/fullpipe/scenes/scene22.cpp
+++ b/engines/fullpipe/scenes/scene22.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene23.cpp b/engines/fullpipe/scenes/scene23.cpp
index 1f2587eba4..ccfbac9223 100644
--- a/engines/fullpipe/scenes/scene23.cpp
+++ b/engines/fullpipe/scenes/scene23.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene24.cpp b/engines/fullpipe/scenes/scene24.cpp
index 508f776573..2eb536df3f 100644
--- a/engines/fullpipe/scenes/scene24.cpp
+++ b/engines/fullpipe/scenes/scene24.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene25.cpp b/engines/fullpipe/scenes/scene25.cpp
index ba07c3e5b9..fae311efad 100644
--- a/engines/fullpipe/scenes/scene25.cpp
+++ b/engines/fullpipe/scenes/scene25.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene26.cpp b/engines/fullpipe/scenes/scene26.cpp
index 91679347e6..b9d9161e7d 100644
--- a/engines/fullpipe/scenes/scene26.cpp
+++ b/engines/fullpipe/scenes/scene26.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene27.cpp b/engines/fullpipe/scenes/scene27.cpp
new file mode 100644
index 0000000000..1431ceffba
--- /dev/null
+++ b/engines/fullpipe/scenes/scene27.cpp
@@ -0,0 +1,759 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "fullpipe/fullpipe.h"
+
+#include "fullpipe/objectnames.h"
+#include "fullpipe/constants.h"
+
+#include "fullpipe/gameloader.h"
+#include "fullpipe/motion.h"
+#include "fullpipe/scenes.h"
+#include "fullpipe/statics.h"
+
+#include "fullpipe/interaction.h"
+#include "fullpipe/behavior.h"
+
+#define DBG 0
+
+namespace Fullpipe {
+
+struct Bat {
+ StaticANIObject *ani;
+ int field_4;
+ double power;
+ double field_10;
+ double currX;
+ double currY;
+ double powerCos;
+ double powerSin;
+};
+
+void scene27_initScene(Scene *sc) {
+ g_vars->scene27_hitZone = sc->getPictureObjectById(PIC_SC27_HITZONE2, 0);
+ g_vars->scene27_driver = sc->getStaticANIObject1ById(ANI_VODILLA, -1);
+ g_vars->scene27_maid = sc->getStaticANIObject1ById(ANI_MAID, -1);
+ g_vars->scene27_batHandler = sc->getStaticANIObject1ById(ANI_BITAHANDLER, -1);
+
+ g_vars->scene27_balls.numBalls = 0;
+ g_vars->scene27_balls.pTail = 0;
+ g_vars->scene27_balls.field_8 = 0;
+ g_vars->scene27_balls.pHead = 0;
+ g_vars->scene27_balls.cPlexLen = 10;
+
+ free(g_vars->scene27_balls.cPlex);
+ g_vars->scene27_balls.cPlex = 0;
+
+ g_vars->scene27_bats.clear();
+ g_vars->scene27_var07.clear();
+
+ g_vars->scene27_driverHasVent = true;
+ g_vars->scene27_bat = sc->getStaticANIObject1ById(ANI_BITA, -1);
+
+ for (int i = 0; i < 4; i++) {
+ StaticANIObject *newbat = new StaticANIObject(g_vars->scene27_bat);
+
+ Ball *runPtr = g_vars->scene27_balls.pTail;
+ Ball *lastP = g_vars->scene27_balls.field_8;
+
+ if (!g_vars->scene27_balls.pTail) {
+ g_vars->scene27_balls.cPlex = (byte *)calloc(g_vars->scene27_balls.cPlexLen, sizeof(Ball));
+
+ byte *p1 = g_vars->scene27_balls.cPlex + (g_vars->scene27_balls.cPlexLen - 1) * sizeof(Ball);
+
+ if (g_vars->scene27_balls.cPlexLen - 1 < 0) {
+ runPtr = g_vars->scene27_balls.pTail;
+ } else {
+ runPtr = g_vars->scene27_balls.pTail;
+
+ for (int j = 0; j < g_vars->scene27_balls.cPlexLen; j++) {
+ ((Ball *)p1)->p1 = runPtr;
+ runPtr = (Ball *)p1;
+
+ p1 -= sizeof(Ball);
+ }
+
+ g_vars->scene27_balls.pTail = runPtr;
+ }
+ }
+
+ g_vars->scene27_balls.pTail = runPtr->p0;
+ runPtr->p1 = lastP;
+ runPtr->p0 = 0;
+ runPtr->ani = newbat;
+
+ g_vars->scene27_balls.numBalls++;
+
+ if (g_vars->scene27_balls.field_8)
+ g_vars->scene27_balls.field_8->p0 = runPtr;
+ else
+ g_vars->scene27_balls.pHead = runPtr;
+
+ g_vars->scene27_balls.field_8 = runPtr;
+
+ sc->addStaticANIObject(newbat, 1);
+ }
+
+ g_vars->scene27_dudeIsAiming = false;
+ g_vars->scene27_maxPhaseReached = false;
+ g_vars->scene27_wipeIsNeeded = false;
+ g_vars->scene27_driverPushedButton = false;
+ g_vars->scene27_numLostBats = 0;
+ g_vars->scene27_knockCount = 0;
+ g_vars->scene27_launchPhase = 0;
+
+ Scene *oldsc = g_fp->_currentScene;
+ g_fp->_currentScene = sc;
+
+ if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSwab)) {
+ g_vars->scene27_maid->changeStatics2(ST_MID_SWAB2);
+ } else if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithBroom)) {
+ g_vars->scene27_maid->changeStatics2(ST_MID_BROOM);
+ } else if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSpade)) {
+ g_vars->scene27_maid->changeStatics2(ST_MID_SPADE);
+ }
+
+ g_fp->_currentScene = oldsc;
+
+ g_fp->setArcadeOverlay(PIC_CSR_ARCADE7);
+}
+
+int scene27_updateCursor() {
+ g_fp->updateCursorCommon();
+
+ if (g_vars->scene27_dudeIsAiming) {
+ if (g_fp->_cursorId != PIC_CSR_DEFAULT_INV && g_fp->_cursorId != PIC_CSR_ITN_INV)
+ g_fp->_cursorId = PIC_CSR_ARCADE7_D;
+
+ } else if (g_fp->_objectIdAtCursor == ANI_MAN) {
+ if (g_vars->scene27_maxPhaseReached)
+ if (g_fp->_cursorId == PIC_CSR_DEFAULT)
+ g_fp->_cursorId = PIC_CSR_ITN;
+ }
+
+ return g_fp->_cursorId;
+}
+
+void sceneHandler27_driverGiveVent() {
+ g_vars->scene27_driver->changeStatics2(ST_DRV_VENT);
+ g_vars->scene27_driver->startMQIfIdle(QU_DRV_GIVEVENT, 1);
+
+ g_vars->scene27_driverHasVent = false;
+
+ getCurrSceneSc2MotionController()->setEnabled();
+ getGameLoaderInteractionController()->enableFlag24();
+
+ g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1);
+}
+
+void sceneHandler27_winArcade() {
+ if (g_fp->getObjectState(sO_Driver) == g_fp->getObjectEnumState(sO_Driver, sO_WithSteering)) {
+ g_vars->scene27_dudeIsAiming = false;
+
+ g_fp->_aniMan->_callback2 = 0;
+ g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT);
+
+ sceneHandler27_driverGiveVent();
+ }
+}
+
+void sceneHandler27_takeVent() {
+ if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSwab)) {
+ if (g_vars->scene27_maid->isIdle()) {
+ if (g_vars->scene27_maid->_flags & 4) {
+ g_vars->scene27_maid->changeStatics2(ST_MID_SWAB2);
+ g_vars->scene27_maid->startMQIfIdle(QU_MID_CLEANVENT, 1);
+ }
+ }
+ }
+}
+
+void sceneHandler27_showNextBat() {
+ if (g_vars->scene27_bat) {
+ MessageQueue *mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC27_SHOWBET), 0, 1);
+
+ mq->replaceKeyCode(-1, g_vars->scene27_bat->_okeyCode);
+ mq->chain(0);
+ }
+
+ g_vars->scene27_batHandler->_priority = 1045;
+}
+
+int sceneHandler27_updateScreenCallback() {
+ int res;
+
+ res = g_fp->drawArcadeOverlay(getGameLoaderInteractionController()->_flag24 == 0);
+
+ if (!res)
+ g_fp->_updateScreenCallback = 0;
+
+ return res;
+}
+
+void sceneHandler27_aniManCallback(int *phase) {
+ if (!g_vars->scene27_maxPhaseReached) {
+ if (*phase >= 5)
+ g_vars->scene27_maxPhaseReached = true;
+ else
+ ++*phase;
+ }
+}
+
+void sceneHandler27_throwBat() {
+ if (getGameLoaderInteractionController()->_flag24)
+ g_fp->_updateScreenCallback = sceneHandler27_updateScreenCallback;
+
+ g_fp->_aniMan->_callback2 = sceneHandler27_aniManCallback;
+
+ g_fp->_aniMan->startAnim(MV_MAN27_THROWBET, 0, -1);
+
+ getCurrSceneSc2MotionController()->clearEnabled();
+ getGameLoaderInteractionController()->disableFlag24();
+
+ g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 0);
+
+ g_vars->scene27_maxPhaseReached = false;
+
+ g_vars->scene27_bat->hide();
+}
+
+void sceneHandler27_clickBat(ExCommand *cmd) {
+ int bx = g_vars->scene27_bat->_ox - 5;
+ int by = g_vars->scene27_bat->_oy - 71;
+
+#if DBG
+ sceneHandler27_throwBat();
+ return;
+#endif
+
+ if (ABS(bx - g_fp->_aniMan->_ox) > 1 || ABS(by - g_fp->_aniMan->_oy) > 1
+ || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) {
+ MessageQueue *mq = getCurrSceneSc2MotionController()->method34(g_fp->_aniMan, bx, by, 1, ST_MAN_RIGHT);
+
+ if (mq) {
+ mq->addExCommandToEnd(cmd->createClone());
+
+ postExCommand(g_fp->_aniMan->_id, 2, bx, by, 0, -1);
+ }
+ } else {
+ sceneHandler27_throwBat();
+ }
+}
+
+void sceneHandler27_maidSwab() {
+#if DBG
+ return;
+#endif
+ if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSwab))
+ g_vars->scene27_maid->changeStatics2(ST_MID_SWAB);
+}
+
+void sceneHandler27_startBat(StaticANIObject *bat) {
+ Bat *newbat = new Bat;
+
+ newbat->power = g_vars->scene27_launchPhase * 2.5 + 8.0;
+ newbat->field_10 = 0;
+ newbat->ani = bat;
+ newbat->powerCos = newbat->power * cos(0.0);
+ newbat->powerSin = newbat->power * sin(0.0);
+ newbat->currX = newbat->powerCos + (double)g_fp->_aniMan->_ox + 42.0;
+ newbat->currY = newbat->powerSin + (double)g_fp->_aniMan->_oy + 58.0;
+
+ bat->_statics = (Statics *)bat->_staticsList[0];
+ bat->setOXY((int)newbat->currX, (int)newbat->currY);
+ bat->_flags |= 4;
+
+ g_vars->scene27_bats.push_back(newbat);
+
+ sceneHandler27_maidSwab();
+}
+
+void sceneHandler27_startAiming() {
+ g_vars->scene27_dudeIsAiming = false;
+ g_vars->scene27_maxPhaseReached = false;
+
+ g_fp->_aniMan->_callback2 = 0;
+
+ g_vars->scene27_launchPhase = g_fp->_aniMan->_movement->_currDynamicPhaseIndex - 6;
+
+ int phase = 21 - g_vars->scene27_launchPhase;
+
+ if (phase < 14)
+ phase = 14;
+
+ if (phase > 20)
+ phase = 20;
+
+ g_fp->playSound(SND_27_044, 0);
+
+ g_fp->_aniMan->_movement->setDynamicPhaseIndex(phase);
+}
+
+void sceneHandler27_initAiming(ExCommand *cmd) {
+ g_vars->scene27_aimStartX = cmd->_x;
+ g_vars->scene27_aimStartY = cmd->_y;
+ g_vars->scene27_dudeIsAiming = true;
+ g_vars->scene27_maxPhaseReached = false;
+}
+
+void sceneHandler27_aimDude() {
+ int phase = (g_vars->scene27_aimStartX - g_fp->_mouseScreenPos.x) / 20 + 6;
+
+ if (phase < 6)
+ phase = 6;
+
+ if (phase > 11)
+ phase = 11;
+
+ if (g_fp->_aniMan->_movement)
+ g_fp->_aniMan->_movement->setDynamicPhaseIndex(phase);
+}
+
+void sceneHandler27_wipeDo() {
+ for (uint i = 0; i < g_vars->scene27_bats.size(); i++) {
+ if (g_vars->scene27_bats[i]->currX < 800.0) {
+ g_vars->scene27_bats[i]->field_10 = atan2(800.0 - g_vars->scene27_bats[i]->currX, 520.0 - g_vars->scene27_bats[i]->currY);
+ g_vars->scene27_bats[i]->power += 1.0;
+ }
+ }
+}
+
+bool sceneHandler27_batFallLogic(uint batn) {
+ Bat *bat = g_vars->scene27_bats[batn];
+
+ int y = (bat->currY - 458.0) * 0.4848484848484849 + 734.0;
+
+ if (y >= bat->currX)
+ return false;
+
+ if (bat->currX - y > 15.0 || bat->ani->_statics->_staticsId == ST_BTA_FALL) {
+ bat->ani->_priority = 2020;
+
+ g_vars->scene27_var07.push_back(bat);
+
+ if (batn != g_vars->scene27_var07.size() - 1)
+ g_vars->scene27_var07.remove_at(batn);
+ } else if (!bat->ani->_movement) {
+ bat->ani->startAnim(MV_BTA_FALL, 0, -1);
+ }
+
+ return true;
+}
+
+bool sceneHandler27_batCalcDistance(int bat1, int bat2) {
+ double at = atan2(g_vars->scene27_bats[bat1]->currX - g_vars->scene27_bats[bat2]->currX, g_vars->scene27_bats[bat1]->currY - g_vars->scene27_bats[bat2]->currY);
+ double dy = g_vars->scene27_bats[bat1]->currY - g_vars->scene27_bats[bat2]->currY;
+ double dx = g_vars->scene27_bats[bat1]->currX - g_vars->scene27_bats[bat2]->currX;
+ double ay = cos(at);
+ double ax = sin(at);
+
+ return sqrt(ax * ax * 0.25 + ay * ay) * 54.0 > sqrt(dx * dx + dy * dy);
+}
+
+void sceneHandler27_knockBats(int bat1n, int bat2n) {
+ Bat *bat1 = g_vars->scene27_bats[bat1n];
+ Bat *bat2 = g_vars->scene27_bats[bat2n];
+
+ if (0.0 != bat1->power) {
+ double rndF = (double)g_fp->_rnd->getRandomNumber(32767) * 0.0000009155552842799158 - 0.015
+ + atan2(bat2->currX - bat1->currX, bat2->currY - bat1->currY);
+ double rndCos = cos(rndF);
+ double rndSin = sin(rndF);
+
+ double pow1x = cos(bat1->field_10 - rndF) * (double)((int)(bat2->currX - bat1->currX) >= 0 ? 1 : -1) * bat1->power;
+ double pow1y = sin(bat1->field_10 - rndF) * (double)((int)(bat2->currY - bat1->currY) >= 0 ? 1 : -1) * bat1->power;
+
+ bat1->powerCos -= pow1x * 1.1;
+ bat1->powerSin -= pow1y * 1.1;
+
+ rndF = ((double)g_fp->_rnd->getRandomNumber(32767) * 0.0000009155552842799158 - 0.015
+ + atan2(bat1->currX - bat2->currX, bat1->currY - bat2->currY));
+ double pow2x = cos(bat2->field_10 - rndF) * (double)((int)(bat1->currX - bat2->currX) >= 0 ? 1 : -1) * bat2->power;
+ double pow2y = sin(bat2->field_10 - rndF) * (double)((int)(bat1->currY - bat2->currY) >= 0 ? 1 : -1) * bat2->power;
+
+ bat2->powerCos -= pow2x * 1.1;
+ bat2->powerSin -= pow2y * 1.1;
+
+ double dy = bat1->currY - bat2->currY;
+ double dx = bat1->currX - bat2->currX;
+ double dist = (sqrt(rndSin * rndSin * 0.25 + rndCos * rndCos) * 54.0 - sqrt(dx * dx + dy * dy)) / cos(rndF - bat1->field_10);
+ bat1->currX -= cos(bat1->field_10) * (dist + 1.0);
+ bat1->currY -= sin(bat1->field_10) * (dist + 1.0);
+ bat1->powerCos += pow2x * 0.64;
+
+ if (bat1->currX <= 500.0)
+ bat1->powerSin = 0.0;
+ else
+ bat1->powerSin += pow2y * 0.64;
+
+ bat1->field_10 = atan2(bat1->powerCos, bat1->powerSin);
+ bat1->power = sqrt(bat1->powerCos * bat1->powerCos + bat1->powerSin * bat1->powerSin);
+ bat2->powerCos += pow1x * 0.64;
+
+ if (bat2->currX <= 500.0)
+ bat2->powerSin = 0;
+ else
+ bat2->powerSin += pow1y * 0.64;
+
+ bat2->field_10 = atan2(bat2->powerCos, bat2->powerSin);
+ bat2->power = sqrt(bat2->powerCos * bat2->powerCos + bat2->powerSin * bat2->powerSin);
+
+ g_fp->playSound(SND_27_026, 0);
+ }
+}
+
+void sceneHandler27_batSetColors(int batn) {
+ Bat *bat = g_vars->scene27_bats[batn];
+
+ if (g_vars->scene27_hitZone->isPixelHitAtPos((int)bat->currX, (int)bat->currY) ) {
+ if (bat->ani->_statics->_staticsId == ST_BTA_NORM) {
+ if (!bat->ani->_movement)
+ bat->ani->_statics = bat->ani->getStaticsById(ST_BTA_HILITE);
+ }
+ } else {
+ if (bat->ani->_statics->_staticsId == ST_BTA_HILITE) {
+ if (!bat->ani->_movement)
+ bat->ani->_statics = bat->ani->getStaticsById(ST_BTA_NORM);
+ }
+ }
+}
+
+void sceneHandler27_driverPushButton() {
+ if (g_fp->getObjectState(sO_Driver) == g_fp->getObjectEnumState(sO_Driver, sO_WithSteering)) {
+ g_vars->scene27_driver->changeStatics2(ST_DRV_VENT);
+ chainQueue(QU_DRV_PUSHBUTTON, 1);
+
+ g_vars->scene27_driverPushedButton = true;
+ } else {
+ g_vars->scene27_driver->changeStatics2(ST_DRV_SITNOVENT);
+
+
+ chainQueue(QU_DRV_PUSHBUTTON_NOVENT, 1);
+
+ g_vars->scene27_driverPushedButton = true;
+ }
+}
+
+void sceneHandler27_maidSwitchback() {
+#ifndef DBG
+ if (g_fp->getObjectState(sO_Maid) == g_fp->getObjectEnumState(sO_Maid, sO_WithSwab)) {
+ g_vars->scene27_maid->changeStatics2(ST_MID_SWAB);
+ g_vars->scene27_maid->startMQIfIdle(QU_MID_SWITCHBACK, 1);
+ }
+#endif
+}
+
+void sceneHandler27_batLogic() {
+ if (g_vars->scene27_balls.numBalls) {
+ g_vars->scene27_bat = g_vars->scene27_balls.pHead->ani;
+
+ g_vars->scene27_balls.pHead = g_vars->scene27_balls.pHead->p0;
+
+ if (g_vars->scene27_balls.pHead)
+ g_vars->scene27_balls.pHead->p0->p1 = 0;
+ else
+ g_vars->scene27_balls.field_8 = 0;
+
+ g_vars->scene27_balls.init(&g_vars->scene27_balls.pHead->p0);
+
+ int mv;
+
+ switch (g_vars->scene27_batHandler->_statics->_staticsId) {
+ case ST_BTH_5:
+ mv = MV_BTH_5_4;
+ break;
+
+ case ST_BTH_4:
+ mv = MV_BTH_4_3;
+ break;
+
+ case ST_BTH_3:
+ mv = MV_BTH_3_2;
+ break;
+
+ case ST_BTH_2:
+ mv = MV_BTH_2_1;
+ break;
+
+ case ST_BTH_1:
+ mv = MV_BTH_1_0;
+ break;
+
+ default:
+ chainQueue(QU_SC27_RESTARTBETS, 1);
+
+ getCurrSceneSc2MotionController()->setEnabled();
+ getGameLoaderInteractionController()->enableFlag24();
+
+ g_fp->_behaviorManager->setFlagByStaticAniObject(g_fp->_aniMan, 1);
+
+ return;
+ }
+
+ MessageQueue *mq = new MessageQueue(g_fp->_globalMessageQueueList->compact());
+
+ mq->setFlags(mq->getFlags() | 1);
+
+ ExCommand *ex = new ExCommand(g_vars->scene27_batHandler->_id, 1, mv, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags |= 2;
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(0, 17, MSG_SC27_CLICKBET, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags |= 3;
+ mq->addExCommandToEnd(ex);
+
+ mq->chain(0);
+ } else {
+ g_vars->scene27_bat = 0;
+ }
+}
+
+void sceneHandler27_calcWinArcade() {
+ if (!g_vars->scene27_wipeIsNeeded && !g_vars->scene27_driverPushedButton) {
+ int numHilite = 0;
+
+ for (uint i = 0; i < g_vars->scene27_bats.size(); i++) {
+ if (g_vars->scene27_bats[i]->ani->_statics->_staticsId == ST_BTA_HILITE)
+ numHilite++;
+ }
+
+ if (numHilite >= 3) {
+ if (g_fp->getObjectState(sO_Driver) == g_fp->getObjectEnumState(sO_Driver, sO_WithSteering)) {
+ sceneHandler27_driverGiveVent();
+ sceneHandler27_maidSwitchback();
+
+ return;
+ }
+ }
+
+ if (!g_vars->scene27_balls.numBalls) {
+ sceneHandler27_driverPushButton();
+ sceneHandler27_maidSwitchback();
+ return;
+ }
+
+ sceneHandler27_batLogic();
+ }
+
+ sceneHandler27_maidSwitchback();
+}
+
+void sceneHandler27_regenBats() {
+ g_vars->scene27_wipeIsNeeded = false;
+
+ for (uint i = 0; i < g_vars->scene27_var07.size(); i++) {
+ g_vars->scene27_var07[i]->ani->hide();
+
+ Ball *runPtr = g_vars->scene27_balls.pTail;
+ Ball *lastP = g_vars->scene27_balls.field_8;
+ StaticANIObject *newbat = g_vars->scene27_var07[i]->ani;
+
+ if (!g_vars->scene27_balls.pTail) {
+ g_vars->scene27_balls.cPlex = (byte *)calloc(g_vars->scene27_balls.cPlexLen, sizeof(Ball));
+
+ byte *p1 = g_vars->scene27_balls.cPlex + (g_vars->scene27_balls.cPlexLen - 1) * sizeof(Ball);
+
+ if (g_vars->scene27_balls.cPlexLen - 1 < 0) {
+ runPtr = g_vars->scene27_balls.pTail;
+ } else {
+ runPtr = g_vars->scene27_balls.pTail;
+
+ for (int j = 0; j < g_vars->scene27_balls.cPlexLen; j++) {
+ ((Ball *)p1)->p1 = runPtr;
+ runPtr = (Ball *)p1;
+
+ p1 -= sizeof(Ball);
+ }
+
+ g_vars->scene27_balls.pTail = runPtr;
+ }
+ }
+
+ g_vars->scene27_balls.pTail = runPtr->p0;
+ runPtr->p1 = lastP;
+ runPtr->p0 = 0;
+ runPtr->ani = newbat;
+
+ g_vars->scene27_balls.numBalls++;
+
+ if (g_vars->scene27_balls.field_8)
+ g_vars->scene27_balls.field_8->p0 = runPtr;
+ else
+ g_vars->scene27_balls.pHead = runPtr;
+
+ g_vars->scene27_balls.field_8 = runPtr;
+ }
+
+ g_vars->scene27_var07.clear();
+
+ sceneHandler27_batLogic();
+
+ g_vars->scene27_driverPushedButton = false;
+}
+
+void sceneHandler27_animateBats() {
+ int oldCount = g_vars->scene27_knockCount;
+
+ g_vars->scene27_numLostBats = 0;
+ g_vars->scene27_knockCount = 0;
+
+ for (uint i = 0; i < g_vars->scene27_bats.size(); i++) {
+ Bat *bat = g_vars->scene27_bats[i];
+
+ bat->currX = cos(bat->field_10) * bat->power + bat->currX;
+ bat->currY = sin(bat->field_10) * bat->power + bat->currY;
+
+ bat->ani->setOXY((int)bat->currX, (int)bat->currY);
+ bat->ani->_priority = (int)(600.0 - bat->currY);
+
+ double powerDelta;
+
+ if (cos(bat->field_10) >= 0.0 || bat->currX >= 362.0)
+ powerDelta = bat->power * 0.035;
+ else
+ powerDelta = bat->power * 0.4;
+
+ bat->power -= powerDelta;
+ bat->powerCos = cos(bat->field_10) * bat->power;
+ bat->powerSin = sin(bat->field_10) * bat->power;
+
+ if (bat->power >= 0.5)
+ g_vars->scene27_knockCount++;
+ else
+ bat->power = 0;
+
+ sceneHandler27_batSetColors(i);
+
+ if (!sceneHandler27_batFallLogic(i) && !g_vars->scene27_wipeIsNeeded) {
+ for (uint j = 0; j < g_vars->scene27_bats.size(); j++) {
+ if (i != j && sceneHandler27_batCalcDistance(i, j))
+ sceneHandler27_knockBats(i, j);
+ }
+ }
+ }
+
+ for (uint i = 0; i < g_vars->scene27_var07.size(); i++) {
+ Bat *bat = g_vars->scene27_var07[i];
+
+ if (bat->currY >= 700.0) {
+ g_vars->scene27_numLostBats++;
+ } else {
+ bat->currX = bat->powerCos + bat->currX;
+ bat->currY = bat->powerSin + bat->currY;
+ bat->ani->setOXY((int)bat->currX, (int)bat->currY);
+ bat->powerSin = bat->powerSin + 1.0;
+ }
+ }
+
+ if (oldCount != g_vars->scene27_knockCount && !g_vars->scene27_knockCount)
+ sceneHandler27_calcWinArcade();
+
+ if (g_vars->scene27_wipeIsNeeded) {
+ if (g_vars->scene27_numLostBats == 5)
+ sceneHandler27_regenBats();
+ }
+}
+
+int sceneHandler27(ExCommand *cmd) {
+ if (cmd->_messageKind != 17)
+ return 0;
+
+ switch (cmd->_messageNum) {
+ case MSG_CMN_WINARCADE:
+ sceneHandler27_winArcade();
+ break;
+
+ case MSG_SC27_TAKEVENT:
+ sceneHandler27_takeVent();
+ break;
+
+ case MSG_SC27_SHOWNEXTBET:
+ sceneHandler27_showNextBat();
+ break;
+
+ case MSG_SC27_HANDLERTOFRONT:
+ g_vars->scene27_batHandler->_priority = 1005;
+ break;
+
+ case MSG_SC27_STARTWIPE:
+ g_vars->scene27_wipeIsNeeded = true;
+
+ g_fp->playSound(SND_27_027, 0);
+
+ break;
+
+ case MSG_SC27_CLICKBET:
+ sceneHandler27_clickBat(cmd);
+ break;
+
+ case MSG_SC27_STARTBET:
+ if (g_vars->scene27_bat)
+ sceneHandler27_startBat(g_vars->scene27_bat);
+
+ break;
+
+ case 30:
+ if (g_vars->scene27_dudeIsAiming)
+ sceneHandler27_startAiming();
+
+ break;
+
+ case 29:
+ if (g_fp->_aniMan == g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y)
+ && g_vars->scene27_maxPhaseReached)
+ sceneHandler27_initAiming(cmd);
+
+ break;
+
+ case 33:
+ if (g_fp->_aniMan2) {
+ int x = g_fp->_aniMan2->_ox;
+
+ if (x < g_fp->_sceneRect.left + 200)
+ g_fp->_currentScene->_x = x - 300 - g_fp->_sceneRect.left;
+
+ if (x > g_fp->_sceneRect.right - 200)
+ g_fp->_currentScene->_x = x + 300 - g_fp->_sceneRect.right;
+ }
+
+ if (g_vars->scene27_dudeIsAiming)
+ sceneHandler27_aimDude();
+
+ if (g_vars->scene27_wipeIsNeeded) {
+ sceneHandler27_wipeDo();
+
+ if (!g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == ST_MAN_RIGHT)
+ g_fp->_aniMan->startAnim(MV_MAN27_FLOW, 0, -1);
+ }
+
+ sceneHandler27_animateBats();
+
+ g_fp->_behaviorManager->updateBehaviors();
+ g_fp->startSceneTrack();
+
+ break;
+ }
+
+ return 0;
+}
+
+} // End of namespace Fullpipe
diff --git a/engines/fullpipe/scenes/scene28.cpp b/engines/fullpipe/scenes/scene28.cpp
index 62afd128c2..c21ce05502 100644
--- a/engines/fullpipe/scenes/scene28.cpp
+++ b/engines/fullpipe/scenes/scene28.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene29.cpp b/engines/fullpipe/scenes/scene29.cpp
new file mode 100644
index 0000000000..2d5127137d
--- /dev/null
+++ b/engines/fullpipe/scenes/scene29.cpp
@@ -0,0 +1,1125 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "fullpipe/fullpipe.h"
+
+#include "fullpipe/objectnames.h"
+#include "fullpipe/constants.h"
+
+#include "fullpipe/gameloader.h"
+#include "fullpipe/motion.h"
+#include "fullpipe/scenes.h"
+#include "fullpipe/statics.h"
+
+#include "fullpipe/interaction.h"
+#include "fullpipe/behavior.h"
+
+
+namespace Fullpipe {
+
+struct WalkingBearder {
+ StaticANIObject *ani;
+ int wbflag;
+ int wbcounter;
+};
+
+void scene29_initScene(Scene *sc) {
+ g_vars->scene29_porter = sc->getStaticANIObject1ById(ANI_PORTER, -1);
+ g_vars->scene29_shooter1 = sc->getStaticANIObject1ById(ANI_SHOOTER1, -1);
+ g_vars->scene29_shooter2 = sc->getStaticANIObject1ById(ANI_SHOOTER2, -1);
+ g_vars->scene29_ass = sc->getStaticANIObject1ById(ANI_ASS, -1);
+
+ g_vars->scene29_balls.numBalls = 0;
+ g_vars->scene29_balls.pTail = 0;
+ g_vars->scene29_balls.field_8 = 0;
+ g_vars->scene29_balls.pHead = 0;
+
+ free(g_vars->scene29_balls.cPlex);
+ g_vars->scene29_balls.cPlex = 0;
+
+ StaticANIObject *ani;
+
+ g_vars->scene29_greenBalls.numBalls = 0;
+ g_vars->scene29_greenBalls.pTail = 0;
+ g_vars->scene29_greenBalls.field_8 = 0;
+ g_vars->scene29_greenBalls.pHead = 0;
+
+ free(g_vars->scene29_greenBalls.cPlex);
+ g_vars->scene29_greenBalls.cPlex = 0;
+
+ ani = sc->getStaticANIObject1ById(ANI_SHELL_GREEN, -1);
+ Ball *b = g_vars->scene29_balls.sub04(g_vars->scene29_balls.field_8, 0);
+ b->ani = ani;
+
+ if (g_vars->scene29_balls.field_8)
+ g_vars->scene29_balls.field_8->p0 = b;
+ else
+ g_vars->scene29_balls.pHead = b;
+
+ g_vars->scene29_balls.field_8 = b;
+
+ for (int i = 0; i < 2; i++) {
+ StaticANIObject *newani = new StaticANIObject(ani);
+
+ sc->addStaticANIObject(newani, 1);
+
+ b = g_vars->scene29_balls.sub04(g_vars->scene29_balls.field_8, 0);
+ b->ani = ani;
+
+ if (g_vars->scene29_balls.field_8)
+ g_vars->scene29_balls.field_8->p0 = b;
+ else
+ g_vars->scene29_balls.pHead = b;
+
+ g_vars->scene29_balls.field_8 = b;
+ }
+
+ g_vars->scene29_redBalls.numBalls = 0;
+ g_vars->scene29_redBalls.pTail = 0;
+ g_vars->scene29_redBalls.field_8 = 0;
+ g_vars->scene29_redBalls.pHead = 0;
+
+ free(g_vars->scene29_redBalls.cPlex);
+ g_vars->scene29_redBalls.cPlex = 0;
+
+ g_vars->scene29_flyingRedBalls.numBalls = 0;
+ g_vars->scene29_flyingRedBalls.pTail = 0;
+ g_vars->scene29_flyingRedBalls.field_8 = 0;
+ g_vars->scene29_flyingRedBalls.pHead = 0;
+
+ free(g_vars->scene29_flyingRedBalls.cPlex);
+ g_vars->scene29_flyingRedBalls.cPlex = 0;
+
+ ani = sc->getStaticANIObject1ById(ANI_SHELL_RED, -1);
+
+ b = g_vars->scene29_redBalls.sub04(g_vars->scene29_redBalls.field_8, 0);
+ b->ani = ani;
+
+ if (g_vars->scene29_redBalls.field_8)
+ g_vars->scene29_redBalls.field_8->p0 = b;
+ else
+ g_vars->scene29_redBalls.pHead = b;
+
+ g_vars->scene29_redBalls.field_8 = b;
+
+ for (int i = 0; i < 2; i++) {
+ StaticANIObject *newani = new StaticANIObject(ani);
+
+ sc->addStaticANIObject(newani, 1);
+
+ b = g_vars->scene29_redBalls.sub04(g_vars->scene29_redBalls.field_8, 0);
+ b->ani = ani;
+
+ if (g_vars->scene29_redBalls.field_8)
+ g_vars->scene29_redBalls.field_8->p0 = b;
+ else
+ g_vars->scene29_redBalls.pHead = b;
+
+ g_vars->scene29_redBalls.field_8 = b;
+ }
+
+ g_vars->scene29_bearders.clear();
+
+ ani = new StaticANIObject(g_fp->accessScene(SC_COMMON)->getStaticANIObject1ById(ANI_BEARDED_CMN, -1));
+
+ ani->_statics = ani->getStaticsById(ST_BRDCMN_EMPTY);
+
+ sc->addStaticANIObject(ani, 1);
+
+ WalkingBearder *wb = new WalkingBearder;
+
+ wb->ani = ani;
+ wb->wbflag = 0;
+ wb->wbcounter = 0;
+
+ g_vars->scene29_bearders.push_back(wb);
+
+ g_vars->scene29_manIsRiding = false;
+ g_vars->scene29_arcadeIsOn = false;
+ g_vars->scene29_reachedFarRight = false;
+ g_vars->scene29_rideBackEnabled = false;
+ g_vars->scene29_shootCountdown = 0;
+ g_vars->scene29_shootDistance = 75;
+ g_vars->scene29_manIsHit = false;
+ g_vars->scene29_scrollSpeed = 0;
+ g_vars->scene29_scrollingDisabled = false;
+ g_vars->scene29_hitBall = 0;
+
+ g_fp->setArcadeOverlay(PIC_CSR_ARCADE8);
+}
+
+void sceneHandler29_winArcade() {
+ if (g_vars->scene29_shooter2->_flags & 4) {
+ g_vars->scene29_shootCountdown = 0;
+
+ g_vars->scene29_shooter1->changeStatics2(ST_STR1_STAND);
+ g_vars->scene29_shooter2->changeStatics2(ST_STR2_STAND);
+
+ g_vars->scene29_shooter2->_flags &= 0xFFFB;
+
+ StaticANIObject *ani;
+ Ball *newball, *ball, *oldp0;
+
+ while (g_vars->scene29_greenBalls.numBalls) {
+ ball = g_vars->scene29_greenBalls.pHead;
+ ani = g_vars->scene29_greenBalls.pHead->ani;
+ oldp0 = g_vars->scene29_greenBalls.pHead->p0;
+ g_vars->scene29_greenBalls.pHead = g_vars->scene29_greenBalls.pHead->p0;
+
+ if (g_vars->scene29_greenBalls.pHead)
+ oldp0->p1 = 0;
+ else
+ g_vars->scene29_greenBalls.field_8 = 0;
+
+ ball->p0 = g_vars->scene29_greenBalls.pTail;
+ g_vars->scene29_greenBalls.pTail = ball;
+ g_vars->scene29_greenBalls.numBalls--;
+
+ if (!g_vars->scene29_greenBalls.numBalls)
+ g_vars->scene29_greenBalls.reset();
+
+ ani->hide();
+
+ newball = g_vars->scene29_balls.sub04(g_vars->scene29_balls.field_8, 0);
+ newball->ani = ani;
+
+ if (g_vars->scene29_balls.field_8)
+ g_vars->scene29_balls.field_8->p0 = newball;
+ else
+ g_vars->scene29_balls.pHead = newball;
+
+ g_vars->scene29_balls.field_8 = newball;
+ }
+
+ while (g_vars->scene29_flyingRedBalls.numBalls) {
+ ball = g_vars->scene29_flyingRedBalls.pHead;
+ ani = g_vars->scene29_flyingRedBalls.pHead->ani;
+ oldp0 = g_vars->scene29_flyingRedBalls.pHead->p0;
+ g_vars->scene29_flyingRedBalls.pHead = g_vars->scene29_flyingRedBalls.pHead->p0;
+
+ if (g_vars->scene29_flyingRedBalls.pHead)
+ oldp0->p1 = 0;
+ else
+ g_vars->scene29_flyingRedBalls.field_8 = 0;
+
+ ball->p0 = g_vars->scene29_flyingRedBalls.pTail;
+ g_vars->scene29_flyingRedBalls.pTail = ball;
+ g_vars->scene29_flyingRedBalls.numBalls--;
+
+ if (!g_vars->scene29_flyingRedBalls.numBalls) {
+ g_vars->scene29_flyingRedBalls.numBalls = 0;
+ g_vars->scene29_flyingRedBalls.pTail = 0;
+ g_vars->scene29_flyingRedBalls.field_8 = 0;
+ g_vars->scene29_flyingRedBalls.pHead = 0;
+
+ free(g_vars->scene29_flyingRedBalls.cPlex);
+
+ g_vars->scene29_flyingRedBalls.cPlex = 0;
+ }
+
+ ani->hide();
+
+ newball = g_vars->scene29_redBalls.sub04(g_vars->scene29_redBalls.field_8, 0);
+ newball->ani = ani;
+
+ if (g_vars->scene29_redBalls.field_8)
+ g_vars->scene29_redBalls.field_8->p0 = newball;
+ else
+ g_vars->scene29_redBalls.pHead = newball;
+
+ g_vars->scene29_redBalls.field_8 = newball;
+ }
+
+ g_vars->scene29_ass->queueMessageQueue(0);
+ g_vars->scene29_ass->_flags &= 0xFFFB;
+
+ chainQueue(QU_SC29_ESCAPE, 1);
+ }
+
+ g_fp->setObjectState(sO_LeftPipe_29, g_fp->getObjectEnumState(sO_LeftPipe_29, sO_IsOpened));
+}
+
+void sceneHandler29_shootGreen() {
+ if (g_vars->scene29_balls.numBalls) {
+ int x = g_vars->scene29_shooter1->_ox - 113;
+ int y = g_vars->scene29_shooter1->_oy - 48;
+ StaticANIObject *ani = g_vars->scene29_balls.pHead->ani;
+ Ball *oldhead = g_vars->scene29_balls.pHead;
+ Ball *oldp0 = g_vars->scene29_balls.pHead->p0;
+
+ g_vars->scene29_balls.pHead = g_vars->scene29_balls.pHead->p0;
+
+ if (g_vars->scene29_balls.pHead)
+ oldp0->p1 = 0;
+ else
+ g_vars->scene29_balls.field_8 = 0;
+
+ oldhead->p0 = g_vars->scene29_balls.pTail;
+
+ g_vars->scene29_balls.pTail = oldhead;
+ g_vars->scene29_balls.numBalls--;
+
+ if (!g_vars->scene29_balls.numBalls) {
+ g_vars->scene29_balls.numBalls = 0;
+ g_vars->scene29_balls.pTail = 0;
+ g_vars->scene29_balls.field_8 = 0;
+ g_vars->scene29_balls.pHead = 0;
+
+ free(g_vars->scene29_balls.cPlex);
+ g_vars->scene29_balls.cPlex = 0;
+ }
+
+ ani->show1(x, y, MV_SHG_NORM, 0);
+ ani->_priority = 5;
+
+ Ball *runPtr = g_vars->scene29_greenBalls.pTail;
+ Ball *lastP = g_vars->scene29_greenBalls.field_8;
+
+ if (!g_vars->scene29_greenBalls.pTail) {
+ g_vars->scene29_greenBalls.cPlex = (byte *)calloc(g_vars->scene29_greenBalls.cPlexLen, sizeof(Ball));
+
+ byte *p1 = g_vars->scene29_greenBalls.cPlex + (g_vars->scene29_greenBalls.cPlexLen - 1) * sizeof(Ball);
+
+ if (g_vars->scene29_greenBalls.cPlexLen - 1 < 0) {
+ runPtr = g_vars->scene29_greenBalls.pTail;
+ } else {
+ runPtr = g_vars->scene29_greenBalls.pTail;
+
+ for (int j = 0; j < g_vars->scene29_greenBalls.cPlexLen; j++) {
+ ((Ball *)p1)->p1 = runPtr;
+ runPtr = (Ball *)p1;
+
+ p1 -= sizeof(Ball);
+ }
+
+ g_vars->scene29_greenBalls.pTail = runPtr;
+ }
+ }
+ g_vars->scene29_greenBalls.pTail = runPtr->p0;
+ runPtr->p1 = lastP;
+ runPtr->p0 = 0;
+ runPtr->ani = ani;
+
+ g_vars->scene29_greenBalls.numBalls++;
+
+ if (g_vars->scene29_greenBalls.field_8) {
+ g_vars->scene29_greenBalls.field_8->p0 = runPtr;
+ g_vars->scene29_greenBalls.field_8 = runPtr;
+ } else {
+ g_vars->scene29_greenBalls.pHead = runPtr;
+ g_vars->scene29_greenBalls.field_8 = runPtr;
+ }
+ }
+}
+
+void sceneHandler29_shootRed() {
+ if (g_vars->scene29_balls.numBalls) {
+ int x = g_vars->scene29_shooter1->_ox - 101;
+ int y = g_vars->scene29_shooter1->_oy - 14;
+ StaticANIObject *ani = g_vars->scene29_balls.pHead->ani;
+ Ball *oldhead = g_vars->scene29_balls.pHead;
+ Ball *oldp0 = g_vars->scene29_balls.pHead->p0;
+
+ g_vars->scene29_balls.pHead = g_vars->scene29_balls.pHead->p0;
+
+ if (g_vars->scene29_balls.pHead)
+ oldp0->p1 = 0;
+ else
+ g_vars->scene29_balls.field_8 = 0;
+
+ oldhead->p0 = g_vars->scene29_balls.pTail;
+
+ g_vars->scene29_balls.pTail = oldhead;
+ g_vars->scene29_balls.numBalls--;
+
+ if (!g_vars->scene29_balls.numBalls) {
+ g_vars->scene29_balls.numBalls = 0;
+ g_vars->scene29_balls.pTail = 0;
+ g_vars->scene29_balls.field_8 = 0;
+ g_vars->scene29_balls.pHead = 0;
+
+ free(g_vars->scene29_balls.cPlex);
+ g_vars->scene29_balls.cPlex = 0;
+ }
+
+ ani->show1(x, y, MV_SHR_NORM, 0);
+ ani->_priority = 5;
+
+ Ball *runPtr = g_vars->scene29_flyingRedBalls.pTail;
+ Ball *lastP = g_vars->scene29_flyingRedBalls.field_8;
+
+ if (!g_vars->scene29_flyingRedBalls.pTail) {
+ g_vars->scene29_flyingRedBalls.cPlex = (byte *)calloc(g_vars->scene29_flyingRedBalls.cPlexLen, sizeof(Ball));
+
+ byte *p1 = g_vars->scene29_flyingRedBalls.cPlex + (g_vars->scene29_flyingRedBalls.cPlexLen - 1) * sizeof(Ball);
+
+ if (g_vars->scene29_flyingRedBalls.cPlexLen - 1 < 0) {
+ runPtr = g_vars->scene29_flyingRedBalls.pTail;
+ } else {
+ runPtr = g_vars->scene29_flyingRedBalls.pTail;
+
+ for (int j = 0; j < g_vars->scene29_flyingRedBalls.cPlexLen; j++) {
+ ((Ball *)p1)->p1 = runPtr;
+ runPtr = (Ball *)p1;
+
+ p1 -= sizeof(Ball);
+ }
+
+ g_vars->scene29_flyingRedBalls.pTail = runPtr;
+ }
+ }
+ g_vars->scene29_flyingRedBalls.pTail = runPtr->p0;
+ runPtr->p1 = lastP;
+ runPtr->p0 = 0;
+ runPtr->ani = ani;
+
+ g_vars->scene29_flyingRedBalls.numBalls++;
+
+ if (g_vars->scene29_flyingRedBalls.field_8) {
+ g_vars->scene29_flyingRedBalls.field_8->p0 = runPtr;
+ g_vars->scene29_flyingRedBalls.field_8 = runPtr;
+ } else {
+ g_vars->scene29_flyingRedBalls.pHead = runPtr;
+ g_vars->scene29_flyingRedBalls.field_8 = runPtr;
+ }
+ }
+}
+
+void sceneHandler29_manJump() {
+ if (!g_fp->_aniMan->_movement || g_fp->_aniMan->_movement->_id == MV_MAN29_RUN || g_fp->_aniMan->_movement->_id == MV_MAN29_STANDUP) {
+ g_vars->scene29_rideBackEnabled = false;
+ g_vars->scene29_manIsHit = false;
+ g_vars->scene29_reachedFarRight = true;
+
+ g_fp->_aniMan->changeStatics2(ST_MAN29_RUNR);
+ g_fp->_aniMan->startAnim(MV_MAN29_JUMP, 0, -1);
+ }
+
+ g_vars->scene29_manX = g_fp->_aniMan->_ox;
+ g_vars->scene29_manY = g_fp->_aniMan->_oy;
+}
+
+void sceneHandler29_manBend() {
+ if (!g_fp->_aniMan->_movement || g_fp->_aniMan->_movement->_id == MV_MAN29_RUN || g_fp->_aniMan->_movement->_id == MV_MAN29_STANDUP) {
+ g_vars->scene29_rideBackEnabled = false;
+ g_vars->scene29_manIsHit = false;
+ g_vars->scene29_reachedFarRight = true;
+
+ g_fp->_aniMan->changeStatics2(ST_MAN29_RUNR);
+ g_fp->_aniMan->startAnim(MV_MAN29_BEND, 0, -1);
+ }
+
+ g_vars->scene29_manX = g_fp->_aniMan->_ox;
+ g_vars->scene29_manY = g_fp->_aniMan->_oy;
+}
+
+bool sceneHandler29_checkRedBallHit(StaticANIObject *ani, int maxx) {
+ if (!g_vars->scene29_arcadeIsOn || g_vars->scene29_manIsHit)
+ return false;
+
+ if ((ani->_ox >= g_vars->scene29_manX + 42 || ani->_ox <= g_vars->scene29_manX + 8)
+ && (ani->_ox < g_vars->scene29_manX + 8 || maxx > g_vars->scene29_manX + 27))
+ return false;
+
+ if (!g_fp->_aniMan->_movement)
+ return true;
+
+ int phase = g_fp->_aniMan->_movement->_currDynamicPhaseIndex;
+
+ if (g_fp->_aniMan->_movement->_id != MV_MAN29_BEND && g_fp->_aniMan->_movement->_id != MV_MAN29_RUN
+ && (g_fp->_aniMan->_movement->_id != MV_MAN29_JUMP || (phase >= 3 && phase <= 6)))
+ return false;
+ else
+ return true;
+}
+
+bool sceneHandler29_checkGreenBallHit(StaticANIObject *ani, int maxx) {
+ if (!g_vars->scene29_arcadeIsOn || g_vars->scene29_manIsHit)
+ return false;
+
+ if (ani->_ox >= g_vars->scene29_manX + 40) {
+ if (maxx > g_vars->scene29_manX + 27)
+ return false;
+ } else {
+ if (ani->_ox <= g_vars->scene29_manX + 10) {
+ if (ani->_ox < g_vars->scene29_manX + 40)
+ return false;
+
+ if (maxx > g_vars->scene29_manX + 27)
+ return false;
+ }
+ }
+
+ if (!g_fp->_aniMan->_movement)
+ return true;
+
+ if (g_fp->_aniMan->_movement->_id == MV_MAN29_JUMP)
+ return true;
+
+ if (g_fp->_aniMan->_movement->_id == MV_MAN29_RUN)
+ return true;
+
+ if (g_fp->_aniMan->_movement->_id == MV_MAN29_BEND) {
+ if (g_fp->_aniMan->_movement->_currDynamicPhaseIndex < 1 || g_fp->_aniMan->_movement->_currDynamicPhaseIndex > 5)
+ return true;
+ }
+
+ return false;
+}
+
+void sceneHandler29_manHit() {
+ MGMInfo mgminfo;
+
+ g_vars->scene29_manIsHit = true;
+
+ g_fp->_aniMan->changeStatics2(ST_MAN29_RUNR);
+ g_fp->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY);
+
+ mgminfo.ani = g_fp->_aniMan;
+ mgminfo.staticsId2 = ST_MAN29_SITR;
+ mgminfo.y1 = 463;
+ mgminfo.x1 = g_vars->scene29_manX <= 638 ? 351 : 0;
+ mgminfo.field_1C = 10;
+ mgminfo.field_10 = 1;
+ mgminfo.flags = (g_vars->scene29_manX <= 638 ? 2 : 0) | 0x44;
+ mgminfo.movementId = MV_MAN29_HIT;
+
+ MessageQueue *mq = g_vars->scene29_mgm.genMovement(&mgminfo);
+ ExCommand *ex;
+
+ if (mq) {
+ if (g_vars->scene29_manX <= 638) {
+ ex = new ExCommand(ANI_MAN, 1, MV_MAN29_STANDUP_NORM, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags = 2;
+ ex->_keyCode = g_fp->_aniMan->_okeyCode;
+ mq->addExCommandToEnd(ex);
+
+ ex = new ExCommand(0, 17, MSG_SC29_STOPRIDE, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags = 2;
+ mq->addExCommandToEnd(ex);
+
+ g_vars->scene29_manIsRiding = false;
+ g_vars->scene29_arcadeIsOn = false;
+ g_vars->scene29_reachedFarRight = false;
+ g_vars->scene29_rideBackEnabled = false;
+ } else {
+ ex = new ExCommand(ANI_MAN, 1, MV_MAN29_STANDUP, 0, 0, 0, 1, 0, 0, 0);
+ ex->_excFlags = 2;
+ ex->_keyCode = g_fp->_aniMan->_okeyCode;
+ mq->addExCommandToEnd(ex);
+ }
+
+ mq->setFlags(mq->getFlags() | 1);
+
+ if (!mq->chain(g_fp->_aniMan))
+ delete mq;
+ }
+}
+
+void sceneHandler29_assHitRed() {
+ if (g_vars->scene29_ass->_statics->_staticsId == ST_ASS_NORM) {
+ g_vars->scene29_ass->changeStatics2(ST_ASS_NORM);
+ g_vars->scene29_ass->startAnim(MV_ASS_HITRED, 0, -1);
+ }
+}
+
+void sceneHandler29_assHitGreen() {
+ if (g_vars->scene29_ass->_statics->_staticsId == ST_ASS_NORM) {
+ g_vars->scene29_ass->changeStatics2(ST_ASS_NORM);
+ g_vars->scene29_ass->startAnim(MV_ASS_HITGREEN, 0, -1);
+ }
+}
+
+void sceneHandler29_ballHitCheck() {
+ Ball *ball = g_vars->scene29_greenBalls.pHead;
+ Ball *newball;
+ int x, y;
+
+ while (ball) {
+ x = ball->ani->_ox - 30;
+ y = ball->ani->_oy;
+
+ if (x >= 186) {
+ if (sceneHandler29_checkGreenBallHit(ball->ani, x)) {
+ newball = g_vars->scene29_balls.sub04(g_vars->scene29_balls.field_8, 0);
+ newball->ani = ball->ani;
+
+ if (g_vars->scene29_balls.field_8)
+ g_vars->scene29_balls.field_8->p0 = newball;
+ else
+ g_vars->scene29_balls.pHead = newball;
+
+ g_vars->scene29_balls.field_8 = newball;
+
+ if (ball == g_vars->scene29_greenBalls.pHead)
+ g_vars->scene29_greenBalls.pHead = ball->p0;
+ else
+ ball->p1->p0 = ball->p0;
+
+ if (ball == g_vars->scene29_greenBalls.field_8)
+ g_vars->scene29_greenBalls.field_8 = ball->p1;
+ else
+ ball->p0->p1 = ball->p1;
+
+ g_vars->scene29_greenBalls.init(&ball);
+
+ sceneHandler29_manHit();
+
+ g_fp->playSound(SND_29_014, 0);
+
+ ball->ani->startAnim(MV_SHG_HITMAN, 0, -1);
+
+ g_vars->scene29_hitBall = ball->ani->_id;
+ } else {
+ ball->ani->setOXY(x, y);
+ }
+ } else {
+ newball = g_vars->scene29_balls.sub04(g_vars->scene29_balls.field_8, 0);
+ newball->ani = ball->ani;
+
+ if (g_vars->scene29_balls.field_8)
+ g_vars->scene29_balls.field_8->p0 = newball;
+ else
+ g_vars->scene29_balls.pHead = newball;
+
+ g_vars->scene29_balls.field_8 = newball;
+
+ ball->ani->hide();
+
+ if (ball == g_vars->scene29_greenBalls.pHead)
+ g_vars->scene29_greenBalls.pHead = ball->p0;
+ else
+ ball->p1->p0 = ball->p0;
+
+ if (ball == g_vars->scene29_greenBalls.field_8)
+ g_vars->scene29_greenBalls.field_8 = ball->p1;
+ else
+ ball->p0->p1 = ball->p1;
+
+ g_vars->scene29_greenBalls.init(&ball);
+
+ sceneHandler29_assHitGreen();
+ }
+
+ ball = ball->p0;
+ }
+
+ ball = g_vars->scene29_flyingRedBalls.pHead;
+
+ while (ball) {
+ x = ball->ani->_ox - 30;
+ y = ball->ani->_oy;
+
+ if (x >= 147) {
+ if (sceneHandler29_checkRedBallHit(ball->ani, x)) {
+ newball = g_vars->scene29_redBalls.sub04(g_vars->scene29_redBalls.field_8, 0);
+ newball->ani = ball->ani;
+
+ if (g_vars->scene29_redBalls.field_8)
+ g_vars->scene29_redBalls.field_8->p0 = newball;
+ else
+ g_vars->scene29_redBalls.pHead = newball;
+
+ g_vars->scene29_redBalls.field_8 = newball;
+
+ g_vars->scene29_flyingRedBalls.removeBall(ball);
+
+ sceneHandler29_manHit();
+
+ g_fp->playSound(SND_29_027, 0);
+
+ ball->ani->startAnim(MV_SHR_HITMAN, 0, -1);
+
+ g_vars->scene29_hitBall = ball->ani->_id;
+ } else {
+ ball->ani->setOXY(x, y);
+ }
+ } else {
+ newball = g_vars->scene29_redBalls.sub04(g_vars->scene29_redBalls.field_8, 0);
+ newball->ani = ball->ani;
+
+ if (g_vars->scene29_redBalls.field_8)
+ g_vars->scene29_redBalls.field_8->p0 = newball;
+ else
+ g_vars->scene29_redBalls.pHead = newball;
+
+ g_vars->scene29_redBalls.field_8 = newball;
+
+ ball->ani->hide();
+
+ if (ball == g_vars->scene29_flyingRedBalls.pHead)
+ g_vars->scene29_flyingRedBalls.pHead = ball->p0;
+ else
+ ball->p1->p0 = ball->p0;
+
+ if (ball == g_vars->scene29_flyingRedBalls.field_8)
+ g_vars->scene29_flyingRedBalls.field_8 = ball->p1;
+ else
+ ball->p0->p1 = ball->p1;
+
+ g_vars->scene29_flyingRedBalls.init(&ball);
+
+ sceneHandler29_assHitRed();
+ }
+
+ ball = ball->p0;
+ }
+}
+
+void sceneHandler29_manFromL() {
+ if (g_vars->scene29_manX < 497 && !g_vars->scene29_scrollingDisabled) {
+ getCurrSceneSc2MotionController()->setEnabled();
+ getGameLoaderInteractionController()->enableFlag24();
+
+ g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT | 0x4000);
+ chainQueue(QU_SC29_MANFROM_L, 1);
+
+ g_vars->scene29_scrollingDisabled = true;
+
+ g_fp->_scrollSpeed = g_vars->scene29_scrollSpeed;
+ }
+}
+
+void sceneHandler29_manFromR() {
+ getCurrSceneSc2MotionController()->setEnabled();
+ getGameLoaderInteractionController()->enableFlag24();
+
+ chainQueue(QU_SC29_MANFROM_R, 1);
+
+ g_vars->scene29_arcadeIsOn = false;
+ g_vars->scene29_rideBackEnabled = false;
+}
+
+int sceneHandler29_updateScreenCallback() {
+ int res;
+
+ res = g_fp->drawArcadeOverlay(g_vars->scene29_arcadeIsOn);
+
+ if (!res)
+ g_fp->_updateScreenCallback = 0;
+
+ return res;
+}
+
+void sceneHandler29_manToL() {
+ getCurrSceneSc2MotionController()->clearEnabled();
+ getGameLoaderInteractionController()->disableFlag24();
+
+ chainQueue(QU_SC29_MANTO_L, 1);
+
+ g_vars->scene29_arcadeIsOn = true;
+
+ g_vars->scene29_mgm.addItem(g_fp->_aniMan->_id);
+
+ g_fp->_updateScreenCallback = sceneHandler29_updateScreenCallback;
+
+ g_fp->_msgY = -1;
+ g_fp->_msgX = -1;
+}
+
+void sceneHandler29_manToR() {
+ getCurrSceneSc2MotionController()->clearEnabled();
+ getGameLoaderInteractionController()->disableFlag24();
+
+ chainQueue(QU_SC29_MANTO_R, 1);
+
+ g_vars->scene29_manIsRiding = true;
+ g_fp->_msgY = -1;
+ g_fp->_msgX = -1;
+
+ g_vars->scene29_scrollingDisabled = false;
+
+ g_vars->scene29_scrollSpeed = g_fp->_scrollSpeed;
+ g_fp->_scrollSpeed = 4;
+}
+
+void sceneHandler29_clickPorter(ExCommand *cmd) {
+ if (!g_fp->_aniMan->isIdle() || g_fp->_aniMan->_flags & 0x100) {
+ cmd->_messageKind = 0;
+
+ return;
+ }
+
+ if (g_vars->scene29_manX <= g_vars->scene29_porter->_ox) {
+ if (ABS(351 - g_vars->scene29_manX) > 1 || ABS(443 - g_vars->scene29_manY) > 1
+ || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != ST_MAN_RIGHT) {
+ if (g_fp->_msgX != 351 || g_fp->_msgY != 443) {
+ MessageQueue *mq = getCurrSceneSc2MotionController()->method34(g_fp->_aniMan, 351, 443, 1, ST_MAN_RIGHT);
+
+ if (mq) {
+ mq->addExCommandToEnd(cmd->createClone());
+
+ postExCommand(g_fp->_aniMan->_id, 2, 351, 443, 0, -1);
+ }
+ }
+ } else {
+ sceneHandler29_manToL();
+ }
+ } else {
+ g_vars->scene29_manX = g_fp->_aniMan->_ox;
+ g_vars->scene29_manY = g_fp->_aniMan->_oy;
+
+ if (ABS(1582 - g_vars->scene29_manX) > 1 || ABS(445 - g_fp->_aniMan->_oy) > 1
+ || g_fp->_aniMan->_movement || g_fp->_aniMan->_statics->_staticsId != (0x4000 | ST_MAN_RIGHT)) {
+ if (g_fp->_msgX != 1582 || g_fp->_msgY != 445) {
+ MessageQueue *mq = getCurrSceneSc2MotionController()->method34(g_fp->_aniMan, 1582, 445, 1, (0x4000 | ST_MAN_RIGHT));
+
+ if (mq) {
+ mq->addExCommandToEnd(cmd->createClone());
+
+ postExCommand(g_fp->_aniMan->_id, 2, 1582, 445, 0, -1);
+ }
+ }
+ } else {
+ sceneHandler29_manToR();
+ }
+ }
+}
+
+void sceneHandler29_shootersProcess() {
+ if (g_fp->_aniMan->_statics->_staticsId == ST_MAN29_RUNR) {
+ if (g_vars->scene29_manX > 1436) {
+ sceneHandler29_manFromR();
+ } else {
+ g_vars->scene29_shootDistance = (1310 - g_vars->scene29_manX) * 5213 / 100000 + 25;
+
+ if (!g_vars->scene29_manIsHit)
+ g_fp->_aniMan->startAnim(MV_MAN29_RUN, 0, -1);
+ }
+ }
+
+ g_vars->scene29_manX = g_fp->_aniMan->_ox;
+ g_vars->scene29_manY = g_fp->_aniMan->_oy;
+}
+
+void sceneHandler29_shootersEscape() {
+ if (g_vars->scene29_arcadeIsOn) {
+ g_vars->scene29_manX += 2;
+
+ g_fp->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY);
+
+ if (g_vars->scene29_manX > 1310 && !g_vars->scene29_shooter1->_movement && !g_vars->scene29_shooter2->_movement
+ && g_vars->scene29_shooter1->_statics->_staticsId == ST_STR1_RIGHT) {
+ g_vars->scene29_shootCountdown = 0;
+
+ g_vars->scene29_shooter1->changeStatics2(ST_STR1_STAND);
+ g_vars->scene29_shooter2->changeStatics2(ST_STR2_STAND);
+
+ chainQueue(QU_SC29_ESCAPE, 1);
+
+ g_vars->scene29_ass->queueMessageQueue(0);
+ g_vars->scene29_ass->hide();
+
+ g_fp->setObjectState(sO_LeftPipe_29, g_fp->getObjectEnumState(sO_LeftPipe_29, sO_IsOpened));
+ }
+ } else if (g_vars->scene29_manIsRiding) {
+ g_vars->scene29_manX -= 4;
+
+ g_fp->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY);
+ }
+}
+
+void sceneHandler29_manRideBack() {
+ g_vars->scene29_manX -= 2;
+
+ g_fp->_aniMan->setOXY(g_vars->scene29_manX, g_vars->scene29_manY);
+}
+
+void sceneHandler29_shoot() {
+ if (g_vars->scene29_arcadeIsOn && g_vars->scene29_manX < 1310) {
+ if (g_fp->_rnd->getRandomNumber(1) || g_vars->scene29_shooter1->_movement || g_vars->scene29_shooter1->_statics->_staticsId != ST_STR1_RIGHT) {
+ if (!g_vars->scene29_shooter2->_movement && g_vars->scene29_shooter2->_statics->_staticsId == ST_STR2_RIGHT) {
+ if (g_vars->scene29_shooter2->_flags & 4) {
+ g_vars->scene29_shooter2->startAnim(MV_STR2_SHOOT, 0, -1);
+
+ g_vars->scene29_shootCountdown = 0;
+ }
+ }
+ } else {
+ g_vars->scene29_shooter1->startAnim(MV_STR1_SHOOT, 0, -1);
+
+ g_vars->scene29_shootCountdown = 0;
+ }
+ }
+}
+
+void sceneHandler29_animBearded() {
+ MessageQueue *mq;
+
+ for (uint i = 0; i < g_vars->scene29_bearders.size(); i++) {
+ StaticANIObject *ani = g_vars->scene29_bearders[i]->ani;
+
+ if (g_vars->scene29_bearders[i]->wbflag) {
+ int x = ani->_ox;
+ int y = ani->_oy;
+
+ if (!ani->_movement && ani->_statics->_staticsId == (ST_BRDCMN_RIGHT | 0x4000)) {
+ x -= 4;
+
+ if (x - g_vars->scene29_manX < 100 || !g_vars->scene29_arcadeIsOn) {
+ mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC29_BRDOUT1), 0, 1);
+
+ mq->replaceKeyCode(-1, ani->_okeyCode);
+ mq->chain(0);
+
+ g_vars->scene29_bearders[i]->wbflag = 0;
+ g_vars->scene29_bearders[i]->wbcounter = 0;
+ }
+ }
+
+ if (!ani->_movement && ani->_statics->_staticsId == ST_BRDCMN_GOR)
+ ani->startAnim(MV_BRDCMN_GOR, 0, -1);
+
+ if (ani->_movement) {
+ if (ani->_movement->_id == MV_BRDCMN_GOR) {
+ x -= 4;
+
+ if (g_vars->scene29_manX - x < 60 || x - g_vars->scene29_manX < -260 || !g_vars->scene29_arcadeIsOn) {
+ ani->changeStatics2(ST_BRDCMN_RIGHT);
+
+ mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC29_BRDOUT2), 0, 1);
+
+ mq->replaceKeyCode(-1, ani->_okeyCode);
+ mq->chain(0);
+
+ g_vars->scene29_bearders[i]->wbflag = 0;
+ g_vars->scene29_bearders[i]->wbcounter = 0;
+ }
+ }
+ }
+
+ ani->setOXY(x, y);
+ continue;
+ }
+
+ if (g_vars->scene29_arcadeIsOn && g_vars->scene29_bearders[i]->wbcounter > 30) {
+ int newx;
+
+ if (g_fp->_rnd->getRandomNumber(1))
+ goto dostuff;
+
+ if (g_vars->scene29_manX <= 700) {
+ g_vars->scene29_bearders[i]->wbcounter++;
+ continue;
+ }
+
+ if (g_vars->scene29_manX >= 1100) {
+ dostuff:
+ if (g_vars->scene29_manX <= 700 || g_vars->scene29_manX >= 1350) {
+ g_vars->scene29_bearders[i]->wbcounter++;
+ continue;
+ }
+
+ mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC29_BRD2), 0, 1);
+
+ newx = g_vars->scene29_manX - 200;
+ } else {
+ mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC29_BRD1), 0, 1);
+
+ newx = g_vars->scene29_manX + 350;
+ }
+
+ mq->getExCommandByIndex(0)->_x = newx;
+ mq->replaceKeyCode(-1, ani->_okeyCode);
+ mq->chain(0);
+
+ g_vars->scene29_bearders[i]->wbflag = 1;
+ g_vars->scene29_bearders[i]->wbcounter = 0;
+ }
+
+ g_vars->scene29_bearders[i]->wbcounter++;
+ }
+}
+
+
+
+int sceneHandler29(ExCommand *cmd) {
+ if (cmd->_messageKind != 17)
+ return 0;
+
+ switch (cmd->_messageNum) {
+ case MSG_CMN_WINARCADE:
+ sceneHandler29_winArcade();
+ break;
+
+ case MSG_SC29_LAUGH:
+ if (g_vars->scene29_hitBall == ANI_SHELL_GREEN) {
+ g_fp->playSound(SND_29_028, 0);
+ break;
+ }
+
+ g_fp->playSound(SND_29_029, 0);
+
+ break;
+
+ case MSG_SC29_SHOWLASTRED:
+ if (g_vars->scene29_balls.numBalls) {
+ g_vars->scene29_redBalls.field_8->ani->show1(-1, -1, -1, 0);
+ g_vars->scene29_redBalls.field_8->ani->startAnim(MV_SHR_HITASS, 0, -1);
+ }
+
+ break;
+
+ case MSG_SC29_SHOOTGREEN:
+ sceneHandler29_shootGreen();
+ break;
+
+ case MSG_SC29_SHOOTRED:
+ sceneHandler29_shootRed();
+ break;
+
+ case MSG_SC29_SHOWLASTGREEN:
+ if (g_vars->scene29_balls.numBalls) {
+ g_vars->scene29_balls.field_8->ani->show1(-1, -1, -1, 0);
+ g_vars->scene29_balls.field_8->ani->startAnim(MV_SHG_HITASS, 0, -1);
+ }
+
+ break;
+
+ case MSG_SC29_STOPRIDE:
+ g_vars->scene29_manIsRiding = false;
+ g_vars->scene29_arcadeIsOn = false;
+ g_vars->scene29_reachedFarRight = false;
+ g_vars->scene29_rideBackEnabled = false;
+
+ getCurrSceneSc2MotionController()->setEnabled();
+ getGameLoaderInteractionController()->enableFlag24();
+ break;
+
+ case MSG_SC29_DISABLERIDEBACK:
+ g_vars->scene29_rideBackEnabled = false;
+ break;
+
+ case MSG_SC29_ENABLERIDEBACK:
+ g_vars->scene29_rideBackEnabled = true;
+ g_vars->scene29_reachedFarRight = false;
+ break;
+
+ case MSG_SC29_DISABLEPORTER:
+ g_vars->scene29_reachedFarRight = false;
+ break;
+
+ case MSG_SC29_ENABLEPORTER:
+ g_vars->scene29_reachedFarRight = true;
+ g_vars->scene29_rideBackEnabled = false;
+ g_vars->scene29_manIsHit = false;
+ break;
+
+ case 29:
+ if (!g_vars->scene29_manIsRiding || g_vars->scene29_arcadeIsOn) {
+ if (!g_vars->scene29_arcadeIsOn) {
+ StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y);
+
+ if (ani && ani == g_vars->scene29_porter) {
+ sceneHandler29_clickPorter(cmd);
+
+ cmd->_messageKind = 0;
+ break;
+ }
+ break;
+ }
+
+ sceneHandler29_manJump();
+
+ cmd->_messageKind = 0;
+ break;
+ }
+ break;
+
+ case 107:
+ if (g_vars->scene29_arcadeIsOn)
+ sceneHandler29_manBend();
+
+ break;
+
+ case 33:
+ if (g_vars->scene29_arcadeIsOn) {
+ if (g_vars->scene29_manX > g_fp->_sceneRect.right - 500)
+ g_fp->_currentScene->_x = g_fp->_sceneRect.right - g_vars->scene29_manX - 350;
+
+ if (g_vars->scene29_manX < g_fp->_sceneRect.left + 100)
+ g_fp->_currentScene->_x = g_vars->scene29_manX - g_fp->_sceneRect.left - 100;
+
+ } else if (g_fp->_aniMan2) {
+ int x = g_fp->_aniMan2->_ox;
+
+ if (x < g_fp->_sceneRect.left + 300)
+ g_fp->_currentScene->_x = x - 400 - g_fp->_sceneRect.left;
+
+ if (x > g_fp->_sceneRect.right - 300)
+ g_fp->_currentScene->_x = x + 400 - g_fp->_sceneRect.right;
+ }
+
+ g_vars->scene29_manX = g_fp->_aniMan->_ox;
+ g_vars->scene29_manY = g_fp->_aniMan->_oy;
+
+ sceneHandler29_ballHitCheck();
+
+ if (!g_vars->scene29_porter->_movement)
+ g_vars->scene29_porter->startAnim(MV_PTR_MOVEFAST, 0, -1);
+
+ if (g_vars->scene29_manIsRiding)
+ sceneHandler29_manFromL();
+ else if (g_vars->scene29_arcadeIsOn && !g_fp->_aniMan->_movement)
+ sceneHandler29_shootersProcess();
+
+ if (g_vars->scene29_reachedFarRight)
+ sceneHandler29_shootersEscape();
+ else if (g_vars->scene29_rideBackEnabled)
+ sceneHandler29_manRideBack();
+
+ g_vars->scene29_shootCountdown++;
+
+ if (g_vars->scene29_shootCountdown > g_vars->scene29_shootDistance)
+ sceneHandler29_shoot();
+
+ sceneHandler29_animBearded();
+
+ g_fp->_behaviorManager->updateBehaviors();
+ g_fp->startSceneTrack();
+
+ break;
+ }
+
+ return 0;
+}
+
+int scene29_updateCursor() {
+ g_fp->updateCursorCommon();
+
+ if (g_vars->scene29_arcadeIsOn) {
+ if (g_fp->_cursorId != PIC_CSR_DEFAULT_INV && g_fp->_cursorId != PIC_CSR_ITN_INV)
+ g_fp->_cursorId = -1;
+ } else if (g_vars->scene29_manIsRiding) {
+ if (g_fp->_cursorId != PIC_CSR_DEFAULT_INV && g_fp->_cursorId != PIC_CSR_ITN_INV)
+ g_fp->_cursorId = PIC_CSR_DEFAULT;
+ } else if (g_fp->_objectIdAtCursor == ANI_PORTER) {
+ if (g_fp->_cursorId == PIC_CSR_DEFAULT)
+ g_fp->_cursorId = PIC_CSR_ITN;
+ } else {
+ if (g_fp->_objectIdAtCursor == PIC_SC29_LTRUBA && g_fp->_cursorId == PIC_CSR_ITN)
+ g_fp->_cursorId = PIC_CSR_GOL;
+ }
+ return g_fp->_cursorId;
+}
+
+} // End of namespace Fullpipe
diff --git a/engines/fullpipe/scenes/scene30.cpp b/engines/fullpipe/scenes/scene30.cpp
index 59cb83efcd..ca2324e647 100644
--- a/engines/fullpipe/scenes/scene30.cpp
+++ b/engines/fullpipe/scenes/scene30.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -73,7 +73,7 @@ void scene30_initScene(Scene *sc, int flag) {
g_fp->lift_setButton(sO_Level8, ST_LBN_8N);
- g_fp->lift_sub5(sc, QU_SC30_ENTERLIFT, QU_SC30_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC30_ENTERLIFT, QU_SC30_EXITLIFT);
}
int scene30_updateCursor() {
@@ -103,7 +103,7 @@ int sceneHandler30(ExCommand *cmd) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC30_UPDATEPATH:
@@ -111,7 +111,7 @@ int sceneHandler30(ExCommand *cmd) {
break;
case 64:
- g_fp->lift_sub05(cmd);
+ g_fp->lift_hoverButton(cmd);
break;
case MSG_LIFT_GO:
@@ -123,7 +123,7 @@ int sceneHandler30(ExCommand *cmd) {
StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y);
if (ani && ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
cmd->_messageKind = 0;
}
diff --git a/engines/fullpipe/scenes/scene31.cpp b/engines/fullpipe/scenes/scene31.cpp
index 587fc6aaef..3f507e62b7 100644
--- a/engines/fullpipe/scenes/scene31.cpp
+++ b/engines/fullpipe/scenes/scene31.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene32.cpp b/engines/fullpipe/scenes/scene32.cpp
index c93e888e51..9279db7513 100644
--- a/engines/fullpipe/scenes/scene32.cpp
+++ b/engines/fullpipe/scenes/scene32.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -88,7 +88,7 @@ void scene32_initScene(Scene *sc) {
}
g_fp->lift_setButton(sO_Level9, ST_LBN_9N);
- g_fp->lift_sub5(sc, QU_SC32_ENTERLIFT, QU_SC32_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC32_ENTERLIFT, QU_SC32_EXITLIFT);
g_fp->initArcadeKeys("SC_32");
}
@@ -291,7 +291,7 @@ int sceneHandler32(ExCommand *cmd) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC33_TRYKUBIK:
@@ -339,7 +339,7 @@ int sceneHandler32(ExCommand *cmd) {
break;
case 64:
- g_fp->lift_sub05(cmd);
+ g_fp->lift_hoverButton(cmd);
break;
case MSG_SC6_INSTHANDLE:
@@ -403,7 +403,7 @@ int sceneHandler32(ExCommand *cmd) {
StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(cmd->_sceneClickX, cmd->_sceneClickY);
if (ani && ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
cmd->_messageKind = 0;
break;
diff --git a/engines/fullpipe/scenes/scene33.cpp b/engines/fullpipe/scenes/scene33.cpp
index 209198c0f3..90ea0a4f3f 100644
--- a/engines/fullpipe/scenes/scene33.cpp
+++ b/engines/fullpipe/scenes/scene33.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene34.cpp b/engines/fullpipe/scenes/scene34.cpp
index 942a0abc6b..1c8c8b4855 100644
--- a/engines/fullpipe/scenes/scene34.cpp
+++ b/engines/fullpipe/scenes/scene34.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -92,7 +92,7 @@ void scene34_initScene(Scene *sc) {
g_fp->_floaters->init(g_fp->getGameLoaderGameVar()->getSubVarByName("SC_34"));
g_fp->lift_setButton(sO_Level7, ST_LBN_7N);
- g_fp->lift_sub5(sc, QU_SC34_ENTERLIFT, QU_SC34_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC34_ENTERLIFT, QU_SC34_EXITLIFT);
g_fp->initArcadeKeys("SC_34");
}
@@ -216,7 +216,7 @@ void sceneHandler34_animateAction(ExCommand *cmd) {
int qId = 0;
if (ox == 887) {
- if (oy != 370)
+ if (oy != 370)
return;
qId = QU_SC34_FROMSTOOL;
@@ -317,7 +317,7 @@ int sceneHandler34(ExCommand *cmd) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC34_FROMCACTUS:
@@ -392,7 +392,7 @@ int sceneHandler34(ExCommand *cmd) {
break;
case 64:
- g_fp->lift_sub05(cmd);
+ g_fp->lift_hoverButton(cmd);
break;
case MSG_LIFT_GO:
@@ -426,7 +426,7 @@ int sceneHandler34(ExCommand *cmd) {
}
if (ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
cmd->_messageKind = 0;
diff --git a/engines/fullpipe/scenes/scene35.cpp b/engines/fullpipe/scenes/scene35.cpp
index 290213c453..53381fd555 100644
--- a/engines/fullpipe/scenes/scene35.cpp
+++ b/engines/fullpipe/scenes/scene35.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -64,7 +64,7 @@ void scene35_initScene(Scene *sc) {
g_fp->playSound(sndId, 1);
g_fp->lift_setButton(sO_Level6, ST_LBN_6N);
- g_fp->lift_sub5(sc, QU_SC35_ENTERLIFT, QU_SC35_EXITLIFT);
+ g_fp->lift_init(sc, QU_SC35_ENTERLIFT, QU_SC35_EXITLIFT);
g_fp->initArcadeKeys("SC_35");
@@ -168,7 +168,7 @@ int sceneHandler35(ExCommand *cmd) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC35_STOPFLOW:
@@ -199,7 +199,7 @@ int sceneHandler35(ExCommand *cmd) {
break;
case 64:
- g_fp->lift_sub05(cmd);
+ g_fp->lift_hoverButton(cmd);
break;
case 29:
@@ -208,7 +208,7 @@ int sceneHandler35(ExCommand *cmd) {
if (ani)
if (ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
cmd->_messageKind = 0;
break;
}
diff --git a/engines/fullpipe/scenes/scene36.cpp b/engines/fullpipe/scenes/scene36.cpp
index 7d237fd395..44099faba0 100644
--- a/engines/fullpipe/scenes/scene36.cpp
+++ b/engines/fullpipe/scenes/scene36.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene37.cpp b/engines/fullpipe/scenes/scene37.cpp
index 8324e00af7..09da01f138 100644
--- a/engines/fullpipe/scenes/scene37.cpp
+++ b/engines/fullpipe/scenes/scene37.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/scene38.cpp b/engines/fullpipe/scenes/scene38.cpp
index 198a88f25d..2bdae1ce66 100644
--- a/engines/fullpipe/scenes/scene38.cpp
+++ b/engines/fullpipe/scenes/scene38.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -82,8 +82,8 @@ void scene38_initScene(Scene *sc) {
g_vars->scene38_domino1->_flags &= 0xFFFB;
}
- g_fp->lift_sub5(sc, QU_SC38_ENTERLIFT, QU_SC38_EXITLIFT);
- g_fp->lift_sub7(sc, ST_LBN_0N);
+ g_fp->lift_init(sc, QU_SC38_ENTERLIFT, QU_SC38_EXITLIFT);
+ g_fp->lift_setButtonStatics(sc, ST_LBN_0N);
}
void sceneHandler38_tryTakeBottle() {
@@ -348,7 +348,7 @@ int sceneHandler38(ExCommand *cmd) {
break;
case MSG_LIFT_CLICKBUTTON:
- g_fp->lift_animation3();
+ g_fp->lift_clickButton();
break;
case MSG_SC38_POINT:
@@ -368,7 +368,7 @@ int sceneHandler38(ExCommand *cmd) {
break;
case 64:
- g_fp->lift_sub05(cmd);
+ g_fp->lift_hoverButton(cmd);
break;
case 29:
@@ -376,7 +376,7 @@ int sceneHandler38(ExCommand *cmd) {
StaticANIObject *ani = g_fp->_currentScene->getStaticANIObjectAtPos(g_fp->_sceneRect.left + cmd->_x, g_fp->_sceneRect.top + cmd->_y);
if (ani && ani->_id == ANI_LIFTBUTTON) {
- g_fp->lift_sub1(ani);
+ g_fp->lift_animateButton(ani);
cmd->_messageKind = 0;
}
diff --git a/engines/fullpipe/scenes/sceneDbg.cpp b/engines/fullpipe/scenes/sceneDbg.cpp
index 4a3751940f..bd53f5749f 100644
--- a/engines/fullpipe/scenes/sceneDbg.cpp
+++ b/engines/fullpipe/scenes/sceneDbg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/sceneFinal.cpp b/engines/fullpipe/scenes/sceneFinal.cpp
index e483e8bab7..d0040463ef 100644
--- a/engines/fullpipe/scenes/sceneFinal.cpp
+++ b/engines/fullpipe/scenes/sceneFinal.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/scenes/sceneIntro.cpp b/engines/fullpipe/scenes/sceneIntro.cpp
index c9f19f3724..5e69cf1d7a 100644
--- a/engines/fullpipe/scenes/sceneIntro.cpp
+++ b/engines/fullpipe/scenes/sceneIntro.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/sound.cpp b/engines/fullpipe/sound.cpp
index fd25e2c903..3c13bad854 100644
--- a/engines/fullpipe/sound.cpp
+++ b/engines/fullpipe/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -26,6 +26,7 @@
#include "fullpipe/scene.h"
#include "fullpipe/sound.h"
#include "fullpipe/ngiarchive.h"
+#include "fullpipe/messages.h"
#include "common/memstream.h"
#include "audio/audiostream.h"
#include "audio/decoders/vorbis.h"
@@ -73,6 +74,18 @@ bool SoundList::loadFile(const char *fname, char *libname) {
return load(archive, libname);
}
+Sound *SoundList::getSoundItemById(int id) {
+ if (_soundItemsCount == 0) {
+ return _soundItems[0]->getId() != id ? 0 : _soundItems[0];
+ }
+
+ for (int i = 0; i < _soundItemsCount; i++) {
+ if (_soundItems[i]->getId() == id)
+ return _soundItems[i];
+ }
+ return NULL;
+}
+
Sound::Sound() {
_id = 0;
_directSoundBuffer = 0;
@@ -80,10 +93,13 @@ Sound::Sound() {
_objectId = 0;
memset(_directSoundBuffers, 0, sizeof(_directSoundBuffers));
_description = 0;
+ _volume = 100;
}
Sound::~Sound() {
- warning("STUB: Sound::~Sound()");
+ freeSound();
+
+ free(_description);
}
bool Sound::load(MfcArchive &file, NGIArchive *archive) {
@@ -119,24 +135,157 @@ void Sound::setPanAndVolumeByStaticAni() {
debug(3, "STUB Sound::setPanAndVolumeByStaticAni()");
}
-void FullpipeEngine::setSceneMusicParameters(GameVar *var) {
+void Sound::setPanAndVolume(int vol, int pan) {
+ g_fp->_mixer->setChannelVolume(_handle, vol / 39); // 0..10000
+ g_fp->_mixer->setChannelBalance(_handle, pan / 78); // -10000..10000
+}
+
+void Sound::play(int flag) {
+ Audio::SoundHandle handle = getHandle();
+
+ if (g_fp->_mixer->isSoundHandleActive(handle))
+ return;
+
+ byte *soundData = loadData();
+ Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(soundData, getDataSize());
+ Audio::RewindableAudioStream *wav = Audio::makeWAVStream(dataStream, DisposeAfterUse::YES);
+ Audio::AudioStream *audioStream = new Audio::LoopingAudioStream(wav, (flag == 1) ? 0 : 1);
+
+ g_fp->_mixer->playStream(Audio::Mixer::kSFXSoundType, &handle, audioStream);
+}
+
+void Sound::freeSound() {
+ stop();
+
+ free(_soundData);
+}
+
+int Sound::getVolume() {
+ return g_fp->_mixer->getChannelVolume(_handle) * 39; // 0..10000
+}
+
+void Sound::stop() {
+ g_fp->_mixer->stopHandle(_handle);
+}
+
+void FullpipeEngine::setSceneMusicParameters(GameVar *gvar) {
warning("STUB: FullpipeEngine::setSceneMusicParameters()");
- // TODO: Finish this (MINDELAY, MAXDELAY, LOCAL, SEQUENCE, STARTDELAY etc)
- stopAllSoundStreams();
+#if 0
+ stopSoundStream2();
+
+ if (soundStream3)
+ FSOUND_Stream_Stop(soundStream4);
+#endif
+
+ if (_musicLocal)
+ stopAllSoundStreams();
+
+ GameVar *var = gvar->getSubVarByName("MUSIC");
+
+ memset(_sceneTracks, 0, sizeof(_sceneTracks));
+
+ _numSceneTracks = 0;
+ _sceneTrackHasSequence = false;
+
+ if (!var)
+ return;
+
_musicGameVar = var;
+
+ GameVar *tr = var->getSubVarByName("TRACKS");
+ if (tr) {
+ GameVar *sub = tr->_subVars;
+
+ while (sub) {
+ if (_musicAllowed & sub->_value.intValue) {
+ strcpy(_sceneTracks[_numSceneTracks], sub->_varName);
+
+ _numSceneTracks++;
+ }
+
+ sub = sub->_nextVarObj;
+ }
+ }
+
+ _musicMinDelay = var->getSubVarAsInt("MINDELAY");
+ _musicMaxDelay = var->getSubVarAsInt("MAXDELAY");
+ _musicLocal = var->getSubVarAsInt("LOCAL");
+
+ GameVar *seq = var->getSubVarByName("SEQUENCE");
+
+ if (seq) {
+ _sceneTrackHasSequence = true;
+
+ strcpy(_trackName, seq->_value.stringValue);
+ }
+
+ if (_musicLocal)
+ stopAllSoundStreams();
+
+ if (!_sceneTrackIsPlaying || _musicLocal)
+ _trackStartDelay = var->getSubVarAsInt("STARTDELAY");
}
void FullpipeEngine::startSceneTrack() {
- // TODO: Finish this
-#ifdef USE_VORBIS
- if (g_fp->_mixer->isSoundHandleActive(_sceneTrackHandle))
- return;
+ if (!_sceneTrackIsPlaying && _numSceneTracks > 0) {
+ if (_trackStartDelay > 0) {
+ _trackStartDelay--;
+ } else {
+ int trackNum = getSceneTrack();
+
+ if (trackNum == -1) {
+ strcpy(_sceneTracksCurrentTrack, "silence");
+
+ _trackStartDelay = 2880;
+ _sceneTrackIsPlaying = 0;
+ } else {
+ strcpy(_sceneTracksCurrentTrack, _sceneTracks[trackNum]);
+
+ startSoundStream1(_sceneTracksCurrentTrack);
+
+ _sceneTrackIsPlaying = true;
+ }
+ }
+ }
+}
+
+int FullpipeEngine::getSceneTrack() {
+ int res;
+
+ if (_sceneTrackHasSequence) {
+ int num = _musicGameVar->getSubVarAsInt("TRACKS");
+
+ if (_trackName[num + 1] == 's') { // 'silence'
+ res = -1;
+ } else {
+ res = _trackName[num + 1] - '0';
- GameVar *musicTrackVar = _musicGameVar->getSubVarByName("MUSIC")->getSubVarByName("TRACKS")->_subVars;
- if (!musicTrackVar)
+ if (res < 0 || res >= _numSceneTracks)
+ res = 0;
+ }
+
+ int track = num + 1;
+
+ if (!_trackName[num + 2])
+ track = 0;
+
+ _musicGameVar->setSubVarAsInt("TRACKS", track);
+ } else {
+ res = _numSceneTracks * (_updateTicks % 10) / 10;
+ }
+
+ return res;
+}
+
+void FullpipeEngine::startSoundStream1(char *trackName) {
+ warning("STUB: FullpipeEngine::startSoundStream1(%s)", trackName);
+
+ stopAllSoundStreams();
+
+#ifdef USE_VORBIS
+ if (_mixer->isSoundHandleActive(_sceneTrackHandle))
return;
- char *trackName = musicTrackVar->_varName;
Common::File *track = new Common::File();
if (!track->open(trackName)) {
warning("Could not open %s", trackName);
@@ -144,40 +293,130 @@ void FullpipeEngine::startSceneTrack() {
return;
}
Audio::RewindableAudioStream *ogg = Audio::makeVorbisStream(track, DisposeAfterUse::YES);
- g_fp->_mixer->playStream(Audio::Mixer::kMusicSoundType, &_sceneTrackHandle, ogg);
+ _mixer->playStream(Audio::Mixer::kMusicSoundType, &_sceneTrackHandle, ogg);
#endif
}
void FullpipeEngine::stopAllSounds() {
// TODO: Differences from stopAllSoundStreams()
- g_fp->_mixer->stopAll();
+ _mixer->stopAll();
}
void FullpipeEngine::toggleMute() {
- warning("STUB: FullpipeEngine::toggleMute()");
+ if (_soundEnabled) {
+ _sfxVolume = _sfxVolume != -10000 ? -10000 : 0;
+
+ updateSoundVolume();
+ }
}
void FullpipeEngine::playSound(int id, int flag) {
- SoundList *soundList = g_fp->_currentScene->_soundList;
- Sound *sound = soundList->getSoundById(id);
+ Sound *sound = 0;
+
+ for (int i = 0; i < _currSoundListCount; i++) {
+ sound = _currSoundList1[i]->getSoundItemById(id);
+
+ if (sound)
+ break;
+ }
+
if (!sound) {
warning("playSound: Can't find sound with ID %d", id);
return;
}
- byte *soundData = sound->loadData();
- Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(soundData, sound->getDataSize());
- Audio::RewindableAudioStream *wav = Audio::makeWAVStream(dataStream, DisposeAfterUse::YES);
- Audio::AudioStream *audioStream = new Audio::LoopingAudioStream(wav, (flag == 1) ? 0 : 1);
- Audio::SoundHandle handle = sound->getHandle();
- g_fp->_mixer->playStream(Audio::Mixer::kSFXSoundType, &handle, audioStream);
+
+ sound->play(flag);
}
void FullpipeEngine::playTrack(GameVar *sceneVar, const char *name, bool delayed) {
warning("STUB: FullpipeEngine::playTrack(var, %s, %d)", name, delayed);
+#if 0
+ stopSoundStream2();
+
+ if (soundStream3)
+ FSOUND_Stream_Stop(soundStream4);
+#endif
+
+ if (_musicLocal)
+ stopAllSoundStreams();
+
+ GameVar *var = sceneVar->getSubVarByName(name);
+
+ memset(_sceneTracks, 0, sizeof(_sceneTracks));
+
+ _numSceneTracks = 0;
+ _sceneTrackHasSequence = false;
+
+ if (!var)
+ return;
+
+ _musicGameVar = var;
+
+ GameVar *tr = var->getSubVarByName("TRACKS");
+ if (tr) {
+ GameVar *sub = tr->_subVars;
+
+ while (sub) {
+ if (_musicAllowed & sub->_value.intValue) {
+ strcpy(_sceneTracks[_numSceneTracks], sub->_varName);
+
+ _numSceneTracks++;
+ }
+
+ sub = sub->_nextVarObj;
+ }
+ }
+
+ _musicMinDelay = var->getSubVarAsInt("MINDELAY");
+ _musicMaxDelay = var->getSubVarAsInt("MAXDELAY");
+ _musicLocal = var->getSubVarAsInt("LOCAL");
+
+ GameVar *seq = var->getSubVarByName("SEQUENCE");
+
+ if (seq) {
+ _sceneTrackHasSequence = true;
+
+ strcpy(_trackName, seq->_value.stringValue);
+ }
+
+ if (delayed) {
+ if (_sceneTrackIsPlaying && _numSceneTracks == 1) {
+ if (strcmp(_sceneTracksCurrentTrack, _sceneTracks[0]))
+ stopAllSoundStreams();
+ }
+
+ _trackStartDelay = var->getSubVarAsInt("STARTDELAY");
+ }
}
void global_messageHandler_handleSound(ExCommand *cmd) {
- debug(0, "STUB: global_messageHandler_handleSound()");
+ if (!g_fp->_soundEnabled)
+ return;
+
+ Sound *snd = 0;
+
+ for (int i = 0; i < g_fp->_currSoundListCount; i++)
+ snd = g_fp->_currSoundList1[i]->getSoundItemById(cmd->_messageNum);
+
+ if (!snd)
+ return;
+
+ if (cmd->_field_14 & 1) {
+ if (!g_fp->_flgSoundList && (cmd->_field_14 & 4))
+ snd->freeSound();
+
+ snd->updateVolume();
+
+ if (snd->_objectId && g_fp->_currentScene->getStaticANIObject1ById(snd->_objectId, -1))
+ snd->setPanAndVolumeByStaticAni();
+ else
+ snd->setPanAndVolume(g_fp->_sfxVolume, 0);
+
+ if (snd->getVolume() > -3500)
+ snd->play(cmd->_keyCode);
+ } else if (cmd->_field_14 & 2) {
+ snd->stop();
+ }
}
void FullpipeEngine::stopSoundStream2() {
@@ -186,21 +425,29 @@ void FullpipeEngine::stopSoundStream2() {
void FullpipeEngine::stopAllSoundStreams() {
// TODO: Differences from stopAllSounds()
- g_fp->_mixer->stopAll();
+ _mixer->stopAll();
}
void FullpipeEngine::stopAllSoundInstances(int id) {
- SoundList *soundList = g_fp->_currentScene->_soundList;
- for (int i = 0; i < soundList->getCount(); i++) {
- Sound *sound = soundList->getSoundByIndex(i);
- if (sound->getId() == id) {
- g_fp->_mixer->stopHandle(sound->getHandle());
- }
+ for (int i = 0; i < _currSoundListCount; i++) {
+ Sound *sound = _currSoundList1[i]->getSoundItemById(id);
+
+ if (sound)
+ sound->stop();
}
}
void FullpipeEngine::updateSoundVolume() {
- debug(3, "STUB FullpipeEngine::updateSoundVolume()");
+ for (int i = 0; i < _currSoundListCount; i++)
+ for (int j = 0; i < _currSoundList1[i]->getCount(); j++) {
+ _currSoundList1[i]->getSoundByIndex(j)->setPanAndVolume(_sfxVolume, 0);
+ }
+}
+
+void FullpipeEngine::setMusicVolume(int vol) {
+ _musicVolume = vol;
+
+ debug(3, "STUB FullpipeEngine::setMusicVolume()");
}
} // End of namespace Fullpipe
diff --git a/engines/fullpipe/sound.h b/engines/fullpipe/sound.h
index ca64832c04..14e766f5bb 100644
--- a/engines/fullpipe/sound.h
+++ b/engines/fullpipe/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -28,11 +28,14 @@ namespace Fullpipe {
class Sound : public MemoryObject {
int _id;
char *_description;
- int16 _objectId;
int _directSoundBuffer;
int _directSoundBuffers[7];
byte *_soundData;
Audio::SoundHandle _handle;
+ int _volume;
+
+public:
+ int16 _objectId;
public:
Sound();
@@ -44,7 +47,13 @@ public:
int getId() const { return _id; }
Audio::SoundHandle getHandle() const { return _handle; }
+ void play(int flag);
+ void freeSound();
+ int getVolume();
+ void stop();
+
void setPanAndVolumeByStaticAni();
+ void setPanAndVolume(int vol, int pan);
};
class SoundList : public CObject {
@@ -60,13 +69,7 @@ class SoundList : public CObject {
int getCount() { return _soundItemsCount; }
Sound *getSoundByIndex(int idx) { return _soundItems[idx]; }
- Sound *getSoundById(int id) {
- for (int i = 0; i < _soundItemsCount; i++) {
- if (_soundItems[i]->getId() == id)
- return _soundItems[i];
- }
- return NULL;
- }
+ Sound *getSoundItemById(int id);
};
} // End of namespace Fullpipe
diff --git a/engines/fullpipe/stateloader.cpp b/engines/fullpipe/stateloader.cpp
index ccf77ff81a..e36b196517 100644
--- a/engines/fullpipe/stateloader.cpp
+++ b/engines/fullpipe/stateloader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/statics.cpp b/engines/fullpipe/statics.cpp
index 10d9b4dfdf..f1abac5778 100644
--- a/engines/fullpipe/statics.cpp
+++ b/engines/fullpipe/statics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -105,6 +105,19 @@ bool StepArray::gotoNextPoint() {
}
}
+void StepArray::insertPoints(Common::Point **points, int pointsCount) {
+ if (_currPointIndex + pointsCount >= _pointsCount)
+ _points = (Common::Point **)realloc(_points, sizeof(Common::Point *) * (_currPointIndex + pointsCount));
+
+ _maxPointIndex = _currPointIndex + pointsCount;
+
+ for (int i = 0; i < pointsCount; i++) {
+ _points[_currPointIndex + i] = new Common::Point;
+
+ *_points[_currPointIndex + i] = *points[i];
+ }
+}
+
StaticANIObject::StaticANIObject() {
_shadowsOn = 1;
_field_30 = 0;
@@ -264,8 +277,11 @@ void StaticANIObject::deleteFromGlobalMessageQueue() {
}
}
-void StaticANIObject::queueMessageQueue(MessageQueue *mq) {
- if (isIdle() && !(_flags & 0x80)) {
+bool StaticANIObject::queueMessageQueue(MessageQueue *mq) {
+ if (_flags & 0x80)
+ return false;
+
+ if (isIdle()) {
deleteFromGlobalMessageQueue();
_messageQueueId = 0;
_messageNum = 0;
@@ -283,6 +299,8 @@ void StaticANIObject::queueMessageQueue(MessageQueue *mq) {
_messageQueueId = 0;
}
}
+
+ return true;
}
void StaticANIObject::restartMessageQueue(MessageQueue *mq) {
@@ -330,7 +348,35 @@ bool StaticANIObject::trySetMessageQueue(int msgNum, int qId) {
}
void StaticANIObject::startMQIfIdle(int qId, int flag) {
- warning("STUB: StaticANIObject::startMQIfIdle()");
+ MessageQueue *msg = g_fp->_currentScene->getMessageQueueById(qId);
+
+ if (msg && isIdle() && !(_flags & 0x100)) {
+ MessageQueue *mq = new MessageQueue(msg, 0, 0);
+
+ mq->setFlags(mq->getFlags() | flag);
+
+ ExCommand *ex = mq->getExCommandByIndex(0);
+
+ if (ex) {
+ while (ex->_messageKind != 1 || ex->_parentId != _id) {
+ ex->_parId = 0;
+ ex->_excFlags |= 2;
+ ex->handleMessage();
+
+ mq->deleteExCommandByIndex(0, 0);
+
+ ex = mq->getExCommandByIndex(0);
+
+ if (!ex)
+ return;
+ }
+
+ if (ex) {
+ startAnim(ex->_messageNum, mq->_id, -1);
+ mq->deleteExCommandByIndex(0, 1);
+ }
+ }
+ }
}
bool StaticANIObject::isIdle() {
@@ -503,12 +549,16 @@ void Movement::draw(bool flipFlag, int angle) {
}
}
-
void StaticANIObject::loadMovementsPixelData() {
for (uint i = 0; i < _movements.size(); i++)
((Movement *)_movements[i])->loadPixelData();
}
+void StaticANIObject::freeMovementsPixelData() {
+ for (uint i = 0; i < _movements.size(); i++)
+ ((Movement *)_movements[i])->freePixelData();
+}
+
Statics *StaticANIObject::addReverseStatics(Statics *st) {
Statics *res = getStaticsById(st->_staticsId ^ 0x4000);
@@ -974,9 +1024,26 @@ void StaticANIObject::adjustSomeXY() {
}
MessageQueue *StaticANIObject::changeStatics1(int msgNum) {
- warning("STUB: StaticANIObject::changeStatics1(%d)", msgNum);
+ g_fp->_mgm->addItem(_id);
- return 0;
+ MessageQueue *mq = g_fp->_mgm->genMQ(this, msgNum, 0, 0, 0);
+
+ if (!mq)
+ return 0;
+
+ if (mq->getCount() <= 0) {
+ g_fp->_globalMessageQueueList->addMessageQueue(mq);
+
+ if (_flags & 1)
+ _messageQueueId = mq->_id;
+ } else {
+ if (!queueMessageQueue(mq))
+ return 0;
+
+ g_fp->_globalMessageQueueList->addMessageQueue(mq);
+ }
+
+ return mq;
}
void StaticANIObject::changeStatics2(int objId) {
@@ -1056,7 +1123,47 @@ void StaticANIObject::show1(int x, int y, int movId, int mqId) {
}
void StaticANIObject::show2(int x, int y, int movementId, int mqId) {
- warning("STUB: StaticANIObject::show2(%d, %d, %d, %d)", x, y, movementId, mqId);
+ if (movementId == -1) {
+ _flags |= 4u;
+ return;
+ }
+
+ if (!_messageQueueId) {
+ _messageQueueId = mqId;
+
+ Movement *mov = getMovementById(movementId);
+
+ if (mov) {
+ _statics = mov->_staticsObj1;
+ _movement = mov;
+ mov->gotoLastFrame();
+ mov->setOXY(x, y);
+ mov->gotoFirstFrame();
+
+ Common::Point point;
+
+ mov->getCurrDynamicPhaseXY(point);
+ _statics->_x = mov->_ox - point.x - mov->_mx;
+ _statics->_y = mov->_oy - point.y - mov->_my;
+
+ _statics->getSomeXY(point);
+ _flags |= 4;
+ _ox = _statics->_x + point.x;
+ _oy = _statics->_y + point.y;
+
+ if (mov->_currMovement) {
+ _flags |= 8;
+ } else {
+ if (_flags & 8)
+ _flags ^= 8;
+ }
+
+ if (_flags & 1)
+ _flags ^= 1;
+
+ _flags |= 0x20;
+ }
+ }
}
void StaticANIObject::playIdle() {
@@ -1065,7 +1172,85 @@ void StaticANIObject::playIdle() {
}
void StaticANIObject::startAnimSteps(int movementId, int messageQueueId, int x, int y, Common::Point **points, int pointsCount, int someDynamicPhaseIndex) {
- warning("STUB: StaticANIObject::startAnimSteps()");
+ Movement *mov = 0;
+
+ if (!(_flags & 0x80)) {
+ if (!_messageQueueId)
+ for (uint i = 0; i < _movements.size(); i++) {
+ if (((Movement *)_movements[i])->_id == movementId) {
+ mov = (Movement *)_movements[i];
+ break;
+ }
+ }
+ }
+
+ if (!mov) {
+ updateGlobalMessageQueue(messageQueueId, _id);
+
+ return;
+ }
+
+
+ if (_movement || !_statics)
+ return;
+
+ Common::Point point;
+
+ _statics->getSomeXY(point);
+
+ int newx = _ox - point.x;
+ int newy = _oy - point.y;
+
+ _movement = mov;
+
+ if (_flags & 0x40)
+ _movement->gotoLastFrame();
+ else
+ _movement->gotoFirstFrame();
+
+ _stepArray.clear();
+ _stepArray.insertPoints(points, pointsCount);
+
+ if (!(_flags & 0x40)) {
+ if (!_movement->_currDynamicPhaseIndex) {
+ _stepArray.getCurrPoint(&point);
+ newx += point.x + _movement->_mx;
+ newy += point.y + _movement->_my;
+ _stepArray.gotoNextPoint();
+
+ ExCommand *ex = _movement->_currDynamicPhase->getExCommand();
+
+ if (ex) {
+ if (ex->_messageKind == 35) {
+ ExCommand *newEx = ex->createClone();
+
+ newEx->_excFlags |= 2u;
+ newEx->sendMessage();
+ }
+ }
+ }
+ }
+
+ _movement->getCurrDynamicPhaseXY(point);
+ setOXY(point.x + newx, point.y + newy);
+
+ if ((_movement->_staticsObj2->_staticsId >> 8) & 0x40)
+ _flags |= 8;
+ else
+ _flags &= 0xFFF7;
+
+ _flags |= 1;
+ _messageQueueId = messageQueueId;
+ _movement->_currDynamicPhase->_countdown = _movement->_currDynamicPhase->_initialCountdown;
+ _movement->_counter = 0;
+ _counter = _initialCounter;
+ _someDynamicPhaseIndex = someDynamicPhaseIndex;
+
+ ExCommand *ex = new ExCommand(_id, 17, 23, 0, 0, movementId, 1, 0, 0, 0);
+
+ ex->_keyCode = _okeyCode;
+ ex->_excFlags = 2;
+ ex->postMessage();
}
bool StaticANIObject::startAnimEx(int movid, int parId, int flag1, int flag2) {
@@ -1184,6 +1369,31 @@ bool StaticANIObject::startAnim(int movementId, int messageQueueId, int dynPhase
return true;
}
+Common::Point *StaticANIObject::calcStepLen(Common::Point *p) {
+ if (_movement) {
+ Common::Point point;
+
+ _movement->calcSomeXY(point, 0);
+
+ p->x = point.x;
+ p->y = point.y;
+
+ int idx = _stepArray.getCurrPointIndex() - _movement->_currDynamicPhaseIndex - 1;
+
+ if (idx >= 0) {
+ _stepArray.getPoint(&point, idx, _movement->_currDynamicPhaseIndex + 2);
+
+ p->x += point.x;
+ p->y += point.y;
+ }
+ } else {
+ p->x = 0;
+ p->y = 0;
+ }
+
+ return p;
+}
+
Statics::Statics() {
_staticsId = 0;
_picture = 0;
diff --git a/engines/fullpipe/statics.h b/engines/fullpipe/statics.h
index a620daa528..d678957163 100644
--- a/engines/fullpipe/statics.h
+++ b/engines/fullpipe/statics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -47,6 +47,7 @@ class StepArray : public CObject {
Common::Point *getCurrPoint(Common::Point *point);
Common::Point *getPoint(Common::Point *point, int index, int offset);
bool gotoNextPoint();
+ void insertPoints(Common::Point **points, int pointsCount);
};
class StaticPhase : public Picture {
@@ -216,7 +217,7 @@ public:
void setAlpha(int alpha);
void deleteFromGlobalMessageQueue();
- void queueMessageQueue(MessageQueue *msg);
+ bool queueMessageQueue(MessageQueue *msg);
void restartMessageQueue(MessageQueue *msg);
MessageQueue *getMessageQueue();
bool trySetMessageQueue(int msgNum, int qId);
@@ -224,6 +225,7 @@ public:
void initMovements();
void loadMovementsPixelData();
+ void freeMovementsPixelData();
void preloadMovements(MovTable *mt);
void setSomeDynamicPhaseIndex(int val) { _someDynamicPhaseIndex = val; }
@@ -244,6 +246,7 @@ public:
void draw2();
MovTable *countMovements();
+ Common::Point *calcStepLen(Common::Point *p);
void setSpeed(int speed);
void updateStepPos();
diff --git a/engines/fullpipe/utils.cpp b/engines/fullpipe/utils.cpp
index b3668ea362..0cc8bd83f4 100644
--- a/engines/fullpipe/utils.cpp
+++ b/engines/fullpipe/utils.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/fullpipe/utils.h b/engines/fullpipe/utils.h
index 5714fd3b4c..72e746cd03 100644
--- a/engines/fullpipe/utils.h
+++ b/engines/fullpipe/utils.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/game.cpp b/engines/game.cpp
index 4bfd8f3bf2..85ad6fe2e8 100644
--- a/engines/game.cpp
+++ b/engines/game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/game.h b/engines/game.h
index 3417203ea7..a9bec8f9e0 100644
--- a/engines/game.h
+++ b/engines/game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/anifile.cpp b/engines/gob/anifile.cpp
index 3b6a7f61ed..8d4afdf94a 100644
--- a/engines/gob/anifile.cpp
+++ b/engines/gob/anifile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/anifile.h b/engines/gob/anifile.h
index c930aafc6b..e9ca9da43e 100644
--- a/engines/gob/anifile.h
+++ b/engines/gob/anifile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/aniobject.cpp b/engines/gob/aniobject.cpp
index 7e3668a0ce..905997f160 100644
--- a/engines/gob/aniobject.cpp
+++ b/engines/gob/aniobject.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/aniobject.h b/engines/gob/aniobject.h
index d8c8edc2b8..8120d2e0d5 100644
--- a/engines/gob/aniobject.h
+++ b/engines/gob/aniobject.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/backbuffer.cpp b/engines/gob/backbuffer.cpp
index 752042d46e..cee5db5a41 100644
--- a/engines/gob/backbuffer.cpp
+++ b/engines/gob/backbuffer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/backbuffer.h b/engines/gob/backbuffer.h
index c978689e9f..c724cd86c8 100644
--- a/engines/gob/backbuffer.h
+++ b/engines/gob/backbuffer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/cheater.cpp b/engines/gob/cheater.cpp
index 5c1f555389..63c84e1cd7 100644
--- a/engines/gob/cheater.cpp
+++ b/engines/gob/cheater.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/cheater.h b/engines/gob/cheater.h
index bf6c1372fb..a4cd621b58 100644
--- a/engines/gob/cheater.h
+++ b/engines/gob/cheater.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/cheater_geisha.cpp b/engines/gob/cheater_geisha.cpp
index 567333c12f..8c4deec370 100644
--- a/engines/gob/cheater_geisha.cpp
+++ b/engines/gob/cheater_geisha.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/cmpfile.cpp b/engines/gob/cmpfile.cpp
index 0c650a917e..67b378475d 100644
--- a/engines/gob/cmpfile.cpp
+++ b/engines/gob/cmpfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/cmpfile.h b/engines/gob/cmpfile.h
index 9c858238af..055de1b6b6 100644
--- a/engines/gob/cmpfile.h
+++ b/engines/gob/cmpfile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/console.cpp b/engines/gob/console.cpp
index 76ccb70dca..b0f6006284 100644
--- a/engines/gob/console.cpp
+++ b/engines/gob/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/console.h b/engines/gob/console.h
index 5b6f0255dd..26a9cb69dd 100644
--- a/engines/gob/console.h
+++ b/engines/gob/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/databases.cpp b/engines/gob/databases.cpp
index 497de489ce..d8d1875371 100644
--- a/engines/gob/databases.cpp
+++ b/engines/gob/databases.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/databases.h b/engines/gob/databases.h
index cde123e6a8..8ef48b480f 100644
--- a/engines/gob/databases.h
+++ b/engines/gob/databases.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/dataio.cpp b/engines/gob/dataio.cpp
index 2071c0f1be..6deaef417e 100644
--- a/engines/gob/dataio.cpp
+++ b/engines/gob/dataio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/dataio.h b/engines/gob/dataio.h
index adf0786389..00fe00e3f5 100644
--- a/engines/gob/dataio.h
+++ b/engines/gob/dataio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/dbase.cpp b/engines/gob/dbase.cpp
index 41bd5308ec..5e44ec133e 100644
--- a/engines/gob/dbase.cpp
+++ b/engines/gob/dbase.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/dbase.h b/engines/gob/dbase.h
index 3da1ef7270..387f5029b3 100644
--- a/engines/gob/dbase.h
+++ b/engines/gob/dbase.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/decfile.cpp b/engines/gob/decfile.cpp
index 85b4c09ca3..3ea3773ec6 100644
--- a/engines/gob/decfile.cpp
+++ b/engines/gob/decfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/decfile.h b/engines/gob/decfile.h
index 48af740d41..f6946b9b79 100644
--- a/engines/gob/decfile.h
+++ b/engines/gob/decfile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/demos/batplayer.cpp b/engines/gob/demos/batplayer.cpp
index 9c073f0e77..6aa62e3db0 100644
--- a/engines/gob/demos/batplayer.cpp
+++ b/engines/gob/demos/batplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/demos/batplayer.h b/engines/gob/demos/batplayer.h
index f406ea1bf8..a0a9f17c01 100644
--- a/engines/gob/demos/batplayer.h
+++ b/engines/gob/demos/batplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/demos/demoplayer.cpp b/engines/gob/demos/demoplayer.cpp
index 9aa7a4123d..4812301a6b 100644
--- a/engines/gob/demos/demoplayer.cpp
+++ b/engines/gob/demos/demoplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/demos/demoplayer.h b/engines/gob/demos/demoplayer.h
index 9ffdb71de1..63ef538b97 100644
--- a/engines/gob/demos/demoplayer.h
+++ b/engines/gob/demos/demoplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/demos/scnplayer.cpp b/engines/gob/demos/scnplayer.cpp
index 434c49c4bd..7b820d168a 100644
--- a/engines/gob/demos/scnplayer.cpp
+++ b/engines/gob/demos/scnplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/demos/scnplayer.h b/engines/gob/demos/scnplayer.h
index 8627f8ceeb..aef1b3eb2f 100644
--- a/engines/gob/demos/scnplayer.h
+++ b/engines/gob/demos/scnplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/detection.cpp b/engines/gob/detection/detection.cpp
index 8fb0052a5b..3b26f63c39 100644
--- a/engines/gob/detection/detection.cpp
+++ b/engines/gob/detection/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables.h b/engines/gob/detection/tables.h
index 271f75af79..9b24203aa8 100644
--- a/engines/gob/detection/tables.h
+++ b/engines/gob/detection/tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -55,6 +55,7 @@ static const PlainGameDescriptor gobGames[] = {
{"ajworld", "A.J.'s World of Discovery"},
{"gob3", "Goblins Quest 3"},
{"gob3cd", "Goblins Quest 3 CD"},
+ {"crousti", "Croustibat"},
{"lit1", "Lost in Time Part 1"},
{"lit2", "Lost in Time Part 2"},
{"lit", "Lost in Time"},
@@ -110,6 +111,7 @@ static const GOBGameDescription gameDescriptions[] = {
#include "gob/detection/tables_adi4.h" // The ADI / Addy 4 series
#include "gob/detection/tables_adibou.h" // The Adibou / Addy Junior series
#include "gob/detection/tables_ajworld.h" // A.J.'s World of Discovery / ADI Jr.
+ #include "gob/detection/tables_crousti.h" // Croustibat
{ AD_TABLE_END_MARKER, kGameTypeNone, kFeaturesNone, 0, 0, 0}
};
diff --git a/engines/gob/detection/tables_adi2.h b/engines/gob/detection/tables_adi2.h
index e59552a554..0ca90e7d31 100644
--- a/engines/gob/detection/tables_adi2.h
+++ b/engines/gob/detection/tables_adi2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_adi4.h b/engines/gob/detection/tables_adi4.h
index 7147a84d7a..9921b9c974 100644
--- a/engines/gob/detection/tables_adi4.h
+++ b/engines/gob/detection/tables_adi4.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_adibou.h b/engines/gob/detection/tables_adibou.h
index e257ffdf8f..a995e8d1b3 100644
--- a/engines/gob/detection/tables_adibou.h
+++ b/engines/gob/detection/tables_adibou.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_ajworld.h b/engines/gob/detection/tables_ajworld.h
index 99d61c882e..5e2023333c 100644
--- a/engines/gob/detection/tables_ajworld.h
+++ b/engines/gob/detection/tables_ajworld.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_bargon.h b/engines/gob/detection/tables_bargon.h
index 5f7fa2ab6f..d8e2c53410 100644
--- a/engines/gob/detection/tables_bargon.h
+++ b/engines/gob/detection/tables_bargon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_crousti.h b/engines/gob/detection/tables_crousti.h
new file mode 100644
index 0000000000..2e04bdeba8
--- /dev/null
+++ b/engines/gob/detection/tables_crousti.h
@@ -0,0 +1,45 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+/* Detection tables for Croustibat. */
+
+#ifndef GOB_DETECTION_TABLES_CROUSTI_H
+#define GOB_DETECTION_TABLES_CROUSTI_H
+
+// -- DOS VGA Floppy --
+
+{
+ {
+ "crousti",
+ "",
+ AD_ENTRY1s("intro.stk", "63fd795818fa72c32b903bbd99e18ea1", 851926),
+ PT_BRA,
+ kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO2(GUIO_NOSUBTITLES, GUIO_NOSPEECH)
+ },
+ kGameTypeCrousti,
+ kFeaturesAdLib,
+ 0, 0, 0
+},
+
+#endif // GOB_DETECTION_TABLES_CROUSTI_H
diff --git a/engines/gob/detection/tables_dynasty.h b/engines/gob/detection/tables_dynasty.h
index 21e4ecc89f..80a3b7d543 100644
--- a/engines/gob/detection/tables_dynasty.h
+++ b/engines/gob/detection/tables_dynasty.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_fallback.h b/engines/gob/detection/tables_fallback.h
index 69a9e4fd6b..27b4d1bf75 100644
--- a/engines/gob/detection/tables_fallback.h
+++ b/engines/gob/detection/tables_fallback.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_fascin.h b/engines/gob/detection/tables_fascin.h
index b74a057db9..7c7c9a7a2f 100644
--- a/engines/gob/detection/tables_fascin.h
+++ b/engines/gob/detection/tables_fascin.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_geisha.h b/engines/gob/detection/tables_geisha.h
index e9a5cfb77f..01e2ec9ad0 100644
--- a/engines/gob/detection/tables_geisha.h
+++ b/engines/gob/detection/tables_geisha.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_gob1.h b/engines/gob/detection/tables_gob1.h
index 8ae72abf33..289e32e121 100644
--- a/engines/gob/detection/tables_gob1.h
+++ b/engines/gob/detection/tables_gob1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_gob2.h b/engines/gob/detection/tables_gob2.h
index f2449d086d..7c167593ca 100644
--- a/engines/gob/detection/tables_gob2.h
+++ b/engines/gob/detection/tables_gob2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_gob3.h b/engines/gob/detection/tables_gob3.h
index 29a76d2491..55c840f44e 100644
--- a/engines/gob/detection/tables_gob3.h
+++ b/engines/gob/detection/tables_gob3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_inca2.h b/engines/gob/detection/tables_inca2.h
index 8ca9463277..30ed73eafa 100644
--- a/engines/gob/detection/tables_inca2.h
+++ b/engines/gob/detection/tables_inca2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_lit.h b/engines/gob/detection/tables_lit.h
index c4453312ec..f6df3162db 100644
--- a/engines/gob/detection/tables_lit.h
+++ b/engines/gob/detection/tables_lit.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_littlered.h b/engines/gob/detection/tables_littlered.h
index 55279f72b6..21aa9d4a04 100644
--- a/engines/gob/detection/tables_littlered.h
+++ b/engines/gob/detection/tables_littlered.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_onceupon.h b/engines/gob/detection/tables_onceupon.h
index c516719c55..f89a842176 100644
--- a/engines/gob/detection/tables_onceupon.h
+++ b/engines/gob/detection/tables_onceupon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_playtoons.h b/engines/gob/detection/tables_playtoons.h
index 5bdc337eba..f249e3ffa6 100644
--- a/engines/gob/detection/tables_playtoons.h
+++ b/engines/gob/detection/tables_playtoons.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_urban.h b/engines/gob/detection/tables_urban.h
index 71c34c9d89..78fc0893ae 100644
--- a/engines/gob/detection/tables_urban.h
+++ b/engines/gob/detection/tables_urban.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_ween.h b/engines/gob/detection/tables_ween.h
index 89da5ba794..66a83aff0f 100644
--- a/engines/gob/detection/tables_ween.h
+++ b/engines/gob/detection/tables_ween.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/detection/tables_woodruff.h b/engines/gob/detection/tables_woodruff.h
index f6675a0981..b96065b14f 100644
--- a/engines/gob/detection/tables_woodruff.h
+++ b/engines/gob/detection/tables_woodruff.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/draw.cpp b/engines/gob/draw.cpp
index e1322c2831..3ee6d64bec 100644
--- a/engines/gob/draw.cpp
+++ b/engines/gob/draw.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -88,11 +88,6 @@ Draw::Draw(GobEngine *vm) : _vm(vm) {
_vgaPalette[i].blue = 0;
_vgaPalette[i].green = 0;
}
- for (int i = 0; i < 16; i++) {
- _vgaSmallPalette[i].red = 0;
- _vgaSmallPalette[i].blue = 0;
- _vgaSmallPalette[i].green = 0;
- }
_showCursor = 0;
_cursorIndex = 0;
diff --git a/engines/gob/draw.h b/engines/gob/draw.h
index b51c6466e0..eb12e85468 100644
--- a/engines/gob/draw.h
+++ b/engines/gob/draw.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -115,7 +115,6 @@ public:
int16 _unusedPalette1[18];
int16 _unusedPalette2[16];
Video::Color _vgaPalette[256];
- Video::Color _vgaSmallPalette[16];
// 0 (00b): No cursor
// 1 (01b): Cursor would be on _backSurface
diff --git a/engines/gob/draw_bargon.cpp b/engines/gob/draw_bargon.cpp
index a2a70927f6..34f8b06dbb 100644
--- a/engines/gob/draw_bargon.cpp
+++ b/engines/gob/draw_bargon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/draw_fascin.cpp b/engines/gob/draw_fascin.cpp
index 12009d7ee5..60b173de6c 100644
--- a/engines/gob/draw_fascin.cpp
+++ b/engines/gob/draw_fascin.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -882,8 +882,6 @@ bool Draw_Fascination::overlapWin(int16 idWin1, int16 idWin2) {
void Draw_Fascination::activeWin(int16 id) {
bool found = false;
int16 t[10], t2[10];
- int nextId = -1;
- int oldId = -1;
SurfacePtr tempSrf;
SurfacePtr oldSrf[10];
@@ -906,6 +904,8 @@ void Draw_Fascination::activeWin(int16 id) {
}
if (found) {
+ int nextId = -1;
+ int oldId = -1;
for (int i = 9; i >= 0; i--) {
if (t[i] != -1) {
if (nextId != -1)
diff --git a/engines/gob/draw_playtoons.cpp b/engines/gob/draw_playtoons.cpp
index 76e2ae591c..5fe5657270 100644
--- a/engines/gob/draw_playtoons.cpp
+++ b/engines/gob/draw_playtoons.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/draw_v1.cpp b/engines/gob/draw_v1.cpp
index 878c1dc265..d17aad5cad 100644
--- a/engines/gob/draw_v1.cpp
+++ b/engines/gob/draw_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/draw_v2.cpp b/engines/gob/draw_v2.cpp
index f5475278c4..9855b1ebd7 100644
--- a/engines/gob/draw_v2.cpp
+++ b/engines/gob/draw_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/expression.cpp b/engines/gob/expression.cpp
index 5cea8c0485..1a99412530 100644
--- a/engines/gob/expression.cpp
+++ b/engines/gob/expression.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/expression.h b/engines/gob/expression.h
index ecce7c869d..7d4466509b 100644
--- a/engines/gob/expression.h
+++ b/engines/gob/expression.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/game.cpp b/engines/gob/game.cpp
index de0c3f2d5c..d8e39e6c38 100644
--- a/engines/gob/game.cpp
+++ b/engines/gob/game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/game.h b/engines/gob/game.h
index 995baa5629..1bcf0b1e2a 100644
--- a/engines/gob/game.h
+++ b/engines/gob/game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/global.cpp b/engines/gob/global.cpp
index 87656a5fad..e943e1f023 100644
--- a/engines/gob/global.cpp
+++ b/engines/gob/global.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/global.h b/engines/gob/global.h
index 175331dd83..742771733c 100644
--- a/engines/gob/global.h
+++ b/engines/gob/global.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/gob.cpp b/engines/gob/gob.cpp
index fcf98f0355..5ab3271a8f 100644
--- a/engines/gob/gob.cpp
+++ b/engines/gob/gob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -457,6 +457,7 @@ Common::Error GobEngine::initGameParts() {
case kGameTypeWeen:
case kGameTypeGob2:
+ case kGameTypeCrousti:
_init = new Init_v2(this);
_video = new Video_v2(this);
_inter = new Inter_v2(this);
diff --git a/engines/gob/gob.h b/engines/gob/gob.h
index df73404596..aefc63c707 100644
--- a/engines/gob/gob.h
+++ b/engines/gob/gob.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -55,6 +55,7 @@ class StaticTextWidget;
* - Bambou le sauveur de la jungle
* - Geisha
* - Once Upon A Time: Little Red Riding Hood
+ * - Croustibat
*/
namespace Gob {
@@ -134,7 +135,8 @@ enum GameType {
kGameTypeBabaYaga,
kGameTypeLittleRed,
kGameTypeOnceUponATime, // Need more inspection to see if Baba Yaga or Abracadabra
- kGameTypeAJWorld
+ kGameTypeAJWorld,
+ kGameTypeCrousti
};
enum Features {
diff --git a/engines/gob/goblin.cpp b/engines/gob/goblin.cpp
index a032588a1f..5f697d21fb 100644
--- a/engines/gob/goblin.cpp
+++ b/engines/gob/goblin.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/goblin.h b/engines/gob/goblin.h
index 3d45da599d..ad41df8270 100644
--- a/engines/gob/goblin.h
+++ b/engines/gob/goblin.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/goblin_v1.cpp b/engines/gob/goblin_v1.cpp
index ea46b4b9a1..760e5e65a9 100644
--- a/engines/gob/goblin_v1.cpp
+++ b/engines/gob/goblin_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/goblin_v2.cpp b/engines/gob/goblin_v2.cpp
index 2dbdf39d7d..4dadf33883 100644
--- a/engines/gob/goblin_v2.cpp
+++ b/engines/gob/goblin_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/goblin_v3.cpp b/engines/gob/goblin_v3.cpp
index 38880bfdb6..7a64ba7671 100644
--- a/engines/gob/goblin_v3.cpp
+++ b/engines/gob/goblin_v3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/goblin_v4.cpp b/engines/gob/goblin_v4.cpp
index 0d6a995af9..908b4ef616 100644
--- a/engines/gob/goblin_v4.cpp
+++ b/engines/gob/goblin_v4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/hotspots.cpp b/engines/gob/hotspots.cpp
index cd00cd13d7..7aad47b314 100644
--- a/engines/gob/hotspots.cpp
+++ b/engines/gob/hotspots.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/hotspots.h b/engines/gob/hotspots.h
index bd7b281c10..912ac8a20e 100644
--- a/engines/gob/hotspots.h
+++ b/engines/gob/hotspots.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/iniconfig.cpp b/engines/gob/iniconfig.cpp
index 032231bd4d..885495d640 100644
--- a/engines/gob/iniconfig.cpp
+++ b/engines/gob/iniconfig.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/iniconfig.h b/engines/gob/iniconfig.h
index c1890170dc..3d4021f250 100644
--- a/engines/gob/iniconfig.h
+++ b/engines/gob/iniconfig.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init.cpp b/engines/gob/init.cpp
index 814d4d1821..a986d696f2 100644
--- a/engines/gob/init.cpp
+++ b/engines/gob/init.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init.h b/engines/gob/init.h
index ac460fd654..6b7ce74950 100644
--- a/engines/gob/init.h
+++ b/engines/gob/init.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init_fascin.cpp b/engines/gob/init_fascin.cpp
index e6d82faa68..d3d0394b2e 100644
--- a/engines/gob/init_fascin.cpp
+++ b/engines/gob/init_fascin.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init_geisha.cpp b/engines/gob/init_geisha.cpp
index 01081a5af6..9de4ddb42b 100644
--- a/engines/gob/init_geisha.cpp
+++ b/engines/gob/init_geisha.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init_v1.cpp b/engines/gob/init_v1.cpp
index a8e8cbe2c3..a48e096562 100644
--- a/engines/gob/init_v1.cpp
+++ b/engines/gob/init_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init_v2.cpp b/engines/gob/init_v2.cpp
index 1540ff6601..6040a1a21d 100644
--- a/engines/gob/init_v2.cpp
+++ b/engines/gob/init_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init_v3.cpp b/engines/gob/init_v3.cpp
index bfbe00849f..d47967557f 100644
--- a/engines/gob/init_v3.cpp
+++ b/engines/gob/init_v3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init_v4.cpp b/engines/gob/init_v4.cpp
index ba92c2fc04..5f3061b096 100644
--- a/engines/gob/init_v4.cpp
+++ b/engines/gob/init_v4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init_v6.cpp b/engines/gob/init_v6.cpp
index 6059ec89ed..4b09286619 100644
--- a/engines/gob/init_v6.cpp
+++ b/engines/gob/init_v6.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/init_v7.cpp b/engines/gob/init_v7.cpp
index b5b51aad2a..69fbf8ae74 100644
--- a/engines/gob/init_v7.cpp
+++ b/engines/gob/init_v7.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter.cpp b/engines/gob/inter.cpp
index 4460274561..2a8539846c 100644
--- a/engines/gob/inter.cpp
+++ b/engines/gob/inter.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter.h b/engines/gob/inter.h
index 2aa837e777..a5fa03c2a1 100644
--- a/engines/gob/inter.h
+++ b/engines/gob/inter.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -439,6 +439,7 @@ protected:
void o2_animPalInit(OpFuncParams &params);
void o2_addHotspot(OpFuncParams &params);
void o2_removeHotspot(OpFuncParams &params);
+ void o2_getTotTextItemPart(OpFuncParams &params);
void o2_goblinFunc(OpFuncParams &params);
void o2_stopSound(OpFuncParams &params);
void o2_loadSound(OpFuncParams &params);
@@ -540,7 +541,6 @@ protected:
virtual void setupOpcodesFunc();
virtual void setupOpcodesGob();
- void o3_getTotTextItemPart(OpFuncParams &params);
void o3_speakerOn(OpFuncParams &params);
void o3_speakerOff(OpFuncParams &params);
void o3_copySprite(OpFuncParams &params);
diff --git a/engines/gob/inter_bargon.cpp b/engines/gob/inter_bargon.cpp
index 029f7c697b..f4a62a6a25 100644
--- a/engines/gob/inter_bargon.cpp
+++ b/engines/gob/inter_bargon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_fascin.cpp b/engines/gob/inter_fascin.cpp
index c3b5d98a58..c67143346b 100644
--- a/engines/gob/inter_fascin.cpp
+++ b/engines/gob/inter_fascin.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_geisha.cpp b/engines/gob/inter_geisha.cpp
index 8d05cefa66..8102dbfa9b 100644
--- a/engines/gob/inter_geisha.cpp
+++ b/engines/gob/inter_geisha.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_inca2.cpp b/engines/gob/inter_inca2.cpp
index f868f18242..555fdfaf27 100644
--- a/engines/gob/inter_inca2.cpp
+++ b/engines/gob/inter_inca2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_littlered.cpp b/engines/gob/inter_littlered.cpp
index 01aa4c2158..c817ce648f 100644
--- a/engines/gob/inter_littlered.cpp
+++ b/engines/gob/inter_littlered.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_playtoons.cpp b/engines/gob/inter_playtoons.cpp
index b0bdde07ac..45f573efcd 100644
--- a/engines/gob/inter_playtoons.cpp
+++ b/engines/gob/inter_playtoons.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_v1.cpp b/engines/gob/inter_v1.cpp
index dc533a210a..40134bbf17 100644
--- a/engines/gob/inter_v1.cpp
+++ b/engines/gob/inter_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1125,7 +1125,7 @@ void Inter_v1::o1_palLoad(OpFuncParams &params) {
_vm->_draw->_vgaPalette[i].blue = _vm->_game->_script->readByte();
}
- memcpy(_vm->_draw->_vgaSmallPalette, _vm->_draw->_vgaPalette, 16 * 3);
+ memcpy(_vm->_draw->_vgaPalette, _vm->_draw->_vgaPalette, 16 * 3);
break;
case 53:
@@ -1183,7 +1183,7 @@ void Inter_v1::o1_palLoad(OpFuncParams &params) {
_vm->_palAnim->fade(_vm->_global->_pPaletteDesc, 0, 0);
return;
}
- _vm->_global->_pPaletteDesc->vgaPal = _vm->_draw->_vgaSmallPalette;
+ _vm->_global->_pPaletteDesc->vgaPal = _vm->_draw->_vgaPalette;
_vm->_palAnim->fade(_vm->_global->_pPaletteDesc, 0, 0);
}
}
@@ -2489,21 +2489,21 @@ void Inter_v1::animPalette() {
_vm->_video->waitRetrace();
if (_animPalDir[0] == -1) {
- col = _vm->_draw->_vgaSmallPalette[_animPalLowIndex[0]];
+ col = _vm->_draw->_vgaPalette[_animPalLowIndex[0]];
for (i = _animPalLowIndex[0]; i < _animPalHighIndex[0]; i++)
- _vm->_draw->_vgaSmallPalette[i] = _vm->_draw->_vgaSmallPalette[i + 1];
+ _vm->_draw->_vgaPalette[i] = _vm->_draw->_vgaPalette[i + 1];
- _vm->_draw->_vgaSmallPalette[_animPalHighIndex[0]] = col;
+ _vm->_draw->_vgaPalette[_animPalHighIndex[0]] = col;
} else {
- col = _vm->_draw->_vgaSmallPalette[_animPalHighIndex[0]];
+ col = _vm->_draw->_vgaPalette[_animPalHighIndex[0]];
for (i = _animPalHighIndex[0]; i > _animPalLowIndex[0]; i--)
- _vm->_draw->_vgaSmallPalette[i] = _vm->_draw->_vgaSmallPalette[i - 1];
+ _vm->_draw->_vgaPalette[i] = _vm->_draw->_vgaPalette[i - 1];
- _vm->_draw->_vgaSmallPalette[_animPalLowIndex[0]] = col;
+ _vm->_draw->_vgaPalette[_animPalLowIndex[0]] = col;
}
- _vm->_global->_pPaletteDesc->vgaPal = _vm->_draw->_vgaSmallPalette;
+ _vm->_global->_pPaletteDesc->vgaPal = _vm->_draw->_vgaPalette;
_vm->_video->setFullPalette(_vm->_global->_pPaletteDesc);
}
diff --git a/engines/gob/inter_v2.cpp b/engines/gob/inter_v2.cpp
index 6b7a4f03bd..3aa7ad1664 100644
--- a/engines/gob/inter_v2.cpp
+++ b/engines/gob/inter_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -124,6 +124,7 @@ void Inter_v2::setupOpcodesFunc() {
OPCODEFUNC(0x18, o2_addHotspot);
OPCODEFUNC(0x19, o2_removeHotspot);
+ OPCODEFUNC(0x1A, o2_getTotTextItemPart);
OPCODEFUNC(0x25, o2_goblinFunc);
@@ -1195,6 +1196,188 @@ void Inter_v2::o2_removeHotspot(OpFuncParams &params) {
_vm->_game->_hotspots->remove((stateType2 << 12) + id);
}
+void Inter_v2::o2_getTotTextItemPart(OpFuncParams &params) {
+ byte *totData;
+ int16 totTextItem;
+ int16 part, curPart = 0;
+ int16 offX = 0, offY = 0;
+ int16 collId = 0, collCmd;
+ uint32 stringStartVar, stringVar;
+ bool end;
+
+ totTextItem = _vm->_game->_script->readInt16();
+ stringStartVar = _vm->_game->_script->readVarIndex();
+ part = _vm->_game->_script->readValExpr();
+
+ stringVar = stringStartVar;
+ if (part == -1) {
+ warning("o2_getTotTextItemPart, part == -1");
+ _vm->_draw->_hotspotText = GET_VARO_STR(stringVar);
+ }
+
+ WRITE_VARO_UINT8(stringVar, 0);
+
+ TextItem *textItem = _vm->_game->_resources->getTextItem(totTextItem);
+ if (!textItem)
+ return;
+
+ totData = textItem->getData();
+
+ // Skip background rectangles
+ while (((int16) READ_LE_UINT16(totData)) != -1)
+ totData += 9;
+ totData += 2;
+
+ while (*totData != 1) {
+ switch (*totData) {
+ case 2:
+ case 5:
+ totData++;
+ offX = READ_LE_UINT16(totData);
+ offY = READ_LE_UINT16(totData + 2);
+ totData += 4;
+ break;
+
+ case 3:
+ case 4:
+ totData += 2;
+ break;
+
+ case 6:
+ totData++;
+
+ collCmd = *totData++;
+ if (collCmd & 0x80) {
+ collId = READ_LE_UINT16(totData);
+ totData += 2;
+ }
+
+ // Skip collision coordinates
+ if (collCmd & 0x40)
+ totData += 8;
+
+ if ((collCmd & 0x8F) && ((-collId - 1) == part)) {
+ int n = 0;
+
+ while (1) {
+ if ((*totData < 1) || (*totData > 7)) {
+ if (*totData >= 32) {
+ WRITE_VARO_UINT8(stringVar++, *totData++);
+ n++;
+ } else
+ totData++;
+ continue;
+ }
+
+ if ((n != 0) || (*totData == 1) ||
+ (*totData == 6) || (*totData == 7)) {
+ WRITE_VARO_UINT8(stringVar, 0);
+ delete textItem;
+ return;
+ }
+
+ switch (*totData) {
+ case 2:
+ case 5:
+ totData += 5;
+ break;
+
+ case 3:
+ case 4:
+ totData += 2;
+ break;
+ }
+ }
+
+ }
+ break;
+
+ case 7:
+ case 8:
+ case 9:
+ totData++;
+ break;
+
+ case 10:
+ if (curPart == part) {
+ WRITE_VARO_UINT8(stringVar++, 0xFF);
+ WRITE_VARO_UINT16(stringVar, offX);
+ WRITE_VARO_UINT16(stringVar + 2, offY);
+ WRITE_VARO_UINT16(stringVar + 4,
+ totData - _vm->_game->_resources->getTexts());
+ WRITE_VARO_UINT8(stringVar + 6, 0);
+ delete textItem;
+ return;
+ }
+
+ end = false;
+ while (!end) {
+ switch (*totData) {
+ case 2:
+ case 5:
+ if (ABS(offY - READ_LE_UINT16(totData + 3)) > 1)
+ end = true;
+ else
+ totData += 5;
+ break;
+
+ case 3:
+ totData += 2;
+ break;
+
+ case 10:
+ totData += totData[1] * 2 + 2;
+ break;
+
+ default:
+ if (*totData < 32)
+ end = true;
+ while (*totData >= 32)
+ totData++;
+ break;
+ }
+ }
+
+ if (part >= 0)
+ curPart++;
+ break;
+
+ default:
+ while (1) {
+
+ while (*totData >= 32)
+ WRITE_VARO_UINT8(stringVar++, *totData++);
+ WRITE_VARO_UINT8(stringVar, 0);
+
+ if (((*totData != 2) && (*totData != 5)) ||
+ (ABS(offY - READ_LE_UINT16(totData + 3)) > 1)) {
+
+ if (curPart == part) {
+ delete textItem;
+ return;
+ }
+
+ stringVar = stringStartVar;
+ WRITE_VARO_UINT8(stringVar, 0);
+
+ while (*totData >= 32)
+ totData++;
+
+ if (part >= 0)
+ curPart++;
+ break;
+
+ } else
+ totData += 5;
+
+ }
+ break;
+ }
+ }
+
+ delete textItem;
+}
+
void Inter_v2::o2_goblinFunc(OpFuncParams &params) {
OpGobParams gobParams;
int16 cmd;
diff --git a/engines/gob/inter_v3.cpp b/engines/gob/inter_v3.cpp
index edf56012d9..fd729b85be 100644
--- a/engines/gob/inter_v3.cpp
+++ b/engines/gob/inter_v3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -50,7 +50,6 @@ void Inter_v3::setupOpcodesDraw() {
void Inter_v3::setupOpcodesFunc() {
Inter_v2::setupOpcodesFunc();
- OPCODEFUNC(0x1A, o3_getTotTextItemPart);
OPCODEFUNC(0x22, o3_speakerOn);
OPCODEFUNC(0x23, o3_speakerOff);
OPCODEFUNC(0x32, o3_copySprite);
@@ -66,188 +65,6 @@ void Inter_v3::setupOpcodesGob() {
OPCODEGOB(100, o3_wobble);
}
-void Inter_v3::o3_getTotTextItemPart(OpFuncParams &params) {
- byte *totData;
- int16 totTextItem;
- int16 part, curPart = 0;
- int16 offX = 0, offY = 0;
- int16 collId = 0, collCmd;
- uint32 stringStartVar, stringVar;
- bool end;
-
- totTextItem = _vm->_game->_script->readInt16();
- stringStartVar = _vm->_game->_script->readVarIndex();
- part = _vm->_game->_script->readValExpr();
-
- stringVar = stringStartVar;
- if (part == -1) {
- warning("o3_getTotTextItemPart, part == -1");
- _vm->_draw->_hotspotText = GET_VARO_STR(stringVar);
- }
-
- WRITE_VARO_UINT8(stringVar, 0);
-
- TextItem *textItem = _vm->_game->_resources->getTextItem(totTextItem);
- if (!textItem)
- return;
-
- totData = textItem->getData();
-
- // Skip background rectangles
- while (((int16) READ_LE_UINT16(totData)) != -1)
- totData += 9;
- totData += 2;
-
- while (*totData != 1) {
- switch (*totData) {
- case 2:
- case 5:
- totData++;
- offX = READ_LE_UINT16(totData);
- offY = READ_LE_UINT16(totData + 2);
- totData += 4;
- break;
-
- case 3:
- case 4:
- totData += 2;
- break;
-
- case 6:
- totData++;
-
- collCmd = *totData++;
- if (collCmd & 0x80) {
- collId = READ_LE_UINT16(totData);
- totData += 2;
- }
-
- // Skip collision coordinates
- if (collCmd & 0x40)
- totData += 8;
-
- if ((collCmd & 0x8F) && ((-collId - 1) == part)) {
- int n = 0;
-
- while (1) {
- if ((*totData < 1) || (*totData > 7)) {
- if (*totData >= 32) {
- WRITE_VARO_UINT8(stringVar++, *totData++);
- n++;
- } else
- totData++;
- continue;
- }
-
- if ((n != 0) || (*totData == 1) ||
- (*totData == 6) || (*totData == 7)) {
- WRITE_VARO_UINT8(stringVar, 0);
- delete textItem;
- return;
- }
-
- switch (*totData) {
- case 2:
- case 5:
- totData += 5;
- break;
-
- case 3:
- case 4:
- totData += 2;
- break;
- }
- }
-
- }
- break;
-
- case 7:
- case 8:
- case 9:
- totData++;
- break;
-
- case 10:
- if (curPart == part) {
- WRITE_VARO_UINT8(stringVar++, 0xFF);
- WRITE_VARO_UINT16(stringVar, offX);
- WRITE_VARO_UINT16(stringVar + 2, offY);
- WRITE_VARO_UINT16(stringVar + 4,
- totData - _vm->_game->_resources->getTexts());
- WRITE_VARO_UINT8(stringVar + 6, 0);
- delete textItem;
- return;
- }
-
- end = false;
- while (!end) {
- switch (*totData) {
- case 2:
- case 5:
- if (ABS(offY - READ_LE_UINT16(totData + 3)) > 1)
- end = true;
- else
- totData += 5;
- break;
-
- case 3:
- totData += 2;
- break;
-
- case 10:
- totData += totData[1] * 2 + 2;
- break;
-
- default:
- if (*totData < 32)
- end = true;
- while (*totData >= 32)
- totData++;
- break;
- }
- }
-
- if (part >= 0)
- curPart++;
- break;
-
- default:
- while (1) {
-
- while (*totData >= 32)
- WRITE_VARO_UINT8(stringVar++, *totData++);
- WRITE_VARO_UINT8(stringVar, 0);
-
- if (((*totData != 2) && (*totData != 5)) ||
- (ABS(offY - READ_LE_UINT16(totData + 3)) > 1)) {
-
- if (curPart == part) {
- delete textItem;
- return;
- }
-
- stringVar = stringStartVar;
- WRITE_VARO_UINT8(stringVar, 0);
-
- while (*totData >= 32)
- totData++;
-
- if (part >= 0)
- curPart++;
- break;
-
- } else
- totData += 5;
-
- }
- break;
- }
- }
-
- delete textItem;
-}
-
void Inter_v3::o3_speakerOn(OpFuncParams &params) {
int16 frequency = _vm->_game->_script->readValExpr();
int32 length = -1;
diff --git a/engines/gob/inter_v4.cpp b/engines/gob/inter_v4.cpp
index f89af0e45a..656ca6f5c3 100644
--- a/engines/gob/inter_v4.cpp
+++ b/engines/gob/inter_v4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_v5.cpp b/engines/gob/inter_v5.cpp
index 24905b08d1..50176e0a27 100644
--- a/engines/gob/inter_v5.cpp
+++ b/engines/gob/inter_v5.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_v6.cpp b/engines/gob/inter_v6.cpp
index 505993ee4d..66eade60f7 100644
--- a/engines/gob/inter_v6.cpp
+++ b/engines/gob/inter_v6.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/inter_v7.cpp b/engines/gob/inter_v7.cpp
index 1238c23e3b..fd9406054c 100644
--- a/engines/gob/inter_v7.cpp
+++ b/engines/gob/inter_v7.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -27,7 +27,8 @@
#include "graphics/cursorman.h"
#include "graphics/wincursor.h"
-#include "graphics/decoders/iff.h"
+
+#include "image/iff.h"
#include "gob/gob.h"
#include "gob/global.h"
@@ -547,7 +548,7 @@ void Inter_v7::o7_loadIFFPalette() {
return;
}
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.loadStream(*iffFile);
if (!decoder.getPalette() || decoder.getPaletteColorCount() != 256) {
warning("o7_loadIFFPalette(): Failed reading palette from IFF \"%s\"", file.c_str());
diff --git a/engines/gob/map.cpp b/engines/gob/map.cpp
index e58cd3c9a3..1015a779b2 100644
--- a/engines/gob/map.cpp
+++ b/engines/gob/map.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/map.h b/engines/gob/map.h
index 856cf356da..785b7342cd 100644
--- a/engines/gob/map.h
+++ b/engines/gob/map.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/map_v1.cpp b/engines/gob/map_v1.cpp
index ce3d584e7f..72e37bd5fc 100644
--- a/engines/gob/map_v1.cpp
+++ b/engines/gob/map_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/map_v2.cpp b/engines/gob/map_v2.cpp
index 1db461370f..cb5abe9644 100644
--- a/engines/gob/map_v2.cpp
+++ b/engines/gob/map_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/diving.cpp b/engines/gob/minigames/geisha/diving.cpp
index 56c7b5213c..37ef291a93 100644
--- a/engines/gob/minigames/geisha/diving.cpp
+++ b/engines/gob/minigames/geisha/diving.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -389,8 +389,7 @@ void Diving::initScreen() {
_vm->_util->setFrameRate(15);
// Set palette
- memcpy(_vm->_draw->_vgaPalette , kPalette, sizeof(kPalette));
- memcpy(_vm->_draw->_vgaSmallPalette, kPalette, sizeof(kPalette));
+ memcpy(_vm->_draw->_vgaPalette, kPalette, sizeof(kPalette));
// Draw background decal
_vm->_draw->_backSurface->clear();
diff --git a/engines/gob/minigames/geisha/diving.h b/engines/gob/minigames/geisha/diving.h
index 089d60b260..7f28fa7330 100644
--- a/engines/gob/minigames/geisha/diving.h
+++ b/engines/gob/minigames/geisha/diving.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/evilfish.cpp b/engines/gob/minigames/geisha/evilfish.cpp
index 05ae9d0ad4..cd47e689b1 100644
--- a/engines/gob/minigames/geisha/evilfish.cpp
+++ b/engines/gob/minigames/geisha/evilfish.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/evilfish.h b/engines/gob/minigames/geisha/evilfish.h
index 4c82629461..9013c722c9 100644
--- a/engines/gob/minigames/geisha/evilfish.h
+++ b/engines/gob/minigames/geisha/evilfish.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/meter.cpp b/engines/gob/minigames/geisha/meter.cpp
index 7ec3119866..29a5a20e9a 100644
--- a/engines/gob/minigames/geisha/meter.cpp
+++ b/engines/gob/minigames/geisha/meter.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/meter.h b/engines/gob/minigames/geisha/meter.h
index 30dc826de0..4127353173 100644
--- a/engines/gob/minigames/geisha/meter.h
+++ b/engines/gob/minigames/geisha/meter.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/mouth.cpp b/engines/gob/minigames/geisha/mouth.cpp
index 7ba9f86f8c..2a1fea13a5 100644
--- a/engines/gob/minigames/geisha/mouth.cpp
+++ b/engines/gob/minigames/geisha/mouth.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/mouth.h b/engines/gob/minigames/geisha/mouth.h
index 2e0cfcd5d0..ea3373162b 100644
--- a/engines/gob/minigames/geisha/mouth.h
+++ b/engines/gob/minigames/geisha/mouth.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/oko.cpp b/engines/gob/minigames/geisha/oko.cpp
index 7ad8be6fa2..29bdd50f47 100644
--- a/engines/gob/minigames/geisha/oko.cpp
+++ b/engines/gob/minigames/geisha/oko.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/oko.h b/engines/gob/minigames/geisha/oko.h
index 82c6f59be4..90ce25b5b6 100644
--- a/engines/gob/minigames/geisha/oko.h
+++ b/engines/gob/minigames/geisha/oko.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/penetration.cpp b/engines/gob/minigames/geisha/penetration.cpp
index c8c4f2bba7..0ebcd2c55b 100644
--- a/engines/gob/minigames/geisha/penetration.cpp
+++ b/engines/gob/minigames/geisha/penetration.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -840,8 +840,7 @@ void Penetration::setPalette() {
_vm->_palAnim->fade(0, 0, 0);
// Set palette
- memcpy(_vm->_draw->_vgaPalette , kPalettes[_floor], 3 * kPaletteSize);
- memcpy(_vm->_draw->_vgaSmallPalette, kPalettes[_floor], 3 * kPaletteSize);
+ memcpy(_vm->_draw->_vgaPalette, kPalettes[_floor], 3 * kPaletteSize);
_needFadeIn = true;
}
diff --git a/engines/gob/minigames/geisha/penetration.h b/engines/gob/minigames/geisha/penetration.h
index 50004eba8e..332ff00502 100644
--- a/engines/gob/minigames/geisha/penetration.h
+++ b/engines/gob/minigames/geisha/penetration.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/submarine.cpp b/engines/gob/minigames/geisha/submarine.cpp
index bf15306e5a..9f7d2c696c 100644
--- a/engines/gob/minigames/geisha/submarine.cpp
+++ b/engines/gob/minigames/geisha/submarine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/minigames/geisha/submarine.h b/engines/gob/minigames/geisha/submarine.h
index a6eae57095..a82338667b 100644
--- a/engines/gob/minigames/geisha/submarine.h
+++ b/engines/gob/minigames/geisha/submarine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/mult.cpp b/engines/gob/mult.cpp
index b3d7ea6263..d4e3067c4e 100644
--- a/engines/gob/mult.cpp
+++ b/engines/gob/mult.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/mult.h b/engines/gob/mult.h
index 860e5a12e1..bef5f1728f 100644
--- a/engines/gob/mult.h
+++ b/engines/gob/mult.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/mult_v2.cpp b/engines/gob/mult_v2.cpp
index f6dddec71e..51471b55bb 100644
--- a/engines/gob/mult_v2.cpp
+++ b/engines/gob/mult_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/palanim.cpp b/engines/gob/palanim.cpp
index f90b141725..eed97ecaa6 100644
--- a/engines/gob/palanim.cpp
+++ b/engines/gob/palanim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/palanim.h b/engines/gob/palanim.h
index 8d8a1e4388..658b22d319 100644
--- a/engines/gob/palanim.h
+++ b/engines/gob/palanim.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/gctfile.cpp b/engines/gob/pregob/gctfile.cpp
index 08c32cda76..ca842707d6 100644
--- a/engines/gob/pregob/gctfile.cpp
+++ b/engines/gob/pregob/gctfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/gctfile.h b/engines/gob/pregob/gctfile.h
index ed6351b7a8..504634c0fd 100644
--- a/engines/gob/pregob/gctfile.h
+++ b/engines/gob/pregob/gctfile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/abracadabra.cpp b/engines/gob/pregob/onceupon/abracadabra.cpp
index 2cf6855ef8..8c72931996 100644
--- a/engines/gob/pregob/onceupon/abracadabra.cpp
+++ b/engines/gob/pregob/onceupon/abracadabra.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/abracadabra.h b/engines/gob/pregob/onceupon/abracadabra.h
index 8048213f5f..f50a2a306f 100644
--- a/engines/gob/pregob/onceupon/abracadabra.h
+++ b/engines/gob/pregob/onceupon/abracadabra.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/babayaga.cpp b/engines/gob/pregob/onceupon/babayaga.cpp
index ef56b9dd0b..b556b8e4fb 100644
--- a/engines/gob/pregob/onceupon/babayaga.cpp
+++ b/engines/gob/pregob/onceupon/babayaga.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/babayaga.h b/engines/gob/pregob/onceupon/babayaga.h
index 0241f78f4e..5663751725 100644
--- a/engines/gob/pregob/onceupon/babayaga.h
+++ b/engines/gob/pregob/onceupon/babayaga.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/brokenstrings.h b/engines/gob/pregob/onceupon/brokenstrings.h
index 89acb1c6bd..4029b7572b 100644
--- a/engines/gob/pregob/onceupon/brokenstrings.h
+++ b/engines/gob/pregob/onceupon/brokenstrings.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/chargenchild.cpp b/engines/gob/pregob/onceupon/chargenchild.cpp
index ba099e4937..c04fa732ac 100644
--- a/engines/gob/pregob/onceupon/chargenchild.cpp
+++ b/engines/gob/pregob/onceupon/chargenchild.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/chargenchild.h b/engines/gob/pregob/onceupon/chargenchild.h
index 3b09ef112a..580d313e83 100644
--- a/engines/gob/pregob/onceupon/chargenchild.h
+++ b/engines/gob/pregob/onceupon/chargenchild.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/onceupon.cpp b/engines/gob/pregob/onceupon/onceupon.cpp
index e4c2df34c0..a6e4da75e7 100644
--- a/engines/gob/pregob/onceupon/onceupon.cpp
+++ b/engines/gob/pregob/onceupon/onceupon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/onceupon.h b/engines/gob/pregob/onceupon/onceupon.h
index 66ef877618..17bc20667e 100644
--- a/engines/gob/pregob/onceupon/onceupon.h
+++ b/engines/gob/pregob/onceupon/onceupon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/palettes.h b/engines/gob/pregob/onceupon/palettes.h
index 952581041c..0234f85718 100644
--- a/engines/gob/pregob/onceupon/palettes.h
+++ b/engines/gob/pregob/onceupon/palettes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/parents.cpp b/engines/gob/pregob/onceupon/parents.cpp
index cdaee6a38d..a773d4c869 100644
--- a/engines/gob/pregob/onceupon/parents.cpp
+++ b/engines/gob/pregob/onceupon/parents.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/parents.h b/engines/gob/pregob/onceupon/parents.h
index f5c8307b73..4b3895e267 100644
--- a/engines/gob/pregob/onceupon/parents.h
+++ b/engines/gob/pregob/onceupon/parents.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/stork.cpp b/engines/gob/pregob/onceupon/stork.cpp
index 3c38037d08..b3ce261ee0 100644
--- a/engines/gob/pregob/onceupon/stork.cpp
+++ b/engines/gob/pregob/onceupon/stork.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/stork.h b/engines/gob/pregob/onceupon/stork.h
index ae57983000..dc7e986fd0 100644
--- a/engines/gob/pregob/onceupon/stork.h
+++ b/engines/gob/pregob/onceupon/stork.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/title.cpp b/engines/gob/pregob/onceupon/title.cpp
index a3905541a0..2e8fed80b3 100644
--- a/engines/gob/pregob/onceupon/title.cpp
+++ b/engines/gob/pregob/onceupon/title.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/onceupon/title.h b/engines/gob/pregob/onceupon/title.h
index 5e7ef76d40..a19d061fc0 100644
--- a/engines/gob/pregob/onceupon/title.h
+++ b/engines/gob/pregob/onceupon/title.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/pregob.cpp b/engines/gob/pregob/pregob.cpp
index 54eb3c6795..118bbbde83 100644
--- a/engines/gob/pregob/pregob.cpp
+++ b/engines/gob/pregob/pregob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/pregob.h b/engines/gob/pregob/pregob.h
index 632f85b88e..021cf2b3d6 100644
--- a/engines/gob/pregob/pregob.h
+++ b/engines/gob/pregob/pregob.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/seqfile.cpp b/engines/gob/pregob/seqfile.cpp
index 91973bbb85..7cf5b16724 100644
--- a/engines/gob/pregob/seqfile.cpp
+++ b/engines/gob/pregob/seqfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/seqfile.h b/engines/gob/pregob/seqfile.h
index 5e12962ef9..1b627aacdc 100644
--- a/engines/gob/pregob/seqfile.h
+++ b/engines/gob/pregob/seqfile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/txtfile.cpp b/engines/gob/pregob/txtfile.cpp
index 3ff0d4b039..861a34855b 100644
--- a/engines/gob/pregob/txtfile.cpp
+++ b/engines/gob/pregob/txtfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/pregob/txtfile.h b/engines/gob/pregob/txtfile.h
index c623b58859..edb750acc6 100644
--- a/engines/gob/pregob/txtfile.h
+++ b/engines/gob/pregob/txtfile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/resources.cpp b/engines/gob/resources.cpp
index a84f4ac4b8..dbed825977 100644
--- a/engines/gob/resources.cpp
+++ b/engines/gob/resources.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -209,6 +209,7 @@ void Resources::unload(bool del) {
_totResourceTable = 0;
_extResourceTable = 0;
_totTextTable = 0;
+ _totResStart = 0;
_totData = 0;
_totSize = 0;
_imData = 0;
@@ -233,6 +234,8 @@ bool Resources::loadTOTResourceTable() {
if (!stream)
return false;
+ _totResStart = totProps.scriptEnd;
+
if ((totProps.resourcesOffset == 0xFFFFFFFF) ||
(totProps.resourcesOffset == 0))
// No resources here
@@ -271,7 +274,6 @@ bool Resources::loadTOTResourceTable() {
item.type = kResourceTOT;
}
- _totResStart = totProps.scriptEnd;
_totSize = stream->size() - _totResStart;
if (_totSize <= 0)
diff --git a/engines/gob/resources.h b/engines/gob/resources.h
index 04b3b9d31e..8d4d8b15ee 100644
--- a/engines/gob/resources.h
+++ b/engines/gob/resources.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/rxyfile.cpp b/engines/gob/rxyfile.cpp
index 2ff8c121cd..5c8cc71b34 100644
--- a/engines/gob/rxyfile.cpp
+++ b/engines/gob/rxyfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/rxyfile.h b/engines/gob/rxyfile.h
index 4fd46c5e40..1bbb91438c 100644
--- a/engines/gob/rxyfile.h
+++ b/engines/gob/rxyfile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveconverter.cpp b/engines/gob/save/saveconverter.cpp
index 2db3379aa7..1709e05e3a 100644
--- a/engines/gob/save/saveconverter.cpp
+++ b/engines/gob/save/saveconverter.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveconverter.h b/engines/gob/save/saveconverter.h
index d8cf723fd3..c03de147c7 100644
--- a/engines/gob/save/saveconverter.h
+++ b/engines/gob/save/saveconverter.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveconverter_v2.cpp b/engines/gob/save/saveconverter_v2.cpp
index 7661c47836..762f6e906a 100644
--- a/engines/gob/save/saveconverter_v2.cpp
+++ b/engines/gob/save/saveconverter_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveconverter_v3.cpp b/engines/gob/save/saveconverter_v3.cpp
index 2256575c4b..0e045178ad 100644
--- a/engines/gob/save/saveconverter_v3.cpp
+++ b/engines/gob/save/saveconverter_v3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveconverter_v4.cpp b/engines/gob/save/saveconverter_v4.cpp
index 2618a25f37..24e70c7fdb 100644
--- a/engines/gob/save/saveconverter_v4.cpp
+++ b/engines/gob/save/saveconverter_v4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/savefile.cpp b/engines/gob/save/savefile.cpp
index 0713c38684..2a32b7edcf 100644
--- a/engines/gob/save/savefile.cpp
+++ b/engines/gob/save/savefile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/savefile.h b/engines/gob/save/savefile.h
index 01825207e0..7d111f3c10 100644
--- a/engines/gob/save/savefile.h
+++ b/engines/gob/save/savefile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/savehandler.cpp b/engines/gob/save/savehandler.cpp
index 71de629f93..7a64582201 100644
--- a/engines/gob/save/savehandler.cpp
+++ b/engines/gob/save/savehandler.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/savehandler.h b/engines/gob/save/savehandler.h
index afc31f54f1..452cc8e815 100644
--- a/engines/gob/save/savehandler.h
+++ b/engines/gob/save/savehandler.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload.cpp b/engines/gob/save/saveload.cpp
index 6b2f710159..f6967a79ad 100644
--- a/engines/gob/save/saveload.cpp
+++ b/engines/gob/save/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload.h b/engines/gob/save/saveload.h
index f20532dffa..cb6f0ed514 100644
--- a/engines/gob/save/saveload.h
+++ b/engines/gob/save/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_ajworld.cpp b/engines/gob/save/saveload_ajworld.cpp
index 727d071b3e..307a1783a3 100644
--- a/engines/gob/save/saveload_ajworld.cpp
+++ b/engines/gob/save/saveload_ajworld.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_fascin.cpp b/engines/gob/save/saveload_fascin.cpp
index cf1e7f0c0c..26a7f978ad 100644
--- a/engines/gob/save/saveload_fascin.cpp
+++ b/engines/gob/save/saveload_fascin.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_geisha.cpp b/engines/gob/save/saveload_geisha.cpp
index 3414c12dda..5ad9424e89 100644
--- a/engines/gob/save/saveload_geisha.cpp
+++ b/engines/gob/save/saveload_geisha.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_inca2.cpp b/engines/gob/save/saveload_inca2.cpp
index 4c3aaf5a0e..533875e44c 100644
--- a/engines/gob/save/saveload_inca2.cpp
+++ b/engines/gob/save/saveload_inca2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_playtoons.cpp b/engines/gob/save/saveload_playtoons.cpp
index 93c1b68b0c..406e5eb705 100644
--- a/engines/gob/save/saveload_playtoons.cpp
+++ b/engines/gob/save/saveload_playtoons.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_v2.cpp b/engines/gob/save/saveload_v2.cpp
index b25d4788f7..6f05d15803 100644
--- a/engines/gob/save/saveload_v2.cpp
+++ b/engines/gob/save/saveload_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_v3.cpp b/engines/gob/save/saveload_v3.cpp
index 3e7a3b9e48..1eb0730a3b 100644
--- a/engines/gob/save/saveload_v3.cpp
+++ b/engines/gob/save/saveload_v3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_v4.cpp b/engines/gob/save/saveload_v4.cpp
index 95283db336..516a22c310 100644
--- a/engines/gob/save/saveload_v4.cpp
+++ b/engines/gob/save/saveload_v4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_v6.cpp b/engines/gob/save/saveload_v6.cpp
index c524cad352..b6376df022 100644
--- a/engines/gob/save/saveload_v6.cpp
+++ b/engines/gob/save/saveload_v6.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/save/saveload_v7.cpp b/engines/gob/save/saveload_v7.cpp
index 3753b4019f..aced4f50ba 100644
--- a/engines/gob/save/saveload_v7.cpp
+++ b/engines/gob/save/saveload_v7.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/scenery.cpp b/engines/gob/scenery.cpp
index 33fdfcaa2a..2d9021805a 100644
--- a/engines/gob/scenery.cpp
+++ b/engines/gob/scenery.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/scenery.h b/engines/gob/scenery.h
index d8312b1128..3aae8d5d6f 100644
--- a/engines/gob/scenery.h
+++ b/engines/gob/scenery.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/scenery_v1.cpp b/engines/gob/scenery_v1.cpp
index 46ceb35457..7c2adcdef1 100644
--- a/engines/gob/scenery_v1.cpp
+++ b/engines/gob/scenery_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/scenery_v2.cpp b/engines/gob/scenery_v2.cpp
index 16ce077169..85c7d36ae4 100644
--- a/engines/gob/scenery_v2.cpp
+++ b/engines/gob/scenery_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/script.cpp b/engines/gob/script.cpp
index c7e39f94af..d6e9841e0a 100644
--- a/engines/gob/script.cpp
+++ b/engines/gob/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/script.h b/engines/gob/script.h
index 0095ad0cb6..f4be190aa5 100644
--- a/engines/gob/script.h
+++ b/engines/gob/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/adlib.cpp b/engines/gob/sound/adlib.cpp
index 2bf7f266a1..65b43cae7a 100644
--- a/engines/gob/sound/adlib.cpp
+++ b/engines/gob/sound/adlib.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/adlib.h b/engines/gob/sound/adlib.h
index bd1778d2ed..8071249374 100644
--- a/engines/gob/sound/adlib.h
+++ b/engines/gob/sound/adlib.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/adlplayer.cpp b/engines/gob/sound/adlplayer.cpp
index ee23191c0d..384a928360 100644
--- a/engines/gob/sound/adlplayer.cpp
+++ b/engines/gob/sound/adlplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/adlplayer.h b/engines/gob/sound/adlplayer.h
index 9596447bbc..3edd238343 100644
--- a/engines/gob/sound/adlplayer.h
+++ b/engines/gob/sound/adlplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/bgatmosphere.cpp b/engines/gob/sound/bgatmosphere.cpp
index daba72b2d5..21fb70278a 100644
--- a/engines/gob/sound/bgatmosphere.cpp
+++ b/engines/gob/sound/bgatmosphere.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/bgatmosphere.h b/engines/gob/sound/bgatmosphere.h
index 23fcc8a71a..1cfc63c79a 100644
--- a/engines/gob/sound/bgatmosphere.h
+++ b/engines/gob/sound/bgatmosphere.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/cdrom.cpp b/engines/gob/sound/cdrom.cpp
index 4ce3372562..eca6ca4c9e 100644
--- a/engines/gob/sound/cdrom.cpp
+++ b/engines/gob/sound/cdrom.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/cdrom.h b/engines/gob/sound/cdrom.h
index 09d4c94865..123e306e41 100644
--- a/engines/gob/sound/cdrom.h
+++ b/engines/gob/sound/cdrom.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/infogrames.cpp b/engines/gob/sound/infogrames.cpp
index febf91719b..016bbfb1ff 100644
--- a/engines/gob/sound/infogrames.cpp
+++ b/engines/gob/sound/infogrames.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/infogrames.h b/engines/gob/sound/infogrames.h
index ee5ffd1cff..c946357633 100644
--- a/engines/gob/sound/infogrames.h
+++ b/engines/gob/sound/infogrames.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/musplayer.cpp b/engines/gob/sound/musplayer.cpp
index 3e41dc6ed1..7001a5724b 100644
--- a/engines/gob/sound/musplayer.cpp
+++ b/engines/gob/sound/musplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/musplayer.h b/engines/gob/sound/musplayer.h
index 6cc2a2d2ca..c76c5aab38 100644
--- a/engines/gob/sound/musplayer.h
+++ b/engines/gob/sound/musplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/pcspeaker.cpp b/engines/gob/sound/pcspeaker.cpp
index bc031e279f..d0dcb9a871 100644
--- a/engines/gob/sound/pcspeaker.cpp
+++ b/engines/gob/sound/pcspeaker.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/pcspeaker.h b/engines/gob/sound/pcspeaker.h
index fe0ec872e3..ba2e00ce3e 100644
--- a/engines/gob/sound/pcspeaker.h
+++ b/engines/gob/sound/pcspeaker.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/protracker.cpp b/engines/gob/sound/protracker.cpp
index fbc03256bb..ce29100b85 100644
--- a/engines/gob/sound/protracker.cpp
+++ b/engines/gob/sound/protracker.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/protracker.h b/engines/gob/sound/protracker.h
index b4c3be1f61..ccd0d51552 100644
--- a/engines/gob/sound/protracker.h
+++ b/engines/gob/sound/protracker.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/sound.cpp b/engines/gob/sound/sound.cpp
index a4c74642dd..d2b2d3d6e8 100644
--- a/engines/gob/sound/sound.cpp
+++ b/engines/gob/sound/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/sound.h b/engines/gob/sound/sound.h
index bbc182d172..c959959755 100644
--- a/engines/gob/sound/sound.h
+++ b/engines/gob/sound/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/soundblaster.cpp b/engines/gob/sound/soundblaster.cpp
index 4d6f6f0bf7..9514e93210 100644
--- a/engines/gob/sound/soundblaster.cpp
+++ b/engines/gob/sound/soundblaster.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/soundblaster.h b/engines/gob/sound/soundblaster.h
index 3c4968d611..6a732dbec9 100644
--- a/engines/gob/sound/soundblaster.h
+++ b/engines/gob/sound/soundblaster.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/sounddesc.cpp b/engines/gob/sound/sounddesc.cpp
index 7d876ec484..f981d0b385 100644
--- a/engines/gob/sound/sounddesc.cpp
+++ b/engines/gob/sound/sounddesc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/sounddesc.h b/engines/gob/sound/sounddesc.h
index f9223de964..a2d39108c9 100644
--- a/engines/gob/sound/sounddesc.h
+++ b/engines/gob/sound/sounddesc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/soundmixer.cpp b/engines/gob/sound/soundmixer.cpp
index a9303bc927..b5c26898ba 100644
--- a/engines/gob/sound/soundmixer.cpp
+++ b/engines/gob/sound/soundmixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/sound/soundmixer.h b/engines/gob/sound/soundmixer.h
index 2847c3de12..791f97eb74 100644
--- a/engines/gob/sound/soundmixer.h
+++ b/engines/gob/sound/soundmixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/surface.cpp b/engines/gob/surface.cpp
index 870b0f15b3..42ac2b0d74 100644
--- a/engines/gob/surface.cpp
+++ b/engines/gob/surface.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,7 +31,8 @@
#include "graphics/primitives.h"
#include "graphics/pixelformat.h"
#include "graphics/surface.h"
-#include "graphics/decoders/iff.h"
+
+#include "image/iff.h"
namespace Gob {
@@ -814,7 +815,7 @@ bool Surface::loadTGA(Common::SeekableReadStream &stream) {
}
bool Surface::loadIFF(Common::SeekableReadStream &stream) {
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.loadStream(stream);
if (!decoder.getSurface())
diff --git a/engines/gob/surface.h b/engines/gob/surface.h
index 8a1b502a95..c931731908 100644
--- a/engines/gob/surface.h
+++ b/engines/gob/surface.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/totfile.cpp b/engines/gob/totfile.cpp
index 4efe374793..04c744d965 100644
--- a/engines/gob/totfile.cpp
+++ b/engines/gob/totfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/totfile.h b/engines/gob/totfile.h
index 5a23912dbe..753e7b4a57 100644
--- a/engines/gob/totfile.h
+++ b/engines/gob/totfile.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/util.cpp b/engines/gob/util.cpp
index 5ac4ef024e..19e6e35e0b 100644
--- a/engines/gob/util.cpp
+++ b/engines/gob/util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/util.h b/engines/gob/util.h
index a4984c6207..2865fd5708 100644
--- a/engines/gob/util.h
+++ b/engines/gob/util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/variables.cpp b/engines/gob/variables.cpp
index efbf10af69..2ef7be2f90 100644
--- a/engines/gob/variables.cpp
+++ b/engines/gob/variables.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/variables.h b/engines/gob/variables.h
index 04775ff86c..a836e82557 100644
--- a/engines/gob/variables.h
+++ b/engines/gob/variables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/video.cpp b/engines/gob/video.cpp
index 64af34cf62..1dc51d994c 100644
--- a/engines/gob/video.cpp
+++ b/engines/gob/video.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/video.h b/engines/gob/video.h
index 122c1e47d5..2c547baca0 100644
--- a/engines/gob/video.h
+++ b/engines/gob/video.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/video_v1.cpp b/engines/gob/video_v1.cpp
index 397e2bef22..1e5d613294 100644
--- a/engines/gob/video_v1.cpp
+++ b/engines/gob/video_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/video_v2.cpp b/engines/gob/video_v2.cpp
index bf4823ec90..a6900b11bc 100644
--- a/engines/gob/video_v2.cpp
+++ b/engines/gob/video_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/video_v6.cpp b/engines/gob/video_v6.cpp
index 7fb3104162..bbc2f457c2 100644
--- a/engines/gob/video_v6.cpp
+++ b/engines/gob/video_v6.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/videoplayer.cpp b/engines/gob/videoplayer.cpp
index 155989ccee..e97848d27e 100644
--- a/engines/gob/videoplayer.cpp
+++ b/engines/gob/videoplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/gob/videoplayer.h b/engines/gob/videoplayer.h
index 129ccef67a..02ed510ec5 100644
--- a/engines/gob/videoplayer.h
+++ b/engines/gob/videoplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/cell.cpp b/engines/groovie/cell.cpp
index 8241579156..24fac17e44 100644
--- a/engines/groovie/cell.cpp
+++ b/engines/groovie/cell.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/cell.h b/engines/groovie/cell.h
index 32c7b46547..d6f1ac97dc 100644
--- a/engines/groovie/cell.h
+++ b/engines/groovie/cell.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/cursor.cpp b/engines/groovie/cursor.cpp
index cac78a95a3..080463a8b3 100644
--- a/engines/groovie/cursor.cpp
+++ b/engines/groovie/cursor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/cursor.h b/engines/groovie/cursor.h
index 87d994b077..bf91112ea4 100644
--- a/engines/groovie/cursor.h
+++ b/engines/groovie/cursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/debug.cpp b/engines/groovie/debug.cpp
index 74fe22922c..8103e4f4c6 100644
--- a/engines/groovie/debug.cpp
+++ b/engines/groovie/debug.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/debug.h b/engines/groovie/debug.h
index 76f6d16c65..b99d6c6e1b 100644
--- a/engines/groovie/debug.h
+++ b/engines/groovie/debug.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/detection.cpp b/engines/groovie/detection.cpp
index 7c89114e83..a249b66858 100644
--- a/engines/groovie/detection.cpp
+++ b/engines/groovie/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/detection.h b/engines/groovie/detection.h
index aa900cc54d..e49474474b 100644
--- a/engines/groovie/detection.h
+++ b/engines/groovie/detection.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/font.cpp b/engines/groovie/font.cpp
index a55d8fad95..21a3bd07ae 100644
--- a/engines/groovie/font.cpp
+++ b/engines/groovie/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/font.h b/engines/groovie/font.h
index 49cf4b7b06..23e060faf3 100644
--- a/engines/groovie/font.h
+++ b/engines/groovie/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/graphics.cpp b/engines/groovie/graphics.cpp
index a4d8a4330c..b85277fac7 100644
--- a/engines/groovie/graphics.cpp
+++ b/engines/groovie/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/graphics.h b/engines/groovie/graphics.h
index c91d895c25..72ab01deb6 100644
--- a/engines/groovie/graphics.h
+++ b/engines/groovie/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/groovie.cpp b/engines/groovie/groovie.cpp
index 5ade442742..e65031ec38 100644
--- a/engines/groovie/groovie.cpp
+++ b/engines/groovie/groovie.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/groovie.h b/engines/groovie/groovie.h
index 79abc13b1c..c3d3146cca 100644
--- a/engines/groovie/groovie.h
+++ b/engines/groovie/groovie.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/lzss.cpp b/engines/groovie/lzss.cpp
index a09f6e2311..2a185aeeab 100644
--- a/engines/groovie/lzss.cpp
+++ b/engines/groovie/lzss.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/lzss.h b/engines/groovie/lzss.h
index f60ea14815..06b07a946a 100644
--- a/engines/groovie/lzss.h
+++ b/engines/groovie/lzss.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/music.cpp b/engines/groovie/music.cpp
index 95637fc407..390f47f084 100644
--- a/engines/groovie/music.cpp
+++ b/engines/groovie/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/music.h b/engines/groovie/music.h
index 92e9c8b487..4853840673 100644
--- a/engines/groovie/music.h
+++ b/engines/groovie/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/player.cpp b/engines/groovie/player.cpp
index e2a1ff3d56..16cb3c47ff 100644
--- a/engines/groovie/player.cpp
+++ b/engines/groovie/player.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/player.h b/engines/groovie/player.h
index c9258ffdbd..b1aac963f2 100644
--- a/engines/groovie/player.h
+++ b/engines/groovie/player.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/resource.cpp b/engines/groovie/resource.cpp
index 42d76cabfa..8229d02d91 100644
--- a/engines/groovie/resource.cpp
+++ b/engines/groovie/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/resource.h b/engines/groovie/resource.h
index 33e15e6b98..11a861dd5c 100644
--- a/engines/groovie/resource.h
+++ b/engines/groovie/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/roq.cpp b/engines/groovie/roq.cpp
index e1ca7fb945..2776a0455d 100644
--- a/engines/groovie/roq.cpp
+++ b/engines/groovie/roq.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -32,7 +32,7 @@
#include "common/textconsole.h"
#include "graphics/palette.h"
-#include "graphics/decoders/jpeg.h"
+#include "image/jpeg.h"
#ifdef USE_RGB_COLOR
// Required for the YUV to RGB conversion
@@ -45,7 +45,7 @@ namespace Groovie {
ROQPlayer::ROQPlayer(GroovieEngine *vm) :
VideoPlayer(vm), _codingTypeCount(0),
- _fg(&_vm->_graphicsMan->_foreground), _bg(&_vm->_graphicsMan->_background) {
+ _bg(&_vm->_graphicsMan->_background) {
// Create the work surfaces
_currBuf = new Graphics::Surface();
@@ -435,20 +435,18 @@ bool ROQPlayer::processBlockStill(ROQBlockHeader &blockHeader) {
warning("Groovie::ROQ: JPEG frame (unfinished)");
- Graphics::JPEGDecoder *jpg = new Graphics::JPEGDecoder();
- jpg->setOutputColorSpace(Graphics::JPEGDecoder::kColorSpaceYUV);
+ Image::JPEGDecoder jpg;
+ jpg.setOutputColorSpace(Image::JPEGDecoder::kColorSpaceYUV);
uint32 startPos = _file->pos();
Common::SeekableSubReadStream subStream(_file, startPos, startPos + blockHeader.size, DisposeAfterUse::NO);
- jpg->loadStream(subStream);
+ jpg.loadStream(subStream);
- const Graphics::Surface *srcSurf = jpg->getSurface();
+ const Graphics::Surface *srcSurf = jpg.getSurface();
const byte *src = (const byte *)srcSurf->getPixels();
byte *ptr = (byte *)_currBuf->getPixels();
memcpy(ptr, src, _currBuf->w * _currBuf->h * srcSurf->format.bytesPerPixel);
- delete jpg;
-
_file->seek(startPos + blockHeader.size);
return true;
}
diff --git a/engines/groovie/roq.h b/engines/groovie/roq.h
index c5d3f255d3..cd5e91c82b 100644
--- a/engines/groovie/roq.h
+++ b/engines/groovie/roq.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -75,7 +75,7 @@ private:
byte _codebook4[256 * 4];
// Buffers
- Graphics::Surface *_fg, *_bg, *_thirdBuf;
+ Graphics::Surface *_bg;
Graphics::Surface *_currBuf, *_prevBuf;
void buildShowBuf();
byte _scaleX, _scaleY;
diff --git a/engines/groovie/saveload.cpp b/engines/groovie/saveload.cpp
index 1a92c02e0e..78b79cfa26 100644
--- a/engines/groovie/saveload.cpp
+++ b/engines/groovie/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/saveload.h b/engines/groovie/saveload.h
index 15ce108c7d..6f20250e0a 100644
--- a/engines/groovie/saveload.h
+++ b/engines/groovie/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/script.cpp b/engines/groovie/script.cpp
index 8e3bef9945..25c421f699 100644
--- a/engines/groovie/script.cpp
+++ b/engines/groovie/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/script.h b/engines/groovie/script.h
index 8cd790af5e..35e52593de 100644
--- a/engines/groovie/script.h
+++ b/engines/groovie/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/stuffit.cpp b/engines/groovie/stuffit.cpp
index 60a57a0129..bbfcd3da82 100644
--- a/engines/groovie/stuffit.cpp
+++ b/engines/groovie/stuffit.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/stuffit.h b/engines/groovie/stuffit.h
index 44f593dbea..9b2bbd3543 100644
--- a/engines/groovie/stuffit.h
+++ b/engines/groovie/stuffit.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/vdx.cpp b/engines/groovie/vdx.cpp
index 59d966a22f..4626a6f81b 100644
--- a/engines/groovie/vdx.cpp
+++ b/engines/groovie/vdx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/groovie/vdx.h b/engines/groovie/vdx.h
index a9bfaa1eb4..328e6e4da5 100644
--- a/engines/groovie/vdx.h
+++ b/engines/groovie/vdx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/anim.cpp b/engines/hopkins/anim.cpp
index 2ec9cec009..8f2a18f741 100644
--- a/engines/hopkins/anim.cpp
+++ b/engines/hopkins/anim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -668,7 +668,6 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
*/
void AnimationManager::playSequence2(const Common::String &file, uint32 rate1, uint32 rate2, uint32 rate3, bool skipSeqFl) {
byte *screenP;
- int frameNumber;
Common::File f;
if (_vm->shouldQuit())
@@ -708,7 +707,7 @@ void AnimationManager::playSequence2(const Common::String &file, uint32 rate1, u
if (!_vm->_events->_escKeyFl) {
_vm->_events->_rateCounter = 0;
- frameNumber = 0;
+ int frameNumber = 0;
while (!_vm->shouldQuit()) {
_vm->_soundMan->playAnimSound(frameNumber++);
diff --git a/engines/hopkins/anim.h b/engines/hopkins/anim.h
index bf9b55aaae..a273245097 100644
--- a/engines/hopkins/anim.h
+++ b/engines/hopkins/anim.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/computer.cpp b/engines/hopkins/computer.cpp
index f9e3ecafcd..1307cd5796 100644
--- a/engines/hopkins/computer.cpp
+++ b/engines/hopkins/computer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -675,15 +675,12 @@ void ComputerManager::displayBricks() {
_breakoutSpeed = 1;
int16 *level = _breakoutLevel;
- int cellLeft;
- int cellTop;
- int cellType;
for (int levelIdx = 0; ; levelIdx += 6) {
- cellLeft = (int16)FROM_LE_16(level[levelIdx]);
+ int cellLeft = (int16)FROM_LE_16(level[levelIdx]);
if (cellLeft == -1)
break;
- cellTop = FROM_LE_16(level[levelIdx + 1]);
- cellType = FROM_LE_16(level[levelIdx + 4]);
+ int cellTop = FROM_LE_16(level[levelIdx + 1]);
+ int cellType = FROM_LE_16(level[levelIdx + 4]);
if (cellType <= 6)
++_breakoutBrickNbr;
@@ -833,7 +830,6 @@ int ComputerManager::displayHiscores() {
_vm->_graphicsMan->setColorPercentage(254, 0, 0, 0);
int yp;
- int xp;
// Loop for displaying the scores
for (int scoreIndex = 0; scoreIndex <= 5; scoreIndex++) {
yp = 19 * scoreIndex;
@@ -853,7 +849,7 @@ int ComputerManager::displayHiscores() {
int buttonIndex = 0;
do {
_vm->_events->refreshEvents();
- xp = _vm->_events->getMouseX();
+ int xp = _vm->_events->getMouseX();
yp = _vm->_events->getMouseY();
if (_vm->_events->getMouseButton() == 1 && ABS(xp - 79) <= 33 && ABS(yp - 396) <= 13)
diff --git a/engines/hopkins/computer.h b/engines/hopkins/computer.h
index 1771bba7d6..e8857a234b 100644
--- a/engines/hopkins/computer.h
+++ b/engines/hopkins/computer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/debugger.cpp b/engines/hopkins/debugger.cpp
index f111eb50d3..14b1c183a8 100644
--- a/engines/hopkins/debugger.cpp
+++ b/engines/hopkins/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/debugger.h b/engines/hopkins/debugger.h
index 746c54a675..94a66af15b 100644
--- a/engines/hopkins/debugger.h
+++ b/engines/hopkins/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/detection.cpp b/engines/hopkins/detection.cpp
index c617a5aacf..a25b19e496 100644
--- a/engines/hopkins/detection.cpp
+++ b/engines/hopkins/detection.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "hopkins/hopkins.h"
@@ -29,6 +28,7 @@
#include "common/memstream.h"
#include "engines/advancedDetector.h"
#include "common/system.h"
+#include "common/translation.h"
#include "graphics/colormasks.h"
#include "graphics/surface.h"
@@ -69,6 +69,30 @@ static const PlainGameDescriptor hopkinsGames[] = {
#include "hopkins/detection_tables.h"
+static const ADExtraGuiOptionsMap optionsList[] = {
+ {
+ GAMEOPTION_GORE_DEFAULT_OFF,
+ {
+ _s("Gore Mode"),
+ _s("Enable Gore Mode when available"),
+ "enable_gore",
+ false
+ }
+ },
+
+ {
+ GAMEOPTION_GORE_DEFAULT_ON,
+ {
+ _s("Gore Mode"),
+ _s("Enable Gore Mode when available"),
+ "enable_gore",
+ true
+ }
+ },
+
+ AD_EXTRA_GUI_OPTIONS_TERMINATOR
+};
+
const static char *directoryGlobs[] = {
"voice",
"link",
@@ -77,7 +101,7 @@ const static char *directoryGlobs[] = {
class HopkinsMetaEngine : public AdvancedMetaEngine {
public:
- HopkinsMetaEngine() : AdvancedMetaEngine(Hopkins::gameDescriptions, sizeof(Hopkins::HopkinsGameDescription), hopkinsGames) {
+ HopkinsMetaEngine() : AdvancedMetaEngine(Hopkins::gameDescriptions, sizeof(Hopkins::HopkinsGameDescription), hopkinsGames, optionsList) {
_maxScanDepth = 3;
_directoryGlobs = directoryGlobs;
}
@@ -190,7 +214,7 @@ SaveStateDescriptor HopkinsMetaEngine::querySaveMetaInfos(const char *target, in
#if PLUGIN_ENABLED_DYNAMIC(HOPKINS)
-REGISTER_PLUGIN_DYNAMIC(HOPKINS, PLUGIN_TYPE_ENGINE, HopkinsMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(HOPKINS, PLUGIN_TYPE_ENGINE, HopkinsMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(HOPKINS, PLUGIN_TYPE_ENGINE, HopkinsMetaEngine);
+ REGISTER_PLUGIN_STATIC(HOPKINS, PLUGIN_TYPE_ENGINE, HopkinsMetaEngine);
#endif
diff --git a/engines/hopkins/detection_tables.h b/engines/hopkins/detection_tables.h
index c3ff563f6f..aeb92d7411 100644
--- a/engines/hopkins/detection_tables.h
+++ b/engines/hopkins/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -22,6 +22,9 @@
namespace Hopkins {
+#define GAMEOPTION_GORE_DEFAULT_ON GUIO_GAMEOPTIONS1
+#define GAMEOPTION_GORE_DEFAULT_OFF GUIO_GAMEOPTIONS2
+
static const HopkinsGameDescription gameDescriptions[] = {
{
// Hopkins FBI Linux Demo UK 1.00 and 1.02
@@ -35,7 +38,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::EN_ANY,
Common::kPlatformLinux,
ADGF_DEMO,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
@@ -51,7 +54,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::EN_ANY,
Common::kPlatformOS2,
ADGF_NO_FLAGS,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
@@ -66,7 +69,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::EN_ANY,
Common::kPlatformBeOS,
ADGF_NO_FLAGS,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
@@ -81,7 +84,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::ES_ESP,
Common::kPlatformWindows,
ADGF_NO_FLAGS,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
@@ -96,7 +99,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_NO_FLAGS,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_OFF)
},
},
{
@@ -111,7 +114,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::RU_RUS,
Common::kPlatformWindows,
ADGF_NO_FLAGS,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
@@ -126,7 +129,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::FR_FRA,
Common::kPlatformLinux,
ADGF_NO_FLAGS,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
@@ -141,7 +144,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::EN_ANY,
Common::kPlatformLinux,
ADGF_NO_FLAGS,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
@@ -156,11 +159,27 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::FR_FRA,
Common::kPlatformWindows,
ADGF_NO_FLAGS,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
+ // Hopkins FBI Win95 Polish, provided by Paput in bug #6511
+ {
+ "hopkins",
+ 0,
+ {
+ {"RES_VAN.RES", 0, "f2fec5172e4a7a9d35cb2a5f948ef6a9", 39400865},
+ AD_LISTEND
+ },
+ Common::PL_POL,
+ Common::kPlatformWindows,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_GORE_DEFAULT_OFF)
+ },
+ },
+
+ {
// Hopkins FBI Win95 Demo, provided by Strangerke
// CHECKME: No voice! a second file is required though... Also, it has multi-language support
{
@@ -173,7 +192,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::EN_ANY,
Common::kPlatformWindows,
ADGF_DEMO,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_ON)
},
},
{
@@ -188,7 +207,7 @@ static const HopkinsGameDescription gameDescriptions[] = {
Common::PL_POL,
Common::kPlatformWindows,
ADGF_DEMO,
- GUIO1(GUIO_NONE)
+ GUIO1(GAMEOPTION_GORE_DEFAULT_OFF)
},
},
{ AD_TABLE_END_MARKER }
diff --git a/engines/hopkins/dialogs.cpp b/engines/hopkins/dialogs.cpp
index 8c944167ae..fc613f892d 100644
--- a/engines/hopkins/dialogs.cpp
+++ b/engines/hopkins/dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/dialogs.h b/engines/hopkins/dialogs.h
index 246b80cd3e..822cf376dd 100644
--- a/engines/hopkins/dialogs.h
+++ b/engines/hopkins/dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/events.cpp b/engines/hopkins/events.cpp
index d0c1dcea4d..1ee495a111 100644
--- a/engines/hopkins/events.cpp
+++ b/engines/hopkins/events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/events.h b/engines/hopkins/events.h
index f4dedce1c5..fde0106689 100644
--- a/engines/hopkins/events.h
+++ b/engines/hopkins/events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/files.cpp b/engines/hopkins/files.cpp
index 2390ebbdf8..75f429f860 100644
--- a/engines/hopkins/files.cpp
+++ b/engines/hopkins/files.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -25,6 +25,7 @@
#include "hopkins/hopkins.h"
#include "hopkins/globals.h"
+#include "common/config-manager.h"
#include "common/system.h"
#include "common/debug.h"
#include "common/file.h"
@@ -68,20 +69,11 @@ int FileManager::readStream(Common::ReadStream &stream, void *buf, size_t nbytes
}
/**
- * Initialize censorship based on blood.dat file
+ * The original censorship was based on blood.dat file.
+ * It's now using the config manager and a per-engine GUI option.
*/
void FileManager::initCensorship() {
- _vm->_globals->_censorshipFl = false;
-
- // If file doesn't exist, fallback to uncensored
- if (fileExists("BLOOD.DAT")) {
- char *data = (char *)loadFile("BLOOD.DAT");
-
- if ((data[6] == 'u' && data[7] == 'k') || (data[6] == 'U' && data[7] == 'K'))
- _vm->_globals->_censorshipFl = true;
-
- _vm->_globals->freeMemory((byte *)data);
- }
+ _vm->_globals->_censorshipFl = ConfMan.getBool("enable_gore");
}
/**
diff --git a/engines/hopkins/files.h b/engines/hopkins/files.h
index 5e5eaa755c..0c117ccc10 100644
--- a/engines/hopkins/files.h
+++ b/engines/hopkins/files.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/font.cpp b/engines/hopkins/font.cpp
index ac0eee2866..7d57f564a9 100644
--- a/engines/hopkins/font.cpp
+++ b/engines/hopkins/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/font.h b/engines/hopkins/font.h
index 93e807ea4b..fe423edfe7 100644
--- a/engines/hopkins/font.h
+++ b/engines/hopkins/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/globals.cpp b/engines/hopkins/globals.cpp
index cd66a84b73..1f192748cd 100644
--- a/engines/hopkins/globals.cpp
+++ b/engines/hopkins/globals.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/globals.h b/engines/hopkins/globals.h
index 94512c3d26..2e17389a45 100644
--- a/engines/hopkins/globals.h
+++ b/engines/hopkins/globals.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/graphics.cpp b/engines/hopkins/graphics.cpp
index a64e81fcc9..7227c3e833 100644
--- a/engines/hopkins/graphics.cpp
+++ b/engines/hopkins/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -28,7 +28,7 @@
#include "common/system.h"
#include "graphics/palette.h"
-#include "graphics/decoders/pcx.h"
+#include "image/pcx.h"
#include "common/file.h"
#include "common/rect.h"
#include "engines/util.h"
@@ -301,7 +301,7 @@ void GraphicsManager::fillSurface(byte *surface, byte *col, int size) {
void GraphicsManager::loadPCX640(byte *surface, const Common::String &file, byte *palette, bool typeFlag) {
Common::File f;
- Graphics::PCXDecoder pcxDecoder;
+ Image::PCXDecoder pcxDecoder;
// Clear the passed surface
memset(surface, 0, SCREEN_WIDTH * 2 * SCREEN_HEIGHT);
@@ -439,9 +439,7 @@ void GraphicsManager::display8BitRect(const byte *surface, int xs, int ys, int w
}
void GraphicsManager::displayScaled8BitRect(const byte *surface, int xp, int yp, int width, int height, int destX, int destY) {
- int xCtr;
const byte *palette;
- int savedXCount;
byte *loopDestP;
const byte *loopSrcP;
int yCtr;
@@ -454,10 +452,10 @@ void GraphicsManager::displayScaled8BitRect(const byte *surface, int xp, int yp,
do {
yCtr = yCount;
- xCtr = xCount;
+ int xCtr = xCount;
loopSrcP = srcP;
loopDestP = destP;
- savedXCount = xCount;
+ int savedXCount = xCount;
palette = _palettePixels;
do {
diff --git a/engines/hopkins/graphics.h b/engines/hopkins/graphics.h
index 8767f5ec4d..1ea6b89f2a 100644
--- a/engines/hopkins/graphics.h
+++ b/engines/hopkins/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/hopkins.cpp b/engines/hopkins/hopkins.cpp
index 0e86fa26a9..9940391f64 100644
--- a/engines/hopkins/hopkins.cpp
+++ b/engines/hopkins/hopkins.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -232,7 +232,7 @@ bool HopkinsEngine::runWin95Demo() {
if (!_globals->_censorshipFl)
_animMan->playAnim("BANQUE.ANM", "BANKUK.ANM", 200, 28, 200);
else
- _animMan->playAnim("BANQUE.ANM", "BANKUK.ANM", 200, 28, 200);
+ _animMan->playAnim("BANKUK.ANM", "BANQUE.ANM", 200, 28, 200);
_soundMan->_specialSoundNum = 0;
_soundMan->removeSample(1);
_soundMan->removeSample(2);
@@ -2860,7 +2860,6 @@ void HopkinsEngine::syncSoundSettings() {
}
bool HopkinsEngine::displayAdultDisclaimer() {
- int xp, yp;
int buttonIndex;
_graphicsMan->_minX = 0;
@@ -2880,8 +2879,8 @@ bool HopkinsEngine::displayAdultDisclaimer() {
_events->_mouseSpriteId = 0;
do {
- xp = _events->getMouseX();
- yp = _events->getMouseY();
+ int xp = _events->getMouseX();
+ int yp = _events->getMouseY();
buttonIndex = 0;
if (xp >= 37 && xp <= 169 && yp >= 406 && yp <= 445)
diff --git a/engines/hopkins/hopkins.h b/engines/hopkins/hopkins.h
index 615eace374..b782d103a8 100644
--- a/engines/hopkins/hopkins.h
+++ b/engines/hopkins/hopkins.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/lines.cpp b/engines/hopkins/lines.cpp
index aa708fdfb2..709f17a8b2 100644
--- a/engines/hopkins/lines.cpp
+++ b/engines/hopkins/lines.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -548,8 +548,6 @@ int LinesManager::avoidObstacleOnSegment(int lineIdx, int lineDataIdx, int route
bool LinesManager::MIRACLE(int fromX, int fromY, int lineIdx, int destLineIdx, int routeIdx) {
debugC(5, kDebugPath, "MIRACLE(%d, %d, %d, %d, %d)", fromX, fromY, lineIdx, destLineIdx, routeIdx);
- int newLinesDataIdx = 0;
- int newLinesIdx = 0;
int lineIdxLeft = 0;
int lineDataIdxLeft = 0;
int lineIdxRight = 0;
@@ -700,6 +698,8 @@ bool LinesManager::MIRACLE(int fromX, int fromY, int lineIdx, int destLineIdx, i
newDir = DIR_LEFT;
}
+ int newLinesDataIdx = 0;
+ int newLinesIdx = 0;
switch(newDir) {
case DIR_UP:
newLinesIdx = linesIdxUp;
@@ -1552,7 +1552,6 @@ void LinesManager::useRoute2(int idx, int curRouteIdx) {
int LinesManager::characterRoute(int fromX, int fromY, int destX, int destY, int startLineIdx, int endLineIdx, int routeIdx) {
debugC(5, kDebugPath, "characterRoute(%d, %d, %d, %d, %d, %d, %d)", fromX, fromY, destX, destY, startLineIdx, endLineIdx, routeIdx);
int collDataIdxRoute2 = 0;
- bool colResult = false;
int curX = fromX;
int curY = fromY;
@@ -1603,7 +1602,6 @@ int LinesManager::characterRoute(int fromX, int fromY, int destX, int destY, int
int collLineIdxRoute1 = -1;
int collLineIdxRoute2 = -1;
- int distX, distY;
int repeatFlag = 0;
int collDataIdxRoute0 = 0;
int collDataIdxRoute1 = 0;
@@ -1615,8 +1613,8 @@ int LinesManager::characterRoute(int fromX, int fromY, int destX, int destY, int
useRoute0(idxRoute0, curRouteIdx);
return 1;
}
- distX = abs(curX - destX) + 1;
- distY = abs(curY - destY) + 1;
+ int distX = abs(curX - destX) + 1;
+ int distY = abs(curY - destY) + 1;
int maxDist;
if (distX > distY)
maxDist = distX;
@@ -1912,7 +1910,7 @@ int LinesManager::characterRoute(int fromX, int fromY, int destX, int destY, int
posXRoute2 = _newPosX;
posYRoute2 = _newPosY;
- colResult = checkCollisionLine(_newPosX, _newPosY, &collDataIdxRoute2, &collLineIdxRoute2, 0, _lastLine);
+ bool colResult = checkCollisionLine(_newPosX, _newPosY, &collDataIdxRoute2, &collLineIdxRoute2, 0, _lastLine);
if (colResult && collLineIdxRoute2 <= _lastLine)
break;
}
@@ -2456,13 +2454,12 @@ bool LinesManager::PLAN_TEST(int paramX, int paramY, int superRouteIdx, int para
int LinesManager::testLine(int paramX, int paramY, int *testValue, int *foundLineIdx, int *foundDataIdx) {
debugC(5, kDebugPath, "testLine(%d, %d, testValue, foundLineIdx, foundDataIdx)", paramX, paramY);
int16 *lineData;
- int lineDataEndIdx;
int collLineIdx;
int collDataIdx;
for (int idx = _lastLine + 1; idx < _linesNumb + 1; idx++) {
lineData = _lineItem[idx]._lineData;
- lineDataEndIdx = _lineItem[idx]._lineDataEndIdx;
+ int lineDataEndIdx = _lineItem[idx]._lineDataEndIdx;
if (!lineData)
continue;
diff --git a/engines/hopkins/lines.h b/engines/hopkins/lines.h
index b32dc6e2a5..5e9ef8a7b0 100644
--- a/engines/hopkins/lines.h
+++ b/engines/hopkins/lines.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/menu.cpp b/engines/hopkins/menu.cpp
index 048d1b2cef..169b29a560 100644
--- a/engines/hopkins/menu.cpp
+++ b/engines/hopkins/menu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/menu.h b/engines/hopkins/menu.h
index e926c29dbd..4f78e73685 100644
--- a/engines/hopkins/menu.h
+++ b/engines/hopkins/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/objects.cpp b/engines/hopkins/objects.cpp
index 347a6aabe8..b54b21bbc9 100644
--- a/engines/hopkins/objects.cpp
+++ b/engines/hopkins/objects.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -376,7 +376,6 @@ void ObjectsManager::addObject(int objIndex) {
void ObjectsManager::displaySprite() {
int clipX;
int clipY;
- bool loopCondFl;
uint16 arr[50];
// Handle copying any background areas that text are going to be drawn on
@@ -441,6 +440,7 @@ void ObjectsManager::displaySprite() {
for (int i = 1; i <= 48; i++)
arr[i] = i;
+ bool loopCondFl;
do {
loopCondFl = false;
for (int sortIdx = 1; sortIdx < _sortedDisplayCount; sortIdx++) {
@@ -3613,12 +3613,10 @@ void ObjectsManager::showSpecialActionAnimation(const byte *spriteData, const Co
realSpeed = speed / 3;
int spriteIndex = 0;
- bool completeTokenFl;
- char nextChar;
for (int idx = 0; ; idx++) {
- completeTokenFl = false;
- nextChar = animString[idx];
+ bool completeTokenFl = false;
+ char nextChar = animString[idx];
if (nextChar == ',') {
spriteIndex = atoi(tmpStr.c_str());
tmpStr = "";
diff --git a/engines/hopkins/objects.h b/engines/hopkins/objects.h
index 5f1f5b1f59..dc56765431 100644
--- a/engines/hopkins/objects.h
+++ b/engines/hopkins/objects.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/saveload.cpp b/engines/hopkins/saveload.cpp
index b0dea7e6d1..05c7fb8119 100644
--- a/engines/hopkins/saveload.cpp
+++ b/engines/hopkins/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/saveload.h b/engines/hopkins/saveload.h
index 5b77c11f12..7b4ec307f5 100644
--- a/engines/hopkins/saveload.h
+++ b/engines/hopkins/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/script.cpp b/engines/hopkins/script.cpp
index 09b0641a12..b0d8749c7f 100644
--- a/engines/hopkins/script.cpp
+++ b/engines/hopkins/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/script.h b/engines/hopkins/script.h
index 2a22e18ccb..1f8e45dc9a 100644
--- a/engines/hopkins/script.h
+++ b/engines/hopkins/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hopkins/sound.cpp b/engines/hopkins/sound.cpp
index 92c5f51462..773c714899 100644
--- a/engines/hopkins/sound.cpp
+++ b/engines/hopkins/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -200,14 +200,6 @@ SoundManager::SoundManager(HopkinsEngine *vm) {
_currentSoundIndex = 0;
_oldSoundNumber = 0;
_modPlayingFl = false;
-
- for (int i = 0; i < VOICE_COUNT; ++i)
- Common::fill((byte *)&_voice[i], (byte *)&_voice[i] + sizeof(VoiceItem), 0);
- for (int i = 0; i < SWAV_COUNT; ++i)
- Common::fill((byte *)&_sWav[i], (byte *)&_sWav[i] + sizeof(SwavItem), 0);
- for (int i = 0; i < SOUND_COUNT; ++i)
- Common::fill((byte *)&_sound[i], (byte *)&_sound[i] + sizeof(SoundItem), 0);
- Common::fill((byte *)&_music, (byte *)&_music + sizeof(MusicItem), 0);
}
SoundManager::~SoundManager() {
diff --git a/engines/hopkins/sound.h b/engines/hopkins/sound.h
index f1d047ae8b..97cdcdc1dd 100644
--- a/engines/hopkins/sound.h
+++ b/engines/hopkins/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -33,12 +33,16 @@ namespace Hopkins {
class VoiceItem {
public:
+ VoiceItem() : _status(false), _wavIndex(0) {}
+
bool _status;
int _wavIndex;
};
class SwavItem {
public:
+ SwavItem() : _active(false), _audioStream(NULL), _freeSampleFl(false) {}
+
bool _active;
Audio::RewindableAudioStream *_audioStream;
Audio::SoundHandle _soundHandle;
@@ -47,11 +51,15 @@ public:
class MusicItem {
public:
+ MusicItem() : _active(false) {}
+
bool _active;
};
class SoundItem {
public:
+ SoundItem() : _active(false) {}
+
bool _active;
};
diff --git a/engines/hopkins/talk.cpp b/engines/hopkins/talk.cpp
index c80ea15554..df7b26c82c 100644
--- a/engines/hopkins/talk.cpp
+++ b/engines/hopkins/talk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -613,7 +613,6 @@ void TalkManager::displayBobDialogAnim(int idx) {
_vm->_objectsMan->_bob[idx]._flipFl = false;
_vm->_objectsMan->_bob[idx]._animData = _vm->_animMan->_animBqe[idx]._data;
_vm->_objectsMan->_bob[idx]._bobMode = 10;
- bqeData = _characterSprite;
_vm->_objectsMan->_bob[idx]._spriteData = _characterSprite;
_vm->_objectsMan->_bob[idx]._bobModeChange = newMode;
_vm->_objectsMan->_bob[idx]._modeChangeCtr = -1;
diff --git a/engines/hopkins/talk.h b/engines/hopkins/talk.h
index 678f52090a..49ee92d3b9 100644
--- a/engines/hopkins/talk.h
+++ b/engines/hopkins/talk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/console.cpp b/engines/hugo/console.cpp
index 414c86e1d4..56025bfbfd 100644
--- a/engines/hugo/console.cpp
+++ b/engines/hugo/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/console.h b/engines/hugo/console.h
index 16317e83d5..a35f2e3c0a 100644
--- a/engines/hugo/console.h
+++ b/engines/hugo/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/detection.cpp b/engines/hugo/detection.cpp
index ede4ab2279..3907215746 100644
--- a/engines/hugo/detection.cpp
+++ b/engines/hugo/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -184,13 +184,12 @@ SaveStateList HugoMetaEngine::listSaves(const char *target) const {
SaveStateList saveList;
char slot[3];
- int slotNum = 0;
for (Common::StringArray::const_iterator filename = filenames.begin(); filename != filenames.end(); ++filename) {
slot[0] = filename->c_str()[filename->size() - 6];
slot[1] = filename->c_str()[filename->size() - 5];
slot[2] = '\0';
// Obtain the last 2 digits of the filename (without extension), since they correspond to the save slot
- slotNum = atoi(slot);
+ int slotNum = atoi(slot);
if (slotNum >= 0 && slotNum <= getMaximumSaveSlot()) {
Common::InSaveFile *file = saveFileMan->openForLoading(*filename);
if (file) {
@@ -276,9 +275,9 @@ void HugoMetaEngine::removeSaveState(const char *target, int slot) const {
} // End of namespace Hugo
#if PLUGIN_ENABLED_DYNAMIC(HUGO)
-REGISTER_PLUGIN_DYNAMIC(HUGO, PLUGIN_TYPE_ENGINE, Hugo::HugoMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(HUGO, PLUGIN_TYPE_ENGINE, Hugo::HugoMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(HUGO, PLUGIN_TYPE_ENGINE, Hugo::HugoMetaEngine);
+ REGISTER_PLUGIN_STATIC(HUGO, PLUGIN_TYPE_ENGINE, Hugo::HugoMetaEngine);
#endif
namespace Hugo {
diff --git a/engines/hugo/dialogs.cpp b/engines/hugo/dialogs.cpp
index 23e04dc479..8b145b78d8 100644
--- a/engines/hugo/dialogs.cpp
+++ b/engines/hugo/dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -21,9 +21,9 @@
*/
#include "common/substream.h"
-#include "graphics/decoders/bmp.h"
#include "gui/gui-manager.h"
#include "gui/ThemeEval.h"
+#include "image/bmp.h"
#include "hugo/hugo.h"
#include "hugo/display.h"
@@ -107,7 +107,6 @@ void TopMenu::reflowLayout() {
x += kButtonWidth + kButtonPad;
_inventButton->resize(x * scale, y * scale, kButtonWidth * scale, kButtonHeight * scale);
- x += kButtonWidth + kButtonPad;
// Set the graphics to the 'on' buttons, except for the variable ones
_whatButton->setGfx(_arrayBmp[4 * kMenuWhat + scale - 1]);
@@ -131,7 +130,7 @@ void TopMenu::loadBmpArr(Common::SeekableReadStream &in) {
uint32 filPos = in.pos();
Common::SeekableSubReadStream stream(&in, filPos, filPos + bmpSize);
- Graphics::BitmapDecoder bitmapDecoder;
+ Image::BitmapDecoder bitmapDecoder;
if (!bitmapDecoder.loadStream(stream))
error("TopMenu::loadBmpArr(): Could not load bitmap");
diff --git a/engines/hugo/dialogs.h b/engines/hugo/dialogs.h
index 114bcf56a9..55bb8f9fd0 100644
--- a/engines/hugo/dialogs.h
+++ b/engines/hugo/dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/display.cpp b/engines/hugo/display.cpp
index 3dc9c9a1c3..a8a22fb4b9 100644
--- a/engines/hugo/display.cpp
+++ b/engines/hugo/display.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/display.h b/engines/hugo/display.h
index 00dc1b743c..e152a7f868 100644
--- a/engines/hugo/display.h
+++ b/engines/hugo/display.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/file.cpp b/engines/hugo/file.cpp
index aa128048af..e2633977a8 100644
--- a/engines/hugo/file.cpp
+++ b/engines/hugo/file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -34,11 +34,12 @@
#include "common/config-manager.h"
#include "graphics/surface.h"
-#include "graphics/decoders/pcx.h"
#include "graphics/thumbnail.h"
#include "gui/saveload.h"
+#include "image/pcx.h"
+
#include "hugo/hugo.h"
#include "hugo/file.h"
#include "hugo/schedule.h"
@@ -110,7 +111,7 @@ Seq *FileManager::readPCX(Common::SeekableReadStream &f, Seq *seqPtr, byte *imag
error("Insufficient memory to run game.");
}
- Graphics::PCXDecoder pcx;
+ Image::PCXDecoder pcx;
if (!pcx.loadStream(f))
error("Error while reading PCX image");
diff --git a/engines/hugo/file.h b/engines/hugo/file.h
index 44f257a2af..d43528f0f8 100644
--- a/engines/hugo/file.h
+++ b/engines/hugo/file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/file_v1d.cpp b/engines/hugo/file_v1d.cpp
index e42223fb13..b6b51eaa7b 100644
--- a/engines/hugo/file_v1d.cpp
+++ b/engines/hugo/file_v1d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/file_v1w.cpp b/engines/hugo/file_v1w.cpp
index 002a1dc103..27db328ecf 100644
--- a/engines/hugo/file_v1w.cpp
+++ b/engines/hugo/file_v1w.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/file_v2d.cpp b/engines/hugo/file_v2d.cpp
index 19c90980b0..5f748133ea 100644
--- a/engines/hugo/file_v2d.cpp
+++ b/engines/hugo/file_v2d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/file_v2w.cpp b/engines/hugo/file_v2w.cpp
index 98a15526fa..4866ba9418 100644
--- a/engines/hugo/file_v2w.cpp
+++ b/engines/hugo/file_v2w.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/file_v3d.cpp b/engines/hugo/file_v3d.cpp
index 5eb0cfc2c8..0cfb1dc162 100644
--- a/engines/hugo/file_v3d.cpp
+++ b/engines/hugo/file_v3d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/game.h b/engines/hugo/game.h
index ed49ee8cbe..0ca6dcb111 100644
--- a/engines/hugo/game.h
+++ b/engines/hugo/game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/hugo.cpp b/engines/hugo/hugo.cpp
index 88e2e4372b..8f89832f6b 100644
--- a/engines/hugo/hugo.cpp
+++ b/engines/hugo/hugo.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/hugo.h b/engines/hugo/hugo.h
index 6adb5f95d0..cc0fcc6ec2 100644
--- a/engines/hugo/hugo.h
+++ b/engines/hugo/hugo.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/intro.cpp b/engines/hugo/intro.cpp
index 5db6c39078..26ef65edf8 100644
--- a/engines/hugo/intro.cpp
+++ b/engines/hugo/intro.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/intro.h b/engines/hugo/intro.h
index d5a5a4e4b4..7af53c8922 100644
--- a/engines/hugo/intro.h
+++ b/engines/hugo/intro.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/inventory.cpp b/engines/hugo/inventory.cpp
index 03df997866..64609e6327 100644
--- a/engines/hugo/inventory.cpp
+++ b/engines/hugo/inventory.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/inventory.h b/engines/hugo/inventory.h
index 5b55c3ec94..a57bff4b58 100644
--- a/engines/hugo/inventory.h
+++ b/engines/hugo/inventory.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/mouse.cpp b/engines/hugo/mouse.cpp
index 4ef3db3e2b..558a596b35 100644
--- a/engines/hugo/mouse.cpp
+++ b/engines/hugo/mouse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -160,7 +160,6 @@ void MouseHandler::processRightClick(const int16 objId, const int16 cx, const in
return;
int16 inventObjId = _vm->_inventory->getInventoryObjId();
- bool foundFl = false; // TRUE if route found to object
// Check if this was over iconbar
if ((_vm->_inventory->getInventoryState() == kInventoryActive) && (cy < kInvDy + kDibOffY)) { // Clicked over iconbar object
if (inventObjId == -1)
@@ -172,12 +171,14 @@ void MouseHandler::processRightClick(const int16 objId, const int16 cx, const in
} else { // Clicked over viewport object
Object *obj = &_vm->_object->_objects[objId];
int16 x, y;
- switch (obj->_viewx) { // Where to walk to
- case -1: // Walk to object position
+ switch (obj->_viewx) { // Where to walk to
+ case -1: { // Walk to object position
+ bool foundFl = false;
if (_vm->_object->findObjectSpace(obj, &x, &y))
- foundFl = _vm->_route->startRoute(kRouteGet, objId, x, y);
+ foundFl = _vm->_route->startRoute(kRouteGet, objId, x, y); // TRUE if route found to object
if (!foundFl) // Can't get there, try to use from here
_vm->_object->useObject(objId);
+ }
break;
case 0: // Immediate use
_vm->_object->useObject(objId); // Pick up or use object
diff --git a/engines/hugo/mouse.h b/engines/hugo/mouse.h
index e20716f72c..f9d547ec86 100644
--- a/engines/hugo/mouse.h
+++ b/engines/hugo/mouse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/object.cpp b/engines/hugo/object.cpp
index 44f46d2d79..bbd2b93adc 100644
--- a/engines/hugo/object.cpp
+++ b/engines/hugo/object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -134,19 +134,19 @@ void ObjectHandler::restoreSeq(Object *obj) {
void ObjectHandler::useObject(int16 objId) {
debugC(1, kDebugObject, "useObject(%d)", objId);
- const char *verb; // Background verb to use directly
int16 inventObjId = _vm->_inventory->getInventoryObjId();
- Object *obj = &_objects[objId]; // Ptr to object
+ Object *obj = &_objects[objId]; // Ptr to object
if (inventObjId == -1) {
+ const char *verb; // Background verb to use directly
// Get or use objid directly
if ((obj->_genericCmd & TAKE) || obj->_objValue) // Get collectible item
sprintf(_vm->_line, "%s %s", _vm->_text->getVerb(_vm->_take, 0), _vm->_text->getNoun(obj->_nounIndex, 0));
- else if (obj->_cmdIndex != 0) // Use non-collectible item if able
+ else if (obj->_cmdIndex != 0) // Use non-collectible item if able
sprintf(_vm->_line, "%s %s", _vm->_text->getVerb(_vm->_parser->getCmdDefaultVerbIdx(obj->_cmdIndex), 0), _vm->_text->getNoun(obj->_nounIndex, 0));
else if ((verb = _vm->_parser->useBG(_vm->_text->getNoun(obj->_nounIndex, 0))) != 0)
sprintf(_vm->_line, "%s %s", verb, _vm->_text->getNoun(obj->_nounIndex, 0));
else
- return; // Can't use object directly
+ return; // Can't use object directly
} else {
// Use status.objid on objid
// Default to first cmd verb
@@ -540,10 +540,8 @@ void ObjectHandler::setCarriedScreen(int screenNum) {
* Load _numObj from Hugo.dat
*/
void ObjectHandler::loadNumObj(Common::ReadStream &in) {
- int numElem;
-
for (int varnt = 0; varnt < _vm->_numVariant; varnt++) {
- numElem = in.readUint16BE();
+ int numElem = in.readUint16BE();
if (varnt == _vm->_gameVariant)
_numObj = numElem;
}
diff --git a/engines/hugo/object.h b/engines/hugo/object.h
index fd0d731a98..59294e70ae 100644
--- a/engines/hugo/object.h
+++ b/engines/hugo/object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/object_v1d.cpp b/engines/hugo/object_v1d.cpp
index 7f88e9e5b8..bfbdfd215b 100644
--- a/engines/hugo/object_v1d.cpp
+++ b/engines/hugo/object_v1d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/object_v1w.cpp b/engines/hugo/object_v1w.cpp
index 61b0f2e48a..736128b006 100644
--- a/engines/hugo/object_v1w.cpp
+++ b/engines/hugo/object_v1w.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/object_v2d.cpp b/engines/hugo/object_v2d.cpp
index 7cb6c20dd0..7acd05fe61 100644
--- a/engines/hugo/object_v2d.cpp
+++ b/engines/hugo/object_v2d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/object_v3d.cpp b/engines/hugo/object_v3d.cpp
index 7bb4b95b4a..4805fde460 100644
--- a/engines/hugo/object_v3d.cpp
+++ b/engines/hugo/object_v3d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/parser.cpp b/engines/hugo/parser.cpp
index 57938ec371..998dd5df58 100644
--- a/engines/hugo/parser.cpp
+++ b/engines/hugo/parser.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/parser.h b/engines/hugo/parser.h
index e72c46f591..5a2ac7d375 100644
--- a/engines/hugo/parser.h
+++ b/engines/hugo/parser.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/parser_v1d.cpp b/engines/hugo/parser_v1d.cpp
index f29b0161f5..404a7bae80 100644
--- a/engines/hugo/parser_v1d.cpp
+++ b/engines/hugo/parser_v1d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/parser_v1w.cpp b/engines/hugo/parser_v1w.cpp
index 3722ccc0e1..10f691866b 100644
--- a/engines/hugo/parser_v1w.cpp
+++ b/engines/hugo/parser_v1w.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/parser_v2d.cpp b/engines/hugo/parser_v2d.cpp
index 6d71186f49..d8e91adec2 100644
--- a/engines/hugo/parser_v2d.cpp
+++ b/engines/hugo/parser_v2d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/parser_v3d.cpp b/engines/hugo/parser_v3d.cpp
index a7e5896833..9bcc13e54e 100644
--- a/engines/hugo/parser_v3d.cpp
+++ b/engines/hugo/parser_v3d.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/route.cpp b/engines/hugo/route.cpp
index dc3c41de9c..17c23ea785 100644
--- a/engines/hugo/route.cpp
+++ b/engines/hugo/route.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -384,9 +384,9 @@ bool Route::findRoute(const int16 cx, const int16 cy) {
_segment[_segmentNumb]._x2 = herox2;
_segmentNumb++;
- Common::Point *routeNode; // Ptr to route node
// Look in segments[] for straight lines from destination to hero
for (i = 0, _routeListIndex = 0; i < _segmentNumb - 1; i++) {
+ Common::Point *routeNode; // Ptr to route node
if ((routeNode = newNode()) == 0) // New node for new segment
return false; // Too many nodes
routeNode->y = _segment[i]._y;
@@ -438,7 +438,7 @@ bool Route::findRoute(const int16 cx, const int16 cy) {
void Route::processRoute() {
debugC(1, kDebugRoute, "processRoute");
- static bool turnedFl = false; // Used to get extra cylce for turning
+ static bool turnedFl = false; // Used to get extra cycle for turning
if (_routeIndex < 0)
return;
diff --git a/engines/hugo/route.h b/engines/hugo/route.h
index 71db1e2583..6d312ec1db 100644
--- a/engines/hugo/route.h
+++ b/engines/hugo/route.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/schedule.cpp b/engines/hugo/schedule.cpp
index 17ffa9d391..36501d4a7d 100644
--- a/engines/hugo/schedule.cpp
+++ b/engines/hugo/schedule.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -254,9 +254,8 @@ void Scheduler::waitForRefresh() {
void Scheduler::loadAlNewscrIndex(Common::ReadStream &in) {
debugC(6, kDebugSchedule, "loadAlNewscrIndex(&in)");
- int numElem;
for (int varnt = 0; varnt < _vm->_numVariant; varnt++) {
- numElem = in.readUint16BE();
+ int numElem = in.readUint16BE();
if (varnt == _vm->_gameVariant)
_alNewscrIndex = numElem;
}
@@ -568,9 +567,9 @@ void Scheduler::loadActListArr(Common::ReadStream &in) {
Act tmpAct;
- int numElem, numSubElem;
+ int numSubElem;
for (int varnt = 0; varnt < _vm->_numVariant; varnt++) {
- numElem = in.readUint16BE();
+ int numElem = in.readUint16BE();
if (varnt == _vm->_gameVariant) {
_actListArrSize = numElem;
_actListArr = (Act **)malloc(sizeof(Act *) * _actListArrSize);
@@ -1214,8 +1213,6 @@ Event *Scheduler::doAction(Event *curEvent) {
Act *action = curEvent->_action;
Object *obj1;
int dx, dy;
- Event *wrkEvent; // Save ev_p->nextEvent for return
-
switch (action->_a0._actType) {
case ANULL: // Big NOP from DEL_EVENTS
break;
@@ -1444,7 +1441,7 @@ Event *Scheduler::doAction(Event *curEvent) {
if (action->_a0._actType == NEW_SCREEN) { // New_screen() deletes entire list
return nullptr; // nextEvent = nullptr since list now empty
} else {
- wrkEvent = curEvent->_nextEvent;
+ Event *wrkEvent = curEvent->_nextEvent;
delQueue(curEvent); // Return event to free list
return wrkEvent; // Return next event ptr
}
@@ -1601,10 +1598,9 @@ void Scheduler_v2d::promptAction(Act *action) {
debug(1, "doAction(act3), expecting answer %s", _vm->_file->fetchString(action->_a3._responsePtr[0]));
bool found = false;
- const char *tmpStr; // General purpose string ptr
for (int dx = 0; !found && (action->_a3._responsePtr[dx] != -1); dx++) {
- tmpStr = _vm->_file->fetchString(action->_a3._responsePtr[dx]);
+ const char *tmpStr = _vm->_file->fetchString(action->_a3._responsePtr[dx]);
if (response.contains(tmpStr))
found = true;
}
diff --git a/engines/hugo/schedule.h b/engines/hugo/schedule.h
index 37851f1ebc..7f09904258 100644
--- a/engines/hugo/schedule.h
+++ b/engines/hugo/schedule.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/sound.cpp b/engines/hugo/sound.cpp
index 28dcdc83d6..8591709dc3 100644
--- a/engines/hugo/sound.cpp
+++ b/engines/hugo/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/sound.h b/engines/hugo/sound.h
index b00d93eeb1..6c3420918d 100644
--- a/engines/hugo/sound.h
+++ b/engines/hugo/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/text.cpp b/engines/hugo/text.cpp
index 538a0341e2..50b2b64260 100644
--- a/engines/hugo/text.cpp
+++ b/engines/hugo/text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -91,16 +91,14 @@ char **TextHandler::getVerbArray(int idx1) const {
}
char **TextHandler::loadTextsVariante(Common::ReadStream &in, uint16 *arraySize) {
- int numTexts;
- int entryLen;
int len;
char **res = nullptr;
char *pos = nullptr;
char *posBck = nullptr;
for (int varnt = 0; varnt < _vm->_numVariant; varnt++) {
- numTexts = in.readUint16BE();
- entryLen = in.readUint16BE();
+ int numTexts = in.readUint16BE();
+ int entryLen = in.readUint16BE();
pos = (char *)malloc(entryLen);
if (varnt == _vm->_gameVariant) {
if (arraySize)
diff --git a/engines/hugo/text.h b/engines/hugo/text.h
index 0ba8de9cdf..aa35f0a53f 100644
--- a/engines/hugo/text.h
+++ b/engines/hugo/text.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/util.cpp b/engines/hugo/util.cpp
index fdc676e6a7..7b75bf2bc5 100644
--- a/engines/hugo/util.cpp
+++ b/engines/hugo/util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/hugo/util.h b/engines/hugo/util.h
index d8634c88e0..3a76e3c6f4 100644
--- a/engines/hugo/util.h
+++ b/engines/hugo/util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/animator_hof.cpp b/engines/kyra/animator_hof.cpp
index 59112504d6..7ce79cb7a0 100644
--- a/engines/kyra/animator_hof.cpp
+++ b/engines/kyra/animator_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/animator_lok.cpp b/engines/kyra/animator_lok.cpp
index 945a51a4ec..ba6dc91e1f 100644
--- a/engines/kyra/animator_lok.cpp
+++ b/engines/kyra/animator_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/animator_lok.h b/engines/kyra/animator_lok.h
index 74b8305468..55c4d571fd 100644
--- a/engines/kyra/animator_lok.h
+++ b/engines/kyra/animator_lok.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/animator_mr.cpp b/engines/kyra/animator_mr.cpp
index 83e774e2fc..3b9454ce56 100644
--- a/engines/kyra/animator_mr.cpp
+++ b/engines/kyra/animator_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/animator_tim.cpp b/engines/kyra/animator_tim.cpp
index 90f4ad89ad..1d65ba7b1a 100644
--- a/engines/kyra/animator_tim.cpp
+++ b/engines/kyra/animator_tim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/animator_v2.cpp b/engines/kyra/animator_v2.cpp
index f7ae6749cf..5ac154bdce 100644
--- a/engines/kyra/animator_v2.cpp
+++ b/engines/kyra/animator_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/chargen.cpp b/engines/kyra/chargen.cpp
index 80ff42e2c5..2454909440 100644
--- a/engines/kyra/chargen.cpp
+++ b/engines/kyra/chargen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/darkmoon.cpp b/engines/kyra/darkmoon.cpp
index a694a4aba5..71ae98e4db 100644
--- a/engines/kyra/darkmoon.cpp
+++ b/engines/kyra/darkmoon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/darkmoon.h b/engines/kyra/darkmoon.h
index f0057ddd66..57eb46eb1c 100644
--- a/engines/kyra/darkmoon.h
+++ b/engines/kyra/darkmoon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/debugger.cpp b/engines/kyra/debugger.cpp
index 99d73d19c7..e4806afb70 100644
--- a/engines/kyra/debugger.cpp
+++ b/engines/kyra/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/debugger.h b/engines/kyra/debugger.h
index c1056a6cf3..aaf7c51c18 100644
--- a/engines/kyra/debugger.h
+++ b/engines/kyra/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/detection_tables.h b/engines/kyra/detection_tables.h
index f59d173fe6..1ada9a87ba 100644
--- a/engines/kyra/detection_tables.h
+++ b/engines/kyra/detection_tables.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
namespace {
diff --git a/engines/kyra/eob.cpp b/engines/kyra/eob.cpp
index 405ea2129a..6a6b20baac 100644
--- a/engines/kyra/eob.cpp
+++ b/engines/kyra/eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/eob.h b/engines/kyra/eob.h
index b423b0da9d..09b6380c91 100644
--- a/engines/kyra/eob.h
+++ b/engines/kyra/eob.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/eobcommon.cpp b/engines/kyra/eobcommon.cpp
index d477209e5b..38a5ab8440 100644
--- a/engines/kyra/eobcommon.cpp
+++ b/engines/kyra/eobcommon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/eobcommon.h b/engines/kyra/eobcommon.h
index 6421159dbe..1401d59dae 100644
--- a/engines/kyra/eobcommon.h
+++ b/engines/kyra/eobcommon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui.cpp b/engines/kyra/gui.cpp
index 1156b17957..e95d78c54d 100644
--- a/engines/kyra/gui.cpp
+++ b/engines/kyra/gui.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui.h b/engines/kyra/gui.h
index 854f10e85d..3e2bdc04cd 100644
--- a/engines/kyra/gui.h
+++ b/engines/kyra/gui.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_eob.cpp b/engines/kyra/gui_eob.cpp
index 9b4c09d7f4..9456e575db 100644
--- a/engines/kyra/gui_eob.cpp
+++ b/engines/kyra/gui_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_eob.h b/engines/kyra/gui_eob.h
index 1b7bdf3482..e4daff6ada 100644
--- a/engines/kyra/gui_eob.h
+++ b/engines/kyra/gui_eob.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_hof.cpp b/engines/kyra/gui_hof.cpp
index 3a2c07beff..8515cf51e0 100644
--- a/engines/kyra/gui_hof.cpp
+++ b/engines/kyra/gui_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_hof.h b/engines/kyra/gui_hof.h
index c228c35551..9f6aaae2ca 100644
--- a/engines/kyra/gui_hof.h
+++ b/engines/kyra/gui_hof.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_lok.cpp b/engines/kyra/gui_lok.cpp
index 8e18ff910d..03b77bf677 100644
--- a/engines/kyra/gui_lok.cpp
+++ b/engines/kyra/gui_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_lok.h b/engines/kyra/gui_lok.h
index d3e0beaa9e..76a5dc586b 100644
--- a/engines/kyra/gui_lok.h
+++ b/engines/kyra/gui_lok.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_lol.cpp b/engines/kyra/gui_lol.cpp
index 8808c313fc..cfdf762bba 100644
--- a/engines/kyra/gui_lol.cpp
+++ b/engines/kyra/gui_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_lol.h b/engines/kyra/gui_lol.h
index 79d4b6b4c9..6fa6571016 100644
--- a/engines/kyra/gui_lol.h
+++ b/engines/kyra/gui_lol.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_mr.cpp b/engines/kyra/gui_mr.cpp
index ee0303c8c3..7984dde662 100644
--- a/engines/kyra/gui_mr.cpp
+++ b/engines/kyra/gui_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_mr.h b/engines/kyra/gui_mr.h
index 6303dff83f..62872a5355 100644
--- a/engines/kyra/gui_mr.h
+++ b/engines/kyra/gui_mr.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_rpg.cpp b/engines/kyra/gui_rpg.cpp
index ab25f95df8..8e77a6e141 100644
--- a/engines/kyra/gui_rpg.cpp
+++ b/engines/kyra/gui_rpg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_v1.cpp b/engines/kyra/gui_v1.cpp
index cec6562dd9..a75c14b071 100644
--- a/engines/kyra/gui_v1.cpp
+++ b/engines/kyra/gui_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_v1.h b/engines/kyra/gui_v1.h
index 260edae8e5..94be09037c 100644
--- a/engines/kyra/gui_v1.h
+++ b/engines/kyra/gui_v1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_v2.cpp b/engines/kyra/gui_v2.cpp
index 1df4149d2e..afda573c61 100644
--- a/engines/kyra/gui_v2.cpp
+++ b/engines/kyra/gui_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/gui_v2.h b/engines/kyra/gui_v2.h
index bdbcce1c4f..34651e4c22 100644
--- a/engines/kyra/gui_v2.h
+++ b/engines/kyra/gui_v2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/item.h b/engines/kyra/item.h
index 4b236372a2..cf06aad8ba 100644
--- a/engines/kyra/item.h
+++ b/engines/kyra/item.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/items_eob.cpp b/engines/kyra/items_eob.cpp
index 6c7ccf14dc..c9c632f60b 100644
--- a/engines/kyra/items_eob.cpp
+++ b/engines/kyra/items_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/items_hof.cpp b/engines/kyra/items_hof.cpp
index e1d3c659de..2640af5188 100644
--- a/engines/kyra/items_hof.cpp
+++ b/engines/kyra/items_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/items_lok.cpp b/engines/kyra/items_lok.cpp
index 8ee07e8271..55a23b2a1a 100644
--- a/engines/kyra/items_lok.cpp
+++ b/engines/kyra/items_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/items_lol.cpp b/engines/kyra/items_lol.cpp
index f4024471d2..f2a9637dfe 100644
--- a/engines/kyra/items_lol.cpp
+++ b/engines/kyra/items_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/items_mr.cpp b/engines/kyra/items_mr.cpp
index 029f676538..397fab8d8f 100644
--- a/engines/kyra/items_mr.cpp
+++ b/engines/kyra/items_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/items_v2.cpp b/engines/kyra/items_v2.cpp
index 2145a2c2f0..732fa7c8dd 100644
--- a/engines/kyra/items_v2.cpp
+++ b/engines/kyra/items_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_hof.cpp b/engines/kyra/kyra_hof.cpp
index ce9b530dbe..9988899da8 100644
--- a/engines/kyra/kyra_hof.cpp
+++ b/engines/kyra/kyra_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_hof.h b/engines/kyra/kyra_hof.h
index 1b84e5b56f..1e500d4286 100644
--- a/engines/kyra/kyra_hof.h
+++ b/engines/kyra/kyra_hof.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_lok.cpp b/engines/kyra/kyra_lok.cpp
index 7d4e35092f..80511c674d 100644
--- a/engines/kyra/kyra_lok.cpp
+++ b/engines/kyra/kyra_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_lok.h b/engines/kyra/kyra_lok.h
index def5cbcf6f..a10b208389 100644
--- a/engines/kyra/kyra_lok.h
+++ b/engines/kyra/kyra_lok.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_mr.cpp b/engines/kyra/kyra_mr.cpp
index a485ae47e4..834bda9454 100644
--- a/engines/kyra/kyra_mr.cpp
+++ b/engines/kyra/kyra_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_mr.h b/engines/kyra/kyra_mr.h
index d194fedd4d..787dd4c936 100644
--- a/engines/kyra/kyra_mr.h
+++ b/engines/kyra/kyra_mr.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_rpg.cpp b/engines/kyra/kyra_rpg.cpp
index 4f7adcc6e5..635559dcfd 100644
--- a/engines/kyra/kyra_rpg.cpp
+++ b/engines/kyra/kyra_rpg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_rpg.h b/engines/kyra/kyra_rpg.h
index cd36d2a5cd..69fc705ff2 100644
--- a/engines/kyra/kyra_rpg.h
+++ b/engines/kyra/kyra_rpg.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_v1.cpp b/engines/kyra/kyra_v1.cpp
index 9194b64155..c8993fea47 100644
--- a/engines/kyra/kyra_v1.cpp
+++ b/engines/kyra/kyra_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_v1.h b/engines/kyra/kyra_v1.h
index cd048563ca..c801829855 100644
--- a/engines/kyra/kyra_v1.h
+++ b/engines/kyra/kyra_v1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_v2.cpp b/engines/kyra/kyra_v2.cpp
index 848fb18b6a..925dcf7bfe 100644
--- a/engines/kyra/kyra_v2.cpp
+++ b/engines/kyra/kyra_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/kyra_v2.h b/engines/kyra/kyra_v2.h
index 563416bf1e..f00c4635b5 100644
--- a/engines/kyra/kyra_v2.h
+++ b/engines/kyra/kyra_v2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/lol.cpp b/engines/kyra/lol.cpp
index 3695041b83..5500e8b95f 100644
--- a/engines/kyra/lol.cpp
+++ b/engines/kyra/lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/lol.h b/engines/kyra/lol.h
index 4002346d31..e060b307af 100644
--- a/engines/kyra/lol.h
+++ b/engines/kyra/lol.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/magic_eob.cpp b/engines/kyra/magic_eob.cpp
index 2180c5359d..a435850e54 100644
--- a/engines/kyra/magic_eob.cpp
+++ b/engines/kyra/magic_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/resource.cpp b/engines/kyra/resource.cpp
index 7a1abe8dd9..3c801ee923 100644
--- a/engines/kyra/resource.cpp
+++ b/engines/kyra/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/resource.h b/engines/kyra/resource.h
index 5c179a7864..3ab08a4c7c 100644
--- a/engines/kyra/resource.h
+++ b/engines/kyra/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -566,50 +566,50 @@ enum KyraResources {
kEoB2IntroStrings,
kEoB2IntroCPSFiles,
- kEob2IntroAnimData00,
- kEob2IntroAnimData01,
- kEob2IntroAnimData02,
- kEob2IntroAnimData03,
- kEob2IntroAnimData04,
- kEob2IntroAnimData05,
- kEob2IntroAnimData06,
- kEob2IntroAnimData07,
- kEob2IntroAnimData08,
- kEob2IntroAnimData09,
- kEob2IntroAnimData10,
- kEob2IntroAnimData11,
- kEob2IntroAnimData12,
- kEob2IntroAnimData13,
- kEob2IntroAnimData14,
- kEob2IntroAnimData15,
- kEob2IntroAnimData16,
- kEob2IntroAnimData17,
- kEob2IntroAnimData18,
- kEob2IntroAnimData19,
- kEob2IntroAnimData20,
- kEob2IntroAnimData21,
- kEob2IntroAnimData22,
- kEob2IntroAnimData23,
- kEob2IntroAnimData24,
- kEob2IntroAnimData25,
- kEob2IntroAnimData26,
- kEob2IntroAnimData27,
- kEob2IntroAnimData28,
- kEob2IntroAnimData29,
- kEob2IntroAnimData30,
- kEob2IntroAnimData31,
- kEob2IntroAnimData32,
- kEob2IntroAnimData33,
- kEob2IntroAnimData34,
- kEob2IntroAnimData35,
- kEob2IntroAnimData36,
- kEob2IntroAnimData37,
- kEob2IntroAnimData38,
- kEob2IntroAnimData39,
- kEob2IntroAnimData40,
- kEob2IntroAnimData41,
- kEob2IntroAnimData42,
- kEob2IntroAnimData43,
+ kEoB2IntroAnimData00,
+ kEoB2IntroAnimData01,
+ kEoB2IntroAnimData02,
+ kEoB2IntroAnimData03,
+ kEoB2IntroAnimData04,
+ kEoB2IntroAnimData05,
+ kEoB2IntroAnimData06,
+ kEoB2IntroAnimData07,
+ kEoB2IntroAnimData08,
+ kEoB2IntroAnimData09,
+ kEoB2IntroAnimData10,
+ kEoB2IntroAnimData11,
+ kEoB2IntroAnimData12,
+ kEoB2IntroAnimData13,
+ kEoB2IntroAnimData14,
+ kEoB2IntroAnimData15,
+ kEoB2IntroAnimData16,
+ kEoB2IntroAnimData17,
+ kEoB2IntroAnimData18,
+ kEoB2IntroAnimData19,
+ kEoB2IntroAnimData20,
+ kEoB2IntroAnimData21,
+ kEoB2IntroAnimData22,
+ kEoB2IntroAnimData23,
+ kEoB2IntroAnimData24,
+ kEoB2IntroAnimData25,
+ kEoB2IntroAnimData26,
+ kEoB2IntroAnimData27,
+ kEoB2IntroAnimData28,
+ kEoB2IntroAnimData29,
+ kEoB2IntroAnimData30,
+ kEoB2IntroAnimData31,
+ kEoB2IntroAnimData32,
+ kEoB2IntroAnimData33,
+ kEoB2IntroAnimData34,
+ kEoB2IntroAnimData35,
+ kEoB2IntroAnimData36,
+ kEoB2IntroAnimData37,
+ kEoB2IntroAnimData38,
+ kEoB2IntroAnimData39,
+ kEoB2IntroAnimData40,
+ kEoB2IntroAnimData41,
+ kEoB2IntroAnimData42,
+ kEoB2IntroAnimData43,
kEoB2IntroShapes00,
kEoB2IntroShapes01,
kEoB2IntroShapes04,
@@ -618,27 +618,27 @@ enum KyraResources {
kEoB2FinaleStrings,
kEoB2CreditsData,
kEoB2FinaleCPSFiles,
- kEob2FinaleAnimData00,
- kEob2FinaleAnimData01,
- kEob2FinaleAnimData02,
- kEob2FinaleAnimData03,
- kEob2FinaleAnimData04,
- kEob2FinaleAnimData05,
- kEob2FinaleAnimData06,
- kEob2FinaleAnimData07,
- kEob2FinaleAnimData08,
- kEob2FinaleAnimData09,
- kEob2FinaleAnimData10,
- kEob2FinaleAnimData11,
- kEob2FinaleAnimData12,
- kEob2FinaleAnimData13,
- kEob2FinaleAnimData14,
- kEob2FinaleAnimData15,
- kEob2FinaleAnimData16,
- kEob2FinaleAnimData17,
- kEob2FinaleAnimData18,
- kEob2FinaleAnimData19,
- kEob2FinaleAnimData20,
+ kEoB2FinaleAnimData00,
+ kEoB2FinaleAnimData01,
+ kEoB2FinaleAnimData02,
+ kEoB2FinaleAnimData03,
+ kEoB2FinaleAnimData04,
+ kEoB2FinaleAnimData05,
+ kEoB2FinaleAnimData06,
+ kEoB2FinaleAnimData07,
+ kEoB2FinaleAnimData08,
+ kEoB2FinaleAnimData09,
+ kEoB2FinaleAnimData10,
+ kEoB2FinaleAnimData11,
+ kEoB2FinaleAnimData12,
+ kEoB2FinaleAnimData13,
+ kEoB2FinaleAnimData14,
+ kEoB2FinaleAnimData15,
+ kEoB2FinaleAnimData16,
+ kEoB2FinaleAnimData17,
+ kEoB2FinaleAnimData18,
+ kEoB2FinaleAnimData19,
+ kEoB2FinaleAnimData20,
kEoB2FinaleShapes00,
kEoB2FinaleShapes03,
kEoB2FinaleShapes07,
diff --git a/engines/kyra/resource_intern.cpp b/engines/kyra/resource_intern.cpp
index 4c413487ff..9ec955477f 100644
--- a/engines/kyra/resource_intern.cpp
+++ b/engines/kyra/resource_intern.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/resource_intern.h b/engines/kyra/resource_intern.h
index e63eab7d6a..530df51f35 100644
--- a/engines/kyra/resource_intern.h
+++ b/engines/kyra/resource_intern.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/saveload.cpp b/engines/kyra/saveload.cpp
index bacfb62c16..2ae6420bd7 100644
--- a/engines/kyra/saveload.cpp
+++ b/engines/kyra/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/saveload_eob.cpp b/engines/kyra/saveload_eob.cpp
index aa223414bc..cca8f3a0a4 100644
--- a/engines/kyra/saveload_eob.cpp
+++ b/engines/kyra/saveload_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/saveload_hof.cpp b/engines/kyra/saveload_hof.cpp
index 1d28b6bc13..e8e76143bd 100644
--- a/engines/kyra/saveload_hof.cpp
+++ b/engines/kyra/saveload_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/saveload_lok.cpp b/engines/kyra/saveload_lok.cpp
index f8cca1ab7b..1d729d0103 100644
--- a/engines/kyra/saveload_lok.cpp
+++ b/engines/kyra/saveload_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/saveload_lol.cpp b/engines/kyra/saveload_lol.cpp
index 6c83ebd51b..e02b8fb22c 100644
--- a/engines/kyra/saveload_lol.cpp
+++ b/engines/kyra/saveload_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/saveload_mr.cpp b/engines/kyra/saveload_mr.cpp
index c49a528d02..a938003a07 100644
--- a/engines/kyra/saveload_mr.cpp
+++ b/engines/kyra/saveload_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/saveload_rpg.cpp b/engines/kyra/saveload_rpg.cpp
index d22c50dbeb..8f44960753 100644
--- a/engines/kyra/saveload_rpg.cpp
+++ b/engines/kyra/saveload_rpg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/scene_eob.cpp b/engines/kyra/scene_eob.cpp
index cfac5db8b3..84822c3fd2 100644
--- a/engines/kyra/scene_eob.cpp
+++ b/engines/kyra/scene_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/scene_hof.cpp b/engines/kyra/scene_hof.cpp
index 62690c4766..8ec14e4ac7 100644
--- a/engines/kyra/scene_hof.cpp
+++ b/engines/kyra/scene_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/scene_lok.cpp b/engines/kyra/scene_lok.cpp
index ea09091af7..df9b11d5a2 100644
--- a/engines/kyra/scene_lok.cpp
+++ b/engines/kyra/scene_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/scene_lol.cpp b/engines/kyra/scene_lol.cpp
index 154606d46f..391de5e49c 100644
--- a/engines/kyra/scene_lol.cpp
+++ b/engines/kyra/scene_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -620,14 +620,14 @@ void LoLEngine::updateCompass() {
if (_compassStep)
_compassStep -= (((ABS(_compassStep) >> 4) + 2) * dir);
- int16 d = _compassBroken ? (int8(_rnd.getRandomNumber(255)) - _compassDirection) : (_currentDirection << 6) - _compassDirection;
- if (d <= -128)
- d += 256;
- if (d >= 128)
- d -= 256;
+ int16 diff = _compassBroken ? (int8(_rnd.getRandomNumber(255)) - _compassDirection) : (_currentDirection << 6) - _compassDirection;
+ if (diff <= -128)
+ diff += 256;
+ if (diff >= 128)
+ diff -= 256;
- d >>= 2;
- _compassStep += d;
+ diff >>= 2;
+ _compassStep += diff;
_compassStep = CLIP(_compassStep, -24, 24);
_compassDirection += _compassStep;
@@ -636,14 +636,9 @@ void LoLEngine::updateCompass() {
if (_compassDirection > 255)
_compassDirection -= 256;
- if ((_compassDirection >> 6) == _currentDirection && _compassStep < 2) {
- int16 d2 = d >> 16;
- d ^= d2;
- d -= d2;
- if (d < 4) {
- _compassDirection = _currentDirection << 6;
- _compassStep = 0;
- }
+ if (((((_compassDirection + 3) & 0xFD) >> 6) == _currentDirection) && (_compassStep < 2) && (ABS(diff) < 4)) {
+ _compassDirection = _currentDirection << 6;
+ _compassStep = 0;
}
gui_drawCompass();
diff --git a/engines/kyra/scene_mr.cpp b/engines/kyra/scene_mr.cpp
index d2b4907b6a..38ee25f54a 100644
--- a/engines/kyra/scene_mr.cpp
+++ b/engines/kyra/scene_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/scene_rpg.cpp b/engines/kyra/scene_rpg.cpp
index 927d891a5f..dabc368a27 100644
--- a/engines/kyra/scene_rpg.cpp
+++ b/engines/kyra/scene_rpg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/scene_v1.cpp b/engines/kyra/scene_v1.cpp
index 36798970e3..48958e5b90 100644
--- a/engines/kyra/scene_v1.cpp
+++ b/engines/kyra/scene_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/scene_v2.cpp b/engines/kyra/scene_v2.cpp
index 9b6897f2ab..e4258836bc 100644
--- a/engines/kyra/scene_v2.cpp
+++ b/engines/kyra/scene_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen.cpp b/engines/kyra/screen.cpp
index 8c97e46a8f..eaa074ff0a 100644
--- a/engines/kyra/screen.cpp
+++ b/engines/kyra/screen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen.h b/engines/kyra/screen.h
index 156b5b9a7c..31b77b4179 100644
--- a/engines/kyra/screen.h
+++ b/engines/kyra/screen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_eob.cpp b/engines/kyra/screen_eob.cpp
index ae62e522e7..6c1bd572e1 100644
--- a/engines/kyra/screen_eob.cpp
+++ b/engines/kyra/screen_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_eob.h b/engines/kyra/screen_eob.h
index 934483d146..3634ae1a39 100644
--- a/engines/kyra/screen_eob.h
+++ b/engines/kyra/screen_eob.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_hof.cpp b/engines/kyra/screen_hof.cpp
index b7de7988b8..a80d91381c 100644
--- a/engines/kyra/screen_hof.cpp
+++ b/engines/kyra/screen_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_hof.h b/engines/kyra/screen_hof.h
index 95f461677d..1ad2b3c93d 100644
--- a/engines/kyra/screen_hof.h
+++ b/engines/kyra/screen_hof.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_lok.cpp b/engines/kyra/screen_lok.cpp
index f028f93294..57601104ad 100644
--- a/engines/kyra/screen_lok.cpp
+++ b/engines/kyra/screen_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_lok.h b/engines/kyra/screen_lok.h
index 3cb92543e5..8f36ce7fb0 100644
--- a/engines/kyra/screen_lok.h
+++ b/engines/kyra/screen_lok.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_lol.cpp b/engines/kyra/screen_lol.cpp
index 16a77c8fcb..6dd6080923 100644
--- a/engines/kyra/screen_lol.cpp
+++ b/engines/kyra/screen_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_lol.h b/engines/kyra/screen_lol.h
index 8ceb8431bc..91d663d34f 100644
--- a/engines/kyra/screen_lol.h
+++ b/engines/kyra/screen_lol.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_mr.cpp b/engines/kyra/screen_mr.cpp
index 337860db30..fa820a79eb 100644
--- a/engines/kyra/screen_mr.cpp
+++ b/engines/kyra/screen_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_mr.h b/engines/kyra/screen_mr.h
index e10afcc5d2..ef982d4bcd 100644
--- a/engines/kyra/screen_mr.h
+++ b/engines/kyra/screen_mr.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_v2.cpp b/engines/kyra/screen_v2.cpp
index 23eb94cb53..eabcdb2393 100644
--- a/engines/kyra/screen_v2.cpp
+++ b/engines/kyra/screen_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/screen_v2.h b/engines/kyra/screen_v2.h
index 6f4d67136a..06f7aa2d4a 100644
--- a/engines/kyra/screen_v2.h
+++ b/engines/kyra/screen_v2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script.cpp b/engines/kyra/script.cpp
index 303cbb45aa..2452d7f41c 100644
--- a/engines/kyra/script.cpp
+++ b/engines/kyra/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script.h b/engines/kyra/script.h
index ccbe733e4d..12a44b0a03 100644
--- a/engines/kyra/script.h
+++ b/engines/kyra/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_eob.cpp b/engines/kyra/script_eob.cpp
index 4a6a498173..455180b5e1 100644
--- a/engines/kyra/script_eob.cpp
+++ b/engines/kyra/script_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_eob.h b/engines/kyra/script_eob.h
index 8e2dbd8423..b996e314d5 100644
--- a/engines/kyra/script_eob.h
+++ b/engines/kyra/script_eob.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifdef ENABLE_EOB
diff --git a/engines/kyra/script_hof.cpp b/engines/kyra/script_hof.cpp
index f6fde65109..f86d0e96bc 100644
--- a/engines/kyra/script_hof.cpp
+++ b/engines/kyra/script_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_lok.cpp b/engines/kyra/script_lok.cpp
index 22d5e9fd7c..380d7d551f 100644
--- a/engines/kyra/script_lok.cpp
+++ b/engines/kyra/script_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_lol.cpp b/engines/kyra/script_lol.cpp
index 0bbe66f530..1a36527cdb 100644
--- a/engines/kyra/script_lol.cpp
+++ b/engines/kyra/script_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_mr.cpp b/engines/kyra/script_mr.cpp
index f656b162fd..5ba645f1be 100644
--- a/engines/kyra/script_mr.cpp
+++ b/engines/kyra/script_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_tim.cpp b/engines/kyra/script_tim.cpp
index ba0f62a2b4..e3b339cba6 100644
--- a/engines/kyra/script_tim.cpp
+++ b/engines/kyra/script_tim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_tim.h b/engines/kyra/script_tim.h
index aa512daae8..bd9c2645e5 100644
--- a/engines/kyra/script_tim.h
+++ b/engines/kyra/script_tim.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_v1.cpp b/engines/kyra/script_v1.cpp
index aaa07e6d61..3ac174a5b9 100644
--- a/engines/kyra/script_v1.cpp
+++ b/engines/kyra/script_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/script_v2.cpp b/engines/kyra/script_v2.cpp
index c38a144537..179d388109 100644
--- a/engines/kyra/script_v2.cpp
+++ b/engines/kyra/script_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/seqplayer.cpp b/engines/kyra/seqplayer.cpp
index 1f9097d09d..e1794b2416 100644
--- a/engines/kyra/seqplayer.cpp
+++ b/engines/kyra/seqplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/seqplayer.h b/engines/kyra/seqplayer.h
index 12d94e3f6d..155ed82a4e 100644
--- a/engines/kyra/seqplayer.h
+++ b/engines/kyra/seqplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sequences_darkmoon.cpp b/engines/kyra/sequences_darkmoon.cpp
index 03b15d6950..53a30d0079 100644
--- a/engines/kyra/sequences_darkmoon.cpp
+++ b/engines/kyra/sequences_darkmoon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sequences_eob.cpp b/engines/kyra/sequences_eob.cpp
index 0fec386485..187295bd2c 100644
--- a/engines/kyra/sequences_eob.cpp
+++ b/engines/kyra/sequences_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sequences_hof.cpp b/engines/kyra/sequences_hof.cpp
index 9fcce4eb55..942cf16502 100644
--- a/engines/kyra/sequences_hof.cpp
+++ b/engines/kyra/sequences_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1651,7 +1651,7 @@ void SeqPlayer_HOF::displayHoFTalkieScrollText(uint8 *data, const ScreenDim *d,
textData[1].text += strlen((char *)textData[1].text);
textData[1].text[0] = textData[1].unk1;
cnt--;
- memcpy(&textData[1], &textData[2], cnt * sizeof(ScrollTextData));
+ memmove(&textData[1], &textData[2], cnt * sizeof(ScrollTextData));
}
if (palCycle) {
diff --git a/engines/kyra/sequences_hof.h b/engines/kyra/sequences_hof.h
index 2558a68a6a..12fa4ffbc2 100644
--- a/engines/kyra/sequences_hof.h
+++ b/engines/kyra/sequences_hof.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sequences_lok.cpp b/engines/kyra/sequences_lok.cpp
index 51f1ea51cf..8a41ee9a21 100644
--- a/engines/kyra/sequences_lok.cpp
+++ b/engines/kyra/sequences_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sequences_lol.cpp b/engines/kyra/sequences_lol.cpp
index c8f97eb770..4c87ff1dd8 100644
--- a/engines/kyra/sequences_lol.cpp
+++ b/engines/kyra/sequences_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sequences_mr.cpp b/engines/kyra/sequences_mr.cpp
index 76badb63f5..0ac6b636b8 100644
--- a/engines/kyra/sequences_mr.cpp
+++ b/engines/kyra/sequences_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sequences_v2.cpp b/engines/kyra/sequences_v2.cpp
index e431e45f10..1bcbb7d874 100644
--- a/engines/kyra/sequences_v2.cpp
+++ b/engines/kyra/sequences_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sound.cpp b/engines/kyra/sound.cpp
index cb6faf2580..3c3aff6ea9 100644
--- a/engines/kyra/sound.cpp
+++ b/engines/kyra/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sound_adlib.cpp b/engines/kyra/sound_adlib.cpp
index 1d665709e5..f950f9d5aa 100644
--- a/engines/kyra/sound_adlib.cpp
+++ b/engines/kyra/sound_adlib.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -24,12 +24,12 @@
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
-
+ *
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
-
+ *
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
diff --git a/engines/kyra/sound_amiga.cpp b/engines/kyra/sound_amiga.cpp
index 7292541594..598b5080a9 100644
--- a/engines/kyra/sound_amiga.cpp
+++ b/engines/kyra/sound_amiga.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sound_digital.cpp b/engines/kyra/sound_digital.cpp
index 518805c43e..a1600f6464 100644
--- a/engines/kyra/sound_digital.cpp
+++ b/engines/kyra/sound_digital.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sound_lok.cpp b/engines/kyra/sound_lok.cpp
index b2a9c2fd93..c356f2fb67 100644
--- a/engines/kyra/sound_lok.cpp
+++ b/engines/kyra/sound_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sound_lol.cpp b/engines/kyra/sound_lol.cpp
index 7ac33967dd..8be0cb6ab9 100644
--- a/engines/kyra/sound_lol.cpp
+++ b/engines/kyra/sound_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sound_midi.cpp b/engines/kyra/sound_midi.cpp
index fc6e92abd9..cd8bc2377c 100644
--- a/engines/kyra/sound_midi.cpp
+++ b/engines/kyra/sound_midi.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sound_pcspk.cpp b/engines/kyra/sound_pcspk.cpp
index 8664e2a22e..255d6b451a 100644
--- a/engines/kyra/sound_pcspk.cpp
+++ b/engines/kyra/sound_pcspk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sound_towns.cpp b/engines/kyra/sound_towns.cpp
index e4752f33de..725dedae3f 100644
--- a/engines/kyra/sound_towns.cpp
+++ b/engines/kyra/sound_towns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -538,7 +538,8 @@ bool SoundTownsPC98_v2::init() {
// check if we have access to CD audio.
Resource *r = _vm->resource();
if (_musicEnabled &&
- (r->exists("track1.mp3") || r->exists("track1.ogg") || r->exists("track1.flac") || r->exists("track1.fla")))
+ (r->exists("track1.mp3") || r->exists("track1.ogg") || r->exists("track1.flac") || r->exists("track1.fla")
+ || r->exists("track01.mp3") || r->exists("track01.ogg") || r->exists("track01.flac") || r->exists("track01.fla")))
_musicEnabled = 2;
else
_musicEnabled = 1;
diff --git a/engines/kyra/sprites.cpp b/engines/kyra/sprites.cpp
index f4cebf6470..540191e678 100644
--- a/engines/kyra/sprites.cpp
+++ b/engines/kyra/sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sprites.h b/engines/kyra/sprites.h
index 93cdcdbbcb..3319948707 100644
--- a/engines/kyra/sprites.h
+++ b/engines/kyra/sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sprites_eob.cpp b/engines/kyra/sprites_eob.cpp
index b96f2eca08..5a82cf604c 100644
--- a/engines/kyra/sprites_eob.cpp
+++ b/engines/kyra/sprites_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sprites_lol.cpp b/engines/kyra/sprites_lol.cpp
index 4d4d596bac..b9ffe6cbdb 100644
--- a/engines/kyra/sprites_lol.cpp
+++ b/engines/kyra/sprites_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/sprites_rpg.cpp b/engines/kyra/sprites_rpg.cpp
index 9c08bc8dd6..b190ad8f07 100644
--- a/engines/kyra/sprites_rpg.cpp
+++ b/engines/kyra/sprites_rpg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp
index 522e12faa4..9b3b92b9c7 100644
--- a/engines/kyra/staticres.cpp
+++ b/engines/kyra/staticres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -39,7 +39,7 @@
namespace Kyra {
-#define RESFILE_VERSION 84
+#define RESFILE_VERSION 85
namespace {
bool checkKyraDat(Common::SeekableReadStream *file) {
diff --git a/engines/kyra/staticres_eob.cpp b/engines/kyra/staticres_eob.cpp
index e0a2862dea..54cc3066ec 100644
--- a/engines/kyra/staticres_eob.cpp
+++ b/engines/kyra/staticres_eob.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "kyra/eob.h"
@@ -1207,7 +1206,7 @@ void DarkMoonEngine::initStaticResource() {
_animIntro = new const DarkMoonAnimCommand*[44];
for (int i = 0; i < 44; i++)
- _animIntro[i] = _staticres->loadEoB2SeqData(kEob2IntroAnimData00 + i, temp);
+ _animIntro[i] = _staticres->loadEoB2SeqData(kEoB2IntroAnimData00 + i, temp);
_shapesIntro = new const DarkMoonShapeDef*[13];
memset(_shapesIntro, 0, sizeof(DarkMoonShapeDef *) * 13);
@@ -1222,7 +1221,7 @@ void DarkMoonEngine::initStaticResource() {
_animFinale = new const DarkMoonAnimCommand*[21];
for (int i = 0; i < 21; i++)
- _animFinale[i] = _staticres->loadEoB2SeqData(kEob2FinaleAnimData00 + i, temp);
+ _animFinale[i] = _staticres->loadEoB2SeqData(kEoB2FinaleAnimData00 + i, temp);
_shapesFinale = new const DarkMoonShapeDef*[13];
memset(_shapesFinale, 0, sizeof(DarkMoonShapeDef *) * 13);
diff --git a/engines/kyra/staticres_lol.cpp b/engines/kyra/staticres_lol.cpp
index c2cdcf9f51..9a4fc281d5 100644
--- a/engines/kyra/staticres_lol.cpp
+++ b/engines/kyra/staticres_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/staticres_rpg.cpp b/engines/kyra/staticres_rpg.cpp
index a30cbf7d05..671d3dfd1d 100644
--- a/engines/kyra/staticres_rpg.cpp
+++ b/engines/kyra/staticres_rpg.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "kyra/resource.h"
diff --git a/engines/kyra/text.cpp b/engines/kyra/text.cpp
index 2e3acffeb9..f88ba183ba 100644
--- a/engines/kyra/text.cpp
+++ b/engines/kyra/text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text.h b/engines/kyra/text.h
index 199029469e..d5f423105e 100644
--- a/engines/kyra/text.h
+++ b/engines/kyra/text.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text_hof.cpp b/engines/kyra/text_hof.cpp
index f1933e9623..354eff03b9 100644
--- a/engines/kyra/text_hof.cpp
+++ b/engines/kyra/text_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text_hof.h b/engines/kyra/text_hof.h
index 414d02fe4b..aacdc97d76 100644
--- a/engines/kyra/text_hof.h
+++ b/engines/kyra/text_hof.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text_lok.cpp b/engines/kyra/text_lok.cpp
index a557940868..1ca5644b9d 100644
--- a/engines/kyra/text_lok.cpp
+++ b/engines/kyra/text_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text_lol.cpp b/engines/kyra/text_lol.cpp
index 6e77db1f8a..d8a36b954f 100644
--- a/engines/kyra/text_lol.cpp
+++ b/engines/kyra/text_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text_lol.h b/engines/kyra/text_lol.h
index e2b10e8d4d..ad3efadcaf 100644
--- a/engines/kyra/text_lol.h
+++ b/engines/kyra/text_lol.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text_mr.cpp b/engines/kyra/text_mr.cpp
index 10b0880f29..685d5447cd 100644
--- a/engines/kyra/text_mr.cpp
+++ b/engines/kyra/text_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text_mr.h b/engines/kyra/text_mr.h
index 957415490f..5b6a7cd192 100644
--- a/engines/kyra/text_mr.h
+++ b/engines/kyra/text_mr.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/text_rpg.cpp b/engines/kyra/text_rpg.cpp
index 24c523c856..03acde8497 100644
--- a/engines/kyra/text_rpg.cpp
+++ b/engines/kyra/text_rpg.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#if defined(ENABLE_EOB) || defined(ENABLE_LOL)
diff --git a/engines/kyra/text_rpg.h b/engines/kyra/text_rpg.h
index eb8617a371..30d3463726 100644
--- a/engines/kyra/text_rpg.h
+++ b/engines/kyra/text_rpg.h
@@ -1,19 +1,19 @@
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
- * are to numerous to list here. Please refer to the COPYRIGHT
+ * are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/timer.cpp b/engines/kyra/timer.cpp
index 95c283f063..edca3ef5bf 100644
--- a/engines/kyra/timer.cpp
+++ b/engines/kyra/timer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/timer.h b/engines/kyra/timer.h
index 205be5957d..a753707b8a 100644
--- a/engines/kyra/timer.h
+++ b/engines/kyra/timer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/timer_eob.cpp b/engines/kyra/timer_eob.cpp
index f7a4e23006..c5290790e7 100644
--- a/engines/kyra/timer_eob.cpp
+++ b/engines/kyra/timer_eob.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -347,7 +347,7 @@ void EoBCoreEngine::timerUpdateFoodStatus(int timerNum) {
}
void EoBCoreEngine::timerUpdateMonsterIdleAnim(int timerNum) {
- for (int i = 0; i < 18; i++) {
+ for (int i = 0; i < 30; i++) {
EoBMonsterInPlay *m = &_monsters[i];
if (m->mode == 7 || m->mode == 10 || (m->flags & 0x20) || (rollDice(1, 2, 0) != 1))
continue;
diff --git a/engines/kyra/timer_hof.cpp b/engines/kyra/timer_hof.cpp
index 96b14c28f5..bdfb93eebb 100644
--- a/engines/kyra/timer_hof.cpp
+++ b/engines/kyra/timer_hof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/timer_lok.cpp b/engines/kyra/timer_lok.cpp
index 13f5403618..b046e92988 100644
--- a/engines/kyra/timer_lok.cpp
+++ b/engines/kyra/timer_lok.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/timer_lol.cpp b/engines/kyra/timer_lol.cpp
index 9d0cc0dd72..1326eea754 100644
--- a/engines/kyra/timer_lol.cpp
+++ b/engines/kyra/timer_lol.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/timer_mr.cpp b/engines/kyra/timer_mr.cpp
index 7d8325cd05..58c75ac980 100644
--- a/engines/kyra/timer_mr.cpp
+++ b/engines/kyra/timer_mr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/timer_rpg.cpp b/engines/kyra/timer_rpg.cpp
index 02c2669436..b31c406480 100644
--- a/engines/kyra/timer_rpg.cpp
+++ b/engines/kyra/timer_rpg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/util.cpp b/engines/kyra/util.cpp
index f71978d03e..325f29ebd7 100644
--- a/engines/kyra/util.cpp
+++ b/engines/kyra/util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/util.h b/engines/kyra/util.h
index b91f84ad36..130768f89d 100644
--- a/engines/kyra/util.h
+++ b/engines/kyra/util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/vqa.cpp b/engines/kyra/vqa.cpp
index d9564e1306..fb51c05e51 100644
--- a/engines/kyra/vqa.cpp
+++ b/engines/kyra/vqa.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/vqa.h b/engines/kyra/vqa.h
index f3890107a8..d23704a9ea 100644
--- a/engines/kyra/vqa.h
+++ b/engines/kyra/vqa.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/wsamovie.cpp b/engines/kyra/wsamovie.cpp
index f6aca2bb82..560ac8c332 100644
--- a/engines/kyra/wsamovie.cpp
+++ b/engines/kyra/wsamovie.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/kyra/wsamovie.h b/engines/kyra/wsamovie.h
index 7dadc9319b..d00aa89af1 100644
--- a/engines/kyra/wsamovie.h
+++ b/engines/kyra/wsamovie.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/animation.cpp b/engines/lastexpress/data/animation.cpp
index 832bcc2e26..148854e04d 100644
--- a/engines/lastexpress/data/animation.cpp
+++ b/engines/lastexpress/data/animation.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -39,7 +39,7 @@
namespace LastExpress {
-Animation::Animation() : _stream(NULL), _currentChunk(NULL), _overlay(NULL), _background1(NULL), _background2(NULL), _backgroundCurrent(0), _audio(NULL), _startTime(0), _changed(false), _flag(0) {
+Animation::Animation() : _stream(NULL), _currentChunk(NULL), _overlay(NULL), _background1(NULL), _background2(NULL), _backgroundCurrent(0), _audio(NULL), _startTime(0), _changed(false) {
}
Animation::~Animation() {
diff --git a/engines/lastexpress/data/animation.h b/engines/lastexpress/data/animation.h
index 293511b266..9523cddb78 100644
--- a/engines/lastexpress/data/animation.h
+++ b/engines/lastexpress/data/animation.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -113,7 +113,6 @@ private:
uint32 _startTime;
bool _changed;
- int _flag;
};
} // End of namespace LastExpress
diff --git a/engines/lastexpress/data/archive.cpp b/engines/lastexpress/data/archive.cpp
index 908d58254a..f667da9e1c 100644
--- a/engines/lastexpress/data/archive.cpp
+++ b/engines/lastexpress/data/archive.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/archive.h b/engines/lastexpress/data/archive.h
index 011c830668..421220e6c7 100644
--- a/engines/lastexpress/data/archive.h
+++ b/engines/lastexpress/data/archive.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/background.cpp b/engines/lastexpress/data/background.cpp
index 60379251a3..e1626213e0 100644
--- a/engines/lastexpress/data/background.cpp
+++ b/engines/lastexpress/data/background.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/background.h b/engines/lastexpress/data/background.h
index 74dad541aa..c4a3216171 100644
--- a/engines/lastexpress/data/background.h
+++ b/engines/lastexpress/data/background.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/cursor.cpp b/engines/lastexpress/data/cursor.cpp
index d176d963d1..fe1092a7ef 100644
--- a/engines/lastexpress/data/cursor.cpp
+++ b/engines/lastexpress/data/cursor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/cursor.h b/engines/lastexpress/data/cursor.h
index 0e11ec04b8..63932b3d7e 100644
--- a/engines/lastexpress/data/cursor.h
+++ b/engines/lastexpress/data/cursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/font.cpp b/engines/lastexpress/data/font.cpp
index 8ac1afce9a..fb1b26582e 100644
--- a/engines/lastexpress/data/font.cpp
+++ b/engines/lastexpress/data/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/font.h b/engines/lastexpress/data/font.h
index 7696829b3b..cc6f8e03e0 100644
--- a/engines/lastexpress/data/font.h
+++ b/engines/lastexpress/data/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/scene.cpp b/engines/lastexpress/data/scene.cpp
index fdb1ac6d46..4e20e219d5 100644
--- a/engines/lastexpress/data/scene.cpp
+++ b/engines/lastexpress/data/scene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/scene.h b/engines/lastexpress/data/scene.h
index b99e56a74c..b9aff4da6b 100644
--- a/engines/lastexpress/data/scene.h
+++ b/engines/lastexpress/data/scene.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/sequence.cpp b/engines/lastexpress/data/sequence.cpp
index c7073b560c..f43e2afdef 100644
--- a/engines/lastexpress/data/sequence.cpp
+++ b/engines/lastexpress/data/sequence.cpp
@@ -76,7 +76,7 @@ void FrameInfo::read(Common::SeekableReadStream *in, bool isSequence) {
// AnimFrame
-AnimFrame::AnimFrame(Common::SeekableReadStream *in, const FrameInfo &f, bool ignoreSubtype) : _palette(NULL), _ignoreSubtype(ignoreSubtype) {
+AnimFrame::AnimFrame(Common::SeekableReadStream *in, const FrameInfo &f, bool /* ignoreSubtype */) : _palette(NULL) {
_palSize = 1;
// TODO: use just the needed rectangle
_image.create(640, 480, Graphics::PixelFormat::createFormatCLUT8());
diff --git a/engines/lastexpress/data/sequence.h b/engines/lastexpress/data/sequence.h
index 610a55cebf..fd8b3cd27b 100644
--- a/engines/lastexpress/data/sequence.h
+++ b/engines/lastexpress/data/sequence.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -147,7 +147,6 @@ private:
uint16 _palSize;
uint16 *_palette;
Common::Rect _rect;
- bool _ignoreSubtype;
};
class Sequence {
diff --git a/engines/lastexpress/data/snd.cpp b/engines/lastexpress/data/snd.cpp
index a77e4a06c6..2a221afadc 100644
--- a/engines/lastexpress/data/snd.cpp
+++ b/engines/lastexpress/data/snd.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/snd.h b/engines/lastexpress/data/snd.h
index 7111d939e7..f489304ff3 100644
--- a/engines/lastexpress/data/snd.h
+++ b/engines/lastexpress/data/snd.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/subtitle.cpp b/engines/lastexpress/data/subtitle.cpp
index 4d19c02aa7..3e0da8cb55 100644
--- a/engines/lastexpress/data/subtitle.cpp
+++ b/engines/lastexpress/data/subtitle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/data/subtitle.h b/engines/lastexpress/data/subtitle.h
index 435408e4bd..40f6c11634 100644
--- a/engines/lastexpress/data/subtitle.h
+++ b/engines/lastexpress/data/subtitle.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/debug.cpp b/engines/lastexpress/debug.cpp
index 7c83aff93d..6c2d833271 100644
--- a/engines/lastexpress/debug.cpp
+++ b/engines/lastexpress/debug.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/debug.h b/engines/lastexpress/debug.h
index 532cb83717..7a1e2648fb 100644
--- a/engines/lastexpress/debug.h
+++ b/engines/lastexpress/debug.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/detection.cpp b/engines/lastexpress/detection.cpp
index 2fdeef910a..d790582104 100644
--- a/engines/lastexpress/detection.cpp
+++ b/engines/lastexpress/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/drawable.h b/engines/lastexpress/drawable.h
index 5e77b0343a..8e844124f9 100644
--- a/engines/lastexpress/drawable.h
+++ b/engines/lastexpress/drawable.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/abbot.cpp b/engines/lastexpress/entities/abbot.cpp
index cdd9d8e712..5393410add 100644
--- a/engines/lastexpress/entities/abbot.cpp
+++ b/engines/lastexpress/entities/abbot.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/abbot.h b/engines/lastexpress/entities/abbot.h
index ba993fdbc9..c4a68f6ecb 100644
--- a/engines/lastexpress/entities/abbot.h
+++ b/engines/lastexpress/entities/abbot.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/alexei.cpp b/engines/lastexpress/entities/alexei.cpp
index b8ae62e7c4..9b56fca39f 100644
--- a/engines/lastexpress/entities/alexei.cpp
+++ b/engines/lastexpress/entities/alexei.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/alexei.h b/engines/lastexpress/entities/alexei.h
index 9a316ec574..5e14039a35 100644
--- a/engines/lastexpress/entities/alexei.h
+++ b/engines/lastexpress/entities/alexei.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/alouan.cpp b/engines/lastexpress/entities/alouan.cpp
index 86d5512cb9..0667d11697 100644
--- a/engines/lastexpress/entities/alouan.cpp
+++ b/engines/lastexpress/entities/alouan.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/alouan.h b/engines/lastexpress/entities/alouan.h
index 371e4f20d9..c84cf1a745 100644
--- a/engines/lastexpress/entities/alouan.h
+++ b/engines/lastexpress/entities/alouan.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/anna.cpp b/engines/lastexpress/entities/anna.cpp
index 4889f66c69..ff65be9772 100644
--- a/engines/lastexpress/entities/anna.cpp
+++ b/engines/lastexpress/entities/anna.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/anna.h b/engines/lastexpress/entities/anna.h
index de79ccb826..89a397a6d0 100644
--- a/engines/lastexpress/entities/anna.h
+++ b/engines/lastexpress/entities/anna.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/august.cpp b/engines/lastexpress/entities/august.cpp
index 11f72ecfe8..c5029537ad 100644
--- a/engines/lastexpress/entities/august.cpp
+++ b/engines/lastexpress/entities/august.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/august.h b/engines/lastexpress/entities/august.h
index 606321955b..f8eee1036b 100644
--- a/engines/lastexpress/entities/august.h
+++ b/engines/lastexpress/entities/august.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/boutarel.cpp b/engines/lastexpress/entities/boutarel.cpp
index 219ddf901b..979381afb0 100644
--- a/engines/lastexpress/entities/boutarel.cpp
+++ b/engines/lastexpress/entities/boutarel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/boutarel.h b/engines/lastexpress/entities/boutarel.h
index 04838f6527..8612566dc4 100644
--- a/engines/lastexpress/entities/boutarel.h
+++ b/engines/lastexpress/entities/boutarel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/chapters.cpp b/engines/lastexpress/entities/chapters.cpp
index 6c8f7ca41c..fe977a577f 100644
--- a/engines/lastexpress/entities/chapters.cpp
+++ b/engines/lastexpress/entities/chapters.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/chapters.h b/engines/lastexpress/entities/chapters.h
index fb52ea3ee4..39739aa92e 100644
--- a/engines/lastexpress/entities/chapters.h
+++ b/engines/lastexpress/entities/chapters.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/cooks.cpp b/engines/lastexpress/entities/cooks.cpp
index 5e8a2df8cb..e24180e58d 100644
--- a/engines/lastexpress/entities/cooks.cpp
+++ b/engines/lastexpress/entities/cooks.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/cooks.h b/engines/lastexpress/entities/cooks.h
index f01d0b2ca0..79addb0a02 100644
--- a/engines/lastexpress/entities/cooks.h
+++ b/engines/lastexpress/entities/cooks.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/coudert.cpp b/engines/lastexpress/entities/coudert.cpp
index ebe2a930a5..80d93d8a87 100644
--- a/engines/lastexpress/entities/coudert.cpp
+++ b/engines/lastexpress/entities/coudert.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/coudert.h b/engines/lastexpress/entities/coudert.h
index 8303c80a32..a40f31e510 100644
--- a/engines/lastexpress/entities/coudert.h
+++ b/engines/lastexpress/entities/coudert.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/entity.cpp b/engines/lastexpress/entities/entity.cpp
index b2fc30829f..07e82d296e 100644
--- a/engines/lastexpress/entities/entity.cpp
+++ b/engines/lastexpress/entities/entity.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/entity.h b/engines/lastexpress/entities/entity.h
index 634c854d05..25c481c5cf 100644
--- a/engines/lastexpress/entities/entity.h
+++ b/engines/lastexpress/entities/entity.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/entity39.cpp b/engines/lastexpress/entities/entity39.cpp
index 1786cd2201..d1f20d6114 100644
--- a/engines/lastexpress/entities/entity39.cpp
+++ b/engines/lastexpress/entities/entity39.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/entity39.h b/engines/lastexpress/entities/entity39.h
index 54b65408c7..b6abcc2cc8 100644
--- a/engines/lastexpress/entities/entity39.h
+++ b/engines/lastexpress/entities/entity39.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/entity_intern.h b/engines/lastexpress/entities/entity_intern.h
index fd803676a9..2c2d132b07 100644
--- a/engines/lastexpress/entities/entity_intern.h
+++ b/engines/lastexpress/entities/entity_intern.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/francois.cpp b/engines/lastexpress/entities/francois.cpp
index 12ce16a32b..8ef27cbe92 100644
--- a/engines/lastexpress/entities/francois.cpp
+++ b/engines/lastexpress/entities/francois.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/francois.h b/engines/lastexpress/entities/francois.h
index 3118faf867..a2ecee3e60 100644
--- a/engines/lastexpress/entities/francois.h
+++ b/engines/lastexpress/entities/francois.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/gendarmes.cpp b/engines/lastexpress/entities/gendarmes.cpp
index 2ff34ef4c9..7b31c592cd 100644
--- a/engines/lastexpress/entities/gendarmes.cpp
+++ b/engines/lastexpress/entities/gendarmes.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/gendarmes.h b/engines/lastexpress/entities/gendarmes.h
index a761643531..8475c50799 100644
--- a/engines/lastexpress/entities/gendarmes.h
+++ b/engines/lastexpress/entities/gendarmes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/hadija.cpp b/engines/lastexpress/entities/hadija.cpp
index e9abcd888a..14d5b714ca 100644
--- a/engines/lastexpress/entities/hadija.cpp
+++ b/engines/lastexpress/entities/hadija.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/hadija.h b/engines/lastexpress/entities/hadija.h
index 545f21ee03..8e92dc6891 100644
--- a/engines/lastexpress/entities/hadija.h
+++ b/engines/lastexpress/entities/hadija.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/ivo.cpp b/engines/lastexpress/entities/ivo.cpp
index c53f4689fb..b7697d0c52 100644
--- a/engines/lastexpress/entities/ivo.cpp
+++ b/engines/lastexpress/entities/ivo.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/ivo.h b/engines/lastexpress/entities/ivo.h
index 75814336e0..a23d06cd3f 100644
--- a/engines/lastexpress/entities/ivo.h
+++ b/engines/lastexpress/entities/ivo.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/kahina.cpp b/engines/lastexpress/entities/kahina.cpp
index 29e9a90d41..b7af87751f 100644
--- a/engines/lastexpress/entities/kahina.cpp
+++ b/engines/lastexpress/entities/kahina.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/kahina.h b/engines/lastexpress/entities/kahina.h
index 7479cf76f9..ee9ccf5c81 100644
--- a/engines/lastexpress/entities/kahina.h
+++ b/engines/lastexpress/entities/kahina.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/kronos.cpp b/engines/lastexpress/entities/kronos.cpp
index 38a685ec19..8bf158943b 100644
--- a/engines/lastexpress/entities/kronos.cpp
+++ b/engines/lastexpress/entities/kronos.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/kronos.h b/engines/lastexpress/entities/kronos.h
index a7693fcd46..48da419a6e 100644
--- a/engines/lastexpress/entities/kronos.h
+++ b/engines/lastexpress/entities/kronos.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/mahmud.cpp b/engines/lastexpress/entities/mahmud.cpp
index af86ef8cdd..08edda5276 100644
--- a/engines/lastexpress/entities/mahmud.cpp
+++ b/engines/lastexpress/entities/mahmud.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/mahmud.h b/engines/lastexpress/entities/mahmud.h
index 685100f078..229e6d49d3 100644
--- a/engines/lastexpress/entities/mahmud.h
+++ b/engines/lastexpress/entities/mahmud.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/max.cpp b/engines/lastexpress/entities/max.cpp
index abd2aae9e4..1056e7fd7a 100644
--- a/engines/lastexpress/entities/max.cpp
+++ b/engines/lastexpress/entities/max.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/max.h b/engines/lastexpress/entities/max.h
index acd8235e89..7b7780742b 100644
--- a/engines/lastexpress/entities/max.h
+++ b/engines/lastexpress/entities/max.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/mertens.cpp b/engines/lastexpress/entities/mertens.cpp
index f484d00a2c..4bd276b7eb 100644
--- a/engines/lastexpress/entities/mertens.cpp
+++ b/engines/lastexpress/entities/mertens.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/mertens.h b/engines/lastexpress/entities/mertens.h
index 4cc58fd4ba..1b6d1d2f31 100644
--- a/engines/lastexpress/entities/mertens.h
+++ b/engines/lastexpress/entities/mertens.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/milos.cpp b/engines/lastexpress/entities/milos.cpp
index 76dc0aa0a0..601187b672 100644
--- a/engines/lastexpress/entities/milos.cpp
+++ b/engines/lastexpress/entities/milos.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/milos.h b/engines/lastexpress/entities/milos.h
index e8f95dc5ff..b7b716c4e7 100644
--- a/engines/lastexpress/entities/milos.h
+++ b/engines/lastexpress/entities/milos.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/mmeboutarel.cpp b/engines/lastexpress/entities/mmeboutarel.cpp
index 950644cb8f..f00fb7a9cb 100644
--- a/engines/lastexpress/entities/mmeboutarel.cpp
+++ b/engines/lastexpress/entities/mmeboutarel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/mmeboutarel.h b/engines/lastexpress/entities/mmeboutarel.h
index 0f6e6349fe..11d74b00f9 100644
--- a/engines/lastexpress/entities/mmeboutarel.h
+++ b/engines/lastexpress/entities/mmeboutarel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/pascale.cpp b/engines/lastexpress/entities/pascale.cpp
index 6e9f992390..b6356a0acb 100644
--- a/engines/lastexpress/entities/pascale.cpp
+++ b/engines/lastexpress/entities/pascale.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/pascale.h b/engines/lastexpress/entities/pascale.h
index eaf0f3ba0c..1b7777dec9 100644
--- a/engines/lastexpress/entities/pascale.h
+++ b/engines/lastexpress/entities/pascale.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/rebecca.cpp b/engines/lastexpress/entities/rebecca.cpp
index 8c779baeba..05211663bd 100644
--- a/engines/lastexpress/entities/rebecca.cpp
+++ b/engines/lastexpress/entities/rebecca.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/rebecca.h b/engines/lastexpress/entities/rebecca.h
index 885632f884..88a14e65d2 100644
--- a/engines/lastexpress/entities/rebecca.h
+++ b/engines/lastexpress/entities/rebecca.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/salko.cpp b/engines/lastexpress/entities/salko.cpp
index e8b4b4247b..26f512b900 100644
--- a/engines/lastexpress/entities/salko.cpp
+++ b/engines/lastexpress/entities/salko.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/salko.h b/engines/lastexpress/entities/salko.h
index 6ca73e39f6..0b672b9dba 100644
--- a/engines/lastexpress/entities/salko.h
+++ b/engines/lastexpress/entities/salko.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/servers0.cpp b/engines/lastexpress/entities/servers0.cpp
index 6323ef0ca8..590efa7157 100644
--- a/engines/lastexpress/entities/servers0.cpp
+++ b/engines/lastexpress/entities/servers0.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/servers0.h b/engines/lastexpress/entities/servers0.h
index 4c35637d65..70f06596b0 100644
--- a/engines/lastexpress/entities/servers0.h
+++ b/engines/lastexpress/entities/servers0.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/servers1.cpp b/engines/lastexpress/entities/servers1.cpp
index a8f4c0233c..153c2b66da 100644
--- a/engines/lastexpress/entities/servers1.cpp
+++ b/engines/lastexpress/entities/servers1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/servers1.h b/engines/lastexpress/entities/servers1.h
index c8f667ec5c..58566cd4d3 100644
--- a/engines/lastexpress/entities/servers1.h
+++ b/engines/lastexpress/entities/servers1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/sophie.cpp b/engines/lastexpress/entities/sophie.cpp
index 170090005f..ac4732556d 100644
--- a/engines/lastexpress/entities/sophie.cpp
+++ b/engines/lastexpress/entities/sophie.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/sophie.h b/engines/lastexpress/entities/sophie.h
index 188788bb9b..5589caf0f3 100644
--- a/engines/lastexpress/entities/sophie.h
+++ b/engines/lastexpress/entities/sophie.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/tables.cpp b/engines/lastexpress/entities/tables.cpp
index 4f8d2b954d..8701c012e4 100644
--- a/engines/lastexpress/entities/tables.cpp
+++ b/engines/lastexpress/entities/tables.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/tables.h b/engines/lastexpress/entities/tables.h
index c213aac978..2e93eb7ca5 100644
--- a/engines/lastexpress/entities/tables.h
+++ b/engines/lastexpress/entities/tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/tatiana.cpp b/engines/lastexpress/entities/tatiana.cpp
index d6bf4479e9..c6788fd4b2 100644
--- a/engines/lastexpress/entities/tatiana.cpp
+++ b/engines/lastexpress/entities/tatiana.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/tatiana.h b/engines/lastexpress/entities/tatiana.h
index 8ec69db5e9..ca2b800110 100644
--- a/engines/lastexpress/entities/tatiana.h
+++ b/engines/lastexpress/entities/tatiana.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/train.cpp b/engines/lastexpress/entities/train.cpp
index e3f530ef25..f707b02ccf 100644
--- a/engines/lastexpress/entities/train.cpp
+++ b/engines/lastexpress/entities/train.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/train.h b/engines/lastexpress/entities/train.h
index 4b8bc10c1a..1d94cba8f9 100644
--- a/engines/lastexpress/entities/train.h
+++ b/engines/lastexpress/entities/train.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/vassili.cpp b/engines/lastexpress/entities/vassili.cpp
index 67135c426f..2faaa30b6f 100644
--- a/engines/lastexpress/entities/vassili.cpp
+++ b/engines/lastexpress/entities/vassili.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/vassili.h b/engines/lastexpress/entities/vassili.h
index d006770f7b..dfdacf7920 100644
--- a/engines/lastexpress/entities/vassili.h
+++ b/engines/lastexpress/entities/vassili.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/verges.cpp b/engines/lastexpress/entities/verges.cpp
index f1e980842e..31b6e19c63 100644
--- a/engines/lastexpress/entities/verges.cpp
+++ b/engines/lastexpress/entities/verges.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/verges.h b/engines/lastexpress/entities/verges.h
index 93cc190d1e..dc902b376d 100644
--- a/engines/lastexpress/entities/verges.h
+++ b/engines/lastexpress/entities/verges.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/vesna.cpp b/engines/lastexpress/entities/vesna.cpp
index f29bce8b2b..6e9fb4f204 100644
--- a/engines/lastexpress/entities/vesna.cpp
+++ b/engines/lastexpress/entities/vesna.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/vesna.h b/engines/lastexpress/entities/vesna.h
index 025d45882e..8d255500be 100644
--- a/engines/lastexpress/entities/vesna.h
+++ b/engines/lastexpress/entities/vesna.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/yasmin.cpp b/engines/lastexpress/entities/yasmin.cpp
index 67963e50f6..e9c1c53a11 100644
--- a/engines/lastexpress/entities/yasmin.cpp
+++ b/engines/lastexpress/entities/yasmin.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/entities/yasmin.h b/engines/lastexpress/entities/yasmin.h
index 8fa8c10bb1..5ed735c9ac 100644
--- a/engines/lastexpress/entities/yasmin.h
+++ b/engines/lastexpress/entities/yasmin.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/eventhandler.h b/engines/lastexpress/eventhandler.h
index c561d57541..75263a8ec6 100644
--- a/engines/lastexpress/eventhandler.h
+++ b/engines/lastexpress/eventhandler.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fight.cpp b/engines/lastexpress/fight/fight.cpp
index 944b1cb4ac..47694dda3e 100644
--- a/engines/lastexpress/fight/fight.cpp
+++ b/engines/lastexpress/fight/fight.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fight.h b/engines/lastexpress/fight/fight.h
index fffb520789..5c6eff507a 100644
--- a/engines/lastexpress/fight/fight.h
+++ b/engines/lastexpress/fight/fight.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter.cpp b/engines/lastexpress/fight/fighter.cpp
index 4b1cddabd4..6fd2a6421c 100644
--- a/engines/lastexpress/fight/fighter.cpp
+++ b/engines/lastexpress/fight/fighter.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter.h b/engines/lastexpress/fight/fighter.h
index dad95af186..326610af1e 100644
--- a/engines/lastexpress/fight/fighter.h
+++ b/engines/lastexpress/fight/fighter.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_anna.cpp b/engines/lastexpress/fight/fighter_anna.cpp
index c7660cab1a..723bd38cf0 100644
--- a/engines/lastexpress/fight/fighter_anna.cpp
+++ b/engines/lastexpress/fight/fighter_anna.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_anna.h b/engines/lastexpress/fight/fighter_anna.h
index abb6f9dc64..667552b8dc 100644
--- a/engines/lastexpress/fight/fighter_anna.h
+++ b/engines/lastexpress/fight/fighter_anna.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_ivo.cpp b/engines/lastexpress/fight/fighter_ivo.cpp
index 87a52c6be4..7bd9968da2 100644
--- a/engines/lastexpress/fight/fighter_ivo.cpp
+++ b/engines/lastexpress/fight/fighter_ivo.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_ivo.h b/engines/lastexpress/fight/fighter_ivo.h
index ca54fea904..1988b4b8c4 100644
--- a/engines/lastexpress/fight/fighter_ivo.h
+++ b/engines/lastexpress/fight/fighter_ivo.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_milos.cpp b/engines/lastexpress/fight/fighter_milos.cpp
index 9f8e726165..5b98b87304 100644
--- a/engines/lastexpress/fight/fighter_milos.cpp
+++ b/engines/lastexpress/fight/fighter_milos.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_milos.h b/engines/lastexpress/fight/fighter_milos.h
index 2126dd1838..734177f3dc 100644
--- a/engines/lastexpress/fight/fighter_milos.h
+++ b/engines/lastexpress/fight/fighter_milos.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_salko.cpp b/engines/lastexpress/fight/fighter_salko.cpp
index 1082674235..c0d15ec183 100644
--- a/engines/lastexpress/fight/fighter_salko.cpp
+++ b/engines/lastexpress/fight/fighter_salko.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_salko.h b/engines/lastexpress/fight/fighter_salko.h
index 0a2a615867..365f28a808 100644
--- a/engines/lastexpress/fight/fighter_salko.h
+++ b/engines/lastexpress/fight/fighter_salko.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_vesna.cpp b/engines/lastexpress/fight/fighter_vesna.cpp
index 02aaa1c16c..eeb00b821b 100644
--- a/engines/lastexpress/fight/fighter_vesna.cpp
+++ b/engines/lastexpress/fight/fighter_vesna.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/fight/fighter_vesna.h b/engines/lastexpress/fight/fighter_vesna.h
index 5c8ec855ae..a706922555 100644
--- a/engines/lastexpress/fight/fighter_vesna.h
+++ b/engines/lastexpress/fight/fighter_vesna.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/action.cpp b/engines/lastexpress/game/action.cpp
index c6ea6f6c8a..986c56cb1b 100644
--- a/engines/lastexpress/game/action.cpp
+++ b/engines/lastexpress/game/action.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/action.h b/engines/lastexpress/game/action.h
index 3dad51d0d3..80de60511d 100644
--- a/engines/lastexpress/game/action.h
+++ b/engines/lastexpress/game/action.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/beetle.cpp b/engines/lastexpress/game/beetle.cpp
index d7a369ba40..a92d252f0a 100644
--- a/engines/lastexpress/game/beetle.cpp
+++ b/engines/lastexpress/game/beetle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/beetle.h b/engines/lastexpress/game/beetle.h
index 034ebbd557..0a9a836065 100644
--- a/engines/lastexpress/game/beetle.h
+++ b/engines/lastexpress/game/beetle.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/entities.cpp b/engines/lastexpress/game/entities.cpp
index fafbd7cb64..b4b5527f8d 100644
--- a/engines/lastexpress/game/entities.cpp
+++ b/engines/lastexpress/game/entities.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/entities.h b/engines/lastexpress/game/entities.h
index cacbc408c9..089edbf87f 100644
--- a/engines/lastexpress/game/entities.h
+++ b/engines/lastexpress/game/entities.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/inventory.cpp b/engines/lastexpress/game/inventory.cpp
index 11a76a77f0..9e02b3bc1d 100644
--- a/engines/lastexpress/game/inventory.cpp
+++ b/engines/lastexpress/game/inventory.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/inventory.h b/engines/lastexpress/game/inventory.h
index 242dfc30cc..f3ab94ccab 100644
--- a/engines/lastexpress/game/inventory.h
+++ b/engines/lastexpress/game/inventory.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/logic.cpp b/engines/lastexpress/game/logic.cpp
index 1a9c6b4123..7ba2b0ff85 100644
--- a/engines/lastexpress/game/logic.cpp
+++ b/engines/lastexpress/game/logic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/logic.h b/engines/lastexpress/game/logic.h
index b2d08cb06f..33180dfdd1 100644
--- a/engines/lastexpress/game/logic.h
+++ b/engines/lastexpress/game/logic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/object.cpp b/engines/lastexpress/game/object.cpp
index ad13a65199..31da650b9a 100644
--- a/engines/lastexpress/game/object.cpp
+++ b/engines/lastexpress/game/object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/object.h b/engines/lastexpress/game/object.h
index be9d63d6c5..78e8a84df3 100644
--- a/engines/lastexpress/game/object.h
+++ b/engines/lastexpress/game/object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/savegame.cpp b/engines/lastexpress/game/savegame.cpp
index 021dc40bb9..d9f2993c17 100644
--- a/engines/lastexpress/game/savegame.cpp
+++ b/engines/lastexpress/game/savegame.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/savegame.h b/engines/lastexpress/game/savegame.h
index 7e8095fde1..f374e18a44 100644
--- a/engines/lastexpress/game/savegame.h
+++ b/engines/lastexpress/game/savegame.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/savepoint.cpp b/engines/lastexpress/game/savepoint.cpp
index 8d14ec386b..b0186a4ccc 100644
--- a/engines/lastexpress/game/savepoint.cpp
+++ b/engines/lastexpress/game/savepoint.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/savepoint.h b/engines/lastexpress/game/savepoint.h
index 005133891a..068c54eb0f 100644
--- a/engines/lastexpress/game/savepoint.h
+++ b/engines/lastexpress/game/savepoint.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/state.cpp b/engines/lastexpress/game/state.cpp
index 02ede25595..e47eda5ebd 100644
--- a/engines/lastexpress/game/state.cpp
+++ b/engines/lastexpress/game/state.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/game/state.h b/engines/lastexpress/game/state.h
index 83d528d346..38cd851aaa 100644
--- a/engines/lastexpress/game/state.h
+++ b/engines/lastexpress/game/state.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/graphics.cpp b/engines/lastexpress/graphics.cpp
index 9ced38a2e1..74e1efaa8b 100644
--- a/engines/lastexpress/graphics.cpp
+++ b/engines/lastexpress/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/graphics.h b/engines/lastexpress/graphics.h
index 7db7e88989..843bfd6e22 100644
--- a/engines/lastexpress/graphics.h
+++ b/engines/lastexpress/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/helpers.h b/engines/lastexpress/helpers.h
index 02454be13d..6f94cf2a14 100644
--- a/engines/lastexpress/helpers.h
+++ b/engines/lastexpress/helpers.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/lastexpress.cpp b/engines/lastexpress/lastexpress.cpp
index bc1624d171..293c3ab725 100644
--- a/engines/lastexpress/lastexpress.cpp
+++ b/engines/lastexpress/lastexpress.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/lastexpress.h b/engines/lastexpress/lastexpress.h
index 1431b79b9f..b4098f3860 100644
--- a/engines/lastexpress/lastexpress.h
+++ b/engines/lastexpress/lastexpress.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/menu/clock.cpp b/engines/lastexpress/menu/clock.cpp
index dedf045940..fadb578de6 100644
--- a/engines/lastexpress/menu/clock.cpp
+++ b/engines/lastexpress/menu/clock.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/menu/clock.h b/engines/lastexpress/menu/clock.h
index 339a18604f..248f2439af 100644
--- a/engines/lastexpress/menu/clock.h
+++ b/engines/lastexpress/menu/clock.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/menu/menu.cpp b/engines/lastexpress/menu/menu.cpp
index c48e55bb55..cbd2a4a819 100644
--- a/engines/lastexpress/menu/menu.cpp
+++ b/engines/lastexpress/menu/menu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/menu/menu.h b/engines/lastexpress/menu/menu.h
index 4b84c065cb..5943c940ca 100644
--- a/engines/lastexpress/menu/menu.h
+++ b/engines/lastexpress/menu/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/menu/trainline.cpp b/engines/lastexpress/menu/trainline.cpp
index f819776163..fe6c7ca979 100644
--- a/engines/lastexpress/menu/trainline.cpp
+++ b/engines/lastexpress/menu/trainline.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/menu/trainline.h b/engines/lastexpress/menu/trainline.h
index af6a121e9c..bad01610e9 100644
--- a/engines/lastexpress/menu/trainline.h
+++ b/engines/lastexpress/menu/trainline.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/resource.cpp b/engines/lastexpress/resource.cpp
index 1d010355ac..2a48778c18 100644
--- a/engines/lastexpress/resource.cpp
+++ b/engines/lastexpress/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/resource.h b/engines/lastexpress/resource.h
index 90ac9b87ad..ddda4d6eb7 100644
--- a/engines/lastexpress/resource.h
+++ b/engines/lastexpress/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/shared.h b/engines/lastexpress/shared.h
index dae7928043..c0099db7ac 100644
--- a/engines/lastexpress/shared.h
+++ b/engines/lastexpress/shared.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/sound/entry.cpp b/engines/lastexpress/sound/entry.cpp
index 3d22657124..6bf1ebc9de 100644
--- a/engines/lastexpress/sound/entry.cpp
+++ b/engines/lastexpress/sound/entry.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/sound/entry.h b/engines/lastexpress/sound/entry.h
index a88b0b7210..d92b16a5dd 100644
--- a/engines/lastexpress/sound/entry.h
+++ b/engines/lastexpress/sound/entry.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/sound/queue.cpp b/engines/lastexpress/sound/queue.cpp
index 8904b48930..fe6d6f2251 100644
--- a/engines/lastexpress/sound/queue.cpp
+++ b/engines/lastexpress/sound/queue.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/sound/queue.h b/engines/lastexpress/sound/queue.h
index e1f9be1cf7..60c447596d 100644
--- a/engines/lastexpress/sound/queue.h
+++ b/engines/lastexpress/sound/queue.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/sound/sound.cpp b/engines/lastexpress/sound/sound.cpp
index ad61c2e0d9..5f55f4e74e 100644
--- a/engines/lastexpress/sound/sound.cpp
+++ b/engines/lastexpress/sound/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lastexpress/sound/sound.h b/engines/lastexpress/sound/sound.h
index 517543f470..81f1529286 100644
--- a/engines/lastexpress/sound/sound.h
+++ b/engines/lastexpress/sound/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/animseq.cpp b/engines/lure/animseq.cpp
index 8037563677..840b349fec 100644
--- a/engines/lure/animseq.cpp
+++ b/engines/lure/animseq.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/animseq.h b/engines/lure/animseq.h
index fde1fab921..a220356f92 100644
--- a/engines/lure/animseq.h
+++ b/engines/lure/animseq.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/debugger.cpp b/engines/lure/debugger.cpp
index 92f07a566e..bbaa68befa 100644
--- a/engines/lure/debugger.cpp
+++ b/engines/lure/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/debugger.h b/engines/lure/debugger.h
index a4d4d689c4..a5360f2ed8 100644
--- a/engines/lure/debugger.h
+++ b/engines/lure/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/decode.cpp b/engines/lure/decode.cpp
index 484126c43f..6ad723a8e6 100644
--- a/engines/lure/decode.cpp
+++ b/engines/lure/decode.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/decode.h b/engines/lure/decode.h
index 93f617af7e..6b5e49fa22 100644
--- a/engines/lure/decode.h
+++ b/engines/lure/decode.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/detection.cpp b/engines/lure/detection.cpp
index 64d26c4c04..a87fcf6945 100644
--- a/engines/lure/detection.cpp
+++ b/engines/lure/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/disk.cpp b/engines/lure/disk.cpp
index 552da73f18..eebf299497 100644
--- a/engines/lure/disk.cpp
+++ b/engines/lure/disk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/disk.h b/engines/lure/disk.h
index 1872fbd055..859e338c18 100644
--- a/engines/lure/disk.h
+++ b/engines/lure/disk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/events.cpp b/engines/lure/events.cpp
index fe60b56658..9b7e501d55 100644
--- a/engines/lure/events.cpp
+++ b/engines/lure/events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/events.h b/engines/lure/events.h
index dd3f82fe19..2a392c816d 100644
--- a/engines/lure/events.h
+++ b/engines/lure/events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/fights.cpp b/engines/lure/fights.cpp
index ab5d992bdb..ed3e2d7ef0 100644
--- a/engines/lure/fights.cpp
+++ b/engines/lure/fights.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/fights.h b/engines/lure/fights.h
index 89f49d8c6d..32a99d7b74 100644
--- a/engines/lure/fights.h
+++ b/engines/lure/fights.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/game.cpp b/engines/lure/game.cpp
index eaed7ebbe7..efd33b6176 100644
--- a/engines/lure/game.cpp
+++ b/engines/lure/game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/game.h b/engines/lure/game.h
index 42818e404b..ddf9fac24b 100644
--- a/engines/lure/game.h
+++ b/engines/lure/game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/hotspots.cpp b/engines/lure/hotspots.cpp
index d0b439677d..fbf93e1e14 100644
--- a/engines/lure/hotspots.cpp
+++ b/engines/lure/hotspots.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/hotspots.h b/engines/lure/hotspots.h
index 85d36dc138..5411a83832 100644
--- a/engines/lure/hotspots.h
+++ b/engines/lure/hotspots.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/intro.cpp b/engines/lure/intro.cpp
index ce330be7c4..fc02e10667 100644
--- a/engines/lure/intro.cpp
+++ b/engines/lure/intro.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/intro.h b/engines/lure/intro.h
index ad442f1564..bde073e43c 100644
--- a/engines/lure/intro.h
+++ b/engines/lure/intro.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/lure.cpp b/engines/lure/lure.cpp
index 3217cf039d..45fe0af025 100644
--- a/engines/lure/lure.cpp
+++ b/engines/lure/lure.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/lure.h b/engines/lure/lure.h
index 34bb9f1639..8a8299381e 100644
--- a/engines/lure/lure.h
+++ b/engines/lure/lure.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/luredefs.h b/engines/lure/luredefs.h
index 91fb650af3..7b39710798 100644
--- a/engines/lure/luredefs.h
+++ b/engines/lure/luredefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/memory.cpp b/engines/lure/memory.cpp
index 137a8f6bee..1d838b65d0 100644
--- a/engines/lure/memory.cpp
+++ b/engines/lure/memory.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/memory.h b/engines/lure/memory.h
index 05bf23a9ab..3594260901 100644
--- a/engines/lure/memory.h
+++ b/engines/lure/memory.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/menu.cpp b/engines/lure/menu.cpp
index 7564ce91a0..8867e8a626 100644
--- a/engines/lure/menu.cpp
+++ b/engines/lure/menu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,7 +31,7 @@
#include "lure/events.h"
#include "lure/lure.h"
-#if defined(_WIN32_WCE) || defined(__SYMBIAN32__) || defined(WEBOS) || defined(__ANDROID__)
+#if defined(_WIN32_WCE) || defined(__SYMBIAN32__) || defined(WEBOS) || defined(__ANDROID__) || defined(__WII__)
#define LURE_CLICKABLE_MENUS
#endif
diff --git a/engines/lure/menu.h b/engines/lure/menu.h
index b3016f0560..a6113f009b 100644
--- a/engines/lure/menu.h
+++ b/engines/lure/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/palette.cpp b/engines/lure/palette.cpp
index 3975561749..30a5752366 100644
--- a/engines/lure/palette.cpp
+++ b/engines/lure/palette.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/palette.h b/engines/lure/palette.h
index 2af1f55973..8e1e92ac8d 100644
--- a/engines/lure/palette.h
+++ b/engines/lure/palette.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/res.cpp b/engines/lure/res.cpp
index 9ec641140b..6b2705463d 100644
--- a/engines/lure/res.cpp
+++ b/engines/lure/res.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/res.h b/engines/lure/res.h
index a0a908f53d..9002ca3056 100644
--- a/engines/lure/res.h
+++ b/engines/lure/res.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/res_struct.cpp b/engines/lure/res_struct.cpp
index 15e7c1302d..5a4761c87b 100644
--- a/engines/lure/res_struct.cpp
+++ b/engines/lure/res_struct.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/res_struct.h b/engines/lure/res_struct.h
index a4d2f76cec..9190912f5b 100644
--- a/engines/lure/res_struct.h
+++ b/engines/lure/res_struct.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/room.cpp b/engines/lure/room.cpp
index 26d15dd025..1be95ba3d4 100644
--- a/engines/lure/room.cpp
+++ b/engines/lure/room.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/room.h b/engines/lure/room.h
index deafa28a66..c5eba7185e 100644
--- a/engines/lure/room.h
+++ b/engines/lure/room.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/screen.cpp b/engines/lure/screen.cpp
index 4eb6fd46a3..e867459f8b 100644
--- a/engines/lure/screen.cpp
+++ b/engines/lure/screen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/screen.h b/engines/lure/screen.h
index 2a2fa6b2f2..2e3b0d4e49 100644
--- a/engines/lure/screen.h
+++ b/engines/lure/screen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/scripts.cpp b/engines/lure/scripts.cpp
index 8afdaa5ad1..3df119a9da 100644
--- a/engines/lure/scripts.cpp
+++ b/engines/lure/scripts.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/scripts.h b/engines/lure/scripts.h
index 7bc8f8c950..2a400cc8d1 100644
--- a/engines/lure/scripts.h
+++ b/engines/lure/scripts.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/sound.cpp b/engines/lure/sound.cpp
index 298483bed8..bea0dbf9f4 100644
--- a/engines/lure/sound.cpp
+++ b/engines/lure/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/sound.h b/engines/lure/sound.h
index 365a7ccdb6..74b28c33b4 100644
--- a/engines/lure/sound.h
+++ b/engines/lure/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/strings.cpp b/engines/lure/strings.cpp
index 0c9f4b5352..dbe2f786b4 100644
--- a/engines/lure/strings.cpp
+++ b/engines/lure/strings.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/strings.h b/engines/lure/strings.h
index e32921ddb6..d2c2a03ae1 100644
--- a/engines/lure/strings.h
+++ b/engines/lure/strings.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/surface.cpp b/engines/lure/surface.cpp
index 0f13d87fbc..17ac17814f 100644
--- a/engines/lure/surface.cpp
+++ b/engines/lure/surface.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/lure/surface.h b/engines/lure/surface.h
index d56e37632b..3cda09bf56 100644
--- a/engines/lure/surface.h
+++ b/engines/lure/surface.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/console.cpp b/engines/made/console.cpp
index 0076b6a4f9..f3d6b3d274 100644
--- a/engines/made/console.cpp
+++ b/engines/made/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/console.h b/engines/made/console.h
index 8b8484cb5c..9a1e0b247b 100644
--- a/engines/made/console.h
+++ b/engines/made/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/database.cpp b/engines/made/database.cpp
index 7c8f9bdd0c..85a8a5ca4a 100644
--- a/engines/made/database.cpp
+++ b/engines/made/database.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/database.h b/engines/made/database.h
index 89b4b45357..57e9fecdd5 100644
--- a/engines/made/database.h
+++ b/engines/made/database.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/detection.cpp b/engines/made/detection.cpp
index c2c866ff34..7adc3e1f98 100644
--- a/engines/made/detection.cpp
+++ b/engines/made/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/graphics.cpp b/engines/made/graphics.cpp
index a8e33774f6..100f7b5c46 100644
--- a/engines/made/graphics.cpp
+++ b/engines/made/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/graphics.h b/engines/made/graphics.h
index 15704c7792..7f079891a2 100644
--- a/engines/made/graphics.h
+++ b/engines/made/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/made.cpp b/engines/made/made.cpp
index 3e192cb04c..af8156fc3e 100644
--- a/engines/made/made.cpp
+++ b/engines/made/made.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/made.h b/engines/made/made.h
index c0b86bb0a8..da251c6242 100644
--- a/engines/made/made.h
+++ b/engines/made/made.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/music.cpp b/engines/made/music.cpp
index 04ac13eeda..b2917b58ed 100644
--- a/engines/made/music.cpp
+++ b/engines/made/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/music.h b/engines/made/music.h
index 3cfbd50ce7..95d1bd35c1 100644
--- a/engines/made/music.h
+++ b/engines/made/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/pmvplayer.cpp b/engines/made/pmvplayer.cpp
index 573ff7faf1..3cac017e10 100644
--- a/engines/made/pmvplayer.cpp
+++ b/engines/made/pmvplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/pmvplayer.h b/engines/made/pmvplayer.h
index 3821ca8de1..cf06d67391 100644
--- a/engines/made/pmvplayer.h
+++ b/engines/made/pmvplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/redreader.cpp b/engines/made/redreader.cpp
index 7e92cfe71b..f5e6ca85b3 100644
--- a/engines/made/redreader.cpp
+++ b/engines/made/redreader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/redreader.h b/engines/made/redreader.h
index 3025d31ce1..28505d09c0 100644
--- a/engines/made/redreader.h
+++ b/engines/made/redreader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/resource.cpp b/engines/made/resource.cpp
index 28fee8ce57..1bb328c7a2 100644
--- a/engines/made/resource.cpp
+++ b/engines/made/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/resource.h b/engines/made/resource.h
index a789069272..c573ec75d7 100644
--- a/engines/made/resource.h
+++ b/engines/made/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/screen.cpp b/engines/made/screen.cpp
index 30848e8ec1..c27b781dda 100644
--- a/engines/made/screen.cpp
+++ b/engines/made/screen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/screen.h b/engines/made/screen.h
index 266ac3811d..35d80663c6 100644
--- a/engines/made/screen.h
+++ b/engines/made/screen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/screenfx.cpp b/engines/made/screenfx.cpp
index b89b3af802..2a155d67ac 100644
--- a/engines/made/screenfx.cpp
+++ b/engines/made/screenfx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/screenfx.h b/engines/made/screenfx.h
index 1fcdd5f0d4..fd216bfd63 100644
--- a/engines/made/screenfx.h
+++ b/engines/made/screenfx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/script.cpp b/engines/made/script.cpp
index 7658d20eb5..20fa026a40 100644
--- a/engines/made/script.cpp
+++ b/engines/made/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/script.h b/engines/made/script.h
index f3db43485f..bf75bc0875 100644
--- a/engines/made/script.h
+++ b/engines/made/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/scriptfuncs.cpp b/engines/made/scriptfuncs.cpp
index 0e3b50aa98..efa765c7eb 100644
--- a/engines/made/scriptfuncs.cpp
+++ b/engines/made/scriptfuncs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/scriptfuncs.h b/engines/made/scriptfuncs.h
index 03d29c4592..9db5586adf 100644
--- a/engines/made/scriptfuncs.h
+++ b/engines/made/scriptfuncs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/sound.cpp b/engines/made/sound.cpp
index 176f8688bd..91e855cbf5 100644
--- a/engines/made/sound.cpp
+++ b/engines/made/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/made/sound.h b/engines/made/sound.h
index b8399fd90a..6ffca13aaa 100644
--- a/engines/made/sound.h
+++ b/engines/made/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/metaengine.h b/engines/metaengine.h
index ffa682fc53..41f3ec4cba 100644
--- a/engines/metaengine.h
+++ b/engines/metaengine.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef ENGINES_METAENGINE_H
diff --git a/engines/mohawk/bitmap.cpp b/engines/mohawk/bitmap.cpp
index b321e043d9..6435daf46f 100644
--- a/engines/mohawk/bitmap.cpp
+++ b/engines/mohawk/bitmap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -29,7 +29,7 @@
#include "common/substream.h"
#include "common/system.h"
#include "common/textconsole.h"
-#include "graphics/decoders/bmp.h"
+#include "image/bmp.h"
namespace Mohawk {
@@ -635,7 +635,7 @@ MohawkSurface *MystBitmap::decodeImage(Common::SeekableReadStream *stream) {
Common::SeekableReadStream *bmpStream = decompressLZ(stream, uncompressedSize);
delete stream;
- Graphics::BitmapDecoder bitmapDecoder;
+ Image::BitmapDecoder bitmapDecoder;
if (!bitmapDecoder.loadStream(*bmpStream))
error("Could not decode Myst bitmap");
diff --git a/engines/mohawk/bitmap.h b/engines/mohawk/bitmap.h
index 73c117b5c7..ea8664f39d 100644
--- a/engines/mohawk/bitmap.h
+++ b/engines/mohawk/bitmap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/console.cpp b/engines/mohawk/console.cpp
index ce22132cee..2e83eb3328 100644
--- a/engines/mohawk/console.cpp
+++ b/engines/mohawk/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/console.h b/engines/mohawk/console.h
index cdb4e1bedf..af01c0d1e0 100644
--- a/engines/mohawk/console.h
+++ b/engines/mohawk/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime.cpp b/engines/mohawk/cstime.cpp
index 0f69d50a22..3b26378819 100644
--- a/engines/mohawk/cstime.cpp
+++ b/engines/mohawk/cstime.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime.h b/engines/mohawk/cstime.h
index db06b9791e..f95222d3a1 100644
--- a/engines/mohawk/cstime.h
+++ b/engines/mohawk/cstime.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_cases.cpp b/engines/mohawk/cstime_cases.cpp
index c0a8dfc0e3..722d82a9f2 100644
--- a/engines/mohawk/cstime_cases.cpp
+++ b/engines/mohawk/cstime_cases.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_cases.h b/engines/mohawk/cstime_cases.h
index 1ac9abf87e..ba1231784a 100644
--- a/engines/mohawk/cstime_cases.h
+++ b/engines/mohawk/cstime_cases.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_game.cpp b/engines/mohawk/cstime_game.cpp
index 91d2f895c0..8eced701c3 100644
--- a/engines/mohawk/cstime_game.cpp
+++ b/engines/mohawk/cstime_game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_game.h b/engines/mohawk/cstime_game.h
index 88e813c999..6c082fc4d2 100644
--- a/engines/mohawk/cstime_game.h
+++ b/engines/mohawk/cstime_game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_graphics.cpp b/engines/mohawk/cstime_graphics.cpp
index 3a1452e67c..29336525da 100644
--- a/engines/mohawk/cstime_graphics.cpp
+++ b/engines/mohawk/cstime_graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_graphics.h b/engines/mohawk/cstime_graphics.h
index 5f034f47f4..35d5882bf0 100644
--- a/engines/mohawk/cstime_graphics.h
+++ b/engines/mohawk/cstime_graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_ui.cpp b/engines/mohawk/cstime_ui.cpp
index 6d5e5dd3ef..f3fe27a966 100644
--- a/engines/mohawk/cstime_ui.cpp
+++ b/engines/mohawk/cstime_ui.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_ui.h b/engines/mohawk/cstime_ui.h
index 3154d4b2ef..47e03081d2 100644
--- a/engines/mohawk/cstime_ui.h
+++ b/engines/mohawk/cstime_ui.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_view.cpp b/engines/mohawk/cstime_view.cpp
index 37c418f416..7879175bb0 100644
--- a/engines/mohawk/cstime_view.cpp
+++ b/engines/mohawk/cstime_view.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cstime_view.h b/engines/mohawk/cstime_view.h
index ae3283771d..0005d906f3 100644
--- a/engines/mohawk/cstime_view.h
+++ b/engines/mohawk/cstime_view.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cursors.cpp b/engines/mohawk/cursors.cpp
index f70efde5fb..f1baac02e2 100644
--- a/engines/mohawk/cursors.cpp
+++ b/engines/mohawk/cursors.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/cursors.h b/engines/mohawk/cursors.h
index 7bfa491904..c41b5c273e 100644
--- a/engines/mohawk/cursors.h
+++ b/engines/mohawk/cursors.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/detection.cpp b/engines/mohawk/detection.cpp
index ef07de0180..926c296257 100644
--- a/engines/mohawk/detection.cpp
+++ b/engines/mohawk/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/detection_tables.h b/engines/mohawk/detection_tables.h
index 3b925af5a9..8a9c0f70fa 100644
--- a/engines/mohawk/detection_tables.h
+++ b/engines/mohawk/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/dialogs.cpp b/engines/mohawk/dialogs.cpp
index 5f5a3b3800..ffc455286f 100644
--- a/engines/mohawk/dialogs.cpp
+++ b/engines/mohawk/dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/dialogs.h b/engines/mohawk/dialogs.h
index 844c01ad26..7470cd3acd 100644
--- a/engines/mohawk/dialogs.h
+++ b/engines/mohawk/dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/graphics.cpp b/engines/mohawk/graphics.cpp
index 0f9a62c891..ea9b57ae17 100644
--- a/engines/mohawk/graphics.cpp
+++ b/engines/mohawk/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/graphics.h b/engines/mohawk/graphics.h
index 51d25db5d9..5f9b523e9a 100644
--- a/engines/mohawk/graphics.h
+++ b/engines/mohawk/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/installer_archive.cpp b/engines/mohawk/installer_archive.cpp
index 5af95f27e3..0abc930683 100644
--- a/engines/mohawk/installer_archive.cpp
+++ b/engines/mohawk/installer_archive.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/installer_archive.h b/engines/mohawk/installer_archive.h
index 89d2d85f8d..c3212d7f7c 100644
--- a/engines/mohawk/installer_archive.h
+++ b/engines/mohawk/installer_archive.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/livingbooks.cpp b/engines/mohawk/livingbooks.cpp
index 634ff441b6..998ef048f6 100644
--- a/engines/mohawk/livingbooks.cpp
+++ b/engines/mohawk/livingbooks.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/livingbooks.h b/engines/mohawk/livingbooks.h
index 615fcd0e16..1a265a1a02 100644
--- a/engines/mohawk/livingbooks.h
+++ b/engines/mohawk/livingbooks.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/livingbooks_code.cpp b/engines/mohawk/livingbooks_code.cpp
index c45efb2c39..6dcd8c3ce7 100644
--- a/engines/mohawk/livingbooks_code.cpp
+++ b/engines/mohawk/livingbooks_code.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/livingbooks_code.h b/engines/mohawk/livingbooks_code.h
index c9d9ae06e6..080377ce99 100644
--- a/engines/mohawk/livingbooks_code.h
+++ b/engines/mohawk/livingbooks_code.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/livingbooks_graphics.cpp b/engines/mohawk/livingbooks_graphics.cpp
index fb764fa15b..fae0c99f6e 100644
--- a/engines/mohawk/livingbooks_graphics.cpp
+++ b/engines/mohawk/livingbooks_graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/livingbooks_graphics.h b/engines/mohawk/livingbooks_graphics.h
index 3e2609750a..c76f92f641 100644
--- a/engines/mohawk/livingbooks_graphics.h
+++ b/engines/mohawk/livingbooks_graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/livingbooks_lbx.cpp b/engines/mohawk/livingbooks_lbx.cpp
index dcf8caa4a5..b5f62704a1 100644
--- a/engines/mohawk/livingbooks_lbx.cpp
+++ b/engines/mohawk/livingbooks_lbx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/livingbooks_lbx.h b/engines/mohawk/livingbooks_lbx.h
index 3cca0a8e82..f9457c1425 100644
--- a/engines/mohawk/livingbooks_lbx.h
+++ b/engines/mohawk/livingbooks_lbx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/mohawk.cpp b/engines/mohawk/mohawk.cpp
index cb419064c0..d740d9479a 100644
--- a/engines/mohawk/mohawk.cpp
+++ b/engines/mohawk/mohawk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/mohawk.h b/engines/mohawk/mohawk.h
index 2f0e570d56..6fa733e38e 100644
--- a/engines/mohawk/mohawk.h
+++ b/engines/mohawk/mohawk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst.cpp b/engines/mohawk/myst.cpp
index 975c6c2a21..7634e8d88a 100644
--- a/engines/mohawk/myst.cpp
+++ b/engines/mohawk/myst.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst.h b/engines/mohawk/myst.h
index a268c19737..4d86642652 100644
--- a/engines/mohawk/myst.h
+++ b/engines/mohawk/myst.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_areas.cpp b/engines/mohawk/myst_areas.cpp
index 12a2c7f44c..4a3001774a 100644
--- a/engines/mohawk/myst_areas.cpp
+++ b/engines/mohawk/myst_areas.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_areas.h b/engines/mohawk/myst_areas.h
index 62af5ec4cf..97ec882497 100644
--- a/engines/mohawk/myst_areas.h
+++ b/engines/mohawk/myst_areas.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_graphics.cpp b/engines/mohawk/myst_graphics.cpp
index 6a292c66e2..9ea9f15444 100644
--- a/engines/mohawk/myst_graphics.cpp
+++ b/engines/mohawk/myst_graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -28,8 +28,7 @@
#include "common/system.h"
#include "common/textconsole.h"
#include "engines/util.h"
-#include "graphics/decoders/jpeg.h"
-#include "graphics/decoders/pict.h"
+#include "image/pict.h"
namespace Mohawk {
@@ -94,7 +93,7 @@ MohawkSurface *MystGraphics::decodeImage(uint16 id) {
MohawkSurface *mhkSurface = 0;
if (isPict) {
- Graphics::PICTDecoder pict;
+ Image::PICTDecoder pict;
if (!pict.loadStream(*dataStream))
error("Could not decode Myst ME PICT");
diff --git a/engines/mohawk/myst_graphics.h b/engines/mohawk/myst_graphics.h
index 4bbc8d5b8c..1f70320bf6 100644
--- a/engines/mohawk/myst_graphics.h
+++ b/engines/mohawk/myst_graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_scripts.cpp b/engines/mohawk/myst_scripts.cpp
index c1b75df4cf..15d74a2253 100644
--- a/engines/mohawk/myst_scripts.cpp
+++ b/engines/mohawk/myst_scripts.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_scripts.h b/engines/mohawk/myst_scripts.h
index b75da0801a..7d8165c762 100644
--- a/engines/mohawk/myst_scripts.h
+++ b/engines/mohawk/myst_scripts.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/channelwood.cpp b/engines/mohawk/myst_stacks/channelwood.cpp
index 63ba5f7c85..2dd5745550 100644
--- a/engines/mohawk/myst_stacks/channelwood.cpp
+++ b/engines/mohawk/myst_stacks/channelwood.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/channelwood.h b/engines/mohawk/myst_stacks/channelwood.h
index a3ea406003..bd5d7ffe94 100644
--- a/engines/mohawk/myst_stacks/channelwood.h
+++ b/engines/mohawk/myst_stacks/channelwood.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/credits.cpp b/engines/mohawk/myst_stacks/credits.cpp
index 192e55d5e3..b9ff8b26aa 100644
--- a/engines/mohawk/myst_stacks/credits.cpp
+++ b/engines/mohawk/myst_stacks/credits.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/credits.h b/engines/mohawk/myst_stacks/credits.h
index a1f8b0a7d8..3c0f969203 100644
--- a/engines/mohawk/myst_stacks/credits.h
+++ b/engines/mohawk/myst_stacks/credits.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/demo.cpp b/engines/mohawk/myst_stacks/demo.cpp
index 9f393ea401..848736e37c 100644
--- a/engines/mohawk/myst_stacks/demo.cpp
+++ b/engines/mohawk/myst_stacks/demo.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/demo.h b/engines/mohawk/myst_stacks/demo.h
index c3e57cf7ae..f19b9a6c2c 100644
--- a/engines/mohawk/myst_stacks/demo.h
+++ b/engines/mohawk/myst_stacks/demo.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/dni.cpp b/engines/mohawk/myst_stacks/dni.cpp
index d103105c2d..3eb3c40cbb 100644
--- a/engines/mohawk/myst_stacks/dni.cpp
+++ b/engines/mohawk/myst_stacks/dni.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/dni.h b/engines/mohawk/myst_stacks/dni.h
index 7f04287082..3dc4645bd3 100644
--- a/engines/mohawk/myst_stacks/dni.h
+++ b/engines/mohawk/myst_stacks/dni.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/intro.cpp b/engines/mohawk/myst_stacks/intro.cpp
index 71733227ac..2a33379198 100644
--- a/engines/mohawk/myst_stacks/intro.cpp
+++ b/engines/mohawk/myst_stacks/intro.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/intro.h b/engines/mohawk/myst_stacks/intro.h
index 9fe3920e53..a6c4a594d2 100644
--- a/engines/mohawk/myst_stacks/intro.h
+++ b/engines/mohawk/myst_stacks/intro.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/makingof.cpp b/engines/mohawk/myst_stacks/makingof.cpp
index b5ad647381..1059fd0c5e 100644
--- a/engines/mohawk/myst_stacks/makingof.cpp
+++ b/engines/mohawk/myst_stacks/makingof.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/makingof.h b/engines/mohawk/myst_stacks/makingof.h
index d4bc0fd9f2..79ef913bcf 100644
--- a/engines/mohawk/myst_stacks/makingof.h
+++ b/engines/mohawk/myst_stacks/makingof.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/mechanical.cpp b/engines/mohawk/myst_stacks/mechanical.cpp
index 43e9bcfed5..3181b78ae1 100644
--- a/engines/mohawk/myst_stacks/mechanical.cpp
+++ b/engines/mohawk/myst_stacks/mechanical.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/mechanical.h b/engines/mohawk/myst_stacks/mechanical.h
index 7f3d5143e4..6360b2be2d 100644
--- a/engines/mohawk/myst_stacks/mechanical.h
+++ b/engines/mohawk/myst_stacks/mechanical.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/myst.cpp b/engines/mohawk/myst_stacks/myst.cpp
index dc5f433ce7..c500df5ad3 100644
--- a/engines/mohawk/myst_stacks/myst.cpp
+++ b/engines/mohawk/myst_stacks/myst.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/myst.h b/engines/mohawk/myst_stacks/myst.h
index de88843d59..a83609f640 100644
--- a/engines/mohawk/myst_stacks/myst.h
+++ b/engines/mohawk/myst_stacks/myst.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/preview.cpp b/engines/mohawk/myst_stacks/preview.cpp
index 75e870281e..4cae4aaca7 100644
--- a/engines/mohawk/myst_stacks/preview.cpp
+++ b/engines/mohawk/myst_stacks/preview.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/preview.h b/engines/mohawk/myst_stacks/preview.h
index 706220e8ed..0959e935f5 100644
--- a/engines/mohawk/myst_stacks/preview.h
+++ b/engines/mohawk/myst_stacks/preview.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/selenitic.cpp b/engines/mohawk/myst_stacks/selenitic.cpp
index a941b14eaa..8b95c7fa53 100644
--- a/engines/mohawk/myst_stacks/selenitic.cpp
+++ b/engines/mohawk/myst_stacks/selenitic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/selenitic.h b/engines/mohawk/myst_stacks/selenitic.h
index d314c4d810..c669d01012 100644
--- a/engines/mohawk/myst_stacks/selenitic.h
+++ b/engines/mohawk/myst_stacks/selenitic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/slides.cpp b/engines/mohawk/myst_stacks/slides.cpp
index 720926904a..a1413f0d71 100644
--- a/engines/mohawk/myst_stacks/slides.cpp
+++ b/engines/mohawk/myst_stacks/slides.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/slides.h b/engines/mohawk/myst_stacks/slides.h
index 9fb76728b6..fb7868a03c 100644
--- a/engines/mohawk/myst_stacks/slides.h
+++ b/engines/mohawk/myst_stacks/slides.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/stoneship.cpp b/engines/mohawk/myst_stacks/stoneship.cpp
index 1359685302..710c36ac8d 100644
--- a/engines/mohawk/myst_stacks/stoneship.cpp
+++ b/engines/mohawk/myst_stacks/stoneship.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_stacks/stoneship.h b/engines/mohawk/myst_stacks/stoneship.h
index 4125412b4d..4e1b42f26b 100644
--- a/engines/mohawk/myst_stacks/stoneship.h
+++ b/engines/mohawk/myst_stacks/stoneship.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_state.cpp b/engines/mohawk/myst_state.cpp
index 3a8d233a26..d07aa9d5ec 100644
--- a/engines/mohawk/myst_state.cpp
+++ b/engines/mohawk/myst_state.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/myst_state.h b/engines/mohawk/myst_state.h
index c7a6c0b4ac..b07a0f2469 100644
--- a/engines/mohawk/myst_state.h
+++ b/engines/mohawk/myst_state.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/resource.cpp b/engines/mohawk/resource.cpp
index d7e829118a..4a4b78e391 100644
--- a/engines/mohawk/resource.cpp
+++ b/engines/mohawk/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/resource.h b/engines/mohawk/resource.h
index f2ead7af65..d9074a5b73 100644
--- a/engines/mohawk/resource.h
+++ b/engines/mohawk/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/resource_cache.cpp b/engines/mohawk/resource_cache.cpp
index e73d8c43d3..0c19934278 100644
--- a/engines/mohawk/resource_cache.cpp
+++ b/engines/mohawk/resource_cache.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/resource_cache.h b/engines/mohawk/resource_cache.h
index b7eac9ebd7..b3c5bf7bb9 100644
--- a/engines/mohawk/resource_cache.h
+++ b/engines/mohawk/resource_cache.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven.cpp b/engines/mohawk/riven.cpp
index 71aa371073..e1059bebaa 100644
--- a/engines/mohawk/riven.cpp
+++ b/engines/mohawk/riven.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven.h b/engines/mohawk/riven.h
index 961d85d61a..c22b9f7f87 100644
--- a/engines/mohawk/riven.h
+++ b/engines/mohawk/riven.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_external.cpp b/engines/mohawk/riven_external.cpp
index 384e89a4cf..10dcfd9fa7 100644
--- a/engines/mohawk/riven_external.cpp
+++ b/engines/mohawk/riven_external.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_external.h b/engines/mohawk/riven_external.h
index 9f076325a2..58dfde1a00 100644
--- a/engines/mohawk/riven_external.h
+++ b/engines/mohawk/riven_external.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_graphics.cpp b/engines/mohawk/riven_graphics.cpp
index cd15960b85..615b2fdadb 100644
--- a/engines/mohawk/riven_graphics.cpp
+++ b/engines/mohawk/riven_graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_graphics.h b/engines/mohawk/riven_graphics.h
index 48dda28afd..577e5e6911 100644
--- a/engines/mohawk/riven_graphics.h
+++ b/engines/mohawk/riven_graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_saveload.cpp b/engines/mohawk/riven_saveload.cpp
index f5bf7782d4..d97d0e174b 100644
--- a/engines/mohawk/riven_saveload.cpp
+++ b/engines/mohawk/riven_saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_saveload.h b/engines/mohawk/riven_saveload.h
index 37b73c26c6..a6ddce5713 100644
--- a/engines/mohawk/riven_saveload.h
+++ b/engines/mohawk/riven_saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_scripts.cpp b/engines/mohawk/riven_scripts.cpp
index 352a018990..06b6afdf30 100644
--- a/engines/mohawk/riven_scripts.cpp
+++ b/engines/mohawk/riven_scripts.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_scripts.h b/engines/mohawk/riven_scripts.h
index 6df4a2e523..b669cd5081 100644
--- a/engines/mohawk/riven_scripts.h
+++ b/engines/mohawk/riven_scripts.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/riven_vars.cpp b/engines/mohawk/riven_vars.cpp
index 8ddb76eec9..1cd748d8d6 100644
--- a/engines/mohawk/riven_vars.cpp
+++ b/engines/mohawk/riven_vars.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/sound.cpp b/engines/mohawk/sound.cpp
index f92bebf10e..6f18d7178e 100644
--- a/engines/mohawk/sound.cpp
+++ b/engines/mohawk/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/sound.h b/engines/mohawk/sound.h
index 12a59cdedf..49f6751072 100644
--- a/engines/mohawk/sound.h
+++ b/engines/mohawk/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/video.cpp b/engines/mohawk/video.cpp
index b7e06a2b9f..cebb72e24f 100644
--- a/engines/mohawk/video.cpp
+++ b/engines/mohawk/video.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -316,7 +316,7 @@ void VideoManager::clearMLST() {
VideoHandle VideoManager::playMovieRiven(uint16 id) {
for (uint16 i = 0; i < _mlstRecords.size(); i++)
if (_mlstRecords[i].code == id) {
- debug(1, "Play tMOV %d (non-blocking) at (%d, %d) %s", _mlstRecords[i].movieID, _mlstRecords[i].left, _mlstRecords[i].top, _mlstRecords[i].loop != 0 ? "looping" : "non-looping");
+ debug(1, "Play tMOV %d (non-blocking) at (%d, %d) %s, Volume = %d", _mlstRecords[i].movieID, _mlstRecords[i].left, _mlstRecords[i].top, _mlstRecords[i].loop != 0 ? "looping" : "non-looping", _mlstRecords[i].volume);
return createVideoHandle(_mlstRecords[i].movieID, _mlstRecords[i].left, _mlstRecords[i].top, _mlstRecords[i].loop != 0, _mlstRecords[i].volume);
}
@@ -326,7 +326,7 @@ VideoHandle VideoManager::playMovieRiven(uint16 id) {
void VideoManager::playMovieBlockingRiven(uint16 id) {
for (uint16 i = 0; i < _mlstRecords.size(); i++)
if (_mlstRecords[i].code == id) {
- debug(1, "Play tMOV %d (blocking) at (%d, %d)", _mlstRecords[i].movieID, _mlstRecords[i].left, _mlstRecords[i].top);
+ debug(1, "Play tMOV %d (blocking) at (%d, %d), Volume = %d", _mlstRecords[i].movieID, _mlstRecords[i].left, _mlstRecords[i].top, _mlstRecords[i].volume);
VideoHandle videoHandle = createVideoHandle(_mlstRecords[i].movieID, _mlstRecords[i].left, _mlstRecords[i].top, false);
waitUntilMovieEnds(videoHandle);
return;
@@ -373,7 +373,7 @@ void VideoManager::disableAllMovies() {
_videoStreams[i].enabled = false;
}
-VideoHandle VideoManager::createVideoHandle(uint16 id, uint16 x, uint16 y, bool loop, byte volume) {
+VideoHandle VideoManager::createVideoHandle(uint16 id, uint16 x, uint16 y, bool loop, uint16 volume) {
// First, check to see if that video is already playing
for (uint32 i = 0; i < _videoStreams.size(); i++)
if (_videoStreams[i].id == id)
@@ -383,7 +383,7 @@ VideoHandle VideoManager::createVideoHandle(uint16 id, uint16 x, uint16 y, bool
Video::QuickTimeDecoder *decoder = new Video::QuickTimeDecoder();
decoder->setChunkBeginOffset(_vm->getResourceOffset(ID_TMOV, id));
decoder->loadStream(_vm->getResource(ID_TMOV, id));
- decoder->setVolume(volume);
+ decoder->setVolume((volume >= 256) ? 255 : volume);
VideoEntry entry;
entry.clear();
diff --git a/engines/mohawk/video.h b/engines/mohawk/video.h
index 2c4c827aa8..43181e3e6c 100644
--- a/engines/mohawk/video.h
+++ b/engines/mohawk/video.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -122,7 +122,7 @@ private:
// Keep tabs on any videos playing
Common::Array<VideoEntry> _videoStreams;
- VideoHandle createVideoHandle(uint16 id, uint16 x, uint16 y, bool loop, byte volume = 0xff);
+ VideoHandle createVideoHandle(uint16 id, uint16 x, uint16 y, bool loop, uint16 volume = 0xff);
VideoHandle createVideoHandle(const Common::String &filename, uint16 x, uint16 y, bool loop, byte volume = 0xff);
};
diff --git a/engines/mohawk/view.cpp b/engines/mohawk/view.cpp
index 719c288af5..1aaf32ea78 100644
--- a/engines/mohawk/view.cpp
+++ b/engines/mohawk/view.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mohawk/view.h b/engines/mohawk/view.h
index 06ffe605a3..47853f056f 100644
--- a/engines/mohawk/view.h
+++ b/engines/mohawk/view.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/actions.cpp b/engines/mortevielle/actions.cpp
index c5d55066ba..556475d515 100644
--- a/engines/mortevielle/actions.cpp
+++ b/engines/mortevielle/actions.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -481,13 +481,24 @@ void MortevielleEngine::fctLook() {
}
return;
}
+
int cx = _coreVar._currPlace;
- if (_coreVar._currPlace == CHAPEL)
+ switch (_coreVar._currPlace) {
+ case CHAPEL:
cx = 17;
- if ((_coreVar._currPlace > MANOR_FRONT) && (_coreVar._currPlace < DOOR))
+ break;
+ case MANOR_BACK:
+ case INSIDE_WELL:
+ case WELL:
cx -= 4;
- if (_coreVar._currPlace == ROOM26)
+ break;
+ case ROOM26:
cx = 21;
+ break;
+ default:
+ break;
+ }
+
_crep = _tabdon[kArega + (cx * 7) + _num - 1];
if ((_coreVar._currPlace == ATTIC) && (_num == 8))
_crep = 126;
diff --git a/engines/mortevielle/debugger.cpp b/engines/mortevielle/debugger.cpp
index 4b39462cde..c8f75918ab 100644
--- a/engines/mortevielle/debugger.cpp
+++ b/engines/mortevielle/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/debugger.h b/engines/mortevielle/debugger.h
index 6e1006681c..66f5afef9d 100644
--- a/engines/mortevielle/debugger.h
+++ b/engines/mortevielle/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/detection.cpp b/engines/mortevielle/detection.cpp
index ee9cb40c99..b6c27e6b12 100644
--- a/engines/mortevielle/detection.cpp
+++ b/engines/mortevielle/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/detection_tables.h b/engines/mortevielle/detection_tables.h
index 8d0cd5630c..3e1e5aaefe 100644
--- a/engines/mortevielle/detection_tables.h
+++ b/engines/mortevielle/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/dialogs.cpp b/engines/mortevielle/dialogs.cpp
index 09a4227cc0..89098fabe5 100644
--- a/engines/mortevielle/dialogs.cpp
+++ b/engines/mortevielle/dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -292,7 +292,7 @@ bool DialogManager::showKnowledgeCheck() {
Common::String choiceArray[15];
- int currChoice, prevChoice;
+ int currChoice;
int correctCount = 0;
for (int indx = 0; indx < 10; ++indx) {
@@ -317,7 +317,7 @@ bool DialogManager::showKnowledgeCheck() {
int optionPosY = 35;
int maxLength = 0;
- prevChoice = 1;
+ int prevChoice = 1;
for (int j = firstOption; j <= lastOption; ++j, ++prevChoice) {
tmpStr = _vm->getString(j);
if ((int) tmpStr.size() > maxLength)
diff --git a/engines/mortevielle/dialogs.h b/engines/mortevielle/dialogs.h
index 03dfc78023..abd8ee2493 100644
--- a/engines/mortevielle/dialogs.h
+++ b/engines/mortevielle/dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/graphics.cpp b/engines/mortevielle/graphics.cpp
index 18b0e7f1c1..553c1a759e 100644
--- a/engines/mortevielle/graphics.cpp
+++ b/engines/mortevielle/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/graphics.h b/engines/mortevielle/graphics.h
index 7f0d4823cb..d29d9b2d8d 100644
--- a/engines/mortevielle/graphics.h
+++ b/engines/mortevielle/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/menu.cpp b/engines/mortevielle/menu.cpp
index 7979e3ce7f..c0b81b252a 100644
--- a/engines/mortevielle/menu.cpp
+++ b/engines/mortevielle/menu.cpp
@@ -2,18 +2,18 @@
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
- * file _distributed with this source _distribution.
+ * file distributed with this source distribution.
*
- * This program is free software; you can re_distribute it and/or
+ * This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
- * This program is _distributed in the hope that it will be useful,
+ *
+ * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -141,19 +141,19 @@ void Menu::readVerbNums(Common::File &f, int dataSize) {
_actionMenu[1]._actionId = _opcodeSHide & 0xFF;
_actionMenu[2]._menuId = _opcodeAttach >> 8;
- _actionMenu[2]._actionId = _opcodeAttach & 0xFF;
+ _actionMenu[2]._actionId = _opcodeAttach & 0xFF;
_actionMenu[3]._menuId = _opcodeForce >> 8;
- _actionMenu[3]._actionId = _opcodeForce & 0xFF;
+ _actionMenu[3]._actionId = _opcodeForce & 0xFF;
_actionMenu[4]._menuId = _opcodeSleep >> 8;
_actionMenu[4]._actionId = _opcodeSleep & 0xFF;
_actionMenu[5]._menuId = _opcodeEnter >> 8;
- _actionMenu[5]._actionId = _opcodeEnter & 0xFF;
+ _actionMenu[5]._actionId = _opcodeEnter & 0xFF;
_actionMenu[6]._menuId = _opcodeClose >> 8;
- _actionMenu[6]._actionId = _opcodeClose & 0xFF;
+ _actionMenu[6]._actionId = _opcodeClose & 0xFF;
_actionMenu[7]._menuId = _opcodeKnock >> 8;
_actionMenu[7]._actionId = _opcodeKnock & 0xFF;
@@ -612,7 +612,7 @@ void Menu::updateMenu() {
void Menu::initMenu() {
Common::File f;
-
+
bool menuLoaded = false;
// First try to read it from mort.dat if useOriginalData() is false
if (!_vm->useOriginalData()) {
@@ -636,7 +636,7 @@ void Menu::initMenu() {
desiredLanguageId = MORTDAT_LANG_ENGLISH;
break;
}
-
+
// Validate the data file header
char fileId[4];
f.read(fileId, 4);
@@ -654,7 +654,7 @@ void Menu::initMenu() {
// Read in the language
byte languageId = f.readByte();
--dataSize;
-
+
// If the language isn't correct, then skip the entire block
if (languageId != desiredLanguageId) {
f.skip(dataSize);
diff --git a/engines/mortevielle/menu.h b/engines/mortevielle/menu.h
index d8a3b4d0d6..b3695fef28 100644
--- a/engines/mortevielle/menu.h
+++ b/engines/mortevielle/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/module.mk b/engines/mortevielle/module.mk
index a9f02c2a67..7188e36958 100644
--- a/engines/mortevielle/module.mk
+++ b/engines/mortevielle/module.mk
@@ -19,5 +19,5 @@ ifeq ($(ENABLE_MORTEVIELLE), DYNAMIC_PLUGIN)
PLUGIN := 1
endif
-# Include common rules
+# Include common rules
include $(srcdir)/rules.mk
diff --git a/engines/mortevielle/mortevielle.cpp b/engines/mortevielle/mortevielle.cpp
index 492ce63b41..90d366ed7e 100644
--- a/engines/mortevielle/mortevielle.cpp
+++ b/engines/mortevielle/mortevielle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -131,10 +131,20 @@ MortevielleEngine::MortevielleEngine(OSystem *system, const MortevielleGameDescr
}
_currMenu = OPCODE_NONE;
_currAction = OPCODE_NONE;
+ _menuOpcode = OPCODE_NONE;
_addFix = 0;
- _savedBitIndex = 0;
- _numpal = 0;
+ _currBitIndex = 0;
+ _currDay = 0;
+ _currHour = 10;
+ _currHalfHour = 0;
+ _hour = 10;
_key = 0;
+ _manorDistance = 0;
+ _numpal = 0;
+ _savedBitIndex = 0;
+ _endGame = false;
+ _loseGame = false;
+ _txxFileFl = false;
}
MortevielleEngine::~MortevielleEngine() {
diff --git a/engines/mortevielle/mortevielle.h b/engines/mortevielle/mortevielle.h
index 7a673f42f9..c3d1e4ae8b 100644
--- a/engines/mortevielle/mortevielle.h
+++ b/engines/mortevielle/mortevielle.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/mouse.cpp b/engines/mortevielle/mouse.cpp
index 2077a4cdc5..8f96ba3ef5 100644
--- a/engines/mortevielle/mouse.cpp
+++ b/engines/mortevielle/mouse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -97,15 +97,13 @@ void MouseHandler::getMousePosition(int &x, int &y, bool &click) {
* @remarks Originally called 'mov_mouse'
*/
void MouseHandler::moveMouse(bool &funct, char &key) {
- bool p_key;
- char in1, in2;
int cx, cy;
bool click;
// Set defaults and check pending events
funct = false;
key = '\377';
- p_key = _vm->keyPressed();
+ bool p_key = _vm->keyPressed();
// If mouse button clicked, return it
if (_vm->getMouseClick())
@@ -116,7 +114,7 @@ void MouseHandler::moveMouse(bool &funct, char &key) {
if (_vm->shouldQuit())
return;
- in1 = _vm->getChar();
+ char in1 = _vm->getChar();
getMousePosition(cx, cy, click);
switch (toupper(in1)) {
case '4':
@@ -160,7 +158,7 @@ void MouseHandler::moveMouse(bool &funct, char &key) {
p_key = _vm->keyPressed();
if (p_key) {
- in2 = _vm->getChar();
+ char in2 = _vm->getChar();
if ((in2 >= ';') && (in2 <= 'D')) {
funct = true;
diff --git a/engines/mortevielle/mouse.h b/engines/mortevielle/mouse.h
index 81c02dc8bd..0f28d50131 100644
--- a/engines/mortevielle/mouse.h
+++ b/engines/mortevielle/mouse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/outtext.cpp b/engines/mortevielle/outtext.cpp
index b359860a82..6a479c0859 100644
--- a/engines/mortevielle/outtext.cpp
+++ b/engines/mortevielle/outtext.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -287,8 +287,8 @@ void TextHandler::taffich() {
filename = "AXX.mor";
} else { // b == 50
// CHECKME: the size of AZZ.mor is 1280 for the DOS version
- // and 1260 for the Amiga version. Maybe the 20 bytes
- // are a filler (to get 10 blocks of 128 bytes),
+ // and 1260 for the Amiga version. Maybe the 20 bytes
+ // are a filler (to get 10 blocks of 128 bytes),
// or the size should be variable.
drawingSize = 1260;
filename = "AZZ.mor";
diff --git a/engines/mortevielle/outtext.h b/engines/mortevielle/outtext.h
index 397ca850dd..515bc9ece0 100644
--- a/engines/mortevielle/outtext.h
+++ b/engines/mortevielle/outtext.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/saveload.cpp b/engines/mortevielle/saveload.cpp
index 77a9a6371e..9f46940e1f 100644
--- a/engines/mortevielle/saveload.cpp
+++ b/engines/mortevielle/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -125,7 +125,7 @@ Common::Error SavegameManager::loadGame(const Common::String &filename) {
g_vm->gameLoaded();
g_vm->_mouse->showMouse();
return Common::kNoError;
- } else
+ } else
return Common::kUnknownError;
}
diff --git a/engines/mortevielle/saveload.h b/engines/mortevielle/saveload.h
index 9c21b0c294..a0de05b920 100644
--- a/engines/mortevielle/saveload.h
+++ b/engines/mortevielle/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/sound.cpp b/engines/mortevielle/sound.cpp
index db1f7578f1..23ca9d89b4 100644
--- a/engines/mortevielle/sound.cpp
+++ b/engines/mortevielle/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -91,13 +91,12 @@ int SoundManager::decodeMusic(const byte *PSrc, byte *PDest, int size) {
static const int tab[16] = { -96, -72, -48, -32, -20, -12, -8, -4, 0, 4, 8, 12, 20, 32, 48, 72 };
uint seed = 128;
- int v;
int decompSize = 0;
int skipSize = 0;
for (int idx1 = 0; idx1 < size; ++idx1) {
byte srcByte = *PSrc++;
- v = tab[srcByte >> 4];
+ int v = tab[srcByte >> 4];
seed += v;
*PDest++ = seed & 0xff;
@@ -204,7 +203,7 @@ void SoundManager::litph(tablint &t, int typ, int tempo) {
}
} else { // 2
debugC(5, kMortevielleSounds, "litph - vadson");
- const static int ambiantNoiseAdr[] = {0, 14020,
+ const static int ambiantNoiseAdr[] = {0, 14020,
14020, 18994,
18994, 19630,
19630, 22258,
@@ -696,7 +695,7 @@ void SoundManager::handlePhoneme() {
uint16 startPos = _cfiphBuffer[_phonemeNumb - 1] + deca[_soundType];
uint16 endPos = _cfiphBuffer[_phonemeNumb] + deca[_soundType];
int wordCount = endPos - startPos;
-
+
startPos /= 2;
endPos /= 2;
assert((endPos - startPos) < 1711);
diff --git a/engines/mortevielle/sound.h b/engines/mortevielle/sound.h
index 5321c8946c..d913684935 100644
--- a/engines/mortevielle/sound.h
+++ b/engines/mortevielle/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/mortevielle/utils.cpp b/engines/mortevielle/utils.cpp
index 29c9be2e0c..d5dec6a286 100644
--- a/engines/mortevielle/utils.cpp
+++ b/engines/mortevielle/utils.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -258,7 +258,6 @@ void MortevielleEngine::handleAction() {
clearVerbBar();
- bool handledOpcodeFl = false;
_controlMenu = 0;
if (!_keyPressedEsc) {
_menu->drawMenu();
@@ -319,6 +318,7 @@ void MortevielleEngine::handleAction() {
_menuOpcode = _currMenu;
if ((_currMenu == MENU_ACTION) || (_currMenu == MENU_SELF))
_menuOpcode = _currAction;
+ bool handledOpcodeFl = false;
if (!_anyone) {
if ((_heroSearching) || (_obpart)) {
if (_mouse->_pos.y < 12)
diff --git a/engines/neverhood/background.cpp b/engines/neverhood/background.cpp
index d6a9900d38..77c1e057a6 100644
--- a/engines/neverhood/background.cpp
+++ b/engines/neverhood/background.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/background.h b/engines/neverhood/background.h
index ef88be21c0..d4ba20c8e5 100644
--- a/engines/neverhood/background.h
+++ b/engines/neverhood/background.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/blbarchive.cpp b/engines/neverhood/blbarchive.cpp
index c743037e63..d1d8cf1aa2 100644
--- a/engines/neverhood/blbarchive.cpp
+++ b/engines/neverhood/blbarchive.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/blbarchive.h b/engines/neverhood/blbarchive.h
index 620b12b8ac..25e816ddcd 100644
--- a/engines/neverhood/blbarchive.h
+++ b/engines/neverhood/blbarchive.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/console.cpp b/engines/neverhood/console.cpp
index 34438d821f..a4d1366880 100644
--- a/engines/neverhood/console.cpp
+++ b/engines/neverhood/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/console.h b/engines/neverhood/console.h
index 70260a96af..bf1b201270 100644
--- a/engines/neverhood/console.h
+++ b/engines/neverhood/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/detection.cpp b/engines/neverhood/detection.cpp
index feba193609..57580395bf 100644
--- a/engines/neverhood/detection.cpp
+++ b/engines/neverhood/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/diskplayerscene.cpp b/engines/neverhood/diskplayerscene.cpp
index 7513034bf3..96a935851c 100644
--- a/engines/neverhood/diskplayerscene.cpp
+++ b/engines/neverhood/diskplayerscene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/diskplayerscene.h b/engines/neverhood/diskplayerscene.h
index 150d5c58ed..2ae85b9a0b 100644
--- a/engines/neverhood/diskplayerscene.h
+++ b/engines/neverhood/diskplayerscene.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/entity.cpp b/engines/neverhood/entity.cpp
index 1ebf1dcf6c..68390051f5 100644
--- a/engines/neverhood/entity.cpp
+++ b/engines/neverhood/entity.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/entity.h b/engines/neverhood/entity.h
index 5c29bf8a4f..4edb19239d 100644
--- a/engines/neverhood/entity.h
+++ b/engines/neverhood/entity.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/gamemodule.cpp b/engines/neverhood/gamemodule.cpp
index 5e9981caa6..12ae66658c 100644
--- a/engines/neverhood/gamemodule.cpp
+++ b/engines/neverhood/gamemodule.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/gamemodule.h b/engines/neverhood/gamemodule.h
index 198f8f6715..b8f7276773 100644
--- a/engines/neverhood/gamemodule.h
+++ b/engines/neverhood/gamemodule.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/gamevars.cpp b/engines/neverhood/gamevars.cpp
index 9c080fea24..72b688c194 100644
--- a/engines/neverhood/gamevars.cpp
+++ b/engines/neverhood/gamevars.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/gamevars.h b/engines/neverhood/gamevars.h
index 3aec4d1da4..9bb49ebf5b 100644
--- a/engines/neverhood/gamevars.h
+++ b/engines/neverhood/gamevars.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/graphics.cpp b/engines/neverhood/graphics.cpp
index e976844c16..3d1724ed8a 100644
--- a/engines/neverhood/graphics.cpp
+++ b/engines/neverhood/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/graphics.h b/engines/neverhood/graphics.h
index b80bd60729..12fb2d2215 100644
--- a/engines/neverhood/graphics.h
+++ b/engines/neverhood/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/klaymen.cpp b/engines/neverhood/klaymen.cpp
index a813440f62..de940bda79 100644
--- a/engines/neverhood/klaymen.cpp
+++ b/engines/neverhood/klaymen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/klaymen.h b/engines/neverhood/klaymen.h
index a614560fc0..6c25d5b4de 100644
--- a/engines/neverhood/klaymen.h
+++ b/engines/neverhood/klaymen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/menumodule.cpp b/engines/neverhood/menumodule.cpp
index b332418cf5..255d04dc86 100644
--- a/engines/neverhood/menumodule.cpp
+++ b/engines/neverhood/menumodule.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/menumodule.h b/engines/neverhood/menumodule.h
index 9da9c849a9..6508ccbdf2 100644
--- a/engines/neverhood/menumodule.h
+++ b/engines/neverhood/menumodule.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/messages.h b/engines/neverhood/messages.h
index 5f1e1b87dd..15a762fbe9 100644
--- a/engines/neverhood/messages.h
+++ b/engines/neverhood/messages.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/microtiles.cpp b/engines/neverhood/microtiles.cpp
index 3dd6475046..a1075b8d09 100644
--- a/engines/neverhood/microtiles.cpp
+++ b/engines/neverhood/microtiles.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "neverhood/microtiles.h"
diff --git a/engines/neverhood/microtiles.h b/engines/neverhood/microtiles.h
index 29af3d956a..15152600df 100644
--- a/engines/neverhood/microtiles.h
+++ b/engines/neverhood/microtiles.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef NEVERHOOD_MICROTILES_H
diff --git a/engines/neverhood/module.cpp b/engines/neverhood/module.cpp
index 3ef4554334..0d6b70c9a2 100644
--- a/engines/neverhood/module.cpp
+++ b/engines/neverhood/module.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/module.h b/engines/neverhood/module.h
index 8ab2159030..d4c954c716 100644
--- a/engines/neverhood/module.h
+++ b/engines/neverhood/module.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1000.cpp b/engines/neverhood/modules/module1000.cpp
index 788e22dc1b..b19ba05b32 100644
--- a/engines/neverhood/modules/module1000.cpp
+++ b/engines/neverhood/modules/module1000.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -228,7 +228,7 @@ uint32 Scene1001::handleMessage(int messageNum, const MessageParam &param, Entit
}
Scene1002::Scene1002(NeverhoodEngine *vm, Module *parentModule, int which)
- : Scene(vm, parentModule), _isKlaymenFloor(false), _isClimbingLadder(false) {
+ : Scene(vm, parentModule), _isKlaymenFloor(false), _isClimbingLadder(false), _asKlaymenPeekHand(nullptr) {
NRect tempClipRect;
Sprite *tempSprite;
@@ -609,7 +609,7 @@ uint32 Scene1005::getTextIndex() {
uint32 textIndex;
textIndex = getTextIndex1();
if (getGlobalVar(V_ENTRANCE_OPEN)) {
- textIndex = getTextIndex2();
+ textIndex = getKloggsTextIndex();
}
if (getGlobalVar(V_TEXT_FLAG1) && getGlobalVar(V_TEXT_INDEX) == textIndex) {
textIndex = getTextIndex3();
@@ -690,9 +690,9 @@ uint32 Scene1005::getTextIndex1() {
return textIndex;
}
-uint32 Scene1005::getTextIndex2() {
+uint32 Scene1005::getKloggsTextIndex() {
uint32 textIndex = getGlobalVar(V_TEXT_COUNTING_INDEX1);
- if (textIndex + 1 >= 10) {
+ if (textIndex + 1 > 10) {
setGlobalVar(V_TEXT_COUNTING_INDEX1, 0);
textIndex = 0;
} else {
diff --git a/engines/neverhood/modules/module1000.h b/engines/neverhood/modules/module1000.h
index 4b17c92b3b..58aa92e45f 100644
--- a/engines/neverhood/modules/module1000.h
+++ b/engines/neverhood/modules/module1000.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -101,7 +101,7 @@ protected:
void drawTextToBackground();
uint32 getTextIndex();
uint32 getTextIndex1();
- uint32 getTextIndex2();
+ uint32 getKloggsTextIndex();
uint32 getTextIndex3();
};
diff --git a/engines/neverhood/modules/module1000_sprites.cpp b/engines/neverhood/modules/module1000_sprites.cpp
index a028df4b10..dd504ae25a 100644
--- a/engines/neverhood/modules/module1000_sprites.cpp
+++ b/engines/neverhood/modules/module1000_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1000_sprites.h b/engines/neverhood/modules/module1000_sprites.h
index 564b3cc335..8a03824086 100644
--- a/engines/neverhood/modules/module1000_sprites.h
+++ b/engines/neverhood/modules/module1000_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1100.cpp b/engines/neverhood/modules/module1100.cpp
index e40508e502..cca80f3f62 100644
--- a/engines/neverhood/modules/module1100.cpp
+++ b/engines/neverhood/modules/module1100.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -142,7 +142,7 @@ void Module1100::updateScene() {
_vm->_soundMan->playTwoSounds(0x0002C818, 0x48498E46, 0x50399F64, 0);
createScene(1, 0);
} else if (_moduleResult == 1) {
- /* NOTE This fixes a bug in the original where the "tunnel" footstep
+ /* NOTE This fixes a bug in the original where the "tunnel" footstep
sounds are played instead of the correct footsteps. */
_vm->_soundMan->playTwoSounds(0x0002C818, 0x41861371, 0x43A2507F, 0);
createScene(8, 0);
diff --git a/engines/neverhood/modules/module1100.h b/engines/neverhood/modules/module1100.h
index 38bac1f298..31f5f8a04e 100644
--- a/engines/neverhood/modules/module1100.h
+++ b/engines/neverhood/modules/module1100.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1100_sprites.cpp b/engines/neverhood/modules/module1100_sprites.cpp
index 49a388ffca..b5fd8490f6 100644
--- a/engines/neverhood/modules/module1100_sprites.cpp
+++ b/engines/neverhood/modules/module1100_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1100_sprites.h b/engines/neverhood/modules/module1100_sprites.h
index c8e5a838da..2e50902664 100644
--- a/engines/neverhood/modules/module1100_sprites.h
+++ b/engines/neverhood/modules/module1100_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1200.cpp b/engines/neverhood/modules/module1200.cpp
index 8bf42b3b96..ba5e18ab15 100644
--- a/engines/neverhood/modules/module1200.cpp
+++ b/engines/neverhood/modules/module1200.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1200.h b/engines/neverhood/modules/module1200.h
index d9d4dd11f2..492f0d42f0 100644
--- a/engines/neverhood/modules/module1200.h
+++ b/engines/neverhood/modules/module1200.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1200_sprites.cpp b/engines/neverhood/modules/module1200_sprites.cpp
index 5848e16092..04bd4c1cb7 100644
--- a/engines/neverhood/modules/module1200_sprites.cpp
+++ b/engines/neverhood/modules/module1200_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1200_sprites.h b/engines/neverhood/modules/module1200_sprites.h
index ef1ec40ced..ae820f0530 100644
--- a/engines/neverhood/modules/module1200_sprites.h
+++ b/engines/neverhood/modules/module1200_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1300.cpp b/engines/neverhood/modules/module1300.cpp
index fe119c1732..60ff0411a6 100644
--- a/engines/neverhood/modules/module1300.cpp
+++ b/engines/neverhood/modules/module1300.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -603,7 +603,7 @@ uint32 Scene1305::handleMessage(int messageNum, const MessageParam &param, Entit
}
Scene1306::Scene1306(NeverhoodEngine *vm, Module *parentModule, int which)
- : Scene(vm, parentModule) {
+ : Scene(vm, parentModule), _asKey(nullptr) {
if (getGlobalVar(V_HAS_FINAL_KEY) && getGlobalVar(V_KEY3_LOCATION) == 0)
setGlobalVar(V_KEY3_LOCATION, 4);
@@ -683,7 +683,6 @@ Scene1306::Scene1306(NeverhoodEngine *vm, Module *parentModule, int which)
clearRectList();
sendMessage(_asElevator, NM_KLAYMEN_OPEN_DOOR, 0);
}
-
}
Scene1306::~Scene1306() {
@@ -942,6 +941,7 @@ Scene1308::Scene1308(NeverhoodEngine *vm, Module *parentModule, int which)
_sprite2 = insertStaticSprite(0x40043120, 995);
_sprite3 = insertStaticSprite(0x43003100, 995);
_sprite4 = NULL;
+ _sprite5 = nullptr;
if (which < 0) {
// Restoring game
diff --git a/engines/neverhood/modules/module1300.h b/engines/neverhood/modules/module1300.h
index 2f59ff16c2..4a0ca6c062 100644
--- a/engines/neverhood/modules/module1300.h
+++ b/engines/neverhood/modules/module1300.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1300_sprites.cpp b/engines/neverhood/modules/module1300_sprites.cpp
index 0c1632501e..b4b42198e1 100644
--- a/engines/neverhood/modules/module1300_sprites.cpp
+++ b/engines/neverhood/modules/module1300_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1300_sprites.h b/engines/neverhood/modules/module1300_sprites.h
index e044d3cec8..6f4faaa234 100644
--- a/engines/neverhood/modules/module1300_sprites.h
+++ b/engines/neverhood/modules/module1300_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1400.cpp b/engines/neverhood/modules/module1400.cpp
index 018f27e2b7..551b6874ff 100644
--- a/engines/neverhood/modules/module1400.cpp
+++ b/engines/neverhood/modules/module1400.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1400.h b/engines/neverhood/modules/module1400.h
index 53ad7125ab..52f72db6d3 100644
--- a/engines/neverhood/modules/module1400.h
+++ b/engines/neverhood/modules/module1400.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1400_sprites.cpp b/engines/neverhood/modules/module1400_sprites.cpp
index 478b328034..30a5c340c9 100644
--- a/engines/neverhood/modules/module1400_sprites.cpp
+++ b/engines/neverhood/modules/module1400_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1400_sprites.h b/engines/neverhood/modules/module1400_sprites.h
index 49b91fe0cf..fe0db66d27 100644
--- a/engines/neverhood/modules/module1400_sprites.h
+++ b/engines/neverhood/modules/module1400_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1500.cpp b/engines/neverhood/modules/module1500.cpp
index eaa23e586b..8e51b1aff5 100644
--- a/engines/neverhood/modules/module1500.cpp
+++ b/engines/neverhood/modules/module1500.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1500.h b/engines/neverhood/modules/module1500.h
index f244948918..6c8bf32340 100644
--- a/engines/neverhood/modules/module1500.h
+++ b/engines/neverhood/modules/module1500.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1600.cpp b/engines/neverhood/modules/module1600.cpp
index 76c5ca93d2..0adcd939cd 100644
--- a/engines/neverhood/modules/module1600.cpp
+++ b/engines/neverhood/modules/module1600.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1600.h b/engines/neverhood/modules/module1600.h
index f08eaad8fc..b1c9662f79 100644
--- a/engines/neverhood/modules/module1600.h
+++ b/engines/neverhood/modules/module1600.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1600_sprites.cpp b/engines/neverhood/modules/module1600_sprites.cpp
index b7b3658c5e..09e3d0afe1 100644
--- a/engines/neverhood/modules/module1600_sprites.cpp
+++ b/engines/neverhood/modules/module1600_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1600_sprites.h b/engines/neverhood/modules/module1600_sprites.h
index fa59475dad..1c51160be3 100644
--- a/engines/neverhood/modules/module1600_sprites.h
+++ b/engines/neverhood/modules/module1600_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1700.cpp b/engines/neverhood/modules/module1700.cpp
index 1062691cd2..6ff34ecd91 100644
--- a/engines/neverhood/modules/module1700.cpp
+++ b/engines/neverhood/modules/module1700.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1700.h b/engines/neverhood/modules/module1700.h
index 09daff2acf..57d04312bb 100644
--- a/engines/neverhood/modules/module1700.h
+++ b/engines/neverhood/modules/module1700.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1700_sprites.cpp b/engines/neverhood/modules/module1700_sprites.cpp
index d6e00c95f3..3a6784b0f5 100644
--- a/engines/neverhood/modules/module1700_sprites.cpp
+++ b/engines/neverhood/modules/module1700_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1700_sprites.h b/engines/neverhood/modules/module1700_sprites.h
index 4117de01d9..afa5d9f7ad 100644
--- a/engines/neverhood/modules/module1700_sprites.h
+++ b/engines/neverhood/modules/module1700_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1800.cpp b/engines/neverhood/modules/module1800.cpp
index 282292a516..17d6367252 100644
--- a/engines/neverhood/modules/module1800.cpp
+++ b/engines/neverhood/modules/module1800.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1800.h b/engines/neverhood/modules/module1800.h
index d3f3a635c3..35af1f8e58 100644
--- a/engines/neverhood/modules/module1800.h
+++ b/engines/neverhood/modules/module1800.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1900.cpp b/engines/neverhood/modules/module1900.cpp
index 5fdc6091dc..71926d6950 100644
--- a/engines/neverhood/modules/module1900.cpp
+++ b/engines/neverhood/modules/module1900.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1900.h b/engines/neverhood/modules/module1900.h
index d785c6f506..78128f8f37 100644
--- a/engines/neverhood/modules/module1900.h
+++ b/engines/neverhood/modules/module1900.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1900_sprites.cpp b/engines/neverhood/modules/module1900_sprites.cpp
index 9e43203def..074a83cdcd 100644
--- a/engines/neverhood/modules/module1900_sprites.cpp
+++ b/engines/neverhood/modules/module1900_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module1900_sprites.h b/engines/neverhood/modules/module1900_sprites.h
index 7e57b11618..6df02e2279 100644
--- a/engines/neverhood/modules/module1900_sprites.h
+++ b/engines/neverhood/modules/module1900_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2000.cpp b/engines/neverhood/modules/module2000.cpp
index ad18e65cdd..498f50989e 100644
--- a/engines/neverhood/modules/module2000.cpp
+++ b/engines/neverhood/modules/module2000.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2000.h b/engines/neverhood/modules/module2000.h
index 8dc72c57dc..6e1cfb6fe6 100644
--- a/engines/neverhood/modules/module2000.h
+++ b/engines/neverhood/modules/module2000.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2000_sprites.cpp b/engines/neverhood/modules/module2000_sprites.cpp
index 35edd8e73f..ccf383d26d 100644
--- a/engines/neverhood/modules/module2000_sprites.cpp
+++ b/engines/neverhood/modules/module2000_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2000_sprites.h b/engines/neverhood/modules/module2000_sprites.h
index ca84aa73ca..62b738d9fb 100644
--- a/engines/neverhood/modules/module2000_sprites.h
+++ b/engines/neverhood/modules/module2000_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2100.cpp b/engines/neverhood/modules/module2100.cpp
index e95eb58420..9488057fa4 100644
--- a/engines/neverhood/modules/module2100.cpp
+++ b/engines/neverhood/modules/module2100.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2100.h b/engines/neverhood/modules/module2100.h
index c5256434d9..e660eba7c0 100644
--- a/engines/neverhood/modules/module2100.h
+++ b/engines/neverhood/modules/module2100.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2100_sprites.cpp b/engines/neverhood/modules/module2100_sprites.cpp
index f43c0afed5..4d2e4956e6 100644
--- a/engines/neverhood/modules/module2100_sprites.cpp
+++ b/engines/neverhood/modules/module2100_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2100_sprites.h b/engines/neverhood/modules/module2100_sprites.h
index 85a6b9f27d..c1116ef9a5 100644
--- a/engines/neverhood/modules/module2100_sprites.h
+++ b/engines/neverhood/modules/module2100_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2200.cpp b/engines/neverhood/modules/module2200.cpp
index f1d5d2854d..6618cb3ab0 100644
--- a/engines/neverhood/modules/module2200.cpp
+++ b/engines/neverhood/modules/module2200.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -885,7 +885,7 @@ void Scene2205::update() {
} else if (_isLightOn && !getGlobalVar(V_LIGHTS_ON)) {
_palette->addPalette(0xD00A028D, 0, 256, 0);
changeBackground(0xD00A028D);
- _ssLightSwitch->setFileHashes(0x2D339030, 0xDAC86E84);
+ _ssLightSwitch->setFileHashes(0xD6C86E84, 0xDAC86E84);
sendMessage(_ssDoorFrame, 0x2000, 0);
changeMouseCursor(0xA0289D08);
_isKlaymenInLight = true;
diff --git a/engines/neverhood/modules/module2200.h b/engines/neverhood/modules/module2200.h
index 6b414304ae..5250bf3fe9 100644
--- a/engines/neverhood/modules/module2200.h
+++ b/engines/neverhood/modules/module2200.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2200_sprites.cpp b/engines/neverhood/modules/module2200_sprites.cpp
index ddf31f7920..7c1e84c3cf 100644
--- a/engines/neverhood/modules/module2200_sprites.cpp
+++ b/engines/neverhood/modules/module2200_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2200_sprites.h b/engines/neverhood/modules/module2200_sprites.h
index 9aaf3b6aae..9327b1cb9f 100644
--- a/engines/neverhood/modules/module2200_sprites.h
+++ b/engines/neverhood/modules/module2200_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2300.cpp b/engines/neverhood/modules/module2300.cpp
index 689d53570f..68ae07f2bb 100644
--- a/engines/neverhood/modules/module2300.cpp
+++ b/engines/neverhood/modules/module2300.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,14 +31,14 @@ static const uint32 kModule2300SoundList[] = {
};
Module2300::Module2300(NeverhoodEngine *vm, Module *parentModule, int which)
- : Module(vm, parentModule), _soundVolume(0) {
+ : Module(vm, parentModule), _waterfallSoundVolume(0) {
_vm->_soundMan->addSoundList(0x1A214010, kModule2300SoundList);
_vm->_soundMan->setSoundListParams(kModule2300SoundList, true, 50, 600, 10, 150);
- _isWallBroken = getGlobalVar(V_WALL_BROKEN) != 0;
+ _isWaterfallRunning = getGlobalVar(V_WALL_BROKEN) != 1;
- if (_isWallBroken) {
+ if (_isWaterfallRunning) {
_vm->_soundMan->setSoundVolume(0x90F0D1C3, 0);
_vm->_soundMan->playSoundLooping(0x90F0D1C3);
} else {
@@ -78,8 +78,8 @@ void Module2300::createScene(int sceneNum, int which) {
case 1:
_vm->gameState().sceneNum = 1;
createNavigationScene(0x004B67E8, which);
- if (_isWallBroken) {
- _soundVolume = 15;
+ if (_isWaterfallRunning) {
+ _waterfallSoundVolume = 15;
_vm->_soundMan->setSoundVolume(0x90F0D1C3, 15);
}
break;
@@ -92,10 +92,10 @@ void Module2300::createScene(int sceneNum, int which) {
if (getGlobalVar(V_WALL_BROKEN))
createNavigationScene(0x004B68F0, which);
else {
- _vm->_soundMan->setSoundVolume(0x90F0D1C3, _soundVolume);
+ _vm->_soundMan->setSoundVolume(0x90F0D1C3, _waterfallSoundVolume);
createNavigationScene(0x004B68A8, which);
- if (_isWallBroken) {
- _soundVolume = 87;
+ if (_isWaterfallRunning) {
+ _waterfallSoundVolume = 87;
_vm->_soundMan->setSoundVolume(0x90F0D1C3, 87);
}
}
@@ -161,10 +161,10 @@ void Module2300::updateScene() {
} else {
switch (_sceneNum) {
case 1:
- if (_isWallBroken && navigationScene()->isWalkingForward() && navigationScene()->getNavigationIndex() == 4 &&
+ if (_isWaterfallRunning && navigationScene()->isWalkingForward() && navigationScene()->getNavigationIndex() == 4 &&
navigationScene()->getFrameNumber() % 2) {
- _soundVolume++;
- _vm->_soundMan->setSoundVolume(0x90F0D1C3, _soundVolume);
+ _waterfallSoundVolume++;
+ _vm->_soundMan->setSoundVolume(0x90F0D1C3, _waterfallSoundVolume);
}
if (navigationScene()->isWalkingForward() && navigationScene()->getNavigationIndex() == 0 &&
navigationScene()->getFrameNumber() == 50) {
@@ -174,9 +174,9 @@ void Module2300::updateScene() {
}
break;
case 3:
- if (_isWallBroken && navigationScene()->isWalkingForward() && navigationScene()->getFrameNumber() % 2) {
- _soundVolume--;
- _vm->_soundMan->setSoundVolume(0x90F0D1C3, _soundVolume);
+ if (_isWaterfallRunning && navigationScene()->isWalkingForward() && navigationScene()->getFrameNumber() % 2) {
+ _waterfallSoundVolume--;
+ _vm->_soundMan->setSoundVolume(0x90F0D1C3, _waterfallSoundVolume);
}
break;
}
diff --git a/engines/neverhood/modules/module2300.h b/engines/neverhood/modules/module2300.h
index 0a1e1d57a4..58bffb710c 100644
--- a/engines/neverhood/modules/module2300.h
+++ b/engines/neverhood/modules/module2300.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -37,8 +37,8 @@ public:
virtual ~Module2300();
protected:
int _sceneNum;
- bool _isWallBroken;
- int _soundVolume;
+ int _waterfallSoundVolume;
+ bool _isWaterfallRunning;
void createScene(int sceneNum, int which);
void updateScene();
};
diff --git a/engines/neverhood/modules/module2400.cpp b/engines/neverhood/modules/module2400.cpp
index 867fb692f2..3acb952db9 100644
--- a/engines/neverhood/modules/module2400.cpp
+++ b/engines/neverhood/modules/module2400.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2400.h b/engines/neverhood/modules/module2400.h
index 61603f3e00..0ab56dd86a 100644
--- a/engines/neverhood/modules/module2400.h
+++ b/engines/neverhood/modules/module2400.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2400_sprites.cpp b/engines/neverhood/modules/module2400_sprites.cpp
index 32c00cde27..f31fd59907 100644
--- a/engines/neverhood/modules/module2400_sprites.cpp
+++ b/engines/neverhood/modules/module2400_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2400_sprites.h b/engines/neverhood/modules/module2400_sprites.h
index a901eb101c..5d9464af13 100644
--- a/engines/neverhood/modules/module2400_sprites.h
+++ b/engines/neverhood/modules/module2400_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2500.cpp b/engines/neverhood/modules/module2500.cpp
index eb1b65cd83..7e93b0ebc0 100644
--- a/engines/neverhood/modules/module2500.cpp
+++ b/engines/neverhood/modules/module2500.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2500.h b/engines/neverhood/modules/module2500.h
index de6226ef0c..57ab22889a 100644
--- a/engines/neverhood/modules/module2500.h
+++ b/engines/neverhood/modules/module2500.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2500_sprites.cpp b/engines/neverhood/modules/module2500_sprites.cpp
index 1394a87db6..b628cd8f02 100644
--- a/engines/neverhood/modules/module2500_sprites.cpp
+++ b/engines/neverhood/modules/module2500_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2500_sprites.h b/engines/neverhood/modules/module2500_sprites.h
index e7f7b05702..b5c2a1ac01 100644
--- a/engines/neverhood/modules/module2500_sprites.h
+++ b/engines/neverhood/modules/module2500_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2600.cpp b/engines/neverhood/modules/module2600.cpp
index 3c3e733b3f..d0f6090ea8 100644
--- a/engines/neverhood/modules/module2600.cpp
+++ b/engines/neverhood/modules/module2600.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2600.h b/engines/neverhood/modules/module2600.h
index 99ec3a34ca..0f13ed4b09 100644
--- a/engines/neverhood/modules/module2600.h
+++ b/engines/neverhood/modules/module2600.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2600_sprites.cpp b/engines/neverhood/modules/module2600_sprites.cpp
index 2506a6eb48..ffba6a4e59 100644
--- a/engines/neverhood/modules/module2600_sprites.cpp
+++ b/engines/neverhood/modules/module2600_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2600_sprites.h b/engines/neverhood/modules/module2600_sprites.h
index c36e72cae8..0b4954ceb1 100644
--- a/engines/neverhood/modules/module2600_sprites.h
+++ b/engines/neverhood/modules/module2600_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2700.cpp b/engines/neverhood/modules/module2700.cpp
index 13c30048a4..2a112435fc 100644
--- a/engines/neverhood/modules/module2700.cpp
+++ b/engines/neverhood/modules/module2700.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -84,7 +84,7 @@ static const uint32 kScene2725StaticSprites[] = {
};
Module2700::Module2700(NeverhoodEngine *vm, Module *parentModule, int which)
- : Module(vm, parentModule), _soundIndex(0), _radioMusicInitialized(false) {
+ : Module(vm, parentModule), _soundIndex(0), _radioMusicInitialized(false), _musicFileHash(0) {
_vm->_soundMan->addMusic(0x42212411, 0x04020210);
_vm->_soundMan->startMusic(0x04020210, 24, 2);
diff --git a/engines/neverhood/modules/module2700.h b/engines/neverhood/modules/module2700.h
index 97b4f1cbea..9ac2159765 100644
--- a/engines/neverhood/modules/module2700.h
+++ b/engines/neverhood/modules/module2700.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2700_sprites.cpp b/engines/neverhood/modules/module2700_sprites.cpp
index 8dd2fa3461..e17cddc834 100644
--- a/engines/neverhood/modules/module2700_sprites.cpp
+++ b/engines/neverhood/modules/module2700_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2700_sprites.h b/engines/neverhood/modules/module2700_sprites.h
index 394ba896a1..7da0223bce 100644
--- a/engines/neverhood/modules/module2700_sprites.h
+++ b/engines/neverhood/modules/module2700_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2800.cpp b/engines/neverhood/modules/module2800.cpp
index 5d892de224..a59c3f8156 100644
--- a/engines/neverhood/modules/module2800.cpp
+++ b/engines/neverhood/modules/module2800.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2800.h b/engines/neverhood/modules/module2800.h
index 26e44bc543..73a13610e3 100644
--- a/engines/neverhood/modules/module2800.h
+++ b/engines/neverhood/modules/module2800.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2800_sprites.cpp b/engines/neverhood/modules/module2800_sprites.cpp
index 35596da6b5..f9a58de92d 100644
--- a/engines/neverhood/modules/module2800_sprites.cpp
+++ b/engines/neverhood/modules/module2800_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2800_sprites.h b/engines/neverhood/modules/module2800_sprites.h
index 91f26d7849..ec34a7ccf5 100644
--- a/engines/neverhood/modules/module2800_sprites.h
+++ b/engines/neverhood/modules/module2800_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2900.cpp b/engines/neverhood/modules/module2900.cpp
index ca734972ca..69186514a2 100644
--- a/engines/neverhood/modules/module2900.cpp
+++ b/engines/neverhood/modules/module2900.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -34,11 +34,12 @@ namespace Neverhood {
Module2900::Module2900(NeverhoodEngine *vm, Module *parentModule, int which)
: Module(vm, parentModule) {
+ _teleporterModuleResult = -1;
+
if (which >= 0)
setGlobalVar(V_TELEPORTER_WHICH, which);
createScene(0, 0);
-
}
void Module2900::createScene(int sceneNum, int which) {
diff --git a/engines/neverhood/modules/module2900.h b/engines/neverhood/modules/module2900.h
index 5f6ed29a12..8d6dad5660 100644
--- a/engines/neverhood/modules/module2900.h
+++ b/engines/neverhood/modules/module2900.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2900_sprites.cpp b/engines/neverhood/modules/module2900_sprites.cpp
index 59780b33a0..1ec820abdf 100644
--- a/engines/neverhood/modules/module2900_sprites.cpp
+++ b/engines/neverhood/modules/module2900_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module2900_sprites.h b/engines/neverhood/modules/module2900_sprites.h
index 9f7df502e1..3ad7f2eefd 100644
--- a/engines/neverhood/modules/module2900_sprites.h
+++ b/engines/neverhood/modules/module2900_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module3000.cpp b/engines/neverhood/modules/module3000.cpp
index dc6fb984ef..d4809611ad 100644
--- a/engines/neverhood/modules/module3000.cpp
+++ b/engines/neverhood/modules/module3000.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -39,7 +39,7 @@ static const uint32 kModule3000SoundList[] = {
};
Module3000::Module3000(NeverhoodEngine *vm, Module *parentModule, int which)
- : Module(vm, parentModule), _soundVolume(0) {
+ : Module(vm, parentModule), _waterfallSoundVolume(0) {
_vm->_soundMan->addSoundList(0x81293110, kModule3000SoundList);
_vm->_soundMan->setSoundListParams(kModule3000SoundList, true, 50, 600, 5, 150);
@@ -48,9 +48,9 @@ Module3000::Module3000(NeverhoodEngine *vm, Module *parentModule, int which)
_vm->_soundMan->playTwoSounds(0x81293110, 0x40030A51, 0xC862CA15, 0);
_vm->_soundMan->playTwoSounds(0x81293110, 0x41861371, 0x43A2507F, 0);
- _isWallBroken = getGlobalVar(V_WALL_BROKEN) != 0;
+ _isWaterfallRunning = getGlobalVar(V_WALL_BROKEN) != 1;
- if (!_isWallBroken) {
+ if (_isWaterfallRunning) {
_vm->_soundMan->setSoundVolume(0x90F0D1C3, 0);
_vm->_soundMan->playSoundLooping(0x90F0D1C3);
}
@@ -78,12 +78,11 @@ void Module3000::createScene(int sceneNum, int which) {
static const byte kNavigationTypes06[] = {5};
debug(1, "Module3000::createScene(%d, %d)", sceneNum, which);
_vm->gameState().sceneNum = sceneNum;
- _isWallBroken = getGlobalVar(V_WALL_BROKEN) != 0;
switch (_vm->gameState().sceneNum) {
case 1:
if (!getGlobalVar(V_BOLT_DOOR_OPEN)) {
createNavigationScene(0x004B7C80, which);
- } else if (_isWallBroken) {
+ } else if (getGlobalVar(V_WALL_BROKEN)) {
createNavigationScene(0x004B7CE0, which);
} else {
createNavigationScene(0x004B7CB0, which);
@@ -91,11 +90,11 @@ void Module3000::createScene(int sceneNum, int which) {
break;
case 2:
_vm->_soundMan->playTwoSounds(0x81293110, 0x40030A51, 0xC862CA15, 0);
- if (!_isWallBroken) {
- _soundVolume = 90;
+ if (_isWaterfallRunning) {
+ _waterfallSoundVolume = 90;
_vm->_soundMan->setSoundVolume(0x90F0D1C3, 90);
}
- if (_isWallBroken) {
+ if (getGlobalVar(V_WALL_BROKEN)) {
createNavigationScene(0x004B7D58, which);
} else {
createNavigationScene(0x004B7D10, which);
@@ -104,7 +103,7 @@ void Module3000::createScene(int sceneNum, int which) {
case 3:
if (getGlobalVar(V_STAIRS_DOWN))
createNavigationScene(0x004B7E60, which);
- else if (_isWallBroken)
+ else if (getGlobalVar(V_WALL_BROKEN))
createNavigationScene(0x004B7DA0, which);
else
createNavigationScene(0x004B7E00, which);
@@ -152,12 +151,12 @@ void Module3000::createScene(int sceneNum, int which) {
// NOTE: Newly introduced sceneNums
case 1001:
if (!getGlobalVar(V_BOLT_DOOR_OPEN))
- if (_isWallBroken)
+ if (getGlobalVar(V_WALL_BROKEN))
createSmackerScene(0x00940021, true, true, false);
else
createSmackerScene(0x01140021, true, true, false);
else
- if (_isWallBroken)
+ if (getGlobalVar(V_WALL_BROKEN))
createSmackerScene(0x001011B1, true, true, false);
else
createSmackerScene(0x001021B1, true, true, false);
@@ -195,8 +194,8 @@ void Module3000::updateScene() {
break;
case 2:
_vm->_soundMan->playTwoSounds(0x81293110, 0x41861371, 0x43A2507F, 0);
- if (_isWallBroken) {
- _soundVolume = 0;
+ if (_isWaterfallRunning) {
+ _waterfallSoundVolume = 0;
_vm->_soundMan->setSoundVolume(0x90F0D1C3, 0);
}
if (_moduleResult == 0) {
@@ -240,7 +239,7 @@ void Module3000::updateScene() {
createScene(8, -1);
break;
case 8:
- _isWallBroken = getGlobalVar(V_WALL_BROKEN) != 0;
+ _isWaterfallRunning = getGlobalVar(V_WALL_BROKEN) != 1;
if (_moduleResult != 1) {
_vm->_soundMan->setSoundListParams(kModule3000SoundList, true, 0, 0, 0, 0);
createScene(4, 1);
@@ -301,12 +300,12 @@ void Module3000::updateScene() {
} else if (frameNumber == 10) {
_vm->_soundMan->playTwoSounds(0x81293110, 0x40030A51, 0xC862CA15, 0);
}
- if (!_isWallBroken && _soundVolume < 90 && frameNumber % 2) {
+ if (_isWaterfallRunning && _waterfallSoundVolume < 90 && frameNumber % 2) {
if (frameNumber == 0)
- _soundVolume = 40;
+ _waterfallSoundVolume = 40;
else
- _soundVolume++;
- _vm->_soundMan->setSoundVolume(0x90F0D1C3, _soundVolume);
+ _waterfallSoundVolume++;
+ _vm->_soundMan->setSoundVolume(0x90F0D1C3, _waterfallSoundVolume);
}
}
}
@@ -315,9 +314,9 @@ void Module3000::updateScene() {
if (navigationScene()->isWalkingForward()) {
uint32 frameNumber = navigationScene()->getFrameNumber();
int navigationIndex = navigationScene()->getNavigationIndex();
- if (!_isWallBroken && _soundVolume > 1 && frameNumber % 2) {
- _soundVolume--;
- _vm->_soundMan->setSoundVolume(0x90F0D1C3, _soundVolume);
+ if (_isWaterfallRunning && _waterfallSoundVolume > 1 && frameNumber % 2) {
+ _waterfallSoundVolume--;
+ _vm->_soundMan->setSoundVolume(0x90F0D1C3, _waterfallSoundVolume);
}
if (navigationIndex == 0) {
if (frameNumber == 35) {
@@ -340,12 +339,12 @@ void Module3000::updateScene() {
if (frameNumber == 40) {
_vm->_soundMan->playTwoSounds(0x81293110, 0x40030A51, 0xC862CA15, 0);
}
- if (!_isWallBroken && _soundVolume < 90 && frameNumber % 2) {
+ if (_isWaterfallRunning && _waterfallSoundVolume < 90 && frameNumber % 2) {
if (frameNumber == 0)
- _soundVolume = 40;
+ _waterfallSoundVolume = 40;
else
- _soundVolume++;
- _vm->_soundMan->setSoundVolume(0x90F0D1C3, _soundVolume);
+ _waterfallSoundVolume++;
+ _vm->_soundMan->setSoundVolume(0x90F0D1C3, _waterfallSoundVolume);
}
}
}
diff --git a/engines/neverhood/modules/module3000.h b/engines/neverhood/modules/module3000.h
index a88dea513e..3d895b8d8a 100644
--- a/engines/neverhood/modules/module3000.h
+++ b/engines/neverhood/modules/module3000.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -34,8 +34,8 @@ public:
Module3000(NeverhoodEngine *vm, Module *parentModule, int which);
virtual ~Module3000();
protected:
- int _soundVolume;
- bool _isWallBroken;
+ int _waterfallSoundVolume;
+ bool _isWaterfallRunning;
void createScene(int sceneNum, int which);
void updateScene();
};
diff --git a/engines/neverhood/modules/module3000_sprites.cpp b/engines/neverhood/modules/module3000_sprites.cpp
index 3c0c5fe209..3f883eaa72 100644
--- a/engines/neverhood/modules/module3000_sprites.cpp
+++ b/engines/neverhood/modules/module3000_sprites.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/modules/module3000_sprites.h b/engines/neverhood/modules/module3000_sprites.h
index 7316613327..2c1369251d 100644
--- a/engines/neverhood/modules/module3000_sprites.h
+++ b/engines/neverhood/modules/module3000_sprites.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/mouse.cpp b/engines/neverhood/mouse.cpp
index f11a3f99ea..0abbeba19d 100644
--- a/engines/neverhood/mouse.cpp
+++ b/engines/neverhood/mouse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/mouse.h b/engines/neverhood/mouse.h
index d6f42b4071..3e71f60de2 100644
--- a/engines/neverhood/mouse.h
+++ b/engines/neverhood/mouse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/navigationscene.cpp b/engines/neverhood/navigationscene.cpp
index adbb6aef7a..a1eeae9c1c 100644
--- a/engines/neverhood/navigationscene.cpp
+++ b/engines/neverhood/navigationscene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/navigationscene.h b/engines/neverhood/navigationscene.h
index c17446811c..8e286effb9 100644
--- a/engines/neverhood/navigationscene.h
+++ b/engines/neverhood/navigationscene.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/neverhood.cpp b/engines/neverhood/neverhood.cpp
index 1119bfbb08..c0a235cae3 100644
--- a/engines/neverhood/neverhood.cpp
+++ b/engines/neverhood/neverhood.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/neverhood.h b/engines/neverhood/neverhood.h
index 4d923d1f0e..0661bcba0e 100644
--- a/engines/neverhood/neverhood.h
+++ b/engines/neverhood/neverhood.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/palette.cpp b/engines/neverhood/palette.cpp
index 134fec7163..39f1ecdbf1 100644
--- a/engines/neverhood/palette.cpp
+++ b/engines/neverhood/palette.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/palette.h b/engines/neverhood/palette.h
index 016f856104..f1b365fe47 100644
--- a/engines/neverhood/palette.h
+++ b/engines/neverhood/palette.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/resource.cpp b/engines/neverhood/resource.cpp
index b45dbff3b9..8aba0ad37b 100644
--- a/engines/neverhood/resource.cpp
+++ b/engines/neverhood/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/resource.h b/engines/neverhood/resource.h
index 40236d9d22..a9d5b86d17 100644
--- a/engines/neverhood/resource.h
+++ b/engines/neverhood/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/resourceman.cpp b/engines/neverhood/resourceman.cpp
index f6937384c0..2065a13347 100644
--- a/engines/neverhood/resourceman.cpp
+++ b/engines/neverhood/resourceman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/resourceman.h b/engines/neverhood/resourceman.h
index 29bf40a6b8..306e02f788 100644
--- a/engines/neverhood/resourceman.h
+++ b/engines/neverhood/resourceman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/saveload.cpp b/engines/neverhood/saveload.cpp
index 01988769e6..8fe6c9a155 100644
--- a/engines/neverhood/saveload.cpp
+++ b/engines/neverhood/saveload.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/savefile.h"
diff --git a/engines/neverhood/scene.cpp b/engines/neverhood/scene.cpp
index b8cde73e81..58056b65a9 100644
--- a/engines/neverhood/scene.cpp
+++ b/engines/neverhood/scene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/scene.h b/engines/neverhood/scene.h
index e6183199ce..98a7fa5090 100644
--- a/engines/neverhood/scene.h
+++ b/engines/neverhood/scene.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/screen.cpp b/engines/neverhood/screen.cpp
index 901ab73b39..cc735c4c16 100644
--- a/engines/neverhood/screen.cpp
+++ b/engines/neverhood/screen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/screen.h b/engines/neverhood/screen.h
index a9b5af02f6..82ce90b245 100644
--- a/engines/neverhood/screen.h
+++ b/engines/neverhood/screen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/smackerplayer.cpp b/engines/neverhood/smackerplayer.cpp
index 014e094b94..e15e729f81 100644
--- a/engines/neverhood/smackerplayer.cpp
+++ b/engines/neverhood/smackerplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/smackerplayer.h b/engines/neverhood/smackerplayer.h
index dd7199dd6d..e08854bd96 100644
--- a/engines/neverhood/smackerplayer.h
+++ b/engines/neverhood/smackerplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/smackerscene.cpp b/engines/neverhood/smackerscene.cpp
index c3915200b5..2b43579130 100644
--- a/engines/neverhood/smackerscene.cpp
+++ b/engines/neverhood/smackerscene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/smackerscene.h b/engines/neverhood/smackerscene.h
index 8e5084512f..e2c1802b61 100644
--- a/engines/neverhood/smackerscene.h
+++ b/engines/neverhood/smackerscene.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/sound.cpp b/engines/neverhood/sound.cpp
index 023eda4c02..d53243d4ba 100644
--- a/engines/neverhood/sound.cpp
+++ b/engines/neverhood/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/sound.h b/engines/neverhood/sound.h
index 1f80f8d6b0..512b0fef98 100644
--- a/engines/neverhood/sound.h
+++ b/engines/neverhood/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/sprite.cpp b/engines/neverhood/sprite.cpp
index 05fc9b256f..a566b8ee3b 100644
--- a/engines/neverhood/sprite.cpp
+++ b/engines/neverhood/sprite.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/sprite.h b/engines/neverhood/sprite.h
index 1d17bf0e70..5422fd15d5 100644
--- a/engines/neverhood/sprite.h
+++ b/engines/neverhood/sprite.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/staticdata.cpp b/engines/neverhood/staticdata.cpp
index ec9c852118..552ea92604 100644
--- a/engines/neverhood/staticdata.cpp
+++ b/engines/neverhood/staticdata.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/neverhood/staticdata.h b/engines/neverhood/staticdata.h
index b1cab3bfcd..88dad56f78 100644
--- a/engines/neverhood/staticdata.h
+++ b/engines/neverhood/staticdata.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/obsolete.cpp b/engines/obsolete.cpp
index 6733a384be..d65fb13ec1 100644
--- a/engines/obsolete.cpp
+++ b/engines/obsolete.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/obsolete.h b/engines/obsolete.h
index 97bc7524a6..be0963a7dc 100644
--- a/engines/obsolete.h
+++ b/engines/obsolete.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/adlib.cpp b/engines/parallaction/adlib.cpp
index 134e5cfbf3..7c1dd1681f 100644
--- a/engines/parallaction/adlib.cpp
+++ b/engines/parallaction/adlib.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/balloons.cpp b/engines/parallaction/balloons.cpp
index 2a7e0ce375..234abff59a 100644
--- a/engines/parallaction/balloons.cpp
+++ b/engines/parallaction/balloons.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/callables_br.cpp b/engines/parallaction/callables_br.cpp
index 7d3e63dfba..ca60b8e578 100644
--- a/engines/parallaction/callables_br.cpp
+++ b/engines/parallaction/callables_br.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/callables_ns.cpp b/engines/parallaction/callables_ns.cpp
index 04642aa632..280cccd15f 100644
--- a/engines/parallaction/callables_ns.cpp
+++ b/engines/parallaction/callables_ns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/debug.cpp b/engines/parallaction/debug.cpp
index 4a8f8c71d7..1fea73a326 100644
--- a/engines/parallaction/debug.cpp
+++ b/engines/parallaction/debug.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/detection.cpp b/engines/parallaction/detection.cpp
index fb892c44b2..277f1cbe69 100644
--- a/engines/parallaction/detection.cpp
+++ b/engines/parallaction/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/dialogue.cpp b/engines/parallaction/dialogue.cpp
index 06ffd0b89b..62e2152816 100644
--- a/engines/parallaction/dialogue.cpp
+++ b/engines/parallaction/dialogue.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/disk.h b/engines/parallaction/disk.h
index 63e33dcfbd..2e43b6f87b 100644
--- a/engines/parallaction/disk.h
+++ b/engines/parallaction/disk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/disk_br.cpp b/engines/parallaction/disk_br.cpp
index f648f4b9a1..7458065b8c 100644
--- a/engines/parallaction/disk_br.cpp
+++ b/engines/parallaction/disk_br.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,7 +23,7 @@
#include "common/config-manager.h"
#include "common/fs.h"
#include "common/textconsole.h"
-#include "graphics/decoders/iff.h"
+#include "image/iff.h"
#include "parallaction/parallaction.h"
#include "parallaction/parser.h"
@@ -460,7 +460,7 @@ void AmigaDisk_br::loadBackground(BackgroundInfo& info, const char *filename) {
byte r,g,b;
const byte *p;
Common::SeekableReadStream *stream;
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
uint i;
stream = tryOpenFile("backs/" + Common::String(filename), ".ap");
@@ -544,7 +544,7 @@ MaskBuffer *AmigaDisk_br::loadMask(const char *name, uint32 w, uint32 h) {
return 0;
}
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.setNumRelevantPlanes(2); // use only 2 first bits from each pixels
decoder.setPixelPacking(true); // pack 4 2bit pixels into 1 byte
decoder.loadStream(*stream);
@@ -583,7 +583,7 @@ GfxObj* AmigaDisk_br::loadStatic(const char* name) {
Common::String sName = name;
Common::SeekableReadStream *stream = openFile("ras/" + sName, ".ras");
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.loadStream(*stream);
Graphics::Surface *surf = new Graphics::Surface;
@@ -720,7 +720,7 @@ GfxObj* AmigaDisk_br::loadObjects(const char *name, uint8 part) {
debugC(5, kDebugDisk, "AmigaDisk_br::loadObjects");
Common::SeekableReadStream *stream = openFile(name);
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.loadStream(*stream);
uint16 max = objectsMax[part];
diff --git a/engines/parallaction/disk_ns.cpp b/engines/parallaction/disk_ns.cpp
index ae28e864a9..28e61b04f9 100644
--- a/engines/parallaction/disk_ns.cpp
+++ b/engines/parallaction/disk_ns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -26,7 +26,7 @@
#include "common/memstream.h"
#include "common/substream.h"
#include "common/textconsole.h"
-#include "graphics/decoders/iff.h"
+#include "image/iff.h"
#include "parallaction/parser.h"
#include "parallaction/parallaction.h"
@@ -917,7 +917,7 @@ void AmigaDisk_ns::buildMask(byte* buf) {
void AmigaDisk_ns::loadBackground(BackgroundInfo& info, const char *name) {
Common::SeekableReadStream *s = openFile(name);
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.loadStream(*s);
info.bg.copyFrom(*decoder.getSurface());
@@ -935,7 +935,7 @@ void AmigaDisk_ns::loadBackground(BackgroundInfo& info, const char *name) {
info.palette.setEntry(i, r, g, b);
}
- const Common::Array<Graphics::IFFDecoder::PaletteRange> &paletteRanges = decoder.getPaletteRanges();
+ const Common::Array<Image::IFFDecoder::PaletteRange> &paletteRanges = decoder.getPaletteRanges();
for (uint j = 0; j < 6 && j < paletteRanges.size(); j++) {
PaletteFxRange range;
range._timer = paletteRanges[j].timer;
@@ -959,7 +959,7 @@ void AmigaDisk_ns::loadMask_internal(BackgroundInfo& info, const char *name) {
return; // no errors if missing mask files: not every location has one
}
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.setNumRelevantPlanes(2); // use only 2 first bits from each pixel
decoder.setPixelPacking(true); // pack 4 2bit pixels into 1 byte
decoder.loadStream(*s);
@@ -990,7 +990,7 @@ void AmigaDisk_ns::loadPath_internal(BackgroundInfo& info, const char *name) {
return; // no errors if missing path files: not every location has one
}
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.setNumRelevantPlanes(1); // use only first bit from each pixel
decoder.setPixelPacking(true); // pack 8 1bit pixels into 1 byte
decoder.loadStream(*s);
diff --git a/engines/parallaction/exec.cpp b/engines/parallaction/exec.cpp
index 122abf9e0e..ceba072173 100644
--- a/engines/parallaction/exec.cpp
+++ b/engines/parallaction/exec.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/exec.h b/engines/parallaction/exec.h
index 5968954ba0..15217d3a4c 100644
--- a/engines/parallaction/exec.h
+++ b/engines/parallaction/exec.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/exec_br.cpp b/engines/parallaction/exec_br.cpp
index 985ea29311..c2fbc415af 100644
--- a/engines/parallaction/exec_br.cpp
+++ b/engines/parallaction/exec_br.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/exec_ns.cpp b/engines/parallaction/exec_ns.cpp
index 816f220b1f..45fe0a9900 100644
--- a/engines/parallaction/exec_ns.cpp
+++ b/engines/parallaction/exec_ns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/font.cpp b/engines/parallaction/font.cpp
index 627c6ebe22..57b04deb12 100644
--- a/engines/parallaction/font.cpp
+++ b/engines/parallaction/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/gfxbase.cpp b/engines/parallaction/gfxbase.cpp
index e2d9532c8a..f1499f7782 100644
--- a/engines/parallaction/gfxbase.cpp
+++ b/engines/parallaction/gfxbase.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/graphics.cpp b/engines/parallaction/graphics.cpp
index dca1870cb7..06b315016a 100644
--- a/engines/parallaction/graphics.cpp
+++ b/engines/parallaction/graphics.cpp
@@ -9,12 +9,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/graphics.h b/engines/parallaction/graphics.h
index 401e753775..55e2bbca84 100644
--- a/engines/parallaction/graphics.h
+++ b/engines/parallaction/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/gui.cpp b/engines/parallaction/gui.cpp
index aa9c29ac57..a2d33f0256 100644
--- a/engines/parallaction/gui.cpp
+++ b/engines/parallaction/gui.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/gui.h b/engines/parallaction/gui.h
index 9f2e96475b..c8cad29935 100644
--- a/engines/parallaction/gui.h
+++ b/engines/parallaction/gui.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/gui_br.cpp b/engines/parallaction/gui_br.cpp
index 2ec5ba6e8d..ae3d136b0e 100644
--- a/engines/parallaction/gui_br.cpp
+++ b/engines/parallaction/gui_br.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/gui_ns.cpp b/engines/parallaction/gui_ns.cpp
index ae32a416e3..3d977c9e51 100644
--- a/engines/parallaction/gui_ns.cpp
+++ b/engines/parallaction/gui_ns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/input.cpp b/engines/parallaction/input.cpp
index a445ce0138..290af339bb 100644
--- a/engines/parallaction/input.cpp
+++ b/engines/parallaction/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/input.h b/engines/parallaction/input.h
index a303eb96c8..f7a2d8c1d5 100644
--- a/engines/parallaction/input.h
+++ b/engines/parallaction/input.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/inventory.cpp b/engines/parallaction/inventory.cpp
index 1cae63be42..fcac9f08e2 100644
--- a/engines/parallaction/inventory.cpp
+++ b/engines/parallaction/inventory.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/inventory.h b/engines/parallaction/inventory.h
index d5cf8badf0..832bd7bf36 100644
--- a/engines/parallaction/inventory.h
+++ b/engines/parallaction/inventory.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/objects.cpp b/engines/parallaction/objects.cpp
index 50556c3ec4..50a5b38d8d 100644
--- a/engines/parallaction/objects.cpp
+++ b/engines/parallaction/objects.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/objects.h b/engines/parallaction/objects.h
index 89e8134431..7cee0460c1 100644
--- a/engines/parallaction/objects.h
+++ b/engines/parallaction/objects.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/parallaction.cpp b/engines/parallaction/parallaction.cpp
index e7be1eb8a3..2b75e78582 100644
--- a/engines/parallaction/parallaction.cpp
+++ b/engines/parallaction/parallaction.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/parallaction.h b/engines/parallaction/parallaction.h
index 203a0168ea..6ea50584f8 100644
--- a/engines/parallaction/parallaction.h
+++ b/engines/parallaction/parallaction.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/parallaction_br.cpp b/engines/parallaction/parallaction_br.cpp
index 586e4bbd6a..1e1c0b0a3d 100644
--- a/engines/parallaction/parallaction_br.cpp
+++ b/engines/parallaction/parallaction_br.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/parallaction_ns.cpp b/engines/parallaction/parallaction_ns.cpp
index 91e8c78fc2..144c2b3a98 100644
--- a/engines/parallaction/parallaction_ns.cpp
+++ b/engines/parallaction/parallaction_ns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/parser.cpp b/engines/parallaction/parser.cpp
index 5d61c2988c..c37cee692e 100644
--- a/engines/parallaction/parser.cpp
+++ b/engines/parallaction/parser.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/parser.h b/engines/parallaction/parser.h
index 622e507aad..7b77f58eb0 100644
--- a/engines/parallaction/parser.h
+++ b/engines/parallaction/parser.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/parser_br.cpp b/engines/parallaction/parser_br.cpp
index e60349ffa8..c6693dc65b 100644
--- a/engines/parallaction/parser_br.cpp
+++ b/engines/parallaction/parser_br.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/parser_ns.cpp b/engines/parallaction/parser_ns.cpp
index ac5e7c7135..710f00ee4d 100644
--- a/engines/parallaction/parser_ns.cpp
+++ b/engines/parallaction/parser_ns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/saveload.cpp b/engines/parallaction/saveload.cpp
index 2ecc5377a4..72e9400acd 100644
--- a/engines/parallaction/saveload.cpp
+++ b/engines/parallaction/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/saveload.h b/engines/parallaction/saveload.h
index 3976ee1290..c9b724e69d 100644
--- a/engines/parallaction/saveload.h
+++ b/engines/parallaction/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -71,12 +71,12 @@ public:
};
class SaveLoad_br : public SaveLoad {
- Parallaction_br *_vm;
+// Parallaction_br *_vm;
virtual void doLoadGame(uint16 slot);
virtual void doSaveGame(uint16 slot, const char* name);
public:
- SaveLoad_br(Parallaction_br *vm, Common::SaveFileManager *saveFileMan) : SaveLoad(saveFileMan, "bra"), _vm(vm) { }
+ SaveLoad_br(Parallaction_br *vm, Common::SaveFileManager *saveFileMan) : SaveLoad(saveFileMan, "bra") { }
virtual void getGamePartProgress(bool *complete, int size);
virtual void setPartComplete(const char *part);
diff --git a/engines/parallaction/sound.h b/engines/parallaction/sound.h
index e8dde78ddc..79cc346f62 100644
--- a/engines/parallaction/sound.h
+++ b/engines/parallaction/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/sound_br.cpp b/engines/parallaction/sound_br.cpp
index ea769de9e8..d13b318ace 100644
--- a/engines/parallaction/sound_br.cpp
+++ b/engines/parallaction/sound_br.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/sound_ns.cpp b/engines/parallaction/sound_ns.cpp
index ed3031e94e..692389b490 100644
--- a/engines/parallaction/sound_ns.cpp
+++ b/engines/parallaction/sound_ns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/staticres.cpp b/engines/parallaction/staticres.cpp
index 32404037f0..40bac5b64d 100644
--- a/engines/parallaction/staticres.cpp
+++ b/engines/parallaction/staticres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/walk.cpp b/engines/parallaction/walk.cpp
index 19162cd7db..40f0bd2805 100644
--- a/engines/parallaction/walk.cpp
+++ b/engines/parallaction/walk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/parallaction/walk.h b/engines/parallaction/walk.h
index ae6db6eaf1..f77e834fcb 100644
--- a/engines/parallaction/walk.h
+++ b/engines/parallaction/walk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/pegasus/ai/ai_area.cpp b/engines/pegasus/ai/ai_area.cpp
index 5ac8af8812..9cab568d66 100644
--- a/engines/pegasus/ai/ai_area.cpp
+++ b/engines/pegasus/ai/ai_area.cpp
@@ -234,6 +234,7 @@ void AIArea::playAIAreaSequence(const LowerClientSignature, const LowerAreaSigna
vm->_cursor->hide();
while (_middleAreaMovie.isRunning()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
@@ -258,6 +259,7 @@ void AIArea::playAIAreaSequence(const LowerClientSignature, const LowerAreaSigna
vm->_cursor->hide();
while (_rightAreaMovie.isRunning()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
diff --git a/engines/pegasus/cursor.cpp b/engines/pegasus/cursor.cpp
index ad0d2c2d7d..602ae88068 100644
--- a/engines/pegasus/cursor.cpp
+++ b/engines/pegasus/cursor.cpp
@@ -28,7 +28,7 @@
#include "common/system.h"
#include "graphics/cursorman.h"
#include "graphics/surface.h"
-#include "graphics/decoders/pict.h"
+#include "image/pict.h"
#include "pegasus/cursor.h"
#include "pegasus/graphics.h"
@@ -148,7 +148,7 @@ void Cursor::loadCursorImage(CursorInfo &cursorInfo) {
Common::SeekableReadStream *pictStream = vm->_resFork->getResource(MKTAG('P', 'I', 'C', 'T'), cursorInfo.tag + 1000);
if (pictStream) {
- Graphics::PICTDecoder pict;
+ Image::PICTDecoder pict;
if (!pict.loadStream(*pictStream))
error("Failed to decode cursor PICT %d", cursorInfo.tag + 1000);
@@ -166,7 +166,7 @@ void Cursor::loadCursorImage(CursorInfo &cursorInfo) {
error("Failed to find color icon %d", cursorInfo.tag);
// PixMap section
- Graphics::PICTDecoder::PixMap pixMap = Graphics::PICTDecoder::readPixMap(*cicnStream);
+ Image::PICTDecoder::PixMap pixMap = Image::PICTDecoder::readPixMap(*cicnStream);
// Mask section
cicnStream->readUint32BE(); // mask baseAddr
diff --git a/engines/pegasus/energymonitor.cpp b/engines/pegasus/energymonitor.cpp
index be9d205360..40e54afb89 100644
--- a/engines/pegasus/energymonitor.cpp
+++ b/engines/pegasus/energymonitor.cpp
@@ -269,6 +269,7 @@ void EnergyMonitor::calibrateEnergyBar() {
// Make sure warning light is hidden...
_energyLight.hide();
while (getCurrentEnergy() != (int32)kMaxJMPEnergy) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
diff --git a/engines/pegasus/fader.cpp b/engines/pegasus/fader.cpp
index a2bbf22944..80ce8ef5dc 100644
--- a/engines/pegasus/fader.cpp
+++ b/engines/pegasus/fader.cpp
@@ -94,6 +94,7 @@ void Fader::startFaderSync(const FaderMoveSpec &spec) {
start();
while (isFading()) {
+ InputDevice.pumpEvents();
((PegasusEngine *)g_engine)->checkCallBacks();
useIdleTime();
}
diff --git a/engines/pegasus/input.cpp b/engines/pegasus/input.cpp
index b74e4a4c45..283d55421f 100644
--- a/engines/pegasus/input.cpp
+++ b/engines/pegasus/input.cpp
@@ -81,9 +81,7 @@ void InputDeviceManager::getInput(Input &input, const InputBits filter) {
// (ie. if one uses enter to access the restore menu, we never receive
// the key up event, which leads to bad things)
// This is to closely emulate what the GetKeys() function did on Mac OS
- Common::Event event;
- while (g_system->getEventManager()->pollEvent(event))
- ;
+ pumpEvents();
// Now create the bitfield
InputBits currentBits = 0;
@@ -206,6 +204,13 @@ bool InputDeviceManager::notifyEvent(const Common::Event &event) {
return false;
}
+void InputDeviceManager::pumpEvents() {
+ // Just poll for events. notifyEvent() will pick up on them.
+ Common::Event event;
+ while (g_system->getEventManager()->pollEvent(event))
+ ;
+}
+
int operator==(const Input &arg1, const Input &arg2) {
return arg1._inputState == arg2._inputState;
}
diff --git a/engines/pegasus/input.h b/engines/pegasus/input.h
index 3e938fa42a..ba6f11dba0 100644
--- a/engines/pegasus/input.h
+++ b/engines/pegasus/input.h
@@ -50,6 +50,8 @@ public:
void waitInput(const InputBits);
+ void pumpEvents();
+
protected:
friend class Common::Singleton<SingletonBaseType>;
diff --git a/engines/pegasus/interface.cpp b/engines/pegasus/interface.cpp
index f2429bf36a..f8ae6a0752 100644
--- a/engines/pegasus/interface.cpp
+++ b/engines/pegasus/interface.cpp
@@ -604,6 +604,7 @@ void Interface::raiseInventoryDrawerSync() {
raiseInventoryDrawer(false);
while (_inventoryLid.isRunning()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
@@ -613,6 +614,7 @@ void Interface::raiseInventoryDrawerSync() {
inventoryLidOpen(false);
while (_inventoryPush.isFading()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
@@ -628,6 +630,7 @@ void Interface::lowerInventoryDrawerSync() {
lowerInventoryDrawer(false);
while (_inventoryPush.isFading()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
@@ -637,6 +640,7 @@ void Interface::lowerInventoryDrawerSync() {
inventoryDrawerDown(false);
while (_inventoryLid.isRunning()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
@@ -652,6 +656,7 @@ void Interface::raiseBiochipDrawerSync() {
raiseBiochipDrawer(false);
while (_biochipLid.isRunning()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
@@ -661,6 +666,7 @@ void Interface::raiseBiochipDrawerSync() {
biochipLidOpen(false);
while (_biochipPush.isFading()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
@@ -676,6 +682,7 @@ void Interface::lowerBiochipDrawerSync() {
lowerBiochipDrawer(false);
while (_biochipPush.isFading()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
@@ -685,6 +692,7 @@ void Interface::lowerBiochipDrawerSync() {
biochipDrawerDown(false);
while (_biochipLid.isRunning()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
diff --git a/engines/pegasus/items/inventorypicture.cpp b/engines/pegasus/items/inventorypicture.cpp
index fc812faae2..bfdc382f5d 100644
--- a/engines/pegasus/items/inventorypicture.cpp
+++ b/engines/pegasus/items/inventorypicture.cpp
@@ -331,6 +331,7 @@ void InventoryItemsPicture::playEndMessage(DisplayElement *pushElement) {
endMessage.start();
while (endMessage.isRunning()) {
+ InputDevice.pumpEvents();
vm->checkCallBacks();
vm->refreshDisplay();
g_system->delayMillis(10);
diff --git a/engines/pegasus/items/item.cpp b/engines/pegasus/items/item.cpp
index 8089f2b93d..830d3f2f34 100644
--- a/engines/pegasus/items/item.cpp
+++ b/engines/pegasus/items/item.cpp
@@ -39,9 +39,9 @@
namespace Pegasus {
Item::Item(const ItemID id, const NeighborhoodID neighborhood, const RoomID room, const DirectionConstant direction) : IDObject(id) {
- _itemNeighborhood = neighborhood;
- _itemRoom = room;
- _itemDirection = direction;
+ _originalNeighborhood = _itemNeighborhood = neighborhood;
+ _originalRoom = _itemRoom = room;
+ _originalDirection = _itemDirection = direction;
_itemWeight = 1;
_itemOwnerID = kNoActorID;
_itemState = 0;
@@ -131,6 +131,14 @@ Item::~Item() {
delete[] _itemExtras.entries;
}
+void Item::reset() {
+ _itemNeighborhood = _originalNeighborhood;
+ _itemRoom = _originalRoom;
+ _itemDirection = _originalDirection;
+ _itemOwnerID = kNoActorID;
+ _itemState = 0;
+}
+
void Item::writeToStream(Common::WriteStream *stream) {
stream->writeUint16BE(_itemNeighborhood);
stream->writeUint16BE(_itemRoom);
diff --git a/engines/pegasus/items/item.h b/engines/pegasus/items/item.h
index a1451b2a58..26cccf043c 100644
--- a/engines/pegasus/items/item.h
+++ b/engines/pegasus/items/item.h
@@ -339,6 +339,9 @@ public:
void findItemExtra(const uint32 extraID, ItemExtraEntry &entry);
+ // Reset to its original state at the beginning of the game
+ void reset();
+
protected:
NeighborhoodID _itemNeighborhood;
RoomID _itemRoom;
@@ -347,6 +350,10 @@ protected:
WeightType _itemWeight;
ItemState _itemState;
+ NeighborhoodID _originalNeighborhood;
+ RoomID _originalRoom;
+ DirectionConstant _originalDirection;
+
JMPItemInfo _itemInfo;
ItemStateInfo _sharedAreaInfo;
ItemExtraInfo _itemExtras;
diff --git a/engines/pegasus/items/itemlist.cpp b/engines/pegasus/items/itemlist.cpp
index ff8cae546b..4b58d9ad78 100644
--- a/engines/pegasus/items/itemlist.cpp
+++ b/engines/pegasus/items/itemlist.cpp
@@ -64,4 +64,9 @@ Item *ItemList::findItemByID(const ItemID id) {
return 0;
}
+void ItemList::resetAllItems() {
+ for (ItemIterator it = begin(); it != end(); it++)
+ (*it)->reset();
+}
+
} // End of namespace Pegasus
diff --git a/engines/pegasus/items/itemlist.h b/engines/pegasus/items/itemlist.h
index 9b59206ab3..22bef2c96e 100644
--- a/engines/pegasus/items/itemlist.h
+++ b/engines/pegasus/items/itemlist.h
@@ -48,6 +48,7 @@ public:
virtual void readFromStream(Common::ReadStream *stream);
Item *findItemByID(const ItemID id);
+ void resetAllItems();
};
typedef ItemList::iterator ItemIterator;
diff --git a/engines/pegasus/menu.cpp b/engines/pegasus/menu.cpp
index e55c006f86..4bbda8fd93 100644
--- a/engines/pegasus/menu.cpp
+++ b/engines/pegasus/menu.cpp
@@ -227,6 +227,7 @@ MainMenu::MainMenu() : GameMenu(kMainMenuID), _menuBackground(0), _overviewButto
_menuLoop.attachFader(&_menuFader);
_menuLoop.initFromAIFFFile("Sounds/Main Menu.aiff");
+ _menuFader.setMasterVolume(((PegasusEngine *)g_engine)->getAmbienceLevel());
updateDisplay();
}
@@ -736,6 +737,7 @@ DeathMenu::DeathMenu(const DeathReason deathReason) : GameMenu(kDeathMenuID), _d
_largeSelect.startDisplaying();
} else {
_triumphSound.initFromQuickTime("Sounds/Caldoria/Galactic Triumph");
+ _triumphSound.setVolume(((PegasusEngine *)g_engine)->getAmbienceLevel());
_triumphSound.playSound();
}
diff --git a/engines/pegasus/neighborhood/caldoria/caldoria.cpp b/engines/pegasus/neighborhood/caldoria/caldoria.cpp
index 0707a83e87..9d2d6723a9 100644
--- a/engines/pegasus/neighborhood/caldoria/caldoria.cpp
+++ b/engines/pegasus/neighborhood/caldoria/caldoria.cpp
@@ -196,6 +196,8 @@ void Caldoria::start() {
if (!pullbackMovie->loadFile("Images/Caldoria/Pullback.movie"))
error("Could not load pullback movie");
+ pullbackMovie->setVolume(MIN<uint>(_vm->getSoundFXLevel(), 0xFF));
+
// Draw the first frame so we can fade to it
const Graphics::Surface *frame = pullbackMovie->decodeNextFrame();
assert(frame);
@@ -907,7 +909,7 @@ void Caldoria::arriveAtCaldoria49() {
setCurrentAlternate(kAltCaldoriaNormal);
// Need to force the loop to play.
- if (GameState.getCurrentDirection() == kNorth) {
+ if (GameState.getCurrentDirection() == kNorth && !GameState.getCaldoriaSinclairShot()) {
GameState.setCaldoriaFuseTimeLimit(kSinclairShootsTimeLimit);
startExtraSequence(kCa49NorthVoiceAnalysis, kExtraCompletedFlag, kFilterNoInput);
}
@@ -1916,10 +1918,13 @@ uint Caldoria::getNumHints() {
numHints = 1;
}
break;
+#if 0
+ // The hint file is missing
case MakeRoomView(kCaldoria49, kEast):
case MakeRoomView(kCaldoria54, kEast):
numHints = 1;
break;
+#endif
case MakeRoomView(kCaldoria49, kNorth):
numHints = 1;
break;
@@ -1950,9 +1955,12 @@ Common::String Caldoria::getHintMovie(uint hintNum) {
}
return "Images/AI/Globals/XGLOB1A";
+#if 0
+ // The hint file is missing
case MakeRoomView(kCaldoria49, kEast):
case MakeRoomView(kCaldoria54, kEast):
return "Images/AI/Caldoria/X49E";
+#endif
case MakeRoomView(kCaldoria49, kNorth):
return "Images/AI/Caldoria/X49NB2";
}
diff --git a/engines/pegasus/neighborhood/caldoria/caldoriabomb.cpp b/engines/pegasus/neighborhood/caldoria/caldoriabomb.cpp
index abf34d3863..c964e3458b 100644
--- a/engines/pegasus/neighborhood/caldoria/caldoriabomb.cpp
+++ b/engines/pegasus/neighborhood/caldoria/caldoriabomb.cpp
@@ -1167,6 +1167,18 @@ CaldoriaBomb::~CaldoriaBomb() {
delete[] _bombLevel[i];
}
+void CaldoriaBomb::setSoundFXLevel(const uint16) {
+ // The transition sounds between levels are ambience, so overwrite what
+ // Neighborhood::setSoundFXLevel does and keep using the ambience volume level
+ if (_timer.isRunning())
+ _owner->_navMovie.setVolume(((PegasusEngine *)g_engine)->getAmbienceLevel());
+}
+
+void CaldoriaBomb::setAmbienceLevel(const uint16 level) {
+ if (_timer.isRunning())
+ _owner->_navMovie.setVolume(level);
+}
+
void CaldoriaBomb::openInteraction() {
_grid.moveElementTo(kCaldoriaBombGridLeft, kCaldoriaBombGridTop);
_grid.setDisplayOrder(kCaldoriaBombGridOrder);
@@ -1234,6 +1246,7 @@ void CaldoriaBomb::receiveNotification(Notification *notification, const Notific
_timer.start();
_currentLevel = 0;
_lastVertex = -1;
+ _owner->_navMovie.setVolume(((PegasusEngine *)g_engine)->getAmbienceLevel());
startBombAmbient("Sounds/Caldoria/BmbLoop1.22K.AIFF");
break;
case kCaldoria56BombStage2:
@@ -1258,6 +1271,7 @@ void CaldoriaBomb::receiveNotification(Notification *notification, const Notific
_grid.hide();
_timer.stop();
_timer.hide();
+ _owner->_navMovie.setVolume(((PegasusEngine *)g_engine)->getSoundFXLevel());
_owner->loadLoopSound1("");
_owner->playDeathExtra(kCaldoria56BombExplodes, kDeathNuclearExplosion);
}
@@ -1411,6 +1425,7 @@ void CaldoriaBomb::handleInput(const Input &input, const Hotspot *hotspot) {
_timer.stop();
_grid.hide();
_timer.hide();
+ _owner->_navMovie.setVolume(((PegasusEngine *)g_engine)->getSoundFXLevel());
_owner->startExtraSequence(kCaldoria56BombStage7, kExtraCompletedFlag, kFilterNoInput);
break;
}
diff --git a/engines/pegasus/neighborhood/caldoria/caldoriabomb.h b/engines/pegasus/neighborhood/caldoria/caldoriabomb.h
index 5bb39b4122..ba6d1e8998 100644
--- a/engines/pegasus/neighborhood/caldoria/caldoriabomb.h
+++ b/engines/pegasus/neighborhood/caldoria/caldoriabomb.h
@@ -122,6 +122,9 @@ public:
CaldoriaBomb(Neighborhood *, NotificationManager *);
virtual ~CaldoriaBomb();
+ void setSoundFXLevel(const uint16);
+ void setAmbienceLevel(const uint16);
+
long getNumHints();
Common::String getHintMovie(uint);
void doSolve();
diff --git a/engines/pegasus/neighborhood/caldoria/caldoriamessages.cpp b/engines/pegasus/neighborhood/caldoria/caldoriamessages.cpp
index a3ce97d438..2ae990d775 100644
--- a/engines/pegasus/neighborhood/caldoria/caldoriamessages.cpp
+++ b/engines/pegasus/neighborhood/caldoria/caldoriamessages.cpp
@@ -24,6 +24,7 @@
*/
#include "pegasus/gamestate.h"
+#include "pegasus/pegasus.h"
#include "pegasus/neighborhood/neighborhood.h"
#include "pegasus/neighborhood/caldoria/caldoria.h"
#include "pegasus/neighborhood/caldoria/caldoriamessages.h"
@@ -45,6 +46,10 @@ void CaldoriaMessages::openInteraction() {
_messageNumber = 1;
}
+void CaldoriaMessages::setSoundFXLevel(const uint16 fxLevel) {
+ _messageMovie.setVolume(fxLevel);
+}
+
void CaldoriaMessages::initInteraction() {
GameInteraction::_owner->startExtraSequence(kCaBedroomVidPhone, kExtraCompletedFlag, kFilterNoInput);
}
@@ -101,6 +106,7 @@ void CaldoriaMessages::play1Message(uint messageNumber) {
GameState.setCaldoriaSeenMessages(true);
}
+ _messageMovie.setVolume(((PegasusEngine *)g_engine)->getSoundFXLevel());
_messageMovie.moveElementTo(kCaldoriaMessageLeft, kCaldoriaMessageTop);
_messageMovie.setDisplayOrder(kCaldoriaMessagesOrder);
_messageMovie.startDisplaying();
diff --git a/engines/pegasus/neighborhood/caldoria/caldoriamessages.h b/engines/pegasus/neighborhood/caldoria/caldoriamessages.h
index 955fe10ce9..b2fc7c3bf9 100644
--- a/engines/pegasus/neighborhood/caldoria/caldoriamessages.h
+++ b/engines/pegasus/neighborhood/caldoria/caldoriamessages.h
@@ -41,6 +41,8 @@ public:
CaldoriaMessages(Neighborhood *, const NotificationID, NotificationManager *);
virtual ~CaldoriaMessages() {}
+ void setSoundFXLevel(const uint16);
+
protected:
void openInteraction();
void initInteraction();
diff --git a/engines/pegasus/neighborhood/mars/mars.cpp b/engines/pegasus/neighborhood/mars/mars.cpp
index 435bcd4c9e..df5a75541c 100644
--- a/engines/pegasus/neighborhood/mars/mars.cpp
+++ b/engines/pegasus/neighborhood/mars/mars.cpp
@@ -535,6 +535,10 @@ void Mars::doorOpened() {
}
void Mars::setUpReactorEnergyDrain() {
+ // If there's no energy monitor, there's nothing to do
+ if (!g_energyMonitor)
+ return;
+
switch (GameState.getCurrentRoomAndView()) {
case MakeRoomView(kMars51, kEast):
if (GameState.isCurrentDoorOpen()) {
@@ -2398,6 +2402,8 @@ void Mars::doCanyonChase() {
if (!video->loadFile("Images/Mars/M44ESA.movie"))
error("Could not load interface->shuttle transition video");
+ video->setVolume(MIN<uint>(_vm->getSoundFXLevel(), 0xFF));
+
video->start();
while (!_vm->shouldQuit() && !video->endOfVideo()) {
@@ -2476,6 +2482,7 @@ void Mars::doCanyonChase() {
_shuttleEnergyMeter.initShuttleEnergyMeter();
_shuttleEnergyMeter.powerUpMeter();
while (_shuttleEnergyMeter.isFading()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
g_system->updateScreen();
@@ -2607,6 +2614,7 @@ void Mars::startUpFromFinishedSpaceChase() {
kShuttleJunkTop, false);
initOneMovie(&_explosions, "Images/Mars/Explosions.movie", kShuttleWeaponFrontOrder, 0, 0, false);
+ _explosions.setVolume(_vm->getSoundFXLevel());
_explosionCallBack.initCallBack(&_explosions, kCallBackAtExtremes);
_energyBeam.initShuttleWeapon();
@@ -2645,6 +2653,7 @@ void Mars::startUpFromFinishedSpaceChase() {
initOneMovie(&_canyonChaseMovie, "Images/Mars/M98EAS.movie", kShuttleTractorBeamMovieOrder,
kShuttleWindowLeft, kShuttleWindowTop, true);
+ _canyonChaseMovie.setVolume(_vm->getSoundFXLevel());
_canyonChaseMovie.setTime(_canyonChaseMovie.getDuration());
_canyonChaseMovie.redrawMovieWorld();
}
@@ -2720,6 +2729,7 @@ void Mars::startUpFromSpaceChase() {
kShuttleJunkTop, false);
initOneMovie(&_explosions, "Images/Mars/Explosions.movie", kShuttleWeaponFrontOrder, 0, 0, false);
+ _explosions.setVolume(_vm->getSoundFXLevel());
_explosionCallBack.initCallBack(&_explosions, kCallBackAtExtremes);
_energyBeam.initShuttleWeapon();
@@ -2783,6 +2793,10 @@ void Mars::startUpFromSpaceChase() {
void Mars::setSoundFXLevel(const uint16 level) {
Neighborhood::setSoundFXLevel(level);
+ if (GameState.getCurrentRoomAndView() == MakeRoomView(kMars48, kEast) &&
+ !GameState.getMarsAvoidedReactorRobot())
+ _loop2Fader.setMasterVolume(level);
+
if (_canyonChaseMovie.isMovieValid())
_canyonChaseMovie.setVolume(level);
@@ -2812,6 +2826,7 @@ void Mars::marsTimerExpired(MarsTimerEvent &event) {
GameState.setScoringEnteredLaunchTube();
while (_canyonChaseMovie.isRunning()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
@@ -2836,6 +2851,7 @@ void Mars::marsTimerExpired(MarsTimerEvent &event) {
initOneMovie(&_junk, "Images/Mars/Junk.movie", kShuttleJunkOrder, kShuttleJunkLeft, kShuttleJunkTop, false);
initOneMovie(&_explosions, "Images/Mars/Explosions.movie", kShuttleWeaponFrontOrder, 0, 0, false);
+ _explosions.setVolume(_vm->getSoundFXLevel());
_explosionCallBack.initCallBack(&_explosions, kCallBackAtExtremes);
_energyBeam.initShuttleWeapon();
@@ -2945,6 +2961,7 @@ void Mars::marsTimerExpired(MarsTimerEvent &event) {
showBigExplosion(r, kShuttleAlienShipOrder);
while (_explosions.isRunning()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
g_system->delayMillis(10);
@@ -3138,6 +3155,7 @@ void Mars::spaceChaseClick(const Input &input, const HotSpotID id) {
_shuttleEnergyMeter.drainForTractorBeam();
while (_shuttleEnergyMeter.isFading()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
@@ -3167,11 +3185,13 @@ void Mars::spaceChaseClick(const Input &input, const HotSpotID id) {
// Shameless reuse of a variable :P
initOneMovie(&_canyonChaseMovie, "Images/Mars/M98EAS.movie", kShuttleTractorBeamMovieOrder,
kShuttleWindowLeft, kShuttleWindowTop, true);
+ _canyonChaseMovie.setVolume(_vm->getSoundFXLevel());
_canyonChaseMovie.redrawMovieWorld();
playMovieSegment(&_canyonChaseMovie, 0, _canyonChaseMovie.getDuration());
// wait here until any junk clears...
while (_junk.junkFlying()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
diff --git a/engines/pegasus/neighborhood/neighborhood.cpp b/engines/pegasus/neighborhood/neighborhood.cpp
index 3116bd7978..c9be349694 100644
--- a/engines/pegasus/neighborhood/neighborhood.cpp
+++ b/engines/pegasus/neighborhood/neighborhood.cpp
@@ -470,6 +470,7 @@ void Neighborhood::requestSpotSound(const TimeValue in, const TimeValue out, con
void Neighborhood::playSpotSoundSync(const TimeValue in, const TimeValue out) {
// Let the action queue play out first...
while (!actionQueueEmpty()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->checkNotifications();
@@ -480,6 +481,7 @@ void Neighborhood::playSpotSoundSync(const TimeValue in, const TimeValue out) {
_spotSounds.playSoundSegment(in, out);
while (_spotSounds.isPlaying()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
@@ -1105,6 +1107,7 @@ void Neighborhood::startTurnPush(const TurnDirection turnDirection, const TimeVa
_turnPush.continueFader();
do {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
@@ -1492,7 +1495,15 @@ void Neighborhood::loadLoopSound2(const Common::String &soundName, uint16 volume
if (!_loop2SoundString.empty()) {
_soundLoop2.initFromAIFFFile(_loop2SoundString);
_soundLoop2.loopSound();
- _loop2Fader.setMasterVolume(_vm->getAmbienceLevel());
+ // HACK: Some ambient loops are actually sound effects, like Ares waiting at
+ // the reactor and Poseidon at the launch console. Detect these and use the
+ // SFX volume instead of ambience.
+ if (soundName == "Sounds/Mars/Robot Loop.aiff" ||
+ soundName == "Sounds/Norad/Breathing Typing.22K.AIFF" ||
+ soundName == "Sounds/Norad/N54NAS.32K.AIFF")
+ _loop2Fader.setMasterVolume(_vm->getSoundFXLevel());
+ else
+ _loop2Fader.setMasterVolume(_vm->getAmbienceLevel());
_loop2Fader.setFaderValue(0);
faderMove.makeTwoKnotFaderSpec(fadeScale, 0, 0, fadeIn, volume);
_loop2Fader.startFaderSync(faderMove);
@@ -1577,6 +1588,7 @@ void Neighborhood::closeCroppedMovie() {
void Neighborhood::playCroppedMovieOnce(const Common::String &movieName, CoordType left, CoordType top, const InputBits interruptionFilter) {
openCroppedMovie(movieName, left, top);
+ _croppedMovie.setVolume(_vm->getSoundFXLevel());
_croppedMovie.redrawMovieWorld();
_croppedMovie.start();
@@ -1616,6 +1628,7 @@ void Neighborhood::playMovieSegment(Movie *movie, TimeValue startTime, TimeValue
movie->start();
while (movie->isRunning()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
diff --git a/engines/pegasus/neighborhood/neighborhood.h b/engines/pegasus/neighborhood/neighborhood.h
index 3c1c5eac92..f7f2b038c6 100644
--- a/engines/pegasus/neighborhood/neighborhood.h
+++ b/engines/pegasus/neighborhood/neighborhood.h
@@ -91,6 +91,7 @@ struct QueueRequest {
bool operator==(const QueueRequest &arg1, const QueueRequest &arg2);
bool operator!=(const QueueRequest &arg1, const QueueRequest &arg2);
+class CaldoriaBomb;
class GameInteraction;
class Item;
class Neighborhood;
@@ -109,6 +110,7 @@ protected:
typedef Common::Queue<QueueRequest> NeighborhoodActionQueue;
class Neighborhood : public IDObject, public NotificationReceiver, public InputHandler, public Idler {
+friend class CaldoriaBomb;
friend class StriderCallBack;
public:
diff --git a/engines/pegasus/neighborhood/norad/delta/globegame.cpp b/engines/pegasus/neighborhood/norad/delta/globegame.cpp
index 0b95e9bc2b..5c321a8e8a 100644
--- a/engines/pegasus/neighborhood/norad/delta/globegame.cpp
+++ b/engines/pegasus/neighborhood/norad/delta/globegame.cpp
@@ -453,8 +453,13 @@ GlobeGame::GlobeGame(Neighborhood *handler) : GameInteraction(kNoradGlobeGameInt
_neighborhoodNotification = handler->getNeighborhoodNotification();
}
+void GlobeGame::setSoundFXLevel(const uint16 fxLevel) {
+ _monitorMovie.setVolume(fxLevel);
+}
+
void GlobeGame::openInteraction() {
_monitorMovie.initFromMovieFile("Images/Norad Delta/N79 Left Monitor");
+ _monitorMovie.setVolume(((PegasusEngine *)g_engine)->getSoundFXLevel());
_monitorMovie.moveElementTo(kGlobeMonitorLeft, kGlobeMonitorTop);
_monitorMovie.setDisplayOrder(kGlobeMonitorLayer);
_monitorMovie.startDisplaying();
diff --git a/engines/pegasus/neighborhood/norad/delta/globegame.h b/engines/pegasus/neighborhood/norad/delta/globegame.h
index 73ed48866f..93235a1784 100644
--- a/engines/pegasus/neighborhood/norad/delta/globegame.h
+++ b/engines/pegasus/neighborhood/norad/delta/globegame.h
@@ -98,6 +98,8 @@ public:
GlobeGame(Neighborhood *);
virtual ~GlobeGame() {}
+ void setSoundFXLevel(const uint16);
+
void handleInput(const Input &, const Hotspot *);
void clickInHotspot(const Input &, const Hotspot *);
void activateHotspots();
diff --git a/engines/pegasus/neighborhood/norad/delta/noraddelta.cpp b/engines/pegasus/neighborhood/norad/delta/noraddelta.cpp
index 1eea2f0156..ee047d72b2 100644
--- a/engines/pegasus/neighborhood/norad/delta/noraddelta.cpp
+++ b/engines/pegasus/neighborhood/norad/delta/noraddelta.cpp
@@ -514,6 +514,17 @@ void NoradDelta::openDoor() {
}
}
+void NoradDelta::cantMoveThatWay(CanOpenDoorReason reason) {
+ // WORKAROUND: The door outside the launch console room isn't treated as a door,
+ // so play the correct sound.
+ if (reason == kCantMoveBlocked && GameState.getCurrentRoomAndView() == MakeRoomView(kNorad67, kNorth)) {
+ cantOpenDoor(kCantOpenLocked);
+ return;
+ }
+
+ Neighborhood::cantMoveThatWay(reason);
+}
+
void NoradDelta::activateHotspots() {
Norad::activateHotspots();
@@ -863,6 +874,13 @@ void NoradDelta::doSolve() {
}
}
+void NoradDelta::setSoundFXLevel(const uint16 level) {
+ Neighborhood::setSoundFXLevel(level);
+
+ if (GameState.getCurrentRoomAndView() == MakeRoomView(kNorad54North, kNorth))
+ _loop2Fader.setMasterVolume(level);
+}
+
Common::String NoradDelta::getSoundSpotsName() {
return "Sounds/Norad/Norad Delta Spots";
}
diff --git a/engines/pegasus/neighborhood/norad/delta/noraddelta.h b/engines/pegasus/neighborhood/norad/delta/noraddelta.h
index 11065f2c9d..591fd691a2 100644
--- a/engines/pegasus/neighborhood/norad/delta/noraddelta.h
+++ b/engines/pegasus/neighborhood/norad/delta/noraddelta.h
@@ -68,6 +68,8 @@ public:
bool canSolve();
void doSolve();
+ void setSoundFXLevel(const uint16);
+
void doorOpened();
protected:
@@ -90,6 +92,7 @@ protected:
void arriveAtNorad79West();
TimeValue getViewTime(const RoomID, const DirectionConstant);
void openDoor();
+ void cantMoveThatWay(CanMoveForwardReason);
void activateHotspots();
void clickInHotspot(const Input &, const Hotspot *);
void receiveNotification(Notification *, const NotificationFlags);
diff --git a/engines/pegasus/neighborhood/tsa/fulltsa.cpp b/engines/pegasus/neighborhood/tsa/fulltsa.cpp
index 99efe10272..92b79c038e 100644
--- a/engines/pegasus/neighborhood/tsa/fulltsa.cpp
+++ b/engines/pegasus/neighborhood/tsa/fulltsa.cpp
@@ -1692,7 +1692,9 @@ void FullTSA::initializeTBPMonitor(const int newMode, const ExtraID highlightExt
releaseSprites();
}
- _interruptionFilter = kFilterAllInput;
+ // Only allow input if we're not in the middle of series of queue requests.
+ if (actionQueueEmpty())
+ _interruptionFilter = kFilterAllInput;
}
void FullTSA::startUpComparisonMonitor() {
@@ -2643,6 +2645,7 @@ void FullTSA::receiveNotification(Notification *notification, const Notification
GameState.setMarsReadyForShuttleTransport(false);
GameState.setMarsFinishedCanyonChase(false);
GameState.setMarsThreadedMaze(false);
+ GameState.setMarsSawRobotLeave(false);
break;
case kPlayerOnWayToWSC:
_vm->jumpToNewEnvironment(kWSCID, kWSC01, kWest);
@@ -2691,16 +2694,18 @@ void FullTSA::receiveNotification(Notification *notification, const Notification
}
break;
case kTSA37DownloadToOpMemReview:
- switch (GameState.getTSAState()) {
- case kPlayerOnWayToNorad:
- g_opticalChip->playOpMemMovie(kPoseidonSpotID);
- break;
- case kPlayerOnWayToMars:
- g_opticalChip->playOpMemMovie(kAriesSpotID);
- break;
- case kPlayerOnWayToWSC:
- g_opticalChip->playOpMemMovie(kMercurySpotID);
- break;
+ if (_vm->itemInBiochips(kOpticalBiochip)) {
+ switch (GameState.getTSAState()) {
+ case kPlayerOnWayToNorad:
+ g_opticalChip->playOpMemMovie(kPoseidonSpotID);
+ break;
+ case kPlayerOnWayToMars:
+ g_opticalChip->playOpMemMovie(kAriesSpotID);
+ break;
+ case kPlayerOnWayToWSC:
+ g_opticalChip->playOpMemMovie(kMercurySpotID);
+ break;
+ }
}
if (GameState.allTimeZonesFinished()) {
diff --git a/engines/pegasus/neighborhood/tsa/tinytsa.cpp b/engines/pegasus/neighborhood/tsa/tinytsa.cpp
index 0d11f5d904..c808325b0f 100644
--- a/engines/pegasus/neighborhood/tsa/tinytsa.cpp
+++ b/engines/pegasus/neighborhood/tsa/tinytsa.cpp
@@ -327,6 +327,7 @@ void TinyTSA::receiveNotification(Notification *notification, const Notification
GameState.setMarsReadyForShuttleTransport(false);
GameState.setMarsFinishedCanyonChase(false);
GameState.setMarsThreadedMaze(false);
+ GameState.setMarsSawRobotLeave(false);
break;
case kPlayerOnWayToWSC:
_vm->jumpToNewEnvironment(kWSCID, kWSC01, kWest);
@@ -372,16 +373,18 @@ void TinyTSA::receiveNotification(Notification *notification, const Notification
}
break;
case kTinyTSA37DownloadToOpMemReview:
- switch (GameState.getTSAState()) {
- case kPlayerOnWayToNorad:
- g_opticalChip->playOpMemMovie(kPoseidonSpotID);
- break;
- case kPlayerOnWayToMars:
- g_opticalChip->playOpMemMovie(kAriesSpotID);
- break;
- case kPlayerOnWayToWSC:
- g_opticalChip->playOpMemMovie(kMercurySpotID);
- break;
+ if (_vm->itemInBiochips(kOpticalBiochip)) {
+ switch (GameState.getTSAState()) {
+ case kPlayerOnWayToNorad:
+ g_opticalChip->playOpMemMovie(kPoseidonSpotID);
+ break;
+ case kPlayerOnWayToMars:
+ g_opticalChip->playOpMemMovie(kAriesSpotID);
+ break;
+ case kPlayerOnWayToWSC:
+ g_opticalChip->playOpMemMovie(kMercurySpotID);
+ break;
+ }
}
requestExtraSequence(kTinyTSA37OpMemReviewToMainMenu, kExtraCompletedFlag, kFilterNoInput);
diff --git a/engines/pegasus/neighborhood/wsc/wsc.cpp b/engines/pegasus/neighborhood/wsc/wsc.cpp
index 09e2a48a52..f009b35cdc 100644
--- a/engines/pegasus/neighborhood/wsc/wsc.cpp
+++ b/engines/pegasus/neighborhood/wsc/wsc.cpp
@@ -2029,6 +2029,7 @@ void WSC::moleculeGameClick(const HotSpotID id) {
_moleculesMovie.start();
while (_moleculesMovie.isRunning()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
@@ -2063,6 +2064,7 @@ void WSC::moleculeGameClick(const HotSpotID id) {
_moleculesMovie.start();
while (_moleculesMovie.isRunning()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
@@ -2076,6 +2078,7 @@ void WSC::moleculeGameClick(const HotSpotID id) {
while (_moleculesMovie.isRunning()) {
+ InputDevice.pumpEvents();
_vm->checkCallBacks();
_vm->refreshDisplay();
_vm->_system->delayMillis(10);
diff --git a/engines/pegasus/pegasus.cpp b/engines/pegasus/pegasus.cpp
index 0148470cd5..0010180d8d 100644
--- a/engines/pegasus/pegasus.cpp
+++ b/engines/pegasus/pegasus.cpp
@@ -36,6 +36,7 @@
#include "backends/keymapper/keymapper.h"
#include "base/plugins.h"
#include "base/version.h"
+#include "gui/message.h"
#include "gui/saveload.h"
#include "video/theora_decoder.h"
#include "video/qt_decoder.h"
@@ -306,6 +307,7 @@ void PegasusEngine::runIntro() {
Video::VideoDecoder *video = new Video::QuickTimeDecoder();
if (video->loadFile(_introDirectory + "/BandaiLogo.movie")) {
+ video->setVolume(MIN<uint>(getAmbienceLevel(), 0xFF));
video->start();
while (!shouldQuit() && !video->endOfVideo() && !skipped) {
@@ -337,6 +339,8 @@ void PegasusEngine::runIntro() {
if (!video->loadFile(_introDirectory + "/Big Movie.movie"))
error("Could not load intro movie");
+ video->setVolume(MIN<uint>(getAmbienceLevel(), 0xFF));
+
video->seek(Audio::Timestamp(0, 10 * 600, 600));
video->start();
@@ -379,20 +383,21 @@ Common::Error PegasusEngine::showSaveDialog() {
int slot = slc.runModalWithPluginAndTarget(plugin, ConfMan.getActiveDomainName());
- Common::Error result;
+ if (slot >= 0)
+ return saveGameState(slot, slc.getResultString());
- if (slot >= 0) {
- if (saveGameState(slot, slc.getResultString()).getCode() == Common::kNoError)
- result = Common::kNoError;
- else
- result = Common::kUnknownError;
- } else {
- result = Common::kUserCanceled;
- }
+ return Common::kUserCanceled;
+}
- return result;
+void PegasusEngine::showSaveFailedDialog(const Common::Error &status) {
+ Common::String failMessage = Common::String::format(_("Gamestate save failed (%s)! "
+ "Please consult the README for basic information, and for "
+ "instructions on how to obtain further assistance."), status.getDesc().c_str());
+ GUI::MessageDialog dialog(failMessage);
+ dialog.runModal();
}
+
GUI::Debugger *PegasusEngine::getDebugger() {
return _console;
}
@@ -431,6 +436,8 @@ void PegasusEngine::removeTimeBase(TimeBase *timeBase) {
bool PegasusEngine::loadFromStream(Common::SeekableReadStream *stream) {
// Dispose currently running stuff
+ lowerInventoryDrawerSync();
+ lowerBiochipDrawerSync();
useMenu(0);
useNeighborhood(0);
removeAllItemsFromInventory();
@@ -790,6 +797,8 @@ void PegasusEngine::introTimerExpired() {
if (!video->loadFile(_introDirectory + "/LilMovie.movie"))
error("Failed to load little movie");
+ video->setVolume(MIN<uint>(getAmbienceLevel(), 0xFF));
+
bool saveAllowed = swapSaveAllowed(false);
bool openAllowed = swapLoadAllowed(false);
@@ -832,6 +841,7 @@ void PegasusEngine::delayShell(TimeValue time, TimeScale scale) {
uint32 timeInMillis = time * 1000 / scale;
while (g_system->getMillis() < startTime + timeInMillis) {
+ InputDevice.pumpEvents();
checkCallBacks();
_gfx->updateDisplay();
}
@@ -936,6 +946,8 @@ void PegasusEngine::doGameMenuCommand(const GameMenuCommand command) {
if (!video->loadFile(_introDirectory + "/Closing.movie"))
error("Could not load closing movie");
+ video->setVolume(MIN<uint>(getSoundFXLevel(), 0xFF));
+
uint16 x = (640 - video->getWidth() * 2) / 2;
uint16 y = (480 - video->getHeight() * 2) / 2;
@@ -967,8 +979,14 @@ void PegasusEngine::doGameMenuCommand(const GameMenuCommand command) {
resetIntroTimer();
break;
case kMenuCmdPauseSave:
- if (showSaveDialog().getCode() != Common::kUserCanceled)
+ result = showSaveDialog();
+
+ if (result.getCode() != Common::kUserCanceled) {
+ if (result.getCode() != Common::kNoError)
+ showSaveFailedDialog(result);
+
pauseMenu(false);
+ }
break;
case kMenuCmdPauseContinue:
pauseMenu(false);
@@ -1019,7 +1037,12 @@ void PegasusEngine::handleInput(const Input &input, const Hotspot *cursorSpot) {
// Can only save during a game and not in the demo
if (g_neighborhood && !isDemo()) {
pauseEngine(true);
- showSaveDialog();
+
+ Common::Error result = showSaveDialog();
+
+ if (result.getCode() != Common::kNoError && result.getCode() != Common::kUserCanceled)
+ showSaveFailedDialog(result);
+
pauseEngine(false);
}
}
@@ -1460,6 +1483,15 @@ void PegasusEngine::throwAwayEverything() {
g_interface = 0;
}
+InputBits PegasusEngine::getInputFilter() {
+ InputBits filter = InputHandler::getInputFilter();
+
+ if (isPaused())
+ return filter & ~JMPPPInput::getItemPanelsInputFilter();
+
+ return filter;
+}
+
void PegasusEngine::processShell() {
checkCallBacks();
checkNotifications();
@@ -1658,6 +1690,9 @@ void PegasusEngine::startNewGame() {
removeAllItemsFromInventory();
removeAllItemsFromBiochips();
+ // Properly reset all items to their original state
+ g_allItems.resetAllItems();
+
BiochipItem *biochip = (BiochipItem *)_allItems.findItemByID(kAIBiochip);
addItemToBiochips(biochip);
@@ -2148,6 +2183,7 @@ void PegasusEngine::autoDragItemIntoRoom(Item *item, Sprite *draggingSprite) {
_autoDragger.autoDrag(draggingSprite, start, stop, time, kDefaultTimeScale);
while (_autoDragger.isDragging()) {
+ InputDevice.pumpEvents();
checkCallBacks();
refreshDisplay();
_system->delayMillis(10);
@@ -2181,6 +2217,7 @@ void PegasusEngine::autoDragItemIntoInventory(Item *, Sprite *draggingSprite) {
_autoDragger.autoDrag(draggingSprite, start, stop, time, kDefaultTimeScale);
while (_autoDragger.isDragging()) {
+ InputDevice.pumpEvents();
checkCallBacks();
refreshDisplay();
_system->delayMillis(10);
@@ -2257,10 +2294,7 @@ void PegasusEngine::doSubChase() {
drawScaledFrame(frame, 0, 0);
}
- Common::Event event;
- while (_eventMan->pollEvent(event))
- ;
-
+ InputDevice.pumpEvents();
_system->delayMillis(10);
}
diff --git a/engines/pegasus/pegasus.h b/engines/pegasus/pegasus.h
index 59637e38df..d88545a4d1 100644
--- a/engines/pegasus/pegasus.h
+++ b/engines/pegasus/pegasus.h
@@ -257,6 +257,7 @@ private:
bool _saveAllowed, _loadAllowed; // It's so nice that this was in the original code already :P
Common::Error showLoadDialog();
Common::Error showSaveDialog();
+ void showSaveFailedDialog(const Common::Error &status);
bool _saveRequested, _loadRequested;
// Misc.
@@ -272,6 +273,7 @@ private:
uint getNeighborhoodCD(const NeighborhoodID neighborhood) const;
uint _currentCD;
void initKeymap();
+ InputBits getInputFilter();
// Menu
GameMenu *_gameMenu;
diff --git a/engines/pegasus/surface.cpp b/engines/pegasus/surface.cpp
index cdcb3c6e79..cb1e2e7bcc 100644
--- a/engines/pegasus/surface.cpp
+++ b/engines/pegasus/surface.cpp
@@ -28,7 +28,7 @@
#include "common/stream.h"
#include "common/system.h"
#include "graphics/surface.h"
-#include "graphics/decoders/pict.h"
+#include "image/pict.h"
#include "video/video_decoder.h"
#include "pegasus/pegasus.h"
@@ -101,7 +101,7 @@ void Surface::getImageFromPICTResource(Common::MacResManager *resFork, uint16 id
}
bool Surface::getImageFromPICTStream(Common::SeekableReadStream *stream) {
- Graphics::PICTDecoder pict;
+ Image::PICTDecoder pict;
if (!pict.loadStream(*stream))
return false;
diff --git a/engines/queen/bankman.cpp b/engines/queen/bankman.cpp
index ea823773dc..6d99874697 100644
--- a/engines/queen/bankman.cpp
+++ b/engines/queen/bankman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/bankman.h b/engines/queen/bankman.h
index 9e1e726fbf..87c58022a1 100644
--- a/engines/queen/bankman.h
+++ b/engines/queen/bankman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/command.cpp b/engines/queen/command.cpp
index 7876dbfae9..d9fafa3a1d 100644
--- a/engines/queen/command.cpp
+++ b/engines/queen/command.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/command.h b/engines/queen/command.h
index 6865aa80a2..1d49b134de 100644
--- a/engines/queen/command.h
+++ b/engines/queen/command.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/credits.cpp b/engines/queen/credits.cpp
index 43e3bc7c6a..b2f6a601bf 100644
--- a/engines/queen/credits.cpp
+++ b/engines/queen/credits.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/credits.h b/engines/queen/credits.h
index b89d029a59..56e0bdb882 100644
--- a/engines/queen/credits.h
+++ b/engines/queen/credits.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/cutaway.cpp b/engines/queen/cutaway.cpp
index 1e53c00564..0f54431acf 100644
--- a/engines/queen/cutaway.cpp
+++ b/engines/queen/cutaway.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -552,7 +552,6 @@ void Cutaway::dumpCutawayAnim(CutawayAnim &anim) {
const byte *Cutaway::handleAnimation(const byte *ptr, CutawayObject &object) {
// lines 1517-1770 in cutaway.c
int frameCount = 0;
- int header = 0;
int i;
CutawayAnim objAnim[56];
@@ -560,7 +559,7 @@ const byte *Cutaway::handleAnimation(const byte *ptr, CutawayObject &object) {
// Read animation frames
for (;;) {
- header = (int16)READ_BE_INT16(ptr);
+ int header = (int16)READ_BE_INT16(ptr);
ptr += 2;
if (-2 == header)
diff --git a/engines/queen/cutaway.h b/engines/queen/cutaway.h
index a7e3646a59..f6115c8023 100644
--- a/engines/queen/cutaway.h
+++ b/engines/queen/cutaway.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/debug.cpp b/engines/queen/debug.cpp
index d09c5d4469..3706806ac2 100644
--- a/engines/queen/debug.cpp
+++ b/engines/queen/debug.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -21,6 +21,7 @@
*/
#include "common/scummsys.h"
+#include "common/util.h"
#include "queen/debug.h"
@@ -57,8 +58,17 @@ void Debugger::postEnter() {
_vm->graphics()->setupMouseCursor();
}
+static bool isNumeric(const char *arg) {
+ const char *str = arg;
+ bool retVal = true;
+ while (retVal && (*str != '\0')) {
+ retVal = Common::isDigit(*str++);
+ }
+ return retVal;
+}
+
bool Debugger::Cmd_Asm(int argc, const char **argv) {
- if (argc == 2) {
+ if (argc == 2 && isNumeric(argv[1])) {
uint16 sm = atoi(argv[1]);
_vm->logic()->executeSpecialMove(sm);
return false;
@@ -75,12 +85,17 @@ bool Debugger::Cmd_Areas(int argc, const char **argv) {
}
bool Debugger::Cmd_Bob(int argc, const char **argv) {
- if (argc >= 3) {
+ if (argc >= 3 && isNumeric(argv[1])) {
int bobNum = atoi(argv[1]);
if (bobNum >= Graphics::MAX_BOBS_NUMBER) {
DebugPrintf("Bob %d is out of range (range: 0 - %d)\n", bobNum, Graphics::MAX_BOBS_NUMBER);
} else {
- int param = (argc > 3) ? atoi(argv[3]) : 0;
+ int param = 0;
+ if (argc > 3 && isNumeric(argv[3])) {
+ param = atoi(argv[3]);
+ } else {
+ DebugPrintf("Invalid parameter for bob command '%s'\n", argv[2]);
+ }
BobSlot *bob = _vm->graphics()->bob(bobNum);
if (!strcmp(argv[2], "toggle")) {
bob->active = !bob->active;
@@ -109,22 +124,21 @@ bool Debugger::Cmd_Bob(int argc, const char **argv) {
bool Debugger::Cmd_GameState(int argc, const char **argv) {
uint16 slot;
- switch (argc) {
- case 2:
- slot = atoi(argv[1]);
- DebugPrintf("GAMESTATE[%d] ", slot);
- DebugPrintf("is %d\n", _vm->logic()->gameState(slot));
- break;
- case 3:
+ if ((argc == 2 || argc == 3) && isNumeric(argv[1])) {
slot = atoi(argv[1]);
DebugPrintf("GAMESTATE[%d] ", slot);
- DebugPrintf("was %d ", _vm->logic()->gameState(slot));
- _vm->logic()->gameState(slot, atoi(argv[2]));
- DebugPrintf("now %d\n", _vm->logic()->gameState(slot));
- break;
- default:
- DebugPrintf("Usage: %s slotnum value\n", argv[0]);
- break;
+ DebugPrintf("%s %d\n", (argc == 2) ? "is" : "was", _vm->logic()->gameState(slot));
+
+ if (argc == 3) {
+ if (isNumeric(argv[1])) {
+ _vm->logic()->gameState(slot, atoi(argv[2]));
+ DebugPrintf("now %d\n", _vm->logic()->gameState(slot));
+ } else {
+ DebugPrintf("Usage: %s slotnum <value>\n", argv[0]);
+ }
+ }
+ } else {
+ DebugPrintf("Usage: %s slotnum <value>\n", argv[0]);
}
return true;
}
@@ -164,7 +178,7 @@ bool Debugger::Cmd_PrintBobs(int argc, const char**argv) {
}
bool Debugger::Cmd_Room(int argc, const char **argv) {
- if (argc == 2) {
+ if (argc == 2 && isNumeric(argv[1])) {
uint16 roomNum = atoi(argv[1]);
_vm->logic()->joePos(0, 0);
_vm->logic()->newRoom(roomNum);
@@ -180,7 +194,7 @@ bool Debugger::Cmd_Room(int argc, const char **argv) {
}
bool Debugger::Cmd_Song(int argc, const char **argv) {
- if (argc == 2) {
+ if (argc == 2 && isNumeric(argv[1])) {
int16 songNum = atoi(argv[1]);
_vm->sound()->playSong(songNum);
DebugPrintf("Playing song %d\n", songNum);
diff --git a/engines/queen/debug.h b/engines/queen/debug.h
index 01da4a35d6..19d77dffc0 100644
--- a/engines/queen/debug.h
+++ b/engines/queen/debug.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/defs.h b/engines/queen/defs.h
index 3d06485ef5..1904a390bc 100644
--- a/engines/queen/defs.h
+++ b/engines/queen/defs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/detection.cpp b/engines/queen/detection.cpp
new file mode 100644
index 0000000000..5a7b4c6ad0
--- /dev/null
+++ b/engines/queen/detection.cpp
@@ -0,0 +1,508 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "base/plugins.h"
+
+#include "engines/advancedDetector.h"
+
+#include "common/config-manager.h"
+#include "common/file.h"
+#include "common/gui_options.h"
+#include "common/savefile.h"
+#include "common/system.h"
+#include "common/translation.h"
+
+#include "queen/queen.h"
+#include "queen/resource.h"
+
+namespace Queen {
+
+struct QueenGameDescription {
+ ADGameDescription desc;
+};
+
+} // End of namespace Queen
+
+static const PlainGameDescriptor queenGames[] = {
+ {"queen", "Flight of the Amazon Queen"},
+ {0, 0}
+};
+
+#define GAMEOPTION_ALT_INTRO GUIO_GAMEOPTIONS1
+
+static const ADExtraGuiOptionsMap optionsList[] = {
+ {
+ GAMEOPTION_ALT_INTRO,
+ {
+ _s("Alternative intro"),
+ _s("Use an alternative game intro (CD version only)"),
+ "alt_intro",
+ false
+ }
+ },
+
+ AD_EXTRA_GUI_OPTIONS_TERMINATOR
+};
+
+namespace Queen {
+
+static const QueenGameDescription gameDescriptions[] = {
+ // Amiga Demo - English
+ {
+ {
+ "queen",
+ "Demo",
+ AD_ENTRY1s("queen.1", "f7a1a37ac93bf763b1569231237cb4d8", 563335),
+ Common::EN_ANY,
+ Common::kPlatformAmiga,
+ ADGF_DEMO,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+
+ // Amiga Interview Demo - English
+ {
+ {
+ "queen",
+ "Interview",
+ AD_ENTRY1s("queen.1", "f5d42a18d8f5689480413871410663d7", 597032),
+ Common::EN_ANY,
+ Common::kPlatformAmiga,
+ ADGF_DEMO,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+
+ // DOS Demo - English
+ {
+ {
+ "queen",
+ "Demo",
+ AD_ENTRY1s("queen.1", "f39334d8133840aa3bcbd733c12937cf", 3732177),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_DEMO,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+
+ // DOS Interview Demo - English
+ {
+ {
+ "queen",
+ "Interview",
+ AD_ENTRY1s("queen.1", "30b3291f37665bf24d9482b183cb2f67", 1915913),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_DEMO,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+
+ // PCGAMES DOS Demo - English
+ {
+ {
+ "queen",
+ "Demo",
+ AD_ENTRY1s("queen.1", "f39334d8133840aa3bcbd733c12937cf", 3724538),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_DEMO,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+
+#if 0
+ // Amiga Floppy - English
+ {
+ {
+ "queen",
+ "Floppy",
+ AD_ENTRY1s("queen.1", NULL, 351775), // TODO: Fill in correct MD5
+ Common::EN_ANY,
+ Common::kPlatformAmiga,
+ ADGF_NO_FLAGS,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+#endif
+
+ // DOS Floppy - English
+ {
+ {
+ "queen",
+ "Floppy",
+ AD_ENTRY1s("queen.1", "f5e827645d3c887be3bdf4729d847756", 22677657),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+
+ // DOS CD - English
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1", "b6302bccf70463de3d5faf0f0628f742", 190787021),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+ // DOS Floppy - French
+ {
+ {
+ "queen",
+ "Floppy",
+ AD_ENTRY1s("queen.1", "f5e827645d3c887be3bdf4729d847756", 22157304),
+ Common::FR_FRA,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+
+ // DOS CD - French
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1", "6fd5486a0db75bae2e023b575c3d6a5d", 186689095),
+ Common::FR_FRA,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+#if 0
+ // DOS Floppy - German
+ {
+ {
+ "queen",
+ "Floppy",
+ AD_ENTRY1s("queen.1", NULL, 22240013), // TODO: Fill in correct MD5
+ Common::DE_DEU,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+#endif
+
+#if 0
+ // DOS CD - German
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1", NULL, 217648975), // TODO: Fill in correct MD5
+ Common::DE_DEU,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+#endif
+
+#if 0
+ // DOS CD - Hebrew
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1", NULL, 190705558), // TODO: Fill in correct MD5
+ Common::HE_ISR,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+#endif
+
+#if 0
+ // DOS Floppy - Italian
+ {
+ {
+ "queen",
+ "Floppy",
+ AD_ENTRY1s("queen.1", NULL, 22461366), // TODO: Fill in correct MD5
+ Common::IT_ITA,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GUIO_NOSPEECH)
+ },
+ },
+#endif
+
+ // DOS CD - Italian
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1", "b6302bccf70463de3d5faf0f0628f742", 190795582),
+ Common::IT_ITA,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+#if 0
+ // DOS CD - Spanish
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1", NULL, 190730602), // TODO: Fill in correct MD5
+ Common::ES_ESP,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+#endif
+
+ // DOS CD - English (Compressed Freeware Release v1.0)
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1c", "a0749bb8b72e537ead1a63a3dde1443d", 54108887),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+ // DOS CD - English (Compressed Freeware Release v1.1)
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1c", "21fd690b372f8a6289f6f33bc986276c", 51222412),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+ // DOS CD - French (Compressed Freeware Release v1.0)
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1c", "67e3020f8a35e1df7b1c753b5aaa71e1", 97382620),
+ Common::FR_FRA,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+ // DOS CD - German (Compressed Freeware Release v1.0)
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1c", "28f78dbec7e20f603a10c2f8ea889a5c", 108738717),
+ Common::DE_DEU,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+ // DOS CD - Hebrew (Compressed Freeware Release v1.0)
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1c", "4d52d8780613ef27a2b779caecb20a21", 99391805),
+ Common::HE_ISR,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+ // DOS CD - Italian (Compressed Freeware Release v1.0)
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1c", "2f72b715ed753cf905a37cdcc7ea611e", 98327801),
+ Common::IT_ITA,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+
+ // TODO: Freeware Release for Spanish DOS CD is missing.
+#if 0
+ // DOS CD - Spanish (Compressed Freeware Release v1.0)
+ {
+ {
+ "queen",
+ "Talkie",
+ AD_ENTRY1s("queen.1c", NULL, ?),
+ Common::ES_ESP,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GAMEOPTION_ALT_INTRO)
+ },
+ },
+#endif
+
+ { AD_TABLE_END_MARKER }
+};
+
+} // End of namespace Queen
+
+class QueenMetaEngine : public AdvancedMetaEngine {
+public:
+ QueenMetaEngine() : AdvancedMetaEngine(Queen::gameDescriptions, sizeof(Queen::QueenGameDescription), queenGames, optionsList) {
+ _singleid = "queen";
+ }
+
+ virtual const char *getName() const {
+ return "Queen";
+ }
+
+ virtual const char *getOriginalCopyright() const {
+ return "Flight of the Amazon Queen (C) John Passfield and Steve Stamatiadis";
+ }
+
+ virtual bool hasFeature(MetaEngineFeature f) const;
+ virtual bool createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const;
+ virtual SaveStateList listSaves(const char *target) const;
+ virtual int getMaximumSaveSlot() const { return 99; }
+ virtual void removeSaveState(const char *target, int slot) const;
+
+ const ADGameDescription *fallbackDetect(const FileMap &allFiles, const Common::FSList &fslist) const;
+};
+
+bool QueenMetaEngine::hasFeature(MetaEngineFeature f) const {
+ return
+ (f == kSupportsListSaves) ||
+ (f == kSupportsLoadingDuringStartup) ||
+ (f == kSupportsDeleteSave);
+}
+
+const ADGameDescription *QueenMetaEngine::fallbackDetect(const FileMap &allFiles, const Common::FSList &fslist) const {
+ static ADGameDescription desc;
+
+ // Iterate over all files in the given directory
+ for (Common::FSList::const_iterator file = fslist.begin(); file != fslist.end(); ++file) {
+ if (file->isDirectory()) {
+ continue;
+ }
+ if (file->getName().equalsIgnoreCase("queen.1") || file->getName().equalsIgnoreCase("queen.1c")) {
+ Common::File dataFile;
+ if (!dataFile.open(*file)) {
+ continue;
+ }
+ Queen::DetectedGameVersion version;
+ if (Queen::Resource::detectVersion(&version, &dataFile)) {
+ desc.gameid = "queen";
+ desc.language = version.language;
+ desc.platform = version.platform;
+ desc.flags = ADGF_NO_FLAGS;
+ desc.guioptions = GUIO0();
+ if (version.features & Queen::GF_DEMO) {
+ desc.extra = "Demo";
+ desc.flags = ADGF_DEMO;
+ desc.guioptions = GUIO_NOSPEECH;
+ } else if (version.features & Queen::GF_INTERVIEW) {
+ desc.extra = "Interview";
+ desc.flags = ADGF_DEMO;
+ desc.guioptions = GUIO_NOSPEECH;
+ } else if (version.features & Queen::GF_FLOPPY) {
+ desc.extra = "Floppy";
+ desc.guioptions = GUIO_NOSPEECH;
+ } else if (version.features & Queen::GF_TALKIE) {
+ desc.extra = "Talkie";
+ desc.guioptions = GAMEOPTION_ALT_INTRO;
+ }
+ return (const ADGameDescription *)&desc;
+ }
+ }
+ }
+ return 0;
+}
+
+SaveStateList QueenMetaEngine::listSaves(const char *target) const {
+ Common::SaveFileManager *saveFileMan = g_system->getSavefileManager();
+ Common::StringArray filenames;
+ char saveDesc[32];
+ Common::String pattern("queen.s??");
+
+ filenames = saveFileMan->listSavefiles(pattern);
+ sort(filenames.begin(), filenames.end()); // Sort (hopefully ensuring we are sorted numerically..)
+
+ SaveStateList saveList;
+ for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); ++file) {
+ // Obtain the last 2 digits of the filename, since they correspond to the save slot
+ int slotNum = atoi(file->c_str() + file->size() - 2);
+
+ if (slotNum >= 0 && slotNum <= 99) {
+ Common::InSaveFile *in = saveFileMan->openForLoading(*file);
+ if (in) {
+ for (int i = 0; i < 4; i++)
+ in->readUint32BE();
+ in->read(saveDesc, 32);
+ saveList.push_back(SaveStateDescriptor(slotNum, saveDesc));
+ delete in;
+ }
+ }
+ }
+
+ return saveList;
+}
+
+void QueenMetaEngine::removeSaveState(const char *target, int slot) const {
+ Common::String filename = Common::String::format("queen.s%02d", slot);
+
+ g_system->getSavefileManager()->removeSavefile(filename);
+}
+
+bool QueenMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const {
+ const Queen::QueenGameDescription *gd = (const Queen::QueenGameDescription *)desc;
+
+ if (gd)
+ *engine = new Queen::QueenEngine(syst); //FIXME , gd);
+
+ return (gd != 0);
+}
+
+#if PLUGIN_ENABLED_DYNAMIC(QUEEN)
+ REGISTER_PLUGIN_DYNAMIC(QUEEN, PLUGIN_TYPE_ENGINE, QueenMetaEngine);
+#else
+ REGISTER_PLUGIN_STATIC(QUEEN, PLUGIN_TYPE_ENGINE, QueenMetaEngine);
+#endif
diff --git a/engines/queen/display.cpp b/engines/queen/display.cpp
index 7437bab974..b2213f7fee 100644
--- a/engines/queen/display.cpp
+++ b/engines/queen/display.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -29,8 +29,9 @@
#include "graphics/cursorman.h"
#include "graphics/palette.h"
#include "graphics/surface.h"
-#include "graphics/decoders/iff.h"
-#include "graphics/decoders/pcx.h"
+
+#include "image/iff.h"
+#include "image/pcx.h"
#include "queen/display.h"
#include "queen/input.h"
@@ -813,7 +814,7 @@ void Display::fill(uint8 *dstBuf, uint16 dstPitch, uint16 x, uint16 y, uint16 w,
void Display::decodePCX(const uint8 *src, uint32 srcSize, uint8 *dst, uint16 dstPitch, uint16 *w, uint16 *h, uint8 *pal, uint16 palStart, uint16 palEnd) {
Common::MemoryReadStream str(src, srcSize);
- ::Graphics::PCXDecoder pcx;
+ Image::PCXDecoder pcx;
if (!pcx.loadStream(str))
error("Error while reading PCX image");
@@ -832,7 +833,7 @@ void Display::decodePCX(const uint8 *src, uint32 srcSize, uint8 *dst, uint16 dst
void Display::decodeIFF(const uint8 *src, uint32 srcSize, uint8 *dst, uint16 dstPitch, uint16 *w, uint16 *h, uint8 *pal, uint16 palStart, uint16 palEnd, uint8 colorBase) {
Common::MemoryReadStream str(src, srcSize);
- ::Graphics::IFFDecoder iff;
+ Image::IFFDecoder iff;
if (!iff.loadStream(str))
error("Error while reading IFF image");
diff --git a/engines/queen/display.h b/engines/queen/display.h
index 8a8aaef5a6..7261d05b07 100644
--- a/engines/queen/display.h
+++ b/engines/queen/display.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/graphics.cpp b/engines/queen/graphics.cpp
index 70f7d7c94b..87236447e8 100644
--- a/engines/queen/graphics.cpp
+++ b/engines/queen/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -522,7 +522,7 @@ void Graphics::setBobText(const BobSlot *pbs, const char *text, int textX, int t
// Calc text position
- short x, y, width, height;
+ short x, y, width;
if (flags) {
if (flags == 2)
@@ -540,7 +540,7 @@ void Graphics::setBobText(const BobSlot *pbs, const char *text, int textX, int t
BobFrame *pbf = _vm->bankMan()->fetchFrame(pbs->frameNum);
width = (pbf->width * pbs->scale) / 100;
- height = (pbf->height * pbs->scale) / 100;
+ short height = (pbf->height * pbs->scale) / 100;
y = y - height - 16 - lineCount * 9;
}
diff --git a/engines/queen/graphics.h b/engines/queen/graphics.h
index 9c719ba22c..2035b170d3 100644
--- a/engines/queen/graphics.h
+++ b/engines/queen/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/grid.cpp b/engines/queen/grid.cpp
index 82b98c0150..467f341c0b 100644
--- a/engines/queen/grid.cpp
+++ b/engines/queen/grid.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/grid.h b/engines/queen/grid.h
index f905e3f4fe..2e60c62b59 100644
--- a/engines/queen/grid.h
+++ b/engines/queen/grid.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/input.cpp b/engines/queen/input.cpp
index dd10e7ad46..1cce9ad6d1 100644
--- a/engines/queen/input.cpp
+++ b/engines/queen/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/input.h b/engines/queen/input.h
index f04ecb24f7..87f6b20e71 100644
--- a/engines/queen/input.h
+++ b/engines/queen/input.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/journal.cpp b/engines/queen/journal.cpp
index 474f72eca5..db80775fc7 100644
--- a/engines/queen/journal.cpp
+++ b/engines/queen/journal.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/journal.h b/engines/queen/journal.h
index a9b9ccb2b8..57907f0ff1 100644
--- a/engines/queen/journal.h
+++ b/engines/queen/journal.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/logic.cpp b/engines/queen/logic.cpp
index ea13e5973e..d48bb8a498 100644
--- a/engines/queen/logic.cpp
+++ b/engines/queen/logic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/logic.h b/engines/queen/logic.h
index 608c19e71e..d597942257 100644
--- a/engines/queen/logic.h
+++ b/engines/queen/logic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/midiadlib.cpp b/engines/queen/midiadlib.cpp
index 83853cba92..25175c21d7 100644
--- a/engines/queen/midiadlib.cpp
+++ b/engines/queen/midiadlib.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/module.mk b/engines/queen/module.mk
index 5e0602cae7..8ba49a301d 100644
--- a/engines/queen/module.mk
+++ b/engines/queen/module.mk
@@ -6,6 +6,7 @@ MODULE_OBJS := \
credits.o \
cutaway.o \
debug.o \
+ detection.o \
display.o \
graphics.o \
grid.o \
diff --git a/engines/queen/music.cpp b/engines/queen/music.cpp
index 2835954003..93d6527622 100644
--- a/engines/queen/music.cpp
+++ b/engines/queen/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/music.h b/engines/queen/music.h
index ea6affcbe5..b475639f22 100644
--- a/engines/queen/music.h
+++ b/engines/queen/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/musicdata.cpp b/engines/queen/musicdata.cpp
index a046355446..57c28c90f4 100644
--- a/engines/queen/musicdata.cpp
+++ b/engines/queen/musicdata.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/queen.cpp b/engines/queen/queen.cpp
index 08fc594560..0aea6122ca 100644
--- a/engines/queen/queen.cpp
+++ b/engines/queen/queen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,14 +23,12 @@
#include "base/plugins.h"
#include "common/config-manager.h"
+#include "common/events.h"
#include "common/file.h"
#include "common/fs.h"
-#include "common/gui_options.h"
#include "common/savefile.h"
#include "common/system.h"
-#include "common/events.h"
#include "common/textconsole.h"
-#include "common/translation.h"
#include "engines/util.h"
@@ -49,177 +47,6 @@
#include "queen/talk.h"
#include "queen/walk.h"
-#include "engines/metaengine.h"
-
-static const PlainGameDescriptor queenGameDescriptor = {
- "queen", "Flight of the Amazon Queen"
-};
-
-static const ExtraGuiOption queenExtraGuiOption = {
- _s("Alternative intro"),
- _s("Use an alternative game intro (CD version only)"),
- "alt_intro",
- false
-};
-
-class QueenMetaEngine : public MetaEngine {
-public:
- virtual const char *getName() const;
- virtual const char *getOriginalCopyright() const;
-
- virtual bool hasFeature(MetaEngineFeature f) const;
- virtual GameList getSupportedGames() const;
- virtual const ExtraGuiOptions getExtraGuiOptions(const Common::String &target) const;
- virtual GameDescriptor findGame(const char *gameid) const;
- virtual GameList detectGames(const Common::FSList &fslist) const;
- virtual SaveStateList listSaves(const char *target) const;
- virtual int getMaximumSaveSlot() const;
- virtual void removeSaveState(const char *target, int slot) const;
-
- virtual Common::Error createInstance(OSystem *syst, Engine **engine) const;
-};
-
-const char *QueenMetaEngine::getName() const {
- return "Queen";
-}
-
-const char *QueenMetaEngine::getOriginalCopyright() const {
- return "Flight of the Amazon Queen (C) John Passfield and Steve Stamatiadis";
-}
-
-bool QueenMetaEngine::hasFeature(MetaEngineFeature f) const {
- return
- (f == kSupportsListSaves) ||
- (f == kSupportsLoadingDuringStartup) ||
- (f == kSupportsDeleteSave);
-}
-
-bool Queen::QueenEngine::hasFeature(EngineFeature f) const {
- return
- (f == kSupportsRTL) ||
- (f == kSupportsLoadingDuringRuntime) ||
- (f == kSupportsSavingDuringRuntime) ||
- (f == kSupportsSubtitleOptions);
-}
-
-GameList QueenMetaEngine::getSupportedGames() const {
- GameList games;
- games.push_back(queenGameDescriptor);
- return games;
-}
-
-int QueenMetaEngine::getMaximumSaveSlot() const { return 99; }
-
-const ExtraGuiOptions QueenMetaEngine::getExtraGuiOptions(const Common::String &target) const {
- Common::String guiOptions;
- ExtraGuiOptions options;
-
- if (target.empty()) {
- options.push_back(queenExtraGuiOption);
- return options;
- }
-
- if (ConfMan.hasKey("guioptions", target)) {
- guiOptions = ConfMan.get("guioptions", target);
- guiOptions = parseGameGUIOptions(guiOptions);
- }
-
- if (!guiOptions.contains(GUIO_NOSPEECH))
- options.push_back(queenExtraGuiOption);
- return options;
-}
-
-GameDescriptor QueenMetaEngine::findGame(const char *gameid) const {
- if (0 == scumm_stricmp(gameid, queenGameDescriptor.gameid)) {
- return queenGameDescriptor;
- }
- return GameDescriptor();
-}
-
-GameList QueenMetaEngine::detectGames(const Common::FSList &fslist) const {
- GameList detectedGames;
-
- // Iterate over all files in the given directory
- for (Common::FSList::const_iterator file = fslist.begin(); file != fslist.end(); ++file) {
- if (file->isDirectory()) {
- continue;
- }
- if (file->getName().equalsIgnoreCase("queen.1") || file->getName().equalsIgnoreCase("queen.1c")) {
- Common::File dataFile;
- if (!dataFile.open(*file)) {
- continue;
- }
- Queen::DetectedGameVersion version;
- if (Queen::Resource::detectVersion(&version, &dataFile)) {
- GameDescriptor dg(queenGameDescriptor.gameid, queenGameDescriptor.description, version.language, version.platform);
- if (version.features & Queen::GF_DEMO) {
- dg.updateDesc("Demo");
- dg.setGUIOptions(GUIO_NOSPEECH);
- } else if (version.features & Queen::GF_INTERVIEW) {
- dg.updateDesc("Interview");
- dg.setGUIOptions(GUIO_NOSPEECH);
- } else if (version.features & Queen::GF_FLOPPY) {
- dg.updateDesc("Floppy");
- dg.setGUIOptions(GUIO_NOSPEECH);
- } else if (version.features & Queen::GF_TALKIE) {
- dg.updateDesc("Talkie");
- }
- detectedGames.push_back(dg);
- break;
- }
- }
- }
- return detectedGames;
-}
-
-SaveStateList QueenMetaEngine::listSaves(const char *target) const {
- Common::SaveFileManager *saveFileMan = g_system->getSavefileManager();
- Common::StringArray filenames;
- char saveDesc[32];
- Common::String pattern("queen.s??");
-
- filenames = saveFileMan->listSavefiles(pattern);
- sort(filenames.begin(), filenames.end()); // Sort (hopefully ensuring we are sorted numerically..)
-
- SaveStateList saveList;
- for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); ++file) {
- // Obtain the last 2 digits of the filename, since they correspond to the save slot
- int slotNum = atoi(file->c_str() + file->size() - 2);
-
- if (slotNum >= 0 && slotNum <= 99) {
- Common::InSaveFile *in = saveFileMan->openForLoading(*file);
- if (in) {
- for (int i = 0; i < 4; i++)
- in->readUint32BE();
- in->read(saveDesc, 32);
- saveList.push_back(SaveStateDescriptor(slotNum, saveDesc));
- delete in;
- }
- }
- }
-
- return saveList;
-}
-
-void QueenMetaEngine::removeSaveState(const char *target, int slot) const {
- Common::String filename = target;
- filename += Common::String::format(".s%02d", slot);
-
- g_system->getSavefileManager()->removeSavefile(filename);
-}
-
-Common::Error QueenMetaEngine::createInstance(OSystem *syst, Engine **engine) const {
- assert(engine);
- *engine = new Queen::QueenEngine(syst);
- return Common::kNoError;
-}
-
-#if PLUGIN_ENABLED_DYNAMIC(QUEEN)
- REGISTER_PLUGIN_DYNAMIC(QUEEN, PLUGIN_TYPE_ENGINE, QueenMetaEngine);
-#else
- REGISTER_PLUGIN_STATIC(QUEEN, PLUGIN_TYPE_ENGINE, QueenMetaEngine);
-#endif
-
namespace Queen {
QueenEngine::QueenEngine(OSystem *syst)
@@ -488,6 +315,14 @@ GUI::Debugger *QueenEngine::getDebugger() {
return _debugger;
}
+bool Queen::QueenEngine::hasFeature(EngineFeature f) const {
+ return
+ (f == kSupportsRTL) ||
+ (f == kSupportsLoadingDuringRuntime) ||
+ (f == kSupportsSavingDuringRuntime) ||
+ (f == kSupportsSubtitleOptions);
+}
+
Common::Error QueenEngine::run() {
initGraphics(GAME_SCREEN_WIDTH, GAME_SCREEN_HEIGHT, false);
diff --git a/engines/queen/queen.h b/engines/queen/queen.h
index a8b0e9f6ed..c00e1b3a70 100644
--- a/engines/queen/queen.h
+++ b/engines/queen/queen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/resource.cpp b/engines/queen/resource.cpp
index 6a55929d65..714b3cef39 100644
--- a/engines/queen/resource.cpp
+++ b/engines/queen/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/resource.h b/engines/queen/resource.h
index 7317ec5134..e090dabbd3 100644
--- a/engines/queen/resource.h
+++ b/engines/queen/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/restables.cpp b/engines/queen/restables.cpp
index bc828164b0..55e13b2135 100644
--- a/engines/queen/restables.cpp
+++ b/engines/queen/restables.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/sound.cpp b/engines/queen/sound.cpp
index 6731a51e04..63e24454c1 100644
--- a/engines/queen/sound.cpp
+++ b/engines/queen/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/sound.h b/engines/queen/sound.h
index 6a5dfc2c28..d06d93b9e1 100644
--- a/engines/queen/sound.h
+++ b/engines/queen/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/state.cpp b/engines/queen/state.cpp
index a07e68045b..09d2ccca47 100644
--- a/engines/queen/state.cpp
+++ b/engines/queen/state.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/state.h b/engines/queen/state.h
index 1a6725c800..786434156b 100644
--- a/engines/queen/state.h
+++ b/engines/queen/state.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/structs.h b/engines/queen/structs.h
index 6dd98fa1f5..4f413d8c6d 100644
--- a/engines/queen/structs.h
+++ b/engines/queen/structs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/talk.cpp b/engines/queen/talk.cpp
index 1531510ba4..1b9d72babc 100644
--- a/engines/queen/talk.cpp
+++ b/engines/queen/talk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1252,7 +1252,6 @@ int16 Talk::selectSentence() {
_vm->input()->clearKeyVerb();
if (sentenceCount > 0) {
- int zone = 0;
int oldZone = 0;
while (0 == selectedSentence) {
@@ -1263,7 +1262,7 @@ int16 Talk::selectSentence() {
_vm->update();
Common::Point mouse = _vm->input()->getMousePos();
- zone = _vm->grid()->findZoneForPos(GS_PANEL, mouse.x, mouse.y);
+ int zone = _vm->grid()->findZoneForPos(GS_PANEL, mouse.x, mouse.y);
int mouseButton = _vm->input()->mouseButton();
_vm->input()->clearMouseButton();
diff --git a/engines/queen/talk.h b/engines/queen/talk.h
index cba77cc255..4dcf5ba52c 100644
--- a/engines/queen/talk.h
+++ b/engines/queen/talk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/walk.cpp b/engines/queen/walk.cpp
index b5c9b97ce0..dd7e46c765 100644
--- a/engines/queen/walk.cpp
+++ b/engines/queen/walk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/queen/walk.h b/engines/queen/walk.h
index e5257b7afa..ce72607cbf 100644
--- a/engines/queen/walk.h
+++ b/engines/queen/walk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/actor.cpp b/engines/saga/actor.cpp
index 0548da9ee5..d8b115f9bd 100644
--- a/engines/saga/actor.cpp
+++ b/engines/saga/actor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/actor.h b/engines/saga/actor.h
index d9d4b70168..b8a5436d76 100644
--- a/engines/saga/actor.h
+++ b/engines/saga/actor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/actor_path.cpp b/engines/saga/actor_path.cpp
index d0f1cf2b5b..7cf834ded1 100644
--- a/engines/saga/actor_path.cpp
+++ b/engines/saga/actor_path.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/actor_walk.cpp b/engines/saga/actor_walk.cpp
index ea33a0950d..a5345261c5 100644
--- a/engines/saga/actor_walk.cpp
+++ b/engines/saga/actor_walk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/animation.cpp b/engines/saga/animation.cpp
index df8283b4c2..9e0bcf52ad 100644
--- a/engines/saga/animation.cpp
+++ b/engines/saga/animation.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/animation.h b/engines/saga/animation.h
index 2c42cb7253..dbb3117ba2 100644
--- a/engines/saga/animation.h
+++ b/engines/saga/animation.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/console.cpp b/engines/saga/console.cpp
index 771925a321..eab615b33f 100644
--- a/engines/saga/console.cpp
+++ b/engines/saga/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/console.h b/engines/saga/console.h
index b93638467b..625e6f57ad 100644
--- a/engines/saga/console.h
+++ b/engines/saga/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/detection.cpp b/engines/saga/detection.cpp
index f6872c41ad..8487811398 100644
--- a/engines/saga/detection.cpp
+++ b/engines/saga/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/detection_tables.h b/engines/saga/detection_tables.h
index 30cb13a031..72187a1a13 100644
--- a/engines/saga/detection_tables.h
+++ b/engines/saga/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/displayinfo.h b/engines/saga/displayinfo.h
index 70c36bafd5..a0cdf5733b 100644
--- a/engines/saga/displayinfo.h
+++ b/engines/saga/displayinfo.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/events.cpp b/engines/saga/events.cpp
index c5842f4998..013b019c9f 100644
--- a/engines/saga/events.cpp
+++ b/engines/saga/events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/events.h b/engines/saga/events.h
index 581abe17b0..6c423abb8c 100644
--- a/engines/saga/events.h
+++ b/engines/saga/events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/font.cpp b/engines/saga/font.cpp
index 8c3f4d7c42..73d42598cb 100644
--- a/engines/saga/font.cpp
+++ b/engines/saga/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/font.h b/engines/saga/font.h
index a45299ad48..e46468e816 100644
--- a/engines/saga/font.h
+++ b/engines/saga/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/font_map.cpp b/engines/saga/font_map.cpp
index 936c8e779c..145956f25f 100644
--- a/engines/saga/font_map.cpp
+++ b/engines/saga/font_map.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/gfx.cpp b/engines/saga/gfx.cpp
index 62250a0820..ceb86ebb18 100644
--- a/engines/saga/gfx.cpp
+++ b/engines/saga/gfx.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/gfx.h b/engines/saga/gfx.h
index c68160e907..ef2c2bde43 100644
--- a/engines/saga/gfx.h
+++ b/engines/saga/gfx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/image.cpp b/engines/saga/image.cpp
index 3434d46b42..31a38623f8 100644
--- a/engines/saga/image.cpp
+++ b/engines/saga/image.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/input.cpp b/engines/saga/input.cpp
index 8576a3e536..cf30c5fc38 100644
--- a/engines/saga/input.cpp
+++ b/engines/saga/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/interface.cpp b/engines/saga/interface.cpp
index b105e34487..680b2274f5 100644
--- a/engines/saga/interface.cpp
+++ b/engines/saga/interface.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/interface.h b/engines/saga/interface.h
index 84533705fe..340a0e9180 100644
--- a/engines/saga/interface.h
+++ b/engines/saga/interface.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/introproc_ihnm.cpp b/engines/saga/introproc_ihnm.cpp
index 7922d56425..fc28d2372f 100644
--- a/engines/saga/introproc_ihnm.cpp
+++ b/engines/saga/introproc_ihnm.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/introproc_ite.cpp b/engines/saga/introproc_ite.cpp
index ed53e078a0..91b1d3db95 100644
--- a/engines/saga/introproc_ite.cpp
+++ b/engines/saga/introproc_ite.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/introproc_saga2.cpp b/engines/saga/introproc_saga2.cpp
index e61dfbf161..710236b0c4 100644
--- a/engines/saga/introproc_saga2.cpp
+++ b/engines/saga/introproc_saga2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/isomap.cpp b/engines/saga/isomap.cpp
index 945b4ad5a7..77680178c1 100644
--- a/engines/saga/isomap.cpp
+++ b/engines/saga/isomap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/isomap.h b/engines/saga/isomap.h
index b35f79b1af..155d9b8d24 100644
--- a/engines/saga/isomap.h
+++ b/engines/saga/isomap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/itedata.cpp b/engines/saga/itedata.cpp
index 44aa48ccee..87b71c2cb7 100644
--- a/engines/saga/itedata.cpp
+++ b/engines/saga/itedata.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/itedata.h b/engines/saga/itedata.h
index 73f0a2aa21..d27b84781f 100644
--- a/engines/saga/itedata.h
+++ b/engines/saga/itedata.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/music.cpp b/engines/saga/music.cpp
index 3ac89bc2c2..e444900967 100644
--- a/engines/saga/music.cpp
+++ b/engines/saga/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/music.h b/engines/saga/music.h
index 081fab21f6..ba44c3ca71 100644
--- a/engines/saga/music.h
+++ b/engines/saga/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/objectmap.cpp b/engines/saga/objectmap.cpp
index b300a247e9..f27c888a61 100644
--- a/engines/saga/objectmap.cpp
+++ b/engines/saga/objectmap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/objectmap.h b/engines/saga/objectmap.h
index 3f71c8f95d..7f00fc390a 100644
--- a/engines/saga/objectmap.h
+++ b/engines/saga/objectmap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/palanim.cpp b/engines/saga/palanim.cpp
index 021a4c9bac..b5178a3d75 100644
--- a/engines/saga/palanim.cpp
+++ b/engines/saga/palanim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/palanim.h b/engines/saga/palanim.h
index 920cbec65a..a6ec4674cf 100644
--- a/engines/saga/palanim.h
+++ b/engines/saga/palanim.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/puzzle.cpp b/engines/saga/puzzle.cpp
index 63d9a88fee..705834f1b7 100644
--- a/engines/saga/puzzle.cpp
+++ b/engines/saga/puzzle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/puzzle.h b/engines/saga/puzzle.h
index 0f9bd8aeff..2a6a8cf4ed 100644
--- a/engines/saga/puzzle.h
+++ b/engines/saga/puzzle.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/render.cpp b/engines/saga/render.cpp
index a9ef23381e..1f23a388d0 100644
--- a/engines/saga/render.cpp
+++ b/engines/saga/render.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/render.h b/engines/saga/render.h
index 5694bacb35..4aaaf61eb4 100644
--- a/engines/saga/render.h
+++ b/engines/saga/render.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/resource.cpp b/engines/saga/resource.cpp
index 8025a949d4..cdf674dc66 100644
--- a/engines/saga/resource.cpp
+++ b/engines/saga/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/resource.h b/engines/saga/resource.h
index a8e2e92361..252e92c967 100644
--- a/engines/saga/resource.h
+++ b/engines/saga/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/resource_hrs.cpp b/engines/saga/resource_hrs.cpp
index ac16e21c12..09da9cf0bb 100644
--- a/engines/saga/resource_hrs.cpp
+++ b/engines/saga/resource_hrs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/resource_res.cpp b/engines/saga/resource_res.cpp
index 4fec9da662..d57238b2eb 100644
--- a/engines/saga/resource_res.cpp
+++ b/engines/saga/resource_res.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/resource_rsc.cpp b/engines/saga/resource_rsc.cpp
index bc66e9e30a..aaec90e655 100644
--- a/engines/saga/resource_rsc.cpp
+++ b/engines/saga/resource_rsc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/saga.cpp b/engines/saga/saga.cpp
index 239a3be9db..b15d161ba3 100644
--- a/engines/saga/saga.cpp
+++ b/engines/saga/saga.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/saga.h b/engines/saga/saga.h
index 645e1c30d0..6077e55094 100644
--- a/engines/saga/saga.h
+++ b/engines/saga/saga.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/saveload.cpp b/engines/saga/saveload.cpp
index 9784cf4e33..90ba62070b 100644
--- a/engines/saga/saveload.cpp
+++ b/engines/saga/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/scene.cpp b/engines/saga/scene.cpp
index eff31cf98b..7f77cbab38 100644
--- a/engines/saga/scene.cpp
+++ b/engines/saga/scene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -43,7 +43,7 @@
#include "common/util.h"
-#include "graphics/decoders/iff.h"
+#include "image/iff.h"
namespace Saga {
@@ -463,7 +463,7 @@ void Scene::changeScene(int16 sceneNumber, int actorsEntrance, SceneTransitionTy
_vm->_interface->setMode(kPanelSceneSubstitute);
if (file.open(sceneSubstitutes[i].image)) {
- Graphics::IFFDecoder decoder;
+ Image::IFFDecoder decoder;
decoder.loadStream(file);
pal = decoder.getPalette();
rect.setWidth(decoder.getSurface()->w);
diff --git a/engines/saga/scene.h b/engines/saga/scene.h
index 6e2cb12380..0a3b98b33f 100644
--- a/engines/saga/scene.h
+++ b/engines/saga/scene.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/script.cpp b/engines/saga/script.cpp
index 3efc554cb3..94b26c8da3 100644
--- a/engines/saga/script.cpp
+++ b/engines/saga/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/script.h b/engines/saga/script.h
index c4ea2d62b3..dd080fbe24 100644
--- a/engines/saga/script.h
+++ b/engines/saga/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sfuncs.cpp b/engines/saga/sfuncs.cpp
index c623349b7a..91e39c54b6 100644
--- a/engines/saga/sfuncs.cpp
+++ b/engines/saga/sfuncs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sfuncs_ihnm.cpp b/engines/saga/sfuncs_ihnm.cpp
index fdfd0fdf2c..6957360942 100644
--- a/engines/saga/sfuncs_ihnm.cpp
+++ b/engines/saga/sfuncs_ihnm.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/shorten.cpp b/engines/saga/shorten.cpp
index 619ffc243e..426430c892 100644
--- a/engines/saga/shorten.cpp
+++ b/engines/saga/shorten.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/shorten.h b/engines/saga/shorten.h
index 77feafa54d..556abaf311 100644
--- a/engines/saga/shorten.h
+++ b/engines/saga/shorten.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sndres.cpp b/engines/saga/sndres.cpp
index ca843af465..39578e96f0 100644
--- a/engines/saga/sndres.cpp
+++ b/engines/saga/sndres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sndres.h b/engines/saga/sndres.h
index 979c0288f6..554eed4a27 100644
--- a/engines/saga/sndres.h
+++ b/engines/saga/sndres.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sound.cpp b/engines/saga/sound.cpp
index 67be499bc7..0eb6f8a82a 100644
--- a/engines/saga/sound.cpp
+++ b/engines/saga/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sound.h b/engines/saga/sound.h
index e2163dfb0e..fa59538bbc 100644
--- a/engines/saga/sound.h
+++ b/engines/saga/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sprite.cpp b/engines/saga/sprite.cpp
index bf550659e9..ae8ee9cd54 100644
--- a/engines/saga/sprite.cpp
+++ b/engines/saga/sprite.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sprite.h b/engines/saga/sprite.h
index 0375d8c63f..525958006d 100644
--- a/engines/saga/sprite.h
+++ b/engines/saga/sprite.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/saga/sthread.cpp b/engines/saga/sthread.cpp
index 6e5cc68ae6..dde266bb0b 100644
--- a/engines/saga/sthread.cpp
+++ b/engines/saga/sthread.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/savestate.cpp b/engines/savestate.cpp
index 260c7cd3ff..186d7bc5f2 100644
--- a/engines/savestate.cpp
+++ b/engines/savestate.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/savestate.h b/engines/savestate.h
index c233554657..970e01485d 100644
--- a/engines/savestate.h
+++ b/engines/savestate.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/console.cpp b/engines/sci/console.cpp
index e7cbde6cbb..1bc0dd067c 100644
--- a/engines/sci/console.cpp
+++ b/engines/sci/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/console.h b/engines/sci/console.h
index 37cf35a471..c8e99f78f7 100644
--- a/engines/sci/console.h
+++ b/engines/sci/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/debug.h b/engines/sci/debug.h
index 765ceca07d..4fcb757c10 100644
--- a/engines/sci/debug.h
+++ b/engines/sci/debug.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/decompressor.cpp b/engines/sci/decompressor.cpp
index 306825008d..e65ff148de 100644
--- a/engines/sci/decompressor.cpp
+++ b/engines/sci/decompressor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/decompressor.h b/engines/sci/decompressor.h
index 5753026709..dab35fa41c 100644
--- a/engines/sci/decompressor.h
+++ b/engines/sci/decompressor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/detection.cpp b/engines/sci/detection.cpp
index 883a4d965b..4f28738508 100644
--- a/engines/sci/detection.cpp
+++ b/engines/sci/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/detection_tables.h b/engines/sci/detection_tables.h
index 85d01ca380..e97db04a8f 100644
--- a/engines/sci/detection_tables.h
+++ b/engines/sci/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/features.cpp b/engines/sci/engine/features.cpp
index c26c787fbd..31e7ca4931 100644
--- a/engines/sci/engine/features.cpp
+++ b/engines/sci/engine/features.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/features.h b/engines/sci/engine/features.h
index f6bb0b5759..a4d715fee0 100644
--- a/engines/sci/engine/features.h
+++ b/engines/sci/engine/features.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/file.cpp b/engines/sci/engine/file.cpp
index 3dc042389e..2ba7d15ac0 100644
--- a/engines/sci/engine/file.cpp
+++ b/engines/sci/engine/file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/file.h b/engines/sci/engine/file.h
index 1c8e302d15..052eb735e9 100644
--- a/engines/sci/engine/file.h
+++ b/engines/sci/engine/file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/gc.cpp b/engines/sci/engine/gc.cpp
index 9a30ff3e17..70c8c52bf0 100644
--- a/engines/sci/engine/gc.cpp
+++ b/engines/sci/engine/gc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/gc.h b/engines/sci/engine/gc.h
index 9e02bbd0bd..fbaad14b00 100644
--- a/engines/sci/engine/gc.h
+++ b/engines/sci/engine/gc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kernel.cpp b/engines/sci/engine/kernel.cpp
index 12746e17d6..2b16bb3d99 100644
--- a/engines/sci/engine/kernel.cpp
+++ b/engines/sci/engine/kernel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kernel.h b/engines/sci/engine/kernel.h
index 69c3a6d0c9..dddf845222 100644
--- a/engines/sci/engine/kernel.h
+++ b/engines/sci/engine/kernel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kernel_tables.h b/engines/sci/engine/kernel_tables.h
index 39244bd760..8a9c1426b6 100644
--- a/engines/sci/engine/kernel_tables.h
+++ b/engines/sci/engine/kernel_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -431,7 +431,7 @@ static SciKernelMapEntry s_kernelMap[] = {
{ MAP_CALL(RestartGame), SIG_EVERYWHERE, "", NULL, NULL },
{ MAP_CALL(RestoreGame), SIG_EVERYWHERE, "[r0]i[r0]", NULL, NULL },
{ MAP_CALL(Said), SIG_EVERYWHERE, "[r0]", NULL, NULL },
- { MAP_CALL(SaveGame), SIG_EVERYWHERE, "[r0]i[r0](r)", NULL, NULL },
+ { MAP_CALL(SaveGame), SIG_EVERYWHERE, "[r0]i[r0](r0)", NULL, NULL },
{ MAP_CALL(ScriptID), SIG_EVERYWHERE, "[io](i)", NULL, NULL },
{ MAP_CALL(SetCursor), SIG_SCI21, SIGFOR_ALL, "i(i)([io])(i*)", NULL, NULL },
// TODO: SCI2.1 may supply an object optionally (mother goose sci21 right on startup) - find out why
@@ -454,7 +454,7 @@ static SciKernelMapEntry s_kernelMap[] = {
{ MAP_CALL(StrAt), SIG_EVERYWHERE, "ri(i)", NULL, kStrAt_workarounds },
{ MAP_CALL(StrCat), SIG_EVERYWHERE, "rr", NULL, NULL },
{ MAP_CALL(StrCmp), SIG_EVERYWHERE, "rr(i)", NULL, NULL },
- { MAP_CALL(StrCpy), SIG_EVERYWHERE, "r[r0](i)", NULL, NULL },
+ { MAP_CALL(StrCpy), SIG_EVERYWHERE, "r[r0](i)", NULL, kStrCpy_workarounds },
{ MAP_CALL(StrEnd), SIG_EVERYWHERE, "r", NULL, NULL },
{ MAP_CALL(StrLen), SIG_EVERYWHERE, "[r0]", NULL, kStrLen_workarounds },
{ MAP_CALL(StrSplit), SIG_EVERYWHERE, "rr[r0]", NULL, NULL },
diff --git a/engines/sci/engine/kevent.cpp b/engines/sci/engine/kevent.cpp
index 11ef18c0c2..59f741a254 100644
--- a/engines/sci/engine/kevent.cpp
+++ b/engines/sci/engine/kevent.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kfile.cpp b/engines/sci/engine/kfile.cpp
index b940eca6f5..65acdbcdf5 100644
--- a/engines/sci/engine/kfile.cpp
+++ b/engines/sci/engine/kfile.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -37,6 +37,7 @@
#include "sci/engine/state.h"
#include "sci/engine/kernel.h"
#include "sci/engine/savegame.h"
+#include "sci/sound/audio.h"
#include "sci/console.h"
namespace Sci {
@@ -494,6 +495,21 @@ reg_t kFileIOWriteString(EngineState *s, int argc, reg_t *argv) {
Common::String str = s->_segMan->getString(argv[1]);
debugC(kDebugLevelFile, "kFileIO(writeString): %d", handle);
+ // Handle sciAudio calls in fanmade games here. sciAudio is an
+ // external .NET library for playing MP3 files in fanmade games.
+ // It runs in the background, and obtains sound commands from the
+ // currently running game via text files (called "conductor files").
+ // We skip creating these files, and instead handle the calls
+ // directly. Since the sciAudio calls are only creating text files,
+ // this is probably the most straightforward place to handle them.
+ if (handle == 0xFFFF && str.hasPrefix("(sciAudio")) {
+ Common::List<ExecStack>::const_iterator iter = s->_executionStack.reverse_begin();
+ iter--; // sciAudio
+ iter--; // sciAudio child
+ g_sci->_audio->handleFanmadeSciAudio(iter->sendp, s->_segMan);
+ return NULL_REG;
+ }
+
#ifdef ENABLE_SCI32
if (handle == VIRTUALFILE_HANDLE) {
s->_virtualIndexFile->write(str.c_str(), str.size());
@@ -743,11 +759,11 @@ reg_t kSaveGame(EngineState *s, int argc, reg_t *argv) {
savegameId = dialog->runModalWithCurrentTarget();
game_description = dialog->getResultString();
if (game_description.empty()) {
- // create our own description for the saved game, the user didnt enter it
+ // create our own description for the saved game, the user didn't enter it
game_description = dialog->createDefaultSaveDescription(savegameId);
}
delete dialog;
- g_sci->_soundCmd->pauseAll(false); // unpause music ( we can't have it paused during save)
+ g_sci->_soundCmd->pauseAll(false); // unpause music (we can't have it paused during save)
if (savegameId < 0)
return NULL_REG;
@@ -849,8 +865,6 @@ reg_t kRestoreGame(EngineState *s, int argc, reg_t *argv) {
}
// don't adjust ID of the saved game, it's already correct
} else {
- if (argv[2].isNull())
- error("kRestoreGame: called with parameter 2 being NULL");
if (g_sci->getGameId() == GID_JONES) {
// Jones has one save slot only
savegameId = 0;
@@ -879,7 +893,6 @@ reg_t kRestoreGame(EngineState *s, int argc, reg_t *argv) {
in = saveFileMan->openForLoading(filename);
if (in) {
// found a savegame file
-
gamestate_restore(s, in);
delete in;
diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp
index 79ab2d138b..c2089bcd4d 100644
--- a/engines/sci/engine/kgraphics.cpp
+++ b/engines/sci/engine/kgraphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kgraphics32.cpp b/engines/sci/engine/kgraphics32.cpp
index cd735d1233..8953f45266 100644
--- a/engines/sci/engine/kgraphics32.cpp
+++ b/engines/sci/engine/kgraphics32.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -142,7 +142,15 @@ reg_t kIsOnMe(EngineState *s, int argc, reg_t *argv) {
uint16 y = argv[1].toUint16();
reg_t targetObject = argv[2];
uint16 illegalBits = argv[3].getOffset();
- Common::Rect nsRect = g_sci->_gfxCompare->getNSRect(targetObject, true);
+ Common::Rect nsRect = g_sci->_gfxCompare->getNSRect(targetObject);
+
+ uint16 itemX = readSelectorValue(s->_segMan, targetObject, SELECTOR(x));
+ uint16 itemY = readSelectorValue(s->_segMan, targetObject, SELECTOR(y));
+ // If top and left are negative, we need to adjust coordinates by the item's x and y
+ if (nsRect.left < 0)
+ nsRect.translate(itemX, 0);
+ if (nsRect.top < 0)
+ nsRect.translate(0, itemY);
// we assume that x, y are local coordinates
diff --git a/engines/sci/engine/klists.cpp b/engines/sci/engine/klists.cpp
index 7e6c112b9f..66590da23f 100644
--- a/engines/sci/engine/klists.cpp
+++ b/engines/sci/engine/klists.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kmath.cpp b/engines/sci/engine/kmath.cpp
index b2aaa01b45..15bc24e0e3 100644
--- a/engines/sci/engine/kmath.cpp
+++ b/engines/sci/engine/kmath.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kmenu.cpp b/engines/sci/engine/kmenu.cpp
index 05ba7005d7..8dca7f74df 100644
--- a/engines/sci/engine/kmenu.cpp
+++ b/engines/sci/engine/kmenu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kmisc.cpp b/engines/sci/engine/kmisc.cpp
index 8b7fc4ffec..e3a354e222 100644
--- a/engines/sci/engine/kmisc.cpp
+++ b/engines/sci/engine/kmisc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kmovement.cpp b/engines/sci/engine/kmovement.cpp
index 649a1428a0..51d49eea9f 100644
--- a/engines/sci/engine/kmovement.cpp
+++ b/engines/sci/engine/kmovement.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kparse.cpp b/engines/sci/engine/kparse.cpp
index 5e861daaa4..aa89b963cc 100644
--- a/engines/sci/engine/kparse.cpp
+++ b/engines/sci/engine/kparse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kpathing.cpp b/engines/sci/engine/kpathing.cpp
index 3c223bebbe..940bd38adb 100644
--- a/engines/sci/engine/kpathing.cpp
+++ b/engines/sci/engine/kpathing.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kscripts.cpp b/engines/sci/engine/kscripts.cpp
index 2c115be500..5c271780dd 100644
--- a/engines/sci/engine/kscripts.cpp
+++ b/engines/sci/engine/kscripts.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/ksound.cpp b/engines/sci/engine/ksound.cpp
index 2879b7f45d..6a1708d21a 100644
--- a/engines/sci/engine/ksound.cpp
+++ b/engines/sci/engine/ksound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kstring.cpp b/engines/sci/engine/kstring.cpp
index d72b1d1772..56dad583e4 100644
--- a/engines/sci/engine/kstring.cpp
+++ b/engines/sci/engine/kstring.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/kvideo.cpp b/engines/sci/engine/kvideo.cpp
index 3964ccc1f8..319469cb08 100644
--- a/engines/sci/engine/kvideo.cpp
+++ b/engines/sci/engine/kvideo.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/message.cpp b/engines/sci/engine/message.cpp
index 8c5741f8b0..640175b20a 100644
--- a/engines/sci/engine/message.cpp
+++ b/engines/sci/engine/message.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/message.h b/engines/sci/engine/message.h
index 5bead82efe..ff76534d2d 100644
--- a/engines/sci/engine/message.h
+++ b/engines/sci/engine/message.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/object.cpp b/engines/sci/engine/object.cpp
index 6f219b388e..eeff45163d 100644
--- a/engines/sci/engine/object.cpp
+++ b/engines/sci/engine/object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/object.h b/engines/sci/engine/object.h
index 1ea9ae449a..00fe7c6875 100644
--- a/engines/sci/engine/object.h
+++ b/engines/sci/engine/object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/savegame.cpp b/engines/sci/engine/savegame.cpp
index ce9a672572..cdcdcc41e5 100644
--- a/engines/sci/engine/savegame.cpp
+++ b/engines/sci/engine/savegame.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -860,16 +860,13 @@ void gamestate_restore(EngineState *s, Common::SeekableReadStream *fh) {
return;
}
- if ((meta.version < MINIMUM_SAVEGAME_VERSION) ||
- (meta.version > CURRENT_SAVEGAME_VERSION)) {
- /*
- if (meta.version < MINIMUM_SAVEGAME_VERSION)
- warning("Old savegame version detected, unable to load it");
- else
- warning("Savegame version is %d, maximum supported is %0d", meta.version, CURRENT_SAVEGAME_VERSION);
- */
-
- showScummVMDialog("The format of this saved game is obsolete, unable to load it");
+ if ((meta.version < MINIMUM_SAVEGAME_VERSION) || (meta.version > CURRENT_SAVEGAME_VERSION)) {
+ if (meta.version < MINIMUM_SAVEGAME_VERSION) {
+ showScummVMDialog("The format of this saved game is obsolete, unable to load it");
+ } else {
+ Common::String msg = Common::String::format("Savegame version is %d, maximum supported is %0d", meta.version, CURRENT_SAVEGAME_VERSION);
+ showScummVMDialog(msg);
+ }
s->r_acc = TRUE_REG; // signal failure
return;
@@ -878,8 +875,6 @@ void gamestate_restore(EngineState *s, Common::SeekableReadStream *fh) {
if (meta.gameObjectOffset > 0 && meta.script0Size > 0) {
Resource *script0 = g_sci->getResMan()->findResource(ResourceId(kResourceTypeScript, 0), false);
if (script0->size != meta.script0Size || g_sci->getGameObject().getOffset() != meta.gameObjectOffset) {
- //warning("This saved game was created with a different version of the game, unable to load it");
-
showScummVMDialog("This saved game was created with a different version of the game, unable to load it");
s->r_acc = TRUE_REG; // signal failure
diff --git a/engines/sci/engine/savegame.h b/engines/sci/engine/savegame.h
index f1f02f89f2..8f2835654b 100644
--- a/engines/sci/engine/savegame.h
+++ b/engines/sci/engine/savegame.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/script.cpp b/engines/sci/engine/script.cpp
index c661a00185..2fe1aba975 100644
--- a/engines/sci/engine/script.cpp
+++ b/engines/sci/engine/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/script.h b/engines/sci/engine/script.h
index 9e016156b8..46d6ace917 100644
--- a/engines/sci/engine/script.h
+++ b/engines/sci/engine/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/script_patches.cpp b/engines/sci/engine/script_patches.cpp
index 8f05cc1453..b4d245197b 100644
--- a/engines/sci/engine/script_patches.cpp
+++ b/engines/sci/engine/script_patches.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -2668,8 +2668,8 @@ void ScriptPatcher::initSignature(const SciScriptPatcherEntry *patchTable, bool
uint16 curWord;
uint16 curCommand;
uint32 curValue;
- byte byte1;
- byte byte2;
+ byte byte1 = 0;
+ byte byte2 = 0;
int patchEntryCount = 0;
// Count entries and allocate runtime data
diff --git a/engines/sci/engine/script_patches.h b/engines/sci/engine/script_patches.h
index 9e572f33fa..0b35792949 100644
--- a/engines/sci/engine/script_patches.h
+++ b/engines/sci/engine/script_patches.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/scriptdebug.cpp b/engines/sci/engine/scriptdebug.cpp
index 277437109c..44910058ef 100644
--- a/engines/sci/engine/scriptdebug.cpp
+++ b/engines/sci/engine/scriptdebug.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -737,37 +737,39 @@ void logKernelCall(const KernelFunction *kernelCall, const KernelSubFunction *ke
case SIG_TYPE_REFERENCE:
{
SegmentObj *mobj = s->_segMan->getSegmentObj(argv[parmNr].getSegment());
- switch (mobj->getType()) {
- case SEG_TYPE_HUNK:
- {
- HunkTable *ht = (HunkTable *)mobj;
- int index = argv[parmNr].getOffset();
- if (ht->isValidEntry(index)) {
- // NOTE: This ", deleted" isn't as useful as it could
- // be because it prints the status _after_ the kernel
- // call.
- debugN(" ('%s' hunk%s)", ht->_table[index].type, ht->_table[index].mem ? "" : ", deleted");
- } else
- debugN(" (INVALID hunk ref)");
- break;
- }
- default:
- // TODO: Any other segment types which could
- // use special handling?
-
- if (kernelCall->function == kSaid) {
- SegmentRef saidSpec = s->_segMan->dereference(argv[parmNr]);
- if (saidSpec.isRaw) {
- debugN(" ('");
- g_sci->getVocabulary()->debugDecipherSaidBlock(saidSpec.raw);
- debugN("')");
+ if (mobj) {
+ switch (mobj->getType()) {
+ case SEG_TYPE_HUNK:
+ {
+ HunkTable *ht = (HunkTable *)mobj;
+ int index = argv[parmNr].getOffset();
+ if (ht->isValidEntry(index)) {
+ // NOTE: This ", deleted" isn't as useful as it could
+ // be because it prints the status _after_ the kernel
+ // call.
+ debugN(" ('%s' hunk%s)", ht->_table[index].type, ht->_table[index].mem ? "" : ", deleted");
+ } else
+ debugN(" (INVALID hunk ref)");
+ break;
+ }
+ default:
+ // TODO: Any other segment types which could
+ // use special handling?
+
+ if (kernelCall->function == kSaid) {
+ SegmentRef saidSpec = s->_segMan->dereference(argv[parmNr]);
+ if (saidSpec.isRaw) {
+ debugN(" ('");
+ g_sci->getVocabulary()->debugDecipherSaidBlock(saidSpec.raw);
+ debugN("')");
+ } else {
+ debugN(" (non-raw said-spec)");
+ }
} else {
- debugN(" (non-raw said-spec)");
+ debugN(" ('%s')", s->_segMan->getString(argv[parmNr]).c_str());
}
- } else {
- debugN(" ('%s')", s->_segMan->getString(argv[parmNr]).c_str());
+ break;
}
- break;
}
}
default:
diff --git a/engines/sci/engine/seg_manager.cpp b/engines/sci/engine/seg_manager.cpp
index 161a4f5c79..3738fd3dcb 100644
--- a/engines/sci/engine/seg_manager.cpp
+++ b/engines/sci/engine/seg_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/seg_manager.h b/engines/sci/engine/seg_manager.h
index b587f4991a..2d6e624f6f 100644
--- a/engines/sci/engine/seg_manager.h
+++ b/engines/sci/engine/seg_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/segment.cpp b/engines/sci/engine/segment.cpp
index a7f147a15a..bb90698e6a 100644
--- a/engines/sci/engine/segment.cpp
+++ b/engines/sci/engine/segment.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/segment.h b/engines/sci/engine/segment.h
index 0d54b651e1..de7f60ac16 100644
--- a/engines/sci/engine/segment.h
+++ b/engines/sci/engine/segment.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/selector.cpp b/engines/sci/engine/selector.cpp
index 2f6b4d58dd..910f1f885f 100644
--- a/engines/sci/engine/selector.cpp
+++ b/engines/sci/engine/selector.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/selector.h b/engines/sci/engine/selector.h
index 5d3d0752ac..b3dd393708 100644
--- a/engines/sci/engine/selector.h
+++ b/engines/sci/engine/selector.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/state.cpp b/engines/sci/engine/state.cpp
index 0f0c8dcd66..7701822f6d 100644
--- a/engines/sci/engine/state.cpp
+++ b/engines/sci/engine/state.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -252,7 +252,7 @@ Common::String SciEngine::getSciLanguageString(const Common::String &str, kLangu
}
}
- if (seeker)
+ if (*seeker)
return Common::String(str.c_str(), seeker - str.c_str());
else
return str;
diff --git a/engines/sci/engine/state.h b/engines/sci/engine/state.h
index 25110ce0ca..ecc8cb7dfe 100644
--- a/engines/sci/engine/state.h
+++ b/engines/sci/engine/state.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/static_selectors.cpp b/engines/sci/engine/static_selectors.cpp
index 74d2851024..188da3d5a2 100644
--- a/engines/sci/engine/static_selectors.cpp
+++ b/engines/sci/engine/static_selectors.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/vm.cpp b/engines/sci/engine/vm.cpp
index d7c2fdc0eb..06858540ec 100644
--- a/engines/sci/engine/vm.cpp
+++ b/engines/sci/engine/vm.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/vm.h b/engines/sci/engine/vm.h
index 8b38faa013..cf65803929 100644
--- a/engines/sci/engine/vm.h
+++ b/engines/sci/engine/vm.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/engine/vm_types.cpp b/engines/sci/engine/vm_types.cpp
index 5327dd1a2e..65a82832cc 100644
--- a/engines/sci/engine/vm_types.cpp
+++ b/engines/sci/engine/vm_types.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -28,6 +28,43 @@
namespace Sci {
+SegmentId reg_t::getSegment() const {
+ if (getSciVersion() <= SCI_VERSION_2_1) {
+ return _segment;
+ } else {
+ // Return the lower 14 bits of the segment
+ return (_segment & 0x3FFF);
+ }
+}
+
+void reg_t::setSegment(SegmentId segment) {
+ if (getSciVersion() <= SCI_VERSION_2_1) {
+ _segment = segment;
+ } else {
+ // Set the lower 14 bits of the segment, and preserve the upper 2 ones for the offset
+ _segment = (_segment & 0xC000) | (segment & 0x3FFF);
+ }
+}
+
+uint32 reg_t::getOffset() const {
+ if (getSciVersion() <= SCI_VERSION_2_1) {
+ return _offset;
+ } else {
+ // Return the lower 16 bits from the offset, and the 17th and 18th bits from the segment
+ return ((_segment & 0xC000) << 2) | _offset;
+ }
+}
+
+void reg_t::setOffset(uint32 offset) {
+ if (getSciVersion() <= SCI_VERSION_2_1) {
+ _offset = offset;
+ } else {
+ // Store the lower 16 bits in the offset, and the 17th and 18th bits in the segment
+ _offset = offset & 0xFFFF;
+ _segment = ((offset & 0x30000) >> 2) | (_segment & 0x3FFF);
+ }
+}
+
reg_t reg_t::lookForWorkaround(const reg_t right, const char *operation) const {
SciTrackOriginReply originReply;
SciWorkaroundSolution solution = trackOriginAndFindWorkaround(0, arithmeticWorkarounds, &originReply);
diff --git a/engines/sci/engine/vm_types.h b/engines/sci/engine/vm_types.h
index 22bd8beaa1..af78bd0b84 100644
--- a/engines/sci/engine/vm_types.h
+++ b/engines/sci/engine/vm_types.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -35,36 +35,25 @@ struct reg_t {
SegmentId _segment;
uint16 _offset;
- inline SegmentId getSegment() const {
- return _segment;
- }
-
- inline void setSegment(SegmentId segment) {
- _segment = segment;
- }
-
- inline uint16 getOffset() const {
- return _offset;
- }
-
- inline void setOffset(uint16 offset) {
- _offset = offset;
- }
+ SegmentId getSegment() const;
+ void setSegment(SegmentId segment);
+ uint32 getOffset() const;
+ void setOffset(uint32 offset);
inline void incOffset(int16 offset) {
setOffset(getOffset() + offset);
}
inline bool isNull() const {
- return (_offset | getSegment()) == 0;
+ return (getOffset() | getSegment()) == 0;
}
inline uint16 toUint16() const {
- return _offset;
+ return (uint16)getOffset();
}
inline int16 toSint16() const {
- return (int16)_offset;
+ return (int16)getOffset();
}
bool isNumber() const {
diff --git a/engines/sci/engine/workarounds.cpp b/engines/sci/engine/workarounds.cpp
index 4b8500bbcb..6ef98e3b2a 100644
--- a/engines/sci/engine/workarounds.cpp
+++ b/engines/sci/engine/workarounds.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -411,6 +411,11 @@ const SciWorkaroundEntry kStrAt_workarounds[] = {
SCI_WORKAROUNDENTRY_TERMINATOR
};
+const SciWorkaroundEntry kStrCpy_workarounds[] = {
+ { GID_MOTHERGOOSE, 23, 23, 0, "talkScript", "changeState", -1, 0, { WORKAROUND_FAKE, 0 } }, // when talking to the girl in scene 23, there's no destination parameter (script bug - wrong instruction order). The original source is used directly afterwards in kDisplay, to show the girl's text - bug #6485
+ SCI_WORKAROUNDENTRY_TERMINATOR
+};
+
// gameID, room,script,lvl, object-name, method-name, call,index, workaround
const SciWorkaroundEntry kStrLen_workarounds[] = {
{ GID_QFG2, 210, 2, 0, "", "export 21", 0xdeb, 0, { WORKAROUND_FAKE, 0 } }, // When saying something incorrect at the WIT, an integer is passed instead of a reference - bug #5489
diff --git a/engines/sci/engine/workarounds.h b/engines/sci/engine/workarounds.h
index d5e91b70ec..2e73dddbe3 100644
--- a/engines/sci/engine/workarounds.h
+++ b/engines/sci/engine/workarounds.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -93,6 +93,7 @@ extern const SciWorkaroundEntry kPaletteUnsetFlag_workarounds[];
extern const SciWorkaroundEntry kSetCursor_workarounds[];
extern const SciWorkaroundEntry kSetPort_workarounds[];
extern const SciWorkaroundEntry kStrAt_workarounds[];
+extern const SciWorkaroundEntry kStrCpy_workarounds[];
extern const SciWorkaroundEntry kStrLen_workarounds[];
extern const SciWorkaroundEntry kUnLoad_workarounds[];
diff --git a/engines/sci/event.cpp b/engines/sci/event.cpp
index 7318fe2f68..511d2014bd 100644
--- a/engines/sci/event.cpp
+++ b/engines/sci/event.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/event.h b/engines/sci/event.h
index 930001160a..82e93a9373 100644
--- a/engines/sci/event.h
+++ b/engines/sci/event.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/animate.cpp b/engines/sci/graphics/animate.cpp
index 53715613fc..73cd7240d3 100644
--- a/engines/sci/graphics/animate.cpp
+++ b/engines/sci/graphics/animate.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/animate.h b/engines/sci/graphics/animate.h
index 52da7d6ec6..6c1822c903 100644
--- a/engines/sci/graphics/animate.h
+++ b/engines/sci/graphics/animate.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/cache.cpp b/engines/sci/graphics/cache.cpp
index 55f8624c49..59af8334eb 100644
--- a/engines/sci/graphics/cache.cpp
+++ b/engines/sci/graphics/cache.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/cache.h b/engines/sci/graphics/cache.h
index 2f462fe042..33fa4fe399 100644
--- a/engines/sci/graphics/cache.h
+++ b/engines/sci/graphics/cache.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/compare.cpp b/engines/sci/graphics/compare.cpp
index b42063b119..3c2285a470 100644
--- a/engines/sci/graphics/compare.cpp
+++ b/engines/sci/graphics/compare.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -241,21 +241,13 @@ void GfxCompare::kernelBaseSetter(reg_t object) {
}
}
-Common::Rect GfxCompare::getNSRect(reg_t object, bool fixRect) {
+Common::Rect GfxCompare::getNSRect(reg_t object) {
Common::Rect nsRect;
nsRect.top = readSelectorValue(_segMan, object, SELECTOR(nsTop));
nsRect.left = readSelectorValue(_segMan, object, SELECTOR(nsLeft));
nsRect.bottom = readSelectorValue(_segMan, object, SELECTOR(nsBottom));
nsRect.right = readSelectorValue(_segMan, object, SELECTOR(nsRight));
- if (fixRect) {
- // nsRect top/left may be negative, adjust accordingly
- if (nsRect.top < 0)
- nsRect.top = 0;
- if (nsRect.left < 0)
- nsRect.left = 0;
- }
-
return nsRect;
}
diff --git a/engines/sci/graphics/compare.h b/engines/sci/graphics/compare.h
index 0080406a3b..88b44aeeb1 100644
--- a/engines/sci/graphics/compare.h
+++ b/engines/sci/graphics/compare.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -42,7 +42,7 @@ public:
reg_t kernelCanBeHere(reg_t curObject, reg_t listReference);
bool kernelIsItSkip(GuiResourceId viewId, int16 loopNo, int16 celNo, Common::Point position);
void kernelBaseSetter(reg_t object);
- Common::Rect getNSRect(reg_t object, bool fixRect = false);
+ Common::Rect getNSRect(reg_t object);
void setNSRect(reg_t object, Common::Rect nsRect);
private:
diff --git a/engines/sci/graphics/controls16.cpp b/engines/sci/graphics/controls16.cpp
index 0098f7b9ef..f2b2ccdfe6 100644
--- a/engines/sci/graphics/controls16.cpp
+++ b/engines/sci/graphics/controls16.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/controls16.h b/engines/sci/graphics/controls16.h
index 2cde86d4b1..6a70c71aae 100644
--- a/engines/sci/graphics/controls16.h
+++ b/engines/sci/graphics/controls16.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/controls32.cpp b/engines/sci/graphics/controls32.cpp
index 5b61e1a86a..90b5cd558c 100644
--- a/engines/sci/graphics/controls32.cpp
+++ b/engines/sci/graphics/controls32.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/controls32.h b/engines/sci/graphics/controls32.h
index 1b705988c2..5af7c20f16 100644
--- a/engines/sci/graphics/controls32.h
+++ b/engines/sci/graphics/controls32.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/coordadjuster.cpp b/engines/sci/graphics/coordadjuster.cpp
index 1446888cf4..93dff10382 100644
--- a/engines/sci/graphics/coordadjuster.cpp
+++ b/engines/sci/graphics/coordadjuster.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/coordadjuster.h b/engines/sci/graphics/coordadjuster.h
index 25279b34b1..cb0227fbe4 100644
--- a/engines/sci/graphics/coordadjuster.h
+++ b/engines/sci/graphics/coordadjuster.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/cursor.cpp b/engines/sci/graphics/cursor.cpp
index a9c741670f..048ec1e9b9 100644
--- a/engines/sci/graphics/cursor.cpp
+++ b/engines/sci/graphics/cursor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/cursor.h b/engines/sci/graphics/cursor.h
index 369bd22a0b..c2d7998eb3 100644
--- a/engines/sci/graphics/cursor.h
+++ b/engines/sci/graphics/cursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/font.cpp b/engines/sci/graphics/font.cpp
index 30184cc091..e4684ff134 100644
--- a/engines/sci/graphics/font.cpp
+++ b/engines/sci/graphics/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/font.h b/engines/sci/graphics/font.h
index 8e5c980e2c..58b2ba4813 100644
--- a/engines/sci/graphics/font.h
+++ b/engines/sci/graphics/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/fontsjis.cpp b/engines/sci/graphics/fontsjis.cpp
index ac58c55423..9c942eadd1 100644
--- a/engines/sci/graphics/fontsjis.cpp
+++ b/engines/sci/graphics/fontsjis.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/fontsjis.h b/engines/sci/graphics/fontsjis.h
index ae5eaa43f9..57403ad98e 100644
--- a/engines/sci/graphics/fontsjis.h
+++ b/engines/sci/graphics/fontsjis.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/frameout.cpp b/engines/sci/graphics/frameout.cpp
index 76510fa53b..ffed7b596e 100644
--- a/engines/sci/graphics/frameout.cpp
+++ b/engines/sci/graphics/frameout.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/frameout.h b/engines/sci/graphics/frameout.h
index 5ef770486f..e0c60f92c1 100644
--- a/engines/sci/graphics/frameout.h
+++ b/engines/sci/graphics/frameout.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/helpers.h b/engines/sci/graphics/helpers.h
index 773f83a00e..4889f12bd2 100644
--- a/engines/sci/graphics/helpers.h
+++ b/engines/sci/graphics/helpers.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/maciconbar.cpp b/engines/sci/graphics/maciconbar.cpp
index 4df80b289f..8e2e12b7bd 100644
--- a/engines/sci/graphics/maciconbar.cpp
+++ b/engines/sci/graphics/maciconbar.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -32,7 +32,7 @@
#include "common/memstream.h"
#include "common/system.h"
#include "graphics/surface.h"
-#include "graphics/decoders/pict.h"
+#include "image/pict.h"
namespace Sci {
@@ -201,12 +201,12 @@ void GfxMacIconBar::setInventoryIcon(int16 icon) {
}
Graphics::Surface *GfxMacIconBar::loadPict(ResourceId id) {
- Graphics::PICTDecoder pictDecoder;
Resource *res = g_sci->getResMan()->findResource(id, false);
if (!res || res->size == 0)
return 0;
+ Image::PICTDecoder pictDecoder;
Common::MemoryReadStream stream(res->data, res->size);
if (!pictDecoder.loadStream(stream))
return 0;
diff --git a/engines/sci/graphics/maciconbar.h b/engines/sci/graphics/maciconbar.h
index eca10b804c..86cbc74039 100644
--- a/engines/sci/graphics/maciconbar.h
+++ b/engines/sci/graphics/maciconbar.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/menu.cpp b/engines/sci/graphics/menu.cpp
index d2416ab4e0..8e8c1d64c2 100644
--- a/engines/sci/graphics/menu.cpp
+++ b/engines/sci/graphics/menu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/menu.h b/engines/sci/graphics/menu.h
index aa3550da4e..95fd4f6c20 100644
--- a/engines/sci/graphics/menu.h
+++ b/engines/sci/graphics/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/paint.cpp b/engines/sci/graphics/paint.cpp
index 7befa99afe..482b81aff1 100644
--- a/engines/sci/graphics/paint.cpp
+++ b/engines/sci/graphics/paint.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/paint.h b/engines/sci/graphics/paint.h
index 27f7e428b6..b2277131d5 100644
--- a/engines/sci/graphics/paint.h
+++ b/engines/sci/graphics/paint.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/paint16.cpp b/engines/sci/graphics/paint16.cpp
index 940a1ac3cf..b835eb92ca 100644
--- a/engines/sci/graphics/paint16.cpp
+++ b/engines/sci/graphics/paint16.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/paint16.h b/engines/sci/graphics/paint16.h
index e06021c3e7..882f311a5b 100644
--- a/engines/sci/graphics/paint16.h
+++ b/engines/sci/graphics/paint16.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/paint32.cpp b/engines/sci/graphics/paint32.cpp
index a03e77dfa6..f94c65c76b 100644
--- a/engines/sci/graphics/paint32.cpp
+++ b/engines/sci/graphics/paint32.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/paint32.h b/engines/sci/graphics/paint32.h
index 81e355f77f..e7a3ec256d 100644
--- a/engines/sci/graphics/paint32.h
+++ b/engines/sci/graphics/paint32.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/palette.cpp b/engines/sci/graphics/palette.cpp
index d8d788b00a..a3624c7959 100644
--- a/engines/sci/graphics/palette.cpp
+++ b/engines/sci/graphics/palette.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/palette.h b/engines/sci/graphics/palette.h
index e974781d49..347695deb8 100644
--- a/engines/sci/graphics/palette.h
+++ b/engines/sci/graphics/palette.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/picture.cpp b/engines/sci/graphics/picture.cpp
index caab1d80da..434a490109 100644
--- a/engines/sci/graphics/picture.cpp
+++ b/engines/sci/graphics/picture.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/picture.h b/engines/sci/graphics/picture.h
index 53f83bc09f..2404f99b41 100644
--- a/engines/sci/graphics/picture.h
+++ b/engines/sci/graphics/picture.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/portrait.cpp b/engines/sci/graphics/portrait.cpp
index d589ee17f9..488450485d 100644
--- a/engines/sci/graphics/portrait.cpp
+++ b/engines/sci/graphics/portrait.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/portrait.h b/engines/sci/graphics/portrait.h
index de0dbffb3f..877b253bcf 100644
--- a/engines/sci/graphics/portrait.h
+++ b/engines/sci/graphics/portrait.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/ports.cpp b/engines/sci/graphics/ports.cpp
index ed0013b491..bd0b5f4081 100644
--- a/engines/sci/graphics/ports.cpp
+++ b/engines/sci/graphics/ports.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/ports.h b/engines/sci/graphics/ports.h
index 1818eaddb3..51aca09f54 100644
--- a/engines/sci/graphics/ports.h
+++ b/engines/sci/graphics/ports.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/screen.cpp b/engines/sci/graphics/screen.cpp
index 0df163dd7b..15717239d8 100644
--- a/engines/sci/graphics/screen.cpp
+++ b/engines/sci/graphics/screen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/screen.h b/engines/sci/graphics/screen.h
index 01fb899edb..c334638703 100644
--- a/engines/sci/graphics/screen.h
+++ b/engines/sci/graphics/screen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/text16.cpp b/engines/sci/graphics/text16.cpp
index 56e9ea8b69..245d6996cb 100644
--- a/engines/sci/graphics/text16.cpp
+++ b/engines/sci/graphics/text16.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/text16.h b/engines/sci/graphics/text16.h
index 321c7fc25e..ab0cb13a64 100644
--- a/engines/sci/graphics/text16.h
+++ b/engines/sci/graphics/text16.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/text32.cpp b/engines/sci/graphics/text32.cpp
index f14ae2ef0b..56ce73e8fa 100644
--- a/engines/sci/graphics/text32.cpp
+++ b/engines/sci/graphics/text32.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/text32.h b/engines/sci/graphics/text32.h
index ce78003fdf..7ba7df50e4 100644
--- a/engines/sci/graphics/text32.h
+++ b/engines/sci/graphics/text32.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/transitions.cpp b/engines/sci/graphics/transitions.cpp
index b385c2c1db..5e7dbc6c15 100644
--- a/engines/sci/graphics/transitions.cpp
+++ b/engines/sci/graphics/transitions.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/transitions.h b/engines/sci/graphics/transitions.h
index 246f681690..ae9ca4b48a 100644
--- a/engines/sci/graphics/transitions.h
+++ b/engines/sci/graphics/transitions.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/view.cpp b/engines/sci/graphics/view.cpp
index 3d72743ff4..f3f352e5b8 100644
--- a/engines/sci/graphics/view.cpp
+++ b/engines/sci/graphics/view.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/graphics/view.h b/engines/sci/graphics/view.h
index d3473f1024..d8803db208 100644
--- a/engines/sci/graphics/view.h
+++ b/engines/sci/graphics/view.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/parser/grammar.cpp b/engines/sci/parser/grammar.cpp
index 26e3ec9238..ee0125b7c9 100644
--- a/engines/sci/parser/grammar.cpp
+++ b/engines/sci/parser/grammar.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/parser/said.cpp b/engines/sci/parser/said.cpp
index eff4a29f49..693bbec744 100644
--- a/engines/sci/parser/said.cpp
+++ b/engines/sci/parser/said.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/parser/vocabulary.cpp b/engines/sci/parser/vocabulary.cpp
index f5b79d6c5e..7c560dfaef 100644
--- a/engines/sci/parser/vocabulary.cpp
+++ b/engines/sci/parser/vocabulary.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -724,14 +724,13 @@ int Vocabulary::parseNodes(int *i, int *pos, int type, int nr, int argc, const c
newPos = parseNodes(i, pos, nextToken, nextValue, argc, argv);
+ if (newPos == -1)
+ return -1;
+
if (j == 0)
_parserNodes[oldPos].left = &_parserNodes[newPos];
else
_parserNodes[oldPos].right = &_parserNodes[newPos];
-
-
- if (newPos == -1)
- return -1;
}
const char *token = argv[(*i)++];
diff --git a/engines/sci/parser/vocabulary.h b/engines/sci/parser/vocabulary.h
index e4a7e41b3c..09499946cb 100644
--- a/engines/sci/parser/vocabulary.h
+++ b/engines/sci/parser/vocabulary.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/resource.cpp b/engines/sci/resource.cpp
index 52155cd09a..17195c14b8 100644
--- a/engines/sci/resource.cpp
+++ b/engines/sci/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -2264,15 +2264,6 @@ void ResourceManager::detectSciVersion() {
s_sciVersion = SCI_VERSION_1_1;
return;
}
- // FIXME: this is really difficult, lsl1 spanish has map/vol sci1late
- // and the only current detection difference is movecounttype which
- // is increment here, but ignore for all the regular sci1late games
- // the problem is, we dont have access to that detection till later
- // so maybe (part of?) that detection should get moved in here
- if (g_sci && (g_sci->getGameId() == GID_LSL1) && (g_sci->getLanguage() == Common::ES_ESP)) {
- s_sciVersion = SCI_VERSION_1_MIDDLE;
- return;
- }
s_sciVersion = SCI_VERSION_1_LATE;
return;
case kResVersionSci11:
diff --git a/engines/sci/resource.h b/engines/sci/resource.h
index 6a22f48086..e90f52a3ce 100644
--- a/engines/sci/resource.h
+++ b/engines/sci/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/resource_audio.cpp b/engines/sci/resource_audio.cpp
index 8e1568f564..4c7cd9b84a 100644
--- a/engines/sci/resource_audio.cpp
+++ b/engines/sci/resource_audio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/resource_intern.h b/engines/sci/resource_intern.h
index c256c9d156..461d684005 100644
--- a/engines/sci/resource_intern.h
+++ b/engines/sci/resource_intern.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sci.cpp b/engines/sci/sci.cpp
index f32e0e16f9..cf5192e1e6 100644
--- a/engines/sci/sci.cpp
+++ b/engines/sci/sci.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -286,6 +286,11 @@ Common::Error SciEngine::run() {
// We set this, so that the game automatically quit right after init
_gamestate->variables[VAR_GLOBAL][4] = TRUE_REG;
+ // Jones only initializes its menus when restarting/restoring, thus set
+ // the gameIsRestarting flag here before initializing. Fixes bug #6536.
+ if (g_sci->getGameId() == GID_JONES)
+ _gamestate->gameIsRestarting = GAMEISRESTARTING_RESTORE;
+
_gamestate->_executionStackPosChanged = false;
run_vm(_gamestate);
@@ -576,7 +581,7 @@ bool SciEngine::initGame() {
// Script 0 should always be at segment 1
if (script0Segment != 1) {
- debug(2, "Failed to instantiate script.000");
+ debug(2, "Failed to instantiate script 0");
return false;
}
diff --git a/engines/sci/sci.h b/engines/sci/sci.h
index 418f8c5e50..48bc4819d2 100644
--- a/engines/sci/sci.h
+++ b/engines/sci/sci.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/audio.cpp b/engines/sci/sound/audio.cpp
index 8f405b0fa5..8e35d6b055 100644
--- a/engines/sci/sound/audio.cpp
+++ b/engines/sci/sound/audio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -61,6 +61,62 @@ void AudioPlayer::stopAllAudio() {
audioCdStop();
}
+/**
+ * Handles the sciAudio calls in fanmade games.
+ * sciAudio is an external .NET library for playing MP3 files in fanmade games.
+ * It runs in the background, and obtains sound commands from the
+ * currently running game via text files (called "conductor files").
+ * For further info, check: http://sciprogramming.com/community/index.php?topic=634.0
+ */
+void AudioPlayer::handleFanmadeSciAudio(reg_t sciAudioObject, SegManager *segMan) {
+ // TODO: This is a bare bones implementation. Only the play/playx and stop commands
+ // are handled for now - the other commands haven't been observed in any fanmade game
+ // yet. All the volume related and fading functionality is currently missing.
+
+ Kernel *kernel = g_sci->getKernel();
+
+ reg_t commandReg = readSelector(segMan, sciAudioObject, kernel->findSelector("command"));
+ Common::String command = segMan->getString(commandReg);
+
+ if (command == "play" || command == "playx") {
+#ifdef USE_MAD
+ reg_t fileNameReg = readSelector(segMan, sciAudioObject, kernel->findSelector("fileName"));
+ Common::String fileName = segMan->getString(fileNameReg);
+
+ int16 loopCount = (int16)readSelectorValue(segMan, sciAudioObject, kernel->findSelector("loopCount"));
+ // When loopCount is -1, we treat it as infinite looping, else no looping is done.
+ // This is observed by game scripts, which can set loopCount to all sorts of random values.
+ // Adjust loopCount for ScummVM's LoopingAudioStream semantics
+ loopCount = (loopCount == -1) ? 0 : 1;
+
+ // Determine sound type
+ Audio::Mixer::SoundType soundType = Audio::Mixer::kSFXSoundType;
+ if (fileName.hasPrefix("music"))
+ soundType = Audio::Mixer::kMusicSoundType;
+ else if (fileName.hasPrefix("speech"))
+ soundType = Audio::Mixer::kSpeechSoundType;
+
+ Common::File *sciAudio = new Common::File();
+ // Replace backwards slashes
+ for (uint i = 0; i < fileName.size(); i++) {
+ if (fileName[i] == '\\')
+ fileName.setChar('/', i);
+ }
+ sciAudio->open("sciAudio/" + fileName);
+
+ Audio::SeekableAudioStream *audioStream = Audio::makeMP3Stream(sciAudio, DisposeAfterUse::YES);
+
+ // We only support one audio handle
+ _mixer->playStream(soundType, &_audioHandle,
+ Audio::makeLoopingAudioStream((Audio::RewindableAudioStream *)audioStream, loopCount));
+#endif
+ } else if (command == "stop") {
+ _mixer->stopHandle(_audioHandle);
+ } else {
+ warning("Unhandled sciAudio command: %s", command.c_str());
+ }
+}
+
int AudioPlayer::startAudio(uint16 module, uint32 number) {
int sampleLen;
Audio::AudioStream *audioStream = getAudioStream(number, module, &sampleLen);
diff --git a/engines/sci/sound/audio.h b/engines/sci/sound/audio.h
index e0ba234b12..9e65d6e0c8 100644
--- a/engines/sci/sound/audio.h
+++ b/engines/sci/sound/audio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -75,6 +75,8 @@ public:
void pauseAudio();
void resumeAudio();
+ void handleFanmadeSciAudio(reg_t sciAudioObject, SegManager *segMan);
+
void setSoundSync(ResourceId id, reg_t syncObjAddr, SegManager *segMan);
void doSoundSync(reg_t syncObjAddr, SegManager *segMan);
void stopSoundSync();
diff --git a/engines/sci/sound/drivers/adlib.cpp b/engines/sci/sound/drivers/adlib.cpp
index 3229fd7071..fcfda2f532 100644
--- a/engines/sci/sound/drivers/adlib.cpp
+++ b/engines/sci/sound/drivers/adlib.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/amigamac.cpp b/engines/sci/sound/drivers/amigamac.cpp
index 131a85f371..5ce49086ca 100644
--- a/engines/sci/sound/drivers/amigamac.cpp
+++ b/engines/sci/sound/drivers/amigamac.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/cms.cpp b/engines/sci/sound/drivers/cms.cpp
index fd60863177..a222090fc8 100644
--- a/engines/sci/sound/drivers/cms.cpp
+++ b/engines/sci/sound/drivers/cms.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/fb01.cpp b/engines/sci/sound/drivers/fb01.cpp
index b16473e62e..db9f7558e2 100644
--- a/engines/sci/sound/drivers/fb01.cpp
+++ b/engines/sci/sound/drivers/fb01.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/fmtowns.cpp b/engines/sci/sound/drivers/fmtowns.cpp
index 21cb2f1e43..f6dbac2a67 100644
--- a/engines/sci/sound/drivers/fmtowns.cpp
+++ b/engines/sci/sound/drivers/fmtowns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/gm_names.h b/engines/sci/sound/drivers/gm_names.h
index fbfa413a4a..791f79777c 100644
--- a/engines/sci/sound/drivers/gm_names.h
+++ b/engines/sci/sound/drivers/gm_names.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/map-mt32-to-gm.h b/engines/sci/sound/drivers/map-mt32-to-gm.h
index 12a36aa51c..5c90c47777 100644
--- a/engines/sci/sound/drivers/map-mt32-to-gm.h
+++ b/engines/sci/sound/drivers/map-mt32-to-gm.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/midi.cpp b/engines/sci/sound/drivers/midi.cpp
index a31d5f9a81..31c9d90de8 100644
--- a/engines/sci/sound/drivers/midi.cpp
+++ b/engines/sci/sound/drivers/midi.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/mididriver.h b/engines/sci/sound/drivers/mididriver.h
index 8938eef62f..fee0154096 100644
--- a/engines/sci/sound/drivers/mididriver.h
+++ b/engines/sci/sound/drivers/mididriver.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/drivers/pcjr.cpp b/engines/sci/sound/drivers/pcjr.cpp
index 1d823b643d..2399c506d4 100644
--- a/engines/sci/sound/drivers/pcjr.cpp
+++ b/engines/sci/sound/drivers/pcjr.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/midiparser_sci.cpp b/engines/sci/sound/midiparser_sci.cpp
index 6f250e0a3a..c0b4f3122e 100644
--- a/engines/sci/sound/midiparser_sci.cpp
+++ b/engines/sci/sound/midiparser_sci.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -601,11 +601,10 @@ void MidiParser_SCI::parseNextEvent(EventInfo &info) {
}// switch (info.command())
}
-void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
+bool MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
if (!fireEvents) {
// We don't do any processing that should be done while skipping events
- MidiParser::processEvent(info, fireEvents);
- return;
+ return MidiParser::processEvent(info, fireEvents);
}
switch (info.command()) {
@@ -657,7 +656,7 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
}
// Done with this event.
- return;
+ return true;
}
// Break to let parent handle the rest.
@@ -684,7 +683,7 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
switch (info.basic.param1) {
case kSetReverb:
// Already handled above
- return;
+ return true;
case kMidiHold:
// Check if the hold ID marker is the same as the hold ID
// marker set for that song by cmdSetSoundHold.
@@ -692,9 +691,9 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
if (info.basic.param2 == _pSnd->hold) {
jumpToTick(_loopTick, false, false);
// Done with this event.
- return;
+ return true;
}
- return;
+ return true;
case kUpdateCue:
if (!_jumpingToTick) {
int inc;
@@ -715,17 +714,17 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
debugC(4, kDebugLevelSound, "datainc %04x", inc);
}
- return;
+ return true;
case kResetOnPause:
_resetOnPause = info.basic.param2;
- return;
+ return true;
// Unhandled SCI commands
case 0x46: // LSL3 - binoculars
case 0x61: // Iceman (AdLib?)
case 0x73: // Hoyle
case 0xD1: // KQ4, when riding the unicorn
// Obscure SCI commands - ignored
- return;
+ return true;
// Standard MIDI commands
case 0x01: // mod wheel
case 0x04: // foot controller
@@ -740,10 +739,10 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
case 0x4B: // voice mapping
// TODO: is any support for this needed at the MIDI parser level?
warning("Unhanded SCI MIDI command 0x%x - voice mapping (parameter %d)", info.basic.param1, info.basic.param2);
- return;
+ return true;
default:
warning("Unhandled SCI MIDI command 0x%x (parameter %d)", info.basic.param1, info.basic.param2);
- return;
+ return true;
}
}
@@ -762,7 +761,7 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
jumpToTick(_loopTick);
// Done with this event.
- return;
+ return true;
} else {
_pSnd->status = kSoundStopped;
@@ -782,7 +781,7 @@ void MidiParser_SCI::processEvent(const EventInfo &info, bool fireEvents) {
// Let parent handle the rest
- MidiParser::processEvent(info, fireEvents);
+ return MidiParser::processEvent(info, fireEvents);
}
byte MidiParser_SCI::getSongReverb() {
diff --git a/engines/sci/sound/midiparser_sci.h b/engines/sci/sound/midiparser_sci.h
index 7e24c34144..15c01977bd 100644
--- a/engines/sci/sound/midiparser_sci.h
+++ b/engines/sci/sound/midiparser_sci.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -89,7 +89,7 @@ public:
protected:
void parseNextEvent(EventInfo &info);
- void processEvent(const EventInfo &info, bool fireEvents = true);
+ bool processEvent(const EventInfo &info, bool fireEvents = true);
byte *midiMixChannels();
byte *midiFilterChannels(int channelMask);
byte midiGetNextChannel(long ticker);
diff --git a/engines/sci/sound/music.cpp b/engines/sci/sound/music.cpp
index f46c1dfbb0..97675a140e 100644
--- a/engines/sci/sound/music.cpp
+++ b/engines/sci/sound/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/music.h b/engines/sci/sound/music.h
index 23a072cb26..bfc542d2a5 100644
--- a/engines/sci/sound/music.h
+++ b/engines/sci/sound/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/soundcmd.cpp b/engines/sci/sound/soundcmd.cpp
index aa2a309f4d..2bd7f50de5 100644
--- a/engines/sci/sound/soundcmd.cpp
+++ b/engines/sci/sound/soundcmd.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/sound/soundcmd.h b/engines/sci/sound/soundcmd.h
index d76f969c7d..4effda68e4 100644
--- a/engines/sci/sound/soundcmd.h
+++ b/engines/sci/sound/soundcmd.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/util.cpp b/engines/sci/util.cpp
index 4f09bb7a55..3a9ed9ca69 100644
--- a/engines/sci/util.cpp
+++ b/engines/sci/util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/util.h b/engines/sci/util.h
index 0da5063a69..378030939c 100644
--- a/engines/sci/util.h
+++ b/engines/sci/util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/video/robot_decoder.cpp b/engines/sci/video/robot_decoder.cpp
index a567ece2ea..a2795d21f9 100644
--- a/engines/sci/video/robot_decoder.cpp
+++ b/engines/sci/video/robot_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -116,6 +116,10 @@ bool RobotDecoder::load(GuiResourceId id) {
if (g_sci->getGameId() == GID_RAMA && id == 1003)
return false;
+ // Robots for the options in the RAMA menu
+ if (g_sci->getGameId() == GID_RAMA && (id >= 1004 && id <= 1009))
+ return false;
+
// TODO: The robot video in the Lighthouse demo gets stuck
if (g_sci->getGameId() == GID_LIGHTHOUSE && id == 16)
return false;
diff --git a/engines/sci/video/robot_decoder.h b/engines/sci/video/robot_decoder.h
index 437954f7fb..4faea5008a 100644
--- a/engines/sci/video/robot_decoder.h
+++ b/engines/sci/video/robot_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/video/seq_decoder.cpp b/engines/sci/video/seq_decoder.cpp
index 54603ec1f1..f523a42ca5 100644
--- a/engines/sci/video/seq_decoder.cpp
+++ b/engines/sci/video/seq_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sci/video/seq_decoder.h b/engines/sci/video/seq_decoder.h
index 890f349feb..e141f8dee0 100644
--- a/engines/sci/video/seq_decoder.h
+++ b/engines/sci/video/seq_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/actor.cpp b/engines/scumm/actor.cpp
index 4e14473921..116a953b0b 100644
--- a/engines/scumm/actor.cpp
+++ b/engines/scumm/actor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/actor.h b/engines/scumm/actor.h
index a733fdb4ed..46dc7d0295 100644
--- a/engines/scumm/actor.h
+++ b/engines/scumm/actor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/actor_he.h b/engines/scumm/actor_he.h
index 24b632d00e..9bc244945c 100644
--- a/engines/scumm/actor_he.h
+++ b/engines/scumm/actor_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/akos.cpp b/engines/scumm/akos.cpp
index 481c4af432..6d80315ccb 100644
--- a/engines/scumm/akos.cpp
+++ b/engines/scumm/akos.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/akos.h b/engines/scumm/akos.h
index bd42aedcbd..017989424b 100644
--- a/engines/scumm/akos.h
+++ b/engines/scumm/akos.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/base-costume.cpp b/engines/scumm/base-costume.cpp
index e1a8688bb9..024520f14b 100644
--- a/engines/scumm/base-costume.cpp
+++ b/engines/scumm/base-costume.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/base-costume.h b/engines/scumm/base-costume.h
index 652655c24e..1e633bdec6 100644
--- a/engines/scumm/base-costume.h
+++ b/engines/scumm/base-costume.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/bomp.cpp b/engines/scumm/bomp.cpp
index 5b87f3042c..a0c4e67e4b 100644
--- a/engines/scumm/bomp.cpp
+++ b/engines/scumm/bomp.cpp
@@ -8,11 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/bomp.h b/engines/scumm/bomp.h
index b2d042daae..eb19cdf1d0 100644
--- a/engines/scumm/bomp.h
+++ b/engines/scumm/bomp.h
@@ -8,11 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/boxes.cpp b/engines/scumm/boxes.cpp
index f6d2a18f38..70c8f2e032 100644
--- a/engines/scumm/boxes.cpp
+++ b/engines/scumm/boxes.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/boxes.h b/engines/scumm/boxes.h
index 345d6a9d36..4fd1947848 100644
--- a/engines/scumm/boxes.h
+++ b/engines/scumm/boxes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/camera.cpp b/engines/scumm/camera.cpp
index 4b48acfbdb..799fdd7547 100644
--- a/engines/scumm/camera.cpp
+++ b/engines/scumm/camera.cpp
@@ -8,11 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/charset-fontdata.cpp b/engines/scumm/charset-fontdata.cpp
index 16193f5503..3a0cd15637 100644
--- a/engines/scumm/charset-fontdata.cpp
+++ b/engines/scumm/charset-fontdata.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/charset.cpp b/engines/scumm/charset.cpp
index dd79aff2da..185ebbce6e 100644
--- a/engines/scumm/charset.cpp
+++ b/engines/scumm/charset.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/charset.h b/engines/scumm/charset.h
index 1c1df51921..5a9977b7d6 100644
--- a/engines/scumm/charset.h
+++ b/engines/scumm/charset.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_CHARSET_H
diff --git a/engines/scumm/costume.cpp b/engines/scumm/costume.cpp
index 85c60f9a40..7470f13fa2 100644
--- a/engines/scumm/costume.cpp
+++ b/engines/scumm/costume.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/costume.h b/engines/scumm/costume.h
index 4a21692ddb..8e4fd41740 100644
--- a/engines/scumm/costume.h
+++ b/engines/scumm/costume.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_COSTUME_H
diff --git a/engines/scumm/cursor.cpp b/engines/scumm/cursor.cpp
index 721644b554..6445d257f6 100644
--- a/engines/scumm/cursor.cpp
+++ b/engines/scumm/cursor.cpp
@@ -8,11 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/debugger.cpp b/engines/scumm/debugger.cpp
index 872293f821..a792d63149 100644
--- a/engines/scumm/debugger.cpp
+++ b/engines/scumm/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/debugger.h b/engines/scumm/debugger.h
index b60a1a2f03..43bf9d6fd4 100644
--- a/engines/scumm/debugger.h
+++ b/engines/scumm/debugger.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_DEBUGGER_H
diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp
index aa7e60930a..b7a25808a5 100644
--- a/engines/scumm/detection.cpp
+++ b/engines/scumm/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/detection.h b/engines/scumm/detection.h
index 5ed6b5aab0..f714812a9c 100644
--- a/engines/scumm/detection.h
+++ b/engines/scumm/detection.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/detection_tables.h b/engines/scumm/detection_tables.h
index 6717ea9b06..c876af1256 100644
--- a/engines/scumm/detection_tables.h
+++ b/engines/scumm/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/dialogs.cpp b/engines/scumm/dialogs.cpp
index 945c5b6611..8321daa583 100644
--- a/engines/scumm/dialogs.cpp
+++ b/engines/scumm/dialogs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/config-manager.h"
diff --git a/engines/scumm/dialogs.h b/engines/scumm/dialogs.h
index 7977f123ed..08222dd8cd 100644
--- a/engines/scumm/dialogs.h
+++ b/engines/scumm/dialogs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_DIALOGS_H
diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp
index 1bb4a28f65..1d1b6b4f13 100644
--- a/engines/scumm/gfx.cpp
+++ b/engines/scumm/gfx.cpp
@@ -8,11 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -379,7 +380,7 @@ void ScummEngine::initVirtScreen(VirtScreenNumber slot, int top, int width, int
int size;
assert(height >= 0);
- assert(slot >= 0 && slot < 4);
+ assert((int)slot >= 0 && (int)slot < 4);
if (_game.version >= 7) {
if (slot == kMainVirtScreen && (_roomHeight != 0))
diff --git a/engines/scumm/gfx.h b/engines/scumm/gfx.h
index 0d81698c50..42844daf30 100644
--- a/engines/scumm/gfx.h
+++ b/engines/scumm/gfx.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/gfxARM.s b/engines/scumm/gfxARM.s
index 9238888831..5cfe8ba0a4 100644
--- a/engines/scumm/gfxARM.s
+++ b/engines/scumm/gfxARM.s
@@ -41,6 +41,7 @@
@ In addition, we assume that text, src and dst are all word (4 byte)
@ aligned. This is the same assumption that the old 'inline' version
@ made.
+ .align 2
_asmDrawStripToScreen:
@ r0 = height
@ r1 = width
@@ -118,6 +119,7 @@ end:
@ In addition, we assume that src and dst are both word (4 byte)
@ aligned. This is the same assumption that the old 'inline' version
@ made.
+ .align 2
_asmCopy8Col:
@ r0 = dst
@ r1 = dstPitch
diff --git a/engines/scumm/gfx_towns.cpp b/engines/scumm/gfx_towns.cpp
index 0aed181afd..6a558c97b4 100644
--- a/engines/scumm/gfx_towns.cpp
+++ b/engines/scumm/gfx_towns.cpp
@@ -8,11 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/animation_he.cpp b/engines/scumm/he/animation_he.cpp
index c736c6a04c..8483a8a402 100644
--- a/engines/scumm/he/animation_he.cpp
+++ b/engines/scumm/he/animation_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/animation_he.h b/engines/scumm/he/animation_he.h
index 48234b8072..677a4b4247 100644
--- a/engines/scumm/he/animation_he.h
+++ b/engines/scumm/he/animation_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/cup_player_he.cpp b/engines/scumm/he/cup_player_he.cpp
index 84562c12d5..c409863804 100644
--- a/engines/scumm/he/cup_player_he.cpp
+++ b/engines/scumm/he/cup_player_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/cup_player_he.h b/engines/scumm/he/cup_player_he.h
index 15bc6b46ba..16c8a37f2f 100644
--- a/engines/scumm/he/cup_player_he.h
+++ b/engines/scumm/he/cup_player_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/floodfill_he.cpp b/engines/scumm/he/floodfill_he.cpp
index f9d53c6b12..279a8c63c4 100644
--- a/engines/scumm/he/floodfill_he.cpp
+++ b/engines/scumm/he/floodfill_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/floodfill_he.h b/engines/scumm/he/floodfill_he.h
index 3f62cc9b81..286bcce4f5 100644
--- a/engines/scumm/he/floodfill_he.h
+++ b/engines/scumm/he/floodfill_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/intern_he.h b/engines/scumm/he/intern_he.h
index 067f508d2c..370f54c1d8 100644
--- a/engines/scumm/he/intern_he.h
+++ b/engines/scumm/he/intern_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/logic/baseball2001.cpp b/engines/scumm/he/logic/baseball2001.cpp
index 342423fd79..5cbc96a21d 100644
--- a/engines/scumm/he/logic/baseball2001.cpp
+++ b/engines/scumm/he/logic/baseball2001.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/logic/basketball.cpp b/engines/scumm/he/logic/basketball.cpp
index a4da8e05dc..bac15ea24a 100644
--- a/engines/scumm/he/logic/basketball.cpp
+++ b/engines/scumm/he/logic/basketball.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/logic/football.cpp b/engines/scumm/he/logic/football.cpp
index 215fdf0179..bde0c38484 100644
--- a/engines/scumm/he/logic/football.cpp
+++ b/engines/scumm/he/logic/football.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/logic/funshop.cpp b/engines/scumm/he/logic/funshop.cpp
index 8993fedad2..50759cf89e 100644
--- a/engines/scumm/he/logic/funshop.cpp
+++ b/engines/scumm/he/logic/funshop.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/logic/moonbase.cpp b/engines/scumm/he/logic/moonbase.cpp
index 5b4618a4ad..29a0dde7a2 100644
--- a/engines/scumm/he/logic/moonbase.cpp
+++ b/engines/scumm/he/logic/moonbase.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/logic/puttrace.cpp b/engines/scumm/he/logic/puttrace.cpp
index ea4397cd97..1c3317b131 100644
--- a/engines/scumm/he/logic/puttrace.cpp
+++ b/engines/scumm/he/logic/puttrace.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/logic/soccer.cpp b/engines/scumm/he/logic/soccer.cpp
index 2b29f93173..0efe482b5a 100644
--- a/engines/scumm/he/logic/soccer.cpp
+++ b/engines/scumm/he/logic/soccer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -566,7 +566,7 @@ int LogicHEsoccer::addCollisionTreeChild(int depth, int index, int parent) {
}
int LogicHEsoccer::op_1013(int32 a1, int32 a2, int32 a3) {
- // Initialises _collisionTree, a tree used for collision detection.
+ // Initializes _collisionTree, a tree used for collision detection.
// It is used by op_1014 to work out which objects to check.
_collisionTree = new uint32[585 * 11];
diff --git a/engines/scumm/he/logic_he.cpp b/engines/scumm/he/logic_he.cpp
index 0f9454ba28..366cd3be26 100644
--- a/engines/scumm/he/logic_he.cpp
+++ b/engines/scumm/he/logic_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/logic_he.h b/engines/scumm/he/logic_he.h
index 93c0569a4f..cd547f1616 100644
--- a/engines/scumm/he/logic_he.h
+++ b/engines/scumm/he/logic_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/palette_he.cpp b/engines/scumm/he/palette_he.cpp
index 44ba841644..89b9b9bca4 100644
--- a/engines/scumm/he/palette_he.cpp
+++ b/engines/scumm/he/palette_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/resource_he.cpp b/engines/scumm/he/resource_he.cpp
index ce4b2239d2..ddde352686 100644
--- a/engines/scumm/he/resource_he.cpp
+++ b/engines/scumm/he/resource_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/resource_he.h b/engines/scumm/he/resource_he.h
index 6996ce81eb..49175db8d4 100644
--- a/engines/scumm/he/resource_he.h
+++ b/engines/scumm/he/resource_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/script_v100he.cpp b/engines/scumm/he/script_v100he.cpp
index c26e3f57ea..afc6633ef6 100644
--- a/engines/scumm/he/script_v100he.cpp
+++ b/engines/scumm/he/script_v100he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/script_v60he.cpp b/engines/scumm/he/script_v60he.cpp
index 409fb7edf7..0c92fbcac3 100644
--- a/engines/scumm/he/script_v60he.cpp
+++ b/engines/scumm/he/script_v60he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/script_v70he.cpp b/engines/scumm/he/script_v70he.cpp
index 9259e0db2f..a911487738 100644
--- a/engines/scumm/he/script_v70he.cpp
+++ b/engines/scumm/he/script_v70he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/script_v71he.cpp b/engines/scumm/he/script_v71he.cpp
index 3ad9220ac5..1ef21f1e6e 100644
--- a/engines/scumm/he/script_v71he.cpp
+++ b/engines/scumm/he/script_v71he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/script_v72he.cpp b/engines/scumm/he/script_v72he.cpp
index cfa2be7275..31b4887d10 100644
--- a/engines/scumm/he/script_v72he.cpp
+++ b/engines/scumm/he/script_v72he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/script_v80he.cpp b/engines/scumm/he/script_v80he.cpp
index 7a8f230fc0..f5a193afcc 100644
--- a/engines/scumm/he/script_v80he.cpp
+++ b/engines/scumm/he/script_v80he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/script_v90he.cpp b/engines/scumm/he/script_v90he.cpp
index f844c51cc6..f65d2f6077 100644
--- a/engines/scumm/he/script_v90he.cpp
+++ b/engines/scumm/he/script_v90he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/sound_he.cpp b/engines/scumm/he/sound_he.cpp
index 1afb1b4074..a78aff96f8 100644
--- a/engines/scumm/he/sound_he.cpp
+++ b/engines/scumm/he/sound_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/sound_he.h b/engines/scumm/he/sound_he.h
index f487acc7da..323858a7c9 100644
--- a/engines/scumm/he/sound_he.h
+++ b/engines/scumm/he/sound_he.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_HE_SOUND_HE_H
diff --git a/engines/scumm/he/sprite_he.cpp b/engines/scumm/he/sprite_he.cpp
index ec69ae11b4..218f2ec59c 100644
--- a/engines/scumm/he/sprite_he.cpp
+++ b/engines/scumm/he/sprite_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/sprite_he.h b/engines/scumm/he/sprite_he.h
index be6717faa5..e31ccbf790 100644
--- a/engines/scumm/he/sprite_he.h
+++ b/engines/scumm/he/sprite_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/wiz_he.cpp b/engines/scumm/he/wiz_he.cpp
index b3511648bd..9a59609651 100644
--- a/engines/scumm/he/wiz_he.cpp
+++ b/engines/scumm/he/wiz_he.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/he/wiz_he.h b/engines/scumm/he/wiz_he.h
index ce3fbc27c6..8db438a074 100644
--- a/engines/scumm/he/wiz_he.h
+++ b/engines/scumm/he/wiz_he.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/imuse/imuse.cpp b/engines/scumm/imuse/imuse.cpp
index 0e96952a48..8b892f5fda 100644
--- a/engines/scumm/imuse/imuse.cpp
+++ b/engines/scumm/imuse/imuse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/imuse/imuse.h b/engines/scumm/imuse/imuse.h
index cce5309229..35ccc931b5 100644
--- a/engines/scumm/imuse/imuse.h
+++ b/engines/scumm/imuse/imuse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/imuse/imuse_internal.h b/engines/scumm/imuse/imuse_internal.h
index d17d4ed28b..fed716e300 100644
--- a/engines/scumm/imuse/imuse_internal.h
+++ b/engines/scumm/imuse/imuse_internal.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_IMUSE_INTERNAL
diff --git a/engines/scumm/imuse/imuse_part.cpp b/engines/scumm/imuse/imuse_part.cpp
index 5e928f3d44..937523d275 100644
--- a/engines/scumm/imuse/imuse_part.cpp
+++ b/engines/scumm/imuse/imuse_part.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/imuse/imuse_player.cpp b/engines/scumm/imuse/imuse_player.cpp
index 3a9c42a920..6714cc00a0 100644
--- a/engines/scumm/imuse/imuse_player.cpp
+++ b/engines/scumm/imuse/imuse_player.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse/instrument.cpp b/engines/scumm/imuse/instrument.cpp
index 61c73b1e2d..6cbe1a5a15 100644
--- a/engines/scumm/imuse/instrument.cpp
+++ b/engines/scumm/imuse/instrument.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse/instrument.h b/engines/scumm/imuse/instrument.h
index 7e09e86fa5..47f556b40b 100644
--- a/engines/scumm/imuse/instrument.h
+++ b/engines/scumm/imuse/instrument.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_IMUSE_INSTRUMENT_H
diff --git a/engines/scumm/imuse/mac_m68k.cpp b/engines/scumm/imuse/mac_m68k.cpp
index 0980ef1fd2..8ebd8e4cca 100644
--- a/engines/scumm/imuse/mac_m68k.cpp
+++ b/engines/scumm/imuse/mac_m68k.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "scumm/imuse/mac_m68k.h"
diff --git a/engines/scumm/imuse/mac_m68k.h b/engines/scumm/imuse/mac_m68k.h
index 59e2f68b9b..31beaf4e66 100644
--- a/engines/scumm/imuse/mac_m68k.h
+++ b/engines/scumm/imuse/mac_m68k.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_IMUSE_MAC_M68K_H
diff --git a/engines/scumm/imuse/pcspk.cpp b/engines/scumm/imuse/pcspk.cpp
index cbf3446f10..856b771990 100644
--- a/engines/scumm/imuse/pcspk.cpp
+++ b/engines/scumm/imuse/pcspk.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "scumm/imuse/pcspk.h"
diff --git a/engines/scumm/imuse/pcspk.h b/engines/scumm/imuse/pcspk.h
index 195bd34b07..6a107e169a 100644
--- a/engines/scumm/imuse/pcspk.h
+++ b/engines/scumm/imuse/pcspk.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_IMUSE_PCSPK_H
diff --git a/engines/scumm/imuse/sysex.h b/engines/scumm/imuse/sysex.h
index 06ac483afd..f9a1d717d2 100644
--- a/engines/scumm/imuse/sysex.h
+++ b/engines/scumm/imuse/sysex.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_IMUSE_SYSEX_H
diff --git a/engines/scumm/imuse/sysex_samnmax.cpp b/engines/scumm/imuse/sysex_samnmax.cpp
index a4f525da56..7a412414fe 100644
--- a/engines/scumm/imuse/sysex_samnmax.cpp
+++ b/engines/scumm/imuse/sysex_samnmax.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse/sysex_scumm.cpp b/engines/scumm/imuse/sysex_scumm.cpp
index 8f230ebac3..d2bf857b7a 100644
--- a/engines/scumm/imuse/sysex_scumm.cpp
+++ b/engines/scumm/imuse/sysex_scumm.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse_digi/dimuse.cpp b/engines/scumm/imuse_digi/dimuse.cpp
index a737539c44..db260dce42 100644
--- a/engines/scumm/imuse_digi/dimuse.cpp
+++ b/engines/scumm/imuse_digi/dimuse.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/system.h"
diff --git a/engines/scumm/imuse_digi/dimuse.h b/engines/scumm/imuse_digi/dimuse.h
index d940b6897f..f04c2f7826 100644
--- a/engines/scumm/imuse_digi/dimuse.h
+++ b/engines/scumm/imuse_digi/dimuse.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if !defined(SCUMM_IMUSE_DIGI_H) && defined(ENABLE_SCUMM_7_8)
diff --git a/engines/scumm/imuse_digi/dimuse_bndmgr.cpp b/engines/scumm/imuse_digi/dimuse_bndmgr.cpp
index d6e07bd0ec..bf024aa098 100644
--- a/engines/scumm/imuse_digi/dimuse_bndmgr.cpp
+++ b/engines/scumm/imuse_digi/dimuse_bndmgr.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse_digi/dimuse_bndmgr.h b/engines/scumm/imuse_digi/dimuse_bndmgr.h
index 21d3110f8b..2d04e88246 100644
--- a/engines/scumm/imuse_digi/dimuse_bndmgr.h
+++ b/engines/scumm/imuse_digi/dimuse_bndmgr.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_IMUSE_DIGI_BUNDLE_MGR_H
diff --git a/engines/scumm/imuse_digi/dimuse_codecs.cpp b/engines/scumm/imuse_digi/dimuse_codecs.cpp
index 6edfe0bd33..b7468802d5 100644
--- a/engines/scumm/imuse_digi/dimuse_codecs.cpp
+++ b/engines/scumm/imuse_digi/dimuse_codecs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/scummsys.h"
diff --git a/engines/scumm/imuse_digi/dimuse_codecs.h b/engines/scumm/imuse_digi/dimuse_codecs.h
index a38f7234dd..163d0250fa 100644
--- a/engines/scumm/imuse_digi/dimuse_codecs.h
+++ b/engines/scumm/imuse_digi/dimuse_codecs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_IMUSE_DIGI_CODECS_H
diff --git a/engines/scumm/imuse_digi/dimuse_music.cpp b/engines/scumm/imuse_digi/dimuse_music.cpp
index adf2560142..46c457c864 100644
--- a/engines/scumm/imuse_digi/dimuse_music.cpp
+++ b/engines/scumm/imuse_digi/dimuse_music.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse_digi/dimuse_script.cpp b/engines/scumm/imuse_digi/dimuse_script.cpp
index bc030cc242..f181e5b6db 100644
--- a/engines/scumm/imuse_digi/dimuse_script.cpp
+++ b/engines/scumm/imuse_digi/dimuse_script.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse_digi/dimuse_sndmgr.cpp b/engines/scumm/imuse_digi/dimuse_sndmgr.cpp
index 26e248fbca..78d05c2051 100644
--- a/engines/scumm/imuse_digi/dimuse_sndmgr.cpp
+++ b/engines/scumm/imuse_digi/dimuse_sndmgr.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse_digi/dimuse_sndmgr.h b/engines/scumm/imuse_digi/dimuse_sndmgr.h
index ff6281d5e3..aebf4d7f11 100644
--- a/engines/scumm/imuse_digi/dimuse_sndmgr.h
+++ b/engines/scumm/imuse_digi/dimuse_sndmgr.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_IMUSE_DIGI_SNDMGR_H
diff --git a/engines/scumm/imuse_digi/dimuse_tables.cpp b/engines/scumm/imuse_digi/dimuse_tables.cpp
index c27138b765..bae081b308 100644
--- a/engines/scumm/imuse_digi/dimuse_tables.cpp
+++ b/engines/scumm/imuse_digi/dimuse_tables.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/imuse_digi/dimuse_tables.h b/engines/scumm/imuse_digi/dimuse_tables.h
index a74941dfea..cb8393d4d7 100644
--- a/engines/scumm/imuse_digi/dimuse_tables.h
+++ b/engines/scumm/imuse_digi/dimuse_tables.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if !defined(SCUMM_IMUSE_DIGI_TABLES_H) && defined(ENABLE_SCUMM_7_8)
diff --git a/engines/scumm/imuse_digi/dimuse_track.cpp b/engines/scumm/imuse_digi/dimuse_track.cpp
index 0896f9af7d..34926fa34e 100644
--- a/engines/scumm/imuse_digi/dimuse_track.cpp
+++ b/engines/scumm/imuse_digi/dimuse_track.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/config-manager.h"
diff --git a/engines/scumm/imuse_digi/dimuse_track.h b/engines/scumm/imuse_digi/dimuse_track.h
index 420db4bb06..7e360268e5 100644
--- a/engines/scumm/imuse_digi/dimuse_track.h
+++ b/engines/scumm/imuse_digi/dimuse_track.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if !defined(SCUMM_IMUSE_DIGI_TRACK_H) && defined(ENABLE_SCUMM_7_8)
diff --git a/engines/scumm/input.cpp b/engines/scumm/input.cpp
index d1786dfb60..5e2566dc32 100644
--- a/engines/scumm/input.cpp
+++ b/engines/scumm/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/insane/insane.cpp b/engines/scumm/insane/insane.cpp
index 44528e5bac..b3e9a0e699 100644
--- a/engines/scumm/insane/insane.cpp
+++ b/engines/scumm/insane/insane.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/insane/insane.h b/engines/scumm/insane/insane.h
index 12d44c57f4..8c5862d20c 100644
--- a/engines/scumm/insane/insane.h
+++ b/engines/scumm/insane/insane.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/insane/insane_ben.cpp b/engines/scumm/insane/insane_ben.cpp
index a7fa72c417..de904610ee 100644
--- a/engines/scumm/insane/insane_ben.cpp
+++ b/engines/scumm/insane/insane_ben.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/insane/insane_enemy.cpp b/engines/scumm/insane/insane_enemy.cpp
index d711b63342..40dd453722 100644
--- a/engines/scumm/insane/insane_enemy.cpp
+++ b/engines/scumm/insane/insane_enemy.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/insane/insane_iact.cpp b/engines/scumm/insane/insane_iact.cpp
index 9c395beea6..e2ed30733b 100644
--- a/engines/scumm/insane/insane_iact.cpp
+++ b/engines/scumm/insane/insane_iact.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/insane/insane_scenes.cpp b/engines/scumm/insane/insane_scenes.cpp
index 06d5d7ac68..51b4bb33f5 100644
--- a/engines/scumm/insane/insane_scenes.cpp
+++ b/engines/scumm/insane/insane_scenes.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/midiparser_ro.cpp b/engines/scumm/midiparser_ro.cpp
index 8549a9262d..35eb9f7eb7 100644
--- a/engines/scumm/midiparser_ro.cpp
+++ b/engines/scumm/midiparser_ro.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/music.h b/engines/scumm/music.h
index 9fd14d830e..c5762ed24a 100644
--- a/engines/scumm/music.h
+++ b/engines/scumm/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/nut_renderer.cpp b/engines/scumm/nut_renderer.cpp
index d9f0b412e1..1d5761ef48 100644
--- a/engines/scumm/nut_renderer.cpp
+++ b/engines/scumm/nut_renderer.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/scumm/nut_renderer.h b/engines/scumm/nut_renderer.h
index acccf161fa..47458b9f77 100644
--- a/engines/scumm/nut_renderer.h
+++ b/engines/scumm/nut_renderer.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#if !defined(SCUMM_NUT_RENDERER_H) && defined(ENABLE_SCUMM_7_8)
diff --git a/engines/scumm/object.cpp b/engines/scumm/object.cpp
index d266183f85..7919075d0b 100644
--- a/engines/scumm/object.cpp
+++ b/engines/scumm/object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/object.h b/engines/scumm/object.h
index 8212075e43..ef3a267e6a 100644
--- a/engines/scumm/object.h
+++ b/engines/scumm/object.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_OBJECT_H
diff --git a/engines/scumm/palette.cpp b/engines/scumm/palette.cpp
index bd085dd4d5..5275f1e942 100644
--- a/engines/scumm/palette.cpp
+++ b/engines/scumm/palette.cpp
@@ -8,11 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_ad.cpp b/engines/scumm/players/player_ad.cpp
index 20630e1cb9..7b525116cf 100644
--- a/engines/scumm/players/player_ad.cpp
+++ b/engines/scumm/players/player_ad.cpp
@@ -748,7 +748,7 @@ void Player_AD::parseNote(int channel, int num, const byte *offset) {
const int note = channel * 2 + num;
_notes[note].state = -1;
processNote(note, offset);
- _notes[note].playTime = 0;
+ _notes[note].playTime = 0;
if (*offset & 0x20) {
_notes[note].playTime = (*(offset + 4) >> 4) * 118;
diff --git a/engines/scumm/players/player_apple2.cpp b/engines/scumm/players/player_apple2.cpp
index 87b8100f22..cba32bef2c 100644
--- a/engines/scumm/players/player_apple2.cpp
+++ b/engines/scumm/players/player_apple2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_apple2.h b/engines/scumm/players/player_apple2.h
index 9930a4f95d..8efb951f20 100644
--- a/engines/scumm/players/player_apple2.h
+++ b/engines/scumm/players/player_apple2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_mac.cpp b/engines/scumm/players/player_mac.cpp
index 281eec5336..fe15698494 100644
--- a/engines/scumm/players/player_mac.cpp
+++ b/engines/scumm/players/player_mac.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_mac.h b/engines/scumm/players/player_mac.h
index 7f9f42c34e..d247ce9883 100644
--- a/engines/scumm/players/player_mac.h
+++ b/engines/scumm/players/player_mac.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_mod.cpp b/engines/scumm/players/player_mod.cpp
index abaa8c1fc5..ced30ff193 100644
--- a/engines/scumm/players/player_mod.cpp
+++ b/engines/scumm/players/player_mod.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_mod.h b/engines/scumm/players/player_mod.h
index d4a5b16fca..bb0c422090 100644
--- a/engines/scumm/players/player_mod.h
+++ b/engines/scumm/players/player_mod.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_nes.cpp b/engines/scumm/players/player_nes.cpp
index f55f1f9edd..3b5adc4550 100644
--- a/engines/scumm/players/player_nes.cpp
+++ b/engines/scumm/players/player_nes.cpp
@@ -8,14 +8,14 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
- * aint32 with this program; if not, write to the Free Software
+ * along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
diff --git a/engines/scumm/players/player_nes.h b/engines/scumm/players/player_nes.h
index f0b3e79aad..6c5efe9d38 100644
--- a/engines/scumm/players/player_nes.h
+++ b/engines/scumm/players/player_nes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_pce.cpp b/engines/scumm/players/player_pce.cpp
index 6d6e2fcde5..89a3b07798 100644
--- a/engines/scumm/players/player_pce.cpp
+++ b/engines/scumm/players/player_pce.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_pce.h b/engines/scumm/players/player_pce.h
index ca2eddf58c..5c9a2d201c 100644
--- a/engines/scumm/players/player_pce.h
+++ b/engines/scumm/players/player_pce.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_sid.cpp b/engines/scumm/players/player_sid.cpp
index 1b97ad16d4..c7be112449 100644
--- a/engines/scumm/players/player_sid.cpp
+++ b/engines/scumm/players/player_sid.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_sid.h b/engines/scumm/players/player_sid.h
index a48ec793cd..aa7e6be8c1 100644
--- a/engines/scumm/players/player_sid.h
+++ b/engines/scumm/players/player_sid.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_towns.cpp b/engines/scumm/players/player_towns.cpp
index acbdbc7fb6..5b8ca04021 100644
--- a/engines/scumm/players/player_towns.cpp
+++ b/engines/scumm/players/player_towns.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_towns.h b/engines/scumm/players/player_towns.h
index 2369b7da5f..3736524ee2 100644
--- a/engines/scumm/players/player_towns.h
+++ b/engines/scumm/players/player_towns.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v1.cpp b/engines/scumm/players/player_v1.cpp
index 0fa1ee9361..041f556120 100644
--- a/engines/scumm/players/player_v1.cpp
+++ b/engines/scumm/players/player_v1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v1.h b/engines/scumm/players/player_v1.h
index ccd24c39df..3854922847 100644
--- a/engines/scumm/players/player_v1.h
+++ b/engines/scumm/players/player_v1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v2.cpp b/engines/scumm/players/player_v2.cpp
index 2429af2d8c..f0aaa4a3be 100644
--- a/engines/scumm/players/player_v2.cpp
+++ b/engines/scumm/players/player_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v2.h b/engines/scumm/players/player_v2.h
index 33878ff08b..b7a602d3a3 100644
--- a/engines/scumm/players/player_v2.h
+++ b/engines/scumm/players/player_v2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v2a.cpp b/engines/scumm/players/player_v2a.cpp
index aeccb8b7cb..80a80a5584 100644
--- a/engines/scumm/players/player_v2a.cpp
+++ b/engines/scumm/players/player_v2a.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v2a.h b/engines/scumm/players/player_v2a.h
index 12193635f2..37333829d8 100644
--- a/engines/scumm/players/player_v2a.h
+++ b/engines/scumm/players/player_v2a.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v2base.cpp b/engines/scumm/players/player_v2base.cpp
index 75f1518989..b1872f3fb3 100644
--- a/engines/scumm/players/player_v2base.cpp
+++ b/engines/scumm/players/player_v2base.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v2base.h b/engines/scumm/players/player_v2base.h
index 32bde95ddc..83b496af67 100644
--- a/engines/scumm/players/player_v2base.h
+++ b/engines/scumm/players/player_v2base.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v2cms.cpp b/engines/scumm/players/player_v2cms.cpp
index 8e903bf9d2..08321932c3 100644
--- a/engines/scumm/players/player_v2cms.cpp
+++ b/engines/scumm/players/player_v2cms.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v2cms.h b/engines/scumm/players/player_v2cms.h
index fe42720215..b68fa00198 100644
--- a/engines/scumm/players/player_v2cms.h
+++ b/engines/scumm/players/player_v2cms.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v3a.cpp b/engines/scumm/players/player_v3a.cpp
index ca0eedc90a..e6610a87d3 100644
--- a/engines/scumm/players/player_v3a.cpp
+++ b/engines/scumm/players/player_v3a.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v3a.h b/engines/scumm/players/player_v3a.h
index 3f84a74e51..7a4ebec8ab 100644
--- a/engines/scumm/players/player_v3a.h
+++ b/engines/scumm/players/player_v3a.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v3m.cpp b/engines/scumm/players/player_v3m.cpp
index e30e31aff9..bfe6144b6f 100644
--- a/engines/scumm/players/player_v3m.cpp
+++ b/engines/scumm/players/player_v3m.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v3m.h b/engines/scumm/players/player_v3m.h
index 615d736035..81dda801fc 100644
--- a/engines/scumm/players/player_v3m.h
+++ b/engines/scumm/players/player_v3m.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v4a.cpp b/engines/scumm/players/player_v4a.cpp
index 59f49625c3..bd8ce3f7ad 100644
--- a/engines/scumm/players/player_v4a.cpp
+++ b/engines/scumm/players/player_v4a.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v4a.h b/engines/scumm/players/player_v4a.h
index c8c7b63ed2..a746d59877 100644
--- a/engines/scumm/players/player_v4a.h
+++ b/engines/scumm/players/player_v4a.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v5m.cpp b/engines/scumm/players/player_v5m.cpp
index 77b6d52a3c..5be92d024b 100644
--- a/engines/scumm/players/player_v5m.cpp
+++ b/engines/scumm/players/player_v5m.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/players/player_v5m.h b/engines/scumm/players/player_v5m.h
index e3a457f8af..f60a3f9346 100644
--- a/engines/scumm/players/player_v5m.h
+++ b/engines/scumm/players/player_v5m.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/proc3ARM.s b/engines/scumm/proc3ARM.s
index 75dd4b4a7f..70892faef2 100644
--- a/engines/scumm/proc3ARM.s
+++ b/engines/scumm/proc3ARM.s
@@ -28,14 +28,6 @@
.set space, 48
-.set _scaleIndexY, store_r14 + 28
-.set _numStrips, store_r14 + 24
-.set _palette, store_r14 + 20
-.set _shadow_table, store_r14 + 16
-.set _scaleIndexX, store_r14 + 12
-.set _scaleX, store_r14 + 8
-.set _height, store_r14 + 4
-
.set store_r14, space + 36
.set store_r11, space + 32
.set store_r10, space + 28
@@ -46,6 +38,14 @@
.set store_r5, space + 8
.set store_r4, space + 4
+.set _scaleIndexY, store_r14 + 28
+.set _numStrips, store_r14 + 24
+.set _palette, store_r14 + 20
+.set _shadow_table, store_r14 + 16
+.set _scaleIndexX, store_r14 + 12
+.set _scaleX, store_r14 + 8
+.set _height, store_r14 + 4
+
.set src, 48
.set height, 44
.set len, 40
@@ -71,6 +71,7 @@
@ <> = _palette
@ <> = _numstrips
@ <> = _scaleIndexY
+ .align 2
_ClassicProc3RendererShadowARM:
@ shadow20 = false
@ shadowed = true
diff --git a/engines/scumm/resource.cpp b/engines/scumm/resource.cpp
index 7c42b40f58..d4e4f43d5c 100644
--- a/engines/scumm/resource.cpp
+++ b/engines/scumm/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/resource.h b/engines/scumm/resource.h
index aa7f809b76..6ae553901b 100644
--- a/engines/scumm/resource.h
+++ b/engines/scumm/resource.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_RESOURCE_H
diff --git a/engines/scumm/resource_v2.cpp b/engines/scumm/resource_v2.cpp
index 927ee676a5..7ccdfa4780 100644
--- a/engines/scumm/resource_v2.cpp
+++ b/engines/scumm/resource_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/resource_v3.cpp b/engines/scumm/resource_v3.cpp
index 55e42e389c..99e967cef1 100644
--- a/engines/scumm/resource_v3.cpp
+++ b/engines/scumm/resource_v3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/resource_v4.cpp b/engines/scumm/resource_v4.cpp
index 6215e86b89..d017514c82 100644
--- a/engines/scumm/resource_v4.cpp
+++ b/engines/scumm/resource_v4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/room.cpp b/engines/scumm/room.cpp
index 9ee8fb93a9..3828629997 100644
--- a/engines/scumm/room.cpp
+++ b/engines/scumm/room.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/saveload.cpp b/engines/scumm/saveload.cpp
index 848e288589..0aaff4c094 100644
--- a/engines/scumm/saveload.cpp
+++ b/engines/scumm/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -188,32 +188,31 @@ bool ScummEngine::saveState(Common::WriteStream *out, bool writeHeader) {
}
bool ScummEngine::saveState(int slot, bool compat, Common::String &filename) {
- bool saveFailed;
+ bool saveFailed = false;
pauseEngine(true);
Common::WriteStream *out = openSaveFileForWriting(slot, compat, filename);
- if (!out)
- return false;
-
- saveFailed = false;
- if (!saveState(out))
+ if (!out) {
saveFailed = true;
+ } else {
+ if (!saveState(out))
+ saveFailed = true;
- out->finalize();
- if (out->err())
- saveFailed = true;
- delete out;
+ out->finalize();
+ if (out->err())
+ saveFailed = true;
+ delete out;
+ }
- if (saveFailed) {
+ if (saveFailed)
debug(1, "State save as '%s' FAILED", filename.c_str());
- return false;
- }
- debug(1, "State saved as '%s'", filename.c_str());
+ else
+ debug(1, "State saved as '%s'", filename.c_str());
pauseEngine(false);
- return true;
+ return !saveFailed;
}
@@ -1243,7 +1242,9 @@ void ScummEngine::saveOrLoad(Serializer *s) {
}
s->saveUint16(0xFFFF); // End marker
} else {
- while ((type = (ResType)s->loadUint16()) != 0xFFFF) {
+ uint16 tmp;
+ while ((tmp = s->loadUint16()) != 0xFFFF) {
+ type = (ResType)tmp;
while ((idx = s->loadUint16()) != 0xFFFF) {
assert(idx < _res->_types[type].size());
loadResource(s, type, idx);
@@ -1431,7 +1432,9 @@ void ScummEngine::saveOrLoad(Serializer *s) {
}
s->saveByte(0xFF);
} else {
- while ((type = (ResType)s->loadByte()) != 0xFF) {
+ uint8 tmp;
+ while ((tmp = s->loadByte()) != 0xFF) {
+ type = (ResType)tmp;
idx = s->loadUint16();
_res->lock(type, idx);
}
diff --git a/engines/scumm/saveload.h b/engines/scumm/saveload.h
index c34be5816d..bd8ae3ff59 100644
--- a/engines/scumm/saveload.h
+++ b/engines/scumm/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script.cpp b/engines/scumm/script.cpp
index c8eabdd61c..2c672ccc89 100644
--- a/engines/scumm/script.cpp
+++ b/engines/scumm/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script.h b/engines/scumm/script.h
index 74ffaaf426..972909dccc 100644
--- a/engines/scumm/script.h
+++ b/engines/scumm/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script_v0.cpp b/engines/scumm/script_v0.cpp
index 361287d29f..a7999a2695 100644
--- a/engines/scumm/script_v0.cpp
+++ b/engines/scumm/script_v0.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script_v2.cpp b/engines/scumm/script_v2.cpp
index 96d422d5bb..74d0aa2483 100644
--- a/engines/scumm/script_v2.cpp
+++ b/engines/scumm/script_v2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script_v3.cpp b/engines/scumm/script_v3.cpp
index b28d831101..00fc525ab5 100644
--- a/engines/scumm/script_v3.cpp
+++ b/engines/scumm/script_v3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script_v4.cpp b/engines/scumm/script_v4.cpp
index ec3ac4b00f..7ac21fea31 100644
--- a/engines/scumm/script_v4.cpp
+++ b/engines/scumm/script_v4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script_v5.cpp b/engines/scumm/script_v5.cpp
index 3da7000ae9..2cda9898af 100644
--- a/engines/scumm/script_v5.cpp
+++ b/engines/scumm/script_v5.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script_v6.cpp b/engines/scumm/script_v6.cpp
index 6983c51f30..d2f4133f74 100644
--- a/engines/scumm/script_v6.cpp
+++ b/engines/scumm/script_v6.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/script_v8.cpp b/engines/scumm/script_v8.cpp
index f6f376f3c9..03a6d13886 100644
--- a/engines/scumm/script_v8.cpp
+++ b/engines/scumm/script_v8.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp
index 39fbae8147..54f22ecad3 100644
--- a/engines/scumm/scumm.cpp
+++ b/engines/scumm/scumm.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm.h b/engines/scumm/scumm.h
index 7d3a01b895..b4afa09bb2 100644
--- a/engines/scumm/scumm.h
+++ b/engines/scumm/scumm.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm_v0.h b/engines/scumm/scumm_v0.h
index 7f532c04d7..80d047ab9f 100644
--- a/engines/scumm/scumm_v0.h
+++ b/engines/scumm/scumm_v0.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm_v2.h b/engines/scumm/scumm_v2.h
index 316a08d325..e438008c1e 100644
--- a/engines/scumm/scumm_v2.h
+++ b/engines/scumm/scumm_v2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm_v3.h b/engines/scumm/scumm_v3.h
index f11ca16a50..29f170e7ea 100644
--- a/engines/scumm/scumm_v3.h
+++ b/engines/scumm/scumm_v3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm_v4.h b/engines/scumm/scumm_v4.h
index e21e4b26ae..28f619ceaa 100644
--- a/engines/scumm/scumm_v4.h
+++ b/engines/scumm/scumm_v4.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm_v5.h b/engines/scumm/scumm_v5.h
index 0eef04b8de..1bd38d68f2 100644
--- a/engines/scumm/scumm_v5.h
+++ b/engines/scumm/scumm_v5.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm_v6.h b/engines/scumm/scumm_v6.h
index c42a49a9f5..73268f6f33 100644
--- a/engines/scumm/scumm_v6.h
+++ b/engines/scumm/scumm_v6.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm_v7.h b/engines/scumm/scumm_v7.h
index 6fb98a0af7..b8830be810 100644
--- a/engines/scumm/scumm_v7.h
+++ b/engines/scumm/scumm_v7.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/scumm_v8.h b/engines/scumm/scumm_v8.h
index 43bfad1fc9..714a7d2dcb 100644
--- a/engines/scumm/scumm_v8.h
+++ b/engines/scumm/scumm_v8.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/channel.cpp b/engines/scumm/smush/channel.cpp
index 7f9ca70080..6d86215626 100644
--- a/engines/scumm/smush/channel.cpp
+++ b/engines/scumm/smush/channel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/channel.h b/engines/scumm/smush/channel.h
index 839aeaa970..dc2219bbed 100644
--- a/engines/scumm/smush/channel.h
+++ b/engines/scumm/smush/channel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/codec1.cpp b/engines/scumm/smush/codec1.cpp
index 79d97d2ce3..0ec34e0266 100644
--- a/engines/scumm/smush/codec1.cpp
+++ b/engines/scumm/smush/codec1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/codec37.cpp b/engines/scumm/smush/codec37.cpp
index 344057e3ac..aab70ab876 100644
--- a/engines/scumm/smush/codec37.cpp
+++ b/engines/scumm/smush/codec37.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/codec37.h b/engines/scumm/smush/codec37.h
index bcb858b0b5..2d34655f24 100644
--- a/engines/scumm/smush/codec37.h
+++ b/engines/scumm/smush/codec37.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/codec47.cpp b/engines/scumm/smush/codec47.cpp
index 4b503a0a38..5bac85ee82 100644
--- a/engines/scumm/smush/codec47.cpp
+++ b/engines/scumm/smush/codec47.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/codec47.h b/engines/scumm/smush/codec47.h
index 0e5156db5c..1621db6996 100644
--- a/engines/scumm/smush/codec47.h
+++ b/engines/scumm/smush/codec47.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/codec47ARM.s b/engines/scumm/smush/codec47ARM.s
index a91f932558..53e9143f39 100644
--- a/engines/scumm/smush/codec47ARM.s
+++ b/engines/scumm/smush/codec47ARM.s
@@ -28,6 +28,7 @@
.global _ARM_Smush_decode2
+ .align 2
_ARM_Smush_decode2:
@ r0 = dst
@ r1 = src
diff --git a/engines/scumm/smush/imuse_channel.cpp b/engines/scumm/smush/imuse_channel.cpp
index f2c4f993e4..461aff962e 100644
--- a/engines/scumm/smush/imuse_channel.cpp
+++ b/engines/scumm/smush/imuse_channel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/saud_channel.cpp b/engines/scumm/smush/saud_channel.cpp
index 2f1ca512f0..ca64b38556 100644
--- a/engines/scumm/smush/saud_channel.cpp
+++ b/engines/scumm/smush/saud_channel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/smush_font.cpp b/engines/scumm/smush/smush_font.cpp
index 5cfa0ea519..4c04901b42 100644
--- a/engines/scumm/smush/smush_font.cpp
+++ b/engines/scumm/smush/smush_font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/smush_font.h b/engines/scumm/smush/smush_font.h
index 5de4a725c6..9cfea5a26d 100644
--- a/engines/scumm/smush/smush_font.h
+++ b/engines/scumm/smush/smush_font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/smush_mixer.cpp b/engines/scumm/smush/smush_mixer.cpp
index d2b4b5a482..42e8f645be 100644
--- a/engines/scumm/smush/smush_mixer.cpp
+++ b/engines/scumm/smush/smush_mixer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/smush_mixer.h b/engines/scumm/smush/smush_mixer.h
index 75a8889242..18ec7f96fb 100644
--- a/engines/scumm/smush/smush_mixer.h
+++ b/engines/scumm/smush/smush_mixer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/smush_player.cpp b/engines/scumm/smush/smush_player.cpp
index ce098f07aa..7617fc541f 100644
--- a/engines/scumm/smush/smush_player.cpp
+++ b/engines/scumm/smush/smush_player.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/smush/smush_player.h b/engines/scumm/smush/smush_player.h
index 5a2024060e..81c498a516 100644
--- a/engines/scumm/smush/smush_player.h
+++ b/engines/scumm/smush/smush_player.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp
index 071805752b..01bdefc7c0 100644
--- a/engines/scumm/sound.cpp
+++ b/engines/scumm/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/sound.h b/engines/scumm/sound.h
index 48f28d51ff..a96d2b8ed5 100644
--- a/engines/scumm/sound.h
+++ b/engines/scumm/sound.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_SOUND_H
diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp
index 975307d0d0..d60c4c6a50 100644
--- a/engines/scumm/string.cpp
+++ b/engines/scumm/string.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/vars.cpp b/engines/scumm/vars.cpp
index 9c90d7575d..73028c8513 100644
--- a/engines/scumm/vars.cpp
+++ b/engines/scumm/vars.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/verbs.cpp b/engines/scumm/verbs.cpp
index 0d0f6cdb95..fdb98a8019 100644
--- a/engines/scumm/verbs.cpp
+++ b/engines/scumm/verbs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/scumm/verbs.h b/engines/scumm/verbs.h
index 0aa008b4de..a0b5f69231 100644
--- a/engines/scumm/verbs.h
+++ b/engines/scumm/verbs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef SCUMM_VERBS_H
diff --git a/engines/sky/autoroute.cpp b/engines/sky/autoroute.cpp
index ab791cb066..877090f6b8 100644
--- a/engines/sky/autoroute.cpp
+++ b/engines/sky/autoroute.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/autoroute.h b/engines/sky/autoroute.h
index 8721ba6c54..91d4846ef8 100644
--- a/engines/sky/autoroute.h
+++ b/engines/sky/autoroute.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/control.cpp b/engines/sky/control.cpp
index 57c1f6b48b..dfdd765120 100644
--- a/engines/sky/control.cpp
+++ b/engines/sky/control.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/control.h b/engines/sky/control.h
index 1380d29ee2..44591f299d 100644
--- a/engines/sky/control.h
+++ b/engines/sky/control.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/debug.cpp b/engines/sky/debug.cpp
index a417bc2ece..63da42eec2 100644
--- a/engines/sky/debug.cpp
+++ b/engines/sky/debug.cpp
@@ -1108,6 +1108,15 @@ void Debugger::postEnter() {
_mouse->resetCursor();
}
+static bool isNumeric(const char *arg) {
+ const char *str = arg;
+ bool retVal = true;
+ while (retVal && (*str != '\0')) {
+ retVal = Common::isDigit(*str++);
+ }
+ return retVal;
+}
+
bool Debugger::Cmd_ShowGrid(int argc, const char **argv) {
_showGrid = !_showGrid;
DebugPrintf("Show grid: %s\n", _showGrid ? "On" : "Off");
@@ -1299,22 +1308,20 @@ bool Debugger::Cmd_ScriptVar(int argc, const char **argv) {
}
bool Debugger::Cmd_Section(int argc, const char **argv) {
- if (argc < 2) {
- DebugPrintf("Example: %s 4\n", argv[0]);
- return true;
- }
-
- const int baseId[] = { START_ONE, START_S6, START_29, START_SC31, START_SC66, START_SC90, START_SC81 };
- int section = atoi(argv[1]);
+ if (argc == 2 && isNumeric(argv[1])) {
+ const int baseId[] = { START_ONE, START_S6, START_29, START_SC31, START_SC66, START_SC90, START_SC81 };
+ int section = atoi(argv[1]);
- if (section >= 0 && section <= 6) {
- _logic->fnEnterSection(section == 6 ? 4 : section, 0, 0);
- _logic->fnAssignBase(ID_FOSTER, baseId[section], 0);
- _skyCompact->fetchCpt(ID_FOSTER)->megaSet = 0;
+ if (section >= 0 && section <= 6) {
+ _logic->fnEnterSection(section == 6 ? 4 : section, 0, 0);
+ _logic->fnAssignBase(ID_FOSTER, baseId[section], 0);
+ _skyCompact->fetchCpt(ID_FOSTER)->megaSet = 0;
+ } else {
+ DebugPrintf("Section %d is out of range (range: %d - %d)\n", section, 0, 6);
+ }
} else {
- DebugPrintf("Unknown section '%s'\n", argv[1]);
+ DebugPrintf("Example: %s 4\n", argv[0]);
}
-
return true;
}
diff --git a/engines/sky/detection.cpp b/engines/sky/detection.cpp
index 8f6c2bb6a2..4c7bb2dc17 100644
--- a/engines/sky/detection.cpp
+++ b/engines/sky/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/disk.cpp b/engines/sky/disk.cpp
index e97aeb01a2..25f4a125f1 100644
--- a/engines/sky/disk.cpp
+++ b/engines/sky/disk.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/disk.h b/engines/sky/disk.h
index 320c38eebd..bd19e465d1 100644
--- a/engines/sky/disk.h
+++ b/engines/sky/disk.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/grid.cpp b/engines/sky/grid.cpp
index 6a9dc502a7..343c2c0415 100644
--- a/engines/sky/grid.cpp
+++ b/engines/sky/grid.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/grid.h b/engines/sky/grid.h
index 6e0e9aabaa..641c96d534 100644
--- a/engines/sky/grid.h
+++ b/engines/sky/grid.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/hufftext.cpp b/engines/sky/hufftext.cpp
index 0592f094d9..ba9ee6c3e2 100644
--- a/engines/sky/hufftext.cpp
+++ b/engines/sky/hufftext.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/intro.cpp b/engines/sky/intro.cpp
index 2f75a19b69..d4476e2916 100644
--- a/engines/sky/intro.cpp
+++ b/engines/sky/intro.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/intro.h b/engines/sky/intro.h
index 98af6e3664..fb6a1ec9cd 100644
--- a/engines/sky/intro.h
+++ b/engines/sky/intro.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/logic.cpp b/engines/sky/logic.cpp
index e92e768272..e1175f9936 100644
--- a/engines/sky/logic.cpp
+++ b/engines/sky/logic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/logic.h b/engines/sky/logic.h
index 9f8df25870..8507fe7398 100644
--- a/engines/sky/logic.h
+++ b/engines/sky/logic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/mouse.cpp b/engines/sky/mouse.cpp
index 74a92c8f00..de2d2226bb 100644
--- a/engines/sky/mouse.cpp
+++ b/engines/sky/mouse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/mouse.h b/engines/sky/mouse.h
index 1ba0167fb5..310b724e4f 100644
--- a/engines/sky/mouse.h
+++ b/engines/sky/mouse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/adlibchannel.cpp b/engines/sky/music/adlibchannel.cpp
index 99509554c7..8400fef6eb 100644
--- a/engines/sky/music/adlibchannel.cpp
+++ b/engines/sky/music/adlibchannel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/adlibchannel.h b/engines/sky/music/adlibchannel.h
index 44ac0d79d0..80dae93b2c 100644
--- a/engines/sky/music/adlibchannel.h
+++ b/engines/sky/music/adlibchannel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/adlibmusic.cpp b/engines/sky/music/adlibmusic.cpp
index a41cd6a81d..dd64c5bc81 100644
--- a/engines/sky/music/adlibmusic.cpp
+++ b/engines/sky/music/adlibmusic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/adlibmusic.h b/engines/sky/music/adlibmusic.h
index 2161795b4c..886eef026e 100644
--- a/engines/sky/music/adlibmusic.h
+++ b/engines/sky/music/adlibmusic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/gmchannel.cpp b/engines/sky/music/gmchannel.cpp
index 215d6490b9..85a381de53 100644
--- a/engines/sky/music/gmchannel.cpp
+++ b/engines/sky/music/gmchannel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/gmchannel.h b/engines/sky/music/gmchannel.h
index f16de401db..b935321f50 100644
--- a/engines/sky/music/gmchannel.h
+++ b/engines/sky/music/gmchannel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/gmmusic.cpp b/engines/sky/music/gmmusic.cpp
index 84f6a654d0..7dc82807d9 100644
--- a/engines/sky/music/gmmusic.cpp
+++ b/engines/sky/music/gmmusic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/gmmusic.h b/engines/sky/music/gmmusic.h
index 068601ba1f..fa2b960404 100644
--- a/engines/sky/music/gmmusic.h
+++ b/engines/sky/music/gmmusic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/mt32music.cpp b/engines/sky/music/mt32music.cpp
index a3fdd42713..9e8886d82a 100644
--- a/engines/sky/music/mt32music.cpp
+++ b/engines/sky/music/mt32music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/mt32music.h b/engines/sky/music/mt32music.h
index 8f8e70f51b..fe68910869 100644
--- a/engines/sky/music/mt32music.h
+++ b/engines/sky/music/mt32music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/musicbase.cpp b/engines/sky/music/musicbase.cpp
index 944edb1fdc..d26b6393de 100644
--- a/engines/sky/music/musicbase.cpp
+++ b/engines/sky/music/musicbase.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/music/musicbase.h b/engines/sky/music/musicbase.h
index 066ebe593c..38a52805b7 100644
--- a/engines/sky/music/musicbase.h
+++ b/engines/sky/music/musicbase.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/rnc_deco.cpp b/engines/sky/rnc_deco.cpp
index 27fae03514..8242b27dee 100644
--- a/engines/sky/rnc_deco.cpp
+++ b/engines/sky/rnc_deco.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/rnc_deco.h b/engines/sky/rnc_deco.h
index 96a75a9750..2046b56371 100644
--- a/engines/sky/rnc_deco.h
+++ b/engines/sky/rnc_deco.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/screen.cpp b/engines/sky/screen.cpp
index 2797ed2fea..c96b449162 100644
--- a/engines/sky/screen.cpp
+++ b/engines/sky/screen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/screen.h b/engines/sky/screen.h
index bf8b69a95a..fa04cd91c3 100644
--- a/engines/sky/screen.h
+++ b/engines/sky/screen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/sky.cpp b/engines/sky/sky.cpp
index 4c47dfafc7..40b6959a9b 100644
--- a/engines/sky/sky.cpp
+++ b/engines/sky/sky.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/sky.h b/engines/sky/sky.h
index cd8a650d60..56833004ac 100644
--- a/engines/sky/sky.h
+++ b/engines/sky/sky.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/skydefs.h b/engines/sky/skydefs.h
index 070e185d55..167b7dade2 100644
--- a/engines/sky/skydefs.h
+++ b/engines/sky/skydefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/sound.cpp b/engines/sky/sound.cpp
index a60e3d9e38..d9343d10c7 100644
--- a/engines/sky/sound.cpp
+++ b/engines/sky/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/sound.h b/engines/sky/sound.h
index da0d91911b..3c330dae99 100644
--- a/engines/sky/sound.h
+++ b/engines/sky/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/struc.h b/engines/sky/struc.h
index c2ebf1bad0..dd75410283 100644
--- a/engines/sky/struc.h
+++ b/engines/sky/struc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/text.cpp b/engines/sky/text.cpp
index 38a01116fe..bf7b8e3787 100644
--- a/engines/sky/text.cpp
+++ b/engines/sky/text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sky/text.h b/engines/sky/text.h
index cf0d707ce9..e327b6e6b4 100644
--- a/engines/sky/text.h
+++ b/engines/sky/text.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/animation.cpp b/engines/sword1/animation.cpp
index 742aac1a53..0257a805ff 100644
--- a/engines/sword1/animation.cpp
+++ b/engines/sword1/animation.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/animation.h b/engines/sword1/animation.h
index 2c51a74f71..462addf70f 100644
--- a/engines/sword1/animation.h
+++ b/engines/sword1/animation.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/collision.h b/engines/sword1/collision.h
index 9a9eeec429..6cfe50d9d6 100644
--- a/engines/sword1/collision.h
+++ b/engines/sword1/collision.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/console.cpp b/engines/sword1/console.cpp
index 4c55f8d990..3eb3b93a19 100644
--- a/engines/sword1/console.cpp
+++ b/engines/sword1/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/console.h b/engines/sword1/console.h
index 260fe95d52..a2bb51f9a4 100644
--- a/engines/sword1/console.h
+++ b/engines/sword1/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/control.cpp b/engines/sword1/control.cpp
index 80d8edc1dd..201c3aa9bd 100644
--- a/engines/sword1/control.cpp
+++ b/engines/sword1/control.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/control.h b/engines/sword1/control.h
index a80ea05b03..2d15bcdd15 100644
--- a/engines/sword1/control.h
+++ b/engines/sword1/control.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/debug.cpp b/engines/sword1/debug.cpp
index 6f82d0f49a..cddc7283f0 100644
--- a/engines/sword1/debug.cpp
+++ b/engines/sword1/debug.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/debug.h b/engines/sword1/debug.h
index 1505ae28dd..f3ebb0b9b2 100644
--- a/engines/sword1/debug.h
+++ b/engines/sword1/debug.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/detection.cpp b/engines/sword1/detection.cpp
index f3af04c81d..8a1f3dfef9 100644
--- a/engines/sword1/detection.cpp
+++ b/engines/sword1/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/eventman.cpp b/engines/sword1/eventman.cpp
index 113151bfd5..3b3e696937 100644
--- a/engines/sword1/eventman.cpp
+++ b/engines/sword1/eventman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/eventman.h b/engines/sword1/eventman.h
index 25cb886a34..cf32ff7343 100644
--- a/engines/sword1/eventman.h
+++ b/engines/sword1/eventman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/logic.cpp b/engines/sword1/logic.cpp
index 757d768780..a0067ffbf5 100644
--- a/engines/sword1/logic.cpp
+++ b/engines/sword1/logic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/logic.h b/engines/sword1/logic.h
index a146d340cf..94da2b3a77 100644
--- a/engines/sword1/logic.h
+++ b/engines/sword1/logic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/memman.cpp b/engines/sword1/memman.cpp
index 19809249b5..be36684fe5 100644
--- a/engines/sword1/memman.cpp
+++ b/engines/sword1/memman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/memman.h b/engines/sword1/memman.h
index 7f84720248..bff5c6a620 100644
--- a/engines/sword1/memman.h
+++ b/engines/sword1/memman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/menu.cpp b/engines/sword1/menu.cpp
index f61e10106a..2cf765b65e 100644
--- a/engines/sword1/menu.cpp
+++ b/engines/sword1/menu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/menu.h b/engines/sword1/menu.h
index ea062f1a49..66e465cf63 100644
--- a/engines/sword1/menu.h
+++ b/engines/sword1/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/module.mk b/engines/sword1/module.mk
index a19fcbfab9..cd1b03ee7d 100644
--- a/engines/sword1/module.mk
+++ b/engines/sword1/module.mk
@@ -19,7 +19,7 @@ MODULE_OBJS := \
sound.o \
staticres.o \
sword1.o \
- text.o
+ text.o
# This module can be built as a plugin
ifeq ($(ENABLE_SWORD1), DYNAMIC_PLUGIN)
diff --git a/engines/sword1/mouse.cpp b/engines/sword1/mouse.cpp
index 4a62995d96..88de4001bb 100644
--- a/engines/sword1/mouse.cpp
+++ b/engines/sword1/mouse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/mouse.h b/engines/sword1/mouse.h
index b2a844d0a9..924b04c206 100644
--- a/engines/sword1/mouse.h
+++ b/engines/sword1/mouse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/music.cpp b/engines/sword1/music.cpp
index f31faffd5e..6a0a3d1e70 100644
--- a/engines/sword1/music.cpp
+++ b/engines/sword1/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/music.h b/engines/sword1/music.h
index 4207019c13..ec25427ead 100644
--- a/engines/sword1/music.h
+++ b/engines/sword1/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/object.h b/engines/sword1/object.h
index 0dab5519bd..8ded828b90 100644
--- a/engines/sword1/object.h
+++ b/engines/sword1/object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/objectman.cpp b/engines/sword1/objectman.cpp
index 3e70a95699..07f19154a0 100644
--- a/engines/sword1/objectman.cpp
+++ b/engines/sword1/objectman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/objectman.h b/engines/sword1/objectman.h
index 197b437c15..fef1a8da3a 100644
--- a/engines/sword1/objectman.h
+++ b/engines/sword1/objectman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/resman.cpp b/engines/sword1/resman.cpp
index 7222965c9d..0a0324a67c 100644
--- a/engines/sword1/resman.cpp
+++ b/engines/sword1/resman.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/resman.h b/engines/sword1/resman.h
index 49d974c1db..ac6aa87065 100644
--- a/engines/sword1/resman.h
+++ b/engines/sword1/resman.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/router.cpp b/engines/sword1/router.cpp
index ef07a0bf02..72c8440e1c 100644
--- a/engines/sword1/router.cpp
+++ b/engines/sword1/router.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/router.h b/engines/sword1/router.h
index 82724b1e6e..76ddf53222 100644
--- a/engines/sword1/router.h
+++ b/engines/sword1/router.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/screen.cpp b/engines/sword1/screen.cpp
index 76957e0a70..507f4f0884 100644
--- a/engines/sword1/screen.cpp
+++ b/engines/sword1/screen.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/screen.h b/engines/sword1/screen.h
index 7586e937a7..6186f64250 100644
--- a/engines/sword1/screen.h
+++ b/engines/sword1/screen.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/sound.cpp b/engines/sword1/sound.cpp
index 643657c71f..0b4d3829d6 100644
--- a/engines/sword1/sound.cpp
+++ b/engines/sword1/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/sound.h b/engines/sword1/sound.h
index b52d89f390..666598dba0 100644
--- a/engines/sword1/sound.h
+++ b/engines/sword1/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/staticres.cpp b/engines/sword1/staticres.cpp
index 5dabce1301..37ab3c2f6d 100644
--- a/engines/sword1/staticres.cpp
+++ b/engines/sword1/staticres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -2682,7 +2682,7 @@ const char Music::_tuneList[TOTAL_TUNES][8] = {
"3m10", // DONE 82 After, "A description, perhaps."
"2m13", // DONE 83 Red nose icon at costumier's. Copy 2M13.
"3m12", // DONE 84 Tissue icon. Also, after Nico's "No, I write it (the magazine) 5M19.
- "3m13", // DONE 85 Photo icon over, "Do you recognise this man?"
+ "3m13", // DONE 85 Photo icon over, "Do you recognize this man?"
"3m14", // DONE 86 Exit icon, over, "Thanks for your help, buddy."
"2m9", // DONE 87 Clicking on police station on the map.
"3m17", // DONE 88 Police station on, "I've tracked down the clown's movements."
@@ -2702,7 +2702,7 @@ const char Music::_tuneList[TOTAL_TUNES][8] = {
"3m32", // DONE 100 Source music for Lady Piermont.
"3m33", // DONE 101 More music for Lady P.
"2m13", // DONE 102 Red Nose music Copy 2M13
- "4m3", // DONE 103 On photo, "Do you recognise the man in this photograph"
+ "4m3", // DONE 103 On photo, "Do you recognize the man in this photograph"
"4m4", // DONE 104 With Lady P. After, "Hi there, ma'am."
"4m5", // DONE 105 After, "I think the word you're looking for is...dick"
"4m6", // DONE 106 After, "English arrogance might do the trick." Also for "More English arrogance" (4M27)
@@ -2881,7 +2881,7 @@ const char Music::_tuneList[TOTAL_TUNES][8] = {
"scm1b", // DONE 260 When George passes the trigger point toward the back of the train and he sees Guido.
"spm6b", // DONE 261 The climax of "spm6", which should coincide with the Countess holding up the chalice.
"marquet", // DONE 262 Starts at the fade down when George is asked to leave Jacques' room
- "rm4", // DONE 263 "On crystal stand icon. As George walks to the centre of the cavern." I'd do this on the first LMB on the stump.
+ "rm4", // DONE 263 "On crystal stand icon. As George walks to the center of the cavern." I'd do this on the first LMB on the stump.
"rm5", // DONE 264 "On icon. As George places the crystal on top of the stand." When the player places the gem luggage on the emplaced tripod.
"rm6", // DONE 265 "Chalice reflection. On icon as George places Chalice on floor of Church" i.e. the mosaic in the Baphomet dig. It's over thirty seconds long so it had best start running when the chalice luggage is placed on the mosaic so it runs through the big screen of the reflection.
"rm7", // DONE 266 "Burning candle. On icon as George sets about lighting candle." One minute forty-eight, this one. I've no idea how long the burning candle Smacker is but the cue description seems to indicate it should run from the moment the burning tissue successfully lights the candle, i.e. the window is shut.
diff --git a/engines/sword1/sword1.cpp b/engines/sword1/sword1.cpp
index 5738431dce..08ea02f32d 100644
--- a/engines/sword1/sword1.cpp
+++ b/engines/sword1/sword1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/sword1.h b/engines/sword1/sword1.h
index ec6555b4b3..c58e97e353 100644
--- a/engines/sword1/sword1.h
+++ b/engines/sword1/sword1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/sworddefs.h b/engines/sword1/sworddefs.h
index db4146f37e..643b17d3e2 100644
--- a/engines/sword1/sworddefs.h
+++ b/engines/sword1/sworddefs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/swordres.h b/engines/sword1/swordres.h
index b1fc206b80..284219110d 100644
--- a/engines/sword1/swordres.h
+++ b/engines/sword1/swordres.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/text.cpp b/engines/sword1/text.cpp
index f23ac5f182..2ef1d95b4e 100644
--- a/engines/sword1/text.cpp
+++ b/engines/sword1/text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword1/text.h b/engines/sword1/text.h
index 4dcb9e26a7..aecd268c00 100644
--- a/engines/sword1/text.h
+++ b/engines/sword1/text.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/console.cpp b/engines/sword25/console.cpp
index f1b91d2bc2..d8222e7f6d 100644
--- a/engines/sword25/console.cpp
+++ b/engines/sword25/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/console.h b/engines/sword25/console.h
index 9e2516ccf0..ea955ee139 100644
--- a/engines/sword25/console.h
+++ b/engines/sword25/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/detection.cpp b/engines/sword25/detection.cpp
index 06e4ba2a7d..df68d11609 100644
--- a/engines/sword25/detection.cpp
+++ b/engines/sword25/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/detection_tables.h b/engines/sword25/detection_tables.h
index 94a5b55fed..a9f263b7d4 100644
--- a/engines/sword25/detection_tables.h
+++ b/engines/sword25/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/fmv/movieplayer.cpp b/engines/sword25/fmv/movieplayer.cpp
index 3cdce1b493..5d7dcf2506 100644
--- a/engines/sword25/fmv/movieplayer.cpp
+++ b/engines/sword25/fmv/movieplayer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/fmv/movieplayer.h b/engines/sword25/fmv/movieplayer.h
index 2f5614b505..95fb05ee60 100644
--- a/engines/sword25/fmv/movieplayer.h
+++ b/engines/sword25/fmv/movieplayer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/fmv/movieplayer_script.cpp b/engines/sword25/fmv/movieplayer_script.cpp
index 8359059b85..44353268c7 100644
--- a/engines/sword25/fmv/movieplayer_script.cpp
+++ b/engines/sword25/fmv/movieplayer_script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animation.cpp b/engines/sword25/gfx/animation.cpp
index 37207c967b..eeb78857ea 100644
--- a/engines/sword25/gfx/animation.cpp
+++ b/engines/sword25/gfx/animation.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animation.h b/engines/sword25/gfx/animation.h
index ced1995ae9..b6f314ea42 100644
--- a/engines/sword25/gfx/animation.h
+++ b/engines/sword25/gfx/animation.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animationdescription.cpp b/engines/sword25/gfx/animationdescription.cpp
index 164206bbc2..983850269d 100644
--- a/engines/sword25/gfx/animationdescription.cpp
+++ b/engines/sword25/gfx/animationdescription.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animationdescription.h b/engines/sword25/gfx/animationdescription.h
index 009d83dcc7..7884e32655 100644
--- a/engines/sword25/gfx/animationdescription.h
+++ b/engines/sword25/gfx/animationdescription.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animationresource.cpp b/engines/sword25/gfx/animationresource.cpp
index 8c09a545a0..431d466658 100644
--- a/engines/sword25/gfx/animationresource.cpp
+++ b/engines/sword25/gfx/animationresource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animationresource.h b/engines/sword25/gfx/animationresource.h
index 70291f220e..d4b58326cb 100644
--- a/engines/sword25/gfx/animationresource.h
+++ b/engines/sword25/gfx/animationresource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animationtemplate.cpp b/engines/sword25/gfx/animationtemplate.cpp
index a1d2bf5d1a..7db89be8b2 100644
--- a/engines/sword25/gfx/animationtemplate.cpp
+++ b/engines/sword25/gfx/animationtemplate.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animationtemplate.h b/engines/sword25/gfx/animationtemplate.h
index b61ecfcf54..6968e44183 100644
--- a/engines/sword25/gfx/animationtemplate.h
+++ b/engines/sword25/gfx/animationtemplate.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animationtemplateregistry.cpp b/engines/sword25/gfx/animationtemplateregistry.cpp
index 4cefe24b18..4783a314f4 100644
--- a/engines/sword25/gfx/animationtemplateregistry.cpp
+++ b/engines/sword25/gfx/animationtemplateregistry.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/animationtemplateregistry.h b/engines/sword25/gfx/animationtemplateregistry.h
index d3d02b2ac8..cbc6cc0120 100644
--- a/engines/sword25/gfx/animationtemplateregistry.h
+++ b/engines/sword25/gfx/animationtemplateregistry.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/bitmap.cpp b/engines/sword25/gfx/bitmap.cpp
index 593a426975..c9a2d8601a 100644
--- a/engines/sword25/gfx/bitmap.cpp
+++ b/engines/sword25/gfx/bitmap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/bitmap.h b/engines/sword25/gfx/bitmap.h
index f22c5d7fc9..71e0f1d306 100644
--- a/engines/sword25/gfx/bitmap.h
+++ b/engines/sword25/gfx/bitmap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/bitmapresource.h b/engines/sword25/gfx/bitmapresource.h
index 72b8a3ea1f..7a4daedd84 100644
--- a/engines/sword25/gfx/bitmapresource.h
+++ b/engines/sword25/gfx/bitmapresource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/dynamicbitmap.cpp b/engines/sword25/gfx/dynamicbitmap.cpp
index 1f3d2d063d..ce9c056d08 100644
--- a/engines/sword25/gfx/dynamicbitmap.cpp
+++ b/engines/sword25/gfx/dynamicbitmap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/dynamicbitmap.h b/engines/sword25/gfx/dynamicbitmap.h
index ed53776577..ddea5238d4 100644
--- a/engines/sword25/gfx/dynamicbitmap.h
+++ b/engines/sword25/gfx/dynamicbitmap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/fontresource.cpp b/engines/sword25/gfx/fontresource.cpp
index 0aeca7c180..c4d4c3c52e 100644
--- a/engines/sword25/gfx/fontresource.cpp
+++ b/engines/sword25/gfx/fontresource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/fontresource.h b/engines/sword25/gfx/fontresource.h
index 511f485658..be10e42876 100644
--- a/engines/sword25/gfx/fontresource.h
+++ b/engines/sword25/gfx/fontresource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/graphicengine.cpp b/engines/sword25/gfx/graphicengine.cpp
index bfdb51481b..2a870c021d 100644
--- a/engines/sword25/gfx/graphicengine.cpp
+++ b/engines/sword25/gfx/graphicengine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/graphicengine.h b/engines/sword25/gfx/graphicengine.h
index 3309763966..cf4289b8bb 100644
--- a/engines/sword25/gfx/graphicengine.h
+++ b/engines/sword25/gfx/graphicengine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/graphicengine_script.cpp b/engines/sword25/gfx/graphicengine_script.cpp
index b4334195a1..14b9de1453 100644
--- a/engines/sword25/gfx/graphicengine_script.cpp
+++ b/engines/sword25/gfx/graphicengine_script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/art.cpp b/engines/sword25/gfx/image/art.cpp
index e2eeaca33f..454c7e1047 100644
--- a/engines/sword25/gfx/image/art.cpp
+++ b/engines/sword25/gfx/image/art.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/art.h b/engines/sword25/gfx/image/art.h
index 40bcb55aa7..820520012c 100644
--- a/engines/sword25/gfx/image/art.h
+++ b/engines/sword25/gfx/image/art.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/image.h b/engines/sword25/gfx/image/image.h
index 8db54e7c54..8fbf802501 100644
--- a/engines/sword25/gfx/image/image.h
+++ b/engines/sword25/gfx/image/image.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/imgloader.cpp b/engines/sword25/gfx/image/imgloader.cpp
index 9006a596b4..b4b3030de8 100644
--- a/engines/sword25/gfx/image/imgloader.cpp
+++ b/engines/sword25/gfx/image/imgloader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -33,14 +33,14 @@
#include "sword25/gfx/image/image.h"
#include "sword25/gfx/image/imgloader.h"
#include "graphics/pixelformat.h"
-#include "graphics/decoders/png.h"
+#include "image/png.h"
namespace Sword25 {
bool ImgLoader::decodePNGImage(const byte *fileDataPtr, uint fileSize, byte *&uncompressedDataPtr, int &width, int &height, int &pitch) {
Common::MemoryReadStream *fileStr = new Common::MemoryReadStream(fileDataPtr, fileSize, DisposeAfterUse::NO);
- Graphics::PNGDecoder png;
+ ::Image::PNGDecoder png;
if (!png.loadStream(*fileStr)) // the fileStr pointer, and thus pFileData will be deleted after this is done
error("Error while reading PNG image");
diff --git a/engines/sword25/gfx/image/imgloader.h b/engines/sword25/gfx/image/imgloader.h
index 735ab9203c..b932cdc903 100644
--- a/engines/sword25/gfx/image/imgloader.h
+++ b/engines/sword25/gfx/image/imgloader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/renderedimage.cpp b/engines/sword25/gfx/image/renderedimage.cpp
index b359fc6a3e..107b4cd402 100644
--- a/engines/sword25/gfx/image/renderedimage.cpp
+++ b/engines/sword25/gfx/image/renderedimage.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/renderedimage.h b/engines/sword25/gfx/image/renderedimage.h
index 116f97de26..3cc9725b12 100644
--- a/engines/sword25/gfx/image/renderedimage.h
+++ b/engines/sword25/gfx/image/renderedimage.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/swimage.cpp b/engines/sword25/gfx/image/swimage.cpp
index 7e4c3143f5..776f8ce8d3 100644
--- a/engines/sword25/gfx/image/swimage.cpp
+++ b/engines/sword25/gfx/image/swimage.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/swimage.h b/engines/sword25/gfx/image/swimage.h
index a35127a41d..b31c2318ec 100644
--- a/engines/sword25/gfx/image/swimage.h
+++ b/engines/sword25/gfx/image/swimage.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/vectorimage.cpp b/engines/sword25/gfx/image/vectorimage.cpp
index ab895b5cef..0e5dfb9c53 100644
--- a/engines/sword25/gfx/image/vectorimage.cpp
+++ b/engines/sword25/gfx/image/vectorimage.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/vectorimage.h b/engines/sword25/gfx/image/vectorimage.h
index d1760a433e..a99d532e75 100644
--- a/engines/sword25/gfx/image/vectorimage.h
+++ b/engines/sword25/gfx/image/vectorimage.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/image/vectorimagerenderer.cpp b/engines/sword25/gfx/image/vectorimagerenderer.cpp
index 6d4dc213f2..c7a79fd3c4 100644
--- a/engines/sword25/gfx/image/vectorimagerenderer.cpp
+++ b/engines/sword25/gfx/image/vectorimagerenderer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/microtiles.cpp b/engines/sword25/gfx/microtiles.cpp
index 18e4a9a1fb..792e4ef385 100644
--- a/engines/sword25/gfx/microtiles.cpp
+++ b/engines/sword25/gfx/microtiles.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "sword25/gfx/microtiles.h"
diff --git a/engines/sword25/gfx/microtiles.h b/engines/sword25/gfx/microtiles.h
index 454fc39f37..8f94b6cfbf 100644
--- a/engines/sword25/gfx/microtiles.h
+++ b/engines/sword25/gfx/microtiles.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef SWORD25_MICROTILES_H
diff --git a/engines/sword25/gfx/panel.cpp b/engines/sword25/gfx/panel.cpp
index 9b7fe82914..9699db7f6a 100644
--- a/engines/sword25/gfx/panel.cpp
+++ b/engines/sword25/gfx/panel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/panel.h b/engines/sword25/gfx/panel.h
index d372b4e0fc..5010cbaaf0 100644
--- a/engines/sword25/gfx/panel.h
+++ b/engines/sword25/gfx/panel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/renderobject.cpp b/engines/sword25/gfx/renderobject.cpp
index e9e11aae4e..c109e49aa8 100644
--- a/engines/sword25/gfx/renderobject.cpp
+++ b/engines/sword25/gfx/renderobject.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/renderobject.h b/engines/sword25/gfx/renderobject.h
index 7fcd3a87a3..8fde17e7a6 100644
--- a/engines/sword25/gfx/renderobject.h
+++ b/engines/sword25/gfx/renderobject.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/renderobjectmanager.cpp b/engines/sword25/gfx/renderobjectmanager.cpp
index bc7dd02636..4927b4c58e 100644
--- a/engines/sword25/gfx/renderobjectmanager.cpp
+++ b/engines/sword25/gfx/renderobjectmanager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/renderobjectmanager.h b/engines/sword25/gfx/renderobjectmanager.h
index 1db91dfbe6..c56e49aff9 100644
--- a/engines/sword25/gfx/renderobjectmanager.h
+++ b/engines/sword25/gfx/renderobjectmanager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/renderobjectptr.h b/engines/sword25/gfx/renderobjectptr.h
index 7b7f190a01..950fdcfb45 100644
--- a/engines/sword25/gfx/renderobjectptr.h
+++ b/engines/sword25/gfx/renderobjectptr.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/renderobjectregistry.h b/engines/sword25/gfx/renderobjectregistry.h
index 92d8c9b830..49ed4e7d5c 100644
--- a/engines/sword25/gfx/renderobjectregistry.h
+++ b/engines/sword25/gfx/renderobjectregistry.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/rootrenderobject.h b/engines/sword25/gfx/rootrenderobject.h
index f1b19d6bae..608af8f14c 100644
--- a/engines/sword25/gfx/rootrenderobject.h
+++ b/engines/sword25/gfx/rootrenderobject.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/screenshot.cpp b/engines/sword25/gfx/screenshot.cpp
index 7b56a6e9f3..4b4f967f29 100644
--- a/engines/sword25/gfx/screenshot.cpp
+++ b/engines/sword25/gfx/screenshot.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/screenshot.h b/engines/sword25/gfx/screenshot.h
index e2e2dfc7f5..fb37dfc9c0 100644
--- a/engines/sword25/gfx/screenshot.h
+++ b/engines/sword25/gfx/screenshot.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/staticbitmap.cpp b/engines/sword25/gfx/staticbitmap.cpp
index bb57fa3a03..14e2012d80 100644
--- a/engines/sword25/gfx/staticbitmap.cpp
+++ b/engines/sword25/gfx/staticbitmap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/staticbitmap.h b/engines/sword25/gfx/staticbitmap.h
index 90b92b4331..4ded60aec8 100644
--- a/engines/sword25/gfx/staticbitmap.h
+++ b/engines/sword25/gfx/staticbitmap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/text.cpp b/engines/sword25/gfx/text.cpp
index 8c33fa8d61..b0a9e4ed3f 100644
--- a/engines/sword25/gfx/text.cpp
+++ b/engines/sword25/gfx/text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/text.h b/engines/sword25/gfx/text.h
index 873eb33380..0187643659 100644
--- a/engines/sword25/gfx/text.h
+++ b/engines/sword25/gfx/text.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/timedrenderobject.cpp b/engines/sword25/gfx/timedrenderobject.cpp
index e35b0ae95b..bedde83781 100644
--- a/engines/sword25/gfx/timedrenderobject.cpp
+++ b/engines/sword25/gfx/timedrenderobject.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/gfx/timedrenderobject.h b/engines/sword25/gfx/timedrenderobject.h
index 44c3b40528..387cd21b42 100644
--- a/engines/sword25/gfx/timedrenderobject.h
+++ b/engines/sword25/gfx/timedrenderobject.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/input/inputengine.cpp b/engines/sword25/input/inputengine.cpp
index 0d1c449805..7157e7242f 100644
--- a/engines/sword25/input/inputengine.cpp
+++ b/engines/sword25/input/inputengine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/input/inputengine.h b/engines/sword25/input/inputengine.h
index f79890a9fd..c5ef40cc9e 100644
--- a/engines/sword25/input/inputengine.h
+++ b/engines/sword25/input/inputengine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/input/inputengine_script.cpp b/engines/sword25/input/inputengine_script.cpp
index db2619294c..17b0584c2c 100644
--- a/engines/sword25/input/inputengine_script.cpp
+++ b/engines/sword25/input/inputengine_script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/common.h b/engines/sword25/kernel/common.h
index 8cfc81e981..0fc6bf725e 100644
--- a/engines/sword25/kernel/common.h
+++ b/engines/sword25/kernel/common.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/filesystemutil.cpp b/engines/sword25/kernel/filesystemutil.cpp
index 281e7986df..a3e3081b8f 100644
--- a/engines/sword25/kernel/filesystemutil.cpp
+++ b/engines/sword25/kernel/filesystemutil.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/filesystemutil.h b/engines/sword25/kernel/filesystemutil.h
index bb100123d9..9c20de7696 100644
--- a/engines/sword25/kernel/filesystemutil.h
+++ b/engines/sword25/kernel/filesystemutil.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/inputpersistenceblock.cpp b/engines/sword25/kernel/inputpersistenceblock.cpp
index aa3a759756..c38f967506 100644
--- a/engines/sword25/kernel/inputpersistenceblock.cpp
+++ b/engines/sword25/kernel/inputpersistenceblock.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/inputpersistenceblock.h b/engines/sword25/kernel/inputpersistenceblock.h
index 02a944ff1b..bcda794a51 100644
--- a/engines/sword25/kernel/inputpersistenceblock.h
+++ b/engines/sword25/kernel/inputpersistenceblock.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/kernel.cpp b/engines/sword25/kernel/kernel.cpp
index d6388eee2b..cf972818d2 100644
--- a/engines/sword25/kernel/kernel.cpp
+++ b/engines/sword25/kernel/kernel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/kernel.h b/engines/sword25/kernel/kernel.h
index adf69f92d6..411d0cf3b2 100644
--- a/engines/sword25/kernel/kernel.h
+++ b/engines/sword25/kernel/kernel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/kernel_script.cpp b/engines/sword25/kernel/kernel_script.cpp
index 27a221d45f..1b7c6a6f14 100644
--- a/engines/sword25/kernel/kernel_script.cpp
+++ b/engines/sword25/kernel/kernel_script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/objectregistry.h b/engines/sword25/kernel/objectregistry.h
index 449b1b60a3..9491a2217c 100644
--- a/engines/sword25/kernel/objectregistry.h
+++ b/engines/sword25/kernel/objectregistry.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/outputpersistenceblock.cpp b/engines/sword25/kernel/outputpersistenceblock.cpp
index 53fb624767..9003b5d58a 100644
--- a/engines/sword25/kernel/outputpersistenceblock.cpp
+++ b/engines/sword25/kernel/outputpersistenceblock.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/outputpersistenceblock.h b/engines/sword25/kernel/outputpersistenceblock.h
index 17f018a106..c7d8dfc6aa 100644
--- a/engines/sword25/kernel/outputpersistenceblock.h
+++ b/engines/sword25/kernel/outputpersistenceblock.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/persistable.h b/engines/sword25/kernel/persistable.h
index 1807211847..8df2c45b2e 100644
--- a/engines/sword25/kernel/persistable.h
+++ b/engines/sword25/kernel/persistable.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/persistenceblock.h b/engines/sword25/kernel/persistenceblock.h
index 8ac3e84a41..a56c85770c 100644
--- a/engines/sword25/kernel/persistenceblock.h
+++ b/engines/sword25/kernel/persistenceblock.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/persistenceservice.cpp b/engines/sword25/kernel/persistenceservice.cpp
index df26da7800..fb83b7f941 100644
--- a/engines/sword25/kernel/persistenceservice.cpp
+++ b/engines/sword25/kernel/persistenceservice.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/persistenceservice.h b/engines/sword25/kernel/persistenceservice.h
index 59e0a3661d..bc73ae9f43 100644
--- a/engines/sword25/kernel/persistenceservice.h
+++ b/engines/sword25/kernel/persistenceservice.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/resmanager.cpp b/engines/sword25/kernel/resmanager.cpp
index cc3316250a..c0f94ae5c5 100644
--- a/engines/sword25/kernel/resmanager.cpp
+++ b/engines/sword25/kernel/resmanager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/resmanager.h b/engines/sword25/kernel/resmanager.h
index 6b95a45b6e..57a091295a 100644
--- a/engines/sword25/kernel/resmanager.h
+++ b/engines/sword25/kernel/resmanager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/resource.cpp b/engines/sword25/kernel/resource.cpp
index 656355cc17..e0d46a807b 100644
--- a/engines/sword25/kernel/resource.cpp
+++ b/engines/sword25/kernel/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/resource.h b/engines/sword25/kernel/resource.h
index 7c8175c9c9..41deb24d88 100644
--- a/engines/sword25/kernel/resource.h
+++ b/engines/sword25/kernel/resource.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/resservice.h b/engines/sword25/kernel/resservice.h
index 69b0688e32..11b0b824fb 100644
--- a/engines/sword25/kernel/resservice.h
+++ b/engines/sword25/kernel/resservice.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/kernel/service.h b/engines/sword25/kernel/service.h
index 576776bb5f..aa40563e06 100644
--- a/engines/sword25/kernel/service.h
+++ b/engines/sword25/kernel/service.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/geometry.h b/engines/sword25/math/geometry.h
index bdbd5b2052..1539a93a31 100644
--- a/engines/sword25/math/geometry.h
+++ b/engines/sword25/math/geometry.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/geometry_script.cpp b/engines/sword25/math/geometry_script.cpp
index 70798f7692..192a6adf54 100644
--- a/engines/sword25/math/geometry_script.cpp
+++ b/engines/sword25/math/geometry_script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/line.h b/engines/sword25/math/line.h
index 9eaa2d3c8c..9e2a50fac3 100644
--- a/engines/sword25/math/line.h
+++ b/engines/sword25/math/line.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/polygon.cpp b/engines/sword25/math/polygon.cpp
index 99d947df87..ccefa1901e 100644
--- a/engines/sword25/math/polygon.cpp
+++ b/engines/sword25/math/polygon.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/polygon.h b/engines/sword25/math/polygon.h
index f81e165621..3cb2286be1 100644
--- a/engines/sword25/math/polygon.h
+++ b/engines/sword25/math/polygon.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/region.cpp b/engines/sword25/math/region.cpp
index db888e432a..cf422af774 100644
--- a/engines/sword25/math/region.cpp
+++ b/engines/sword25/math/region.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/region.h b/engines/sword25/math/region.h
index 0fd7223631..a61c0c4c94 100644
--- a/engines/sword25/math/region.h
+++ b/engines/sword25/math/region.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/regionregistry.cpp b/engines/sword25/math/regionregistry.cpp
index e4925f7baf..35a5fb4b88 100644
--- a/engines/sword25/math/regionregistry.cpp
+++ b/engines/sword25/math/regionregistry.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/regionregistry.h b/engines/sword25/math/regionregistry.h
index 9e0a28bea7..04a96c52c7 100644
--- a/engines/sword25/math/regionregistry.h
+++ b/engines/sword25/math/regionregistry.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/vertex.cpp b/engines/sword25/math/vertex.cpp
index b486d35e7e..ed0baeeeb3 100644
--- a/engines/sword25/math/vertex.cpp
+++ b/engines/sword25/math/vertex.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/vertex.h b/engines/sword25/math/vertex.h
index 4cb0eaca30..89ad344f6a 100644
--- a/engines/sword25/math/vertex.h
+++ b/engines/sword25/math/vertex.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/walkregion.cpp b/engines/sword25/math/walkregion.cpp
index 0ba7e8ec3d..f7160317c6 100644
--- a/engines/sword25/math/walkregion.cpp
+++ b/engines/sword25/math/walkregion.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/math/walkregion.h b/engines/sword25/math/walkregion.h
index 7dded1980b..9a3b6e616b 100644
--- a/engines/sword25/math/walkregion.h
+++ b/engines/sword25/math/walkregion.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/package/packagemanager.cpp b/engines/sword25/package/packagemanager.cpp
index 5549f50c3c..2db4f2da74 100644
--- a/engines/sword25/package/packagemanager.cpp
+++ b/engines/sword25/package/packagemanager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/package/packagemanager.h b/engines/sword25/package/packagemanager.h
index b0c6718008..a1806a4046 100644
--- a/engines/sword25/package/packagemanager.h
+++ b/engines/sword25/package/packagemanager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/package/packagemanager_script.cpp b/engines/sword25/package/packagemanager_script.cpp
index 229ec37459..4e72ad1934 100644
--- a/engines/sword25/package/packagemanager_script.cpp
+++ b/engines/sword25/package/packagemanager_script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/script/lua_extensions.cpp b/engines/sword25/script/lua_extensions.cpp
index bf502d719e..3f828aee46 100644
--- a/engines/sword25/script/lua_extensions.cpp
+++ b/engines/sword25/script/lua_extensions.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/script/luabindhelper.cpp b/engines/sword25/script/luabindhelper.cpp
index 6900305f5c..1dd84bc36e 100644
--- a/engines/sword25/script/luabindhelper.cpp
+++ b/engines/sword25/script/luabindhelper.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/script/luabindhelper.h b/engines/sword25/script/luabindhelper.h
index 5223d4440e..85d6570b1b 100644
--- a/engines/sword25/script/luabindhelper.h
+++ b/engines/sword25/script/luabindhelper.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/script/luacallback.cpp b/engines/sword25/script/luacallback.cpp
index cee0531b8a..72f7e01612 100644
--- a/engines/sword25/script/luacallback.cpp
+++ b/engines/sword25/script/luacallback.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/script/luacallback.h b/engines/sword25/script/luacallback.h
index 796af8598b..fa5ba9c228 100644
--- a/engines/sword25/script/luacallback.h
+++ b/engines/sword25/script/luacallback.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/script/luascript.cpp b/engines/sword25/script/luascript.cpp
index 9d394309e6..f62a08005b 100644
--- a/engines/sword25/script/luascript.cpp
+++ b/engines/sword25/script/luascript.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/script/luascript.h b/engines/sword25/script/luascript.h
index 1a4a38c3be..a13a50749d 100644
--- a/engines/sword25/script/luascript.h
+++ b/engines/sword25/script/luascript.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/script/script.h b/engines/sword25/script/script.h
index 04f248fe7e..8f9c00a986 100644
--- a/engines/sword25/script/script.h
+++ b/engines/sword25/script/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/sfx/soundengine.cpp b/engines/sword25/sfx/soundengine.cpp
index 8ff1b0cf2a..4029b4e808 100644
--- a/engines/sword25/sfx/soundengine.cpp
+++ b/engines/sword25/sfx/soundengine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/sfx/soundengine.h b/engines/sword25/sfx/soundengine.h
index 8974ee69e5..1dd7ba0925 100644
--- a/engines/sword25/sfx/soundengine.h
+++ b/engines/sword25/sfx/soundengine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/sfx/soundengine_script.cpp b/engines/sword25/sfx/soundengine_script.cpp
index d7771967a3..48e71de66c 100644
--- a/engines/sword25/sfx/soundengine_script.cpp
+++ b/engines/sword25/sfx/soundengine_script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/sword25.cpp b/engines/sword25/sword25.cpp
index 2201188052..259deb2ea8 100644
--- a/engines/sword25/sword25.cpp
+++ b/engines/sword25/sword25.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/sword25.h b/engines/sword25/sword25.h
index 1254ea177b..72391cf9d8 100644
--- a/engines/sword25/sword25.h
+++ b/engines/sword25/sword25.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/util/lua/scummvm_file.cpp b/engines/sword25/util/lua/scummvm_file.cpp
index b5f1388129..c38aba004f 100644
--- a/engines/sword25/util/lua/scummvm_file.cpp
+++ b/engines/sword25/util/lua/scummvm_file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/sword25/util/lua/scummvm_file.h b/engines/sword25/util/lua/scummvm_file.h
index e8c468ee07..72d2690a4d 100644
--- a/engines/sword25/util/lua/scummvm_file.h
+++ b/engines/sword25/util/lua/scummvm_file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/teenagent/actor.cpp b/engines/teenagent/actor.cpp
index d65a367309..a4df43a5fe 100644
--- a/engines/teenagent/actor.cpp
+++ b/engines/teenagent/actor.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/actor.h"
diff --git a/engines/teenagent/actor.h b/engines/teenagent/actor.h
index 942397c636..33ed9e90d0 100644
--- a/engines/teenagent/actor.h
+++ b/engines/teenagent/actor.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/animation.h"
diff --git a/engines/teenagent/animation.cpp b/engines/teenagent/animation.cpp
index effafcaac6..5708c101ec 100644
--- a/engines/teenagent/animation.cpp
+++ b/engines/teenagent/animation.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/teenagent.h"
diff --git a/engines/teenagent/animation.h b/engines/teenagent/animation.h
index 9be21a4c3d..44b1312554 100644
--- a/engines/teenagent/animation.h
+++ b/engines/teenagent/animation.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_ANIMATION_H
diff --git a/engines/teenagent/callbacks.cpp b/engines/teenagent/callbacks.cpp
index 9fe9e68a76..74d3d7d56d 100644
--- a/engines/teenagent/callbacks.cpp
+++ b/engines/teenagent/callbacks.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/teenagent.h"
@@ -4623,7 +4624,7 @@ bool TeenAgentEngine::processCallback(uint16 addr) {
SET_FLAG(dsAddr_mansionVCRPlayedTapeBeforeFlag, 1);
}
} else
- displayMessage(dsAddr_tvOffMsg); // "I just realised that the TV is off"
+ displayMessage(dsAddr_tvOffMsg); // "I just realized that the TV is off"
} else {
SET_FLAG(dsAddr_mansionVCRPlayingTapeFlag, 0);
if (CHECK_FLAG(dsAddr_mansionTVOnFlag, 1)) {
diff --git a/engines/teenagent/console.cpp b/engines/teenagent/console.cpp
index 9ab6001d54..13d5c687ce 100644
--- a/engines/teenagent/console.cpp
+++ b/engines/teenagent/console.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/console.h"
diff --git a/engines/teenagent/console.h b/engines/teenagent/console.h
index 4dbdd3fc07..b569f98d8f 100644
--- a/engines/teenagent/console.h
+++ b/engines/teenagent/console.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_CONSOLE_H
diff --git a/engines/teenagent/detection.cpp b/engines/teenagent/detection.cpp
index f9f5d2f13a..7a53faf98a 100644
--- a/engines/teenagent/detection.cpp
+++ b/engines/teenagent/detection.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/system.h"
@@ -184,7 +185,7 @@ public:
};
#if PLUGIN_ENABLED_DYNAMIC(TEENAGENT)
-REGISTER_PLUGIN_DYNAMIC(TEENAGENT, PLUGIN_TYPE_ENGINE, TeenAgentMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(TEENAGENT, PLUGIN_TYPE_ENGINE, TeenAgentMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(TEENAGENT, PLUGIN_TYPE_ENGINE, TeenAgentMetaEngine);
+ REGISTER_PLUGIN_STATIC(TEENAGENT, PLUGIN_TYPE_ENGINE, TeenAgentMetaEngine);
#endif
diff --git a/engines/teenagent/dialog.cpp b/engines/teenagent/dialog.cpp
index 312757a462..0993c26961 100644
--- a/engines/teenagent/dialog.cpp
+++ b/engines/teenagent/dialog.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/dialog.h"
diff --git a/engines/teenagent/dialog.h b/engines/teenagent/dialog.h
index 6672ce7206..de67b999a2 100644
--- a/engines/teenagent/dialog.h
+++ b/engines/teenagent/dialog.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_DIALOG_H
diff --git a/engines/teenagent/font.cpp b/engines/teenagent/font.cpp
index 9d85328f20..ab75a45ba7 100644
--- a/engines/teenagent/font.cpp
+++ b/engines/teenagent/font.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/font.h"
diff --git a/engines/teenagent/font.h b/engines/teenagent/font.h
index a61f145fa6..65931f2084 100644
--- a/engines/teenagent/font.h
+++ b/engines/teenagent/font.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_FONT_H
diff --git a/engines/teenagent/inventory.cpp b/engines/teenagent/inventory.cpp
index 354371666c..e8544446dc 100644
--- a/engines/teenagent/inventory.cpp
+++ b/engines/teenagent/inventory.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/memstream.h"
diff --git a/engines/teenagent/inventory.h b/engines/teenagent/inventory.h
index d487848c2c..4a250987ba 100644
--- a/engines/teenagent/inventory.h
+++ b/engines/teenagent/inventory.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_INVENTORY_H
diff --git a/engines/teenagent/music.cpp b/engines/teenagent/music.cpp
index b06a5f1f5e..5d66c3c90c 100644
--- a/engines/teenagent/music.cpp
+++ b/engines/teenagent/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/teenagent/music.h b/engines/teenagent/music.h
index 408436cf3a..e1630cc845 100644
--- a/engines/teenagent/music.h
+++ b/engines/teenagent/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/teenagent/objects.cpp b/engines/teenagent/objects.cpp
index 5dad9ab99d..3197a715aa 100644
--- a/engines/teenagent/objects.cpp
+++ b/engines/teenagent/objects.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/debug.h"
diff --git a/engines/teenagent/objects.h b/engines/teenagent/objects.h
index 6e7955766f..f923ae52ab 100644
--- a/engines/teenagent/objects.h
+++ b/engines/teenagent/objects.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/teenagent/pack.cpp b/engines/teenagent/pack.cpp
index 2e6c913a72..cbf2bfd89e 100644
--- a/engines/teenagent/pack.cpp
+++ b/engines/teenagent/pack.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/pack.h"
diff --git a/engines/teenagent/pack.h b/engines/teenagent/pack.h
index 1d6c471554..3607bae91d 100644
--- a/engines/teenagent/pack.h
+++ b/engines/teenagent/pack.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
diff --git a/engines/teenagent/resources.cpp b/engines/teenagent/resources.cpp
index cdbdcf9655..8d8f705a24 100644
--- a/engines/teenagent/resources.cpp
+++ b/engines/teenagent/resources.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/resources.h"
diff --git a/engines/teenagent/resources.h b/engines/teenagent/resources.h
index 7aae2f9ec8..2cdc070a87 100644
--- a/engines/teenagent/resources.h
+++ b/engines/teenagent/resources.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_RESOURCES_H
@@ -494,7 +495,7 @@ const uint16 dsAddr_noDepraveMsg = 0x4d02; // "Nah, I don't want to deprave the
// No Read Again Message : 0x4d2a to 0x4d5a
const uint16 dsAddr_noReadAgainMsg = 0x4d2a; // "I don't want to read it again. I might like it."
// TV Off Message : 0x4d5b to 0x4d7f
-const uint16 dsAddr_tvOffMsg = 0x4d5b; // "I just realised that the TV is off"
+const uint16 dsAddr_tvOffMsg = 0x4d5b; // "I just realized that the TV is off"
// Not Happen Message : 0x4d80 to 0x4d92
const uint16 dsAddr_NotHappenMsg = 0x4d80; // "Nothing happened"
// Tape Started Message : 0x4d93 to 0x4da5
diff --git a/engines/teenagent/scene.cpp b/engines/teenagent/scene.cpp
index f36a60932c..6e1cef31bc 100644
--- a/engines/teenagent/scene.cpp
+++ b/engines/teenagent/scene.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/config-manager.h"
diff --git a/engines/teenagent/scene.h b/engines/teenagent/scene.h
index 14aefa0cca..07b304ed97 100644
--- a/engines/teenagent/scene.h
+++ b/engines/teenagent/scene.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_SCENE_H
diff --git a/engines/teenagent/segment.cpp b/engines/teenagent/segment.cpp
index cb17190da7..0e7659d680 100644
--- a/engines/teenagent/segment.cpp
+++ b/engines/teenagent/segment.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/segment.h"
diff --git a/engines/teenagent/segment.h b/engines/teenagent/segment.h
index 286337d120..14ccb24894 100644
--- a/engines/teenagent/segment.h
+++ b/engines/teenagent/segment.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_SEGMENT_H
diff --git a/engines/teenagent/surface.cpp b/engines/teenagent/surface.cpp
index 4db25bc749..748874a4c5 100644
--- a/engines/teenagent/surface.cpp
+++ b/engines/teenagent/surface.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/surface.h"
diff --git a/engines/teenagent/surface.h b/engines/teenagent/surface.h
index 3e591ed3e0..35850cf3aa 100644
--- a/engines/teenagent/surface.h
+++ b/engines/teenagent/surface.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_SURFACE_H
diff --git a/engines/teenagent/surface_list.cpp b/engines/teenagent/surface_list.cpp
index e293ce6470..444d927294 100644
--- a/engines/teenagent/surface_list.cpp
+++ b/engines/teenagent/surface_list.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "teenagent/surface_list.h"
diff --git a/engines/teenagent/surface_list.h b/engines/teenagent/surface_list.h
index 73a41fb5f8..2cca7849df 100644
--- a/engines/teenagent/surface_list.h
+++ b/engines/teenagent/surface_list.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_SURFACE_LIST_H__
diff --git a/engines/teenagent/teenagent.cpp b/engines/teenagent/teenagent.cpp
index e73f1100d6..d5a8b8e2dc 100644
--- a/engines/teenagent/teenagent.cpp
+++ b/engines/teenagent/teenagent.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/config-manager.h"
diff --git a/engines/teenagent/teenagent.h b/engines/teenagent/teenagent.h
index 3c3bc25e56..a06f8dbf9b 100644
--- a/engines/teenagent/teenagent.h
+++ b/engines/teenagent/teenagent.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TEENAGENT_ENGINE_H
diff --git a/engines/testbed/config-params.cpp b/engines/testbed/config-params.cpp
index 47e5dfa933..1aa97168c1 100644
--- a/engines/testbed/config-params.cpp
+++ b/engines/testbed/config-params.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/config-manager.h"
diff --git a/engines/testbed/config-params.h b/engines/testbed/config-params.h
index 6906d9248e..89aae199b6 100644
--- a/engines/testbed/config-params.h
+++ b/engines/testbed/config-params.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_CONFIG_PARAMS_H
diff --git a/engines/testbed/config.cpp b/engines/testbed/config.cpp
index a40d239ebf..efc0d30221 100644
--- a/engines/testbed/config.cpp
+++ b/engines/testbed/config.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/stream.h"
diff --git a/engines/testbed/config.h b/engines/testbed/config.h
index 7d479a74fd..db687de261 100644
--- a/engines/testbed/config.h
+++ b/engines/testbed/config.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_CONFIG_H
diff --git a/engines/testbed/detection.cpp b/engines/testbed/detection.cpp
index fd426d3e98..348ade62b0 100644
--- a/engines/testbed/detection.cpp
+++ b/engines/testbed/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/testbed/events.cpp b/engines/testbed/events.cpp
index 4b9ced2a53..3e1b6adf9e 100644
--- a/engines/testbed/events.cpp
+++ b/engines/testbed/events.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/events.h"
diff --git a/engines/testbed/events.h b/engines/testbed/events.h
index 00a659bd33..f8883ec1d8 100644
--- a/engines/testbed/events.h
+++ b/engines/testbed/events.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_EVENTS_H
diff --git a/engines/testbed/fs.cpp b/engines/testbed/fs.cpp
index 62ac616192..07b1c0f2af 100644
--- a/engines/testbed/fs.cpp
+++ b/engines/testbed/fs.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/config-manager.h"
diff --git a/engines/testbed/fs.h b/engines/testbed/fs.h
index 1cb7b3a871..966f138d71 100644
--- a/engines/testbed/fs.h
+++ b/engines/testbed/fs.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_FS_H
diff --git a/engines/testbed/graphics.cpp b/engines/testbed/graphics.cpp
index 26e073d407..43580104e7 100644
--- a/engines/testbed/graphics.cpp
+++ b/engines/testbed/graphics.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/events.h"
diff --git a/engines/testbed/graphics.h b/engines/testbed/graphics.h
index f3013fdf53..139eeb97dd 100644
--- a/engines/testbed/graphics.h
+++ b/engines/testbed/graphics.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_GRAPHICS_H
diff --git a/engines/testbed/midi.cpp b/engines/testbed/midi.cpp
index 33fab03a5e..daa5f1cf3c 100644
--- a/engines/testbed/midi.cpp
+++ b/engines/testbed/midi.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/archive.h"
diff --git a/engines/testbed/midi.h b/engines/testbed/midi.h
index 02550a6eb2..b9f3e82abd 100644
--- a/engines/testbed/midi.h
+++ b/engines/testbed/midi.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_MIDI_H
diff --git a/engines/testbed/misc.cpp b/engines/testbed/misc.cpp
index aee3ccd294..5847a8d2e4 100644
--- a/engines/testbed/misc.cpp
+++ b/engines/testbed/misc.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "testbed/misc.h"
diff --git a/engines/testbed/misc.h b/engines/testbed/misc.h
index 3f0772c6e5..23e303d676 100644
--- a/engines/testbed/misc.h
+++ b/engines/testbed/misc.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_MISC_H
diff --git a/engines/testbed/savegame.cpp b/engines/testbed/savegame.cpp
index 226e9880a6..e426b9717d 100644
--- a/engines/testbed/savegame.cpp
+++ b/engines/testbed/savegame.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/savefile.h"
diff --git a/engines/testbed/savegame.h b/engines/testbed/savegame.h
index 2c9ec83470..b242ee5f3b 100644
--- a/engines/testbed/savegame.h
+++ b/engines/testbed/savegame.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_SAVEGAME_H
diff --git a/engines/testbed/sound.cpp b/engines/testbed/sound.cpp
index 5af1d8ca31..aebd981826 100644
--- a/engines/testbed/sound.cpp
+++ b/engines/testbed/sound.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "audio/softsynth/pcspk.h"
diff --git a/engines/testbed/sound.h b/engines/testbed/sound.h
index fea7d9d45b..893a89b175 100644
--- a/engines/testbed/sound.h
+++ b/engines/testbed/sound.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_SOUND_H
diff --git a/engines/testbed/template.h b/engines/testbed/template.h
index 847777f34b..9e6c347e4d 100644
--- a/engines/testbed/template.h
+++ b/engines/testbed/template.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_TEMPLATE_H
diff --git a/engines/testbed/testbed.cpp b/engines/testbed/testbed.cpp
index 152764eb27..635fd09bac 100644
--- a/engines/testbed/testbed.cpp
+++ b/engines/testbed/testbed.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/debug-channels.h"
diff --git a/engines/testbed/testbed.h b/engines/testbed/testbed.h
index 6933efa0f0..0f70e1191f 100644
--- a/engines/testbed/testbed.h
+++ b/engines/testbed/testbed.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_H
diff --git a/engines/testbed/testsuite.cpp b/engines/testbed/testsuite.cpp
index 39eeca31bd..7729c4911b 100644
--- a/engines/testbed/testsuite.cpp
+++ b/engines/testbed/testsuite.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/config-manager.h"
diff --git a/engines/testbed/testsuite.h b/engines/testbed/testsuite.h
index dc159ce25f..4f2a23c8bd 100644
--- a/engines/testbed/testsuite.h
+++ b/engines/testbed/testsuite.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef TESTBED_TESTSUITE_H
diff --git a/engines/tinsel/actors.cpp b/engines/tinsel/actors.cpp
index 531a8e3d12..1440fb3556 100644
--- a/engines/tinsel/actors.cpp
+++ b/engines/tinsel/actors.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/actors.h b/engines/tinsel/actors.h
index 6ebe32505a..4d82e14f6a 100644
--- a/engines/tinsel/actors.h
+++ b/engines/tinsel/actors.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/adpcm.cpp b/engines/tinsel/adpcm.cpp
index ca3150ca3d..9de3dff341 100644
--- a/engines/tinsel/adpcm.cpp
+++ b/engines/tinsel/adpcm.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/adpcm.h b/engines/tinsel/adpcm.h
index 3e899d94c3..b63e8dcfa7 100644
--- a/engines/tinsel/adpcm.h
+++ b/engines/tinsel/adpcm.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/anim.cpp b/engines/tinsel/anim.cpp
index a1ec02186c..19e180b57e 100644
--- a/engines/tinsel/anim.cpp
+++ b/engines/tinsel/anim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/anim.h b/engines/tinsel/anim.h
index 0c60cf84d4..0c0d5e18ae 100644
--- a/engines/tinsel/anim.h
+++ b/engines/tinsel/anim.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/background.cpp b/engines/tinsel/background.cpp
index 8e3fc50f12..7913548ed1 100644
--- a/engines/tinsel/background.cpp
+++ b/engines/tinsel/background.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/background.h b/engines/tinsel/background.h
index cfa3998eda..418413e200 100644
--- a/engines/tinsel/background.h
+++ b/engines/tinsel/background.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/bg.cpp b/engines/tinsel/bg.cpp
index 9f1f2c43f4..a702568164 100644
--- a/engines/tinsel/bg.cpp
+++ b/engines/tinsel/bg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/bmv.cpp b/engines/tinsel/bmv.cpp
index fa66b7ad8e..f28cd684f9 100644
--- a/engines/tinsel/bmv.cpp
+++ b/engines/tinsel/bmv.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/bmv.h b/engines/tinsel/bmv.h
index fa254ed26d..e52297f9de 100644
--- a/engines/tinsel/bmv.h
+++ b/engines/tinsel/bmv.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/cliprect.cpp b/engines/tinsel/cliprect.cpp
index 76feede83f..6212a1491e 100644
--- a/engines/tinsel/cliprect.cpp
+++ b/engines/tinsel/cliprect.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/cliprect.h b/engines/tinsel/cliprect.h
index 101289b837..f55542a170 100644
--- a/engines/tinsel/cliprect.h
+++ b/engines/tinsel/cliprect.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/config.cpp b/engines/tinsel/config.cpp
index 050573028a..bd5929f6ef 100644
--- a/engines/tinsel/config.cpp
+++ b/engines/tinsel/config.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/config.h b/engines/tinsel/config.h
index 8b6b675766..4f3168622a 100644
--- a/engines/tinsel/config.h
+++ b/engines/tinsel/config.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/cursor.cpp b/engines/tinsel/cursor.cpp
index a83e7cd9ca..e69031d572 100644
--- a/engines/tinsel/cursor.cpp
+++ b/engines/tinsel/cursor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/cursor.h b/engines/tinsel/cursor.h
index 4e32aa3a19..997d7ae479 100644
--- a/engines/tinsel/cursor.h
+++ b/engines/tinsel/cursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/debugger.cpp b/engines/tinsel/debugger.cpp
index 1261326032..45e3a05903 100644
--- a/engines/tinsel/debugger.cpp
+++ b/engines/tinsel/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/debugger.h b/engines/tinsel/debugger.h
index ff4ccd519f..7e01c51641 100644
--- a/engines/tinsel/debugger.h
+++ b/engines/tinsel/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/detection.cpp b/engines/tinsel/detection.cpp
index a7ba8b28cb..c7a62dacad 100644
--- a/engines/tinsel/detection.cpp
+++ b/engines/tinsel/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/detection_tables.h b/engines/tinsel/detection_tables.h
index 6e83fce3b1..a2ea67b3e6 100644
--- a/engines/tinsel/detection_tables.h
+++ b/engines/tinsel/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/dialogs.cpp b/engines/tinsel/dialogs.cpp
index e6229ff3a0..a84dad942c 100644
--- a/engines/tinsel/dialogs.cpp
+++ b/engines/tinsel/dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/dialogs.h b/engines/tinsel/dialogs.h
index ab53ba771c..47f831869f 100644
--- a/engines/tinsel/dialogs.h
+++ b/engines/tinsel/dialogs.h
@@ -9,12 +9,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/drives.cpp b/engines/tinsel/drives.cpp
index 3ecef83753..1ed659040d 100644
--- a/engines/tinsel/drives.cpp
+++ b/engines/tinsel/drives.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/drives.h b/engines/tinsel/drives.h
index 9e97b92fa5..5b80505345 100644
--- a/engines/tinsel/drives.h
+++ b/engines/tinsel/drives.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/dw.h b/engines/tinsel/dw.h
index 34f05ab8c2..b0619ad5ad 100644
--- a/engines/tinsel/dw.h
+++ b/engines/tinsel/dw.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/effect.cpp b/engines/tinsel/effect.cpp
index f5adb63c2b..11e849e101 100644
--- a/engines/tinsel/effect.cpp
+++ b/engines/tinsel/effect.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/events.cpp b/engines/tinsel/events.cpp
index 61d3903f1a..07d3c512b4 100644
--- a/engines/tinsel/events.cpp
+++ b/engines/tinsel/events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/events.h b/engines/tinsel/events.h
index 51669e4680..cfc52c11c0 100644
--- a/engines/tinsel/events.h
+++ b/engines/tinsel/events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/faders.cpp b/engines/tinsel/faders.cpp
index b51b1d6d4f..0a28ea1460 100644
--- a/engines/tinsel/faders.cpp
+++ b/engines/tinsel/faders.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/faders.h b/engines/tinsel/faders.h
index f7db902fe5..cb1bb3aa14 100644
--- a/engines/tinsel/faders.h
+++ b/engines/tinsel/faders.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/film.h b/engines/tinsel/film.h
index edb8dc268d..f5f48f3067 100644
--- a/engines/tinsel/film.h
+++ b/engines/tinsel/film.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/font.cpp b/engines/tinsel/font.cpp
index 3dba56468b..076bfa8e23 100644
--- a/engines/tinsel/font.cpp
+++ b/engines/tinsel/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/font.h b/engines/tinsel/font.h
index 83bc12354e..d9e25bea2e 100644
--- a/engines/tinsel/font.h
+++ b/engines/tinsel/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/graphics.cpp b/engines/tinsel/graphics.cpp
index c4f341f6fe..0282aff3cb 100644
--- a/engines/tinsel/graphics.cpp
+++ b/engines/tinsel/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/graphics.h b/engines/tinsel/graphics.h
index d34f069f6a..b2144247c2 100644
--- a/engines/tinsel/graphics.h
+++ b/engines/tinsel/graphics.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/handle.cpp b/engines/tinsel/handle.cpp
index 104adf72a2..62d244e449 100644
--- a/engines/tinsel/handle.cpp
+++ b/engines/tinsel/handle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/handle.h b/engines/tinsel/handle.h
index e681bfc131..ccc8f0f9db 100644
--- a/engines/tinsel/handle.h
+++ b/engines/tinsel/handle.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/heapmem.cpp b/engines/tinsel/heapmem.cpp
index 597cc69e66..82fc3fd11a 100644
--- a/engines/tinsel/heapmem.cpp
+++ b/engines/tinsel/heapmem.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/heapmem.h b/engines/tinsel/heapmem.h
index 7b29a3ecce..2be405d9d7 100644
--- a/engines/tinsel/heapmem.h
+++ b/engines/tinsel/heapmem.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/mareels.cpp b/engines/tinsel/mareels.cpp
index 7dd905d0f2..d906709f32 100644
--- a/engines/tinsel/mareels.cpp
+++ b/engines/tinsel/mareels.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/mareels.h b/engines/tinsel/mareels.h
index 2ff5ca906e..3ef1cd43ea 100644
--- a/engines/tinsel/mareels.h
+++ b/engines/tinsel/mareels.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/move.cpp b/engines/tinsel/move.cpp
index 275b6006f5..32a953b1a2 100644
--- a/engines/tinsel/move.cpp
+++ b/engines/tinsel/move.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/move.h b/engines/tinsel/move.h
index a307e5c081..7fb284baed 100644
--- a/engines/tinsel/move.h
+++ b/engines/tinsel/move.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/multiobj.cpp b/engines/tinsel/multiobj.cpp
index 37769a7819..75894aea89 100644
--- a/engines/tinsel/multiobj.cpp
+++ b/engines/tinsel/multiobj.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/multiobj.h b/engines/tinsel/multiobj.h
index a0f977553a..9968bf3c37 100644
--- a/engines/tinsel/multiobj.h
+++ b/engines/tinsel/multiobj.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/music.cpp b/engines/tinsel/music.cpp
index bf7257f876..8a7305f63b 100644
--- a/engines/tinsel/music.cpp
+++ b/engines/tinsel/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/music.h b/engines/tinsel/music.h
index 121bf3d79b..0a78c39a76 100644
--- a/engines/tinsel/music.h
+++ b/engines/tinsel/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/object.cpp b/engines/tinsel/object.cpp
index b70b581bbe..caf41ab81c 100644
--- a/engines/tinsel/object.cpp
+++ b/engines/tinsel/object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/object.h b/engines/tinsel/object.h
index 5644ddf19c..0b6efc3356 100644
--- a/engines/tinsel/object.h
+++ b/engines/tinsel/object.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/palette.cpp b/engines/tinsel/palette.cpp
index b72d52cc8d..918894cf6f 100644
--- a/engines/tinsel/palette.cpp
+++ b/engines/tinsel/palette.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/palette.h b/engines/tinsel/palette.h
index c57b8df2ba..a91a432149 100644
--- a/engines/tinsel/palette.h
+++ b/engines/tinsel/palette.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/pcode.cpp b/engines/tinsel/pcode.cpp
index 7e439e83a9..dc19f39405 100644
--- a/engines/tinsel/pcode.cpp
+++ b/engines/tinsel/pcode.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/pcode.h b/engines/tinsel/pcode.h
index 4980fc6ed9..46ba2b10f3 100644
--- a/engines/tinsel/pcode.h
+++ b/engines/tinsel/pcode.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/pdisplay.cpp b/engines/tinsel/pdisplay.cpp
index b821c5dee2..545403573d 100644
--- a/engines/tinsel/pdisplay.cpp
+++ b/engines/tinsel/pdisplay.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/pdisplay.h b/engines/tinsel/pdisplay.h
index aefaf015bd..f02ef928f3 100644
--- a/engines/tinsel/pdisplay.h
+++ b/engines/tinsel/pdisplay.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/pid.h b/engines/tinsel/pid.h
index 4f63045cb4..6c9d7ee7e4 100644
--- a/engines/tinsel/pid.h
+++ b/engines/tinsel/pid.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/play.cpp b/engines/tinsel/play.cpp
index e202278953..ef3127233d 100644
--- a/engines/tinsel/play.cpp
+++ b/engines/tinsel/play.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/play.h b/engines/tinsel/play.h
index fffa8a9329..01bb10bf21 100644
--- a/engines/tinsel/play.h
+++ b/engines/tinsel/play.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/polygons.cpp b/engines/tinsel/polygons.cpp
index 8a984c78f9..767c0b442f 100644
--- a/engines/tinsel/polygons.cpp
+++ b/engines/tinsel/polygons.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/polygons.h b/engines/tinsel/polygons.h
index 6d36d555d8..763f009805 100644
--- a/engines/tinsel/polygons.h
+++ b/engines/tinsel/polygons.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/rince.cpp b/engines/tinsel/rince.cpp
index 49666c13ca..8ed65af3e4 100644
--- a/engines/tinsel/rince.cpp
+++ b/engines/tinsel/rince.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/rince.h b/engines/tinsel/rince.h
index 623f3ee137..db59012a57 100644
--- a/engines/tinsel/rince.h
+++ b/engines/tinsel/rince.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/saveload.cpp b/engines/tinsel/saveload.cpp
index acff196916..88cd80b78a 100644
--- a/engines/tinsel/saveload.cpp
+++ b/engines/tinsel/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/savescn.cpp b/engines/tinsel/savescn.cpp
index d2537169f7..32ec774575 100644
--- a/engines/tinsel/savescn.cpp
+++ b/engines/tinsel/savescn.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/savescn.h b/engines/tinsel/savescn.h
index 894af0d6b8..b4f74b173a 100644
--- a/engines/tinsel/savescn.h
+++ b/engines/tinsel/savescn.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/scene.cpp b/engines/tinsel/scene.cpp
index 6b6f4a5cd3..49a854045d 100644
--- a/engines/tinsel/scene.cpp
+++ b/engines/tinsel/scene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/scene.h b/engines/tinsel/scene.h
index 06e5c096d9..27aecaa132 100644
--- a/engines/tinsel/scene.h
+++ b/engines/tinsel/scene.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/sched.cpp b/engines/tinsel/sched.cpp
index a73b4b9b97..894ffb7f5b 100644
--- a/engines/tinsel/sched.cpp
+++ b/engines/tinsel/sched.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/sched.h b/engines/tinsel/sched.h
index 3e791cecd8..da06c545bf 100644
--- a/engines/tinsel/sched.h
+++ b/engines/tinsel/sched.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/scn.cpp b/engines/tinsel/scn.cpp
index 70093447ff..db14af27e2 100644
--- a/engines/tinsel/scn.cpp
+++ b/engines/tinsel/scn.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/scn.h b/engines/tinsel/scn.h
index 2e3a02cdda..12253d70b2 100644
--- a/engines/tinsel/scn.h
+++ b/engines/tinsel/scn.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/scroll.cpp b/engines/tinsel/scroll.cpp
index 0a6a281d35..eafb238ec0 100644
--- a/engines/tinsel/scroll.cpp
+++ b/engines/tinsel/scroll.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/scroll.h b/engines/tinsel/scroll.h
index bcdc15cda6..4d3f85dd0f 100644
--- a/engines/tinsel/scroll.h
+++ b/engines/tinsel/scroll.h
@@ -8,7 +8,7 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
diff --git a/engines/tinsel/sound.cpp b/engines/tinsel/sound.cpp
index 416ee74127..3d87a17331 100644
--- a/engines/tinsel/sound.cpp
+++ b/engines/tinsel/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/sound.h b/engines/tinsel/sound.h
index c68d9cb71e..6255d7ffe8 100644
--- a/engines/tinsel/sound.h
+++ b/engines/tinsel/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/strres.cpp b/engines/tinsel/strres.cpp
index 19a1ee94d6..6ad01a0d35 100644
--- a/engines/tinsel/strres.cpp
+++ b/engines/tinsel/strres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/strres.h b/engines/tinsel/strres.h
index 772896c81f..56d5273153 100644
--- a/engines/tinsel/strres.h
+++ b/engines/tinsel/strres.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/sysvar.cpp b/engines/tinsel/sysvar.cpp
index 6ef4f165ab..6244c5c4d5 100644
--- a/engines/tinsel/sysvar.cpp
+++ b/engines/tinsel/sysvar.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/sysvar.h b/engines/tinsel/sysvar.h
index 65bf558433..49391cc5cf 100644
--- a/engines/tinsel/sysvar.h
+++ b/engines/tinsel/sysvar.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/text.cpp b/engines/tinsel/text.cpp
index 150eb2bdde..1c114fffa1 100644
--- a/engines/tinsel/text.cpp
+++ b/engines/tinsel/text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/text.h b/engines/tinsel/text.h
index 97e82c7a93..5d39540d8f 100644
--- a/engines/tinsel/text.h
+++ b/engines/tinsel/text.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/timers.cpp b/engines/tinsel/timers.cpp
index 36986ccb47..d4b20f4bfb 100644
--- a/engines/tinsel/timers.cpp
+++ b/engines/tinsel/timers.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/timers.h b/engines/tinsel/timers.h
index 9bf85d9c35..67019bfea3 100644
--- a/engines/tinsel/timers.h
+++ b/engines/tinsel/timers.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/tinlib.cpp b/engines/tinsel/tinlib.cpp
index 34aa64a609..0bc83868de 100644
--- a/engines/tinsel/tinlib.cpp
+++ b/engines/tinsel/tinlib.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/tinlib.h b/engines/tinsel/tinlib.h
index 7c8c2ffbf6..c1f2269a03 100644
--- a/engines/tinsel/tinlib.h
+++ b/engines/tinsel/tinlib.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/tinsel.cpp b/engines/tinsel/tinsel.cpp
index 5ba3c5e80a..31610a8467 100644
--- a/engines/tinsel/tinsel.cpp
+++ b/engines/tinsel/tinsel.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/tinsel.h b/engines/tinsel/tinsel.h
index efa9355dd5..c83bc80ead 100644
--- a/engines/tinsel/tinsel.h
+++ b/engines/tinsel/tinsel.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/token.cpp b/engines/tinsel/token.cpp
index 080c005c3c..1e4efe7445 100644
--- a/engines/tinsel/token.cpp
+++ b/engines/tinsel/token.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tinsel/token.h b/engines/tinsel/token.h
index 8169ef1c7a..7aa8f327b6 100644
--- a/engines/tinsel/token.h
+++ b/engines/tinsel/token.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toltecs/animation.cpp b/engines/toltecs/animation.cpp
index 084332cf83..1f776bbc02 100644
--- a/engines/toltecs/animation.cpp
+++ b/engines/toltecs/animation.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "toltecs/toltecs.h"
diff --git a/engines/toltecs/animation.h b/engines/toltecs/animation.h
index 54ec5d8afa..728142cacb 100644
--- a/engines/toltecs/animation.h
+++ b/engines/toltecs/animation.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_ANIMATION_H
diff --git a/engines/toltecs/console.cpp b/engines/toltecs/console.cpp
index f3394909ed..f84a8e3c44 100644
--- a/engines/toltecs/console.cpp
+++ b/engines/toltecs/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toltecs/console.h b/engines/toltecs/console.h
index bcdfd0cf04..5e786d527e 100644
--- a/engines/toltecs/console.h
+++ b/engines/toltecs/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toltecs/detection.cpp b/engines/toltecs/detection.cpp
index 380f4a3a26..b6c7ad3d2b 100644
--- a/engines/toltecs/detection.cpp
+++ b/engines/toltecs/detection.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "base/plugins.h"
@@ -256,7 +255,7 @@ SaveStateList ToltecsMetaEngine::listSaves(const char *target) const {
Common::sort(filenames.begin(), filenames.end()); // Sort (hopefully ensuring we are sorted numerically..)
SaveStateList saveList;
- for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); file++) {
+ for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); ++file) {
// Obtain the last 3 digits of the filename, since they correspond to the save slot
int slotNum = atoi(file->c_str() + file->size() - 3);
diff --git a/engines/toltecs/menu.cpp b/engines/toltecs/menu.cpp
index 0850630c43..a58771433e 100644
--- a/engines/toltecs/menu.cpp
+++ b/engines/toltecs/menu.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "audio/mixer.h"
@@ -196,7 +195,7 @@ void MenuSystem::handleKeyDown(const Common::KeyState& kbd) {
}
ItemID MenuSystem::findItemAt(int x, int y) {
- for (Common::Array<Item>::iterator iter = _items.begin(); iter != _items.end(); iter++) {
+ for (Common::Array<Item>::iterator iter = _items.begin(); iter != _items.end(); ++iter) {
if ((*iter).enabled && (*iter).rect.contains(x, y - _top))
return (*iter).id;
}
@@ -204,7 +203,7 @@ ItemID MenuSystem::findItemAt(int x, int y) {
}
MenuSystem::Item *MenuSystem::getItem(ItemID id) {
- for (Common::Array<Item>::iterator iter = _items.begin(); iter != _items.end(); iter++) {
+ for (Common::Array<Item>::iterator iter = _items.begin(); iter != _items.end(); ++iter) {
if ((*iter).id == id)
return &(*iter);
}
@@ -225,8 +224,6 @@ void MenuSystem::setItemCaption(Item *item, const char *caption) {
}
void MenuSystem::initMenu(MenuID menuID) {
- int newSlotNum;
-
_items.clear();
memcpy(_vm->_screen->_frontScreen, _background->getPixels(), 640 * 400);
@@ -277,7 +274,7 @@ void MenuSystem::initMenu(MenuID menuID) {
Common::String saveDesc = Common::String::format("SAVEGAME %d", i);
addClickTextItem((ItemID)(kItemIdSavegame1 + i - 1), 0, 116 + 20 * (i - 1), 300, 0, saveDesc.c_str(), 231, 234);
}
- newSlotNum = loadSavegamesList() + 1;
+ int newSlotNum = loadSavegamesList() + 1;
_savegames.push_back(SavegameItem(newSlotNum, Common::String::format("GAME %04d", _savegames.size())));
setSavegameCaptions(true);
} else {
@@ -324,7 +321,7 @@ void MenuSystem::initMenu(MenuID menuID) {
break;
}
- for (Common::Array<Item>::iterator iter = _items.begin(); iter != _items.end(); iter++) {
+ for (Common::Array<Item>::iterator iter = _items.begin(); iter != _items.end(); ++iter) {
if ((*iter).enabled)
drawItem((*iter).id, false);
}
@@ -509,7 +506,7 @@ int MenuSystem::loadSavegamesList() {
filenames = saveFileMan->listSavefiles(pattern.c_str());
Common::sort(filenames.begin(), filenames.end()); // Sort (hopefully ensuring we are sorted numerically..)
- for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); file++) {
+ for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); ++file) {
// Obtain the last 3 digits of the filename, since they correspond to the save slot
int slotNum = atoi(file->c_str() + file->size() - 3);
if (slotNum > maxSlotNum)
diff --git a/engines/toltecs/menu.h b/engines/toltecs/menu.h
index a5eca7c8ff..476eefe142 100644
--- a/engines/toltecs/menu.h
+++ b/engines/toltecs/menu.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_MENU_H
diff --git a/engines/toltecs/microtiles.cpp b/engines/toltecs/microtiles.cpp
index 9181480351..0ac04905cb 100644
--- a/engines/toltecs/microtiles.cpp
+++ b/engines/toltecs/microtiles.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "toltecs/microtiles.h"
@@ -119,10 +118,7 @@ Common::Rect * MicroTileArray::getRectangles(int *num_rects, int min_x, int min_
for (y = 0; y < _tilesH; ++y) {
for (x = 0; x < _tilesW; ++x) {
- int finish = 0;
- BoundingBox boundingBox;
-
- boundingBox = _tiles[i];
+ BoundingBox boundingBox = _tiles[i];
if (isBoundingBoxEmpty(boundingBox)) {
++i;
@@ -140,6 +136,7 @@ Common::Rect * MicroTileArray::getRectangles(int *num_rects, int min_x, int min_
// FIXME: Why is the following code in an #if block?
#if 1
if (TileX1(boundingBox) == TileSize - 1 && x != _tilesW - 1) { // check if the tile continues
+ bool finish = false;
while (!finish) {
++x;
++i;
@@ -151,13 +148,12 @@ Common::Rect * MicroTileArray::getRectangles(int *num_rects, int min_x, int min_
{
--x;
--i;
- finish = 1;
+ finish = true;
}
}
}
#endif
x1 = (x * TileSize) + TileX1(_tiles[i]);
-
x1 = CLIP (x1, min_x, max_x);
// FIXME: Why is the following code in an #if block?
diff --git a/engines/toltecs/microtiles.h b/engines/toltecs/microtiles.h
index 53933621a9..3714887fd7 100644
--- a/engines/toltecs/microtiles.h
+++ b/engines/toltecs/microtiles.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_MICROTILES_H
diff --git a/engines/toltecs/movie.cpp b/engines/toltecs/movie.cpp
index 341da7e5f3..0aa0a99a36 100644
--- a/engines/toltecs/movie.cpp
+++ b/engines/toltecs/movie.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "audio/mixer.h"
diff --git a/engines/toltecs/movie.h b/engines/toltecs/movie.h
index aa28c83fef..9404e5f639 100644
--- a/engines/toltecs/movie.h
+++ b/engines/toltecs/movie.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_MOVIE_H
diff --git a/engines/toltecs/music.cpp b/engines/toltecs/music.cpp
index 830e4a97da..e4e067de39 100644
--- a/engines/toltecs/music.cpp
+++ b/engines/toltecs/music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toltecs/music.h b/engines/toltecs/music.h
index 8d364dbb9f..e6dc3dd146 100644
--- a/engines/toltecs/music.h
+++ b/engines/toltecs/music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toltecs/palette.cpp b/engines/toltecs/palette.cpp
index b93bb8b510..ab66e60c9d 100644
--- a/engines/toltecs/palette.cpp
+++ b/engines/toltecs/palette.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "graphics/palette.h"
@@ -121,7 +120,7 @@ uint16 Palette::findFragment(int16 id) {
debug(0, "Palette::findFragment(%d)", id);
uint16 result = 0;
- for (PaletteFragmentArray::iterator iter = _fragments.begin(); iter != _fragments.end(); iter++) {
+ for (PaletteFragmentArray::iterator iter = _fragments.begin(); iter != _fragments.end(); ++iter) {
PaletteFragment fragment = *iter;
if (fragment.id == id) {
result = (fragment.count << 8) | fragment.index;
@@ -194,7 +193,7 @@ void Palette::saveState(Common::WriteStream *out) {
uint16 fragmentCount = _fragments.size();
out->writeUint16LE(fragmentCount);
- for (PaletteFragmentArray::iterator iter = _fragments.begin(); iter != _fragments.end(); iter++) {
+ for (PaletteFragmentArray::iterator iter = _fragments.begin(); iter != _fragments.end(); ++iter) {
PaletteFragment fragment = *iter;
out->writeUint16LE(fragment.id);
out->writeByte(fragment.index);
diff --git a/engines/toltecs/palette.h b/engines/toltecs/palette.h
index 4777a82699..d16a32b10a 100644
--- a/engines/toltecs/palette.h
+++ b/engines/toltecs/palette.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_PALETTE_H
diff --git a/engines/toltecs/render.cpp b/engines/toltecs/render.cpp
index ae458d40a3..bf68eee94c 100644
--- a/engines/toltecs/render.cpp
+++ b/engines/toltecs/render.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/system.h"
@@ -65,7 +64,7 @@ void RenderQueue::addSprite(SpriteDrawItem &sprite) {
// Add sprite sorted by priority
RenderQueueArray::iterator iter = _currQueue->begin();
while (iter != _currQueue->end() && (*iter).priority <= item.priority) {
- iter++;
+ ++iter;
}
_currQueue->insert(iter, item);
@@ -104,7 +103,7 @@ void RenderQueue::addMask(SegmapMaskRect &mask) {
if (rectIntersectsItem(item.rect)) {
RenderQueueArray::iterator iter = _currQueue->begin();
while (iter != _currQueue->end() && (*iter).priority <= item.priority) {
- iter++;
+ ++iter;
}
_currQueue->insert(iter, item);
}
@@ -119,7 +118,7 @@ void RenderQueue::update() {
if (!doFullRefresh) {
- for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); iter++) {
+ for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); ++iter) {
RenderQueueItem *item = &(*iter);
RenderQueueItem *prevItem = findItemInQueue(_prevQueue, *item);
if (prevItem) {
@@ -134,7 +133,7 @@ void RenderQueue::update() {
}
}
- for (RenderQueueArray::iterator iter = _prevQueue->begin(); iter != _prevQueue->end(); iter++) {
+ for (RenderQueueArray::iterator iter = _prevQueue->begin(); iter != _prevQueue->end(); ++iter) {
RenderQueueItem *prevItem = &(*iter);
RenderQueueItem *item = findItemInQueue(_currQueue, *prevItem);
if (!item) {
@@ -145,7 +144,7 @@ void RenderQueue::update() {
restoreDirtyBackground();
- for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); iter++) {
+ for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); ++iter) {
RenderQueueItem *item = &(*iter);
if (item->flags != kUnchanged)
invalidateItemsByRect(item->rect, item);
@@ -164,7 +163,7 @@ void RenderQueue::update() {
_vm->_screen->_fullRefresh = false;
}
- for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); iter++) {
+ for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); ++iter) {
const RenderQueueItem *item = &(*iter);
if (item->flags == kRefresh || doFullRefresh) {
@@ -209,7 +208,7 @@ void RenderQueue::clear() {
}
bool RenderQueue::rectIntersectsItem(const Common::Rect &rect) {
- for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); iter++) {
+ for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); ++iter) {
const RenderQueueItem *item = &(*iter);
if (rect.intersects(item->rect))
return true;
@@ -221,7 +220,7 @@ RenderQueueItem *RenderQueue::findItemInQueue(RenderQueueArray *queue, const Ren
/* This checks if the given item also exists in the previously drawn frame.
The state of the item (position, color etc) is handled elsewhere.
*/
- for (RenderQueueArray::iterator iter = queue->begin(); iter != queue->end(); iter++) {
+ for (RenderQueueArray::iterator iter = queue->begin(); iter != queue->end(); ++iter) {
RenderQueueItem *prevItem = &(*iter);
if (prevItem->type == item.type) {
switch (item.type) {
@@ -263,7 +262,7 @@ bool RenderQueue::hasItemChanged(const RenderQueueItem &item1, const RenderQueue
}
void RenderQueue::invalidateItemsByRect(const Common::Rect &rect, const RenderQueueItem *item) {
- for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); iter++) {
+ for (RenderQueueArray::iterator iter = _currQueue->begin(); iter != _currQueue->end(); ++iter) {
RenderQueueItem *subItem = &(*iter);
if (item != subItem &&
subItem->flags == kUnchanged &&
diff --git a/engines/toltecs/render.h b/engines/toltecs/render.h
index 59d7a3ddb9..5150903146 100644
--- a/engines/toltecs/render.h
+++ b/engines/toltecs/render.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_RENDER_H
diff --git a/engines/toltecs/resource.cpp b/engines/toltecs/resource.cpp
index d66075004b..468ae0272f 100644
--- a/engines/toltecs/resource.cpp
+++ b/engines/toltecs/resource.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/file.h"
diff --git a/engines/toltecs/resource.h b/engines/toltecs/resource.h
index 3d45d9fb1b..d8e8ad9a5d 100644
--- a/engines/toltecs/resource.h
+++ b/engines/toltecs/resource.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_RESOURCE_H
diff --git a/engines/toltecs/saveload.cpp b/engines/toltecs/saveload.cpp
index 4edcc601b8..409fc97076 100644
--- a/engines/toltecs/saveload.cpp
+++ b/engines/toltecs/saveload.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/savefile.h"
diff --git a/engines/toltecs/screen.cpp b/engines/toltecs/screen.cpp
index dd418be71f..6bacc5dff7 100644
--- a/engines/toltecs/screen.cpp
+++ b/engines/toltecs/screen.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "graphics/cursorman.h"
diff --git a/engines/toltecs/screen.h b/engines/toltecs/screen.h
index 7b2149fded..980865f65f 100644
--- a/engines/toltecs/screen.h
+++ b/engines/toltecs/screen.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_SCREEN_H
diff --git a/engines/toltecs/script.cpp b/engines/toltecs/script.cpp
index 83c4ef15fe..01149a14b7 100644
--- a/engines/toltecs/script.cpp
+++ b/engines/toltecs/script.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
// TODO: Clean up game variable handling and move it to ToltecsEngine
diff --git a/engines/toltecs/script.h b/engines/toltecs/script.h
index 4c880dfef5..e77dcf4352 100644
--- a/engines/toltecs/script.h
+++ b/engines/toltecs/script.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_SCRIPT_H
diff --git a/engines/toltecs/segmap.cpp b/engines/toltecs/segmap.cpp
index fea40f3277..b27e0c8e11 100644
--- a/engines/toltecs/segmap.cpp
+++ b/engines/toltecs/segmap.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "toltecs/toltecs.h"
diff --git a/engines/toltecs/segmap.h b/engines/toltecs/segmap.h
index dda0edeb88..c1ad293162 100644
--- a/engines/toltecs/segmap.h
+++ b/engines/toltecs/segmap.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_SEGMAP_H
diff --git a/engines/toltecs/sound.cpp b/engines/toltecs/sound.cpp
index 8afc0e7890..fb14dd15ee 100644
--- a/engines/toltecs/sound.cpp
+++ b/engines/toltecs/sound.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "audio/audiostream.h"
diff --git a/engines/toltecs/sound.h b/engines/toltecs/sound.h
index 48a6cd1318..13e943e9e3 100644
--- a/engines/toltecs/sound.h
+++ b/engines/toltecs/sound.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_SOUND_H
diff --git a/engines/toltecs/sprite.cpp b/engines/toltecs/sprite.cpp
index 6101eb7d85..f29f64dcfe 100644
--- a/engines/toltecs/sprite.cpp
+++ b/engines/toltecs/sprite.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "toltecs/toltecs.h"
diff --git a/engines/toltecs/toltecs.cpp b/engines/toltecs/toltecs.cpp
index 8bd824cfee..d3b69e7f21 100644
--- a/engines/toltecs/toltecs.cpp
+++ b/engines/toltecs/toltecs.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/config-manager.h"
diff --git a/engines/toltecs/toltecs.h b/engines/toltecs/toltecs.h
index b405d099c4..7a04f6e8da 100644
--- a/engines/toltecs/toltecs.h
+++ b/engines/toltecs/toltecs.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TOLTECS_H
diff --git a/engines/tony/custom.cpp b/engines/tony/custom.cpp
index f5c580c8c5..989702cd3c 100644
--- a/engines/tony/custom.cpp
+++ b/engines/tony/custom.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/*
diff --git a/engines/tony/custom.h b/engines/tony/custom.h
index 0f1061e8cd..9ba10be28a 100644
--- a/engines/tony/custom.h
+++ b/engines/tony/custom.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/debugger.cpp b/engines/tony/debugger.cpp
index 84f05b0d25..22c218a19c 100644
--- a/engines/tony/debugger.cpp
+++ b/engines/tony/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/debugger.h b/engines/tony/debugger.h
index 85ba9d75b6..1db1b460fc 100644
--- a/engines/tony/debugger.h
+++ b/engines/tony/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/detection.cpp b/engines/tony/detection.cpp
index d355450153..9bb768d1ed 100644
--- a/engines/tony/detection.cpp
+++ b/engines/tony/detection.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "base/plugins.h"
@@ -178,7 +177,7 @@ SaveStateDescriptor TonyMetaEngine::querySaveMetaInfos(const char *target, int s
}
#if PLUGIN_ENABLED_DYNAMIC(TONY)
-REGISTER_PLUGIN_DYNAMIC(TONY, PLUGIN_TYPE_ENGINE, TonyMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(TONY, PLUGIN_TYPE_ENGINE, TonyMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(TONY, PLUGIN_TYPE_ENGINE, TonyMetaEngine);
+ REGISTER_PLUGIN_STATIC(TONY, PLUGIN_TYPE_ENGINE, TonyMetaEngine);
#endif
diff --git a/engines/tony/detection_tables.h b/engines/tony/detection_tables.h
index ca16495903..ce4651f0ab 100644
--- a/engines/tony/detection_tables.h
+++ b/engines/tony/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/font.cpp b/engines/tony/font.cpp
index 1729052d42..850aff17be 100644
--- a/engines/tony/font.cpp
+++ b/engines/tony/font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/font.h b/engines/tony/font.h
index 9ef50b99ec..d52547a58d 100644
--- a/engines/tony/font.h
+++ b/engines/tony/font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -347,6 +347,7 @@ public:
virtual ~RMDialogChoice();
// Initialization and closure
+ using RMGfxWoodyBuffer::init;
void init();
void close();
diff --git a/engines/tony/game.cpp b/engines/tony/game.cpp
index ca7c07ad8c..c102242dfd 100644
--- a/engines/tony/game.cpp
+++ b/engines/tony/game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -140,8 +140,6 @@ void RMOptionButton::setActiveState(bool bState) {
\****************************************************************************/
RMOptionSlide::RMOptionSlide(const RMPoint &pt, int nRange, int nStartValue, int slideSize) {
- RMResRaw *raw;
-
_pos = pt;
_nSlideSize = slideSize;
_nMax = nRange;
@@ -154,6 +152,7 @@ RMOptionSlide::RMOptionSlide(const RMPoint &pt, int nRange, int nStartValue, int
_sliderSingle = NULL;
// Sliders
+ RMResRaw *raw;
INIT_GFX16_FROMRAW(20029, _sliderCenter);
INIT_GFX16_FROMRAW(20030, _sliderLeft);
INIT_GFX16_FROMRAW(20031, _sliderRight);
@@ -966,6 +965,8 @@ void RMOptionScreen::changeState(CORO_PARAM, OptionScreenState newState) {
void RMOptionScreen::doFrame(CORO_PARAM, RMInput *input) {
CORO_BEGIN_CONTEXT;
bool bLeftClick, bRightClick;
+ RMResRaw *raw;
+
RMPoint mousePos;
bool bRefresh;
int i;
diff --git a/engines/tony/game.h b/engines/tony/game.h
index fdf62a2a5d..cda07de889 100644
--- a/engines/tony/game.h
+++ b/engines/tony/game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -300,6 +300,7 @@ public:
RMOptionScreen();
virtual ~RMOptionScreen();
+ using RMGfxWoodyBuffer::init;
void init(CORO_PARAM, RMGfxTargetBuffer &bigBuf, bool &result);
void initLoadMenuOnly(CORO_PARAM, RMGfxTargetBuffer &bigBuf, bool bAlternateGfx, bool &result);
void initSaveMenuOnly(CORO_PARAM, RMGfxTargetBuffer &bigBuf, bool bAlternateGfx, bool &result);
diff --git a/engines/tony/gfxcore.cpp b/engines/tony/gfxcore.cpp
index 3433ad3024..9254d59df6 100644
--- a/engines/tony/gfxcore.cpp
+++ b/engines/tony/gfxcore.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -821,27 +821,24 @@ void RMGfxSourceBuffer8RLE::setAlreadyCompressed() {
}
void RMGfxSourceBuffer8RLE::compressRLE() {
- byte *startline;
byte *cur;
byte curdata;
byte *src;
- byte *startsrc;
- int rep;
// Perform RLE compression for lines
cur = _megaRLEBuf;
src = _buf;
for (int y = 0; y < _dimy; y++) {
// Save the beginning of the line
- startline = cur;
+ byte *startline = cur;
// Leave space for the length of the line
cur += 2;
// It starts from the empty space
curdata = 0;
- rep = 0;
- startsrc = src;
+ int rep = 0;
+ byte *startsrc = src;
for (int x = 0; x < _dimx;) {
if ((curdata == 0 && *src == 0) || (curdata == 1 && *src == _alphaBlendColor)
|| (curdata == 2 && (*src != _alphaBlendColor && *src != 0))) {
diff --git a/engines/tony/gfxcore.h b/engines/tony/gfxcore.h
index 9e8f5225c0..c9081506d7 100644
--- a/engines/tony/gfxcore.h
+++ b/engines/tony/gfxcore.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -71,7 +71,7 @@ public:
int getDimy();
// Creation
- virtual void create(int dimx, int dimy, int nBpp);
+ void create(int dimx, int dimy, int nBpp);
virtual void destroy();
// These are valid only if the buffer is locked
diff --git a/engines/tony/gfxengine.cpp b/engines/tony/gfxengine.cpp
index 7bb25f59b9..efbf63a6f5 100644
--- a/engines/tony/gfxengine.cpp
+++ b/engines/tony/gfxengine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -352,11 +352,10 @@ void RMGfxEngine::initCustomDll() {
}
void RMGfxEngine::itemIrq(uint32 dwItem, int nPattern, int nStatus) {
- RMItem *item;
assert(GLOBALS._gfxEngine);
if (GLOBALS._gfxEngine->_bLocationLoaded) {
- item = GLOBALS._gfxEngine->_loc.getItemFromCode(dwItem);
+ RMItem *item = GLOBALS._gfxEngine->_loc.getItemFromCode(dwItem);
if (item != NULL) {
if (nPattern != -1) {
item->setPattern(nPattern, true);
@@ -452,8 +451,8 @@ void RMGfxEngine::unloadLocation(CORO_PARAM, bool bDoOnExit, uint32 *result) {
void RMGfxEngine::init() {
// Screen loading
- RMResRaw *raw;
RMGfxSourceBuffer16 *load = NULL;
+ RMResRaw *raw;
INIT_GFX16_FROMRAW(20038, load);
_bigBuf.addPrim(new RMGfxPrimitive(load));
_bigBuf.drawOT(Common::nullContext);
@@ -722,9 +721,7 @@ void RMGfxEngine::loadState(CORO_PARAM, const Common::String &fn) {
if (_ctx->ver >= 5) {
// Version 5
- bool bStat = false;
-
- bStat = _ctx->f->readByte();
+ bool bStat = _ctx->f->readByte();
_tony.setShepherdess(bStat);
bStat = _ctx->f->readByte();
_inter.setPerorate(bStat);
diff --git a/engines/tony/gfxengine.h b/engines/tony/gfxengine.h
index ab32a01972..927593a5d3 100644
--- a/engines/tony/gfxengine.h
+++ b/engines/tony/gfxengine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/globals.cpp b/engines/tony/globals.cpp
index 8e4ae240a0..ca2b6e72dc 100644
--- a/engines/tony/globals.cpp
+++ b/engines/tony/globals.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/globals.h b/engines/tony/globals.h
index 0ff243b374..1cff57fd16 100644
--- a/engines/tony/globals.h
+++ b/engines/tony/globals.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/input.cpp b/engines/tony/input.cpp
index e84da04d97..787fb21f21 100644
--- a/engines/tony/input.cpp
+++ b/engines/tony/input.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/input.h b/engines/tony/input.h
index 274aa8c491..31acb68eb6 100644
--- a/engines/tony/input.h
+++ b/engines/tony/input.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/inventory.cpp b/engines/tony/inventory.cpp
index 6b023d5990..974be8b04d 100644
--- a/engines/tony/inventory.cpp
+++ b/engines/tony/inventory.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -457,8 +457,6 @@ bool RMInventory::rightRelease(const RMPoint &mpos, RMTonyAction &curAction) {
#define INVSPEED 20
void RMInventory::doFrame(RMGfxTargetBuffer &bigBuf, RMPointer &ptr, RMPoint mpos, bool bCanOpen) {
- bool bNeedRedraw = false;
-
if (_state != CLOSED) {
// Clean up the OT list
g_system->lockMutex(_csModifyInterface);
@@ -466,6 +464,8 @@ void RMInventory::doFrame(RMGfxTargetBuffer &bigBuf, RMPointer &ptr, RMPoint mpo
// DoFrame makes all the objects currently in the inventory be displayed
// @@@ Maybe we should do all takeable objects? Please does not help
+ bool bNeedRedraw = false;
+
for (int i = 0; i < _nInv; i++) {
if (_items[_inv[i]]._icon.doFrame(this, false) && (i >= _curPos && i <= _curPos + 7))
bNeedRedraw = true;
@@ -698,9 +698,8 @@ int RMInventory::loadState(byte *state) {
state += 4;
}
- int x;
for (int i = 0; i < 256; i++) {
- x = READ_LE_UINT32(state);
+ int x = READ_LE_UINT32(state);
state += 4;
if (i < _nItems) {
diff --git a/engines/tony/inventory.h b/engines/tony/inventory.h
index 1d660d51cd..5528e6589c 100644
--- a/engines/tony/inventory.h
+++ b/engines/tony/inventory.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -101,6 +101,7 @@ public:
/**
* Initialization and closing
*/
+ using RMGfxWoodyBuffer::init;
void init();
void close();
void reset();
@@ -209,6 +210,7 @@ public:
/**
* Initialization
*/
+ using RMGfxSourceBuffer8RLEByte::init;
void init();
void close();
diff --git a/engines/tony/loc.cpp b/engines/tony/loc.cpp
index 5beac842f9..09a00deed1 100644
--- a/engines/tony/loc.cpp
+++ b/engines/tony/loc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -892,12 +892,12 @@ void RMWipe::draw(CORO_PARAM, RMGfxTargetBuffer &bigBuf, RMGfxPrimitive *prim) {
/* Returns path along the vector path path[] */
/****************************************************************************/
-short RMCharacter::findPath(short source, short destination) {
+bool RMCharacter::findPath(short source, short destination) {
static RMBox box[MAXBOXES]; // Matrix of adjacent boxes
static short nodeCost[MAXBOXES]; // Cost per node
static short valid[MAXBOXES]; // 0:Invalid 1:Valid 2:Saturated
static short nextNode[MAXBOXES]; // Next node
- short minCost, error = 0;
+ bool error = false;
RMBoxLoc *cur;
g_system->lockMutex(_csMove);
@@ -925,13 +925,13 @@ short RMCharacter::findPath(short source, short destination) {
// Find the shortest path
while (!finish) {
- minCost = 32000; // Reset the minimum cost
- error = 1; // Possible error
+ short minCost = 32000; // Reset the minimum cost
+ error = true; // Possible error
// 1st cycle: explore possible new nodes
for (int i = 0; i < cur->_numbBox; i++) {
if (valid[i] == 1) {
- error = 0; // Failure de-bunked
+ error = false; // Failure de-bunked
int j = 0;
while (((box[i]._adj[j]) != 1) && (j < cur->_numbBox))
j++;
@@ -1851,10 +1851,9 @@ void RMGameBoxes::loadState(byte *state) {
assert(nloc <= _nLocBoxes);
- int nbox;
// For each location, read the number of boxes and their status
for (int i = 1; i <= nloc; i++) {
- nbox = READ_LE_UINT32(state);
+ int nbox = READ_LE_UINT32(state);
state += 4;
for (int j = 0; j < nbox ; j++) {
diff --git a/engines/tony/loc.h b/engines/tony/loc.h
index 1306316136..ac65a4a0bd 100644
--- a/engines/tony/loc.h
+++ b/engines/tony/loc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -395,7 +395,7 @@ private:
private:
int inWhichBox(const RMPoint &pt);
- short findPath(short source, short destination);
+ bool findPath(short source, short destination);
RMPoint searching(char UP, char DOWN, char RIGHT, char LEFT, RMPoint point);
RMPoint nearestPoint(const RMPoint &punto);
diff --git a/engines/tony/mpal/expr.cpp b/engines/tony/mpal/expr.cpp
index 7dc640ba7c..1fdf637062 100644
--- a/engines/tony/mpal/expr.cpp
+++ b/engines/tony/mpal/expr.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/*
* This code is based on original Tony Tough source code
diff --git a/engines/tony/mpal/expr.h b/engines/tony/mpal/expr.h
index 256d09bb9b..6ac1963356 100644
--- a/engines/tony/mpal/expr.h
+++ b/engines/tony/mpal/expr.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/*
* This code is based on original Tony Tough source code
diff --git a/engines/tony/mpal/loadmpc.cpp b/engines/tony/mpal/loadmpc.cpp
index 4eb84d1406..8d030f1e52 100644
--- a/engines/tony/mpal/loadmpc.cpp
+++ b/engines/tony/mpal/loadmpc.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/*
* This code is based on original Tony Tough source code
@@ -139,8 +138,6 @@ static void FreeScript(LpMpalScript lpmsScript) {
* @returns Pointer to the buffer after the item, or NULL on failure.
*/
static const byte *parseDialog(const byte *lpBuf, LpMpalDialog lpmdDialog) {
- byte *lpLock;
-
lpmdDialog->_nObj = READ_LE_UINT32(lpBuf);
lpBuf += 4;
@@ -156,7 +153,7 @@ static const byte *parseDialog(const byte *lpBuf, LpMpalDialog lpmdDialog) {
lpmdDialog->_periodNums[i] = READ_LE_UINT16(lpBuf);
lpBuf += 2;
lpmdDialog->_periods[i] = globalAllocate(GMEM_MOVEABLE | GMEM_ZEROINIT, *lpBuf + 1);
- lpLock = (byte *)globalLock(lpmdDialog->_periods[i]);
+ byte *lpLock = (byte *)globalLock(lpmdDialog->_periods[i]);
Common::copy(lpBuf + 1, lpBuf + 1 + *lpBuf, lpLock);
globalUnlock(lpmdDialog->_periods[i]);
lpBuf += (*lpBuf) + 1;
diff --git a/engines/tony/mpal/loadmpc.h b/engines/tony/mpal/loadmpc.h
index 20956288aa..479cf5f99b 100644
--- a/engines/tony/mpal/loadmpc.h
+++ b/engines/tony/mpal/loadmpc.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/*
* This code is based on original Tony Tough source code
diff --git a/engines/tony/mpal/lzo.cpp b/engines/tony/mpal/lzo.cpp
index a04a769528..314d6f3ed5 100644
--- a/engines/tony/mpal/lzo.cpp
+++ b/engines/tony/mpal/lzo.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/* minilzo.c -- mini subset of the LZO real-time data compression library
@@ -70,15 +69,9 @@ namespace Tony {
namespace MPAL {
#define pd(a, b) ((uint32) ((a) - (b)))
-
#define TEST_IP (ip < ip_end)
-#define TEST_OP 1
-#define NEED_IP(x) ((void) 0)
-#define NEED_OP(x) ((void) 0)
-#define TEST_LB(m_pos) ((void) 0)
#define M2_MAX_OFFSET 0x0800
-#define LZO1X
/**
* Decompresses an LZO compressed resource
@@ -87,425 +80,142 @@ int lzo1x_decompress(const byte *in, uint32 in_len, byte *out, uint32 *out_len)
register byte *op;
register const byte *ip;
register uint32 t = 0;
-#if defined(COPY_DICT)
- uint32 m_off;
- const byte *dict_end;
-#else
register const byte *m_pos;
-#endif
const byte * const ip_end = in + in_len;
-#if defined(HAVE_ANY_OP)
- byte * const op_end = out + *out_len;
-#endif
-#if defined(LZO1Z)
- uint32 last_m_off = 0;
-#endif
-
-#if defined(COPY_DICT)
- if (dict)
- {
- if (dict_len > M4_MAX_OFFSET)
- {
- dict += dict_len - M4_MAX_OFFSET;
- dict_len = M4_MAX_OFFSET;
- }
- dict_end = dict + dict_len;
- }
- else
- {
- dict_len = 0;
- dict_end = NULL;
- }
-#endif
*out_len = 0;
op = out;
ip = in;
- if (*ip > 17)
- {
+ if (*ip > 17) {
t = *ip++ - 17;
if (t < 4)
goto match_next;
- assert(t > 0); NEED_OP(t); NEED_IP(t+1);
- do *op++ = *ip++; while (--t > 0);
+ assert(t > 0);
+ do
+ *op++ = *ip++;
+ while (--t > 0);
goto first_literal_run;
}
- while (TEST_IP && TEST_OP)
- {
+ while (TEST_IP) {
t = *ip++;
if (t >= 16)
goto match;
- if (t == 0)
- {
- NEED_IP(1);
- while (*ip == 0)
- {
+ if (t == 0) {
+ while (*ip == 0) {
t += 255;
ip++;
- NEED_IP(1);
}
t += 15 + *ip++;
}
- assert(t > 0); NEED_OP(t+3); NEED_IP(t+4);
-#if defined(LZO_UNALIGNED_OK_8) && defined(LZO_UNALIGNED_OK_4)
- t += 3;
- if (t >= 8) do
- {
- UA_COPY64(op, ip);
- op += 8; ip += 8; t -= 8;
- } while (t >= 8);
- if (t >= 4)
- {
- UA_COPY32(op, ip);
- op += 4; ip += 4; t -= 4;
- }
- if (t > 0)
- {
+ assert(t > 0);
+
+ *op++ = *ip++;
+ *op++ = *ip++;
+ *op++ = *ip++;
+ do
*op++ = *ip++;
- if (t > 1) { *op++ = *ip++; if (t > 2) { *op++ = *ip++; } }
- }
-#elif defined(LZO_UNALIGNED_OK_4) || defined(LZO_ALIGNED_OK_4)
-#if !defined(LZO_UNALIGNED_OK_4)
- if (PTR_ALIGNED2_4(op, ip))
- {
-#endif
- UA_COPY32(op, ip);
- op += 4; ip += 4;
- if (--t > 0)
- {
- if (t >= 4)
- {
- do {
- UA_COPY32(op, ip);
- op += 4; ip += 4; t -= 4;
- } while (t >= 4);
- if (t > 0) do *op++ = *ip++; while (--t > 0);
- }
- else
- do *op++ = *ip++; while (--t > 0);
- }
-#if !defined(LZO_UNALIGNED_OK_4)
- }
- else
-#endif
-#endif
-#if !defined(LZO_UNALIGNED_OK_4) && !defined(LZO_UNALIGNED_OK_8)
- {
- *op++ = *ip++; *op++ = *ip++; *op++ = *ip++;
- do *op++ = *ip++; while (--t > 0);
- }
-#endif
+ while (--t > 0);
first_literal_run:
-
t = *ip++;
if (t >= 16)
goto match;
-#if defined(COPY_DICT)
-#if defined(LZO1Z)
- m_off = (1 + M2_MAX_OFFSET) + (t << 6) + (*ip++ >> 2);
- last_m_off = m_off;
-#else
- m_off = (1 + M2_MAX_OFFSET) + (t >> 2) + (*ip++ << 2);
-#endif
- NEED_OP(3);
- t = 3; COPY_DICT(t, m_off)
-#else
-#if defined(LZO1Z)
- t = (1 + M2_MAX_OFFSET) + (t << 6) + (*ip++ >> 2);
- m_pos = op - t;
- last_m_off = t;
-#else
+
m_pos = op - (1 + M2_MAX_OFFSET);
m_pos -= t >> 2;
m_pos -= *ip++ << 2;
-#endif
- TEST_LB(m_pos); NEED_OP(3);
- *op++ = *m_pos++; *op++ = *m_pos++; *op++ = *m_pos;
-#endif
+
+ *op++ = *m_pos++;
+ *op++ = *m_pos++;
+ *op++ = *m_pos;
+
goto match_done;
do {
match:
- if (t >= 64)
- {
-#if defined(COPY_DICT)
-#if defined(LZO1X)
- m_off = 1 + ((t >> 2) & 7) + (*ip++ << 3);
- t = (t >> 5) - 1;
-#elif defined(LZO1Y)
- m_off = 1 + ((t >> 2) & 3) + (*ip++ << 2);
- t = (t >> 4) - 3;
-#elif defined(LZO1Z)
- m_off = t & 0x1f;
- if (m_off >= 0x1c)
- m_off = last_m_off;
- else
- {
- m_off = 1 + (m_off << 6) + (*ip++ >> 2);
- last_m_off = m_off;
- }
- t = (t >> 5) - 1;
-#endif
-#else
-#if defined(LZO1X)
+ if (t >= 64) {
m_pos = op - 1;
m_pos -= (t >> 2) & 7;
m_pos -= *ip++ << 3;
t = (t >> 5) - 1;
-#elif defined(LZO1Y)
- m_pos = op - 1;
- m_pos -= (t >> 2) & 3;
- m_pos -= *ip++ << 2;
- t = (t >> 4) - 3;
-#elif defined(LZO1Z)
- {
- uint32 off = t & 0x1f;
- m_pos = op;
- if (off >= 0x1c)
- {
- assert(last_m_off > 0);
- m_pos -= last_m_off;
- }
- else
- {
- off = 1 + (off << 6) + (*ip++ >> 2);
- m_pos -= off;
- last_m_off = off;
- }
- }
- t = (t >> 5) - 1;
-#endif
- TEST_LB(m_pos); assert(t > 0); NEED_OP(t+3-1);
+ assert(t > 0);
goto copy_match;
-#endif
- }
- else if (t >= 32)
- {
+ } else if (t >= 32) {
t &= 31;
- if (t == 0)
- {
- NEED_IP(1);
- while (*ip == 0)
- {
+ if (t == 0) {
+ while (*ip == 0) {
t += 255;
ip++;
- NEED_IP(1);
}
t += 31 + *ip++;
}
-#if defined(COPY_DICT)
-#if defined(LZO1Z)
- m_off = 1 + (ip[0] << 6) + (ip[1] >> 2);
- last_m_off = m_off;
-#else
- m_off = 1 + (ip[0] >> 2) + (ip[1] << 6);
-#endif
-#else
-#if defined(LZO1Z)
- {
- uint32 off = 1 + (ip[0] << 6) + (ip[1] >> 2);
- m_pos = op - off;
- last_m_off = off;
- }
-#elif defined(LZO_UNALIGNED_OK_2) && defined(LZO_ABI_LITTLE_ENDIAN)
- m_pos = op - 1;
- m_pos -= UA_GET16(ip) >> 2;
-#else
m_pos = op - 1;
m_pos -= (ip[0] >> 2) + (ip[1] << 6);
-#endif
-#endif
ip += 2;
- }
- else if (t >= 16)
- {
-#if defined(COPY_DICT)
- m_off = (t & 8) << 11;
-#else
+ } else if (t >= 16) {
m_pos = op;
m_pos -= (t & 8) << 11;
-#endif
t &= 7;
- if (t == 0)
- {
- NEED_IP(1);
- while (*ip == 0)
- {
+ if (t == 0) {
+ while (*ip == 0) {
t += 255;
ip++;
- NEED_IP(1);
}
t += 7 + *ip++;
}
-#if defined(COPY_DICT)
-#if defined(LZO1Z)
- m_off += (ip[0] << 6) + (ip[1] >> 2);
-#else
- m_off += (ip[0] >> 2) + (ip[1] << 6);
-#endif
- ip += 2;
- if (m_off == 0)
- goto eof_found;
- m_off += 0x4000;
-#if defined(LZO1Z)
- last_m_off = m_off;
-#endif
-#else
-#if defined(LZO1Z)
- m_pos -= (ip[0] << 6) + (ip[1] >> 2);
-#elif defined(LZO_UNALIGNED_OK_2) && defined(LZO_ABI_LITTLE_ENDIAN)
- m_pos -= UA_GET16(ip) >> 2;
-#else
m_pos -= (ip[0] >> 2) + (ip[1] << 6);
-#endif
ip += 2;
if (m_pos == op)
goto eof_found;
m_pos -= 0x4000;
-#if defined(LZO1Z)
- last_m_off = pd((const byte *)op, m_pos);
-#endif
-#endif
- }
- else
- {
-#if defined(COPY_DICT)
-#if defined(LZO1Z)
- m_off = 1 + (t << 6) + (*ip++ >> 2);
- last_m_off = m_off;
-#else
- m_off = 1 + (t >> 2) + (*ip++ << 2);
-#endif
- NEED_OP(2);
- t = 2; COPY_DICT(t, m_off)
-#else
-#if defined(LZO1Z)
- t = 1 + (t << 6) + (*ip++ >> 2);
- m_pos = op - t;
- last_m_off = t;
-#else
+ } else {
m_pos = op - 1;
m_pos -= t >> 2;
m_pos -= *ip++ << 2;
-#endif
- TEST_LB(m_pos); NEED_OP(2);
- *op++ = *m_pos++; *op++ = *m_pos;
-#endif
+ *op++ = *m_pos++;
+ *op++ = *m_pos;
goto match_done;
}
-#if defined(COPY_DICT)
-
- NEED_OP(t+3-1);
- t += 3-1; COPY_DICT(t, m_off)
-
-#else
-
- TEST_LB(m_pos); assert(t > 0); NEED_OP(t+3-1);
-#if defined(LZO_UNALIGNED_OK_8) && defined(LZO_UNALIGNED_OK_4)
- if (op - m_pos >= 8)
- {
- t += (3 - 1);
- if (t >= 8) do
- {
- UA_COPY64(op, m_pos);
- op += 8; m_pos += 8; t -= 8;
- } while (t >= 8);
- if (t >= 4)
- {
- UA_COPY32(op, m_pos);
- op += 4; m_pos += 4; t -= 4;
- }
- if (t > 0)
- {
- *op++ = m_pos[0];
- if (t > 1) { *op++ = m_pos[1]; if (t > 2) { *op++ = m_pos[2]; } }
- }
- }
- else
-#elif defined(LZO_UNALIGNED_OK_4) || defined(LZO_ALIGNED_OK_4)
-#if !defined(LZO_UNALIGNED_OK_4)
- if (t >= 2 * 4 - (3 - 1) && PTR_ALIGNED2_4(op, m_pos))
- {
- assert((op - m_pos) >= 4);
-#else
- if (t >= 2 * 4 - (3 - 1) && (op - m_pos) >= 4)
- {
-#endif
- UA_COPY32(op, m_pos);
- op += 4; m_pos += 4; t -= 4 - (3 - 1);
- do {
- UA_COPY32(op, m_pos);
- op += 4; m_pos += 4; t -= 4;
- } while (t >= 4);
- if (t > 0) do *op++ = *m_pos++; while (--t > 0);
- }
- else
-#endif
+ assert(t > 0);
{
copy_match:
- *op++ = *m_pos++; *op++ = *m_pos++;
- do *op++ = *m_pos++; while (--t > 0);
+ *op++ = *m_pos++;
+ *op++ = *m_pos++;
+ do
+ *op++ = *m_pos++;
+ while (--t > 0);
}
-#endif
-
match_done:
-#if defined(LZO1Z)
- t = ip[-1] & 3;
-#else
t = ip[-2] & 3;
-#endif
if (t == 0)
break;
match_next:
- assert(t > 0); assert(t < 4); NEED_OP(t); NEED_IP(t+1);
-#if 0
- do *op++ = *ip++; while (--t > 0);
-#else
+ assert(t > 0);
+ assert(t < 4);
*op++ = *ip++;
- if (t > 1) { *op++ = *ip++; if (t > 2) { *op++ = *ip++; } }
-#endif
+ if (t > 1) {
+ *op++ = *ip++;
+ if (t > 2)
+ *op++ = *ip++;
+ }
t = *ip++;
- } while (TEST_IP && TEST_OP);
+ } while (TEST_IP);
}
-#if defined(HAVE_TEST_IP) || defined(HAVE_TEST_OP)
- *out_len = pd(op, out);
- return LZO_E_EOF_NOT_FOUND;
-#endif
-
eof_found:
assert(t == 1);
*out_len = pd(op, out);
return (ip == ip_end ? LZO_E_OK :
(ip < ip_end ? LZO_E_INPUT_NOT_CONSUMED : LZO_E_INPUT_OVERRUN));
-#if defined(HAVE_NEED_IP)
-input_overrun:
- *out_len = pd(op, out);
- return LZO_E_INPUT_OVERRUN;
-#endif
-
-#if defined(HAVE_NEED_OP)
-output_overrun:
- *out_len = pd(op, out);
- return LZO_E_OUTPUT_OVERRUN;
-#endif
-
-#if defined(LZO_TEST_OVERRUN_LOOKBEHIND)
-lookbehind_overrun:
- *out_len = pd(op, out);
- return LZO_E_LOOKBEHIND_OVERRUN;
-#endif
}
} // end of namespace MPAL
-
} // end of namespace Tony
diff --git a/engines/tony/mpal/lzo.h b/engines/tony/mpal/lzo.h
index ebb1c4b516..172900f053 100644
--- a/engines/tony/mpal/lzo.h
+++ b/engines/tony/mpal/lzo.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/* minilzo.c -- mini subset of the LZO real-time data compression library
@@ -76,36 +75,15 @@ namespace MPAL {
* normal events.
*/
#define LZO_E_OK 0
-#define LZO_E_ERROR (-1)
-#define LZO_E_OUT_OF_MEMORY (-2) /* [lzo_alloc_func_t failure] */
-#define LZO_E_NOT_COMPRESSIBLE (-3) /* [not used right now] */
#define LZO_E_INPUT_OVERRUN (-4)
-#define LZO_E_OUTPUT_OVERRUN (-5)
-#define LZO_E_LOOKBEHIND_OVERRUN (-6)
-#define LZO_E_EOF_NOT_FOUND (-7)
#define LZO_E_INPUT_NOT_CONSUMED (-8)
-#define LZO_E_NOT_YET_IMPLEMENTED (-9) /* [not used right now] */
-#define LZO_E_INVALID_ARGUMENT (-10)
-
-#define LZO1X_999_MEM_COMPRESS ((uint32) (14 * 16384L * sizeof(uint16)))
/**
* Decompresses an LZO compressed resource
*/
int lzo1x_decompress(const byte *src, uint32 src_len, byte *dst, uint32 *dst_len);
-/**
- * Comrpess a data block into an LZO stream
- */
-int lzo1x_1_compress(const byte *src, uint32 src_len, byte *dst, uint32 *dst_len, void *wrkmem);
-
-/**
- * better compression ratio at the cost of more memory and time
- */
-int lzo1x_999_compress(const byte *src, uint32 src_len, byte *dst, uint32 *dst_len, void *wrkmem);
-
} // end of namespace MPAL
-
} // end of namespace Tony
#endif /* already included */
diff --git a/engines/tony/mpal/memory.cpp b/engines/tony/mpal/memory.cpp
index 9737fe0abf..4076f710de 100644
--- a/engines/tony/mpal/memory.cpp
+++ b/engines/tony/mpal/memory.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/algorithm.h"
diff --git a/engines/tony/mpal/memory.h b/engines/tony/mpal/memory.h
index 9c21cc20e6..7739fdfa48 100644
--- a/engines/tony/mpal/memory.h
+++ b/engines/tony/mpal/memory.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TONY_MPAL_MEMORY
diff --git a/engines/tony/mpal/mpal.cpp b/engines/tony/mpal/mpal.cpp
index 19e3d43df4..c813b354b0 100644
--- a/engines/tony/mpal/mpal.cpp
+++ b/engines/tony/mpal/mpal.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/*
* This code is based on original Tony Tough source code
@@ -1519,13 +1518,12 @@ void mpalFree() {
*
* @param wQueryType Type of query. The list is in the QueryTypes enum.
* @returns 4 bytes depending on the type of query
- * @remarks This is the specialised version of the original single mpalQuery
+ * @remarks This is the specialized version of the original single mpalQuery
* method that returns numeric results.
*/
uint32 mpalQueryDWORD(uint16 wQueryType, ...) {
Common::String buf;
uint32 dwRet = 0;
- char *n;
va_list v;
va_start(v, wQueryType);
@@ -1626,7 +1624,7 @@ uint32 mpalQueryDWORD(uint16 wQueryType, ...) {
*/
lockVar();
int x = GETARG(uint32);
- n = GETARG(char *);
+ char *n = GETARG(char *);
buf = Common::String::format("Status.%u", x);
if (varGetValue(buf.c_str()) <= 0)
n[0]='\0';
@@ -1716,11 +1714,10 @@ uint32 mpalQueryDWORD(uint16 wQueryType, ...) {
*
* @param wQueryType Type of query. The list is in the QueryTypes enum.
* @returns 4 bytes depending on the type of query
- * @remarks This is the specialised version of the original single mpalQuery
+ * @remarks This is the specialized version of the original single mpalQuery
* method that returns a pointer or handle.
*/
MpalHandle mpalQueryHANDLE(uint16 wQueryType, ...) {
- char *n;
Common::String buf;
va_list v;
va_start(v, wQueryType);
@@ -1798,12 +1795,9 @@ MpalHandle mpalQueryHANDLE(uint16 wQueryType, ...) {
error("mpalQuery(MPQ_ITEM_IS_ACTIVE, uint32 nItem) used incorrect variant");
} else if (wQueryType == MPQ_ITEM_NAME) {
- /*
- * uint32 mpalQuery(MPQ_ITEM_NAME, uint32 nItem, char *lpszName);
- */
lockVar();
int x = GETARG(uint32);
- n = GETARG(char *);
+ char *n = GETARG(char *);
buf = Common::String::format("Status.%u", x);
if (varGetValue(buf.c_str()) <= 0)
n[0] = '\0';
@@ -1873,7 +1867,7 @@ MpalHandle mpalQueryHANDLE(uint16 wQueryType, ...) {
*
* @param wQueryType Type of query. The list is in the QueryTypes enum.
* @returns 4 bytes depending on the type of query
- * @remarks This is the specialised version of the original single mpalQuery
+ * @remarks This is the specialized version of the original single mpalQuery
* method that needs to run within a co-routine context.
*/
void mpalQueryCORO(CORO_PARAM, uint16 wQueryType, uint32 *dwRet) {
diff --git a/engines/tony/mpal/mpal.h b/engines/tony/mpal/mpal.h
index 2d22ee8faf..af24c46697 100644
--- a/engines/tony/mpal/mpal.h
+++ b/engines/tony/mpal/mpal.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/*
* This code is based on original Tony Tough source code
@@ -392,7 +391,7 @@ void mpalFree();
*
* @param wQueryType Type of query. The list is in the QueryTypes enum.
* @returns 4 bytes depending on the type of query
- * @remarks This is the specialised version of the original single mpalQuery
+ * @remarks This is the specialized version of the original single mpalQuery
* method that returns numeric results.
*/
uint32 mpalQueryDWORD(uint16 wQueryType, ...);
@@ -403,7 +402,7 @@ uint32 mpalQueryDWORD(uint16 wQueryType, ...);
*
* @param wQueryType Type of query. The list is in the QueryTypes enum.
* @returns 4 bytes depending on the type of query
- * @remarks This is the specialised version of the original single mpalQuery
+ * @remarks This is the specialized version of the original single mpalQuery
* method that returns a pointer or handle.
*/
MpalHandle mpalQueryHANDLE(uint16 wQueryType, ...);
@@ -414,7 +413,7 @@ MpalHandle mpalQueryHANDLE(uint16 wQueryType, ...);
*
* @param wQueryType Type of query. The list is in the QueryTypes enum.
* @returns 4 bytes depending on the type of query
- * @remarks This is the specialised version of the original single mpalQuery
+ * @remarks This is the specialized version of the original single mpalQuery
* method that needs to run within a co-routine context.
*/
void mpalQueryCORO(CORO_PARAM, uint16 wQueryType, uint32 *dwRet);
diff --git a/engines/tony/mpal/mpaldll.h b/engines/tony/mpal/mpaldll.h
index 92ddf8fc5a..68969497c1 100644
--- a/engines/tony/mpal/mpaldll.h
+++ b/engines/tony/mpal/mpaldll.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
/*
* This code is based on original Tony Tough source code
diff --git a/engines/tony/mpal/mpalutils.cpp b/engines/tony/mpal/mpalutils.cpp
index 0919aed5ac..84c8a68919 100644
--- a/engines/tony/mpal/mpalutils.cpp
+++ b/engines/tony/mpal/mpalutils.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "tony/mpal/mpalutils.h"
diff --git a/engines/tony/mpal/mpalutils.h b/engines/tony/mpal/mpalutils.h
index f351f22196..9ef534c632 100644
--- a/engines/tony/mpal/mpalutils.h
+++ b/engines/tony/mpal/mpalutils.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef TONY_MPAL_MPALUTILS
diff --git a/engines/tony/resid.h b/engines/tony/resid.h
index 0d601b7dd6..93c008144a 100644
--- a/engines/tony/resid.h
+++ b/engines/tony/resid.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/sound.cpp b/engines/tony/sound.cpp
index 74d32c7c0f..2a4eb826f3 100644
--- a/engines/tony/sound.cpp
+++ b/engines/tony/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/sound.h b/engines/tony/sound.h
index 7422de02b3..446dc68d80 100644
--- a/engines/tony/sound.h
+++ b/engines/tony/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/tony.cpp b/engines/tony/tony.cpp
index 43a2f639d9..2857bb93f8 100644
--- a/engines/tony/tony.cpp
+++ b/engines/tony/tony.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/tony.h b/engines/tony/tony.h
index cdc7d7e20a..40a5184c31 100644
--- a/engines/tony/tony.h
+++ b/engines/tony/tony.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/tonychar.cpp b/engines/tony/tonychar.cpp
index 46c018728e..224d923142 100644
--- a/engines/tony/tonychar.cpp
+++ b/engines/tony/tonychar.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/tonychar.h b/engines/tony/tonychar.h
index d9f18f61ec..5c5be9ca4e 100644
--- a/engines/tony/tonychar.h
+++ b/engines/tony/tonychar.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/utils.cpp b/engines/tony/utils.cpp
index 81060146b7..d70073542f 100644
--- a/engines/tony/utils.cpp
+++ b/engines/tony/utils.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/utils.h b/engines/tony/utils.h
index 9f13e5f19b..eb2f3c74d3 100644
--- a/engines/tony/utils.h
+++ b/engines/tony/utils.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/window.cpp b/engines/tony/window.cpp
index 02991975ce..5c50a50a57 100644
--- a/engines/tony/window.cpp
+++ b/engines/tony/window.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tony/window.h b/engines/tony/window.h
index 2cc9bfd37c..df1932071c 100644
--- a/engines/tony/window.h
+++ b/engines/tony/window.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toon/anim.cpp b/engines/toon/anim.cpp
index 19e997af34..ec23fea186 100644
--- a/engines/toon/anim.cpp
+++ b/engines/toon/anim.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toon/anim.h b/engines/toon/anim.h
index cd550b2621..ca0d25685b 100644
--- a/engines/toon/anim.h
+++ b/engines/toon/anim.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toon/audio.cpp b/engines/toon/audio.cpp
index 303f6774fa..82544375d5 100644
--- a/engines/toon/audio.cpp
+++ b/engines/toon/audio.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toon/audio.h b/engines/toon/audio.h
index 25063603eb..afac92d4be 100644
--- a/engines/toon/audio.h
+++ b/engines/toon/audio.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toon/character.cpp b/engines/toon/character.cpp
index baab8888cf..cab31795f7 100644
--- a/engines/toon/character.cpp
+++ b/engines/toon/character.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
#include "common/system.h"
diff --git a/engines/toon/character.h b/engines/toon/character.h
index b248e7ccf2..1e0ad9c2b7 100644
--- a/engines/toon/character.h
+++ b/engines/toon/character.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_CHARACTER_H
#define TOON_CHARACTER_H
diff --git a/engines/toon/console.cpp b/engines/toon/console.cpp
index 18f81e1323..8c01c603fe 100644
--- a/engines/toon/console.cpp
+++ b/engines/toon/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toon/console.h b/engines/toon/console.h
index 25ce7627a1..f545b67404 100644
--- a/engines/toon/console.h
+++ b/engines/toon/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toon/conversation.cpp b/engines/toon/conversation.cpp
index 01ee1efaed..99aa488430 100644
--- a/engines/toon/conversation.cpp
+++ b/engines/toon/conversation.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "toon/conversation.h"
diff --git a/engines/toon/conversation.h b/engines/toon/conversation.h
index 3e459a9734..b03dae606c 100644
--- a/engines/toon/conversation.h
+++ b/engines/toon/conversation.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_CONVERSATION_H
#define TOON_CONVERSATION_H
diff --git a/engines/toon/detection.cpp b/engines/toon/detection.cpp
index cee7a23796..4f82514213 100644
--- a/engines/toon/detection.cpp
+++ b/engines/toon/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -179,10 +179,9 @@ SaveStateList ToonMetaEngine::listSaves(const char *target) const {
sort(filenames.begin(), filenames.end()); // Sort (hopefully ensuring we are sorted numerically..)
SaveStateList saveList;
- int slotNum = 0;
for (Common::StringArray::const_iterator filename = filenames.begin(); filename != filenames.end(); ++filename) {
// Obtain the last 3 digits of the filename, since they correspond to the save slot
- slotNum = atoi(filename->c_str() + filename->size() - 3);
+ int slotNum = atoi(filename->c_str() + filename->size() - 3);
if (slotNum >= 0 && slotNum <= 99) {
Common::InSaveFile *file = saveFileMan->openForLoading(*filename);
diff --git a/engines/toon/drew.cpp b/engines/toon/drew.cpp
index dfd3f515fa..a0569a2d78 100644
--- a/engines/toon/drew.cpp
+++ b/engines/toon/drew.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/toon/drew.h b/engines/toon/drew.h
index ff1b619125..941df473d1 100644
--- a/engines/toon/drew.h
+++ b/engines/toon/drew.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_DREW_H
#define TOON_DREW_H
diff --git a/engines/toon/flux.cpp b/engines/toon/flux.cpp
index 70aa40fb36..14218ba4ef 100644
--- a/engines/toon/flux.cpp
+++ b/engines/toon/flux.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
diff --git a/engines/toon/flux.h b/engines/toon/flux.h
index 1dc0d9c55f..a5778e5466 100644
--- a/engines/toon/flux.h
+++ b/engines/toon/flux.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_FLUX_H
#define TOON_FLUX_H
diff --git a/engines/toon/font.cpp b/engines/toon/font.cpp
index 2ba4eff652..ab941e5de9 100644
--- a/engines/toon/font.cpp
+++ b/engines/toon/font.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
#include "common/rect.h"
diff --git a/engines/toon/font.h b/engines/toon/font.h
index 2a46ad3559..bbbccd09c8 100644
--- a/engines/toon/font.h
+++ b/engines/toon/font.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_FONT_H
#define TOON_FONT_H
diff --git a/engines/toon/hotspot.cpp b/engines/toon/hotspot.cpp
index 8b8f0ab577..04368df5ca 100644
--- a/engines/toon/hotspot.cpp
+++ b/engines/toon/hotspot.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
diff --git a/engines/toon/hotspot.h b/engines/toon/hotspot.h
index 3852e2e42e..782d06a9fe 100644
--- a/engines/toon/hotspot.h
+++ b/engines/toon/hotspot.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_HOTSPOT_H
#define TOON_HOTSPOT_H
diff --git a/engines/toon/movie.cpp b/engines/toon/movie.cpp
index 9e8514d0a8..498e4021e2 100644
--- a/engines/toon/movie.cpp
+++ b/engines/toon/movie.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
#include "common/events.h"
diff --git a/engines/toon/movie.h b/engines/toon/movie.h
index 14287d87fd..54d4fd4dc7 100644
--- a/engines/toon/movie.h
+++ b/engines/toon/movie.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_MOVIE_H
#define TOON_MOVIE_H
diff --git a/engines/toon/path.cpp b/engines/toon/path.cpp
index 336847e73c..fdc35983dc 100644
--- a/engines/toon/path.cpp
+++ b/engines/toon/path.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
diff --git a/engines/toon/path.h b/engines/toon/path.h
index 59f74ef286..c69954bded 100644
--- a/engines/toon/path.h
+++ b/engines/toon/path.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_PATH_H
#define TOON_PATH_H
diff --git a/engines/toon/picture.cpp b/engines/toon/picture.cpp
index 4927f50e08..51077c0b17 100644
--- a/engines/toon/picture.cpp
+++ b/engines/toon/picture.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "toon/picture.h"
#include "toon/tools.h"
@@ -268,15 +268,14 @@ void Picture::floodFillNotWalkableOnMask(int16 x, int16 y) {
// Stack-based floodFill algorithm based on
// http://student.kuleuven.be/~m0216922/CG/files/floodfill.cpp
Common::Stack<Common::Point> stack;
- bool spanLeft, spanRight;
stack.push(Common::Point(x, y));
while (!stack.empty()) {
Common::Point pt = stack.pop();
while (_data[pt.x + pt.y * _width] & 0x1F && pt.y >= 0)
pt.y--;
pt.y++;
- spanLeft = false;
- spanRight = false;
+ bool spanLeft = false;
+ bool spanRight = false;
while (_data[pt.x + pt.y * _width] & 0x1F && pt.y < _height) {
_data[pt.x + pt.y * _width] &= 0xE0;
if (!spanLeft && pt.x > 0 && _data[pt.x - 1 + pt.y * _width] & 0x1F) {
diff --git a/engines/toon/picture.h b/engines/toon/picture.h
index 5e79612a39..0e853e4ed5 100644
--- a/engines/toon/picture.h
+++ b/engines/toon/picture.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_PICTURE_H
#define TOON_PICTURE_H
diff --git a/engines/toon/resource.cpp b/engines/toon/resource.cpp
index ffcabbd348..f7c02d5f10 100644
--- a/engines/toon/resource.cpp
+++ b/engines/toon/resource.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "toon/resource.h"
#include "common/debug.h"
diff --git a/engines/toon/resource.h b/engines/toon/resource.h
index b432a1d335..6991fae5a7 100644
--- a/engines/toon/resource.h
+++ b/engines/toon/resource.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_RESOURCE_H
#define TOON_RESOURCE_H
diff --git a/engines/toon/script.cpp b/engines/toon/script.cpp
index d752c277db..a99e398200 100644
--- a/engines/toon/script.cpp
+++ b/engines/toon/script.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
#include "common/endian.h"
diff --git a/engines/toon/script.h b/engines/toon/script.h
index 8ef085f383..3f1413984d 100644
--- a/engines/toon/script.h
+++ b/engines/toon/script.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_SCRIPT_H
#define TOON_SCRIPT_H
diff --git a/engines/toon/script_func.cpp b/engines/toon/script_func.cpp
index 70baaaef22..5e8ff09a86 100644
--- a/engines/toon/script_func.cpp
+++ b/engines/toon/script_func.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
#include "common/system.h"
diff --git a/engines/toon/script_func.h b/engines/toon/script_func.h
index e22c4b34fa..bab26d4c28 100644
--- a/engines/toon/script_func.h
+++ b/engines/toon/script_func.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef SCRIPT_FUNC_H
#define SCRIPT_FUNC_H
diff --git a/engines/toon/state.cpp b/engines/toon/state.cpp
index fffa8cf529..6ac5808219 100644
--- a/engines/toon/state.cpp
+++ b/engines/toon/state.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
diff --git a/engines/toon/state.h b/engines/toon/state.h
index 4004b8b4f0..88ec4eb560 100644
--- a/engines/toon/state.h
+++ b/engines/toon/state.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_STATE_H
#define TOON_STATE_H
diff --git a/engines/toon/text.cpp b/engines/toon/text.cpp
index bd4583d799..75b4d4f021 100644
--- a/engines/toon/text.cpp
+++ b/engines/toon/text.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
diff --git a/engines/toon/text.h b/engines/toon/text.h
index cd575736b7..10358a7327 100644
--- a/engines/toon/text.h
+++ b/engines/toon/text.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_TEXT_H
#define TOON_TEXT_H
diff --git a/engines/toon/tools.cpp b/engines/toon/tools.cpp
index f5c77aca69..e224f2708b 100644
--- a/engines/toon/tools.cpp
+++ b/engines/toon/tools.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/debug.h"
diff --git a/engines/toon/tools.h b/engines/toon/tools.h
index 44c0fc4644..d80ec006b0 100644
--- a/engines/toon/tools.h
+++ b/engines/toon/tools.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_TOOLS_H
#define TOON_TOOLS_H
diff --git a/engines/toon/toon.cpp b/engines/toon/toon.cpp
index 7b1456b05c..14e7d104d2 100644
--- a/engines/toon/toon.cpp
+++ b/engines/toon/toon.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/system.h"
#include "common/events.h"
@@ -184,10 +184,10 @@ void ToonEngine::parseInput() {
Common::Event event;
while (_event->pollEvent(event)) {
- bool hasModifier = event.kbd.hasFlags(Common::KBD_ALT|Common::KBD_CTRL|Common::KBD_SHIFT);
+ const bool hasModifier = (event.kbd.flags & Common::KBD_NON_STICKY) != 0;
switch (event.type) {
case Common::EVENT_KEYDOWN:
- if ((event.kbd.ascii == 27 || event.kbd.ascii == 32) && !hasModifier) {
+ if ((event.kbd.keycode == Common::KEYCODE_ESCAPE || event.kbd.keycode == Common::KEYCODE_SPACE) && !hasModifier) {
_audioManager->stopCurrentVoice();
}
if (event.kbd.keycode == Common::KEYCODE_F5 && !hasModifier) {
@@ -198,21 +198,21 @@ void ToonEngine::parseInput() {
if (canLoadGameStateCurrently())
loadGame(-1);
}
- if (event.kbd.ascii == 't' && !hasModifier) {
+ if (event.kbd.keycode == Common::KEYCODE_t && !hasModifier) {
_showConversationText = !_showConversationText;
}
- if (event.kbd.ascii == 'm' && !hasModifier) {
+ if (event.kbd.keycode == Common::KEYCODE_m && !hasModifier) {
_audioManager->muteMusic(!_audioManager->isMusicMuted());
}
- if (event.kbd.ascii == 'd' && !hasModifier) {
+ if (event.kbd.keycode == Common::KEYCODE_d && !hasModifier) {
_audioManager->muteVoice(!_audioManager->isVoiceMuted());
}
- if (event.kbd.ascii == 's' && !hasModifier) {
+ if (event.kbd.keycode == Common::KEYCODE_s && !hasModifier) {
_audioManager->muteSfx(!_audioManager->isSfxMuted());
}
if (event.kbd.flags & Common::KBD_ALT) {
- int slotNum = event.kbd.ascii - '0';
+ int slotNum = event.kbd.keycode - (event.kbd.keycode >= Common::KEYCODE_KP0 ? Common::KEYCODE_KP0 : Common::KEYCODE_0);
if (slotNum >= 0 && slotNum <= 9 && canSaveGameStateCurrently()) {
if (saveGame(slotNum, "")) {
// ok
@@ -229,7 +229,7 @@ void ToonEngine::parseInput() {
}
if (event.kbd.flags & Common::KBD_CTRL) {
- int slotNum = event.kbd.ascii - '0';
+ int slotNum = event.kbd.keycode - (event.kbd.keycode >= Common::KEYCODE_KP0 ? Common::KEYCODE_KP0 : Common::KEYCODE_0);
if (slotNum >= 0 && slotNum <= 9 && canLoadGameStateCurrently()) {
if (loadGame(slotNum)) {
// ok
@@ -634,7 +634,6 @@ bool ToonEngine::showMainmenu(bool &loadedGame) {
bool doExit = false;
bool exitGame = false;
- int clickingOn, clickRelease;
int menuMask = MAINMENUMASK_BASE;
Common::SeekableReadStream *mainmenuMusicFile = NULL;
AudioStreamInstance *mainmenuMusic = NULL;
@@ -644,8 +643,8 @@ bool ToonEngine::showMainmenu(bool &loadedGame) {
dirtyAllScreen();
while (!doExit) {
- clickingOn = MAINMENUHOTSPOT_NONE;
- clickRelease = false;
+ int clickingOn = MAINMENUHOTSPOT_NONE;
+ int clickRelease = false;
if (!musicPlaying) {
mainmenuMusicFile = resources()->openFile("BR091013.MUS");
@@ -3615,7 +3614,7 @@ int32 ToonEngine::handleInventoryOnInventory(int32 itemDest, int32 itemSrc) {
createMouseItem(21);
rearrangeInventory();
return 1;
- } else if (itemSrc == 0x6b || itemSrc == 0x6c || itemSrc == 0x6f || itemSrc == 108 || itemSrc == 112) {
+ } else if (itemSrc == 0x6b || itemSrc == 0x6c || itemSrc == 0x6f || itemSrc == 0x70) {
sayLines(2, 1292);
return 1;
}
@@ -4617,15 +4616,13 @@ void ToonEngine::unloadToonDat() {
}
char **ToonEngine::loadTextsVariants(Common::File &in) {
- int numTexts;
- int entryLen;
int len;
char **res = 0;
char *pos = 0;
for (int varnt = 0; varnt < _numVariant; varnt++) {
- numTexts = in.readUint16BE();
- entryLen = in.readUint16BE();
+ int numTexts = in.readUint16BE();
+ int entryLen = in.readUint16BE();
pos = (char *)malloc(entryLen);
if (varnt == _gameVariant) {
res = (char **)malloc(sizeof(char *) * numTexts);
diff --git a/engines/toon/toon.h b/engines/toon/toon.h
index 0ff351804f..6903e5de57 100644
--- a/engines/toon/toon.h
+++ b/engines/toon/toon.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef TOON_TOON_H
#define TOON_TOON_H
diff --git a/engines/touche/console.cpp b/engines/touche/console.cpp
index 2c4c6a0da1..c4272038dc 100644
--- a/engines/touche/console.cpp
+++ b/engines/touche/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/console.h b/engines/touche/console.h
index 43a303ad77..ed7620a820 100644
--- a/engines/touche/console.h
+++ b/engines/touche/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/detection.cpp b/engines/touche/detection.cpp
index 0662e718d5..97a14e5bc1 100644
--- a/engines/touche/detection.cpp
+++ b/engines/touche/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/graphics.cpp b/engines/touche/graphics.cpp
index 6e565327ba..95ef16e9bd 100644
--- a/engines/touche/graphics.cpp
+++ b/engines/touche/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/graphics.h b/engines/touche/graphics.h
index 5b2ea39a24..3fdbf9b145 100644
--- a/engines/touche/graphics.h
+++ b/engines/touche/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/menu.cpp b/engines/touche/menu.cpp
index 85ca519f05..19c10af8de 100644
--- a/engines/touche/menu.cpp
+++ b/engines/touche/menu.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -569,29 +569,29 @@ int ToucheEngine::displayQuitDialog() {
quitLoop = true;
switch (_language) {
case Common::FR_FRA:
- if (event.kbd.ascii == 'o' || event.kbd.ascii == 'O') {
+ if (event.kbd.keycode == Common::KEYCODE_o) {
ret = 1;
}
break;
case Common::DE_DEU:
- if (event.kbd.ascii == 'j' || event.kbd.ascii == 'J') {
+ if (event.kbd.keycode == Common::KEYCODE_j) {
ret = 1;
}
break;
case Common::ES_ESP:
- if (event.kbd.ascii == 's' || event.kbd.ascii == 'S') {
+ if (event.kbd.keycode == Common::KEYCODE_s) {
ret = 1;
}
break;
case Common::PL_POL:
- if (event.kbd.ascii == 's' || event.kbd.ascii == 'S' || event.kbd.ascii == 't' || event.kbd.ascii == 'T') {
+ if (event.kbd.keycode == Common::KEYCODE_s || event.kbd.keycode == Common::KEYCODE_t) {
ret = 1;
}
break;
default:
// According to cyx, the Italian version uses the same
// keys as the English one.
- if (event.kbd.ascii == 'y' || event.kbd.ascii == 'Y') {
+ if (event.kbd.keycode == Common::KEYCODE_y) {
ret = 1;
}
break;
diff --git a/engines/touche/midi.cpp b/engines/touche/midi.cpp
index da14baa484..96813077ce 100644
--- a/engines/touche/midi.cpp
+++ b/engines/touche/midi.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/midi.h b/engines/touche/midi.h
index 24f9da0474..e54d43209c 100644
--- a/engines/touche/midi.h
+++ b/engines/touche/midi.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/opcodes.cpp b/engines/touche/opcodes.cpp
index 18677eae26..ee7f3a9b6b 100644
--- a/engines/touche/opcodes.cpp
+++ b/engines/touche/opcodes.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/resource.cpp b/engines/touche/resource.cpp
index 9625224316..16a95d307f 100644
--- a/engines/touche/resource.cpp
+++ b/engines/touche/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/saveload.cpp b/engines/touche/saveload.cpp
index a054299ecd..d44a3d43ff 100644
--- a/engines/touche/saveload.cpp
+++ b/engines/touche/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/staticres.cpp b/engines/touche/staticres.cpp
index 23b76558e4..d2359dd130 100644
--- a/engines/touche/staticres.cpp
+++ b/engines/touche/staticres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/touche/touche.cpp b/engines/touche/touche.cpp
index b3e3ca5b50..09697d0e4a 100644
--- a/engines/touche/touche.cpp
+++ b/engines/touche/touche.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -416,13 +416,13 @@ void ToucheEngine::processEvents(bool handleKeyEvents) {
this->getDebugger()->onFrame();
}
} else {
- if (event.kbd.ascii == 't') {
+ if (event.kbd.keycode == Common::KEYCODE_t) {
++_talkTextMode;
if (_talkTextMode == kTalkModeCount) {
_talkTextMode = 0;
}
displayTextMode(-(92 + _talkTextMode));
- } else if (event.kbd.ascii == ' ') {
+ } else if (event.kbd.keycode == Common::KEYCODE_SPACE) {
updateKeyCharTalk(2);
}
}
diff --git a/engines/touche/touche.h b/engines/touche/touche.h
index 9cc42b0c68..3da33f593b 100644
--- a/engines/touche/touche.h
+++ b/engines/touche/touche.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_dialogs.cpp b/engines/tsage/blue_force/blueforce_dialogs.cpp
index 23701c9e5b..2f337ac549 100644
--- a/engines/tsage/blue_force/blueforce_dialogs.cpp
+++ b/engines/tsage/blue_force/blueforce_dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_dialogs.h b/engines/tsage/blue_force/blueforce_dialogs.h
index 76de7d19d9..77017db9d0 100644
--- a/engines/tsage/blue_force/blueforce_dialogs.h
+++ b/engines/tsage/blue_force/blueforce_dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_logic.cpp b/engines/tsage/blue_force/blueforce_logic.cpp
index c8a0117bcf..e6e71399dc 100644
--- a/engines/tsage/blue_force/blueforce_logic.cpp
+++ b/engines/tsage/blue_force/blueforce_logic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_logic.h b/engines/tsage/blue_force/blueforce_logic.h
index 0045980820..cb3c62dd3a 100644
--- a/engines/tsage/blue_force/blueforce_logic.h
+++ b/engines/tsage/blue_force/blueforce_logic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes0.cpp b/engines/tsage/blue_force/blueforce_scenes0.cpp
index 06be605c1a..1e94e44b74 100644
--- a/engines/tsage/blue_force/blueforce_scenes0.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes0.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes0.h b/engines/tsage/blue_force/blueforce_scenes0.h
index e7ee06e779..c6f380338d 100644
--- a/engines/tsage/blue_force/blueforce_scenes0.h
+++ b/engines/tsage/blue_force/blueforce_scenes0.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes1.cpp b/engines/tsage/blue_force/blueforce_scenes1.cpp
index fa877ea6c9..1cbebd140e 100644
--- a/engines/tsage/blue_force/blueforce_scenes1.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes1.h b/engines/tsage/blue_force/blueforce_scenes1.h
index ddde200370..8b65c97bb2 100644
--- a/engines/tsage/blue_force/blueforce_scenes1.h
+++ b/engines/tsage/blue_force/blueforce_scenes1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes2.cpp b/engines/tsage/blue_force/blueforce_scenes2.cpp
index e444c8b91d..65ff85155f 100644
--- a/engines/tsage/blue_force/blueforce_scenes2.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes2.h b/engines/tsage/blue_force/blueforce_scenes2.h
index 17e749d7a1..6ae324517a 100644
--- a/engines/tsage/blue_force/blueforce_scenes2.h
+++ b/engines/tsage/blue_force/blueforce_scenes2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes3.cpp b/engines/tsage/blue_force/blueforce_scenes3.cpp
index feaf789392..0f7324f5c8 100644
--- a/engines/tsage/blue_force/blueforce_scenes3.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -4438,7 +4438,7 @@ void Scene360::postInit(SceneObjectList *OwnerList) {
BF_GLOBALS._player._moveDiff.y = 4;
BF_GLOBALS._player.enableControl();
- if ((BF_GLOBALS._sceneManager._previousScene == 355) || (BF_GLOBALS._sceneManager._previousScene != 370)) {
+ if (BF_GLOBALS._sceneManager._previousScene != 370) {
BF_GLOBALS._player.setPosition(Common::Point(253, 135));
BF_GLOBALS._player.setStrip(2);
diff --git a/engines/tsage/blue_force/blueforce_scenes3.h b/engines/tsage/blue_force/blueforce_scenes3.h
index 894c3e5ffd..e437fd3a92 100644
--- a/engines/tsage/blue_force/blueforce_scenes3.h
+++ b/engines/tsage/blue_force/blueforce_scenes3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes4.cpp b/engines/tsage/blue_force/blueforce_scenes4.cpp
index 2b4c0ff348..50f8499b3b 100644
--- a/engines/tsage/blue_force/blueforce_scenes4.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -140,7 +140,7 @@ void Scene410::Action5::signal() {
ADD_PLAYER_MOVER(114, 133);
} else {
ADD_PLAYER_MOVER(195, 139);
- }
+ }
break;
case 1:
BF_GLOBALS._player.updateAngle(scene->_passenger._position);
diff --git a/engines/tsage/blue_force/blueforce_scenes4.h b/engines/tsage/blue_force/blueforce_scenes4.h
index e5877df4f0..9a6df24add 100644
--- a/engines/tsage/blue_force/blueforce_scenes4.h
+++ b/engines/tsage/blue_force/blueforce_scenes4.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes5.cpp b/engines/tsage/blue_force/blueforce_scenes5.cpp
index 101a39c4b7..562facd000 100644
--- a/engines/tsage/blue_force/blueforce_scenes5.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes5.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1623,7 +1623,7 @@ void Scene570::PasswordEntry::process(Event &event) {
checkPassword();
remove();
- } else if ((key >= 32) || (key <= 126)) {
+ } else if ((key >= 32) && (key <= 126)) {
// Valid character pressed
if (_entryBuffer.size() < 10)
_entryBuffer += (char)key;
diff --git a/engines/tsage/blue_force/blueforce_scenes5.h b/engines/tsage/blue_force/blueforce_scenes5.h
index 71c7f3d8f1..7c5bbb3feb 100644
--- a/engines/tsage/blue_force/blueforce_scenes5.h
+++ b/engines/tsage/blue_force/blueforce_scenes5.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes6.cpp b/engines/tsage/blue_force/blueforce_scenes6.cpp
index b20092492f..92534d3095 100644
--- a/engines/tsage/blue_force/blueforce_scenes6.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes6.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes6.h b/engines/tsage/blue_force/blueforce_scenes6.h
index 3f9c14aa11..7ace22f5a6 100644
--- a/engines/tsage/blue_force/blueforce_scenes6.h
+++ b/engines/tsage/blue_force/blueforce_scenes6.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes7.cpp b/engines/tsage/blue_force/blueforce_scenes7.cpp
index 2f52c4df95..268c755299 100644
--- a/engines/tsage/blue_force/blueforce_scenes7.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes7.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes7.h b/engines/tsage/blue_force/blueforce_scenes7.h
index 161d94cc2c..91fb4c5ab2 100644
--- a/engines/tsage/blue_force/blueforce_scenes7.h
+++ b/engines/tsage/blue_force/blueforce_scenes7.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes8.cpp b/engines/tsage/blue_force/blueforce_scenes8.cpp
index f78a332be9..6855fd41b9 100644
--- a/engines/tsage/blue_force/blueforce_scenes8.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes8.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes8.h b/engines/tsage/blue_force/blueforce_scenes8.h
index b9e6ebd640..140327e85d 100644
--- a/engines/tsage/blue_force/blueforce_scenes8.h
+++ b/engines/tsage/blue_force/blueforce_scenes8.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_scenes9.cpp b/engines/tsage/blue_force/blueforce_scenes9.cpp
index 405a436f55..53000d6997 100644
--- a/engines/tsage/blue_force/blueforce_scenes9.cpp
+++ b/engines/tsage/blue_force/blueforce_scenes9.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -516,7 +516,7 @@ void Scene900::postInit(SceneObjectList *OwnerList) {
_door.setPosition(Common::Point(847, 45));
_door._flag = 1;
- if ((BF_GLOBALS._sceneManager._previousScene == 880) || (BF_GLOBALS._sceneManager._previousScene != 910)) {
+ if (BF_GLOBALS._sceneManager._previousScene != 910) {
BF_GLOBALS._walkRegions.disableRegion(26);
BF_GLOBALS._player.disableControl();
if (BF_GLOBALS._bookmark == bFinishedWGreen) {
diff --git a/engines/tsage/blue_force/blueforce_scenes9.h b/engines/tsage/blue_force/blueforce_scenes9.h
index 8bf7f343a1..52935debd4 100644
--- a/engines/tsage/blue_force/blueforce_scenes9.h
+++ b/engines/tsage/blue_force/blueforce_scenes9.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_speakers.cpp b/engines/tsage/blue_force/blueforce_speakers.cpp
index b15d2f4716..ea73cc9d7f 100644
--- a/engines/tsage/blue_force/blueforce_speakers.cpp
+++ b/engines/tsage/blue_force/blueforce_speakers.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/blue_force/blueforce_speakers.h b/engines/tsage/blue_force/blueforce_speakers.h
index e9150df056..dfe6f51039 100644
--- a/engines/tsage/blue_force/blueforce_speakers.h
+++ b/engines/tsage/blue_force/blueforce_speakers.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/converse.cpp b/engines/tsage/converse.cpp
index ba8cfb82a9..d1faca5dac 100644
--- a/engines/tsage/converse.cpp
+++ b/engines/tsage/converse.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -449,8 +449,13 @@ int ConversationChoiceDialog::execute(const Common::StringArray &choiceList) {
// Draw the dialog
draw();
+
g_globals->_events.showCursor();
+ // Force the display of an arrow cursor during discussions in R2R
+ if (g_vm->getGameID() == GType_Ringworld2)
+ R2_GLOBALS._events.setCursor(CURSOR_ARROW);
+
// WORKAROUND: On-screen dialogs are really meant to use a GfxManager instance
// for their lifetime, which prevents saving or loading. Since I don't want to spend a lot
// of time refactoring this already working dialog, fake it by putting a dummy gfxmanager at
diff --git a/engines/tsage/converse.h b/engines/tsage/converse.h
index 8aa91ec3ef..3f4d14f785 100644
--- a/engines/tsage/converse.h
+++ b/engines/tsage/converse.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/core.cpp b/engines/tsage/core.cpp
index 16fe45044b..f35aa583e2 100644
--- a/engines/tsage/core.cpp
+++ b/engines/tsage/core.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1593,12 +1593,12 @@ bool SceneItem::startAction(CursorType action, Event &event) {
}
void SceneItem::doAction(int action) {
- const char *msg = NULL;
-
if (g_vm->getGameID() == GType_Ringworld2) {
Event dummyEvent;
((Ringworld2::SceneExt *)GLOBALS._sceneManager._scene)->display((CursorType)action, dummyEvent);
} else {
+ const char *msg = NULL;
+
switch ((int)action) {
case CURSOR_LOOK:
msg = LOOK_SCENE_HOTSPOT;
@@ -2721,7 +2721,7 @@ GfxSurface SceneObject::getFrame() {
_visageImages.setVisage(_visage, _strip);
GfxSurface frame = _visageImages.getFrame(_frame);
- // Reset any centroid adjustment flags, in
+ // Reset any centroid adjustment flags, in
frame._flags &= ~(FRAME_FLIP_CENTROID_X | FRAME_FLIP_CENTROID_Y);
// For later games, check whether the appropriate object flags are set for flipping
@@ -2909,7 +2909,6 @@ void BackgroundSceneObject::copySceneToBackground() {
void SceneObjectList::draw() {
Common::Array<SceneObject *> objList;
int paneNum = 0;
- int xAmount = 0, yAmount = 0;
if (_objList.size() == 0) {
// Alternate draw mode
@@ -2936,6 +2935,7 @@ void SceneObjectList::draw() {
g_globals->_scrollFollower->_position.x - g_globals->_sceneManager._scene->_sceneBounds.left,
g_globals->_scrollFollower->_position.y - g_globals->_sceneManager._scene->_sceneBounds.top);
int loadCount = 0;
+ int xAmount = 0, yAmount = 0;
if (objPos.x >= scrollerRect.right) {
xAmount = 8;
diff --git a/engines/tsage/core.h b/engines/tsage/core.h
index c285fba669..8b1deadaeb 100644
--- a/engines/tsage/core.h
+++ b/engines/tsage/core.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -465,7 +465,7 @@ enum AnimateMode {ANIM_MODE_NONE = 0, ANIM_MODE_1 = 1, ANIM_MODE_2 = 2, ANIM_MOD
};
// Actor effect enumeration used in Return to Ringworld 2
-enum Effect { EFFECT_NONE = 0, EFFECT_SHADED = 1, EFFECT_3 = 3,
+enum Effect { EFFECT_NONE = 0, EFFECT_SHADED = 1, EFFECT_SMOKE = 3,
EFFECT_SHADOW_MAP = 5, EFFECT_SHADED2 = 6 };
class SceneObject;
diff --git a/engines/tsage/debugger.cpp b/engines/tsage/debugger.cpp
index e81e5cddb3..5a520b0e89 100644
--- a/engines/tsage/debugger.cpp
+++ b/engines/tsage/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -640,58 +640,58 @@ bool Ringworld2Debugger::Cmd_ListObjects(int argc, const char **argv) {
}
DebugPrintf("Available objects for this game are:\n");
- DebugPrintf("1 - R2_OPTO_DISK\n");
- DebugPrintf("2 - R2_READER\n");
- DebugPrintf("3 - R2_NEGATOR_GUN\n");
- DebugPrintf("4 - R2_STEPPING_DISKS\n");
- DebugPrintf("5 - R2_ATTRACTOR_UNIT\n");
- DebugPrintf("6 - R2_SENSOR_PROBE\n");
- DebugPrintf("7 - R2_SONIC_STUNNER\n");
- DebugPrintf("8 - R2_CABLE_HARNESS\n");
- DebugPrintf("9 - R2_COM_SCANNER\n");
- DebugPrintf("10 - R2_SPENT_POWER_CAPSULE\n");
- DebugPrintf("11 - R2_CHARGED_POWER_CAPSULE\n");
- DebugPrintf("12 - R2_AEROSOL\n");
- DebugPrintf("13 - R2_REMOTE_CONTROL\n");
- DebugPrintf("14 - R2_OPTICAL_FIBRE\n");
- DebugPrintf("15 - R2_CLAMP\n");
- DebugPrintf("16 - R2_ATTRACTOR_CABLE_HARNESS\n");
- DebugPrintf("17 - R2_FUEL_CELL\n");
- DebugPrintf("18 - R2_GYROSCOPE\n");
- DebugPrintf("19 - R2_AIRBAG\n");
- DebugPrintf("20 - R2_REBREATHER_TANK\n");
- DebugPrintf("21 - R2_RESERVE_REBREATHER_TANK\n");
- DebugPrintf("22 - R2_GUIDANCE_MODULE\n");
- DebugPrintf("23 - R2_THRUSTER_VALVE\n");
- DebugPrintf("24 - R2_BALLOON_BACKPACK\n");
- DebugPrintf("25 - R2_RADAR_MECHANISM\n");
- DebugPrintf("26 - R2_JOYSTICK\n");
- DebugPrintf("27 - R2_IGNITOR\n");
- DebugPrintf("28 - R2_DIAGNOSTICS_DISPLAY\n");
- DebugPrintf("29 - R2_GLASS_DOME\n");
- DebugPrintf("30 - R2_WICK_LAMP\n");
- DebugPrintf("31 - R2_SCRITH_KEY\n");
- DebugPrintf("32 - R2_TANNER_MASK\n");
- DebugPrintf("33 - R2_PURE_GRAIN_ALCOHOL\n");
- DebugPrintf("34 - R2_SAPPHIRE_BLUE\n");
- DebugPrintf("35 - R2_ANCIENT_SCROLLS\n");
- DebugPrintf("36 - R2_FLUTE\n");
- DebugPrintf("37 - R2_GUNPOWDER\n");
- DebugPrintf("38 - R2_NONAME\n");
- DebugPrintf("39 - R2_COM_SCANNER_2\n");
- DebugPrintf("40 - R2_SUPERCONDUCTOR_WIRE\n");
- DebugPrintf("41 - R2_PILLOW\n");
- DebugPrintf("42 - R2_FOOD_TRAY\n");
- DebugPrintf("43 - R2_LASER_HACKSAW\n");
- DebugPrintf("44 - R2_PHOTON_STUNNER\n");
- DebugPrintf("45 - R2_BATTERY\n");
- DebugPrintf("46 - R2_SOAKED_FACEMASK\n");
- DebugPrintf("47 - R2_LIGHT_BULB\n");
- DebugPrintf("48 - R2_ALCOHOL_LAMP\n");
- DebugPrintf("49 - R2_ALCOHOL_LAMP_2\n");
- DebugPrintf("50 - R2_ALCOHOL_LAMP_3\n");
- DebugPrintf("51 - R2_BROKEN_DISPLAY\n");
- DebugPrintf("52 - R2_TOOLBOX\n");
+ DebugPrintf("1 - Scene %d - R2_OPTO_DISK\n", BF_INVENTORY.getObjectScene(1));
+ DebugPrintf("2 - Scene %d - R2_READER\n", BF_INVENTORY.getObjectScene(2));
+ DebugPrintf("3 - Scene %d - R2_NEGATOR_GUN\n", BF_INVENTORY.getObjectScene(3));
+ DebugPrintf("4 - Scene %d - R2_STEPPING_DISKS\n", BF_INVENTORY.getObjectScene(4));
+ DebugPrintf("5 - Scene %d - R2_ATTRACTOR_UNIT\n", BF_INVENTORY.getObjectScene(5));
+ DebugPrintf("6 - Scene %d - R2_SENSOR_PROBE\n", BF_INVENTORY.getObjectScene(6));
+ DebugPrintf("7 - Scene %d - R2_SONIC_STUNNER\n", BF_INVENTORY.getObjectScene(7));
+ DebugPrintf("8 - Scene %d - R2_CABLE_HARNESS\n", BF_INVENTORY.getObjectScene(8));
+ DebugPrintf("9 - Scene %d - R2_COM_SCANNER\n", BF_INVENTORY.getObjectScene(9));
+ DebugPrintf("10 - Scene %d - R2_SPENT_POWER_CAPSULE\n", BF_INVENTORY.getObjectScene(10));
+ DebugPrintf("11 - Scene %d - R2_CHARGED_POWER_CAPSULE\n", BF_INVENTORY.getObjectScene(11));
+ DebugPrintf("12 - Scene %d - R2_AEROSOL\n", BF_INVENTORY.getObjectScene(12));
+ DebugPrintf("13 - Scene %d - R2_REMOTE_CONTROL\n", BF_INVENTORY.getObjectScene(13));
+ DebugPrintf("14 - Scene %d - R2_OPTICAL_FIBER\n", BF_INVENTORY.getObjectScene(14));
+ DebugPrintf("15 - Scene %d - R2_CLAMP\n", BF_INVENTORY.getObjectScene(15));
+ DebugPrintf("16 - Scene %d - R2_ATTRACTOR_CABLE_HARNESS\n", BF_INVENTORY.getObjectScene(16));
+ DebugPrintf("17 - Scene %d - R2_FUEL_CELL\n", BF_INVENTORY.getObjectScene(17));
+ DebugPrintf("18 - Scene %d - R2_GYROSCOPE\n", BF_INVENTORY.getObjectScene(18));
+ DebugPrintf("19 - Scene %d - R2_AIRBAG\n", BF_INVENTORY.getObjectScene(19));
+ DebugPrintf("20 - Scene %d - R2_REBREATHER_TANK\n", BF_INVENTORY.getObjectScene(20));
+ DebugPrintf("21 - Scene %d - R2_RESERVE_REBREATHER_TANK\n", BF_INVENTORY.getObjectScene(21));
+ DebugPrintf("22 - Scene %d - R2_GUIDANCE_MODULE\n", BF_INVENTORY.getObjectScene(22));
+ DebugPrintf("23 - Scene %d - R2_THRUSTER_VALVE\n", BF_INVENTORY.getObjectScene(23));
+ DebugPrintf("24 - Scene %d - R2_BALLOON_BACKPACK\n", BF_INVENTORY.getObjectScene(24));
+ DebugPrintf("25 - Scene %d - R2_RADAR_MECHANISM\n", BF_INVENTORY.getObjectScene(25));
+ DebugPrintf("26 - Scene %d - R2_JOYSTICK\n", BF_INVENTORY.getObjectScene(26));
+ DebugPrintf("27 - Scene %d - R2_IGNITOR\n", BF_INVENTORY.getObjectScene(27));
+ DebugPrintf("28 - Scene %d - R2_DIAGNOSTICS_DISPLAY\n", BF_INVENTORY.getObjectScene(28));
+ DebugPrintf("29 - Scene %d - R2_GLASS_DOME\n", BF_INVENTORY.getObjectScene(29));
+ DebugPrintf("30 - Scene %d - R2_WICK_LAMP\n", BF_INVENTORY.getObjectScene(30));
+ DebugPrintf("31 - Scene %d - R2_SCRITH_KEY\n", BF_INVENTORY.getObjectScene(31));
+ DebugPrintf("32 - Scene %d - R2_TANNER_MASK\n", BF_INVENTORY.getObjectScene(32));
+ DebugPrintf("33 - Scene %d - R2_PURE_GRAIN_ALCOHOL\n", BF_INVENTORY.getObjectScene(33));
+ DebugPrintf("34 - Scene %d - R2_SAPPHIRE_BLUE\n", BF_INVENTORY.getObjectScene(34));
+ DebugPrintf("35 - Scene %d - R2_ANCIENT_SCROLLS\n", BF_INVENTORY.getObjectScene(35));
+ DebugPrintf("36 - Scene %d - R2_FLUTE\n", BF_INVENTORY.getObjectScene(36));
+ DebugPrintf("37 - Scene %d - R2_GUNPOWDER\n", BF_INVENTORY.getObjectScene(37));
+ DebugPrintf("38 - Scene %d - R2_NONAME\n", BF_INVENTORY.getObjectScene(38));
+ DebugPrintf("39 - Scene %d - R2_COM_SCANNER_2\n", BF_INVENTORY.getObjectScene(39));
+ DebugPrintf("40 - Scene %d - R2_SUPERCONDUCTOR_WIRE\n", BF_INVENTORY.getObjectScene(40));
+ DebugPrintf("41 - Scene %d - R2_PILLOW\n", BF_INVENTORY.getObjectScene(41));
+ DebugPrintf("42 - Scene %d - R2_FOOD_TRAY\n", BF_INVENTORY.getObjectScene(42));
+ DebugPrintf("43 - Scene %d - R2_LASER_HACKSAW\n", BF_INVENTORY.getObjectScene(43));
+ DebugPrintf("44 - Scene %d - R2_PHOTON_STUNNER\n", BF_INVENTORY.getObjectScene(44));
+ DebugPrintf("45 - Scene %d - R2_BATTERY\n", BF_INVENTORY.getObjectScene(45));
+ DebugPrintf("46 - Scene %d - R2_SOAKED_FACEMASK\n", BF_INVENTORY.getObjectScene(46));
+ DebugPrintf("47 - Scene %d - R2_LIGHT_BULB\n", BF_INVENTORY.getObjectScene(47));
+ DebugPrintf("48 - Scene %d - R2_ALCOHOL_LAMP\n", BF_INVENTORY.getObjectScene(48));
+ DebugPrintf("49 - Scene %d - R2_ALCOHOL_LAMP_2\n", BF_INVENTORY.getObjectScene(49));
+ DebugPrintf("50 - Scene %d - R2_ALCOHOL_LAMP_3\n", BF_INVENTORY.getObjectScene(50));
+ DebugPrintf("51 - Scene %d - R2_BROKEN_DISPLAY\n", BF_INVENTORY.getObjectScene(51));
+ DebugPrintf("52 - Scene %d - R2_TOOLBOX\n", BF_INVENTORY.getObjectScene(52));
return true;
}
diff --git a/engines/tsage/debugger.h b/engines/tsage/debugger.h
index c9b7e75039..610f45de64 100644
--- a/engines/tsage/debugger.h
+++ b/engines/tsage/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/detection.cpp b/engines/tsage/detection.cpp
index 5eae7557d2..9d61b4d182 100644
--- a/engines/tsage/detection.cpp
+++ b/engines/tsage/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -129,10 +129,10 @@ public:
if (in) {
if (TsAGE::Saver::readSavegameHeader(in, header)) {
- saveList.push_back(SaveStateDescriptor(slot, header.saveName));
+ saveList.push_back(SaveStateDescriptor(slot, header._saveName));
- header.thumbnail->free();
- delete header.thumbnail;
+ header._thumbnail->free();
+ delete header._thumbnail;
}
delete in;
@@ -162,11 +162,11 @@ public:
delete f;
// Create the return descriptor
- SaveStateDescriptor desc(slot, header.saveName);
- desc.setThumbnail(header.thumbnail);
- desc.setSaveDate(header.saveYear, header.saveMonth, header.saveDay);
- desc.setSaveTime(header.saveHour, header.saveMinutes);
- desc.setPlayTime(header.totalFrames * GAME_FRAME_TIME);
+ SaveStateDescriptor desc(slot, header._saveName);
+ desc.setThumbnail(header._thumbnail);
+ desc.setSaveDate(header._saveYear, header._saveMonth, header._saveDay);
+ desc.setSaveTime(header._saveHour, header._saveMinutes);
+ desc.setPlayTime(header._totalFrames * GAME_FRAME_TIME);
return desc;
}
@@ -176,7 +176,7 @@ public:
};
#if PLUGIN_ENABLED_DYNAMIC(TSAGE)
-REGISTER_PLUGIN_DYNAMIC(TSAGE, PLUGIN_TYPE_ENGINE, TSageMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(TSAGE, PLUGIN_TYPE_ENGINE, TSageMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(TSAGE, PLUGIN_TYPE_ENGINE, TSageMetaEngine);
+ REGISTER_PLUGIN_STATIC(TSAGE, PLUGIN_TYPE_ENGINE, TSageMetaEngine);
#endif
diff --git a/engines/tsage/detection_tables.h b/engines/tsage/detection_tables.h
index 123f04f8e2..da283a27e7 100644
--- a/engines/tsage/detection_tables.h
+++ b/engines/tsage/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/dialogs.cpp b/engines/tsage/dialogs.cpp
index 43833f53b9..dd4bc6aa86 100644
--- a/engines/tsage/dialogs.cpp
+++ b/engines/tsage/dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/dialogs.h b/engines/tsage/dialogs.h
index 33b55093d0..8ab37f6c93 100644
--- a/engines/tsage/dialogs.h
+++ b/engines/tsage/dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/events.cpp b/engines/tsage/events.cpp
index 0ba60384bf..0491c043a4 100644
--- a/engines/tsage/events.cpp
+++ b/engines/tsage/events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/events.h b/engines/tsage/events.h
index 9ef4813e47..a3d96abef4 100644
--- a/engines/tsage/events.h
+++ b/engines/tsage/events.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -90,7 +90,7 @@ enum CursorType {
R2_ATTRACTOR_UNIT = 5, R2_SENSOR_PROBE = 6, R2_SONIC_STUNNER = 7,
R2_CABLE_HARNESS = 8, R2_COM_SCANNER = 9, R2_SPENT_POWER_CAPSULE = 10,
R2_CHARGED_POWER_CAPSULE = 11, R2_AEROSOL = 12, R2_REMOTE_CONTROL = 13,
- R2_OPTICAL_FIBRE = 14, R2_CLAMP = 15, R2_ATTRACTOR_CABLE_HARNESS = 16,
+ R2_OPTICAL_FIBER = 14, R2_CLAMP = 15, R2_ATTRACTOR_CABLE_HARNESS = 16,
R2_FUEL_CELL = 17, R2_GYROSCOPE = 18, R2_AIRBAG = 19, R2_REBREATHER_TANK = 20,
R2_RESERVE_REBREATHER_TANK = 21, R2_GUIDANCE_MODULE = 22, R2_THRUSTER_VALVE = 23,
R2_BALLOON_BACKPACK = 24, R2_RADAR_MECHANISM = 25, R2_JOYSTICK = 26,
diff --git a/engines/tsage/globals.cpp b/engines/tsage/globals.cpp
index 9b1b0f1dcb..e75febfdbc 100644
--- a/engines/tsage/globals.cpp
+++ b/engines/tsage/globals.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -63,6 +63,7 @@ Globals::Globals() : _dialogCenter(160, 140), _gfxManagerInstance(_screenSurface
reset();
_stripNum = 0;
_gfxEdgeAdjust = 3;
+ _gfxFontNumber = 0;
if (g_vm->getGameID() == GType_Ringworld) {
if (g_vm->getFeatures() & GF_DEMO) {
diff --git a/engines/tsage/globals.h b/engines/tsage/globals.h
index 777697edbd..1194fe8b9c 100644
--- a/engines/tsage/globals.h
+++ b/engines/tsage/globals.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/graphics.cpp b/engines/tsage/graphics.cpp
index 97857aca34..fa5d1a3b6a 100644
--- a/engines/tsage/graphics.cpp
+++ b/engines/tsage/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -199,9 +199,9 @@ void Rect::resize(const GfxSurface &surface, int xp, int yp, int percent) {
this->moveTo(xp, yp);
- int xa = (surface._flags & FRAME_FLIP_CENTROID_X) == 0 ? surface._centroid.x :
+ int xa = (surface._flags & FRAME_FLIP_CENTROID_X) == 0 ? surface._centroid.x :
bounds.width() - (surface._centroid.x + 1);
- int ya = (surface._flags & FRAME_FLIP_CENTROID_Y) == 0 ? surface._centroid.y :
+ int ya = (surface._flags & FRAME_FLIP_CENTROID_Y) == 0 ? surface._centroid.y :
bounds.height() - (surface._centroid.y + 1);
int xd = xa * percent / 100;
@@ -1483,7 +1483,6 @@ int GfxFont::getStringFit(const char *&s, int maxWidth) {
const char *nextWord = NULL;
const char *sStart = s;
int numChars = 1;
- int strWidth = 1;
char nextChar;
for (;;) {
@@ -1497,7 +1496,7 @@ int GfxFont::getStringFit(const char *&s, int maxWidth) {
nextWord = s;
}
- strWidth = getStringWidth(sStart, numChars);
+ int strWidth = getStringWidth(sStart, numChars);
if (strWidth > maxWidth) {
if (nextWord) {
s = nextWord;
diff --git a/engines/tsage/graphics.h b/engines/tsage/graphics.h
index 47961dd02a..cdb4826528 100644
--- a/engines/tsage/graphics.h
+++ b/engines/tsage/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/resources.cpp b/engines/tsage/resources.cpp
index 5987d78067..d4b922a1c3 100644
--- a/engines/tsage/resources.cpp
+++ b/engines/tsage/resources.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/resources.h b/engines/tsage/resources.h
index 45cecf8521..a7536a3c2d 100644
--- a/engines/tsage/resources.h
+++ b/engines/tsage/resources.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_demo.cpp b/engines/tsage/ringworld/ringworld_demo.cpp
index fedb19c804..cd2ab07a50 100644
--- a/engines/tsage/ringworld/ringworld_demo.cpp
+++ b/engines/tsage/ringworld/ringworld_demo.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_demo.h b/engines/tsage/ringworld/ringworld_demo.h
index 7c0ac39285..2b93a40049 100644
--- a/engines/tsage/ringworld/ringworld_demo.h
+++ b/engines/tsage/ringworld/ringworld_demo.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_dialogs.cpp b/engines/tsage/ringworld/ringworld_dialogs.cpp
index 4728e66cd9..226a943f08 100644
--- a/engines/tsage/ringworld/ringworld_dialogs.cpp
+++ b/engines/tsage/ringworld/ringworld_dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -385,7 +385,6 @@ void InventoryDialog::execute() {
if ((RING_INVENTORY._selectedItem) && RING_INVENTORY._selectedItem->inInventory())
RING_INVENTORY._selectedItem->setCursor();
- GfxElement *hiliteObj;
bool lookFlag = false;
_gfxManager.activate();
@@ -399,7 +398,7 @@ void InventoryDialog::execute() {
if (g_vm->shouldQuit())
break;
- hiliteObj = NULL;
+ GfxElement *hiliteObj = nullptr;
if ((event.eventType == EVENT_BUTTON_DOWN) && !_bounds.contains(event.mousePos))
break;
diff --git a/engines/tsage/ringworld/ringworld_dialogs.h b/engines/tsage/ringworld/ringworld_dialogs.h
index b14b3f6d78..68ac0a05f9 100644
--- a/engines/tsage/ringworld/ringworld_dialogs.h
+++ b/engines/tsage/ringworld/ringworld_dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_logic.cpp b/engines/tsage/ringworld/ringworld_logic.cpp
index 1e9d14cdcf..1d8293cffd 100644
--- a/engines/tsage/ringworld/ringworld_logic.cpp
+++ b/engines/tsage/ringworld/ringworld_logic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_logic.h b/engines/tsage/ringworld/ringworld_logic.h
index e902ac127f..d384593989 100644
--- a/engines/tsage/ringworld/ringworld_logic.h
+++ b/engines/tsage/ringworld/ringworld_logic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes1.cpp b/engines/tsage/ringworld/ringworld_scenes1.cpp
index df456f9ced..9eacc5ff10 100644
--- a/engines/tsage/ringworld/ringworld_scenes1.cpp
+++ b/engines/tsage/ringworld/ringworld_scenes1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1789,7 +1789,7 @@ Scene50::Scene50() :
_background(0, CURSOR_LOOK, 50, 3, LIST_END),
_item1(0, OBJECT_SCANNER, 50, 15, CURSOR_USE, 50, 16, CURSOR_LOOK, 50, 3, LIST_END),
_entrance(0, CURSOR_LOOK, 50, 7, LIST_END),
- // The original was using dialog 50/3 for CURSOR_LOOK, which is too generic.
+ // The original was using dialog 50/3 for CURSOR_LOOK, which is too generic.
_bulwark(8, OBJECT_STUNNER, 50, 14, OBJECT_SCANNER, 50, 13, CURSOR_LOOK, 30, 0, LIST_END),
_tree(9, OBJECT_SCANNER, 40, 39, OBJECT_STUNNER, 40, 40, CURSOR_USE, 40, 41, CURSOR_LOOK, 50, 5, LIST_END),
_flagstones(10, OBJECT_SCANNER, 50, 17, OBJECT_STUNNER, 50, 18, CURSOR_LOOK, 50, 6, CURSOR_USE, 30, 8, LIST_END) {
diff --git a/engines/tsage/ringworld/ringworld_scenes1.h b/engines/tsage/ringworld/ringworld_scenes1.h
index d52d4fb6ec..9f6de58e30 100644
--- a/engines/tsage/ringworld/ringworld_scenes1.h
+++ b/engines/tsage/ringworld/ringworld_scenes1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes10.cpp b/engines/tsage/ringworld/ringworld_scenes10.cpp
index eac181e350..c4874c0f59 100644
--- a/engines/tsage/ringworld/ringworld_scenes10.cpp
+++ b/engines/tsage/ringworld/ringworld_scenes10.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1217,7 +1217,7 @@ void Scene9500::postInit(SceneObjectList *OwnerList) {
g_globals->_events.setCursor(CURSOR_WALK);
g_globals->_player.disableControl();
- if ((g_globals->_sceneManager._previousScene == 9200) || (g_globals->_sceneManager._previousScene != 9850)) {
+ if (g_globals->_sceneManager._previousScene != 9850) {
_sceneMode = 0;
if (RING_INVENTORY._helmet._sceneNumber != 1) {
setAction(&_sequenceManager, this, 9501, &g_globals->_player, &_candle, NULL);
diff --git a/engines/tsage/ringworld/ringworld_scenes10.h b/engines/tsage/ringworld/ringworld_scenes10.h
index 48859ab454..ff1a6e9070 100644
--- a/engines/tsage/ringworld/ringworld_scenes10.h
+++ b/engines/tsage/ringworld/ringworld_scenes10.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes2.cpp b/engines/tsage/ringworld/ringworld_scenes2.cpp
index e07c9253e6..1140f6f3d1 100644
--- a/engines/tsage/ringworld/ringworld_scenes2.cpp
+++ b/engines/tsage/ringworld/ringworld_scenes2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes2.h b/engines/tsage/ringworld/ringworld_scenes2.h
index 382d9d4157..825cd04c17 100644
--- a/engines/tsage/ringworld/ringworld_scenes2.h
+++ b/engines/tsage/ringworld/ringworld_scenes2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes3.cpp b/engines/tsage/ringworld/ringworld_scenes3.cpp
index e834e659b5..d8556c691e 100644
--- a/engines/tsage/ringworld/ringworld_scenes3.cpp
+++ b/engines/tsage/ringworld/ringworld_scenes3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -4946,8 +4946,6 @@ void Scene2310::synchronize(Serializer &s) {
}
void Scene2310::process(Event &event) {
- int frameNum = 0;
-
if (!event.handled && (event.eventType == EVENT_BUTTON_DOWN)) {
int idx = 0;
while (idx < 5) {
@@ -4961,7 +4959,7 @@ void Scene2310::process(Event &event) {
if (_wireIndex == 5) {
// No wire is currently active, so start moving designated wire
_wireIndex = idx;
- frameNum = idx + 2;
+ int frameNum = idx + 2;
if (event.mousePos.y > 105)
idx = findObject(idx);
diff --git a/engines/tsage/ringworld/ringworld_scenes3.h b/engines/tsage/ringworld/ringworld_scenes3.h
index fafb72fcea..a371f800b9 100644
--- a/engines/tsage/ringworld/ringworld_scenes3.h
+++ b/engines/tsage/ringworld/ringworld_scenes3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes4.cpp b/engines/tsage/ringworld/ringworld_scenes4.cpp
index 98bf0158e7..4d40b34eea 100644
--- a/engines/tsage/ringworld/ringworld_scenes4.cpp
+++ b/engines/tsage/ringworld/ringworld_scenes4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes4.h b/engines/tsage/ringworld/ringworld_scenes4.h
index 64706805bc..72913ea8f2 100644
--- a/engines/tsage/ringworld/ringworld_scenes4.h
+++ b/engines/tsage/ringworld/ringworld_scenes4.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes5.cpp b/engines/tsage/ringworld/ringworld_scenes5.cpp
index 1242f9f448..cb8a89de80 100644
--- a/engines/tsage/ringworld/ringworld_scenes5.cpp
+++ b/engines/tsage/ringworld/ringworld_scenes5.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes5.h b/engines/tsage/ringworld/ringworld_scenes5.h
index b49d2a6f02..3010c7b401 100644
--- a/engines/tsage/ringworld/ringworld_scenes5.h
+++ b/engines/tsage/ringworld/ringworld_scenes5.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes6.cpp b/engines/tsage/ringworld/ringworld_scenes6.cpp
index 777eed2aab..74f834c64f 100644
--- a/engines/tsage/ringworld/ringworld_scenes6.cpp
+++ b/engines/tsage/ringworld/ringworld_scenes6.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes6.h b/engines/tsage/ringworld/ringworld_scenes6.h
index 4c10e4a711..fcc7f900ce 100644
--- a/engines/tsage/ringworld/ringworld_scenes6.h
+++ b/engines/tsage/ringworld/ringworld_scenes6.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes8.cpp b/engines/tsage/ringworld/ringworld_scenes8.cpp
index f9156479e5..60bd72e1ef 100644
--- a/engines/tsage/ringworld/ringworld_scenes8.cpp
+++ b/engines/tsage/ringworld/ringworld_scenes8.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_scenes8.h b/engines/tsage/ringworld/ringworld_scenes8.h
index fa441f87da..ad5a91514e 100644
--- a/engines/tsage/ringworld/ringworld_scenes8.h
+++ b/engines/tsage/ringworld/ringworld_scenes8.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_speakers.cpp b/engines/tsage/ringworld/ringworld_speakers.cpp
index dc80df40a3..a4ce95928c 100644
--- a/engines/tsage/ringworld/ringworld_speakers.cpp
+++ b/engines/tsage/ringworld/ringworld_speakers.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld/ringworld_speakers.h b/engines/tsage/ringworld/ringworld_speakers.h
index 305984a184..59e25dc166 100644
--- a/engines/tsage/ringworld/ringworld_speakers.h
+++ b/engines/tsage/ringworld/ringworld_speakers.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld2/ringworld2_dialogs.cpp b/engines/tsage/ringworld2/ringworld2_dialogs.cpp
index eb15585247..dfbb281cfb 100644
--- a/engines/tsage/ringworld2/ringworld2_dialogs.cpp
+++ b/engines/tsage/ringworld2/ringworld2_dialogs.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -197,19 +197,24 @@ int RightClickDialog::execute() {
void CharacterDialog::show() {
CharacterDialog *dlg = new CharacterDialog();
+ CursorType cursorNum = R2_GLOBALS._events.getCursor();
+
+ // Reset the current cursor
+ R2_GLOBALS._events.setCursor(CURSOR_ARROW);
+
dlg->draw();
// Make the default button the currently active character
GfxButton *btn = NULL;
int oldCharacter = R2_GLOBALS._player._characterIndex;
switch (oldCharacter) {
- case 1:
+ case R2_QUINN:
btn = &dlg->_btnQuinn;
break;
- case 2:
+ case R2_SEEKER:
btn = &dlg->_btnSeeker;
break;
- case 3:
+ case R2_MIRANDA:
btn = &dlg->_btnMiranda;
break;
default:
@@ -317,7 +322,13 @@ void CharacterDialog::show() {
// Change to whichever scene the newly selected character is in
R2_GLOBALS._sceneManager.changeScene(R2_GLOBALS._player._characterScene[R2_GLOBALS._player._characterIndex]);
- }
+
+ // Force the reset the current cursor
+ R2_GLOBALS._events.setCursor(CURSOR_USE);
+
+ } else
+ // Restore previous cursor
+ R2_GLOBALS._events.setCursor(cursorNum);
}
CharacterDialog::CharacterDialog() {
diff --git a/engines/tsage/ringworld2/ringworld2_dialogs.h b/engines/tsage/ringworld2/ringworld2_dialogs.h
index 0c19ae4371..8ef35c9024 100644
--- a/engines/tsage/ringworld2/ringworld2_dialogs.h
+++ b/engines/tsage/ringworld2/ringworld2_dialogs.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld2/ringworld2_logic.cpp b/engines/tsage/ringworld2/ringworld2_logic.cpp
index 39e398023d..c5c6de980c 100644
--- a/engines/tsage/ringworld2/ringworld2_logic.cpp
+++ b/engines/tsage/ringworld2/ringworld2_logic.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -294,7 +294,7 @@ Scene *Ringworld2Game::createScene(int sceneNumber) {
// Confrontation
return new Scene3400();
case 3500:
- // Flub tube maze
+ // Flub tube maze
return new Scene3500();
case 3600:
// Cutscene - walking at gunpoint
@@ -561,14 +561,14 @@ void SceneExt::saveCharacter(int characterIndex) {
void SceneExt::scalePalette(int RFactor, int GFactor, int BFactor) {
byte *tmpPal = R2_GLOBALS._scenePalette._palette;
byte newR, newG, newB;
- int tmp, varC, varD = 0;
+ int tmp, varD = 0;
for (int i = 0; i < 256; i++) {
newR = (RFactor * tmpPal[(3 * i)]) / 100;
newG = (GFactor * tmpPal[(3 * i) + 1]) / 100;
newB = (BFactor * tmpPal[(3 * i) + 2]) / 100;
- varC = 769;
+ int varC = 769;
for (int j = 255; j >= 0; j--) {
tmp = abs(tmpPal[(3 * j)] - newR);
if (tmp >= varC)
@@ -625,6 +625,11 @@ void SceneHandlerExt::process(Event &event) {
SceneHandler::process(event);
}
+void SceneHandlerExt::dispatch() {
+ R2_GLOBALS._playStream.dispatch();
+ SceneHandler::dispatch();
+}
+
void SceneHandlerExt::postLoad(int priorSceneBeforeLoad, int currentSceneBeforeLoad) {
// Set up the shading maps used for showing the player in shadows
setupPaletteMaps();
@@ -809,7 +814,7 @@ Ringworld2InvObjectList::Ringworld2InvObjectList():
_chargedPowerCapsule(1, 12),
_aerosol(1, 13),
_remoteControl(1, 14),
- _opticalFibre(1, 15),
+ _opticalFiber(1, 15),
_clamp(1, 16),
_attractorHarness(1, 17),
_fuelCell(2, 2),
@@ -864,7 +869,7 @@ Ringworld2InvObjectList::Ringworld2InvObjectList():
_itemList.push_back(&_chargedPowerCapsule);
_itemList.push_back(&_aerosol);
_itemList.push_back(&_remoteControl);
- _itemList.push_back(&_opticalFibre);
+ _itemList.push_back(&_opticalFiber);
_itemList.push_back(&_clamp);
_itemList.push_back(&_attractorHarness);
_itemList.push_back(&_fuelCell);
@@ -928,7 +933,7 @@ void Ringworld2InvObjectList::reset() {
setObjectScene(R2_CHARGED_POWER_CAPSULE, 400);
setObjectScene(R2_AEROSOL, 500);
setObjectScene(R2_REMOTE_CONTROL, 1550);
- setObjectScene(R2_OPTICAL_FIBRE, 850);
+ setObjectScene(R2_OPTICAL_FIBER, 850);
setObjectScene(R2_CLAMP, 850);
setObjectScene(R2_ATTRACTOR_CABLE_HARNESS, 0);
setObjectScene(R2_FUEL_CELL, 1550);
@@ -1210,6 +1215,12 @@ void Ringworld2Game::processEvent(Event &event) {
R2_GLOBALS._events.setCursorFromFlag();
break;
+ case Common::KEYCODE_F5:
+ // F5 - Save
+ saveGame();
+ R2_GLOBALS._events.setCursorFromFlag();
+ break;
+
case Common::KEYCODE_F7:
// F7 - Restore
restoreGame();
@@ -1421,7 +1432,7 @@ void SceneExit::process(Event &event) {
if (!R2_GLOBALS._insetUp) {
SceneArea::process(event);
- if (_enabled) {
+ if (_enabled && R2_GLOBALS._player._enabled) {
if (event.eventType == EVENT_BUTTON_DOWN) {
if (!_bounds.contains(mousePos))
_moving = false;
@@ -2329,7 +2340,7 @@ void ScannerDialog::Button::reset() {
case 1800:
if (R2_GLOBALS._rimLocation < 1201)
scanner._obj4.setup(4, 3, 3);
- else if (R2_GLOBALS._rimLocation < 1201)
+ else if (R2_GLOBALS._rimLocation > 1201)
scanner._obj4.setup(4, 3, 4);
else
scanner._obj4.setup(4, 3, 5);
diff --git a/engines/tsage/ringworld2/ringworld2_logic.h b/engines/tsage/ringworld2/ringworld2_logic.h
index c9695c921d..31d801fa55 100644
--- a/engines/tsage/ringworld2/ringworld2_logic.h
+++ b/engines/tsage/ringworld2/ringworld2_logic.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -114,6 +114,7 @@ public:
virtual void postInit(SceneObjectList *OwnerList = NULL);
virtual void process(Event &event);
virtual void postLoad(int priorSceneBeforeLoad, int currentSceneBeforeLoad);
+ virtual void dispatch();
void setupPaletteMaps();
};
@@ -177,7 +178,7 @@ public:
InvObject _chargedPowerCapsule;
InvObject _aerosol;
InvObject _remoteControl;
- InvObject _opticalFibre;
+ InvObject _opticalFiber;
InvObject _clamp;
InvObject _attractorHarness;
InvObject _fuelCell;
diff --git a/engines/tsage/ringworld2/ringworld2_scenes0.cpp b/engines/tsage/ringworld2/ringworld2_scenes0.cpp
index 3fd728ce5b..b82565332a 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes0.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes0.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1678,7 +1678,7 @@ void Scene180::signal() {
case 24:
case 26:
case 46:
- setSceneDelay((R2_GLOBALS._speechSubtitles & 1) ? 1 : 18);
+ setSceneDelay((R2_GLOBALS._speechSubtitles & SPEECH_TEXT) ? 1 : 18);
break;
case 13:
@@ -2561,7 +2561,7 @@ void Scene205Demo::postInit(SceneObjectList *OwnerList) {
loadScene(1000);
R2_GLOBALS._uiElements._active = false;
R2_GLOBALS._player.enableControl();
-
+
SceneExt::postInit();
_sound1.play(337);
@@ -2993,7 +2993,7 @@ void Scene300::Action4::signal() {
bool Scene300::QuinnWorkstation::startAction(CursorType action, Event &event) {
switch (action) {
case CURSOR_USE:
- if (R2_GLOBALS._player._characterIndex != 1)
+ if (R2_GLOBALS._player._characterIndex != R2_QUINN)
SceneItem::display2(300, 46);
else if (R2_GLOBALS.getFlag(44)) {
R2_GLOBALS._player.setAction(NULL);
@@ -3024,7 +3024,7 @@ bool Scene300::QuinnWorkstation::startAction(CursorType action, Event &event) {
bool Scene300::MirandaWorkstation::startAction(CursorType action, Event &event) {
switch (action) {
case CURSOR_USE:
- if (R2_GLOBALS._player._characterIndex != 3)
+ if (R2_GLOBALS._player._characterIndex != R2_MIRANDA)
SceneItem::display2(300, 49);
else
R2_GLOBALS._sceneManager.changeScene(325);
@@ -3054,7 +3054,7 @@ bool Scene300::SeekerWorkstation::startAction(CursorType action, Event &event) {
break;
case CURSOR_USE:
- if (R2_GLOBALS._player._characterIndex != 2)
+ if (R2_GLOBALS._player._characterIndex != R2_SEEKER)
SceneItem::display2(300, 48);
else
R2_GLOBALS._sceneManager.changeScene(325);
@@ -3465,7 +3465,7 @@ void Scene300::postInit(SceneObjectList *OwnerList) {
_background.setDetails(Rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT), 300, 0, -1, -1, 1, NULL);
switch (R2_GLOBALS._player._characterIndex) {
- case 1:
+ case R2_QUINN:
_sceneMode = 300;
switch (R2_GLOBALS._sceneManager._previousScene) {
@@ -3483,10 +3483,13 @@ void Scene300::postInit(SceneObjectList *OwnerList) {
if (R2_GLOBALS.getFlag(55)) {
if (R2_GLOBALS.getFlag(57)) {
+ // Little hack to get the correct sentence order
+ R2_GLOBALS._stripManager_lookupList[8] = 2;
+
R2_GLOBALS.clearFlag(60);
R2_GLOBALS._events.setCursor(CURSOR_ARROW);
_sceneMode = 16;
- _stripManager.start(404, this);
+ _stripManager.start3(404, this, R2_GLOBALS._stripManager_lookupList);
} else {
R2_GLOBALS._player.enableControl();
R2_GLOBALS._player._canWalk = false;
@@ -3554,7 +3557,7 @@ void Scene300::postInit(SceneObjectList *OwnerList) {
}
break;
- case 3:
+ case R2_MIRANDA:
if (R2_GLOBALS._sceneManager._previousScene == 1500) {
R2_GLOBALS._player._oldCharacterScene[R2_MIRANDA] = 3150;
R2_GLOBALS._player._characterScene[R2_MIRANDA] = 3150;
@@ -3639,7 +3642,7 @@ void Scene300::signal() {
default:
R2_GLOBALS._player.enableControl(CURSOR_TALK);
- if ((R2_GLOBALS._player._characterIndex != 1) || R2_GLOBALS.getFlag(44))
+ if ((R2_GLOBALS._player._characterIndex != R2_QUINN) || R2_GLOBALS.getFlag(44))
R2_GLOBALS._player._canWalk = false;
break;
}
@@ -4151,11 +4154,22 @@ void Scene325::signal() {
--v;
if (_priorConsoleAction == 5)
v += 8;
+
if (R2_GLOBALS.getFlag(51) && (v == 2))
R2_GLOBALS.setFlag(57);
if (R2_GLOBALS.getFlag(44) && !R2_GLOBALS.getFlag(51)) {
if (v != 13) {
+ if (_priorConsoleAction == 6) {
+ // Fix for original game bug.
+ // The passive short scan geographical and astronomical sentences
+ // are inverted in the original game.
+ if (v == 6)
+ v = 8;
+ else if (v == 8)
+ v = 6;
+ }
+
setMessage(328, v);
} else {
_scannerLocation = 864;
@@ -4302,12 +4316,12 @@ void Scene325::signal() {
if (_soundCount)
--_soundCount;
- if (!_soundCount || (R2_GLOBALS._speechSubtitles == 2)) {
+ if (!_soundCount || !(R2_GLOBALS._speechSubtitles & SPEECH_VOICE)) {
_soundIndex = 0;
R2_GLOBALS._playStream.stop();
} else {
_sceneMode = 15;
- R2_GLOBALS._playStream.play(_soundQueue[_soundIndex], this);
+ R2_GLOBALS._playStream.play(_soundQueue[_soundIndex++], this);
}
break;
default:
@@ -4513,6 +4527,7 @@ void Scene325::consoleAction(int id) {
case 14:
if (R2_GLOBALS.getFlag(55)) {
consoleAction(4);
+ // Workaround for original game bug.
// Empty message crashing the game. It should be a warning message forbidding to switch to active scan
// SceneItem::display2(329, 17);
} else {
@@ -4688,7 +4703,7 @@ void Scene325::setMessage(int resNum, int lineNum) {
R2_GLOBALS._sceneObjects->draw();
- if ((_soundCount != 0) && (R2_GLOBALS._speechSubtitles != 2)) {
+ if ((_soundCount != 0) && (R2_GLOBALS._speechSubtitles & SPEECH_VOICE)) {
_sceneMode = 15;
R2_GLOBALS._playStream.play(_soundQueue[_soundIndex++], this);
}
@@ -5753,24 +5768,47 @@ bool Scene600::Smoke::startAction(CursorType action, Event &event) {
return false;
}
-GfxSurface Scene600::Smoke::getFrame() {
- GfxSurface frame = SceneActor::getFrame();
+void Scene600::Smoke::draw() {
+ // Effect should always be active on smoke, but since the original had this
+ // check, include it here too
+ if (_effect == EFFECT_NONE) {
+ SceneActor::draw();
+ return;
+ }
+
+ // Determine the area of the screen to be updated
+ Rect destRect = _bounds;
+ destRect.translate(-g_globals->_sceneManager._scene->_sceneBounds.left,
+ -g_globals->_sceneManager._scene->_sceneBounds.top);
+
+ // Get the smoke frame, screen reference, and pixel palette translation map
+ GfxSurface frame = getFrame();
+ Graphics::Surface s = frame.lockSurface();
+ Graphics::Surface screen = g_globals->gfxManager().getSurface().lockSurface();
+ byte *pixelMap = static_cast<Scene600 *>(R2_GLOBALS._sceneManager._scene)->_pixelMap;
- if (_effect) {
- // Translate the frame using the scene's pixel map
- byte *pixelMap = static_cast<Scene600 *>(R2_GLOBALS._sceneManager._scene)->_pixelMap;
- Graphics::Surface surface = frame.lockSurface();
- byte *srcP = (byte *)surface.getPixels();
+ // Loop through every pixel of the frame. Any pixel of the frame that's not a
+ // tranparency, get the same pixel from the screen background, and shade it using
+ // the scene's pixel translation map
+ for (int yp = 0; yp < s.h; ++yp) {
+ byte *frameSrcP = (byte *)s.getBasePtr(0, yp);
+ byte *screenP = (byte *)screen.getBasePtr(destRect.left, destRect.top + yp);
- while (srcP < ((byte *)surface.getBasePtr(0, surface.h))) {
- *srcP = pixelMap[*srcP];
- srcP++;
+ for (int xp = 0; xp < s.w; ++xp, ++frameSrcP, ++screenP) {
+ if (*frameSrcP != frame._transColor) {
+ *frameSrcP = pixelMap[*screenP];
+ }
}
-
- frame.unlockSurface();
}
- return frame;
+ // Finished updating the frame
+ frame.unlockSurface();
+ g_globals->gfxManager().getSurface().unlockSurface();
+
+ // Draw the processed frame
+ Region *priorityRegion = g_globals->_sceneManager._scene->_priorities.find(_priority);
+ g_globals->gfxManager().copyFrom(frame, destRect, priorityRegion);
+
}
bool Scene600::Doorway::startAction(CursorType action, Event &event) {
@@ -5846,7 +5884,7 @@ bool Scene600::Laser::startAction(CursorType action, Event &event) {
scene->_smoke.postInit();
scene->_smoke.setup(601, 3, 1);
- scene->_smoke._effect = EFFECT_3;
+ scene->_smoke._effect = EFFECT_SMOKE;
scene->_smoke._moveDiff = Common::Point(1, 1);
scene->_smoke._moveRate = 2;
scene->_smoke._numFrames = 3;
@@ -6027,7 +6065,7 @@ void Scene600::postInit(SceneObjectList *OwnerList) {
_smoke._numFrames = 3;
_smoke.animate(ANIM_MODE_2, NULL);
_smoke.fixPriority(130);
- _smoke._effect = EFFECT_3;
+ _smoke._effect = EFFECT_SMOKE;
_smoke.setDetails(600, 24, 25, 26, 1, (SceneItem *) NULL);
_smoke.signal();
}
@@ -6098,7 +6136,7 @@ void Scene600::signal() {
R2_INVENTORY.setObjectScene(R2_AEROSOL, 600);
R2_GLOBALS.setFlag(5);
- _smoke._effect = EFFECT_3;
+ _smoke._effect = EFFECT_SMOKE;
_smoke.signal();
break;
case 606:
@@ -6686,19 +6724,19 @@ bool Scene800::Button::startAction(CursorType action, Event &event) {
}
bool Scene800::CableJunction::startAction(CursorType action, Event &event) {
- if (action != R2_OPTICAL_FIBRE) {
+ if (action != R2_OPTICAL_FIBER) {
return NamedHotspot::startAction(action, event);
} else {
Scene800 *scene = (Scene800 *)R2_GLOBALS._sceneManager._scene;
R2_GLOBALS._player.disableControl();
- scene->_opticalFibre.postInit();
+ scene->_opticalFiber.postInit();
scene->_sceneMode = 803;
if (R2_INVENTORY.getObjectScene(R2_READER) == 800)
- scene->setAction(&scene->_sequenceManager1, scene, 813, &R2_GLOBALS._player, &scene->_opticalFibre, &scene->_reader, NULL);
+ scene->setAction(&scene->_sequenceManager1, scene, 813, &R2_GLOBALS._player, &scene->_opticalFiber, &scene->_reader, NULL);
else
- scene->setAction(&scene->_sequenceManager1, scene, 803, &R2_GLOBALS._player, &scene->_opticalFibre, NULL);
+ scene->setAction(&scene->_sequenceManager1, scene, 803, &R2_GLOBALS._player, &scene->_opticalFiber, NULL);
return true;
}
@@ -6716,8 +6754,8 @@ bool Scene800::DeviceSlot::startAction(CursorType action, Event &event) {
_lookLineNum = 27;
scene->_sceneMode = 809;
- if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBRE) == 800)
- scene->setAction(&scene->_sequenceManager1, scene, 815, &R2_GLOBALS._player, &scene->_reader, &scene->_opticalFibre, NULL);
+ if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBER) == 800)
+ scene->setAction(&scene->_sequenceManager1, scene, 815, &R2_GLOBALS._player, &scene->_reader, &scene->_opticalFiber, NULL);
else
scene->setAction(&scene->_sequenceManager1, scene, 809, &R2_GLOBALS._player, &scene->_reader, NULL);
return true;
@@ -6726,9 +6764,9 @@ bool Scene800::DeviceSlot::startAction(CursorType action, Event &event) {
scene->_reader.postInit();
scene->_sceneMode = 804;
- if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBRE) == 800) {
+ if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBER) == 800) {
scene->setAction(&scene->_sequenceManager1, scene, 814, &R2_GLOBALS._player,
- &scene->_reader, &scene->_opticalFibre, NULL);
+ &scene->_reader, &scene->_opticalFiber, NULL);
} else {
scene->setAction(&scene->_sequenceManager1, scene, 804, &R2_GLOBALS._player,
&scene->_reader, NULL);
@@ -6844,22 +6882,22 @@ void Scene800::postInit(SceneObjectList *OwnerList) {
_autodocCover.setPosition(Common::Point(119, 161));
_autodocCover.setDetails(800, 6, 7, -1, 1, (SceneItem *)NULL);
- if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBRE) == 800) {
- _opticalFibre.postInit();
+ if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBER) == 800) {
+ _opticalFiber.postInit();
if (R2_INVENTORY.getObjectScene(R2_READER) == 800)
- _opticalFibre.setup(800, 4, 1);
+ _opticalFiber.setup(800, 4, 1);
else
- _opticalFibre.setup(800, 7, 2);
+ _opticalFiber.setup(800, 7, 2);
- _opticalFibre.setPosition(Common::Point(220, 124));
- _opticalFibre.fixPriority(140);
+ _opticalFiber.setPosition(Common::Point(220, 124));
+ _opticalFiber.fixPriority(140);
}
if (R2_INVENTORY.getObjectScene(R2_READER) == 800) {
_reader.postInit();
- if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBRE) == 800) {
- _opticalFibre.setup(800, 4, 1);
+ if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBER) == 800) {
+ _opticalFiber.setup(800, 4, 1);
_reader.hide();
} else {
_reader.setup(800, 7, 1);
@@ -6934,7 +6972,7 @@ void Scene800::signal() {
break;
case 803:
R2_GLOBALS._player.enableControl();
- R2_INVENTORY.setObjectScene(R2_OPTICAL_FIBRE, 800);
+ R2_INVENTORY.setObjectScene(R2_OPTICAL_FIBER, 800);
break;
case 804:
R2_GLOBALS._player.enableControl();
@@ -7230,7 +7268,7 @@ void Scene825::doButtonPress(int buttonId) {
if (R2_GLOBALS.getFlag(4)) {
if ((R2_INVENTORY.getObjectScene(R2_READER) != 800) ||
- (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBRE) != 800)) {
+ (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBER) != 800)) {
_sceneText.setPosition(Common::Point(116, 75));
_sceneText.setup(ACCESS_CODE_REQUIRED);
} else if (R2_INVENTORY.getObjectScene(R2_OPTO_DISK) != 800) {
@@ -7247,7 +7285,7 @@ void Scene825::doButtonPress(int buttonId) {
R2_GLOBALS.setFlag(2);
if ((R2_INVENTORY.getObjectScene(R2_READER) != 800) ||
- (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBRE) != 800)) {
+ (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBER) != 800)) {
_sceneText.setPosition(Common::Point(116, 75));
_sceneText.setup(ACCESS_CODE_REQUIRED);
} else {
@@ -7347,14 +7385,14 @@ void Scene825::doButtonPress(int buttonId) {
*--------------------------------------------------------------------------*/
bool Scene850::Indicator::startAction(CursorType action, Event &event) {
- if ((action != CURSOR_USE) || (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBRE) != 850))
+ if ((action != CURSOR_USE) || (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBER) != 850))
return NamedHotspot::startAction(action, event);
else {
Scene850 *scene = (Scene850 *)R2_GLOBALS._sceneManager._scene;
R2_GLOBALS._player.disableControl();
scene->_sceneMode = 851;
- scene->setAction(&scene->_sequenceManager1, scene, 851, &R2_GLOBALS._player, &scene->_fibre, NULL);
+ scene->setAction(&scene->_sequenceManager1, scene, 851, &R2_GLOBALS._player, &scene->_fiber, NULL);
return true;
}
}
@@ -7453,10 +7491,10 @@ void Scene850::postInit(SceneObjectList *OwnerList) {
_panel.fixPriority(82);
_panel.setDetails(850, 24, -1, -1, 1, (SceneItem *)NULL);
- if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBRE) == 850) {
- _fibre.postInit();
- _fibre.setup(850, 6, 1);
- _fibre.setPosition(Common::Point(280, 87));
+ if (R2_INVENTORY.getObjectScene(R2_OPTICAL_FIBER) == 850) {
+ _fiber.postInit();
+ _fiber.setup(850, 6, 1);
+ _fiber.setPosition(Common::Point(280, 87));
}
R2_GLOBALS._player.postInit();
@@ -7503,8 +7541,8 @@ void Scene850::signal() {
R2_GLOBALS._player.enableControl();
break;
case 851:
- R2_INVENTORY.setObjectScene(R2_OPTICAL_FIBRE, 1);
- _fibre.remove();
+ R2_INVENTORY.setObjectScene(R2_OPTICAL_FIBER, 1);
+ _fiber.remove();
R2_GLOBALS._player.enableControl();
break;
case 852:
diff --git a/engines/tsage/ringworld2/ringworld2_scenes0.h b/engines/tsage/ringworld2/ringworld2_scenes0.h
index 216039a348..f50c9a92a2 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes0.h
+++ b/engines/tsage/ringworld2/ringworld2_scenes0.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -661,7 +661,7 @@ class Scene600 : public SceneExt {
public:
virtual void signal();
virtual bool startAction(CursorType action, Event &event);
- virtual GfxSurface getFrame();
+ virtual void draw();
};
class Doorway : public SceneActor {
public:
@@ -809,7 +809,7 @@ public:
Button _button;
CableJunction _cableJunction;
DeviceSlot _deviceSlot;
- SceneActor _autodocCover, _opticalFibre, _reader;
+ SceneActor _autodocCover, _opticalFiber, _reader;
Door _door;
Tray _tray;
ComScanner _comScanner;
@@ -885,7 +885,7 @@ public:
NamedHotspot _background, _eastDoor, _compartment, _sickBayIndicator;
NamedHotspot _liftControls;
Indicator _indicator;
- SceneActor _spark, _fibre;
+ SceneActor _spark, _fiber;
LiftDoor _liftDoor;
SickBayDoor _sickBayDoor;
Clamp _clamp;
diff --git a/engines/tsage/ringworld2/ringworld2_scenes1.cpp b/engines/tsage/ringworld2/ringworld2_scenes1.cpp
index 075420a1c9..110c3ff510 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes1.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes1.cpp
@@ -5,15 +5,15 @@
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU GenWeral Public License
+ * modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -2277,11 +2277,11 @@ void Scene1337::Action1337::waitFrames(int32 frameCount) {
g_globals->_events.getEvent(event);
curFrame = g_globals->_events.getFrameNumber();
}
-
+
// CHECKME: The original is calling _eventManager.waitEvent();
}
-/**
+/**
* Display instructions
*/
void Scene1337::Action1::signal() {
@@ -3366,7 +3366,7 @@ void Scene1337::Action3::signal() {
}
}
-/**
+/**
* Action used to handle the other players' turn
*/
void Scene1337::Action4::signal() {
@@ -3542,7 +3542,7 @@ void Scene1337::Action4::signal() {
}
}
-/**
+/**
* Animations for discarding a card
*/
void Scene1337::Action5::signal() {
@@ -3587,7 +3587,7 @@ void Scene1337::Action5::signal() {
}
}
-/**
+/**
* Animations for playing a platform card
*/
void Scene1337::Action6::signal() {
@@ -3913,8 +3913,6 @@ void Scene1337::Action10::signal() {
void Scene1337::Action11::signal() {
Scene1337 *scene = (Scene1337 *)R2_GLOBALS._sceneManager._scene;
- bool noAction = true;
-
switch (_actionIndex++) {
case 0: {
scene->_actionCard2->_card.postInit();
@@ -3944,6 +3942,8 @@ void Scene1337::Action11::signal() {
scene->_aSound1.play(57);
bool found = false;
+ bool noAction = true;
+
int i = -1;
switch (scene->_actionIdx2) {
@@ -4529,9 +4529,9 @@ void Scene1337::actionDisplay(int resNum, int lineNum, int x, int y, int keepOnS
// TODO: Check if it's normal that arg5 is unused and replaced by an hardcoded 0 value
// May hide an original bug
- SceneItem::display(resNum, lineNum, SET_X, x, SET_Y, y, SET_KEEP_ONSCREEN, 0,
- SET_WIDTH, width, SET_POS_MODE, -1, SET_TEXT_MODE, textMode,
- SET_FONT, fontNum, SET_FG_COLOR, colFG, SET_EXT_BGCOLOR, colBGExt,
+ SceneItem::display(resNum, lineNum, SET_X, x, SET_Y, y, SET_KEEP_ONSCREEN, 0,
+ SET_WIDTH, width, SET_POS_MODE, -1, SET_TEXT_MODE, textMode,
+ SET_FONT, fontNum, SET_FG_COLOR, colFG, SET_EXT_BGCOLOR, colBGExt,
SET_EXT_FGCOLOR, colFGExt, LIST_END);
}
@@ -5411,10 +5411,10 @@ void Scene1337::showOptionsDialog() {
}
void Scene1337::handleClick(int arg1, Common::Point pt) {
- bool found = false;
int curReg = R2_GLOBALS._sceneRegions.indexOf(g_globals->_events._mousePos);
if (arg1 == 3) {
+ bool found = false;
int i;
for (i = 0; i <= 7; i++) {
if ( _gameBoardSide[2]._outpostStation[i].isIn(pt)
@@ -5956,7 +5956,7 @@ void Scene1337::handlePlayer1() {
break;
}
}
- // The original was only updating in the rndVal block,
+ // The original was only updating in the rndVal block,
// which was a bug as the checks were stopping at this point
rndVal--;
if (rndVal < 0)
@@ -6261,7 +6261,7 @@ void Scene1337::handlePlayer2() {
return;
} else {
// The original code is calling a function full of dead code.
- // Only this message remains after a cleanup.
+ // Only this message remains after a cleanup.
MessageDialog::show(WRONG_ANSWER_MSG, OK_BTN_STRING);
//
handleAutoplayPlayer2();
@@ -6635,11 +6635,11 @@ void Scene1337::setCursorData(int resNum, int rlbNum, int frameNum) {
_cursorCurFrame = frameNum;
if (!frameNum) {
- // Should be a hardcoded cursor displaying only a dot.
+ // Should be a hardcoded cursor displaying only a dot.
// FIXME: Use another cursor when possible
R2_GLOBALS._events.setCursor(CURSOR_CROSSHAIRS);
} else {
- // TODO: The original was using some ressource caching, which was useless and complex
+ // TODO: The original was using some ressource caching, which was useless and complex
// and which has been removed. This cursor behavior clearly made intensive use of this caching...
// We now have to find a way to cache these cursor pointers and avoid loading them multiple times per seconds
uint size;
@@ -6697,7 +6697,7 @@ void Scene1337::OptionsDialog::show() {
R2_GLOBALS._sceneManager.changeScene(125);
else if (btn == &dlg->_restartGame)
R2_GLOBALS._sceneManager.changeScene(1330);
-
+
// Remove the dialog
dlg->remove();
delete dlg;
@@ -7439,7 +7439,7 @@ void Scene1550::DishControlsWindow::setup2(int visage, int stripFrameNum, int fr
if (scene->_dish._frame == 1)
_lever.setup(1559, 2, 1);
else
- _lever.setup(1559, 2, 2);
+ _lever.setup(1559, 2, 5);
_lever.setPosition(Common::Point(156, 103));
_lever.fixPriority(251);
_lever.setDetails(1550, 69, -1, -1, 2, (SceneItem *) NULL);
@@ -7773,7 +7773,7 @@ void Scene1550::signal() {
_dishControlsWindow.remove();
_sceneMode = 20;
setAction(&_sequenceManager1, this, 1566, &_dish, &_dishTowerShadow, NULL);
- R2_GLOBALS.setFlag(21);
+ R2_GLOBALS.setFlag(19);
break;
case 24:
_dishControlsWindow.remove();
@@ -8560,7 +8560,7 @@ void Scene1550::enterArea() {
int varA = 0;
- // This section handles checks if the ARM spacecraft have not yet seized
+ // This section handles checks if the ARM spacecraft have not yet seized
// control of Lance of Truth.
if (!R2_GLOBALS.getFlag(16)) {
switch (R2_GLOBALS._s1550PlayerArea[R2_GLOBALS._player._characterIndex].y - 2) {
@@ -8654,9 +8654,9 @@ void Scene1550::enterArea() {
default:
break;
}
- if ((R2_GLOBALS._s1550PlayerArea[R2_GLOBALS._player._characterIndex].y > 0) &&
- (R2_GLOBALS._s1550PlayerArea[R2_GLOBALS._player._characterIndex].x <= 29) &&
- ((R2_GLOBALS._s1550PlayerArea[R2_GLOBALS._player._characterIndex].x < 20) ||
+ if ((R2_GLOBALS._s1550PlayerArea[R2_GLOBALS._player._characterIndex].y > 0) &&
+ (R2_GLOBALS._s1550PlayerArea[R2_GLOBALS._player._characterIndex].x <= 29) &&
+ ((R2_GLOBALS._s1550PlayerArea[R2_GLOBALS._player._characterIndex].x < 20) ||
(R2_GLOBALS._s1550PlayerArea[R2_GLOBALS._player._characterIndex].y > 7))) {
// In an area where the cutscene can be triggered, so start it
R2_GLOBALS.setFlag(16);
@@ -8699,7 +8699,7 @@ void Scene1550::enterArea() {
warning("missing for loop, to be implemented");
warning("gfx_draw_slice");
}
- warning("Missing sub2957D()");
+ warning("gfx_flip_screen()");
warning("gfx_set_pane_p()");
#endif
R2_GLOBALS._sceneManager._fadeMode = FADEMODE_IMMEDIATE;
@@ -11095,7 +11095,7 @@ bool Scene1800::Doors::startAction(CursorType action, Event &event) {
} else {
// Seeker failing to force open doors
scene->_sceneMode = 1813;
- // Original was using 1813 in setAction too, but it somewhat broken.
+ // Original was using 1813 in setAction too, but it somewhat broken.
// Seeker goes 2 pixels to high, hiding behind the door
scene->setAction(&scene->_sequenceManager, scene, 1808, &R2_GLOBALS._player, &scene->_doors, NULL);
}
@@ -11190,7 +11190,7 @@ void Scene1800::SouthExit::changeScene() {
if (R2_GLOBALS._player._characterIndex == R2_QUINN)
scene->setAction(&scene->_sequenceManager, scene, 1802, &R2_GLOBALS._player, &scene->_companion, NULL);
else
- scene->setAction(&scene->_sequenceManager, scene, 1802, &R2_GLOBALS._player, &scene->_companion, NULL);
+ scene->setAction(&scene->_sequenceManager, scene, 1803, &R2_GLOBALS._player, &scene->_companion, NULL);
}
}
@@ -13182,7 +13182,7 @@ bool Scene1945::Ladder::startAction(CursorType action, Event &event) {
} else if ( ((R2_GLOBALS._player._position.x == 197) && (R2_GLOBALS._player._position.y == 158))
|| ((R2_GLOBALS._player._position.x == 191) && (R2_GLOBALS._player._position.y == 142)) ) {
scene->_sceneMode = 1947;
- } else if ((R2_GLOBALS._player._position.x == 154) && (R2_GLOBALS._player._position.y == 50)
+ } else if ((R2_GLOBALS._player._position.x == 154) && (R2_GLOBALS._player._position.y == 50)
&& (event.mousePos.y >= 30)) {
scene->_sceneMode = 1940;
} else {
diff --git a/engines/tsage/ringworld2/ringworld2_scenes1.h b/engines/tsage/ringworld2/ringworld2_scenes1.h
index c809353051..91c4b88391 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes1.h
+++ b/engines/tsage/ringworld2/ringworld2_scenes1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld2/ringworld2_scenes2.cpp b/engines/tsage/ringworld2/ringworld2_scenes2.cpp
index f928f3635c..bd8a0cdd0d 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes2.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -4872,10 +4872,10 @@ void Scene2900::Map::drawBlock(const byte *data, int xp, int yp,
void Scene2900::Map::moveArea(Rect &r, int xAmt, int yAmt) {
Rect tempRect = r;
tempRect.translate(xAmt, yAmt);
- int xpSrc, xpDest, width;
- int ypSrc, ypDest, height;
if (tempRect.intersects(r)) {
+ int xpSrc, xpDest, width;
+ int ypSrc, ypDest, height;
if (xAmt >= 0) {
xpSrc = tempRect.left;
width = tempRect.width() - xAmt;
diff --git a/engines/tsage/ringworld2/ringworld2_scenes2.h b/engines/tsage/ringworld2/ringworld2_scenes2.h
index 3960d93f94..1339504712 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes2.h
+++ b/engines/tsage/ringworld2/ringworld2_scenes2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld2/ringworld2_scenes3.cpp b/engines/tsage/ringworld2/ringworld2_scenes3.cpp
index 5b41a85326..3f32503fdf 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes3.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -1275,7 +1275,7 @@ void Scene3250::signal() {
}
void Scene3250::dispatch() {
- if ((R2_GLOBALS._player._visage == 3250) && (R2_GLOBALS._player._strip == 3) && (R2_GLOBALS._player._effect == 0)) {
+ if ((R2_GLOBALS._player._visage == 3250) && (R2_GLOBALS._player._strip == 3) && (R2_GLOBALS._player._effect == EFFECT_NONE)) {
R2_GLOBALS._player._effect = EFFECT_SHADED2;
R2_GLOBALS._player._shade = 6;
}
@@ -2221,24 +2221,24 @@ void Scene3375::signal() {
}
void Scene3375::dispatch() {
- if ((R2_GLOBALS._player._position.y >= 168) && (R2_GLOBALS._player._effect == 1))
+ if ((R2_GLOBALS._player._position.y >= 168) && (R2_GLOBALS._player._effect == EFFECT_SHADED))
R2_GLOBALS._player._effect = EFFECT_SHADED2;
- else if ((R2_GLOBALS._player._position.y < 168) && (R2_GLOBALS._player._effect == 6))
+ else if ((R2_GLOBALS._player._position.y < 168) && (R2_GLOBALS._player._effect == EFFECT_SHADED2))
R2_GLOBALS._player._effect = EFFECT_SHADED;
- if ((_companion1._position.y >= 168) && (_companion1._effect == 1))
+ if ((_companion1._position.y >= 168) && (_companion1._effect == EFFECT_SHADED))
_companion1._effect = EFFECT_SHADED2;
- else if ((_companion1._position.y < 168) && (_companion1._effect == 6))
+ else if ((_companion1._position.y < 168) && (_companion1._effect == EFFECT_SHADED2))
_companion1._effect = EFFECT_SHADED;
- if ((_companion2._position.y >= 168) && (_companion2._effect == 1))
+ if ((_companion2._position.y >= 168) && (_companion2._effect == EFFECT_SHADED))
_companion2._effect = EFFECT_SHADED2;
- else if ((_companion2._position.y < 168) && (_companion2._effect == 6))
+ else if ((_companion2._position.y < 168) && (_companion2._effect == EFFECT_SHADED2))
_companion2._effect = EFFECT_SHADED;
- if ((_webbster._position.y >= 168) && (_webbster._effect == 1))
+ if ((_webbster._position.y >= 168) && (_webbster._effect == EFFECT_SHADED))
_webbster._effect = EFFECT_SHADED2;
- else if ((_webbster._position.y < 168) && (_webbster._effect == 6))
+ else if ((_webbster._position.y < 168) && (_webbster._effect == EFFECT_SHADED2))
_webbster._effect = EFFECT_SHADED;
Scene::dispatch();
@@ -3896,7 +3896,6 @@ void Scene3500::dispatch() {
int16 mazePosY = 0;
int deltaX = 0;
int deltaY = 0;
- int tmpCellId = 0;
int cellId = 0;
if ((_mazeChangeAmount == 0) && !_postFixupFl) {
@@ -3912,7 +3911,7 @@ void Scene3500::dispatch() {
mazePosY = _mazeUI.cellFromY(_mazePosition.y + 46) - 46;
deltaX = abs(mazePosX - newMazeX);
deltaY = abs(mazePosY - newMazeY);
- tmpCellId = 0;
+ int tmpCellId = 0;
switch (_mazeDirection) {
case MAZEDIR_NORTH:
@@ -3956,7 +3955,7 @@ void Scene3500::dispatch() {
if ( (((cellId == 23) || (cellId == 24) || (cellId == 4)) && (newMazeY <= mazePosY) && (_mazePosition.y>= mazePosY))
|| (((cellId == 25) || (cellId == 26) || (cellId == 5) || (cellId == 14) || (cellId == 15)) && (_mazeChangeAmount >= deltaY) && (_mazeChangeAmount > 3) && (_action1._turningFl != 0)) ) {
newMazeY = mazePosY;
- if ((cellId != 25) && (cellId != 26) && (cellId != 5) && (cellId != 14) && (cellId == 15))
+ if ((cellId != 25) && (cellId != 26) && (cellId != 5) && (cellId != 14) && (cellId != 15))
R2_GLOBALS._sound2.play(339);
_rotation->_idxChange = 0;
_speed = 0;
@@ -4469,7 +4468,7 @@ void Scene3600::postInit(SceneObjectList *OwnerList) {
_quinn.changeZoom(-1);
_quinn._effect = EFFECT_SHADED;
- if (R2_GLOBALS._player._characterIndex != 1)
+ if (R2_GLOBALS._player._characterIndex != R2_QUINN)
_quinn.setDetails(9001, 0, -1, -1, 1, (SceneItem *) NULL);
_seeker.postInit();
@@ -4478,7 +4477,7 @@ void Scene3600::postInit(SceneObjectList *OwnerList) {
_seeker.changeZoom(-1);
_seeker._effect = EFFECT_SHADED;
- if (R2_GLOBALS._player._characterIndex != 2)
+ if (R2_GLOBALS._player._characterIndex != R2_SEEKER)
_seeker.setDetails(9002, 1, -1, -1, 1, (SceneItem *) NULL);
_miranda.postInit();
@@ -4486,7 +4485,7 @@ void Scene3600::postInit(SceneObjectList *OwnerList) {
_miranda.changeZoom(-1);
_miranda._effect = EFFECT_SHADED;
- if (R2_GLOBALS._player._characterIndex != 3)
+ if (R2_GLOBALS._player._characterIndex != R2_MIRANDA)
_miranda.setDetails(9003, 1, -1, -1, 1, (SceneItem *) NULL);
R2_GLOBALS._player.postInit();
@@ -5049,6 +5048,7 @@ void Scene3700::signal() {
Scene3800::Scene3800() {
_desertDirection = 0;
+ _skylineRect.set(0, 0, 320, 87);
}
void Scene3800::synchronize(Serializer &s) {
@@ -5221,7 +5221,8 @@ void Scene3800::initExits() {
}
void Scene3800::enterArea() {
- R2_GLOBALS._player.disableControl();
+ R2_GLOBALS._player.disableControl(CURSOR_WALK);
+
switch (_desertDirection) {
case 0:
R2_GLOBALS._player.postInit();
@@ -5347,7 +5348,6 @@ void Scene3800::postInit(SceneObjectList *OwnerList) {
_westExit.setDetails(Rect(0, 87, 14, 168), EXITCURSOR_W, 3800);
_westExit.setDest(Common::Point(7, 145));
- _skylineRect.set(0, 0, 320, 87);
_background.setDetails(Rect(0, 0, 320, 200), 3800, 0, 1, 2, 1, (SceneItem *) NULL);
enterArea();
diff --git a/engines/tsage/ringworld2/ringworld2_scenes3.h b/engines/tsage/ringworld2/ringworld2_scenes3.h
index e6f74d6e53..c73f8548e4 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes3.h
+++ b/engines/tsage/ringworld2/ringworld2_scenes3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld2/ringworld2_speakers.cpp b/engines/tsage/ringworld2/ringworld2_speakers.cpp
index 494a31a829..6d4ef4ab75 100644
--- a/engines/tsage/ringworld2/ringworld2_speakers.cpp
+++ b/engines/tsage/ringworld2/ringworld2_speakers.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/ringworld2/ringworld2_speakers.h b/engines/tsage/ringworld2/ringworld2_speakers.h
index d70652ff97..4a794f65c8 100644
--- a/engines/tsage/ringworld2/ringworld2_speakers.h
+++ b/engines/tsage/ringworld2/ringworld2_speakers.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/saveload.cpp b/engines/tsage/saveload.cpp
index f9e84e8913..9954b929b2 100644
--- a/engines/tsage/saveload.cpp
+++ b/engines/tsage/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -141,8 +141,8 @@ Common::Error Saver::save(int slot, const Common::String &saveName) {
// Write out the savegame header
tSageSavegameHeader header;
- header.saveName = saveName;
- header.version = TSAGE_SAVEGAME_VERSION;
+ header._saveName = saveName;
+ header._version = TSAGE_SAVEGAME_VERSION;
writeSavegameHeader(saveFile, header);
// Save out objects that need to come at the start of the savegame
@@ -190,11 +190,11 @@ Common::Error Saver::restore(int slot) {
// Read in the savegame header
tSageSavegameHeader header;
readSavegameHeader(saveFile, header);
- if (header.thumbnail)
- header.thumbnail->free();
- delete header.thumbnail;
+ if (header._thumbnail)
+ header._thumbnail->free();
+ delete header._thumbnail;
- serializer.setSaveVersion(header.version);
+ serializer.setSaveVersion(header._version);
// Load in data for objects that need to come at the start of the savegame
for (Common::List<SaveListener *>::iterator i = _listeners.begin(); i != _listeners.end(); ++i) {
@@ -242,34 +242,34 @@ const char *SAVEGAME_STR = "SCUMMVM_TSAGE";
bool Saver::readSavegameHeader(Common::InSaveFile *in, tSageSavegameHeader &header) {
char saveIdentBuffer[SAVEGAME_STR_SIZE + 1];
- header.thumbnail = NULL;
+ header._thumbnail = NULL;
// Validate the header Id
in->read(saveIdentBuffer, SAVEGAME_STR_SIZE + 1);
if (strncmp(saveIdentBuffer, SAVEGAME_STR, SAVEGAME_STR_SIZE))
return false;
- header.version = in->readByte();
- if (header.version > TSAGE_SAVEGAME_VERSION)
+ header._version = in->readByte();
+ if (header._version > TSAGE_SAVEGAME_VERSION)
return false;
// Read in the string
- header.saveName.clear();
+ header._saveName.clear();
char ch;
- while ((ch = (char)in->readByte()) != '\0') header.saveName += ch;
+ while ((ch = (char)in->readByte()) != '\0') header._saveName += ch;
// Get the thumbnail
- header.thumbnail = Graphics::loadThumbnail(*in);
- if (!header.thumbnail)
+ header._thumbnail = Graphics::loadThumbnail(*in);
+ if (!header._thumbnail)
return false;
// Read in save date/time
- header.saveYear = in->readSint16LE();
- header.saveMonth = in->readSint16LE();
- header.saveDay = in->readSint16LE();
- header.saveHour = in->readSint16LE();
- header.saveMinutes = in->readSint16LE();
- header.totalFrames = in->readUint32LE();
+ header._saveYear = in->readSint16LE();
+ header._saveMonth = in->readSint16LE();
+ header._saveDay = in->readSint16LE();
+ header._saveHour = in->readSint16LE();
+ header._saveMinutes = in->readSint16LE();
+ header._totalFrames = in->readUint32LE();
return true;
}
@@ -281,7 +281,7 @@ void Saver::writeSavegameHeader(Common::OutSaveFile *out, tSageSavegameHeader &h
out->writeByte(TSAGE_SAVEGAME_VERSION);
// Write savegame name
- out->write(header.saveName.c_str(), header.saveName.size() + 1);
+ out->write(header._saveName.c_str(), header._saveName.size() + 1);
// Get the active palette
uint8 thumbPalette[256 * 3];
diff --git a/engines/tsage/saveload.h b/engines/tsage/saveload.h
index 42fd4f3282..be5ff51ffb 100644
--- a/engines/tsage/saveload.h
+++ b/engines/tsage/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -38,12 +38,12 @@ typedef void (*SaveNotifierFn)(bool postFlag);
class SavedObject;
struct tSageSavegameHeader {
- uint8 version;
- Common::String saveName;
- Graphics::Surface *thumbnail;
- int saveYear, saveMonth, saveDay;
- int saveHour, saveMinutes;
- int totalFrames;
+ uint8 _version;
+ Common::String _saveName;
+ Graphics::Surface *_thumbnail;
+ int _saveYear, _saveMonth, _saveDay;
+ int _saveHour, _saveMinutes;
+ int _totalFrames;
};
/*--------------------------------------------------------------------------*/
diff --git a/engines/tsage/scenes.cpp b/engines/tsage/scenes.cpp
index b41e8175c6..80ce1e3ecc 100644
--- a/engines/tsage/scenes.cpp
+++ b/engines/tsage/scenes.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -150,6 +150,7 @@ void SceneManager::fadeInIfNecessary() {
void SceneManager::changeScene(int newSceneNumber) {
debug(1, "changeScene(%d)", newSceneNumber);
+
// Fade out the scene
ScenePalette scenePalette;
uint32 adjustData = 0;
diff --git a/engines/tsage/scenes.h b/engines/tsage/scenes.h
index 4d36192cec..9e3857af5e 100644
--- a/engines/tsage/scenes.h
+++ b/engines/tsage/scenes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/sound.cpp b/engines/tsage/sound.cpp
index 6633d15c26..c5c38505a7 100644
--- a/engines/tsage/sound.cpp
+++ b/engines/tsage/sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -468,8 +468,9 @@ void SoundManager::sfProcessFading() {
if (vtStruct->_voiceType == VOICETYPE_1) {
for (uint idx = 0; idx < vtStruct->_entries.size(); ++idx) {
- if (vtStruct->_entries[idx]._type1._field6 >= -1)
- ++vtStruct->_entries[idx]._type1._field6;
+ VoiceStructEntryType1 &vte = vtStruct->_entries[idx]._type1;
+ if (vte._field6 >= -1)
+ ++vte._field6;
}
}
}
@@ -499,22 +500,22 @@ void SoundManager::sfUpdateVoiceStructs() {
if (vs->_voiceType == VOICETYPE_0) {
for (uint idx = 0; idx < vs->_entries.size(); ++idx) {
- VoiceStructEntry &vse = vs->_entries[idx];
+ VoiceStructEntryType0 &vte = vs->_entries[idx]._type0;
- vse._type0._sound = vse._type0._sound2;
- vse._type0._channelNum = vse._type0._channelNum2;
- vse._type0._priority = vse._type0._priority2;
- vse._type0._fieldA = vse._type0._field12;
+ vte._sound = vte._sound2;
+ vte._channelNum = vte._channelNum2;
+ vte._priority = vte._priority2;
+ vte._fieldA = vte._field12;
}
} else {
vs->_field3 = vs->_numVoices;
for (uint idx = 0; idx < vs->_entries.size(); ++idx) {
- VoiceStructEntry &vse = vs->_entries[idx];
+ VoiceStructEntryType1 &vte = vs->_entries[idx]._type1;
- vse._type1._sound = vse._type1._sound2;
- vse._type1._channelNum = vse._type1._channelNum2;
- vse._type1._priority = vse._type1._priority2;
+ vte._sound = vte._sound2;
+ vte._channelNum = vte._channelNum2;
+ vte._priority = vte._priority2;
}
}
}
@@ -529,16 +530,16 @@ void SoundManager::sfUpdateVoiceStructs2() {
for (uint idx = 0; idx < vtStruct->_entries.size(); ++idx) {
if (vtStruct->_voiceType == VOICETYPE_0) {
- VoiceStructEntryType0 &vse = vtStruct->_entries[idx]._type0;
- vse._sound2 = vse._sound;
- vse._channelNum2 = vse._channelNum;
- vse._priority2 = vse._priority;
- vse._field12 = vse._fieldA;
+ VoiceStructEntryType0 &vte = vtStruct->_entries[idx]._type0;
+ vte._sound2 = vte._sound;
+ vte._channelNum2 = vte._channelNum;
+ vte._priority2 = vte._priority;
+ vte._field12 = vte._fieldA;
} else {
- VoiceStructEntryType1 &vse = vtStruct->_entries[idx]._type1;
- vse._sound2 = vse._sound;
- vse._channelNum2 = vse._channelNum;
- vse._priority2 = vse._priority;
+ VoiceStructEntryType1 &vte = vtStruct->_entries[idx]._type1;
+ vte._sound2 = vte._sound;
+ vte._channelNum2 = vte._channelNum;
+ vte._priority2 = vte._priority;
}
}
}
@@ -724,7 +725,7 @@ void SoundManager::sfRethinkSoundDrivers() {
ve._type0._sound = NULL;
ve._type0._channelNum = 0;
ve._type0._priority = 0;
- ve._type0._fieldA = 0;
+ ve._type0._fieldA = false;
vs->_entries.push_back(ve);
}
@@ -773,32 +774,31 @@ void SoundManager::sfRethinkVoiceTypes() {
if (vs->_voiceType == VOICETYPE_0) {
for (uint idx = 0; idx < vs->_entries.size(); ++idx) {
- VoiceStructEntry &vse = vs->_entries[idx];
- vse._type0._sound3 = vse._type0._sound;
- vse._type0._channelNum3 = vse._type0._channelNum;
- vse._type0._priority3 = vse._type0._priority;
- vse._type0._field1A = vse._type0._fieldA;
- vse._type0._sound = NULL;
- vse._type0._channelNum = 0;
- vse._type0._priority = 0;
- vse._type0._fieldA = 0;
- vse._type0._sound2 = NULL;
- vse._type0._channelNum2 = 0;
- vse._type0._priority2 = 0;
- vse._type0._field12 = 0;
+ VoiceStructEntryType0 &vte = vs->_entries[idx]._type0;
+ vte._sound3 = vte._sound;
+ vte._channelNum3 = vte._channelNum;
+ vte._priority3 = vte._priority;
+ vte._sound = NULL;
+ vte._channelNum = 0;
+ vte._priority = 0;
+ vte._fieldA = false;
+ vte._sound2 = NULL;
+ vte._channelNum2 = 0;
+ vte._priority2 = 0;
+ vte._field12 = false;
}
} else {
for (uint idx = 0; idx < vs->_entries.size(); ++idx) {
- VoiceStructEntry &vse = vs->_entries[idx];
- vse._type1._sound3 = vse._type1._sound;
- vse._type1._channelNum3 = vse._type1._channelNum;
- vse._type1._priority3 = vse._type1._priority;
- vse._type1._sound = NULL;
- vse._type1._channelNum = 0;
- vse._type1._priority = 0;
- vse._type1._sound2 = NULL;
- vse._type1._channelNum2 = 0;
- vse._type1._priority2 = 0;
+ VoiceStructEntryType1 &vte = vs->_entries[idx]._type1;
+ vte._sound3 = vte._sound;
+ vte._channelNum3 = vte._channelNum;
+ vte._priority3 = vte._priority;
+ vte._sound = NULL;
+ vte._channelNum = 0;
+ vte._priority = 0;
+ vte._sound2 = NULL;
+ vte._channelNum2 = 0;
+ vte._priority2 = 0;
}
// Reset the number of voices available
@@ -858,10 +858,11 @@ void SoundManager::sfRethinkVoiceTypes() {
if (numVoices >= chNumVoices) {
int channelCount = chNumVoices, idx = 0;
while (channelCount > 0) {
- if (!vtStruct->_entries[idx]._type1._sound2) {
- vtStruct->_entries[idx]._type1._sound2 = sound;
- vtStruct->_entries[idx]._type1._channelNum2 = foundIndex;
- vtStruct->_entries[idx]._type1._priority2 = foundPriority;
+ VoiceStructEntryType1 &vte = vtStruct->_entries[idx]._type1;
+ if (!vte._sound2) {
+ vte._sound2 = sound;
+ vte._channelNum2 = foundIndex;
+ vte._priority2 = foundPriority;
--channelCount;
}
++idx;
@@ -881,10 +882,11 @@ void SoundManager::sfRethinkVoiceTypes() {
}
for (uint idx = 0; idx < vtStruct->_entries.size(); ++idx) {
- if (vtStruct->_entries[idx]._type1._priority2 == maxPriority) {
- vtStruct->_entries[idx]._type1._sound2 = NULL;
- vtStruct->_entries[idx]._type1._channelNum2 = 0;
- vtStruct->_entries[idx]._type1._priority2 = 0;
+ VoiceStructEntryType1 &vte = vtStruct->_entries[idx]._type1;
+ if (vte._priority2 == maxPriority) {
+ vte._sound2 = NULL;
+ vte._channelNum2 = 0;
+ vte._priority2 = 0;
++numVoices;
}
}
@@ -892,10 +894,11 @@ void SoundManager::sfRethinkVoiceTypes() {
int voicesCtr = chNumVoices;
for (uint idx = 0; (idx < vtStruct->_entries.size()) && (voicesCtr > 0); ++idx) {
- if (!vtStruct->_entries[idx]._type1._sound2) {
- vtStruct->_entries[idx]._type1._sound2 = sound;
- vtStruct->_entries[idx]._type1._channelNum2 = foundIndex;
- vtStruct->_entries[idx]._type1._priority2 = foundPriority;
+ VoiceStructEntryType1 &vte = vtStruct->_entries[idx]._type1;
+ if (!vte._sound2) {
+ vte._sound2 = sound;
+ vte._channelNum2 = foundIndex;
+ vte._priority2 = foundPriority;
--voicesCtr;
}
}
@@ -932,10 +935,11 @@ void SoundManager::sfRethinkVoiceTypes() {
}
if (entryIndex != -1) {
- vtStruct->_entries[entryIndex]._type0._sound2 = sound;
- vtStruct->_entries[entryIndex]._type0._channelNum2 = foundIndex;
- vtStruct->_entries[entryIndex]._type0._priority2 = foundPriority;
- vtStruct->_entries[entryIndex]._type0._field12 = 0;
+ VoiceStructEntryType0 &vte = vtStruct->_entries[entryIndex]._type0;
+ vte._sound2 = sound;
+ vte._channelNum2 = foundIndex;
+ vte._priority2 = foundPriority;
+ vte._field12 = false;
continue;
}
@@ -953,10 +957,11 @@ void SoundManager::sfRethinkVoiceTypes() {
}
if (entryIndex != -1) {
- vtStruct->_entries[entryIndex]._type0._sound2 = sound;
- vtStruct->_entries[entryIndex]._type0._channelNum2 = foundIndex;
- vtStruct->_entries[entryIndex]._type0._priority2 = foundPriority;
- vtStruct->_entries[entryIndex]._type0._field12 = 0;
+ VoiceStructEntryType0 &vte = vtStruct->_entries[entryIndex]._type0;
+ vte._sound2 = sound;
+ vte._channelNum2 = foundIndex;
+ vte._priority2 = foundPriority;
+ vte._field12 = false;
continue;
}
@@ -978,10 +983,11 @@ void SoundManager::sfRethinkVoiceTypes() {
}
if (entryIndex != -1) {
- vtStruct->_entries[entryIndex]._type0._sound2 = sound;
- vtStruct->_entries[entryIndex]._type0._channelNum2 = foundIndex;
- vtStruct->_entries[entryIndex]._type0._priority2 = foundPriority;
- vtStruct->_entries[entryIndex]._type0._field12 = 0;
+ VoiceStructEntryType0 &vte = vtStruct->_entries[entryIndex]._type0;
+ vte._sound2 = sound;
+ vte._channelNum2 = foundIndex;
+ vte._priority2 = foundPriority;
+ vte._field12 = false;
continue;
}
@@ -1017,10 +1023,11 @@ void SoundManager::sfRethinkVoiceTypes() {
continue;
if (entryIndex != -1) {
- vtStruct->_entries[entryIndex]._type0._sound2 = sound;
- vtStruct->_entries[entryIndex]._type0._channelNum2 = foundIndex;
- vtStruct->_entries[entryIndex]._type0._priority2 = foundPriority;
- vtStruct->_entries[entryIndex]._type0._field12 = 1;
+ VoiceStructEntryType0 &vte = vtStruct->_entries[entryIndex]._type0;
+ vte._sound2 = sound;
+ vte._channelNum2 = foundIndex;
+ vte._priority2 = foundPriority;
+ vte._field12 = true;
continue;
}
@@ -1035,14 +1042,15 @@ void SoundManager::sfRethinkVoiceTypes() {
for (uint idx = 0; idx < vtStruct->_entries.size(); ++idx) {
if (vtStruct->_entries[idx]._field1) {
- if (!vtStruct->_entries[idx]._type0._sound2) {
+ VoiceStructEntryType0 &vte = vtStruct->_entries[idx]._type0;
+ if (!vte._sound2) {
if (vtStruct->_entries[idx]._voiceNum > maxVoiceNum) {
maxVoiceNum = vtStruct->_entries[idx]._voiceNum;
voiceIndex = idx;
}
} else {
- if (vtStruct->_entries[idx]._type0._priority2 > maxPriority) {
- maxPriority = vtStruct->_entries[idx]._type0._priority2;
+ if (vte._priority2 > maxPriority) {
+ maxPriority = vte._priority2;
priorityIndex = idx;
}
}
@@ -1060,7 +1068,7 @@ void SoundManager::sfRethinkVoiceTypes() {
vteSrc._sound2 = sound;
vteSrc._channelNum2 = foundIndex;
vteSrc._priority2 = foundPriority;
- vteSrc._field12 = 1;
+ vteSrc._field12 = true;
continue;
}
@@ -1084,7 +1092,7 @@ void SoundManager::sfRethinkVoiceTypes() {
vteSrc._sound2 = sound;
vteSrc._channelNum2 = foundIndex;
vteSrc._priority2 = foundPriority;
- vteSrc._field12 = 1;
+ vteSrc._field12 = true;
continue;
}
}
@@ -1115,10 +1123,10 @@ void SoundManager::sfRethinkVoiceTypes() {
++total;
vse._priority = vse._priority2;
- vse._fieldA = 1;
+ vse._fieldA = true;
vse._sound2 = NULL;
- if (total) {
+ if ((total) && vse._sound) {
driver->proc24(vse._channelNum, idx, vse._sound, 123, 0);
driver->proc24(vse._channelNum, idx, vse._sound, 1, vse._sound->_chModulation[vse._channelNum]);
driver->proc24(vse._channelNum, idx, vse._sound, 7,
@@ -1135,7 +1143,7 @@ void SoundManager::sfRethinkVoiceTypes() {
vse._sound = NULL;
vse._channelNum = 0;
vse._priority = 0;
- vse._fieldA = 0;
+ vse._fieldA = false;
}
}
@@ -1148,13 +1156,13 @@ void SoundManager::sfRethinkVoiceTypes() {
continue;
for (uint entryIndex = 0; entryIndex < vs->_entries.size(); ++entryIndex) {
- if ((vs->_entries[entryIndex]._type0._sound3 != sound) ||
- (vs->_entries[entryIndex]._type0._channelNum3 != channelNum)) {
+ VoiceStructEntryType0 &vteCur = vs->_entries[entryIndex]._type0;
+ if ((vteCur._sound3 != sound) || (vteCur._channelNum3 != channelNum)) {
// Found match
- vs->_entries[entryIndex]._type0._sound = sound;
- vs->_entries[entryIndex]._type0._channelNum = channelNum;
- vs->_entries[entryIndex]._type0._priority = vse._priority2;
- vs->_entries[entryIndex]._type0._fieldA = 0;
+ vteCur._sound = sound;
+ vteCur._channelNum = channelNum;
+ vteCur._priority = vse._priority2;
+ vteCur._fieldA = false;
vse._sound2 = NULL;
break;
}
@@ -1185,7 +1193,7 @@ void SoundManager::sfRethinkVoiceTypes() {
vseFound._sound = vse._sound2;
vseFound._channelNum = vse._channelNum2;
vseFound._priority = vse._priority2;
- vseFound._fieldA = 0;
+ vseFound._fieldA = false;
SoundDriver *driver = vs->_entries[foundIndex]._driver;
assert(driver);
@@ -1215,10 +1223,10 @@ void SoundManager::sfRethinkVoiceTypes() {
} else {
// Type 1
for (uint idx = 0; idx < vs->_entries.size(); ++idx) {
- VoiceStructEntry &vse = vs->_entries[idx];
- vse._type1._sound = NULL;
- vse._type1._channelNum = 0;
- vse._type1._priority = 0;
+ VoiceStructEntryType1 &vte = vs->_entries[idx]._type1;
+ vte._sound = NULL;
+ vte._channelNum = 0;
+ vte._priority = 0;
}
for (uint idx = 0; idx < vs->_entries.size(); ++idx) {
@@ -2188,9 +2196,10 @@ void Sound::soPlaySound(VoiceTypeStruct *vtStruct, const byte *channelData, int
SoundDriver *driver = vtStruct->_entries[entryIndex]._driver;
assert(driver);
- vtStruct->_entries[entryIndex]._type1._field6 = 0;
- vtStruct->_entries[entryIndex]._type1._field4 = v0;
- vtStruct->_entries[entryIndex]._type1._field5 = 0;
+ VoiceStructEntryType1 &vte = vtStruct->_entries[entryIndex]._type1;
+ vte._field6 = 0;
+ vte._field4 = v0;
+ vte._field5 = 0;
driver->playSound(channelData, 0, _chProgram[channelNum], vtStruct->_entries[entryIndex]._voiceNum, v0, v1);
}
@@ -2207,9 +2216,10 @@ void Sound::soPlaySound2(VoiceTypeStruct *vtStruct, const byte *channelData, int
assert(driver);
byte *trackData = _channelData[trackCtr];
- vtStruct->_entries[entryIndex]._type1._field6 = 0;
- vtStruct->_entries[entryIndex]._type1._field4 = v0;
- vtStruct->_entries[entryIndex]._type1._field5 = 0;
+ VoiceStructEntryType1 &vte = vtStruct->_entries[entryIndex]._type1;
+ vte._field6 = 0;
+ vte._field4 = v0;
+ vte._field5 = 0;
int v1, v2;
driver->playSound(trackData, 14, -1, vtStruct->_entries[entryIndex]._voiceNum, v0, 0x7F);
@@ -2336,9 +2346,10 @@ void Sound::soServiceTrackType1(int trackIndex, const byte *channelData) {
SoundDriver *driver = vtStruct->_entries[entryIndex]._driver;
assert(driver);
- vtStruct->_entries[entryIndex]._type1._field6 = 0;
- vtStruct->_entries[entryIndex]._type1._field4 = *(channelData + 1);
- vtStruct->_entries[entryIndex]._type1._field5 = 0;
+ VoiceStructEntryType1 &vte = vtStruct->_entries[entryIndex]._type1;
+ vte._field6 = 0;
+ vte._field4 = *(channelData + 1);
+ vte._field5 = 0;
int v1, v2;
driver->playSound(channelData, 14, -1, vtStruct->_entries[entryIndex]._voiceNum, *(channelData + 1), 0x7f);
diff --git a/engines/tsage/sound.h b/engines/tsage/sound.h
index fefe8ad101..49558b4bca 100644
--- a/engines/tsage/sound.h
+++ b/engines/tsage/sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -118,15 +118,14 @@ struct VoiceStructEntryType0 {
Sound *_sound;
int _channelNum;
int _priority;
- int _fieldA;
+ bool _fieldA;
Sound *_sound2;
int _channelNum2;
int _priority2;
- int _field12;
+ bool _field12;
Sound *_sound3;
int _channelNum3;
int _priority3;
- int _field1A;
};
struct VoiceStructEntryType1 {
diff --git a/engines/tsage/staticres.cpp b/engines/tsage/staticres.cpp
index fb08195180..311f7965c7 100644
--- a/engines/tsage/staticres.cpp
+++ b/engines/tsage/staticres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/staticres.h b/engines/tsage/staticres.h
index 334a240f28..f6fef378ae 100644
--- a/engines/tsage/staticres.h
+++ b/engines/tsage/staticres.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/tsage.cpp b/engines/tsage/tsage.cpp
index 36708e373e..0b882d5cbf 100644
--- a/engines/tsage/tsage.cpp
+++ b/engines/tsage/tsage.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/tsage.h b/engines/tsage/tsage.h
index e69fe0612a..ea4f5da6ea 100644
--- a/engines/tsage/tsage.h
+++ b/engines/tsage/tsage.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tsage/user_interface.cpp b/engines/tsage/user_interface.cpp
index ae5c6c8cee..45bfe2b5ea 100644
--- a/engines/tsage/user_interface.cpp
+++ b/engines/tsage/user_interface.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -297,8 +297,8 @@ void UICollection::r2rDrawFrame() {
GLOBALS._screenSurface.copyFrom(vertLine, SCREEN_WIDTH - 4, 3);
// Restrict drawing area to exclude the borders at the edge of the screen
- R2_GLOBALS._screenSurface._clipRect = Rect(4, 4, SCREEN_WIDTH - 4,
- SCREEN_HEIGHT - 4);
+ R2_GLOBALS._screenSurface._clipRect = Rect(4, 3, SCREEN_WIDTH - 4,
+ SCREEN_HEIGHT - 3);
}
/*--------------------------------------------------------------------------*/
diff --git a/engines/tsage/user_interface.h b/engines/tsage/user_interface.h
index bc2398bf05..7cde2900f8 100644
--- a/engines/tsage/user_interface.h
+++ b/engines/tsage/user_interface.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tucker/console.cpp b/engines/tucker/console.cpp
index 17ba2038d0..49e0ac479f 100644
--- a/engines/tucker/console.cpp
+++ b/engines/tucker/console.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tucker/console.h b/engines/tucker/console.h
index 6be56d5594..22f4d5803f 100644
--- a/engines/tucker/console.h
+++ b/engines/tucker/console.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tucker/detection.cpp b/engines/tucker/detection.cpp
index e4a74f6c37..3d7859e4fd 100644
--- a/engines/tucker/detection.cpp
+++ b/engines/tucker/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tucker/graphics.cpp b/engines/tucker/graphics.cpp
index e6fb70ac16..b9c184e2bb 100644
--- a/engines/tucker/graphics.cpp
+++ b/engines/tucker/graphics.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -163,13 +163,13 @@ void Graphics::copyRect(uint8 *dst, int dstPitch, uint8 *src, int srcPitch, int
}
void Graphics::drawStringChar(uint8 *dst, int xDst, int yDst, int pitch, uint8 chr, uint8 chrColor, const uint8 *src) {
- if (chr < 32 || chr - 32 >= _charset.xCount * _charset.yCount) {
+ if (chr < 32 || chr - 32 >= _charset._xCount * _charset._yCount) {
return;
}
- const int h = MIN(_charset.charH, 200 - yDst);
- const int w = MIN(_charset.charW, pitch - xDst);
+ const int h = MIN(_charset._charH, 200 - yDst);
+ const int w = MIN(_charset._charW, pitch - xDst);
dst += yDst * pitch + xDst;
- int offset = (chr - 32) * _charset.charH * _charset.charW;
+ int offset = (chr - 32) * _charset._charH * _charset._charW;
for (int y = 0; y < h; ++y) {
for (int x = 0; x < w; ++x) {
const int color = src[offset++];
@@ -189,22 +189,22 @@ void Graphics::setCharset(CharsetType type) {
_charsetType = type;
switch (type) {
case kCharsetTypeDefault:
- _charset.charW = 10;
- _charset.charH = 10;
- _charset.xCount = 32;
- _charset.yCount = 7;
+ _charset._charW = 10;
+ _charset._charH = 10;
+ _charset._xCount = 32;
+ _charset._yCount = 7;
break;
case kCharsetTypeEng:
- _charset.charW = 10;
- _charset.charH = 8;
- _charset.xCount = 32;
- _charset.yCount = 3;
+ _charset._charW = 10;
+ _charset._charH = 8;
+ _charset._xCount = 32;
+ _charset._yCount = 3;
break;
case kCharsetTypeCredits:
- _charset.charW = 19;
- _charset.charH = 10;
- _charset.xCount = 16;
- _charset.yCount = 7;
+ _charset._charW = 19;
+ _charset._charH = 10;
+ _charset._xCount = 16;
+ _charset._yCount = 7;
break;
}
}
diff --git a/engines/tucker/graphics.h b/engines/tucker/graphics.h
index 2b4a57d65d..3e48179a30 100644
--- a/engines/tucker/graphics.h
+++ b/engines/tucker/graphics.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -34,16 +34,14 @@ enum CharsetType {
};
struct Charset {
- int charW;
- int charH;
- int xCount;
- int yCount;
+ int _charW;
+ int _charH;
+ int _xCount;
+ int _yCount;
};
class Graphics {
public:
-
-
static int encodeRLE(const uint8 *src, uint8 *dst, int w, int h);
static int encodeRAW(const uint8 *src, uint8 *dst, int w, int h);
diff --git a/engines/tucker/locations.cpp b/engines/tucker/locations.cpp
index f6d34c295b..b5fb10c59e 100644
--- a/engines/tucker/locations.cpp
+++ b/engines/tucker/locations.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -33,8 +33,8 @@ static const int _data3UpdateLocation1_yTable[] = { 152, 8, 95 };
void TuckerEngine::execData3PreUpdate_locationNum1() {
if (_flagsTable[1] == 1) {
_flagsTable[1] = 2;
- _locationSoundsTable[3].type = 2;
- startSound(_locationSoundsTable[3].offset, 3, _locationSoundsTable[3].volume);
+ _locationSoundsTable[3]._type = 2;
+ startSound(_locationSoundsTable[3]._offset, 3, _locationSoundsTable[3]._volume);
}
_mapSequenceFlagsLocationTable[0] = (_flagsTable[1] > 0) ? 1 : 0;
if (_updateLocationCounter == 0) {
@@ -66,7 +66,7 @@ void TuckerEngine::execData3PreUpdate_locationNum1Helper1() {
}
}
if (_updateLocationFlagsTable[0] == 1 && _updateLocationCounter == 0) {
- setVolumeSound(12, _locationSoundsTable[12].volume);
+ setVolumeSound(12, _locationSoundsTable[12]._volume);
} else {
setVolumeSound(12, 0);
}
@@ -122,7 +122,7 @@ void TuckerEngine::execData3PostUpdate_locationNum1() {
if (_flagsTable[63] == 0) {
if (getRandomNumber() < 400) {
_flagsTable[63] = 1;
- startSound(_locationSoundsTable[2].offset, 2, _locationSoundsTable[2].volume);
+ startSound(_locationSoundsTable[2]._offset, 2, _locationSoundsTable[2]._volume);
}
}
_locationHeightTable[1] = (_yPosCurrent > 104) ? 60 : 0;
@@ -130,48 +130,48 @@ void TuckerEngine::execData3PostUpdate_locationNum1() {
void TuckerEngine::updateSprite_locationNum2() {
if (_flagsTable[9] == 2) {
- _spritesTable[0].state = -1;
+ _spritesTable[0]._state = -1;
return;
}
if (_flagsTable[9] == 1) {
if (_flagsTable[10] == 1) {
- _spritesTable[0].state = -1;
+ _spritesTable[0]._state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- _spritesTable[0].state = 4;
- _spritesTable[0].needUpdate = 1;
+ _spritesTable[0]._state = 4;
+ _spritesTable[0]._needUpdate = true;
} else {
- _spritesTable[0].needUpdate = 0;
- _spritesTable[0].state = 5;
+ _spritesTable[0]._needUpdate = false;
+ _spritesTable[0]._state = 5;
_flagsTable[10] = 1;
- _spritesTable[0].gfxBackgroundOffset = 0;
+ _spritesTable[0]._gfxBackgroundOffset = 0;
}
return;
}
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- _spritesTable[0].state = 3;
- _spritesTable[0].needUpdate = 1;
+ _spritesTable[0]._state = 3;
+ _spritesTable[0]._needUpdate = true;
return;
}
if (_csDataHandled) {
- _spritesTable[0].needUpdate = 0;
+ _spritesTable[0]._needUpdate = false;
if (_flagsTable[199] == 0) {
_flagsTable[199] = 1;
setCharacterAnimation(0, 0);
} else if (getRandomNumber() > 20000) {
- _spritesTable[0].state = 6;
+ _spritesTable[0]._state = 6;
} else {
- _spritesTable[0].state = 3;
- _spritesTable[0].updateDelay = 5;
+ _spritesTable[0]._state = 3;
+ _spritesTable[0]._updateDelay = 5;
}
} else {
if (_flagsTable[199] == 0) {
_flagsTable[199] = 1;
setCharacterAnimation(1, 0);
} else if (getRandomNumber() < 20000) {
- _spritesTable[0].state = 1;
- _spritesTable[0].updateDelay = 5;
+ _spritesTable[0]._state = 1;
+ _spritesTable[0]._updateDelay = 5;
} else {
- _spritesTable[0].state = 1;
+ _spritesTable[0]._state = 1;
}
}
}
@@ -199,7 +199,7 @@ void TuckerEngine::execData3PreUpdate_locationNum2() {
if (_updateLocationYPosTable2[i] > _updateLocationYMaxTable[i]) {
_updateLocationYPosTable2[i] = 0;
const int num = (getRandomNumber() < 16000) ? 2 : 3;
- startSound(_locationSoundsTable[num].offset, num, _locationSoundsTable[num].volume);
+ startSound(_locationSoundsTable[num]._offset, num, _locationSoundsTable[num]._volume);
}
} else if (getRandomNumber() > 32000) {
const int num = getRandomNumber() / 8192;
@@ -243,9 +243,9 @@ void TuckerEngine::updateSprite_locationNum3_0(int i) {
int num;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
num = 5;
- _spritesTable[i].needUpdate = 1;
- } else if (_spritesTable[i].prevState == 5 && _spritesTable[i].animationFrame == 1) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = true;
+ } else if (_spritesTable[i]._prevState == 5 && _spritesTable[i]._animationFrame == 1) {
+ _spritesTable[i]._needUpdate = false;
int r = getRandomNumber();
if (r < 12000) {
num = 3;
@@ -256,11 +256,11 @@ void TuckerEngine::updateSprite_locationNum3_0(int i) {
}
} else {
num = 5;
- _spritesTable[i].animationFrame = 1;
- _spritesTable[i].updateDelay = 10;
+ _spritesTable[i]._animationFrame = 1;
+ _spritesTable[i]._updateDelay = 10;
}
- _spritesTable[i].state = num;
- _spritesTable[i].prevAnimationFrame = 1;
+ _spritesTable[i]._state = num;
+ _spritesTable[i]._prevAnimationFrame = true;
}
void TuckerEngine::updateSprite_locationNum3_1(int i) {
@@ -268,44 +268,44 @@ void TuckerEngine::updateSprite_locationNum3_1(int i) {
if (_flagsTable[207] == 1) {
num = -1;
} else if (_flagsTable[203] == 1) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
num = 20;
_flagsTable[203] = 2;
} else if (_flagsTable[203] == 2) {
num = 12;
} else if (_flagsTable[203] == 3) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
num = 19;
_flagsTable[203] = 0;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
if (_flagsTable[21] == 0) {
num = 7;
} else {
num = 8;
}
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (_csDataHandled) {
num = 6;
if (getRandomNumber() < 32000) {
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
- } else if (_spritesTable[i].state == 6 && _spritesTable[i].animationFrame == 1) {
+ } else if (_spritesTable[i]._state == 6 && _spritesTable[i]._animationFrame == 1) {
if (getRandomNumber() < 20000) {
num = 11;
- _spritesTable[i].defaultUpdateDelay = 5;
+ _spritesTable[i]._defaultUpdateDelay = 5;
} else {
num = 10;
}
} else {
num = 6;
- _spritesTable[i].animationFrame = 1;
- _spritesTable[i].updateDelay = 10;
+ _spritesTable[i]._animationFrame = 1;
+ _spritesTable[i]._updateDelay = 10;
}
}
- _spritesTable[i].state = num;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = num;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::updateSprite_locationNum3_2(int i) {
@@ -314,32 +314,32 @@ void TuckerEngine::updateSprite_locationNum3_2(int i) {
_flagsTable[205] = 0;
num = 18;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
num = 17;
} else if (_flagsTable[45] == 1) {
_flagsTable[45] = 2;
num = 16;
} else if (_flagsTable[45] == 2) {
num = 17;
- _spritesTable[i].updateDelay = 5;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._updateDelay = 5;
+ _spritesTable[i]._needUpdate = false;
} else if (_flagsTable[45] == 3) {
_flagsTable[45] = 0;
num = 16;
- _updateSpriteFlag2 = 1;
+ _updateSpriteFlag2 = true;
} else {
- _spritesTable[i].needUpdate = 0;
- ++_spritesTable[i].counter;
- if (_spritesTable[i].counter <= 5) {
+ _spritesTable[i]._needUpdate = false;
+ ++_spritesTable[i]._counter;
+ if (_spritesTable[i]._counter <= 5) {
num = 14;
} else {
- if (_spritesTable[i].counter > 8) {
- _spritesTable[i].counter = 0;
+ if (_spritesTable[i]._counter > 8) {
+ _spritesTable[i]._counter = 0;
}
num = 15;
}
}
- _spritesTable[i].state = num;
+ _spritesTable[i]._state = num;
}
void TuckerEngine::execData3PreUpdate_locationNum3() {
@@ -362,36 +362,36 @@ void TuckerEngine::updateSprite_locationNum4(int i) {
if (_flagsTable[9] == 2) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 1;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
state = 2;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum4() {
if (_flagsTable[6] == 0) {
setVolumeSound(0, 0);
} else {
- setVolumeSound(0, _locationSoundsTable[0].volume);
+ setVolumeSound(0, _locationSoundsTable[0]._volume);
}
}
void TuckerEngine::updateSprite_locationNum5_0() {
- ++_spritesTable[0].counter;
- if (_spritesTable[0].counter > 100) {
- _spritesTable[0].counter = 0;
- _spritesTable[0].state = 1;
- _locationSoundsTable[1].type = 2;
- startSound(_locationSoundsTable[1].offset, 1, _locationSoundsTable[1].volume);
- } else if (_spritesTable[0].counter == 50) {
- _locationSoundsTable[1].type = 2;
- _spritesTable[0].state = 2;
- startSound(_locationSoundsTable[1].offset, 1, _locationSoundsTable[1].volume);
- } else {
- _spritesTable[0].state = -1;
+ ++_spritesTable[0]._counter;
+ if (_spritesTable[0]._counter > 100) {
+ _spritesTable[0]._counter = 0;
+ _spritesTable[0]._state = 1;
+ _locationSoundsTable[1]._type = 2;
+ startSound(_locationSoundsTable[1]._offset, 1, _locationSoundsTable[1]._volume);
+ } else if (_spritesTable[0]._counter == 50) {
+ _locationSoundsTable[1]._type = 2;
+ _spritesTable[0]._state = 2;
+ startSound(_locationSoundsTable[1]._offset, 1, _locationSoundsTable[1]._volume);
+ } else {
+ _spritesTable[0]._state = -1;
if (isSoundPlaying(1)) {
stopSound(1);
}
@@ -399,7 +399,7 @@ void TuckerEngine::updateSprite_locationNum5_0() {
}
void TuckerEngine::updateSprite_locationNum5_1(int i) {
- _spritesTable[i].state = 3;
+ _spritesTable[i]._state = 3;
}
void TuckerEngine::updateSprite_locationNum6_0(int i) {
@@ -410,29 +410,29 @@ void TuckerEngine::updateSprite_locationNum6_0(int i) {
state = 14;
} else if (_flagsTable[26] == 4 || _flagsTable[26] == 5) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- _spritesTable[0].needUpdate = 1;
+ _spritesTable[0]._needUpdate = true;
state = 3;
- _spritesTable[0].counter = 0;
+ _spritesTable[0]._counter = 0;
} else if (_xPosCurrent < 370 && _flagsTable[26] == 4) {
state = 2;
- } else if (_spritesTable[0].counter == 0) {
+ } else if (_spritesTable[0]._counter == 0) {
setCharacterAnimation(0, 0);
- _updateSpriteFlag1 = 1;
- ++_spritesTable[0].counter;
+ _updateSpriteFlag1 = true;
+ ++_spritesTable[0]._counter;
return;
} else {
state = 1;
- _spritesTable[0].updateDelay = 2;
- ++_spritesTable[0].counter;
- if (_spritesTable[0].counter > 100) {
- _spritesTable[0].counter = 0;
+ _spritesTable[0]._updateDelay = 2;
+ ++_spritesTable[0]._counter;
+ if (_spritesTable[0]._counter > 100) {
+ _spritesTable[0]._counter = 0;
}
}
} else {
state = -1;
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::updateSprite_locationNum6_1(int i) {
@@ -440,18 +440,18 @@ void TuckerEngine::updateSprite_locationNum6_1(int i) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
if (_flagsTable[209] == 1) {
state = 9;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 10;
}
} else {
if (getRandomNumber() < 30000 || (_csDataHandled && _xPosCurrent == 248)) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 7;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 7;
_miscSoundFxNum[0] = 3;
_miscSoundFxDelayCounter[0] = 70;
@@ -459,7 +459,7 @@ void TuckerEngine::updateSprite_locationNum6_1(int i) {
_miscSoundFxDelayCounter[1] = 25;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum6_2(int i) {
@@ -467,13 +467,13 @@ void TuckerEngine::updateSprite_locationNum6_2(int i) {
if (_flagsTable[26] < 5 || _flagsTable[207] > 0) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 12;
} else {
state = 12;
- _spritesTable[i].updateDelay = 2;
+ _spritesTable[i]._updateDelay = 2;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum6() {
@@ -483,11 +483,11 @@ void TuckerEngine::execData3PreUpdate_locationNum6() {
if (_flagsTable[26] == 2) {
_currentSpriteAnimationLength = 2;
_currentSpriteAnimationFrame = 112;
- if (_spritesTable[0].xSource < 45) {
+ if (_spritesTable[0]._xSource < 45) {
_currentSpriteAnimationFrame2 = 144;
- } else if (_spritesTable[0].xSource > 80) {
+ } else if (_spritesTable[0]._xSource > 80) {
_currentSpriteAnimationFrame2 = 147;
- } else if (_spritesTable[0].xSource < 60) {
+ } else if (_spritesTable[0]._xSource < 60) {
_currentSpriteAnimationFrame2 = 145;
} else {
_currentSpriteAnimationFrame2 = 146;
@@ -500,24 +500,24 @@ void TuckerEngine::execData3PreUpdate_locationNum6Helper1() {
if (_flagsTable[26] == 1) {
if (_flagsTable[27] < 15) {
if (_flagsTable[27] == 0) {
- startSound(_locationSoundsTable[2].offset, 2, _locationSoundsTable[2].volume);
- startSound(_locationSoundsTable[1].offset, 1, _locationSoundsTable[1].volume);
+ startSound(_locationSoundsTable[2]._offset, 2, _locationSoundsTable[2]._volume);
+ startSound(_locationSoundsTable[1]._offset, 1, _locationSoundsTable[1]._volume);
}
++_flagsTable[27];
- setVolumeSound(0, _locationSoundsTable[0].volume - _flagsTable[27] * 5);
- setVolumeMusic(0, _locationMusicsTable[0].volume - _flagsTable[27] * 5);
+ setVolumeSound(0, _locationSoundsTable[0]._volume - _flagsTable[27] * 5);
+ setVolumeMusic(0, _locationMusicsTable[0]._volume - _flagsTable[27] * 5);
}
} else if (_flagsTable[26] == 3) {
if (_flagsTable[27] > 0) {
if (_flagsTable[27] == 15) {
- startSound(_locationSoundsTable[2].offset, 2, _locationSoundsTable[2].volume);
+ startSound(_locationSoundsTable[2]._offset, 2, _locationSoundsTable[2]._volume);
}
--_flagsTable[27];
- setVolumeSound(0, _locationSoundsTable[0].volume - _flagsTable[27] * 5);
- setVolumeMusic(0, _locationMusicsTable[0].volume - _flagsTable[27] * 5);
+ setVolumeSound(0, _locationSoundsTable[0]._volume - _flagsTable[27] * 5);
+ setVolumeMusic(0, _locationMusicsTable[0]._volume - _flagsTable[27] * 5);
int volume = _flagsTable[27];
- if (volume < _locationSoundsTable[1].volume) {
- volume = _locationSoundsTable[1].volume;
+ if (volume < _locationSoundsTable[1]._volume) {
+ volume = _locationSoundsTable[1]._volume;
}
setVolumeSound(1, volume);
}
@@ -538,12 +538,12 @@ void TuckerEngine::execData3PreUpdate_locationNum6Helper1() {
x2 = 15 - _flagsTable[27];
}
for (int i = 0; i < x1; ++i) {
- execData3PreUpdate_locationNum6Helper2(20 * 640 + 325 + i * 8, _data3GfxBuf + _dataTable[238].sourceOffset);
- execData3PreUpdate_locationNum6Helper2(20 * 640 + 445 - i * 8, _data3GfxBuf + _dataTable[238].sourceOffset);
+ execData3PreUpdate_locationNum6Helper2(20 * 640 + 325 + i * 8, _data3GfxBuf + _dataTable[238]._sourceOffset);
+ execData3PreUpdate_locationNum6Helper2(20 * 640 + 445 - i * 8, _data3GfxBuf + _dataTable[238]._sourceOffset);
}
for (int i = 0; i < x2; ++i) {
- execData3PreUpdate_locationNum6Helper3(20 * 640 + 325 + x1 * 8 + i * 4, _data3GfxBuf + _dataTable[238].sourceOffset);
- execData3PreUpdate_locationNum6Helper3(20 * 640 + 449 - x1 * 8 - i * 4, _data3GfxBuf + _dataTable[238].sourceOffset);
+ execData3PreUpdate_locationNum6Helper3(20 * 640 + 325 + x1 * 8 + i * 4, _data3GfxBuf + _dataTable[238]._sourceOffset);
+ execData3PreUpdate_locationNum6Helper3(20 * 640 + 449 - x1 * 8 - i * 4, _data3GfxBuf + _dataTable[238]._sourceOffset);
}
addDirtyRect(0, 20, 640, 51);
}
@@ -583,37 +583,37 @@ void TuckerEngine::execData3PostUpdate_locationNum6() {
void TuckerEngine::updateSprite_locationNum7_0(int i) {
int state;
- ++_spritesTable[i].counter;
+ ++_spritesTable[i]._counter;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 4;
} else {
- _spritesTable[i].needUpdate = 0;
- if (_spritesTable[i].counter > 0) {
+ _spritesTable[i]._needUpdate = false;
+ if (_spritesTable[i]._counter > 0) {
state = 2;
- _spritesTable[i].counter = 0;
+ _spritesTable[i]._counter = 0;
} else {
state = 1;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum7_1(int i) {
int state;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 5;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum8_0(int i) {
- _spritesTable[i].state = (_flagsTable[28] < 20) ? -1 : 7;
+ _spritesTable[i]._state = (_flagsTable[28] < 20) ? -1 : 7;
}
void TuckerEngine::updateSprite_locationNum8_1(int i) {
@@ -622,20 +622,20 @@ void TuckerEngine::updateSprite_locationNum8_1(int i) {
state = -1;
} else if (_flagsTable[28] == 18) {
state = 6;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
} else if (_flagsTable[29] == 0) {
state = 1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 1) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 3;
}
if (_flagsTable[28] == 19) {
_flagsTable[28] = 20;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PostUpdate_locationNum8() {
@@ -662,7 +662,7 @@ void TuckerEngine::execData3PostUpdate_locationNum8() {
_updateLocationYPosTable2[0] += 2;
if (_updateLocationYPosTable2[0] > 120) {
_updateLocationYPosTable2[0] = 0;
- startSound(_locationSoundsTable[2].offset, 2, _locationSoundsTable[2].volume);
+ startSound(_locationSoundsTable[2]._offset, 2, _locationSoundsTable[2]._volume);
}
}
if (_flagsTable[28] > 1 && _flagsTable[28] < 5) {
@@ -674,82 +674,82 @@ void TuckerEngine::execData3PostUpdate_locationNum8() {
void TuckerEngine::updateSprite_locationNum9_0(int i) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- _spritesTable[i].needUpdate = 1;
- _spritesTable[i].state = 3;
+ _spritesTable[i]._needUpdate = true;
+ _spritesTable[i]._state = 3;
} else if (_updateLocationCounter2 > 0 || getRandomNumber() > 30000) {
- _spritesTable[i].state = 1;
+ _spritesTable[i]._state = 1;
if (_updateLocationCounter2 == 0) {
_updateLocationCounter2 = 6;
}
} else if (getRandomNumber() > 30000) {
- _spritesTable[i].state = 2;
- _spritesTable[i].defaultUpdateDelay = 5;
+ _spritesTable[i]._state = 2;
+ _spritesTable[i]._defaultUpdateDelay = 5;
} else {
- _spritesTable[i].state = 1;
- _spritesTable[i].animationFrame = 1;
- _spritesTable[i].updateDelay = 10;
+ _spritesTable[i]._state = 1;
+ _spritesTable[i]._animationFrame = 1;
+ _spritesTable[i]._updateDelay = 10;
}
}
void TuckerEngine::updateSprite_locationNum9_1(int i) {
- ++_spritesTable[i].counter;
- if (_spritesTable[i].counter > 10) {
- _spritesTable[i].counter = 0;
- _spritesTable[i].state = 5;
- _spritesTable[i].defaultUpdateDelay = 5;
+ ++_spritesTable[i]._counter;
+ if (_spritesTable[i]._counter > 10) {
+ _spritesTable[i]._counter = 0;
+ _spritesTable[i]._state = 5;
+ _spritesTable[i]._defaultUpdateDelay = 5;
} else {
- _spritesTable[i].state = 4;
+ _spritesTable[i]._state = 4;
}
}
void TuckerEngine::updateSprite_locationNum9_2(int i) {
- _spritesTable[i].state = 6;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = 6;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::execData3PreUpdate_locationNum9() {
if (_flagsTable[7] < 2) {
_flagsTable[7] = 2;
}
- if (_flagsTable[8] == 0 && _locationMusicsTable[0].volume != 0) {
- _locationMusicsTable[0].volume = 0;
+ if (_flagsTable[8] == 0 && _locationMusicsTable[0]._volume != 0) {
+ _locationMusicsTable[0]._volume = 0;
} else {
- _locationMusicsTable[0].volume = _xPosCurrent / 40;
+ _locationMusicsTable[0]._volume = _xPosCurrent / 40;
}
- setVolumeMusic(0, _locationMusicsTable[0].volume);
+ setVolumeMusic(0, _locationMusicsTable[0]._volume);
if (!isSoundPlaying(1) && getRandomNumber() > 32000) {
int i = getRandomNumber() / 5500 + 3;
assert(i >= 0 && i < kLocationSoundsTableSize);
- startSound(_locationSoundsTable[i].offset, i, _locationSoundsTable[i].volume);
+ startSound(_locationSoundsTable[i]._offset, i, _locationSoundsTable[i]._volume);
}
if (_flagsTable[8] == 2 && _locationMaskType == 0) {
_flagsTable[8] = 0;
- startSound(_locationSoundsTable[7].offset, 7, _locationSoundsTable[7].volume);
+ startSound(_locationSoundsTable[7]._offset, 7, _locationSoundsTable[7]._volume);
}
}
void TuckerEngine::execData3PostUpdate_locationNum9() {
- if (_spritesTable[1].state == 4) {
- if (_spritesTable[1].flipX == 1) {
+ if (_spritesTable[1]._state == 4) {
+ if (_spritesTable[1]._flipX) {
--_updateLocationXPosTable2[0];
if (_updateLocationXPosTable2[0] < -50) {
- _spritesTable[1].flipX = 0;
+ _spritesTable[1]._flipX = false;
_updateLocationXPosTable2[0] = -50;
}
} else {
++_updateLocationXPosTable2[0];
if (_updateLocationXPosTable2[0] > 500) {
- _spritesTable[1].flipX = 1;
+ _spritesTable[1]._flipX = true;
_updateLocationXPosTable2[0] = 500;
}
}
}
- _spritesTable[1].gfxBackgroundOffset = _updateLocationXPosTable2[0] + 8320;
+ _spritesTable[1]._gfxBackgroundOffset = _updateLocationXPosTable2[0] + 8320;
for (int i = 1; i < 3; ++i) {
- _spritesTable[i].colorType = 1;
- _spritesTable[i].yMaxBackground = 60;
+ _spritesTable[i]._colorType = 1;
+ _spritesTable[i]._yMaxBackground = 60;
drawSprite(i);
- _spritesTable[i].colorType = 0;
+ _spritesTable[i]._colorType = 0;
}
}
@@ -759,7 +759,7 @@ void TuckerEngine::updateSprite_locationNum10() {
if (_flagsTable[99] == 1) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- _spritesTable[0].needUpdate = 1;
+ _spritesTable[0]._needUpdate = true;
if (r < 26000) {
state = 1;
} else if (r < 29000) {
@@ -769,12 +769,12 @@ void TuckerEngine::updateSprite_locationNum10() {
}
} else if (_csDataHandled) {
state = 2;
- _spritesTable[0].updateDelay = 4;
+ _spritesTable[0]._updateDelay = 4;
} else {
- _spritesTable[0].needUpdate = 0;
+ _spritesTable[0]._needUpdate = false;
if (r > 26000) {
state = 5;
- _spritesTable[0].prevAnimationFrame = 1;
+ _spritesTable[0]._prevAnimationFrame = true;
} else if (r > 24000) {
state = 6;
_miscSoundFxDelayCounter[0] = 120;
@@ -783,7 +783,7 @@ void TuckerEngine::updateSprite_locationNum10() {
setCharacterAnimation(0, 0);
}
}
- _spritesTable[0].state = state;
+ _spritesTable[0]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum10() {
@@ -797,8 +797,8 @@ void TuckerEngine::execData3PreUpdate_locationNum10() {
if (_flagsTable[47] == 1 && _inventoryItemsState[26] == 1) {
_flagsTable[47] = 2;
}
- if (_spritesTable[0].state == 6 && _spritesTable[0].animationFrame == 18 && !isSoundPlaying(0)) {
- startSound(_locationSoundsTable[0].offset, 0, _locationSoundsTable[0].volume);
+ if (_spritesTable[0]._state == 6 && _spritesTable[0]._animationFrame == 18 && !isSoundPlaying(0)) {
+ startSound(_locationSoundsTable[0]._offset, 0, _locationSoundsTable[0]._volume);
}
if (_flagsTable[230] == 1 && getRandomNumber() > 32000) {
_flagsTable[230] = 0;
@@ -808,52 +808,52 @@ void TuckerEngine::execData3PreUpdate_locationNum10() {
void TuckerEngine::updateSprite_locationNum11_0(int i) {
const int r = getRandomNumber();
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
- _spritesTable[i].state = 2;
+ _spritesTable[i]._needUpdate = true;
+ _spritesTable[i]._state = 2;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (r > 28000) {
- _spritesTable[i].state = 3;
+ _spritesTable[i]._state = 3;
} else if (r > 20000) {
- _spritesTable[i].state = 4;
+ _spritesTable[i]._state = 4;
} else {
- _spritesTable[i].state = 3;
- _spritesTable[i].animationFrame = 1;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._state = 3;
+ _spritesTable[i]._animationFrame = 1;
+ _spritesTable[i]._updateDelay = 5;
}
}
}
void TuckerEngine::updateSprite_locationNum11_1(int i) {
if (getRandomNumber() > 20000) {
- _spritesTable[i].state = 5;
+ _spritesTable[i]._state = 5;
} else {
- _spritesTable[i].animationFrame = 14;
- _updateSpriteFlag1 = 1;
- _spritesTable[i].state = 5;
+ _spritesTable[i]._animationFrame = 14;
+ _updateSpriteFlag1 = true;
+ _spritesTable[i]._state = 5;
}
}
void TuckerEngine::updateSprite_locationNum11_2(int i) {
if (getRandomNumber() > 20000) {
- _spritesTable[i].state = 6;
+ _spritesTable[i]._state = 6;
} else {
- _spritesTable[i].animationFrame = 17;
- _spritesTable[i].state = 6;
- _updateSpriteFlag1 = 1;
+ _spritesTable[i]._animationFrame = 17;
+ _spritesTable[i]._state = 6;
+ _updateSpriteFlag1 = true;
}
}
void TuckerEngine::updateSprite_locationNum11_3(int i) {
- _spritesTable[i].state = 7;
+ _spritesTable[i]._state = 7;
}
void TuckerEngine::updateSprite_locationNum11_4(int i) {
if (getRandomNumber() > 30000 && _flagsTable[55] < 2) {
- _spritesTable[i].state = 1;
- startSound(_locationSoundsTable[6].offset, 6, _locationSoundsTable[6].volume);
+ _spritesTable[i]._state = 1;
+ startSound(_locationSoundsTable[6]._offset, 6, _locationSoundsTable[6]._volume);
} else {
- _spritesTable[i].state = -1;
+ _spritesTable[i]._state = -1;
}
}
@@ -866,10 +866,10 @@ void TuckerEngine::updateSprite_locationNum12_0(int i) {
if (_flagsTable[207] > 0) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (_updateLocationCounter2 < 4) {
state = 1;
} else if (_updateLocationCounter2 < 8) {
@@ -878,7 +878,7 @@ void TuckerEngine::updateSprite_locationNum12_0(int i) {
state = 4;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum12_1(int i) {
@@ -891,7 +891,7 @@ void TuckerEngine::updateSprite_locationNum12_1(int i) {
} else {
state = 8;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum12() {
@@ -899,13 +899,13 @@ void TuckerEngine::execData3PreUpdate_locationNum12() {
_flagsTable[38] = 1;
}
if (_flagsTable[41] == 0) {
- if (_locationMusicsTable[0].volume != 100) {
- _locationMusicsTable[0].volume = 100;
+ if (_locationMusicsTable[0]._volume != 100) {
+ _locationMusicsTable[0]._volume = 100;
setVolumeMusic(0, 100);
}
} else {
- if (_locationMusicsTable[0].volume != 20) {
- _locationMusicsTable[0].volume = 20;
+ if (_locationMusicsTable[0]._volume != 20) {
+ _locationMusicsTable[0]._volume = 20;
setVolumeMusic(0, 20);
}
}
@@ -917,44 +917,44 @@ void TuckerEngine::updateSprite_locationNum13(int i) {
if (_flagsTable[202] == 0) {
_flagsTable[202] = 1;
state = 3;
- _spritesTable[i].stateIndex = -1;
+ _spritesTable[i]._stateIndex = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 4;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 5;
}
} else if (_flagsTable[202] == 1) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
_flagsTable[202] = 0;
state = 6;
} else {
setCharacterAnimation(0, 0);
return;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum13() {
if (_flagsTable[69] == 0) {
if (getRandomNumber() > 31000) {
_flagsTable[69] = 1;
- startSound(_locationSoundsTable[1].offset, 1, _locationSoundsTable[1].volume);
+ startSound(_locationSoundsTable[1]._offset, 1, _locationSoundsTable[1]._volume);
} else if (isSoundPlaying(1)) {
stopSound(1);
}
}
_flagsTable[8] = 2;
- if (_spritesTable[0].state == 1) {
- if (_spritesTable[0].animationFrame > 10 && _spritesTable[0].animationFrame < 20) {
+ if (_spritesTable[0]._state == 1) {
+ if (_spritesTable[0]._animationFrame > 10 && _spritesTable[0]._animationFrame < 20) {
if (!isSoundPlaying(0)) {
- startSound(_locationSoundsTable[0].offset, 0, _locationSoundsTable[0].volume);
+ startSound(_locationSoundsTable[0]._offset, 0, _locationSoundsTable[0]._volume);
}
}
}
if (isSoundPlaying(0)) {
- if (_spritesTable[0].animationFrame > 10 && _spritesTable[0].animationFrame < 20) {
+ if (_spritesTable[0]._animationFrame > 10 && _spritesTable[0]._animationFrame < 20) {
stopSound(0);
}
}
@@ -963,12 +963,12 @@ void TuckerEngine::execData3PreUpdate_locationNum13() {
void TuckerEngine::updateSprite_locationNum14(int i) {
int state = 2;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = (getRandomNumber() < 12000) ? 1 : 3;
} else if (getRandomNumber() < 26000) {
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum14() {
@@ -988,7 +988,7 @@ void TuckerEngine::execData3PreUpdate_locationNum14() {
num = 7;
}
if (num != -1) {
- startSound(_locationSoundsTable[num].offset, num, _locationSoundsTable[num].volume);
+ startSound(_locationSoundsTable[num]._offset, num, _locationSoundsTable[num]._volume);
}
}
_locationHeightTable[14] = (_xPosCurrent < 100) ? 0 : 60;
@@ -1008,11 +1008,11 @@ void TuckerEngine::execData3PreUpdate_locationNum14() {
}
const int num = _updateLocation14ObjNum[i];
if (num > 0) {
- const int w = _dataTable[num].xSize;
- const int h = _dataTable[num].ySize;
+ const int w = _dataTable[num]._xSize;
+ const int h = _dataTable[num]._ySize;
const int x = _updateLocationXPosTable2[i] - w / 2;
const int y = _updateLocationYPosTable2[i] / 16 - h / 2;
- Graphics::decodeRLE_248(_locationBackgroundGfxBuf + y * 640 + x, _data3GfxBuf + _dataTable[num].sourceOffset, w, h, 0, 0, false);
+ Graphics::decodeRLE_248(_locationBackgroundGfxBuf + y * 640 + x, _data3GfxBuf + _dataTable[num]._sourceOffset, w, h, 0, 0, false);
addDirtyRect(x, y, w, h);
}
}
@@ -1063,41 +1063,41 @@ void TuckerEngine::execData3PostUpdate_locationNum14() {
}
void TuckerEngine::updateSprite_locationNum15_0(int i) {
- _spritesTable[i].state = -1;
+ _spritesTable[i]._state = -1;
}
void TuckerEngine::updateSprite_locationNum15_1(int i) {
int state;
int r = getRandomNumber();
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 6;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (r < 26000) {
state = 5;
} else if (r < 29000) {
state = 2;
- _spritesTable[i].prevAnimationFrame = 1;
+ _spritesTable[i]._prevAnimationFrame = true;
} else {
state = 4;
- _spritesTable[4].counter = 1;
+ _spritesTable[4]._counter = 1;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum15_2(int i) {
- _spritesTable[i].state = 3;
- if (_spritesTable[4].counter > 0) {
- ++_spritesTable[4].counter;
- if (_spritesTable[4].counter > 6) {
- _spritesTable[4].counter = 0;
+ _spritesTable[i]._state = 3;
+ if (_spritesTable[4]._counter > 0) {
+ ++_spritesTable[4]._counter;
+ if (_spritesTable[4]._counter > 6) {
+ _spritesTable[4]._counter = 0;
} else {
- _spritesTable[i].updateDelay = 2;
+ _spritesTable[i]._updateDelay = 2;
}
} else {
- _spritesTable[i].updateDelay = 2;
+ _spritesTable[i]._updateDelay = 2;
}
}
@@ -1106,7 +1106,7 @@ void TuckerEngine::execData3PreUpdate_locationNum15() {
if (_updateLocationFadePaletteCounter > 500) {
if (!isSoundPlaying(1) && getRandomNumber() > 31000) {
const int i = getRandomNumber() / 4714;
- startSound(_locationSoundsTable[i].offset, i, _locationSoundsTable[i].volume);
+ startSound(_locationSoundsTable[i]._offset, i, _locationSoundsTable[i]._volume);
_updateLocationFadePaletteCounter = 0;
}
}
@@ -1123,21 +1123,21 @@ void TuckerEngine::updateSprite_locationNum16_0(int i) {
} else if (_flagsTable[82] == 2) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- if (_spritesTable[0].needUpdate == 0) {
- _spritesTable[0].needUpdate = 1;
+ if (!_spritesTable[0]._needUpdate) {
+ _spritesTable[0]._needUpdate = true;
state = 1;
} else {
state = 1;
- _spritesTable[0].animationFrame = 2;
- _updateSpriteFlag1 = 1;
+ _spritesTable[0]._animationFrame = 2;
+ _updateSpriteFlag1 = true;
}
} else if (_csDataHandled) {
- _spritesTable[0].needUpdate = 0;
+ _spritesTable[0]._needUpdate = false;
state = 4;
- _spritesTable[0].updateDelay = 5;
+ _spritesTable[0]._updateDelay = 5;
} else if (r < 30000) {
state = 4;
- _spritesTable[0].updateDelay = 5;
+ _spritesTable[0]._updateDelay = 5;
} else if (r < 31000) {
state = 4;
if (_xPosCurrent < 300) {
@@ -1149,7 +1149,7 @@ void TuckerEngine::updateSprite_locationNum16_0(int i) {
} else {
state = 6;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum16_1(int i) {
@@ -1164,18 +1164,18 @@ void TuckerEngine::updateSprite_locationNum16_1(int i) {
} else if (_flagsTable[60] == 0) {
state = 10;
if (isSoundPlaying(1)) {
- _locationSoundsTable[1].type = 2;
- startSound(_locationSoundsTable[1].offset, 1, _locationSoundsTable[1].volume);
+ _locationSoundsTable[1]._type = 2;
+ startSound(_locationSoundsTable[1]._offset, 1, _locationSoundsTable[1]._volume);
}
} else {
state = 9;
if (isSoundPlaying(0)) {
- _locationSoundsTable[0].type = 2;
- startSound(_locationSoundsTable[0].offset, 0, _locationSoundsTable[0].volume);
+ _locationSoundsTable[0]._type = 2;
+ startSound(_locationSoundsTable[0]._offset, 0, _locationSoundsTable[0]._volume);
}
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::updateSprite_locationNum16_2(int i) {
@@ -1183,27 +1183,27 @@ void TuckerEngine::updateSprite_locationNum16_2(int i) {
if (_flagsTable[78] == 0) {
if (_flagsTable[60] == 1 && _flagsTable[61] == 1) {
_flagsTable[78] = 1;
- startSound(_locationSoundsTable[5].offset, 5, _locationSoundsTable[5].volume);
+ startSound(_locationSoundsTable[5]._offset, 5, _locationSoundsTable[5]._volume);
state = 7;
}
} else if (_flagsTable[78] == 1) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 8;
} else {
if (getRandomNumber() > 32000) {
state = 7;
} else if (getRandomNumber() > 10000) {
state = 13;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else {
state = 13;
}
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
}
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::execData3PreUpdate_locationNum16() {
@@ -1218,26 +1218,26 @@ void TuckerEngine::updateSprite_locationNum17() {
} else if (_flagsTable[82] == 2) {
_flagsTable[82] = 3;
_disableCharactersPath = true;
- _spritesTable[0].gfxBackgroundOffset = 100;
+ _spritesTable[0]._gfxBackgroundOffset = 100;
state = 1;
- _spritesTable[0].backgroundOffset = -1;
- } else if (_spritesTable[0].gfxBackgroundOffset < -160) {
+ _spritesTable[0]._backgroundOffset = -1;
+ } else if (_spritesTable[0]._gfxBackgroundOffset < -160) {
state = -1;
} else {
state = 1;
- _spritesTable[0].yMaxBackground = 0;
- _spritesTable[0].colorType = 1;
+ _spritesTable[0]._yMaxBackground = 0;
+ _spritesTable[0]._colorType = 1;
}
- _spritesTable[0].state = state;
+ _spritesTable[0]._state = state;
}
void TuckerEngine::updateSprite_locationNum18() {
int state;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- _spritesTable[0].needUpdate = 1;
+ _spritesTable[0]._needUpdate = true;
state = 2;
} else {
- _spritesTable[0].needUpdate = 0;
+ _spritesTable[0]._needUpdate = false;
state = 1;
const int r = getRandomNumber();
if (r > 31000) {
@@ -1246,54 +1246,54 @@ void TuckerEngine::updateSprite_locationNum18() {
state = 4;
}
}
- _spritesTable[0].gfxBackgroundOffset = 0;
- _spritesTable[0].backgroundOffset = 0;
- _spritesTable[0].state = state;
+ _spritesTable[0]._gfxBackgroundOffset = 0;
+ _spritesTable[0]._backgroundOffset = 0;
+ _spritesTable[0]._state = state;
}
void TuckerEngine::updateSprite_locationNum19_0(int i) {
int state;
if (_flagsTable[206] == 1) {
state = 7;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
_flagsTable[206] = 0;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- ++_spritesTable[i].counter;
- _spritesTable[i].needUpdate = 1;
- if (_spritesTable[i].counter > 10) {
- _spritesTable[i].counter = 0;
+ ++_spritesTable[i]._counter;
+ _spritesTable[i]._needUpdate = true;
+ if (_spritesTable[i]._counter > 10) {
+ _spritesTable[i]._counter = 0;
state = 2;
} else {
state = 1;
}
} else {
- _spritesTable[i].needUpdate = 0;
- if (_spritesTable[i].counter > 10) {
- _spritesTable[i].counter = 0;
+ _spritesTable[i]._needUpdate = false;
+ if (_spritesTable[i]._counter > 10) {
+ _spritesTable[i]._counter = 0;
}
- if (_spritesTable[i].counter == 2) {
+ if (_spritesTable[i]._counter == 2) {
state = 4;
- _spritesTable[i].prevAnimationFrame = 1;
- } else if (_spritesTable[i].counter == 5) {
+ _spritesTable[i]._prevAnimationFrame = true;
+ } else if (_spritesTable[i]._counter == 5) {
state = 5;
- _spritesTable[i].prevAnimationFrame = 1;
+ _spritesTable[i]._prevAnimationFrame = true;
} else {
state = 5;
- _spritesTable[i].updateDelay = 6;
+ _spritesTable[i]._updateDelay = 6;
}
}
- _spritesTable[i].state = state;
- _spritesTable[i].prevAnimationFrame = 1;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._prevAnimationFrame = true;
}
void TuckerEngine::updateSprite_locationNum19_1(int i) {
- _spritesTable[i].state = 9;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = 9;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::updateSprite_locationNum19_2(int i) {
- _spritesTable[i].gfxBackgroundOffset = 320;
- _spritesTable[i].state = -1;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = -1;
}
void TuckerEngine::updateSprite_locationNum19_3(int i) {
@@ -1313,36 +1313,36 @@ void TuckerEngine::updateSprite_locationNum21() {
} else if (_flagsTable[58] == 3) {
state = 6;
_flagsTable[58] = 4;
- _locationSoundsTable[0].volume = 60;
- _locationSoundsTable[5].volume = 60;
+ _locationSoundsTable[0]._volume = 60;
+ _locationSoundsTable[5]._volume = 60;
} else if (_flagsTable[58] == 4) {
state = 7;
- _locationSoundsTable[4].volume = 60;
+ _locationSoundsTable[4]._volume = 60;
} else if (_flagsTable[59] == 4) {
- _spritesTable[0].needUpdate = 1;
+ _spritesTable[0]._needUpdate = true;
_flagsTable[59] = 2;
state = 2;
setVolumeSound(2, 0);
} else if (_flagsTable[59] == 3) {
_flagsTable[59] = 0;
state = 4;
- setVolumeSound(2, _locationSoundsTable[2].volume);
+ setVolumeSound(2, _locationSoundsTable[2]._volume);
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- _spritesTable[0].needUpdate = 1;
+ _spritesTable[0]._needUpdate = true;
state = 3;
} else if (_flagsTable[59] == 2) {
- _spritesTable[0].needUpdate = 0;
+ _spritesTable[0]._needUpdate = false;
state = 3;
- _spritesTable[0].updateDelay = 5;
+ _spritesTable[0]._updateDelay = 5;
} else if (_flagsTable[15] == 1) {
state = 3;
- _spritesTable[0].updateDelay = 5;
+ _spritesTable[0]._updateDelay = 5;
} else {
- _spritesTable[0].needUpdate = 0;
+ _spritesTable[0]._needUpdate = false;
state = 1;
}
- _spritesTable[0].state = state;
- _spritesTable[0].gfxBackgroundOffset = 320;
+ _spritesTable[0]._state = state;
+ _spritesTable[0]._gfxBackgroundOffset = 320;
}
void TuckerEngine::execData3PreUpdate_locationNum21() {
@@ -1351,7 +1351,7 @@ void TuckerEngine::execData3PreUpdate_locationNum21() {
_pendingActionDelay = 0;
_flagsTable[59] = 1;
_nextAction = 2;
- _csDataLoaded = 0;
+ _csDataLoaded = false;
}
if (_flagsTable[58] > 0 && !isSoundPlaying(0)) {
const int r = getRandomNumber();
@@ -1364,17 +1364,17 @@ void TuckerEngine::execData3PreUpdate_locationNum21() {
} else {
num = 5;
}
- startSound(_locationSoundsTable[num].offset, num, _locationSoundsTable[num].volume);
+ startSound(_locationSoundsTable[num]._offset, num, _locationSoundsTable[num]._volume);
}
}
- if (_spritesTable[0].state == 6) {
- if (_spritesTable[0].animationFrame < 18) {
- _spritesTable[0].gfxBackgroundOffset = 320 + _spritesTable[0].animationFrame * 638;
+ if (_spritesTable[0]._state == 6) {
+ if (_spritesTable[0]._animationFrame < 18) {
+ _spritesTable[0]._gfxBackgroundOffset = 320 + _spritesTable[0]._animationFrame * 638;
} else {
- _spritesTable[0].gfxBackgroundOffset = 11840 - _spritesTable[0].animationFrame * 2;
+ _spritesTable[0]._gfxBackgroundOffset = 11840 - _spritesTable[0]._animationFrame * 2;
}
} else {
- _spritesTable[0].gfxBackgroundOffset = 320;
+ _spritesTable[0]._gfxBackgroundOffset = 320;
}
if (_inventoryItemsState[19] > 0) {
_flagsTable[43] = 1;
@@ -1397,20 +1397,20 @@ void TuckerEngine::execData3PreUpdate_locationNum22() {
}
if (_flagsTable[210] < 2 && !_csDataHandled && _flagsTable[54] == 1) {
_nextAction = 25;
- _csDataLoaded = 0;
+ _csDataLoaded = false;
_flagsTable[210] = 2;
}
}
void TuckerEngine::updateSprite_locationNum22() {
if (_flagsTable[207] == 1) {
- _spritesTable[0].state = -1;
+ _spritesTable[0]._state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- _spritesTable[0].needUpdate = 1;
- _spritesTable[0].state = 2;
+ _spritesTable[0]._needUpdate = true;
+ _spritesTable[0]._state = 2;
} else {
- _spritesTable[0].needUpdate = 0;
- _spritesTable[0].state = 1;
+ _spritesTable[0]._needUpdate = false;
+ _spritesTable[0]._state = 1;
}
}
@@ -1421,37 +1421,37 @@ void TuckerEngine::updateSprite_locationNum23_0(int i) {
} else {
state = -1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum23_1(int i) {
int state;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 14;
} else if (getRandomNumber() < 30000) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 25;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 13;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum23_2(int i) {
int state = 0;
if (_flagsTable[210] == 0) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 6;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = (getRandomNumber() < 25000) ? 4 : 5;
}
} else if (_flagsTable[210] == 1) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
if (_flagsTable[211] == 10) {
state = 34;
} else if (_flagsTable[211] == 0) {
@@ -1461,7 +1461,7 @@ void TuckerEngine::updateSprite_locationNum23_2(int i) {
state = 31;
}
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (_flagsTable[211] == 1) {
state = 32;
_flagsTable[211] = 0;
@@ -1471,10 +1471,10 @@ void TuckerEngine::updateSprite_locationNum23_2(int i) {
}
} else if (_flagsTable[210] == 2) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 33;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (_flagsTable[212] == 0) {
state = 3;
_flagsTable[212] = 1;
@@ -1488,7 +1488,7 @@ void TuckerEngine::updateSprite_locationNum23_2(int i) {
} else {
state = 24;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum23_3(int i) {
@@ -1496,13 +1496,13 @@ void TuckerEngine::updateSprite_locationNum23_3(int i) {
if (_flagsTable[210] == 0 || _flagsTable[210] == 2) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 8;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 9;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum24_0(int i) {
@@ -1512,40 +1512,40 @@ void TuckerEngine::updateSprite_locationNum24_0(int i) {
state = 5;
} else if (_flagsTable[103] == 0) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 2;
} else {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 1;
if (getRandomNumber() < 30000) {
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
}
} else if (_flagsTable[103] == 1 || _flagsTable[103] == 3) {
state = -1;
} else {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 4;
} else {
if (getRandomNumber() < 30000) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 6;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 6;
}
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum24_1(int i) {
if (_flagsTable[103] > 1) {
- _spritesTable[i].state = 3;
+ _spritesTable[i]._state = 3;
} else {
- _spritesTable[i].state = -1;
+ _spritesTable[i]._state = -1;
}
}
@@ -1554,11 +1554,11 @@ void TuckerEngine::updateSprite_locationNum24_2(int i) {
if (_flagsTable[214] > 1) {
state = -1;
} else if (_flagsTable[214] == 1) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
_flagsTable[214] = 2;
state = 9;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
if (_flagsTable[213] == 1) {
state = 10;
} else if (_flagsTable[213] == 2) {
@@ -1567,10 +1567,10 @@ void TuckerEngine::updateSprite_locationNum24_2(int i) {
state = 8;
}
} else {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 7;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum24_3(int i) {
@@ -1585,18 +1585,18 @@ void TuckerEngine::updateSprite_locationNum24_3(int i) {
} else {
state = 11;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum24() {
- _characterPrevBackFrontFacing = 0;
+ _characterPrevBackFrontFacing = false;
if (_flagsTable[112] == 0) {
_yPosCurrent = 132;
_xPosCurrent = 112;
} else if (_inventoryItemsState[2] == 1 && _inventoryItemsState[11] == 1 && _flagsTable[156] == 1 && _flagsTable[145] == 3) {
_flagsTable[156] = 2;
_nextAction = 61;
- _csDataLoaded = 0;
+ _csDataLoaded = false;
}
if (_flagsTable[103] > 0 && (_inventoryItemsState[2] > 0 || _inventoryItemsState[11] > 0 || _flagsTable[156] > 0 || _flagsTable[145] == 3) && _flagsTable[217] == 0) {
_flagsTable[217] = 1;
@@ -1619,9 +1619,9 @@ void TuckerEngine::updateSprite_locationNum26_0(int i) {
if (_flagsTable[125] > 0 && _flagsTable[125] < 300) {
_flagsTable[126] = 1;
}
- _spritesTable[i].gfxBackgroundOffset = _flagsTable[125];
- _spritesTable[i].state = 1;
- _spritesTable[i].colorType = 99;
+ _spritesTable[i]._gfxBackgroundOffset = _flagsTable[125];
+ _spritesTable[i]._state = 1;
+ _spritesTable[i]._colorType = 99;
}
void TuckerEngine::updateSprite_locationNum26_1(int i) {
@@ -1630,23 +1630,23 @@ void TuckerEngine::updateSprite_locationNum26_1(int i) {
state = -1;
} else if (_flagsTable[125] > 299) {
state = 2;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else {
state = 2;
}
- _spritesTable[i].gfxBackgroundOffset = _flagsTable[125];
- _spritesTable[i].colorType = 1;
- _spritesTable[i].state = state;
+ _spritesTable[i]._gfxBackgroundOffset = _flagsTable[125];
+ _spritesTable[i]._colorType = 1;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum26() {
- _characterPrevBackFrontFacing = 1;
- _spritesTable[1].gfxBackgroundOffset = _flagsTable[125];
- _spritesTable[0].gfxBackgroundOffset = _flagsTable[125];
+ _characterPrevBackFrontFacing = true;
+ _spritesTable[1]._gfxBackgroundOffset = _flagsTable[125];
+ _spritesTable[0]._gfxBackgroundOffset = _flagsTable[125];
if (_flagsTable[125] > 0 && _flagsTable[125] < 300) {
if (!isSoundPlaying(5)) {
- startSound(_locationSoundsTable[5].offset, 5, _locationSoundsTable[5].volume);
- startSound(_locationSoundsTable[6].offset, 6, _locationSoundsTable[6].volume);
+ startSound(_locationSoundsTable[5]._offset, 5, _locationSoundsTable[5]._volume);
+ startSound(_locationSoundsTable[6]._offset, 6, _locationSoundsTable[6]._volume);
}
++_flagsTable[125];
_flagsTable[126] = 1;
@@ -1656,7 +1656,7 @@ void TuckerEngine::execData3PreUpdate_locationNum26() {
stopSound(6);
}
}
- if (_panelLockedFlag == 0) {
+ if (!_panelLockedFlag) {
if (_xPosCurrent > 207 && _xPosCurrent < 256) {
_objectKeysLocationTable[26] = 0;
_objectKeysPosXTable[26] = 260;
@@ -1674,21 +1674,21 @@ void TuckerEngine::updateSprite_locationNum27(int i) {
state = 1;
_flagsTable[155] = 4;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 2;
} else if (getRandomNumber() < 30000) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 3;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 3;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum27() {
- _characterPrevBackFrontFacing = 0;
+ _characterPrevBackFrontFacing = false;
}
void TuckerEngine::execData3PostUpdate_locationNum27() {
@@ -1701,36 +1701,36 @@ void TuckerEngine::updateSprite_locationNum28_0(int i) {
int state;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 4;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
- _spritesTable[i].needUpdate = 0;
- ++_spritesTable[i].counter;
- if (_spritesTable[i].counter > 30) {
- _spritesTable[i].counter = 0;
+ _spritesTable[i]._needUpdate = false;
+ ++_spritesTable[i]._counter;
+ if (_spritesTable[i]._counter > 30) {
+ _spritesTable[i]._counter = 0;
}
if (_flagsTable[86] == 1) {
- if (_spritesTable[i].counter == 16 || _spritesTable[i].counter == 27) {
+ if (_spritesTable[i]._counter == 16 || _spritesTable[i]._counter == 27) {
state = 3;
} else {
state = 3;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
} else {
- if (_spritesTable[i].counter == 5 || _spritesTable[i].counter == 11) {
+ if (_spritesTable[i]._counter == 5 || _spritesTable[i]._counter == 11) {
state = 5;
- } else if (_spritesTable[i].counter == 16 || _spritesTable[i].counter == 27) {
+ } else if (_spritesTable[i]._counter == 16 || _spritesTable[i]._counter == 27) {
state = 6;
} else {
state = 6;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum28_1(int i) {
- _spritesTable[i].state = (_flagsTable[86] == 1) ? 1 : -1;
+ _spritesTable[i]._state = (_flagsTable[86] == 1) ? 1 : -1;
}
void TuckerEngine::updateSprite_locationNum28_2(int i) {
@@ -1741,14 +1741,14 @@ void TuckerEngine::updateSprite_locationNum28_2(int i) {
} else {
state = -1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum28() {
if (_flagsTable[86] == 0 && _xPosCurrent > 265 && _nextAction == 0) {
- _panelLockedFlag = 0;
+ _panelLockedFlag = false;
_nextAction = 21;
- _csDataLoaded = 0;
+ _csDataLoaded = false;
_pendingActionDelay = 0;
_pendingActionIndex = 0;
_currentActionVerb = 0;
@@ -1762,21 +1762,21 @@ void TuckerEngine::execData3PostUpdate_locationNum28() {
}
void TuckerEngine::updateSprite_locationNum29_0(int i) {
- _spritesTable[i].state = (getRandomNumber() < 32000) ? -1 : 2;
+ _spritesTable[i]._state = (getRandomNumber() < 32000) ? -1 : 2;
}
void TuckerEngine::updateSprite_locationNum29_1(int i) {
int state = -1;
if (getRandomNumber() >= 32000) {
state = 1;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum29_2(int i) {
- _spritesTable[i].state = 3;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = 3;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::execData3PreUpdate_locationNum29() {
@@ -1797,22 +1797,22 @@ void TuckerEngine::execData3PreUpdate_locationNum29() {
}
_system->getPaletteManager()->setPalette(scrollPal, 118, 5);
if (_flagsTable[143] == 1) {
- _locationObjectsTable[2].xPos = 999;
- _locationObjectsTable[3].xPos = 187;
+ _locationObjectsTable[2]._xPos = 999;
+ _locationObjectsTable[3]._xPos = 187;
} else {
- _locationObjectsTable[2].xPos = 187;
- _locationObjectsTable[3].xPos = 999;
+ _locationObjectsTable[2]._xPos = 187;
+ _locationObjectsTable[3]._xPos = 999;
}
}
}
void TuckerEngine::updateSprite_locationNum30_34(int i) {
- _spritesTable[i].state = i + 1;
+ _spritesTable[i]._state = i + 1;
}
void TuckerEngine::execData3PreUpdate_locationNum30() {
if (!isSoundPlaying(1) && getRandomNumber() > 32500) {
- startSound(_locationSoundsTable[1].offset, 1, _locationSoundsTable[1].volume);
+ startSound(_locationSoundsTable[1]._offset, 1, _locationSoundsTable[1]._volume);
}
}
@@ -1829,7 +1829,7 @@ void TuckerEngine::execData3PreUpdate_locationNum31() {
}
void TuckerEngine::execData3PreUpdate_locationNum32() {
- if (_spritesTable[0].state == 12 && _spritesTable[0].animationFrame < 22) {
+ if (_spritesTable[0]._state == 12 && _spritesTable[0]._animationFrame < 22) {
_flagsTable[113] = 1;
} else {
_flagsTable[113] = 0;
@@ -1843,16 +1843,16 @@ void TuckerEngine::execData3PostUpdate_locationNum32() {
}
void TuckerEngine::updateSprite_locationNum31_0(int i) {
- _spritesTable[i].state = (getRandomNumber() < 32000) ? 3 : 1;
+ _spritesTable[i]._state = (getRandomNumber() < 32000) ? 3 : 1;
}
void TuckerEngine::updateSprite_locationNum31_1(int i) {
- _spritesTable[i].state = (_flagsTable[86] == 1) ? 2 : -1;
+ _spritesTable[i]._state = (_flagsTable[86] == 1) ? 2 : -1;
}
void TuckerEngine::updateSprite_locationNum32_0(int i) {
static const uint8 stateTable[] = { 12, 1, 11, 1, 11, 2, 1, 5, 5, 11, 1, 5, 5, 5 };
- ++_spritesTable[i].counter;
+ ++_spritesTable[i]._counter;
if (_flagsTable[123] == 2) {
_flagsTable[123] = 0;
}
@@ -1862,42 +1862,42 @@ void TuckerEngine::updateSprite_locationNum32_0(int i) {
_flagsTable[222] = 2;
} else if (_flagsTable[222] == 2) {
state = 19;
- _spritesTable[i].animationFrame = 23;
- _updateSpriteFlag1 = 1;
+ _spritesTable[i]._animationFrame = 23;
+ _updateSpriteFlag1 = true;
} else if (_flagsTable[123] == 1) {
state = 17;
_flagsTable[123] = 2;
} else if (_flagsTable[222] == 3) {
state = 18;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 4;
} else if (_csDataHandled) {
state = 5;
} else {
- _spritesTable[i].needUpdate = 0;
- if (_spritesTable[i].counter > 13) {
- _spritesTable[i].counter = 0;
+ _spritesTable[i]._needUpdate = false;
+ if (_spritesTable[i]._counter > 13) {
+ _spritesTable[i]._counter = 0;
}
- state = stateTable[_spritesTable[i].counter];
+ state = stateTable[_spritesTable[i]._counter];
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum33_0(int i) {
int state = 5;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 7;
} else if (_flagsTable[87] == 1) {
state = 8;
} else if (_flagsTable[222] == 5) {
state = 4;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = (getRandomNumber() < 30000) ? 5 : 6;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum33_1(int i) {
@@ -1909,7 +1909,7 @@ void TuckerEngine::updateSprite_locationNum33_1(int i) {
} else {
state = 1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum33_2(int i) {
@@ -1921,37 +1921,37 @@ void TuckerEngine::updateSprite_locationNum33_2(int i) {
} else {
state = 9;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum33() {
if (_xPosCurrent < 90) {
if (_flagsTable[105] == 0) {
_flagsTable[105] = 3;
- startSound(_locationSoundsTable[5].offset, 5, _locationSoundsTable[5].volume);
+ startSound(_locationSoundsTable[5]._offset, 5, _locationSoundsTable[5]._volume);
}
} else {
if (_flagsTable[105] == 1) {
_flagsTable[105] = 2;
- startSound(_locationSoundsTable[5].offset, 5, _locationSoundsTable[5].volume);
+ startSound(_locationSoundsTable[5]._offset, 5, _locationSoundsTable[5]._volume);
}
}
if (_xPosCurrent > 230) {
if (_flagsTable[106] == 0) {
_flagsTable[106] = 3;
- startSound(_locationSoundsTable[5].offset, 5, _locationSoundsTable[5].volume);
+ startSound(_locationSoundsTable[5]._offset, 5, _locationSoundsTable[5]._volume);
}
} else {
if (_flagsTable[106] == 1) {
_flagsTable[106] = 2;
- startSound(_locationSoundsTable[5].offset, 5, _locationSoundsTable[5].volume);
+ startSound(_locationSoundsTable[5]._offset, 5, _locationSoundsTable[5]._volume);
}
}
}
void TuckerEngine::execData3PreUpdate_locationNum34() {
if (_flagsTable[143] == 1) {
- _locationObjectsTable[0].xPos = 0;
+ _locationObjectsTable[0]._xPos = 0;
}
}
@@ -1962,7 +1962,7 @@ void TuckerEngine::execData3PreUpdate_locationNum35() {
}
void TuckerEngine::updateSprite_locationNum36(int i) {
- _spritesTable[i].state = (getRandomNumber() < 32000) ? 1 : 2;
+ _spritesTable[i]._state = (getRandomNumber() < 32000) ? 1 : 2;
}
void TuckerEngine::execData3PreUpdate_locationNum36() {
@@ -1978,12 +1978,12 @@ void TuckerEngine::execData3PreUpdate_locationNum36() {
void TuckerEngine::updateSprite_locationNum37(int i) {
int j = i + 1;
int offset = 200 - i * 45;
- ++_spritesTable[i].counter;
- if (_spritesTable[i].counter > offset) {
- _spritesTable[i].state = j;
- _spritesTable[i].counter = 0;
+ ++_spritesTable[i]._counter;
+ if (_spritesTable[i]._counter > offset) {
+ _spritesTable[i]._state = j;
+ _spritesTable[i]._counter = 0;
} else {
- _spritesTable[i].state = -1;
+ _spritesTable[i]._state = -1;
}
}
@@ -2001,16 +2001,16 @@ void TuckerEngine::updateSprite_locationNum41(int i) {
state = 1;
_flagsTable[158] = 2;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 3;
} else if (getRandomNumber() < 30000) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 4;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum41() {
@@ -2020,10 +2020,10 @@ void TuckerEngine::execData3PreUpdate_locationNum41() {
} else if (_backgroundSpriteCurrentFrame == 7) {
_flagsTable[77] = 0;
}
- if (_changeBackgroundSprite == 0) {
+ if (!_changeBackgroundSprite) {
if (_backgroundSpriteCurrentFrame == 16 && !isSoundPlaying(4)) {
- _locationSoundsTable[4].type = 2;
- startSound(_locationSoundsTable[4].offset, 4, _locationSoundsTable[4].volume);
+ _locationSoundsTable[4]._type = 2;
+ startSound(_locationSoundsTable[4]._offset, 4, _locationSoundsTable[4]._volume);
} else {
if (_backgroundSpriteCurrentFrame == 28) {
stopSound(4);
@@ -2031,8 +2031,8 @@ void TuckerEngine::execData3PreUpdate_locationNum41() {
}
} else {
if (_backgroundSpriteCurrentFrame == 28 && !isSoundPlaying(4)) {
- _locationSoundsTable[4].type = 2;
- startSound(_locationSoundsTable[4].offset, 4, _locationSoundsTable[4].volume);
+ _locationSoundsTable[4]._type = 2;
+ startSound(_locationSoundsTable[4]._offset, 4, _locationSoundsTable[4]._volume);
} else {
if (_backgroundSpriteCurrentFrame == 18) {
stopSound(4);
@@ -2040,11 +2040,11 @@ void TuckerEngine::execData3PreUpdate_locationNum41() {
}
}
}
- if (_panelLockedFlag == 1 && _yPosCurrent > 130 && _selectedObject.yPos > 135 && _nextAction == 0 && _flagsTable[223] == 0) {
- _panelLockedFlag = 0;
+ if (_panelLockedFlag && _yPosCurrent > 130 && _selectedObject._yPos > 135 && _nextAction == 0 && _flagsTable[223] == 0) {
+ _panelLockedFlag = false;
_csDataLoaded = false;
_nextLocationNum = 0;
- _selectedObject.locationObject_locationNum = 0;
+ _selectedObject._locationObjectLocationNum = 0;
_locationMaskType = 0;
_nextAction = _flagsTable[163] + 32;
++_flagsTable[163];
@@ -2057,9 +2057,9 @@ void TuckerEngine::execData3PreUpdate_locationNum41() {
}
}
if (_flagsTable[77] == 0) {
- _locationObjectsTable[3].xPos = 230;
+ _locationObjectsTable[3]._xPos = 230;
} else {
- _locationObjectsTable[3].xPos = 930;
+ _locationObjectsTable[3]._xPos = 930;
}
}
}
@@ -2076,13 +2076,13 @@ void TuckerEngine::updateSprite_locationNum42(int i) {
_flagsTable[223] = 3;
} else if (_flagsTable[223] == 3) {
state = 5;
- _spritesTable[i].updateDelay = 5;
- _spritesTable[i].state = _spritesTable[i].firstFrame - 1; // FIXME: bug, fxNum ?
- _updateSpriteFlag1 = 1;
+ _spritesTable[i]._updateDelay = 5;
+ _spritesTable[i]._state = _spritesTable[i]._firstFrame - 1; // FIXME: bug, fxNum ?
+ _updateSpriteFlag1 = true;
} else {
state = 2;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum42() {
@@ -2094,18 +2094,18 @@ void TuckerEngine::updateSprite_locationNum43_2(int i) {
if (_flagsTable[237] > 0) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 5;
- } else if (_csDataHandled || _spritesTable[i].counter == 2) {
- _spritesTable[i].needUpdate = 0;
+ } else if (_csDataHandled || _spritesTable[i]._counter == 2) {
+ _spritesTable[i]._needUpdate = false;
state = 6;
- } else if (_spritesTable[i].counter == 0) {
+ } else if (_spritesTable[i]._counter == 0) {
state = 3;
} else {
state = 4;
- _spritesTable[i].counter = 2;
+ _spritesTable[i]._counter = 2;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum43_3(int i) {
@@ -2114,12 +2114,12 @@ void TuckerEngine::updateSprite_locationNum43_3(int i) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 7;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
state = 8;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum43_4(int i) {
@@ -2128,38 +2128,38 @@ void TuckerEngine::updateSprite_locationNum43_4(int i) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 9;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
state = 10;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum43_5(int i) {
- _spritesTable[i].state = (_flagsTable[236] < 4) ? -1 : 11;
+ _spritesTable[i]._state = (_flagsTable[236] < 4) ? -1 : 11;
}
void TuckerEngine::updateSprite_locationNum43_6(int i) {
- _spritesTable[i].state = (_flagsTable[236] < 4) ? -1 : 12;
+ _spritesTable[i]._state = (_flagsTable[236] < 4) ? -1 : 12;
}
void TuckerEngine::execData3PreUpdate_locationNum43() {
- if (_panelLockedFlag == 1 && _xPosCurrent > 67 && _selectedObject.xPos > 68 && _locationMaskType == 0) {
- _panelLockedFlag = 0;
- _csDataLoaded = 0;
+ if (_panelLockedFlag && _xPosCurrent > 67 && _selectedObject._xPos > 68 && _locationMaskType == 0) {
+ _panelLockedFlag = false;
+ _csDataLoaded = false;
_nextAction = 5;
}
- if (_xPosCurrent > 55 && _spritesTable[2].counter == 0) {
- _spritesTable[2].counter = 1;
+ if (_xPosCurrent > 55 && _spritesTable[2]._counter == 0) {
+ _spritesTable[2]._counter = 1;
}
}
void TuckerEngine::execData3PreUpdate_locationNum44() {
if (_backgroundSpriteCurrentAnimation == 1) {
if (!isSoundPlaying(3) && _backgroundSpriteCurrentFrame == 1) {
- _locationSoundsTable[3].type = 2;
- startSound(_locationSoundsTable[3].offset, 3, _locationSoundsTable[3].volume);
+ _locationSoundsTable[3]._type = 2;
+ startSound(_locationSoundsTable[3]._offset, 3, _locationSoundsTable[3]._volume);
}
if (_backgroundSpriteCurrentFrame == 21) {
_flagsTable[77] = 1;
@@ -2169,7 +2169,7 @@ void TuckerEngine::execData3PreUpdate_locationNum44() {
}
} else if (_backgroundSpriteCurrentAnimation == 4) {
if (_backgroundSpriteCurrentFrame == 20 && !isSoundPlaying(3)) {
- startSound(_locationSoundsTable[3].offset, 3, _locationSoundsTable[3].volume);
+ startSound(_locationSoundsTable[3]._offset, 3, _locationSoundsTable[3]._volume);
}
}
}
@@ -2182,14 +2182,14 @@ void TuckerEngine::updateSprite_locationNum48(int i) {
_flagsTable[160] = 3;
state = 3;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 2;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 2;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum49(int i) {
@@ -2211,20 +2211,20 @@ void TuckerEngine::updateSprite_locationNum49(int i) {
_flagsTable[185] = 0;
state = 4;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 2;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (getRandomNumber() < 30000 || _backgroundSpriteCurrentAnimation <= -1) {
state = 3;
- _spritesTable[i].updateDelay = 1;
+ _spritesTable[i]._updateDelay = 1;
} else if (getRandomNumber() < 16000) {
state = 5;
} else {
state = 6;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum49() {
@@ -2272,38 +2272,38 @@ void TuckerEngine::updateSprite_locationNum50(int i) {
_flagsTable[240] = 1;
}
} else {
- _spritesTable[i].animationFrame = _spritesTable[i].firstFrame - 1;
- _spritesTable[i].updateDelay = 5;
- _updateSpriteFlag1 = 1;
+ _spritesTable[i]._animationFrame = _spritesTable[i]._firstFrame - 1;
+ _spritesTable[i]._updateDelay = 5;
+ _updateSpriteFlag1 = true;
state = i + 1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum51(int i) {
if (i == 2) {
- _spritesTable[i].state = 1;
+ _spritesTable[i]._state = 1;
} else if (i == 0) {
static const int stateTable[] = { 3, 3, 4, 5, 3, 3, 5, 4, 3, 3, 4, 5, 4, 4 };
- ++_spritesTable[i].counter;
- if (_spritesTable[i].counter > 13) {
- _spritesTable[i].counter = 0;
+ ++_spritesTable[i]._counter;
+ if (_spritesTable[i]._counter > 13) {
+ _spritesTable[i]._counter = 0;
}
- _spritesTable[i].state = stateTable[_spritesTable[i].counter];
+ _spritesTable[i]._state = stateTable[_spritesTable[i]._counter];
} else {
i = 1;
- _spritesTable[i].state = 6;
+ _spritesTable[i]._state = 6;
}
- _spritesTable[i].colorType = 1;
- _spritesTable[i].yMaxBackground = 0;
+ _spritesTable[i]._colorType = 1;
+ _spritesTable[i]._yMaxBackground = 0;
}
void TuckerEngine::execData3PreUpdate_locationNum52() {
- if (_selectedObject.xPos > 108 && _panelLockedFlag > 0 && _nextAction == 0 && _locationMaskType == 0) {
+ if (_selectedObject._xPos > 108 && _panelLockedFlag && _nextAction == 0 && _locationMaskType == 0) {
_nextAction = 1;
- _csDataLoaded = 0;
+ _csDataLoaded = false;
}
}
@@ -2313,21 +2313,21 @@ void TuckerEngine::updateSprite_locationNum53_0(int i) {
}
int state;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 1;
} else if (_flagsTable[197] == 1) {
state = 3;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
_flagsTable[197] = 2;
} else if (_flagsTable[192] == 1) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 5;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum53_1(int i) {
@@ -2339,14 +2339,14 @@ void TuckerEngine::updateSprite_locationNum53_1(int i) {
} else {
state = -1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum53() {
if (_flagsTable[192] == 0 && _xPosCurrent < 200 && _nextAction == 0) {
- _panelLockedFlag = 0;
+ _panelLockedFlag = false;
_nextAction = 14;
- _csDataLoaded = 0;
+ _csDataLoaded = false;
_pendingActionDelay = 0;
_pendingActionIndex = 0;
_currentActionVerb = 0;
@@ -2354,55 +2354,52 @@ void TuckerEngine::execData3PreUpdate_locationNum53() {
}
void TuckerEngine::updateSprite_locationNum54(int i) {
- int state = 3;
if (_flagsTable[141] == 2) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
setCharacterAnimation(0, i);
_flagsTable[141] = 1;
- _spritesTable[i].counter = 0;
- } else if (_flagsTable[141] == 1 && _spritesTable[i].counter < 40) {
+ _spritesTable[i]._counter = 0;
+ } else if (_flagsTable[141] == 1 && _spritesTable[i]._counter < 40) {
setCharacterAnimation(1, i);
- ++_spritesTable[i].counter;
+ ++_spritesTable[i]._counter;
} else if (_flagsTable[141] == 1) {
setCharacterAnimation(2, i);
_flagsTable[141] = 3;
} else {
+ int state = 3;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 2;
+ _spritesTable[i]._needUpdate = true;
state = (getRandomNumber() < 12000) ? 2 : 4;
} else if (_flagsTable[141] == 3) {
- state = 3;
_flagsTable[141] = 0;
_flagsTable[224] = 1;
- _spritesTable[i].counter = 0;
- if (_panelLockedFlag == 0 && _xPosCurrent > 130 && _inventoryItemsState[17] == 0) {
+ _spritesTable[i]._counter = 0;
+ if (!_panelLockedFlag && _xPosCurrent > 130 && _inventoryItemsState[17] == 0) {
_nextAction = 18;
_csDataLoaded = false;
}
} else if (getRandomNumber() < 26000) {
- state = 3;
- _spritesTable[i].needUpdate = 0;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._needUpdate = false;
+ _spritesTable[i]._updateDelay = 5;
} else {
- state = 3;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
}
if (_inventoryItemsState[17] == 1) {
_flagsTable[224] = 2;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
}
void TuckerEngine::updateSprite_locationNum55(int i) {
if (_flagsTable[193] > 0 && _flagsTable[193] < 14) {
setCharacterAnimation(_flagsTable[193] - 1, i);
- _updateSpriteFlag1 = 1;
+ _updateSpriteFlag1 = true;
if (_flagsTable[193] == 1 || _flagsTable[193] == 3 || _flagsTable[193] == 5 || _flagsTable[193] == 7 || _flagsTable[193] == 11 || _flagsTable[193] == 13) {
++_flagsTable[193];
}
} else {
- _spritesTable[i].state = -1;
+ _spritesTable[i]._state = -1;
if (_flagsTable[193] == 14) {
_flagsTable[193] = 15;
}
@@ -2411,26 +2408,26 @@ void TuckerEngine::updateSprite_locationNum55(int i) {
void TuckerEngine::updateSprite_locationNum56(int i) {
int state;
- ++_spritesTable[i].counter;
+ ++_spritesTable[i]._counter;
if (_flagsTable[153] == 1) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 2;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum57_0(int i) {
int state;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (getRandomNumber() < 30000) {
state = 1;
} else if (getRandomNumber() < 16000) {
@@ -2439,15 +2436,15 @@ void TuckerEngine::updateSprite_locationNum57_0(int i) {
state = 2;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum57_1(int i) {
int state = 6;
if (getRandomNumber() < 30000) {
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum57() {
@@ -2472,20 +2469,20 @@ void TuckerEngine::updateSprite_locationNum58(int i) {
_flagsTable[190] = 3;
}
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::execData3PreUpdate_locationNum58() {
// workaround original game glitch #2872348: do not change position on location change
if (_nextLocationNum == 0 && _flagsTable[190] < 3 && _xPosCurrent > 310) {
_xPosCurrent = 310;
- _panelLockedFlag = 0;
+ _panelLockedFlag = false;
}
- if (_flagsTable[190] > 0 && _locationSoundsTable[0].volume > 0) {
- _locationSoundsTable[0].volume = 0;
- _locationSoundsTable[4].volume = 0;
- _locationSoundsTable[5].volume = 0;
+ if (_flagsTable[190] > 0 && _locationSoundsTable[0]._volume > 0) {
+ _locationSoundsTable[0]._volume = 0;
+ _locationSoundsTable[4]._volume = 0;
+ _locationSoundsTable[5]._volume = 0;
if (isSoundPlaying(0)) {
stopSound(0);
}
@@ -2498,27 +2495,27 @@ void TuckerEngine::updateSprite_locationNum59(int i) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 3;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else if (_csDataHandled) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (_flagsTable[199] == 0) {
_flagsTable[199] = 1;
setCharacterAnimation(0, 0);
return;
}
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 3;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else if (_flagsTable[199] == 1) {
_flagsTable[199] = 0;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
setCharacterAnimation(1, 0);
return;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum60_0(int i) {
@@ -2526,34 +2523,34 @@ void TuckerEngine::updateSprite_locationNum60_0(int i) {
if (_flagsTable[186] > 0) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 9;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = (getRandomNumber() > 32000) ? 8 : 7;
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::updateSprite_locationNum60_1(int i) {
int state;
if (_flagsTable[186] == 1) {
_flagsTable[186] = 2;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 2;
} else if (_flagsTable[186] == 2) {
state = 6;
_flagsTable[187] = 1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 1;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = (getRandomNumber() > 32000) ? 5 : 4;
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::execData3PostUpdate_locationNum60() {
@@ -2569,19 +2566,19 @@ void TuckerEngine::updateSprite_locationNum61_0(int i) {
} else if (_flagsTable[88] == 2) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 0) {
- if (_spritesTable[i].needUpdate == 0) {
- _spritesTable[i].needUpdate = 1;
+ if (!_spritesTable[i]._needUpdate) {
+ _spritesTable[i]._needUpdate = true;
state = 2;
} else {
state = 2;
- _spritesTable[0].animationFrame = 2;
- _updateSpriteFlag1 = 1;
+ _spritesTable[0]._animationFrame = 2;
+ _updateSpriteFlag1 = true;
}
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
if (r < 30000) {
state = 7;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else if (r < 31000) {
state = 7;
} else if (r < 32000) {
@@ -2590,7 +2587,7 @@ void TuckerEngine::updateSprite_locationNum61_0(int i) {
state = 6;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum61_1(int i) {
@@ -2598,19 +2595,19 @@ void TuckerEngine::updateSprite_locationNum61_1(int i) {
if (_flagsTable[151] == 1) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 14;
} else if (_csDataHandled || getRandomNumber() < 29000) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 12;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else if (getRandomNumber() < 20000) {
state = 12;
} else {
state = 13;
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::updateSprite_locationNum61_2(int i) {
@@ -2651,8 +2648,8 @@ void TuckerEngine::updateSprite_locationNum61_2(int i) {
if (_flagsTable[136] != 2) {
_flagsTable[150] = 0;
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::execData3PreUpdate_locationNum61() {
@@ -2676,13 +2673,13 @@ void TuckerEngine::updateSprite_locationNum63_0(int i) {
} else if (_flagsTable[132] != 2 || _flagsTable[133] != 1 || _flagsTable[136] > 0) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 6;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = -1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum63_1(int i) {
@@ -2694,16 +2691,16 @@ void TuckerEngine::updateSprite_locationNum63_1(int i) {
state = 8;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum63_2(int i) {
- ++_spritesTable[i].counter;
+ ++_spritesTable[i]._counter;
int state = -1;
if (_flagsTable[132] == 2 && _flagsTable[133] == 1 && _flagsTable[136] <= 0) {
if (_flagsTable[226] == 0) {
state = 9;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else if (_flagsTable[226] == 1) {
state = 9;
_flagsTable[226] = 2;
@@ -2714,16 +2711,16 @@ void TuckerEngine::updateSprite_locationNum63_2(int i) {
state = 10;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum63_3(int i) {
- ++_spritesTable[i].counter;
+ ++_spritesTable[i]._counter;
int state = -1;
if (_flagsTable[132] == 2 && _flagsTable[133] == 1 && _flagsTable[136] <= 0) {
- if (_spritesTable[i].counter > 80) {
+ if (_spritesTable[i]._counter > 80) {
state = 7;
- _spritesTable[i].counter = 0;
+ _spritesTable[i]._counter = 0;
} else if (getRandomNumber() > 32000) {
state = 2;
} else if (getRandomNumber() > 32000) {
@@ -2732,7 +2729,7 @@ void TuckerEngine::updateSprite_locationNum63_3(int i) {
state = 8;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum63_4(int i) {
@@ -2740,7 +2737,7 @@ void TuckerEngine::updateSprite_locationNum63_4(int i) {
if (_flagsTable[132] == 2 && _flagsTable[133] == 1 && _flagsTable[136] == 0) {
state = 1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum63() {
@@ -2764,8 +2761,8 @@ void TuckerEngine::execData3PreUpdate_locationNum63() {
} else {
if (_flagsTable[132] == 0 || (_flagsTable[132] == 2 && _flagsTable[136] > 0)) {
if (!isSoundPlaying(1)) {
- _locationSoundsTable[1].type = 2;
- startSound(_locationSoundsTable[1].offset, 1, _locationSoundsTable[1].volume);
+ _locationSoundsTable[1]._type = 2;
+ startSound(_locationSoundsTable[1]._offset, 1, _locationSoundsTable[1]._volume);
}
} else {
if (isSoundPlaying(1)) {
@@ -2774,8 +2771,8 @@ void TuckerEngine::execData3PreUpdate_locationNum63() {
}
if (_flagsTable[132] == 1) {
if (!isSoundPlaying(0)) {
- _locationSoundsTable[0].type = 2;
- startSound(_locationSoundsTable[0].offset, 0, _locationSoundsTable[0].volume);
+ _locationSoundsTable[0]._type = 2;
+ startSound(_locationSoundsTable[0]._offset, 0, _locationSoundsTable[0]._volume);
}
} else {
if (isSoundPlaying(0)) {
@@ -2784,7 +2781,7 @@ void TuckerEngine::execData3PreUpdate_locationNum63() {
}
if (_flagsTable[132] == 2 && _flagsTable[136] == 0) {
if (!isSoundPlaying(2)) {
- startSound(_locationSoundsTable[2].offset, 2, _locationSoundsTable[2].volume);
+ startSound(_locationSoundsTable[2]._offset, 2, _locationSoundsTable[2]._volume);
}
} else {
if (isSoundPlaying(2)) {
@@ -2807,7 +2804,7 @@ void TuckerEngine::updateSprite_locationNum65(int i) {
if (_flagsTable[188] == 1) {
_flagsTable[188] = 2;
state = 1;
- _spritesTable[i].gfxBackgroundOffset = 100;
+ _spritesTable[i]._gfxBackgroundOffset = 100;
} else if (_flagsTable[188] > 0 && _flagsTable[189] > 0) {
state = -1;
if (_xPosCurrent < 150 || _yPosCurrent > 240) {
@@ -2826,7 +2823,7 @@ void TuckerEngine::updateSprite_locationNum65(int i) {
_flagsTable[189] = 0;
}
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum65() {
@@ -2836,66 +2833,66 @@ void TuckerEngine::execData3PreUpdate_locationNum65() {
void TuckerEngine::updateSprite_locationNum66_0(int i) {
int state;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 2;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 2;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::updateSprite_locationNum66_1(int i) {
int state;
if (_flagsTable[191] == 0 && _xPosCurrent > 568) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 8;
} else {
state = 10;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
}
} else {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 9;
} else if (getRandomNumber() > 30000) {
state = 6;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 7;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
}
}
- _spritesTable[i].state = state;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = state;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::updateSprite_locationNum66_2(int i) {
- _spritesTable[i].disabled = 1;
- _spritesTable[i].state = 3;
+ _spritesTable[i]._disabled = true;
+ _spritesTable[i]._state = 3;
}
void TuckerEngine::updateSprite_locationNum66_3(int i) {
- _spritesTable[i].state = 4;
+ _spritesTable[i]._state = 4;
}
void TuckerEngine::updateSprite_locationNum66_4(int i) {
- _spritesTable[i].state = 5;
- _spritesTable[i].gfxBackgroundOffset = 320;
+ _spritesTable[i]._state = 5;
+ _spritesTable[i]._gfxBackgroundOffset = 320;
}
void TuckerEngine::execData3PreUpdate_locationNum66() {
// FIXME: shouldn't be executed after using the map
_flagsTable[137] = 0;
if (_xPosCurrent > 583 && _flagsTable[191] == 0 && _nextAction == 0 && _locationMaskType == 0) {
- _panelLockedFlag = 0;
- _csDataLoaded = 0;
+ _panelLockedFlag = false;
+ _csDataLoaded = false;
_nextLocationNum = 0;
- _selectedObject.locationObject_locationNum = 0;
+ _selectedObject._locationObjectLocationNum = 0;
if (_flagsTable[131] == 0) {
_nextAction = 13;
} else if (_flagsTable[130] == 0) {
@@ -2907,25 +2904,25 @@ void TuckerEngine::execData3PreUpdate_locationNum66() {
}
void TuckerEngine::execData3PostUpdate_locationNum66() {
- if (_spritesTable[2].flipX == 1) {
+ if (_spritesTable[2]._flipX) {
--_updateLocationXPosTable2[0];
if (_updateLocationXPosTable2[0] < -50) {
- _spritesTable[2].flipX = 0;
+ _spritesTable[2]._flipX = false;
_updateLocationXPosTable2[0] = -50;
}
} else {
++_updateLocationXPosTable2[0];
if (_updateLocationXPosTable2[0] > 500) {
- _spritesTable[2].flipX = 1;
+ _spritesTable[2]._flipX = true;
_updateLocationXPosTable2[0] = 500;
}
}
- _spritesTable[2].gfxBackgroundOffset = _updateLocationXPosTable2[0] + 8320;
+ _spritesTable[2]._gfxBackgroundOffset = _updateLocationXPosTable2[0] + 8320;
const int spr = 2;
- _spritesTable[spr].colorType = 1;
- _spritesTable[spr].yMaxBackground = 0;
+ _spritesTable[spr]._colorType = 1;
+ _spritesTable[spr]._yMaxBackground = 0;
drawSprite(spr);
- _spritesTable[spr].colorType = 0;
+ _spritesTable[spr]._colorType = 0;
}
void TuckerEngine::updateSprite_locationNum69_1(int i) {
@@ -2939,10 +2936,10 @@ void TuckerEngine::updateSprite_locationNum69_1(int i) {
} else if (_flagsTable[236] == 4) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 9;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
state = 14;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
}
} else if (_flagsTable[236] == 5) {
state = 7;
@@ -2950,7 +2947,7 @@ void TuckerEngine::updateSprite_locationNum69_1(int i) {
} else {
state = -1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum69_2(int i) {
@@ -2966,10 +2963,10 @@ void TuckerEngine::updateSprite_locationNum69_2(int i) {
} else if (_flagsTable[237] == 4 || _flagsTable[237] == 2 || _flagsTable[237] == 3 || _flagsTable[237] == 7) {
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 10;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
state = 12;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
}
} else if (_flagsTable[237] == 5) {
state = 16;
@@ -2983,7 +2980,7 @@ void TuckerEngine::updateSprite_locationNum69_2(int i) {
} else {
state = -1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum69_3(int i) {
@@ -2997,21 +2994,21 @@ void TuckerEngine::updateSprite_locationNum69_3(int i) {
_flagsTable[238] = 1;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
state = 11;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
state = 13;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
}
} else {
state = -1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::execData3PreUpdate_locationNum70() {
const uint8 color = 103;
if (_execData3Counter == 0) {
- startSound(_locationSoundsTable[6].offset, 6, _locationSoundsTable[6].volume);
+ startSound(_locationSoundsTable[6]._offset, 6, _locationSoundsTable[6]._volume);
_execData3Counter = 1;
_flagsTable[143] = 0;
_updateLocation70StringLen = 0;
@@ -3041,7 +3038,7 @@ void TuckerEngine::execData3PreUpdate_locationNum70Helper() {
if (_lastKeyPressed == Common::KEYCODE_BACKSPACE || _lastKeyPressed == Common::KEYCODE_DELETE) {
if (_updateLocation70StringLen > 0) {
--_updateLocation70StringLen;
- startSound(_locationSoundsTable[0].offset, 0, _locationSoundsTable[0].volume);
+ startSound(_locationSoundsTable[0]._offset, 0, _locationSoundsTable[0]._volume);
}
} else if (_lastKeyPressed == Common::KEYCODE_RETURN) {
_flagsTable[143] = 1;
@@ -3052,7 +3049,7 @@ void TuckerEngine::execData3PreUpdate_locationNum70Helper() {
_flagsTable[143] = 2;
}
const int num = (_flagsTable[143] == 1) ? 4 : 5;
- startSound(_locationSoundsTable[num].offset, num, _locationSoundsTable[num].volume);
+ startSound(_locationSoundsTable[num]._offset, num, _locationSoundsTable[num]._volume);
} else if (_updateLocation70StringLen < 19) {
uint8 chr = 0;
switch (_lastKeyPressed) {
@@ -3089,7 +3086,7 @@ void TuckerEngine::execData3PreUpdate_locationNum70Helper() {
}
break;
}
- startSound(_locationSoundsTable[0].offset, 0, _locationSoundsTable[0].volume);
+ startSound(_locationSoundsTable[0]._offset, 0, _locationSoundsTable[0]._volume);
if (chr > 0) {
_updateLocation70String[_updateLocation70StringLen] = chr;
++_updateLocation70StringLen;
@@ -3104,17 +3101,17 @@ void TuckerEngine::updateSprite_locationNum71(int i) {
if (_flagsTable[155] != 6 || _flagsTable[207] == 1) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 1;
} else if (getRandomNumber() < 30000) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 2;
- _spritesTable[i].updateDelay = 5;
+ _spritesTable[i]._updateDelay = 5;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 2;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum72(int i) {
@@ -3122,28 +3119,28 @@ void TuckerEngine::updateSprite_locationNum72(int i) {
if (_flagsTable[155] == 7 || _flagsTable[207] == 1) {
state = -1;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 2;
} else {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 1;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum74(int i) {
static const uint8 stateTable[] = { 1, 3, 5, 5, 10, 16, 16 };
int num = _flagsTable[236] - 74;
if (stateTable[num] + i == 21) {
- if (_updateLocationFlag == 0) {
- _updateLocationFlag = 1;
+ if (!_updateLocationFlag) {
+ _updateLocationFlag = true;
} else {
- _spritesTable[i].animationFrame = _spritesTable[i].firstFrame - 1;
- _spritesTable[i].updateDelay = 5;
- _updateSpriteFlag1 = 1;
+ _spritesTable[i]._animationFrame = _spritesTable[i]._firstFrame - 1;
+ _spritesTable[i]._updateDelay = 5;
+ _updateSpriteFlag1 = true;
}
}
- _spritesTable[i].state = stateTable[num] + i;
+ _spritesTable[i]._state = stateTable[num] + i;
}
void TuckerEngine::updateSprite_locationNum79(int i) {
@@ -3153,43 +3150,43 @@ void TuckerEngine::updateSprite_locationNum79(int i) {
_flagsTable[227] = 1;
} else if (_flagsTable[227] == 1 && _charSpeechSoundCounter > 0) {
state = 2;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else if (_flagsTable[227] == 2) {
state = 3;
_flagsTable[227] = 3;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else {
- _spritesTable[i].animationFrame = _spritesTable[i].firstFrame - 1;
- _spritesTable[i].updateDelay = 5;
- _updateSpriteFlag1 = 1;
+ _spritesTable[i]._animationFrame = _spritesTable[i]._firstFrame - 1;
+ _spritesTable[i]._updateDelay = 5;
+ _updateSpriteFlag1 = true;
state = 3;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum81_0(int i) {
int state;
if (_charSpeechSoundCounter > 0 && _actionCharacterNum == i) {
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
state = 3;
_flagsTable[288] = 1;
} else if (_flagsTable[288] < 2) {
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
state = 2;
if (_flagsTable[288] == 1) {
_flagsTable[288] = 2;
}
} else {
- _spritesTable[i].animationFrame = _spritesTable[i].firstFrame - 1;
- _spritesTable[i].updateDelay = 5;
- _updateSpriteFlag1 = 1;
+ _spritesTable[i]._animationFrame = _spritesTable[i]._firstFrame - 1;
+ _spritesTable[i]._updateDelay = 5;
+ _updateSpriteFlag1 = true;
state = 2;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
void TuckerEngine::updateSprite_locationNum81_1(int i) {
- _spritesTable[i].state = 1;
+ _spritesTable[i]._state = 1;
}
void TuckerEngine::updateSprite_locationNum82(int i) {
@@ -3197,20 +3194,20 @@ void TuckerEngine::updateSprite_locationNum82(int i) {
if (_charSpeechSoundCounter > 0) {
state = 1;
_flagsTable[229] = 1;
- _spritesTable[i].needUpdate = 1;
+ _spritesTable[i]._needUpdate = true;
} else if (_flagsTable[229] == 0) {
state = 1;
} else if (_flagsTable[229] == 1) {
state = 2;
_flagsTable[229] = 2;
- _spritesTable[i].needUpdate = 0;
+ _spritesTable[i]._needUpdate = false;
} else {
- _spritesTable[i].animationFrame = _spritesTable[i].firstFrame - 1;
- _spritesTable[i].updateDelay = 5;
- _updateSpriteFlag1 = 1;
+ _spritesTable[i]._animationFrame = _spritesTable[i]._firstFrame - 1;
+ _spritesTable[i]._updateDelay = 5;
+ _updateSpriteFlag1 = true;
state = 2;
}
- _spritesTable[i].state = state;
+ _spritesTable[i]._state = state;
}
} // namespace Tucker
diff --git a/engines/tucker/resource.cpp b/engines/tucker/resource.cpp
index 1b04f3fae9..5f06334720 100644
--- a/engines/tucker/resource.cpp
+++ b/engines/tucker/resource.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -30,7 +30,8 @@
#include "audio/decoders/wave.h"
#include "graphics/surface.h"
-#include "graphics/decoders/pcx.h"
+
+#include "image/pcx.h"
#include "tucker/tucker.h"
#include "tucker/graphics.h"
@@ -126,7 +127,7 @@ public:
}
bool findNextToken(DataToken t) {
- const char *token = 0;
+ const char *token = nullptr;
switch (t) {
case kDataTokenDw:
token = "dw";
@@ -278,7 +279,7 @@ Audio::RewindableAudioStream *CompressedSound::load(CompressedSoundType type, in
void TuckerEngine::loadImage(const char *fname, uint8 *dst, int type) {
char filename[80];
- strcpy(filename, fname);
+ Common::strlcpy(filename, fname, sizeof(filename));
Common::File f;
if (!f.open(filename)) {
@@ -302,7 +303,7 @@ void TuckerEngine::loadImage(const char *fname, uint8 *dst, int type) {
}
}
- ::Graphics::PCXDecoder pcx;
+ Image::PCXDecoder pcx;
if (!pcx.loadStream(f))
error("Error while reading PCX image");
@@ -350,11 +351,11 @@ void TuckerEngine::loadCharset2() {
}
void TuckerEngine::loadCharsetHelper() {
- const int charW = Graphics::_charset.charW;
- const int charH = Graphics::_charset.charH;
+ const int charW = Graphics::_charset._charW;
+ const int charH = Graphics::_charset._charH;
int offset = 0;
- for (int y = 0; y < Graphics::_charset.yCount; ++y) {
- for (int x = 0; x < Graphics::_charset.xCount; ++x) {
+ for (int y = 0; y < Graphics::_charset._yCount; ++y) {
+ for (int x = 0; x < Graphics::_charset._xCount; ++x) {
offset += Graphics::encodeRAW(_loadTempBuf + (y * 320) * charH + x * charW, _charsetGfxBuf + offset, charW, charH);
}
}
@@ -407,8 +408,8 @@ void TuckerEngine::loadBudSpr(int startOffset) {
loadImage(filename.c_str(), _loadTempBuf, 0);
++frame;
}
- int sz = Graphics::encodeRLE(_loadTempBuf + _spriteFramesTable[i].sourceOffset, _spritesGfxBuf + spriteOffset, _spriteFramesTable[i].xSize, _spriteFramesTable[i].ySize);
- _spriteFramesTable[i].sourceOffset = spriteOffset;
+ int sz = Graphics::encodeRLE(_loadTempBuf + _spriteFramesTable[i]._sourceOffset, _spritesGfxBuf + spriteOffset, _spriteFramesTable[i]._xSize, _spriteFramesTable[i]._ySize);
+ _spriteFramesTable[i]._sourceOffset = spriteOffset;
spriteOffset += sz;
}
}
@@ -430,16 +431,16 @@ int TuckerEngine::loadCTable01(int index, int firstSpriteNum, int *framesCount)
}
const int y = t.getNextInteger();
SpriteFrame *c = &_spriteFramesTable[lastSpriteNum++];
- c->sourceOffset = y * 320 + x;
- c->xSize = t.getNextInteger();
- c->ySize = t.getNextInteger();
- c->xOffset = t.getNextInteger();
- if (c->xOffset > 300) {
- c->xOffset -= 500;
+ c->_sourceOffset = y * 320 + x;
+ c->_xSize = t.getNextInteger();
+ c->_ySize = t.getNextInteger();
+ c->_xOffset = t.getNextInteger();
+ if (c->_xOffset > 300) {
+ c->_xOffset -= 500;
}
- c->yOffset = t.getNextInteger();
- if (c->yOffset > 300) {
- c->yOffset -= 500;
+ c->_yOffset = t.getNextInteger();
+ if (c->_yOffset > 300) {
+ c->_yOffset -= 500;
}
}
}
@@ -454,17 +455,17 @@ void TuckerEngine::loadCTable02(int fl) {
loadFile("ctable02.c", _loadTempBuf);
DataTokenizer t(_loadTempBuf, _fileLoadSize);
while (t.findNextToken(kDataTokenDw)) {
- _spriteAnimationsTable[entry].numParts = t.getNextInteger();
- if (_spriteAnimationsTable[entry].numParts < 1) {
+ _spriteAnimationsTable[entry]._numParts = t.getNextInteger();
+ if (_spriteAnimationsTable[entry]._numParts < 1) {
return;
}
- _spriteAnimationsTable[entry].rotateFlag = t.getNextInteger();
+ _spriteAnimationsTable[entry]._rotateFlag = t.getNextInteger();
int num = t.getNextInteger();
if (num != fl) {
continue;
}
int start = 0;
- _spriteAnimationsTable[entry].firstFrameIndex = i;
+ _spriteAnimationsTable[entry]._firstFrameIndex = i;
while (start != 999) {
start = t.getNextInteger();
if (start == 9999) { // end marker in the demo version
@@ -570,12 +571,12 @@ void TuckerEngine::loadData() {
const int x = t.getNextInteger();
const int y = t.getNextInteger();
Data *d = &_dataTable[_dataCount];
- d->sourceOffset = y * 320 + x;
- d->xSize = t.getNextInteger();
- d->ySize = t.getNextInteger();
- d->xDest = t.getNextInteger();
- d->yDest = t.getNextInteger();
- d->index = count;
+ d->_sourceOffset = y * 320 + x;
+ d->_xSize = t.getNextInteger();
+ d->_ySize = t.getNextInteger();
+ d->_xDest = t.getNextInteger();
+ d->_yDest = t.getNextInteger();
+ d->_index = count;
}
++objNum;
++count;
@@ -591,9 +592,9 @@ void TuckerEngine::loadData() {
int TuckerEngine::loadDataHelper(int offset, int index) {
for (int i = 0; i < _dataCount + 1; ++i) {
- if (_dataTable[i].index == index) {
- int sz = Graphics::encodeRLE(_loadTempBuf + _dataTable[i].sourceOffset, _data3GfxBuf + offset, _dataTable[i].xSize, _dataTable[i].ySize);
- _dataTable[i].sourceOffset = offset;
+ if (_dataTable[i]._index == index) {
+ int sz = Graphics::encodeRLE(_loadTempBuf + _dataTable[i]._sourceOffset, _data3GfxBuf + offset, _dataTable[i]._xSize, _dataTable[i]._ySize);
+ _dataTable[i]._sourceOffset = offset;
offset += sz;
}
}
@@ -625,7 +626,7 @@ void TuckerEngine::loadData3() {
}
assert(_locationAnimationsCount < kLocationAnimationsTableSize);
LocationAnimation *d = &_locationAnimationsTable[_locationAnimationsCount++];
- d->graphicNum = num;
+ d->_graphicNum = num;
const int seqNum = t.getNextInteger();
if (seqNum > 0) {
int anim = 0;
@@ -635,22 +636,22 @@ void TuckerEngine::loadData3() {
}
++anim;
}
- d->animCurrentCounter = d->animInitCounter = anim;
+ d->_animCurrentCounter = d->_animInitCounter = anim;
while (_staticData3Table[anim + 1] != 999) {
++anim;
}
- d->animLastCounter = anim;
+ d->_animLastCounter = anim;
} else {
- d->animLastCounter = 0;
+ d->_animLastCounter = 0;
}
- d->getFlag = t.getNextInteger();
- d->inventoryNum = t.getNextInteger();
- d->flagNum = t.getNextInteger();
- d->flagValue = t.getNextInteger();
- d->selectable = t.getNextInteger();
- d->standX = t.getNextInteger();
- d->standY = t.getNextInteger();
- d->drawFlag = 0;
+ d->_getFlag = t.getNextInteger();
+ d->_inventoryNum = t.getNextInteger();
+ d->_flagNum = t.getNextInteger();
+ d->_flagValue = t.getNextInteger();
+ d->_selectable = t.getNextInteger();
+ d->_standX = t.getNextInteger();
+ d->_standY = t.getNextInteger();
+ d->_drawFlag = false;
}
}
}
@@ -672,22 +673,22 @@ void TuckerEngine::loadData4() {
}
assert(_locationObjectsCount < kLocationObjectsTableSize);
LocationObject *d = &_locationObjectsTable[_locationObjectsCount++];
- d->xPos = i;
- d->yPos = t.getNextInteger();
- d->xSize = t.getNextInteger();
- d->ySize = t.getNextInteger();
- d->standX = t.getNextInteger();
- d->standY = t.getNextInteger();
- d->textNum = t.getNextInteger();
- d->cursorNum = t.getNextInteger();
- d->locationNum = t.getNextInteger();
- if (d->locationNum > 0) {
- d->toX = t.getNextInteger();
- d->toY = t.getNextInteger();
- d->toX2 = t.getNextInteger();
- d->toY2 = t.getNextInteger();
- d->toWalkX2 = t.getNextInteger();
- d->toWalkY2 = t.getNextInteger();
+ d->_xPos = i;
+ d->_yPos = t.getNextInteger();
+ d->_xSize = t.getNextInteger();
+ d->_ySize = t.getNextInteger();
+ d->_standX = t.getNextInteger();
+ d->_standY = t.getNextInteger();
+ d->_textNum = t.getNextInteger();
+ d->_cursorNum = t.getNextInteger();
+ d->_locationNum = t.getNextInteger();
+ if (d->_locationNum > 0) {
+ d->_toX = t.getNextInteger();
+ d->_toY = t.getNextInteger();
+ d->_toX2 = t.getNextInteger();
+ d->_toY2 = t.getNextInteger();
+ d->_toWalkX2 = t.getNextInteger();
+ d->_toWalkY2 = t.getNextInteger();
}
}
}
@@ -725,20 +726,20 @@ void TuckerEngine::loadActionFile() {
int keyD = t.getNextInteger();
int keyE = t.getNextInteger();
Action *action = &_actionsTable[_actionsCount++];
- action->key = keyE * 1000000 + keyD * 100000 + keyA * 10000 + keyB * 1000 + keyC;
- action->testFlag1Num = t.getNextInteger();
- action->testFlag1Value = t.getNextInteger();
- action->testFlag2Num = t.getNextInteger();
- action->testFlag2Value = t.getNextInteger();
- action->speech = t.getNextInteger();
- action->flipX = t.getNextInteger();
- action->index = t.getNextInteger();
- action->delay = t.getNextInteger();
- action->setFlagNum = t.getNextInteger();
- assert(action->setFlagNum >= 0 && action->setFlagNum < kFlagsTableSize);
- action->setFlagValue = t.getNextInteger();
- action->fxNum = t.getNextInteger();
- action->fxDelay = t.getNextInteger();
+ action->_key = keyE * 1000000 + keyD * 100000 + keyA * 10000 + keyB * 1000 + keyC;
+ action->_testFlag1Num = t.getNextInteger();
+ action->_testFlag1Value = t.getNextInteger();
+ action->_testFlag2Num = t.getNextInteger();
+ action->_testFlag2Value = t.getNextInteger();
+ action->_speech = t.getNextInteger();
+ action->_flipX = t.getNextInteger();
+ action->_index = t.getNextInteger();
+ action->_delay = t.getNextInteger();
+ action->_setFlagNum = t.getNextInteger();
+ assert(action->_setFlagNum >= 0 && action->_setFlagNum < kFlagsTableSize);
+ action->_setFlagValue = t.getNextInteger();
+ action->_fxNum = t.getNextInteger();
+ action->_fxDelay = t.getNextInteger();
}
}
}
@@ -755,17 +756,17 @@ void TuckerEngine::loadCharPos() {
}
assert(_charPosCount < 4);
CharPos *charPos = &_charPosTable[_charPosCount++];
- charPos->xPos = i;
- charPos->yPos = t.getNextInteger();
- charPos->xSize = t.getNextInteger();
- charPos->ySize = t.getNextInteger();
- charPos->xWalkTo = t.getNextInteger();
- charPos->yWalkTo = t.getNextInteger();
- charPos->flagNum = t.getNextInteger();
- charPos->flagValue = t.getNextInteger();
- charPos->direction = t.getNextInteger();
- charPos->name = t.getNextInteger();
- charPos->description = t.getNextInteger();
+ charPos->_xPos = i;
+ charPos->_yPos = t.getNextInteger();
+ charPos->_xSize = t.getNextInteger();
+ charPos->_ySize = t.getNextInteger();
+ charPos->_xWalkTo = t.getNextInteger();
+ charPos->_yWalkTo = t.getNextInteger();
+ charPos->_flagNum = t.getNextInteger();
+ charPos->_flagValue = t.getNextInteger();
+ charPos->_direction = t.getNextInteger();
+ charPos->_name = t.getNextInteger();
+ charPos->_description = t.getNextInteger();
}
int quitLoop = 0;
size_t count = 0;
@@ -818,9 +819,9 @@ void TuckerEngine::loadSprA02_01() {
void TuckerEngine::unloadSprA02_01() {
for (int i = 1; i < kSprA02TableSize; ++i) {
free(_sprA02Table[i]);
- _sprA02Table[i] = 0;
+ _sprA02Table[i] = nullptr;
}
- _sprA02Table[0] = 0;
+ _sprA02Table[0] = nullptr;
}
void TuckerEngine::loadSprC02_01() {
@@ -834,17 +835,17 @@ void TuckerEngine::loadSprC02_01() {
_spritesCount = _sprC02LookupTable2[_locationNum];
for (int i = 0; i < kMaxCharacters; ++i) {
memset(&_spritesTable[i], 0, sizeof(Sprite));
- _spritesTable[i].state = -1;
- _spritesTable[i].stateIndex = -1;
+ _spritesTable[i]._state = -1;
+ _spritesTable[i]._stateIndex = -1;
}
}
void TuckerEngine::unloadSprC02_01() {
for (int i = 1; i < kSprC02TableSize; ++i) {
free(_sprC02Table[i]);
- _sprC02Table[i] = 0;
+ _sprC02Table[i] = nullptr;
}
- _sprC02Table[0] = 0;
+ _sprC02Table[0] = nullptr;
}
void TuckerEngine::loadFx() {
@@ -856,35 +857,35 @@ void TuckerEngine::loadFx() {
_currentFxSet = 0;
for (int i = 0; i < _locationSoundsCount; ++i) {
LocationSound *s = &_locationSoundsTable[i];
- s->offset = 0;
- s->num = t.getNextInteger();
- s->volume = t.getNextInteger();
- s->type = t.getNextInteger();
- switch (s->type) {
+ s->_offset = 0;
+ s->_num = t.getNextInteger();
+ s->_volume = t.getNextInteger();
+ s->_type = t.getNextInteger();
+ switch (s->_type) {
case 5:
_currentFxSet = 1;
_currentFxIndex = i;
- _currentFxVolume = s->volume;
+ _currentFxVolume = s->_volume;
_currentFxDist = t.getNextInteger();
_currentFxScale = t.getNextInteger();
break;
case 6:
case 7:
case 8:
- s->startFxSpriteState = t.getNextInteger();
- s->startFxSpriteNum = t.getNextInteger();
- s->updateType = t.getNextInteger();
- if (s->type == 7) {
- s->flagNum = t.getNextInteger();
- s->flagValueStartFx = t.getNextInteger();
- s->stopFxSpriteState = t.getNextInteger();
- s->stopFxSpriteNum = t.getNextInteger();
- s->flagValueStopFx = t.getNextInteger();
+ s->_startFxSpriteState = t.getNextInteger();
+ s->_startFxSpriteNum = t.getNextInteger();
+ s->_updateType = t.getNextInteger();
+ if (s->_type == 7) {
+ s->_flagNum = t.getNextInteger();
+ s->_flagValueStartFx = t.getNextInteger();
+ s->_stopFxSpriteState = t.getNextInteger();
+ s->_stopFxSpriteNum = t.getNextInteger();
+ s->_flagValueStopFx = t.getNextInteger();
}
break;
}
- if (s->type == 8) {
- s->type = 6;
+ if (s->_type == 8) {
+ s->_type = 6;
}
}
t.findNextToken(kDataTokenDw);
@@ -895,10 +896,10 @@ void TuckerEngine::loadFx() {
int flagValue = t.getNextInteger();
if (flagValue == _flagsTable[flagNum]) {
LocationMusic *m = &_locationMusicsTable[_locationMusicsCount++];
- m->offset = 0;
- m->num = t.getNextInteger();
- m->volume = t.getNextInteger();
- m->flag = t.getNextInteger();
+ m->_offset = 0;
+ m->_num = t.getNextInteger();
+ m->_volume = t.getNextInteger();
+ m->_flag = t.getNextInteger();
} else {
for (int j = 0; j < 3; ++j) {
t.getNextInteger();
@@ -923,7 +924,7 @@ void TuckerEngine::loadSound(Audio::Mixer::SoundType type, int num, int volume,
return;
}
if (!stream) {
- const char *fmt = 0;
+ const char *fmt = nullptr;
switch (type) {
case Audio::Mixer::kSFXSoundType:
fmt = "fx/fx%d.wav";
@@ -1004,7 +1005,7 @@ void TuckerEngine::loadActionsTable() {
}
}
} else {
- if (_spritesTable[_csDataTableCount - 1].firstFrame - 1 != _spritesTable[_csDataTableCount - 1].animationFrame) {
+ if (_spritesTable[_csDataTableCount - 1]._firstFrame - 1 != _spritesTable[_csDataTableCount - 1]._animationFrame) {
break;
}
}
@@ -1030,7 +1031,7 @@ void TuckerEngine::loadActionsTable() {
_panelState = 0;
setCursorType(0);
_csDataHandled = false;
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
_mouseClick = 1;
}
}
diff --git a/engines/tucker/saveload.cpp b/engines/tucker/saveload.cpp
index 5133bc15e8..92da2d4d9b 100644
--- a/engines/tucker/saveload.cpp
+++ b/engines/tucker/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -64,8 +64,8 @@ void TuckerEngine::saveOrLoadGameStateData(S &s) {
saveOrLoadInt(s, _panelObjectsOffsetTable[i]);
}
saveOrLoadInt(s, _mainSpritesBaseOffset);
- saveOrLoadInt(s, _selectedObject.xPos);
- saveOrLoadInt(s, _selectedObject.yPos);
+ saveOrLoadInt(s, _selectedObject._xPos);
+ saveOrLoadInt(s, _selectedObject._yPos);
saveOrLoadInt(s, _locationNum);
saveOrLoadInt(s, _xPosCurrent);
saveOrLoadInt(s, _yPosCurrent);
diff --git a/engines/tucker/sequences.cpp b/engines/tucker/sequences.cpp
index bd03eed00b..2fb881f77e 100644
--- a/engines/tucker/sequences.cpp
+++ b/engines/tucker/sequences.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -306,7 +306,7 @@ void TuckerEngine::handleMeanwhileSequence() {
void TuckerEngine::handleMapSequence() {
loadImage("map2.pcx", _quadBackgroundGfxBuf + 89600, 0);
loadImage("map1.pcx", _loadTempBuf, 1);
- _selectedObject.locationObject_locationNum = 0;
+ _selectedObject._locationObjectLocationNum = 0;
if (_flagsTable[7] > 0) {
copyMapRect(0, 0, 140, 86);
}
@@ -419,7 +419,7 @@ void TuckerEngine::copyMapRect(int x, int y, int w, int h) {
}
}
-int TuckerEngine::handleSpecialObjectSelectionSequence() {
+bool TuckerEngine::handleSpecialObjectSelectionSequence() {
char filename[40];
if (_partNum == 1 && _selectedObjectNum == 6) {
strcpy(filename, "news1.pcx");
@@ -436,7 +436,7 @@ int TuckerEngine::handleSpecialObjectSelectionSequence() {
} else if (_currentInfoString1SourceType == 1 && _currentActionObj1Num == 91) {
strcpy(filename, "memo.pcx");
} else {
- return 0;
+ return false;
}
while (_fadePaletteCounter > 0) {
fadeInPalette();
@@ -460,10 +460,10 @@ int TuckerEngine::handleSpecialObjectSelectionSequence() {
}
if (_partNum == 3 && _selectedObjectNum == 45) {
for (int i = 0; i < 13; ++i) {
- const int offset = _dataTable[204 + i].yDest * 640 + _dataTable[204 + i].xDest;
+ const int offset = _dataTable[204 + i]._yDest * 640 + _dataTable[204 + i]._xDest;
static const int itemsTable[] = { 15, 44, 25, 19, 21, 24, 12, 27, 20, 29, 35, 23, 3 };
if (_inventoryItemsState[itemsTable[i]] > 1) {
- Graphics::decodeRLE(_locationBackgroundGfxBuf + _scrollOffset + offset, _data3GfxBuf + _dataTable[204 + i].sourceOffset, _dataTable[204 + i].xSize, _dataTable[204 + i].ySize);
+ Graphics::decodeRLE(_locationBackgroundGfxBuf + _scrollOffset + offset, _data3GfxBuf + _dataTable[204 + i]._sourceOffset, _dataTable[204 + i]._xSize, _dataTable[204 + i]._ySize);
}
}
}
@@ -479,7 +479,7 @@ int TuckerEngine::handleSpecialObjectSelectionSequence() {
}
}
loadLoc();
- return 1;
+ return true;
}
AnimationSequencePlayer::AnimationSequencePlayer(OSystem *system, Audio::Mixer *mixer, Common::EventManager *event, CompressedSound *sound, int num)
@@ -487,11 +487,20 @@ AnimationSequencePlayer::AnimationSequencePlayer(OSystem *system, Audio::Mixer *
memset(_animationPalette, 0, sizeof(_animationPalette));
_soundSeqDataCount = 0;
_soundSeqDataIndex = 0;
- _soundSeqData = 0;
+ _soundSeqData = nullptr;
_offscreenBuffer = (uint8 *)malloc(kScreenWidth * kScreenHeight);
_updateScreenWidth = 0;
_updateScreenPicture = false;
- _picBufPtr = _pic2BufPtr = 0;
+ _picBufPtr = _pic2BufPtr = nullptr;
+
+ _changeToNextSequence = false;
+ _updateFunc = nullptr;
+ _updateFuncIndex = 0;
+ _updateScreenCounter = 0;
+ _updateScreenIndex = -1;
+ _frameCounter = 0;
+ _frameTime = 0;
+ _lastFrameTime = 1;
}
AnimationSequencePlayer::~AnimationSequencePlayer() {
@@ -722,13 +731,12 @@ void AnimationSequencePlayer::fadeOutPalette() {
void AnimationSequencePlayer::unloadAnimation() {
_mixer->stopAll();
free(_picBufPtr);
- _picBufPtr = 0;
free(_pic2BufPtr);
- _pic2BufPtr = 0;
+ _picBufPtr = _pic2BufPtr = nullptr;
}
uint8 *AnimationSequencePlayer::loadPicture(const char *fileName) {
- uint8 *p = 0;
+ uint8 *p = nullptr;
Common::File f;
if (f.open(fileName)) {
const int sz = f.size();
diff --git a/engines/tucker/staticres.cpp b/engines/tucker/staticres.cpp
index 388f5ba05c..b884851d7e 100644
--- a/engines/tucker/staticres.cpp
+++ b/engines/tucker/staticres.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/tucker/tucker.cpp b/engines/tucker/tucker.cpp
index 04e83efbe5..adf4be6b65 100644
--- a/engines/tucker/tucker.cpp
+++ b/engines/tucker/tucker.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -43,6 +43,33 @@ namespace Tucker {
TuckerEngine::TuckerEngine(OSystem *system, Common::Language language, uint32 flags)
: Engine(system), _gameLang(language), _gameFlags(flags), _rnd("tucker") {
_console = new TuckerConsole(this);
+
+ resetVariables();
+
+ _execData3Counter = 0;
+ _currentSaveLoadGameState = 1;
+ _fileLoadSize = 0;
+ _csDataSize = 0;
+
+ _player = nullptr;
+ _loadTempBuf = nullptr;
+ _cursorGfxBuf = nullptr;
+ _charsetGfxBuf = nullptr;
+ _panelGfxBuf = nullptr;
+ _itemsGfxBuf = nullptr;
+ _spritesGfxBuf = nullptr;
+ _locationBackgroundGfxBuf = nullptr;
+ _data5Buf = nullptr;
+ _data3GfxBuf = nullptr;
+ _quadBackgroundGfxBuf = nullptr;
+ _objTxtBuf = nullptr;
+ _panelObjectsGfxBuf = nullptr;
+ _ptTextBuf = nullptr;
+ _infoBarBuf = nullptr;
+ _bgTextBuf = nullptr;
+ _charNameBuf = nullptr;
+ _locationBackgroundMaskBuf = nullptr;
+ _csDataBuf = nullptr;
}
TuckerEngine::~TuckerEngine() {
@@ -84,17 +111,17 @@ void TuckerEngine::allocateBuffers() {
_charsetGfxBuf = (uint8 *)calloc(1, 22400);
_cursorGfxBuf = (uint8 *)calloc(1, 256 * 7);
_infoBarBuf = (uint8 *)calloc(1, 1000);
- _charNameBuf = 0;
- _bgTextBuf = 0;
- _objTxtBuf = 0;
+ _charNameBuf = nullptr;
+ _bgTextBuf = nullptr;
+ _objTxtBuf = nullptr;
_panelObjectsGfxBuf = (uint8 *)calloc(1, 20000);
- _data5Buf = 0;
+ _data5Buf = nullptr;
_data3GfxBuf = (uint8 *)calloc(1, 250000);
_quadBackgroundGfxBuf = (uint8 *)calloc(1, 320 * 140 * 4);
_locationBackgroundMaskBuf = (uint8 *)calloc(1, 640 * 140);
- _csDataBuf = 0;
+ _csDataBuf = nullptr;
_spritesGfxBuf = (uint8 *)calloc(1, 160000);
- _ptTextBuf = 0;
+ _ptTextBuf = nullptr;
memset(_charWidthTable, 0, sizeof(_charWidthTable));
}
@@ -119,7 +146,7 @@ void TuckerEngine::freeBuffers() {
free(_ptTextBuf);
}
-void TuckerEngine::restart() {
+void TuckerEngine::resetVariables() {
_quitGame = false;
_fastMode = false;
_syncCounter = 0;
@@ -131,15 +158,16 @@ void TuckerEngine::restart() {
_nextLocationNum = (_gameFlags & kGameFlagDemo) == 0 ? kStartupLocationGame : kStartupLocationDemo;
_gamePaused = false;
_gameDebug = false;
- _displayGameHints = false;
_displaySpeechText = (_gameFlags & kGameFlagNoSubtitles) == 0 ? ConfMan.getBool("subtitles") : false;
memset(_flagsTable, 0, sizeof(_flagsTable));
_gameHintsIndex = 0;
_gameHintsCounter = 0;
- _gameHintsDisplayText = 0;
_gameHintsStringNum = 0;
+ _displayGameHints = false;
+ _displayHintsText = false;
+
if ((_gameFlags & kGameFlagDemo) == 0) {
_locationWidthTable = _locationWidthTableGame;
_locationHeightTable = _locationHeightTableGame;
@@ -189,7 +217,7 @@ void TuckerEngine::restart() {
_switchPanelCounter = 0;
_conversationOptionsCount = 0;
_fadedPanel = false;
- _panelLockedFlag = 0;
+ _panelLockedFlag = false;
_conversationOptionLinesCount = 0;
memset(_inventoryItemsState, 0, sizeof(_inventoryItemsState));
memset(_inventoryObjectsList, 0, sizeof(_inventoryObjectsList));
@@ -223,11 +251,11 @@ void TuckerEngine::restart() {
_selectedCharacterNum = 0;
_actionObj1Type = _actionObj2Type = 0;
_actionObj1Num = _actionObj2Num = 0;
- _actionRequiresTwoObjects = 0;
- _actionVerbLocked = 0;
+ _actionRequiresTwoObjects = false;
+ _actionVerbLocked = false;
_actionPosX = 0;
_actionPosY = 0;
- _selectedObjectLocationMask = 0;
+ _selectedObjectLocationMask = false;
memset(&_selectedObject, 0, sizeof(_selectedObject));
_selectedCharacterDirection = 0;
_selectedCharacter2Num = 0;
@@ -247,10 +275,10 @@ void TuckerEngine::restart() {
_nextTableToLoadIndex = 0;
memset(_nextTableToLoadTable, 0, sizeof(_nextTableToLoadTable));
_soundInstructionIndex = 0;
- _tableInstructionsPtr = 0;
+ _tableInstructionsPtr = nullptr;
memset(_tableInstructionObj1Table, 0, sizeof(_tableInstructionObj1Table));
memset(_tableInstructionObj2Table, 0, sizeof(_tableInstructionObj2Table));
- _tableInstructionFlag = 0;
+ _tableInstructionFlag = false;
_tableInstructionItemNum1 = _tableInstructionItemNum2 = 0;
memset(_instructionsActionsTable, 0, sizeof(_instructionsActionsTable));
_validInstructionId = false;
@@ -266,7 +294,7 @@ void TuckerEngine::restart() {
_skipCurrentCharacterDraw = false;
_yPosCurrent = 131;
_xPosCurrent = 160;
- _characterSpeechDataPtr = 0;
+ _characterSpeechDataPtr = nullptr;
_ptTextOffset = 0;
memset(_characterAnimationsTable, 0, sizeof(_characterAnimationsTable));
memset(_characterStateTable, 0, sizeof(_characterStateTable));
@@ -279,26 +307,26 @@ void TuckerEngine::restart() {
_currentSpriteAnimationFrame2 = 0;
_characterAnimationIndex = -1;
_characterFacingDirection = _characterPrevFacingDirection = 0;
- _characterBackFrontFacing = _characterPrevBackFrontFacing = 0;
+ _characterBackFrontFacing = _characterPrevBackFrontFacing = false;
_characterAnimationNum = 0;
_noCharacterAnimationChange = 0;
- _changeBackgroundSprite = 0;
_characterSpriteAnimationFrameCounter = 0;
- _locationMaskIgnore = 0;
+ _locationMaskIgnore = false;
_locationMaskType = 0;
_locationMaskCounter = 0;
- _updateSpriteFlag1 = 0;
- _updateSpriteFlag2 = 0;
_handleMapCounter = 0;
_noPositionChangeAfterMap = false;
+ _changeBackgroundSprite = false;
+ _updateSpriteFlag1 = false;
+ _updateSpriteFlag2 = false;
- _mirroredDrawing = 0;
- _loadLocBufPtr = 0;
- _backgroundSpriteDataPtr = 0;
+ _mirroredDrawing = false;
+ _loadLocBufPtr = nullptr;
+ _backgroundSpriteDataPtr = nullptr;
_locationHeight = 0;
_scrollOffset = 0;
_currentGfxBackgroundCounter = 0;
- _currentGfxBackground = 0;
+ _currentGfxBackground = nullptr;
_fadePaletteCounter = 0;
memset(_currentPalette, 0, sizeof(_currentPalette));
_fullRedraw = false;
@@ -319,14 +347,14 @@ void TuckerEngine::restart() {
memset(_updateLocation14ObjNum, 0, sizeof(_updateLocation14ObjNum));
memset(_updateLocation14Delay, 0, sizeof(_updateLocation14Delay));
_updateLocationCounter2 = 0;
- _updateLocationFlag = 0;
+ _updateLocationFlag = false;
_updateLocation70StringLen = 0;
memset(_updateLocation70String, 0, sizeof(_updateLocation70String));
}
void TuckerEngine::mainLoop() {
allocateBuffers();
- restart();
+ resetVariables();
loadCharSizeDta();
if ((_gameFlags & kGameFlagDemo) != 0) {
@@ -352,7 +380,7 @@ void TuckerEngine::mainLoop() {
_flagsTable[219] = 1;
_flagsTable[105] = 1;
- _spriteAnimationFrameIndex = _spriteAnimationsTable[14].firstFrameIndex;
+ _spriteAnimationFrameIndex = _spriteAnimationsTable[14]._firstFrameIndex;
if (ConfMan.hasKey("save_slot")) {
const int slot = ConfMan.getInt("save_slot");
@@ -412,7 +440,7 @@ void TuckerEngine::mainLoop() {
}
if (_flagsTable[158] == 1) {
_flagsTable[158] = 0;
- _skipCurrentCharacterDraw = 1;
+ _skipCurrentCharacterDraw = true;
}
_mainLoopCounter1 = 0;
}
@@ -440,7 +468,7 @@ void TuckerEngine::mainLoop() {
updateGameHints();
}
if (_panelState == 0) {
- if (_panelLockedFlag == 1 || _pendingActionDelay > 0) {
+ if (_panelLockedFlag || _pendingActionDelay > 0) {
if (!_fadedPanel) {
updateItemsGfxColors(0x60, 0x80);
_fadedPanel = true;
@@ -450,7 +478,7 @@ void TuckerEngine::mainLoop() {
clearItemsGfx();
if (_gamePaused) {
drawPausedInfoBar();
- } else if (_gameHintsDisplayText == 1 && _mouseIdleCounter > 1000) {
+ } else if (_displayHintsText && _mouseIdleCounter > 1000) {
drawGameHintString();
} else {
drawInfoString();
@@ -466,10 +494,10 @@ void TuckerEngine::mainLoop() {
}
_currentGfxBackground = _quadBackgroundGfxBuf + (_currentGfxBackgroundCounter / 10) * 44800;
if (_fadePaletteCounter < 34 && _locationNum == 22) {
- _spritesTable[0].gfxBackgroundOffset = (_currentGfxBackgroundCounter / 10) * 640;
+ _spritesTable[0]._gfxBackgroundOffset = (_currentGfxBackgroundCounter / 10) * 640;
_mainSpritesBaseOffset = _currentGfxBackgroundCounter / 10;
if (_locationNum == 22 && _currentGfxBackgroundCounter <= 29) {
- _spritesTable[0].gfxBackgroundOffset = 640;
+ _spritesTable[0]._gfxBackgroundOffset = 640;
_mainSpritesBaseOffset = 1;
}
}
@@ -489,11 +517,11 @@ void TuckerEngine::mainLoop() {
drawData3();
execData3PreUpdate();
for (int i = 0; i < _spritesCount; ++i) {
- if (!_spritesTable[i].disabled) {
+ if (!_spritesTable[i]._disabled) {
drawSprite(i);
}
}
- if (_skipCurrentCharacterDraw != 1) {
+ if (!_skipCurrentCharacterDraw) {
if (_backgroundSpriteCurrentAnimation > -1 && _backgroundSpriteCurrentFrame > 0) {
drawBackgroundSprites();
} else {
@@ -522,7 +550,7 @@ void TuckerEngine::mainLoop() {
--_miscSoundFxDelayCounter[num];
if (_miscSoundFxDelayCounter[num] == 0) {
const int index = _miscSoundFxNum[num];
- startSound(_locationSoundsTable[index].offset, index, _locationSoundsTable[index].volume);
+ startSound(_locationSoundsTable[index]._offset, index, _locationSoundsTable[index]._volume);
}
}
}
@@ -565,7 +593,7 @@ void TuckerEngine::mainLoop() {
}
if (_inputKeys[kInputKeyHelp]) {
_inputKeys[kInputKeyHelp] = false;
- if (_displayGameHints && _gameHintsDisplayText == 1) {
+ if (_displayGameHints && _displayHintsText) {
_gameHintsStringNum = _gameHintsIndex + 1;
_mouseIdleCounter = 1100;
}
@@ -689,14 +717,14 @@ void TuckerEngine::setupNewLocation() {
_mainLoopCounter2 = 0;
_mainLoopCounter1 = 0;
_characterFacingDirection = 0;
- _actionVerbLocked = 0;
- _locationMaskIgnore = 0;
+ _actionVerbLocked = false;
+ _locationMaskIgnore = false;
_backgroundSprOffset = 0;
if (_backgroundSpriteCurrentAnimation > 0 && _backgroundSpriteCurrentFrame > 0) {
_backgroundSpriteCurrentAnimation = -1;
_backgroundSpriteCurrentFrame = 0;
}
- if (_panelLockedFlag == 0 || (_backgroundSpriteCurrentAnimation > 0 && _locationNum != 25)) {
+ if (!_panelLockedFlag || (_backgroundSpriteCurrentAnimation > 0 && _locationNum != 25)) {
_locationMaskType = 0;
} else {
_locationMaskType = 3;
@@ -829,8 +857,8 @@ void TuckerEngine::updateCharPosition() {
updateCharPositionHelper();
return;
case 1:
- if (_locationAnimationsTable[_selectedCharacter2Num].getFlag == 1) {
- _speechSoundNum = _speechSoundBaseNum + _locationAnimationsTable[_selectedCharacter2Num].inventoryNum;
+ if (_locationAnimationsTable[_selectedCharacter2Num]._getFlag == 1) {
+ _speechSoundNum = _speechSoundBaseNum + _locationAnimationsTable[_selectedCharacter2Num]._inventoryNum;
_characterSpeechDataPtr = _ptTextBuf;
updateCharPositionHelper();
return;
@@ -842,8 +870,8 @@ void TuckerEngine::updateCharPosition() {
break;
case 2:
_characterSpeechDataPtr = _ptTextBuf;
- _speechSoundNum = 2175 + _charPosTable[_selectedCharacterNum].description;
- if (_charPosTable[_selectedCharacterNum].description != 0) {
+ _speechSoundNum = 2175 + _charPosTable[_selectedCharacterNum]._description;
+ if (_charPosTable[_selectedCharacterNum]._description != 0) {
updateCharPositionHelper();
return;
}
@@ -852,59 +880,61 @@ void TuckerEngine::updateCharPosition() {
}
int actionKey = _currentActionObj2Num * 1000000 + _currentInfoString2SourceType * 100000 + _currentActionVerb * 10000 + _currentInfoString1SourceType * 1000 + _currentActionObj1Num;
debug(3, "updateCharPosition() actionKey %d", actionKey);
- int skip = 0;
- Action *action = 0;
- for (int i = 0; i < _actionsCount && skip == 0; ++i) {
+ bool skip = false;
+ Action *action = nullptr;
+ for (int i = 0; i < _actionsCount && !skip; ++i) {
action = &_actionsTable[i];
- if (action->key == actionKey) {
- skip = 1;
- if (action->testFlag1Num != 0) {
- if (action->testFlag1Num < 500) {
- if (_flagsTable[action->testFlag1Num] != action->testFlag1Value) {
- skip = 0;
+ if (action->_key == actionKey) {
+ skip = true;
+ if (action->_testFlag1Num != 0) {
+ if (action->_testFlag1Num < 500) {
+ if (action->_testFlag1Num >= 300)
+ error("updateCharPosition() - Unexpected value for _testFlag1Num : %d", action->_testFlag1Num);
+ if (_flagsTable[action->_testFlag1Num] != action->_testFlag1Value) {
+ skip = false;
}
- } else if (_inventoryItemsState[action->testFlag1Num - 500] != action->testFlag1Value) {
- skip = 0;
+ } else if (_inventoryItemsState[action->_testFlag1Num - 500] != action->_testFlag1Value) {
+ skip = false;
}
- debug(3, "updateCharPosition() flag1 %d value %d", action->testFlag1Num, action->testFlag1Value);
+ debug(3, "updateCharPosition() flag1 %d value %d", action->_testFlag1Num, action->_testFlag1Value);
}
- if (action->testFlag2Num != 0) {
- if (action->testFlag2Num < 500) {
- if (_flagsTable[action->testFlag2Num] != action->testFlag2Value) {
- skip = 0;
+ if (action->_testFlag2Num != 0) {
+ if (action->_testFlag2Num < 500) {
+ if (_flagsTable[action->_testFlag2Num] != action->_testFlag2Value) {
+ skip = false;
}
- } else if (_inventoryItemsState[action->testFlag2Num - 500] != action->testFlag2Value) {
- skip = 0;
+ } else if (_inventoryItemsState[action->_testFlag2Num - 500] != action->_testFlag2Value) {
+ skip = false;
}
- debug(3, "updateCharPosition() flag2 %d value %d", action->testFlag2Num, action->testFlag2Value);
+ debug(3, "updateCharPosition() flag2 %d value %d", action->_testFlag2Num, action->_testFlag2Value);
}
}
}
- if (skip == 0) {
+ if (!skip) {
playSpeechForAction(_currentActionVerb);
_currentActionVerb = 0;
return;
}
assert(action);
- if (action->speech != 6) {
- if (action->speech < 100) {
- _spriteAnimationFrameIndex = _spriteAnimationsTable[action->speech].firstFrameIndex;
- _currentSpriteAnimationLength = _spriteAnimationsTable[action->speech].numParts;
- _mirroredDrawing = action->flipX;
+ if (action->_speech != 6) {
+ if (action->_speech < 100) {
+ _spriteAnimationFrameIndex = _spriteAnimationsTable[action->_speech]._firstFrameIndex;
+ _currentSpriteAnimationLength = _spriteAnimationsTable[action->_speech]._numParts;
+ _mirroredDrawing = (action->_flipX != 0);
_characterFacingDirection = 5;
_mainLoopCounter2 = 0;
} else {
- _backgroundSpriteCurrentAnimation = action->speech - 100;
+ _backgroundSpriteCurrentAnimation = action->_speech - 100;
_backgroundSpriteCurrentFrame = 0;
- _mirroredDrawing = 0;
+ _mirroredDrawing = false;
}
}
- _pendingActionDelay = action->delay;
- _charPositionFlagNum = action->setFlagNum;
- _charPositionFlagValue = action->setFlagValue;
- _pendingActionIndex = action->index;
- _characterSoundFxDelayCounter = action->fxDelay;
- _characterSoundFxNum = action->fxNum;
+ _pendingActionDelay = action->_delay;
+ _charPositionFlagNum = action->_setFlagNum;
+ _charPositionFlagValue = action->_setFlagValue;
+ _pendingActionIndex = action->_index;
+ _characterSoundFxDelayCounter = action->_fxDelay;
+ _characterSoundFxNum = action->_fxNum;
_previousActionVerb = _currentActionVerb;
_currentActionVerb = 0;
}
@@ -980,10 +1010,10 @@ void TuckerEngine::setBlackPalette() {
void TuckerEngine::updateCursor() {
setCursorNum(0);
- if (_backgroundSpriteCurrentAnimation == -1 && _panelLockedFlag == 0 && _selectedObject.locationObject_locationNum > 0) {
- _selectedObject.locationObject_locationNum = 0;
+ if (_backgroundSpriteCurrentAnimation == -1 && !_panelLockedFlag && _selectedObject._locationObjectLocationNum > 0) {
+ _selectedObject._locationObjectLocationNum = 0;
}
- if (_locationMaskType > 0 || _selectedObject.locationObject_locationNum > 0 || _pendingActionDelay > 0) {
+ if (_locationMaskType > 0 || _selectedObject._locationObjectLocationNum > 0 || _pendingActionDelay > 0) {
return;
}
if (_rightMouseButtonPressed) {
@@ -993,13 +1023,13 @@ void TuckerEngine::updateCursor() {
_actionVerb = 0;
}
_updateCursorFlag = true;
- _actionVerbLocked = 1;
+ _actionVerbLocked = true;
_actionRequiresTwoObjects = false;
}
} else {
_updateCursorFlag = false;
}
- if (_actionVerbLocked == 0) {
+ if (!_actionVerbLocked) {
setActionVerbUnderCursor();
if (_actionVerb == 0 && _locationNum == 63) {
_actionVerb = 8;
@@ -1016,7 +1046,7 @@ void TuckerEngine::updateCursor() {
} else {
num = getObjectUnderCursor();
if (num > -1) {
- _selectedObjectNum = _locationObjectsTable[num].textNum;
+ _selectedObjectNum = _locationObjectsTable[num]._textNum;
}
}
handleMouseClickOnInventoryObject();
@@ -1027,7 +1057,7 @@ void TuckerEngine::updateCursor() {
_selectedObjectNum = 0;
_selectedObjectType = 0;
}
- if (_actionVerbLocked == 0 && _selectedObjectType == 2 && _selectedObjectNum != 21) {
+ if (!_actionVerbLocked && _selectedObjectType == 2 && _selectedObjectNum != 21) {
_actionVerb = 2;
}
if (!_actionRequiresTwoObjects) {
@@ -1055,7 +1085,7 @@ void TuckerEngine::updateCursor() {
if (_mousePosY >= 150 && _mousePosX < 212) {
if (_mousePosX < 200) {
setActionVerbUnderCursor();
- _actionVerbLocked = 1;
+ _actionVerbLocked = true;
_actionRequiresTwoObjects = false;
} else if (_mousePosY < 175) {
moveDownInventoryObjects();
@@ -1066,13 +1096,13 @@ void TuckerEngine::updateCursor() {
if (_selectedObjectType == 3) {
setActionForInventoryObject();
} else if (_actionVerb != 0) {
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
setActionState();
} else if (_actionObj1Num == 261 || (_actionObj1Num == 205 && _flagsTable[143] == 0)) {
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
setActionState();
} else {
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
_actionRequiresTwoObjects = false;
_currentActionVerb = 0;
setSelectedObjectKey();
@@ -1092,26 +1122,26 @@ void TuckerEngine::stopSounds() {
void TuckerEngine::playSounds() {
for (int i = 0; i < _locationSoundsCount; ++i) {
- if (_locationSoundsTable[i].type == 1 || _locationSoundsTable[i].type == 2 || _locationSoundsTable[i].type == 5 ||
- (_locationSoundsTable[i].type == 7 && _flagsTable[_locationSoundsTable[i].flagNum] == _locationSoundsTable[i].flagValueStartFx)) {
- startSound(_locationSoundsTable[i].offset, i, _locationSoundsTable[i].volume);
+ if (_locationSoundsTable[i]._type == 1 || _locationSoundsTable[i]._type == 2 || _locationSoundsTable[i]._type == 5 ||
+ (_locationSoundsTable[i]._type == 7 && _flagsTable[_locationSoundsTable[i]._flagNum] == _locationSoundsTable[i]._flagValueStartFx)) {
+ startSound(_locationSoundsTable[i]._offset, i, _locationSoundsTable[i]._volume);
}
}
for (int i = 0; i < _locationMusicsCount; ++i) {
- if (_locationMusicsTable[i].flag > 0) {
- startMusic(_locationMusicsTable[i].offset, i, _locationMusicsTable[i].volume);
+ if (_locationMusicsTable[i]._flag > 0) {
+ startMusic(_locationMusicsTable[i]._offset, i, _locationMusicsTable[i]._volume);
}
}
}
void TuckerEngine::updateCharactersPath() {
- if (_panelLockedFlag == 0) {
+ if (!_panelLockedFlag) {
return;
}
if (_backgroundSpriteCurrentAnimation != -1 && _locationNum != 25) {
- if (_xPosCurrent == _selectedObject.xPos && _yPosCurrent == _selectedObject.yPos) {
+ if (_xPosCurrent == _selectedObject._xPos && _yPosCurrent == _selectedObject._yPos) {
_locationMaskCounter = 1;
- _panelLockedFlag = 0;
+ _panelLockedFlag = false;
}
return;
}
@@ -1120,68 +1150,68 @@ void TuckerEngine::updateCharactersPath() {
if (_characterFacingDirection == 5) {
_characterPrevFacingDirection = 5;
}
- int flag = 0;
- if (_yPosCurrent > _selectedObject.yPos) {
- if (testLocationMask(_xPosCurrent, _yPosCurrent - 1) == 1) {
+ bool flag = false;
+ if (_yPosCurrent > _selectedObject._yPos) {
+ if (testLocationMask(_xPosCurrent, _yPosCurrent - 1)) {
--_yPosCurrent;
_characterFacingDirection = 4;
- flag = 1;
+ flag = true;
}
- } else if (_yPosCurrent < _selectedObject.yPos) {
- if (testLocationMask(_xPosCurrent, _yPosCurrent + 1) == 1) {
+ } else if (_yPosCurrent < _selectedObject._yPos) {
+ if (testLocationMask(_xPosCurrent, _yPosCurrent + 1)) {
++_yPosCurrent;
_characterFacingDirection = 2;
- flag = 1;
+ flag = true;
}
}
- if (_xPosCurrent > _selectedObject.xPos) {
- if (testLocationMask(_xPosCurrent - 1, _yPosCurrent) == 1) {
+ if (_xPosCurrent > _selectedObject._xPos) {
+ if (testLocationMask(_xPosCurrent - 1, _yPosCurrent)) {
--_xPosCurrent;
_characterFacingDirection = 3;
- _characterBackFrontFacing = 0;
- flag = 1;
+ _characterBackFrontFacing = false;
+ flag = true;
}
- } else if (_xPosCurrent < _selectedObject.xPos) {
- if (testLocationMask(_xPosCurrent + 1, _yPosCurrent) == 1) {
+ } else if (_xPosCurrent < _selectedObject._xPos) {
+ if (testLocationMask(_xPosCurrent + 1, _yPosCurrent)) {
++_xPosCurrent;
_characterFacingDirection = 1;
- _characterBackFrontFacing = 1;
- flag = 1;
+ _characterBackFrontFacing = true;
+ flag = true;
}
}
- if (flag == 0) {
- if (_selectedObjectLocationMask == 1) {
- _selectedObjectLocationMask = 0;
- _selectedObject.xPos = _selectedObject.xDefaultPos;
- _selectedObject.yPos = _selectedObject.yDefaultPos;
+ if (!flag) {
+ if (_selectedObjectLocationMask) {
+ _selectedObjectLocationMask = false;
+ _selectedObject._xPos = _selectedObject._xDefaultPos;
+ _selectedObject._yPos = _selectedObject._yDefaultPos;
} else {
- _panelLockedFlag = 0;
+ _panelLockedFlag = false;
_characterFacingDirection = 0;
- if (_xPosCurrent == _selectedObject.xPos && _yPosCurrent == _selectedObject.yPos) {
+ if (_xPosCurrent == _selectedObject._xPos && _yPosCurrent == _selectedObject._yPos) {
_locationMaskCounter = 1;
}
}
}
if (_locationNum == 25) {
- if ((_backgroundSpriteCurrentAnimation != 3 || _characterBackFrontFacing != 0) && (_backgroundSpriteCurrentAnimation != 6 || _characterBackFrontFacing != 1)) {
+ if ((_backgroundSpriteCurrentAnimation != 3 || _characterBackFrontFacing) && (_backgroundSpriteCurrentAnimation != 6 || !_characterBackFrontFacing)) {
_xPosCurrent = xPos;
_yPosCurrent = yPos;
return;
}
}
- if (_xPosCurrent != _selectedObject.xPos || _yPosCurrent != _selectedObject.yPos) {
+ if (_xPosCurrent != _selectedObject._xPos || _yPosCurrent != _selectedObject._yPos) {
return;
}
- if (_selectedObjectLocationMask != 0) {
+ if (_selectedObjectLocationMask) {
return;
}
_locationMaskCounter = 1;
- _panelLockedFlag = 0;
- _locationMaskIgnore = 0;
+ _panelLockedFlag = false;
+ _locationMaskIgnore = false;
if (_characterPrevFacingDirection <= 0 || _characterPrevFacingDirection >= 5) {
return;
}
- if (_selectedObject.locationObject_locationNum == 0) {
+ if (_selectedObject._locationObjectLocationNum == 0) {
_characterFacingDirection = 5;
while (_spriteAnimationFramesTable[_spriteAnimationFrameIndex] != 999) {
++_spriteAnimationFrameIndex;
@@ -1200,12 +1230,12 @@ void TuckerEngine::setSoundVolumeDistance() {
void TuckerEngine::updateData3DrawFlag() {
for (int i = 0; i < _locationAnimationsCount; ++i) {
LocationAnimation *a = &_locationAnimationsTable[i];
- if (a->flagNum > 0 && a->flagValue != _flagsTable[a->flagNum]) {
- a->drawFlag = 0;
- } else if (a->getFlag == 0) {
- a->drawFlag = 1;
+ if (a->_flagNum > 0 && a->_flagValue != _flagsTable[a->_flagNum]) {
+ a->_drawFlag = false;
+ } else if (a->_getFlag == 0) {
+ a->_drawFlag = true;
} else {
- a->drawFlag = (_inventoryItemsState[a->inventoryNum] == 0) ? 1 : 0;
+ a->_drawFlag = (_inventoryItemsState[a->_inventoryNum] == 0);
}
}
}
@@ -1214,26 +1244,26 @@ void TuckerEngine::updateData3() {
updateData3DrawFlag();
for (int i = 0; i < _locationAnimationsCount; ++i) {
LocationAnimation *a = &_locationAnimationsTable[i];
- if (a->animLastCounter != 0 && a->drawFlag != 0) {
- if (a->animLastCounter == a->animCurrentCounter) {
- a->animCurrentCounter = a->animInitCounter;
+ if (a->_animLastCounter != 0 && a->_drawFlag) {
+ if (a->_animLastCounter == a->_animCurrentCounter) {
+ a->_animCurrentCounter = a->_animInitCounter;
} else {
- ++a->animCurrentCounter;
+ ++a->_animCurrentCounter;
}
- const int index = a->animCurrentCounter;
+ const int index = a->_animCurrentCounter;
if (_staticData3Table[index] == 998) {
_flagsTable[_staticData3Table[index + 1]] = _staticData3Table[index + 2];
- a->animCurrentCounter = a->animInitCounter;
- a->drawFlag = 0;
+ a->_animCurrentCounter = a->_animInitCounter;
+ a->_drawFlag = false;
}
if (_locationNum == 24 && i == 0) {
// workaround bug #2872385: update fish animation sequence for correct
// position in aquarium.
- if (a->animInitCounter == 505 && a->animCurrentCounter == 513) {
- a->animCurrentCounter = 525;
+ if (a->_animInitCounter == 505 && a->_animCurrentCounter == 513) {
+ a->_animCurrentCounter = 525;
}
}
- a->graphicNum = _staticData3Table[a->animCurrentCounter];
+ a->_graphicNum = _staticData3Table[a->_animCurrentCounter];
}
}
updateData3DrawFlag();
@@ -1242,16 +1272,16 @@ void TuckerEngine::updateData3() {
void TuckerEngine::updateSfxData3_1() {
for (int i = 0; i < _locationSoundsCount; ++i) {
LocationSound *s = &_locationSoundsTable[i];
- if ((s->type == 6 || s->type == 7) && s->updateType == 1) {
+ if ((s->_type == 6 || s->_type == 7) && s->_updateType == 1) {
for (int j = 0; j < _spritesCount; ++j) {
- if (_spritesTable[j].animationFrame == s->startFxSpriteNum && _spritesTable[j].state == s->startFxSpriteState) {
- if (s->type == 7) {
- _flagsTable[s->flagNum] = s->flagValueStartFx;
+ if (_spritesTable[j]._animationFrame == s->_startFxSpriteNum && _spritesTable[j]._state == s->_startFxSpriteState) {
+ if (s->_type == 7) {
+ _flagsTable[s->_flagNum] = s->_flagValueStartFx;
}
- startSound(s->offset, i, s->volume);
- } else if (s->type == 7) {
- if (_spritesTable[j].animationFrame == s->stopFxSpriteNum && _spritesTable[j].state == s->stopFxSpriteState) {
- _flagsTable[s->flagNum] = s->flagValueStopFx;
+ startSound(s->_offset, i, s->_volume);
+ } else if (s->_type == 7) {
+ if (_spritesTable[j]._animationFrame == s->_stopFxSpriteNum && _spritesTable[j]._state == s->_stopFxSpriteState) {
+ _flagsTable[s->_flagNum] = s->_flagValueStopFx;
stopSound(i);
}
}
@@ -1263,15 +1293,15 @@ void TuckerEngine::updateSfxData3_1() {
void TuckerEngine::updateSfxData3_2() {
for (int i = 0; i < _locationSoundsCount; ++i) {
LocationSound *s = &_locationSoundsTable[i];
- if ((s->type == 6 || s->type == 7) && s->updateType == 0) {
- if (s->startFxSpriteNum == _backgroundSpriteCurrentFrame && s->startFxSpriteState == _backgroundSpriteCurrentAnimation) {
- if (s->type == 7) {
- _flagsTable[s->flagNum] = s->flagValueStartFx;
+ if ((s->_type == 6 || s->_type == 7) && s->_updateType == 0) {
+ if (s->_startFxSpriteNum == _backgroundSpriteCurrentFrame && s->_startFxSpriteState == _backgroundSpriteCurrentAnimation) {
+ if (s->_type == 7) {
+ _flagsTable[s->_flagNum] = s->_flagValueStartFx;
}
- startSound(s->offset, i, s->volume);
- } else if (s->type == 7) {
- if (s->stopFxSpriteNum == _backgroundSpriteCurrentFrame && s->stopFxSpriteState == _backgroundSpriteCurrentAnimation) {
- _flagsTable[s->flagNum] = s->flagValueStopFx;
+ startSound(s->_offset, i, s->_volume);
+ } else if (s->_type == 7) {
+ if (s->_stopFxSpriteNum == _backgroundSpriteCurrentFrame && s->_stopFxSpriteState == _backgroundSpriteCurrentAnimation) {
+ _flagsTable[s->_flagNum] = s->_flagValueStopFx;
stopSound(i);
}
}
@@ -1422,7 +1452,7 @@ void TuckerEngine::redrawPanelOverBackground() {
void TuckerEngine::drawConversationTexts() {
int y = 141;
- int flag = 0;
+ bool flag = false;
for (int i = 0; i < _conversationOptionsCount; ++i) {
int color = 108;
if ((_mousePosY > y && _mousePosY < y + 11) || _nextTableToLoadIndex == i) {
@@ -1431,11 +1461,11 @@ void TuckerEngine::drawConversationTexts() {
drawSpeechText(0, y, _characterSpeechDataPtr, _instructionsActionsTable[i], color);
if (_mousePosY > y && _mousePosY < _conversationOptionLinesCount * 10 + y + 1) {
_nextTableToLoadIndex = i;
- flag = 1;
+ flag = true;
}
y += _conversationOptionLinesCount * 10;
}
- if (flag == 0) {
+ if (!flag) {
_nextTableToLoadIndex = -1;
}
}
@@ -1471,31 +1501,31 @@ void TuckerEngine::updateGameHints() {
if (_gameHintsIndex == 0 && _flagsTable[3] > 0) {
_gameHintsIndex = 1;
_gameHintsCounter = 0;
- _gameHintsDisplayText = 0;
+ _displayHintsText = false;
} else if (_gameHintsIndex == 1 && _flagsTable[12] > 0) {
_gameHintsIndex = 2;
_gameHintsCounter = 0;
- _gameHintsDisplayText = 0;
+ _displayHintsText = false;
} else if (_gameHintsIndex == 2 && _flagsTable[20] > 0) {
_gameHintsIndex = 3;
_gameHintsCounter = 0;
- _gameHintsDisplayText = 0;
+ _displayHintsText = false;
} else if (_gameHintsIndex == 3 && _flagsTable[9] > 0) {
_gameHintsIndex = 4;
_gameHintsCounter = 0;
- _gameHintsDisplayText = 0;
+ _displayHintsText = false;
} else if (_gameHintsIndex == 4 && _flagsTable[23] > 0) {
_gameHintsIndex = 5;
_gameHintsCounter = 0;
- _gameHintsDisplayText = 0;
+ _displayHintsText = false;
} else if (_flagsTable[19] > 0) {
_gameHintsIndex = 6;
_gameHintsCounter = 0;
- _gameHintsDisplayText = 0;
+ _displayHintsText = false;
}
++_gameHintsCounter;
if (_gameHintsCounter > 1500) {
- _gameHintsDisplayText = 1;
+ _displayHintsText = true;
}
}
@@ -1503,7 +1533,7 @@ void TuckerEngine::startCharacterSounds() {
if (_characterSoundFxDelayCounter != 0) {
--_characterSoundFxDelayCounter;
if (_characterSoundFxDelayCounter <= 0) {
- startSound(_locationSoundsTable[_characterSoundFxNum].offset, _characterSoundFxNum, _locationSoundsTable[_characterSoundFxNum].volume);
+ startSound(_locationSoundsTable[_characterSoundFxNum]._offset, _characterSoundFxNum, _locationSoundsTable[_characterSoundFxNum]._volume);
}
}
}
@@ -1513,16 +1543,16 @@ void TuckerEngine::updateSoundsTypes3_4() {
return;
}
for (int i = 0; i < _locationSoundsCount; ++i) {
- switch (_locationSoundsTable[i].type) {
+ switch (_locationSoundsTable[i]._type) {
case 3:
if (getRandomNumber() >= 32300) {
- startSound(_locationSoundsTable[i].offset, 0, _locationSoundsTable[i].volume);
+ startSound(_locationSoundsTable[i]._offset, 0, _locationSoundsTable[i]._volume);
return;
}
break;
case 4:
if (getRandomNumber() >= 32763) {
- startSound(_locationSoundsTable[i].offset, 0, _locationSoundsTable[i].volume);
+ startSound(_locationSoundsTable[i]._offset, 0, _locationSoundsTable[i]._volume);
return;
}
break;
@@ -1532,11 +1562,11 @@ void TuckerEngine::updateSoundsTypes3_4() {
void TuckerEngine::drawData3() {
for (int i = 0; i < _locationAnimationsCount; ++i) {
- if (_locationAnimationsTable[i].drawFlag != 0) {
- int num = _locationAnimationsTable[i].graphicNum;
+ if (_locationAnimationsTable[i]._drawFlag) {
+ int num = _locationAnimationsTable[i]._graphicNum;
const Data *d = &_dataTable[num];
- Graphics::decodeRLE(_locationBackgroundGfxBuf + d->yDest * 640 + d->xDest, _data3GfxBuf + d->sourceOffset, d->xSize, d->ySize);
- addDirtyRect(d->xDest, d->yDest, d->xSize, d->ySize);
+ Graphics::decodeRLE(_locationBackgroundGfxBuf + d->_yDest * 640 + d->_xDest, _data3GfxBuf + d->_sourceOffset, d->_xSize, d->_ySize);
+ addDirtyRect(d->_xDest, d->_yDest, d->_xSize, d->_ySize);
}
}
}
@@ -1750,28 +1780,28 @@ void TuckerEngine::drawCurrentSprite() {
// Workaround original game glitch: location 14 contains some colors from [0xE0-0xF8] in a walkable area (tracker item #3106542)
const bool color248Only = (_locationNum == 14);
SpriteFrame *chr = &_spriteFramesTable[_currentSpriteAnimationFrame];
- int yPos = _yPosCurrent + _mainSpritesBaseOffset - 54 + chr->yOffset;
+ int yPos = _yPosCurrent + _mainSpritesBaseOffset - 54 + chr->_yOffset;
int xPos = _xPosCurrent;
- if (_mirroredDrawing == 0) {
- xPos += chr->xOffset - 14;
+ if (!_mirroredDrawing) {
+ xPos += chr->_xOffset - 14;
} else {
- xPos -= chr->xSize + chr->xOffset - 14;
+ xPos -= chr->_xSize + chr->_xOffset - 14;
}
- Graphics::decodeRLE_248(_locationBackgroundGfxBuf + yPos * 640 + xPos, _spritesGfxBuf + chr->sourceOffset, chr->xSize, chr->ySize,
- chr->yOffset, _locationHeightTable[_locationNum], _mirroredDrawing != 0, color248Only);
- addDirtyRect(xPos, yPos, chr->xSize, chr->ySize);
+ Graphics::decodeRLE_248(_locationBackgroundGfxBuf + yPos * 640 + xPos, _spritesGfxBuf + chr->_sourceOffset, chr->_xSize, chr->_ySize,
+ chr->_yOffset, _locationHeightTable[_locationNum], _mirroredDrawing, color248Only);
+ addDirtyRect(xPos, yPos, chr->_xSize, chr->_ySize);
if (_currentSpriteAnimationLength > 1) {
SpriteFrame *chr2 = &_spriteFramesTable[_currentSpriteAnimationFrame2];
- yPos = _yPosCurrent + _mainSpritesBaseOffset - 54 + chr2->yOffset;
+ yPos = _yPosCurrent + _mainSpritesBaseOffset - 54 + chr2->_yOffset;
xPos = _xPosCurrent;
- if (_mirroredDrawing == 0) {
- xPos += chr2->xOffset - 14;
+ if (!_mirroredDrawing) {
+ xPos += chr2->_xOffset - 14;
} else {
- xPos -= chr2->xSize + chr2->xOffset - 14;
+ xPos -= chr2->_xSize + chr2->_xOffset - 14;
}
- Graphics::decodeRLE_248(_locationBackgroundGfxBuf + yPos * 640 + xPos, _spritesGfxBuf + chr2->sourceOffset, chr2->xSize, chr2->ySize,
- chr2->yOffset, _locationHeightTable[_locationNum], _mirroredDrawing != 0, color248Only);
- addDirtyRect(xPos, yPos, chr2->xSize, chr2->ySize);
+ Graphics::decodeRLE_248(_locationBackgroundGfxBuf + yPos * 640 + xPos, _spritesGfxBuf + chr2->_sourceOffset, chr2->_xSize, chr2->_ySize,
+ chr2->_yOffset, _locationHeightTable[_locationNum], _mirroredDrawing, color248Only);
+ addDirtyRect(xPos, yPos, chr2->_xSize, chr2->_ySize);
}
}
@@ -1790,8 +1820,8 @@ void TuckerEngine::setVolumeMusic(int index, int volume) {
}
void TuckerEngine::startSound(int offset, int index, int volume) {
- bool loop = (_locationSoundsTable[index].type == 2 || _locationSoundsTable[index].type == 5 || _locationSoundsTable[index].type == 7);
- loadSound(Audio::Mixer::kSFXSoundType, _locationSoundsTable[index].num, volume, loop, &_sfxHandles[index]);
+ bool loop = (_locationSoundsTable[index]._type == 2 || _locationSoundsTable[index]._type == 5 || _locationSoundsTable[index]._type == 7);
+ loadSound(Audio::Mixer::kSFXSoundType, _locationSoundsTable[index]._num, volume, loop, &_sfxHandles[index]);
}
void TuckerEngine::stopSound(int index) {
@@ -1803,8 +1833,8 @@ bool TuckerEngine::isSoundPlaying(int index) {
}
void TuckerEngine::startMusic(int offset, int index, int volume) {
- bool loop = (_locationMusicsTable[index].flag == 2);
- loadSound(Audio::Mixer::kMusicSoundType, _locationMusicsTable[index].num, volume, loop, &_musicHandles[index]);
+ bool loop = (_locationMusicsTable[index]._flag == 2);
+ loadSound(Audio::Mixer::kMusicSoundType, _locationMusicsTable[index]._num, volume, loop, &_musicHandles[index]);
}
void TuckerEngine::stopMusic(int index) {
@@ -1831,14 +1861,16 @@ void TuckerEngine::rememberSpeechSound() {
}
void TuckerEngine::redrawPanelItems() {
- const uint8 *src = 0;
- uint8 *dst = 0;
- int sz = 0;
if (_forceRedrawPanelItems || (_redrawPanelItemsCounter != 0 && _panelState == 0)) {
_forceRedrawPanelItems = false;
if (_redrawPanelItemsCounter > 0) {
--_redrawPanelItemsCounter;
}
+
+ const uint8 *src = nullptr;
+ uint8 *dst = nullptr;
+ int sz = 0;
+
switch (_panelState) {
case 0:
src = _panelGfxBuf;
@@ -1892,25 +1924,25 @@ void TuckerEngine::redrawPanelItemsHelper() {
void TuckerEngine::drawSprite(int num) {
Sprite *s = &_spritesTable[num];
- if (s->animationFrame <= s->firstFrame && s->animationFrame > 0 && s->state != -1) {
- const uint8 *p = s->animationData;
+ if (s->_animationFrame <= s->_firstFrame && s->_animationFrame > 0 && s->_state != -1) {
+ const uint8 *p = s->_animationData;
if (!p) {
return;
}
- int frameOffset = READ_LE_UINT24(p + s->animationFrame * 4);
+ int frameOffset = READ_LE_UINT24(p + s->_animationFrame * 4);
int srcW = READ_LE_UINT16(p + frameOffset);
int srcH = READ_LE_UINT16(p + frameOffset + 2);
int srcX = READ_LE_UINT16(p + frameOffset + 8);
int srcY = READ_LE_UINT16(p + frameOffset + 10);
- int xPos = s->gfxBackgroundOffset + srcX;
+ int xPos = s->_gfxBackgroundOffset + srcX;
if (xPos < 600 && (_scrollOffset + 320 < xPos || _scrollOffset - srcW > xPos)) {
return;
}
- s->xSource = srcX;
- s->gfxBackgroundOffset += s->backgroundOffset;
+ s->_xSource = srcX;
+ s->_gfxBackgroundOffset += s->_backgroundOffset;
uint8 *dstPtr = _locationBackgroundGfxBuf + srcY * 640 + xPos;
const uint8 *srcPtr = p + frameOffset + 12;
- switch (s->colorType) {
+ switch (s->_colorType) {
case 0:
Graphics::decodeRLE(dstPtr, srcPtr, srcW, srcH);
break;
@@ -1918,11 +1950,11 @@ void TuckerEngine::drawSprite(int num) {
Graphics::decodeRLE_224(dstPtr, srcPtr, srcW, srcH);
break;
default:
- Graphics::decodeRLE_248(dstPtr, srcPtr, srcW, srcH, 0, s->yMaxBackground, s->flipX != 0);
+ Graphics::decodeRLE_248(dstPtr, srcPtr, srcW, srcH, 0, s->_yMaxBackground, s->_flipX);
break;
}
- const int xR = srcX + (s->gfxBackgroundOffset % 640);
- const int yR = srcY + (s->gfxBackgroundOffset / 640);
+ const int xR = srcX + (s->_gfxBackgroundOffset % 640);
+ const int yR = srcY + (s->_gfxBackgroundOffset / 640);
addDirtyRect(xR, yR, srcW, srcH);
}
}
@@ -1938,7 +1970,7 @@ void TuckerEngine::drawPausedInfoBar() {
}
const uint8 *TuckerEngine::getStringBuf(int type) const {
- const uint8 *p = 0;
+ const uint8 *p = nullptr;
switch (type) {
case 0:
p = _data5Buf;
@@ -2031,7 +2063,7 @@ void TuckerEngine::updateCharacterAnimation() {
++_spriteAnimationFrameIndex;
}
_characterFacingDirection = 0;
- if (_changeBackgroundSprite == 1) {
+ if (_changeBackgroundSprite) {
if (_backgroundSpriteCurrentFrame == 0) {
_backgroundSpriteDataPtr = _sprA02Table[_backgroundSpriteCurrentAnimation];
_backgroundSpriteCurrentFrame = _backgroundSpriteLastFrame = READ_LE_UINT16(_backgroundSpriteDataPtr);
@@ -2040,7 +2072,7 @@ void TuckerEngine::updateCharacterAnimation() {
if (_backgroundSpriteCurrentFrame < 1) {
_backgroundSpriteCurrentAnimation = -1;
_backgroundSpriteCurrentFrame = 0;
- _changeBackgroundSprite = 0;
+ _changeBackgroundSprite = false;
if (_nextAction == 0) {
setCursorType(0);
}
@@ -2052,7 +2084,7 @@ void TuckerEngine::updateCharacterAnimation() {
assert(_backgroundSpriteCurrentAnimation >= 0 && _backgroundSpriteCurrentAnimation < kSprA02TableSize);
_backgroundSpriteDataPtr = _sprA02Table[_backgroundSpriteCurrentAnimation];
_backgroundSpriteLastFrame = READ_LE_UINT16(_backgroundSpriteDataPtr);
- } else if (_locationNum == 25 && _panelLockedFlag != 1 && (_backgroundSpriteCurrentAnimation == 3 || _backgroundSpriteCurrentAnimation == 6)) {
+ } else if (_locationNum == 25 && !_panelLockedFlag && (_backgroundSpriteCurrentAnimation == 3 || _backgroundSpriteCurrentAnimation == 6)) {
_backgroundSpriteCurrentFrame = 0;
_backgroundSpriteCurrentAnimation = -1;
} else {
@@ -2068,9 +2100,9 @@ void TuckerEngine::updateCharacterAnimation() {
}
}
if (_locationNum == 24 && _flagsTable[103] == 0) {
- if (_panelLockedFlag == 1) {
- _panelLockedFlag = 0;
- _selectedObject.locationObject_locationNum = 0;
+ if (_panelLockedFlag) {
+ _panelLockedFlag = false;
+ _selectedObject._locationObjectLocationNum = 0;
if (_actionVerb != 2) {
_speechSoundNum = 2236;
startSpeechSound(_speechSoundNum, _speechVolume);
@@ -2105,10 +2137,10 @@ void TuckerEngine::updateCharacterAnimation() {
}
} else if (_locationNum == 25) {
if (_backgroundSpriteCurrentFrame == 0) {
- if (_characterBackFrontFacing == 0) {
+ if (!_characterBackFrontFacing) {
if (_characterBackFrontFacing != _characterPrevBackFrontFacing) {
_backgroundSpriteCurrentAnimation = 10;
- } else if (_panelLockedFlag == 1) {
+ } else if (_panelLockedFlag) {
_backgroundSpriteCurrentAnimation = 3;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 99) {
_backgroundSpriteCurrentAnimation = 8;
@@ -2118,7 +2150,7 @@ void TuckerEngine::updateCharacterAnimation() {
} else {
if (_characterBackFrontFacing != _characterPrevBackFrontFacing) {
_backgroundSpriteCurrentAnimation = 2;
- } else if (_panelLockedFlag == 1) {
+ } else if (_panelLockedFlag) {
_backgroundSpriteCurrentAnimation = 6;
} else if (_charSpeechSoundCounter > 0 && _actionCharacterNum == 99) {
_backgroundSpriteCurrentAnimation = 9;
@@ -2143,7 +2175,7 @@ void TuckerEngine::updateCharacterAnimation() {
_backgroundSpriteLastFrame = READ_LE_UINT16(_backgroundSpriteDataPtr);
}
int frame = _spriteAnimationFramesTable[_spriteAnimationFrameIndex];
- if (_panelLockedFlag == 0 && _characterFacingDirection < 5 && _selectedObject.locationObject_locationNum == 0) {
+ if (!_panelLockedFlag && _characterFacingDirection < 5 && _selectedObject._locationObjectLocationNum == 0) {
_characterFacingDirection = 0;
}
if (_charSpeechSoundCounter > 0 && _characterFacingDirection != 6 && _actionCharacterNum == 99) {
@@ -2155,7 +2187,7 @@ void TuckerEngine::updateCharacterAnimation() {
}
int num = 0;
if (frame == 999 || (_characterFacingDirection != _characterPrevFacingDirection && _characterFacingDirection < 5)) {
- _mirroredDrawing = 0;
+ _mirroredDrawing = false;
if (_characterFacingDirection == 6) {
if (_csDataHandled) {
switch (_selectedCharacterDirection) {
@@ -2170,7 +2202,7 @@ void TuckerEngine::updateCharacterAnimation() {
break;
default:
num = 16;
- _mirroredDrawing = 1;
+ _mirroredDrawing = true;
break;
}
} else {
@@ -2182,7 +2214,7 @@ void TuckerEngine::updateCharacterAnimation() {
}
if (_characterFacingDirection == 0) {
if (_csDataHandled) {
- _mirroredDrawing = 0;
+ _mirroredDrawing = false;
switch (_selectedCharacterDirection) {
case 1:
num = 3;
@@ -2192,7 +2224,7 @@ void TuckerEngine::updateCharacterAnimation() {
break;
case 3:
num = 1;
- _mirroredDrawing = 1;
+ _mirroredDrawing = true;
break;
default:
num = 5;
@@ -2218,21 +2250,21 @@ void TuckerEngine::updateCharacterAnimation() {
break;
case 3:
num = 0;
- _mirroredDrawing = 1;
+ _mirroredDrawing = true;
break;
case 4:
num = 2;
break;
}
}
- _currentSpriteAnimationLength = _spriteAnimationsTable[num].numParts;
- _spriteAnimationFrameIndex = _spriteAnimationsTable[num].firstFrameIndex;
+ _currentSpriteAnimationLength = _spriteAnimationsTable[num]._numParts;
+ _spriteAnimationFrameIndex = _spriteAnimationsTable[num]._firstFrameIndex;
frame = _spriteAnimationFramesTable[_spriteAnimationFrameIndex];
}
if (_characterAnimationNum > 0) {
num = _characterAnimationNum;
- _currentSpriteAnimationLength = _spriteAnimationsTable[num].numParts;
- _spriteAnimationFrameIndex = _spriteAnimationsTable[num].firstFrameIndex;
+ _currentSpriteAnimationLength = _spriteAnimationsTable[num]._numParts;
+ _spriteAnimationFrameIndex = _spriteAnimationsTable[num]._firstFrameIndex;
frame = _spriteAnimationFramesTable[_spriteAnimationFrameIndex];
_characterAnimationNum = 0;
}
@@ -2287,10 +2319,10 @@ void TuckerEngine::handleMap() {
if (_handleMapCounter > 19) {
_handleMapCounter = 0;
_locationMaskCounter = 1;
- _panelLockedFlag = 0;
+ _panelLockedFlag = false;
}
}
- if (_panelLockedFlag == 0 && (_backgroundSpriteCurrentAnimation == -1 || _locationNum == 25) && _locationMaskType == 3) {
+ if (!_panelLockedFlag && (_backgroundSpriteCurrentAnimation == -1 || _locationNum == 25) && _locationMaskType == 3) {
setCursorType(0);
if (_locationMaskCounter == 1) {
_characterFacingDirection = 0;
@@ -2298,22 +2330,22 @@ void TuckerEngine::handleMap() {
}
return;
}
- if (_selectedObject.locationObject_locationNum != 0 && _locationMaskCounter != 0 && (_backgroundSpriteCurrentAnimation <= -1 || _locationNum == 25)) {
+ if (_selectedObject._locationObjectLocationNum != 0 && _locationMaskCounter != 0 && (_backgroundSpriteCurrentAnimation <= -1 || _locationNum == 25)) {
if (_locationNum == 25 || _backgroundSpriteCurrentAnimation != 4) {
if (_locationMaskType == 0) {
_locationMaskType = 1;
setCursorType(2);
- if (_selectedObject.locationObject_toWalkX2 > 800) {
- _backgroundSpriteCurrentAnimation = _selectedObject.locationObject_toWalkX2 - 900;
- if (_selectedObject.locationObject_toWalkY2 > 499) {
- _changeBackgroundSprite = 1;
- _backgroundSprOffset = _selectedObject.locationObject_toWalkY2 - 500;
+ if (_selectedObject._locationObjectToWalkX2 > 800) {
+ _backgroundSpriteCurrentAnimation = _selectedObject._locationObjectToWalkX2 - 900;
+ if (_selectedObject._locationObjectToWalkY2 > 499) {
+ _changeBackgroundSprite = true;
+ _backgroundSprOffset = _selectedObject._locationObjectToWalkY2 - 500;
} else {
- _backgroundSprOffset = _selectedObject.locationObject_toWalkY2;
- _changeBackgroundSprite = 0;
+ _backgroundSprOffset = _selectedObject._locationObjectToWalkY2;
+ _changeBackgroundSprite = false;
}
_backgroundSpriteCurrentFrame = 0;
- _mirroredDrawing = 0;
+ _mirroredDrawing = false;
if (_locationNum == 25) {
_backgroundSpriteDataPtr = _sprA02Table[_backgroundSpriteCurrentAnimation];
_backgroundSpriteLastFrame = READ_LE_UINT16(_backgroundSpriteDataPtr);
@@ -2321,17 +2353,17 @@ void TuckerEngine::handleMap() {
}
} else {
_locationMaskCounter = 0;
- _selectedObject.xPos = _selectedObject.locationObject_toWalkX2;
- _selectedObject.yPos = _selectedObject.locationObject_toWalkY2;
+ _selectedObject._xPos = _selectedObject._locationObjectToWalkX2;
+ _selectedObject._yPos = _selectedObject._locationObjectToWalkY2;
_handleMapCounter = 1;
- _panelLockedFlag = 1;
+ _panelLockedFlag = true;
}
return;
}
_locationMaskType = 2;
_panelState = 0;
setCursorType(0);
- if (_selectedObject.locationObject_locationNum == 99) {
+ if (_selectedObject._locationObjectLocationNum == 99) {
_noPositionChangeAfterMap = true;
handleMapSequence();
return;
@@ -2341,28 +2373,28 @@ void TuckerEngine::handleMap() {
redrawScreen(_scrollOffset);
_fadePaletteCounter = 34;
}
- _nextLocationNum = _selectedObject.locationObject_locationNum;
- _xPosCurrent = _selectedObject.locationObject_toX;
- _yPosCurrent = _selectedObject.locationObject_toY;
- if (_selectedObject.locationObject_toX2 > 800) {
- _backgroundSpriteCurrentAnimation = _selectedObject.locationObject_toX2 - 900;
- if (_selectedObject.locationObject_toY2 > 499) {
- _changeBackgroundSprite = 1;
- _backgroundSprOffset = _selectedObject.locationObject_toY2 - 500;
+ _nextLocationNum = _selectedObject._locationObjectLocationNum;
+ _xPosCurrent = _selectedObject._locationObjectToX;
+ _yPosCurrent = _selectedObject._locationObjectToY;
+ if (_selectedObject._locationObjectToX2 > 800) {
+ _backgroundSpriteCurrentAnimation = _selectedObject._locationObjectToX2 - 900;
+ if (_selectedObject._locationObjectToY2 > 499) {
+ _changeBackgroundSprite = true;
+ _backgroundSprOffset = _selectedObject._locationObjectToY2 - 500;
} else {
- _changeBackgroundSprite = 0;
- _backgroundSprOffset = _selectedObject.locationObject_toY2;
+ _changeBackgroundSprite = false;
+ _backgroundSprOffset = _selectedObject._locationObjectToY2;
}
_backgroundSpriteCurrentFrame = 0;
} else {
- _selectedObject.xPos = _selectedObject.locationObject_toX2;
- _selectedObject.yPos = _selectedObject.locationObject_toY2;
- _panelLockedFlag = 1;
+ _selectedObject._xPos = _selectedObject._locationObjectToX2;
+ _selectedObject._yPos = _selectedObject._locationObjectToY2;
+ _panelLockedFlag = true;
}
_scrollOffset = 0;
_handleMapCounter = 0;
_locationMaskCounter = 0;
- _selectedObject.locationObject_locationNum = 0;
+ _selectedObject._locationObjectLocationNum = 0;
}
}
}
@@ -2370,79 +2402,79 @@ void TuckerEngine::handleMap() {
void TuckerEngine::clearSprites() {
memset(_spritesTable, 0, sizeof(_spritesTable));
for (int i = 0; i < kMaxCharacters; ++i) {
- _spritesTable[i].state = -1;
- _spritesTable[i].stateIndex = -1;
+ _spritesTable[i]._state = -1;
+ _spritesTable[i]._stateIndex = -1;
}
}
void TuckerEngine::updateSprites() {
const int count = (_locationNum == 9) ? 3 : _spritesCount;
for (int i = 0; i < count; ++i) {
- if (_spritesTable[i].stateIndex > -1) {
- ++_spritesTable[i].stateIndex;
- if (_characterStateTable[_spritesTable[i].stateIndex] == 99) {
- _spritesTable[i].stateIndex = -1;
- _spritesTable[i].state = -1;
+ if (_spritesTable[i]._stateIndex > -1) {
+ ++_spritesTable[i]._stateIndex;
+ if (_characterStateTable[_spritesTable[i]._stateIndex] == 99) {
+ _spritesTable[i]._stateIndex = -1;
+ _spritesTable[i]._state = -1;
updateSprite(i);
} else {
- _spritesTable[i].animationFrame = _characterStateTable[_spritesTable[i].stateIndex];
+ _spritesTable[i]._animationFrame = _characterStateTable[_spritesTable[i]._stateIndex];
}
continue;
}
- if (_spritesTable[i].state == -1) {
+ if (_spritesTable[i]._state == -1) {
updateSprite(i);
continue;
}
- if (_charSpeechSoundCounter > 0 && i == _actionCharacterNum && _spritesTable[i].needUpdate == 0) {
+ if (_charSpeechSoundCounter > 0 && i == _actionCharacterNum && !_spritesTable[i]._needUpdate) {
updateSprite(i);
continue;
}
- if (_charSpeechSoundCounter == 0 && _spritesTable[i].needUpdate > 0) {
+ if (_charSpeechSoundCounter == 0 && _spritesTable[i]._needUpdate) {
updateSprite(i);
continue;
}
- if (_spritesTable[i].updateDelay > 0) {
- --_spritesTable[i].updateDelay;
- if (_spritesTable[i].updateDelay == 0) {
+ if (_spritesTable[i]._updateDelay > 0) {
+ --_spritesTable[i]._updateDelay;
+ if (_spritesTable[i]._updateDelay == 0) {
updateSprite(i);
}
continue;
}
- if (_spritesTable[i].defaultUpdateDelay > 0) {
- _spritesTable[i].updateDelay = _spritesTable[i].defaultUpdateDelay - 1;
- ++_spritesTable[i].animationFrame;
- if (_spritesTable[i].animationFrame == _spritesTable[i].firstFrame) {
+ if (_spritesTable[i]._defaultUpdateDelay > 0) {
+ _spritesTable[i]._updateDelay = _spritesTable[i]._defaultUpdateDelay - 1;
+ ++_spritesTable[i]._animationFrame;
+ if (_spritesTable[i]._animationFrame == _spritesTable[i]._firstFrame) {
updateSprite(i);
}
continue;
}
- if (_spritesTable[i].nextAnimationFrame == 0) {
- ++_spritesTable[i].animationFrame;
- if (_spritesTable[i].firstFrame - 1 < _spritesTable[i].animationFrame) {
- if (_spritesTable[i].prevAnimationFrame == 1) {
- --_spritesTable[i].animationFrame;
- _spritesTable[i].nextAnimationFrame = 1;
+ if (!_spritesTable[i]._nextAnimationFrame) {
+ ++_spritesTable[i]._animationFrame;
+ if (_spritesTable[i]._firstFrame - 1 < _spritesTable[i]._animationFrame) {
+ if (_spritesTable[i]._prevAnimationFrame) {
+ --_spritesTable[i]._animationFrame;
+ _spritesTable[i]._nextAnimationFrame = true;
} else {
updateSprite(i);
}
}
continue;
}
- --_spritesTable[i].animationFrame;
- if (_spritesTable[i].animationFrame == 0) {
+ --_spritesTable[i]._animationFrame;
+ if (_spritesTable[i]._animationFrame == 0) {
updateSprite(i);
}
}
}
void TuckerEngine::updateSprite(int i) {
- _spritesTable[i].prevState = _spritesTable[i].state;
- _spritesTable[i].prevAnimationFrame = 0;
- _spritesTable[i].nextAnimationFrame = 0;
- _updateSpriteFlag1 = 0;
- _updateSpriteFlag2 = 0;
- _spritesTable[i].defaultUpdateDelay = 0;
- _spritesTable[i].updateDelay = 0;
+ _spritesTable[i]._prevState = _spritesTable[i]._state;
+ _spritesTable[i]._prevAnimationFrame = false;
+ _spritesTable[i]._nextAnimationFrame = false;
+ _updateSpriteFlag1 = false;
+ _updateSpriteFlag2 = false;
+ _spritesTable[i]._defaultUpdateDelay = 0;
+ _spritesTable[i]._updateDelay = 0;
switch (_locationNum) {
case 2:
updateSprite_locationNum2();
@@ -2632,7 +2664,7 @@ void TuckerEngine::updateSprite(int i) {
if (i == 0) {
updateSprite_locationNum32_0(0);
} else {
- _spritesTable[i].state = -1;
+ _spritesTable[i]._state = -1;
}
break;
case 33:
@@ -2643,7 +2675,7 @@ void TuckerEngine::updateSprite(int i) {
} else if (i == 2) {
updateSprite_locationNum33_2(2);
} else {
- _spritesTable[i].state = 12;
+ _spritesTable[i]._state = 12;
}
break;
case 34:
@@ -2654,7 +2686,7 @@ void TuckerEngine::updateSprite(int i) {
break;
case 37:
if (i == 0) {
- _spritesTable[0].state = -1;
+ _spritesTable[0]._state = -1;
} else {
updateSprite_locationNum37(i);
}
@@ -2670,9 +2702,9 @@ void TuckerEngine::updateSprite(int i) {
updateSprite_locationNum43_2(i);
} else if (i < 2) {
if (_flagsTable[236] < 4) {
- _spritesTable[i].state = i + 1;
+ _spritesTable[i]._state = i + 1;
} else {
- _spritesTable[i].state = -1;
+ _spritesTable[i]._state = -1;
}
} else if (i == 3) {
updateSprite_locationNum43_3(3);
@@ -2685,10 +2717,10 @@ void TuckerEngine::updateSprite(int i) {
}
break;
case 45:
- _spritesTable[0].state = 1;
+ _spritesTable[0]._state = 1;
break;
case 47:
- _spritesTable[i].state = i + 1;
+ _spritesTable[i]._state = i + 1;
break;
case 48:
updateSprite_locationNum48(0);
@@ -2700,7 +2732,7 @@ void TuckerEngine::updateSprite(int i) {
if (i < 6) {
updateSprite_locationNum50(i);
} else {
- _spritesTable[i].state = i + 1;
+ _spritesTable[i]._state = i + 1;
}
break;
case 51:
@@ -2782,7 +2814,7 @@ void TuckerEngine::updateSprite(int i) {
break;
case 69:
if (i == 0) {
- _spritesTable[0].state = 1;
+ _spritesTable[0]._state = 1;
} else if (i == 1) {
updateSprite_locationNum69_1(1);
} else if (i == 2) {
@@ -2814,23 +2846,23 @@ void TuckerEngine::updateSprite(int i) {
updateSprite_locationNum82(0);
break;
case 98:
- _spritesTable[0].state = 1;
+ _spritesTable[0]._state = 1;
break;
}
- if (_spritesTable[i].stateIndex <= -1) {
- if (_updateSpriteFlag1 == 0) {
- _spritesTable[i].animationFrame = 1;
+ if (_spritesTable[i]._stateIndex <= -1) {
+ if (!_updateSpriteFlag1) {
+ _spritesTable[i]._animationFrame = 1;
}
- if (_spritesTable[i].state < 0 || !_sprC02Table[_spritesTable[i].state]) {
+ if (_spritesTable[i]._state < 0 || !_sprC02Table[_spritesTable[i]._state]) {
// warning("Invalid state %d for sprite %d location %d", _spritesTable[i].state, i, _locationNum);
return;
}
- _spritesTable[i].animationData = _sprC02Table[_spritesTable[i].state];
- _spritesTable[i].firstFrame = READ_LE_UINT16(_spritesTable[i].animationData);
- if (_updateSpriteFlag2 == 1) {
- _spritesTable[i].state = _spritesTable[i].firstFrame;
- _spritesTable[i].nextAnimationFrame = 1;
- _spritesTable[i].prevAnimationFrame = 1;
+ _spritesTable[i]._animationData = _sprC02Table[_spritesTable[i]._state];
+ _spritesTable[i]._firstFrame = READ_LE_UINT16(_spritesTable[i]._animationData);
+ if (_updateSpriteFlag2) {
+ _spritesTable[i]._state = _spritesTable[i]._firstFrame;
+ _spritesTable[i]._nextAnimationFrame = true;
+ _spritesTable[i]._prevAnimationFrame = true;
}
}
}
@@ -2844,7 +2876,7 @@ void TuckerEngine::drawStringInteger(int num, int x, int y, int digits) {
Graphics::drawStringChar(_locationBackgroundGfxBuf, _scrollOffset + x, y, 640, numStr[i], 102, _charsetGfxBuf);
x += 8;
}
- addDirtyRect(_scrollOffset + x, y, Graphics::_charset.charW * 3, Graphics::_charset.charH);
+ addDirtyRect(_scrollOffset + x, y, Graphics::_charset._charW * 3, Graphics::_charset._charH);
}
void TuckerEngine::drawStringAlt(int x, int y, int color, const uint8 *str, int strLen) {
@@ -2856,7 +2888,7 @@ void TuckerEngine::drawStringAlt(int x, int y, int color, const uint8 *str, int
x += _charWidthTable[chr];
++pos;
}
- addDirtyRect(xStart, y, x - xStart, Graphics::_charset.charH);
+ addDirtyRect(xStart, y, x - xStart, Graphics::_charset._charH);
}
void TuckerEngine::drawItemString(int x, int num, const uint8 *str) {
@@ -2911,15 +2943,15 @@ void TuckerEngine::updateItemsGfxColors(int color1, int color128) {
}
}
-int TuckerEngine::testLocationMask(int x, int y) {
- if (_locationMaskType > 0 || _locationMaskIgnore > 0) {
- return 1;
+bool TuckerEngine::testLocationMask(int x, int y) {
+ if (_locationMaskType > 0 || _locationMaskIgnore) {
+ return true;
}
if (_locationNum == 26 || _locationNum == 32) {
y -= 3;
}
const int offset = y * 640 + x;
- return _locationBackgroundMaskBuf[offset] > 0 ? 1 : 0;
+ return (_locationBackgroundMaskBuf[offset] > 0);
}
int TuckerEngine::getStringWidth(int num, const uint8 *ptr) {
@@ -3096,7 +3128,7 @@ int TuckerEngine::readTableInstructionParam(int len) {
++_tableInstructionsPtr;
--len;
}
- char *end = 0;
+ char *end = nullptr;
const int param = strtol((const char *)_tableInstructionsPtr, &end, 10);
if (end != (const char *)_tableInstructionsPtr + len) {
warning("Unexpected instruction parameter length %d (%d)", (int)(end - (const char *)_tableInstructionsPtr), len);
@@ -3123,7 +3155,7 @@ int TuckerEngine::executeTableInstruction() {
return 0;
case kCode_bub:
i = readTableInstructionParam(3);
- _spriteAnimationFrameIndex = _spriteAnimationsTable[i].firstFrameIndex;
+ _spriteAnimationFrameIndex = _spriteAnimationsTable[i]._firstFrameIndex;
_characterFacingDirection = 5;
_mainLoopCounter2 = 0;
return 0;
@@ -3137,13 +3169,13 @@ int TuckerEngine::executeTableInstruction() {
_selectedCharacterDirection = readTableInstructionParam(2);
return 0;
case kCode_bof:
- _skipCurrentCharacterDraw = 1;
+ _skipCurrentCharacterDraw = true;
return 0;
case kCode_buh:
_noCharacterAnimationChange = readTableInstructionParam(2);
return 0;
case kCode_bon:
- _skipCurrentCharacterDraw = 0;
+ _skipCurrentCharacterDraw = false;
return 0;
case kCode_bso:
_backgroundSprOffset = readTableInstructionParam(3);
@@ -3159,24 +3191,24 @@ int TuckerEngine::executeTableInstruction() {
_charSpeechSoundCounter = kDefaultCharSpeechSoundCounter;
return 0;
case kCode_buw:
- _selectedObject.xPos = readTableInstructionParam(3);
- _selectedObject.yPos = readTableInstructionParam(3);
- _locationMaskIgnore = 1;
- _panelLockedFlag = 1;
+ _selectedObject._xPos = readTableInstructionParam(3);
+ _selectedObject._yPos = readTableInstructionParam(3);
+ _locationMaskIgnore = true;
+ _panelLockedFlag = true;
return 0;
case kCode_bux:
_xPosCurrent = readTableInstructionParam(3);
_yPosCurrent = readTableInstructionParam(3);
return 0;
case kCode_c0a:
- _spritesTable[index].state = readTableInstructionParam(3);
- if (_spritesTable[index].state == 999) {
- _spritesTable[index].state = -1;
+ _spritesTable[index]._state = readTableInstructionParam(3);
+ if (_spritesTable[index]._state == 999) {
+ _spritesTable[index]._state = -1;
}
_mainLoopCounter1 = 0;
- _spritesTable[index].updateDelay = 0;
- _spritesTable[index].nextAnimationFrame = 0;
- _spritesTable[index].prevAnimationFrame = 0;
+ _spritesTable[index]._updateDelay = 0;
+ _spritesTable[index]._nextAnimationFrame = false;
+ _spritesTable[index]._prevAnimationFrame = false;
return 0;
case kCode_c0c:
setCharacterAnimation(readTableInstructionParam(3), index);
@@ -3187,7 +3219,7 @@ int TuckerEngine::executeTableInstruction() {
startSpeechSound(_partNum * 3000 + _ptTextOffset + _speechSoundNum - 3000, kMaxSoundVolume);
_charSpeechSoundCounter = kDefaultCharSpeechSoundCounter;
_actionTextColor = 181 + index;
- if (_tableInstructionFlag == 0) {
+ if (!_tableInstructionFlag) {
_actionPosX = _tableInstructionItemNum1;
_actionPosY = _tableInstructionItemNum2;
} else {
@@ -3210,8 +3242,8 @@ int TuckerEngine::executeTableInstruction() {
return 0;
case kCode_flx:
i = readTableInstructionParam(2);
- _locationSoundsTable[i].type = 2;
- startSound(_locationSoundsTable[i].offset, i, _locationSoundsTable[i].volume);
+ _locationSoundsTable[i]._type = 2;
+ startSound(_locationSoundsTable[i]._offset, i, _locationSoundsTable[i]._volume);
return 0;
case kCode_fxx:
i = readTableInstructionParam(2);
@@ -3221,7 +3253,7 @@ int TuckerEngine::executeTableInstruction() {
return 0;
case kCode_fx:
i = readTableInstructionParam(2);
- startSound(_locationSoundsTable[i].offset, i, _locationSoundsTable[i].volume);
+ startSound(_locationSoundsTable[i]._offset, i, _locationSoundsTable[i]._volume);
_soundInstructionIndex = i;
return 0;
case kCode_gfg:
@@ -3284,12 +3316,12 @@ int TuckerEngine::executeTableInstruction() {
_csDataLoaded = false;
return 3;
case kCode_ssp:
- _tableInstructionFlag = 0;
+ _tableInstructionFlag = false;
_tableInstructionItemNum1 = readTableInstructionParam(3);
_tableInstructionItemNum2 = readTableInstructionParam(3);
return 0;
case kCode_s0p:
- _tableInstructionFlag = 1;
+ _tableInstructionFlag = true;
_tableInstructionObj1Table[index] = readTableInstructionParam(3);
_tableInstructionObj2Table[index] = readTableInstructionParam(3);
return 0;
@@ -3380,21 +3412,21 @@ int TuckerEngine::getObjectUnderCursor() {
return -1;
}
for (int i = 0; i < _locationObjectsCount; ++i) {
- if (_mousePosX + _scrollOffset + 1 <= _locationObjectsTable[i].xPos) {
+ if (_mousePosX + _scrollOffset + 1 <= _locationObjectsTable[i]._xPos) {
continue;
}
- if (_mousePosX + _scrollOffset >= _locationObjectsTable[i].xPos + _locationObjectsTable[i].xSize) {
+ if (_mousePosX + _scrollOffset >= _locationObjectsTable[i]._xPos + _locationObjectsTable[i]._xSize) {
continue;
}
- if (_mousePosY <= _locationObjectsTable[i].yPos) {
+ if (_mousePosY <= _locationObjectsTable[i]._yPos) {
continue;
}
- if (_mousePosY >= _locationObjectsTable[i].yPos + _locationObjectsTable[i].ySize) {
+ if (_mousePosY >= _locationObjectsTable[i]._yPos + _locationObjectsTable[i]._ySize) {
continue;
}
_selectedObjectType = 0;
_selectedCharacterNum = i;
- setCursorNum(_locationObjectsTable[i].cursorNum);
+ setCursorNum(_locationObjectsTable[i]._cursorNum);
return i;
}
return -1;
@@ -3405,127 +3437,127 @@ void TuckerEngine::setSelectedObjectKey() {
if (_mousePosY > 139 && _nextAction == 0) {
return;
}
- _panelLockedFlag = 1;
+ _panelLockedFlag = true;
_locationMaskCounter = 0;
_actionRequiresTwoObjects = false;
- _selectedObject.yPos = 0;
- _selectedObject.locationObject_locationNum = 0;
+ _selectedObject._yPos = 0;
+ _selectedObject._locationObjectLocationNum = 0;
_pendingActionIndex = 0;
if (_selectedObjectType == 0) {
if (_selectedObjectNum == 0) {
- _selectedObject.xPos = x;
- _selectedObject.yPos = _mousePosY;
+ _selectedObject._xPos = x;
+ _selectedObject._yPos = _mousePosY;
} else {
- _selectedObject.xPos = _locationObjectsTable[_selectedCharacterNum].standX;
- _selectedObject.yPos = _locationObjectsTable[_selectedCharacterNum].standY;
+ _selectedObject._xPos = _locationObjectsTable[_selectedCharacterNum]._standX;
+ _selectedObject._yPos = _locationObjectsTable[_selectedCharacterNum]._standY;
if (_actionVerb == 0 || _actionVerb == 8) {
- _selectedObject.locationObject_locationNum = _locationObjectsTable[_selectedCharacterNum].locationNum;
- _selectedObject.locationObject_toX = _locationObjectsTable[_selectedCharacterNum].toX;
- _selectedObject.locationObject_toY = _locationObjectsTable[_selectedCharacterNum].toY;
- _selectedObject.locationObject_toX2 = _locationObjectsTable[_selectedCharacterNum].toX2;
- _selectedObject.locationObject_toY2 = _locationObjectsTable[_selectedCharacterNum].toY2;
- _selectedObject.locationObject_toWalkX2 = _locationObjectsTable[_selectedCharacterNum].toWalkX2;
- _selectedObject.locationObject_toWalkY2 = _locationObjectsTable[_selectedCharacterNum].toWalkY2;
+ _selectedObject._locationObjectLocationNum = _locationObjectsTable[_selectedCharacterNum]._locationNum;
+ _selectedObject._locationObjectToX = _locationObjectsTable[_selectedCharacterNum]._toX;
+ _selectedObject._locationObjectToY = _locationObjectsTable[_selectedCharacterNum]._toY;
+ _selectedObject._locationObjectToX2 = _locationObjectsTable[_selectedCharacterNum]._toX2;
+ _selectedObject._locationObjectToY2 = _locationObjectsTable[_selectedCharacterNum]._toY2;
+ _selectedObject._locationObjectToWalkX2 = _locationObjectsTable[_selectedCharacterNum]._toWalkX2;
+ _selectedObject._locationObjectToWalkY2 = _locationObjectsTable[_selectedCharacterNum]._toWalkY2;
}
}
} else {
switch (_selectedObjectType) {
case 1:
- _selectedObject.xPos = _locationAnimationsTable[_selectedCharacterNum].standX;
- _selectedObject.yPos = _locationAnimationsTable[_selectedCharacterNum].standY;
+ _selectedObject._xPos = _locationAnimationsTable[_selectedCharacterNum]._standX;
+ _selectedObject._yPos = _locationAnimationsTable[_selectedCharacterNum]._standY;
break;
case 2:
- _selectedObject.xPos = _charPosTable[_selectedCharacterNum].xWalkTo;
- _selectedObject.yPos = _charPosTable[_selectedCharacterNum].yWalkTo;
+ _selectedObject._xPos = _charPosTable[_selectedCharacterNum]._xWalkTo;
+ _selectedObject._yPos = _charPosTable[_selectedCharacterNum]._yWalkTo;
break;
case 3:
- _selectedObject.xPos = _xPosCurrent;
- _selectedObject.yPos = _yPosCurrent;
+ _selectedObject._xPos = _xPosCurrent;
+ _selectedObject._yPos = _yPosCurrent;
break;
}
}
- if (_selectedObject.yPos == 0) {
- _selectedObject.xPos = x;
- _selectedObject.yPos = _mousePosY;
+ if (_selectedObject._yPos == 0) {
+ _selectedObject._xPos = x;
+ _selectedObject._yPos = _mousePosY;
}
- _selectedObjectLocationMask = testLocationMask(_selectedObject.xPos, _selectedObject.yPos);
- if (_selectedObjectLocationMask == 0 && _objectKeysLocationTable[_locationNum] == 1) {
- if (_selectedObject.yPos < _objectKeysPosYTable[_locationNum]) {
- while (_selectedObjectLocationMask == 0 && _selectedObject.yPos < _objectKeysPosYTable[_locationNum]) {
- ++_selectedObject.yPos;
- _selectedObjectLocationMask = testLocationMask(_selectedObject.xPos, _selectedObject.yPos);
+ _selectedObjectLocationMask = testLocationMask(_selectedObject._xPos, _selectedObject._yPos);
+ if (!_selectedObjectLocationMask && _objectKeysLocationTable[_locationNum] == 1) {
+ if (_selectedObject._yPos < _objectKeysPosYTable[_locationNum]) {
+ while (!_selectedObjectLocationMask && _selectedObject._yPos < _objectKeysPosYTable[_locationNum]) {
+ ++_selectedObject._yPos;
+ _selectedObjectLocationMask = testLocationMask(_selectedObject._xPos, _selectedObject._yPos);
}
} else {
- while (_selectedObjectLocationMask == 0 && _selectedObject.yPos < _objectKeysPosYTable[_locationNum]) {
- --_selectedObject.yPos;
- _selectedObjectLocationMask = testLocationMask(_selectedObject.xPos, _selectedObject.yPos);
+ while (!_selectedObjectLocationMask && _selectedObject._yPos < _objectKeysPosYTable[_locationNum]) {
+ --_selectedObject._yPos;
+ _selectedObjectLocationMask = testLocationMask(_selectedObject._xPos, _selectedObject._yPos);
}
}
}
- if (_selectedObjectLocationMask == 1) {
- _selectedObjectLocationMask = testLocationMaskArea(_xPosCurrent, _yPosCurrent, _selectedObject.xPos, _selectedObject.yPos);
- if (_selectedObjectLocationMask == 1 && _objectKeysPosXTable[_locationNum] > 0) {
- _selectedObject.xDefaultPos = _selectedObject.xPos;
- _selectedObject.yDefaultPos = _selectedObject.yPos;
- _selectedObject.xPos = _objectKeysPosXTable[_locationNum];
- _selectedObject.yPos = _objectKeysPosYTable[_locationNum];
+ if (_selectedObjectLocationMask) {
+ _selectedObjectLocationMask = testLocationMaskArea(_xPosCurrent, _yPosCurrent, _selectedObject._xPos, _selectedObject._yPos);
+ if (_selectedObjectLocationMask && _objectKeysPosXTable[_locationNum] > 0) {
+ _selectedObject._xDefaultPos = _selectedObject._xPos;
+ _selectedObject._yDefaultPos = _selectedObject._yPos;
+ _selectedObject._xPos = _objectKeysPosXTable[_locationNum];
+ _selectedObject._yPos = _objectKeysPosYTable[_locationNum];
if (_objectKeysLocationTable[_locationNum] == 1) {
- _selectedObject.xPos = _selectedObject.xDefaultPos;
+ _selectedObject._xPos = _selectedObject._xDefaultPos;
}
}
}
}
void TuckerEngine::setCharacterAnimation(int count, int spr) {
- _spritesTable[spr].animationFrame = 0;
- _spritesTable[spr].stateIndex = 0;
+ _spritesTable[spr]._animationFrame = 0;
+ _spritesTable[spr]._stateIndex = 0;
for (int i = 0; i < count; ++i) {
- while (_characterStateTable[_spritesTable[spr].stateIndex] != 99) {
- ++_spritesTable[spr].stateIndex;
+ while (_characterStateTable[_spritesTable[spr]._stateIndex] != 99) {
+ ++_spritesTable[spr]._stateIndex;
}
- ++_spritesTable[spr].stateIndex;
+ ++_spritesTable[spr]._stateIndex;
}
- _spritesTable[spr].state = _characterStateTable[_spritesTable[spr].stateIndex];
- ++_spritesTable[spr].stateIndex;
- _spritesTable[spr].animationFrame = _characterStateTable[_spritesTable[spr].stateIndex];
- ++_spritesTable[spr].stateIndex;
- _spritesTable[spr].animationData = _sprC02Table[_spritesTable[spr].state];
- _spritesTable[spr].firstFrame = READ_LE_UINT16(_spritesTable[spr].animationData);
+ _spritesTable[spr]._state = _characterStateTable[_spritesTable[spr]._stateIndex];
+ ++_spritesTable[spr]._stateIndex;
+ _spritesTable[spr]._animationFrame = _characterStateTable[_spritesTable[spr]._stateIndex];
+ ++_spritesTable[spr]._stateIndex;
+ _spritesTable[spr]._animationData = _sprC02Table[_spritesTable[spr]._state];
+ _spritesTable[spr]._firstFrame = READ_LE_UINT16(_spritesTable[spr]._animationData);
}
-int TuckerEngine::testLocationMaskArea(int xBase, int yBase, int xPos, int yPos) {
+bool TuckerEngine::testLocationMaskArea(int xBase, int yBase, int xPos, int yPos) {
while (true) {
bool loop = false;
if (yBase > yPos) {
- if (testLocationMask(xBase, yBase - 1) == 1) {
+ if (testLocationMask(xBase, yBase - 1)) {
--yBase;
loop = true;
}
} else if (yBase < yPos) {
- if (testLocationMask(xBase, yBase + 1) == 1) {
+ if (testLocationMask(xBase, yBase + 1)) {
++yBase;
loop = true;
}
}
if (xBase > xPos) {
- if (testLocationMask(xBase - 1, yBase) == 1) {
+ if (testLocationMask(xBase - 1, yBase)) {
--xBase;
loop = true;
}
} else if (xBase < xPos) {
- if (testLocationMask(xBase + 1, yBase) == 1) {
+ if (testLocationMask(xBase + 1, yBase)) {
++xBase;
loop = true;
}
}
if (xBase == xPos && yBase == yPos) {
- return 0;
+ return false;
}
if (!loop) {
break;
}
}
- return 1;
+ return true;
}
void TuckerEngine::handleMouseClickOnInventoryObject() {
@@ -3548,7 +3580,7 @@ void TuckerEngine::handleMouseClickOnInventoryObject() {
_selectedObjectType = 0;
_selectedObjectNum = 0;
_actionVerb = 0;
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
_forceRedrawPanelItems = true;
_panelState = 2;
setCursorType(1);
@@ -3573,7 +3605,7 @@ void TuckerEngine::handleMouseClickOnInventoryObject() {
_actionVerb = 0;
_selectedObjectType = 0;
_selectedObjectNum = 0;
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
}
}
break;
@@ -3585,23 +3617,23 @@ int TuckerEngine::setCharacterUnderCursor() {
return -1;
}
for (int i = 0; i < _charPosCount; ++i) {
- if (_mousePosX + _scrollOffset <= _charPosTable[i].xPos) {
+ if (_mousePosX + _scrollOffset <= _charPosTable[i]._xPos) {
continue;
}
- if (_mousePosX + _scrollOffset >= _charPosTable[i].xPos + _charPosTable[i].xSize) {
+ if (_mousePosX + _scrollOffset >= _charPosTable[i]._xPos + _charPosTable[i]._xSize) {
continue;
}
- if (_mousePosY <= _charPosTable[i].yPos) {
+ if (_mousePosY <= _charPosTable[i]._yPos) {
continue;
}
- if (_mousePosY >= _charPosTable[i].yPos + _charPosTable[i].ySize) {
+ if (_mousePosY >= _charPosTable[i]._yPos + _charPosTable[i]._ySize) {
continue;
}
- if (_charPosTable[i].flagNum == 0 || _flagsTable[_charPosTable[i].flagNum] == _charPosTable[i].flagValue) {
+ if (_charPosTable[i]._flagNum == 0 || _flagsTable[_charPosTable[i]._flagNum] == _charPosTable[i]._flagValue) {
_selectedObjectType = 2;
- _selectedCharacterDirection = _charPosTable[i].direction;
+ _selectedCharacterDirection = _charPosTable[i]._direction;
_selectedCharacterNum = i;
- return _charPosTable[i].name;
+ return _charPosTable[i]._name;
}
}
return -1;
@@ -3612,29 +3644,29 @@ int TuckerEngine::setLocationAnimationUnderCursor() {
return -1;
}
for (int i = _locationAnimationsCount - 1; i >= 0; --i) {
- if (_locationAnimationsTable[i].drawFlag == 0) {
+ if (!_locationAnimationsTable[i]._drawFlag)
continue;
- }
- int num = _locationAnimationsTable[i].graphicNum;
- if (_mousePosX + _scrollOffset + 1 <= _dataTable[num].xDest) {
+
+ int num = _locationAnimationsTable[i]._graphicNum;
+ if (_mousePosX + _scrollOffset + 1 <= _dataTable[num]._xDest) {
continue;
}
- if (_mousePosX + _scrollOffset >= _dataTable[num].xDest + _dataTable[num].xSize) {
+ if (_mousePosX + _scrollOffset >= _dataTable[num]._xDest + _dataTable[num]._xSize) {
continue;
}
- if (_mousePosY <= _dataTable[num].yDest) {
+ if (_mousePosY <= _dataTable[num]._yDest) {
continue;
}
- if (_mousePosY >= _dataTable[num].yDest + _dataTable[num].ySize) {
+ if (_mousePosY >= _dataTable[num]._yDest + _dataTable[num]._ySize) {
continue;
}
- if (_locationAnimationsTable[i].selectable == 0) {
+ if (_locationAnimationsTable[i]._selectable == 0) {
return -1;
}
_selectedObjectType = 1;
_selectedCharacterNum = i;
_selectedCharacter2Num = i;
- return _locationAnimationsTable[i].selectable;
+ return _locationAnimationsTable[i]._selectable;
}
return -1;
}
@@ -3642,14 +3674,14 @@ int TuckerEngine::setLocationAnimationUnderCursor() {
void TuckerEngine::setActionForInventoryObject() {
if (_actionVerb == 0 || _actionVerb == 2 || _actionVerb == 6 || _actionVerb == 7) {
playSpeechForAction(_actionVerb);
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
_actionRequiresTwoObjects = false;
return;
}
if (_actionVerb == 3 || _actionVerb == 4) {
if (!(_partNum == 2 && _selectedObjectNum == 19) && !(_partNum == 3 && _selectedObjectNum == 42)) {
playSpeechForAction(_actionVerb);
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
_actionRequiresTwoObjects = false;
return;
}
@@ -3659,13 +3691,13 @@ void TuckerEngine::setActionForInventoryObject() {
_currentActionObj2Num = _actionObj2Num;
_currentInfoString2SourceType = _actionObj2Type;
if (_actionVerb == 1 && _selectedObjectType == 3) {
- if (_panelLockedFlag == 1) {
+ if (_panelLockedFlag) {
if (_locationMaskType != 0) {
return;
}
- _panelLockedFlag = 0;
+ _panelLockedFlag = false;
}
- if (handleSpecialObjectSelectionSequence() == 1) {
+ if (handleSpecialObjectSelectionSequence()) {
return;
}
_speechSoundNum = _actionObj1Num + _speechSoundBaseNum;
@@ -3678,14 +3710,15 @@ void TuckerEngine::setActionForInventoryObject() {
_actionCharacterNum = 99;
setCursorType(2);
_charSpeechSoundCounter = kDefaultCharSpeechSoundCounter;
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
_actionRequiresTwoObjects = false;
return;
}
- if ((_partNum == 3 && (_actionObj1Num == 6 || _actionObj1Num == 3 || _actionObj1Num == 17)) ||
+ // Items with unary usage i.e. "Use X", rather than "Use X on Y"
+ if ((_partNum == 3 && (_actionObj1Num == 6 || _actionObj1Num == 3 || _actionObj1Num == 17 || _actionObj1Num == 33)) ||
(_partNum == 2 && _actionObj1Num == 19) ||
(_partNum == 3 && (_actionObj1Num == 42 && _selectedObjectNum == 18)) ) {
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
_actionRequiresTwoObjects = false;
_locationMaskCounter = 1;
setActionState();
@@ -3694,7 +3727,7 @@ void TuckerEngine::setActionForInventoryObject() {
if (!_actionRequiresTwoObjects) {
_actionRequiresTwoObjects = true;
} else {
- _actionVerbLocked = 0;
+ _actionVerbLocked = false;
_actionRequiresTwoObjects = false;
_locationMaskCounter = 1;
setActionState();
@@ -3754,12 +3787,12 @@ void TuckerEngine::drawSpeechText(int xStart, int y, const uint8 *dataPtr, int n
}
}
int count = 0;
- int flag = 0;
+ bool flag = false;
struct {
int w, count, offset;
} lines[5];
lines[0].offset = getPositionForLine(num, dataPtr);
- while (flag == 0 && count < 4) {
+ while (!flag && count < 4) {
int lineCharsCount, lineWidth;
flag = splitSpeechTextLines(dataPtr, lines[count].offset, x, lineCharsCount, lineWidth);
lines[count].w = lineWidth;
@@ -3788,7 +3821,7 @@ void TuckerEngine::drawSpeechText(int xStart, int y, const uint8 *dataPtr, int n
}
}
-int TuckerEngine::splitSpeechTextLines(const uint8 *dataPtr, int pos, int x, int &lineCharsCount, int &lineWidth) {
+bool TuckerEngine::splitSpeechTextLines(const uint8 *dataPtr, int pos, int x, int &lineCharsCount, int &lineWidth) {
int count = 0;
int w = 0;
lineCharsCount = 0;
@@ -3802,11 +3835,11 @@ int TuckerEngine::splitSpeechTextLines(const uint8 *dataPtr, int pos, int x, int
++count;
++pos;
}
- int ret = 0;
+ bool ret = false;
if (x + 1 > w) {
lineCharsCount = count;
lineWidth = w;
- ret = 1;
+ ret = true;
}
return ret;
}
@@ -3818,7 +3851,7 @@ void TuckerEngine::drawSpeechTextLine(const uint8 *dataPtr, int pos, int count,
x += _charWidthTable[dataPtr[pos]];
++pos;
}
- addDirtyRect(xStart, y, x - xStart, Graphics::_charset.charH);
+ addDirtyRect(xStart, y, x - xStart, Graphics::_charset._charH);
}
void TuckerEngine::redrawScreen(int offset) {
diff --git a/engines/tucker/tucker.h b/engines/tucker/tucker.h
index c9e4d986bb..adcd02b2fe 100644
--- a/engines/tucker/tucker.h
+++ b/engines/tucker/tucker.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -53,133 +53,133 @@ class RewindableAudioStream;
namespace Tucker {
struct Action {
- int key;
- int testFlag1Num;
- int testFlag1Value;
- int testFlag2Num;
- int testFlag2Value;
- int speech;
- int flipX;
- int index;
- int delay;
- int setFlagNum;
- int setFlagValue;
- int fxNum;
- int fxDelay;
+ int _key;
+ int _testFlag1Num;
+ int _testFlag1Value;
+ int _testFlag2Num;
+ int _testFlag2Value;
+ int _speech;
+ int _flipX;
+ int _index;
+ int _delay;
+ int _setFlagNum;
+ int _setFlagValue;
+ int _fxNum;
+ int _fxDelay;
};
struct Sprite {
- int state;
- int gfxBackgroundOffset;
- int updateDelay;
- int backgroundOffset;
- int needUpdate;
- int stateIndex;
- int counter;
- int disabled;
- int colorType;
- int animationFrame;
- int firstFrame;
- uint8 *animationData;
- int prevState;
- int nextAnimationFrame;
- int prevAnimationFrame;
- int defaultUpdateDelay;
- int xSource;
- int yMaxBackground;
- int flipX;
+ int _state;
+ int _gfxBackgroundOffset;
+ int _updateDelay;
+ int _backgroundOffset;
+ int _stateIndex;
+ int _counter;
+ int _colorType;
+ int _animationFrame;
+ int _firstFrame;
+ uint8 *_animationData;
+ int _prevState;
+ int _defaultUpdateDelay;
+ int _xSource;
+ int _yMaxBackground;
+ bool _disabled;
+ bool _flipX;
+ bool _needUpdate;
+ bool _nextAnimationFrame;
+ bool _prevAnimationFrame;
};
struct CharPos {
- int xPos;
- int yPos;
- int xSize;
- int ySize;
- int xWalkTo;
- int yWalkTo;
- int flagNum;
- int flagValue;
- int direction;
- int name;
- int description;
+ int _xPos;
+ int _yPos;
+ int _xSize;
+ int _ySize;
+ int _xWalkTo;
+ int _yWalkTo;
+ int _flagNum;
+ int _flagValue;
+ int _direction;
+ int _name;
+ int _description;
};
struct SpriteFrame {
- int sourceOffset;
- int xOffset;
- int yOffset;
- int xSize;
- int ySize;
+ int _sourceOffset;
+ int _xOffset;
+ int _yOffset;
+ int _xSize;
+ int _ySize;
};
struct SpriteAnimation {
- int numParts;
- int rotateFlag;
- int firstFrameIndex;
+ int _numParts;
+ int _rotateFlag; // Useless variable
+ int _firstFrameIndex;
};
struct Data {
- int sourceOffset;
- int xSize;
- int ySize;
- int xDest;
- int yDest;
- int index;
+ int _sourceOffset;
+ int _xSize;
+ int _ySize;
+ int _xDest;
+ int _yDest;
+ int _index;
};
struct LocationAnimation {
- int graphicNum;
- int animInitCounter;
- int animCurrentCounter;
- int animLastCounter;
- int getFlag;
- int inventoryNum;
- int flagNum;
- int flagValue;
- int selectable;
- int standX;
- int standY;
- int drawFlag;
+ int _graphicNum;
+ int _animInitCounter;
+ int _animCurrentCounter;
+ int _animLastCounter;
+ int _getFlag;
+ int _inventoryNum;
+ int _flagNum;
+ int _flagValue;
+ int _selectable;
+ int _standX;
+ int _standY;
+ bool _drawFlag;
};
struct LocationObject {
- int xPos;
- int yPos;
- int xSize;
- int ySize;
- int textNum;
- int locationNum;
- int toX;
- int toY;
- int toX2;
- int toY2;
- int toWalkX2;
- int toWalkY2;
- int standX;
- int standY;
- int cursorNum;
+ int _xPos;
+ int _yPos;
+ int _xSize;
+ int _ySize;
+ int _textNum;
+ int _locationNum;
+ int _toX;
+ int _toY;
+ int _toX2;
+ int _toY2;
+ int _toWalkX2;
+ int _toWalkY2;
+ int _standX;
+ int _standY;
+ int _cursorNum;
};
struct LocationSound {
- int startFxSpriteState;
- int startFxSpriteNum;
- int updateType;
- int stopFxSpriteState;
- int stopFxSpriteNum;
- int offset;
- int type;
- int volume;
- int flagValueStartFx;
- int flagValueStopFx;
- int flagNum;
- int num;
+ int _startFxSpriteState;
+ int _startFxSpriteNum;
+ int _updateType;
+ int _stopFxSpriteState;
+ int _stopFxSpriteNum;
+ int _offset;
+ int _type;
+ int _volume;
+ int _flagValueStartFx;
+ int _flagValueStopFx;
+ int _flagNum;
+ int _num;
};
struct LocationMusic {
- int flag;
- int offset;
- int volume;
- int num;
+ int _flag;
+ int _offset;
+ int _volume;
+ int _num;
};
enum {
@@ -232,7 +232,7 @@ enum CompressedSoundType {
class CompressedSound {
public:
- CompressedSound() : _compressedSoundType(-1) {}
+ CompressedSound() : _compressedSoundType(-1), _compressedSoundFlags(0) {}
void openFile();
void closeFile();
@@ -284,7 +284,7 @@ protected:
int getRandomNumber();
void allocateBuffers();
void freeBuffers();
- void restart();
+ void resetVariables();
void mainLoop();
void waitForTimer(int ticksCount);
void parseEvents();
@@ -356,7 +356,7 @@ protected:
void drawCreditsString(int x, int y, int num);
void updateCharSpeechSound(bool displayText);
void updateItemsGfxColors(int bit0, int bit7);
- int testLocationMask(int x, int y);
+ bool testLocationMask(int x, int y);
int getStringWidth(int num, const uint8 *ptr);
int getPositionForLine(int num, const uint8 *ptr);
void resetCharacterAnimationIndex(int count);
@@ -369,7 +369,7 @@ protected:
int getObjectUnderCursor();
void setSelectedObjectKey();
void setCharacterAnimation(int count, int spr);
- int testLocationMaskArea(int xBase, int yBase, int xPos, int yPos);
+ bool testLocationMaskArea(int xBase, int yBase, int xPos, int yPos);
void handleMouseClickOnInventoryObject();
int setCharacterUnderCursor();
int setLocationAnimationUnderCursor();
@@ -377,7 +377,7 @@ protected:
void setActionState();
void playSpeechForAction(int i);
void drawSpeechText(int xStart, int y, const uint8 *dataPtr, int num, int color);
- int splitSpeechTextLines(const uint8 *dataPtr, int pos, int x, int &lineCharsCount, int &lineWidth);
+ bool splitSpeechTextLines(const uint8 *dataPtr, int pos, int x, int &lineCharsCount, int &lineWidth);
void drawSpeechTextLine(const uint8 *dataPtr, int pos, int count, int x, int y, uint8 color);
void redrawScreen(int offset);
void redrawScreenRect(const Common::Rect &clip, const Common::Rect &dirty);
@@ -578,7 +578,7 @@ protected:
void handleMeanwhileSequence();
void handleMapSequence();
void copyMapRect(int x, int y, int w, int h);
- int handleSpecialObjectSelectionSequence();
+ bool handleSpecialObjectSelectionSequence();
uint8 *loadFile(const char *filename, uint8 *p);
void loadImage(const char *filename, uint8 *dst, int a);
@@ -630,14 +630,14 @@ protected:
bool _gameDebug;
bool _displayGameHints;
int _execData3Counter;
- bool _displaySpeechText;
int _currentSaveLoadGameState;
-
int _gameHintsIndex;
int _gameHintsCounter;
- int _gameHintsDisplayText;
int _gameHintsStringNum;
+ bool _displaySpeechText;
+ bool _displayHintsText;
+
int _fileLoadSize;
uint8 *_loadTempBuf;
uint8 *_cursorGfxBuf;
@@ -685,7 +685,7 @@ protected:
int _switchPanelCounter;
int _conversationOptionsCount;
bool _fadedPanel;
- int _panelLockedFlag;
+ bool _panelLockedFlag;
int _conversationOptionLinesCount;
int _inventoryItemsState[50];
int _inventoryObjectsList[40];
@@ -742,22 +742,22 @@ protected:
int _actionObj1Type, _actionObj2Type;
int _actionObj1Num, _actionObj2Num;
bool _actionRequiresTwoObjects;
- int _actionVerbLocked;
+ bool _actionVerbLocked;
int _actionPosX;
int _actionPosY;
- int _selectedObjectLocationMask;
+ bool _selectedObjectLocationMask;
struct {
- int xDefaultPos;
- int yDefaultPos;
- int xPos;
- int yPos;
- int locationObject_locationNum;
- int locationObject_toX;
- int locationObject_toY;
- int locationObject_toX2;
- int locationObject_toY2;
- int locationObject_toWalkX2;
- int locationObject_toWalkY2;
+ int _xDefaultPos;
+ int _yDefaultPos;
+ int _xPos;
+ int _yPos;
+ int _locationObjectLocationNum;
+ int _locationObjectToX;
+ int _locationObjectToY;
+ int _locationObjectToX2;
+ int _locationObjectToY2;
+ int _locationObjectToWalkX2;
+ int _locationObjectToWalkY2;
} _selectedObject;
int _selectedCharacterDirection;
int _selectedCharacter2Num;
@@ -780,7 +780,7 @@ protected:
const uint8 *_tableInstructionsPtr;
int _tableInstructionObj1Table[6];
int _tableInstructionObj2Table[6];
- int _tableInstructionFlag;
+ bool _tableInstructionFlag;
int _tableInstructionItemNum1, _tableInstructionItemNum2;
int _instructionsActionsTable[6];
bool _validInstructionId;
@@ -810,21 +810,21 @@ protected:
int _characterAnimationIndex;
int _characterFacingDirection;
int _characterPrevFacingDirection;
- int _characterBackFrontFacing;
- int _characterPrevBackFrontFacing;
+ bool _characterBackFrontFacing;
+ bool _characterPrevBackFrontFacing;
int _characterAnimationNum;
int _noCharacterAnimationChange;
- int _changeBackgroundSprite;
int _characterSpriteAnimationFrameCounter;
- int _locationMaskIgnore;
+ bool _locationMaskIgnore;
int _locationMaskType;
int _locationMaskCounter;
- int _updateSpriteFlag1;
- int _updateSpriteFlag2;
int _handleMapCounter;
bool _noPositionChangeAfterMap;
+ bool _changeBackgroundSprite;
+ bool _updateSpriteFlag1;
+ bool _updateSpriteFlag2;
- int _mirroredDrawing;
+ bool _mirroredDrawing;
uint8 *_loadLocBufPtr;
uint8 *_backgroundSpriteDataPtr;
int _locationHeight;
@@ -848,7 +848,7 @@ protected:
int _updateLocation14ObjNum[10];
int _updateLocation14Delay[10];
int _updateLocationCounter2;
- int _updateLocationFlag;
+ bool _updateLocationFlag;
int _updateLocation70StringLen;
uint8 _updateLocation70String[20];
diff --git a/engines/util.h b/engines/util.h
index 53899cb341..0e7b1e118b 100644
--- a/engines/util.h
+++ b/engines/util.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef ENGINES_UTIL_H
diff --git a/engines/voyeur/animation.cpp b/engines/voyeur/animation.cpp
new file mode 100644
index 0000000000..c1ded75f02
--- /dev/null
+++ b/engines/voyeur/animation.cpp
@@ -0,0 +1,501 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/animation.h"
+#include "voyeur/staticres.h"
+#include "voyeur/voyeur.h"
+#include "common/endian.h"
+#include "common/memstream.h"
+#include "common/system.h"
+#include "audio/decoders/raw.h"
+#include "graphics/surface.h"
+
+namespace Voyeur {
+
+// Number of audio frames to keep audio track topped up when playing back video
+#define SOUND_FRAMES_READAHEAD 3
+
+RL2Decoder::RL2Decoder(Audio::Mixer::SoundType soundType) : _soundType(soundType) {
+ _paletteStart = 0;
+ _fileStream = nullptr;
+ _soundFrameNumber = -1;
+
+ _audioTrack = nullptr;
+ _videoTrack = nullptr;
+}
+
+RL2Decoder::~RL2Decoder() {
+ close();
+}
+
+bool RL2Decoder::loadVideo(int videoId) {
+ Common::String filename = Common::String::format("%s.rl2",
+ ::Voyeur::SZ_FILENAMES[videoId * 2]);
+ return loadRL2File(filename, false);
+}
+
+bool RL2Decoder::loadRL2File(const Common::String &file, bool palFlag) {
+ bool result = VideoDecoder::loadFile(file);
+ _paletteStart = palFlag ? 0 : 128;
+ return result;
+}
+
+bool RL2Decoder::loadStream(Common::SeekableReadStream *stream) {
+ close();
+
+ // Load basic file information
+ _fileStream = stream;
+ _header.load(stream);
+ _paletteStart = 0;
+
+ // Check RL2 magic number
+ if (!_header.isValid()) {
+ warning("RL2Decoder::loadStream(): attempted to load non-RL2 data (0x%08X)", _header._signature);
+ return false;
+ }
+
+ // Add an audio track if sound is present
+ _audioTrack = nullptr;
+ if (_header._soundRate) {
+ _audioTrack = new RL2AudioTrack(_header, stream, _soundType);
+ addTrack(_audioTrack);
+ }
+
+ // Create a video track
+ _videoTrack = new RL2VideoTrack(_header, _audioTrack, stream);
+ addTrack(_videoTrack);
+
+ // Load the offset/sizes of the video's audio data
+ _soundFrames.reserve(_header._numFrames);
+ for (int frameNumber = 0; frameNumber < _header._numFrames; ++frameNumber) {
+ int offset = _header._frameOffsets[frameNumber];
+ int size = _header._frameSoundSizes[frameNumber];
+
+ _soundFrames.push_back(SoundFrame(offset, size));
+ }
+
+ return true;
+}
+
+const Common::List<Common::Rect> *RL2Decoder::getDirtyRects() const {
+ if (_videoTrack)
+ return _videoTrack->getDirtyRects();
+
+ return nullptr;
+}
+
+void RL2Decoder::clearDirtyRects() {
+ if (_videoTrack)
+ _videoTrack->clearDirtyRects();
+}
+
+void RL2Decoder::copyDirtyRectsToBuffer(uint8 *dst, uint pitch) {
+ if (_videoTrack)
+ _videoTrack->copyDirtyRectsToBuffer(dst, pitch);
+}
+
+void RL2Decoder::readNextPacket() {
+ int frameNumber = getCurFrame();
+ RL2AudioTrack *audioTrack = getRL2AudioTrack();
+
+ // Handle queueing sound data
+ if (_soundFrameNumber == -1)
+ _soundFrameNumber = (frameNumber == -1) ? 0 : frameNumber;
+
+ while (audioTrack->numQueuedStreams() < SOUND_FRAMES_READAHEAD &&
+ (_soundFrameNumber < (int)_soundFrames.size())) {
+ _fileStream->seek(_soundFrames[_soundFrameNumber]._offset);
+ audioTrack->queueSound(_fileStream, _soundFrames[_soundFrameNumber]._size);
+ ++_soundFrameNumber;
+ }
+}
+
+bool RL2Decoder::seekIntern(const Audio::Timestamp &where) {
+ _soundFrameNumber = -1;
+ return VideoDecoder::seekIntern(where);
+}
+
+void RL2Decoder::close() {
+ VideoDecoder::close();
+ delete _fileStream;
+ _fileStream = nullptr;
+ _soundFrameNumber = -1;
+}
+
+/*------------------------------------------------------------------------*/
+
+RL2Decoder::SoundFrame::SoundFrame(int offset, int size) {
+ _offset = offset;
+ _size = size;
+}
+
+/*------------------------------------------------------------------------*/
+
+RL2Decoder::RL2FileHeader::RL2FileHeader() {
+ _frameOffsets = nullptr;
+ _frameSoundSizes = nullptr;
+
+ _channels = 0;
+ _colorCount = 0;
+ _numFrames = 0;
+ _rate = 0;
+ _soundRate = 0;
+ _videoBase = 0;
+ _backSize = 0;
+ _signature = MKTAG('N', 'O', 'N', 'E');
+ _form = 0;
+ _dataSize = 0;
+ _method = 0;
+ _defSoundSize = 0;
+}
+
+RL2Decoder::RL2FileHeader::~RL2FileHeader() {
+ delete[] _frameOffsets;
+ delete[] _frameSoundSizes;
+}
+
+void RL2Decoder::RL2FileHeader::load(Common::SeekableReadStream *stream) {
+ stream->seek(0);
+
+ _form = stream->readUint32LE();
+ _backSize = stream->readUint32LE();
+ _signature = stream->readUint32BE();
+
+ if (!isValid())
+ return;
+
+ _dataSize = stream->readUint32LE();
+ _numFrames = stream->readUint32LE();
+ _method = stream->readUint16LE();
+ _soundRate = stream->readUint16LE();
+ _rate = stream->readUint16LE();
+ _channels = stream->readUint16LE();
+ _defSoundSize = stream->readUint16LE();
+ _videoBase = stream->readUint16LE();
+ _colorCount = stream->readUint32LE();
+ assert(_colorCount <= 256);
+
+ stream->read(_palette, 768);
+
+ // Skip over background frame, if any, and the list of overall frame sizes (which we don't use)
+ stream->skip(_backSize + 4 * _numFrames);
+
+ // Load frame offsets
+ delete[] _frameOffsets;
+ _frameOffsets = new uint32[_numFrames];
+ for (int i = 0; i < _numFrames; ++i)
+ _frameOffsets[i] = stream->readUint32LE();
+
+ // Load the size of the sound portion of each frame
+ delete[] _frameSoundSizes;
+ _frameSoundSizes = new int[_numFrames];
+ for (int i = 0; i < _numFrames; ++i)
+ _frameSoundSizes[i] = stream->readUint32LE() & 0xffff;
+}
+
+bool RL2Decoder::RL2FileHeader::isValid() const {
+ return _signature == MKTAG('R','L','V','2') || _signature == MKTAG('R','L','V','3');
+}
+
+Common::Rational RL2Decoder::RL2FileHeader::getFrameRate() const {
+ return (_soundRate > 0) ? Common::Rational(_rate, _defSoundSize) :
+ Common::Rational(11025, 1103);
+}
+
+/*------------------------------------------------------------------------*/
+
+RL2Decoder::RL2VideoTrack::RL2VideoTrack(const RL2FileHeader &header, RL2AudioTrack *audioTrack,
+ Common::SeekableReadStream *stream): _header(header), _fileStream(stream) {
+
+ _frameOffsets = nullptr;
+
+ // Set up surfaces
+ _surface = new Graphics::Surface();
+ _surface->create(320, 200, Graphics::PixelFormat::createFormatCLUT8());
+ _backSurface = nullptr;
+
+ _hasBackFrame = header._backSize != 0;
+ if (_hasBackFrame)
+ initBackSurface();
+
+ _videoBase = header._videoBase;
+ _dirtyPalette = header._colorCount > 0;
+
+ _curFrame = -1;
+ _initialFrame = true;
+}
+
+RL2Decoder::RL2VideoTrack::~RL2VideoTrack() {
+ // Free surfaces
+ _surface->free();
+ delete _surface;
+ if (_backSurface) {
+ _backSurface->free();
+ delete _backSurface;
+ }
+}
+
+void RL2Decoder::RL2VideoTrack::initBackSurface() {
+ _backSurface = new Graphics::Surface();
+ _backSurface->create(320, 200, Graphics::PixelFormat::createFormatCLUT8());
+}
+
+bool RL2Decoder::RL2VideoTrack::seek(const Audio::Timestamp &time) {
+ int frame = getFrameAtTime(time);
+
+ if (frame < 0 || frame >= _header._numFrames)
+ return false;
+
+ _curFrame = frame;
+ return true;
+}
+
+uint16 RL2Decoder::RL2VideoTrack::getWidth() const {
+ return _surface->w;
+}
+
+uint16 RL2Decoder::RL2VideoTrack::getHeight() const {
+ return _surface->h;
+}
+
+Graphics::PixelFormat RL2Decoder::RL2VideoTrack::getPixelFormat() const {
+ return _surface->format;
+}
+
+const Graphics::Surface *RL2Decoder::RL2VideoTrack::decodeNextFrame() {
+ if (_initialFrame && _hasBackFrame) {
+ // Read in the initial background frame
+ _fileStream->seek(0x324);
+ rl2DecodeFrameWithoutTransparency(0);
+
+ Common::copy((byte *)_surface->getPixels(), (byte *)_surface->getPixels() + (320 * 200),
+ (byte *)_backSurface->getPixels());
+ _dirtyRects.push_back(Common::Rect(0, 0, _surface->w, _surface->h));
+ _initialFrame = false;
+ }
+
+ // Move to the next frame data
+ _fileStream->seek(_header._frameOffsets[++_curFrame]);
+
+ // If there's any sound data, pass it to the audio track
+ _fileStream->seek(_header._frameSoundSizes[_curFrame], SEEK_CUR);
+
+ // Decode the graphic data using the appropriate method depending on whether the animation
+ // has a background or just raw frames without any background transparency
+ if (_backSurface) {
+ rl2DecodeFrameWithTransparency(_videoBase);
+ } else {
+ rl2DecodeFrameWithoutTransparency(_videoBase);
+ }
+
+ return _surface;
+}
+
+void RL2Decoder::RL2VideoTrack::copyDirtyRectsToBuffer(uint8 *dst, uint pitch) {
+ for (Common::List<Common::Rect>::const_iterator it = _dirtyRects.begin(); it != _dirtyRects.end(); ++it) {
+ for (int y = (*it).top; y < (*it).bottom; ++y) {
+ const int x = (*it).left;
+ memcpy(dst + y * pitch + x, (byte *)_surface->getPixels() + y * getWidth() + x, (*it).right - x);
+ }
+ }
+
+ clearDirtyRects();
+}
+
+void RL2Decoder::RL2VideoTrack::copyFrame(uint8 *data) {
+ memcpy((byte *)_surface->getPixels(), data, getWidth() * getHeight());
+
+ // Redraw
+ _dirtyRects.clear();
+ _dirtyRects.push_back(Common::Rect(0, 0, getWidth(), getHeight()));
+}
+
+void RL2Decoder::RL2VideoTrack::rl2DecodeFrameWithoutTransparency(int screenOffset) {
+ if (screenOffset == -1)
+ screenOffset = _videoBase;
+ int frameSize = _surface->w * _surface->h - screenOffset;
+ byte *destP = (byte *)_surface->getPixels();
+
+ // Main frame decode loop
+ byte nextByte;
+ for (;;) {
+ nextByte = _fileStream->readByte();
+
+ if (nextByte < 0x80) {
+ // Simple byte to copy to output
+ assert(frameSize > 0);
+ *destP++ = nextByte;
+ --frameSize;
+ } else if (nextByte > 0x80) {
+ // Lower 7 bits a run length for the following byte
+ int runLength = _fileStream->readByte();
+ runLength = MIN(runLength, frameSize);
+
+ Common::fill(destP, destP + runLength, nextByte & 0x7f);
+ destP += runLength;
+ frameSize -= runLength;
+ } else {
+ // Follow byte run length for zeroes. If zero, indicates end of image
+ int runLength = _fileStream->readByte();
+ if (runLength == 0)
+ break;
+
+ runLength = MIN(runLength, frameSize);
+ Common::fill(destP, destP + runLength, 0);
+ destP += runLength;
+ frameSize -= runLength;
+ }
+ }
+
+ // If there's any remaining screen area, zero it out
+ byte *endP = (byte *)_surface->getPixels() + _surface->w * _surface->h;
+ if (destP != endP)
+ Common::fill(destP, endP, 0);
+}
+
+void RL2Decoder::RL2VideoTrack::rl2DecodeFrameWithTransparency(int screenOffset) {
+ int frameSize = _surface->w * _surface->h - screenOffset;
+ byte *refP = (byte *)_backSurface->getPixels();
+ byte *destP = (byte *)_surface->getPixels();
+
+ // If there's a screen offset, copy unchanged initial pixels from reference surface
+ if (screenOffset > 0)
+ Common::copy(refP, refP + screenOffset, destP);
+
+ // Main decode loop
+ while (frameSize > 0) {
+ byte nextByte = _fileStream->readByte();
+
+ if (nextByte == 0) {
+ // Move one single byte from reference surface
+ assert(frameSize > 0);
+ destP[screenOffset] = refP[screenOffset];
+ ++screenOffset;
+ --frameSize;
+ } else if (nextByte < 0x80) {
+ // Single 7-bit pixel to output (128-255)
+ assert(frameSize > 0);
+ destP[screenOffset] = nextByte | 0x80;
+ ++screenOffset;
+ --frameSize;
+ } else if (nextByte == 0x80) {
+ int runLength = _fileStream->readByte();
+ if (runLength == 0)
+ return;
+
+ // Run length of transparency (i.e. pixels to copy from reference frame)
+ runLength = MIN(runLength, frameSize);
+
+ Common::copy(refP + screenOffset, refP + screenOffset + runLength, destP + screenOffset);
+ screenOffset += runLength;
+ frameSize -= runLength;
+ } else {
+ // Run length of a single pixel value
+ int runLength = _fileStream->readByte();
+ runLength = MIN(runLength, frameSize);
+
+ Common::fill(destP + screenOffset, destP + screenOffset + runLength, nextByte);
+ screenOffset += runLength;
+ frameSize -= runLength;
+ }
+ }
+
+ // If there's a remaining section of the screen not covered, copy it from reference surface
+ if (screenOffset < (_surface->w * _surface->h))
+ Common::copy(refP + screenOffset, refP + (_surface->w * _surface->h), destP + screenOffset);
+}
+
+Graphics::Surface *RL2Decoder::RL2VideoTrack::getBackSurface() {
+ if (!_backSurface)
+ initBackSurface();
+
+ return _backSurface;
+}
+
+/*------------------------------------------------------------------------*/
+
+RL2Decoder::RL2AudioTrack::RL2AudioTrack(const RL2FileHeader &header, Common::SeekableReadStream *stream, Audio::Mixer::SoundType soundType):
+ _header(header), _soundType(soundType) {
+ // Create audio straem for the audio track
+ _audStream = Audio::makeQueuingAudioStream(_header._rate, _header._channels == 2);
+}
+
+RL2Decoder::RL2AudioTrack::~RL2AudioTrack() {
+ delete _audStream;
+}
+
+void RL2Decoder::RL2AudioTrack::queueSound(Common::SeekableReadStream *stream, int size) {
+ // Queue the sound data
+ byte *data = (byte *)malloc(size);
+ stream->read(data, size);
+ Common::MemoryReadStream *memoryStream = new Common::MemoryReadStream(data, size,
+ DisposeAfterUse::YES);
+
+ _audStream->queueAudioStream(Audio::makeRawStream(memoryStream, _header._rate,
+ Audio::FLAG_UNSIGNED, DisposeAfterUse::YES), DisposeAfterUse::YES);
+}
+
+Audio::AudioStream *RL2Decoder::RL2AudioTrack::getAudioStream() const {
+ return _audStream;
+}
+
+void RL2Decoder::play(VoyeurEngine *vm, int resourceOffset,
+ byte *frames, byte *imgPos) {
+ vm->flipPageAndWait();
+ int paletteStart = getPaletteStart();
+ int paletteCount = getPaletteCount();
+
+ PictureResource videoFrame(getRL2VideoTrack()->getBackSurface());
+ int picCtr = 0;
+ while (!vm->shouldQuit() && !endOfVideo() && !vm->_eventsManager->_mouseClicked) {
+ if (hasDirtyPalette()) {
+ const byte *palette = getPalette();
+
+ vm->_graphicsManager->setPalette128(palette, paletteStart, paletteCount);
+ }
+
+ if (needsUpdate()) {
+ if (frames) {
+ // If reached a point where a new background is needed, load it
+ // and copy over to the video decoder
+ if (getCurFrame() >= READ_LE_UINT16(frames + picCtr * 4)) {
+ PictureResource *newPic = vm->_bVoy->boltEntry(0x302 + picCtr)._picResource;
+ Common::Point pt(READ_LE_UINT16(imgPos + 4 * picCtr) - 32,
+ READ_LE_UINT16(imgPos + 4 * picCtr + 2) - 20);
+
+ vm->_graphicsManager->sDrawPic(newPic, &videoFrame, pt);
+ ++picCtr;
+ }
+ }
+
+ // Decode the next frame and display
+ const Graphics::Surface *frame = decodeNextFrame();
+ Common::copy((const byte *)frame->getPixels(), (const byte *)frame->getPixels() + 320 * 200,
+ (byte *)vm->_graphicsManager->_screenSurface.getPixels());
+ }
+
+ vm->_eventsManager->getMouseInfo();
+ g_system->delayMillis(10);
+ }
+}
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/animation.h b/engines/voyeur/animation.h
new file mode 100644
index 0000000000..b17e998214
--- /dev/null
+++ b/engines/voyeur/animation.h
@@ -0,0 +1,195 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VOYEUR_ANIMATION_H
+#define VOYEUR_ANIMATION_H
+
+#include "video/video_decoder.h"
+#include "audio/audiostream.h"
+#include "audio/mixer.h"
+#include "audio/timestamp.h"
+#include "common/array.h"
+#include "common/list.h"
+#include "common/rect.h"
+#include "common/stream.h"
+#include "voyeur/files.h"
+
+namespace Voyeur {
+
+class VoyeurEngine;
+
+/**
+ * Decoder for RL2 videos.
+ *
+ * Video decoder used in engines:
+ * - voyeur
+ */
+class RL2Decoder : public Video::VideoDecoder {
+private:
+ class RL2FileHeader {
+ public:
+ RL2FileHeader();
+ ~RL2FileHeader();
+
+ int _channels;
+ int _colorCount;
+ int _numFrames;
+ int _rate;
+ int _soundRate;
+ int _videoBase;
+ int *_frameSoundSizes;
+
+ uint32 _backSize;
+ uint32 _signature;
+ uint32 *_frameOffsets;
+
+ byte _palette[768];
+
+ void load(Common::SeekableReadStream *stream);
+ Common::Rational getFrameRate() const;
+ bool isValid() const;
+
+ private:
+ uint32 _form; // Unused variable
+ uint32 _dataSize; // Unused variable
+ int _method; // Unused variable
+ int _defSoundSize;
+ };
+
+ class SoundFrame {
+ public:
+ int _offset;
+ int _size;
+
+ SoundFrame(int offset, int size);
+ };
+
+ class RL2AudioTrack : public AudioTrack {
+ private:
+ Audio::Mixer::SoundType _soundType;
+ const RL2FileHeader &_header;
+ Audio::QueuingAudioStream *_audStream;
+ protected:
+ Audio::AudioStream *getAudioStream() const;
+ public:
+ RL2AudioTrack(const RL2FileHeader &header, Common::SeekableReadStream *stream,
+ Audio::Mixer::SoundType soundType);
+ ~RL2AudioTrack();
+
+ Audio::Mixer::SoundType getSoundType() const { return _soundType; }
+ int numQueuedStreams() const { return _audStream->numQueuedStreams(); }
+ virtual bool isSeekable() const { return true; }
+ virtual bool seek(const Audio::Timestamp &time) { return true; }
+
+ void queueSound(Common::SeekableReadStream *stream, int size);
+ };
+
+ class RL2VideoTrack : public FixedRateVideoTrack {
+ public:
+ RL2VideoTrack(const RL2FileHeader &header, RL2AudioTrack *audioTrack,
+ Common::SeekableReadStream *stream);
+ ~RL2VideoTrack();
+
+ uint16 getWidth() const;
+ uint16 getHeight() const;
+ Graphics::Surface *getSurface() { return _surface; }
+ Graphics::Surface *getBackSurface();
+ Graphics::PixelFormat getPixelFormat() const;
+ int getCurFrame() const { return _curFrame; }
+ int getFrameCount() const { return _header._numFrames; }
+ const Graphics::Surface *decodeNextFrame();
+ const byte *getPalette() const { _dirtyPalette = false; return _header._palette; }
+ int getPaletteCount() const { return _header._colorCount; }
+ bool hasDirtyPalette() const { return _dirtyPalette; }
+ const Common::List<Common::Rect> *getDirtyRects() const { return &_dirtyRects; }
+ void clearDirtyRects() { _dirtyRects.clear(); }
+ void copyDirtyRectsToBuffer(uint8 *dst, uint pitch);
+
+ virtual Common::Rational getFrameRate() const { return _header.getFrameRate(); }
+ virtual bool isSeekable() const { return true; }
+ virtual bool seek(const Audio::Timestamp &time);
+ private:
+ Common::SeekableReadStream *_fileStream;
+ const RL2FileHeader &_header;
+ Graphics::Surface *_surface;
+ Graphics::Surface *_backSurface;
+ bool _hasBackFrame;
+
+ mutable bool _dirtyPalette;
+
+ bool _initialFrame;
+ int _curFrame;
+ uint32 _videoBase;
+ uint32 *_frameOffsets;
+
+ Common::List<Common::Rect> _dirtyRects;
+
+ void copyFrame(uint8 *data);
+ void rl2DecodeFrameWithTransparency(int screenOffset);
+ void rl2DecodeFrameWithoutTransparency(int screenOffset = -1);
+ void initBackSurface();
+ };
+
+private:
+ RL2AudioTrack *_audioTrack;
+ RL2VideoTrack *_videoTrack;
+ Common::SeekableReadStream *_fileStream;
+ Audio::Mixer::SoundType _soundType;
+ RL2FileHeader _header;
+ int _paletteStart;
+ Common::Array<SoundFrame> _soundFrames;
+ int _soundFrameNumber;
+ const Common::List<Common::Rect> *getDirtyRects() const;
+
+ void clearDirtyRects();
+ void copyDirtyRectsToBuffer(uint8 *dst, uint pitch);
+ int getPaletteStart() const { return _paletteStart; }
+ const RL2FileHeader &getHeader() { return _header; }
+ virtual void readNextPacket();
+ virtual bool seekIntern(const Audio::Timestamp &time);
+
+public:
+ RL2Decoder(Audio::Mixer::SoundType soundType = Audio::Mixer::kPlainSoundType);
+ virtual ~RL2Decoder();
+
+ virtual void close();
+
+ bool loadStream(Common::SeekableReadStream *stream);
+ bool loadRL2File(const Common::String &file, bool palFlag);
+ bool loadVideo(int videoId);
+ int getPaletteCount() const { return _header._colorCount; }
+
+ /**
+ * Play back a given Voyeur RL2 video
+ * @param vm Engine reference
+ * @param resourceOffset Starting resource to use for frame pictures
+ * @param frames Optional frame numbers resource for when to apply image data
+ * @param imgPos Position to draw image data
+ */
+ void play(VoyeurEngine *vm, int resourceOffset = 0, byte *frames = NULL, byte *imgPos = NULL);
+ RL2VideoTrack *getRL2VideoTrack() { return _videoTrack; }
+ RL2AudioTrack *getRL2AudioTrack() { return _audioTrack; }
+};
+
+} // End of namespace Voyeur
+
+#endif /* VOYEUR_ANIMATION_H */
diff --git a/engines/voyeur/configure.engine b/engines/voyeur/configure.engine
new file mode 100644
index 0000000000..23891fccb7
--- /dev/null
+++ b/engines/voyeur/configure.engine
@@ -0,0 +1,4 @@
+
+# This file is included from the main "configure" script
+# add_engine [name] [desc] [build-by-default] [subengines] [base games] [deps]
+add_engine voyeur "Voyeur" no
diff --git a/engines/voyeur/data.cpp b/engines/voyeur/data.cpp
new file mode 100644
index 0000000000..cc0b81a313
--- /dev/null
+++ b/engines/voyeur/data.cpp
@@ -0,0 +1,371 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/data.h"
+#include "voyeur/voyeur.h"
+
+namespace Voyeur {
+
+void VoyeurEvent::synchronize(Common::Serializer &s) {
+ s.syncAsByte(_hour);
+ s.syncAsByte(_minute);
+ s.syncAsByte(_isAM);
+ s.syncAsByte(_type);
+ s.syncAsSint16LE(_audioVideoId);
+ s.syncAsSint16LE(_computerOn);
+ s.syncAsSint16LE(_computerOff);
+ s.syncAsSint16LE(_dead);
+}
+
+/*------------------------------------------------------------------------*/
+
+SVoy::SVoy(VoyeurEngine *vm):_vm(vm) {
+ // Initialize all the data fields
+ _abortInterface = false;
+ _isAM = false;
+ Common::fill(&_phoneCallsReceived[0], &_phoneCallsReceived[5], false);
+ Common::fill(&_roomHotspotsEnabled[0], &_roomHotspotsEnabled[20], false);
+ _victimMurdered = false;
+
+ _audioVisualStartTime = 0;
+ _audioVisualDuration = 0;
+ _boltGroupId2 = 0;
+ _computerTextId = -1;
+ _computerTimeMin = _computerTimeMax = 0;
+ _eventCount = 0;
+ _fadingStep1 = 0;
+ _fadingStep2 = 0;
+ _fadingType = 0;
+ _incriminatedVictimNumber = 0;
+ _musicStartTime = 0;
+ _playStampMode = 0;
+ _switchBGNum = 0;
+ _transitionId = 0;
+ _victimNumber = 0;
+ _videoEventId = 0;
+ _vocSecondsOffset = 0;
+ _RTANum = 0;
+ _RTVLimit = 0;
+ _RTVNum = 0;
+ _viewBounds = nullptr;
+ Common::fill(&_evPicPtrs[0], &_evPicPtrs[6], (PictureResource *)nullptr);
+ Common::fill(&_evCmPtrs[0], &_evCmPtrs[6], (CMapResource *)nullptr);
+ _policeEvent = 0;
+
+ _eventFlags = EVTFLAG_TIME_DISABLED;
+ _fadingAmount1 = _fadingAmount2 = 127;
+ _murderThreshold = 9999;
+ _aptLoadMode = -1;
+ _eventFlags |= EVTFLAG_100;
+ _totalPhoneCalls = 0;
+
+ for (int i = 0; i < 6; i++)
+ _evPicPtrs[i] = nullptr;
+ for (int i = 0; i < 1000; i++) {
+ _events[i]._hour = 0;
+ _events[i]._minute = 0;
+ _events[i]._isAM = true;
+ _events[i]._type = EVTYPE_NONE;
+ _events[i]._audioVideoId = -1;
+ _events[i]._computerOn = 0;
+ _events[i]._computerOff = 0;
+ _events[i]._dead = 0;
+ }
+ for (int i = 0; i < 6; i++)
+ _evCmPtrs[i] = nullptr;
+}
+
+void SVoy::addEvent(int hour, int minute, VoyeurEventType type, int audioVideoId,
+ int on, int off, int dead) {
+ VoyeurEvent &e = _events[_eventCount++];
+
+ e._type = type;
+ e._hour = hour;
+ e._minute = minute;
+ e._isAM = hour < 12;
+ e._audioVideoId = audioVideoId;
+ e._computerOn = on;
+ e._computerOff = off;
+ e._dead = dead;
+}
+
+void SVoy::synchronize(Common::Serializer &s) {
+ s.syncAsByte(_isAM);
+ s.syncAsSint16LE(_RTANum);
+ s.syncAsSint16LE(_RTVNum);
+ s.syncAsSint16LE(_switchBGNum);
+
+ _videoHotspotTimes.synchronize(s);
+ _audioHotspotTimes.synchronize(s);
+ _evidenceHotspotTimes.synchronize(s);
+
+ for (int idx = 0; idx < 20; ++idx) {
+ s.syncAsByte(_roomHotspotsEnabled[idx]);
+ }
+
+ s.syncAsSint16LE(_audioVisualStartTime);
+ s.syncAsSint16LE(_audioVisualDuration);
+ s.syncAsSint16LE(_vocSecondsOffset);
+ s.syncAsSint16LE(_abortInterface);
+ s.syncAsSint16LE(_playStampMode);
+ s.syncAsSint16LE(_aptLoadMode);
+ s.syncAsSint16LE(_transitionId);
+ s.syncAsSint16LE(_RTVLimit);
+ s.syncAsSint16LE(_eventFlags);
+ s.syncAsSint16LE(_boltGroupId2);
+
+ s.syncAsSint16LE(_musicStartTime);
+ s.syncAsSint16LE(_totalPhoneCalls);
+ s.syncAsSint16LE(_computerTextId);
+ s.syncAsSint16LE(_computerTimeMin);
+ s.syncAsSint16LE(_computerTimeMax);
+ s.syncAsSint16LE(_victimMurdered);
+ s.syncAsSint16LE(_murderThreshold);
+
+ // Events
+ s.syncAsUint16LE(_eventCount);
+ for (int idx = 0; idx < _eventCount; ++idx)
+ _events[idx].synchronize(s);
+
+ s.syncAsSint16LE(_fadingAmount1);
+ s.syncAsSint16LE(_fadingAmount2);
+ s.syncAsSint16LE(_fadingStep1);
+ s.syncAsSint16LE(_fadingStep2);
+ s.syncAsSint16LE(_fadingType);
+ s.syncAsSint16LE(_victimNumber);
+ s.syncAsSint16LE(_incriminatedVictimNumber);
+ s.syncAsSint16LE(_videoEventId);
+
+ if (s.isLoading()) {
+ // Reset apartment loading mode to initial game value
+ _aptLoadMode = 140;
+ _viewBounds = nullptr;
+ }
+}
+
+void SVoy::addVideoEventStart() {
+ VoyeurEvent &e = _events[_eventCount];
+ e._hour = _vm->_gameHour;
+ e._minute = _vm->_gameMinute;
+ e._isAM = _isAM;
+ e._type = EVTYPE_VIDEO;
+ e._audioVideoId = _vm->_audioVideoId;
+ e._computerOn = _vocSecondsOffset;
+ e._dead = _vm->_eventsManager->_videoDead;
+}
+
+void SVoy::addVideoEventEnd() {
+ VoyeurEvent &e = _events[_eventCount];
+ e._computerOff = _RTVNum - _audioVisualStartTime - _vocSecondsOffset;
+ if (_eventCount < (TOTAL_EVENTS - 1))
+ ++_eventCount;
+}
+
+void SVoy::addAudioEventStart() {
+ VoyeurEvent &e = _events[_eventCount];
+ e._hour = _vm->_gameHour;
+ e._minute = _vm->_gameMinute;
+ e._isAM = _isAM;
+ e._type = EVTYPE_AUDIO;
+ e._audioVideoId = _vm->_audioVideoId;
+ e._computerOn = _vocSecondsOffset;
+ e._dead = _vm->_eventsManager->_videoDead;
+}
+
+void SVoy::addAudioEventEnd() {
+ VoyeurEvent &e = _events[_eventCount];
+ e._computerOff = _RTVNum - _audioVisualStartTime - _vocSecondsOffset;
+ if (_eventCount < (TOTAL_EVENTS - 1))
+ ++_eventCount;
+}
+
+void SVoy::addEvidEventStart(int v) {
+ VoyeurEvent &e = _events[_eventCount];
+ e._hour = _vm->_gameHour;
+ e._minute = _vm->_gameMinute;
+ e._isAM = _isAM;
+ e._type = EVTYPE_EVID;
+ e._audioVideoId = _vm->_playStampGroupId;
+ e._computerOn = _boltGroupId2;
+ e._computerOff = v;
+}
+
+void SVoy::addEvidEventEnd(int totalPages) {
+ VoyeurEvent &e = _events[_eventCount];
+ e._dead = totalPages;
+ if (_eventCount < (TOTAL_EVENTS - 1))
+ ++_eventCount;
+}
+
+void SVoy::addComputerEventStart() {
+ VoyeurEvent &e = _events[_eventCount];
+ e._hour = _vm->_gameHour;
+ e._minute = _vm->_gameMinute;
+ e._isAM = _isAM;
+ e._type = EVTYPE_COMPUTER;
+ e._audioVideoId = _vm->_playStampGroupId;
+ e._computerOn = _computerTextId;
+}
+
+void SVoy::addComputerEventEnd(int v) {
+ VoyeurEvent &e = _events[_eventCount];
+ e._computerOff = v;
+ if (_eventCount < (TOTAL_EVENTS - 1))
+ ++_eventCount;
+}
+
+void SVoy::reviewAnEvidEvent(int eventIndex) {
+ VoyeurEvent &e = _events[eventIndex];
+ _vm->_playStampGroupId = e._audioVideoId;
+ _boltGroupId2 = e._computerOn;
+ int frameOff = e._computerOff;
+
+ if (_vm->_bVoy->getBoltGroup(_vm->_playStampGroupId)) {
+ _vm->_graphicsManager->_backColors = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + 1)._cMapResource;
+ _vm->_graphicsManager->_backgroundPage = _vm->_bVoy->boltEntry(_vm->_playStampGroupId)._picResource;
+ _vm->_graphicsManager->_vPort->setupViewPort(_vm->_graphicsManager->_backgroundPage);
+ _vm->_graphicsManager->_backColors->startFade();
+
+ _vm->doEvidDisplay(frameOff, e._dead);
+ _vm->_bVoy->freeBoltGroup(_vm->_playStampGroupId);
+ _vm->_playStampGroupId = -1;
+
+ if (_boltGroupId2 != -1) {
+ _vm->_bVoy->freeBoltGroup(_boltGroupId2);
+ _boltGroupId2 = -1;
+ }
+ }
+}
+
+void SVoy::reviewComputerEvent(int eventIndex) {
+ VoyeurEvent &e = _events[eventIndex];
+ _vm->_playStampGroupId = e._audioVideoId;
+ _computerTextId = e._computerOn;
+
+ if (_vm->_bVoy->getBoltGroup(_vm->_playStampGroupId)) {
+ _vm->_graphicsManager->_backColors = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + 1)._cMapResource;
+ _vm->_graphicsManager->_backgroundPage = _vm->_bVoy->boltEntry(_vm->_playStampGroupId)._picResource;
+ _vm->_graphicsManager->_vPort->setupViewPort(_vm->_graphicsManager->_backgroundPage);
+ _vm->_graphicsManager->_backColors->startFade();
+ _vm->flipPageAndWaitForFade();
+
+ _vm->getComputerBrush();
+ _vm->flipPageAndWait();
+ _vm->doComputerText(e._computerOff);
+
+ _vm->_bVoy->freeBoltGroup(0x4900);
+ _vm->_bVoy->freeBoltGroup(_vm->_playStampGroupId);
+ _vm->_playStampGroupId = -1;
+ }
+}
+
+bool SVoy::checkForKey() {
+ StateResource *state = _vm->_controlPtr->_state;
+ state->_victimEvidenceIndex = 0;
+ if (_vm->_voy->_victimMurdered)
+ return false;
+
+ for (int eventIdx = 0; eventIdx < _eventCount; ++eventIdx) {
+ VoyeurEvent &e = _events[eventIdx];
+
+ switch (e._type) {
+ case EVTYPE_VIDEO:
+ switch (state->_victimIndex) {
+ case 1:
+ if (e._audioVideoId == 33 && e._computerOn < 2 && e._computerOff >= 38)
+ state->_victimEvidenceIndex = 1;
+ break;
+
+ case 2:
+ if (e._audioVideoId == 47 && e._computerOn < 2 && e._computerOff >= 9)
+ state->_victimEvidenceIndex = 2;
+ break;
+
+ case 3:
+ if (e._audioVideoId == 46 && e._computerOn < 2 && e._computerOff > 2)
+ state->_victimEvidenceIndex = 3;
+ break;
+
+ case 4:
+ if (e._audioVideoId == 40 && e._computerOn < 2 && e._computerOff > 6)
+ state->_victimEvidenceIndex = 4;
+ break;
+
+ default:
+ break;
+ }
+ break;
+
+ case EVTYPE_AUDIO:
+ switch (state->_victimIndex) {
+ case 1:
+ if (e._audioVideoId == 8 && e._computerOn < 2 && e._computerOff > 26)
+ state->_victimEvidenceIndex = 1;
+ break;
+
+ case 3:
+ if (e._audioVideoId == 20 && e._computerOn < 2 && e._computerOff > 28)
+ state->_victimEvidenceIndex = 3;
+ if (e._audioVideoId == 35 && e._computerOn < 2 && e._computerOff > 18)
+ state->_victimEvidenceIndex = 3;
+ break;
+
+ default:
+ break;
+ }
+ break;
+
+ case EVTYPE_EVID:
+ switch (state->_victimIndex) {
+ case 4:
+ if (e._audioVideoId == 0x2400 && e._computerOn == 0x4f00 && e._computerOff == 17)
+ state->_victimEvidenceIndex = 4;
+
+ default:
+ break;
+ }
+ break;
+
+ case EVTYPE_COMPUTER:
+ switch (state->_victimIndex) {
+ case 2:
+ if (e._computerOn == 13 && e._computerOff > 76)
+ state->_victimEvidenceIndex = 2;
+ break;
+
+ default:
+ break;
+ }
+ break;
+
+ default:
+ break;
+ }
+
+ if (state->_victimEvidenceIndex == state->_victimIndex)
+ return true;
+ }
+
+ return false;
+}
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/data.h b/engines/voyeur/data.h
new file mode 100644
index 0000000000..98c884d0c1
--- /dev/null
+++ b/engines/voyeur/data.h
@@ -0,0 +1,232 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VOYEUR_DATA_H
+#define VOYEUR_DATA_H
+
+#include "common/scummsys.h"
+#include "common/serializer.h"
+#include "voyeur/files.h"
+
+namespace Voyeur {
+
+#define TOTAL_EVENTS 1000
+
+enum VoyeurEventType {
+ EVTYPE_NONE = 0,
+ EVTYPE_VIDEO = 1,
+ EVTYPE_AUDIO = 2,
+ EVTYPE_EVID = 3,
+ EVTYPE_COMPUTER = 4
+};
+
+enum EventFlag { EVTFLAG_TIME_DISABLED = 1, EVTFLAG_2 = 2, EVTFLAG_8 = 8, EVTFLAG_RECORDING = 0x10,
+ EVTFLAG_40 = 0x40, EVTFLAG_VICTIM_PRESET = 0x80, EVTFLAG_100 = 0x100 };
+
+struct VoyeurEvent {
+ int _hour;
+ int _minute;
+ bool _isAM;
+ VoyeurEventType _type;
+ int _audioVideoId;
+ int _computerOn;
+ int _computerOff;
+ int _dead;
+
+ void synchronize(Common::Serializer &s);
+};
+
+class VoyeurEngne;
+
+/**
+ * Encapsulates a list of the time expired ranges that hotspots in the mansion
+ * view are enabled for in a given time period.
+ */
+template<int SLOTS>
+class HotspotTimes {
+public:
+ int _min[SLOTS][20]; // Min time expired
+ int _max[SLOTS][20]; // Max time expired
+
+ HotspotTimes() {
+ reset();
+ }
+
+ /**
+ * Resets the data to an initial state
+ */
+ void reset() {
+ for (int hotspotIdx = 0; hotspotIdx < 20; ++hotspotIdx) {
+ for (int slotIdx = 0; slotIdx < SLOTS; ++slotIdx) {
+ _min[slotIdx][hotspotIdx] = 9999;
+ _max[slotIdx][hotspotIdx] = 0;
+ }
+ }
+ }
+
+ /**
+ * Synchronise the data
+ */
+ void synchronize(Common::Serializer &s) {
+ for (int slotIndex = 0; slotIndex < SLOTS; ++slotIndex) {
+ for (int hotspotIndex = 0; hotspotIndex < 20; ++hotspotIndex) {
+ s.syncAsSint16LE(_min[slotIndex][hotspotIndex]);
+ s.syncAsSint16LE(_max[slotIndex][hotspotIndex]);
+ }
+ }
+ }
+
+ /**
+ * Returns true if the given value is in the range specified by the
+ * min and max at the given hotspot and slot indexes
+ */
+ bool isInRange(int slotIndex, int hotspotIndex, int v) const {
+ return _min[slotIndex][hotspotIndex] <= v &&
+ v < _max[slotIndex][hotspotIndex];
+ }
+};
+
+class SVoy {
+private:
+ VoyeurEngine *_vm;
+
+public:
+ bool _abortInterface;
+ bool _isAM;
+ bool _phoneCallsReceived[5];
+ bool _roomHotspotsEnabled[20];
+ bool _victimMurdered;
+
+ int _aptLoadMode;
+ int _audioVisualStartTime;
+ int _audioVisualDuration;
+ int _boltGroupId2;
+ int _computerTextId;
+ int _computerTimeMin;
+ int _computerTimeMax;
+ int _eventCount;
+ int _eventFlags;
+ int _fadingAmount1;
+ int _fadingAmount2;
+ int _fadingStep1;
+ int _fadingStep2;
+ int _fadingType;
+ int _incriminatedVictimNumber;
+ int _murderThreshold;
+ int _musicStartTime;
+ int _playStampMode;
+ int _switchBGNum;
+ int _totalPhoneCalls;
+ int _transitionId;
+ int _victimNumber;
+ int _videoEventId;
+ int _vocSecondsOffset;
+ int _RTANum;
+ int _RTVLimit;
+ int _RTVNum;
+
+ HotspotTimes<3> _audioHotspotTimes;
+ HotspotTimes<3> _evidenceHotspotTimes;
+ HotspotTimes<8> _videoHotspotTimes;
+
+ Common::Rect _computerScreenRect;
+ RectResource *_viewBounds;
+ PictureResource *_evPicPtrs[6];
+ CMapResource *_evCmPtrs[6];
+ VoyeurEvent _events[TOTAL_EVENTS];
+
+ SVoy(VoyeurEngine *vm);
+
+ /**
+ * Synchronize the data
+ */
+ void synchronize(Common::Serializer &s);
+
+ /**
+ * Add an event to the list of game events that have occurred
+ */
+ void addEvent(int hour, int minute, VoyeurEventType type, int audioVideoId,
+ int on, int off, int dead);
+
+ /**
+ * Adds the start of a video event happening
+ */
+ void addVideoEventStart();
+
+ /**
+ * Adds the finish of a video event happening
+ */
+ void addVideoEventEnd();
+
+ /**
+ * Adds the start of an audio event happening
+ */
+ void addAudioEventStart();
+
+ /**
+ * Adsd the finish of an audio event happening
+ */
+ void addAudioEventEnd();
+
+ /**
+ * Adds the start of an evidence event happening
+ */
+ void addEvidEventStart(int v);
+
+ /**
+ * Adds the finish of an evidence event happening
+ */
+ void addEvidEventEnd(int totalPages);
+
+ /**
+ * Adds the start of a computer event happening
+ */
+ void addComputerEventStart();
+
+ /**
+ * Adds the finish of a computer event happening
+ */
+ void addComputerEventEnd(int v);
+
+ /**
+ * Review a previously recorded evidence event
+ */
+ void reviewAnEvidEvent(int eventIndex);
+
+ /**
+ * Review a previously recorded computer event
+ */
+ void reviewComputerEvent(int eventIndex);
+
+ /**
+ * Checks for key information in determining what kind of murder
+ * should take place
+ */
+ bool checkForKey();
+
+private:
+ int _policeEvent;
+};
+
+} // End of namespace Voyeur
+
+#endif /* VOYEUR_DATA_H */
diff --git a/engines/voyeur/debugger.cpp b/engines/voyeur/debugger.cpp
new file mode 100644
index 0000000000..234300bce5
--- /dev/null
+++ b/engines/voyeur/debugger.cpp
@@ -0,0 +1,175 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/debugger.h"
+#include "voyeur/graphics.h"
+#include "voyeur/voyeur.h"
+#include "voyeur/staticres.h"
+
+namespace Voyeur {
+
+Debugger::Debugger(VoyeurEngine *vm) : GUI::Debugger(), _vm(vm) {
+ // Register methods
+ DCmd_Register("continue", WRAP_METHOD(Debugger, Cmd_Exit));
+ DCmd_Register("exit", WRAP_METHOD(Debugger, Cmd_Exit));
+ DCmd_Register("time", WRAP_METHOD(Debugger, Cmd_Time));
+ DCmd_Register("hotspots", WRAP_METHOD(Debugger, Cmd_Hotspots));
+ DCmd_Register("mouse", WRAP_METHOD(Debugger, Cmd_Mouse));
+
+ // Set fields
+ _isTimeActive = true;
+ _showMousePosition = false;
+}
+
+static const int TIME_STATES[] = {
+ 0, 31, 0, 43, 59, 0, 67, 75, 85, 93, 0, 0, 111, 121, 0, 0
+};
+
+bool Debugger::Cmd_Time(int argc, const char **argv) {
+ if (argc < 2) {
+ // Get the current day and time of day
+ Common::String dtString = _vm->getDayName();
+ Common::String timeString = _vm->getTimeOfDay();
+ if (!timeString.empty())
+ dtString += " " + timeString;
+
+ DebugPrintf("Time period = %d, date/time is: %s, time is %s\n",
+ _vm->_voy->_transitionId, dtString.c_str(), _isTimeActive ? "on" : "off");
+ DebugPrintf("Format: %s [on | off | 1..17 | val <amount>]\n\n", argv[0]);
+ } else {
+ if (!strcmp(argv[1], "on")) {
+ _isTimeActive = true;
+ DebugPrintf("Time is now on\n\n");
+ } else if (!strcmp(argv[1], "off")) {
+ _isTimeActive = false;
+ DebugPrintf("Time is now off\n\n");
+ } else if (!strcmp(argv[1], "val")) {
+ if (argc < 3) {
+ DebugPrintf("Time expired is currently %d.\n", _vm->_voy->_RTVNum);
+ } else {
+ _vm->_voy->_RTVNum = atoi(argv[2]);
+ DebugPrintf("Time expired is now %d.\n", _vm->_voy->_RTVNum);
+ }
+ } else {
+ int timeId = atoi(argv[1]);
+ if (timeId >= 1 && timeId < 17) {
+ int stateId = TIME_STATES[timeId - 1];
+ if (!stateId) {
+ DebugPrintf("Given time period is not used in-game\n");
+ } else {
+ DebugPrintf("Changing to time period: %d\n", timeId);
+ if (_vm->_mainThread->goToState(-1, stateId))
+ _vm->_mainThread->parsePlayCommands();
+
+ return false;
+ }
+ } else {
+ DebugPrintf("Unknown parameter\n\n");
+ }
+ }
+ }
+
+ return true;
+}
+
+bool Debugger::Cmd_Hotspots(int argc, const char **argv) {
+ if (_vm->_voy->_computerTextId >= 0) {
+ DebugPrintf("Hotspot Computer Screen %d - %d,%d->%d,%d\n",
+ _vm->_voy->_computerTextId,
+ _vm->_voy->_computerScreenRect.left,
+ _vm->_voy->_computerScreenRect.top,
+ _vm->_voy->_computerScreenRect.right,
+ _vm->_voy->_computerScreenRect.bottom);
+ }
+
+#if 0
+ // Room hotspots
+ BoltEntry &boltEntry = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + 4);
+ if (boltEntry._rectResource) {
+ Common::Array<RectEntry> &hotspots = boltEntry._rectResource->_entries;
+ for (uint hotspotIdx = 0; hotspotIdx < hotspots.size(); ++hotspotIdx) {
+ Common::String pos = Common::String::format("(%d,%d->%d,%d)",
+ hotspots[hotspotIdx].left, hotspots[hotspotIdx].top,
+ hotspots[hotspotIdx].right, hotspots[hotspotIdx].bottom);
+ int arrIndex = hotspots[hotspotIdx]._arrIndex;
+ if (_vm->_voy->_roomHotspotsEnabled[arrIndex - 1]) {
+ DebugPrintf("Hotspot Room %d - %s - Enabled\n", arrIndex, pos);
+ } else {
+ DebugPrintf("Hotspot Room - %s - Disabled\n", pos);
+ }
+ }
+ }
+#endif
+
+ // Outside view hotspots
+ BoltEntry &boltEntry = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + 1);
+ if (boltEntry._rectResource) {
+ Common::Array<RectEntry> &hotspots = boltEntry._rectResource->_entries;
+
+ for (uint hotspotIdx = 0; hotspotIdx < hotspots.size(); ++hotspotIdx) {
+ Common::String pos = Common::String::format("(%d,%d->%d,%d)",
+ hotspots[hotspotIdx].left, hotspots[hotspotIdx].top,
+ hotspots[hotspotIdx].right, hotspots[hotspotIdx].bottom);
+
+ for (int arrIndex = 0; arrIndex < 3; ++arrIndex) {
+ if (_vm->_voy->_audioHotspotTimes._min[arrIndex][hotspotIdx] != 9999) {
+ DebugPrintf("Hotspot %d %s Audio slot %d, time: %d to %d\n",
+ hotspotIdx, pos.c_str(), arrIndex,
+ _vm->_voy->_audioHotspotTimes._min[arrIndex][hotspotIdx],
+ _vm->_voy->_audioHotspotTimes._max[arrIndex][hotspotIdx]);
+ }
+
+ if (_vm->_voy->_evidenceHotspotTimes._min[arrIndex][hotspotIdx] != 9999) {
+ DebugPrintf("Hotspot %d %s Evidence slot %d, time: %d to %d\n",
+ hotspotIdx, pos.c_str(), arrIndex,
+ _vm->_voy->_evidenceHotspotTimes._min[arrIndex][hotspotIdx],
+ _vm->_voy->_evidenceHotspotTimes._max[arrIndex][hotspotIdx]);
+ }
+ }
+
+ for (int arrIndex = 0; arrIndex < 8; ++arrIndex) {
+ if (_vm->_voy->_videoHotspotTimes._min[arrIndex][hotspotIdx] != 9999) {
+ DebugPrintf("Hotspot %d %s Video slot %d, time: %d to %d\n",
+ hotspotIdx, pos.c_str(), arrIndex,
+ _vm->_voy->_videoHotspotTimes._min[arrIndex][hotspotIdx],
+ _vm->_voy->_videoHotspotTimes._max[arrIndex][hotspotIdx]);
+ }
+ }
+ }
+ }
+
+ DebugPrintf("\nEnd of list\n");
+ return true;
+}
+
+bool Debugger::Cmd_Mouse(int argc, const char **argv) {
+ if (argc < 2) {
+ DebugPrintf("mouse [ on | off ]\n");
+ } else {
+ _showMousePosition = !strcmp(argv[1], "on");
+ DebugPrintf("Mouse position is now %s\n", _showMousePosition ? "on" : "off");
+ }
+
+ return true;
+}
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/debugger.h b/engines/voyeur/debugger.h
new file mode 100644
index 0000000000..12d62c51a1
--- /dev/null
+++ b/engines/voyeur/debugger.h
@@ -0,0 +1,70 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VOYEUR_DEBUGGER_H
+#define VOYEUR_DEBUGGER_H
+
+#include "common/scummsys.h"
+#include "gui/debugger.h"
+
+namespace Voyeur {
+
+class VoyeurEngine;
+
+class Debugger : public GUI::Debugger {
+private:
+ VoyeurEngine *_vm;
+public:
+ /**
+ * Specifies whether time should pass, and the video camera's batteries go down
+ * @default true
+ */
+ bool _isTimeActive;
+
+ /*
+ * Specifies whether to show the current mouse position on the screen
+ */
+ bool _showMousePosition;
+protected:
+ /**
+ * Turn time on or off, set the current time period, or the camera delay
+ * within the current time period.
+ */
+ bool Cmd_Time(int argc, const char **argv);
+
+ /**
+ * List the active hotspots during the current time period
+ */
+ bool Cmd_Hotspots(int argc, const char **argv);
+
+ /**
+ * Toggle showing the mouse on the screen
+ */
+ bool Cmd_Mouse(int argc, const char **argv);
+public:
+ Debugger(VoyeurEngine *vm);
+ virtual ~Debugger() {}
+};
+
+} // End of namespace Voyeur
+
+#endif
diff --git a/engines/voyeur/detection.cpp b/engines/voyeur/detection.cpp
new file mode 100644
index 0000000000..3503eb11ef
--- /dev/null
+++ b/engines/voyeur/detection.cpp
@@ -0,0 +1,181 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/voyeur.h"
+
+#include "base/plugins.h"
+#include "common/savefile.h"
+#include "common/str-array.h"
+#include "common/memstream.h"
+#include "engines/advancedDetector.h"
+#include "common/system.h"
+#include "graphics/colormasks.h"
+#include "graphics/surface.h"
+
+#define MAX_SAVES 99
+
+namespace Voyeur {
+
+struct VoyeurGameDescription {
+ ADGameDescription desc;
+};
+
+uint32 VoyeurEngine::getFeatures() const {
+ return _gameDescription->desc.flags;
+}
+
+Common::Language VoyeurEngine::getLanguage() const {
+ return _gameDescription->desc.language;
+}
+
+Common::Platform VoyeurEngine::getPlatform() const {
+ return _gameDescription->desc.platform;
+}
+
+bool VoyeurEngine::getIsDemo() const {
+ return _gameDescription->desc.flags & ADGF_DEMO;
+}
+
+} // End of namespace Voyeur
+
+static const PlainGameDescriptor voyeurGames[] = {
+ {"voyeur", "Voyeur"},
+ {0, 0}
+};
+
+#include "voyeur/detection_tables.h"
+
+class VoyeurMetaEngine : public AdvancedMetaEngine {
+public:
+ VoyeurMetaEngine() : AdvancedMetaEngine(Voyeur::gameDescriptions, sizeof(Voyeur::VoyeurGameDescription), voyeurGames) {
+ _maxScanDepth = 3;
+ }
+
+ virtual const char *getName() const {
+ return "Voyeur Engine";
+ }
+
+ virtual const char *getOriginalCopyright() const {
+ return "Voyeur (c) Philips P.O.V. Entertainment Group";
+ }
+
+ virtual bool hasFeature(MetaEngineFeature f) const;
+ virtual bool createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const;
+ virtual SaveStateList listSaves(const char *target) const;
+ virtual int getMaximumSaveSlot() const;
+ virtual void removeSaveState(const char *target, int slot) const;
+ SaveStateDescriptor querySaveMetaInfos(const char *target, int slot) const;
+};
+
+bool VoyeurMetaEngine::hasFeature(MetaEngineFeature f) const {
+ return
+ (f == kSupportsListSaves) ||
+ (f == kSupportsLoadingDuringStartup) ||
+ (f == kSupportsDeleteSave) ||
+ (f == kSavesSupportMetaInfo) ||
+ (f == kSavesSupportThumbnail);
+}
+
+bool Voyeur::VoyeurEngine::hasFeature(EngineFeature f) const {
+ return
+ (f == kSupportsRTL) ||
+ (f == kSupportsLoadingDuringRuntime) ||
+ (f == kSupportsSavingDuringRuntime);
+}
+
+bool VoyeurMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const {
+ const Voyeur::VoyeurGameDescription *gd = (const Voyeur::VoyeurGameDescription *)desc;
+ if (gd) {
+ *engine = new Voyeur::VoyeurEngine(syst, gd);
+ }
+ return gd != 0;
+}
+
+SaveStateList VoyeurMetaEngine::listSaves(const char *target) const {
+ Common::SaveFileManager *saveFileMan = g_system->getSavefileManager();
+ Common::StringArray filenames;
+ Common::String saveDesc;
+ Common::String pattern = Common::String::format("%s.0??", target);
+
+ filenames = saveFileMan->listSavefiles(pattern);
+ sort(filenames.begin(), filenames.end()); // Sort to get the files in numerical order
+
+ SaveStateList saveList;
+ Voyeur::VoyeurSavegameHeader header;
+
+ for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); ++file) {
+ const char *ext = strrchr(file->c_str(), '.');
+ int slot = ext ? atoi(ext + 1) : -1;
+
+ if (slot >= 0 && slot <= MAX_SAVES) {
+ Common::InSaveFile *in = g_system->getSavefileManager()->openForLoading(*file);
+
+ if (in) {
+ if (header.read(in)) {
+ saveList.push_back(SaveStateDescriptor(slot, header._saveName));
+ header._thumbnail->free();
+ }
+ delete in;
+ }
+ }
+ }
+
+ return saveList;
+}
+
+int VoyeurMetaEngine::getMaximumSaveSlot() const {
+ return MAX_SAVES;
+}
+
+void VoyeurMetaEngine::removeSaveState(const char *target, int slot) const {
+ Common::String filename = Common::String::format("%s.%03d", target, slot);
+ g_system->getSavefileManager()->removeSavefile(filename);
+}
+
+SaveStateDescriptor VoyeurMetaEngine::querySaveMetaInfos(const char *target, int slot) const {
+ Common::String filename = Common::String::format("%s.%03d", target, slot);
+ Common::InSaveFile *f = g_system->getSavefileManager()->openForLoading(filename);
+
+ if (f) {
+ Voyeur::VoyeurSavegameHeader header;
+ header.read(f);
+ delete f;
+
+ // Create the return descriptor
+ SaveStateDescriptor desc(slot, header._saveName);
+ desc.setThumbnail(header._thumbnail);
+ desc.setSaveDate(header._saveYear, header._saveMonth, header._saveDay);
+ desc.setSaveTime(header._saveHour, header._saveMinutes);
+ desc.setPlayTime(header._totalFrames * GAME_FRAME_TIME);
+
+ return desc;
+ }
+
+ return SaveStateDescriptor();
+}
+
+
+#if PLUGIN_ENABLED_DYNAMIC(VOYEUR)
+ REGISTER_PLUGIN_DYNAMIC(VOYEUR, PLUGIN_TYPE_ENGINE, VoyeurMetaEngine);
+#else
+ REGISTER_PLUGIN_STATIC(VOYEUR, PLUGIN_TYPE_ENGINE, VoyeurMetaEngine);
+#endif
diff --git a/devtools/create_kyradat/tables.h b/engines/voyeur/detection_tables.h
index 833c70a4fe..da566ff63d 100644
--- a/devtools/create_kyradat/tables.h
+++ b/engines/voyeur/detection_tables.h
@@ -8,34 +8,35 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef CREATE_KYRADAT_TABLES_H
-#define CREATE_KYRADAT_TABLES_H
-
-#include "search.h"
-#include "util.h"
-
-#include <list>
-
-struct ExtractEntrySearchData {
- int lang;
- int platform;
-
- SearchData hint;
+namespace Voyeur {
+
+static const VoyeurGameDescription gameDescriptions[] = {
+ {
+ // Voyeur DOS English
+ {
+ "voyeur",
+ 0,
+ AD_ENTRY1s("a1100100.rl2", "b44630677618d034970ca0a13c1c1237", 336361),
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_NO_FLAGS,
+ GUIO1(GUIO_NONE)
+ },
+ },
+
+ { AD_TABLE_END_MARKER }
};
-typedef std::list<ExtractEntrySearchData> ExtractEntryList;
-ExtractEntryList getProvidersForId(int id);
-
-#endif
+} // End of namespace Voyeur
diff --git a/engines/voyeur/events.cpp b/engines/voyeur/events.cpp
new file mode 100644
index 0000000000..9a3c6d00ff
--- /dev/null
+++ b/engines/voyeur/events.cpp
@@ -0,0 +1,613 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/events.h"
+#include "voyeur/voyeur.h"
+#include "voyeur/staticres.h"
+#include "common/events.h"
+#include "graphics/cursorman.h"
+#include "graphics/font.h"
+#include "graphics/fontman.h"
+#include "graphics/palette.h"
+
+namespace Voyeur {
+
+IntNode::IntNode() {
+ _intFunc = NULL;
+ _curTime = 0;
+ _timeReset = 0;
+ _flags = 0;
+}
+
+IntNode::IntNode(uint16 curTime, uint16 timeReset, uint16 flags) {
+ _intFunc = NULL;
+ _curTime = curTime;
+ _timeReset = timeReset;
+ _flags = flags;
+}
+
+/*------------------------------------------------------------------------*/
+
+IntData::IntData() {
+ _flipWait = false;
+ _hasPalette = false;
+ _flashTimer = 0;
+ _flashStep = 0;
+ _skipFading = false;
+ _palStartIndex = 0;
+ _palEndIndex = 0;
+ _palette = NULL;
+}
+
+/*------------------------------------------------------------------------*/
+
+EventsManager::EventsManager(VoyeurEngine *vm) : _intPtr(_gameData),
+ _fadeIntNode(0, 0, 3), _cycleIntNode(0, 0, 3), _vm(vm) {
+ _cycleStatus = 0;
+ _fadeStatus = 0;
+ _priorFrameTime = g_system->getMillis();
+ _gameCounter = 0;
+ _counterFlag = false;
+ _recordBlinkCounter = 0;
+ _cursorBlinked = false;
+
+ Common::fill(&_cycleTime[0], &_cycleTime[4], 0);
+ Common::fill(&_cycleNext[0], &_cycleNext[4], (byte *)nullptr);
+ _cyclePtr = NULL;
+
+ _leftClick = _rightClick = false;
+ _mouseClicked = _newMouseClicked = false;
+ _newLeftClick = _newRightClick = false;;
+
+ _videoDead = 0;
+
+ _fadeFirstCol = _fadeLastCol = 0;
+ _fadeCount = 1;
+
+ for (int i = 0; i < 4; i++)
+ _cycleNext[i] = nullptr;
+}
+
+void EventsManager::startMainClockInt() {
+ _mainIntNode._intFunc = &EventsManager::mainVoyeurIntFunc;
+ _mainIntNode._flags = 0;
+ _mainIntNode._curTime = 0;
+ _mainIntNode._timeReset = 60;
+}
+
+void EventsManager::mainVoyeurIntFunc() {
+ if (!(_vm->_voy->_eventFlags & EVTFLAG_TIME_DISABLED)) {
+ ++_vm->_voy->_switchBGNum;
+
+ if (_vm->_debugger->_isTimeActive) {
+ // Increase camera discharge
+ ++_vm->_voy->_RTVNum;
+
+ // If the murder threshold has been set, and is passed, then flag the victim
+ // as murdered, which prevents sending the tape from succeeding
+ if (_vm->_voy->_RTVNum >= _vm->_voy->_murderThreshold)
+ _vm->_voy->_victimMurdered = true;
+ }
+ }
+}
+
+void EventsManager::sWaitFlip() {
+ Common::Array<ViewPortResource *> &viewPorts = _vm->_graphicsManager->_viewPortListPtr->_entries;
+ for (uint idx = 0; idx < viewPorts.size(); ++idx) {
+ ViewPortResource &viewPort = *viewPorts[idx];
+
+ if (_vm->_graphicsManager->_saveBack && (viewPort._flags & DISPFLAG_40)) {
+ Common::Rect *clipPtr = _vm->_graphicsManager->_clipPtr;
+ _vm->_graphicsManager->_clipPtr = &viewPort._clipRect;
+
+ if (viewPort._restoreFn)
+ (_vm->_graphicsManager->*viewPort._restoreFn)(&viewPort);
+
+ _vm->_graphicsManager->_clipPtr = clipPtr;
+ viewPort._rectListCount[viewPort._pageIndex] = 0;
+ viewPort._rectListPtr[viewPort._pageIndex]->clear();
+ viewPort._flags &= ~DISPFLAG_40;
+ }
+ }
+
+ while (_gameData._flipWait && !_vm->shouldQuit()) {
+ pollEvents();
+ g_system->delayMillis(10);
+ }
+}
+
+void EventsManager::checkForNextFrameCounter() {
+ // Check for next game frame
+ uint32 milli = g_system->getMillis();
+ if ((milli - _priorFrameTime) >= GAME_FRAME_TIME) {
+ _counterFlag = !_counterFlag;
+ if (_counterFlag)
+ ++_gameCounter;
+ _priorFrameTime = milli;
+
+ // Run the timer-based updates
+ voyeurTimer();
+
+ if ((_gameCounter % GAME_FRAME_RATE) == 0)
+ mainVoyeurIntFunc();
+
+ // Give time to the debugger
+ _vm->_debugger->onFrame();
+
+ // If mouse position display is on, display the position
+ if (_vm->_debugger->_showMousePosition)
+ showMousePosition();
+
+ // Display the frame
+ g_system->copyRectToScreen((byte *)_vm->_graphicsManager->_screenSurface.getPixels(),
+ SCREEN_WIDTH, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
+ g_system->updateScreen();
+
+ // Signal the ScummVM debugger
+ _vm->_debugger->onFrame();
+ }
+}
+
+void EventsManager::showMousePosition() {
+ const Graphics::Font &font(*FontMan.getFontByUsage(Graphics::FontManager::kConsoleFont));
+ Common::String mousePos = Common::String::format("(%d,%d)", _mousePos.x, _mousePos.y);
+ if (_vm->_voyeurArea == AREA_INTERFACE) {
+ Common::Point pt = _mousePos + _vm->_mansionViewPos - Common::Point(40, 27);
+ if (pt.x < 0) pt.x = 0;
+ if (pt.y < 0) pt.y = 0;
+
+ mousePos += Common::String::format(" - (%d,%d)", pt.x, pt.y);
+ }
+
+ _vm->_graphicsManager->_screenSurface.fillRect(
+ Common::Rect(0, 0, 110, font.getFontHeight()), 0);
+ font.drawString(&_vm->_graphicsManager->_screenSurface, mousePos,
+ 0, 0, 110, 63);
+}
+
+void EventsManager::voyeurTimer() {
+ _gameData._flashTimer += _gameData._flashStep;
+
+ if (_gameData._flipWait) {
+ _gameData._flipWait = false;
+ _gameData._skipFading = false;
+ }
+
+ videoTimer();
+
+ // Iterate through the list of registered nodes
+ Common::List<IntNode *>::iterator i;
+ for (i = _intNodes.begin(); i != _intNodes.end(); ++i) {
+ IntNode &node = **i;
+
+ if (node._flags & 1)
+ continue;
+ if (!(node._flags & 2)) {
+ if (--node._curTime != 0)
+ continue;
+
+ node._curTime = node._timeReset;
+ }
+
+ (this->*node._intFunc)();
+ }
+
+}
+
+void EventsManager::videoTimer() {
+ if (_gameData._hasPalette) {
+ _gameData._hasPalette = false;
+
+ g_system->getPaletteManager()->setPalette(_gameData._palette +
+ _gameData._palStartIndex * 3, _gameData._palStartIndex,
+ _gameData._palEndIndex - _gameData._palStartIndex + 1);
+ }
+}
+
+void EventsManager::delay(int cycles) {
+ uint32 totalMilli = cycles * 1000 / GAME_FRAME_RATE;
+ uint32 delayEnd = g_system->getMillis() + totalMilli;
+
+ while (!_vm->shouldQuit() && g_system->getMillis() < delayEnd) {
+ g_system->delayMillis(10);
+
+ pollEvents();
+ }
+}
+
+void EventsManager::delayClick(int cycles) {
+ uint32 totalMilli = cycles * 1000 / GAME_FRAME_RATE;
+ uint32 delayEnd = g_system->getMillis() + totalMilli;
+
+ do {
+ g_system->delayMillis(10);
+ getMouseInfo();
+ } while (!_vm->shouldQuit() && g_system->getMillis() < delayEnd
+ && !_vm->_eventsManager->_mouseClicked);
+}
+
+void EventsManager::pollEvents() {
+ checkForNextFrameCounter();
+
+ Common::Event event;
+ while (g_system->getEventManager()->pollEvent(event)) {
+ // Handle keypress
+ switch (event.type) {
+ case Common::EVENT_QUIT:
+ case Common::EVENT_RTL:
+ case Common::EVENT_KEYUP:
+ return;
+
+ case Common::EVENT_KEYDOWN:
+ // Check for debugger
+ if (event.kbd.keycode == Common::KEYCODE_d && (event.kbd.flags & Common::KBD_CTRL)) {
+ // Attach to the debugger
+ _vm->_debugger->attach();
+ _vm->_debugger->onFrame();
+ }
+ return;
+ case Common::EVENT_LBUTTONDOWN:
+ _newLeftClick = true;
+ _newMouseClicked = true;
+ return;
+ case Common::EVENT_RBUTTONDOWN:
+ _newRightClick = true;
+ _newMouseClicked = true;
+ return;
+ case Common::EVENT_LBUTTONUP:
+ case Common::EVENT_RBUTTONUP:
+ _newMouseClicked = false;
+ _newLeftClick = false;
+ _newRightClick = false;
+ return;
+ case Common::EVENT_MOUSEMOVE:
+ _mousePos = event.mouse;
+ break;
+ default:
+ break;
+ }
+ }
+}
+
+void EventsManager::startFade(CMapResource *cMap) {
+ _fadeIntNode._flags |= 1;
+ if (_cycleStatus & 1)
+ _cycleIntNode._flags |= 1;
+
+ _fadeFirstCol = cMap->_start;
+ _fadeLastCol = cMap->_end;
+ _fadeCount = cMap->_steps + 1;
+
+ if (cMap->_steps > 0) {
+ _fadeStatus = cMap->_fadeStatus | 1;
+ byte *vgaP = &_vm->_graphicsManager->_VGAColors[_fadeFirstCol * 3];
+ int mapIndex = 0;
+
+ for (int idx = _fadeFirstCol; idx <= _fadeLastCol; ++idx, vgaP += 3) {
+ ViewPortPalEntry &palEntry = _vm->_graphicsManager->_viewPortListPtr->_palette[idx];
+ palEntry._rEntry = vgaP[0] << 8;
+ int rDiff = (cMap->_entries[mapIndex * 3] << 8) - palEntry._rEntry;
+ palEntry._rChange = rDiff / cMap->_steps;
+
+ palEntry._gEntry = vgaP[1] << 8;
+ int gDiff = (cMap->_entries[mapIndex * 3 + 1] << 8) - palEntry._gEntry;
+ palEntry._gChange = gDiff / cMap->_steps;
+
+ palEntry._bEntry = vgaP[2] << 8;
+ int bDiff = (cMap->_entries[mapIndex * 3 + 2] << 8) - palEntry._bEntry;
+ palEntry._bChange = bDiff / cMap->_steps;
+
+ palEntry._palIndex = idx;
+ if (!(cMap->_fadeStatus & 1))
+ ++mapIndex;
+ }
+
+ if (cMap->_fadeStatus & 2)
+ _intPtr._skipFading = true;
+ _fadeIntNode._flags &= ~1;
+ } else {
+ byte *vgaP = &_vm->_graphicsManager->_VGAColors[_fadeFirstCol * 3];
+ int mapIndex = 0;
+
+ for (int idx = _fadeFirstCol; idx <= _fadeLastCol; ++idx, vgaP += 3) {
+ Common::copy(&cMap->_entries[mapIndex], &cMap->_entries[mapIndex + 3], vgaP);
+
+ if (!(cMap->_fadeStatus & 1))
+ mapIndex += 3;
+ }
+
+ if (_intPtr._palStartIndex > _fadeFirstCol)
+ _intPtr._palStartIndex = _fadeFirstCol;
+ if (_intPtr._palEndIndex < _fadeLastCol)
+ _intPtr._palEndIndex = _fadeLastCol;
+
+ _intPtr._hasPalette = true;
+ }
+
+ if (_cycleStatus & 1)
+ _cycleIntNode._flags &= ~1;
+}
+
+void EventsManager::addIntNode(IntNode *node) {
+ _intNodes.push_back(node);
+}
+
+void EventsManager::addFadeInt() {
+ IntNode &node = _fade2IntNode;
+ node._intFunc = &EventsManager::fadeIntFunc;
+ node._flags = 0;
+ node._curTime = 0;
+ node._timeReset = 1;
+
+ addIntNode(&node);
+}
+
+void EventsManager::vDoFadeInt() {
+ if (_intPtr._skipFading)
+ return;
+ if (--_fadeCount == 0) {
+ _fadeIntNode._flags |= 1;
+ _fadeStatus &= ~1;
+ return;
+ }
+
+ for (int i = _fadeFirstCol; i <= _fadeLastCol; ++i) {
+ ViewPortPalEntry &palEntry = _vm->_graphicsManager->_viewPortListPtr->_palette[i];
+ byte *vgaP = &_vm->_graphicsManager->_VGAColors[palEntry._palIndex * 3];
+
+ palEntry._rEntry += palEntry._rChange;
+ palEntry._gEntry += palEntry._gChange;
+ palEntry._bEntry += palEntry._bChange;
+
+ vgaP[0] = palEntry._rEntry >> 8;
+ vgaP[1] = palEntry._gEntry >> 8;
+ vgaP[2] = palEntry._bEntry >> 8;
+ }
+
+ if (_intPtr._palStartIndex > _fadeFirstCol)
+ _intPtr._palStartIndex = _fadeFirstCol;
+ if (_intPtr._palEndIndex < _fadeLastCol)
+ _intPtr._palEndIndex = _fadeLastCol;
+
+ _intPtr._hasPalette = true;
+}
+
+void EventsManager::vDoCycleInt() {
+ for (int idx = 3; idx >= 0; --idx) {
+ if (_cyclePtr->_type[idx] && --_cycleTime[idx] <= 0) {
+ byte *pSrc = _cycleNext[idx];
+ byte *pPal = _vm->_graphicsManager->_VGAColors;
+
+ if (_cyclePtr->_type[idx] != 1) {
+ // New palette data being specified - loop to set entries
+ do {
+ int palIndex = READ_LE_UINT16(pSrc);
+ pPal[palIndex * 3] = pSrc[3];
+ pPal[palIndex * 3 + 1] = pSrc[4];
+ pPal[palIndex * 3 + 1] = pSrc[5];
+ pSrc += 6;
+
+ if ((int16)READ_LE_UINT16(pSrc) >= 0) {
+ // Resetting back to start of cycle data
+ pSrc = _cycleNext[idx];
+ break;
+ }
+ } while (*(pSrc + 2) == 0);
+
+ _cycleNext[idx] = pSrc;
+ _cycleTime[idx] = pSrc[2];
+ } else {
+ // Palette rotation to be done
+ _cycleTime[idx] = pSrc[4];
+
+ if (pSrc[5] == 1) {
+ // Move palette entry to end of range
+ int start = READ_LE_UINT16(pSrc);
+ int end = READ_LE_UINT16(&pSrc[2]);
+ assert(start < 0x100 && end < 0x100);
+
+ // Store the RGB of the first entry to be moved
+ byte r = pPal[start * 3];
+ byte g = pPal[start * 3 + 1];
+ byte b = pPal[start * 3 + 2];
+
+ Common::copy(&pPal[start * 3 + 3], &pPal[end * 3 + 3], &pPal[start * 3]);
+
+ // Place the original saved entry at the end of the range
+ pPal[end * 3] = r;
+ pPal[end * 3 + 1] = g;
+ pPal[end * 3 + 2] = b;
+
+ if (_fadeStatus & 1) {
+ //dx = start, di = end
+ warning("TODO: Adjustment of ViewPortListResource");
+ }
+ } else {
+ // Move palette entry to start of range
+ int start = READ_LE_UINT16(pSrc);
+ int end = READ_LE_UINT16(&pSrc[2]);
+ assert(start < 0x100 && end < 0x100);
+
+ // Store the RGB of the entry to be moved
+ byte r = pPal[end * 3];
+ byte g = pPal[end * 3 + 1];
+ byte b = pPal[end * 3 + 2];
+
+ // Move the remainder of the range forwards one entry
+ Common::copy_backward(&pPal[start * 3], &pPal[end * 3], &pPal[end * 3 + 3]);
+
+ // Place the original saved entry at the end of the range
+ pPal[start * 3] = r;
+ pPal[start * 3 + 1] = g;
+ pPal[start * 3 + 2] = b;
+
+ if (_fadeStatus & 1) {
+ //dx = start, di = end
+ warning("TODO: Adjustment of ViewPortListResource");
+ }
+ }
+ }
+
+ _intPtr._hasPalette = true;
+ }
+ }
+}
+
+
+void EventsManager::fadeIntFunc() {
+ switch (_vm->_voy->_fadingType) {
+ case 1:
+ if (_vm->_voy->_fadingAmount1 < 63)
+ _vm->_voy->_fadingAmount1 += _vm->_voy->_fadingStep1;
+ if (_vm->_voy->_fadingAmount2 < 63)
+ _vm->_voy->_fadingAmount2 += _vm->_voy->_fadingStep2;
+ if (_vm->_voy->_fadingAmount1 > 63)
+ _vm->_voy->_fadingAmount1 = 63;
+ if (_vm->_voy->_fadingAmount2 > 63)
+ _vm->_voy->_fadingAmount2 = 63;
+ if ((_vm->_voy->_fadingAmount1 == 63) && (_vm->_voy->_fadingAmount2 == 63))
+ _vm->_voy->_fadingType = 0;
+ break;
+ case 2:
+ if (_vm->_voy->_fadingAmount1 > 0)
+ _vm->_voy->_fadingAmount1 -= _vm->_voy->_fadingStep1;
+ if (_vm->_voy->_fadingAmount2 > 0)
+ _vm->_voy->_fadingAmount2 -= _vm->_voy->_fadingStep2;
+ if (_vm->_voy->_fadingAmount1 < 0)
+ _vm->_voy->_fadingAmount1 = 0;
+ if (_vm->_voy->_fadingAmount2 < 0)
+ _vm->_voy->_fadingAmount2 = 0;
+ if ((_vm->_voy->_fadingAmount1 == 0) && (_vm->_voy->_fadingAmount2 == 0))
+ _vm->_voy->_fadingType = 0;
+ break;
+ default:
+ break;
+ }
+}
+
+void EventsManager::deleteIntNode(IntNode *node) {
+ _intNodes.remove(node);
+}
+
+void EventsManager::vInitColor() {
+ _fadeIntNode._intFunc = &EventsManager::vDoFadeInt;
+ _cycleIntNode._intFunc = &EventsManager::vDoCycleInt;
+
+ addIntNode(&_fadeIntNode);
+ addIntNode(&_cycleIntNode);
+}
+
+void EventsManager::setCursor(PictureResource *pic) {
+ PictureResource cursor;
+ cursor._bounds = pic->_bounds;
+ cursor._flags = DISPFLAG_CURSOR;
+
+ _vm->_graphicsManager->sDrawPic(pic, &cursor, Common::Point());
+}
+
+void EventsManager::setCursor(byte *cursorData, int width, int height, int keyColor) {
+ CursorMan.replaceCursor(cursorData, width, height, width / 2, height / 2, keyColor);
+}
+
+void EventsManager::setCursorColor(int idx, int mode) {
+ switch (mode) {
+ case 0:
+ _vm->_graphicsManager->setColor(idx, 90, 90, 232);
+ break;
+ case 1:
+ _vm->_graphicsManager->setColor(idx, 232, 90, 90);
+ break;
+ case 2:
+ _vm->_graphicsManager->setColor(idx, 90, 232, 90);
+ break;
+ case 3:
+ _vm->_graphicsManager->setColor(idx, 90, 232, 232);
+ break;
+ default:
+ break;
+ }
+}
+
+void EventsManager::showCursor() {
+ CursorMan.showMouse(true);
+}
+
+void EventsManager::hideCursor() {
+ CursorMan.showMouse(false);
+}
+
+void EventsManager::getMouseInfo() {
+ pollEvents();
+
+ if (_vm->_voy->_eventFlags & EVTFLAG_RECORDING) {
+ if ((_gameCounter - _recordBlinkCounter) > 8) {
+ _recordBlinkCounter = _gameCounter;
+
+ if (_cursorBlinked) {
+ _cursorBlinked = false;
+ _vm->_graphicsManager->setOneColor(128, 220, 20, 20);
+ _vm->_graphicsManager->setColor(128, 220, 20, 20);
+ } else {
+ _cursorBlinked = true;
+ _vm->_graphicsManager->setOneColor(128, 220, 220, 220);
+ _vm->_graphicsManager->setColor(128, 220, 220, 220);
+ }
+ }
+ }
+
+ _mouseClicked = _newMouseClicked;
+ _leftClick = _newLeftClick;
+ _rightClick = _newRightClick;
+
+ _newMouseClicked = false;
+ _newLeftClick = false;
+ _newRightClick = false;
+}
+
+void EventsManager::startCursorBlink() {
+ if (_vm->_voy->_eventFlags & EVTFLAG_RECORDING) {
+ _vm->_graphicsManager->setOneColor(128, 55, 5, 5);
+ _vm->_graphicsManager->setColor(128, 220, 20, 20);
+ _intPtr._hasPalette = true;
+
+ _vm->_graphicsManager->drawDot();
+ //copySection();
+ }
+}
+
+void EventsManager::incrementTime(int amt) {
+ for (int i = 0; i < amt; ++i)
+ mainVoyeurIntFunc();
+}
+
+void EventsManager::stopEvidDim() {
+ deleteIntNode(&_evIntNode);
+}
+
+Common::String EventsManager::getEvidString(int eventIndex) {
+ assert(eventIndex <= _vm->_voy->_eventCount);
+ VoyeurEvent &e = _vm->_voy->_events[eventIndex];
+ return Common::String::format("%03d %.2d:%.2d %s %s", eventIndex + 1,
+ e._hour, e._minute, e._isAM ? AM : PM, EVENT_TYPE_STRINGS[e._type - 1]);
+}
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/events.h b/engines/voyeur/events.h
new file mode 100644
index 0000000000..5e0bfe6404
--- /dev/null
+++ b/engines/voyeur/events.h
@@ -0,0 +1,145 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VOYEUR_EVENTS_H
+#define VOYEUR_EVENTS_H
+
+#include "common/scummsys.h"
+#include "common/list.h"
+#include "graphics/surface.h"
+#include "voyeur/files.h"
+
+namespace Voyeur {
+
+class VoyeurEngine;
+class EventsManager;
+class CMapResource;
+
+#define GAME_FRAME_RATE 50
+#define GAME_FRAME_TIME (1000 / GAME_FRAME_RATE)
+
+typedef void (EventsManager::*EventMethodPtr)();
+
+class IntNode {
+public:
+ EventMethodPtr _intFunc;
+ uint16 _curTime;
+ uint16 _timeReset;
+ uint32 _flags;
+
+ IntNode();
+ IntNode(uint16 curTime, uint16 timeReset, uint16 flags);
+};
+
+class IntData {
+public:
+ bool _flipWait;
+ int _flashTimer;
+ int _flashStep;
+ bool _hasPalette;
+ bool _skipFading;
+ int _palStartIndex;
+ int _palEndIndex;
+ byte *_palette;
+
+ IntData();
+};
+
+class EventsManager {
+private:
+ VoyeurEngine *_vm;
+ bool _counterFlag;
+ bool _cursorBlinked;
+ uint32 _gameCounter;
+ uint32 _priorFrameTime;
+ uint32 _recordBlinkCounter; // Original field was called _joe :)
+ Common::List<IntNode *> _intNodes;
+ Common::Point _mousePos;
+
+ void mainVoyeurIntFunc();
+ void checkForNextFrameCounter();
+ void voyeurTimer();
+ void videoTimer();
+ void vDoFadeInt();
+ void vDoCycleInt();
+ void fadeIntFunc();
+ void addIntNode(IntNode *node);
+ void deleteIntNode(IntNode *node);
+
+ /**
+ * Debugger support method to show the mouse position
+ */
+ void showMousePosition();
+public:
+ IntData _gameData;
+ IntData &_intPtr;
+ IntNode _fadeIntNode;
+ IntNode _fade2IntNode;
+ IntNode _cycleIntNode;
+ IntNode _evIntNode;
+ IntNode _mainIntNode;
+ int _cycleStatus;
+ int _fadeFirstCol, _fadeLastCol;
+ int _fadeCount;
+ int _fadeStatus;
+
+ bool _leftClick, _rightClick;
+ bool _mouseClicked, _newMouseClicked;
+ bool _newLeftClick, _newRightClick;
+
+ int _videoDead;
+ int _cycleTime[4];
+ byte *_cycleNext[4];
+ VInitCycleResource *_cyclePtr;
+
+ EventsManager(VoyeurEngine *vm);
+
+ void setMousePos(const Common::Point &p) { _mousePos = p; }
+ void startMainClockInt();
+ void sWaitFlip();
+ void vInitColor();
+
+ void delay(int cycles);
+ void delayClick(int cycles);
+ void pollEvents();
+ void startFade(CMapResource *cMap);
+ void addFadeInt();
+
+ void setCursor(PictureResource *pic);
+ void setCursor(byte *cursorData, int width, int height, int keyColor);
+ void setCursorColor(int idx, int mode);
+ void showCursor();
+ void hideCursor();
+ Common::Point getMousePos() { return _mousePos; }
+ uint32 getGameCounter() const { return _gameCounter; }
+ void getMouseInfo();
+ void startCursorBlink();
+ void incrementTime(int amt);
+
+ void stopEvidDim();
+
+ Common::String getEvidString(int eventIndex);
+};
+
+} // End of namespace Voyeur
+
+#endif /* VOYEUR_EVENTS_H */
diff --git a/engines/voyeur/files.cpp b/engines/voyeur/files.cpp
new file mode 100644
index 0000000000..7369d9280e
--- /dev/null
+++ b/engines/voyeur/files.cpp
@@ -0,0 +1,1621 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/files.h"
+#include "voyeur/graphics.h"
+#include "voyeur/voyeur.h"
+#include "voyeur/staticres.h"
+
+namespace Voyeur {
+
+#define BOLT_GROUP_SIZE 16
+
+BoltFilesState::BoltFilesState(VoyeurEngine *vm) : _vm(vm) {
+ _curLibPtr = NULL;
+ _curGroupPtr = NULL;
+ _curMemberPtr = NULL;
+ _bufferEnd = 0;
+ _bufferBegin = 0;
+ _bytesLeft = 0;
+ _bufSize = 0;
+ _bufStart = NULL;
+ _bufPos = NULL;
+ _historyIndex = 0;
+ _runLength = 0;
+ _decompState = false;
+ _runType = 0;
+ _runValue = 0;
+ _runOffset = 0;
+ Common::fill(&_historyBuffer[0], &_historyBuffer[0x200], 0);
+ _curFd = NULL;
+ _boltPageFrame = NULL;
+}
+
+#define NEXT_BYTE if (--_bytesLeft < 0) nextBlock()
+
+byte *BoltFilesState::decompress(byte *buf, int size, int mode) {
+ if (!buf) {
+ buf = new byte[size];
+ Common::fill(buf, buf + size, 0);
+ }
+ byte *bufP = buf;
+
+ if (mode & 8) {
+ _decompState = true;
+ _runType = 0;
+ _runLength = size;
+ }
+
+ while (size > 0) {
+ if (!_decompState) {
+ NEXT_BYTE;
+ byte nextByte = *_bufPos++;
+
+ switch (nextByte & 0xC0) {
+ case 0:
+ _runType = 0;
+ _runLength = 30 - (nextByte & 0x1f) + 1;
+ break;
+ case 0x40:
+ _runType = 1;
+ _runLength = 35 - (nextByte & 0x1f);
+ NEXT_BYTE;
+ _runOffset = *_bufPos++ + ((nextByte & 0x20) << 3);
+ break;
+ case 0x80:
+ _runType = 1;
+ _runLength = (nextByte & 0x20) ? ((32 - (nextByte & 0x1f)) << 2) + 2 :
+ (32 - (nextByte & 0x1f)) << 2;
+ NEXT_BYTE;
+ _runOffset = *_bufPos++ << 1;
+ break;
+ default:
+ _runType = 2;
+
+ if (nextByte & 0x20) {
+ _runLength = 0;
+ } else {
+ NEXT_BYTE;
+ _runLength = ((32 - (nextByte & 0x1f)) + (*_bufPos++ << 5)) << 2;
+ NEXT_BYTE;
+ _bufPos++;
+ NEXT_BYTE;
+ _runValue = *_bufPos++;
+ }
+ break;
+ }
+
+ _runOffset = _historyIndex - _runOffset;
+ }
+
+ int runOffset = _runOffset & 0x1ff;
+ int len;
+ if (_runLength <= size) {
+ len = _runLength;
+ _decompState = false;
+ } else {
+ _decompState = true;
+ len = size;
+ _runLength -= size;
+ if (_runType == 1)
+ _runOffset += len;
+ }
+
+ // Reduce the remaining size
+ size -= len;
+
+ // Handle the run lengths
+ switch (_runType) {
+ case 0:
+ while (len-- > 0) {
+ NEXT_BYTE;
+ byte v = *_bufPos++;
+ _historyBuffer[_historyIndex] = v;
+ *bufP++ = v;
+ _historyIndex = (_historyIndex + 1) & 0x1ff;
+ }
+ break;
+ case 1:
+ while (len-- > 0) {
+ _historyBuffer[_historyIndex] = _historyBuffer[runOffset];
+ *bufP++ = _historyBuffer[runOffset];
+ _historyIndex = (_historyIndex + 1) & 0x1ff;
+ runOffset = (runOffset + 1) & 0x1ff;
+ }
+ break;
+ default:
+ while (len-- > 0) {
+ _historyBuffer[_historyIndex] = _runValue;
+ *bufP++ = _runValue;
+ _historyIndex = (_historyIndex + 1) & 0x1ff;
+ }
+ break;
+ }
+ }
+
+ return buf;
+}
+
+#undef NEXT_BYTE
+
+void BoltFilesState::nextBlock() {
+ if (&_curLibPtr->_file != _curFd || _curFd->pos() != _bufferEnd)
+ _curLibPtr->_file.seek(_bufferEnd);
+
+ _curFd = &_curLibPtr->_file;
+ _bufferBegin = _bufferEnd;
+ int bytesRead = _curFd->read(_bufStart, _bufSize);
+
+ _bufferEnd = _curFd->pos();
+ _bytesLeft = bytesRead - 1;
+ _bufPos = _bufStart;
+}
+
+/*------------------------------------------------------------------------*/
+
+FilesManager::FilesManager(VoyeurEngine *vm) {
+ _curLibPtr = nullptr;
+ _boltFilesState = new BoltFilesState(vm);
+}
+
+FilesManager::~FilesManager() {
+ delete _boltFilesState;
+}
+
+bool FilesManager::openBoltLib(const Common::String &filename, BoltFile *&boltFile) {
+ if (boltFile != NULL) {
+ _boltFilesState->_curLibPtr = boltFile;
+ return true;
+ }
+
+ // Create the bolt file interface object and load the index
+ if (filename == "bvoy.blt")
+ boltFile = _boltFilesState->_curLibPtr = new BVoyBoltFile(*_boltFilesState);
+ else if (filename == "stampblt.blt")
+ boltFile = _boltFilesState->_curLibPtr = new StampBoltFile(*_boltFilesState);
+ else
+ error("Unknown bolt file specified");
+
+ return true;
+}
+
+byte *FilesManager::fload(const Common::String &filename, int *size) {
+ Common::File f;
+ int filesize;
+ byte *data = NULL;
+
+ if (f.open(filename)) {
+ // Read in the file
+ filesize = f.size();
+ data = new byte[filesize];
+ f.read(data, filesize);
+ } else {
+ filesize = 0;
+ }
+
+ if (size)
+ *size = filesize;
+ return data;
+}
+
+/*------------------------------------------------------------------------*/
+
+BoltFile::BoltFile(const Common::String &filename, BoltFilesState &state): _state(state) {
+ if (!_file.open(filename))
+ error("Could not open %s", filename.c_str());
+
+ // Read in the file header
+ byte header[16];
+ _file.read(&header[0], 16);
+
+ if (strncmp((const char *)&header[0], "BOLT", 4) != 0)
+ error("Tried to load non-bolt file");
+
+ int totalGroups = header[11] ? header[11] : 0x100;
+ for (int i = 0; i < totalGroups; ++i)
+ _groups.push_back(BoltGroup(&_file));
+}
+
+BoltFile::~BoltFile() {
+ _file.close();
+ if (_state._curFd == &_file)
+ _state._curFd = NULL;
+ if (_state._curLibPtr == this)
+ _state._curLibPtr = NULL;
+}
+
+BoltGroup *BoltFile::getBoltGroup(uint16 id) {
+ _state._curLibPtr = this;
+ _state._curGroupPtr = &_groups[(id >> 8) & 0xff];
+
+ if (!_state._curGroupPtr->_loaded) {
+ // Load the group index
+ _state._curGroupPtr->load(id & 0xff00);
+ }
+
+ // Pre-process the resources
+ id &= 0xff00;
+ for (int idx = 0; idx < _state._curGroupPtr->_count; ++idx, ++id) {
+ byte *member = getBoltMember(id);
+ assert(member);
+ }
+
+ resolveAll();
+
+ return _state._curGroupPtr;
+}
+
+void BoltFile::freeBoltGroup(uint16 id) {
+ _state._curLibPtr = this;
+ _state._curGroupPtr = &_groups[(id >> 8) & 0xff];
+
+ // Unload the group
+ _state._curGroupPtr->unload();
+}
+
+void BoltFile::freeBoltMember(uint32 id) {
+ // No implementation in ScummVM
+}
+
+BoltEntry &BoltFile::getBoltEntryFromLong(uint32 id) {
+ BoltGroup &group = _groups[id >> 24];
+ assert(group._loaded);
+
+ BoltEntry &entry = group._entries[(id >> 16) & 0xff];
+ assert(!entry.hasResource() || (id & 0xffff) == 0);
+
+ return entry;
+}
+
+BoltEntry &BoltFile::boltEntry(uint16 id) {
+ BoltGroup &group = _groups[id >> 8];
+ assert(group._loaded);
+
+ BoltEntry &entry = group._entries[id & 0xff];
+ assert(entry.hasResource());
+
+ return entry;
+}
+
+PictureResource *BoltFile::getPictureResource(uint32 id) {
+ if ((int32)id == -1)
+ return NULL;
+
+ if (id & 0xffff)
+ id <<= 16;
+ return getBoltEntryFromLong(id)._picResource;
+}
+
+CMapResource *BoltFile::getCMapResource(uint32 id) {
+ if ((int32)id == -1)
+ return NULL;
+
+ if (id & 0xffff)
+ id <<= 16;
+
+ return getBoltEntryFromLong(id)._cMapResource;
+}
+
+byte *BoltFile::memberAddr(uint32 id) {
+ BoltGroup &group = _groups[id >> 8];
+ if (!group._loaded)
+ return NULL;
+
+ // If an entry already has a processed representation, we shouldn't
+ // still be accessing the raw data
+ BoltEntry &entry = group._entries[id & 0xff];
+ assert(!entry.hasResource());
+
+ return entry._data;
+}
+
+byte *BoltFile::memberAddrOffset(uint32 id) {
+ BoltGroup &group = _groups[id >> 24];
+ if (!group._loaded)
+ return NULL;
+
+ // If an entry already has a processed representation, we shouldn't
+ // still be accessing the raw data
+ BoltEntry &entry = group._entries[(id >> 16) & 0xff];
+ assert(!entry.hasResource());
+
+ return entry._data + (id & 0xffff);
+}
+
+/**
+ * Resolves an Id to an offset within a loaded resource
+ */
+void BoltFile::resolveIt(uint32 id, byte **p) {
+ if ((int32)id == -1) {
+ *p = NULL;
+ } else {
+ byte *ptr = memberAddrOffset(id);
+ if (ptr) {
+ *p = ptr;
+ } else {
+ *p = NULL;
+ assert(_state._resolves.size() < 1000);
+ _state._resolves.push_back(ResolveEntry(id, p));
+ }
+ }
+}
+
+void BoltFile::resolveFunction(uint32 id, GraphicMethodPtr *fn) {
+ if ((int32)id == -1)
+ *fn = NULL;
+ else
+ error("Function fnTermGro array not supported");
+}
+
+/**
+ * Resolve any data references to within resources that weren't
+ * previously loaded, but are now
+ */
+void BoltFile::resolveAll() {
+ for (uint idx = 0; idx < _state._resolves.size(); ++idx)
+ *_state._resolves[idx]._p = memberAddrOffset(_state._resolves[idx]._id);
+
+ _state._resolves.clear();
+}
+
+byte *BoltFile::getBoltMember(uint32 id) {
+ _state._curLibPtr = this;
+
+ // Get the group, and load it's entry list if not already loaded
+ _state._curGroupPtr = &_groups[(id >> 8) & 0xff];
+ if (!_state._curGroupPtr->_loaded)
+ _state._curGroupPtr->load(id & 0xff00);
+
+ // Get the entry
+ _state._curMemberPtr = &_state._curGroupPtr->_entries[id & 0xff];
+
+ // Return the data for the entry if it's already been loaded
+ if (_state._curMemberPtr->_data)
+ return _state._curMemberPtr->_data;
+
+ if (_state._curGroupPtr->_processed) {
+ error("Processed resources are not supported");
+ } else {
+ _state._bufStart = _state._decompressBuf;
+ _state._bufSize = DECOMPRESS_SIZE;
+
+ if ((_state._curFd != &_file) || (_state._curMemberPtr->_fileOffset < _state._bufferBegin)
+ || (_state._curMemberPtr->_fileOffset >= _state._bufferEnd)) {
+ _state._bytesLeft = 0;
+ _state._bufPos = _state._bufStart;
+ _state._bufferBegin = -1;
+ _state._bufferEnd = _state._curMemberPtr->_fileOffset;
+ } else {
+ _state._bufPos = _state._curMemberPtr->_fileOffset - _state._bufferBegin + _state._bufStart;
+ _state._bytesLeft = _state._bufSize - (_state._bufPos - _state._bufStart);
+ }
+ }
+
+ _state._decompState = false;
+ _state._historyIndex = 0;
+
+ // Initialize the resource
+ assert(_state._curMemberPtr->_initMethod < 25);
+ initResource(_state._curMemberPtr->_initMethod);
+
+ return _state._curMemberPtr->_data;
+}
+
+void BoltFile::initDefault() {
+ _state._curMemberPtr->_data = _state.decompress(NULL, _state._curMemberPtr->_size,
+ _state._curMemberPtr->_mode);
+}
+
+/*------------------------------------------------------------------------*/
+
+BVoyBoltFile::BVoyBoltFile(BoltFilesState &state): BoltFile("bvoy.blt", state) {
+}
+
+void BVoyBoltFile::initResource(int resType) {
+ switch (resType) {
+ case 2:
+ // Also used for point list, and ending credits credit data
+ sInitRect();
+ break;
+ case 8:
+ sInitPic();
+ break;
+ case 10:
+ vInitCMap();
+ break;
+ case 11:
+ vInitCycl();
+ break;
+ case 15:
+ initViewPort();
+ break;
+ case 16:
+ initViewPortList();
+ break;
+ case 17:
+ initFont();
+ break;
+ case 18:
+ initFontInfo();
+ break;
+ case 19:
+ initSoundMap();
+ break;
+ default:
+ initDefault();
+ break;
+ }
+}
+
+void BVoyBoltFile::initViewPort() {
+ initDefault();
+
+ ViewPortResource *viewPort;
+ byte *src = _state._curMemberPtr->_data;
+ _state._curMemberPtr->_viewPortResource = viewPort = new ViewPortResource(_state, src);
+
+ // This is done post-constructor, since viewports can be self referential, so
+ // we need the _viewPortResource field to have been set before resolving the pointer
+ viewPort->_parent = getBoltEntryFromLong(READ_LE_UINT32(src + 2))._viewPortResource;
+}
+
+void BVoyBoltFile::initViewPortList() {
+ initDefault();
+
+ ViewPortListResource *res;
+ _state._curMemberPtr->_viewPortListResource = res = new ViewPortListResource(
+ _state, _state._curMemberPtr->_data);
+
+ _state._vm->_graphicsManager->_viewPortListPtr = res;
+ _state._vm->_graphicsManager->_vPort = res->_entries[0];
+}
+
+void BVoyBoltFile::initFontInfo() {
+ initDefault();
+ _state._curMemberPtr->_fontInfoResource = new FontInfoResource(
+ _state, _state._curMemberPtr->_data);
+}
+
+void BVoyBoltFile::initFont() {
+ initDefault();
+ _state._curMemberPtr->_fontResource = new FontResource(_state, _state._curMemberPtr->_data);
+}
+
+void BVoyBoltFile::initSoundMap() {
+ initDefault();
+}
+
+void BVoyBoltFile::sInitRect() {
+ _state._curMemberPtr->_data = _state.decompress(NULL, _state._curMemberPtr->_size,
+ _state._curMemberPtr->_mode);
+
+ // Check whether the resource Id is in the list of extended rects
+ bool isExtendedRects = false;
+ for (int i = 0; i < 49 && !isExtendedRects; ++i)
+ isExtendedRects = RESOLVE_TABLE[i] == (_state._curMemberPtr->_id & 0xff00);
+
+ int rectSize = isExtendedRects ? 12 : 8;
+ if ((_state._curMemberPtr->_size % rectSize) == 0 || (_state._curMemberPtr->_size % rectSize) == 2)
+ _state._curMemberPtr->_rectResource = new RectResource(_state._curMemberPtr->_data,
+ _state._curMemberPtr->_size, isExtendedRects);
+}
+
+void BVoyBoltFile::sInitPic() {
+ // Read in the header data
+ _state._curMemberPtr->_data = _state.decompress(NULL, 24, _state._curMemberPtr->_mode);
+ _state._curMemberPtr->_picResource = new PictureResource(_state,
+ _state._curMemberPtr->_data);
+}
+
+void BVoyBoltFile::vInitCMap() {
+ initDefault();
+ _state._curMemberPtr->_cMapResource = new CMapResource(
+ _state, _state._curMemberPtr->_data);
+}
+
+void BVoyBoltFile::vInitCycl() {
+ initDefault();
+ _state._curMemberPtr->_vInitCycleResource = new VInitCycleResource(
+ _state, _state._curMemberPtr->_data);
+ _state._curMemberPtr->_vInitCycleResource->vStopCycle();
+}
+
+/*------------------------------------------------------------------------*/
+
+StampBoltFile::StampBoltFile(BoltFilesState &state): BoltFile("stampblt.blt", state) {
+}
+
+void StampBoltFile::initResource(int resType) {
+ switch (resType) {
+ case 0:
+ initThread();
+ break;
+ case 4:
+ initState();
+ break;
+ case 6:
+ initPtr();
+ break;
+ case 24:
+ initControl();
+ break;
+ default:
+ initDefault();
+ break;
+ }
+}
+
+void StampBoltFile::initThread() {
+ initDefault();
+
+ _state._curMemberPtr->_threadResource = new ThreadResource(_state,
+ _state._curMemberPtr->_data);
+}
+
+void StampBoltFile::initPtr() {
+ initDefault();
+
+ _state._curMemberPtr->_ptrResource = new PtrResource(_state,
+ _state._curMemberPtr->_data);
+}
+
+ void initControlData();
+
+
+void StampBoltFile::initControl() {
+ initDefault();
+
+ ControlResource *res;
+ _state._curMemberPtr->_controlResource = res = new ControlResource(_state,
+ _state._curMemberPtr->_data);
+
+ _state._vm->_controlGroupPtr = _state._curGroupPtr;
+ _state._vm->_controlPtr = res;
+}
+
+void StampBoltFile::initState() {
+ initDefault();
+
+ assert(_state._curMemberPtr->_size == 16);
+ _state._curMemberPtr->_stateResource = new StateResource(_state,
+ _state._curMemberPtr->_data);
+}
+
+/*------------------------------------------------------------------------*/
+
+BoltGroup::BoltGroup(Common::SeekableReadStream *f): _file(f) {
+ byte buffer[BOLT_GROUP_SIZE];
+
+ _loaded = false;
+
+ _file->read(&buffer[0], BOLT_GROUP_SIZE);
+ _processed = buffer[0] != 0;
+ _count = buffer[3] ? buffer[3] : 256;
+ _fileOffset = READ_LE_UINT32(&buffer[8]);
+}
+
+BoltGroup::~BoltGroup() {
+}
+
+void BoltGroup::load(uint16 groupId) {
+ _file->seek(_fileOffset);
+
+ // Read the entries
+ for (int i = 0; i < _count; ++i)
+ _entries.push_back(BoltEntry(_file, groupId + i));
+
+ _loaded = true;
+}
+
+void BoltGroup::unload() {
+ if (!_loaded)
+ return;
+
+ _entries.clear();
+ _loaded = false;
+}
+
+/*------------------------------------------------------------------------*/
+
+BoltEntry::BoltEntry(Common::SeekableReadStream *f, uint16 id): _file(f), _id(id) {
+ _data = nullptr;
+ _rectResource = nullptr;
+ _picResource = nullptr;
+ _viewPortResource = nullptr;
+ _viewPortListResource = nullptr;
+ _fontResource = nullptr;
+ _fontInfoResource = nullptr;
+ _cMapResource = nullptr;
+ _vInitCycleResource = nullptr;
+
+ _ptrResource = nullptr;
+ _stateResource = nullptr;
+ _controlResource = nullptr;
+ _vInitCycleResource = nullptr;
+ _threadResource = nullptr;
+
+ byte buffer[16];
+ _file->read(&buffer[0], 16);
+ _mode = buffer[0];
+ _initMethod = buffer[3];
+ _size = READ_LE_UINT32(&buffer[4]) & 0xffffff;
+ _fileOffset = READ_LE_UINT32(&buffer[8]);
+}
+
+BoltEntry::~BoltEntry() {
+ delete[] _data;
+ delete _rectResource;
+ delete _picResource;
+ delete _viewPortResource;
+ delete _viewPortListResource;
+ delete _fontResource;
+ delete _fontInfoResource;
+ delete _cMapResource;
+
+ delete _ptrResource;
+ delete _controlResource;
+ delete _stateResource;
+ delete _vInitCycleResource;
+ delete _threadResource;
+}
+
+void BoltEntry::load() {
+ // Currently, all entry loading and decompression is done in BoltFile::memberAddr.
+}
+
+/**
+ * Returns true if the given bolt entry has an attached resource
+ */
+bool BoltEntry::hasResource() const {
+ return _rectResource || _picResource || _viewPortResource || _viewPortListResource
+ || _fontResource || _fontInfoResource || _cMapResource || _vInitCycleResource
+ || _ptrResource || _controlResource || _stateResource || _threadResource;
+}
+
+/*------------------------------------------------------------------------*/
+
+RectEntry::RectEntry(int x1, int y1, int x2, int y2, int arrIndex, int count):
+ Common::Rect(x1, y1, x2, y2), _arrIndex(arrIndex), _count(count) {
+}
+
+/*------------------------------------------------------------------------*/
+
+RectResource::RectResource(const byte *src, int size, bool isExtendedRects) {
+ int count;
+ int rectSize = isExtendedRects ? 12 : 8;
+ if ((size % rectSize) == 2) {
+ count = READ_LE_UINT16(src);
+ src += 2;
+ } else {
+ count = size / rectSize;
+ }
+
+ for (int i = 0; i < count; ++i, src += 8) {
+ int arrIndex = 0, rectCount = 0;
+ if (isExtendedRects) {
+ arrIndex = READ_LE_UINT16(src);
+ rectCount = READ_LE_UINT16(src + 2);
+ src += 4;
+ }
+
+ int x1 = READ_LE_UINT16(src);
+ int y1 = READ_LE_UINT16(src + 2);
+ int x2 = READ_LE_UINT16(src + 4);
+ int y2 = READ_LE_UINT16(src + 6);
+
+ _entries.push_back(RectEntry(x1, y1, x2, y2, arrIndex, rectCount));
+ }
+
+ left = _entries[0].left;
+ top = _entries[0].top;
+ right = _entries[0].right;
+ bottom = _entries[0].bottom;
+}
+
+RectResource::RectResource(int x1, int y1, int x2, int y2) {
+ left = x1;
+ top = y1;
+ right = x2;
+ bottom = y2;
+}
+
+/*------------------------------------------------------------------------*/
+
+DisplayResource::DisplayResource() {
+ _vm = NULL;
+ _flags = DISPFLAG_NONE;
+}
+
+DisplayResource::DisplayResource(VoyeurEngine *vm) {
+ _vm = vm;
+ _flags = DISPFLAG_NONE;
+}
+
+void DisplayResource::sFillBox(int width, int height) {
+ assert(_vm);
+ bool saveBack = _vm->_graphicsManager->_saveBack;
+ _vm->_graphicsManager->_saveBack = false;
+
+ PictureResource pr;
+ pr._flags = DISPFLAG_1;
+ pr._select = 0xff;
+ pr._pick = 0;
+ pr._onOff = _vm->_graphicsManager->_drawPtr->_penColor;
+ pr._bounds = Common::Rect(0, 0, width, height);
+
+ _vm->_graphicsManager->sDrawPic(&pr, this, _vm->_graphicsManager->_drawPtr->_pos);
+ _vm->_graphicsManager->_saveBack = saveBack;
+}
+
+bool DisplayResource::clipRect(Common::Rect &rect) {
+ Common::Rect clippingRect;
+ if (_vm->_graphicsManager->_clipPtr) {
+ clippingRect = *_vm->_graphicsManager->_clipPtr;
+ } else if (_flags & DISPFLAG_VIEWPORT) {
+ clippingRect = ((ViewPortResource *)this)->_clipRect;
+ } else {
+ clippingRect = ((PictureResource *)this)->_bounds;
+ }
+
+ Common::Rect r = rect;
+ if (r.left < clippingRect.left) {
+ if (r.right <= clippingRect.left)
+ return false;
+ r.setWidth(r.right - clippingRect.left);
+ }
+ if (r.right >= clippingRect.right) {
+ if (r.left >= clippingRect.left)
+ return false;
+ r.setWidth(clippingRect.right - r.left);
+ }
+
+ if (r.top < clippingRect.top) {
+ if (r.bottom <= clippingRect.top)
+ return false;
+ r.setHeight(r.bottom - clippingRect.top);
+ }
+ if (r.bottom >= clippingRect.bottom) {
+ if (r.top >= clippingRect.top)
+ return false;
+ r.setWidth(clippingRect.bottom - r.top);
+ }
+
+ rect = r;
+ return true;
+}
+
+int DisplayResource::drawText(const Common::String &msg) {
+ GraphicsManager &gfxManager = *_vm->_graphicsManager;
+ assert(gfxManager._fontPtr);
+ assert(gfxManager._fontPtr->_curFont);
+ FontInfoResource &fontInfo = *gfxManager._fontPtr;
+ PictureResource &fontChar = *_vm->_graphicsManager->_fontChar;
+ FontResource &fontData = *fontInfo._curFont;
+ int xShadows[9] = { 0, 1, 1, 1, 0, -1, -1, -1, 0 };
+ int yShadows[9] = { 0, 1, 0, -1, -1, -1, 0, 1, 1 };
+
+ Common::Rect *clipPtr = gfxManager._clipPtr;
+ if (!(fontInfo._picFlags & DISPFLAG_1))
+ gfxManager._clipPtr = NULL;
+
+ int minChar = fontData._minChar;
+ int padding = fontData._padding;
+ int fontHeight = fontData._fontHeight;
+ int totalChars = fontData._maxChar - fontData._minChar;
+ int msgWidth = 0;
+ int xp = 0, yp = 0;
+
+ Common::Point pos = Common::Point(fontInfo._pos.x, fontInfo._pos.y + fontData._topPadding);
+
+ fontChar._flags = fontInfo._picFlags | DISPFLAG_2;
+ fontChar._select = fontInfo._picSelect;
+ fontChar._bounds.setHeight(fontHeight);
+
+ ViewPortResource *viewPort = !(_flags & DISPFLAG_VIEWPORT) ? NULL :
+ (ViewPortResource *)this;
+
+ if ((fontInfo._fontFlags & DISPFLAG_1) || fontInfo._justify ||
+ (gfxManager._saveBack && fontInfo._fontSaveBack && (_flags & DISPFLAG_VIEWPORT))) {
+ msgWidth = viewPort->textWidth(msg);
+ yp = pos.y;
+ xp = pos.x;
+
+ switch (fontInfo._justify) {
+ case 1:
+ xp = pos.x + (fontInfo._justifyWidth / 2) - (msgWidth / 2);
+ break;
+ case 2:
+ xp = pos.x + fontInfo._justifyWidth - msgWidth;
+ break;
+ default:
+ break;
+ }
+
+ if (!(fontInfo._fontFlags & (DISPFLAG_1 | DISPFLAG_2))) {
+ viewPort->_fontRect.left = xp;
+ viewPort->_fontRect.top = yp;
+ viewPort->_fontRect.setWidth(msgWidth);
+ viewPort->_fontRect.setHeight(fontHeight);
+ } else {
+ viewPort->_fontRect.left = pos.x;
+ viewPort->_fontRect.top = pos.y;
+ viewPort->_fontRect.setWidth(fontInfo._justifyWidth);
+ viewPort->_fontRect.setHeight(fontInfo._justifyHeight);
+ }
+
+ pos.x = xp;
+ pos.y = yp;
+
+ if (fontInfo._fontFlags & DISPFLAG_4) {
+ if (fontInfo._shadow.x <= 0) {
+ viewPort->_fontRect.left += fontInfo._shadow.x;
+ viewPort->_fontRect.right -= fontInfo._shadow.x * 2;
+ } else {
+ viewPort->_fontRect.right += fontInfo._shadow.x;
+ }
+
+ if (fontInfo._shadow.y <= 0) {
+ viewPort->_fontRect.top += fontInfo._shadow.y;
+ viewPort->_fontRect.bottom -= fontInfo._shadow.y * 2;
+ } else {
+ viewPort->_fontRect.bottom += fontInfo._shadow.y;
+ }
+ } else if (fontInfo._fontFlags & 8) {
+ if (fontInfo._shadow.x <= 0) {
+ viewPort->_fontRect.left += fontInfo._shadow.x;
+ viewPort->_fontRect.right -= fontInfo._shadow.x * 3;
+ } else {
+ viewPort->_fontRect.right += fontInfo._shadow.x * 3;
+ viewPort->_fontRect.left -= fontInfo._shadow.x;
+ }
+
+ if (fontInfo._shadow.y <= 0) {
+ viewPort->_fontRect.top += fontInfo._shadow.y;
+ viewPort->_fontRect.bottom -= fontInfo._shadow.y * 3;
+ } else {
+ viewPort->_fontRect.bottom += fontInfo._shadow.y * 3;
+ viewPort->_fontRect.top -= fontInfo._shadow.y;
+ }
+ }
+ }
+
+ if (gfxManager._saveBack && fontInfo._fontSaveBack && (_flags & DISPFLAG_VIEWPORT)) {
+ viewPort->addSaveRect(viewPort->_pageIndex, viewPort->_fontRect);
+ }
+
+ if (fontInfo._fontFlags & DISPFLAG_1) {
+ gfxManager._drawPtr->_pos = Common::Point(viewPort->_fontRect.left, viewPort->_fontRect.top);
+ gfxManager._drawPtr->_penColor = fontInfo._backColor;
+ sFillBox(viewPort->_fontRect.width(), viewPort->_fontRect.height());
+ }
+
+ bool saveBack = gfxManager._saveBack;
+ gfxManager._saveBack = false;
+
+ int count = 0;
+ if (fontInfo._fontFlags & DISPFLAG_4)
+ count = 1;
+ else if (fontInfo._fontFlags & DISPFLAG_8)
+ count = 8;
+
+ for (int i = count; i >= 0; --i) {
+ xp = pos.x;
+ yp = pos.y;
+
+ switch (xShadows[i]) {
+ case -1:
+ xp -= fontInfo._shadow.x;
+ break;
+ case 1:
+ xp += fontInfo._shadow.x;
+ break;
+ default:
+ break;
+ }
+
+ switch (yShadows[i]) {
+ case -1:
+ yp -= fontInfo._shadow.y;
+ break;
+ case 1:
+ yp += fontInfo._shadow.y;
+ break;
+ default:
+ break;
+ }
+
+ if (i != 0) {
+ fontChar._pick = 0;
+ fontChar._onOff = fontInfo._shadowColor;
+ } else if (fontData._fontDepth == 1 || (fontInfo._fontFlags & DISPFLAG_10)) {
+ fontChar._pick = 0;
+ fontChar._onOff = fontInfo._foreColor;
+ } else {
+ fontChar._pick = fontInfo._picPick;
+ fontChar._onOff = fontInfo._picOnOff;
+ }
+
+ // Loop to draw each character in turn
+ msgWidth = -padding;
+ const char *msgP = msg.c_str();
+ char ch;
+
+ while ((ch = *msgP++) != '\0') {
+ int charValue = (int)ch - minChar;
+ if (charValue < 0 || charValue >= totalChars || fontData._charWidth[charValue] == 0)
+ charValue = fontData._maxChar - minChar;
+
+ int charWidth = fontData._charWidth[charValue];
+ fontChar._bounds.setWidth(charWidth);
+
+ uint16 offset = READ_LE_UINT16(fontData._charOffsets + charValue * 2);
+ fontChar._imgData = fontData._charImages + offset * 2;
+
+ gfxManager.sDrawPic(&fontChar, this, Common::Point(xp, yp));
+
+ fontChar._imgData = NULL;
+ xp += charWidth + padding;
+ msgWidth += charWidth + padding;
+ }
+ }
+
+ msgWidth = MAX(msgWidth, 0);
+ if (fontInfo._justify == ALIGN_LEFT)
+ fontInfo._pos.x = xp;
+
+ gfxManager._saveBack = saveBack;
+ gfxManager._clipPtr = clipPtr;
+
+ return msgWidth;
+}
+
+int DisplayResource::textWidth(const Common::String &msg) {
+ if (msg.size() == 0)
+ return 0;
+
+ const char *msgP = msg.c_str();
+ FontResource &fontData = *_vm->_graphicsManager->_fontPtr->_curFont;
+ int minChar = fontData._minChar;
+ int maxChar = fontData._maxChar;
+ int padding = fontData._padding;
+ int totalWidth = -padding;
+ char ch;
+
+ // Loop through the characters
+ while ((ch = *msgP++) != '\0') {
+ int charValue = (int)ch;
+ if (charValue < minChar || charValue > maxChar)
+ charValue = maxChar;
+
+ if (!fontData._charWidth[charValue - minChar])
+ charValue = maxChar;
+
+ totalWidth += fontData._charWidth[charValue - minChar] + padding;
+ }
+
+ if (totalWidth < 0)
+ totalWidth = 0;
+ return totalWidth;
+}
+
+/*------------------------------------------------------------------------*/
+
+PictureResource::PictureResource(BoltFilesState &state, const byte *src):
+ DisplayResource(state._vm) {
+ _flags = READ_LE_UINT16(src);
+ _select = src[2];
+ _pick = src[3];
+ _onOff = src[4];
+ // depth is in src[5], unused.
+
+ int xs = READ_LE_UINT16(&src[6]);
+ int ys = READ_LE_UINT16(&src[8]);
+ _bounds = Common::Rect(xs, ys, xs + READ_LE_UINT16(&src[10]),
+ ys + READ_LE_UINT16(&src[12]));
+ _maskData = READ_LE_UINT32(&src[14]);
+ _planeSize = READ_LE_UINT16(&src[22]);
+
+ _keyColor = 0;
+ _imgData = NULL;
+ _freeImgData = DisposeAfterUse::YES;
+
+ int nbytes = _bounds.width() * _bounds.height();
+ if (_flags & PICFLAG_20) {
+ if (_flags & (PICFLAG_VFLIP | PICFLAG_HFLIP)) {
+ // Get the raw data for the picture from another resource
+ uint32 id = READ_LE_UINT32(&src[18]);
+ const byte *srcData = state._curLibPtr->boltEntry(id)._data;
+ _imgData = new byte[nbytes];
+
+ // Flip the image data either horizontally or vertically
+ if (_flags & PICFLAG_HFLIP)
+ flipHorizontal(srcData);
+ else
+ flipVertical(srcData);
+ } else {
+ uint32 id = READ_LE_UINT32(&src[18]) >> 16;
+ byte *imgData = state._curLibPtr->boltEntry(id)._picResource->_imgData;
+ _freeImgData = DisposeAfterUse::NO;
+
+ // TODO: Double check code below. Despite different coding in the
+ // original, both looked like they do the same formula
+ if (_flags & PICFLAG_PIC_OFFSET) {
+ _imgData = imgData + (READ_LE_UINT32(&src[18]) & 0xffff);
+ } else {
+ _imgData = imgData + (READ_LE_UINT32(&src[18]) & 0xffff);
+ }
+ }
+ } else if (_flags & PICFLAG_PIC_OFFSET) {
+ int mode = 0;
+ if (_bounds.width() == 320)
+ mode = 147;
+ else {
+ if (_bounds.width() == 640) {
+ if (_bounds.height() == 400)
+ mode = 220;
+ else
+ mode = 221;
+ } else if (_bounds.width() == 800)
+ mode = 222;
+ else if (_bounds.width() == 1024)
+ mode = 226;
+ }
+
+ if (mode != state._vm->_graphicsManager->_SVGAMode) {
+ state._vm->_graphicsManager->_SVGAMode = mode;
+ state._vm->_graphicsManager->clearPalette();
+ }
+
+ int screenOffset = READ_LE_UINT32(&src[18]) & 0xffff;
+ assert(screenOffset == 0);
+
+ if (_flags & PICFLAG_CLEAR_SCREEN) {
+ // Clear screen picture. That's right. This game actually has a picture
+ // resource flag to clear the screen! Bizarre.
+ Graphics::Surface &s = state._vm->_graphicsManager->_screenSurface;
+ s.fillRect(Common::Rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT), 0);
+ } else {
+ // Direct screen loading picture. In this case, the raw data of the resource
+ // is directly decompressed into the screen surface. Again, bizarre.
+ byte *pDest = (byte *)state._vm->_graphicsManager->_screenSurface.getPixels();
+ state.decompress(pDest, SCREEN_WIDTH * SCREEN_HEIGHT, state._curMemberPtr->_mode);
+ }
+ } else {
+ if (_flags & PICFLAG_CLEAR_SCREEN00) {
+ if (!(_flags & PICFLAG_CLEAR_SCREEN))
+ nbytes = state._curMemberPtr->_size - 24;
+
+ int mask = (nbytes + 0x3FFF) >> 14;
+ _imgData = NULL;
+
+ if (state._boltPageFrame != NULL) {
+ _maskData = mask;
+ state.decompress(state._boltPageFrame, nbytes, state._curMemberPtr->_mode);
+ return;
+ }
+ }
+
+ if (_flags & PICFLAG_CLEAR_SCREEN) {
+ _imgData = new byte[nbytes];
+ Common::fill(_imgData, _imgData + nbytes, 0);
+ } else {
+ _imgData = state.decompress(NULL, nbytes, state._curMemberPtr->_mode);
+ }
+ }
+}
+
+PictureResource::PictureResource(Graphics::Surface *surface) {
+ _flags = DISPFLAG_NONE;
+ _select = 0;
+ _pick = 0;
+ _onOff = 0;
+ _maskData = 0;
+ _planeSize = 0;
+ _keyColor = 0;
+
+ _bounds = Common::Rect(0, 0, surface->w, surface->h);
+ _imgData = (byte *)surface->getPixels();
+ _freeImgData = DisposeAfterUse::NO;
+}
+
+PictureResource::PictureResource() {
+ _flags = DISPFLAG_NONE;
+ _select = 0;
+ _pick = 0;
+ _onOff = 0;
+ _maskData = 0;
+ _planeSize = 0;
+ _keyColor = 0;
+
+ _imgData = NULL;
+ _freeImgData = DisposeAfterUse::NO;
+}
+
+PictureResource::PictureResource(int flags, int select, int pick, int onOff,
+ const Common::Rect &bounds, int maskData, byte *imgData, int planeSize) {
+ _flags = flags;
+ _select = select;
+ _pick = pick;
+ _onOff = onOff;
+ _bounds = bounds;
+ _maskData = maskData;
+ _imgData = imgData;
+ _planeSize = planeSize;
+ _freeImgData = DisposeAfterUse::NO;
+ _keyColor = 0;
+}
+
+PictureResource::~PictureResource() {
+ if (_freeImgData == DisposeAfterUse::YES)
+ delete[] _imgData;
+}
+
+void PictureResource::flipHorizontal(const byte *data) {
+ const byte *srcP = data + 18;
+ byte *destP = _imgData + _bounds.width() - 1;
+
+ for (int y = 0; y < _bounds.height(); ++y) {
+ for (int x = 0; x < _bounds.width(); ++x, ++srcP, --destP)
+ *destP = *srcP;
+
+ srcP += _bounds.width();
+ destP += _bounds.width();
+ }
+}
+
+void PictureResource::flipVertical(const byte *data) {
+ const byte *srcP = data + 18;
+ byte *destP = _imgData + _bounds.width() * (_bounds.height() - 1);
+
+ for (int y = 0; y < _bounds.height(); ++y) {
+ Common::copy(srcP, srcP + _bounds.width(), destP);
+ srcP += _bounds.width();
+ destP -= _bounds.width();
+ }
+}
+
+/*------------------------------------------------------------------------*/
+
+ViewPortResource::ViewPortResource(BoltFilesState &state, const byte *src):
+ _state(state), DisplayResource(state._vm) {
+ _flags = READ_LE_UINT16(src);
+ _parent = NULL;
+ _pageCount = READ_LE_UINT16(src + 6);
+ _pageIndex = READ_LE_UINT16(src + 8);
+ _lastPage = READ_LE_UINT16(src + 10);
+
+ int xs = READ_LE_UINT16(src + 12);
+ int ys = READ_LE_UINT16(src + 14);
+ _bounds = Common::Rect(xs, ys, xs + READ_LE_UINT16(src + 16),
+ ys + READ_LE_UINT16(src + 18));
+
+ _currentPic = state._curLibPtr->getPictureResource(READ_LE_UINT32(src + 0x20));
+ _activePage = state._curLibPtr->getPictureResource(READ_LE_UINT32(src + 0x24));
+ _pages[0] = state._curLibPtr->getPictureResource(READ_LE_UINT32(src + 0x28));
+ _pages[1] = state._curLibPtr->getPictureResource(READ_LE_UINT32(src + 0x2C));
+
+ byte *dummy;
+ state._curLibPtr->resolveIt(READ_LE_UINT32(src + 0x30), &dummy);
+
+ // Get the rect list
+ for (int listIndex = 0; listIndex < 3; ++listIndex) {
+ _rectListCount[listIndex] = (int16)READ_LE_UINT16(src + 0x40 + 2 * listIndex);
+ int id = (int)READ_LE_UINT32(src + 0x34 + listIndex * 4);
+
+ if (id == -1) {
+ _rectListPtr[listIndex] = NULL;
+ } else {
+ _rectListPtr[listIndex] = new Common::Array<Common::Rect>();
+
+ if (_rectListCount[listIndex] > 0) {
+ int16 *rectList = (int16 *)state._curLibPtr->memberAddrOffset(id);
+ for (int i = 0; i < _rectListCount[listIndex]; ++i) {
+ xs = FROM_LE_16(rectList[0]);
+ ys = FROM_LE_16(rectList[1]);
+ _rectListPtr[i]->push_back(Common::Rect(xs, ys, xs + FROM_LE_16(rectList[2]),
+ ys + FROM_LE_16(rectList[3])));
+ }
+ }
+ }
+ }
+
+ xs = READ_LE_UINT16(src + 0x46);
+ ys = READ_LE_UINT16(src + 0x48);
+ _clipRect = Common::Rect(xs, ys, xs + READ_LE_UINT16(src + 0x4A),
+ ys + READ_LE_UINT16(src + 0x4C));
+
+ state._curLibPtr->resolveIt(READ_LE_UINT32(src + 0x7A), &dummy);
+ state._curLibPtr->resolveFunction(READ_LE_UINT32(src + 0x7E), (GraphicMethodPtr *)&_fn1);
+ state._curLibPtr->resolveFunction(READ_LE_UINT32(src + 0x82), (GraphicMethodPtr *)&_setupFn);
+ state._curLibPtr->resolveFunction(READ_LE_UINT32(src + 0x86), (GraphicMethodPtr *)&_addFn);
+ state._curLibPtr->resolveFunction(READ_LE_UINT32(src + 0x8A), (GraphicMethodPtr *)&_restoreFn);
+
+ if (!_restoreFn && _addFn)
+ _addFn = &GraphicsManager::addRectNoSaveBack;
+}
+
+ViewPortResource::~ViewPortResource() {
+ for (int i = 0; i < 3; ++i)
+ delete _rectListPtr[i];
+}
+
+void ViewPortResource::setupViewPort(PictureResource *page, Common::Rect *clippingRect,
+ ViewPortSetupPtr setupFn, ViewPortAddPtr addFn, ViewPortRestorePtr restoreFn) {
+ PictureResource *pic = _currentPic;
+ Common::Rect r = _bounds;
+ r.translate(pic->_bounds.left, pic->_bounds.top);
+ int xDiff, yDiff;
+
+ if (page) {
+ // Clip based on the passed picture resource
+ xDiff = page->_bounds.left - r.left;
+ yDiff = page->_bounds.top - r.top;
+
+ if (xDiff > 0) {
+ int width = r.width();
+ r.left = page->_bounds.left;
+ r.setWidth(xDiff <= width ? width - xDiff : 0);
+ }
+ if (yDiff > 0) {
+ int height = r.height();
+ r.top = page->_bounds.top;
+ r.setHeight(yDiff <= height ? height - yDiff : 0);
+ }
+
+ xDiff = r.right - page->_bounds.right;
+ yDiff = r.bottom - page->_bounds.bottom;
+
+ if (xDiff > 0)
+ r.setWidth(xDiff <= r.width() ? r.width() - xDiff : 0);
+ if (yDiff > 0)
+ r.setHeight(yDiff <= r.height() ? r.height() - yDiff : 0);
+ }
+
+ if (clippingRect) {
+ // Clip based on the passed clip rectangles
+ xDiff = clippingRect->left - r.left;
+ yDiff = clippingRect->top - r.top;
+
+ if (xDiff > 0) {
+ int width = r.width();
+ r.left = clippingRect->left;
+ r.setWidth(xDiff <= width ? width - xDiff : 0);
+ }
+ if (yDiff > 0) {
+ int height = r.height();
+ r.top = clippingRect->top;
+ r.setHeight(yDiff <= height ? height - yDiff : 0);
+ }
+
+ xDiff = r.right - clippingRect->right;
+ yDiff = r.bottom - clippingRect->bottom;
+
+ if (xDiff > 0)
+ r.setWidth(xDiff <= r.width() ? r.width() - xDiff : 0);
+ if (yDiff > 0)
+ r.setHeight(yDiff <= r.height() ? r.height() - yDiff : 0);
+ }
+
+ _activePage = page;
+ _clipRect = r;
+ _setupFn = setupFn;
+ _addFn = addFn;
+ _restoreFn = restoreFn;
+
+ if (setupFn)
+ (_state._vm->_graphicsManager->*setupFn)(this);
+}
+
+void ViewPortResource::setupViewPort() {
+ setupViewPort(_state._vm->_graphicsManager->_backgroundPage, NULL,
+ &GraphicsManager::setupMCGASaveRect, &GraphicsManager::addRectOptSaveRect,
+ &GraphicsManager::restoreMCGASaveRect);
+}
+
+void ViewPortResource::setupViewPort(PictureResource *pic, Common::Rect *clippingRect) {
+ setupViewPort(pic, clippingRect,
+ &GraphicsManager::setupMCGASaveRect, &GraphicsManager::addRectOptSaveRect,
+ &GraphicsManager::restoreMCGASaveRect);
+}
+
+void ViewPortResource::addSaveRect(int pageIndex, const Common::Rect &r) {
+ Common::Rect rect = r;
+
+ if (clipRect(rect)) {
+ if (_addFn) {
+ (_state._vm->_graphicsManager->*_addFn)(this, pageIndex, rect);
+ } else if (_rectListCount[pageIndex] != -1) {
+ _rectListPtr[pageIndex]->push_back(rect);
+ }
+ }
+}
+
+void ViewPortResource::fillPic(byte onOff) {
+ _state._vm->_graphicsManager->fillPic(this, onOff);
+}
+
+void ViewPortResource::drawIfaceTime() {
+ // Hour display
+ _state._vm->_graphicsManager->drawANumber(_state._vm->_graphicsManager->_vPort,
+ (_state._vm->_gameHour / 10) == 0 ? 10 : _state._vm->_gameHour / 10,
+ Common::Point(161, 25));
+ _state._vm->_graphicsManager->drawANumber(_state._vm->_graphicsManager->_vPort,
+ _state._vm->_gameHour % 10, Common::Point(172, 25));
+
+ // Minute display
+ _state._vm->_graphicsManager->drawANumber(_state._vm->_graphicsManager->_vPort,
+ _state._vm->_gameMinute / 10, Common::Point(190, 25));
+ _state._vm->_graphicsManager->drawANumber(_state._vm->_graphicsManager->_vPort,
+ _state._vm->_gameMinute % 10, Common::Point(201, 25));
+
+ // AM/PM indicator
+ PictureResource *pic = _state._vm->_bVoy->boltEntry(_state._vm->_voy->_isAM ? 272 : 273)._picResource;
+ _state._vm->_graphicsManager->sDrawPic(pic, _state._vm->_graphicsManager->_vPort,
+ Common::Point(215, 27));
+}
+
+void ViewPortResource::drawPicPerm(PictureResource *pic, const Common::Point &pt) {
+ Common::Rect bounds = pic->_bounds;
+ bounds.translate(pt.x, pt.y);
+
+ bool saveBack = _state._vm->_graphicsManager->_saveBack;
+ _state._vm->_graphicsManager->_saveBack = false;
+ _state._vm->_graphicsManager->sDrawPic(pic, this, pt);
+ clipRect(bounds);
+
+ for (int pageIndex = 0; pageIndex < _pageCount; ++pageIndex) {
+ if (_pageIndex != pageIndex) {
+ addSaveRect(pageIndex, bounds);
+ }
+ }
+
+ _state._vm->_graphicsManager->_saveBack = saveBack;
+}
+/*------------------------------------------------------------------------*/
+
+ViewPortListResource::ViewPortListResource(BoltFilesState &state, const byte *src) {
+ uint count = READ_LE_UINT16(src);
+ _palIndex = READ_LE_UINT16(src + 2);
+
+ // Load palette map
+ byte *palData = state._curLibPtr->memberAddr(READ_LE_UINT32(src + 4));
+ for (uint i = 0; i < 256; ++i, palData += 16)
+ _palette.push_back(ViewPortPalEntry(palData));
+
+ // Load view port pointer list
+ const uint32 *idP = (const uint32 *)&src[8];
+ for (uint i = 0; i < count; ++i, ++idP) {
+ uint32 id = READ_LE_UINT32(idP);
+ BoltEntry &entry = state._curLibPtr->getBoltEntryFromLong(id);
+
+ assert(entry._viewPortResource);
+ _entries.push_back(entry._viewPortResource);
+ }
+}
+
+/*------------------------------------------------------------------------*/
+
+ViewPortPalEntry::ViewPortPalEntry(const byte *src) {
+ const uint16 *v = (const uint16 *)src;
+ _rEntry = READ_LE_UINT16(v++);
+ _gEntry = READ_LE_UINT16(v++);
+ _bEntry = READ_LE_UINT16(v++);
+ _rChange = READ_LE_UINT16(v++);
+ _gChange = READ_LE_UINT16(v++);
+ _bChange = READ_LE_UINT16(v++);
+ _palIndex = READ_LE_UINT16(v++);
+}
+
+
+/*------------------------------------------------------------------------*/
+
+FontResource::FontResource(BoltFilesState &state, byte *src) {
+ _minChar = src[0];
+ _maxChar = src[1];
+ _fontDepth = src[2];
+ _padding = src[3];
+ _fontHeight = src[5];
+ _topPadding = (int8)src[6];
+
+ int totalChars = _maxChar - _minChar + 1;
+ _charWidth = new int[totalChars];
+ for (int i = 0; i < totalChars; ++i)
+ _charWidth[i] = READ_LE_UINT16(src + 8 + 2 * i);
+
+ _charOffsets = src + 8 + totalChars * 2;
+ _charImages = _charOffsets + totalChars * 2;
+}
+
+FontResource::~FontResource() {
+ delete[] _charWidth;
+}
+
+/*------------------------------------------------------------------------*/
+
+FontInfoResource::FontInfoResource(BoltFilesState &state, const byte *src) {
+ _curFont = NULL;
+ _picFlags = src[4];
+ _picSelect = src[5];
+ _picPick = src[6];
+ _picOnOff = src[7];
+ _fontFlags = src[8];
+ _justify = (FontJustify)src[9];
+ _fontSaveBack = READ_LE_UINT16(src + 10);
+ _pos.x = (int16)READ_LE_UINT16(src + 12);
+ _pos.y = (int16)READ_LE_UINT16(src + 14);
+ _justifyWidth = READ_LE_UINT16(src + 16);
+ _justifyHeight = READ_LE_UINT16(src + 18);
+ _shadow.x = READ_LE_UINT16(src + 20);
+ _shadow.y = READ_LE_UINT16(src + 22);
+ _foreColor = READ_LE_UINT16(src + 24);
+ _backColor = READ_LE_UINT16(src + 26);
+ _shadowColor = READ_LE_UINT16(src + 28);
+}
+
+FontInfoResource::FontInfoResource() {
+ _curFont = NULL;
+ _picFlags = DISPFLAG_1 | DISPFLAG_2;
+ _picSelect = 0xff;
+ _picPick = 0xff;
+ _picOnOff = 0;
+ _fontFlags = DISPFLAG_NONE;
+ _justify = ALIGN_LEFT;
+ _fontSaveBack = 0;
+ _justifyWidth = 1;
+ _justifyHeight = 1;
+ _shadow = Common::Point(1, 1);
+ _foreColor = 1;
+ _backColor = 0;
+ _shadowColor = 0;
+}
+
+FontInfoResource::FontInfoResource(byte picFlags, byte picSelect, byte picPick, byte picOnOff,
+ byte fontFlags, FontJustify justify, int fontSaveBack, const Common::Point &pos,
+ int justifyWidth, int justifyHeight, const Common::Point &shadow, int foreColor,
+ int backColor, int shadowColor) {
+ _curFont = NULL;
+ _picFlags = picFlags;
+ _picSelect = picSelect;
+ _picPick = picPick;
+ _picOnOff = picOnOff;
+ _fontFlags = fontFlags;
+ _justify = justify;
+ _fontSaveBack = fontSaveBack;
+ _pos = pos;
+ _justifyWidth = justifyWidth;
+ _justifyHeight = justifyHeight;
+ _shadow = shadow;
+ _foreColor = foreColor;
+ _backColor = backColor;
+ _shadowColor = shadowColor;
+}
+
+/*------------------------------------------------------------------------*/
+
+CMapResource::CMapResource(BoltFilesState &state, const byte *src): _vm(state._vm) {
+ _steps = src[0];
+ _fadeStatus = src[1];
+ _start = READ_LE_UINT16(src + 2);
+ _end = READ_LE_UINT16(src + 4);
+
+ int count = _end - _start + 1;
+ _entries = new byte[count * 3];
+ Common::copy(src + 6, src + 6 + 3 * count, _entries);
+
+ int palIndex = state._vm->_graphicsManager->_viewPortListPtr->_palIndex;
+ if (_end > palIndex)
+ _end = palIndex;
+ if (_start > palIndex)
+ _start = palIndex;
+}
+
+CMapResource::~CMapResource() {
+ delete[] _entries;
+}
+
+void CMapResource::startFade() {
+ _vm->_eventsManager->startFade(this);
+}
+
+/*------------------------------------------------------------------------*/
+
+VInitCycleResource::VInitCycleResource(BoltFilesState &state, const byte *src):
+ _state(state) {
+ // Set up arrays
+ for (int i = 0; i < 4; ++i) {
+ _type[i] = READ_LE_UINT16(src + i * 2);
+ state._curLibPtr->resolveIt(READ_LE_UINT32(src + 8 + i * 4), &_ptr[i]);
+ }
+}
+
+void VInitCycleResource::vStartCycle() {
+ EventsManager &evt = *_state._vm->_eventsManager;
+ evt._cycleIntNode._flags |= 1;
+ evt._cyclePtr = this;
+
+ for (int i = 0; i < 4; ++i) {
+ evt._cycleNext[i] = _ptr[i];
+ evt._cycleTime[i] = 0;
+ }
+
+ evt._cycleStatus = 1;
+ evt._cycleIntNode._flags &= ~1;
+}
+
+void VInitCycleResource::vStopCycle() {
+ EventsManager &evt = *_state._vm->_eventsManager;
+ evt._cycleIntNode._flags |= 1;
+ evt._cycleStatus &= ~1;
+}
+
+/*------------------------------------------------------------------------*/
+
+PtrResource::PtrResource(BoltFilesState &state, const byte *src) {
+ // Load pointer list
+ const uint32 *idP = (const uint32 *)&src[0];
+ int size = state._curMemberPtr->_size;
+
+ for (int i = 0; i < size / 4; ++i, ++idP) {
+ uint32 id = READ_LE_UINT32(idP);
+ BoltEntry &entry = state._curLibPtr->getBoltEntryFromLong(id);
+
+ _entries.push_back(&entry);
+ }
+}
+
+/*------------------------------------------------------------------------*/
+
+ControlResource::ControlResource(BoltFilesState &state, const byte *src) {
+ // Get Id for the state data. Since it refers to a following entry in the same
+ // group, for simplicity we set the _state back in the main playStamp method
+ _stateId = READ_LE_UINT32(&src[0x32]);
+ _state = nullptr;
+
+ for (int i = 0; i < 8; ++i)
+ _memberIds[i] = READ_LE_UINT16(src + i * 2);
+
+ // Load pointer list
+ const uint32 *idP = (const uint32 *)&src[0x10];
+ int count = READ_LE_UINT16(&src[0x36]);
+
+ Common::fill(&_entries[0], &_entries[8], (byte *)nullptr);
+ for (int i = 0; i < count; ++i, ++idP) {
+ uint32 id = READ_LE_UINT32(idP);
+ state._curLibPtr->resolveIt(id, &_entries[i]);
+ }
+}
+
+/*------------------------------------------------------------------------*/
+
+StateResource::StateResource(BoltFilesState &state, const byte *src):
+ _victimIndex(_vals[1]), _victimEvidenceIndex(_vals[2]),
+ _victimMurderIndex(_vals[3]) {
+ for (int i = 0; i < 4; ++i)
+ _vals[i] = READ_LE_UINT32(src + i * 4);
+}
+
+void StateResource::synchronize(Common::Serializer &s) {
+ for (int i = 0; i < 4; ++i)
+ s.syncAsSint32LE(_vals[i]);
+}
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/files.h b/engines/voyeur/files.h
new file mode 100644
index 0000000000..49c0b2c8a4
--- /dev/null
+++ b/engines/voyeur/files.h
@@ -0,0 +1,619 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VOYEUR_FILES_H
+#define VOYEUR_FILES_H
+
+#include "common/scummsys.h"
+#include "common/file.h"
+#include "common/rect.h"
+#include "common/str.h"
+#include "voyeur/graphics.h"
+
+namespace Voyeur {
+
+class VoyeurEngine;
+class BoltFile;
+class BoltGroup;
+class BoltEntry;
+class RectResource;
+class PictureResource;
+class ViewPortResource;
+class ViewPortListResource;
+class FontResource;
+class CMapResource;
+class VInitCycleResource;
+class PtrResource;
+class ControlResource;
+class StateResource;
+class ThreadResource;
+
+#define DECOMPRESS_SIZE 0x7000
+
+class ResolveEntry {
+public:
+ uint32 _id;
+ byte **_p;
+
+ ResolveEntry(uint32 id, byte **p) { _id = id; _p = p; }
+};
+
+class BoltFilesState {
+public:
+ VoyeurEngine *_vm;
+ BoltFile *_curLibPtr;
+ BoltGroup *_curGroupPtr;
+ BoltEntry *_curMemberPtr;
+ int _bufferEnd;
+ int _bufferBegin;
+ int _bytesLeft;
+ int _bufSize;
+ byte *_bufStart;
+ byte *_bufPos;
+ byte _decompressBuf[DECOMPRESS_SIZE];
+ int _historyIndex;
+ byte _historyBuffer[0x200];
+ int _runLength;
+ bool _decompState;
+ int _runType;
+ int _runValue;
+ int _runOffset;
+ Common::File *_curFd;
+ Common::Array<ResolveEntry> _resolves;
+
+ byte *_boltPageFrame;
+public:
+ BoltFilesState(VoyeurEngine *vm);
+
+ byte *decompress(byte *buf, int size, int mode);
+ void nextBlock();
+};
+
+class BoltFile {
+private:
+ Common::Array<BoltGroup> _groups;
+protected:
+ BoltFilesState &_state;
+
+ virtual void initResource(int resType) = 0;
+ void initDefault();
+private:
+ void resolveAll();
+ byte *getBoltMember(uint32 id);
+
+public:
+ Common::File _file;
+
+ BoltFile(const Common::String &filename, BoltFilesState &state);
+ virtual ~BoltFile();
+
+ BoltGroup *getBoltGroup(uint16 id);
+ void freeBoltGroup(uint16 id);
+ void freeBoltMember(uint32 id);
+ byte *memberAddr(uint32 id);
+ byte *memberAddrOffset(uint32 id);
+ void resolveIt(uint32 id, byte **p);
+ void resolveFunction(uint32 id, GraphicMethodPtr *fn);
+
+ BoltEntry &boltEntry(uint16 id);
+ BoltEntry &getBoltEntryFromLong(uint32 id);
+ PictureResource *getPictureResource(uint32 id);
+ CMapResource *getCMapResource(uint32 id);
+};
+
+class BVoyBoltFile: public BoltFile {
+private:
+ // initType method table
+ void sInitRect();
+ void sInitPic();
+ void vInitCMap();
+ void vInitCycl();
+ void initViewPort();
+ void initViewPortList();
+ void initFontInfo();
+ void initFont();
+ void initSoundMap();
+protected:
+ virtual void initResource(int resType);
+public:
+ BVoyBoltFile(BoltFilesState &state);
+};
+
+class StampBoltFile: public BoltFile {
+private:
+ void initThread();
+ void initState();
+ void initPtr();
+ void initControl();
+protected:
+ virtual void initResource(int resType);
+public:
+ StampBoltFile(BoltFilesState &state);
+};
+
+class BoltGroup {
+private:
+ Common::SeekableReadStream *_file;
+public:
+ bool _loaded;
+ bool _processed;
+ int _count;
+ int _fileOffset;
+ Common::Array<BoltEntry> _entries;
+public:
+ BoltGroup(Common::SeekableReadStream *f);
+ virtual ~BoltGroup();
+
+ void load(uint16 groupId);
+ void unload();
+};
+
+
+class BoltEntry {
+private:
+ Common::SeekableReadStream *_file;
+public:
+ uint16 _id;
+ byte _mode;
+ byte _initMethod;
+ int _fileOffset;
+ int _size;
+ byte *_data;
+
+ // bvoy.blt resource types
+ RectResource *_rectResource;
+ PictureResource *_picResource;
+ ViewPortResource *_viewPortResource;
+ ViewPortListResource *_viewPortListResource;
+ FontResource *_fontResource;
+ FontInfoResource *_fontInfoResource;
+ CMapResource *_cMapResource;
+ VInitCycleResource *_vInitCycleResource;
+
+ // stampblt.blt resource types
+ PtrResource *_ptrResource;
+ ControlResource *_controlResource;
+ StateResource *_stateResource;
+ ThreadResource *_threadResource;
+public:
+ BoltEntry(Common::SeekableReadStream *f, uint16 id);
+ virtual ~BoltEntry();
+
+ void load();
+ bool hasResource() const;
+};
+
+class FilesManager {
+public:
+ BoltFilesState *_boltFilesState;
+ BoltFile *_curLibPtr;
+public:
+ FilesManager(VoyeurEngine *vm);
+ ~FilesManager();
+
+ bool openBoltLib(const Common::String &filename, BoltFile *&boltFile);
+ byte *fload(const Common::String &filename, int *size);
+};
+
+class RectEntry: public Common::Rect {
+public:
+ int _arrIndex;
+ int _count;
+
+ RectEntry(int x1, int y1, int x2, int y2, int arrIndex, int count);
+};
+
+class RectResource: public Common::Rect {
+public:
+ Common::Array<RectEntry> _entries;
+public:
+ RectResource(const byte *src, int size, bool isExtendedRects);
+ RectResource(int xp, int yp, int width, int height);
+ virtual ~RectResource() {}
+};
+
+/* bvoy.blt resource types */
+
+enum PictureFlag {
+ PICFLAG_2 = 2, PICFLAG_PIC_OFFSET = 8, PICFLAG_CLEAR_SCREEN = 0x10,
+ PICFLAG_20 = 0x20, PICFLAG_HFLIP = 0x40, PICFLAG_VFLIP = 0x80, PICFLAG_100 = 0x100,
+ PICFLAG_CLEAR_SCREEN00 = 0x1000
+};
+
+enum DisplayFlag {
+ DISPFLAG_1 = 1, DISPFLAG_2 = 2, DISPFLAG_4 = 4, DISPFLAG_8 = 8,
+ DISPFLAG_10 = 0x10, DISPFLAG_20 = 0x20, DISPFLAG_40 = 0x40, DISPFLAG_80 = 0x80,
+ DISPFLAG_100 = 0x100, DISPFLAG_200 = 0x200, DISPFLAG_400 = 0x400,
+ DISPFLAG_800 = 0x800, DISPFLAG_1000 = 0x1000, DISPFLAG_2000 = 0x2000,
+ DISPFLAG_4000 = 0x4000, DISPFLAG_VIEWPORT = 0x8000, DISPFLAG_CURSOR = 0x10000,
+ DISPFLAG_NONE = 0};
+
+class DisplayResource {
+private:
+ VoyeurEngine *_vm;
+public:
+ uint32 _flags;
+public:
+ DisplayResource();
+ DisplayResource(VoyeurEngine *vm);
+
+ /**
+ * Fill a box of the given size at the current _drawPtr location
+ */
+ void sFillBox(int width, int height);
+
+ /**
+ * Draw text at the current pen position
+ */
+ int drawText(const Common::String &msg);
+
+ /**
+ * Return the width of a given text in the current font
+ */
+ int textWidth(const Common::String &msg);
+
+ /**
+ * Clip the given rectangle by the currently viewable area
+ */
+ bool clipRect(Common::Rect &rect);
+};
+
+class PictureResource: public DisplayResource {
+private:
+ /**
+ * Flip the image data horizontally
+ */
+ void flipHorizontal(const byte *data);
+
+ /**
+ * Flip the image data vertically
+ */
+ void flipVertical(const byte *data);
+public:
+ byte _select;
+ byte _pick;
+ byte _onOff;
+ Common::Rect _bounds;
+ uint32 _maskData;
+ uint _planeSize;
+ byte _keyColor;
+
+ /**
+ * Image data for the picture
+ */
+ byte *_imgData;
+
+ /**
+ * Flag to indicate whether to free the image data
+ */
+ DisposeAfterUse::Flag _freeImgData;
+public:
+ PictureResource(BoltFilesState &state, const byte *src);
+ PictureResource(int flags, int select, int pick, int onOff,
+ const Common::Rect &bounds, int maskData, byte *imgData, int planeSize);
+ PictureResource(Graphics::Surface *surface);
+ PictureResource();
+ virtual ~PictureResource();
+};
+
+typedef void (ViewPortResource::*ViewPortMethodPtr)();
+
+class ViewPortResource: public DisplayResource {
+private:
+ BoltFilesState &_state;
+private:
+ void setupViewPort(PictureResource *page, Common::Rect *clippingRect, ViewPortSetupPtr setupFn,
+ ViewPortAddPtr addFn, ViewPortRestorePtr restoreFn);
+public:
+ ViewPortResource *_parent;
+ int _pageCount;
+ int _pageIndex;
+ int _lastPage;
+ Common::Rect _bounds;
+ PictureResource *_currentPic;
+ PictureResource *_activePage;
+ PictureResource *_pages[2];
+
+ // Rect lists and counts. Note that _rectListCount values of '-1' seem to have
+ // special significance, which is why I'm not making them redundant in favor
+ // of the arrays' .size() method
+ Common::Array<Common::Rect> *_rectListPtr[3];
+ int _rectListCount[3];
+
+ Common::Rect _clipRect;
+ GraphicMethodPtr _fn1;
+ ViewPortSetupPtr _setupFn;
+ ViewPortAddPtr _addFn;
+ ViewPortRestorePtr _restoreFn;
+ Common::Rect _fontRect;
+public:
+ ViewPortResource(BoltFilesState &state, const byte *src);
+ virtual ~ViewPortResource();
+
+ void setupViewPort();
+ void setupViewPort(PictureResource *pic, Common::Rect *clippingRect = NULL);
+ void addSaveRect(int pageIndex, const Common::Rect &r);
+ void fillPic(byte onOff);
+ void drawIfaceTime();
+ void drawPicPerm(PictureResource *pic, const Common::Point &pt);
+};
+
+class ViewPortPalEntry {
+public:
+ uint16 _rEntry, _gEntry, _bEntry;
+ uint16 _rChange, _gChange, _bChange;
+ uint16 _palIndex;
+public:
+ ViewPortPalEntry(const byte *src);
+};
+
+class ViewPortListResource {
+public:
+ Common::Array<ViewPortPalEntry> _palette;
+ Common::Array<ViewPortResource *> _entries;
+ int _palIndex;
+
+ ViewPortListResource(BoltFilesState &state, const byte *src);
+ virtual ~ViewPortListResource() {}
+};
+
+class FontResource {
+public:
+ int _minChar, _maxChar;
+ int _fontDepth;
+ int _padding;
+ int _fontHeight;
+ int _topPadding;
+ int *_charWidth;
+ byte *_charOffsets;
+ byte *_charImages;
+
+ FontResource(BoltFilesState &state, byte *src);
+ virtual ~FontResource();
+};
+
+enum FontJustify { ALIGN_LEFT = 0, ALIGN_CENTER = 1, ALIGN_RIGHT = 2 };
+
+class FontInfoResource {
+public:
+ FontResource *_curFont;
+ byte _picFlags;
+ byte _picSelect;
+ byte _picPick;
+ byte _picOnOff;
+ byte _fontFlags;
+ FontJustify _justify;
+ int _fontSaveBack;
+ Common::Point _pos;
+ int _justifyWidth;
+ int _justifyHeight;
+ Common::Point _shadow;
+ int _foreColor;
+ int _backColor;
+ int _shadowColor;
+public:
+ FontInfoResource(BoltFilesState &state, const byte *src);
+ FontInfoResource();
+ FontInfoResource(byte picFlags, byte picSelect, byte picPick, byte picOnOff, byte fontFlags,
+ FontJustify justify, int fontSaveBack, const Common::Point &pos, int justifyWidth,
+ int justifyHeight, const Common::Point &shadow, int foreColor, int backColor,
+ int shadowColor);
+};
+
+class CMapResource {
+private:
+ VoyeurEngine *_vm;
+public:
+ int _steps;
+ int _fadeStatus;
+ int _start;
+ int _end;
+ byte *_entries;
+public:
+ CMapResource(BoltFilesState &state, const byte *src);
+ virtual ~CMapResource();
+
+ void startFade();
+};
+
+class VInitCycleResource {
+private:
+ BoltFilesState &_state;
+public:
+ int _type[4];
+ byte *_ptr[4];
+public:
+ VInitCycleResource(BoltFilesState &state, const byte *src);
+ virtual ~VInitCycleResource() {}
+
+ void vStartCycle();
+ void vStopCycle();
+};
+
+/* stampblt.blt resources */
+
+class PtrResource {
+public:
+ Common::Array<BoltEntry *> _entries;
+
+ PtrResource(BoltFilesState &state, const byte *src);
+ virtual ~PtrResource() {}
+};
+
+class ControlResource {
+public:
+ int _memberIds[8];
+ byte *_entries[8];
+ int _stateId;
+ StateResource *_state;
+
+ ControlResource(BoltFilesState &state, const byte *src);
+ virtual ~ControlResource() {}
+};
+
+/**
+ * Stores data about the intended victim
+ */
+class StateResource {
+public:
+ int _vals[4];
+ int &_victimIndex;
+ int &_victimEvidenceIndex;
+ int &_victimMurderIndex;
+
+ StateResource(BoltFilesState &state, const byte *src);
+ virtual ~StateResource() {}
+
+ /**
+ * Synchronizes the game data
+ */
+ void synchronize(Common::Serializer &s);
+};
+
+class ThreadResource {
+public:
+ static int _useCount[8];
+ static void initUseCount();
+ static void unloadAllStacks(VoyeurEngine *vm);
+
+ static void init();
+private:
+ VoyeurEngine *_vm;
+ Common::Point _aptPos;
+private:
+ bool getStateInfo();
+ byte *getDataOffset();
+ void getButtonsText();
+ void getButtonsFlags();
+ void performOpenCard();
+ const byte *getRecordOffset(const byte *p);
+ const byte *getNextRecord(const byte *p);
+ const byte *getSTAMPCard(int cardId);
+ int getStateFromID(uint32 id);
+ uint32 getSID(int sid);
+ void cardAction(const byte *p);
+ void doSTAMPCardAction();
+ bool goToStateID(int stackId, int id);
+ const byte *cardPerform(const byte *card);
+ bool cardPerform2(const byte *p, int cardCmdId);
+ void savePrevious();
+ void setButtonFlag(int idx, byte bits);
+ void clearButtonFlag(int idx, byte bits);
+
+ /**
+ * Frees the apartment screen data
+ */
+ void freeTheApt();
+
+ /**
+ * Does any necessary animation at the start or end of showing the apartment.
+ */
+ void doAptAnim(int mode);
+
+ /**
+ * Updates the mansion scroll position if ncessary, and returns true if it
+ * has been changed.
+ */
+ bool checkMansionScroll();
+public:
+ int _stateId;
+ int _stackId;
+ int _savedStateId;
+ int _savedStackId;
+ int _newStateId;
+ int _newStackId;
+ int _stateFlags;
+ int _stateCount;
+ int _parseCount;
+ uint32 _nextStateId;
+ byte *_threadInfoPtr;
+ byte _buttonFlags[64];
+ byte _buttonIds[64];
+ byte *_ctlPtr;
+ byte *_playCommandsPtr;
+
+ /**
+ * Loads the specified stack
+ */
+ bool loadAStack(int stackId);
+
+ /**
+ * Unloads the specified stack
+ */
+ void unloadAStack(int stackId);
+
+ /**
+ * Initializes data for the thread based on the current state
+ */
+ bool doState();
+
+public:
+ ThreadResource(BoltFilesState &state, const byte *src);
+ virtual ~ThreadResource() {}
+
+ /**
+ * Initialize the thread
+ */
+ void initThreadStruct(int idx, int id);
+
+ /**
+ * Go to a new state and/or stack
+ */
+ bool goToState(int stackId, int stateId);
+
+ bool chooseSTAMPButton(int buttonId);
+
+ /**
+ * Parses the script commands from the currently active stack
+ */
+ void parsePlayCommands();
+
+ /**
+ * Do the camera view looking at the mansion
+ */
+ int doInterface();
+
+ /**
+ * Do the display of a room that has one or more evidence hotspots
+ * available for display
+ */
+ void doRoom();
+
+ /**
+ * Shows the apartment screen
+ */
+ int doApt();
+
+ /**
+ * Loads data needed for displaying the initial apartment screen
+ */
+ void loadTheApt();
+
+ /**
+ * Synchronizes the game data
+ */
+ void synchronize(Common::Serializer &s);
+};
+
+} // End of namespace Voyeur
+
+#endif /* VOYEUR_FILES_H */
diff --git a/engines/voyeur/files_threads.cpp b/engines/voyeur/files_threads.cpp
new file mode 100644
index 0000000000..700944f7ef
--- /dev/null
+++ b/engines/voyeur/files_threads.cpp
@@ -0,0 +1,1731 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/files.h"
+#include "voyeur/graphics.h"
+#include "voyeur/voyeur.h"
+#include "voyeur/staticres.h"
+
+namespace Voyeur {
+
+int ThreadResource::_useCount[8];
+
+void ThreadResource::init() {
+ Common::fill(&_useCount[0], &_useCount[8], 0);
+}
+
+ThreadResource::ThreadResource(BoltFilesState &state, const byte *src):_vm(state._vm) {
+ _stateId = READ_LE_UINT16(&src[0]);
+ _stackId = READ_LE_UINT16(&src[0]);
+ _savedStateId = READ_LE_UINT16(&src[0]);
+ _savedStackId = READ_LE_UINT16(&src[0]);
+ _ctlPtr = nullptr;
+ _aptPos = Common::Point(-1, -1);
+
+ _newStateId = -1;
+ _newStackId = -1;
+ _stateFlags = 0;
+ _stateCount = 0;
+ _parseCount = 0;
+ _nextStateId = 0;
+ _threadInfoPtr = nullptr;
+ _playCommandsPtr = nullptr;
+}
+
+void ThreadResource::initThreadStruct(int idx, int id) {
+ _stackId = -1;
+ if (loadAStack(idx)) {
+ _savedStateId = _savedStackId = -1;
+ _stateId = id;
+ _newStateId = -1;
+ _newStackId = -1;
+
+ doState();
+ }
+}
+
+bool ThreadResource::loadAStack(int stackId) {
+ if (_vm->_stampFlags & 1) {
+ if (stackId < 0)
+ error("loadAStack() - Invalid stackId %d", stackId);
+
+ unloadAStack(_stackId);
+ if (!_useCount[stackId]) {
+ BoltEntry &boltEntry = _vm->_stampLibPtr->boltEntry(_vm->_controlPtr->_memberIds[stackId]);
+ if (!boltEntry._data)
+ return false;
+
+ _vm->_controlPtr->_entries[stackId] = boltEntry._data;
+ }
+
+ ++_useCount[stackId];
+ }
+
+ _ctlPtr = _vm->_controlPtr->_entries[stackId];
+ _stackId = stackId;
+ return true;
+}
+
+void ThreadResource::unloadAStack(int stackId) {
+ if (stackId < 0)
+ return;
+
+ if ((_vm->_stampFlags & 1) && _useCount[stackId]) {
+ if (--_useCount[stackId] == 0) {
+ _vm->_stampLibPtr->freeBoltMember(_vm->_controlPtr->_memberIds[stackId]);
+ }
+ }
+}
+
+bool ThreadResource::doState() {
+ if (!getStateInfo())
+ return false;
+
+ getButtonsFlags();
+
+ _vm->_glGoState = -1;
+ _vm->_glGoStack = -1;
+
+ performOpenCard();
+ if (_stateFlags & 1) {
+ return chooseSTAMPButton(_vm->getRandomNumber(_stateCount - 1));
+ } else {
+ return true;
+ }
+}
+
+bool ThreadResource::getStateInfo() {
+ int id = READ_LE_UINT16(_ctlPtr);
+
+ if (id <= _stateId) {
+ return false;
+ } else {
+ uint32 fld = READ_LE_UINT32(_ctlPtr + 2);
+ fld += _stateId << 3;
+ _nextStateId = READ_LE_UINT32(_ctlPtr + fld + 4);
+
+ fld = READ_LE_UINT32(_ctlPtr + fld);
+ byte *baseP = _ctlPtr + fld;
+ _stateCount = READ_LE_UINT16(baseP);
+ _stateFlags = READ_LE_UINT16(baseP + 2);
+ _parseCount = READ_LE_UINT16(baseP + 4);
+
+ _playCommandsPtr = getDataOffset();
+ _playCommandsPtr += (READ_LE_UINT32(baseP + 6) / 2) << 1;
+
+ _threadInfoPtr = baseP + 10;
+
+ getButtonsText();
+ return true;
+ }
+}
+
+byte *ThreadResource::getDataOffset() {
+ uint32 offset = READ_LE_UINT32(_ctlPtr + 10);
+ return _ctlPtr + offset;
+}
+
+void ThreadResource::getButtonsText() {
+ int idx = 0;
+
+ for (const byte *p = _threadInfoPtr; *p != 0x49; p = getNextRecord(p)) {
+ if (*p == 0xC0) {
+ ++p;
+ if (*p++ & 0x80) {
+ assert(idx < 63);
+ p += 4;
+ }
+
+ ++idx;
+ }
+ }
+}
+
+void ThreadResource::getButtonsFlags() {
+ int idx = 0;
+
+ for (const byte *p = _threadInfoPtr; *p != 0x49; p = getNextRecord(p)) {
+ if (*p == 0xC0) {
+ if (*++p & 0x20)
+ _stateFlags |= 2;
+
+ _buttonFlags[idx] = *p++;
+ _buttonIds[idx] = *p++;
+
+ if (_buttonFlags[idx] & 0x80)
+ p += 4;
+
+ ++idx;
+ }
+ }
+}
+
+void ThreadResource::unloadAllStacks(VoyeurEngine *vm) {
+ if (vm->_stampFlags & 1) {
+ for (int i = 0; i < 8; ++i) {
+ if (_useCount[i])
+ vm->_stampLibPtr->freeBoltMember(vm->_controlPtr->_memberIds[i]);
+ }
+ }
+}
+
+void ThreadResource::performOpenCard() {
+ for (const byte *p = _threadInfoPtr; *p != 0x49; p = getNextRecord(p)) {
+ if (*p == 0x47) {
+ cardAction(p + 1);
+ return;
+ }
+ }
+}
+
+void ThreadResource::initUseCount() {
+ Common::fill(&_useCount[0], &_useCount[8], 0);
+}
+
+const byte *ThreadResource::getRecordOffset(const byte *p) {
+ uint32 recSize = READ_LE_UINT32(p) + READ_LE_UINT32(_ctlPtr + 6);
+ return _ctlPtr + recSize;
+}
+
+const byte *ThreadResource::getNextRecord(const byte *p) {
+ byte v = *p++;
+
+ switch (v) {
+ case 2:
+ case 4:
+ case 6:
+ case 8:
+ case 10:
+ return p + 8;
+ case 1:
+ case 3:
+ case 5:
+ case 7:
+ case 9:
+ case 11:
+ case 21:
+ case 22:
+ case 25:
+ case 26:
+ return p + 5;
+ case 17:
+ case 23:
+ case 24:
+ case 27:
+ case 28:
+ return p + 2;
+ case 19:
+ case 41:
+ return p + 6;
+ case 18:
+ case 51:
+ case 52:
+ return p + 1;
+ case 74:
+ return p + 4;
+ case 192:
+ if (*p & 0x80)
+ p += 4;
+ return p + 2;
+ default:
+ return p;
+ }
+}
+
+const byte *ThreadResource::getSTAMPCard(int cardId) {
+ const byte *p;
+ int count = 0;
+
+ for (p = _threadInfoPtr; count <= cardId && *p != 0x49; p = getNextRecord(p)) {
+ if (*p == 0xC0)
+ ++count;
+ }
+
+ return p;
+}
+
+int ThreadResource::getStateFromID(uint32 id) {
+ int count = READ_LE_UINT16(_ctlPtr);
+
+ for (int i = 0; i < count; ++i) {
+ uint32 sid = getSID(i);
+ if (sid == id)
+ return i;
+ }
+
+ return -1;
+}
+
+uint32 ThreadResource::getSID(int sid) {
+ uint32 offset = READ_LE_UINT32(_ctlPtr + 2) + (sid << 3) + 4;
+ return READ_LE_UINT32(_ctlPtr + offset);
+}
+
+void ThreadResource::doSTAMPCardAction() {
+ for (const byte *p = _threadInfoPtr; *p != 0x49; p = getNextRecord(p)) {
+ if (*p == 0x48) {
+ cardAction(p + 1);
+ return;
+ }
+ }
+}
+
+void ThreadResource::cardAction(const byte *card) {
+ _vm->_glGoState = -1;
+ _vm->_glGoStack = -1;
+
+ // Loop to perform card commands
+ while (!_vm->shouldQuit() && *card < 70 && _vm->_glGoState == -1) {
+ card = cardPerform(card);
+ }
+}
+
+bool ThreadResource::chooseSTAMPButton(int buttonId) {
+ for (int idx = 0; idx < _stateCount; ++idx) {
+ if (_buttonIds[idx] == buttonId) {
+ const byte *card = getSTAMPCard(idx);
+ cardAction(card);
+
+ bool flag = true;
+ while (!_vm->shouldQuit() && _vm->_glGoStack != -1 && flag) {
+ doSTAMPCardAction();
+ flag = goToStateID(_vm->_glGoStack, _vm->_glGoState);
+ }
+
+ while (!_vm->shouldQuit() && _vm->_glGoState != -1 && flag) {
+ doSTAMPCardAction();
+ flag = goToState(-1, _vm->_glGoState);
+ }
+
+ return flag;
+ }
+ }
+
+ return false;
+}
+
+void ThreadResource::parsePlayCommands() {
+ _vm->_voy->_playStampMode = -1;
+ _vm->_voy->_audioVisualStartTime = 0;
+ _vm->_voy->_audioVisualDuration = 0;
+ _vm->_voy->_boltGroupId2 = -1;
+ _vm->_voy->_computerTextId = -1;
+ _vm->_voy->_eventFlags &= ~EVTFLAG_8;
+ _vm->_eventsManager->_videoDead = -1;
+
+ // Reset hotspot data
+ _vm->_voy->_videoHotspotTimes.reset();
+ _vm->_voy->_audioHotspotTimes.reset();
+ _vm->_voy->_evidenceHotspotTimes.reset();
+ Common::fill(&_vm->_voy->_roomHotspotsEnabled[0], &_vm->_voy->_roomHotspotsEnabled[20], false);
+ byte *dataP = _playCommandsPtr;
+ int v2, v3;
+ PictureResource *pic;
+ CMapResource *pal;
+
+ for (int parseIndex = 0; parseIndex < _parseCount; ++parseIndex) {
+ uint16 id = READ_LE_UINT16(dataP);
+ debugC(DEBUG_BASIC, kDebugScripts, "parsePlayCommands (%d of %d) - cmd #%d",
+ parseIndex + 1, _parseCount, id);
+ dataP += 2;
+
+ switch (id) {
+ case 1:
+ _vm->_currentVocId = READ_LE_UINT16(dataP);
+ dataP += 2;
+ break;
+
+ case 2:
+ // Play an audio event
+ v2 = READ_LE_UINT16(dataP);
+
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2) {
+ _vm->_audioVideoId = READ_LE_UINT16(dataP + 2) - 1;
+ _vm->_voy->_audioVisualStartTime = READ_LE_UINT16(dataP + 4);
+ _vm->_voy->_audioVisualDuration = READ_LE_UINT16(dataP + 6);
+
+ if (_vm->_voy->_RTVNum < _vm->_voy->_audioVisualStartTime ||
+ (_vm->_voy->_audioVisualStartTime + _vm->_voy->_audioVisualDuration) < _vm->_voy->_RTVNum) {
+ _vm->_audioVideoId = -1;
+ } else {
+ _vm->_voy->_vocSecondsOffset = _vm->_voy->_RTVNum - _vm->_voy->_audioVisualStartTime;
+ _vm->_voy->addAudioEventStart();
+
+ // Play the audio
+ assert(_vm->_audioVideoId < 38);
+ _vm->playAudio(_vm->_audioVideoId);
+
+ _vm->_voy->addAudioEventEnd();
+ _vm->_eventsManager->incrementTime(1);
+ _vm->_eventsManager->incrementTime(1);
+ _vm->_audioVideoId = -1;
+ parseIndex = 999;
+ }
+ }
+
+ dataP += 8;
+ break;
+
+ case 3:
+ // Play a video event
+ v2 = READ_LE_UINT16(dataP);
+
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2) {
+ _vm->_audioVideoId = READ_LE_UINT16(dataP + 2) - 1;
+ _vm->_voy->_audioVisualStartTime = READ_LE_UINT16(dataP + 4);
+ _vm->_voy->_audioVisualDuration = READ_LE_UINT16(dataP + 6);
+
+ if (_vm->_voy->_RTVNum < _vm->_voy->_audioVisualStartTime ||
+ (_vm->_voy->_audioVisualStartTime + _vm->_voy->_audioVisualDuration) < _vm->_voy->_RTVNum) {
+ _vm->_audioVideoId = -1;
+ } else {
+ _vm->_voy->_vocSecondsOffset = _vm->_voy->_RTVNum - _vm->_voy->_audioVisualStartTime;
+ _vm->_voy->addVideoEventStart();
+ _vm->_voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+ _vm->_voy->_eventFlags |= EVTFLAG_RECORDING;
+ _vm->playAVideo(_vm->_audioVideoId);
+
+ _vm->_voy->_eventFlags &= ~EVTFLAG_RECORDING;
+ _vm->_voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+ _vm->_voy->addVideoEventEnd();
+ _vm->_eventsManager->incrementTime(1);
+
+ _vm->_audioVideoId = -1;
+ _vm->_playStampGroupId = -1;
+
+ if (_vm->_eventsManager->_videoDead != -1) {
+ _vm->_bVoy->freeBoltGroup(0xE00);
+ _vm->_eventsManager->_videoDead = -1;
+ _vm->flipPageAndWait();
+ }
+
+ _vm->_eventsManager->_videoDead = -1;
+ if (_stateCount == 2 && _vm->_eventsManager->_mouseClicked == 0) {
+ _vm->_voy->_playStampMode = 132;
+ parseIndex = 999;
+ } else {
+ _vm->_voy->_playStampMode = 129;
+ }
+ }
+ }
+
+ dataP += 8;
+ break;
+
+ case 4:
+ case 22:
+ // Case 22: Endgame news reports
+ _vm->_audioVideoId = READ_LE_UINT16(dataP) - 1;
+ dataP += 2;
+
+ if (id == 22) {
+ int resolveIndex = READ_LE_UINT16(dataP);
+ dataP += 2;
+ _vm->_playStampGroupId = _vm->_resolvePtr[resolveIndex];
+ }
+
+ _vm->_voy->_vocSecondsOffset = 0;
+ _vm->_voy->_audioVisualStartTime = _vm->_voy->_RTVNum;
+ _vm->_voy->_eventFlags &= ~(EVTFLAG_TIME_DISABLED | EVTFLAG_RECORDING);
+ _vm->playAVideo(_vm->_audioVideoId);
+ _vm->_voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+
+ if (id != 22) {
+ _vm->_audioVideoId = -1;
+ parseIndex = 999;
+ } else {
+ int count = _vm->_bVoy->getBoltGroup(_vm->_playStampGroupId)->_entries.size() / 2;
+ _vm->_soundManager->stopVOCPlay();
+ _vm->_eventsManager->getMouseInfo();
+
+ for (int i = 0; i < count; ++i) {
+ pic = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + i * 2)._picResource;
+ pal = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + i * 2 + 1)._cMapResource;
+
+ _vm->_graphicsManager->_vPort->setupViewPort(pic);
+ pal->startFade();
+
+ _vm->flipPageAndWaitForFade();
+
+ if (i > 0) {
+ _vm->_bVoy->freeBoltMember(_vm->_playStampGroupId + i * 2);
+ _vm->_bVoy->freeBoltMember(_vm->_playStampGroupId + i * 2 + 1);
+ }
+
+ Common::String file = Common::String::format("news%d.voc", i + 1);
+ _vm->_soundManager->startVOCPlay(file);
+
+ while (!_vm->shouldQuit() && !_vm->_eventsManager->_mouseClicked &&
+ _vm->_soundManager->getVOCStatus()) {
+ _vm->_eventsManager->delayClick(1);
+ _vm->_eventsManager->getMouseInfo();
+ }
+
+ _vm->_soundManager->stopVOCPlay();
+
+ if (i == (count - 1))
+ _vm->_eventsManager->delayClick(480);
+
+ if (_vm->shouldQuit() || _vm->_eventsManager->_mouseClicked)
+ break;
+ }
+
+ _vm->_bVoy->freeBoltGroup(_vm->_playStampGroupId);
+ _vm->_playStampGroupId = -1;
+ _vm->_audioVideoId = -1;
+ parseIndex = 999;
+ }
+ break;
+
+ case 5:
+ // Check whether transition to a given time period is allowed, and
+ // if so, load the time information for the new time period
+ v2 = READ_LE_UINT16(dataP);
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2) {
+ _vm->_voy->_playStampMode = 5;
+ int count = READ_LE_UINT16(dataP + 2);
+ _vm->_voy->_RTVLimit = READ_LE_UINT16(dataP + 4);
+
+ if (_vm->_voy->_transitionId != count) {
+ if (_vm->_voy->_transitionId > 1)
+ _vm->_voy->_eventFlags &= ~EVTFLAG_100;
+
+ _vm->_voy->_transitionId = count;
+ _vm->_gameMinute = LEVEL_M[count - 1];
+ _vm->_gameHour = LEVEL_H[count - 1];
+ //_vm->_v2A0A2 = 0;
+ _vm->_voy->_RTVNum = 0;
+ _vm->_voy->_RTANum = 255;
+ }
+
+ _vm->_voy->_isAM = (_vm->_voy->_transitionId == 6);
+ }
+
+ dataP += 6;
+ break;
+
+ case 6:
+ _vm->_voy->_playStampMode = 6;
+ v2 = READ_LE_UINT16(dataP);
+ _vm->_playStampGroupId = _vm->_resolvePtr[v2];
+ dataP += 2;
+ break;
+
+ case 7:
+ // Load the video event scene hotspot times data
+ v2 = READ_LE_UINT16(dataP);
+ v3 = READ_LE_UINT16(dataP + 2) - 1;
+
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2) {
+ int idx = 0;
+ while (_vm->_voy->_videoHotspotTimes._min[idx][v3] != 9999)
+ ++idx;
+
+ v2 = READ_LE_UINT16(dataP + 4);
+ _vm->_voy->_videoHotspotTimes._min[idx][v3] = v2;
+ _vm->_voy->_videoHotspotTimes._max[idx][v3] = v2 + READ_LE_UINT16(dataP + 6) - 2;
+ }
+
+ dataP += 8;
+ break;
+
+ case 8:
+ // Load the audio event scene hotspot times data
+ v2 = READ_LE_UINT16(dataP);
+ v3 = READ_LE_UINT16(dataP + 2) - 1;
+
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2) {
+ int idx = 0;
+ while (_vm->_voy->_audioHotspotTimes._min[idx][v3] != 9999)
+ ++idx;
+
+ v2 = READ_LE_UINT16(dataP + 4);
+ _vm->_voy->_audioHotspotTimes._min[idx][v3] = v2;
+ _vm->_voy->_audioHotspotTimes._max[idx][v3] = v2 + READ_LE_UINT16(dataP + 6) - 2;
+ }
+
+ dataP += 8;
+ break;
+
+ case 9:
+ // Load up evidence event scene hotspot times data
+ v2 = READ_LE_UINT16(dataP);
+ v3 = READ_LE_UINT16(dataP + 2) - 1;
+
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2) {
+ int idx = 0;
+ while (_vm->_voy->_evidenceHotspotTimes._min[idx][v3] != 9999)
+ ++idx;
+
+ v2 = READ_LE_UINT16(dataP + 4);
+ _vm->_voy->_evidenceHotspotTimes._min[idx][v3] = v2;
+ _vm->_voy->_evidenceHotspotTimes._max[idx][v3] = v2 + READ_LE_UINT16(dataP + 6) - 2;
+ }
+
+ dataP += 8;
+ break;
+
+ case 10:
+ // Pick the person who is to die, during startup
+ if (_vm->_iForceDeath == -1) {
+ // No specific person has been preset to be killed, so pick one randomly.
+ // The loop below was used because the victim was persisted from the previous
+ // play-through, so it ensured that a different victim is picked.
+ int randomVal;
+ do {
+ randomVal = _vm->getRandomNumber(3) + 1;
+ } while (randomVal == _vm->_voy->_victimNumber);
+
+ _vm->_voy->_victimNumber = randomVal;
+ _vm->_controlPtr->_state->_victimIndex = randomVal;
+ } else {
+ // Player has seen something that locks in the character to die
+ _vm->_voy->_victimNumber = _vm->_iForceDeath;
+ _vm->_controlPtr->_state->_victimIndex = _vm->_iForceDeath;
+ }
+
+ _vm->saveLastInplay();
+ break;
+
+ case 11:
+ _vm->_voy->_eventFlags |= EVTFLAG_2;
+ break;
+
+ case 12:
+ v2 = READ_LE_UINT16(dataP);
+
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2) {
+ _vm->_voy->_boltGroupId2 = _vm->_resolvePtr[READ_LE_UINT16(dataP + 2)];
+ _vm->_voy->_roomHotspotsEnabled[READ_LE_UINT16(dataP + 4) - 1] = true;
+ }
+
+ dataP += 6;
+ break;
+
+ case 13:
+ v2 = READ_LE_UINT16(dataP);
+
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2) {
+ _vm->_voy->_computerTextId = READ_LE_UINT16(dataP + 2) - 1;
+ _vm->_voy->_computerTimeMin = READ_LE_UINT16(dataP + 4);
+ _vm->_voy->_computerTimeMax = READ_LE_UINT16(dataP + 6);
+
+ _vm->_voy->_computerScreenRect.left = COMPUTER_SCREEN_TABLE[_vm->_voy->_computerTextId * 4];
+ _vm->_voy->_computerScreenRect.top = COMPUTER_SCREEN_TABLE[_vm->_voy->_computerTextId * 4 + 1];
+ _vm->_voy->_computerScreenRect.right = COMPUTER_SCREEN_TABLE[_vm->_voy->_computerTextId * 4 + 2];
+ _vm->_voy->_computerScreenRect.bottom = COMPUTER_SCREEN_TABLE[_vm->_voy->_computerTextId * 4 + 3];
+ }
+
+ dataP += 8;
+ break;
+
+ case 14:
+ _vm->_playStampGroupId = 2048;
+ _vm->_voy->_playStampMode = 130;
+ break;
+
+ case 15:
+ _vm->showEndingNews();
+ break;
+
+ case 16:
+ _vm->_voy->_playStampMode = 16;
+ break;
+
+ case 17:
+ _vm->_voy->_playStampMode = 17;
+ break;
+
+ case 18:
+ // Called during the murder (Sunday 10:30PM) time period, to specify the
+ // time expired point at which the murder takes place
+ v2 = READ_LE_UINT16(dataP);
+ v3 = READ_LE_UINT16(dataP + 2);
+
+ if (v2 == 0 || _vm->_controlPtr->_state->_victimIndex == v2)
+ _vm->_voy->_murderThreshold = v3;
+
+ dataP += 4;
+ break;
+
+ case 19:
+ _vm->_voy->_aptLoadMode = 140;
+ loadTheApt();
+ _vm->_voy->_aptLoadMode = 141;
+ freeTheApt();
+ break;
+
+ case 20:
+ _vm->_voy->_aptLoadMode = -1;
+ loadTheApt();
+ _vm->_voy->_aptLoadMode = 141;
+ freeTheApt();
+ break;
+
+ case 21:
+ _vm->_voy->_aptLoadMode = -1;
+ loadTheApt();
+ _vm->_voy->_aptLoadMode = 140;
+ freeTheApt();
+ break;
+
+ case 23:
+ _vm->_voy->_transitionId = 17;
+ _vm->_voy->_aptLoadMode = -1;
+ loadTheApt();
+ _vm->_voy->_aptLoadMode = 144;
+ freeTheApt();
+ break;
+
+ default:
+ break;
+ }
+ }
+}
+
+const byte *ThreadResource::cardPerform(const byte *card) {
+ uint16 id = *card++;
+ int subId = 5;
+ uint32 v2;
+ byte bVal;
+ uint32 idx1, idx2;
+ debugC(DEBUG_BASIC, kDebugScripts, "cardPerform - %d", id);
+
+ switch (id) {
+ case 1:
+ v2 = READ_LE_UINT32(card);
+ card += 4;
+ _vm->_controlPtr->_state->_vals[*card++] = v2;
+ break;
+
+ case 2:
+ v2 = _vm->_controlPtr->_state->_vals[*card++];
+ _vm->_controlPtr->_state->_vals[*card++] = v2;
+ break;
+
+ case 3:
+ v2 = READ_LE_UINT32(card);
+ card += 4;
+ _vm->_controlPtr->_state->_vals[*card++] = v2;
+ break;
+
+ case 4:
+ v2 = _vm->_controlPtr->_state->_vals[*card++];
+ _vm->_controlPtr->_state->_vals[*card++] = v2;
+ break;
+
+ case 5: {
+ v2 = READ_LE_UINT32(card);
+ card += 4;
+ int &v = _vm->_controlPtr->_state->_vals[*card++];
+ v -= v2;
+ break;
+ }
+
+ case 6: {
+ idx1 = *card++;
+ idx2 = *card++;
+
+ v2 = _vm->_controlPtr->_state->_vals[idx1];
+ int &v = _vm->_controlPtr->_state->_vals[idx2];
+ v -= v2;
+ break;
+ }
+
+ case 7: {
+ int v3 = *card++;
+ v2 = READ_LE_UINT32(card);
+ card += 4;
+ int &v = _vm->_controlPtr->_state->_vals[v3];
+ v *= v2;
+ break;
+ }
+
+ case 8: {
+ idx1 = *card++;
+ idx2 = *card++;
+
+ int &v1 = _vm->_controlPtr->_state->_vals[idx1];
+ v2 = _vm->_controlPtr->_state->_vals[idx2];
+ v1 *= v2;
+ break;
+ }
+
+ case 9: {
+ idx1 = *card++;
+ v2 = READ_LE_UINT32(card);
+ card += 4;
+
+ int &v = _vm->_controlPtr->_state->_vals[idx1];
+ v /= v2;
+ break;
+ }
+
+ case 10: {
+ idx1 = *card++;
+ idx2 = *card++;
+
+ int &v1 = _vm->_controlPtr->_state->_vals[idx1];
+ v2 = _vm->_controlPtr->_state->_vals[idx2];
+ v1 /= v2;
+ break;
+ }
+
+ case 11:
+ v2 = READ_LE_UINT32(card);
+ card += 4;
+ v2 = _vm->getRandomNumber(v2 - 1) + 1;
+ _vm->_controlPtr->_state->_vals[*card++] = v2;
+ break;
+
+ case 17:
+ _vm->_glGoState = READ_LE_UINT16(card);
+ card += 2;
+ _vm->_glGoStack = -1;
+ break;
+
+ case 18:
+ v2 = _vm->_controlPtr->_state->_vals[*card++];
+ _vm->_glGoState = getStateFromID(v2);
+ break;
+
+ case 19:
+ _vm->_glGoState = READ_LE_UINT32(card);
+ card += 4;
+ _vm->_glGoStack = READ_LE_UINT16(card);
+ card += 2;
+ break;
+
+ case 23:
+ case 24:
+ case 27:
+ case 28:
+ subId -= 3;
+ // Deliberate fall-through
+
+ case 21:
+ case 22:
+ case 25:
+ case 26:
+ bVal = card[subId];
+ if (bVal == 61) {
+ if (cardPerform2(card, id)) {
+ card += subId;
+ while (*card != 30 && *card != 29)
+ card = cardPerform(card);
+
+ if (*card == 29) {
+ int count = 1;
+ while (count > 0) {
+ card = getNextRecord(card);
+ if (*card == 30)
+ --count;
+ if (*card >= 21 && *card <= 28)
+ ++count;
+ }
+ }
+ } else {
+ card += subId;
+ int count = 1;
+ while (count > 0) {
+ card = getNextRecord(card);
+ if (*card == 29 || *card == 30)
+ --count;
+ if (*card < 21 || *card > 28)
+ continue;
+
+ const byte *nextP = getNextRecord(card + 2);
+ if (*nextP == 61)
+ ++count;
+ }
+ }
+
+ ++card;
+ } else {
+ if (cardPerform2(card, id)) {
+ card += subId;
+ card = cardPerform(card);
+ while (*card++ != 61) ;
+ } else {
+ card += subId;
+ while (*card != 61 && *card != 29)
+ ++card;
+ }
+ }
+ break;
+
+ case 41:
+ bVal = *card++;
+ assert(bVal < 8);
+ card += 6;
+ break;
+
+ case 45:
+ _newStateId = _nextStateId;
+ _newStackId = _stackId;
+ break;
+
+ case 46:
+ _vm->_glGoState = _newStateId;
+ _vm->_glGoStack = _newStackId;
+ _newStateId = -1;
+ _newStackId = -1;
+ break;
+
+ case 51:
+ setButtonFlag(READ_LE_UINT16(card), 64);
+ break;
+
+ case 52:
+ clearButtonFlag(READ_LE_UINT16(card), 64);
+ break;
+
+ default:
+ break;
+ }
+
+ return card;
+}
+
+bool ThreadResource::cardPerform2(const byte *pSrc, int cardCmdId) {
+ int vLong, vLong2;
+
+ switch (cardCmdId) {
+ case 21:
+ vLong = (int32)READ_LE_UINT32(pSrc + 1);
+ return _vm->_controlPtr->_state->_vals[*pSrc] == vLong;
+
+ case 22:
+ vLong = (int32)READ_LE_UINT32(pSrc + 1);
+ return _vm->_controlPtr->_state->_vals[*pSrc] != vLong;
+
+ case 23:
+ vLong = _vm->_controlPtr->_state->_vals[*pSrc];
+ vLong2 = _vm->_controlPtr->_state->_vals[*(pSrc + 1)];
+ return vLong == vLong2;
+
+ case 24:
+ vLong = _vm->_controlPtr->_state->_vals[*pSrc];
+ vLong2 = _vm->_controlPtr->_state->_vals[*(pSrc + 1)];
+ return vLong != vLong2;
+
+ case 25:
+ vLong = _vm->_controlPtr->_state->_vals[*pSrc];
+ vLong2 = (int32)READ_LE_UINT32(pSrc + 1);
+ return vLong < vLong2;
+
+ case 26:
+ vLong = _vm->_controlPtr->_state->_vals[*pSrc];
+ vLong2 = (int32)READ_LE_UINT32(pSrc + 1);
+ return vLong > vLong2;
+
+ case 27:
+ vLong = _vm->_controlPtr->_state->_vals[*pSrc];
+ vLong2 = _vm->_controlPtr->_state->_vals[*(pSrc + 1)];
+ return vLong < vLong2;
+
+ case 28:
+ vLong = _vm->_controlPtr->_state->_vals[*pSrc];
+ vLong2 = _vm->_controlPtr->_state->_vals[*(pSrc + 1)];
+ return vLong > vLong2;
+
+ default:
+ return false;
+ }
+}
+
+int ThreadResource::doApt() {
+ loadTheApt();
+
+ _vm->_currentVocId = 151;
+ _vm->_voy->_viewBounds = _vm->_bVoy->boltEntry(_vm->_playStampGroupId)._rectResource;
+ Common::Array<RectEntry> &hotspots = _vm->_bVoy->boltEntry(
+ _vm->_playStampGroupId + 1)._rectResource->_entries;
+ _vm->_eventsManager->getMouseInfo();
+
+ // Very first time apartment is shown, start the phone message
+ if (_aptPos.x == -1) {
+ _aptPos.x = hotspots[2].left;
+ _aptPos.y = hotspots[2].top;
+ _vm->_currentVocId = 153;
+ }
+
+ if (_vm->_voy->_playStampMode == 16) {
+ hotspots[0].left = 999;
+ hotspots[3].left = 999;
+ _aptPos.x = hotspots[4].left + 28;
+ _aptPos.y = hotspots[4].top + 28;
+ }
+
+ _vm->_eventsManager->setMousePos(Common::Point(_aptPos.x, _aptPos.y));
+ _vm->_soundManager->startVOCPlay(_vm->_soundManager->getVOCFileName(_vm->_currentVocId));
+ _vm->_currentVocId = 151;
+
+ _vm->_graphicsManager->setColor(129, 82, 82, 82);
+ _vm->_graphicsManager->setColor(130, 112, 112, 112);
+ _vm->_graphicsManager->setColor(131, 215, 215, 215);
+ _vm->_graphicsManager->setColor(132, 235, 235, 235);
+
+ _vm->_eventsManager->_intPtr._hasPalette = true;
+
+ // Set up the cursors
+ PictureResource *unselectedCursor = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + 2)._picResource;
+ PictureResource *selectedCursor = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + 3)._picResource;
+ unselectedCursor->_keyColor = 0xff;
+ selectedCursor->_keyColor = 0xff;
+ _vm->_eventsManager->setCursor(unselectedCursor);
+ _vm->_eventsManager->showCursor();
+
+ // Main loop to allow users to move the cursor and select hotspots
+ int hotspotId;
+ int prevHotspotId = -1;
+ Common::Point pt;
+ PictureResource *pic;
+ Common::Rect gmmHotspot(75, 125, 130, 140);
+
+ do {
+ _vm->_voyeurArea = AREA_APARTMENT;
+
+ if (_vm->_loadGameSlot != -1) {
+ // Load a savegame
+ _vm->loadGame(_vm->_loadGameSlot);
+ _vm->_loadGameSlot = -1;
+ }
+
+ _vm->_eventsManager->getMouseInfo();
+ if (!_vm->_soundManager->getVOCStatus()) {
+ // Previous sound ended, so start up a new one
+ _vm->_currentVocId = 151 - _vm->getRandomNumber(4);
+ _vm->_soundManager->startVOCPlay(_vm->_soundManager->getVOCFileName(_vm->_currentVocId));
+ }
+
+ // Loop through the hotspot list
+ hotspotId = -1;
+ pt = _vm->_eventsManager->getMousePos() + Common::Point(16, 16);
+ for (int idx = 0; idx < (int)hotspots.size(); ++idx) {
+ if (hotspots[idx].contains(pt)) {
+ // Cursor is within hotspot area
+
+ // Don't allow the camera to be highlighted on Monday morning.
+ if (idx == 0 && _vm->_voy->_transitionId == 17)
+ continue;
+
+ // Set the highlighted hotspot Id
+ hotspotId = idx;
+
+ if (hotspotId != prevHotspotId) {
+ // Check for whether to replace hotspot Id for "Watch TV" for
+ // "Review the Tape" if player has already watched the TV
+ if ((_vm->_voy->_eventFlags & EVTFLAG_100) && (hotspotId == 2))
+ hotspotId = 5;
+
+ // Draw the text description for the highlighted hotspot
+ pic = _vm->_bVoy->boltEntry(_vm->_playStampGroupId +
+ hotspotId + 6)._picResource;
+ _vm->_graphicsManager->sDrawPic(pic, _vm->_graphicsManager->_vPort,
+ Common::Point(106, 200));
+ }
+
+ break;
+ }
+ }
+
+ // Check for presence in ScummVM GMM
+ if (gmmHotspot.contains(pt))
+ hotspotId = 42;
+
+ // Update the cursor to either standard or highlighted eye cursor
+ _vm->_eventsManager->setCursor((hotspotId == -1) ? unselectedCursor : selectedCursor);
+ _vm->flipPageAndWait();
+
+ if (hotspotId == 42 && _vm->_eventsManager->_leftClick) {
+ // Show the ScummVM GMM
+ _vm->_eventsManager->getMouseInfo();
+ _vm->openMainMenuDialog();
+ }
+
+ } while (!_vm->shouldQuit() && (!_vm->_eventsManager->_leftClick || hotspotId == -1));
+
+ _vm->_eventsManager->hideCursor();
+ pt = _vm->_eventsManager->getMousePos();
+ _aptPos.x = pt.x;
+ _aptPos.y = pt.y;
+
+ switch (hotspotId) {
+ case 0:
+ _vm->_voy->_aptLoadMode = 140;
+ break;
+ case 1:
+ _vm->_voy->_aptLoadMode = 143;
+ break;
+ case 2:
+ _vm->_voy->_aptLoadMode = 142;
+ case 5:
+ _vm->_voy->_aptLoadMode = 141;
+ break;
+ default:
+ _vm->_voy->_aptLoadMode = -1;
+ break;
+ }
+
+ freeTheApt();
+
+ if (_vm->_voy->_transitionId == 1 && hotspotId == 0)
+ _vm->checkTransition();
+
+ if (!hotspotId)
+ _vm->makeViewFinder();
+
+ return hotspotId;
+}
+
+void ThreadResource::doRoom() {
+ VoyeurEngine &vm = *_vm;
+ SVoy voy = *vm._voy;
+
+ vm.makeViewFinderP();
+ voy._fadingType = 0;
+
+ if (!vm._bVoy->getBoltGroup(vm._playStampGroupId))
+ return;
+
+ vm._graphicsManager->_backColors = vm._bVoy->boltEntry(vm._playStampGroupId + 1)._cMapResource;
+ vm._graphicsManager->_backgroundPage = vm._bVoy->boltEntry(vm._playStampGroupId)._picResource;
+ vm._graphicsManager->_vPort->setupViewPort(vm._graphicsManager->_backgroundPage);
+ vm._graphicsManager->_backColors->startFade();
+
+ voy._fadingStep1 = 2;
+ voy._fadingStep2 = 0;
+ voy._fadingType = 1;
+
+ Common::Array<RectEntry> &hotspots = vm._bVoy->boltEntry(vm._playStampGroupId + 4)._rectResource->_entries;
+ int hotspotId = -1;
+
+ PictureResource *crosshairsCursor = vm._bVoy->boltEntry(vm._playStampGroupId + 2)._picResource;
+ PictureResource *magnifierCursor = vm._bVoy->boltEntry(vm._playStampGroupId + 3)._picResource;
+ vm._eventsManager->showCursor();
+
+ RectResource viewBounds(48, 38, 336, 202);
+ voy._viewBounds = &viewBounds;
+
+ vm._eventsManager->getMouseInfo();
+ vm._eventsManager->setMousePos(Common::Point(192, 120));
+ voy._fadingType = 0;
+ vm._currentVocId = 146;
+ voy._musicStartTime = voy._RTVNum;
+
+ voy._vocSecondsOffset = 0;
+ vm._soundManager->startVOCPlay(vm._currentVocId);
+ voy._eventFlags &= ~EVTFLAG_TIME_DISABLED;
+
+ bool breakFlag = false;
+ while (!vm.shouldQuit() && !breakFlag) {
+ _vm->_voyeurArea = AREA_ROOM;
+ vm._graphicsManager->setColor(128, 0, 255, 0);
+ vm._eventsManager->_intPtr._hasPalette = true;
+
+ do {
+ if (vm._currentVocId != -1 && !vm._soundManager->getVOCStatus()) {
+ voy._musicStartTime = voy._RTVNum;
+ voy._vocSecondsOffset = 0;
+ vm._soundManager->startVOCPlay(vm._currentVocId);
+ }
+
+ vm._eventsManager->getMouseInfo();
+ Common::Point pt = vm._eventsManager->getMousePos();
+ pt += Common::Point(30, 15);
+
+ hotspotId = -1;
+
+ if (voy._computerTextId != -1 && voy._computerScreenRect.contains(pt))
+ hotspotId = 999;
+
+ for (uint idx = 0; idx < hotspots.size(); ++idx) {
+ if (hotspots[idx].contains(pt)) {
+ int arrIndex = hotspots[idx]._arrIndex;
+ if (voy._roomHotspotsEnabled[arrIndex - 1]) {
+ hotspotId = idx;
+ break;
+ }
+ }
+ }
+
+ if (hotspotId == -1) {
+ vm._eventsManager->setCursorColor(128, 0);
+ vm._eventsManager->setCursor(crosshairsCursor);
+ } else if (hotspotId != 999 || voy._RTVNum < voy._computerTimeMin ||
+ (voy._computerTimeMax - 2) < voy._RTVNum) {
+ vm._eventsManager->setCursorColor(128, 1);
+ vm._eventsManager->setCursor(magnifierCursor);
+ } else {
+ vm._eventsManager->setCursorColor(128, 2);
+ vm._eventsManager->setCursor(magnifierCursor);
+ }
+
+ vm._eventsManager->_intPtr._hasPalette = true;
+ vm._graphicsManager->flipPage();
+ vm._eventsManager->sWaitFlip();
+ } while (!vm.shouldQuit() && !vm._eventsManager->_mouseClicked);
+
+ if (!vm._eventsManager->_leftClick || hotspotId == -1) {
+ if (vm._eventsManager->_rightClick)
+ breakFlag = true;
+
+ Common::Point pt = vm._eventsManager->getMousePos();
+ vm._eventsManager->getMouseInfo();
+ vm._eventsManager->setMousePos(pt);
+ } else {
+ voy._eventFlags |= EVTFLAG_RECORDING;
+ vm._eventsManager->hideCursor();
+ vm._eventsManager->startCursorBlink();
+
+ if (hotspotId == 999) {
+ _vm->flipPageAndWait();
+
+ if (vm._currentVocId != -1) {
+ voy._vocSecondsOffset = voy._RTVNum - voy._musicStartTime;
+ vm._soundManager->stopVOCPlay();
+ }
+
+ vm.getComputerBrush();
+ _vm->flipPageAndWait();
+
+ vm._voy->addComputerEventStart();
+
+ vm._eventsManager->_mouseClicked = false;
+ vm._eventsManager->startCursorBlink();
+
+ int totalChars = vm.doComputerText(9999);
+ if (totalChars)
+ vm._voy->addComputerEventEnd(totalChars);
+
+ vm._bVoy->freeBoltGroup(0x4900);
+ } else {
+ vm.doEvidDisplay(hotspotId, 999);
+ }
+
+ voy._eventFlags &= ~EVTFLAG_RECORDING;
+ if (!vm._eventsManager->_mouseClicked)
+ vm._eventsManager->delayClick(18000);
+
+ // WORKAROUND: Skipped code from the original, that freed the group,
+ // reloaded it, and reloaded the cursors
+
+ vm._graphicsManager->_backColors = vm._bVoy->boltEntry(
+ vm._playStampGroupId + 1)._cMapResource;
+ vm._graphicsManager->_backgroundPage = vm._bVoy->boltEntry(
+ vm._playStampGroupId)._picResource;
+
+ vm._graphicsManager->_vPort->setupViewPort();
+ vm._graphicsManager->_backColors->startFade();
+ _vm->flipPageAndWait();
+
+ while (!vm.shouldQuit() && (vm._eventsManager->_fadeStatus & 1))
+ vm._eventsManager->delay(1);
+ vm._eventsManager->hideCursor();
+
+ while (!vm.shouldQuit() && voy._fadingAmount2 > 0) {
+ if (voy._fadingAmount1 < 63) {
+ voy._fadingAmount1 += 4;
+ if (voy._fadingAmount1 > 63)
+ voy._fadingAmount1 = 63;
+ }
+
+ if (voy._fadingAmount2 > 0) {
+ voy._fadingAmount2 -= 8;
+ if (voy._fadingAmount2 < 0)
+ voy._fadingAmount2 = 0;
+ }
+
+ vm._eventsManager->delay(1);
+ }
+
+ _vm->flipPageAndWait();
+
+ vm._graphicsManager->fadeUpICF1();
+ voy._eventFlags &= EVTFLAG_RECORDING;
+ vm._eventsManager->showCursor();
+ }
+ }
+
+ voy._eventFlags = EVTFLAG_TIME_DISABLED;
+ vm._eventsManager->incrementTime(1);
+ voy._viewBounds = nullptr;
+ voy._fadingType = 0;
+ vm.makeViewFinderP();
+
+ if (voy._boltGroupId2 != -1) {
+ vm._bVoy->freeBoltGroup(voy._boltGroupId2);
+ voy._boltGroupId2 = -1;
+ }
+
+ if (vm._playStampGroupId != -1) {
+ vm._bVoy->freeBoltGroup(vm._playStampGroupId);
+ vm._playStampGroupId = -1;
+ }
+
+ if (vm._currentVocId != -1) {
+ vm._soundManager->stopVOCPlay();
+ vm._currentVocId = -1;
+ }
+
+ vm._eventsManager->hideCursor();
+ chooseSTAMPButton(0);
+}
+
+int ThreadResource::doInterface() {
+ PictureResource *pic;
+ Common::Point pt;
+
+ _vm->_voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+ if (_vm->_voy->_abortInterface) {
+ _vm->_voy->_abortInterface = false;
+ return -2;
+ }
+
+ _vm->_voy->_eventFlags &= ~EVTFLAG_100;
+ _vm->_playStampGroupId = -1;
+ _vm->_eventsManager->_intPtr._flashStep = 1;
+ _vm->_eventsManager->_intPtr._flashTimer = 0;
+
+ if (_vm->_voy->_RTVNum >= _vm->_voy->_RTVLimit || _vm->_voy->_RTVNum < 0)
+ _vm->_voy->_RTVNum = _vm->_voy->_RTVLimit - 1;
+
+ if (_vm->_voy->_transitionId < 15 && _vm->_debugger->_isTimeActive
+ && (_vm->_voy->_RTVLimit - 3) < _vm->_voy->_RTVNum) {
+ _vm->_voy->_RTVNum = _vm->_voy->_RTVLimit;
+ _vm->makeViewFinder();
+
+ _vm->initIFace();
+ _vm->_eventsManager->hideCursor();
+ _vm->_voy->_RTVNum = _vm->_voy->_RTVLimit - 4;
+ _vm->_voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+
+ while (!_vm->shouldQuit() && _vm->_voy->_RTVNum < _vm->_voy->_RTVLimit) {
+ _vm->flashTimeBar();
+ _vm->_eventsManager->delayClick(1);
+ }
+
+ _vm->_voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+ chooseSTAMPButton(20);
+ parsePlayCommands();
+
+ _vm->_eventsManager->showCursor();
+ }
+
+ _vm->checkTransition();
+ _vm->makeViewFinder();
+ _vm->_eventsManager->getMouseInfo();
+ _vm->initIFace();
+
+ Common::Array<RectEntry> *hotspots = &_vm->_bVoy->boltEntry(
+ _vm->_playStampGroupId + 1)._rectResource->_entries;
+ _vm->_currentVocId = 151 - _vm->getRandomNumber(5);
+ _vm->_voy->_vocSecondsOffset = _vm->getRandomNumber(29);
+
+ Common::String fname = _vm->_soundManager->getVOCFileName(_vm->_currentVocId);
+ _vm->_soundManager->startVOCPlay(fname);
+ _vm->_eventsManager->getMouseInfo();
+
+ _vm->_graphicsManager->setColor(240, 220, 220, 220);
+ _vm->_eventsManager->_intPtr._hasPalette = true;
+ _vm->_voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+
+ // Set the cusor
+ PictureResource *crosshairsCursor = _vm->_bVoy->boltEntry(0x112)._picResource;
+ PictureResource *eyeCursor = _vm->_bVoy->boltEntry(0x113)._picResource;
+ PictureResource *listenCursor = _vm->_bVoy->boltEntry(0x114)._picResource;
+ PictureResource *mangifyCursor = _vm->_bVoy->boltEntry(0x115)._picResource;
+
+ _vm->_eventsManager->setCursor(crosshairsCursor);
+
+ // Main loop
+ int regionIndex = 0;
+ Common::Rect mansionViewBounds(MANSION_VIEW_X, MANSION_VIEW_Y,
+ MANSION_VIEW_X + MANSION_VIEW_WIDTH, MANSION_VIEW_Y + MANSION_VIEW_HEIGHT);
+
+ do {
+ _vm->_voyeurArea = AREA_INTERFACE;
+ _vm->doTimeBar();
+ _vm->_eventsManager->getMouseInfo();
+
+ if (checkMansionScroll())
+ _vm->doScroll(_vm->_mansionViewPos);
+
+ _vm->checkPhoneCall();
+ if (!_vm->_soundManager->getVOCStatus()) {
+ _vm->_currentVocId = 151 - _vm->getRandomNumber(5);
+ _vm->_soundManager->startVOCPlay(_vm->_soundManager->getVOCFileName(_vm->_currentVocId));
+ }
+
+ // Calculate the mouse position within the entire mansion
+ pt = _vm->_eventsManager->getMousePos();
+ if (!mansionViewBounds.contains(pt))
+ pt = Common::Point(-1, -1);
+ else
+ pt = _vm->_mansionViewPos +
+ Common::Point(pt.x - MANSION_VIEW_X, pt.y - MANSION_VIEW_Y);
+ regionIndex = -1;
+
+ for (int hotspotIdx = 0; hotspotIdx < (int)hotspots->size(); ++hotspotIdx) {
+ if ((*hotspots)[hotspotIdx].contains(pt)) {
+ // Rect check done
+ for (int arrIndex = 0; arrIndex < 3; ++arrIndex) {
+ if (_vm->_voy->_audioHotspotTimes.isInRange(arrIndex, hotspotIdx, _vm->_voy->_RTVNum)) {
+ // Set the ear cursor for an audio event
+ _vm->_eventsManager->setCursor(listenCursor);
+ regionIndex = hotspotIdx;
+ }
+
+ if (_vm->_voy->_evidenceHotspotTimes.isInRange(arrIndex, hotspotIdx, _vm->_voy->_RTVNum)) {
+ // Set the magnifier cursor for an evidence event
+ _vm->_eventsManager->setCursor(mangifyCursor);
+ regionIndex = hotspotIdx;
+ }
+ }
+
+ for (int arrIndex = 0; arrIndex < 8; ++arrIndex) {
+ if (_vm->_voy->_videoHotspotTimes.isInRange(arrIndex, hotspotIdx, _vm->_voy->_RTVNum)) {
+ // Set the eye cursor for a video event
+ _vm->_eventsManager->setCursor(eyeCursor);
+ regionIndex = hotspotIdx;
+ }
+ }
+ }
+ }
+
+ if (regionIndex == -1) {
+ // Reset back to the crosshairs cursor
+ _vm->_eventsManager->setCursor(crosshairsCursor);
+ }
+
+ // Regularly update the time display
+ if (_vm->_voy->_RTANum & 2) {
+ _vm->_graphicsManager->drawANumber(_vm->_graphicsManager->_vPort,
+ _vm->_gameMinute / 10, Common::Point(190, 25));
+ _vm->_graphicsManager->drawANumber(_vm->_graphicsManager->_vPort,
+ _vm->_gameMinute % 10, Common::Point(201, 25));
+
+ if (_vm->_voy->_RTANum & 4) {
+ int v = _vm->_gameHour / 10;
+ _vm->_graphicsManager->drawANumber(_vm->_graphicsManager->_vPort,
+ v == 0 ? 10 : v, Common::Point(161, 25));
+ _vm->_graphicsManager->drawANumber(_vm->_graphicsManager->_vPort,
+ _vm->_gameHour % 10, Common::Point(172, 25));
+
+ pic = _vm->_bVoy->boltEntry(_vm->_voy->_isAM ? 272 : 273)._picResource;
+ _vm->_graphicsManager->sDrawPic(pic, _vm->_graphicsManager->_vPort,
+ Common::Point(215, 27));
+ }
+ }
+
+ _vm->_voy->_RTANum = 0;
+ _vm->flipPageAndWait();
+
+ pt = _vm->_eventsManager->getMousePos();
+ if ((_vm->_voy->_RTVNum >= _vm->_voy->_RTVLimit) || ((_vm->_voy->_eventFlags & 0x80) &&
+ _vm->_eventsManager->_rightClick && (pt.x == 0))) {
+ // Time to transition to the next time period
+ _vm->_eventsManager->getMouseInfo();
+
+ if (_vm->_voy->_transitionId == 15) {
+ regionIndex = 20;
+ _vm->_voy->_transitionId = 17;
+ _vm->_soundManager->stopVOCPlay();
+ _vm->checkTransition();
+ _vm->_eventsManager->_leftClick = true;
+ } else {
+ _vm->_voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+
+ chooseSTAMPButton(20);
+ parsePlayCommands();
+ _vm->checkTransition();
+ _vm->makeViewFinder();
+
+ _vm->initIFace();
+
+ hotspots = &_vm->_bVoy->boltEntry(_vm->_playStampGroupId + 1)._rectResource->_entries;
+ _vm->_eventsManager->getMouseInfo();
+
+ _vm->_voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+ _vm->_eventsManager->_intPtr._flashStep = 1;
+ _vm->_eventsManager->_intPtr._flashTimer = 0;
+ }
+ }
+ } while (!_vm->_eventsManager->_rightClick && !_vm->shouldQuit() &&
+ (!_vm->_eventsManager->_leftClick || regionIndex == -1));
+
+ _vm->_eventsManager->hideCursor();
+ _vm->_voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+ _vm->_bVoy->freeBoltGroup(_vm->_playStampGroupId);
+ if (_vm->_currentVocId != -1)
+ _vm->_soundManager->stopVOCPlay();
+
+ return !_vm->_eventsManager->_rightClick ? regionIndex : -2;
+}
+
+bool ThreadResource::checkMansionScroll() {
+ Common::Point pt = _vm->_eventsManager->getMousePos() -
+ Common::Point(MANSION_VIEW_X, MANSION_VIEW_Y);
+ Common::Point &viewPos = _vm->_mansionViewPos;
+ bool result = false;
+
+ // Scroll mansion view if close to any of the mansion edges
+ if (pt.x >= 0 && pt.x < MANSION_SCROLL_AREA_X && viewPos.x > 0) {
+ viewPos.x = MAX(viewPos.x - MANSION_SCROLL_INC_X, 0);
+ result = true;
+ }
+ if (pt.x >= (MANSION_VIEW_WIDTH - MANSION_SCROLL_AREA_X) &&
+ pt.x < MANSION_VIEW_WIDTH && viewPos.x < MANSION_MAX_X) {
+ viewPos.x = MIN(viewPos.x + MANSION_SCROLL_INC_X, MANSION_MAX_X);
+ result = true;
+ }
+ if (pt.y >= 0 && pt.y < MANSION_SCROLL_AREA_Y && viewPos.y > 0) {
+ viewPos.y = MAX(viewPos.y - MANSION_SCROLL_INC_Y, 0);
+ result = true;
+ }
+ if (pt.y >= (MANSION_VIEW_HEIGHT - MANSION_SCROLL_AREA_Y) &&
+ pt.y < MANSION_VIEW_HEIGHT && viewPos.y < MANSION_MAX_Y) {
+ viewPos.y = MIN(viewPos.y + MANSION_SCROLL_INC_Y, MANSION_MAX_Y);
+ result = true;
+ }
+
+ // Return whether mansion view area has changed
+ return result;
+}
+
+bool ThreadResource::goToStateID(int stackId, int id) {
+ debugC(DEBUG_BASIC, kDebugScripts, "goToStateID - %d, %d", stackId, id);
+
+ // Save current stack
+ savePrevious();
+
+ if (_stackId == stackId || stackId == -1 || loadAStack(stackId)) {
+ // Now in the correct state
+ _stateId = getStateFromID(id);
+
+ if (_stateId != -1) {
+ return doState();
+ } else {
+ _stateId = _savedStateId;
+ _stackId = _savedStackId;
+ }
+ }
+
+ return false;
+}
+
+bool ThreadResource::goToState(int stackId, int stateId) {
+ debugC(DEBUG_BASIC, kDebugScripts, "goToState - %d, %d", stackId, stateId);
+
+ savePrevious();
+ if (stackId == -1 || loadAStack(stackId)) {
+ if (stateId != -1)
+ _stateId = stateId;
+
+ return doState();
+ } else {
+ return false;
+ }
+}
+
+void ThreadResource::savePrevious() {
+ if (_savedStateId != _stateId || _stackId != _savedStackId) {
+ _savedStateId = _stateId;
+ _savedStackId = _stackId;
+ }
+}
+
+void ThreadResource::setButtonFlag(int idx, byte bits) {
+ _buttonFlags[idx] |= bits;
+}
+
+void ThreadResource::clearButtonFlag(int idx, byte bits) {
+ _buttonFlags[idx] &= ~bits;
+}
+
+void ThreadResource::loadTheApt() {
+ switch (_vm->_voy->_transitionId) {
+ case 1:
+ case 2:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ case 17:
+ _vm->_playStampGroupId = 0x5700;
+ break;
+ case 3:
+ _vm->_playStampGroupId = 0x5800;
+ break;
+ case 4:
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ case 15:
+ case 16:
+ _vm->_playStampGroupId = 0x5900;
+ break;
+ default:
+ break;
+ }
+
+ if (_vm->_voy->_aptLoadMode == 143)
+ _vm->_voy->_aptLoadMode = -1;
+
+ if (_vm->_voy->_aptLoadMode != -1) {
+ doAptAnim(1);
+ _vm->_bVoy->getBoltGroup(_vm->_playStampGroupId);
+ _vm->_voy->_aptLoadMode = -1;
+ _vm->_graphicsManager->_backgroundPage = _vm->_bVoy->boltEntry(
+ _vm->_playStampGroupId + 5)._picResource;
+ _vm->_graphicsManager->_vPort->setupViewPort(
+ _vm->_graphicsManager->_backgroundPage);
+ } else {
+ _vm->_bVoy->getBoltGroup(_vm->_playStampGroupId);
+ _vm->_graphicsManager->_backgroundPage = _vm->_bVoy->boltEntry(
+ _vm->_playStampGroupId + 5)._picResource;
+ _vm->_graphicsManager->_vPort->setupViewPort(
+ _vm->_graphicsManager->_backgroundPage);
+ }
+
+ CMapResource *pal = _vm->_bVoy->boltEntry(_vm->_playStampGroupId + 4)._cMapResource;
+ pal->_steps = 1;
+ pal->startFade();
+ _vm->flipPageAndWaitForFade();
+}
+
+void ThreadResource::freeTheApt() {
+ _vm->_graphicsManager->fadeDownICF1(5);
+ _vm->flipPageAndWaitForFade();
+
+ _vm->_graphicsManager->fadeUpICF1();
+
+ if (_vm->_currentVocId != -1) {
+ _vm->_soundManager->stopVOCPlay();
+ _vm->_currentVocId = -1;
+ }
+
+ if (_vm->_voy->_aptLoadMode == -1) {
+ _vm->_graphicsManager->fadeDownICF(6);
+ } else {
+ doAptAnim(2);
+ }
+
+ if (_vm->_voy->_aptLoadMode == 140) {
+ _vm->_graphicsManager->screenReset();
+ _vm->_graphicsManager->resetPalette();
+ }
+
+ _vm->_graphicsManager->_vPort->setupViewPort(nullptr);
+ _vm->_bVoy->freeBoltGroup(_vm->_playStampGroupId);
+ _vm->_playStampGroupId = -1;
+ _vm->_voy->_viewBounds = nullptr;
+}
+
+void ThreadResource::doAptAnim(int mode) {
+ _vm->_bVoy->freeBoltGroup(0x100);
+
+ // Figure out the resource to use
+ int id = 0;
+ switch (_vm->_voy->_aptLoadMode) {
+ case 140:
+ id = 0x5A00;
+ break;
+ case 141:
+ id = 0x6000;
+ break;
+ case 142:
+ id = 0x6600;
+ break;
+ case 143:
+ id = 0x6C00;
+ break;
+ case 144:
+ id = 0x6F00;
+ break;
+ default:
+ break;
+ }
+
+ int id2 = (id == 0x6C00 || id == 0x6F00) ? 1 : 2;
+ switch (_vm->_voy->_transitionId) {
+ case 3:
+ id += id2 << 8;
+ break;
+ case 4:
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ case 15:
+ case 16:
+ id += id2 << 9;
+ break;
+ default:
+ break;
+ }
+
+ if (mode == 1)
+ id += 0x100;
+
+ // Do the display
+ if (_vm->_bVoy->getBoltGroup(id)) {
+ CMapResource *pal = _vm->_bVoy->boltEntry(id)._cMapResource;
+ pal->_steps = 1;
+
+ for (int idx = 0; (idx < 6) && !_vm->shouldQuit(); ++idx) {
+ PictureResource *pic = _vm->_bVoy->boltEntry(id + idx + 1)._picResource;
+ _vm->_graphicsManager->_vPort->setupViewPort(pic);
+ pal->startFade();
+
+ _vm->flipPageAndWait();
+ _vm->_eventsManager->delayClick(5);
+ }
+
+ _vm->_bVoy->freeBoltGroup(id);
+ }
+
+ _vm->_bVoy->getBoltGroup(0x100);
+}
+
+void ThreadResource::synchronize(Common::Serializer &s) {
+ s.syncAsSint16LE(_aptPos.x);
+ s.syncAsSint16LE(_aptPos.y);
+
+ int stateId = _stateId;
+ int stackId = _stackId;
+ s.syncAsSint16LE(stateId);
+ s.syncAsSint16LE(stackId);
+
+ if (s.isLoading() && (stateId != _stateId || stackId != _stackId))
+ goToState(stackId, stateId);
+
+ s.syncAsSint16LE(_savedStateId);
+ s.syncAsSint16LE(_savedStackId);
+}
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/graphics.cpp b/engines/voyeur/graphics.cpp
new file mode 100644
index 0000000000..f756b9cc85
--- /dev/null
+++ b/engines/voyeur/graphics.cpp
@@ -0,0 +1,1054 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/graphics.h"
+#include "voyeur/voyeur.h"
+#include "voyeur/staticres.h"
+#include "engines/util.h"
+#include "graphics/palette.h"
+#include "graphics/surface.h"
+
+namespace Voyeur {
+
+/*------------------------------------------------------------------------*/
+
+DrawInfo::DrawInfo(int penColor, const Common::Point &pos) {
+ _penColor = penColor;
+ _pos = pos;
+}
+
+/*------------------------------------------------------------------------*/
+
+GraphicsManager::GraphicsManager(VoyeurEngine *vm) : _defaultDrawInfo(1, Common::Point()), _drawPtr(&_defaultDrawInfo), _vm(vm) {
+ _SVGAMode = 0;
+ _planeSelect = 0;
+ _saveBack = true;
+ _clipPtr = NULL;
+ _viewPortListPtr = NULL;
+ _backgroundPage = NULL;
+ _vPort = NULL;
+ _fontPtr = NULL;
+ Common::fill(&_VGAColors[0], &_VGAColors[PALETTE_SIZE], 0);
+ _fontChar = new PictureResource(DISPFLAG_NONE, 0xff, 0xff, 0, Common::Rect(), 0, NULL, 0);
+ _backColors = nullptr;
+}
+
+void GraphicsManager::sInitGraphics() {
+ initGraphics(SCREEN_WIDTH, SCREEN_HEIGHT, false);
+ _screenSurface.create(SCREEN_WIDTH, SCREEN_HEIGHT, Graphics::PixelFormat::createFormatCLUT8());
+ clearPalette();
+}
+
+GraphicsManager::~GraphicsManager() {
+ _screenSurface.free();
+ delete _fontChar;
+}
+
+void GraphicsManager::setupMCGASaveRect(ViewPortResource *viewPort) {
+ if (viewPort->_activePage) {
+ viewPort->_activePage->_flags |= DISPFLAG_1;
+ Common::Rect *clipRect = _clipPtr;
+ _clipPtr = &viewPort->_clipRect;
+
+ sDrawPic(viewPort->_activePage, viewPort->_currentPic, Common::Point());
+
+ _clipPtr = clipRect;
+ }
+
+ viewPort->_rectListCount[1] = -1;
+}
+
+void GraphicsManager::addRectOptSaveRect(ViewPortResource *viewPort, int idx, const Common::Rect &bounds) {
+ if (viewPort->_rectListCount[idx] == -1)
+ return;
+
+ // TODO: Lots of code in original, which I suspect may be overlapping rect merging
+ viewPort->_rectListPtr[idx]->push_back(bounds);
+ ++viewPort->_rectListCount[idx];
+}
+
+void GraphicsManager::restoreMCGASaveRect(ViewPortResource *viewPort) {
+ if (viewPort->_rectListCount[0] != -1) {
+ for (int i = 0; i < viewPort->_rectListCount[0]; ++i) {
+ addRectOptSaveRect(viewPort, 1, (*viewPort->_rectListPtr[0])[i]);
+ }
+ } else {
+ viewPort->_rectListCount[1] = -1;
+ }
+
+ restoreBack(*viewPort->_rectListPtr[1], viewPort->_rectListCount[1], viewPort->_pages[0],
+ viewPort->_pages[1]);
+
+ int count = viewPort->_rectListCount[0];
+ restoreBack(*viewPort->_rectListPtr[0], viewPort->_rectListCount[0],
+ viewPort->_activePage, viewPort->_currentPic);
+
+ SWAP(viewPort->_rectListPtr[0], viewPort->_rectListPtr[1]);
+ viewPort->_rectListCount[1] = count;
+}
+
+void GraphicsManager::addRectNoSaveBack(ViewPortResource *viewPort, int idx, const Common::Rect &bounds) {
+ // Stubbed/dummy method in the original.
+}
+
+void GraphicsManager::sDrawPic(DisplayResource *srcDisplay, DisplayResource *destDisplay,
+ const Common::Point &initialOffset) {
+ int width1, width2;
+ int widthDiff, widthDiff2;
+ int height1;
+ int srcOffset;
+ int screenOffset;
+ int srcFlags, destFlags;
+ ViewPortResource *destViewPort = NULL;
+ Common::Rect newBounds;
+ Common::Rect backBounds;
+ int tmpWidth = 0;
+ int tmpHeight = 0;
+ bool isClipped = false;
+ byte pixel = 0;
+ int runLength;
+
+ byte *srcImgData, *destImgData;
+ byte *srcP, *destP;
+ byte byteVal, byteVal2;
+
+ PictureResource *srcPic;
+ PictureResource *destPic;
+
+ // Get the picture parameters, or deference viewport pointers to get their pictures
+ if (srcDisplay->_flags & DISPFLAG_VIEWPORT) {
+ // A viewport was passed, not a picture
+ srcPic = ((ViewPortResource *)srcDisplay)->_currentPic;
+ } else {
+ srcPic = (PictureResource *)srcDisplay;
+ }
+
+ if (destDisplay->_flags & DISPFLAG_VIEWPORT) {
+ // A viewport was passed, not a picture
+ destViewPort = (ViewPortResource *)destDisplay;
+ destPic = destViewPort->_currentPic;
+ } else {
+ destPic = (PictureResource *)destDisplay;
+ }
+
+ Common::Point offset = Common::Point(initialOffset.x + srcPic->_bounds.left - destPic->_bounds.left,
+ initialOffset.y + srcPic->_bounds.top - destPic->_bounds.top);
+ width1 = width2 = srcPic->_bounds.width();
+ height1 = srcPic->_bounds.height();
+ srcOffset = 0;
+ srcFlags = srcPic->_flags;
+ destFlags = destPic->_flags;
+ byte *cursorData = NULL;
+
+ if (srcFlags & 1) {
+ if (_clipPtr) {
+ int xs = _clipPtr->left - destPic->_bounds.left;
+ int ys = _clipPtr->top - destPic->_bounds.top;
+ newBounds = Common::Rect(xs, ys, xs + _clipPtr->width(), ys + _clipPtr->height());
+ } else if (destViewPort) {
+ int xs = destViewPort->_clipRect.left - destPic->_bounds.left;
+ int ys = destViewPort->_clipRect.top - destPic->_bounds.top;
+ newBounds = Common::Rect(xs, ys, xs + destViewPort->_clipRect.width(),
+ ys + destViewPort->_clipRect.height());
+ } else {
+ newBounds = Common::Rect(0, 0, destPic->_bounds.width(), destPic->_bounds.height());
+ }
+
+ tmpHeight = offset.y - newBounds.top;
+ if (tmpHeight < 0) {
+ srcOffset -= tmpHeight * width2;
+ height1 += tmpHeight;
+ offset.y = newBounds.top;
+
+ if (height1 <= 0)
+ return;
+
+ isClipped = true;
+ }
+
+ int yMin = newBounds.bottom - (offset.y + height1);
+ if (yMin < 0) {
+ height1 += yMin;
+ if (height1 <= 0)
+ return;
+ }
+
+ tmpWidth = offset.x - newBounds.left;
+ if (tmpWidth < 0) {
+ srcOffset -= tmpWidth;
+ width2 += tmpWidth;
+ offset.x = newBounds.left;
+
+ if (width2 <= 0)
+ return;
+
+ isClipped = true;
+ }
+
+ int xMin = newBounds.right - (offset.x + width2);
+ if (xMin < 0) {
+ width2 += xMin;
+ if (width2 <= 0)
+ return;
+
+ isClipped = true;
+ }
+ }
+
+ screenOffset = offset.y * destPic->_bounds.width() + offset.x;
+ widthDiff = width1 - width2;
+ widthDiff2 = destPic->_bounds.width() - width2;
+
+ if (destViewPort) {
+ if (!_saveBack || (srcPic->_flags & DISPFLAG_800)) {
+ backBounds.left = destPic->_bounds.left + offset.x;
+ backBounds.top = destPic->_bounds.top + offset.y;
+ backBounds.setWidth(width2);
+ backBounds.setHeight(height1);
+ addRectOptSaveRect(destViewPort, 1, backBounds);
+
+ } else if (!destViewPort->_addFn) {
+ if (destViewPort->_rectListCount[destViewPort->_pageIndex] < -1) {
+ Common::Rect r;
+ r.left = destPic->_bounds.left + offset.x;
+ r.top = destPic->_bounds.top + offset.y;
+ r.setWidth(width2);
+ r.setHeight(height1);
+
+ (*destViewPort->_rectListPtr[destViewPort->_pageIndex]).push_back(r);
+ ++destViewPort->_rectListCount[destViewPort->_pageIndex];
+ }
+ } else {
+ int xs = offset.x + destPic->_bounds.left;
+ int ys = offset.y + destPic->_bounds.top;
+ backBounds = Common::Rect(xs, ys, xs + width2, ys + height1);
+
+ (this->*destViewPort->_addFn)(destViewPort, destViewPort->_bounds.top, backBounds);
+ }
+ }
+
+ if (srcFlags & DISPFLAG_1000) {
+ int imageDataShift = 0;
+ srcImgData = srcPic->_imgData + (imageDataShift << 14);
+ for (uint idx = 0; idx < srcPic->_maskData; ++idx) {
+ if (imageDataShift < 4)
+ ++imageDataShift;
+ }
+
+ destImgData = destPic->_imgData + (imageDataShift << 14);
+ for (uint idx = 0; idx < srcPic->_maskData; ++idx) {
+ if (imageDataShift < 4)
+ ++imageDataShift;
+ }
+ } else {
+ srcImgData = srcPic->_imgData;
+ destImgData = destPic->_imgData;
+ }
+
+ if (srcPic->_select != 0xff)
+ return;
+
+ if (destFlags & DISPFLAG_CURSOR) {
+ cursorData = new byte[width2 * height1];
+ Common::fill(cursorData, cursorData + width2 * height1, 0);
+ destImgData = cursorData;
+ }
+
+ if (srcPic->_pick == 0xff) {
+ if (srcFlags & DISPFLAG_8) {
+ error("TODO: sDrawPic variation");
+ } else {
+ // loc_258B8
+ srcP = srcImgData + srcOffset;
+
+ if (destFlags & DISPFLAG_8) {
+ // loc_258D8
+ destP = destImgData + screenOffset;
+
+ if (srcFlags & DISPFLAG_2) {
+ // loc_25652
+ srcP = srcImgData + srcOffset;
+
+ if (destFlags & DISPFLAG_8) {
+ // loc_2566F
+ if (srcFlags & DISPFLAG_2) {
+ // loc_256FA
+ srcP = (byte *)_screenSurface.getPixels() + srcOffset;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xp = 0; xp < width2; ++xp, ++srcP, ++destP) {
+ pixel = *srcP;
+ if (pixel)
+ *destP = pixel;
+ }
+
+ srcP += widthDiff;
+ destP += widthDiff2;
+ }
+ } else {
+ // loc_25706
+ for (int yp = 0; yp < height1; ++yp) {
+ Common::copy(srcP, srcP + width2, destP);
+ srcP += width2 + widthDiff;
+ destP += width2 + widthDiff2;
+ }
+ }
+ } else {
+ // loc_25773
+ destP = destImgData + screenOffset;
+
+ if (srcFlags & DISPFLAG_2) {
+ // loc_25793
+ for (int yp = 0; yp < height1; ++yp) {
+ Common::copy(srcP, srcP + width2, destP);
+ srcP += width2 + widthDiff;
+ destP += width2 + widthDiff2;
+ }
+ } else {
+ // loc_25829
+ destP = (byte *)_screenSurface.getPixels() + screenOffset;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ Common::copy(srcP, srcP + width2, destP);
+ srcP += width2 + widthDiff;
+ destP += width2 + widthDiff2;
+ }
+ }
+ }
+ } else {
+ // loc_25D40
+ if (srcFlags & DISPFLAG_100) {
+ // loc_25D4A
+ error("TODO: sDrawPic variation");
+ } else {
+ // loc_2606D
+ destP = (byte *)_screenSurface.getPixels() + screenOffset;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ Common::copy(srcP, srcP + width2, destP);
+ destP += width2 + widthDiff2;
+ srcP += width2 + widthDiff;
+ }
+ }
+ }
+ } else {
+ // loc_2615E
+ destP = destImgData + screenOffset;
+
+ if (srcFlags & DISPFLAG_2) {
+ // loc_2617e
+ if (srcFlags & DISPFLAG_100) {
+ // loc_26188
+ srcP = srcImgData;
+ if (isClipped) {
+ // loc_26199
+ tmpWidth = (tmpWidth < 0) ? -tmpWidth : 0;
+ int xMax = tmpWidth + width2;
+ tmpHeight = (tmpHeight < 0) ? -tmpHeight : 0;
+
+ width2 = srcPic->_bounds.width();
+ height1 = tmpHeight + height1;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ runLength = 0;
+
+ for (int xp = 0; xp < width2; ++xp, --runLength) {
+ if (runLength <= 0) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7f;
+ runLength = *srcP++;
+ if (!runLength)
+ runLength = width2;
+ }
+ }
+
+ if (yp >= tmpHeight && xp >= tmpWidth && xp < xMax) {
+ if (pixel > 0)
+ *destP = pixel;
+ ++destP;
+ }
+ }
+
+ if (yp >= tmpHeight)
+ destP += widthDiff2;
+ }
+ } else {
+ // loc_262BE
+ byteVal = 0;
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xp = 0; xp < width2; ++xp) {
+ byteVal2 = 0;
+ if (!byteVal2) {
+ byteVal = *++srcP;
+ if (byteVal & 0x80) {
+ byteVal &= 0x7f;
+ byteVal2 = *srcP++;
+
+ if (!byteVal2)
+ byteVal2 = width2;
+ }
+ }
+
+ if (byteVal > 0)
+ *destP = byteVal;
+
+ ++destP;
+ --byteVal2;
+ }
+
+ destP += widthDiff2;
+ }
+ }
+ } else {
+ // loc_2637F
+ // Copy with transparency
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xp = 0; xp < width2; ++xp, ++srcP, ++destP) {
+ if (*srcP != 0)
+ *destP = *srcP;
+ }
+
+ destP += widthDiff2;
+ srcP += widthDiff;
+ }
+ }
+ } else {
+ if (srcFlags & 0x100) {
+ // Simple run-length encoded image
+ srcP = srcImgData;
+
+ if (isClipped) {
+ // loc_26424
+ tmpWidth = (tmpWidth < 0) ? -tmpWidth : 0;
+ int xMax = tmpWidth + width2;
+ tmpHeight = (tmpHeight < 0) ? -tmpHeight : 0;
+ width2 = srcPic->_bounds.width();
+ height1 = tmpHeight + height1;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ runLength = 0;
+ for (int xp = 0; xp < width2; ++xp, --runLength) {
+ if (runLength <= 0) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ runLength = *srcP++;
+
+ if (!runLength)
+ runLength = width2;
+ }
+ }
+
+ if (yp >= tmpHeight && xp >= tmpWidth && xp < xMax) {
+ *destP++ = pixel;
+ }
+ }
+
+ if (yp >= tmpHeight)
+ destP += widthDiff2;
+ }
+ } else {
+ // loc_26543
+ for (int yp = 0; yp < height1; ++yp) {
+ int runLen = 0;
+ for (int xp = 0; xp < width2; ++xp, --runLen) {
+ if (runLen <= 0) {
+ // Start of run length, so get pixel and repeat length
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7f;
+ runLen = *srcP++;
+ if (runLen == 0)
+ runLen = width2;
+ }
+ }
+
+ // Copy pixel to output
+ *destP++ = pixel;
+ }
+
+ destP += widthDiff2;
+ }
+ }
+ } else {
+ for (int yp = 0; yp < height1; ++yp) {
+ Common::copy(srcP, srcP + width2, destP);
+ destP += width2 + widthDiff2;
+ srcP += width2 + widthDiff;
+ }
+ }
+ }
+ }
+ }
+ } else {
+ // loc_26666
+ if (srcPic->_pick == 0) {
+ // loc_2727A
+ byte onOff = srcPic->_onOff;
+
+ if (srcFlags & DISPFLAG_2) {
+ if (!(srcFlags & DISPFLAG_8)) {
+ srcP = srcImgData + srcOffset;
+
+ if (destFlags & DISPFLAG_8) {
+ // loc_272C3
+ error("TODO: sDrawPic variation");
+ } else {
+ destP = destImgData + screenOffset;
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xp = 0; xp < width2; ++xp, ++destP) {
+ if ((int8)*srcP++ < 0)
+ *destP = onOff;
+ }
+
+ destP += widthDiff2;
+ srcP += widthDiff;
+ }
+ }
+ }
+ } else {
+ // loc_27477
+ if (destFlags & DISPFLAG_8) {
+ // loc_27481
+ destP = (byte *)_screenSurface.getPixels() + screenOffset;
+ for (int yp = 0; yp < height1; ++yp) {
+ Common::fill(destP, destP + width2, onOff);
+ destP += width2 + widthDiff2;
+ }
+ } else {
+ // loc_2753C
+ destP = destImgData + screenOffset;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ Common::fill(destP, destP + width2, onOff);
+ destP += width2 + widthDiff2;
+ }
+ }
+ }
+
+ } else {
+ // loc_26673
+ byte pick = srcPic->_pick;
+ byte onOff = srcPic->_onOff;
+
+ if (!(srcFlags & PICFLAG_PIC_OFFSET)) {
+ srcP = srcImgData += srcOffset;
+ pixel = 0;
+
+ if (destFlags & PICFLAG_PIC_OFFSET) {
+ destP = destImgData + screenOffset;
+ if (srcFlags & PICFLAG_2) {
+ if (srcFlags & PICFLAG_100) {
+ if (isClipped) {
+ // loc_266E3
+ destP = (byte *)_screenSurface.getPixels() + screenOffset;
+ tmpWidth = (tmpWidth < 0) ? -tmpWidth : 0;
+ int xMax = tmpWidth + width2;
+ tmpHeight = (tmpHeight < 0) ? -tmpHeight : 0;
+ pick = 0x7F;
+ width2 = srcPic->_bounds.width();
+ height1 = tmpHeight + height1;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ int runLen = 0;
+ for (int xp = 0; xp < width2; ++xp, --runLen) {
+ if (runLen <= 0) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ runLen = *srcP++;
+ if (!runLen)
+ runLen = width2;
+ }
+ }
+
+ if (yp >= tmpHeight && xp >= tmpWidth && xp < xMax) {
+ if (pixel) {
+ *destP = (pixel & pick) ^ onOff;
+ }
+ ++destP;
+ }
+ }
+ if (yp >= tmpHeight)
+ destP += widthDiff2;
+ }
+ } else {
+ // loc_26815
+ destP = (byte *)_screenSurface.getPixels() + screenOffset;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xi = 0; xi < width2; ++xi, ++destP) {
+ byteVal2 = 0;
+ for (int xp = 0; xp < width2; ++xp, ++destP, --byteVal2) {
+ if (!byteVal2) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ byteVal2 = *srcP++;
+ if (!byteVal2) {
+ byteVal2 = width2;
+ }
+ }
+ }
+
+ if (pixel)
+ *destP = (pixel & pick) ^ onOff;
+ }
+ }
+
+ destP += widthDiff2;
+ }
+ }
+ } else {
+ // Direct screen write
+ destP = (byte *)_screenSurface.getPixels() + screenOffset;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xp = 0; xp < width2; ++xp, ++srcP, ++destP) {
+ if (*srcP)
+ *destP = (*srcP & pick) ^ onOff;
+ }
+ destP += widthDiff2;
+ srcP += widthDiff;
+ }
+ }
+ } else if (srcFlags & PICFLAG_100) {
+ srcP = srcImgData;
+ if (isClipped) {
+ // loc_269FD
+ tmpWidth = (tmpWidth < 0) ? -tmpWidth : 0;
+ int xMax = tmpWidth + width2;
+ tmpHeight = (tmpHeight < 0) ? -tmpHeight : 0;
+ width2 = srcPic->_bounds.width();
+ height1 = tmpHeight + height1;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ runLength = 0;
+ for (int xp = 0; xp < width2; ++xp, --runLength) {
+ if (runLength <= 0) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ runLength = *srcP++;
+
+ if (!runLength)
+ runLength = width2;
+ }
+ }
+
+ if (yp >= tmpHeight && xp >= tmpWidth && xp < xMax) {
+ *destP++ = (pixel & 0x80) ^ onOff;
+ }
+ }
+ }
+ } else {
+ // loc_26BD5
+ destP = (byte *)_screenSurface.getPixels() + screenOffset;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ byteVal2 = 0;
+
+ for (int xp = 0; xp < width2; ++xp, ++destP) {
+ if (!byteVal2) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ byteVal2 = *srcP++;
+ if (!byteVal2)
+ byteVal2 = width2;
+ }
+ }
+
+ *destP = (pixel & pick) ^ onOff;
+ }
+
+ destP += widthDiff2;
+ }
+ }
+ } else {
+ // loc_26C9A
+ destP = (byte *)_screenSurface.getPixels() + screenOffset;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xp = 0; xp < width2; ++xp, ++srcP, ++destP) {
+ *destP = (*srcP & pick) ^ onOff;
+ }
+ destP += widthDiff2;
+ srcP += widthDiff;
+ }
+ }
+ } else {
+ // loc_26D2F
+ destP = destImgData + screenOffset;
+
+ if (srcFlags & PICFLAG_2) {
+ // loc_26D4F
+ if (srcFlags & PICFLAG_100) {
+ srcP = srcImgData;
+
+ if (isClipped) {
+ // loc_26D6A
+ tmpWidth = (tmpWidth < 0) ? -tmpWidth : 0;
+ int xMax = tmpWidth + width2;
+ tmpHeight = (tmpHeight < 0) ? -tmpHeight : 0;
+ width2 = srcPic->_bounds.width();
+ height1 = tmpHeight + height1;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ runLength = 0;
+
+ for (int xp = 0; xp < width2; ++xp, --runLength) {
+ if (runLength <= 0) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ runLength = *srcP++;
+ if (!runLength)
+ runLength = width2;
+ }
+ }
+
+ if (yp >= tmpHeight && xp >= tmpWidth && xp < xMax) {
+ if (pixel)
+ *destP = (pixel & pick) ^ onOff;
+
+ ++destP;
+ }
+ }
+
+ if (yp >= tmpHeight)
+ destP += widthDiff2;
+ }
+ } else {
+ // loc_26E95
+ for (int yp = 0; yp < height1; ++yp) {
+ byteVal2 = 0;
+ for (int xp = 0; xp < width2; ++xp, ++destP, --byteVal2) {
+ if (!byteVal2) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ byteVal2 = *srcP++;
+ if (!byteVal2)
+ byteVal2 = width2;
+ }
+ }
+
+ if (pixel)
+ *destP = (pixel & pick) ^ onOff;
+ }
+
+ destP += widthDiff2;
+ }
+ }
+ } else {
+ // loc_26F5D
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xp = 0; xp < width2; ++xp, ++srcP, ++destP) {
+ if (*srcP)
+ *destP = (*srcP & pick) ^ onOff;
+ }
+ destP += widthDiff2;
+ srcP += widthDiff;
+ }
+ }
+ } else {
+ // loc_26FEF
+ if (srcFlags & PICFLAG_100) {
+ // loc_26FF9
+ for (int yp = 0; yp < height1; ++yp) {
+ for (int xp = 0; xp < width2; ++xp, ++srcP, ++destP) {
+ *destP = (*srcP & pick) ^ onOff;
+ }
+ destP += widthDiff2;
+ srcP += widthDiff;
+ }
+ } else {
+ // loc_271F0
+ srcP = srcImgData;
+
+ if (isClipped) {
+ // loc_2700A
+ tmpWidth = (tmpWidth < 0) ? -tmpWidth : 0;
+ int xMax = tmpWidth + width2;
+ tmpHeight = (tmpHeight < 0) ? -tmpHeight : 0;
+ width2 = srcPic->_bounds.width();
+ height1 = tmpHeight + height1;
+
+ for (int yp = 0; yp < height1; ++yp) {
+ runLength = 0;
+
+ for (int xp = 0; xp < width2; ++xp, --runLength) {
+ if (runLength <= 0) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ runLength = *srcP++;
+ if (!runLength)
+ runLength = width2;
+ }
+ }
+
+ if (yp >= tmpHeight && xp >= tmpWidth && xp < xMax) {
+ *destP++ = (pixel & pick) ^ onOff;
+ }
+ }
+
+ if (yp >= tmpHeight)
+ destP += widthDiff2;
+ }
+ } else {
+ // loc_2712F
+ for (int yp = 0; yp < height1; ++yp) {
+ byteVal2 = 0;
+ for (int xp = 0; xp < width2; ++xp, ++destP, --byteVal2) {
+ if (!byteVal2) {
+ pixel = *srcP++;
+ if (pixel & 0x80) {
+ pixel &= 0x7F;
+ byteVal2 = *srcP++;
+ if (!byteVal2)
+ byteVal2 = width2;
+ }
+ }
+
+ *destP = (*srcP & pick) ^ onOff;
+ }
+ destP += widthDiff2;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
+ if (cursorData) {
+ _vm->_eventsManager->setCursor(cursorData, width2, height1, srcPic->_keyColor);
+ delete[] cursorData;
+ }
+}
+
+void GraphicsManager::drawANumber(DisplayResource *display, int num, const Common::Point &pt) {
+ PictureResource *pic = _vm->_bVoy->boltEntry(num + 261)._picResource;
+ sDrawPic(pic, display, pt);
+}
+
+void GraphicsManager::fillPic(DisplayResource *display, byte onOff) {
+ PictureResource *pic;
+ if (display->_flags & DISPFLAG_VIEWPORT) {
+ pic = ((ViewPortResource *)display)->_currentPic;
+ } else {
+ pic = (PictureResource *)display;
+ }
+
+ PictureResource picResource;
+ picResource._flags = DISPFLAG_NONE;
+ picResource._select = 0xff;
+ picResource._pick = 0;
+ picResource._onOff = onOff;
+ picResource._bounds = pic->_bounds;
+
+ sDrawPic(&picResource, display, Common::Point());
+}
+
+/**
+ * Queues the given picture for display
+ */
+void GraphicsManager::sDisplayPic(PictureResource *pic) {
+ _vm->_eventsManager->_intPtr._flipWait = true;
+}
+
+void GraphicsManager::flipPage() {
+ Common::Array<ViewPortResource *> &viewPorts = _viewPortListPtr->_entries;
+ bool flipFlag = false;
+
+ for (uint idx = 0; idx < viewPorts.size(); ++idx) {
+ if (viewPorts[idx]->_flags & DISPFLAG_20) {
+ if ((viewPorts[idx]->_flags & (DISPFLAG_8 || DISPFLAG_1))
+ == (DISPFLAG_8 || DISPFLAG_1)) {
+ if (_planeSelect == idx)
+ sDisplayPic(viewPorts[idx]->_currentPic);
+ flipFlag = true;
+ }
+ }
+
+ if (flipFlag) {
+ ViewPortResource &viewPort = *viewPorts[idx];
+
+ viewPort._lastPage = viewPort._pageIndex;
+ ++viewPort._pageIndex;
+
+ if (viewPort._pageIndex >= viewPort._pageCount)
+ viewPort._pageIndex = 0;
+
+ assert(viewPort._pageIndex < 2);
+ viewPort._currentPic = viewPort._pages[viewPort._pageIndex];
+ viewPort._flags = (viewPort._flags & ~DISPFLAG_8) | DISPFLAG_40;
+ }
+ }
+}
+
+void GraphicsManager::restoreBack(Common::Array<Common::Rect> &rectList, int rectListCount,
+ PictureResource *srcPic, PictureResource *destPic) {
+ // WORKAROUND: Since _backgroundPage can point to a resource freed at the end of display methods,
+ // I'm now explicitly resetting it to null in screenReset(), so at this point it can be null
+ if (!srcPic)
+ return;
+
+ bool saveBack = _saveBack;
+ _saveBack = false;
+
+ if (rectListCount == -1) {
+ sDrawPic(srcPic, destPic, Common::Point());
+ } else {
+ for (int i = rectListCount - 1; i >= 0; --i) {
+ _clipPtr = &rectList[i];
+ sDrawPic(srcPic, destPic, Common::Point());
+ }
+ }
+
+ _saveBack = saveBack;
+}
+
+void GraphicsManager::clearPalette() {
+ byte palette[768];
+ Common::fill(&palette[0], &palette[768], 0);
+ g_system->getPaletteManager()->setPalette(&palette[0], 0, 256);
+}
+
+void GraphicsManager::setPalette(const byte *palette, int start, int count) {
+ g_system->getPaletteManager()->setPalette(palette, start, count);
+ _vm->_eventsManager->_gameData._hasPalette = false;
+}
+
+void GraphicsManager::setPalette128(const byte *palette, int start, int count) {
+ byte rgb[3];
+ g_system->getPaletteManager()->grabPalette(&rgb[0], 128, 1);
+ g_system->getPaletteManager()->setPalette(palette, start, count);
+ g_system->getPaletteManager()->setPalette(&rgb[0], 128, 1);
+}
+
+
+void GraphicsManager::resetPalette() {
+ for (int i = 0; i < 256; ++i)
+ setColor(i, 0, 0, 0);
+
+ _vm->_eventsManager->_intPtr._hasPalette = true;
+}
+
+void GraphicsManager::setColor(int idx, byte r, byte g, byte b) {
+ byte *vgaP = &_VGAColors[idx * 3];
+ vgaP[0] = r;
+ vgaP[1] = g;
+ vgaP[2] = b;
+
+ _vm->_eventsManager->_intPtr._palStartIndex = MIN(_vm->_eventsManager->_intPtr._palStartIndex, idx);
+ _vm->_eventsManager->_intPtr._palEndIndex = MAX(_vm->_eventsManager->_intPtr._palEndIndex, idx);
+}
+
+void GraphicsManager::setOneColor(int idx, byte r, byte g, byte b) {
+ byte palEntry[3];
+ palEntry[0] = r;
+ palEntry[1] = g;
+ palEntry[2] = b;
+ g_system->getPaletteManager()->setPalette(&palEntry[0], idx, 1);
+}
+
+void GraphicsManager::setColors(int start, int count, const byte *pal) {
+ for (int i = 0; i < count; ++i) {
+ if ((i + start) != 128) {
+ const byte *rgb = pal + i * 3;
+ setColor(i + start, rgb[0], rgb[1], rgb[2]);
+ }
+ }
+
+ _vm->_eventsManager->_intPtr._hasPalette = true;
+}
+
+void GraphicsManager::screenReset() {
+ resetPalette();
+
+ _backgroundPage = NULL;
+ _vPort->setupViewPort(NULL);
+ fillPic(_vPort, 0);
+
+ _vm->flipPageAndWait();
+}
+
+void GraphicsManager::fadeDownICF1(int steps) {
+ if (steps > 0) {
+ int stepAmount = _vm->_voy->_fadingAmount2 / steps;
+
+ for (int idx = 0; idx < steps; ++idx) {
+ _vm->_voy->_fadingAmount2 -= stepAmount;
+ _vm->_eventsManager->delay(1);
+ }
+ }
+
+ _vm->_voy->_fadingAmount2 = 0;
+}
+
+void GraphicsManager::fadeUpICF1(int steps) {
+ if (steps > 0) {
+ int stepAmount = (63 - _vm->_voy->_fadingAmount2) / steps;
+
+ for (int idx = 0; idx < steps; ++idx) {
+ _vm->_voy->_fadingAmount2 += stepAmount;
+ _vm->_eventsManager->delay(1);
+ }
+ }
+
+ _vm->_voy->_fadingAmount2 = 63;
+}
+
+void GraphicsManager::fadeDownICF(int steps) {
+ if (steps > 0) {
+ _vm->_eventsManager->hideCursor();
+ int stepAmount1 = _vm->_voy->_fadingAmount1 / steps;
+ int stepAmount2 = _vm->_voy->_fadingAmount2 / steps;
+
+ for (int idx = 0; idx < steps; ++idx) {
+ _vm->_voy->_fadingAmount1 -= stepAmount1;
+ _vm->_voy->_fadingAmount2 -= stepAmount2;
+ _vm->_eventsManager->delay(1);
+ }
+ }
+
+ _vm->_voy->_fadingAmount1 = 0;
+ _vm->_voy->_fadingAmount2 = 0;
+}
+
+void GraphicsManager::drawDot() {
+ for (int y = 0; y < 9; ++y) {
+ byte *pDest = (byte *)_screenSurface.getPixels() + DOT_LINE_START[y] + DOT_LINE_OFFSET[y];
+ Common::fill(pDest, pDest + DOT_LINE_LENGTH[y], 0x80);
+ }
+}
+
+void GraphicsManager::synchronize(Common::Serializer &s) {
+ s.syncBytes(&_VGAColors[0], PALETTE_SIZE);
+}
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/graphics.h b/engines/voyeur/graphics.h
new file mode 100644
index 0000000000..221d31061d
--- /dev/null
+++ b/engines/voyeur/graphics.h
@@ -0,0 +1,119 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VOYEUR_GRAPHICS_H
+#define VOYEUR_GRAPHICS_H
+
+#include "common/scummsys.h"
+#include "common/array.h"
+#include "common/rect.h"
+#include "common/serializer.h"
+#include "graphics/surface.h"
+
+namespace Voyeur {
+
+#define SCREEN_WIDTH 320
+#define SCREEN_HEIGHT 200
+#define PALETTE_COUNT 256
+#define PALETTE_SIZE (256 * 3)
+
+class VoyeurEngine;
+class GraphicsManager;
+class DisplayResource;
+class PictureResource;
+class ViewPortResource;
+class ViewPortListResource;
+class FontResource;
+class FontInfoResource;
+class CMapResource;
+
+class DrawInfo {
+public:
+ int _penColor;
+ Common::Point _pos;
+public:
+ DrawInfo(int penColor, const Common::Point &pos);
+};
+
+typedef void (GraphicsManager::*GraphicMethodPtr)();
+typedef void (GraphicsManager::*ViewPortSetupPtr)(ViewPortResource *);
+typedef void (GraphicsManager::*ViewPortAddPtr)(ViewPortResource *, int idx, const Common::Rect &bounds);
+typedef void (GraphicsManager::*ViewPortRestorePtr)(ViewPortResource *);
+
+class GraphicsManager {
+public:
+ VoyeurEngine *_vm;
+ byte _VGAColors[PALETTE_SIZE];
+ PictureResource *_backgroundPage;
+ int _SVGAMode;
+ ViewPortListResource *_viewPortListPtr;
+ ViewPortResource *_vPort;
+ bool _saveBack;
+ Common::Rect *_clipPtr;
+ uint _planeSelect;
+ Graphics::Surface _screenSurface;
+ CMapResource *_backColors;
+ FontInfoResource *_fontPtr;
+ PictureResource *_fontChar;
+ DrawInfo *_drawPtr;
+ DrawInfo _defaultDrawInfo;
+private:
+ void restoreBack(Common::Array<Common::Rect> &rectList, int rectListCount,
+ PictureResource *srcPic, PictureResource *destPic);
+public:
+ GraphicsManager(VoyeurEngine *vm);
+ ~GraphicsManager();
+
+ void sInitGraphics();
+
+ void setupMCGASaveRect(ViewPortResource *viewPort);
+ void addRectOptSaveRect(ViewPortResource *viewPort, int idx, const Common::Rect &bounds);
+ void restoreMCGASaveRect(ViewPortResource *viewPort);
+ void addRectNoSaveBack(ViewPortResource *viewPort, int idx, const Common::Rect &bounds);
+
+ void sDrawPic(DisplayResource *srcDisplay, DisplayResource *destDisplay, const Common::Point &initialOffset);
+ void fillPic(DisplayResource *display, byte onOff);
+ void sDisplayPic(PictureResource *pic);
+ void drawANumber(DisplayResource *display, int num, const Common::Point &pt);
+ void flipPage();
+ void clearPalette();
+ void setPalette(const byte *palette, int start, int count);
+ void setPalette128(const byte *palette, int start, int count);
+ void resetPalette();
+ void setColor(int idx, byte r, byte g, byte b);
+ void setOneColor(int idx, byte r, byte g, byte b);
+ void setColors(int start, int count, const byte *pal);
+ void screenReset();
+ void fadeDownICF1(int steps);
+ void fadeUpICF1(int steps = 0);
+ void fadeDownICF(int steps);
+ void drawDot();
+
+ /**
+ * Synchronizes the game data
+ */
+ void synchronize(Common::Serializer &s);
+};
+
+} // End of namespace Voyeur
+
+#endif /* VOYEUR_GRAPHICS_H */
diff --git a/engines/voyeur/module.mk b/engines/voyeur/module.mk
new file mode 100644
index 0000000000..aab254cf36
--- /dev/null
+++ b/engines/voyeur/module.mk
@@ -0,0 +1,23 @@
+MODULE := engines/voyeur
+
+MODULE_OBJS := \
+ animation.o \
+ data.o \
+ debugger.o \
+ detection.o \
+ events.o \
+ files.o \
+ files_threads.o \
+ graphics.o \
+ sound.o \
+ staticres.o \
+ voyeur.o \
+ voyeur_game.o
+
+# This module can be built as a plugin
+ifeq ($(ENABLE_VOYEUR), DYNAMIC_PLUGIN)
+PLUGIN := 1
+endif
+
+# Include common rules
+include $(srcdir)/rules.mk
diff --git a/engines/voyeur/sound.cpp b/engines/voyeur/sound.cpp
new file mode 100644
index 0000000000..26145bd743
--- /dev/null
+++ b/engines/voyeur/sound.cpp
@@ -0,0 +1,85 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "audio/audiostream.h"
+#include "audio/decoders/raw.h"
+#include "common/memstream.h"
+#include "voyeur/sound.h"
+#include "voyeur/staticres.h"
+
+namespace Voyeur {
+
+ SoundManager::SoundManager(Audio::Mixer *mixer) {
+ _mixer = mixer;
+ _vocOffset = 0;
+}
+
+void SoundManager::playVOCMap(byte *voc, int vocSize) {
+ Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(voc, vocSize, DisposeAfterUse::NO);
+ Audio::AudioStream *audioStream = Audio::makeVOCStream(dataStream, Audio::FLAG_UNSIGNED, DisposeAfterUse::YES);
+
+ _mixer->playStream(Audio::Mixer::kSFXSoundType, &_soundHandle, audioStream);
+}
+
+void SoundManager::abortVOCMap() {
+ _mixer->stopHandle(_soundHandle);
+}
+
+void SoundManager::stopVOCPlay() {
+ _mixer->stopHandle(_soundHandle);
+ _vocOffset = 0;
+}
+
+void SoundManager::setVOCOffset(int offset) {
+ _vocOffset = offset;
+}
+
+Common::String SoundManager::getVOCFileName(int idx) {
+ return Common::String::format("%s.voc", SZ_FILENAMES[idx]);
+}
+
+void SoundManager::startVOCPlay(const Common::String &filename) {
+ Common::File f;
+ if (!f.open(filename))
+ error("Could not find voc file - %s", filename.c_str());
+
+ Audio::SeekableAudioStream *audioStream = Audio::makeVOCStream(f.readStream(f.size()),
+ Audio::FLAG_UNSIGNED, DisposeAfterUse::YES);
+
+ _mixer->playStream(Audio::Mixer::kSFXSoundType, &_soundHandle, audioStream);
+ audioStream->seek(Audio::Timestamp(_vocOffset * 1000, 11025));
+}
+
+void SoundManager::startVOCPlay(int soundId) {
+ startVOCPlay(getVOCFileName(soundId));
+}
+
+int SoundManager::getVOCStatus() {
+ return _mixer->isSoundHandleActive(_soundHandle);
+}
+
+uint32 SoundManager::getVOCFrame() {
+ Audio::Timestamp timestamp = _mixer->getElapsedTime(_soundHandle);
+ return timestamp.secs();
+}
+
+} // End of namespace Voyeur
diff --git a/engines/avalanche/pingo.h b/engines/voyeur/sound.h
index 6eecaf6453..af1d0b1b46 100644
--- a/engines/avalanche/pingo.h
+++ b/engines/voyeur/sound.h
@@ -8,49 +8,48 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-/*
- * This code is based on the original source code of Lord Avalot d'Argent version 1.3.
- * Copyright (c) 1994-1995 Mike, Mark and Thomas Thurman.
- */
-
-/* PINGO Full-screen sub-parts of the game. */
-
-#ifndef AVALANCHE_PINGO_H
-#define AVALANCHE_PINGO_H
+#ifndef VOYEUR_SOUND_H
+#define VOYEUR_SOUND_H
+#include "common/scummsys.h"
#include "common/str.h"
+#include "audio/mixer.h"
+#include "audio/decoders/voc.h"
+#include "voyeur/files.h"
-namespace Avalanche {
-class AvalancheEngine;
-
-class Pingo {
-public:
- Pingo(AvalancheEngine *vm);
-
- void bossKey();
- void copy02();
- void copy03();
- void copyPage(byte frp, byte top);
- void winningPic();
+namespace Voyeur {
+class SoundManager {
private:
- AvalancheEngine *_vm;
-
- void dPlot(int16 x, int16 y, Common::String z);
+ Audio::Mixer *_mixer;
+ Audio::SoundHandle _soundHandle;
+ int _vocOffset;
+public:
+ SoundManager(Audio::Mixer *mixer);
+
+ void playVOCMap(byte *voc, int vocSize);
+ void stopVOCPlay();
+ void abortVOCMap();
+ void setVOCOffset(int offset);
+ Common::String getVOCFileName(int idx);
+ void startVOCPlay(const Common::String &filename);
+ void startVOCPlay(int soundId);
+ int getVOCStatus();
+ uint32 getVOCFrame();
};
-} // End of namespace Avalanche.
+} // End of namespace Voyeur
-#endif // AVALANCHE_PINGO_H
+#endif /* VOYEUR_SOUND_H */
diff --git a/engines/voyeur/staticres.cpp b/engines/voyeur/staticres.cpp
new file mode 100644
index 0000000000..7016793ddc
--- /dev/null
+++ b/engines/voyeur/staticres.cpp
@@ -0,0 +1,142 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/staticres.h"
+
+namespace Voyeur {
+
+const int COMPUTER_DEFAULTS[] = {
+ 18, 1, 0, 1, 33, 0, 998, -1, 18, 2, 0, 1, 41, 0,
+ 998, -1, 18, 3, 0, 1, 47, 0, 998, -1, 18, 4, 0,
+ 1, 53, 0, 998, -1, 18, 5, 0, 1, 46, 0, 998, -1,
+ 18, 6, 0, 1, 50, 0, 998, -1, 18, 7, 0, 1, 40, 0,
+ 998, -1, 18, 8, 0, 1, 43, 0, 998, -1, 19, 1, 0,
+ 2, 28, 0, 998, -1
+};
+
+const int RESOLVE_TABLE[] = {
+ 0x2A00, 0x4A00, 0x1000, 0x4B00, 0x2C00, 0x4F00, 0x1400, 0x5000,
+ 0x1700, 0x5100, 0x1800, 0x5200, 0x3300, 0x5400, 0x3700, 0x5500,
+ 0x1A00, 0x1C00, 0x1E00, 0x1F00, 0x2100, 0x2200, 0x2400, 0x2700,
+ 0x2B00, 0x1100, 0x4C00, 0x1200, 0x4D00, 0x1300, 0x4E00, 0x2E00,
+ 0x1900, 0x3200, 0x3400, 0x3800, 0x2800, 0x3E00, 0x4100, 0x2900,
+ 0x4400, 0x4600, 0x5300, 0x3900, 0x7600, 0x7200, 0x7300, 0x7400,
+ 0x7500
+};
+
+const int LEVEL_H[] = {
+ 4, 7, 7, 8, 9, 10, 2, 2, 4, 8, 8, 9, 9, 10, 10, 11, 11
+};
+
+const int LEVEL_M[] = {
+ 0, 0, 30, 0, 30, 0, 0, 0, 30, 0, 30, 0, 45, 0, 30, 0, 30
+};
+
+const int BLIND_TABLE[] = {
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 0, 9, 10, 11, 1, 11, 5, 12,
+ 13, 16, 15, 16, 17, 18, 5, 6, 18, 17, 13, 13, 14, 14,
+ 5, 12, 6, 6, 13, 14, 13
+};
+
+const int COMPUTER_SCREEN_TABLE[] = {
+ 269, 128, 307, 163,
+ 269, 128, 307, 163,
+ 68, 79, 98, 102,
+ 68, 79, 98, 102,
+ 68, 79, 98, 102,
+ 68, 79, 98, 102,
+ 248, 138, 291, 163,
+ 83, 132, 143, 156,
+ 248, 138, 291, 163,
+ 83, 132, 143, 156,
+ 83, 132, 143, 156,
+ 248, 138, 291, 163,
+ 68, 79, 98, 102,
+ 68, 79, 98, 102
+};
+
+const char *const SZ_FILENAMES[] = {
+ "A2110100", nullptr, "A2300100", nullptr, "B1220100", nullptr, "C1220100", nullptr,
+ "C1290100", nullptr, "D1220100", nullptr, "D1270100", nullptr, "E1210100", nullptr,
+ "E1260100", nullptr, "E1280100", nullptr, "E1325100", nullptr, "F1200100", nullptr,
+ "G1250100", nullptr, "G1260100", nullptr, "H1200100", nullptr, "H1230100", nullptr,
+ "H1310100", nullptr, "I1300100", nullptr, "J1220100", nullptr, "J1230100", nullptr,
+ "J1320100", nullptr, "K1260100", nullptr, "K1280100", nullptr, "K1325100", nullptr,
+ "L1210100", nullptr, "L1280100", nullptr, "L1290100", nullptr, "L1300100", nullptr,
+ "L1310100", nullptr, "M1260100", nullptr, "M1310100", nullptr, "N1210100", nullptr,
+ "N1225100", nullptr, "N1275510", nullptr, "N1280510", nullptr, "N1325100", nullptr,
+ "O1230100", nullptr, "O1260100", nullptr, "O1260520", nullptr, "O1280100", nullptr,
+ "O1325540", nullptr, "P1276710", nullptr, "P1280540", nullptr, "P1280740", nullptr,
+ "P1290510", nullptr, "P1325100", nullptr, "P1325300", nullptr, "P1325520", nullptr,
+ "Q1230100", nullptr, "Q1240530", nullptr, "Q1240730", nullptr, "Q1260100", nullptr,
+ "Q1260520", nullptr, "Q1260720", nullptr, "Q1325100", nullptr, "R1280540", nullptr,
+ "Z1110510", nullptr, "Z1110520", nullptr, "Z1110530", nullptr, "Z1110540", nullptr,
+ "Z1110545", nullptr, "Z2320100", nullptr, "Z2905300", nullptr, "Z3110100", nullptr,
+ "Z3115510", nullptr, "Z3115520", nullptr, "Z3115530", nullptr, "Z3115540", nullptr,
+ "Z4915100", nullptr, "Z4915200", nullptr, "Z4915300",
+ nullptr, nullptr, nullptr, nullptr, nullptr,
+ "MMARG", "MZACK", "MREED", "MJESSI", "MCHLOE", "MCAMERA", "MENDCRED",
+ "NEWCALL2", "PHONE1", "PHONE2", "PHONE3", "PHONE6", "PHONE8",
+ "B1300100", "C1250100", "C1320100", "D1320100", "E1210200", "E1260200",
+ "E1280200", "E1310100", "G1230100", "G1300100", "I1210100", "I1270100",
+ "I1280100", "J1250100", "J1280100", "K1260200", "K1270100", "K1325200",
+ "L1240100", "M1200100", "M1230100", "M1290100", "N1250100", "N1260100",
+ "N1280100", "O1250510", "O1290510", "O1320510", "O1320710", "P1240100",
+ "P1240530", "P1260100", "P1270100", "P1280100", "P1280530", "P1320530",
+ "Q1240100", "E1325100"
+};
+
+const char *const SATURDAY = "Saturday";
+const char *const SUNDAY = "Sunday";
+const char *const MONDAY = "Monday Morning";
+const char *const AM = "am";
+const char *const PM = "pm";
+
+const char *const START_OF_MESSAGE = "*** Start of Message ***";
+const char *const END_OF_MESSAGE = "*** End of Message ***";
+
+const char *const EVENT_TYPE_STRINGS[4] = { "Video", "Audio", "Evidence", "Computer" };
+
+int DOT_LINE_START[9] = {
+ 0xE880, 0xE9C0, 0xEB00, 0xEC40, 0xED80, 0xEEC0, 0xF000, 0xF140, 0xF280
+};
+int DOT_LINE_OFFSET[9] = {
+ 144, 143, 142, 141, 141, 141, 142, 143, 144
+};
+int DOT_LINE_LENGTH[9] = {
+ 5, 7, 9, 11, 11, 11, 9, 7, 5
+};
+
+const char *const PIRACY_MESSAGE[] = {
+ "It is illegal to make",
+ "unauthorized copies of",
+ "this software. Duplication",
+ "of this software for any",
+ "reason including sale,",
+ "loan, rental, or gift is a",
+ "crime. Penalties include",
+ "fines of up to $50,000",
+ "and jail terms up to",
+ "5 years."
+};
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/staticres.h b/engines/voyeur/staticres.h
new file mode 100644
index 0000000000..ea3a8003ac
--- /dev/null
+++ b/engines/voyeur/staticres.h
@@ -0,0 +1,63 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VOYEUR_STATICRES_H
+#define VOYEUR_STATICRES_H
+
+#include "common/scummsys.h"
+
+namespace Voyeur {
+
+extern const int COMPUTER_DEFAULTS[];
+
+extern const int RESOLVE_TABLE[];
+
+extern const int LEVEL_H[];
+
+extern const int LEVEL_M[];
+
+extern const int BLIND_TABLE[];
+
+extern const int COMPUTER_SCREEN_TABLE[];
+
+extern const char *const SZ_FILENAMES[];
+
+extern const char *const SATURDAY;
+extern const char *const SUNDAY;
+extern const char *const MONDAY;
+extern const char *const AM;
+extern const char *const PM;
+
+extern const char *const START_OF_MESSAGE;
+extern const char *const END_OF_MESSAGE;
+
+extern const char *const EVENT_TYPE_STRINGS[4];
+
+extern int DOT_LINE_START[9];
+extern int DOT_LINE_OFFSET[9];
+extern int DOT_LINE_LENGTH[9];
+
+extern const char *const PIRACY_MESSAGE[];
+
+} // End of namespace Voyeur
+
+#endif
diff --git a/engines/voyeur/voyeur.cpp b/engines/voyeur/voyeur.cpp
new file mode 100644
index 0000000000..9843930bd3
--- /dev/null
+++ b/engines/voyeur/voyeur.cpp
@@ -0,0 +1,921 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/voyeur.h"
+#include "voyeur/animation.h"
+#include "voyeur/graphics.h"
+#include "voyeur/staticres.h"
+#include "common/scummsys.h"
+#include "common/config-manager.h"
+#include "common/debug-channels.h"
+#include "graphics/palette.h"
+#include "graphics/scaler.h"
+#include "graphics/thumbnail.h"
+
+namespace Voyeur {
+
+VoyeurEngine *g_vm;
+
+VoyeurEngine::VoyeurEngine(OSystem *syst, const VoyeurGameDescription *gameDesc) : Engine(syst),
+ _gameDescription(gameDesc), _randomSource("Voyeur"),
+ _defaultFontInfo(3, 0xff, 0xff, 0, 0, ALIGN_LEFT, 0, Common::Point(), 1, 1,
+ Common::Point(1, 1), 1, 0, 0) {
+ _debugger = nullptr;
+ _eventsManager = nullptr;
+ _filesManager = nullptr;
+ _graphicsManager = nullptr;
+ _soundManager = nullptr;
+ _voy = nullptr;
+ _bVoy = NULL;
+
+ _iForceDeath = ConfMan.getInt("boot_param");
+ if (_iForceDeath < 1 || _iForceDeath > 4)
+ _iForceDeath = -1;
+
+ _controlPtr = NULL;
+ _stampFlags = 0;
+ _playStampGroupId = _currentVocId = 0;
+ _audioVideoId = -1;
+ _checkTransitionId = -1;
+ _gameHour = 0;
+ _gameMinute = 0;
+ _flashTimeVal = 0;
+ _flashTimeFlag = false;
+ _timeBarVal = -1;
+ _checkPhoneVal = 0;
+ _voyeurArea = AREA_NONE;
+ _loadGameSlot = -1;
+
+ DebugMan.addDebugChannel(kDebugScripts, "scripts", "Game scripts");
+
+ _debugger = new Debugger(this);
+ _eventsManager = new EventsManager(this);
+ _filesManager = new FilesManager(this);
+ _graphicsManager = new GraphicsManager(this);
+ _soundManager = new SoundManager(_mixer);
+ _voy = new SVoy(this);
+
+ _stampLibPtr = nullptr;
+ _controlGroupPtr = nullptr;
+ _stampData = nullptr;
+ _stackGroupPtr = nullptr;
+ _glGoState = -1;
+ _glGoStack = -1;
+ _resolvePtr = nullptr;
+ _mainThread = nullptr;
+}
+
+VoyeurEngine::~VoyeurEngine() {
+ delete _bVoy;
+ delete _voy;
+ delete _soundManager;
+ delete _graphicsManager;
+ delete _filesManager;
+ delete _eventsManager;
+ delete _debugger;
+}
+
+Common::Error VoyeurEngine::run() {
+ ESP_Init();
+ globalInitBolt();
+
+ if (doHeadTitle()) {
+ // The original allows the victim to be explicitly specified via the command line.
+ // This is possible in ScummVM by using a boot parameter.
+ if (_iForceDeath >= 1 && _iForceDeath <= 4)
+ _voy->_eventFlags |= EVTFLAG_VICTIM_PRESET;
+
+
+ playStamp();
+ if (!shouldQuit())
+ doTailTitle();
+ }
+
+ return Common::kNoError;
+}
+
+
+int VoyeurEngine::getRandomNumber(int maxNumber) {
+ return _randomSource.getRandomNumber(maxNumber);
+}
+
+void VoyeurEngine::ESP_Init() {
+ ThreadResource::init();
+
+ if (ConfMan.hasKey("save_slot"))
+ _loadGameSlot = ConfMan.getInt("save_slot");
+}
+
+void VoyeurEngine::globalInitBolt() {
+ initBolt();
+
+ _filesManager->openBoltLib("bvoy.blt", _bVoy);
+ _bVoy->getBoltGroup(0x000);
+ _bVoy->getBoltGroup(0x100);
+
+ _graphicsManager->_fontPtr = &_defaultFontInfo;
+ _graphicsManager->_fontPtr->_curFont = _bVoy->boltEntry(0x101)._fontResource;
+ assert(_graphicsManager->_fontPtr->_curFont);
+
+ // Setup default flags
+ _voy->_viewBounds = nullptr;
+
+ _eventsManager->addFadeInt();
+}
+
+void VoyeurEngine::initBolt() {
+ vInitInterrupts();
+ _graphicsManager->sInitGraphics();
+ _eventsManager->vInitColor();
+ initInput();
+}
+
+void VoyeurEngine::vInitInterrupts() {
+ _eventsManager->_intPtr._palette = &_graphicsManager->_VGAColors[0];
+}
+
+void VoyeurEngine::initInput() {
+}
+
+bool VoyeurEngine::doHeadTitle() {
+// char dest[144];
+
+ _eventsManager->startMainClockInt();
+
+ if (_loadGameSlot == -1) {
+ // Show starting screen
+ if (_bVoy->getBoltGroup(0x500)) {
+ showConversionScreen();
+ _bVoy->freeBoltGroup(0x500);
+
+ if (shouldQuit())
+ return false;
+ }
+
+ if (ConfMan.getBool("copy_protection")) {
+ // Display lock screen
+ bool result = doLock();
+ if (!result || shouldQuit())
+ return false;
+ }
+
+ // Show the title screen
+ _eventsManager->getMouseInfo();
+ showTitleScreen();
+ if (shouldQuit())
+ return false;
+
+ // Opening
+ _eventsManager->getMouseInfo();
+ doOpening();
+ if (shouldQuit())
+ return false;
+
+ _eventsManager->getMouseInfo();
+ doTransitionCard("Saturday Afternoon", "Player's Apartment");
+ _eventsManager->delayClick(90);
+
+ if (_voy->_eventFlags & EVTFLAG_VICTIM_PRESET) {
+ // Preset victim turned on, so add a default set of incriminating videos
+ _voy->addEvent(18, 1, EVTYPE_VIDEO, 33, 0, 998, -1);
+ _voy->addEvent(18, 2, EVTYPE_VIDEO, 41, 0, 998, -1);
+ _voy->addEvent(18, 3, EVTYPE_VIDEO, 47, 0, 998, -1);
+ _voy->addEvent(18, 4, EVTYPE_VIDEO, 53, 0, 998, -1);
+ _voy->addEvent(18, 5, EVTYPE_VIDEO, 46, 0, 998, -1);
+ _voy->addEvent(18, 6, EVTYPE_VIDEO, 50, 0, 998, -1);
+ _voy->addEvent(18, 7, EVTYPE_VIDEO, 40, 0, 998, -1);
+ _voy->addEvent(18, 8, EVTYPE_VIDEO, 43, 0, 998, -1);
+ _voy->addEvent(19, 1, EVTYPE_AUDIO, 20, 0, 998, -1);
+ }
+ }
+
+ _voy->_aptLoadMode = 140;
+ return true;
+}
+
+void VoyeurEngine::showConversionScreen() {
+ _graphicsManager->_backgroundPage = _bVoy->boltEntry(0x502)._picResource;
+ _graphicsManager->_vPort->setupViewPort();
+ flipPageAndWait();
+
+ // Immediate palette load to show the initial screen
+ CMapResource *cMap = _bVoy->getCMapResource(0x503);
+ assert(cMap);
+ cMap->_steps = 0;
+ cMap->startFade();
+
+ // Wait briefly
+ _eventsManager->delayClick(150);
+ if (shouldQuit())
+ return;
+
+ // Fade out the screen
+ cMap = _bVoy->getCMapResource(0x504);
+ cMap->_steps = 30;
+ cMap->startFade();
+ if (shouldQuit())
+ return;
+
+ flipPageAndWaitForFade();
+
+ _graphicsManager->screenReset();
+}
+
+bool VoyeurEngine::doLock() {
+ bool result = true;
+ int buttonVocSize, wrongVocSize;
+ byte *buttonVoc = _filesManager->fload("button.voc", &buttonVocSize);
+ byte *wrongVoc = _filesManager->fload("wrong.voc", &wrongVocSize);
+
+ if (_bVoy->getBoltGroup(0x700)) {
+ Common::String password = "3333";
+
+ _graphicsManager->_backgroundPage = _bVoy->getPictureResource(0x700);
+ _graphicsManager->_backColors = _bVoy->getCMapResource(0x701);
+ PictureResource *cursorPic = _bVoy->getPictureResource(0x702);
+ _voy->_viewBounds = _bVoy->boltEntry(0x704)._rectResource;
+ Common::Array<RectEntry> &hotspots = _bVoy->boltEntry(0x705)._rectResource->_entries;
+
+ assert(cursorPic);
+ _graphicsManager->_vPort->setupViewPort();
+
+ _graphicsManager->_backColors->startFade();
+ _graphicsManager->_vPort->_parent->_flags |= DISPFLAG_8;
+ _graphicsManager->flipPage();
+ _eventsManager->sWaitFlip();
+
+ while (!shouldQuit() && (_eventsManager->_fadeStatus & 1))
+ _eventsManager->delay(1);
+
+ _eventsManager->setCursorColor(127, 0);
+ _graphicsManager->setColor(1, 64, 64, 64);
+ _graphicsManager->setColor(2, 96, 96, 96);
+ _graphicsManager->setColor(3, 160, 160, 160);
+ _graphicsManager->setColor(4, 224, 224, 224);
+
+ // Set up the cursor
+ _eventsManager->setCursor(cursorPic);
+ _eventsManager->showCursor();
+
+ _eventsManager->_intPtr._hasPalette = true;
+
+ _graphicsManager->_fontPtr->_curFont = _bVoy->boltEntry(0x708)._fontResource;
+ _graphicsManager->_fontPtr->_fontSaveBack = 0;
+ _graphicsManager->_fontPtr->_fontFlags = DISPFLAG_NONE;
+
+ Common::String dateString = "ScummVM";
+ Common::String displayString = Common::String::format("Last Play %s", dateString.c_str());
+
+ bool firstLoop = true;
+ bool breakFlag = false;
+ while (!breakFlag && !shouldQuit()) {
+ _graphicsManager->_vPort->setupViewPort();
+ flipPageAndWait();
+
+ // Display the last play time
+ _graphicsManager->_fontPtr->_pos = Common::Point(0, 97);
+ _graphicsManager->_fontPtr->_justify = ALIGN_CENTER;
+ _graphicsManager->_fontPtr->_justifyWidth = 384;
+ _graphicsManager->_fontPtr->_justifyHeight = 97;
+
+ _graphicsManager->_vPort->drawText(displayString);
+ flipPageAndWait();
+
+ if (firstLoop) {
+ firstLoop = false;
+ displayString = "";
+ }
+
+ // Loop for getting key presses
+ int key;
+ do {
+ do {
+ // Scan through the list of key rects to check if a keypad key is highlighted
+ key = -1;
+ Common::Point mousePos = _eventsManager->getMousePos() + Common::Point(20, 10);
+
+ int keyCount = hotspots.size();
+ for (int keyIndex = 0; keyIndex < keyCount; ++keyIndex) {
+ if (hotspots[keyIndex].contains(mousePos)) {
+ key = keyIndex;
+ break;
+ }
+ }
+
+ _eventsManager->setCursorColor(127, (key == -1) ? 0 : 1);
+ _eventsManager->_intPtr._hasPalette = true;
+
+ _eventsManager->delay(1);
+ _eventsManager->getMouseInfo();
+ } while (!shouldQuit() && !_eventsManager->_mouseClicked);
+ _eventsManager->_mouseClicked = false;
+ } while (!shouldQuit() && key == -1);
+
+ _soundManager->abortVOCMap();
+ _soundManager->playVOCMap(buttonVoc, buttonVocSize);
+
+ while (_soundManager->getVOCStatus()) {
+ if (shouldQuit())
+ break;
+ _eventsManager->delay(1);
+ }
+
+ // Process the key
+ if (key < 10) {
+ // Numeric key
+ if (displayString.size() < 10) {
+ displayString += '0' + key;
+ continue;
+ }
+ } else if (key == 10) {
+ // Accept key
+ if ((password.empty() && displayString.empty()) || (password == displayString)) {
+ breakFlag = true;
+ result = true;
+ break;
+ }
+ } else if (key == 11) {
+ // New code
+ if ((password.empty() && displayString.empty()) || (password != displayString)) {
+ _graphicsManager->_vPort->setupViewPort();
+ password = displayString;
+ displayString = "";
+ continue;
+ }
+ } else if (key == 12) {
+ // Exit keyword
+ breakFlag = true;
+ result = false;
+ break;
+ } else {
+ continue;
+ }
+
+ _soundManager->playVOCMap(wrongVoc, wrongVocSize);
+ }
+
+ _graphicsManager->fillPic(_graphicsManager->_vPort, 0);
+ flipPageAndWait();
+ _graphicsManager->resetPalette();
+
+ _voy->_viewBounds = nullptr;
+ _bVoy->freeBoltGroup(0x700);
+ }
+
+ _eventsManager->hideCursor();
+
+ delete[] buttonVoc;
+ delete[] wrongVoc;
+
+ return result;
+}
+
+void VoyeurEngine::showTitleScreen() {
+ if (!_bVoy->getBoltGroup(0x500))
+ return;
+
+ _graphicsManager->_backgroundPage = _bVoy->getPictureResource(0x500);
+
+ _graphicsManager->_vPort->setupViewPort();
+ flipPageAndWait();
+
+ // Immediate palette load to show the initial screen
+ CMapResource *cMap = _bVoy->getCMapResource(0x501);
+ assert(cMap);
+ cMap->_steps = 60;
+ cMap->startFade();
+
+ // Wait briefly
+ _eventsManager->delayClick(200);
+ if (shouldQuit()) {
+ _bVoy->freeBoltGroup(0x500);
+ return;
+ }
+
+ // Fade out the screen
+ cMap = _bVoy->getCMapResource(0x504);
+ cMap->_steps = 30;
+ cMap->startFade();
+
+ flipPageAndWaitForFade();
+ if (shouldQuit()) {
+ _bVoy->freeBoltGroup(0x500);
+ return;
+ }
+
+ _graphicsManager->screenReset();
+ _eventsManager->delayClick(200);
+
+ // Voyeur title
+ playRL2Video("a1100100.rl2");
+ _graphicsManager->screenReset();
+
+ _bVoy->freeBoltGroup(0x500);
+}
+
+void VoyeurEngine::doOpening() {
+ _graphicsManager->screenReset();
+
+ if (!_bVoy->getBoltGroup(0x200))
+ return;
+
+ byte *frameTable = _bVoy->memberAddr(0x215);
+ byte *xyTable = _bVoy->memberAddr(0x216);
+// byte *whTable = _bVoy->memberAddr(0x217);
+ int frameIndex = 0;
+ bool creditShow = true;
+ PictureResource *textPic = nullptr;
+ Common::Point textPos;
+
+ _voy->_vocSecondsOffset = 0;
+ _voy->_RTVNum = 0;
+ _voy->_audioVisualStartTime = _voy->_RTVNum;
+ _voy->_eventFlags |= EVTFLAG_RECORDING;
+ _gameHour = 4;
+ _gameMinute = 0;
+ _audioVideoId = 1;
+ _eventsManager->_videoDead = -1;
+ _voy->addVideoEventStart();
+
+ _voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+
+ for (int i = 0; i < 256; ++i)
+ _graphicsManager->setColor(i, 8, 8, 8);
+
+ _eventsManager->_intPtr._hasPalette = true;
+ _graphicsManager->_vPort->setupViewPort();
+ flipPageAndWait();
+
+ RL2Decoder decoder;
+ decoder.loadRL2File("a2300100.rl2", false);
+ decoder.start();
+
+ while (!shouldQuit() && !decoder.endOfVideo() && !_eventsManager->_mouseClicked) {
+ if (decoder.hasDirtyPalette()) {
+ const byte *palette = decoder.getPalette();
+ _graphicsManager->setPalette(palette, 0, 256);
+ }
+
+ if (decoder.needsUpdate()) {
+ const Graphics::Surface *frame = decoder.decodeNextFrame();
+
+ Common::copy((const byte *)frame->getPixels(), (const byte *)frame->getPixels() + 320 * 200,
+ (byte *)_graphicsManager->_screenSurface.getPixels());
+
+ if (decoder.getCurFrame() >= (int32)READ_LE_UINT32(frameTable + frameIndex * 4)) {
+ if (creditShow) {
+ // Show a credit
+ textPic = _bVoy->boltEntry(frameIndex / 2 + 0x202)._picResource;
+ textPos = Common::Point(READ_LE_UINT16(xyTable + frameIndex * 2),
+ READ_LE_UINT16(xyTable + (frameIndex + 1) * 2));
+
+ creditShow = false;
+ } else {
+ textPic = nullptr;
+
+ creditShow = true;
+ }
+
+ ++frameIndex;
+ }
+
+ if (textPic) {
+ _graphicsManager->sDrawPic(textPic, _graphicsManager->_vPort, textPos);
+ flipPageAndWait();
+ }
+ }
+
+ _eventsManager->getMouseInfo();
+ g_system->delayMillis(10);
+ }
+
+ if ((_voy->_RTVNum - _voy->_audioVisualStartTime) < 2)
+ _eventsManager->delay(60);
+
+ _voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+ _voy->addVideoEventEnd();
+ _voy->_eventFlags &= ~EVTFLAG_RECORDING;
+
+ _bVoy->freeBoltGroup(0x200);
+}
+
+void VoyeurEngine::playRL2Video(const Common::String &filename) {
+ RL2Decoder decoder;
+ decoder.loadRL2File(filename, false);
+ decoder.start();
+
+ while (!shouldQuit() && !decoder.endOfVideo() && !_eventsManager->_mouseClicked) {
+ if (decoder.hasDirtyPalette()) {
+ const byte *palette = decoder.getPalette();
+ _graphicsManager->setPalette(palette, 0, 256);
+ }
+
+ if (decoder.needsUpdate()) {
+ const Graphics::Surface *frame = decoder.decodeNextFrame();
+
+ Common::copy((const byte *)frame->getPixels(), (const byte *)frame->getPixels() + 320 * 200,
+ (byte *)_graphicsManager->_screenSurface.getPixels());
+ }
+
+ _eventsManager->getMouseInfo();
+ g_system->delayMillis(10);
+ }
+}
+
+void VoyeurEngine::playAVideo(int videoId) {
+ playAVideoDuration(videoId, 9999);
+}
+
+void VoyeurEngine::playAVideoDuration(int videoId, int duration) {
+ int totalFrames = duration * 10;
+
+ if (videoId == -1)
+ return;
+
+ PictureResource *pic = NULL;
+ if (videoId == 42) {
+ _eventsManager->_videoDead = 0;
+ pic = _bVoy->boltEntry(0xE00 + _eventsManager->_videoDead)._picResource;
+ }
+
+ RL2Decoder decoder;
+ decoder.loadVideo(videoId);
+
+ decoder.seek(Audio::Timestamp(_voy->_vocSecondsOffset * 1000));
+ decoder.start();
+ int endFrame = decoder.getCurFrame() + totalFrames;
+
+ _eventsManager->getMouseInfo();
+ _eventsManager->startCursorBlink();
+
+ while (!shouldQuit() && !decoder.endOfVideo() && !_eventsManager->_mouseClicked &&
+ (decoder.getCurFrame() < endFrame)) {
+ if (decoder.needsUpdate()) {
+ const Graphics::Surface *frame = decoder.decodeNextFrame();
+
+ Common::copy((const byte *)frame->getPixels(), (const byte *)frame->getPixels() + 320 * 200,
+ (byte *)_graphicsManager->_screenSurface.getPixels());
+ if (_voy->_eventFlags & EVTFLAG_RECORDING)
+ _graphicsManager->drawDot();
+ }
+
+ if (decoder.hasDirtyPalette()) {
+ const byte *palette = decoder.getPalette();
+ _graphicsManager->setPalette(palette, 0, decoder.getPaletteCount());
+ _graphicsManager->setOneColor(128, 220, 20, 20);
+ }
+
+ _eventsManager->getMouseInfo();
+ g_system->delayMillis(10);
+ }
+
+ // RL2 finished
+ _graphicsManager->screenReset();
+ _voy->_eventFlags &= ~EVTFLAG_RECORDING;
+
+ if (_voy->_eventFlags & EVTFLAG_8) {
+ assert(pic);
+ byte *imgData = _graphicsManager->_vPort->_currentPic->_imgData;
+ _graphicsManager->_vPort->_currentPic->_imgData = pic->_imgData;
+ pic->_imgData = imgData;
+ _voy->_eventFlags &= ~EVTFLAG_8;
+ }
+}
+
+void VoyeurEngine::playAudio(int audioId) {
+ _bVoy->getBoltGroup(0x7F00);
+ _graphicsManager->_backgroundPage = _bVoy->boltEntry(0x7F00 +
+ BLIND_TABLE[audioId] * 2)._picResource;
+ _graphicsManager->_backColors = _bVoy->boltEntry(0x7F01 +
+ BLIND_TABLE[audioId] * 2)._cMapResource;
+
+ _graphicsManager->_vPort->setupViewPort();
+ _graphicsManager->_backColors->startFade();
+ flipPageAndWaitForFade();
+
+ _voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+ _soundManager->setVOCOffset(_voy->_vocSecondsOffset);
+ Common::String filename = _soundManager->getVOCFileName(
+ audioId + 159);
+ _soundManager->startVOCPlay(filename);
+ _voy->_eventFlags |= EVTFLAG_RECORDING;
+ _eventsManager->startCursorBlink();
+
+ while (!shouldQuit() && !_eventsManager->_mouseClicked &&
+ _soundManager->getVOCStatus())
+ _eventsManager->delayClick(1);
+
+ _voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+ _soundManager->stopVOCPlay();
+
+ _bVoy->freeBoltGroup(0x7F00);
+ _graphicsManager->_vPort->setupViewPort(NULL);
+
+ _voy->_eventFlags &= ~EVTFLAG_RECORDING;
+ _voy->_playStampMode = 129;
+}
+
+void VoyeurEngine::doTransitionCard(const Common::String &time, const Common::String &location) {
+ _graphicsManager->setColor(128, 16, 16, 16);
+ _graphicsManager->setColor(224, 220, 220, 220);
+ _eventsManager->_intPtr._hasPalette = true;
+
+ _graphicsManager->_vPort->setupViewPort(NULL);
+ _graphicsManager->_vPort->fillPic(0x80);
+ _graphicsManager->flipPage();
+ _eventsManager->sWaitFlip();
+
+ flipPageAndWait();
+ _graphicsManager->_vPort->fillPic(0x80);
+
+ FontInfoResource &fi = *_graphicsManager->_fontPtr;
+ fi._curFont = _bVoy->boltEntry(257)._fontResource;
+ fi._foreColor = 224;
+ fi._fontSaveBack = 0;
+ fi._pos = Common::Point(0, 116);
+ fi._justify = ALIGN_CENTER;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 120;
+
+ _graphicsManager->_vPort->drawText(time);
+
+ if (!location.empty()) {
+ fi._pos = Common::Point(0, 138);
+ fi._justify = ALIGN_CENTER;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 140;
+
+ _graphicsManager->_vPort->drawText(location);
+ }
+
+ flipPageAndWait();
+}
+
+void VoyeurEngine::saveLastInplay() {
+ // No implementation in ScummVM version
+}
+
+void VoyeurEngine::flipPageAndWait() {
+ _graphicsManager->_vPort->_flags |= DISPFLAG_8;
+ _graphicsManager->flipPage();
+ _eventsManager->sWaitFlip();
+}
+
+void VoyeurEngine::flipPageAndWaitForFade() {
+ flipPageAndWait();
+
+ while (!shouldQuit() && (_eventsManager->_fadeStatus & 1))
+ _eventsManager->delay(1);
+}
+
+void VoyeurEngine::showEndingNews() {
+ _playStampGroupId = (_voy->_incriminatedVictimNumber - 1) * 256 + 0x7700;
+ _voy->_boltGroupId2 = (_controlPtr->_state->_victimIndex - 1) * 256 + 0x7B00;
+
+ _bVoy->getBoltGroup(_playStampGroupId);
+ _bVoy->getBoltGroup(_voy->_boltGroupId2);
+
+ PictureResource *pic = _bVoy->boltEntry(_playStampGroupId)._picResource;
+ CMapResource *pal = _bVoy->boltEntry(_playStampGroupId + 1)._cMapResource;
+
+ _graphicsManager->_vPort->setupViewPort(pic);
+ pal->startFade();
+ flipPageAndWaitForFade();
+
+ _eventsManager->getMouseInfo();
+
+ for (int idx = 1; idx < 4; ++idx) {
+ if (idx == 3) {
+ pic = _bVoy->boltEntry(_voy->_boltGroupId2)._picResource;
+ pal = _bVoy->boltEntry(_voy->_boltGroupId2 + 1)._cMapResource;
+ } else {
+ pic = _bVoy->boltEntry(_playStampGroupId + idx * 2)._picResource;
+ pal = _bVoy->boltEntry(_playStampGroupId + idx * 2 + 1)._cMapResource;
+ }
+
+ _graphicsManager->_vPort->setupViewPort(pic);
+ pal->startFade();
+ flipPageAndWaitForFade();
+
+ _bVoy->freeBoltMember(_playStampGroupId + (idx - 1) * 2);
+ _bVoy->freeBoltMember(_playStampGroupId + (idx - 1) * 2 + 1);
+
+ Common::String fname = Common::String::format("news%d.voc", idx);
+ _soundManager->startVOCPlay(fname);
+
+ _eventsManager->getMouseInfo();
+ while (!shouldQuit() && !_eventsManager->_mouseClicked &&
+ _soundManager->getVOCStatus()) {
+ _eventsManager->delay(1);
+ _eventsManager->getMouseInfo();
+ }
+
+ _soundManager->stopVOCPlay();
+ if (idx == 3)
+ _eventsManager->delay(3);
+
+ if (shouldQuit() || _eventsManager->_mouseClicked)
+ break;
+ }
+
+ _bVoy->freeBoltGroup(_playStampGroupId);
+ _bVoy->freeBoltGroup(_voy->_boltGroupId2);
+ _playStampGroupId = -1;
+ _voy->_boltGroupId2 = -1;
+}
+
+/*------------------------------------------------------------------------*/
+
+Common::String VoyeurEngine::generateSaveName(int slot) {
+ return Common::String::format("%s.%03d", _targetName.c_str(), slot);
+}
+
+/**
+ * Returns true if it is currently okay to restore a game
+ */
+bool VoyeurEngine::canLoadGameStateCurrently() {
+ return _voyeurArea == AREA_APARTMENT;
+}
+
+/**
+ * Returns true if it is currently okay to save the game
+ */
+bool VoyeurEngine::canSaveGameStateCurrently() {
+ return _voyeurArea == AREA_APARTMENT;
+}
+
+/**
+ * Load the savegame at the specified slot index
+ */
+Common::Error VoyeurEngine::loadGameState(int slot) {
+ _loadGameSlot = slot;
+ return Common::kNoError;
+}
+
+void VoyeurEngine::loadGame(int slot) {
+ // Open up the save file
+ Common::InSaveFile *saveFile = g_system->getSavefileManager()->openForLoading(generateSaveName(slot));
+ if (!saveFile)
+ return;
+
+ Common::Serializer serializer(saveFile, NULL);
+
+ // Store the current time index before the game is loaded
+ _checkTransitionId = _voy->_transitionId;
+
+ // Stop any playing sound
+ _soundManager->stopVOCPlay();
+
+ // Read in the savegame header
+ VoyeurSavegameHeader header;
+ if (!header.read(saveFile))
+ return;
+ if (header._thumbnail)
+ header._thumbnail->free();
+ delete header._thumbnail;
+
+ synchronize(serializer);
+
+ delete saveFile;
+
+ // Show a transition card if the time index has changed
+ checkTransition();
+
+ // Load the apartment
+ _mainThread->loadTheApt();
+}
+
+/**
+ * Save the game to the given slot index, and with the given name
+ */
+Common::Error VoyeurEngine::saveGameState(int slot, const Common::String &desc) {
+ // Open the save file for writing
+ Common::OutSaveFile *saveFile = g_system->getSavefileManager()->openForSaving(generateSaveName(slot));
+ if (!saveFile)
+ return Common::kCreatingFileFailed;
+
+ // Write out the header
+ VoyeurSavegameHeader header;
+ header.write(saveFile, this, desc);
+
+ // Set up a serializer
+ Common::Serializer serializer(NULL, saveFile);
+
+ // Synchronise the data
+ synchronize(serializer);
+
+ saveFile->finalize();
+ delete saveFile;
+
+ return Common::kNoError;
+}
+
+void VoyeurEngine::synchronize(Common::Serializer &s) {
+ s.syncAsSint16LE(_glGoState);
+ s.syncAsSint16LE(_glGoStack);
+ s.syncAsSint16LE(_stampFlags);
+ s.syncAsSint16LE(_playStampGroupId);
+ s.syncAsSint16LE(_currentVocId);
+ s.syncAsSint16LE(_audioVideoId);
+
+ s.syncAsSint16LE(_iForceDeath);
+ s.syncAsSint16LE(_gameHour);
+ s.syncAsSint16LE(_gameMinute);
+ s.syncAsSint16LE(_flashTimeVal);
+ s.syncAsSint16LE(_flashTimeFlag);
+ s.syncAsSint16LE(_timeBarVal);
+ s.syncAsSint16LE(_checkPhoneVal);
+
+ // Sub-systems
+ _voy->synchronize(s);
+ _graphicsManager->synchronize(s);
+ _mainThread->synchronize(s);
+ _controlPtr->_state->synchronize(s);
+}
+
+/*------------------------------------------------------------------------*/
+
+bool VoyeurSavegameHeader::read(Common::InSaveFile *f) {
+ _thumbnail = NULL;
+
+ uint32 signature = f->readUint32BE();
+ if (signature != MKTAG('V', 'O', 'Y', 'R')) {
+ warning("Invalid savegame");
+ return false;
+ }
+
+ _version = f->readByte();
+ if (_version > VOYEUR_SAVEGAME_VERSION)
+ return false;
+
+ char c;
+ _saveName = "";
+ while ((c = f->readByte()) != 0)
+ _saveName += c;
+
+ // Get the thumbnail
+ _thumbnail = Graphics::loadThumbnail(*f);
+ if (!_thumbnail)
+ return false;
+
+ // Read in the save datet/ime
+ _saveYear = f->readSint16LE();
+ _saveMonth = f->readSint16LE();
+ _saveDay = f->readSint16LE();
+ _saveHour = f->readSint16LE();
+ _saveMinutes = f->readSint16LE();
+ _totalFrames = f->readUint32LE();
+
+ return true;
+}
+
+void VoyeurSavegameHeader::write(Common::OutSaveFile *f, VoyeurEngine *vm, const Common::String &saveName) {
+ // Write ident string
+ f->writeUint32BE(MKTAG('V', 'O', 'Y', 'R'));
+
+ // Write out savegame version
+ f->writeByte(VOYEUR_SAVEGAME_VERSION);
+
+ // Write out savegame name
+ f->write(saveName.c_str(), saveName.size());
+ f->writeByte(0);
+
+ // Create a thumbnail and save it
+ Graphics::Surface *thumb = new Graphics::Surface();
+ ::createThumbnail(thumb, (byte *)vm->_graphicsManager->_screenSurface.getPixels(),
+ SCREEN_WIDTH, SCREEN_HEIGHT, vm->_graphicsManager->_VGAColors);
+ Graphics::saveThumbnail(*f, *thumb);
+ thumb->free();
+ delete thumb;
+
+ // Write the save datet/ime
+ TimeDate td;
+ g_system->getTimeAndDate(td);
+ f->writeSint16LE(td.tm_year + 1900);
+ f->writeSint16LE(td.tm_mon + 1);
+ f->writeSint16LE(td.tm_mday);
+ f->writeSint16LE(td.tm_hour);
+ f->writeSint16LE(td.tm_min);
+ f->writeUint32LE(vm->_eventsManager->getGameCounter());
+}
+
+} // End of namespace Voyeur
diff --git a/engines/voyeur/voyeur.h b/engines/voyeur/voyeur.h
new file mode 100644
index 0000000000..a35473ba93
--- /dev/null
+++ b/engines/voyeur/voyeur.h
@@ -0,0 +1,320 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VOYEUR_VOYEUR_H
+#define VOYEUR_VOYEUR_H
+
+#include "voyeur/debugger.h"
+#include "voyeur/data.h"
+#include "voyeur/events.h"
+#include "voyeur/files.h"
+#include "voyeur/graphics.h"
+#include "voyeur/sound.h"
+#include "common/scummsys.h"
+#include "common/system.h"
+#include "common/error.h"
+#include "common/random.h"
+#include "common/savefile.h"
+#include "common/serializer.h"
+#include "common/util.h"
+#include "engines/engine.h"
+#include "graphics/surface.h"
+
+/**
+ * This is the namespace of the Voyeur engine.
+ *
+ * Status of this engine: Complete
+ *
+ * Games using this engine:
+ * - Voyeur (Dos)
+ */
+namespace Voyeur {
+
+#define DEBUG_BASIC 1
+#define DEBUG_INTERMEDIATE 2
+#define DEBUG_DETAILED 3
+
+// Constants used for doInterface display of the mansion
+#define MANSION_MAX_X 784
+#define MANSION_MAX_Y 150
+#define MANSION_VIEW_X 40
+#define MANSION_VIEW_Y 27
+#define MANSION_VIEW_WIDTH 240
+#define MANSION_VIEW_HEIGHT 148
+#define MANSION_SCROLL_AREA_X 20
+#define MANSION_SCROLL_AREA_Y 20
+#define MANSION_SCROLL_INC_X 4
+#define MANSION_SCROLL_INC_Y 4
+
+enum VoyeurDebugChannels {
+ kDebugScripts = 1 << 0
+};
+
+enum VoyeurArea { AREA_NONE, AREA_APARTMENT, AREA_INTERFACE, AREA_ROOM, AREA_EVIDENCE };
+
+struct VoyeurGameDescription;
+
+class VoyeurEngine : public Engine {
+private:
+ const VoyeurGameDescription *_gameDescription;
+ Common::RandomSource _randomSource;
+ FontInfoResource _defaultFontInfo;
+
+ void ESP_Init();
+ void globalInitBolt();
+ void initBolt();
+ void vInitInterrupts();
+ void initInput();
+
+ bool doHeadTitle();
+ void showConversionScreen();
+ bool doLock();
+ void showTitleScreen();
+ void doOpening();
+
+ void playStamp();
+ void initStamp();
+ void closeStamp();
+
+ /**
+ * Shows the game ending title animation
+ */
+ void doTailTitle();
+
+ /**
+ * Shows the game ending credits
+ */
+ void doClosingCredits();
+
+ /**
+ * Shows the final anti-piracy message before exiting the game
+ */
+ void doPiracy();
+
+ /**
+ * Review previous tape recordings on the TV
+ */
+ void reviewTape();
+
+ /**
+ * Shows the TV gossip animation
+ */
+ void doGossip();
+
+ /**
+ * Shows the animation of the VCR tape during the 'Call the Police' sequence
+ */
+ void doTapePlaying();
+
+ /**
+ * Does a check as to whether a murder has been witnessed
+ */
+ bool checkForMurder();
+
+ /**
+ * Does a check for whether incriminating evidence has been revealed
+ */
+ bool checkForIncriminate();
+
+ /**
+ * Plays a video event previously witnessed
+ */
+ void playAVideoEvent(int eventIndex);
+
+ /**
+ * Shows the user a screen to select one of four characters to send the
+ * video tape to
+ */
+ int getChooseButton();
+
+ /**
+ * Synchronizes the game data
+ */
+ void synchronize(Common::Serializer &s);
+protected:
+ // Engine APIs
+ virtual Common::Error run();
+ virtual bool hasFeature(EngineFeature f) const;
+public:
+ BoltFile *_bVoy;
+ Debugger *_debugger;
+ EventsManager *_eventsManager;
+ FilesManager *_filesManager;
+ GraphicsManager *_graphicsManager;
+ SoundManager *_soundManager;
+ SVoy *_voy;
+
+ BoltFile *_stampLibPtr;
+ BoltGroup *_controlGroupPtr;
+ ControlResource *_controlPtr;
+ byte *_stampData;
+ BoltGroup *_stackGroupPtr;
+ int _glGoState;
+ int _glGoStack;
+ int _stampFlags;
+ int _playStampGroupId;
+ int _currentVocId;
+
+ int _audioVideoId;
+ const int *_resolvePtr;
+ int _iForceDeath;
+ int _checkTransitionId;
+ int _gameHour;
+ int _gameMinute;
+ int _flashTimeVal;
+ bool _flashTimeFlag;
+ int _timeBarVal;
+ int _checkPhoneVal;
+ Common::Point _mansionViewPos;
+ ThreadResource *_mainThread;
+ VoyeurArea _voyeurArea;
+ int _loadGameSlot;
+public:
+ VoyeurEngine(OSystem *syst, const VoyeurGameDescription *gameDesc);
+ virtual ~VoyeurEngine();
+ void GUIError(const Common::String &msg);
+
+ uint32 getFeatures() const;
+ Common::Language getLanguage() const;
+ Common::Platform getPlatform() const;
+ uint16 getVersion() const;
+ bool getIsDemo() const;
+
+ int getRandomNumber(int maxNumber);
+ Common::String generateSaveName(int slotNumber);
+ virtual bool canLoadGameStateCurrently();
+ virtual bool canSaveGameStateCurrently();
+ virtual Common::Error loadGameState(int slot);
+ virtual Common::Error saveGameState(int slot, const Common::String &desc);
+ void loadGame(int slot);
+
+ void playRL2Video(const Common::String &filename);
+ void doTransitionCard(const Common::String &time, const Common::String &location);
+
+ /**
+ * Play a given video
+ */
+ void playAVideo(int videoId);
+
+ /**
+ * Play a given video for a given amount of time. This is particularly used
+ * for later tape playback, where it will only play back as much of the video
+ * as the user originally watched (since they can break out of watching a video).
+ */
+ void playAVideoDuration(int videoId, int duration);
+
+ /**
+ * Play an audio sequence
+ */
+ void playAudio(int audioId);
+
+ /**
+ * Saves the last time the game was played
+ */
+ void saveLastInplay();
+ void makeViewFinder();
+ void makeViewFinderP();
+ void initIFace();
+ void checkTransition();
+ int doComputerText(int maxLen);
+ void getComputerBrush();
+
+ /**
+ * Displays the time/charge remaining on the video camera screen
+ */
+ void doTimeBar();
+
+ /**
+ * If necessary, flashes the time remaining bar on the video camera screen
+ */
+ void flashTimeBar();
+
+ /**
+ * Handle scrolling of the mansion view in the camera sights
+ */
+ void doScroll(const Common::Point &pt);
+
+ /**
+ * Check for phone call
+ */
+ void checkPhoneCall();
+
+ /**
+ * Display evidence sequence from within a room
+ * Suspension of disbelief needed to believe that recording from a distance,
+ * you could still flip through the often pages of evidence for a single hotspot.
+ */
+ void doEvidDisplay(int evidId, int eventId);
+
+ /**
+ * Flips the active page and waits until it's drawn
+ */
+ void flipPageAndWait();
+
+ /**
+ * Flips the active page and waits until it's drawn and faded in
+ */
+ void flipPageAndWaitForFade();
+
+ /**
+ * Returns the string for the current in-game day of the week
+ */
+ Common::String getDayName();
+
+ /**
+ * Returns the string for the current in-game time of day
+ */
+ Common::String getTimeOfDay();
+
+ /**
+ * Show the ending sequence of the arrest
+ */
+ void showEndingNews();
+};
+
+#define VOYEUR_SAVEGAME_VERSION 1
+
+/**
+ * Header for Voyeur savegame files
+ */
+struct VoyeurSavegameHeader {
+ uint8 _version;
+ Common::String _saveName;
+ Graphics::Surface *_thumbnail;
+ int _saveYear, _saveMonth, _saveDay;
+ int _saveHour, _saveMinutes;
+ int _totalFrames;
+
+ /**
+ * Read in the header from the specified file
+ */
+ bool read(Common::InSaveFile *f);
+
+ /**
+ * Write out header information to the specified file
+ */
+ void write(Common::OutSaveFile *f, VoyeurEngine *vm, const Common::String &saveName);
+};
+
+} // End of namespace Voyeur
+
+#endif /* VOYEUR_VOYEUR_H */
diff --git a/engines/voyeur/voyeur_game.cpp b/engines/voyeur/voyeur_game.cpp
new file mode 100644
index 0000000000..a6564c32ba
--- /dev/null
+++ b/engines/voyeur/voyeur_game.cpp
@@ -0,0 +1,1423 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "voyeur/voyeur.h"
+#include "voyeur/staticres.h"
+#include "voyeur/animation.h"
+
+namespace Voyeur {
+
+void VoyeurEngine::playStamp() {
+ _stampLibPtr = NULL;
+ _filesManager->openBoltLib("stampblt.blt", _stampLibPtr);
+
+ _stampLibPtr->getBoltGroup(0);
+ _controlPtr->_state = _stampLibPtr->boltEntry(_controlPtr->_stateId >> 16)._stateResource;
+ assert(_controlPtr->_state);
+
+ _resolvePtr = &RESOLVE_TABLE[0];
+ initStamp();
+
+ PtrResource *threadsList = _stampLibPtr->boltEntry(3)._ptrResource;
+ _mainThread = threadsList->_entries[0]->_threadResource;
+ _mainThread->initThreadStruct(0, 0);
+
+ _voy->_isAM = false;
+ _gameHour = 9;
+ _gameMinute = 0;
+ _voy->_abortInterface = true;
+
+ int buttonId;
+ bool breakFlag = false;
+ while (!breakFlag && !shouldQuit()) {
+ _voyeurArea = AREA_NONE;
+ _eventsManager->getMouseInfo();
+ _playStampGroupId = _currentVocId = -1;
+ _audioVideoId = -1;
+
+ _mainThread->parsePlayCommands();
+
+ bool flag = breakFlag = (_voy->_eventFlags & EVTFLAG_2) != 0;
+
+ switch (_voy->_playStampMode) {
+ case 5:
+ buttonId = _mainThread->doInterface();
+
+ if (buttonId == -2) {
+ switch (_mainThread->doApt()) {
+ case 0:
+ _voy->_aptLoadMode = 140;
+ break;
+ case 1:
+ _voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+ _voy->_abortInterface = true;
+ _mainThread->chooseSTAMPButton(22);
+ _voy->_aptLoadMode = 143;
+ break;
+ case 2:
+ _voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+ reviewTape();
+ _voy->_abortInterface = true;
+ _voy->_aptLoadMode = 142;
+ break;
+ case 3:
+ _voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+ _mainThread->chooseSTAMPButton(21);
+ break;
+ case 4:
+ breakFlag = true;
+ break;
+ case 5:
+ doGossip();
+ _voy->_abortInterface = true;
+ _voy->_aptLoadMode = 141;
+ _voy->_eventFlags &= ~EVTFLAG_100;
+ break;
+ default:
+ break;
+ }
+ } else {
+ _mainThread->chooseSTAMPButton(buttonId);
+ }
+
+ flag = true;
+ break;
+
+ case 6:
+ _mainThread->doRoom();
+ flag = true;
+ break;
+
+ case 16:
+ _voy->_transitionId = 17;
+ buttonId = _mainThread->doApt();
+
+ switch (buttonId) {
+ case 1:
+ _mainThread->chooseSTAMPButton(22);
+ flag = true;
+ break;
+ case 2:
+ reviewTape();
+ _voy->_abortInterface = true;
+ break;
+ case 4:
+ flag = true;
+ breakFlag = true;
+ break;
+ default:
+ break;
+ }
+ break;
+
+ case 17:
+ // Called the police, showing the tape
+ doTapePlaying();
+ if (!checkForMurder() && _voy->_transitionId <= 15)
+ checkForIncriminate();
+
+ if (_voy->_videoEventId != -1) {
+ // Show the found video that is of interest to the police
+ playAVideoEvent(_voy->_videoEventId);
+ _voy->_eventFlags &= ~EVTFLAG_RECORDING;
+ }
+
+ // Handle response
+ _mainThread->chooseSTAMPButton(0);
+ flag = true;
+ break;
+
+ case 130: {
+ // user selected to send the tape
+ if (_bVoy->getBoltGroup(_playStampGroupId)) {
+ _graphicsManager->_backgroundPage = _bVoy->boltEntry(_playStampGroupId)._picResource;
+ _graphicsManager->_backColors = _bVoy->boltEntry(_playStampGroupId + 1)._cMapResource;
+
+ buttonId = getChooseButton();
+ if (_eventsManager->_rightClick)
+ // Aborted out of selecting a recipient
+ buttonId = 4;
+
+ _bVoy->freeBoltGroup(_playStampGroupId);
+ _graphicsManager->screenReset();
+ _playStampGroupId = -1;
+ flag = true;
+
+ if (buttonId != 4) {
+ _voy->_playStampMode = 131;
+ _voy->checkForKey();
+ _mainThread->chooseSTAMPButton(buttonId);
+ } else {
+ _mainThread->chooseSTAMPButton(buttonId);
+ _voy->_abortInterface = true;
+ }
+ }
+ break;
+ }
+
+ default:
+ break;
+ }
+
+ do {
+ if (flag) {
+ if (_currentVocId != -1) {
+ _soundManager->stopVOCPlay();
+ _currentVocId = -1;
+ }
+
+ _audioVideoId = -1;
+
+ if (_voy->_boltGroupId2 != -1) {
+ _bVoy->freeBoltGroup(_voy->_boltGroupId2);
+ _voy->_boltGroupId2 = -1;
+ }
+
+ if (_playStampGroupId != -1) {
+ _bVoy->freeBoltGroup(_playStampGroupId);
+ _playStampGroupId = -1;
+ }
+
+ // Break out of loop
+ flag = false;
+
+ } else if (_mainThread->_stateFlags & 2) {
+ _eventsManager->getMouseInfo();
+ _mainThread->chooseSTAMPButton(0);
+ flag = true;
+ } else {
+ _mainThread->chooseSTAMPButton(0);
+ flag = true;
+ }
+ } while (flag);
+ }
+
+ _voy->_viewBounds = nullptr;
+ closeStamp();
+ _stampLibPtr->freeBoltGroup(0);
+ delete _stampLibPtr;
+}
+
+void VoyeurEngine::initStamp() {
+ _stampFlags &= ~1;
+ _stackGroupPtr = _controlGroupPtr;
+
+ if (!_controlPtr->_entries[0])
+ error("No control entries");
+
+ ThreadResource::initUseCount();
+}
+
+void VoyeurEngine::closeStamp() {
+ ThreadResource::unloadAllStacks(this);
+}
+
+void VoyeurEngine::doTailTitle() {
+ _graphicsManager->_vPort->setupViewPort(NULL);
+ _graphicsManager->screenReset();
+
+ if (_bVoy->getBoltGroup(0x600)) {
+ RL2Decoder decoder;
+ decoder.loadRL2File("a1100200.rl2", false);
+ decoder.start();
+ decoder.play(this);
+
+ if (!shouldQuit() && !_eventsManager->_mouseClicked) {
+ doClosingCredits();
+
+ if (!shouldQuit() && !_eventsManager->_mouseClicked) {
+ _graphicsManager->screenReset();
+
+ PictureResource *pic = _bVoy->boltEntry(0x602)._picResource;
+ CMapResource *pal = _bVoy->boltEntry(0x603)._cMapResource;
+
+ _graphicsManager->_vPort->setupViewPort(pic);
+ pal->startFade();
+ flipPageAndWaitForFade();
+ _eventsManager->delayClick(300);
+
+ pic = _bVoy->boltEntry(0x604)._picResource;
+ pal = _bVoy->boltEntry(0x605)._cMapResource;
+
+ _graphicsManager->_vPort->setupViewPort(pic);
+ pal->startFade();
+ flipPageAndWaitForFade();
+ _eventsManager->delayClick(120);
+
+ _soundManager->stopVOCPlay();
+ }
+ }
+
+ _bVoy->freeBoltGroup(0x600);
+ }
+
+ if (!shouldQuit()) {
+ _bVoy->getBoltGroup(0x100);
+ doPiracy();
+ }
+}
+
+void VoyeurEngine::doClosingCredits() {
+ if (!_bVoy->getBoltGroup(0x400))
+ return;
+
+ const char *msg = (const char *)_bVoy->memberAddr(0x404);
+ const byte *creditList = (const byte *)_bVoy->memberAddr(0x405);
+
+ _graphicsManager->_vPort->setupViewPort(NULL);
+ _graphicsManager->setColor(1, 180, 180, 180);
+ _graphicsManager->setColor(2, 200, 200, 200);
+ _eventsManager->_intPtr._hasPalette = true;
+
+ _graphicsManager->_fontPtr->_curFont = _bVoy->boltEntry(0x402)._fontResource;
+ _graphicsManager->_fontPtr->_foreColor = 2;
+ _graphicsManager->_fontPtr->_backColor = 2;
+ _graphicsManager->_fontPtr->_fontSaveBack = false;
+ _graphicsManager->_fontPtr->_fontFlags = DISPFLAG_NONE;
+
+ _soundManager->startVOCPlay(152);
+ FontInfoResource &fi = *_graphicsManager->_fontPtr;
+
+ for (int idx = 0; idx < 78; ++idx) {
+ const byte *entry = creditList + idx * 6;
+ int flags = READ_LE_UINT16(entry + 4);
+
+ if (flags & 0x10)
+ _graphicsManager->_vPort->fillPic(0);
+
+ if (flags & 1) {
+ fi._foreColor = 1;
+ fi._curFont = _bVoy->boltEntry(0x402)._fontResource;
+ fi._justify = ALIGN_CENTER;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 240;
+ fi._pos = Common::Point(0, READ_LE_UINT16(entry));
+
+ _graphicsManager->_vPort->drawText(msg);
+ msg += strlen(msg) + 1;
+ }
+
+ if (flags & 0x40) {
+ fi._foreColor = 2;
+ fi._curFont = _bVoy->boltEntry(0x400)._fontResource;
+ fi._justify = ALIGN_CENTER;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 240;
+ fi._pos = Common::Point(0, READ_LE_UINT16(entry));
+
+ _graphicsManager->_vPort->drawText(msg);
+ msg += strlen(msg) + 1;
+ }
+
+ if (flags & 2) {
+ fi._foreColor = 1;
+ fi._curFont = _bVoy->boltEntry(0x400)._fontResource;
+ fi._justify = ALIGN_LEFT;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 240;
+ fi._pos = Common::Point(38, READ_LE_UINT16(entry));
+
+ _graphicsManager->_vPort->drawText(msg);
+ msg += strlen(msg) + 1;
+
+ fi._foreColor = 2;
+ fi._justify = ALIGN_LEFT;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 240;
+ fi._pos = Common::Point(198, READ_LE_UINT16(entry));
+
+ _graphicsManager->_vPort->drawText(msg);
+ msg += strlen(msg) + 1;
+ }
+
+ if (flags & 4) {
+ fi._foreColor = 1;
+ fi._curFont = _bVoy->boltEntry(0x402)._fontResource;
+ fi._justify = ALIGN_CENTER;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 240;
+ fi._pos = Common::Point(0, READ_LE_UINT16(entry));
+
+ _graphicsManager->_vPort->drawText(msg);
+ msg += strlen(msg) + 1;
+
+ fi._foreColor = 2;
+ fi._curFont = _bVoy->boltEntry(0x400)._fontResource;
+ fi._justify = ALIGN_CENTER;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 240;
+ fi._pos = Common::Point(0, READ_LE_UINT16(entry) + 13);
+
+ _graphicsManager->_vPort->drawText(msg);
+ msg += strlen(msg) + 1;
+ }
+
+ if (flags & 0x20) {
+ flipPageAndWait();
+ _eventsManager->delayClick(READ_LE_UINT16(entry + 2) * 60);
+ }
+
+ if (shouldQuit() || _eventsManager->_mouseClicked)
+ break;
+ }
+
+ _soundManager->stopVOCPlay();
+ _graphicsManager->_fontPtr->_curFont = _bVoy->boltEntry(0x101)._fontResource;
+ _bVoy->freeBoltGroup(0x400);
+}
+
+void VoyeurEngine::doPiracy() {
+ _graphicsManager->screenReset();
+ _graphicsManager->setColor(1, 0, 0, 0);
+ _graphicsManager->setColor(2, 255, 255, 255);
+ _eventsManager->_intPtr._hasPalette = true;
+ _graphicsManager->_vPort->setupViewPort(NULL);
+ _graphicsManager->_vPort->fillPic(1);
+
+ FontInfoResource &fi = *_graphicsManager->_fontPtr;
+ fi._curFont = _bVoy->boltEntry(0x101)._fontResource;
+ fi._foreColor = 2;
+ fi._backColor = 2;
+ fi._fontSaveBack = false;
+ fi._fontFlags = DISPFLAG_NONE;
+ fi._justify = ALIGN_CENTER;
+ fi._justifyWidth = 384;
+ fi._justifyHeight = 230;
+
+ // Loop through the piracy message array to draw each line
+ int yp, idx;
+ for (idx = 0, yp = 33; idx < 10; ++idx) {
+ fi._pos = Common::Point(0, yp);
+ _graphicsManager->_vPort->drawText(PIRACY_MESSAGE[idx]);
+
+ yp += fi._curFont->_fontHeight + 4;
+ }
+
+ flipPageAndWait();
+ _eventsManager->getMouseInfo();
+ _eventsManager->delayClick(720);
+}
+
+void VoyeurEngine::reviewTape() {
+ int eventStart = 0;
+ int newX = -1;
+ int newY = -1;
+ int eventLine = 7;
+ Common::Rect tempRect(58, 30, 58 + 223, 30 + 124);
+ Common::Point pt;
+ int foundIndex;
+
+ _bVoy->getBoltGroup(0x900);
+ PictureResource *cursor = _bVoy->boltEntry(0x903)._picResource;
+
+ if ((_voy->_eventCount - 8) != 0)
+ eventStart = MAX(_voy->_eventCount - 8, 0);
+
+ if ((eventStart + _voy->_eventCount) <= 7)
+ eventLine = eventStart + _voy->_eventCount - 1;
+
+ bool breakFlag = false;
+ while (!shouldQuit() && !breakFlag) {
+ _voy->_viewBounds = _bVoy->boltEntry(0x907)._rectResource;
+ Common::Array<RectEntry> &hotspots = _bVoy->boltEntry(0x906)._rectResource->_entries;
+
+ _graphicsManager->_backColors = _bVoy->boltEntry(0x902)._cMapResource;
+ _graphicsManager->_backgroundPage = _bVoy->boltEntry(0x901)._picResource;
+ _graphicsManager->_vPort->setupViewPort(_graphicsManager->_backgroundPage);
+ _graphicsManager->_backColors->startFade();
+
+ flipPageAndWaitForFade();
+
+ _graphicsManager->setColor(1, 32, 32, 32);
+ _graphicsManager->setColor(2, 96, 96, 96);
+ _graphicsManager->setColor(3, 160, 160, 160);
+ _graphicsManager->setColor(4, 224, 224, 224);
+ _graphicsManager->setColor(9, 24, 64, 24);
+ _graphicsManager->setColor(10, 64, 132, 64);
+ _graphicsManager->setColor(11, 100, 192, 100);
+ _graphicsManager->setColor(12, 120, 248, 120);
+ _eventsManager->setCursorColor(128, 1);
+
+ _eventsManager->_intPtr._hasPalette = true;
+ _graphicsManager->_fontPtr->_curFont = _bVoy->boltEntry(0x909)._fontResource;
+ _graphicsManager->_fontPtr->_fontSaveBack = false;
+ _graphicsManager->_fontPtr->_fontFlags = DISPFLAG_NONE;
+
+ _eventsManager->getMouseInfo();
+ if (newX == -1) {
+ _eventsManager->setMousePos(Common::Point(hotspots[1].left + 12, hotspots[1].top + 6));
+ } else {
+ _eventsManager->setMousePos(Common::Point(newX, newY));
+ }
+
+ _currentVocId = 151;
+ _voy->_vocSecondsOffset = 0;
+ bool needRedraw = true;
+ do {
+ if (_currentVocId != -1 && !_soundManager->getVOCStatus()) {
+ _voy->_musicStartTime = _voy->_RTVNum;
+ _soundManager->startVOCPlay(_currentVocId);
+ }
+
+ if (needRedraw) {
+ needRedraw = false;
+ flipPageAndWait();
+
+ _graphicsManager->_drawPtr->_penColor = 0;
+ _graphicsManager->_drawPtr->_pos = Common::Point(tempRect.left, tempRect.top);
+ _graphicsManager->_backgroundPage->sFillBox(tempRect.width(), tempRect.height());
+
+ int yp = 45;
+ int eventNum = eventStart;
+ for (int lineNum = 0; lineNum < 8 && eventNum < _voy->_eventCount; ++lineNum, ++eventNum) {
+ _graphicsManager->_fontPtr->_picFlags = DISPFLAG_NONE;
+ _graphicsManager->_fontPtr->_picSelect = 0xff;
+ _graphicsManager->_fontPtr->_picPick = 7;
+ _graphicsManager->_fontPtr->_picOnOff = (lineNum == eventLine) ? 8 : 0;
+ _graphicsManager->_fontPtr->_pos = Common::Point(68, yp);
+ _graphicsManager->_fontPtr->_justify = ALIGN_LEFT;
+ _graphicsManager->_fontPtr->_justifyWidth = 0;
+ _graphicsManager->_fontPtr->_justifyHeight = 0;
+
+ Common::String msg = _eventsManager->getEvidString(eventNum);
+ _graphicsManager->_backgroundPage->drawText(msg);
+
+ yp += 15;
+ }
+
+ _graphicsManager->_vPort->addSaveRect(
+ _graphicsManager->_vPort->_lastPage, tempRect);
+ flipPageAndWait();
+
+ _graphicsManager->_vPort->addSaveRect(
+ _graphicsManager->_vPort->_lastPage, tempRect);
+ }
+
+ _graphicsManager->sDrawPic(cursor, _graphicsManager->_vPort,
+ _eventsManager->getMousePos());
+ flipPageAndWait();
+
+ _eventsManager->getMouseInfo();
+ foundIndex = -1;
+
+ Common::Point tempPos = _eventsManager->getMousePos() + Common::Point(14, 7);
+ for (uint idx = 0; idx < hotspots.size(); ++idx) {
+ if (hotspots[idx].contains(tempPos)) {
+ // Found hotspot area
+ foundIndex = idx;
+ break;
+ }
+ }
+
+ pt = _eventsManager->getMousePos();
+ if (tempPos.x >= 68 && tempPos.x <= 277 && tempPos.y >= 31 && tempPos.y <= 154) {
+ tempPos.y -= 2;
+ foundIndex = (tempPos.y - 31) / 15;
+ if ((tempPos.y - 31) % 15 >= 12 || (eventStart + foundIndex) >= _voy->_eventCount) {
+ _eventsManager->setCursorColor(128, 0);
+ foundIndex = 999;
+ } else if (!_eventsManager->_leftClick) {
+ _eventsManager->setCursorColor(128, 2);
+ foundIndex = -1;
+ } else {
+ _eventsManager->setCursorColor(128, 2);
+ eventLine = foundIndex;
+
+ flipPageAndWait();
+
+ _graphicsManager->_drawPtr->_penColor = 0;
+ _graphicsManager->_drawPtr->_pos = Common::Point(tempRect.left, tempRect.top);
+ _graphicsManager->_backgroundPage->sFillBox(tempRect.width(), tempRect.height());
+
+ int yp = 45;
+ int eventNum = eventStart;
+ for (int idx = 0; idx < 8 && eventNum < _voy->_eventCount; ++idx, ++eventNum) {
+ _graphicsManager->_fontPtr->_picFlags = DISPFLAG_NONE;
+ _graphicsManager->_fontPtr->_picSelect = 0xff;
+ _graphicsManager->_fontPtr->_picPick = 7;
+ _graphicsManager->_fontPtr->_picOnOff = (idx == eventLine) ? 8 : 0;
+ _graphicsManager->_fontPtr->_pos = Common::Point(68, yp);
+ _graphicsManager->_fontPtr->_justify = ALIGN_LEFT;
+ _graphicsManager->_fontPtr->_justifyWidth = 0;
+ _graphicsManager->_fontPtr->_justifyHeight = 0;
+
+ Common::String msg = _eventsManager->getEvidString(eventNum);
+ _graphicsManager->_backgroundPage->drawText(msg);
+
+ yp += 15;
+ }
+
+ _graphicsManager->_vPort->addSaveRect(
+ _graphicsManager->_vPort->_lastPage, tempRect);
+ flipPageAndWait();
+
+ _graphicsManager->_vPort->addSaveRect(
+ _graphicsManager->_vPort->_lastPage, tempRect);
+ flipPageAndWait();
+
+ _eventsManager->getMouseInfo();
+ foundIndex = -1;
+ }
+ } else if ((_voy->_eventFlags & EVTFLAG_40) && _voy->_viewBounds->left == pt.x &&
+ _voy->_viewBounds->bottom == pt.y) {
+ foundIndex = 999;
+ } else if ((_voy->_eventFlags & EVTFLAG_40) && _voy->_viewBounds->left == pt.x &&
+ _voy->_viewBounds->top == pt.y) {
+ foundIndex = 998;
+ } else {
+ _eventsManager->setCursorColor(128, (foundIndex == -1) ? 0 : 1);
+ }
+
+ _eventsManager->_intPtr._hasPalette = true;
+
+ if (_eventsManager->_mouseClicked) {
+ switch (foundIndex) {
+ case 2:
+ if (eventStart > 0) {
+ --eventStart;
+ needRedraw = true;
+ }
+ foundIndex = -1;
+ break;
+
+ case 3:
+ if (eventStart > 0) {
+ eventStart -= 8;
+ if (eventStart < 0)
+ eventStart = 0;
+ needRedraw = true;
+ }
+ foundIndex = -1;
+ break;
+
+ case 4:
+ if ((_voy->_eventCount - 8) > eventStart) {
+ ++eventStart;
+ needRedraw = true;
+ }
+ foundIndex = -1;
+ break;
+
+ case 5:
+ if (_voy->_eventCount >= 8 && (_voy->_eventCount - 8) != eventStart) {
+ eventStart += 8;
+ if ((_voy->_eventCount - 8) < eventStart)
+ eventStart = _voy->_eventCount - 8;
+ needRedraw = true;
+ }
+ foundIndex = -1;
+ break;
+
+ default:
+ break;
+ }
+
+ while (eventLine > 0 && (eventLine + eventStart) >= _voy->_eventCount)
+ --eventLine;
+ }
+
+ pt = _eventsManager->getMousePos();
+ if (_eventsManager->_mouseClicked && _voy->_viewBounds->left == pt.x &&
+ (_voy->_eventFlags & EVTFLAG_40) && _eventsManager->_rightClick) {
+ _controlPtr->_state->_victimIndex = (pt.y / 60) + 1;
+ foundIndex = -1;
+ _eventsManager->_rightClick = 0;
+ }
+
+ if (_eventsManager->_rightClick)
+ foundIndex = 0;
+
+ } while (!shouldQuit() && (!_eventsManager->_mouseClicked || foundIndex == -1));
+
+ newY = _eventsManager->getMousePos().y;
+ _voy->_fadingType = 0;
+ _voy->_viewBounds = nullptr;
+ _graphicsManager->_vPort->setupViewPort(NULL);
+
+ if (_currentVocId != -1) {
+ _voy->_vocSecondsOffset = _voy->_RTVNum - _voy->_musicStartTime;
+ _soundManager->stopVOCPlay();
+ }
+
+ // Break out if the exit button was pressed
+ if (!foundIndex)
+ break;
+
+ int eventIndex = eventStart + eventLine;
+ VoyeurEvent &e = _voy->_events[eventIndex];
+ switch (e._type) {
+ case EVTYPE_VIDEO:
+ playAVideoEvent(eventIndex);
+ break;
+
+ case EVTYPE_AUDIO: {
+ _audioVideoId = e._audioVideoId;
+ _voy->_vocSecondsOffset = e._computerOn;
+
+ _bVoy->getBoltGroup(0x7F00);
+ _graphicsManager->_backgroundPage = _bVoy->boltEntry(0x7F00 +
+ BLIND_TABLE[_audioVideoId])._picResource;
+ _graphicsManager->_backColors = _bVoy->boltEntry(0x7F01 +
+ BLIND_TABLE[_audioVideoId])._cMapResource;
+
+ _graphicsManager->_vPort->setupViewPort(_graphicsManager->_backgroundPage);
+ _graphicsManager->_backColors->startFade();
+ flipPageAndWaitForFade();
+
+ _eventsManager->_intPtr._flashStep = 1;
+ _eventsManager->_intPtr._flashTimer = 0;
+ _voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+
+ // Play suond for the given duration
+ _soundManager->setVOCOffset(_voy->_vocSecondsOffset);
+ _soundManager->startVOCPlay(_audioVideoId + 159);
+ uint32 secondsDuration = e._computerOff;
+
+ _eventsManager->getMouseInfo();
+ while (!_eventsManager->_mouseClicked && _soundManager->getVOCStatus() &&
+ _soundManager->getVOCFrame() < secondsDuration) {
+ _eventsManager->getMouseInfo();
+ _eventsManager->delay(10);
+ }
+
+ _voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+ _soundManager->stopVOCPlay();
+ _bVoy->freeBoltGroup(0x7F00);
+ break;
+ }
+
+ case EVTYPE_EVID:
+ _voy->reviewAnEvidEvent(eventIndex);
+
+ _voy->_vocSecondsOffset = _voy->_RTVNum - _voy->_musicStartTime;
+ _soundManager->stopVOCPlay();
+ _bVoy->getBoltGroup(0x900);
+ break;
+
+ case EVTYPE_COMPUTER:
+ _voy->reviewComputerEvent(eventIndex);
+
+ _voy->_vocSecondsOffset = _voy->_RTVNum - _voy->_musicStartTime;
+ _soundManager->stopVOCPlay();
+ _bVoy->getBoltGroup(0x900);
+ break;
+
+ default:
+ break;
+ }
+ }
+
+ _graphicsManager->_fontPtr->_curFont = _bVoy->boltEntry(0x101)._fontResource;
+
+ _graphicsManager->_vPort->fillPic(0);
+ flipPageAndWait();
+ _bVoy->freeBoltGroup(0x900);
+}
+
+void VoyeurEngine::doGossip() {
+ _graphicsManager->resetPalette();
+ _graphicsManager->screenReset();
+
+ if (!_bVoy->getBoltGroup(0x300))
+ return;
+
+ // Load the gossip animation
+ RL2Decoder decoder;
+ decoder.loadRL2File("a2050100.rl2", false);
+ decoder.start();
+
+ // Get the resource data for the first gossip video
+ PictureResource *bgPic = _bVoy->boltEntry(0x300)._picResource;
+ CMapResource *pal = _bVoy->boltEntry(0x301)._cMapResource;
+ pal->startFade();
+
+ // Transfer initial background to video decoder
+ PictureResource videoFrame(decoder.getRL2VideoTrack()->getBackSurface());
+ bgPic->_bounds.moveTo(0, 0);
+ _graphicsManager->sDrawPic(bgPic, &videoFrame, Common::Point(0, 0));
+
+ byte *frameNumsP = _bVoy->memberAddr(0x309);
+ byte *posP = _bVoy->boltEntry(0x30A)._data;
+
+ // Play the initial gossip video
+ decoder.play(this, 0x302, frameNumsP, posP);
+ decoder.close();
+
+ // Reset the palette and clear the screen
+ _graphicsManager->resetPalette();
+ _graphicsManager->screenReset();
+
+ // Play interview video
+ RL2Decoder decoder2;
+ decoder2.loadRL2File("a2110100.rl2", true);
+ decoder2.start();
+
+ _eventsManager->getMouseInfo();
+ decoder2.play(this);
+ decoder2.close();
+
+ _bVoy->freeBoltGroup(0x300);
+ _graphicsManager->screenReset();
+}
+
+void VoyeurEngine::doTapePlaying() {
+ if (!_bVoy->getBoltGroup(0xA00))
+ return;
+
+ _eventsManager->getMouseInfo();
+ _graphicsManager->_backColors = _bVoy->boltEntry(0xA01)._cMapResource;
+ _graphicsManager->_backgroundPage = _bVoy->boltEntry(0xA00)._picResource;
+ PictureResource *pic = _bVoy->boltEntry(0xA02)._picResource;
+ VInitCycleResource *cycle = _bVoy->boltEntry(0xA05)._vInitCycleResource;
+
+ _graphicsManager->_vPort->setupViewPort(_graphicsManager->_backgroundPage);
+ _graphicsManager->sDrawPic(pic, _graphicsManager->_vPort, Common::Point(57, 30));
+ _graphicsManager->_backColors->startFade();
+ flipPageAndWaitForFade();
+
+ cycle->vStartCycle();
+
+ _soundManager->startVOCPlay("vcr.voc");
+ while (!shouldQuit() && !_eventsManager->_mouseClicked && _soundManager->getVOCStatus()) {
+ _eventsManager->delayClick(2);
+ }
+
+ _soundManager->stopVOCPlay();
+ cycle->vStopCycle();
+ _bVoy->freeBoltGroup(0xA00);
+}
+
+bool VoyeurEngine::checkForMurder() {
+ int oldMurderIndex = _controlPtr->_state->_victimMurderIndex;
+
+ for (int idx = 0; idx < _voy->_eventCount; ++idx) {
+ VoyeurEvent &evt = _voy->_events[idx];
+
+ if (evt._type == EVTYPE_VIDEO) {
+ switch (_controlPtr->_state->_victimIndex) {
+ case 1:
+ if (evt._audioVideoId == 41 && evt._computerOn <= 15 &&
+ (evt._computerOff + evt._computerOn) >= 16) {
+ _controlPtr->_state->_victimMurderIndex = 1;
+ }
+ break;
+
+ case 2:
+ if (evt._audioVideoId == 53 && evt._computerOn <= 19 &&
+ (evt._computerOff + evt._computerOn) >= 21) {
+ _controlPtr->_state->_victimMurderIndex = 2;
+ }
+ break;
+
+ case 3:
+ if (evt._audioVideoId == 50 && evt._computerOn <= 28 &&
+ (evt._computerOff + evt._computerOn) >= 29) {
+ _controlPtr->_state->_victimMurderIndex = 3;
+ }
+ break;
+
+ case 4:
+ if (evt._audioVideoId == 43 && evt._computerOn <= 10 &&
+ (evt._computerOff + evt._computerOn) >= 14) {
+ _controlPtr->_state->_victimMurderIndex = 4;
+ }
+ break;
+
+ default:
+ break;
+ }
+ }
+
+ if (_controlPtr->_state->_victimMurderIndex == _controlPtr->_state->_victimIndex) {
+ _voy->_videoEventId = idx;
+ return true;
+ }
+ }
+
+ _controlPtr->_state->_victimMurderIndex = oldMurderIndex;
+ _voy->_videoEventId = -1;
+ return false;
+}
+
+bool VoyeurEngine::checkForIncriminate() {
+ _voy->_incriminatedVictimNumber = 0;
+
+ for (int idx = 0; idx < _voy->_eventCount; ++idx) {
+ VoyeurEvent &evt = _voy->_events[idx];
+
+ if (evt._type == EVTYPE_VIDEO) {
+ if (evt._audioVideoId == 44 && evt._computerOn <= 40 &&
+ (evt._computerOff + evt._computerOn) >= 70) {
+ _voy->_incriminatedVictimNumber = 1;
+ }
+
+ if (evt._audioVideoId == 44 && evt._computerOn <= 79 &&
+ (evt._computerOff + evt._computerOn) >= 129) {
+ _voy->_incriminatedVictimNumber = 1;
+ }
+
+ if (evt._audioVideoId == 20 && evt._computerOn <= 28 &&
+ (evt._computerOff + evt._computerOn) >= 45) {
+ _voy->_incriminatedVictimNumber = 2;
+ }
+
+ if (evt._audioVideoId == 35 && evt._computerOn <= 17 &&
+ (evt._computerOff + evt._computerOn) >= 36) {
+ _voy->_incriminatedVictimNumber = 3;
+ }
+
+ if (evt._audioVideoId == 30 && evt._computerOn <= 80 &&
+ (evt._computerOff + evt._computerOn) >= 139) {
+ _voy->_incriminatedVictimNumber = 4;
+ }
+ }
+
+ if (_voy->_incriminatedVictimNumber) {
+ _controlPtr->_state->_victimMurderIndex = 88;
+ _voy->_videoEventId = idx;
+ return true;
+ }
+ }
+
+ _voy->_videoEventId = -1;
+ return false;
+}
+
+void VoyeurEngine::playAVideoEvent(int eventIndex) {
+ VoyeurEvent &evt = _voy->_events[eventIndex];
+ _audioVideoId = evt._audioVideoId;
+ _voy->_vocSecondsOffset = evt._computerOn;
+ _eventsManager->_videoDead = evt._dead;
+ _voy->_eventFlags &= ~EVTFLAG_TIME_DISABLED;
+
+ playAVideoDuration(_audioVideoId, evt._computerOff);
+
+ _voy->_eventFlags |= EVTFLAG_TIME_DISABLED;
+ if (_eventsManager->_videoDead != -1) {
+ _bVoy->freeBoltGroup(0xE00);
+ _eventsManager->_videoDead = -1;
+ flipPageAndWait();
+ _eventsManager->_videoDead = -1;
+ }
+
+ _audioVideoId = -1;
+ if (_eventsManager->_videoDead != -1) {
+ _bVoy->freeBoltGroup(0xE00);
+ _eventsManager->_videoDead = -1;
+ flipPageAndWait();
+ }
+}
+
+int VoyeurEngine::getChooseButton() {
+ int prevIndex = -2;
+ Common::Array<RectEntry> &hotspots = _bVoy->boltEntry(_playStampGroupId
+ + 6)._rectResource->_entries;
+ int selectedIndex = -1;
+
+ _graphicsManager->_vPort->setupViewPort(_graphicsManager->_backgroundPage);
+ _graphicsManager->_backColors->_steps = 0;
+ _graphicsManager->_backColors->startFade();
+ flipPageAndWait();
+
+ _voy->_viewBounds = _bVoy->boltEntry(_playStampGroupId + 7)._rectResource;
+ PictureResource *cursorPic = _bVoy->boltEntry(_playStampGroupId + 2)._picResource;
+
+ do {
+ do {
+ if (_currentVocId != -1 && !_soundManager->getVOCStatus())
+ _soundManager->startVOCPlay(_currentVocId);
+
+ _eventsManager->getMouseInfo();
+ selectedIndex = -1;
+ Common::Point pt = _eventsManager->getMousePos();
+
+ for (uint idx = 0; idx < hotspots.size(); ++idx) {
+ if (hotspots[idx].contains(pt)) {
+ if (!_voy->_victimMurdered || ((int)idx + 1) != _controlPtr->_state->_victimIndex) {
+ selectedIndex = idx;
+ if (selectedIndex != prevIndex) {
+ PictureResource *btnPic = _bVoy->boltEntry(_playStampGroupId + 8 + idx)._picResource;
+ _graphicsManager->sDrawPic(btnPic, _graphicsManager->_vPort,
+ Common::Point(106, 200));
+
+ cursorPic = _bVoy->boltEntry(_playStampGroupId + 4)._picResource;
+ }
+ }
+ }
+ }
+
+ if (selectedIndex == -1) {
+ cursorPic = _bVoy->boltEntry(_playStampGroupId + 2)._picResource;
+ PictureResource *btnPic = _bVoy->boltEntry(_playStampGroupId + 12)._picResource;
+ _graphicsManager->sDrawPic(btnPic, _graphicsManager->_vPort,
+ Common::Point(106, 200));
+ }
+
+ _graphicsManager->sDrawPic(cursorPic, _graphicsManager->_vPort,
+ Common::Point(pt.x + 13, pt.y - 12));
+
+ flipPageAndWait();
+ } while (!shouldQuit() && !_eventsManager->_mouseClicked);
+ } while (!shouldQuit() && selectedIndex == -1 && !_eventsManager->_rightClick);
+
+ return selectedIndex;
+}
+
+void VoyeurEngine::makeViewFinder() {
+ _graphicsManager->_backgroundPage = _bVoy->boltEntry(0x103)._picResource;
+ _graphicsManager->sDrawPic(_graphicsManager->_backgroundPage,
+ _graphicsManager->_vPort, Common::Point(0, 0));
+ CMapResource *pal = _bVoy->boltEntry(0x104)._cMapResource;
+
+ int palOffset = 0;
+ switch (_voy->_transitionId) {
+ case 1:
+ case 2:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ case 17:
+ palOffset = 0;
+ break;
+ case 3:
+ palOffset = 1;
+ break;
+ case 4:
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ case 15:
+ case 16:
+ palOffset = 2;
+ break;
+ default:
+ break;
+ }
+
+ _graphicsManager->_vPort->drawIfaceTime();
+ doTimeBar();
+ pal->startFade();
+
+ flipPageAndWaitForFade();
+
+ _graphicsManager->setColor(241, 105, 105, 105);
+ _graphicsManager->setColor(242, 105, 105, 105);
+ _graphicsManager->setColor(243, 105, 105, 105);
+ _graphicsManager->setColor(palOffset + 241, 219, 235, 235);
+
+ _eventsManager->_intPtr._hasPalette = true;
+}
+
+void VoyeurEngine::makeViewFinderP() {
+ _graphicsManager->screenReset();
+}
+
+void VoyeurEngine::initIFace() {
+ int playStamp1 = _playStampGroupId;
+ switch (_voy->_transitionId) {
+ case 0:
+ break;
+ case 1:
+ case 2:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ _playStampGroupId = 0xB00;
+ break;
+ case 3:
+ _playStampGroupId = 0xC00;
+ break;
+ default:
+ _playStampGroupId = 0xD00;
+ break;
+ }
+ if (playStamp1 != -1)
+ _bVoy->freeBoltGroup(playStamp1);
+
+ _bVoy->getBoltGroup(_playStampGroupId);
+ CMapResource *pal = _bVoy->boltEntry(_playStampGroupId + 2)._cMapResource;
+ pal->startFade();
+
+ // Start the mansion off centered
+ _mansionViewPos = Common::Point((MANSION_MAX_X - MANSION_VIEW_WIDTH) / 2,
+ (MANSION_MAX_Y - MANSION_VIEW_HEIGHT) / 2);
+ doScroll(_mansionViewPos);
+
+ _voy->_viewBounds = _bVoy->boltEntry(_playStampGroupId)._rectResource;
+
+ // Show the cursor using ScummVM functionality
+ _eventsManager->showCursor();
+
+ // Note: the original did two loops to preload members here, which is
+ // redundant for ScummVM, since computers are faster these days, and
+ // getting resources as needed will be fast enough.
+}
+
+void VoyeurEngine::doScroll(const Common::Point &pt) {
+ Common::Rect clipRect(72, 47, 72 + 240, 47 + 148);
+ _graphicsManager->_vPort->setupViewPort(NULL, &clipRect);
+
+ int base = 0;
+ switch (_voy->_transitionId) {
+ case 0:
+ break;
+ case 1:
+ case 2:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ base = 0xB00;
+ break;
+ case 3:
+ base = 0xC00;
+ break;
+ default:
+ base = 0xD00;
+ }
+
+ if (base) {
+ PictureResource *pic = _bVoy->boltEntry(base + 3)._picResource;
+ _graphicsManager->sDrawPic(pic, _graphicsManager->_vPort, Common::Point(784 - pt.x - 712, 150 - pt.y - 104));
+ pic = _bVoy->boltEntry(base + 4)._picResource;
+ _graphicsManager->sDrawPic(pic, _graphicsManager->_vPort, Common::Point(784 - pt.x - 712, 150 - pt.y - 44));
+ pic = _bVoy->boltEntry(base + 5)._picResource;
+ _graphicsManager->sDrawPic(pic, _graphicsManager->_vPort, Common::Point(784 - pt.x - 712, 150 - pt.y + 16));
+ pic = _bVoy->boltEntry(base + 6)._picResource;
+ _graphicsManager->sDrawPic(pic, _graphicsManager->_vPort, Common::Point(784 - pt.x - 712, 150 - pt.y + 76));
+ pic = _bVoy->boltEntry(base + 7)._picResource;
+ _graphicsManager->sDrawPic(pic, _graphicsManager->_vPort, Common::Point(784 - pt.x - 712, 150 - pt.y + 136));
+ }
+
+ _graphicsManager->_vPort->setupViewPort(NULL);
+}
+
+void VoyeurEngine::checkTransition() {
+ Common::String time, day;
+
+ if (_voy->_transitionId != _checkTransitionId) {
+ // Get the day
+ day = getDayName();
+
+ // Only proceed if a valid day string was returned
+ if (!day.empty()) {
+ _graphicsManager->fadeDownICF(6);
+
+ // Get the time of day string
+ time = getTimeOfDay();
+
+ // Show a transition card with the day and time, and wait
+ doTransitionCard(day, time);
+ _eventsManager->delayClick(180);
+ }
+
+ _checkTransitionId = _voy->_transitionId;
+ }
+}
+
+Common::String VoyeurEngine::getDayName() {
+ switch (_voy->_transitionId) {
+ case 0:
+ return "";
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ return SATURDAY;
+ case 17:
+ return MONDAY;
+ default:
+ return SUNDAY;
+ }
+}
+
+Common::String VoyeurEngine::getTimeOfDay() {
+ if (_voy->_transitionId == 17)
+ return "";
+
+ return Common::String::format("%d:%02d%s", _gameHour, _gameMinute, _voy->_isAM ? AM : PM);
+}
+
+int VoyeurEngine::doComputerText(int maxLen) {
+ FontInfoResource &font = *_graphicsManager->_fontPtr;
+ int totalChars = 0;
+
+ font._curFont = _bVoy->boltEntry(0x4910)._fontResource;
+ font._foreColor = 129;
+ font._fontSaveBack = false;
+ font._fontFlags = DISPFLAG_NONE;
+ if (_voy->_vocSecondsOffset > 60)
+ _voy->_vocSecondsOffset = 0;
+
+ if (_voy->_RTVNum > _voy->_computerTimeMax && maxLen == 9999) {
+ if (_currentVocId != -1)
+ _soundManager->startVOCPlay(_currentVocId);
+ font._justify = ALIGN_LEFT;
+ font._justifyWidth = 384;
+ font._justifyHeight = 100;
+ font._pos = Common::Point(128, 100);
+ _graphicsManager->_vPort->drawText(END_OF_MESSAGE);
+ } else if (_voy->_RTVNum < _voy->_computerTimeMin && maxLen == 9999) {
+ if (_currentVocId != -1)
+ _soundManager->startVOCPlay(_currentVocId);
+ font._justify = ALIGN_LEFT;
+ font._justifyWidth = 384;
+ font._justifyHeight = 100;
+ font._pos = Common::Point(120, 100);
+ _graphicsManager->_vPort->drawText(START_OF_MESSAGE);
+ } else {
+ char *msg = (char *)_bVoy->memberAddr(0x4900 + _voy->_computerTextId);
+ font._pos = Common::Point(96, 60);
+
+ bool showEnd = true;
+ int yp = 60;
+ do {
+ if (_currentVocId != -1 && !_soundManager->getVOCStatus()) {
+ if (_voy->_vocSecondsOffset > 60)
+ _voy->_vocSecondsOffset = 0;
+ _soundManager->startVOCPlay(_currentVocId);
+ }
+
+ char c = *msg++;
+ if (c == '\0') {
+ if (showEnd) {
+ _eventsManager->delay(90);
+ _graphicsManager->_drawPtr->_pos = Common::Point(96, 54);
+ _graphicsManager->_drawPtr->_penColor = 254;
+ _graphicsManager->_vPort->sFillBox(196, 124);
+ _graphicsManager->_fontPtr->_justify = ALIGN_LEFT;
+ _graphicsManager->_fontPtr->_justifyWidth = 384;
+ _graphicsManager->_fontPtr->_justifyHeight = 100;
+ _graphicsManager->_fontPtr->_pos = Common::Point(128, 100);
+ _graphicsManager->_vPort->drawText(END_OF_MESSAGE);
+ }
+ break;
+ }
+
+ if (c == '~' || c == '^') {
+ if (c == '^') {
+ yp += 10;
+ } else {
+ _eventsManager->delay(90);
+ _graphicsManager->_drawPtr->_pos = Common::Point(96, 54);
+ _graphicsManager->_drawPtr->_penColor = 255;
+ _graphicsManager->_vPort->sFillBox(196, 124);
+ yp = 60;
+ }
+
+ _graphicsManager->_fontPtr->_pos = Common::Point(96, yp);
+ } else if (c == '_') {
+ showEnd = false;
+ } else {
+ _graphicsManager->_fontPtr->_justify = ALIGN_LEFT;
+ _graphicsManager->_fontPtr->_justifyWidth = 0;
+ _graphicsManager->_fontPtr->_justifyHeight = 0;
+ _graphicsManager->_vPort->drawText(Common::String(c));
+ _eventsManager->delay(4);
+ }
+
+ flipPageAndWait();
+ _eventsManager->getMouseInfo();
+ ++totalChars;
+
+ } while (!shouldQuit() && !_eventsManager->_mouseClicked && totalChars < maxLen);
+
+ _voy->_computerTimeMax = 0;
+ }
+
+ flipPageAndWait();
+
+ _graphicsManager->_fontPtr->_curFont = _bVoy->boltEntry(0x101)._fontResource;
+ return totalChars;
+}
+
+void VoyeurEngine::getComputerBrush() {
+ if (!_bVoy->getBoltGroup(0x4900))
+ return;
+
+ PictureResource *pic = _bVoy->boltEntry(0x490E)._picResource;
+ int xp = (384 - pic->_bounds.width()) / 2;
+ int yp = (240 - pic->_bounds.height()) / 2 - 4;
+
+ _graphicsManager->_vPort->drawPicPerm(pic, Common::Point(xp, yp));
+
+ CMapResource *pal = _bVoy->boltEntry(0x490F)._cMapResource;
+ pal->startFade();
+}
+
+void VoyeurEngine::doTimeBar() {
+ flashTimeBar();
+
+ if (_voy->_RTVLimit > 0) {
+ if (_voy->_RTVNum > _voy->_RTVLimit || _voy->_RTVNum < 0)
+ _voy->_RTVNum = _voy->_RTVLimit - 1;
+
+ _timeBarVal = _voy->_RTVNum;
+ int height = ((_voy->_RTVLimit - _voy->_RTVNum) * 59) / _voy->_RTVLimit;
+ int fullHeight = MAX(151 - height, 93);
+
+ _graphicsManager->_drawPtr->_penColor = 134;
+ _graphicsManager->_drawPtr->_pos = Common::Point(39, 92);
+
+ _graphicsManager->_vPort->sFillBox(6, fullHeight - 92);
+ if (height > 0) {
+ _graphicsManager->setColor(215, 238, 238, 238);
+ _eventsManager->_intPtr._hasPalette = true;
+
+ _graphicsManager->_drawPtr->_penColor = 215;
+ _graphicsManager->_drawPtr->_pos = Common::Point(39, fullHeight);
+ _graphicsManager->_vPort->sFillBox(6, height);
+ }
+ }
+}
+
+void VoyeurEngine::flashTimeBar() {
+ if (_voy->_RTVNum >= 0 && (_voy->_RTVLimit - _voy->_RTVNum) < 11 &&
+ (_eventsManager->_intPtr._flashTimer >= (_flashTimeVal + 15) ||
+ _eventsManager->_intPtr._flashTimer < _flashTimeVal)) {
+ // Within camera low power range
+ _flashTimeVal = _eventsManager->_intPtr._flashTimer;
+
+ if (_flashTimeFlag)
+ _graphicsManager->setColor(240, 220, 20, 20);
+ else
+ _graphicsManager->setColor(240, 220, 220, 220);
+
+ _eventsManager->_intPtr._hasPalette = true;
+ _flashTimeFlag = !_flashTimeFlag;
+ }
+}
+
+void VoyeurEngine::checkPhoneCall() {
+ if ((_voy->_RTVLimit - _voy->_RTVNum) >= 36 && _voy->_totalPhoneCalls < 5 &&
+ _currentVocId <= 151 && _currentVocId > 146) {
+ if ((_voy->_switchBGNum < _checkPhoneVal || _checkPhoneVal > 180) &&
+ !_soundManager->getVOCStatus()) {
+ int soundIndex;
+ do {
+ soundIndex = getRandomNumber(4);
+ } while (_voy->_phoneCallsReceived[soundIndex]);
+ _currentVocId = 154 + soundIndex;
+
+ _soundManager->stopVOCPlay();
+ _soundManager->startVOCPlay(_currentVocId);
+ _checkPhoneVal = _voy->_switchBGNum;
+ _voy->_phoneCallsReceived[soundIndex] = true;
+ ++_voy->_totalPhoneCalls;
+ }
+ }
+}
+
+void VoyeurEngine::doEvidDisplay(int evidId, int eventId) {
+ _eventsManager->getMouseInfo();
+ flipPageAndWait();
+
+ if (_currentVocId != -1) {
+ _voy->_vocSecondsOffset = _voy->_RTVNum - _voy->_musicStartTime;
+ _soundManager->stopVOCPlay();
+ }
+
+ _bVoy->getBoltGroup(_voy->_boltGroupId2);
+ PictureResource *pic = _bVoy->boltEntry(_voy->_boltGroupId2 + evidId * 2)._picResource;
+ _graphicsManager->sDrawPic(pic, _graphicsManager->_vPort, Common::Point(
+ (384 - pic->_bounds.width()) / 2, (240 - pic->_bounds.height()) / 2));
+ _bVoy->freeBoltMember(_voy->_boltGroupId2 + evidId * 2);
+
+ CMapResource *pal = _bVoy->boltEntry(_voy->_boltGroupId2 + evidId * 2 + 1)._cMapResource;
+ pal->startFade();
+
+ while (!shouldQuit() && (_eventsManager->_fadeStatus & 1))
+ _eventsManager->delay(1);
+ _bVoy->freeBoltMember(_voy->_boltGroupId2 + evidId * 2 + 1);
+
+ Common::Array<RectEntry> &hotspots = _bVoy->boltEntry(_playStampGroupId + 4)._rectResource->_entries;
+ int count = hotspots[evidId]._count;
+
+ if (count > 0) {
+ for (int idx = 1; idx <= count; ++idx) {
+ _voy->_evPicPtrs[idx - 1] = _bVoy->boltEntry(_voy->_boltGroupId2 +
+ (evidId + idx) * 2)._picResource;
+ _voy->_evCmPtrs[idx - 1] = _bVoy->boltEntry(_voy->_boltGroupId2 +
+ (evidId + idx) * 2 + 1)._cMapResource;
+ }
+ }
+
+ flipPageAndWait();
+ _eventsManager->stopEvidDim();
+
+ if (eventId == 999)
+ _voy->addEvidEventStart(evidId);
+
+ _eventsManager->getMouseInfo();
+
+ int arrIndex = 0;
+ int evidIdx = evidId;
+
+ while (!shouldQuit() && !_eventsManager->_rightClick) {
+ _voyeurArea = AREA_EVIDENCE;
+
+ if (_currentVocId != -1 && !_soundManager->getVOCStatus()) {
+ if (_voy->_vocSecondsOffset > 60)
+ _voy->_vocSecondsOffset = 0;
+
+ _soundManager->startVOCPlay(_currentVocId);
+ }
+
+ _eventsManager->delayClick(600);
+ if (_eventsManager->_rightClick)
+ break;
+ if (count == 0 || evidIdx >= eventId)
+ continue;
+
+ pic = _voy->_evPicPtrs[arrIndex];
+ _graphicsManager->sDrawPic(pic, _graphicsManager->_vPort,
+ Common::Point((384 - pic->_bounds.width()) / 2,
+ (240 - pic->_bounds.height()) / 2));
+ _voy->_evCmPtrs[arrIndex]->startFade();
+ while (!shouldQuit() && (_eventsManager->_fadeStatus & 1))
+ _eventsManager->delay(1);
+
+ flipPageAndWait();
+ _eventsManager->delay(6);
+
+ ++evidIdx;
+ ++arrIndex;
+ --count;
+ }
+
+ if (eventId == 999)
+ _voy->addEvidEventEnd(evidIdx);
+
+ for (int idx = 1; idx <= hotspots[evidId]._count; ++idx) {
+ _bVoy->freeBoltMember(_voy->_boltGroupId2 + (evidId + idx) * 2);
+ _bVoy->freeBoltMember(_voy->_boltGroupId2 + (evidId + idx) * 2 + 1);
+ }
+}
+
+} // End of namespace Voyeur
diff --git a/engines/wintermute/ad/ad_actor.cpp b/engines/wintermute/ad/ad_actor.cpp
index 33ad39b411..9d5a35464a 100644
--- a/engines/wintermute/ad/ad_actor.cpp
+++ b/engines/wintermute/ad/ad_actor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_actor.h b/engines/wintermute/ad/ad_actor.h
index 3225eb44ec..863a055a4b 100644
--- a/engines/wintermute/ad/ad_actor.h
+++ b/engines/wintermute/ad/ad_actor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_entity.cpp b/engines/wintermute/ad/ad_entity.cpp
index 098da49750..1bbadeb7f7 100644
--- a/engines/wintermute/ad/ad_entity.cpp
+++ b/engines/wintermute/ad/ad_entity.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_entity.h b/engines/wintermute/ad/ad_entity.h
index c3ed5622e5..7e1525b7c1 100644
--- a/engines/wintermute/ad/ad_entity.h
+++ b/engines/wintermute/ad/ad_entity.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_game.cpp b/engines/wintermute/ad/ad_game.cpp
index 904b8a541c..3c4383f55e 100644
--- a/engines/wintermute/ad/ad_game.cpp
+++ b/engines/wintermute/ad/ad_game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_game.h b/engines/wintermute/ad/ad_game.h
index 019f2e6478..ebb37e9a07 100644
--- a/engines/wintermute/ad/ad_game.h
+++ b/engines/wintermute/ad/ad_game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_inventory.cpp b/engines/wintermute/ad/ad_inventory.cpp
index f9352c77c6..e385d233b6 100644
--- a/engines/wintermute/ad/ad_inventory.cpp
+++ b/engines/wintermute/ad/ad_inventory.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_inventory.h b/engines/wintermute/ad/ad_inventory.h
index 9de831b2a0..c2092bce56 100644
--- a/engines/wintermute/ad/ad_inventory.h
+++ b/engines/wintermute/ad/ad_inventory.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_inventory_box.cpp b/engines/wintermute/ad/ad_inventory_box.cpp
index 5d7f053bb5..a2e54a3318 100644
--- a/engines/wintermute/ad/ad_inventory_box.cpp
+++ b/engines/wintermute/ad/ad_inventory_box.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_inventory_box.h b/engines/wintermute/ad/ad_inventory_box.h
index 4d576625b2..4673f2e3f3 100644
--- a/engines/wintermute/ad/ad_inventory_box.h
+++ b/engines/wintermute/ad/ad_inventory_box.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_item.cpp b/engines/wintermute/ad/ad_item.cpp
index 1f19a3eeae..c7eda029cf 100644
--- a/engines/wintermute/ad/ad_item.cpp
+++ b/engines/wintermute/ad/ad_item.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_item.h b/engines/wintermute/ad/ad_item.h
index 935ea5d73d..092a645019 100644
--- a/engines/wintermute/ad/ad_item.h
+++ b/engines/wintermute/ad/ad_item.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_layer.cpp b/engines/wintermute/ad/ad_layer.cpp
index 17dd83a8b7..f6ea339895 100644
--- a/engines/wintermute/ad/ad_layer.cpp
+++ b/engines/wintermute/ad/ad_layer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_layer.h b/engines/wintermute/ad/ad_layer.h
index af7c3a364c..995ef28ee9 100644
--- a/engines/wintermute/ad/ad_layer.h
+++ b/engines/wintermute/ad/ad_layer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_node_state.cpp b/engines/wintermute/ad/ad_node_state.cpp
index dd07f23762..c43604320b 100644
--- a/engines/wintermute/ad/ad_node_state.cpp
+++ b/engines/wintermute/ad/ad_node_state.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_node_state.h b/engines/wintermute/ad/ad_node_state.h
index 4b5b46ee60..cf897e9af3 100644
--- a/engines/wintermute/ad/ad_node_state.h
+++ b/engines/wintermute/ad/ad_node_state.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_object.cpp b/engines/wintermute/ad/ad_object.cpp
index 3664e0fd8a..a93bd42bd0 100644
--- a/engines/wintermute/ad/ad_object.cpp
+++ b/engines/wintermute/ad/ad_object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_object.h b/engines/wintermute/ad/ad_object.h
index ba984ef8d1..35a734cd83 100644
--- a/engines/wintermute/ad/ad_object.h
+++ b/engines/wintermute/ad/ad_object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_path.cpp b/engines/wintermute/ad/ad_path.cpp
index 156fc80958..4d5c313e52 100644
--- a/engines/wintermute/ad/ad_path.cpp
+++ b/engines/wintermute/ad/ad_path.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_path.h b/engines/wintermute/ad/ad_path.h
index 9de0bcad2c..8dbec5e4f0 100644
--- a/engines/wintermute/ad/ad_path.h
+++ b/engines/wintermute/ad/ad_path.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_path_point.cpp b/engines/wintermute/ad/ad_path_point.cpp
index 5ee9568608..6e20554034 100644
--- a/engines/wintermute/ad/ad_path_point.cpp
+++ b/engines/wintermute/ad/ad_path_point.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_path_point.h b/engines/wintermute/ad/ad_path_point.h
index 5e6b8c61ea..c375946f32 100644
--- a/engines/wintermute/ad/ad_path_point.h
+++ b/engines/wintermute/ad/ad_path_point.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_region.cpp b/engines/wintermute/ad/ad_region.cpp
index 2e8e73a1cf..89ad09fb8f 100644
--- a/engines/wintermute/ad/ad_region.cpp
+++ b/engines/wintermute/ad/ad_region.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_region.h b/engines/wintermute/ad/ad_region.h
index f3674dcbfb..2b5e468901 100644
--- a/engines/wintermute/ad/ad_region.h
+++ b/engines/wintermute/ad/ad_region.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_response.cpp b/engines/wintermute/ad/ad_response.cpp
index e7b4188de6..6ebe70bedb 100644
--- a/engines/wintermute/ad/ad_response.cpp
+++ b/engines/wintermute/ad/ad_response.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_response.h b/engines/wintermute/ad/ad_response.h
index 00ebafbdb0..22aac01ff2 100644
--- a/engines/wintermute/ad/ad_response.h
+++ b/engines/wintermute/ad/ad_response.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_response_box.cpp b/engines/wintermute/ad/ad_response_box.cpp
index f2e986cbdc..83c2ae74c6 100644
--- a/engines/wintermute/ad/ad_response_box.cpp
+++ b/engines/wintermute/ad/ad_response_box.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_response_box.h b/engines/wintermute/ad/ad_response_box.h
index 9469bfda43..c808a7b5db 100644
--- a/engines/wintermute/ad/ad_response_box.h
+++ b/engines/wintermute/ad/ad_response_box.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_response_context.cpp b/engines/wintermute/ad/ad_response_context.cpp
index 44b43a6077..6d7d8d50a4 100644
--- a/engines/wintermute/ad/ad_response_context.cpp
+++ b/engines/wintermute/ad/ad_response_context.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_response_context.h b/engines/wintermute/ad/ad_response_context.h
index bc30b4a1c9..385ec2ded5 100644
--- a/engines/wintermute/ad/ad_response_context.h
+++ b/engines/wintermute/ad/ad_response_context.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_rot_level.cpp b/engines/wintermute/ad/ad_rot_level.cpp
index b5bdc8ebe9..410ba22b53 100644
--- a/engines/wintermute/ad/ad_rot_level.cpp
+++ b/engines/wintermute/ad/ad_rot_level.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_rot_level.h b/engines/wintermute/ad/ad_rot_level.h
index 47c621845a..f60dd0a5a9 100644
--- a/engines/wintermute/ad/ad_rot_level.h
+++ b/engines/wintermute/ad/ad_rot_level.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_scale_level.cpp b/engines/wintermute/ad/ad_scale_level.cpp
index aa7f6f89cf..7e2eaa6f4f 100644
--- a/engines/wintermute/ad/ad_scale_level.cpp
+++ b/engines/wintermute/ad/ad_scale_level.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_scale_level.h b/engines/wintermute/ad/ad_scale_level.h
index 768e79bbf7..4d6a83561f 100644
--- a/engines/wintermute/ad/ad_scale_level.h
+++ b/engines/wintermute/ad/ad_scale_level.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_scene.cpp b/engines/wintermute/ad/ad_scene.cpp
index ab7ab51f30..02a6aeb801 100644
--- a/engines/wintermute/ad/ad_scene.cpp
+++ b/engines/wintermute/ad/ad_scene.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -2041,6 +2041,10 @@ bool AdScene::scSetProperty(const char *name, ScValue *value) {
//////////////////////////////////////////////////////////////////////////
else if (strcmp(name, "ScrollSpeedX") == 0) {
_scrollTimeH = value->getInt();
+ if (_scrollTimeH == 0) {
+ warning("_scrollTimeH can't be 0, resetting to default");
+ _scrollTimeH = 10;
+ }
return STATUS_OK;
}
@@ -2049,6 +2053,10 @@ bool AdScene::scSetProperty(const char *name, ScValue *value) {
//////////////////////////////////////////////////////////////////////////
else if (strcmp(name, "ScrollSpeedY") == 0) {
_scrollTimeV = value->getInt();
+ if (_scrollTimeV == 0) {
+ warning("_scrollTimeV can't be 0, resetting to default");
+ _scrollTimeV = 10;
+ }
return STATUS_OK;
}
diff --git a/engines/wintermute/ad/ad_scene.h b/engines/wintermute/ad/ad_scene.h
index 1f35a776b5..1ca52bdda9 100644
--- a/engines/wintermute/ad/ad_scene.h
+++ b/engines/wintermute/ad/ad_scene.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_scene_node.cpp b/engines/wintermute/ad/ad_scene_node.cpp
index 5f6207c23a..e5d23d5f2a 100644
--- a/engines/wintermute/ad/ad_scene_node.cpp
+++ b/engines/wintermute/ad/ad_scene_node.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_scene_node.h b/engines/wintermute/ad/ad_scene_node.h
index 5bb1606d0e..34b59cd587 100644
--- a/engines/wintermute/ad/ad_scene_node.h
+++ b/engines/wintermute/ad/ad_scene_node.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_scene_state.cpp b/engines/wintermute/ad/ad_scene_state.cpp
index a4218751c3..d7c863792d 100644
--- a/engines/wintermute/ad/ad_scene_state.cpp
+++ b/engines/wintermute/ad/ad_scene_state.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_scene_state.h b/engines/wintermute/ad/ad_scene_state.h
index 067c737b2e..90e39f3d51 100644
--- a/engines/wintermute/ad/ad_scene_state.h
+++ b/engines/wintermute/ad/ad_scene_state.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_sentence.cpp b/engines/wintermute/ad/ad_sentence.cpp
index 21ffac5aaf..86ae06ad06 100644
--- a/engines/wintermute/ad/ad_sentence.cpp
+++ b/engines/wintermute/ad/ad_sentence.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_sentence.h b/engines/wintermute/ad/ad_sentence.h
index c491ad99a2..7d187786d4 100644
--- a/engines/wintermute/ad/ad_sentence.h
+++ b/engines/wintermute/ad/ad_sentence.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_sprite_set.cpp b/engines/wintermute/ad/ad_sprite_set.cpp
index dd920492de..e598913ae6 100644
--- a/engines/wintermute/ad/ad_sprite_set.cpp
+++ b/engines/wintermute/ad/ad_sprite_set.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_sprite_set.h b/engines/wintermute/ad/ad_sprite_set.h
index ece71f7adb..8590970126 100644
--- a/engines/wintermute/ad/ad_sprite_set.h
+++ b/engines/wintermute/ad/ad_sprite_set.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_talk_def.cpp b/engines/wintermute/ad/ad_talk_def.cpp
index 22e3d7b4cc..6194121727 100644
--- a/engines/wintermute/ad/ad_talk_def.cpp
+++ b/engines/wintermute/ad/ad_talk_def.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_talk_def.h b/engines/wintermute/ad/ad_talk_def.h
index 5711906b4b..a19c504955 100644
--- a/engines/wintermute/ad/ad_talk_def.h
+++ b/engines/wintermute/ad/ad_talk_def.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_talk_holder.cpp b/engines/wintermute/ad/ad_talk_holder.cpp
index 6041105b93..116d3edd21 100644
--- a/engines/wintermute/ad/ad_talk_holder.cpp
+++ b/engines/wintermute/ad/ad_talk_holder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_talk_holder.h b/engines/wintermute/ad/ad_talk_holder.h
index ab48c3aaf4..b5f8f48318 100644
--- a/engines/wintermute/ad/ad_talk_holder.h
+++ b/engines/wintermute/ad/ad_talk_holder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_talk_node.cpp b/engines/wintermute/ad/ad_talk_node.cpp
index 6c0d2e1f06..f4612122da 100644
--- a/engines/wintermute/ad/ad_talk_node.cpp
+++ b/engines/wintermute/ad/ad_talk_node.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_talk_node.h b/engines/wintermute/ad/ad_talk_node.h
index 7a014b2d9f..e619edf7c2 100644
--- a/engines/wintermute/ad/ad_talk_node.h
+++ b/engines/wintermute/ad/ad_talk_node.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_types.h b/engines/wintermute/ad/ad_types.h
index dc1a54b91d..931e38974c 100644
--- a/engines/wintermute/ad/ad_types.h
+++ b/engines/wintermute/ad/ad_types.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_waypoint_group.cpp b/engines/wintermute/ad/ad_waypoint_group.cpp
index ae6b18e266..25d7f83264 100644
--- a/engines/wintermute/ad/ad_waypoint_group.cpp
+++ b/engines/wintermute/ad/ad_waypoint_group.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ad/ad_waypoint_group.h b/engines/wintermute/ad/ad_waypoint_group.h
index 47fd611be6..32d5e9b764 100644
--- a/engines/wintermute/ad/ad_waypoint_group.h
+++ b/engines/wintermute/ad/ad_waypoint_group.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base.cpp b/engines/wintermute/base/base.cpp
index 6a0666b36e..90a3a62d69 100644
--- a/engines/wintermute/base/base.cpp
+++ b/engines/wintermute/base/base.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base.h b/engines/wintermute/base/base.h
index 8767cc9bdd..e6ed7c51fe 100644
--- a/engines/wintermute/base/base.h
+++ b/engines/wintermute/base/base.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_active_rect.cpp b/engines/wintermute/base/base_active_rect.cpp
index 69cc7b02b6..0c5d16966f 100644
--- a/engines/wintermute/base/base_active_rect.cpp
+++ b/engines/wintermute/base/base_active_rect.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_active_rect.h b/engines/wintermute/base/base_active_rect.h
index a3c0746618..29acc595d1 100644
--- a/engines/wintermute/base/base_active_rect.h
+++ b/engines/wintermute/base/base_active_rect.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_dynamic_buffer.cpp b/engines/wintermute/base/base_dynamic_buffer.cpp
index 5334ae46c4..7187a78769 100644
--- a/engines/wintermute/base/base_dynamic_buffer.cpp
+++ b/engines/wintermute/base/base_dynamic_buffer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_dynamic_buffer.h b/engines/wintermute/base/base_dynamic_buffer.h
index 2804d78895..6662e36dfd 100644
--- a/engines/wintermute/base/base_dynamic_buffer.h
+++ b/engines/wintermute/base/base_dynamic_buffer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_engine.cpp b/engines/wintermute/base/base_engine.cpp
index acb12bbe5f..7c2e9c8468 100644
--- a/engines/wintermute/base/base_engine.cpp
+++ b/engines/wintermute/base/base_engine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_engine.h b/engines/wintermute/base/base_engine.h
index a5eafd3597..dd82cf9c29 100644
--- a/engines/wintermute/base/base_engine.h
+++ b/engines/wintermute/base/base_engine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_fader.cpp b/engines/wintermute/base/base_fader.cpp
index c7dac8be27..f9c4d1cba5 100644
--- a/engines/wintermute/base/base_fader.cpp
+++ b/engines/wintermute/base/base_fader.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_fader.h b/engines/wintermute/base/base_fader.h
index 087b19bc44..f742954c3d 100644
--- a/engines/wintermute/base/base_fader.h
+++ b/engines/wintermute/base/base_fader.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_file_manager.cpp b/engines/wintermute/base/base_file_manager.cpp
index e39a15f469..1f78303f52 100644
--- a/engines/wintermute/base/base_file_manager.cpp
+++ b/engines/wintermute/base/base_file_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_file_manager.h b/engines/wintermute/base/base_file_manager.h
index 8c2876f681..653721c8f5 100644
--- a/engines/wintermute/base/base_file_manager.h
+++ b/engines/wintermute/base/base_file_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_frame.cpp b/engines/wintermute/base/base_frame.cpp
index 1455733461..f2c24b8f6a 100644
--- a/engines/wintermute/base/base_frame.cpp
+++ b/engines/wintermute/base/base_frame.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_frame.h b/engines/wintermute/base/base_frame.h
index c4cfc443fa..49a56592bb 100644
--- a/engines/wintermute/base/base_frame.h
+++ b/engines/wintermute/base/base_frame.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_game.cpp b/engines/wintermute/base/base_game.cpp
index 6b7e1cf803..d37a22e2a6 100644
--- a/engines/wintermute/base/base_game.cpp
+++ b/engines/wintermute/base/base_game.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_game.h b/engines/wintermute/base/base_game.h
index 29d312fe97..cdbbff6c93 100644
--- a/engines/wintermute/base/base_game.h
+++ b/engines/wintermute/base/base_game.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_game_music.cpp b/engines/wintermute/base/base_game_music.cpp
index 8894fb843f..fee7c7be2d 100644
--- a/engines/wintermute/base/base_game_music.cpp
+++ b/engines/wintermute/base/base_game_music.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_game_music.h b/engines/wintermute/base/base_game_music.h
index 72c7a171a6..1e786dbb2b 100644
--- a/engines/wintermute/base/base_game_music.h
+++ b/engines/wintermute/base/base_game_music.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_game_settings.cpp b/engines/wintermute/base/base_game_settings.cpp
index 43809b5d1e..3b54384cc7 100644
--- a/engines/wintermute/base/base_game_settings.cpp
+++ b/engines/wintermute/base/base_game_settings.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_game_settings.h b/engines/wintermute/base/base_game_settings.h
index 38a2fd1042..fe0e9907e6 100644
--- a/engines/wintermute/base/base_game_settings.h
+++ b/engines/wintermute/base/base_game_settings.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_keyboard_state.cpp b/engines/wintermute/base/base_keyboard_state.cpp
index 77469e07a5..61087c5836 100644
--- a/engines/wintermute/base/base_keyboard_state.cpp
+++ b/engines/wintermute/base/base_keyboard_state.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_keyboard_state.h b/engines/wintermute/base/base_keyboard_state.h
index 14a57ee7b8..c74bd5b0f7 100644
--- a/engines/wintermute/base/base_keyboard_state.h
+++ b/engines/wintermute/base/base_keyboard_state.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_named_object.cpp b/engines/wintermute/base/base_named_object.cpp
index 3d1df5ab84..5bfc978299 100644
--- a/engines/wintermute/base/base_named_object.cpp
+++ b/engines/wintermute/base/base_named_object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_named_object.h b/engines/wintermute/base/base_named_object.h
index ee4a3bba6a..a337eae82d 100644
--- a/engines/wintermute/base/base_named_object.h
+++ b/engines/wintermute/base/base_named_object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_object.cpp b/engines/wintermute/base/base_object.cpp
index 540c7dd164..708df8def1 100644
--- a/engines/wintermute/base/base_object.cpp
+++ b/engines/wintermute/base/base_object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_object.h b/engines/wintermute/base/base_object.h
index a190b1bcb4..f5036f4ec4 100644
--- a/engines/wintermute/base/base_object.h
+++ b/engines/wintermute/base/base_object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_parser.cpp b/engines/wintermute/base/base_parser.cpp
index ff9c6c81b0..2d80bc5017 100644
--- a/engines/wintermute/base/base_parser.cpp
+++ b/engines/wintermute/base/base_parser.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_parser.h b/engines/wintermute/base/base_parser.h
index 4bf48cc016..4e4a54e28c 100644
--- a/engines/wintermute/base/base_parser.h
+++ b/engines/wintermute/base/base_parser.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_persistence_manager.cpp b/engines/wintermute/base/base_persistence_manager.cpp
index 3d0fc0e925..bea55fb857 100644
--- a/engines/wintermute/base/base_persistence_manager.cpp
+++ b/engines/wintermute/base/base_persistence_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -38,8 +38,8 @@
#include "engines/wintermute/base/sound/base_sound.h"
#include "engines/wintermute/graphics/transparent_surface.h"
#include "engines/wintermute/wintermute.h"
-#include "graphics/decoders/bmp.h"
#include "graphics/scaler.h"
+#include "image/bmp.h"
#include "common/memstream.h"
#include "common/str.h"
#include "common/system.h"
@@ -170,7 +170,7 @@ void BasePersistenceManager::getSaveStateDesc(int slot, SaveStateDescriptor &des
if (thumbSize > 0) {
Common::MemoryReadStream thumbStream(thumbData, thumbSize, DisposeAfterUse::NO);
- Graphics::BitmapDecoder bmpDecoder;
+ Image::BitmapDecoder bmpDecoder;
if (bmpDecoder.loadStream(thumbStream)) {
const Graphics::Surface *bmpSurface = bmpDecoder.getSurface();
TransparentSurface *scaleableSurface = new TransparentSurface(*bmpSurface, false);
diff --git a/engines/wintermute/base/base_persistence_manager.h b/engines/wintermute/base/base_persistence_manager.h
index 43259b26ff..373d1580de 100644
--- a/engines/wintermute/base/base_persistence_manager.h
+++ b/engines/wintermute/base/base_persistence_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_point.cpp b/engines/wintermute/base/base_point.cpp
index 84b6a629c7..f810b286fb 100644
--- a/engines/wintermute/base/base_point.cpp
+++ b/engines/wintermute/base/base_point.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_point.h b/engines/wintermute/base/base_point.h
index cf8a5be336..6f5c1ca28f 100644
--- a/engines/wintermute/base/base_point.h
+++ b/engines/wintermute/base/base_point.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_quick_msg.cpp b/engines/wintermute/base/base_quick_msg.cpp
index ac0c107d3b..514f44f788 100644
--- a/engines/wintermute/base/base_quick_msg.cpp
+++ b/engines/wintermute/base/base_quick_msg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_quick_msg.h b/engines/wintermute/base/base_quick_msg.h
index b706424c18..39eace390c 100644
--- a/engines/wintermute/base/base_quick_msg.h
+++ b/engines/wintermute/base/base_quick_msg.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_region.cpp b/engines/wintermute/base/base_region.cpp
index dc17b18ea2..9a31f5cd66 100644
--- a/engines/wintermute/base/base_region.cpp
+++ b/engines/wintermute/base/base_region.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_region.h b/engines/wintermute/base/base_region.h
index 846dcfc341..fc3389c501 100644
--- a/engines/wintermute/base/base_region.h
+++ b/engines/wintermute/base/base_region.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_script_holder.cpp b/engines/wintermute/base/base_script_holder.cpp
index 5fb0b62713..8383657239 100644
--- a/engines/wintermute/base/base_script_holder.cpp
+++ b/engines/wintermute/base/base_script_holder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_script_holder.h b/engines/wintermute/base/base_script_holder.h
index b4e22a59ee..9b3bf9ec44 100644
--- a/engines/wintermute/base/base_script_holder.h
+++ b/engines/wintermute/base/base_script_holder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_scriptable.cpp b/engines/wintermute/base/base_scriptable.cpp
index d2ff627f0a..c65d30d941 100644
--- a/engines/wintermute/base/base_scriptable.cpp
+++ b/engines/wintermute/base/base_scriptable.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_scriptable.h b/engines/wintermute/base/base_scriptable.h
index 08fd32081a..b32668d6c8 100644
--- a/engines/wintermute/base/base_scriptable.h
+++ b/engines/wintermute/base/base_scriptable.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_sprite.cpp b/engines/wintermute/base/base_sprite.cpp
index b1fcb42dcc..2e00998037 100644
--- a/engines/wintermute/base/base_sprite.cpp
+++ b/engines/wintermute/base/base_sprite.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_sprite.h b/engines/wintermute/base/base_sprite.h
index 54d595f655..92287995d9 100644
--- a/engines/wintermute/base/base_sprite.h
+++ b/engines/wintermute/base/base_sprite.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_string_table.cpp b/engines/wintermute/base/base_string_table.cpp
index 3d9cc4f8b3..9adbbdf7be 100644
--- a/engines/wintermute/base/base_string_table.cpp
+++ b/engines/wintermute/base/base_string_table.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_string_table.h b/engines/wintermute/base/base_string_table.h
index f8808f5b27..9e915a1ad9 100644
--- a/engines/wintermute/base/base_string_table.h
+++ b/engines/wintermute/base/base_string_table.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_sub_frame.cpp b/engines/wintermute/base/base_sub_frame.cpp
index 38eebb067b..3a6e28b1f2 100644
--- a/engines/wintermute/base/base_sub_frame.cpp
+++ b/engines/wintermute/base/base_sub_frame.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -235,7 +235,7 @@ const char* BaseSubFrame::getSurfaceFilename() {
//////////////////////////////////////////////////////////////////////
bool BaseSubFrame::draw(int x, int y, BaseObject *registerOwner, float zoomX, float zoomY, bool precise, uint32 alpha, float rotate, TSpriteBlendMode blendMode) {
-
+
rotate = fmod(rotate, 360.0f);
if (rotate < 0) {
rotate += 360.0f;
@@ -271,7 +271,7 @@ bool BaseSubFrame::draw(int x, int y, BaseObject *registerOwner, float zoomX, fl
TransformStruct transform = TransformStruct(zoomX, zoomY, (uint32)rotate, _hotspotX, _hotspotY, blendMode, alpha, _mirrorX, _mirrorY, 0, 0);
Rect32 newRect = TransformTools::newRect (oldRect, transform, &newHotspot);
newOrigin = origin - newHotspot;
- res = _surface->displayTransform(newOrigin.x, newOrigin.y, oldRect, newRect, transform);
+ res = _surface->displayTransform(newOrigin.x, newOrigin.y, oldRect, newRect, transform);
} else {
if (zoomX == kDefaultZoomX && zoomY == kDefaultZoomY) {
res = _surface->displayTrans(x - _hotspotX, y - _hotspotY, getRect(), alpha, blendMode, _mirrorX, _mirrorY);
diff --git a/engines/wintermute/base/base_sub_frame.h b/engines/wintermute/base/base_sub_frame.h
index 4e164467e2..b2859fa3f3 100644
--- a/engines/wintermute/base/base_sub_frame.h
+++ b/engines/wintermute/base/base_sub_frame.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_surface_storage.cpp b/engines/wintermute/base/base_surface_storage.cpp
index f1d068674b..a2dedf66a3 100644
--- a/engines/wintermute/base/base_surface_storage.cpp
+++ b/engines/wintermute/base/base_surface_storage.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_surface_storage.h b/engines/wintermute/base/base_surface_storage.h
index c0049d676c..2bec9a0fbb 100644
--- a/engines/wintermute/base/base_surface_storage.h
+++ b/engines/wintermute/base/base_surface_storage.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_transition_manager.cpp b/engines/wintermute/base/base_transition_manager.cpp
index eee5f1aae7..198dfe26ba 100644
--- a/engines/wintermute/base/base_transition_manager.cpp
+++ b/engines/wintermute/base/base_transition_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_transition_manager.h b/engines/wintermute/base/base_transition_manager.h
index 82edb9ff88..3cfc0f2028 100644
--- a/engines/wintermute/base/base_transition_manager.h
+++ b/engines/wintermute/base/base_transition_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_viewport.cpp b/engines/wintermute/base/base_viewport.cpp
index a6e8b17927..bf3700a14e 100644
--- a/engines/wintermute/base/base_viewport.cpp
+++ b/engines/wintermute/base/base_viewport.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/base_viewport.h b/engines/wintermute/base/base_viewport.h
index 0225c02c7c..eae756f9c6 100644
--- a/engines/wintermute/base/base_viewport.h
+++ b/engines/wintermute/base/base_viewport.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_disk_file.cpp b/engines/wintermute/base/file/base_disk_file.cpp
index 808dc9e00d..82a9e24dfb 100644
--- a/engines/wintermute/base/file/base_disk_file.cpp
+++ b/engines/wintermute/base/file/base_disk_file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_disk_file.h b/engines/wintermute/base/file/base_disk_file.h
index 81cc22b86d..f20629f7ec 100644
--- a/engines/wintermute/base/file/base_disk_file.h
+++ b/engines/wintermute/base/file/base_disk_file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_file.cpp b/engines/wintermute/base/file/base_file.cpp
index 42eea69824..2927c908e2 100644
--- a/engines/wintermute/base/file/base_file.cpp
+++ b/engines/wintermute/base/file/base_file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_file.h b/engines/wintermute/base/file/base_file.h
index 9acda7ffce..820b6510fd 100644
--- a/engines/wintermute/base/file/base_file.h
+++ b/engines/wintermute/base/file/base_file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_file_entry.cpp b/engines/wintermute/base/file/base_file_entry.cpp
index 846f56b55c..991d75d03d 100644
--- a/engines/wintermute/base/file/base_file_entry.cpp
+++ b/engines/wintermute/base/file/base_file_entry.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_file_entry.h b/engines/wintermute/base/file/base_file_entry.h
index 9d738c8c11..6bac3789d7 100644
--- a/engines/wintermute/base/file/base_file_entry.h
+++ b/engines/wintermute/base/file/base_file_entry.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_package.cpp b/engines/wintermute/base/file/base_package.cpp
index 512279b72c..b1461283e8 100644
--- a/engines/wintermute/base/file/base_package.cpp
+++ b/engines/wintermute/base/file/base_package.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_package.h b/engines/wintermute/base/file/base_package.h
index 18156c4f65..35976eb47b 100644
--- a/engines/wintermute/base/file/base_package.h
+++ b/engines/wintermute/base/file/base_package.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_save_thumb_file.cpp b/engines/wintermute/base/file/base_save_thumb_file.cpp
index bb172ca66a..acd5363e89 100644
--- a/engines/wintermute/base/file/base_save_thumb_file.cpp
+++ b/engines/wintermute/base/file/base_save_thumb_file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/base_save_thumb_file.h b/engines/wintermute/base/file/base_save_thumb_file.h
index faf1af9255..4d9030189d 100644
--- a/engines/wintermute/base/file/base_save_thumb_file.h
+++ b/engines/wintermute/base/file/base_save_thumb_file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/file/dcpackage.h b/engines/wintermute/base/file/dcpackage.h
index a2ec5d28d5..5f21ce94ea 100644
--- a/engines/wintermute/base/file/dcpackage.h
+++ b/engines/wintermute/base/file/dcpackage.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/font/base_font.cpp b/engines/wintermute/base/font/base_font.cpp
index 2a394616d1..0a5f7466df 100644
--- a/engines/wintermute/base/font/base_font.cpp
+++ b/engines/wintermute/base/font/base_font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/font/base_font.h b/engines/wintermute/base/font/base_font.h
index d75d3f4fb5..5f37d983cb 100644
--- a/engines/wintermute/base/font/base_font.h
+++ b/engines/wintermute/base/font/base_font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/font/base_font_bitmap.cpp b/engines/wintermute/base/font/base_font_bitmap.cpp
index 95f9a83a6a..bab2bf3df4 100644
--- a/engines/wintermute/base/font/base_font_bitmap.cpp
+++ b/engines/wintermute/base/font/base_font_bitmap.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/font/base_font_bitmap.h b/engines/wintermute/base/font/base_font_bitmap.h
index 77620d8b88..c26a6ad1cb 100644
--- a/engines/wintermute/base/font/base_font_bitmap.h
+++ b/engines/wintermute/base/font/base_font_bitmap.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/font/base_font_storage.cpp b/engines/wintermute/base/font/base_font_storage.cpp
index 8abd368b70..f4f7de44fc 100644
--- a/engines/wintermute/base/font/base_font_storage.cpp
+++ b/engines/wintermute/base/font/base_font_storage.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/font/base_font_storage.h b/engines/wintermute/base/font/base_font_storage.h
index f4ac490324..e29675aaef 100644
--- a/engines/wintermute/base/font/base_font_storage.h
+++ b/engines/wintermute/base/font/base_font_storage.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/font/base_font_truetype.cpp b/engines/wintermute/base/font/base_font_truetype.cpp
index b879e789e3..df9a8648db 100644
--- a/engines/wintermute/base/font/base_font_truetype.cpp
+++ b/engines/wintermute/base/font/base_font_truetype.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -271,11 +271,7 @@ BaseSurface *BaseFontTT::renderTextToTexture(const WideString &text, int width,
//debugC(kWintermuteDebugFont, "%s %d %d %d %d", text.c_str(), RGBCOLGetR(_layers[0]->_color), RGBCOLGetG(_layers[0]->_color), RGBCOLGetB(_layers[0]->_color), RGBCOLGetA(_layers[0]->_color));
// void drawString(Surface *dst, const Common::String &str, int x, int y, int w, uint32 color, TextAlign align = kTextAlignLeft, int deltax = 0, bool useEllipsis = true) const;
Graphics::Surface *surface = new Graphics::Surface();
- if (_deletableFont) { // We actually have a TTF
- surface->create((uint16)width, (uint16)(_lineHeight * lines.size()), _gameRef->_renderer->getPixelFormat());
- } else { // We are using a fallback, they can't do 32bpp
- surface->create((uint16)width, (uint16)(_lineHeight * lines.size()), Graphics::PixelFormat(2, 5, 5, 5, 1, 11, 6, 1, 0));
- }
+ surface->create((uint16)width, (uint16)(_lineHeight * lines.size()), _gameRef->_renderer->getPixelFormat());
uint32 useColor = 0xffffffff;
Common::Array<WideString>::iterator it;
int heightOffset = 0;
@@ -285,7 +281,6 @@ BaseSurface *BaseFontTT::renderTextToTexture(const WideString &text, int width,
}
BaseSurface *retSurface = _gameRef->_renderer->createSurface();
- Graphics::Surface *convertedSurface = surface->convertTo(_gameRef->_renderer->getPixelFormat());
if (_deletableFont) {
// Reconstruct the alpha channel of the font.
@@ -295,22 +290,20 @@ BaseSurface *BaseFontTT::renderTextToTexture(const WideString &text, int width,
// to its original alpha value.
Graphics::PixelFormat format = _gameRef->_renderer->getPixelFormat();
- uint32 *pixels = (uint32 *)convertedSurface->getPixels();
+ uint32 *pixels = (uint32 *)surface->getPixels();
// This is a Surface we created ourselves, so no empty space between rows.
for (int i = 0; i < surface->w * surface->h; ++i) {
uint8 a, r, g, b;
format.colorToRGB(*pixels, r, g, b);
a = r;
- *pixels++ = format.ARGBToColor(a, r, g, b);
+ *pixels++ = format.ARGBToColor(a, r, g, b);
}
}
- retSurface->putSurface(*convertedSurface, true);
- convertedSurface->free();
+ retSurface->putSurface(*surface, true);
surface->free();
delete surface;
- delete convertedSurface;
return retSurface;
// TODO: _isUnderline, _isBold, _isItalic, _isStriked
}
@@ -614,7 +607,7 @@ bool BaseFontTT::initFont() {
if (themeArchive->hasFile(fallbackFilename)) {
file = nullptr;
file = themeArchive->createReadStreamForMember(fallbackFilename);
- _deletableFont = Graphics::loadTTFFont(*file, 96, _fontHeight); // Use the same dpi as WME (96 vs 72).
+ _deletableFont = Graphics::loadTTFFont(*file, _fontHeight, 96); // Use the same dpi as WME (96 vs 72).
_font = _deletableFont;
}
// We're not using BaseFileManager, so clean up after ourselves:
@@ -632,6 +625,8 @@ bool BaseFontTT::initFont() {
warning("Looking for %s", fontName.c_str());
_font = FontMan.getFontByName(fontName);
}
+#else
+ warning("BaseFontTT::InitFont - FreeType2-support not compiled in, TTF-fonts will not be loaded");
#endif // USE_FREETYPE2
// Fallback4: Just use the Big GUI-font. (REALLY undesireable)
diff --git a/engines/wintermute/base/font/base_font_truetype.h b/engines/wintermute/base/font/base_font_truetype.h
index edb41a155f..c0349eccd4 100644
--- a/engines/wintermute/base/font/base_font_truetype.h
+++ b/engines/wintermute/base/font/base_font_truetype.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/gfx/base_image.cpp b/engines/wintermute/base/gfx/base_image.cpp
index d0dbae352e..e676fafdbf 100644
--- a/engines/wintermute/base/gfx/base_image.cpp
+++ b/engines/wintermute/base/gfx/base_image.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -29,11 +29,11 @@
#include "engines/wintermute/base/gfx/base_image.h"
#include "engines/wintermute/base/base_file_manager.h"
#include "engines/wintermute/graphics/transparent_surface.h"
-#include "graphics/decoders/png.h"
-#include "graphics/decoders/jpeg.h"
-#include "graphics/decoders/bmp.h"
-#include "graphics/decoders/tga.h"
#include "graphics/surface.h"
+#include "image/png.h"
+#include "image/jpeg.h"
+#include "image/bmp.h"
+#include "image/tga.h"
#include "common/textconsole.h"
#include "common/stream.h"
#include "common/system.h"
@@ -62,16 +62,14 @@ BaseImage::~BaseImage() {
bool BaseImage::loadFile(const Common::String &filename) {
_filename = filename;
_filename.toLowercase();
- if (filename.hasPrefix("savegame:")) {
- _decoder = new Graphics::BitmapDecoder();
+ if (filename.hasPrefix("savegame:") || _filename.hasSuffix(".bmp")) {
+ _decoder = new Image::BitmapDecoder();
} else if (_filename.hasSuffix(".png")) {
- _decoder = new Graphics::PNGDecoder();
- } else if (_filename.hasSuffix(".bmp")) {
- _decoder = new Graphics::BitmapDecoder();
+ _decoder = new Image::PNGDecoder();
} else if (_filename.hasSuffix(".tga")) {
- _decoder = new Graphics::TGADecoder();
+ _decoder = new Image::TGADecoder();
} else if (_filename.hasSuffix(".jpg")) {
- _decoder = new Graphics::JPEGDecoder();
+ _decoder = new Image::JPEGDecoder();
} else {
error("BaseImage::loadFile : Unsupported fileformat %s", filename.c_str());
}
diff --git a/engines/wintermute/base/gfx/base_image.h b/engines/wintermute/base/gfx/base_image.h
index 4b04fd1252..56be9fc453 100644
--- a/engines/wintermute/base/gfx/base_image.h
+++ b/engines/wintermute/base/gfx/base_image.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,11 +31,14 @@
#include "graphics/surface.h"
#include "graphics/pixelformat.h"
-#include "graphics/decoders/image_decoder.h"
#include "common/endian.h"
#include "common/str.h"
#include "common/stream.h"
+namespace Image {
+class ImageDecoder;
+}
+
namespace Wintermute {
class BaseSurface;
class BaseFileManager;
@@ -60,7 +63,7 @@ public:
void copyFrom(const Graphics::Surface *surface);
private:
Common::String _filename;
- Graphics::ImageDecoder *_decoder;
+ Image::ImageDecoder *_decoder;
const Graphics::Surface *_surface;
Graphics::Surface *_deletableSurface;
const byte *_palette;
diff --git a/engines/wintermute/base/gfx/base_renderer.cpp b/engines/wintermute/base/gfx/base_renderer.cpp
index 858a7fc6dc..0f33fc2c43 100644
--- a/engines/wintermute/base/gfx/base_renderer.cpp
+++ b/engines/wintermute/base/gfx/base_renderer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/gfx/base_renderer.h b/engines/wintermute/base/gfx/base_renderer.h
index b6615bc8fc..42ff2cb9e1 100644
--- a/engines/wintermute/base/gfx/base_renderer.h
+++ b/engines/wintermute/base/gfx/base_renderer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/gfx/base_surface.cpp b/engines/wintermute/base/gfx/base_surface.cpp
index 19639c0c33..ec42a63c77 100644
--- a/engines/wintermute/base/gfx/base_surface.cpp
+++ b/engines/wintermute/base/gfx/base_surface.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/gfx/base_surface.h b/engines/wintermute/base/gfx/base_surface.h
index a53748e9aa..7bd9bcbaea 100644
--- a/engines/wintermute/base/gfx/base_surface.h
+++ b/engines/wintermute/base/gfx/base_surface.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/gfx/osystem/base_render_osystem.cpp b/engines/wintermute/base/gfx/osystem/base_render_osystem.cpp
index 35918b8e90..601fcc0ffa 100644
--- a/engines/wintermute/base/gfx/osystem/base_render_osystem.cpp
+++ b/engines/wintermute/base/gfx/osystem/base_render_osystem.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -268,7 +268,7 @@ Graphics::PixelFormat BaseRenderOSystem::getPixelFormat() const {
return _renderSurface->format;
}
-void BaseRenderOSystem::drawSurface(BaseSurfaceOSystem *owner, const Graphics::Surface *surf, Common::Rect *srcRect, Common::Rect *dstRect, TransformStruct &transform) {
+void BaseRenderOSystem::drawSurface(BaseSurfaceOSystem *owner, const Graphics::Surface *surf, Common::Rect *srcRect, Common::Rect *dstRect, TransformStruct &transform) {
if (_disableDirtyRects) {
RenderTicket *ticket = new RenderTicket(owner, surf, srcRect, dstRect, transform);
@@ -376,7 +376,7 @@ void BaseRenderOSystem::addDirtyRect(const Common::Rect &rect) {
void BaseRenderOSystem::drawTickets() {
RenderQueueIterator it = _renderQueue.begin();
// Clean out the old tickets
- // Note: We draw invalid tickets too, otherwise we wouldn't be honouring
+ // Note: We draw invalid tickets too, otherwise we wouldn't be honoring
// the draw request they obviously made BEFORE becoming invalid, either way
// we have a copy of their data, so their invalidness won't affect us.
while (it != _renderQueue.end()) {
@@ -402,7 +402,7 @@ void BaseRenderOSystem::drawTickets() {
it = _renderQueue.begin();
_lastFrameIter = _renderQueue.end();
// A special case: If the screen has one giant OPAQUE rect to be drawn, then we skip filling
- // the background colour. Typical use-case: Fullscreen FMVs.
+ // the background color. Typical use-case: Fullscreen FMVs.
// Caveat: The FPS-counter will invalidate this.
if (it != _lastFrameIter && _renderQueue.front() == _renderQueue.back() && (*it)->_transform._alphaDisable == true) {
// If our single opaque rect fills the dirty rect, we can skip filling.
diff --git a/engines/wintermute/base/gfx/osystem/base_render_osystem.h b/engines/wintermute/base/gfx/osystem/base_render_osystem.h
index 8996c8b2e8..c9b8a52282 100644
--- a/engines/wintermute/base/gfx/osystem/base_render_osystem.h
+++ b/engines/wintermute/base/gfx/osystem/base_render_osystem.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp b/engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp
index c33e8ba54b..983f9c1296 100644
--- a/engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp
+++ b/engines/wintermute/base/gfx/osystem/base_surface_osystem.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -32,10 +32,6 @@
#include "engines/wintermute/base/gfx/osystem/base_render_osystem.h"
#include "engines/wintermute/base/gfx/base_image.h"
#include "engines/wintermute/platform_osystem.h"
-#include "graphics/decoders/png.h"
-#include "graphics/decoders/bmp.h"
-#include "graphics/decoders/jpeg.h"
-#include "graphics/decoders/tga.h"
#include "engines/wintermute/graphics/transparent_surface.h"
#include "engines/wintermute/graphics/transform_tools.h"
#include "graphics/pixelformat.h"
@@ -341,7 +337,7 @@ bool BaseSurfaceOSystem::display(int x, int y, Rect32 rect, TSpriteBlendMode ble
//////////////////////////////////////////////////////////////////////////
bool BaseSurfaceOSystem::displayTrans(int x, int y, Rect32 rect, uint32 alpha, TSpriteBlendMode blendMode, bool mirrorX, bool mirrorY) {
_rotation = 0;
- return drawSprite(x, y, &rect, nullptr, TransformStruct(kDefaultZoomX, kDefaultZoomY, blendMode, alpha, mirrorX, mirrorY));
+ return drawSprite(x, y, &rect, nullptr, TransformStruct(kDefaultZoomX, kDefaultZoomY, blendMode, alpha, mirrorX, mirrorY));
}
//////////////////////////////////////////////////////////////////////////
@@ -441,13 +437,13 @@ bool BaseSurfaceOSystem::drawSprite(int x, int y, Rect32 *rect, Rect32 *newRect,
transform._alphaDisable = true;
}
- renderer->drawSurface(this, _surface, &srcRect, &position, transform);
+ renderer->drawSurface(this, _surface, &srcRect, &position, transform);
return STATUS_OK;
}
bool BaseSurfaceOSystem::putSurface(const Graphics::Surface &surface, bool hasAlpha) {
_loaded = true;
- if (surface.format == _surface->format && surface.w == _surface->w && surface.h == _surface->h) {
+ if (surface.format == _surface->format && surface.pitch == _surface->pitch && surface.h == _surface->h) {
const byte *src = (const byte *)surface.getBasePtr(0, 0);
byte *dst = (byte *)_surface->getBasePtr(0, 0);
memcpy(dst, src, surface.pitch * surface.h);
diff --git a/engines/wintermute/base/gfx/osystem/base_surface_osystem.h b/engines/wintermute/base/gfx/osystem/base_surface_osystem.h
index 67f45f66db..4a05b2c66c 100644
--- a/engines/wintermute/base/gfx/osystem/base_surface_osystem.h
+++ b/engines/wintermute/base/gfx/osystem/base_surface_osystem.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/gfx/osystem/render_ticket.cpp b/engines/wintermute/base/gfx/osystem/render_ticket.cpp
index 1cd35e3b04..f8579dfd41 100644
--- a/engines/wintermute/base/gfx/osystem/render_ticket.cpp
+++ b/engines/wintermute/base/gfx/osystem/render_ticket.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -86,9 +86,9 @@ RenderTicket::~RenderTicket() {
bool RenderTicket::operator==(const RenderTicket &t) const {
if ((t._owner != _owner) ||
- (t._transform != _transform) ||
+ (t._transform != _transform) ||
(t._dstRect != _dstRect) ||
- (t._srcRect != _srcRect)
+ (t._srcRect != _srcRect)
) {
return false;
}
diff --git a/engines/wintermute/base/gfx/osystem/render_ticket.h b/engines/wintermute/base/gfx/osystem/render_ticket.h
index e824c09fe7..de95273021 100644
--- a/engines/wintermute/base/gfx/osystem/render_ticket.h
+++ b/engines/wintermute/base/gfx/osystem/render_ticket.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -41,17 +41,17 @@ class BaseSurfaceOSystem;
* A render ticket is a collection of the data and draw specifications made
* for a single draw-call in the OSystem-backend for WME. The ticket additionally
* holds the order in which this call was made, so that it can be detected if
- * the same call is done in the following frame. Thus allowing us to potentially
- * skip drawing the same region again, unless anything has changed. Since a surface
- * can have a potentially large amount of draw-calls made to it, at varying rotation,
- * zoom, and crop-levels we also need to hold a copy of the necessary data.
- * (Video-surfaces may even change their data). The promise that is made when a ticket
- * is created is that what the state was of the surface at THAT point, is what will end
+ * the same call is done in the following frame. Thus allowing us to potentially
+ * skip drawing the same region again, unless anything has changed. Since a surface
+ * can have a potentially large amount of draw-calls made to it, at varying rotation,
+ * zoom, and crop-levels we also need to hold a copy of the necessary data.
+ * (Video-surfaces may even change their data). The promise that is made when a ticket
+ * is created is that what the state was of the surface at THAT point, is what will end
* up on screen at flip() time.
*/
class RenderTicket {
public:
- RenderTicket(BaseSurfaceOSystem *owner, const Graphics::Surface *surf, Common::Rect *srcRect, Common::Rect *dstRest, TransformStruct transform);
+ RenderTicket(BaseSurfaceOSystem *owner, const Graphics::Surface *surf, Common::Rect *srcRect, Common::Rect *dstRest, TransformStruct transform);
RenderTicket() : _isValid(true), _wantsDraw(false), _transform(TransformStruct()) {}
~RenderTicket();
const Graphics::Surface *getSurface() const { return _surface; }
@@ -65,8 +65,8 @@ public:
bool _isValid;
bool _wantsDraw;
- TransformStruct _transform;
-
+ TransformStruct _transform;
+
BaseSurfaceOSystem *_owner;
bool operator==(const RenderTicket &a) const;
const Common::Rect *getSrcRect() const { return &_srcRect; }
diff --git a/engines/wintermute/base/particles/part_emitter.cpp b/engines/wintermute/base/particles/part_emitter.cpp
index 061352b60f..c64a099cee 100644
--- a/engines/wintermute/base/particles/part_emitter.cpp
+++ b/engines/wintermute/base/particles/part_emitter.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/particles/part_emitter.h b/engines/wintermute/base/particles/part_emitter.h
index 94b4dc8126..3fe24b52a0 100644
--- a/engines/wintermute/base/particles/part_emitter.h
+++ b/engines/wintermute/base/particles/part_emitter.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/particles/part_force.cpp b/engines/wintermute/base/particles/part_force.cpp
index 39d98c182e..c2e0832e72 100644
--- a/engines/wintermute/base/particles/part_force.cpp
+++ b/engines/wintermute/base/particles/part_force.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/particles/part_force.h b/engines/wintermute/base/particles/part_force.h
index cdb1ce40f9..11862d08ed 100644
--- a/engines/wintermute/base/particles/part_force.h
+++ b/engines/wintermute/base/particles/part_force.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/particles/part_particle.cpp b/engines/wintermute/base/particles/part_particle.cpp
index 11470561f0..97c81e49a5 100644
--- a/engines/wintermute/base/particles/part_particle.cpp
+++ b/engines/wintermute/base/particles/part_particle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/particles/part_particle.h b/engines/wintermute/base/particles/part_particle.h
index 281d87cf72..9019845a82 100644
--- a/engines/wintermute/base/particles/part_particle.h
+++ b/engines/wintermute/base/particles/part_particle.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/save_thumb_helper.cpp b/engines/wintermute/base/save_thumb_helper.cpp
index 77514849a6..b1d9330263 100644
--- a/engines/wintermute/base/save_thumb_helper.cpp
+++ b/engines/wintermute/base/save_thumb_helper.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/save_thumb_helper.h b/engines/wintermute/base/save_thumb_helper.h
index 44792e3d75..0d32d3ed9f 100644
--- a/engines/wintermute/base/save_thumb_helper.h
+++ b/engines/wintermute/base/save_thumb_helper.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/saveload.cpp b/engines/wintermute/base/saveload.cpp
index 402041cda4..85553a2a53 100644
--- a/engines/wintermute/base/saveload.cpp
+++ b/engines/wintermute/base/saveload.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/saveload.h b/engines/wintermute/base/saveload.h
index 15d4d86b26..31f5841f41 100644
--- a/engines/wintermute/base/saveload.h
+++ b/engines/wintermute/base/saveload.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/dcscript.h b/engines/wintermute/base/scriptables/dcscript.h
index d6bb3cd176..8047baaa68 100644
--- a/engines/wintermute/base/scriptables/dcscript.h
+++ b/engines/wintermute/base/scriptables/dcscript.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script.cpp b/engines/wintermute/base/scriptables/script.cpp
index 5e4ae3ea95..f0b868209d 100644
--- a/engines/wintermute/base/scriptables/script.cpp
+++ b/engines/wintermute/base/scriptables/script.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script.h b/engines/wintermute/base/scriptables/script.h
index 488ff63606..1edeae5b55 100644
--- a/engines/wintermute/base/scriptables/script.h
+++ b/engines/wintermute/base/scriptables/script.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_engine.cpp b/engines/wintermute/base/scriptables/script_engine.cpp
index bb819b23e4..cdf55a304c 100644
--- a/engines/wintermute/base/scriptables/script_engine.cpp
+++ b/engines/wintermute/base/scriptables/script_engine.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_engine.h b/engines/wintermute/base/scriptables/script_engine.h
index 622b3c4b94..bdb139e1f8 100644
--- a/engines/wintermute/base/scriptables/script_engine.h
+++ b/engines/wintermute/base/scriptables/script_engine.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_array.cpp b/engines/wintermute/base/scriptables/script_ext_array.cpp
index c4ad045557..7431029cbf 100644
--- a/engines/wintermute/base/scriptables/script_ext_array.cpp
+++ b/engines/wintermute/base/scriptables/script_ext_array.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_array.h b/engines/wintermute/base/scriptables/script_ext_array.h
index e6381a011e..2daa58a241 100644
--- a/engines/wintermute/base/scriptables/script_ext_array.h
+++ b/engines/wintermute/base/scriptables/script_ext_array.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_date.cpp b/engines/wintermute/base/scriptables/script_ext_date.cpp
index 6b9c5ff68a..89cdcde0af 100644
--- a/engines/wintermute/base/scriptables/script_ext_date.cpp
+++ b/engines/wintermute/base/scriptables/script_ext_date.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_date.h b/engines/wintermute/base/scriptables/script_ext_date.h
index 0ccf093a7b..46a23a36fa 100644
--- a/engines/wintermute/base/scriptables/script_ext_date.h
+++ b/engines/wintermute/base/scriptables/script_ext_date.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_file.cpp b/engines/wintermute/base/scriptables/script_ext_file.cpp
index dcd4f01f7c..36a624367c 100644
--- a/engines/wintermute/base/scriptables/script_ext_file.cpp
+++ b/engines/wintermute/base/scriptables/script_ext_file.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_file.h b/engines/wintermute/base/scriptables/script_ext_file.h
index a1298929f2..4994ef9c97 100644
--- a/engines/wintermute/base/scriptables/script_ext_file.h
+++ b/engines/wintermute/base/scriptables/script_ext_file.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_math.cpp b/engines/wintermute/base/scriptables/script_ext_math.cpp
index ec53b983e7..4d770d4c51 100644
--- a/engines/wintermute/base/scriptables/script_ext_math.cpp
+++ b/engines/wintermute/base/scriptables/script_ext_math.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_math.h b/engines/wintermute/base/scriptables/script_ext_math.h
index 1aa274a96f..5354e52f1e 100644
--- a/engines/wintermute/base/scriptables/script_ext_math.h
+++ b/engines/wintermute/base/scriptables/script_ext_math.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_mem_buffer.cpp b/engines/wintermute/base/scriptables/script_ext_mem_buffer.cpp
index 39f8b58644..276d1fb211 100644
--- a/engines/wintermute/base/scriptables/script_ext_mem_buffer.cpp
+++ b/engines/wintermute/base/scriptables/script_ext_mem_buffer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_mem_buffer.h b/engines/wintermute/base/scriptables/script_ext_mem_buffer.h
index 4aad8b6484..740ff1d23f 100644
--- a/engines/wintermute/base/scriptables/script_ext_mem_buffer.h
+++ b/engines/wintermute/base/scriptables/script_ext_mem_buffer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_object.cpp b/engines/wintermute/base/scriptables/script_ext_object.cpp
index a72b244f0a..cf1b788ede 100644
--- a/engines/wintermute/base/scriptables/script_ext_object.cpp
+++ b/engines/wintermute/base/scriptables/script_ext_object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_object.h b/engines/wintermute/base/scriptables/script_ext_object.h
index 566111292a..04878be85e 100644
--- a/engines/wintermute/base/scriptables/script_ext_object.h
+++ b/engines/wintermute/base/scriptables/script_ext_object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_ext_string.cpp b/engines/wintermute/base/scriptables/script_ext_string.cpp
index 65bec03bc1..bc0c658c57 100644
--- a/engines/wintermute/base/scriptables/script_ext_string.cpp
+++ b/engines/wintermute/base/scriptables/script_ext_string.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -298,7 +298,9 @@ bool SXString::scCallMethod(ScScript *script, ScStack *stack, ScStack *thisStack
uint32 start = 0;
for(uint32 i = 0; i < str.size() + 1; i++) {
- uint32 ch = str[i];
+ // The [] operator doesn't allow access to the zero code terminator
+ // (bug #6531)
+ uint32 ch = (i == str.size()) ? '\0' : str[i];
if (ch =='\0' || delims.contains(ch)) {
if (i != start) {
parts.push_back(WideString(str.c_str() + start, i - start + 1));
diff --git a/engines/wintermute/base/scriptables/script_ext_string.h b/engines/wintermute/base/scriptables/script_ext_string.h
index 7a95c59b4c..b28f2b24c1 100644
--- a/engines/wintermute/base/scriptables/script_ext_string.h
+++ b/engines/wintermute/base/scriptables/script_ext_string.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_stack.cpp b/engines/wintermute/base/scriptables/script_stack.cpp
index c828b3918e..fe765bfb68 100644
--- a/engines/wintermute/base/scriptables/script_stack.cpp
+++ b/engines/wintermute/base/scriptables/script_stack.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_stack.h b/engines/wintermute/base/scriptables/script_stack.h
index ee04485a51..fe7afae3f9 100644
--- a/engines/wintermute/base/scriptables/script_stack.h
+++ b/engines/wintermute/base/scriptables/script_stack.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_value.cpp b/engines/wintermute/base/scriptables/script_value.cpp
index 52367646a5..4b84574257 100644
--- a/engines/wintermute/base/scriptables/script_value.cpp
+++ b/engines/wintermute/base/scriptables/script_value.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/scriptables/script_value.h b/engines/wintermute/base/scriptables/script_value.h
index 90ad9f182a..6130553645 100644
--- a/engines/wintermute/base/scriptables/script_value.h
+++ b/engines/wintermute/base/scriptables/script_value.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/sound/base_sound.cpp b/engines/wintermute/base/sound/base_sound.cpp
index f9cd59e4fb..fa452cc0d6 100644
--- a/engines/wintermute/base/sound/base_sound.cpp
+++ b/engines/wintermute/base/sound/base_sound.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/sound/base_sound.h b/engines/wintermute/base/sound/base_sound.h
index 0a984d240a..ceeb81c1bf 100644
--- a/engines/wintermute/base/sound/base_sound.h
+++ b/engines/wintermute/base/sound/base_sound.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/sound/base_sound_buffer.cpp b/engines/wintermute/base/sound/base_sound_buffer.cpp
index 85ba52e334..7ec68ea752 100644
--- a/engines/wintermute/base/sound/base_sound_buffer.cpp
+++ b/engines/wintermute/base/sound/base_sound_buffer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/sound/base_sound_buffer.h b/engines/wintermute/base/sound/base_sound_buffer.h
index c52b34fb23..94bc8dc6ad 100644
--- a/engines/wintermute/base/sound/base_sound_buffer.h
+++ b/engines/wintermute/base/sound/base_sound_buffer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/sound/base_sound_manager.cpp b/engines/wintermute/base/sound/base_sound_manager.cpp
index 68e62f25b0..539dc0dd1d 100644
--- a/engines/wintermute/base/sound/base_sound_manager.cpp
+++ b/engines/wintermute/base/sound/base_sound_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/sound/base_sound_manager.h b/engines/wintermute/base/sound/base_sound_manager.h
index 5993a05001..30d943c264 100644
--- a/engines/wintermute/base/sound/base_sound_manager.h
+++ b/engines/wintermute/base/sound/base_sound_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/timer.cpp b/engines/wintermute/base/timer.cpp
index f1f79af760..c2ecc1469a 100644
--- a/engines/wintermute/base/timer.cpp
+++ b/engines/wintermute/base/timer.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/base/timer.h b/engines/wintermute/base/timer.h
index 4099c6c825..768bea4253 100644
--- a/engines/wintermute/base/timer.h
+++ b/engines/wintermute/base/timer.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/coll_templ.h b/engines/wintermute/coll_templ.h
index 307989e58d..74e266168f 100644
--- a/engines/wintermute/coll_templ.h
+++ b/engines/wintermute/coll_templ.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/dcgf.h b/engines/wintermute/dcgf.h
index 3db443965e..78503b8c3b 100644
--- a/engines/wintermute/dcgf.h
+++ b/engines/wintermute/dcgf.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/dctypes.h b/engines/wintermute/dctypes.h
index 4371ee4889..33e1cc4018 100644
--- a/engines/wintermute/dctypes.h
+++ b/engines/wintermute/dctypes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/debugger.cpp b/engines/wintermute/debugger.cpp
index 8c8b8255ab..51fd74e300 100644
--- a/engines/wintermute/debugger.cpp
+++ b/engines/wintermute/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/debugger.h b/engines/wintermute/debugger.h
index 6fbbb084f0..625da0ce41 100644
--- a/engines/wintermute/debugger.h
+++ b/engines/wintermute/debugger.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/detection.cpp b/engines/wintermute/detection.cpp
index f4bd437803..a659c434d0 100644
--- a/engines/wintermute/detection.cpp
+++ b/engines/wintermute/detection.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -107,11 +107,11 @@ public:
}
}
// Prefix to avoid collisions with actually known games
- name = "wmefan-" + name;
+ name = "wmeunk-" + name;
Common::strlcpy(s_fallbackGameIdBuf, name.c_str(), sizeof(s_fallbackGameIdBuf) - 1);
s_fallbackDesc.gameid = s_fallbackGameIdBuf;
if (caption != name) {
- caption += " (fangame) ";
+ caption += " (unknown version) ";
char *offset = s_fallbackGameIdBuf + name.size() + 1;
uint32 remainingLength = (sizeof(s_fallbackGameIdBuf) - 1) - (name.size() + 1);
Common::strlcpy(offset, caption.c_str(), remainingLength);
@@ -185,7 +185,7 @@ public:
} // End of namespace Wintermute
#if PLUGIN_ENABLED_DYNAMIC(WINTERMUTE)
-REGISTER_PLUGIN_DYNAMIC(WINTERMUTE, PLUGIN_TYPE_ENGINE, Wintermute::WintermuteMetaEngine);
+ REGISTER_PLUGIN_DYNAMIC(WINTERMUTE, PLUGIN_TYPE_ENGINE, Wintermute::WintermuteMetaEngine);
#else
-REGISTER_PLUGIN_STATIC(WINTERMUTE, PLUGIN_TYPE_ENGINE, Wintermute::WintermuteMetaEngine);
+ REGISTER_PLUGIN_STATIC(WINTERMUTE, PLUGIN_TYPE_ENGINE, Wintermute::WintermuteMetaEngine);
#endif
diff --git a/engines/wintermute/detection_tables.h b/engines/wintermute/detection_tables.h
index e7f2ed90a9..6556d3b34a 100644
--- a/engines/wintermute/detection_tables.h
+++ b/engines/wintermute/detection_tables.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -38,6 +38,7 @@ static const PlainGameDescriptor wintermuteGames[] = {
{"carolreed8", "Carol Reed 8 - Amber's Blood"},
{"carolreed9", "Carol Reed 9 - Cold Case Summer"},
{"chivalry", "Chivalry is Not Dead"},
+ {"corrosion", "Corrosion: Cold Winter Waiting"},
{"deadcity", "Dead City"},
{"dreaming", "Des Reves Elastiques Avec Mille Insectes Nommes Georges"},
{"dirtysplit", "Dirty Split"},
@@ -58,6 +59,8 @@ static const PlainGameDescriptor wintermuteGames[] = {
{"projectdoom", "Project: Doom"},
{"reversion1", "Reversion: The Escape"},
{"reversion2", "Reversion: The Meeting"},
+ {"rhiannon", "Rhiannon: Curse of the four Branches"},
+ {"ritter", "1 1/2 Ritter: Auf der Suche nach der hinreissenden Herzelinde"},
{"rosemary", "Rosemary"},
{"securanote", "Securanote"},
{"shaban", "Shaban"},
@@ -70,6 +73,7 @@ static const PlainGameDescriptor wintermuteGames[] = {
{"twc", "the white chamber"},
{"wintermute", "Wintermute engine game"},
{"wtetris", "Wilma Tetris"},
+ {"zilm", "Zilm: A Game of Reflex"},
{0, 0}
};
@@ -124,6 +128,16 @@ static const ADGameDescription gameDescriptions[] = {
ADGF_UNSTABLE,
GUIO0()
},
+ // Bickadoodle (download from http://aethericgames.com/games/bickadoodle/download-bickadoodle/)
+ {
+ "bickadoodle",
+ "",
+ AD_ENTRY1s("data.dcp", "1584d83577c32add0fce27fae91141a2", 35337728),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_UNSTABLE,
+ GUIO0()
+ },
// Book of Gron Part One
{
"bookofgron",
@@ -237,6 +251,16 @@ static const ADGameDescription gameDescriptions[] = {
ADGF_TESTING,
GUIO0()
},
+ // Corrosion: Cold Winter Waiting
+ {
+ "corrosion",
+ "",
+ AD_ENTRY1s("data.dcp", "ae885b1a8faa0b27f43c0e8f0df02fc9", 525931618),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_TESTING,
+ GUIO0()
+ },
// Dead City (Czech)
{
"deadcity",
@@ -428,7 +452,21 @@ static const ADGameDescription gameDescriptions[] = {
ADGF_UNSTABLE,
GUIO0()
},
- // Ghosts in the Sheet
+ // Ghost in the Sheet
+ {
+ "ghostsheet",
+ "",
+ {
+ {"english.dcp", 0, "e6d0aad2c89996bcabe416105a3d6d3a", 12221017},
+ {"data.dcp", 0, "b2f8b05328e4881e15e98e845b63f451", 168003},
+ AD_LISTEND
+ },
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_UNSTABLE,
+ GUIO0()
+ },
+ // Ghost in the Sheet (Demo)
{
"ghostsheet",
"Demo",
@@ -530,6 +568,16 @@ static const ADGameDescription gameDescriptions[] = {
ADGF_UNSTABLE,
GUIO0()
},
+ // J.U.L.I.A. (English, Bundle in a box-version)
+ {
+ "julia",
+ "Version 1.2",
+ AD_ENTRY1s("data.dcp", "fe90023ccc22f35185b40b910e0d03a2", 10101373),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_UNSTABLE,
+ GUIO0()
+ },
// J.U.L.I.A. (English) (Demo)
{
"julia",
@@ -996,6 +1044,56 @@ static const ADGameDescription gameDescriptions[] = {
ADGF_UNSTABLE,
GUIO0()
},
+ // Reversion: The Meeting Version 2.0.2412 (Chinese)
+ {
+ "reversion2",
+ "Version 2.0.2412",
+ {
+ {"data.dcp", 0, "f4ffc4df24b7bebad56a24930f33a2bc", 255766600},
+ {"xlanguage_nz.dcp", 0, "17c79af4928e24484bee77a7e807cc2a", 10737127},
+ {"Linux.dcp", 0, "21858bd77dc86b03f701fd47900e2f51", 984535},
+ AD_LISTEND
+ },
+ Common::ZH_CNA,
+ Common::kPlatformLinux,
+ ADGF_UNSTABLE,
+ GUIO0()
+ },
+ // Reversion: The Meeting Version 2.0.2412 (English)
+ {
+ "reversion2",
+ "Version 2.0.2412",
+ {
+ {"data.dcp", 0, "f4ffc4df24b7bebad56a24930f33a2bc", 255766600},
+ {"xlanguage_en.dcp", 0, "0598bf752ce93b42bcaf1094df537c7b", 8533057},
+ {"Linux.dcp", 0, "21858bd77dc86b03f701fd47900e2f51", 984535},
+ AD_LISTEND
+ },
+ Common::EN_ANY,
+ Common::kPlatformLinux,
+ ADGF_UNSTABLE,
+ GUIO0()
+ },
+ // Rhiannon: Curse of the four Branches
+ {
+ "rhiannon",
+ "",
+ AD_ENTRY1s("data.dcp", "870f348900b735f1cc79c0608ce32b0e", 1046169851),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_UNSTABLE,
+ GUIO0()
+ },
+ // 1 1/2 Ritter: Auf der Suche nach der hinreissenden Herzelinde
+ {
+ "ritter",
+ "",
+ AD_ENTRY1s("data.dcp", "5ac416cee605d3a30f4d59687b1cdab2", 364260278),
+ Common::DE_DEU,
+ Common::kPlatformWindows,
+ ADGF_UNSTABLE,
+ GUIO0()
+ },
// Rosemary
{
"rosemary",
@@ -1108,6 +1206,16 @@ static const ADGameDescription gameDescriptions[] = {
ADGF_UNSTABLE,
GUIO0()
},
+ // Zilm: A Game of Reflex 1.0
+ {
+ "Zilm",
+ "1.0",
+ AD_ENTRY1s("data.dcp", "098dffaf03d8adbb4cb5633e4733e63c", 351726),
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ ADGF_UNSTABLE,
+ GUIO0()
+ },
AD_TABLE_END_MARKER
};
diff --git a/engines/wintermute/graphics/transform_struct.cpp b/engines/wintermute/graphics/transform_struct.cpp
index 822c06f42f..9483975d94 100644
--- a/engines/wintermute/graphics/transform_struct.cpp
+++ b/engines/wintermute/graphics/transform_struct.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -40,47 +40,47 @@ void TransformStruct::init(Point32 zoom, uint32 angle, Point32 hotspot, bool alp
}
TransformStruct::TransformStruct(int32 zoomX, int32 zoomY, uint32 angle, int32 hotspotX, int32 hotspotY, TSpriteBlendMode blendMode, uint32 rgbaMod, bool mirrorX, bool mirrorY, int32 offsetX, int32 offsetY) {
- init(Point32(zoomX, zoomY),
- angle,
- Point32(hotspotX, hotspotY),
- false,
- blendMode,
- rgbaMod,
- mirrorX, mirrorY,
+ init(Point32(zoomX, zoomY),
+ angle,
+ Point32(hotspotX, hotspotY),
+ false,
+ blendMode,
+ rgbaMod,
+ mirrorX, mirrorY,
Point32(offsetX, offsetY));
}
TransformStruct::TransformStruct(float zoomX, float zoomY, uint32 angle, int32 hotspotX, int32 hotspotY, TSpriteBlendMode blendMode, uint32 rgbaMod, bool mirrorX, bool mirrorY, int32 offsetX, int32 offsetY) {
- init(Point32((int32)(zoomX / 100.0 * kDefaultZoomX),
- (int32)(zoomY / 100.0 * kDefaultZoomY)),
- angle,
- Point32(hotspotX, hotspotY),
- false,
- blendMode,
- rgbaMod,
- mirrorX, mirrorY,
+ init(Point32((int32)(zoomX / 100.0 * kDefaultZoomX),
+ (int32)(zoomY / 100.0 * kDefaultZoomY)),
+ angle,
+ Point32(hotspotX, hotspotY),
+ false,
+ blendMode,
+ rgbaMod,
+ mirrorX, mirrorY,
Point32(offsetX, offsetY));
}
TransformStruct::TransformStruct(int32 zoomX, int32 zoomY, TSpriteBlendMode blendMode, uint32 rgbaMod, bool mirrorX, bool mirrorY) {
- init(Point32(zoomX, zoomY),
- kDefaultAngle,
- Point32(kDefaultHotspotX, kDefaultHotspotY),
- false,
- blendMode,
- rgbaMod,
- mirrorX,
- mirrorY,
+ init(Point32(zoomX, zoomY),
+ kDefaultAngle,
+ Point32(kDefaultHotspotX, kDefaultHotspotY),
+ false,
+ blendMode,
+ rgbaMod,
+ mirrorX,
+ mirrorY,
Point32(kDefaultOffsetX, kDefaultOffsetY));
}
TransformStruct::TransformStruct(int32 zoomX, int32 zoomY, uint32 angle, int32 hotspotX, int32 hotspotY) {
- init(Point32(zoomX, zoomY),
- angle,
- Point32(hotspotX, hotspotY),
- true,
- BLEND_NORMAL,
- kDefaultRgbaMod,
+ init(Point32(zoomX, zoomY),
+ angle,
+ Point32(hotspotX, hotspotY),
+ true,
+ BLEND_NORMAL,
+ kDefaultRgbaMod,
false, false,
Point32(kDefaultOffsetX, kDefaultOffsetY));
}
@@ -99,13 +99,13 @@ TransformStruct::TransformStruct(int32 numTimesX, int32 numTimesY) {
}
TransformStruct::TransformStruct() {
- init(Point32(kDefaultZoomX, kDefaultZoomY),
- kDefaultAngle,
- Point32(kDefaultHotspotX, kDefaultHotspotY),
- true,
- BLEND_NORMAL,
- kDefaultRgbaMod,
- false, false,
+ init(Point32(kDefaultZoomX, kDefaultZoomY),
+ kDefaultAngle,
+ Point32(kDefaultHotspotX, kDefaultHotspotY),
+ true,
+ BLEND_NORMAL,
+ kDefaultRgbaMod,
+ false, false,
Point32(kDefaultOffsetX, kDefaultOffsetY));
}
diff --git a/engines/wintermute/graphics/transform_struct.h b/engines/wintermute/graphics/transform_struct.h
index d5a03ea331..f80b0967cb 100644
--- a/engines/wintermute/graphics/transform_struct.h
+++ b/engines/wintermute/graphics/transform_struct.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/graphics/transform_tools.cpp b/engines/wintermute/graphics/transform_tools.cpp
index dc92cdbbfd..7a009c26fa 100644
--- a/engines/wintermute/graphics/transform_tools.cpp
+++ b/engines/wintermute/graphics/transform_tools.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/graphics/transform_tools.h b/engines/wintermute/graphics/transform_tools.h
index 9a73e3b69f..e259db04e5 100644
--- a/engines/wintermute/graphics/transform_tools.h
+++ b/engines/wintermute/graphics/transform_tools.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/graphics/transparent_surface.cpp b/engines/wintermute/graphics/transparent_surface.cpp
index 79722439bd..5fe0d13766 100644
--- a/engines/wintermute/graphics/transparent_surface.cpp
+++ b/engines/wintermute/graphics/transparent_surface.cpp
@@ -84,20 +84,23 @@ void BlenderAdditive::blendPixel(byte ina, byte inr, byte ing, byte inb, byte *o
if (ina == 0) {
return;
} else {
- if (*cb != 255)
+ if (*cb != 255) {
*outb = MIN(*outb + ((inb * (*cb) * ina) >> 16), 255);
- else
+ } else {
*outb = MIN(*outb + (inb * ina >> 8), 255);
+ }
- if (*cg != 255)
+ if (*cg != 255) {
*outg = MIN(*outg + ((ing * (*cg) * ina) >> 16), 255);
- else
+ } else {
*outg = MIN(*outg + (ing * ina >> 8), 255);
+ }
- if (*cr != 255)
+ if (*cr != 255) {
*outr = MIN(*outr + ((inr * (*cr) * ina) >> 16), 255);
- else
+ } else {
*outr = MIN(*outr + (inr * ina >> 8), 255);
+ }
}
}
@@ -120,20 +123,23 @@ void BlenderSubtractive::blendPixel(byte ina, byte inr, byte ing, byte inb, byte
if (ina == 0) {
return;
} else {
- if (*cb != 255)
+ if (*cb != 255) {
*outb = MAX(*outb - ((inb * (*cb) * (*outb) * ina) >> 24), 0);
- else
+ } else {
*outb = MAX(*outb - (inb * (*outb) * ina >> 16), 0);
+ }
- if (*cg != 255)
+ if (*cg != 255) {
*outg = MAX(*outg - ((ing * (*cg) * (*outg) * ina) >> 24), 0);
- else
+ } else {
*outg = MAX(*outg - (ing * (*outg) * ina >> 16), 0);
+ }
- if (*cr != 255)
- *outr = MAX(*outr - ((inr * (*cr) * (*outr) * ina) >> 24), 0);
- else
+ if (*cr != 255) {
+ *outr = MAX(*outr - ((inr * (*cr) * (*outr) * ina) >> 24), 0);
+ } else {
*outr = MAX(*outr - (inr * (*outr) * ina >> 16), 0);
+ }
}
}
@@ -152,20 +158,23 @@ void BlenderNormal::blendPixel(byte ina, byte inr, byte ing, byte inb, byte *out
if (ina == 0) {
return;
} else if (ina == 255) {
- if (*cb != 255)
+ if (*cb != 255) {
*outb = (inb * (*cb)) >> 8;
- else
+ } else {
*outb = inb;
+ }
- if (*cr != 255)
+ if (*cr != 255) {
*outr = (inr * (*cr)) >> 8;
- else
+ } else {
*outr = inr;
+ }
- if (*cg != 255)
+ if (*cg != 255) {
*outg = (ing * (*cg)) >> 8;
- else
+ } else {
*outg = ing;
+ }
*outa = ina;
@@ -178,26 +187,29 @@ void BlenderNormal::blendPixel(byte ina, byte inr, byte ing, byte inb, byte *out
*outr = (*outr * (255 - ina) >> 8);
*outg = (*outg * (255 - ina) >> 8);
- if (*cb == 0)
+ if (*cb == 0) {
*outb = *outb;
- else if (*cb != 255)
+ } else if (*cb != 255) {
*outb = *outb + (inb * ina * (*cb) >> 16);
- else
+ } else {
*outb = *outb + (inb * ina >> 8);
+ }
- if (*cr == 0)
+ if (*cr == 0) {
*outr = *outr;
- else if (*cr != 255)
+ } else if (*cr != 255) {
*outr = *outr + (inr * ina * (*cr) >> 16);
- else
+ } else {
*outr = *outr + (inr * ina >> 8);
+ }
- if (*cg == 0)
+ if (*cg == 0) {
*outg = *outg;
- else if (*cg != 255)
+ } else if (*cg != 255) {
*outg = *outg + (ing * ina * (*cg) >> 16);
- else
+ } else {
*outg = *outg + (ing * ina >> 8);
+ }
return;
}
@@ -356,7 +368,7 @@ void doBlitBinaryFast(byte *ino, byte *outo, uint32 width, uint32 height, uint32
* @color colormod in 0xAARRGGBB format - 0xFFFFFFFF for no colormod
*/
-template<class Blender>
+template<class Blender>
void doBlit(byte *ino, byte *outo, uint32 width, uint32 height, uint32 pitch, int32 inStep, int32 inoStep, uint32 color) {
Blender b;
byte *in;
@@ -375,10 +387,10 @@ void doBlit(byte *ino, byte *outo, uint32 width, uint32 height, uint32 pitch, in
byte *outb = &out[TransparentSurface::kBIndex];
b.blendPixel(in[TransparentSurface::kAIndex],
- in[TransparentSurface::kRIndex],
- in[TransparentSurface::kGIndex],
- in[TransparentSurface::kBIndex],
- outa, outr, outg, outb);
+ in[TransparentSurface::kRIndex],
+ in[TransparentSurface::kGIndex],
+ in[TransparentSurface::kBIndex],
+ outa, outr, outg, outb);
in += inStep;
out += 4;
@@ -404,10 +416,10 @@ void doBlit(byte *ino, byte *outo, uint32 width, uint32 height, uint32 pitch, in
byte *outb = &out[TransparentSurface::kBIndex];
b.blendPixel(in[TransparentSurface::kAIndex],
- in[TransparentSurface::kRIndex],
- in[TransparentSurface::kGIndex],
- in[TransparentSurface::kBIndex],
- outa, outr, outg, outb, &ca, &cr, &cg, &cb);
+ in[TransparentSurface::kRIndex],
+ in[TransparentSurface::kGIndex],
+ in[TransparentSurface::kBIndex],
+ outa, outr, outg, outb, &ca, &cr, &cg, &cb);
in += inStep;
out += 4;
}
@@ -427,8 +439,9 @@ Common::Rect TransparentSurface::blit(Graphics::Surface &target, int posX, int p
// Check if we need to draw anything at all
int ca = (color >> 24) & 0xff;
- if (ca == 0)
+ if (ca == 0) {
return retSize;
+ }
// Create an encapsulating surface for the data
TransparentSurface srcImage(*this, false);
@@ -456,17 +469,19 @@ Common::Rect TransparentSurface::blit(Graphics::Surface &target, int posX, int p
srcImage.h = pPartRect->height();
debug(6, "Blit(%d, %d, %d, [%d, %d, %d, %d], %08x, %d, %d)", posX, posY, flipping,
- pPartRect->left, pPartRect->top, pPartRect->width(), pPartRect->height(), color, width, height);
+ pPartRect->left, pPartRect->top, pPartRect->width(), pPartRect->height(), color, width, height);
} else {
debug(6, "Blit(%d, %d, %d, [%d, %d, %d, %d], %08x, %d, %d)", posX, posY, flipping, 0, 0,
- srcImage.w, srcImage.h, color, width, height);
+ srcImage.w, srcImage.h, color, width, height);
}
- if (width == -1)
+ if (width == -1) {
width = srcImage.w;
- if (height == -1)
+ }
+ if (height == -1) {
height = srcImage.h;
+ }
#ifdef SCALING_TESTING
// Hardcode scaling to 66% to test scaling
@@ -516,7 +531,7 @@ Common::Rect TransparentSurface::blit(Graphics::Surface &target, int posX, int p
yp = img->h - 1;
}
- byte *ino= (byte *)img->getBasePtr(xp, yp);
+ byte *ino = (byte *)img->getBasePtr(xp, yp);
byte *outo = (byte *)target.getBasePtr(posX, posY);
if (color == 0xFFFFFFFF && blendMode == BLEND_NORMAL && _alphaMode == ALPHA_OPAQUE) {
@@ -649,8 +664,9 @@ TransparentSurface *TransparentSurface::rotoscale(const TransformStruct &transfo
target->create((uint16)dstW, (uint16)dstH, this->format);
- if (transform._zoom.x == 0 || transform._zoom.y == 0)
+ if (transform._zoom.x == 0 || transform._zoom.y == 0) {
return target;
+ }
uint32 invAngle = 360 - (transform._angle % 360);
float invCos = cos(invAngle * M_PI / 180.0);
@@ -684,8 +700,12 @@ TransparentSurface *TransparentSurface::rotoscale(const TransformStruct &transfo
for (int x = 0; x < dstW; x++) {
int dx = (sdx >> 16);
int dy = (sdy >> 16);
- if (flipx) dx = sw - dx;
- if (flipy) dy = sh - dy;
+ if (flipx) {
+ dx = sw - dx;
+ }
+ if (flipy) {
+ dy = sh - dy;
+ }
#ifdef ENABLE_BILINEAR
if ((dx > -1) && (dy > -1) && (dx < sw) && (dy < sh)) {
@@ -694,7 +714,7 @@ TransparentSurface *TransparentSurface::rotoscale(const TransformStruct &transfo
c00 = *sp;
sp += 1;
c01 = *sp;
- sp += (this->pitch/4);
+ sp += (this->pitch / 4);
c11 = *sp;
sp -= 1;
c10 = *sp;
@@ -764,12 +784,12 @@ TransparentSurface *TransparentSurface::scale(uint16 newWidth, uint16 newHeight)
bool flipx = false, flipy = false; // TODO: See mirroring comment in RenderTicket ctor
- int *sax = new int[dstW+1];
- int *say = new int[dstH+1];
+ int *sax = new int[dstW + 1];
+ int *say = new int[dstH + 1];
assert(sax && say);
/*
- * Precalculate row increments
+ * Precalculate row increments
*/
int spixelw = (srcW - 1);
int spixelh = (srcH - 1);
@@ -789,8 +809,8 @@ TransparentSurface *TransparentSurface::scale(uint16 newWidth, uint16 newHeight)
csx += sx;
/* Guard from overflows */
- if (csx > ssx) {
- csx = ssx;
+ if (csx > ssx) {
+ csx = ssx;
}
}
@@ -808,14 +828,16 @@ TransparentSurface *TransparentSurface::scale(uint16 newWidth, uint16 newHeight)
}
}
- const tColorRGBA *sp = (const tColorRGBA *) getBasePtr(0,0);
- tColorRGBA *dp = (tColorRGBA *) target->getBasePtr(0,0);
+ const tColorRGBA *sp = (const tColorRGBA *) getBasePtr(0, 0);
+ tColorRGBA *dp = (tColorRGBA *) target->getBasePtr(0, 0);
int spixelgap = srcW;
- if (flipx)
+ if (flipx) {
sp += spixelw;
- if (flipy)
+ }
+ if (flipy) {
sp += spixelgap * spixelh;
+ }
csay = say;
for (int y = 0; y < dstH; y++) {
@@ -835,10 +857,11 @@ TransparentSurface *TransparentSurface::scale(uint16 newWidth, uint16 newHeight)
c01 = sp;
c10 = sp;
if (cy < spixelh) {
- if (flipy)
+ if (flipy) {
c10 -= spixelgap;
- else
+ } else {
c10 += spixelgap;
+ }
}
c11 = c10;
if (cx < spixelw) {
@@ -874,10 +897,11 @@ TransparentSurface *TransparentSurface::scale(uint16 newWidth, uint16 newHeight)
int *salastx = csax;
csax++;
int sstepx = (*csax >> 16) - (*salastx >> 16);
- if (flipx)
+ if (flipx) {
sp -= sstepx;
- else
+ } else {
sp += sstepx;
+ }
/*
* Advance destination pointer x
@@ -891,10 +915,11 @@ TransparentSurface *TransparentSurface::scale(uint16 newWidth, uint16 newHeight)
csay++;
int sstepy = (*csay >> 16) - (*salasty >> 16);
sstepy *= spixelgap;
- if (flipy)
+ if (flipy) {
sp = csp - sstepy;
- else
+ } else {
sp = csp + sstepy;
+ }
}
delete[] sax;
@@ -903,14 +928,16 @@ TransparentSurface *TransparentSurface::scale(uint16 newWidth, uint16 newHeight)
#else
int *scaleCacheX = new int[dstW];
- for (int x = 0; x < dstW; x++)
+ for (int x = 0; x < dstW; x++) {
scaleCacheX[x] = (x * srcW) / dstW;
+ }
for (int y = 0; y < dstH; y++) {
uint32 *destP = (uint32 *)target->getBasePtr(0, y);
const uint32 *srcP = (const uint32 *)getBasePtr(0, (y * srcH) / dstH);
- for (int x = 0; x < dstW; x++)
+ for (int x = 0; x < dstW; x++) {
*destP++ = srcP[scaleCacheX[x]];
+ }
}
delete[] scaleCacheX;
diff --git a/engines/wintermute/graphics/transparent_surface.h b/engines/wintermute/graphics/transparent_surface.h
index 1f3827d1a9..4ad9bf07eb 100644
--- a/engines/wintermute/graphics/transparent_surface.h
+++ b/engines/wintermute/graphics/transparent_surface.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_TRANSPARENTSURFACE_H
@@ -73,17 +74,17 @@ struct TransparentSurface : public Graphics::Surface {
ALPHA_FULL = 2
};
- #ifdef SCUMM_LITTLE_ENDIAN
+#ifdef SCUMM_LITTLE_ENDIAN
static const int kAIndex = 0;
static const int kBIndex = 1;
static const int kGIndex = 2;
static const int kRIndex = 3;
- #else
+#else
static const int kAIndex = 3;
static const int kBIndex = 2;
static const int kGIndex = 1;
static const int kRIndex = 0;
- #endif
+#endif
static const int kBShift = 8;//img->format.bShift;
static const int kGShift = 16;//img->format.gShift;
@@ -131,13 +132,13 @@ struct TransparentSurface : public Graphics::Surface {
int width = -1, int height = -1,
TSpriteBlendMode blend = BLEND_NORMAL);
void applyColorKey(uint8 r, uint8 g, uint8 b, bool overwriteAlpha = false);
-
+
/**
* @brief Scale function; this returns a transformed version of this surface after rotation and
* scaling. Please do not use this if angle != 0, use rotoscale.
*
* @param newWidth the resulting width.
- * @param newHeight the resulting height.
+ * @param newHeight the resulting height.
* @see TransformStruct
*/
TransparentSurface *scale(uint16 newWidth, uint16 newHeight) const;
@@ -147,7 +148,7 @@ struct TransparentSurface : public Graphics::Surface {
* scaling. Please do not use this if angle == 0, use plain old scaling function.
*
* @param transform a TransformStruct wrapping the required info. @see TransformStruct
- *
+ *
*/
TransparentSurface *rotoscale(const TransformStruct &transform) const;
AlphaType getAlphaMode() const;
diff --git a/engines/wintermute/math/floatpoint.h b/engines/wintermute/math/floatpoint.h
index 0c47ef09d7..77cd9980b9 100644
--- a/engines/wintermute/math/floatpoint.h
+++ b/engines/wintermute/math/floatpoint.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/math/math_util.cpp b/engines/wintermute/math/math_util.cpp
index 903cea6d39..ed2b932693 100644
--- a/engines/wintermute/math/math_util.cpp
+++ b/engines/wintermute/math/math_util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/math/math_util.h b/engines/wintermute/math/math_util.h
index 41a7a43e2e..30b58baa39 100644
--- a/engines/wintermute/math/math_util.h
+++ b/engines/wintermute/math/math_util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/math/matrix4.cpp b/engines/wintermute/math/matrix4.cpp
index 011766f510..dff4301df3 100644
--- a/engines/wintermute/math/matrix4.cpp
+++ b/engines/wintermute/math/matrix4.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/math/matrix4.h b/engines/wintermute/math/matrix4.h
index 4198b50484..245fb4a4a0 100644
--- a/engines/wintermute/math/matrix4.h
+++ b/engines/wintermute/math/matrix4.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/math/rect32.h b/engines/wintermute/math/rect32.h
index a4a64690e2..93b5c68a30 100644
--- a/engines/wintermute/math/rect32.h
+++ b/engines/wintermute/math/rect32.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/math/vector2.cpp b/engines/wintermute/math/vector2.cpp
index 618ee9bda9..a88edb1e6f 100644
--- a/engines/wintermute/math/vector2.cpp
+++ b/engines/wintermute/math/vector2.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/math/vector2.h b/engines/wintermute/math/vector2.h
index e4ba97c517..65aa6961f8 100644
--- a/engines/wintermute/math/vector2.h
+++ b/engines/wintermute/math/vector2.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/module.mk b/engines/wintermute/module.mk
index 95f9ba2ffb..19fb3d6717 100644
--- a/engines/wintermute/module.mk
+++ b/engines/wintermute/module.mk
@@ -1,5 +1,5 @@
MODULE := engines/wintermute
-
+
MODULE_OBJS := \
ad/ad_actor.o \
ad/ad_entity.o \
@@ -116,14 +116,14 @@ MODULE_OBJS := \
debugger.o \
wintermute.o \
persistent.o
-
+
MODULE_DIRS += \
engines/wintermute
-
+
# This module can be built as a plugin
ifeq ($(ENABLE_WINTERMUTE), DYNAMIC_PLUGIN)
PLUGIN := 1
endif
-
-# Include common rules
+
+# Include common rules
include $(srcdir)/rules.mk
diff --git a/engines/wintermute/persistent.cpp b/engines/wintermute/persistent.cpp
index 514fd61d34..558fb82a0f 100644
--- a/engines/wintermute/persistent.cpp
+++ b/engines/wintermute/persistent.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/persistent.h b/engines/wintermute/persistent.h
index ddc0791054..202a0fcda6 100644
--- a/engines/wintermute/persistent.h
+++ b/engines/wintermute/persistent.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/platform_osystem.cpp b/engines/wintermute/platform_osystem.cpp
index 9fa23c6074..e18051f43f 100644
--- a/engines/wintermute/platform_osystem.cpp
+++ b/engines/wintermute/platform_osystem.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/platform_osystem.h b/engines/wintermute/platform_osystem.h
index 16d55745b9..dd18f99038 100644
--- a/engines/wintermute/platform_osystem.h
+++ b/engines/wintermute/platform_osystem.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/system/sys_class.cpp b/engines/wintermute/system/sys_class.cpp
index 0577f29e2c..4152b6fa7d 100644
--- a/engines/wintermute/system/sys_class.cpp
+++ b/engines/wintermute/system/sys_class.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/system/sys_class.h b/engines/wintermute/system/sys_class.h
index 9fb3f70696..a86f476f70 100644
--- a/engines/wintermute/system/sys_class.h
+++ b/engines/wintermute/system/sys_class.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/system/sys_class_registry.cpp b/engines/wintermute/system/sys_class_registry.cpp
index 20e4661efb..825fd8f32a 100644
--- a/engines/wintermute/system/sys_class_registry.cpp
+++ b/engines/wintermute/system/sys_class_registry.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/system/sys_class_registry.h b/engines/wintermute/system/sys_class_registry.h
index 48a6738ffb..a9c7e641db 100644
--- a/engines/wintermute/system/sys_class_registry.h
+++ b/engines/wintermute/system/sys_class_registry.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/system/sys_instance.cpp b/engines/wintermute/system/sys_instance.cpp
index b8e5c9b50a..490324167f 100644
--- a/engines/wintermute/system/sys_instance.cpp
+++ b/engines/wintermute/system/sys_instance.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/system/sys_instance.h b/engines/wintermute/system/sys_instance.h
index 115de28094..7f6661eb0e 100644
--- a/engines/wintermute/system/sys_instance.h
+++ b/engines/wintermute/system/sys_instance.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_button.cpp b/engines/wintermute/ui/ui_button.cpp
index 7526174b64..12ecfe152d 100644
--- a/engines/wintermute/ui/ui_button.cpp
+++ b/engines/wintermute/ui/ui_button.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_button.h b/engines/wintermute/ui/ui_button.h
index 6452cfc4f7..2e4fa8486b 100644
--- a/engines/wintermute/ui/ui_button.h
+++ b/engines/wintermute/ui/ui_button.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_edit.cpp b/engines/wintermute/ui/ui_edit.cpp
index 1f224c79c8..ffe8d66b4d 100644
--- a/engines/wintermute/ui/ui_edit.cpp
+++ b/engines/wintermute/ui/ui_edit.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_edit.h b/engines/wintermute/ui/ui_edit.h
index 19ea5ecc5d..ea110a74a8 100644
--- a/engines/wintermute/ui/ui_edit.h
+++ b/engines/wintermute/ui/ui_edit.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_entity.cpp b/engines/wintermute/ui/ui_entity.cpp
index 0dbf8df00b..9e1e2a28e5 100644
--- a/engines/wintermute/ui/ui_entity.cpp
+++ b/engines/wintermute/ui/ui_entity.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_entity.h b/engines/wintermute/ui/ui_entity.h
index 63f0026412..b1ea2d579f 100644
--- a/engines/wintermute/ui/ui_entity.h
+++ b/engines/wintermute/ui/ui_entity.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_object.cpp b/engines/wintermute/ui/ui_object.cpp
index c04c7cbd28..194943add8 100644
--- a/engines/wintermute/ui/ui_object.cpp
+++ b/engines/wintermute/ui/ui_object.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_object.h b/engines/wintermute/ui/ui_object.h
index ecbaebcee6..e7c0d56eb8 100644
--- a/engines/wintermute/ui/ui_object.h
+++ b/engines/wintermute/ui/ui_object.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_text.cpp b/engines/wintermute/ui/ui_text.cpp
index b255e6e790..18b134a338 100644
--- a/engines/wintermute/ui/ui_text.cpp
+++ b/engines/wintermute/ui/ui_text.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_text.h b/engines/wintermute/ui/ui_text.h
index c39260b228..d82ae9a1a2 100644
--- a/engines/wintermute/ui/ui_text.h
+++ b/engines/wintermute/ui/ui_text.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_tiled_image.cpp b/engines/wintermute/ui/ui_tiled_image.cpp
index e895477a36..caa93df21c 100644
--- a/engines/wintermute/ui/ui_tiled_image.cpp
+++ b/engines/wintermute/ui/ui_tiled_image.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_tiled_image.h b/engines/wintermute/ui/ui_tiled_image.h
index fa92c46781..916353af2d 100644
--- a/engines/wintermute/ui/ui_tiled_image.h
+++ b/engines/wintermute/ui/ui_tiled_image.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_window.cpp b/engines/wintermute/ui/ui_window.cpp
index 842bf700b5..9f3cdeaaa3 100644
--- a/engines/wintermute/ui/ui_window.cpp
+++ b/engines/wintermute/ui/ui_window.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/ui/ui_window.h b/engines/wintermute/ui/ui_window.h
index 6b4d970581..dad8c89e6c 100644
--- a/engines/wintermute/ui/ui_window.h
+++ b/engines/wintermute/ui/ui_window.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/utils/path_util.cpp b/engines/wintermute/utils/path_util.cpp
index ee8b298562..71311713af 100644
--- a/engines/wintermute/utils/path_util.cpp
+++ b/engines/wintermute/utils/path_util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/utils/path_util.h b/engines/wintermute/utils/path_util.h
index 2c7dfa99d1..264dc5d241 100644
--- a/engines/wintermute/utils/path_util.h
+++ b/engines/wintermute/utils/path_util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/utils/string_util.cpp b/engines/wintermute/utils/string_util.cpp
index 702dd04c27..82d4fe6902 100644
--- a/engines/wintermute/utils/string_util.cpp
+++ b/engines/wintermute/utils/string_util.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/utils/string_util.h b/engines/wintermute/utils/string_util.h
index 14c40fcb2b..431d401d96 100644
--- a/engines/wintermute/utils/string_util.h
+++ b/engines/wintermute/utils/string_util.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/utils/utils.cpp b/engines/wintermute/utils/utils.cpp
index 8fa6313ba6..d592019418 100644
--- a/engines/wintermute/utils/utils.cpp
+++ b/engines/wintermute/utils/utils.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/utils/utils.h b/engines/wintermute/utils/utils.h
index 6c804ff01e..4ee875fb06 100644
--- a/engines/wintermute/utils/utils.h
+++ b/engines/wintermute/utils/utils.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/video/video_player.cpp b/engines/wintermute/video/video_player.cpp
index f18311c3e1..5a71b04377 100644
--- a/engines/wintermute/video/video_player.cpp
+++ b/engines/wintermute/video/video_player.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/video/video_player.h b/engines/wintermute/video/video_player.h
index 51c6bf41d3..8812e2597b 100644
--- a/engines/wintermute/video/video_player.h
+++ b/engines/wintermute/video/video_player.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/video/video_theora_player.cpp b/engines/wintermute/video/video_theora_player.cpp
index 299b64f915..e1553580ec 100644
--- a/engines/wintermute/video/video_theora_player.cpp
+++ b/engines/wintermute/video/video_theora_player.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -127,6 +127,7 @@ bool VideoTheoraPlayer::initialize(const Common::String &filename, const Common:
#if defined (USE_THEORADEC)
_theoraDecoder = new Video::TheoraDecoder();
#else
+ warning("VideoTheoraPlayer::initialize - Theora support not compiled in, video will be skipped: %s", filename.c_str());
return STATUS_FAILED;
#endif
_theoraDecoder->loadStream(_file);
@@ -305,7 +306,7 @@ bool VideoTheoraPlayer::update() {
if (!_theoraDecoder->endOfVideo() && _theoraDecoder->getTimeToNextFrame() == 0) {
const Graphics::Surface *decodedFrame = _theoraDecoder->decodeNextFrame();
if (decodedFrame) {
- if (decodedFrame->format == _surface.format && decodedFrame->w == _surface.w && decodedFrame->h == _surface.h) {
+ if (decodedFrame->format == _surface.format && decodedFrame->pitch == _surface.pitch && decodedFrame->h == _surface.h) {
const byte *src = (const byte *)decodedFrame->getBasePtr(0, 0);
byte *dst = (byte *)_surface.getBasePtr(0, 0);
memcpy(dst, src, _surface.pitch * _surface.h);
diff --git a/engines/wintermute/video/video_theora_player.h b/engines/wintermute/video/video_theora_player.h
index 7b28a71e17..8274a1444f 100644
--- a/engines/wintermute/video/video_theora_player.h
+++ b/engines/wintermute/video/video_theora_player.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/wintermute.cpp b/engines/wintermute/wintermute.cpp
index 0a6be4caf8..81b6e53c9f 100644
--- a/engines/wintermute/wintermute.cpp
+++ b/engines/wintermute/wintermute.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -365,6 +365,17 @@ bool WintermuteEngine::getGameInfo(const Common::FSList &fslist, Common::String
name = value;
} else if (key == "CAPTION") {
retVal = true;
+ // Remove any translation tags, if they are included in the game description.
+ // This can potentially remove parts of a string that has translation tags
+ // and contains a "/" in its description (e.g. /tag/Name start / name end will
+ // result in "name end"), but it's a very rare case, and this code is just used
+ // for fallback anyway.
+ if (value.hasPrefix("/")) {
+ value.deleteChar(0);
+ while (value.contains("/")) {
+ value.deleteChar(0);
+ }
+ }
caption = value;
}
}
diff --git a/engines/wintermute/wintermute.h b/engines/wintermute/wintermute.h
index fcaa2840a9..017809d56a 100644
--- a/engines/wintermute/wintermute.h
+++ b/engines/wintermute/wintermute.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/wintermute/wintypes.h b/engines/wintermute/wintypes.h
index 1288ac1a65..b30c09dff7 100644
--- a/engines/wintermute/wintypes.h
+++ b/engines/wintermute/wintypes.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/animation/rlf_animation.cpp b/engines/zvision/animation/rlf_animation.cpp
index c7307265c0..945461e7b2 100644
--- a/engines/zvision/animation/rlf_animation.cpp
+++ b/engines/zvision/animation/rlf_animation.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
@@ -35,7 +35,7 @@
namespace ZVision {
-RlfAnimation::RlfAnimation(const Common::String &fileName, bool stream)
+RlfAnimation::RlfAnimation(const Common::String &fileName, bool stream)
: _stream(stream),
_lastFrameRead(0),
_frameCount(0),
@@ -301,7 +301,7 @@ void RlfAnimation::decodeSimpleRunLengthEncoding(int8 *source, int8 *dest, uint3
numberOfSamples--;
}
- // If numberOfSamples is >= 0, copy one sample from source to the
+ // If numberOfSamples is >= 0, copy one sample from source to the
// next (numberOfSamples + 2) dest spots
} else {
if (sourceOffset + 1 >= sourceSize) {
diff --git a/engines/zvision/animation/rlf_animation.h b/engines/zvision/animation/rlf_animation.h
index fe5b0d68b4..4bb779301b 100644
--- a/engines/zvision/animation/rlf_animation.h
+++ b/engines/zvision/animation/rlf_animation.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/archives/zfs_archive.cpp b/engines/zvision/archives/zfs_archive.cpp
index b8175b4903..f5fa6fc9bf 100644
--- a/engines/zvision/archives/zfs_archive.cpp
+++ b/engines/zvision/archives/zfs_archive.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/archives/zfs_archive.h b/engines/zvision/archives/zfs_archive.h
index d7b45e4b47..3509cfee26 100644
--- a/engines/zvision/archives/zfs_archive.h
+++ b/engines/zvision/archives/zfs_archive.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/core/console.cpp b/engines/zvision/core/console.cpp
index 0d325ef7f7..22382bc264 100644
--- a/engines/zvision/core/console.cpp
+++ b/engines/zvision/core/console.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
diff --git a/engines/zvision/core/console.h b/engines/zvision/core/console.h
index 0ca1b8cc70..29523c57ee 100644
--- a/engines/zvision/core/console.h
+++ b/engines/zvision/core/console.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef ZVISION_CONSOLE_H
#define ZVISION_CONSOLE_H
diff --git a/engines/zvision/core/events.cpp b/engines/zvision/core/events.cpp
index 40bfb879b1..83d6c17dec 100644
--- a/engines/zvision/core/events.cpp
+++ b/engines/zvision/core/events.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/core/menu.h b/engines/zvision/core/menu.h
index affc69abd5..3ab6d4c2ec 100644
--- a/engines/zvision/core/menu.h
+++ b/engines/zvision/core/menu.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/core/save_manager.cpp b/engines/zvision/core/save_manager.cpp
index b91f8eacad..07fb7637e7 100644
--- a/engines/zvision/core/save_manager.cpp
+++ b/engines/zvision/core/save_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/core/save_manager.h b/engines/zvision/core/save_manager.h
index b4770e68b2..43fb0c0faf 100644
--- a/engines/zvision/core/save_manager.h
+++ b/engines/zvision/core/save_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -60,7 +60,7 @@ private:
public:
/**
* Called every room change. Saves the state of the room just before
- * we switched rooms. Uses ZVision::generateAutoSaveFileName() to
+ * we switched rooms. Uses ZVision::generateAutoSaveFileName() to
* create the save file name.
*/
void autoSave();
diff --git a/engines/zvision/cursors/cursor.cpp b/engines/zvision/cursors/cursor.cpp
index be80f6585b..9b9b9a3f71 100644
--- a/engines/zvision/cursors/cursor.cpp
+++ b/engines/zvision/cursors/cursor.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
@@ -30,14 +30,14 @@
namespace ZVision {
-ZorkCursor::ZorkCursor()
+ZorkCursor::ZorkCursor()
: _width(0),
_height(0),
_hotspotX(0),
_hotspotY(0) {
}
-ZorkCursor::ZorkCursor(const Common::String &fileName)
+ZorkCursor::ZorkCursor(const Common::String &fileName)
: _width(0),
_height(0),
_hotspotX(0),
diff --git a/engines/zvision/cursors/cursor.h b/engines/zvision/cursors/cursor.h
index 18ac28ce8b..be9fae64da 100644
--- a/engines/zvision/cursors/cursor.h
+++ b/engines/zvision/cursors/cursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -32,7 +32,7 @@ class String;
namespace ZVision {
-/**
+/**
* Utility class to parse and hold cursor data
* Modeled off Graphics::Cursor
*/
diff --git a/engines/zvision/cursors/cursor_manager.cpp b/engines/zvision/cursors/cursor_manager.cpp
index 671f26ba2d..7f70c8b4e3 100644
--- a/engines/zvision/cursors/cursor_manager.cpp
+++ b/engines/zvision/cursors/cursor_manager.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
diff --git a/engines/zvision/cursors/cursor_manager.h b/engines/zvision/cursors/cursor_manager.h
index e982a40188..0576517f58 100644
--- a/engines/zvision/cursors/cursor_manager.h
+++ b/engines/zvision/cursors/cursor_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -77,7 +77,7 @@ public:
/**
* Parses a cursor name into a cursor file then creates and shows that cursor.
*
- * @param cursorName The name of a cursor. This *HAS* to correspond to one of the entries in _cursorNames[]
+ * @param cursorName The name of a cursor. This *HAS* to correspond to one of the entries in _cursorNames[]
* @param pushed Should the cursor be pushed (true) or not pushed (false) (Another way to say it: down or up)
*/
void changeCursor(const Common::String &cursorName, bool pushed);
diff --git a/engines/zvision/detection.cpp b/engines/zvision/detection.cpp
index 49664935e1..9961db1215 100644
--- a/engines/zvision/detection.cpp
+++ b/engines/zvision/detection.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/scummsys.h"
diff --git a/engines/zvision/detection.h b/engines/zvision/detection.h
index 34417601e8..a788e710b7 100644
--- a/engines/zvision/detection.h
+++ b/engines/zvision/detection.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef ZVISION_DETECTION_H
#define ZVISION_DETECTION_H
diff --git a/engines/zvision/fonts/truetype_font.cpp b/engines/zvision/fonts/truetype_font.cpp
index f8910bfe06..ba4d72bde8 100644
--- a/engines/zvision/fonts/truetype_font.cpp
+++ b/engines/zvision/fonts/truetype_font.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -39,12 +39,9 @@
namespace ZVision {
TruetypeFont::TruetypeFont(ZVision *engine, int32 fontHeight)
- : _engine(engine),
- _fontHeight(fontHeight),
+ : _fontHeight(fontHeight),
_font(0),
- _lineHeight(0),
- _maxCharWidth(0),
- _maxCharHeight(0) {
+ _lineHeight(0) {
}
TruetypeFont::~TruetypeFont(void) {
diff --git a/engines/zvision/fonts/truetype_font.h b/engines/zvision/fonts/truetype_font.h
index 33f016cffd..64f53a2c3b 100644
--- a/engines/zvision/fonts/truetype_font.h
+++ b/engines/zvision/fonts/truetype_font.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -43,12 +43,12 @@ public:
~TruetypeFont();
private:
- ZVision *_engine;
+// ZVision *_engine;
Graphics::Font *_font;
int _lineHeight;
- size_t _maxCharWidth;
- size_t _maxCharHeight;
+// size_t _maxCharWidth;
+// size_t _maxCharHeight;
public:
int32 _fontHeight;
@@ -60,10 +60,10 @@ public:
*
* @param filename The file name of the .ttf file to load
*/
- bool loadFile(const Common::String &filename);
+ bool loadFile(const Common::String &filename);
/**
- * Renders the supplied text to a Surface using 0x0 as the
- * background color.
+ * Renders the supplied text to a Surface using 0x0 as the
+ * background color.
*
* @param text The to render
* @param textColor The color to render the text with
diff --git a/engines/zvision/graphics/render_manager.cpp b/engines/zvision/graphics/render_manager.cpp
index f19df88935..aed30ea12c 100644
--- a/engines/zvision/graphics/render_manager.cpp
+++ b/engines/zvision/graphics/render_manager.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
@@ -32,7 +32,7 @@
#include "engines/util.h"
-#include "graphics/decoders/tga.h"
+#include "image/tga.h"
namespace ZVision {
@@ -159,7 +159,7 @@ void RenderManager::clearWorkingWindowTo555Color(uint16 color) {
}
}
-void RenderManager::renderSubRectToScreen(Graphics::Surface &surface, int16 destinationX, int16 destinationY, bool wrap) {
+void RenderManager::renderSubRectToScreen(Graphics::Surface &surface, int16 destinationX, int16 destinationY, bool wrap) {
int16 subRectX = 0;
int16 subRectY = 0;
@@ -184,8 +184,8 @@ void RenderManager::renderSubRectToScreen(Graphics::Surface &surface, int16 dest
if (wrap) {
_backgroundWidth = surface.w;
_backgroundHeight = surface.h;
-
- if (destinationX > 0) {
+
+ if (destinationX > 0) {
// Move destinationX to 0
subRectX = surface.w - destinationX;
destinationX = 0;
@@ -238,7 +238,7 @@ void RenderManager::readImageToSurface(const Common::String &fileName, Graphics:
uint32 imageWidth;
uint32 imageHeight;
- Graphics::TGADecoder tga;
+ Image::TGADecoder tga;
uint16 *buffer;
bool isTransposed = _renderTable.getRenderState() == RenderTable::PANORAMA;
// All ZVision images are in RGB 555
@@ -373,7 +373,7 @@ Common::Rect RenderManager::renderTextToWorkingWindow(uint32 idNumber, const Com
entry.alphaColor = 0;
entry.destX = destX;
entry.destY = destY;
-
+
// Draw the text to the working window
entry.data = font->drawTextToSurface(text, textColor, maxWidth, maxHeight, align, wrap);
entry.width = entry.data->w;
diff --git a/engines/zvision/graphics/render_manager.h b/engines/zvision/graphics/render_manager.h
index cb71308bc3..9feff4c030 100644
--- a/engines/zvision/graphics/render_manager.h
+++ b/engines/zvision/graphics/render_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -89,7 +89,7 @@ private:
/** Center of the screen in the y direction */
const int _screenCenterY;
- /**
+ /**
* A Rectangle centered inside the actual window. All in-game coordinates
* are given in this coordinate space. Also, all images are clipped to the
* edges of this Rectangle
@@ -106,7 +106,7 @@ private:
/** The height of the current background image */
uint16 _backgroundHeight;
- /**
+ /**
* The "velocity" at which the background image is panning. We actually store the inverse of velocity (ms/pixel instead of pixels/ms)
* because it allows you to accumulate whole pixels 'steps' instead of rounding pixels every frame
*/
@@ -224,17 +224,17 @@ public:
/**
* Set the background position (_backgroundOffset). If the current RenderState is PANORAMA, the offset
* will be in the horizontal direction. If the current RenderState is TILT, the offset will be in the
- * vertical direction.
+ * vertical direction.
*
- * This method will not render anything on the screen. So if nothing else is called that renders the
+ * This method will not render anything on the screen. So if nothing else is called that renders the
* background, the change won't be seen until next frame.
*
* @param offset The amount to offset the background
*/
void setBackgroundPosition(int offset);
-
+
/**
- * Set the background scroll velocity. Negative velocities correspond to left / up scrolling and
+ * Set the background scroll velocity. Negative velocities correspond to left / up scrolling and
* positive velocities correspond to right / down scrolling
*
* @param velocity Velocity
@@ -249,7 +249,7 @@ public:
*/
const Common::Point screenSpaceToImageSpace(const Common::Point &point);
/**
- * Converts a point in image coordinate space to ***PRE-WARP***
+ * Converts a point in image coordinate space to ***PRE-WARP***
* working window coordinate space
*
* @param point Point in image coordinate space
@@ -313,7 +313,7 @@ private:
* Move the background image by an offset. If we are currently in Panorama mode,
* the offset will correspond to a horizontal motion. If we are currently in Tilt mode,
* the offset will correspond to a vertical motion. This function should not be called
- * if we are in Flat mode.
+ * if we are in Flat mode.
*
* The RenderManager will take care of wrapping the image.
* Ex: If the image has width 1400px, it is legal to offset 1500px.
diff --git a/engines/zvision/graphics/render_table.cpp b/engines/zvision/graphics/render_table.cpp
index ffd42e6a60..49b934dc37 100644
--- a/engines/zvision/graphics/render_table.cpp
+++ b/engines/zvision/graphics/render_table.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
@@ -115,7 +115,7 @@ void RenderTable::mutateImage(uint16 *sourceBuffer, uint16* destBuffer, uint32 d
// RenderTable only stores offsets from the original coordinates
uint32 sourceYIndex = y + _internalBuffer[index].y;
uint32 sourceXIndex = x + _internalBuffer[index].x;
-
+
destBuffer[destOffset + normalizedX] = sourceBuffer[sourceYIndex * _numColumns + sourceXIndex];
}
@@ -154,11 +154,11 @@ void RenderTable::generatePanoramaLookupTable() {
// To get x in cylinder coordinates, we just need to calculate the arc length
// We also scale it by _panoramaOptions.linearScale
int32 xInCylinderCoords = int32(floor((cylinderRadius * _panoramaOptions.linearScale * alpha) + halfWidth));
-
+
float cosAlpha = cos(alpha);
for (uint y = 0; y < _numRows; ++y) {
- // To calculate y in cylinder coordinates, we can do similar triangles comparison,
+ // To calculate y in cylinder coordinates, we can do similar triangles comparison,
// comparing the triangle from the center to the screen and from the center to the edge of the cylinder
int32 yInCylinderCoords = int32(floor(halfHeight + ((float)y - halfHeight) * cosAlpha));
@@ -179,7 +179,7 @@ void RenderTable::generateTiltLookupTable() {
float cylinderRadius = halfWidth / tan(fovInRadians);
for (uint y = 0; y < _numRows; ++y) {
-
+
// Add an offset of 0.01 to overcome zero tan/atan issue (horizontal line on half of screen)
// Alpha represents the vertical angle between the viewer at the center of a cylinder and y
float alpha = atan(((float)y - halfHeight + 0.01f) / cylinderRadius);
@@ -192,7 +192,7 @@ void RenderTable::generateTiltLookupTable() {
uint32 columnIndex = y * _numColumns;
for (uint x = 0; x < _numColumns; ++x) {
- // To calculate x in cylinder coordinates, we can do similar triangles comparison,
+ // To calculate x in cylinder coordinates, we can do similar triangles comparison,
// comparing the triangle from the center to the screen and from the center to the edge of the cylinder
int32 xInCylinderCoords = int32(floor(halfWidth + ((float)x - halfWidth) * cosAlpha));
diff --git a/engines/zvision/graphics/render_table.h b/engines/zvision/graphics/render_table.h
index 898091193a..f066187ad1 100644
--- a/engines/zvision/graphics/render_table.h
+++ b/engines/zvision/graphics/render_table.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/inventory/inventory_manager.h b/engines/zvision/inventory/inventory_manager.h
index ae6d116b18..f9d2ff294a 100644
--- a/engines/zvision/inventory/inventory_manager.h
+++ b/engines/zvision/inventory/inventory_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/module.mk b/engines/zvision/module.mk
index 4cf9c989cd..2e298f24c6 100644
--- a/engines/zvision/module.mk
+++ b/engines/zvision/module.mk
@@ -1,5 +1,5 @@
MODULE := engines/zvision
-
+
MODULE_OBJS := \
animation/rlf_animation.o \
archives/zfs_archive.o \
@@ -30,14 +30,14 @@ MODULE_OBJS := \
video/video.o \
video/zork_avi_decoder.o \
zvision.o
-
+
MODULE_DIRS += \
engines/zvision
-
+
# This module can be built as a plugin
ifeq ($(ENABLE_ZVISION), DYNAMIC_PLUGIN)
PLUGIN := 1
endif
-
-# Include common rules
+
+# Include common rules
include $(srcdir)/rules.mk
diff --git a/engines/zvision/scripting/actions.cpp b/engines/zvision/scripting/actions.cpp
index 878fa752d5..e854378ae4 100644
--- a/engines/zvision/scripting/actions.cpp
+++ b/engines/zvision/scripting/actions.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/actions.h b/engines/zvision/scripting/actions.h
index afa3e3a2ac..01457d21cc 100644
--- a/engines/zvision/scripting/actions.h
+++ b/engines/zvision/scripting/actions.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/control.cpp b/engines/zvision/scripting/control.cpp
index 35c4ea1441..2343c83c56 100644
--- a/engines/zvision/scripting/control.cpp
+++ b/engines/zvision/scripting/control.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/control.h b/engines/zvision/scripting/control.h
index 770c540a12..ffeacb273d 100644
--- a/engines/zvision/scripting/control.h
+++ b/engines/zvision/scripting/control.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -95,7 +95,7 @@ public:
* store the amount of time left on the timer. Any Controls overriding this *MUST* write
* their key as the first data outputted. The default implementation is NOP.
*
- * NOTE: If this method is overridden, you MUST also override deserialize()
+ * NOTE: If this method is overridden, you MUST also override deserialize()
* and needsSerialization()
*
* @param stream Stream to write any needed data to
diff --git a/engines/zvision/scripting/controls/animation_control.cpp b/engines/zvision/scripting/controls/animation_control.cpp
index ec8f7a9647..e351e81d25 100644
--- a/engines/zvision/scripting/controls/animation_control.cpp
+++ b/engines/zvision/scripting/controls/animation_control.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -38,7 +38,7 @@
namespace ZVision {
AnimationControl::AnimationControl(ZVision *engine, uint32 controlKey, const Common::String &fileName)
- : Control(engine, controlKey),
+ : Control(engine, controlKey),
_fileType(RLF),
_loopCount(1),
_currentLoop(0),
diff --git a/engines/zvision/scripting/controls/animation_control.h b/engines/zvision/scripting/controls/animation_control.h
index 77663aaf1e..6c4d6dfcf7 100644
--- a/engines/zvision/scripting/controls/animation_control.h
+++ b/engines/zvision/scripting/controls/animation_control.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/controls/input_control.cpp b/engines/zvision/scripting/controls/input_control.cpp
index 2685b01312..5cf5086691 100644
--- a/engines/zvision/scripting/controls/input_control.cpp
+++ b/engines/zvision/scripting/controls/input_control.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -37,7 +37,7 @@
namespace ZVision {
-InputControl::InputControl(ZVision *engine, uint32 key, Common::SeekableReadStream &stream)
+InputControl::InputControl(ZVision *engine, uint32 key, Common::SeekableReadStream &stream)
: Control(engine, key),
_nextTabstop(0),
_focused(false),
diff --git a/engines/zvision/scripting/controls/input_control.h b/engines/zvision/scripting/controls/input_control.h
index f0fd8b502d..32432438bb 100644
--- a/engines/zvision/scripting/controls/input_control.h
+++ b/engines/zvision/scripting/controls/input_control.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/controls/lever_control.cpp b/engines/zvision/scripting/controls/lever_control.cpp
index e08fdd10f3..9724e661b7 100644
--- a/engines/zvision/scripting/controls/lever_control.cpp
+++ b/engines/zvision/scripting/controls/lever_control.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/controls/lever_control.h b/engines/zvision/scripting/controls/lever_control.h
index 69473cf119..49e4fd3806 100644
--- a/engines/zvision/scripting/controls/lever_control.h
+++ b/engines/zvision/scripting/controls/lever_control.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/controls/push_toggle_control.cpp b/engines/zvision/scripting/controls/push_toggle_control.cpp
index 11ec4bb73f..82736b7576 100644
--- a/engines/zvision/scripting/controls/push_toggle_control.cpp
+++ b/engines/zvision/scripting/controls/push_toggle_control.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/controls/push_toggle_control.h b/engines/zvision/scripting/controls/push_toggle_control.h
index 13dc54a65f..3854fc2005 100644
--- a/engines/zvision/scripting/controls/push_toggle_control.h
+++ b/engines/zvision/scripting/controls/push_toggle_control.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/controls/timer_node.cpp b/engines/zvision/scripting/controls/timer_node.cpp
index 3b691be275..c8c8a85d34 100644
--- a/engines/zvision/scripting/controls/timer_node.cpp
+++ b/engines/zvision/scripting/controls/timer_node.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/controls/timer_node.h b/engines/zvision/scripting/controls/timer_node.h
index a8e579cbe4..48b5fad1e9 100644
--- a/engines/zvision/scripting/controls/timer_node.h
+++ b/engines/zvision/scripting/controls/timer_node.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/puzzle.h b/engines/zvision/scripting/puzzle.h
index 0d717f1fa9..ee9ce521c9 100644
--- a/engines/zvision/scripting/puzzle.h
+++ b/engines/zvision/scripting/puzzle.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -52,7 +52,7 @@ struct Puzzle {
struct CriteriaEntry {
/** The key of a global state */
uint32 key;
- /**
+ /**
* What we're comparing the value of the global state against
* This can either be a pure value or it can be the key of another global state
*/
diff --git a/engines/zvision/scripting/scr_file_handling.cpp b/engines/zvision/scripting/scr_file_handling.cpp
index d93094a3b2..753ce4ac6a 100644
--- a/engines/zvision/scripting/scr_file_handling.cpp
+++ b/engines/zvision/scripting/scr_file_handling.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/scripting/script_manager.cpp b/engines/zvision/scripting/script_manager.cpp
index adcc5c7545..41b835e550 100644
--- a/engines/zvision/scripting/script_manager.cpp
+++ b/engines/zvision/scripting/script_manager.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
diff --git a/engines/zvision/scripting/script_manager.h b/engines/zvision/scripting/script_manager.h
index ab9b03ed30..4d1b1f359b 100644
--- a/engines/zvision/scripting/script_manager.h
+++ b/engines/zvision/scripting/script_manager.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -70,15 +70,15 @@ public:
private:
ZVision *_engine;
- /**
- * Holds the global state variable. Do NOT directly modify this. Use the accessors and
- * mutators getStateValue() and setStateValue(). This ensures that Puzzles that reference a
+ /**
+ * Holds the global state variable. Do NOT directly modify this. Use the accessors and
+ * mutators getStateValue() and setStateValue(). This ensures that Puzzles that reference a
* particular state key are checked after the key is modified.
*/
StateMap _globalState;
- /**
- * Holds the flags for the global states. This is used to enable/disable puzzles and/or
- * controls as well as which puzzles should are allowed to be re-executed
+ /**
+ * Holds the flags for the global states. This is used to enable/disable puzzles and/or
+ * controls as well as which puzzles should are allowed to be re-executed
*/
StateFlagMap _globalStateFlags;
/** References _globalState keys to Puzzles */
@@ -153,7 +153,7 @@ public:
void deserializeStateTable(Common::SeekableReadStream *stream);
void serializeControls(Common::WriteStream *stream);
void deserializeControls(Common::SeekableReadStream *stream);
-
+
Location getCurrentLocation() const;
private:
@@ -175,7 +175,7 @@ public:
private:
/**
* Parses the stream into a Puzzle object
- * Helper method for parseScrFile.
+ * Helper method for parseScrFile.
*
* @param puzzle The object to store what is parsed
* @param stream Scr file stream
@@ -184,7 +184,7 @@ private:
/**
* Parses the stream into a Criteria object
- * Helper method for parsePuzzle.
+ * Helper method for parsePuzzle.
*
* @param criteria Pointer to the Criteria object to fill
* @param stream Scr file stream
@@ -194,7 +194,7 @@ private:
/**
* Parses the stream into a ResultAction objects
- * Helper method for parsePuzzle.
+ * Helper method for parsePuzzle.
*
* @param stream Scr file stream
* @param actionList The list where the results will be added
diff --git a/engines/zvision/sound/zork_raw.cpp b/engines/zvision/sound/zork_raw.cpp
index 321ac93de2..55353acbb9 100644
--- a/engines/zvision/sound/zork_raw.cpp
+++ b/engines/zvision/sound/zork_raw.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -47,16 +47,16 @@ const int32 RawZorkStream::_amplitudeLookupTable[89] = {0x0007, 0x0008, 0x0009,
0x0010, 0x0011, 0x0013, 0x0015, 0x0017, 0x0019, 0x001C, 0x001F,
0x0022, 0x0025, 0x0029, 0x002D, 0x0032, 0x0037, 0x003C, 0x0042,
0x0049, 0x0050, 0x0058, 0x0061, 0x006B, 0x0076, 0x0082, 0x008F,
- 0x009D, 0x00AD, 0x00BE, 0x00D1, 0x00E6, 0x00FD, 0x0117, 0x0133,
+ 0x009D, 0x00AD, 0x00BE, 0x00D1, 0x00E6, 0x00FD, 0x0117, 0x0133,
0x0151, 0x0173, 0x0198, 0x01C1, 0x01EE, 0x0220, 0x0256, 0x0292,
- 0x02D4, 0x031C, 0x036C, 0x03C3, 0x0424, 0x048E, 0x0502, 0x0583,
+ 0x02D4, 0x031C, 0x036C, 0x03C3, 0x0424, 0x048E, 0x0502, 0x0583,
0x0610, 0x06AB, 0x0756, 0x0812, 0x08E0, 0x09C3, 0x0ABD, 0x0BD0,
- 0x0CFF, 0x0E4C, 0x0FBA, 0x114C, 0x1307, 0x14EE, 0x1706, 0x1954,
+ 0x0CFF, 0x0E4C, 0x0FBA, 0x114C, 0x1307, 0x14EE, 0x1706, 0x1954,
0x1BDC, 0x1EA5, 0x21B6, 0x2515, 0x28CA, 0x2CDF, 0x315B, 0x364B,
0x3BB9, 0x41B2, 0x4844, 0x4F7E, 0x5771, 0x602F, 0x69CE, 0x7462, 0x7FFF};
const SoundParams RawZorkStream::_zNemSoundParamLookupTable[6] = {{'6', 0x2B11, false, false},
- {'a', 0x5622, false, true},
+ {'a', 0x5622, false, true},
{'b', 0x5622, true, true},
{'n', 0x2B11, false, true},
{'s', 0x5622, false, true},
@@ -199,7 +199,7 @@ Audio::RewindableAudioStream *makeRawZorkStream(const Common::String &filePath,
}
}
}
-
+
if (!foundParams)
error("Unable to find sound params for file '%s'. File identifier is '%c'", filePath.c_str(), fileIdentifier);
diff --git a/engines/zvision/sound/zork_raw.h b/engines/zvision/sound/zork_raw.h
index 481ea79f2d..ef98e3e1ef 100644
--- a/engines/zvision/sound/zork_raw.h
+++ b/engines/zvision/sound/zork_raw.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -62,7 +62,7 @@ private:
bool _endOfData; // Whether the stream end has been reached
uint _stereo;
- /**
+ /**
* Holds the frequency and index from the last sample
* 0 holds the left channel, 1 holds the right channel
*/
diff --git a/engines/zvision/strings/string_manager.cpp b/engines/zvision/strings/string_manager.cpp
index 77ed501672..22331d8a24 100644
--- a/engines/zvision/strings/string_manager.cpp
+++ b/engines/zvision/strings/string_manager.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -36,7 +36,7 @@
namespace ZVision {
-StringManager::StringManager(ZVision *engine)
+StringManager::StringManager(ZVision *engine)
: _engine(engine) {
}
@@ -218,7 +218,7 @@ Common::String StringManager::readWideLine(Common::SeekableReadStream &stream) {
// Don't spam the user with warnings about UTF-16 support.
// Just do one warning per String
bool charOverflowWarning = false;
-
+
uint16 value = stream.readUint16LE();
while (!stream.eos()) {
// Check for CRLF
@@ -235,7 +235,7 @@ Common::String StringManager::readWideLine(Common::SeekableReadStream &stream) {
value = '?';
}
char charValue = (char)value;
-
+
asciiString += charValue;
value = stream.readUint16LE();
diff --git a/engines/zvision/strings/string_manager.h b/engines/zvision/strings/string_manager.h
index 86bb9638d7..af8324b890 100644
--- a/engines/zvision/strings/string_manager.h
+++ b/engines/zvision/strings/string_manager.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef ZVISION_STRING_MANAGER_H
diff --git a/engines/zvision/subtitles/subtitles.h b/engines/zvision/subtitles/subtitles.h
index 13426e03e4..776ddd3a97 100644
--- a/engines/zvision/subtitles/subtitles.h
+++ b/engines/zvision/subtitles/subtitles.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef ZVISION_SUBTITLES_H
diff --git a/engines/zvision/utility/clock.cpp b/engines/zvision/utility/clock.cpp
index 49e4b32054..45ab23ab65 100644
--- a/engines/zvision/utility/clock.cpp
+++ b/engines/zvision/utility/clock.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/scummsys.h"
@@ -30,7 +29,7 @@
namespace ZVision {
-Clock::Clock(OSystem *system)
+Clock::Clock(OSystem *system)
: _system(system),
_lastTime(0),
_deltaTime(0),
diff --git a/engines/zvision/utility/clock.h b/engines/zvision/utility/clock.h
index 3939ba1612..6ae0f86161 100644
--- a/engines/zvision/utility/clock.h
+++ b/engines/zvision/utility/clock.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef ZVISION_CLOCK_H
@@ -63,12 +62,12 @@ public:
/**
* Pause the clock. Any future delta times will take this pause into account.
- * Has no effect if the clock is already paused.
+ * Has no effect if the clock is already paused.
*/
void start();
/**
* Un-pause the clock.
- * Has no effect if the clock is already un-paused.
+ * Has no effect if the clock is already un-paused.
*/
void stop();
};
diff --git a/engines/zvision/utility/lzss_read_stream.cpp b/engines/zvision/utility/lzss_read_stream.cpp
index dc537cd8ab..e094188ef6 100644
--- a/engines/zvision/utility/lzss_read_stream.cpp
+++ b/engines/zvision/utility/lzss_read_stream.cpp
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#include "common/scummsys.h"
diff --git a/engines/zvision/utility/lzss_read_stream.h b/engines/zvision/utility/lzss_read_stream.h
index f6b1eb1a65..b51cf3905f 100644
--- a/engines/zvision/utility/lzss_read_stream.h
+++ b/engines/zvision/utility/lzss_read_stream.h
@@ -1,24 +1,24 @@
/* ScummVM - Graphic Adventure Engine
-*
-* ScummVM is the legal property of its developers, whose names
-* are too numerous to list here. Please refer to the COPYRIGHT
-* file distributed with this source distribution.
-*
-* This program is free software; you can redistribute it and/or
-* modify it under the terms of the GNU General Public License
-* as published by the Free Software Foundation; either version 2
-* of the License, or (at your option) any later version.
-
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*
-*/
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
#ifndef ZVISION_LZSS_STREAM_H
#define ZVISION_LZSS_STREAM_H
@@ -36,7 +36,7 @@ namespace ZVision {
class LzssReadStream : public Common::ReadStream {
public:
/**
- * A class that decompresses LZSS data and implements ReadStream for easy access
+ * A class that decompresses LZSS data and implements ReadStream for easy access
* to the decompiled data.
*
* @param source The source data
diff --git a/engines/zvision/utility/single_value_container.cpp b/engines/zvision/utility/single_value_container.cpp
index 2667b27b75..e609474285 100644
--- a/engines/zvision/utility/single_value_container.cpp
+++ b/engines/zvision/utility/single_value_container.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/utility/single_value_container.h b/engines/zvision/utility/single_value_container.h
index 45b5a89e95..951383661a 100644
--- a/engines/zvision/utility/single_value_container.h
+++ b/engines/zvision/utility/single_value_container.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -30,7 +30,7 @@ class String;
namespace ZVision {
/**
- * A generic single value storage class. It is useful for storing different
+ * A generic single value storage class. It is useful for storing different
* value types in a single List, Hashmap, etc.
*/
class SingleValueContainer {
@@ -94,7 +94,7 @@ public:
SingleValueContainer& operator=(const SingleValueContainer &rhs);
/**
- * Retrieve a bool from the container. If the container is not storing a
+ * Retrieve a bool from the container. If the container is not storing a
* bool, this will return false and display a warning().
*
* @param returnValue Pointer to where you want the value stored
@@ -102,7 +102,7 @@ public:
*/
bool getBoolValue(bool *returnValue) const;
/**
- * Retrieve a byte from the container. If the container is not storing a
+ * Retrieve a byte from the container. If the container is not storing a
* byte, this will return false and display a warning().
*
* @param returnValue Pointer to where you want the value stored
@@ -110,7 +110,7 @@ public:
*/
bool getByteValue(byte *returnValue) const;
/**
- * Retrieve an int16 from the container. If the container is not storing an
+ * Retrieve an int16 from the container. If the container is not storing an
* int16, this will return false and display a warning().
*
* @param returnValue Pointer to where you want the value stored
@@ -118,7 +118,7 @@ public:
*/
bool getInt16Value(int16 *returnValue) const;
/**
- * Retrieve a uint16 from the container. If the container is not storing a
+ * Retrieve a uint16 from the container. If the container is not storing a
* uint16, this will return false and display a warning().
*
* @param returnValue Pointer to where you want the value stored
@@ -126,7 +126,7 @@ public:
*/
bool getUInt16Value(uint16 *returnValue) const;
/**
- * Retrieve an int32 from the container. If the container is not storing an
+ * Retrieve an int32 from the container. If the container is not storing an
* int32, this will return false and display a warning().
*
* @param returnValue Pointer to where you want the value stored
@@ -134,7 +134,7 @@ public:
*/
bool getInt32Value(int32 *returnValue) const;
/**
- * Retrieve a uint32 from the container. If the container is not storing a
+ * Retrieve a uint32 from the container. If the container is not storing a
* uint32, this will return false and display a warning().
*
* @param returnValue Pointer to where you want the value stored
@@ -142,7 +142,7 @@ public:
*/
bool getUInt32Value(uint32 *returnValue) const;
/**
- * Retrieve a float from the container. If the container is not storing a
+ * Retrieve a float from the container. If the container is not storing a
* float, this will return false and display a warning().
*
* @param returnValue Pointer to where you want the value stored
@@ -150,7 +150,7 @@ public:
*/
bool getFloatValue(float *returnValue) const;
/**
- * Retrieve a double from the container. If the container is not storing a
+ * Retrieve a double from the container. If the container is not storing a
* double, this will return false and display a warning().
*
* @param returnValue Pointer to where you want the value stored
@@ -158,9 +158,9 @@ public:
*/
bool getDoubleValue(double *returnValue) const;
/**
- * Retrieve a String from the container. If the container is not storing a
+ * Retrieve a String from the container. If the container is not storing a
* string, this will return false and display a warning().
- *
+ *
* Caution: Strings are internally stored as char[]. getStringValue uses
* Common::String::operator=(char *) to do the assigment, which uses both
* strlen() AND memmove().
diff --git a/engines/zvision/utility/utility.cpp b/engines/zvision/utility/utility.cpp
index 6471d21e6c..905bc4513a 100644
--- a/engines/zvision/utility/utility.cpp
+++ b/engines/zvision/utility/utility.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/utility/utility.h b/engines/zvision/utility/utility.h
index fb571f3fe8..063d4c0663 100644
--- a/engines/zvision/utility/utility.h
+++ b/engines/zvision/utility/utility.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef ZVISION_UTILITY_H
@@ -93,7 +92,7 @@ void removeDuplicateEntries(Common::Array<T> &container) {
}
/**
- * Gets the name of the file (including extension). Forward or back slashes
+ * Gets the name of the file (including extension). Forward or back slashes
* are interpreted as directory changes
*
* @param fullPath A full or partial path to the file. Ex: folderOne/folderTwo/file.txt
diff --git a/engines/zvision/video/video.cpp b/engines/zvision/video/video.cpp
index efaecb5045..d1fff30408 100644
--- a/engines/zvision/video/video.cpp
+++ b/engines/zvision/video/video.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/engines/zvision/video/zork_avi_decoder.cpp b/engines/zvision/video/zork_avi_decoder.cpp
index d3db3421af..f22a4203ab 100644
--- a/engines/zvision/video/zork_avi_decoder.cpp
+++ b/engines/zvision/video/zork_avi_decoder.cpp
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#include "common/scummsys.h"
diff --git a/engines/zvision/video/zork_avi_decoder.h b/engines/zvision/video/zork_avi_decoder.h
index ec2be1bb13..c47f007f9b 100644
--- a/engines/zvision/video/zork_avi_decoder.h
+++ b/engines/zvision/video/zork_avi_decoder.h
@@ -8,24 +8,23 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef ZORK_AVI_DECODER_H
#define ZORK_AVI_DECODER_H
#include "video/avi_decoder.h"
-
+
namespace ZVision {
@@ -56,5 +55,5 @@ private:
};
} // End of namespace ZVision
-
+
#endif
diff --git a/engines/zvision/zvision.cpp b/engines/zvision/zvision.cpp
index f57e225ac1..b464f6ee81 100644
--- a/engines/zvision/zvision.cpp
+++ b/engines/zvision/zvision.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -47,7 +47,7 @@
namespace ZVision {
-
+
ZVision::ZVision(OSystem *syst, const ZVisionGameDescription *gameDesc)
: Engine(syst),
_gameDescription(gameDesc),
@@ -61,13 +61,13 @@ ZVision::ZVision(OSystem *syst, const ZVisionGameDescription *gameDesc)
_saveManager(nullptr),
_stringManager(nullptr),
_cursorManager(nullptr) {
-
+
debug(1, "ZVision::ZVision");
}
ZVision::~ZVision() {
debug(1, "ZVision::~ZVision");
-
+
// Dispose of resources
delete _console;
delete _cursorManager;
@@ -76,15 +76,15 @@ ZVision::~ZVision() {
delete _renderManager;
delete _scriptManager;
delete _rnd;
-
+
// Remove all of our debug levels
DebugMan.clearAllDebugChannels();
}
void ZVision::initialize() {
const Common::FSNode gameDataDir(ConfMan.get("path"));
- // TODO: There are 10 file clashes when we flatten the directories.
- // From a quick look, the files are exactly the same, so it shouldn't matter.
+ // TODO: There are 10 file clashes when we flatten the directories.
+ // From a quick look, the files are exactly the same, so it shouldn't matter.
// But I'm noting it here just in-case it does become a problem.
SearchMan.addSubDirectoryMatching(gameDataDir, "data1", 0, 4, true);
SearchMan.addSubDirectoryMatching(gameDataDir, "data2", 0, 4, true);
@@ -142,7 +142,7 @@ Common::Error ZVision::run() {
processEvents();
- // Call _renderManager->update() first so the background renders
+ // Call _renderManager->update() first so the background renders
// before anything that puzzles/controls will render
_renderManager->update(deltaTime);
_scriptManager->update(deltaTime);
diff --git a/engines/zvision/zvision.h b/engines/zvision/zvision.h
index 7c130fc87f..0b5a86f370 100644
--- a/engines/zvision/zvision.h
+++ b/engines/zvision/zvision.h
@@ -8,17 +8,16 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- *
*/
#ifndef ZVISION_ZVISION_H
@@ -51,7 +50,7 @@ class CursorManager;
class StringManager;
class SaveManager;
class RlfAnimation;
-
+
class ZVision : public Engine {
public:
ZVision(OSystem *syst, const ZVisionGameDescription *gameDesc);
@@ -70,11 +69,11 @@ private:
enum {
WINDOW_WIDTH = 640,
WINDOW_HEIGHT = 480,
-
+
//Zork nemesis working window sizes
ZNEM_WORKING_WINDOW_WIDTH = 512,
ZNEM_WORKING_WINDOW_HEIGHT = 320,
-
+
//ZGI(and default) working window sizes
ZGI_WORKING_WINDOW_WIDTH = 640,
ZGI_WORKING_WINDOW_HEIGHT = 344,
@@ -148,5 +147,5 @@ private:
};
} // End of namespace ZVision
-
+
#endif
diff --git a/graphics/colormasks.h b/graphics/colormasks.h
index 2a2523f4b3..eebfc13213 100644
--- a/graphics/colormasks.h
+++ b/graphics/colormasks.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/conversion.cpp b/graphics/conversion.cpp
index 2da8b6f0ce..27180b80ad 100644
--- a/graphics/conversion.cpp
+++ b/graphics/conversion.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "graphics/conversion.h"
diff --git a/graphics/conversion.h b/graphics/conversion.h
index 28e64a94fb..33d57f7a4f 100644
--- a/graphics/conversion.h
+++ b/graphics/conversion.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/cursor.h b/graphics/cursor.h
index b04d9c04e2..354d981de6 100644
--- a/graphics/cursor.h
+++ b/graphics/cursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/cursorman.cpp b/graphics/cursorman.cpp
index 133ee5fd71..5fcd2a3602 100644
--- a/graphics/cursorman.cpp
+++ b/graphics/cursorman.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "graphics/cursorman.h"
diff --git a/graphics/cursorman.h b/graphics/cursorman.h
index b4d8ad94ce..f4a0ebbd82 100644
--- a/graphics/cursorman.h
+++ b/graphics/cursorman.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_CURSORMAN_H
diff --git a/graphics/font.cpp b/graphics/font.cpp
index e9f139c478..1ed67fa169 100644
--- a/graphics/font.cpp
+++ b/graphics/font.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "graphics/font.h"
diff --git a/graphics/font.h b/graphics/font.h
index 77b7623a85..f333107780 100644
--- a/graphics/font.h
+++ b/graphics/font.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_FONT_H
diff --git a/graphics/fontman.cpp b/graphics/fontman.cpp
index 99dd3d664f..5cf52416cf 100644
--- a/graphics/fontman.cpp
+++ b/graphics/fontman.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "graphics/fontman.h"
diff --git a/graphics/fontman.h b/graphics/fontman.h
index b06ddea860..b3de92f547 100644
--- a/graphics/fontman.h
+++ b/graphics/fontman.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_FONTMAN_H
diff --git a/graphics/fonts/bdf.cpp b/graphics/fonts/bdf.cpp
index 7b2290cc3a..3476838911 100644
--- a/graphics/fonts/bdf.cpp
+++ b/graphics/fonts/bdf.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "graphics/fonts/bdf.h"
diff --git a/graphics/fonts/bdf.h b/graphics/fonts/bdf.h
index 842e54f851..b91834785f 100644
--- a/graphics/fonts/bdf.h
+++ b/graphics/fonts/bdf.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_FONTS_BDF_H
diff --git a/graphics/fonts/winfont.cpp b/graphics/fonts/winfont.cpp
index c0ebab19ba..141fc243e1 100644
--- a/graphics/fonts/winfont.cpp
+++ b/graphics/fonts/winfont.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/file.h"
diff --git a/graphics/fonts/winfont.h b/graphics/fonts/winfont.h
index 2c7ba07b41..3354fc2381 100644
--- a/graphics/fonts/winfont.h
+++ b/graphics/fonts/winfont.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_WINFONT_H
diff --git a/graphics/maccursor.cpp b/graphics/maccursor.cpp
index 8ad6c95961..a66a9104f3 100644
--- a/graphics/maccursor.cpp
+++ b/graphics/maccursor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/maccursor.h b/graphics/maccursor.h
index f5efc20655..1ae38f8aa9 100644
--- a/graphics/maccursor.h
+++ b/graphics/maccursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/module.mk b/graphics/module.mk
index 8b63435905..5918775240 100644
--- a/graphics/module.mk
+++ b/graphics/module.mk
@@ -21,14 +21,7 @@ MODULE_OBJS := \
VectorRenderer.o \
VectorRendererSpec.o \
wincursor.o \
- yuv_to_rgb.o \
- decoders/bmp.o \
- decoders/iff.o \
- decoders/jpeg.o \
- decoders/pcx.o \
- decoders/pict.o \
- decoders/png.o \
- decoders/tga.o
+ yuv_to_rgb.o
ifdef USE_SCALERS
MODULE_OBJS += \
diff --git a/graphics/palette.h b/graphics/palette.h
index 77891c3fdc..2884bef7f4 100644
--- a/graphics/palette.h
+++ b/graphics/palette.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/pixelformat.h b/graphics/pixelformat.h
index ca4ef11c17..792833a8e3 100644
--- a/graphics/pixelformat.h
+++ b/graphics/pixelformat.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/primitives.cpp b/graphics/primitives.cpp
index c140dc8644..564bdb9673 100644
--- a/graphics/primitives.cpp
+++ b/graphics/primitives.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/util.h"
diff --git a/graphics/primitives.h b/graphics/primitives.h
index f4a92683ab..a3e8ab1565 100644
--- a/graphics/primitives.h
+++ b/graphics/primitives.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_PRIMITIVES_H
diff --git a/graphics/scaler.cpp b/graphics/scaler.cpp
index 3325fd4db2..745988cbd9 100644
--- a/graphics/scaler.cpp
+++ b/graphics/scaler.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/scaler.h b/graphics/scaler.h
index 1e5b796631..cf9a98a240 100644
--- a/graphics/scaler.h
+++ b/graphics/scaler.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_SCALER_H
diff --git a/graphics/scaler/2xsai.cpp b/graphics/scaler/2xsai.cpp
index 2afdd9385d..757c1cf8de 100644
--- a/graphics/scaler/2xsai.cpp
+++ b/graphics/scaler/2xsai.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/scaler/Normal2xARM.s b/graphics/scaler/Normal2xARM.s
index e3592295e0..c5684c30e6 100644
--- a/graphics/scaler/Normal2xARM.s
+++ b/graphics/scaler/Normal2xARM.s
@@ -28,6 +28,7 @@
@ Assumes dst is aligned (so did the C)
@ Assumes 16bit (so did the C)
+ .align 2
Normal2xARM:
@ r0 = src
@ r1 = srcPitch
@@ -92,6 +93,7 @@ thin:
@ Assumes dst is aligned (so did the C)
@ Assumes 16bit (so did the C)
+ .align 2
Normal2xAspectMask:
@ r0 = src
@ r1 = srcPitch
diff --git a/graphics/scaler/aspect.cpp b/graphics/scaler/aspect.cpp
index 92d6c5777e..b923442163 100644
--- a/graphics/scaler/aspect.cpp
+++ b/graphics/scaler/aspect.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/scaler/aspect.h b/graphics/scaler/aspect.h
index bb354c79ac..30e13c93cd 100644
--- a/graphics/scaler/aspect.h
+++ b/graphics/scaler/aspect.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_SCALER_ASPECT_H
diff --git a/graphics/scaler/downscaler.cpp b/graphics/scaler/downscaler.cpp
index 65400ccd46..3f4f81a228 100644
--- a/graphics/scaler/downscaler.cpp
+++ b/graphics/scaler/downscaler.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/scaler/downscaler.h b/graphics/scaler/downscaler.h
index 97e55dc3d5..ca1137e78b 100644
--- a/graphics/scaler/downscaler.h
+++ b/graphics/scaler/downscaler.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/scaler/downscalerARM.s b/graphics/scaler/downscalerARM.s
index e4662522aa..4c09381457 100644
--- a/graphics/scaler/downscalerARM.s
+++ b/graphics/scaler/downscalerARM.s
@@ -29,6 +29,7 @@
@ dstPtr. srcPitch and dstPitch identify how to reach subsequent
@ lines. redblueMask and round allow for one routine to do both
@ 565 and 555 formats.
+ .align 2
DownscaleAllByHalfARM:
@ r0 = srcPtr
@ r1 = srcPitch
diff --git a/graphics/scaler/hq2x.cpp b/graphics/scaler/hq2x.cpp
index 246e8f62d7..74ceebd611 100644
--- a/graphics/scaler/hq2x.cpp
+++ b/graphics/scaler/hq2x.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/scaler/hq3x.cpp b/graphics/scaler/hq3x.cpp
index 7f7867d5a6..f6c86b3017 100644
--- a/graphics/scaler/hq3x.cpp
+++ b/graphics/scaler/hq3x.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/scaler/intern.h b/graphics/scaler/intern.h
index 255cc1a511..0f3f874675 100644
--- a/graphics/scaler/intern.h
+++ b/graphics/scaler/intern.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/scaler/scale2xARM.s b/graphics/scaler/scale2xARM.s
index 563a22eeb1..a56e78447f 100644
--- a/graphics/scaler/scale2xARM.s
+++ b/graphics/scaler/scale2xARM.s
@@ -37,6 +37,7 @@
@ We hold: r10 B
@ r8 r14 r7 D E F
@ r12 H
+ .align 2
scale2x_8_arm:
STMFD r13!,{r4-r5,r7-r8,r10-r11,r14}
LDR r4, [r13,#4*7]
@@ -85,6 +86,7 @@ end8:
LDMFD r13!,{r4-r5,r7-r8,r10-r11,PC}
+ .align 2
scale2x_16_arm:
STMFD r13!,{r4-r5,r7-r8,r10-r11,r14}
LDR r4, [r13,#4*7]
@@ -133,6 +135,7 @@ end16:
LDMFD r13!,{r4-r5,r7-r8,r10-r11,PC}
+ .align 2
scale2x_32_arm:
STMFD r13!,{r4-r5,r7-r8,r10-r11,r14}
LDR r4, [r13,#4*7]
diff --git a/graphics/scaler/thumbnail_intern.cpp b/graphics/scaler/thumbnail_intern.cpp
index c30fc3b6fd..65e327f9c2 100644
--- a/graphics/scaler/thumbnail_intern.cpp
+++ b/graphics/scaler/thumbnail_intern.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/sjis.cpp b/graphics/sjis.cpp
index 59ee5af8c4..45cf1cee90 100644
--- a/graphics/sjis.cpp
+++ b/graphics/sjis.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/scummsys.h"
diff --git a/graphics/sjis.h b/graphics/sjis.h
index 928332f712..4c5b2797c5 100644
--- a/graphics/sjis.h
+++ b/graphics/sjis.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
// The code in this file is currently only used in KYRA and SCI.
diff --git a/graphics/surface.cpp b/graphics/surface.cpp
index 777c1058fb..67ed942b0b 100644
--- a/graphics/surface.cpp
+++ b/graphics/surface.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/algorithm.h"
diff --git a/graphics/surface.h b/graphics/surface.h
index f1b2aa64ab..d083449854 100644
--- a/graphics/surface.h
+++ b/graphics/surface.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_SURFACE_H
diff --git a/graphics/thumbnail.cpp b/graphics/thumbnail.cpp
index e3f368dffa..802ad09cbb 100644
--- a/graphics/thumbnail.cpp
+++ b/graphics/thumbnail.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "graphics/thumbnail.h"
diff --git a/graphics/thumbnail.h b/graphics/thumbnail.h
index c857809c91..cec3d02800 100644
--- a/graphics/thumbnail.h
+++ b/graphics/thumbnail.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GRAPHICS_THUMBNAIL_H
diff --git a/graphics/wincursor.cpp b/graphics/wincursor.cpp
index 1d599f7130..1d96114673 100644
--- a/graphics/wincursor.cpp
+++ b/graphics/wincursor.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/graphics/wincursor.h b/graphics/wincursor.h
index 9e73e3a12f..2780b23a90 100644
--- a/graphics/wincursor.h
+++ b/graphics/wincursor.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/Actions.cpp b/gui/Actions.cpp
index 0c80844ff9..b25f75e4af 100644
--- a/gui/Actions.cpp
+++ b/gui/Actions.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/Actions.h b/gui/Actions.h
index 039fb9019c..ac7bd39093 100644
--- a/gui/Actions.h
+++ b/gui/Actions.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/EventRecorder.cpp b/gui/EventRecorder.cpp
index 71f66911e9..ab284aaa6e 100644
--- a/gui/EventRecorder.cpp
+++ b/gui/EventRecorder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/EventRecorder.h b/gui/EventRecorder.h
index b2a549ece8..5f016b0c33 100644
--- a/gui/EventRecorder.h
+++ b/gui/EventRecorder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/Key.cpp b/gui/Key.cpp
index fa29971e12..cec48ffb65 100644
--- a/gui/Key.cpp
+++ b/gui/Key.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/Key.h b/gui/Key.h
index f8f8983c97..8bbbc4fdaa 100644
--- a/gui/Key.h
+++ b/gui/Key.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/KeysDialog.cpp b/gui/KeysDialog.cpp
index f28b039763..7adb20a379 100644
--- a/gui/KeysDialog.cpp
+++ b/gui/KeysDialog.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/KeysDialog.h b/gui/KeysDialog.h
index 2dd6076a02..e0cf025583 100644
--- a/gui/KeysDialog.h
+++ b/gui/KeysDialog.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/ThemeEngine.cpp b/gui/ThemeEngine.cpp
index 9fe482ddcc..9e54597dd4 100644
--- a/gui/ThemeEngine.cpp
+++ b/gui/ThemeEngine.cpp
@@ -34,7 +34,8 @@
#include "graphics/VectorRenderer.h"
#include "graphics/fonts/bdf.h"
#include "graphics/fonts/ttf.h"
-#include "graphics/decoders/bmp.h"
+
+#include "image/bmp.h"
#include "gui/widget.h"
#include "gui/ThemeEngine.h"
@@ -638,7 +639,7 @@ bool ThemeEngine::addBitmap(const Common::String &filename) {
return true;
// If not, try to load the bitmap via the BitmapDecoder class.
- Graphics::BitmapDecoder bitmapDecoder;
+ Image::BitmapDecoder bitmapDecoder;
const Graphics::Surface *srcSurface = 0;
Common::ArchiveMemberList members;
_themeFiles.listMatchingMembers(members, filename);
diff --git a/gui/Tooltip.cpp b/gui/Tooltip.cpp
index 88124e782b..e5f06bcafe 100644
--- a/gui/Tooltip.cpp
+++ b/gui/Tooltip.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/util.h"
diff --git a/gui/Tooltip.h b/gui/Tooltip.h
index 9ab536b349..f83fc40966 100644
--- a/gui/Tooltip.h
+++ b/gui/Tooltip.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_TOOLTIP_H
diff --git a/gui/about.cpp b/gui/about.cpp
index 459a6b5490..fe726df750 100644
--- a/gui/about.cpp
+++ b/gui/about.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "engines/metaengine.h"
diff --git a/gui/about.h b/gui/about.h
index 65062ab79d..9eeb3071f3 100644
--- a/gui/about.h
+++ b/gui/about.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef ABOUT_DIALOG_H
diff --git a/gui/browser.cpp b/gui/browser.cpp
index 84f2d0f747..83e240a5bc 100644
--- a/gui/browser.cpp
+++ b/gui/browser.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "gui/browser.h"
diff --git a/gui/browser.h b/gui/browser.h
index b82fe516f9..b77907bad2 100644
--- a/gui/browser.h
+++ b/gui/browser.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef BROWSER_DIALOG_H
diff --git a/gui/chooser.cpp b/gui/chooser.cpp
index c195e94c9b..61af3de407 100644
--- a/gui/chooser.cpp
+++ b/gui/chooser.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/translation.h"
diff --git a/gui/chooser.h b/gui/chooser.h
index d7e795b344..47b34b7233 100644
--- a/gui/chooser.h
+++ b/gui/chooser.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef CHOOSER_DIALOG_H
diff --git a/gui/console.cpp b/gui/console.cpp
index 7e88b6dfb5..4cdad41f5f 100644
--- a/gui/console.cpp
+++ b/gui/console.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "gui/console.h"
diff --git a/gui/console.h b/gui/console.h
index 194bfd6fc0..430d5b9434 100644
--- a/gui/console.h
+++ b/gui/console.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef CONSOLE_DIALOG_H
diff --git a/gui/debugger.cpp b/gui/debugger.cpp
index 9aa322e12e..2ec9937fdb 100644
--- a/gui/debugger.cpp
+++ b/gui/debugger.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/debugger.h b/gui/debugger.h
index b79e8723c1..4ce5481fbb 100644
--- a/gui/debugger.h
+++ b/gui/debugger.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_DEBUGGER_H
diff --git a/gui/dialog.cpp b/gui/dialog.cpp
index ffca15bbc8..fa4e508494 100644
--- a/gui/dialog.cpp
+++ b/gui/dialog.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/rect.h"
@@ -249,7 +250,18 @@ void Dialog::handleKeyDown(Common::KeyState state) {
close();
}
- // TODO: tab/shift-tab should focus the next/previous focusable widget
+ if (state.keycode == Common::KEYCODE_TAB) {
+ // TODO: Maybe add Tab behaviours for all widgets too.
+ // searches through widgets on screen for tab widget
+ Widget *w = _firstWidget;
+ while (w) {
+ if (w->_type == kTabWidget)
+ if (w->handleKeyDown(state))
+ return;
+
+ w = w->_next;
+ }
+ }
}
void Dialog::handleKeyUp(Common::KeyState state) {
diff --git a/gui/dialog.h b/gui/dialog.h
index d269a2f645..593ee13458 100644
--- a/gui/dialog.h
+++ b/gui/dialog.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_DIALOG_H
diff --git a/gui/editrecorddialog.cpp b/gui/editrecorddialog.cpp
index cfcc747121..cd384baaed 100644
--- a/gui/editrecorddialog.cpp
+++ b/gui/editrecorddialog.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/editrecorddialog.h b/gui/editrecorddialog.h
index c8da4521ca..3825f64ee1 100644
--- a/gui/editrecorddialog.h
+++ b/gui/editrecorddialog.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/error.cpp b/gui/error.cpp
index 75bdab1a2a..11f591ed0e 100644
--- a/gui/error.cpp
+++ b/gui/error.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/error.h b/gui/error.h
index f193136d74..fa517b8e48 100644
--- a/gui/error.h
+++ b/gui/error.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/fluidsynth-dialog.cpp b/gui/fluidsynth-dialog.cpp
index 662518b557..af5ee6fb10 100644
--- a/gui/fluidsynth-dialog.cpp
+++ b/gui/fluidsynth-dialog.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "gui/fluidsynth-dialog.h"
diff --git a/gui/fluidsynth-dialog.h b/gui/fluidsynth-dialog.h
index 4d74c9f93e..ebf6563960 100644
--- a/gui/fluidsynth-dialog.h
+++ b/gui/fluidsynth-dialog.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef FLUIDSYNTH_DIALOG_H
diff --git a/gui/gui-manager.cpp b/gui/gui-manager.cpp
index 999d61e854..80c3c2a552 100644
--- a/gui/gui-manager.cpp
+++ b/gui/gui-manager.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/events.h"
diff --git a/gui/gui-manager.h b/gui/gui-manager.h
index b52d91ba08..4186a93ccb 100644
--- a/gui/gui-manager.h
+++ b/gui/gui-manager.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUIMANAGER_H
diff --git a/gui/launcher.cpp b/gui/launcher.cpp
index 77d4cce794..9ac97a77d6 100644
--- a/gui/launcher.cpp
+++ b/gui/launcher.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "base/version.h"
diff --git a/gui/launcher.h b/gui/launcher.h
index 2ab47be98d..e9c76a5320 100644
--- a/gui/launcher.h
+++ b/gui/launcher.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_LAUNCHER_DIALOG_H
diff --git a/gui/massadd.cpp b/gui/massadd.cpp
index 70580e8b9c..34e1ab466e 100644
--- a/gui/massadd.cpp
+++ b/gui/massadd.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "engines/metaengine.h"
diff --git a/gui/massadd.h b/gui/massadd.h
index 7350213835..116a420d79 100644
--- a/gui/massadd.h
+++ b/gui/massadd.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef MASSADD_DIALOG_H
diff --git a/gui/message.cpp b/gui/message.cpp
index 6c2f489a4c..674680c4d4 100644
--- a/gui/message.cpp
+++ b/gui/message.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/str.h"
diff --git a/gui/message.h b/gui/message.h
index 9da8417b5f..ff69780709 100644
--- a/gui/message.h
+++ b/gui/message.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef MESSAGE_DIALOG_H
diff --git a/gui/object.cpp b/gui/object.cpp
index 189a286ead..ef2cc9d6e0 100644
--- a/gui/object.cpp
+++ b/gui/object.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/textconsole.h"
diff --git a/gui/object.h b/gui/object.h
index dac3341b5a..219bf77f69 100644
--- a/gui/object.h
+++ b/gui/object.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_OBJECT_H
diff --git a/gui/onscreendialog.cpp b/gui/onscreendialog.cpp
index 03a6f26ec0..0e37834136 100644
--- a/gui/onscreendialog.cpp
+++ b/gui/onscreendialog.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/onscreendialog.h b/gui/onscreendialog.h
index 2fae14cbc6..ca95ff3743 100644
--- a/gui/onscreendialog.h
+++ b/gui/onscreendialog.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/options.cpp b/gui/options.cpp
index a9fdc19274..3308cdead6 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "gui/browser.h"
diff --git a/gui/options.h b/gui/options.h
index 081ef4fea5..1e65bfd134 100644
--- a/gui/options.h
+++ b/gui/options.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef OPTIONS_DIALOG_H
diff --git a/gui/predictivedialog.cpp b/gui/predictivedialog.cpp
index 5d45a3060e..a894b02f80 100644
--- a/gui/predictivedialog.cpp
+++ b/gui/predictivedialog.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/gui/predictivedialog.h b/gui/predictivedialog.h
index 0e3d2967c0..32d769d6ca 100644
--- a/gui/predictivedialog.h
+++ b/gui/predictivedialog.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GLOBAL_DIALOGS_H
diff --git a/gui/recorderdialog.cpp b/gui/recorderdialog.cpp
index 1a11dbac65..5617d2ba9a 100644
--- a/gui/recorderdialog.cpp
+++ b/gui/recorderdialog.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/algorithm.h"
diff --git a/gui/recorderdialog.h b/gui/recorderdialog.h
index 9c5965f56d..8a229a06e4 100644
--- a/gui/recorderdialog.h
+++ b/gui/recorderdialog.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_RECORDER_DIALOG_H
diff --git a/gui/saveload-dialog.cpp b/gui/saveload-dialog.cpp
index 585117fba4..f6eee3af50 100644
--- a/gui/saveload-dialog.cpp
+++ b/gui/saveload-dialog.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "gui/saveload-dialog.h"
diff --git a/gui/saveload-dialog.h b/gui/saveload-dialog.h
index 6f7d95f73f..31f28f6452 100644
--- a/gui/saveload-dialog.h
+++ b/gui/saveload-dialog.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_SAVELOAD_DIALOG_H
diff --git a/gui/saveload.cpp b/gui/saveload.cpp
index c2bbcd9bec..c1c1d12ec5 100644
--- a/gui/saveload.cpp
+++ b/gui/saveload.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/config-manager.h"
diff --git a/gui/saveload.h b/gui/saveload.h
index 17fd99a31d..22c26d4c5e 100644
--- a/gui/saveload.h
+++ b/gui/saveload.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_SAVELOAD_H
diff --git a/gui/themebrowser.cpp b/gui/themebrowser.cpp
index c22603b822..d8bd5d6fe8 100644
--- a/gui/themebrowser.cpp
+++ b/gui/themebrowser.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "gui/themebrowser.h"
diff --git a/gui/themebrowser.h b/gui/themebrowser.h
index daea3836fc..2d94a7f423 100644
--- a/gui/themebrowser.h
+++ b/gui/themebrowser.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_THEMEBROWSER_H
diff --git a/gui/themes/translations.dat b/gui/themes/translations.dat
index 7bd1316208..1a7b49852d 100644
--- a/gui/themes/translations.dat
+++ b/gui/themes/translations.dat
Binary files differ
diff --git a/gui/widget.cpp b/gui/widget.cpp
index e96b62e359..851774fd70 100644
--- a/gui/widget.cpp
+++ b/gui/widget.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/scummsys.h"
diff --git a/gui/widget.h b/gui/widget.h
index e3f712564f..9891f32b36 100644
--- a/gui/widget.h
+++ b/gui/widget.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_WIDGET_H
diff --git a/gui/widgets/editable.cpp b/gui/widgets/editable.cpp
index 6f550b5642..af3e5e9b9a 100644
--- a/gui/widgets/editable.cpp
+++ b/gui/widgets/editable.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/rect.h"
diff --git a/gui/widgets/editable.h b/gui/widgets/editable.h
index 63a1942311..e3b3a2b014 100644
--- a/gui/widgets/editable.h
+++ b/gui/widgets/editable.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_WIDGETS_EDITABLE_H
diff --git a/gui/widgets/edittext.cpp b/gui/widgets/edittext.cpp
index c54ca573ba..3e72350c99 100644
--- a/gui/widgets/edittext.cpp
+++ b/gui/widgets/edittext.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/system.h"
diff --git a/gui/widgets/edittext.h b/gui/widgets/edittext.h
index a34dc4b5dd..7376ae70ff 100644
--- a/gui/widgets/edittext.h
+++ b/gui/widgets/edittext.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_WIDGETS_EDITTEXT_H
diff --git a/gui/widgets/list.cpp b/gui/widgets/list.cpp
index 8b8eb31db9..4b69202fdc 100644
--- a/gui/widgets/list.cpp
+++ b/gui/widgets/list.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/system.h"
diff --git a/gui/widgets/list.h b/gui/widgets/list.h
index d18a82dd3f..1abb2b810e 100644
--- a/gui/widgets/list.h
+++ b/gui/widgets/list.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_WIDGETS_LIST_H
diff --git a/gui/widgets/popup.cpp b/gui/widgets/popup.cpp
index 829a49c53e..6186492339 100644
--- a/gui/widgets/popup.cpp
+++ b/gui/widgets/popup.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/system.h"
diff --git a/gui/widgets/popup.h b/gui/widgets/popup.h
index 34983adbeb..102c7fd258 100644
--- a/gui/widgets/popup.h
+++ b/gui/widgets/popup.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_WIDGETS_POPUP_H
diff --git a/gui/widgets/scrollbar.cpp b/gui/widgets/scrollbar.cpp
index c7c17bc908..f1306b9c4a 100644
--- a/gui/widgets/scrollbar.cpp
+++ b/gui/widgets/scrollbar.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/rect.h"
diff --git a/gui/widgets/scrollbar.h b/gui/widgets/scrollbar.h
index 1c9f371cbc..de7c13ce03 100644
--- a/gui/widgets/scrollbar.h
+++ b/gui/widgets/scrollbar.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_WIDGETS_SCROLLBAR_H
diff --git a/gui/widgets/tab.cpp b/gui/widgets/tab.cpp
index 66f33907ca..756781a04b 100644
--- a/gui/widgets/tab.cpp
+++ b/gui/widgets/tab.cpp
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#include "common/util.h"
@@ -182,6 +183,7 @@ void TabWidget::setActiveTab(int tabID) {
}
_activeTab = tabID;
_firstWidget = _tabs[tabID].firstWidget;
+
_boss->draw();
}
}
@@ -225,12 +227,34 @@ void TabWidget::handleMouseDown(int x, int y, int button, int clickCount) {
}
bool TabWidget::handleKeyDown(Common::KeyState state) {
- // TODO: maybe there should be a way to switch between tabs
- // using the keyboard? E.g. Alt-Shift-Left/Right-Arrow or something
- // like that.
+ if (state.hasFlags(Common::KBD_SHIFT) && state.keycode == Common::KEYCODE_TAB)
+ adjustTabs(kTabBackwards);
+ else if (state.keycode == Common::KEYCODE_TAB)
+ adjustTabs(kTabForwards);
+
return Widget::handleKeyDown(state);
}
+void TabWidget::adjustTabs(int value) {
+ // Determine which tab is next
+ int tabID = _activeTab + value;
+ if (tabID >= (int)_tabs.size())
+ tabID = 0;
+ else if (tabID < 0)
+ tabID = ((int)_tabs.size() - 1);
+
+ // Slides _firstVisibleTab forward to the correct tab
+ int maxTabsOnScreen = (_w / _tabWidth);
+ if (tabID >= maxTabsOnScreen && (_firstVisibleTab + maxTabsOnScreen) < (int)_tabs.size())
+ _firstVisibleTab++;
+
+ // Slides _firstVisibleTab backwards to the correct tab
+ while (tabID < _firstVisibleTab)
+ _firstVisibleTab--;
+
+ setActiveTab(tabID);
+}
+
void TabWidget::reflowLayout() {
Widget::reflowLayout();
diff --git a/gui/widgets/tab.h b/gui/widgets/tab.h
index b19036979e..a01ee2d9dc 100644
--- a/gui/widgets/tab.h
+++ b/gui/widgets/tab.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
#ifndef GUI_WIDGETS_TAB_H
@@ -27,6 +28,11 @@
#include "common/array.h"
namespace GUI {
+
+enum {
+ kTabForwards = 1,
+ kTabBackwards = -1
+};
class TabWidget : public Widget {
typedef Common::String String;
@@ -108,6 +114,8 @@ protected:
virtual void drawWidget();
virtual Widget *findWidget(int x, int y);
+
+ virtual void adjustTabs(int value);
};
} // End of namespace GUI
diff --git a/graphics/decoders/bmp.cpp b/image/bmp.cpp
index 2eabbb7631..28eb049035 100644
--- a/graphics/decoders/bmp.cpp
+++ b/image/bmp.cpp
@@ -17,21 +17,25 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
+#include "image/bmp.h"
+
#include "common/stream.h"
+#include "common/substream.h"
#include "common/textconsole.h"
-
#include "graphics/pixelformat.h"
#include "graphics/surface.h"
-#include "graphics/decoders/bmp.h"
+#include "image/codecs/codec.h"
-namespace Graphics {
+namespace Image {
BitmapDecoder::BitmapDecoder() {
_surface = 0;
_palette = 0;
_paletteColorCount = 0;
+ _codec = 0;
}
BitmapDecoder::~BitmapDecoder() {
@@ -39,13 +43,15 @@ BitmapDecoder::~BitmapDecoder() {
}
void BitmapDecoder::destroy() {
- if (_surface) {
- _surface->free();
- delete _surface; _surface = 0;
- }
+ _surface = 0;
+
+ delete[] _palette;
+ _palette = 0;
- delete[] _palette; _palette = 0;
_paletteColorCount = 0;
+
+ delete _codec;
+ _codec = 0;
}
bool BitmapDecoder::loadStream(Common::SeekableReadStream &stream) {
@@ -87,14 +93,8 @@ bool BitmapDecoder::loadStream(Common::SeekableReadStream &stream) {
return false;
}
- uint32 compression = stream.readUint32LE();
-
- if (compression != 0) {
- warning("Compressed bitmaps not supported");
- return false;
- }
-
- /* uint32 imageSize = */ stream.readUint32LE();
+ uint32 compression = stream.readUint32BE();
+ uint32 imageSize = stream.readUint32LE();
/* uint32 pixelsPerMeterX = */ stream.readUint32LE();
/* uint32 pixelsPerMeterY = */ stream.readUint32LE();
_paletteColorCount = stream.readUint32LE();
@@ -114,69 +114,22 @@ bool BitmapDecoder::loadStream(Common::SeekableReadStream &stream) {
}
}
- // Start us at the beginning of the image
- stream.seek(imageOffset);
-
- Graphics::PixelFormat format = Graphics::PixelFormat::createFormatCLUT8();
-
- // BGRA for 24bpp and 32 bpp
- if (bitsPerPixel == 24 || bitsPerPixel == 32)
- format = Graphics::PixelFormat(4, 8, 8, 8, 8, 8, 16, 24, 0);
-
- _surface = new Graphics::Surface();
- _surface->create(width, height, format);
+ // Create the codec (it will warn about unhandled compression)
+ _codec = createBitmapCodec(compression, width, height, bitsPerPixel);
+ if (!_codec)
+ return false;
- int srcPitch = width * (bitsPerPixel >> 3);
- const int extraDataLength = (srcPitch % 4) ? 4 - (srcPitch % 4) : 0;
+ // If the image size is zero, set it to the rest of the stream.
+ if (imageSize == 0)
+ imageSize = stream.size() - imageOffset;
- if (bitsPerPixel == 8) {
- byte *dst = (byte *)_surface->getPixels();
+ // Grab the frame data
+ Common::SeekableSubReadStream subStream(&stream, imageOffset, imageOffset + imageSize);
- for (int32 i = 0; i < height; i++) {
- stream.read(dst + (height - i - 1) * width, width);
- stream.skip(extraDataLength);
- }
- } else if (bitsPerPixel == 24) {
- byte *dst = (byte *)_surface->getBasePtr(0, height - 1);
-
- for (int32 i = 0; i < height; i++) {
- for (uint32 j = 0; j < width; j++) {
- byte b = stream.readByte();
- byte g = stream.readByte();
- byte r = stream.readByte();
- uint32 color = format.RGBToColor(r, g, b);
-
- *((uint32 *)dst) = color;
- dst += format.bytesPerPixel;
- }
-
- stream.skip(extraDataLength);
- dst -= _surface->pitch * 2;
- }
- } else { // 32 bpp
- byte *dst = (byte *)_surface->getBasePtr(0, height - 1);
-
- for (int32 i = 0; i < height; i++) {
- for (uint32 j = 0; j < width; j++) {
- byte b = stream.readByte();
- byte g = stream.readByte();
- byte r = stream.readByte();
- // Ignore the last byte, as in v3 it is unused
- // and should thus NOT be used as alpha.
- // ref: http://msdn.microsoft.com/en-us/library/windows/desktop/dd183376%28v=vs.85%29.aspx
- stream.readByte();
- uint32 color = format.RGBToColor(r, g, b);
-
- *((uint32 *)dst) = color;
- dst += format.bytesPerPixel;
- }
-
- stream.skip(extraDataLength);
- dst -= _surface->pitch * 2;
- }
- }
+ // We only support raw bitmaps for now
+ _surface = _codec->decodeFrame(subStream);
return true;
}
-} // End of namespace Graphics
+} // End of namespace Image
diff --git a/graphics/decoders/bmp.h b/image/bmp.h
index 779da352be..b482cc674b 100644
--- a/graphics/decoders/bmp.h
+++ b/image/bmp.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/**
@@ -27,21 +28,24 @@
* - wintermute
*/
-#ifndef GRAPHICS_DECODERS_BMP_H
-#define GRAPHICS_DECODERS_BMP_H
+#ifndef IMAGE_BMP_H
+#define IMAGE_BMP_H
#include "common/scummsys.h"
#include "common/str.h"
-#include "graphics/decoders/image_decoder.h"
+#include "image/image_decoder.h"
-namespace Common{
+namespace Common {
class SeekableReadStream;
}
namespace Graphics {
-
-struct PixelFormat;
struct Surface;
+}
+
+namespace Image {
+
+class Codec;
class BitmapDecoder : public ImageDecoder {
public:
@@ -51,16 +55,17 @@ public:
// ImageDecoder API
void destroy();
virtual bool loadStream(Common::SeekableReadStream &stream);
- virtual const Surface *getSurface() const { return _surface; }
+ virtual const Graphics::Surface *getSurface() const { return _surface; }
const byte *getPalette() const { return _palette; }
uint16 getPaletteColorCount() const { return _paletteColorCount; }
private:
- Surface *_surface;
+ Codec *_codec;
+ const Graphics::Surface *_surface;
byte *_palette;
uint16 _paletteColorCount;
};
-} // End of namespace Graphics
+} // End of namespace Image
#endif
diff --git a/image/codecs/bmp_raw.cpp b/image/codecs/bmp_raw.cpp
new file mode 100644
index 0000000000..83aedc84e6
--- /dev/null
+++ b/image/codecs/bmp_raw.cpp
@@ -0,0 +1,113 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "image/codecs/bmp_raw.h"
+
+#include "common/stream.h"
+#include "common/textconsole.h"
+#include "graphics/surface.h"
+
+namespace Image {
+
+BitmapRawDecoder::BitmapRawDecoder(int width, int height, int bitsPerPixel) : Codec(),
+ _surface(0), _width(width), _height(height), _bitsPerPixel(bitsPerPixel) {
+}
+
+BitmapRawDecoder::~BitmapRawDecoder() {
+ if (_surface) {
+ _surface->free();
+ delete _surface;
+ }
+}
+
+const Graphics::Surface *BitmapRawDecoder::decodeFrame(Common::SeekableReadStream &stream) {
+ Graphics::PixelFormat format = getPixelFormat();
+
+ _surface = new Graphics::Surface();
+ _surface->create(_width, _height, format);
+
+ int srcPitch = _width * (_bitsPerPixel >> 3);
+ const int extraDataLength = (srcPitch % 4) ? 4 - (srcPitch % 4) : 0;
+
+ if (_bitsPerPixel == 8) {
+ byte *dst = (byte *)_surface->getPixels();
+
+ for (int i = 0; i < _height; i++) {
+ stream.read(dst + (_height - i - 1) * _width, _width);
+ stream.skip(extraDataLength);
+ }
+ } else if (_bitsPerPixel == 24) {
+ byte *dst = (byte *)_surface->getBasePtr(0, _height - 1);
+
+ for (int i = 0; i < _height; i++) {
+ for (int j = 0; j < _width; j++) {
+ byte b = stream.readByte();
+ byte g = stream.readByte();
+ byte r = stream.readByte();
+ uint32 color = format.RGBToColor(r, g, b);
+
+ *((uint32 *)dst) = color;
+ dst += format.bytesPerPixel;
+ }
+
+ stream.skip(extraDataLength);
+ dst -= _surface->pitch * 2;
+ }
+ } else { // 32 bpp
+ byte *dst = (byte *)_surface->getBasePtr(0, _height - 1);
+
+ for (int i = 0; i < _height; i++) {
+ for (int j = 0; j < _width; j++) {
+ byte b = stream.readByte();
+ byte g = stream.readByte();
+ byte r = stream.readByte();
+ // Ignore the last byte, as in v3 it is unused
+ // and should thus NOT be used as alpha.
+ // ref: http://msdn.microsoft.com/en-us/library/windows/desktop/dd183376%28v=vs.85%29.aspx
+ stream.readByte();
+ uint32 color = format.RGBToColor(r, g, b);
+
+ *((uint32 *)dst) = color;
+ dst += format.bytesPerPixel;
+ }
+
+ stream.skip(extraDataLength);
+ dst -= _surface->pitch * 2;
+ }
+ }
+
+ return _surface;
+}
+
+Graphics::PixelFormat BitmapRawDecoder::getPixelFormat() const {
+ switch (_bitsPerPixel) {
+ case 8:
+ return Graphics::PixelFormat::createFormatCLUT8();
+ case 24:
+ case 32:
+ return Graphics::PixelFormat(4, 8, 8, 8, 8, 8, 16, 24, 0);
+ }
+
+ error("Unhandled BMP raw %dbpp", _bitsPerPixel);
+}
+
+} // End of namespace Image
diff --git a/video/codecs/jpeg.h b/image/codecs/bmp_raw.h
index 1023d97779..99509a1708 100644
--- a/video/codecs/jpeg.h
+++ b/image/codecs/bmp_raw.h
@@ -8,53 +8,44 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_JPEG_H
-#define VIDEO_CODECS_JPEG_H
-
-#include "video/codecs/codec.h"
-#include "graphics/pixelformat.h"
-
-namespace Common {
-class SeekableReadStream;
-}
+#ifndef IMAGE_CODECS_BMP_RAW_H
+#define IMAGE_CODECS_BMP_RAW_H
-namespace Graphics {
-struct Surface;
-}
+#include "image/codecs/codec.h"
-namespace Video {
+namespace Image {
/**
- * JPEG decoder.
+ * Bitmap raw image decoder.
*
- * Used in video:
- * - QuickTimeDecoder
+ * Used by BMP/AVI.
*/
-class JPEGDecoder : public Codec {
+class BitmapRawDecoder : public Codec {
public:
- JPEGDecoder();
- ~JPEGDecoder();
+ BitmapRawDecoder(int width, int height, int bitsPerPixel);
+ ~BitmapRawDecoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
- Graphics::PixelFormat getPixelFormat() const { return _pixelFormat; }
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
+ Graphics::PixelFormat getPixelFormat() const;
private:
- Graphics::PixelFormat _pixelFormat;
Graphics::Surface *_surface;
+ int _width, _height;
+ int _bitsPerPixel;
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/cdtoons.cpp b/image/codecs/cdtoons.cpp
index 68925ed0db..6a2dc51b86 100644
--- a/video/codecs/cdtoons.cpp
+++ b/image/codecs/cdtoons.cpp
@@ -8,25 +8,25 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#include "video/codecs/cdtoons.h"
+#include "image/codecs/cdtoons.h"
#include "common/rect.h"
#include "common/stream.h"
#include "common/textconsole.h"
#include "common/array.h"
-namespace Video {
+namespace Image {
struct CDToonsAction {
uint16 blockId;
@@ -39,12 +39,12 @@ struct CDToonsDiff {
Common::Rect rect;
};
-static Common::Rect readRect(Common::SeekableReadStream *stream) {
+static Common::Rect readRect(Common::SeekableReadStream &stream) {
Common::Rect rect;
- rect.top = stream->readUint16BE();
- rect.left = stream->readUint16BE();
- rect.bottom = stream->readUint16BE();
- rect.right = stream->readUint16BE();
+ rect.top = stream.readUint16BE();
+ rect.left = stream.readUint16BE();
+ rect.bottom = stream.readUint16BE();
+ rect.right = stream.readUint16BE();
return rect;
}
@@ -67,14 +67,14 @@ CDToonsDecoder::~CDToonsDecoder() {
delete[] i->_value.data;
}
-Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *stream) {
- uint16 u0 = stream->readUint16BE(); // always 9?
- uint16 frameId = stream->readUint16BE();
- uint16 blocksValidUntil = stream->readUint16BE();
- byte u6 = stream->readByte();
- byte backgroundColor = stream->readByte();
+Graphics::Surface *CDToonsDecoder::decodeFrame(Common::SeekableReadStream &stream) {
+ uint16 u0 = stream.readUint16BE(); // always 9?
+ uint16 frameId = stream.readUint16BE();
+ uint16 blocksValidUntil = stream.readUint16BE();
+ byte u6 = stream.readByte();
+ byte backgroundColor = stream.readByte();
debugN(5, "CDToons frame %d, size %d, unknown %04x (at 0), blocks valid until %d, unknown 6 is %02x, bkg color is %02x\n",
- frameId, stream->size(), u0, blocksValidUntil, u6, backgroundColor);
+ frameId, stream.size(), u0, blocksValidUntil, u6, backgroundColor);
Common::Rect clipRect = readRect(stream);
debugN(9, "CDToons clipRect: (%d, %d) to (%d, %d)\n",
@@ -84,31 +84,31 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
debugN(9, "CDToons dirtyRect: (%d, %d) to (%d, %d)\n",
dirtyRect.left, dirtyRect.top, dirtyRect.right, dirtyRect.bottom);
- uint32 flags = stream->readUint32BE();
+ uint32 flags = stream.readUint32BE();
if (flags & 0x80)
error("CDToons: frame already processed?");
debugN(5, "CDToons flags: %08x\n", flags);
- uint16 blockCount = stream->readUint16BE();
- uint16 blockOffset = stream->readUint16BE();
+ uint16 blockCount = stream.readUint16BE();
+ uint16 blockOffset = stream.readUint16BE();
debugN(9, "CDToons: %d blocks at 0x%04x\n",
blockCount, blockOffset);
// max block id?
- uint16 u32 = stream->readUint16BE();
+ uint16 u32 = stream.readUint16BE();
debugN(5, "CDToons unknown at 32: %04x\n", u32);
- byte actionCount = stream->readByte();
- byte u35 = stream->readByte();
+ byte actionCount = stream.readByte();
+ byte u35 = stream.readByte();
- uint16 paletteId = stream->readUint16BE();
- byte paletteSet = stream->readByte();
+ uint16 paletteId = stream.readUint16BE();
+ byte paletteSet = stream.readByte();
debugN(9, "CDToons palette id %04x, palette byte %02x\n",
paletteId, paletteSet);
- byte u39 = stream->readByte();
- uint16 u40 = stream->readUint16BE();
- uint16 u42 = stream->readUint16BE();
+ byte u39 = stream.readByte();
+ uint16 u40 = stream.readUint16BE();
+ uint16 u42 = stream.readUint16BE();
debugN(5, "CDToons: unknown at 35 is %02x, unknowns at 39: %02x, %04x, %04x\n",
u35, u39, u40, u42);
@@ -116,41 +116,41 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
for (uint i = 0; i < actionCount; i++) {
CDToonsAction action;
- action.blockId = stream->readUint16BE();
+ action.blockId = stream.readUint16BE();
action.rect = readRect(stream);
debugN(9, "CDToons action: render block %d at (%d, %d) to (%d, %d)\n",
action.blockId, action.rect.left, action.rect.top, action.rect.right, action.rect.bottom);
actions.push_back(action);
}
- if (stream->pos() > blockOffset)
+ if (stream.pos() > blockOffset)
error("CDToons header ended at 0x%08x, but blocks should have started at 0x%08x",
- stream->pos(), blockOffset);
+ stream.pos(), blockOffset);
- if (stream->pos() != blockOffset)
- error("CDToons had %d unknown bytes after header", blockOffset - stream->pos());
+ if (stream.pos() != blockOffset)
+ error("CDToons had %d unknown bytes after header", blockOffset - stream.pos());
for (uint i = 0; i < blockCount; i++) {
- uint16 blockId = stream->readUint16BE();
+ uint16 blockId = stream.readUint16BE();
if (blockId >= 1200)
error("CDToons: block id %d was too high", blockId);
if (_blocks.contains(blockId))
error("CDToons: new block %d was already seen", blockId);
CDToonsBlock block;
- block.flags = stream->readUint16BE();
+ block.flags = stream.readUint16BE();
// flag 1 = palette, flag 2 = data?
if (block.flags & 0x8000)
error("CDToons: block already processed?");
- block.size = stream->readUint32BE();
+ block.size = stream.readUint32BE();
if (block.size < 14)
error("CDToons: block size was %d, too small", block.size);
block.size -= 14;
- block.startFrame = stream->readUint16BE();
- block.endFrame = stream->readUint16BE();
- block.unknown12 = stream->readUint16BE();
+ block.startFrame = stream.readUint16BE();
+ block.endFrame = stream.readUint16BE();
+ block.unknown12 = stream.readUint16BE();
block.data = new byte[block.size];
- stream->read(block.data, block.size);
+ stream.read(block.data, block.size);
debugN(9, "CDToons block id 0x%04x of size 0x%08x, flags %04x, from frame %d to %d, unknown at 12 is %04x\n",
blockId, block.size, block.flags, block.startFrame, block.endFrame, block.unknown12);
@@ -162,16 +162,16 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
Common::Array<CDToonsDiff> diffs;
while (true) {
- int32 nextPos = stream->pos();
- uint32 tag = stream->readUint32BE();
- uint32 size = stream->readUint32BE();
+ int32 nextPos = stream.pos();
+ uint32 tag = stream.readUint32BE();
+ uint32 size = stream.readUint32BE();
nextPos += size;
switch (tag) {
case MKTAG('D','i','f','f'):
{
debugN(5, "CDToons: Diff\n");
- uint16 count = stream->readUint16BE();
+ uint16 count = stream.readUint16BE();
Common::Rect diffClipRect = readRect(stream);
debugN(9, "CDToons diffClipRect: (%d, %d) to (%d, %d)\n",
@@ -182,14 +182,14 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
CDToonsDiff diff;
diff.rect = readRect(stream);
- diff.size = stream->readUint32BE();
+ diff.size = stream.readUint32BE();
if (diff.size < 20)
error("CDToons: Diff block size was %d, too small", diff.size);
- uint16 diffWidth = stream->readUint16BE();
- uint16 diffHeight = stream->readUint16BE();
- uint16 unknown16 = stream->readUint16BE();
- uint16 unknown18 = stream->readUint16BE();
+ uint16 diffWidth = stream.readUint16BE();
+ uint16 diffHeight = stream.readUint16BE();
+ uint16 unknown16 = stream.readUint16BE();
+ uint16 unknown18 = stream.readUint16BE();
diff.size -= 8;
if (diffWidth != diff.rect.width() || diffHeight != diff.rect.height())
@@ -199,7 +199,7 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
unknown16, unknown18);
diff.data = new byte[diff.size];
- stream->read(diff.data, diff.size);
+ stream.read(diff.data, diff.size);
diffs.push_back(diff);
}
}
@@ -212,8 +212,8 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
if (xFrmBegin)
error("CDToons: duplicate XFrm");
- xFrmBegin = stream->readByte();
- xFrmCount = stream->readByte();
+ xFrmBegin = stream.readByte();
+ xFrmCount = stream.readByte();
debugN(9, "CDToons XFrm: run %d actions from %d\n", xFrmCount, xFrmBegin - 1);
// TODO: don't ignore (if xFrmCount is non-zero)
@@ -248,7 +248,7 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
if (!(flags & 0x40))
error("CDToons: useless FrtR?");
- uint16 count = stream->readUint16BE();
+ uint16 count = stream.readUint16BE();
debugN(9, "CDToons FrtR: %d dirty rectangles\n", count);
for (uint i = 0; i < count; i++) {
Common::Rect dirtyRectFrtR = readRect(stream);
@@ -263,7 +263,7 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
if (!(flags & 0x20))
error("CDToons: useless BckR?");
- uint16 count = stream->readUint16BE();
+ uint16 count = stream.readUint16BE();
debugN(9, "CDToons BckR: %d subentries\n", count);
for (uint i = 0; i < count; i++) {
Common::Rect dirtyRectBckR = readRect(stream);
@@ -276,15 +276,15 @@ Graphics::Surface *CDToonsDecoder::decodeImage(Common::SeekableReadStream *strea
warning("Unknown CDToons tag '%s'", tag2str(tag));
}
- if (stream->pos() > nextPos)
+ if (stream.pos() > nextPos)
error("CDToons ran off the end of a block while reading it (at %d, next block at %d)",
- stream->pos(), nextPos);
- if (stream->pos() != nextPos) {
- warning("CDToons had %d unknown bytes after block", nextPos - stream->pos());
- stream->seek(nextPos);
+ stream.pos(), nextPos);
+ if (stream.pos() != nextPos) {
+ warning("CDToons had %d unknown bytes after block", nextPos - stream.pos());
+ stream.seek(nextPos);
}
- if (stream->pos() == stream->size())
+ if (stream.pos() == stream.size())
break;
}
@@ -445,4 +445,4 @@ void CDToonsDecoder::setPalette(byte *data) {
_palette[0] = _palette[1] = _palette[2] = 0;
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/cdtoons.h b/image/codecs/cdtoons.h
index 74d30ce8ea..889ec3ea1d 100644
--- a/video/codecs/cdtoons.h
+++ b/image/codecs/cdtoons.h
@@ -8,26 +8,26 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_CDTOONS_H
-#define VIDEO_CODECS_CDTOONS_H
+#ifndef IMAGE_CODECS_CDTOONS_H
+#define IMAGE_CODECS_CDTOONS_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
#include "common/hashmap.h"
-namespace Video {
+namespace Image {
struct CDToonsBlock {
uint16 flags;
@@ -41,15 +41,14 @@ struct CDToonsBlock {
/**
* Broderbund CDToons decoder.
*
- * Used in video:
- * - QuickTimeDecoder
+ * Used by PICT/QuickTime.
*/
class CDToonsDecoder : public Codec {
public:
CDToonsDecoder(uint16 width, uint16 height);
~CDToonsDecoder();
- Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return Graphics::PixelFormat::createFormatCLUT8(); }
bool containsPalette() const { return true; }
const byte *getPalette() { _dirtyPalette = false; return _palette; }
@@ -67,6 +66,6 @@ private:
void setPalette(byte *data);
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/cinepak.cpp b/image/codecs/cinepak.cpp
index a7782f4192..8d5dbceb4a 100644
--- a/video/codecs/cinepak.cpp
+++ b/image/codecs/cinepak.cpp
@@ -8,19 +8,19 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#include "video/codecs/cinepak.h"
+#include "image/codecs/cinepak.h"
#include "common/debug.h"
#include "common/stream.h"
@@ -32,7 +32,7 @@
// Code here partially based off of ffmpeg ;)
-namespace Video {
+namespace Image {
#define PUT_PIXEL(offset, lum, u, v) \
if (_pixelFormat.bytesPerPixel != 1) { \
@@ -83,13 +83,13 @@ CinepakDecoder::~CinepakDecoder() {
delete[] _clipTableBuf;
}
-const Graphics::Surface *CinepakDecoder::decodeImage(Common::SeekableReadStream *stream) {
- _curFrame.flags = stream->readByte();
- _curFrame.length = (stream->readByte() << 16);
- _curFrame.length |= stream->readUint16BE();
- _curFrame.width = stream->readUint16BE();
- _curFrame.height = stream->readUint16BE();
- _curFrame.stripCount = stream->readUint16BE();
+const Graphics::Surface *CinepakDecoder::decodeFrame(Common::SeekableReadStream &stream) {
+ _curFrame.flags = stream.readByte();
+ _curFrame.length = (stream.readByte() << 16);
+ _curFrame.length |= stream.readUint16BE();
+ _curFrame.width = stream.readUint16BE();
+ _curFrame.height = stream.readUint16BE();
+ _curFrame.stripCount = stream.readUint16BE();
if (_curFrame.strips == NULL)
_curFrame.strips = new CinepakStrip[_curFrame.stripCount];
@@ -98,11 +98,11 @@ const Graphics::Surface *CinepakDecoder::decodeImage(Common::SeekableReadStream
// Borrowed from FFMPEG. This should cut out the extra data Cinepak for Sega has (which is useless).
// The theory behind this is that this is here to confuse standard Cinepak decoders. But, we won't let that happen! ;)
- if (_curFrame.length != (uint32)stream->size()) {
- if (stream->readUint16BE() == 0xFE00)
- stream->readUint32BE();
- else if ((stream->size() % _curFrame.length) == 0)
- stream->seek(-2, SEEK_CUR);
+ if (_curFrame.length != (uint32)stream.size()) {
+ if (stream.readUint16BE() == 0xFE00)
+ stream.readUint32BE();
+ else if ((stream.size() % _curFrame.length) == 0)
+ stream.seek(-2, SEEK_CUR);
}
if (!_curFrame.surface) {
@@ -121,29 +121,29 @@ const Graphics::Surface *CinepakDecoder::decodeImage(Common::SeekableReadStream
}
}
- _curFrame.strips[i].id = stream->readUint16BE();
- _curFrame.strips[i].length = stream->readUint16BE() - 12; // Subtract the 12 byte header
- _curFrame.strips[i].rect.top = _y; stream->readUint16BE(); // Ignore, substitute with our own.
- _curFrame.strips[i].rect.left = 0; stream->readUint16BE(); // Ignore, substitute with our own
- _curFrame.strips[i].rect.bottom = _y + stream->readUint16BE();
- _curFrame.strips[i].rect.right = _curFrame.width; stream->readUint16BE(); // Ignore, substitute with our own
+ _curFrame.strips[i].id = stream.readUint16BE();
+ _curFrame.strips[i].length = stream.readUint16BE() - 12; // Subtract the 12 byte header
+ _curFrame.strips[i].rect.top = _y; stream.readUint16BE(); // Ignore, substitute with our own.
+ _curFrame.strips[i].rect.left = 0; stream.readUint16BE(); // Ignore, substitute with our own
+ _curFrame.strips[i].rect.bottom = _y + stream.readUint16BE();
+ _curFrame.strips[i].rect.right = _curFrame.width; stream.readUint16BE(); // Ignore, substitute with our own
// Sanity check. Because Cinepak is based on 4x4 blocks, the width and height of each strip needs to be divisible by 4.
assert(!(_curFrame.strips[i].rect.width() % 4) && !(_curFrame.strips[i].rect.height() % 4));
- uint32 pos = stream->pos();
+ uint32 pos = stream.pos();
- while ((uint32)stream->pos() < (pos + _curFrame.strips[i].length) && !stream->eos()) {
- byte chunkID = stream->readByte();
+ while ((uint32)stream.pos() < (pos + _curFrame.strips[i].length) && !stream.eos()) {
+ byte chunkID = stream.readByte();
- if (stream->eos())
+ if (stream.eos())
break;
// Chunk Size is 24-bit, ignore the first 4 bytes
- uint32 chunkSize = stream->readByte() << 16;
- chunkSize += stream->readUint16BE() - 4;
+ uint32 chunkSize = stream.readByte() << 16;
+ chunkSize += stream.readUint16BE() - 4;
- int32 startPos = stream->pos();
+ int32 startPos = stream.pos();
switch (chunkID) {
case 0x20:
@@ -168,8 +168,8 @@ const Graphics::Surface *CinepakDecoder::decodeImage(Common::SeekableReadStream
return _curFrame.surface;
}
- if (stream->pos() != startPos + (int32)chunkSize)
- stream->seek(startPos + chunkSize);
+ if (stream.pos() != startPos + (int32)chunkSize)
+ stream.seek(startPos + chunkSize);
}
_y = _curFrame.strips[i].rect.bottom;
@@ -178,32 +178,32 @@ const Graphics::Surface *CinepakDecoder::decodeImage(Common::SeekableReadStream
return _curFrame.surface;
}
-void CinepakDecoder::loadCodebook(Common::SeekableReadStream *stream, uint16 strip, byte codebookType, byte chunkID, uint32 chunkSize) {
+void CinepakDecoder::loadCodebook(Common::SeekableReadStream &stream, uint16 strip, byte codebookType, byte chunkID, uint32 chunkSize) {
CinepakCodebook *codebook = (codebookType == 1) ? _curFrame.strips[strip].v1_codebook : _curFrame.strips[strip].v4_codebook;
- int32 startPos = stream->pos();
+ int32 startPos = stream.pos();
uint32 flag = 0, mask = 0;
for (uint16 i = 0; i < 256; i++) {
if ((chunkID & 0x01) && !(mask >>= 1)) {
- if ((stream->pos() - startPos + 4) > (int32)chunkSize)
+ if ((stream.pos() - startPos + 4) > (int32)chunkSize)
break;
- flag = stream->readUint32BE();
+ flag = stream.readUint32BE();
mask = 0x80000000;
}
if (!(chunkID & 0x01) || (flag & mask)) {
byte n = (chunkID & 0x04) ? 4 : 6;
- if ((stream->pos() - startPos + n) > (int32)chunkSize)
+ if ((stream.pos() - startPos + n) > (int32)chunkSize)
break;
for (byte j = 0; j < 4; j++)
- codebook[i].y[j] = stream->readByte();
+ codebook[i].y[j] = stream.readByte();
if (n == 6) {
- codebook[i].u = stream->readSByte();
- codebook[i].v = stream->readSByte();
+ codebook[i].u = stream.readSByte();
+ codebook[i].v = stream.readSByte();
} else {
// This codebook type indicates either greyscale or
// palettized video. For greyscale, default us to
@@ -215,10 +215,10 @@ void CinepakDecoder::loadCodebook(Common::SeekableReadStream *stream, uint16 str
}
}
-void CinepakDecoder::decodeVectors(Common::SeekableReadStream *stream, uint16 strip, byte chunkID, uint32 chunkSize) {
+void CinepakDecoder::decodeVectors(Common::SeekableReadStream &stream, uint16 strip, byte chunkID, uint32 chunkSize) {
uint32 flag = 0, mask = 0;
uint32 iy[4];
- int32 startPos = stream->pos();
+ int32 startPos = stream.pos();
for (uint16 y = _curFrame.strips[strip].rect.top; y < _curFrame.strips[strip].rect.bottom; y += 4) {
iy[0] = _curFrame.strips[strip].rect.left + y * _curFrame.width;
@@ -228,28 +228,28 @@ void CinepakDecoder::decodeVectors(Common::SeekableReadStream *stream, uint16 st
for (uint16 x = _curFrame.strips[strip].rect.left; x < _curFrame.strips[strip].rect.right; x += 4) {
if ((chunkID & 0x01) && !(mask >>= 1)) {
- if ((stream->pos() - startPos + 4) > (int32)chunkSize)
+ if ((stream.pos() - startPos + 4) > (int32)chunkSize)
return;
- flag = stream->readUint32BE();
+ flag = stream.readUint32BE();
mask = 0x80000000;
}
if (!(chunkID & 0x01) || (flag & mask)) {
if (!(chunkID & 0x02) && !(mask >>= 1)) {
- if ((stream->pos() - startPos + 4) > (int32)chunkSize)
+ if ((stream.pos() - startPos + 4) > (int32)chunkSize)
return;
- flag = stream->readUint32BE();
+ flag = stream.readUint32BE();
mask = 0x80000000;
}
if ((chunkID & 0x02) || (~flag & mask)) {
- if ((stream->pos() - startPos + 1) > (int32)chunkSize)
+ if ((stream.pos() - startPos + 1) > (int32)chunkSize)
return;
// Get the codebook
- CinepakCodebook codebook = _curFrame.strips[strip].v1_codebook[stream->readByte()];
+ CinepakCodebook codebook = _curFrame.strips[strip].v1_codebook[stream.readByte()];
PUT_PIXEL(iy[0] + 0, codebook.y[0], codebook.u, codebook.v);
PUT_PIXEL(iy[0] + 1, codebook.y[0], codebook.u, codebook.v);
@@ -271,28 +271,28 @@ void CinepakDecoder::decodeVectors(Common::SeekableReadStream *stream, uint16 st
PUT_PIXEL(iy[3] + 2, codebook.y[3], codebook.u, codebook.v);
PUT_PIXEL(iy[3] + 3, codebook.y[3], codebook.u, codebook.v);
} else if (flag & mask) {
- if ((stream->pos() - startPos + 4) > (int32)chunkSize)
+ if ((stream.pos() - startPos + 4) > (int32)chunkSize)
return;
- CinepakCodebook codebook = _curFrame.strips[strip].v4_codebook[stream->readByte()];
+ CinepakCodebook codebook = _curFrame.strips[strip].v4_codebook[stream.readByte()];
PUT_PIXEL(iy[0] + 0, codebook.y[0], codebook.u, codebook.v);
PUT_PIXEL(iy[0] + 1, codebook.y[1], codebook.u, codebook.v);
PUT_PIXEL(iy[1] + 0, codebook.y[2], codebook.u, codebook.v);
PUT_PIXEL(iy[1] + 1, codebook.y[3], codebook.u, codebook.v);
- codebook = _curFrame.strips[strip].v4_codebook[stream->readByte()];
+ codebook = _curFrame.strips[strip].v4_codebook[stream.readByte()];
PUT_PIXEL(iy[0] + 2, codebook.y[0], codebook.u, codebook.v);
PUT_PIXEL(iy[0] + 3, codebook.y[1], codebook.u, codebook.v);
PUT_PIXEL(iy[1] + 2, codebook.y[2], codebook.u, codebook.v);
PUT_PIXEL(iy[1] + 3, codebook.y[3], codebook.u, codebook.v);
- codebook = _curFrame.strips[strip].v4_codebook[stream->readByte()];
+ codebook = _curFrame.strips[strip].v4_codebook[stream.readByte()];
PUT_PIXEL(iy[2] + 0, codebook.y[0], codebook.u, codebook.v);
PUT_PIXEL(iy[2] + 1, codebook.y[1], codebook.u, codebook.v);
PUT_PIXEL(iy[3] + 0, codebook.y[2], codebook.u, codebook.v);
PUT_PIXEL(iy[3] + 1, codebook.y[3], codebook.u, codebook.v);
- codebook = _curFrame.strips[strip].v4_codebook[stream->readByte()];
+ codebook = _curFrame.strips[strip].v4_codebook[stream.readByte()];
PUT_PIXEL(iy[2] + 2, codebook.y[0], codebook.u, codebook.v);
PUT_PIXEL(iy[2] + 3, codebook.y[1], codebook.u, codebook.v);
PUT_PIXEL(iy[3] + 2, codebook.y[2], codebook.u, codebook.v);
@@ -306,4 +306,4 @@ void CinepakDecoder::decodeVectors(Common::SeekableReadStream *stream, uint16 st
}
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/cinepak.h b/image/codecs/cinepak.h
index f4adfd50fe..e9cd437730 100644
--- a/video/codecs/cinepak.h
+++ b/image/codecs/cinepak.h
@@ -8,32 +8,32 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_CINEPAK_H
-#define VIDEO_CODECS_CINEPAK_H
+#ifndef IMAGE_CODECS_CINEPAK_H
+#define IMAGE_CODECS_CINEPAK_H
#include "common/scummsys.h"
#include "common/rect.h"
#include "graphics/pixelformat.h"
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
namespace Common {
class SeekableReadStream;
}
-namespace Video {
+namespace Image {
struct CinepakCodebook {
// These are not in the normal YUV colorspace, but in the Cinepak YUV colorspace instead.
@@ -62,16 +62,14 @@ struct CinepakFrame {
/**
* Cinepak decoder.
*
- * Used in video:
- * - AVIDecoder
- * - QuickTimeDecoder
+ * Used by BMP/AVI and PICT/QuickTime.
*/
class CinepakDecoder : public Codec {
public:
CinepakDecoder(int bitsPerPixel = 24);
~CinepakDecoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return _pixelFormat; }
private:
@@ -80,10 +78,10 @@ private:
Graphics::PixelFormat _pixelFormat;
byte *_clipTable, *_clipTableBuf;
- void loadCodebook(Common::SeekableReadStream *stream, uint16 strip, byte codebookType, byte chunkID, uint32 chunkSize);
- void decodeVectors(Common::SeekableReadStream *stream, uint16 strip, byte chunkID, uint32 chunkSize);
+ void loadCodebook(Common::SeekableReadStream &stream, uint16 strip, byte codebookType, byte chunkID, uint32 chunkSize);
+ void decodeVectors(Common::SeekableReadStream &stream, uint16 strip, byte chunkID, uint32 chunkSize);
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/image/codecs/codec.cpp b/image/codecs/codec.cpp
new file mode 100644
index 0000000000..530fb3b836
--- /dev/null
+++ b/image/codecs/codec.cpp
@@ -0,0 +1,117 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "common/scummsys.h"
+
+#include "image/codecs/codec.h"
+
+#include "image/jpeg.h"
+#include "image/codecs/bmp_raw.h"
+#include "image/codecs/cdtoons.h"
+#include "image/codecs/cinepak.h"
+#include "image/codecs/indeo3.h"
+#include "image/codecs/mjpeg.h"
+#include "image/codecs/mpeg.h"
+#include "image/codecs/msvideo1.h"
+#include "image/codecs/msrle.h"
+#include "image/codecs/qtrle.h"
+#include "image/codecs/rpza.h"
+#include "image/codecs/smc.h"
+#include "image/codecs/svq1.h"
+#include "image/codecs/truemotion1.h"
+
+#include "common/endian.h"
+#include "common/textconsole.h"
+
+namespace Image {
+
+Codec *createBitmapCodec(uint32 tag, int width, int height, int bitsPerPixel) {
+ switch (tag) {
+ case SWAP_CONSTANT_32(0):
+ return new BitmapRawDecoder(width, height, bitsPerPixel);
+ case SWAP_CONSTANT_32(1):
+ return new MSRLEDecoder(width, height, bitsPerPixel);
+ case MKTAG('C','R','A','M'):
+ case MKTAG('m','s','v','c'):
+ case MKTAG('W','H','A','M'):
+ return new MSVideo1Decoder(width, height, bitsPerPixel);
+ case MKTAG('c','v','i','d'):
+ return new CinepakDecoder(bitsPerPixel);
+ case MKTAG('I','V','3','2'):
+ return new Indeo3Decoder(width, height);
+#ifdef VIDEO_CODECS_TRUEMOTION1_H
+ case MKTAG('D','U','C','K'):
+ case MKTAG('d','u','c','k'):
+ return new TrueMotion1Decoder(width, height);
+#endif
+#ifdef USE_MPEG2
+ case MKTAG('m','p','g','2'):
+ return new MPEGDecoder();
+#endif
+ case MKTAG('M','J','P','G'):
+ case MKTAG('m','j','p','g'):
+ return new MJPEGDecoder();
+ default:
+ if (tag & 0x00FFFFFF)
+ warning("Unknown BMP/AVI compression format \'%s\'", tag2str(tag));
+ else
+ warning("Unknown BMP/AVI compression format %d", SWAP_BYTES_32(tag));
+ }
+
+ return 0;
+}
+
+Codec *createQuickTimeCodec(uint32 tag, int width, int height, int bitsPerPixel) {
+ switch (tag) {
+ case MKTAG('c','v','i','d'):
+ // Cinepak: As used by most Myst and all Riven videos as well as some Myst ME videos. "The Chief" videos also use this.
+ return new CinepakDecoder(bitsPerPixel);
+ case MKTAG('r','p','z','a'):
+ // Apple Video ("Road Pizza"): Used by some Myst videos.
+ return new RPZADecoder(width, height);
+ case MKTAG('r','l','e',' '):
+ // QuickTime RLE: Used by some Myst ME videos.
+ return new QTRLEDecoder(width, height, bitsPerPixel);
+ case MKTAG('s','m','c',' '):
+ // Apple SMC: Used by some Myst videos.
+ return new SMCDecoder(width, height);
+ case MKTAG('S','V','Q','1'):
+ // Sorenson Video 1: Used by some Myst ME videos.
+ return new SVQ1Decoder(width, height);
+ case MKTAG('S','V','Q','3'):
+ // Sorenson Video 3: Used by some Myst ME videos.
+ warning("Sorenson Video 3 not yet supported");
+ break;
+ case MKTAG('j','p','e','g'):
+ // JPEG: Used by some Myst ME 10th Anniversary videos.
+ return new JPEGDecoder();
+ case MKTAG('Q','k','B','k'):
+ // CDToons: Used by most of the Broderbund games.
+ return new CDToonsDecoder(width, height);
+ default:
+ warning("Unsupported QuickTime codec \'%s\'", tag2str(tag));
+ }
+
+ return 0;
+}
+
+} // End of namespace Image
diff --git a/video/codecs/codec.h b/image/codecs/codec.h
index a4ad786bb0..d87758e65e 100644
--- a/video/codecs/codec.h
+++ b/image/codecs/codec.h
@@ -8,20 +8,20 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_CODEC_H
-#define VIDEO_CODECS_CODEC_H
+#ifndef IMAGE_CODECS_CODEC_H
+#define IMAGE_CODECS_CODEC_H
#include "graphics/surface.h"
#include "graphics/pixelformat.h"
@@ -30,11 +30,23 @@ namespace Common {
class SeekableReadStream;
}
-namespace Video {
+namespace Image {
/**
- * An abstract representation of a video codec used for decoding
- * video frames.
+ * An abstract representation of a image codec.
+ *
+ * Unlike ImageDecoder, the entire info for a frame may not be present
+ * within the stream. The codec may rely on the supporting container
+ * for parameters and can also rely on a previous (or future) frame.
+ * When decoding, the previous frame may not destroyed and could be
+ * maintained for use in the next one.
+ *
+ * An ImageDecoder can always be a Codec, but a Codec may not necessarily
+ * be able to be an ImageDecoder.
+ *
+ * Used in image:
+ * - BitmapDecoder
+ * - PICTDecoder
*
* Used in video:
* - AVIDecoder
@@ -51,9 +63,8 @@ public:
* containing the decoded frame.
*
* @return a pointer to the decoded frame
- * @note stream is not deleted
*/
- virtual const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream) = 0;
+ virtual const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream) = 0;
/**
* Get the format that the surface returned from decodeImage() will
@@ -77,6 +88,16 @@ public:
virtual bool hasDirtyPalette() const { return false; }
};
-} // End of namespace Video
+/**
+ * Create a codec given a bitmap/AVI compression tag.
+ */
+Codec *createBitmapCodec(uint32 tag, int width, int height, int bitsPerPixel);
+
+/**
+ * Create a codec given a QuickTime compression tag.
+ */
+Codec *createQuickTimeCodec(uint32 tag, int width, int height, int bitsPerPixel);
+
+} // End of namespace Image
#endif
diff --git a/video/codecs/indeo3.cpp b/image/codecs/indeo3.cpp
index 28e1a9c620..af9120ca93 100644
--- a/video/codecs/indeo3.cpp
+++ b/image/codecs/indeo3.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -36,9 +36,9 @@
#include "graphics/yuv_to_rgb.h"
-#include "video/codecs/indeo3.h"
+#include "image/codecs/indeo3.h"
-namespace Video {
+namespace Image {
Indeo3Decoder::Indeo3Decoder(uint16 width, uint16 height) : _ModPred(0), _corrector_type(0) {
_iv_frame[0].the_buf = 0;
@@ -165,24 +165,24 @@ void Indeo3Decoder::allocFrames() {
}
}
-const Graphics::Surface *Indeo3Decoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *Indeo3Decoder::decodeFrame(Common::SeekableReadStream &stream) {
// Not Indeo 3? Fail
- if (!isIndeo3(*stream))
+ if (!isIndeo3(stream))
return 0;
- stream->seek(12);
- uint32 frameDataLen = stream->readUint32LE();
+ stream.seek(12);
+ uint32 frameDataLen = stream.readUint32LE();
// Less data than the frame should have? Fail
- if (stream->size() < (int)(frameDataLen - 16))
+ if (stream.size() < (int)(frameDataLen - 16))
return 0;
- stream->seek(16); // Behind header
- stream->skip(2); // Unknown
+ stream.seek(16); // Behind header
+ stream.skip(2); // Unknown
- uint16 flags1 = stream->readUint16LE();
- uint32 flags3 = stream->readUint32LE();
- uint8 flags2 = stream->readByte();
+ uint16 flags1 = stream.readUint16LE();
+ uint32 flags3 = stream.readUint32LE();
+ uint8 flags2 = stream.readByte();
// Finding the reference frame
if (flags1 & 0x200) {
@@ -196,22 +196,22 @@ const Graphics::Surface *Indeo3Decoder::decodeImage(Common::SeekableReadStream *
if (flags3 == 0x80)
return _surface;
- stream->skip(3);
+ stream.skip(3);
- uint16 fHeight = stream->readUint16LE();
- uint16 fWidth = stream->readUint16LE();
+ uint16 fHeight = stream.readUint16LE();
+ uint16 fWidth = stream.readUint16LE();
uint32 chromaHeight = ((fHeight >> 2) + 3) & 0x7FFC;
uint32 chromaWidth = ((fWidth >> 2) + 3) & 0x7FFC;
uint32 offs;
- uint32 offsY = stream->readUint32LE() + 16;
- uint32 offsU = stream->readUint32LE() + 16;
- uint32 offsV = stream->readUint32LE() + 16;
+ uint32 offsY = stream.readUint32LE() + 16;
+ uint32 offsU = stream.readUint32LE() + 16;
+ uint32 offsV = stream.readUint32LE() + 16;
- stream->skip(4);
+ stream.skip(4);
- uint32 hPos = stream->pos();
+ uint32 hPos = stream.pos();
if (offsY < hPos) {
warning("Indeo3Decoder::decodeImage: offsY < hPos");
@@ -226,11 +226,11 @@ const Graphics::Surface *Indeo3Decoder::decodeImage(Common::SeekableReadStream *
return 0;
}
- uint32 dataSize = stream->size() - hPos;
+ uint32 dataSize = stream.size() - hPos;
byte *inData = new byte[dataSize];
- if (stream->read(inData, dataSize) != dataSize) {
+ if (stream.read(inData, dataSize) != dataSize) {
delete[] inData;
return 0;
}
@@ -239,23 +239,23 @@ const Graphics::Surface *Indeo3Decoder::decodeImage(Common::SeekableReadStream *
byte *buf_pos;
// Luminance Y
- stream->seek(offsY);
+ stream.seek(offsY);
buf_pos = inData + offsY + 4 - hPos;
- offs = stream->readUint32LE();
+ offs = stream.readUint32LE();
decodeChunk(_cur_frame->Ybuf, _ref_frame->Ybuf, fWidth, fHeight,
buf_pos + offs * 2, flags2, hdr_pos, buf_pos, MIN<int>(fWidth, 160));
// Chrominance U
- stream->seek(offsU);
+ stream.seek(offsU);
buf_pos = inData + offsU + 4 - hPos;
- offs = stream->readUint32LE();
+ offs = stream.readUint32LE();
decodeChunk(_cur_frame->Vbuf, _ref_frame->Vbuf, chromaWidth, chromaHeight,
buf_pos + offs * 2, flags2, hdr_pos, buf_pos, MIN<int>(chromaWidth, 40));
// Chrominance V
- stream->seek(offsV);
+ stream.seek(offsV);
buf_pos = inData + offsV + 4 - hPos;
- offs = stream->readUint32LE();
+ offs = stream.readUint32LE();
decodeChunk(_cur_frame->Ubuf, _ref_frame->Ubuf, chromaWidth, chromaHeight,
buf_pos + offs * 2, flags2, hdr_pos, buf_pos, MIN<int>(chromaWidth, 40));
@@ -3484,4 +3484,4 @@ const uint32 Indeo3Decoder::correctionhighorder[] = {
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
};
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/indeo3.h b/image/codecs/indeo3.h
index 880901df13..0ff0265250 100644
--- a/video/codecs/indeo3.h
+++ b/image/codecs/indeo3.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -29,18 +29,19 @@
* written, produced, and directed by Alan Smithee
*/
-#ifndef VIDEO_CODECS_INDEO3_H
-#define VIDEO_CODECS_INDEO3_H
+#ifndef IMAGE_CODECS_INDEO3_H
+#define IMAGE_CODECS_INDEO3_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
-namespace Video {
+namespace Image {
/**
* Intel Indeo 3 decoder.
*
+ * Used by BMP/AVI.
+ *
* Used in video:
- * - AVIDecoder
* - VMDDecoder
*/
class Indeo3Decoder : public Codec {
@@ -48,7 +49,7 @@ public:
Indeo3Decoder(uint16 width, uint16 height);
~Indeo3Decoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const;
static bool isIndeo3(Common::SeekableReadStream &stream);
@@ -89,6 +90,6 @@ private:
const byte *buf2, int min_width_160);
};
-} // End of namespace Video
+} // End of namespace Image
-#endif // VIDEO_CODECS_INDEO3_H
+#endif
diff --git a/video/codecs/mjpeg.cpp b/image/codecs/mjpeg.cpp
index 61f9eb5881..4ad72f259d 100644
--- a/video/codecs/mjpeg.cpp
+++ b/image/codecs/mjpeg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -29,15 +29,15 @@
#include "common/system.h"
#include "common/textconsole.h"
#include "graphics/surface.h"
-#include "graphics/decoders/jpeg.h"
+#include "image/jpeg.h"
-#include "video/codecs/mjpeg.h"
+#include "image/codecs/mjpeg.h"
namespace Common {
class SeekableReadStream;
}
-namespace Video {
+namespace Image {
MJPEGDecoder::MJPEGDecoder() : Codec() {
_pixelFormat = g_system->getScreenFormat();
@@ -147,20 +147,20 @@ static const byte s_mjpegValACChrominance[] = {
0xf9, 0xfa
};
-const Graphics::Surface *MJPEGDecoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *MJPEGDecoder::decodeFrame(Common::SeekableReadStream &stream) {
// We need to reconstruct an actual JPEG stream here, then feed it to the JPEG decoder
// Yes, this is a pain.
- stream->readUint32BE(); // Skip nonsense JPEG header
- uint16 inputSkip = stream->readUint16BE() + 4;
- uint32 tag = stream->readUint32BE();
+ stream.readUint32BE(); // Skip nonsense JPEG header
+ uint16 inputSkip = stream.readUint16BE() + 4;
+ uint32 tag = stream.readUint32BE();
if (tag != MKTAG('A', 'V', 'I', '1')) {
warning("Invalid MJPEG tag found");
return 0;
}
- uint32 outputSize = stream->size() - inputSkip + sizeof(s_jpegHeader) + DHT_SEGMENT_SIZE;
+ uint32 outputSize = stream.size() - inputSkip + sizeof(s_jpegHeader) + DHT_SEGMENT_SIZE;
byte *data = (byte *)malloc(outputSize);
if (!data) {
@@ -193,11 +193,11 @@ const Graphics::Surface *MJPEGDecoder::decodeImage(Common::SeekableReadStream *s
dataOffset += 162;
// Write the actual data
- stream->seek(inputSkip);
- stream->read(data + dataOffset, stream->size() - inputSkip);
+ stream.seek(inputSkip);
+ stream.read(data + dataOffset, stream.size() - inputSkip);
Common::MemoryReadStream convertedStream(data, outputSize, DisposeAfterUse::YES);
- Graphics::JPEGDecoder jpeg;
+ JPEGDecoder jpeg;
if (!jpeg.loadStream(convertedStream)) {
warning("Failed to decode MJPEG frame");
@@ -214,4 +214,4 @@ const Graphics::Surface *MJPEGDecoder::decodeImage(Common::SeekableReadStream *s
return _surface;
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/mjpeg.h b/image/codecs/mjpeg.h
index 16eefa68a7..2db736c218 100644
--- a/video/codecs/mjpeg.h
+++ b/image/codecs/mjpeg.h
@@ -8,22 +8,22 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_MJPEG_H
-#define VIDEO_CODECS_MJPEG_H
+#ifndef IMAGE_CODECS_MJPEG_H
+#define IMAGE_CODECS_MJPEG_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
#include "graphics/pixelformat.h"
namespace Common {
@@ -34,20 +34,19 @@ namespace Graphics {
struct Surface;
}
-namespace Video {
+namespace Image {
/**
* Motion JPEG decoder.
*
- * Used in video:
- * - AVIDecoder
+ * Used by BMP/AVI.
*/
class MJPEGDecoder : public Codec {
public:
MJPEGDecoder();
~MJPEGDecoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return _pixelFormat; }
private:
@@ -55,6 +54,6 @@ private:
Graphics::Surface *_surface;
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/mpeg.cpp b/image/codecs/mpeg.cpp
index 4540b4182e..beb042dbf1 100644
--- a/video/codecs/mpeg.cpp
+++ b/image/codecs/mpeg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -27,9 +27,9 @@
#include "graphics/surface.h"
#include "graphics/yuv_to_rgb.h"
-#include "video/codecs/mpeg.h"
+#include "image/codecs/mpeg.h"
-namespace Video {
+namespace Image {
MPEGDecoder::MPEGDecoder() : Codec() {
_pixelFormat = g_system->getScreenFormat();
@@ -52,13 +52,13 @@ MPEGDecoder::~MPEGDecoder() {
}
}
-const Graphics::Surface *MPEGDecoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *MPEGDecoder::decodeFrame(Common::SeekableReadStream &stream) {
uint32 framePeriod;
decodePacket(stream, framePeriod);
return _surface;
}
-bool MPEGDecoder::decodePacket(Common::SeekableReadStream *packet, uint32 &framePeriod, Graphics::Surface *dst) {
+bool MPEGDecoder::decodePacket(Common::SeekableReadStream &packet, uint32 &framePeriod, Graphics::Surface *dst) {
// Decode as much as we can out of this packet
uint32 size = 0xFFFFFFFF;
mpeg2_state_t state;
@@ -70,7 +70,7 @@ bool MPEGDecoder::decodePacket(Common::SeekableReadStream *packet, uint32 &frame
switch (state) {
case STATE_BUFFER:
- size = packet->read(_buffer, BUFFER_SIZE);
+ size = packet.read(_buffer, BUFFER_SIZE);
mpeg2_buffer(_mpegDecoder, _buffer, _buffer + size);
break;
case STATE_SLICE:
@@ -104,4 +104,4 @@ bool MPEGDecoder::decodePacket(Common::SeekableReadStream *packet, uint32 &frame
return foundFrame;
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/mpeg.h b/image/codecs/mpeg.h
index 3560f4b8b7..6cb10f21ac 100644
--- a/video/codecs/mpeg.h
+++ b/image/codecs/mpeg.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -22,10 +22,10 @@
#ifdef USE_MPEG2
-#ifndef VIDEO_CODECS_MPEG_H
-#define VIDEO_CODECS_MPEG_H
+#ifndef IMAGE_CODECS_MPEG_H
+#define IMAGE_CODECS_MPEG_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
#include "graphics/pixelformat.h"
#if defined(__PLAYSTATION2__)
@@ -62,21 +62,24 @@ namespace Graphics {
struct Surface;
}
-namespace Video {
-
-// MPEG 1/2 video decoder
+namespace Image {
+/**
+ * MPEG 1/2 video decoder.
+ *
+ * Used by BMP/AVI.
+ */
class MPEGDecoder : public Codec {
public:
MPEGDecoder();
~MPEGDecoder();
// Codec interface
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return _pixelFormat; }
// MPEGPSDecoder call
- bool decodePacket(Common::SeekableReadStream *packet, uint32 &framePeriod, Graphics::Surface *dst = 0);
+ bool decodePacket(Common::SeekableReadStream &packet, uint32 &framePeriod, Graphics::Surface *dst = 0);
private:
Graphics::PixelFormat _pixelFormat;
@@ -91,8 +94,8 @@ private:
const mpeg2_info_t *_mpegInfo;
};
-} // End of namespace Video
+} // End of namespace Image
-#endif // VIDEO_CODECS_MPEG_H
+#endif // IMAGE_CODECS_MPEG_H
#endif // USE_MPEG2
diff --git a/video/codecs/msrle.cpp b/image/codecs/msrle.cpp
index 2f2ac0334f..89fe869a9e 100644
--- a/video/codecs/msrle.cpp
+++ b/image/codecs/msrle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -22,11 +22,11 @@
// Based off ffmpeg's msrledec.c
-#include "video/codecs/msrle.h"
+#include "image/codecs/msrle.h"
#include "common/stream.h"
#include "common/textconsole.h"
-namespace Video {
+namespace Image {
MSRLEDecoder::MSRLEDecoder(uint16 width, uint16 height, byte bitsPerPixel) {
_surface = new Graphics::Surface();
@@ -39,7 +39,7 @@ MSRLEDecoder::~MSRLEDecoder() {
delete _surface;
}
-const Graphics::Surface *MSRLEDecoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *MSRLEDecoder::decodeFrame(Common::SeekableReadStream &stream) {
if (_bitsPerPixel == 8) {
decode8(stream);
} else
@@ -48,7 +48,7 @@ const Graphics::Surface *MSRLEDecoder::decodeImage(Common::SeekableReadStream *s
return _surface;
}
-void MSRLEDecoder::decode8(Common::SeekableReadStream *stream) {
+void MSRLEDecoder::decode8(Common::SeekableReadStream &stream) {
int x = 0;
int y = _surface->h - 1;
@@ -60,9 +60,9 @@ void MSRLEDecoder::decode8(Common::SeekableReadStream *stream) {
byte *output = data + ((height - 1) * width);
byte *output_end = data + ((height) * width);
- while (!stream->eos()) {
- byte count = stream->readByte();
- byte value = stream->readByte();
+ while (!stream.eos()) {
+ byte count = stream.readByte();
+ byte value = stream.readByte();
if (count == 0) {
if (value == 0) {
@@ -84,8 +84,8 @@ void MSRLEDecoder::decode8(Common::SeekableReadStream *stream) {
} else if (value == 2) {
// Skip
- count = stream->readByte();
- value = stream->readByte();
+ count = stream.readByte();
+ value = stream.readByte();
y -= value;
x += count;
@@ -101,15 +101,15 @@ void MSRLEDecoder::decode8(Common::SeekableReadStream *stream) {
// Copy data
if (output + value > output_end) {
- stream->skip(value);
+ stream.skip(value);
continue;
}
for (int i = 0; i < value; i++)
- *output++ = stream->readByte();
+ *output++ = stream.readByte();
if (value & 1)
- stream->skip(1);
+ stream.skip(1);
x += value;
}
@@ -129,4 +129,4 @@ void MSRLEDecoder::decode8(Common::SeekableReadStream *stream) {
warning("MS RLE Codec: No end-of-picture code");
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/msrle.h b/image/codecs/msrle.h
index 64ebaaee51..116b1bcbf6 100644
--- a/video/codecs/msrle.h
+++ b/image/codecs/msrle.h
@@ -8,37 +8,36 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_MSRLE_H
-#define VIDEO_CODECS_MSRLE_H
+#ifndef IMAGE_CODECS_MSRLE_H
+#define IMAGE_CODECS_MSRLE_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
-namespace Video {
+namespace Image {
/**
* Microsoft Run-Length Encoding decoder.
*
- * Used in video:
- * - AVIDecoder
+ * Used by BMP/AVI.
*/
class MSRLEDecoder : public Codec {
public:
MSRLEDecoder(uint16 width, uint16 height, byte bitsPerPixel);
~MSRLEDecoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return Graphics::PixelFormat::createFormatCLUT8(); }
private:
@@ -46,9 +45,9 @@ private:
Graphics::Surface *_surface;
- void decode8(Common::SeekableReadStream *stream);
+ void decode8(Common::SeekableReadStream &stream);
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/msvideo1.cpp b/image/codecs/msvideo1.cpp
index 409d588ddf..25d7395363 100644
--- a/video/codecs/msvideo1.cpp
+++ b/image/codecs/msvideo1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -22,15 +22,15 @@
// Based off ffmpeg's msvideo.cpp
-#include "video/codecs/msvideo1.h"
+#include "image/codecs/msvideo1.h"
#include "common/stream.h"
#include "common/textconsole.h"
-namespace Video {
+namespace Image {
#define CHECK_STREAM_PTR(n) \
- if ((stream->pos() + n) > stream->size() ) { \
- warning ("MS Video-1: Stream out of bounds (%d >= %d)", stream->pos() + n, stream->size()); \
+ if ((stream.pos() + n) > stream.size() ) { \
+ warning ("MS Video-1: Stream out of bounds (%d >= %d)", stream.pos() + n, stream.size()); \
return; \
}
@@ -46,7 +46,7 @@ MSVideo1Decoder::~MSVideo1Decoder() {
delete _surface;
}
-void MSVideo1Decoder::decode8(Common::SeekableReadStream *stream) {
+void MSVideo1Decoder::decode8(Common::SeekableReadStream &stream) {
byte colors[8];
byte *pixels = (byte *)_surface->getPixels();
uint16 stride = _surface->w;
@@ -73,8 +73,8 @@ void MSVideo1Decoder::decode8(Common::SeekableReadStream *stream) {
/* get the next two bytes in the encoded data stream */
CHECK_STREAM_PTR(2);
- byte byte_a = stream->readByte();
- byte byte_b = stream->readByte();
+ byte byte_a = stream.readByte();
+ byte byte_b = stream.readByte();
/* check if the decode is finished */
if (byte_a == 0 && byte_b == 0 && totalBlocks == 0) {
@@ -87,8 +87,8 @@ void MSVideo1Decoder::decode8(Common::SeekableReadStream *stream) {
uint16 flags = (byte_b << 8) | byte_a;
CHECK_STREAM_PTR(2);
- colors[0] = stream->readByte();
- colors[1] = stream->readByte();
+ colors[0] = stream.readByte();
+ colors[1] = stream.readByte();
for (byte pixel_y = 0; pixel_y < 4; pixel_y++) {
for (byte pixel_x = 0; pixel_x < 4; pixel_x++, flags >>= 1)
@@ -101,7 +101,7 @@ void MSVideo1Decoder::decode8(Common::SeekableReadStream *stream) {
CHECK_STREAM_PTR(8);
for (byte i = 0; i < 8; i++)
- colors[i] = stream->readByte();
+ colors[i] = stream.readByte();
for (byte pixel_y = 0; pixel_y < 4; pixel_y++) {
for (byte pixel_x = 0; pixel_x < 4; pixel_x++, flags >>= 1)
@@ -125,7 +125,7 @@ void MSVideo1Decoder::decode8(Common::SeekableReadStream *stream) {
}
}
-const Graphics::Surface *MSVideo1Decoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *MSVideo1Decoder::decodeFrame(Common::SeekableReadStream &stream) {
if (_bitsPerPixel == 8)
decode8(stream);
else {
@@ -136,4 +136,4 @@ const Graphics::Surface *MSVideo1Decoder::decodeImage(Common::SeekableReadStream
return _surface;
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/msvideo1.h b/image/codecs/msvideo1.h
index 047d542743..2a6dcd0a9a 100644
--- a/video/codecs/msvideo1.h
+++ b/image/codecs/msvideo1.h
@@ -8,37 +8,36 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_MSVIDEO1_H
-#define VIDEO_CODECS_MSVIDEO1_H
+#ifndef IMAGE_CODECS_MSVIDEO1_H
+#define IMAGE_CODECS_MSVIDEO1_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
-namespace Video {
+namespace Image {
/**
* Microsoft Video 1 decoder.
*
- * Used in video:
- * - AVIDecoder
+ * Used by BMP/AVI.
*/
class MSVideo1Decoder : public Codec {
public:
MSVideo1Decoder(uint16 width, uint16 height, byte bitsPerPixel);
~MSVideo1Decoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return Graphics::PixelFormat::createFormatCLUT8(); }
private:
@@ -46,10 +45,10 @@ private:
Graphics::Surface *_surface;
- void decode8(Common::SeekableReadStream *stream);
- //void decode16(Common::SeekableReadStream *stream);
+ void decode8(Common::SeekableReadStream &stream);
+ //void decode16(Common::SeekableReadStream &stream);
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/qtrle.cpp b/image/codecs/qtrle.cpp
index 1f1fee7997..94744efa5a 100644
--- a/video/codecs/qtrle.cpp
+++ b/image/codecs/qtrle.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,7 +23,7 @@
// QuickTime RLE Decoder
// Based off ffmpeg's QuickTime RLE decoder (written by Mike Melanson)
-#include "video/codecs/qtrle.h"
+#include "image/codecs/qtrle.h"
#include "common/debug.h"
#include "common/scummsys.h"
@@ -33,7 +33,7 @@
#include "graphics/colormasks.h"
#include "graphics/surface.h"
-namespace Video {
+namespace Image {
QTRLEDecoder::QTRLEDecoder(uint16 width, uint16 height, byte bitsPerPixel) : Codec() {
_bitsPerPixel = bitsPerPixel;
@@ -48,8 +48,8 @@ QTRLEDecoder::QTRLEDecoder(uint16 width, uint16 height, byte bitsPerPixel) : Cod
}
#define CHECK_STREAM_PTR(n) \
- if ((stream->pos() + n) > stream->size()) { \
- warning("QTRLE Problem: stream out of bounds (%d > %d)", stream->pos() + n, stream->size()); \
+ if ((stream.pos() + n) > stream.size()) { \
+ warning("QTRLE Problem: stream out of bounds (%d > %d)", stream.pos() + n, stream.size()); \
return; \
}
@@ -59,14 +59,14 @@ QTRLEDecoder::QTRLEDecoder(uint16 width, uint16 height, byte bitsPerPixel) : Cod
return; \
} \
-void QTRLEDecoder::decode1(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange) {
+void QTRLEDecoder::decode1(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange) {
uint32 pixelPtr = 0;
byte *rgb = (byte *)_surface->getPixels();
while (linesToChange) {
CHECK_STREAM_PTR(2);
- byte skip = stream->readByte();
- int8 rleCode = stream->readSByte();
+ byte skip = stream.readByte();
+ int8 rleCode = stream.readSByte();
if (rleCode == 0)
break;
@@ -83,8 +83,8 @@ void QTRLEDecoder::decode1(Common::SeekableReadStream *stream, uint32 rowPtr, ui
rleCode = -rleCode;
// get the next 2 bytes from the stream, treat them as groups of 8 pixels, and output them rleCode times */
CHECK_STREAM_PTR(2);
- byte pi0 = stream->readByte();
- byte pi1 = stream->readByte();
+ byte pi0 = stream.readByte();
+ byte pi1 = stream.readByte();
CHECK_PIXEL_PTR(rleCode * 2);
while (rleCode--) {
@@ -98,25 +98,25 @@ void QTRLEDecoder::decode1(Common::SeekableReadStream *stream, uint32 rowPtr, ui
CHECK_PIXEL_PTR(rleCode);
while (rleCode--)
- rgb[pixelPtr++] = stream->readByte();
+ rgb[pixelPtr++] = stream.readByte();
}
}
}
-void QTRLEDecoder::decode2_4(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange, byte bpp) {
+void QTRLEDecoder::decode2_4(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange, byte bpp) {
uint32 pixelPtr = 0;
byte *rgb = (byte *)_surface->getPixels();
byte numPixels = (bpp == 4) ? 8 : 16;
while (linesToChange--) {
CHECK_STREAM_PTR(2);
- pixelPtr = rowPtr + (numPixels * (stream->readByte() - 1));
+ pixelPtr = rowPtr + (numPixels * (stream.readByte() - 1));
- for (int8 rleCode = stream->readSByte(); rleCode != -1; rleCode = stream->readSByte()) {
+ for (int8 rleCode = stream.readSByte(); rleCode != -1; rleCode = stream.readSByte()) {
if (rleCode == 0) {
// there's another skip code in the stream
CHECK_STREAM_PTR(1);
- pixelPtr += (numPixels * (stream->readByte() - 1));
+ pixelPtr += (numPixels * (stream.readByte() - 1));
} else if (rleCode < 0) {
// decode the run length code
rleCode = -rleCode;
@@ -127,10 +127,10 @@ void QTRLEDecoder::decode2_4(Common::SeekableReadStream *stream, uint32 rowPtr,
byte pi[16]; // 16 palette indices
for (int8 i = numPixels - 1; i >= 0; i--) {
- pi[numPixels - 1 - i] = (stream->readByte() >> ((i * bpp) & 0x07)) & ((1 << bpp) - 1);
+ pi[numPixels - 1 - i] = (stream.readByte() >> ((i * bpp) & 0x07)) & ((1 << bpp) - 1);
if ((i & ((numPixels >> 2) - 1)) == 0)
- stream->readByte();
+ stream.readByte();
}
CHECK_PIXEL_PTR(rleCode * numPixels);
@@ -145,7 +145,7 @@ void QTRLEDecoder::decode2_4(Common::SeekableReadStream *stream, uint32 rowPtr,
CHECK_PIXEL_PTR(rleCode * (numPixels >> 2));
while (rleCode--) {
- byte temp = stream->readByte();
+ byte temp = stream.readByte();
if (bpp == 4) {
rgb[pixelPtr++] = (temp >> 4) & 0x0f;
rgb[pixelPtr++] = temp & 0x0f;
@@ -163,19 +163,19 @@ void QTRLEDecoder::decode2_4(Common::SeekableReadStream *stream, uint32 rowPtr,
}
}
-void QTRLEDecoder::decode8(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange) {
+void QTRLEDecoder::decode8(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange) {
uint32 pixelPtr = 0;
byte *rgb = (byte *)_surface->getPixels();
while (linesToChange--) {
CHECK_STREAM_PTR(2);
- pixelPtr = rowPtr + 4 * (stream->readByte() - 1);
+ pixelPtr = rowPtr + 4 * (stream.readByte() - 1);
- for (int8 rleCode = stream->readSByte(); rleCode != -1; rleCode = stream->readSByte()) {
+ for (int8 rleCode = stream.readSByte(); rleCode != -1; rleCode = stream.readSByte()) {
if (rleCode == 0) {
// there's another skip code in the stream
CHECK_STREAM_PTR(1);
- pixelPtr += 4 * (stream->readByte() - 1);
+ pixelPtr += 4 * (stream.readByte() - 1);
} else if (rleCode < 0) {
// decode the run length code
rleCode = -rleCode;
@@ -186,7 +186,7 @@ void QTRLEDecoder::decode8(Common::SeekableReadStream *stream, uint32 rowPtr, ui
byte pi[4]; // 4 palette indexes
for (byte i = 0; i < 4; i++)
- pi[i] = stream->readByte();
+ pi[i] = stream.readByte();
CHECK_PIXEL_PTR(rleCode * 4);
@@ -200,7 +200,7 @@ void QTRLEDecoder::decode8(Common::SeekableReadStream *stream, uint32 rowPtr, ui
CHECK_PIXEL_PTR(rleCode);
while (rleCode--)
- rgb[pixelPtr++] = stream->readByte();
+ rgb[pixelPtr++] = stream.readByte();
}
}
@@ -208,25 +208,25 @@ void QTRLEDecoder::decode8(Common::SeekableReadStream *stream, uint32 rowPtr, ui
}
}
-void QTRLEDecoder::decode16(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange) {
+void QTRLEDecoder::decode16(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange) {
uint32 pixelPtr = 0;
uint16 *rgb = (uint16 *)_surface->getPixels();
while (linesToChange--) {
CHECK_STREAM_PTR(2);
- pixelPtr = rowPtr + stream->readByte() - 1;
+ pixelPtr = rowPtr + stream.readByte() - 1;
- for (int8 rleCode = stream->readSByte(); rleCode != -1; rleCode = stream->readSByte()) {
+ for (int8 rleCode = stream.readSByte(); rleCode != -1; rleCode = stream.readSByte()) {
if (rleCode == 0) {
// there's another skip code in the stream
CHECK_STREAM_PTR(1);
- pixelPtr += stream->readByte() - 1;
+ pixelPtr += stream.readByte() - 1;
} else if (rleCode < 0) {
// decode the run length code
rleCode = -rleCode;
CHECK_STREAM_PTR(2);
- uint16 rgb16 = stream->readUint16BE();
+ uint16 rgb16 = stream.readUint16BE();
CHECK_PIXEL_PTR(rleCode);
@@ -238,7 +238,7 @@ void QTRLEDecoder::decode16(Common::SeekableReadStream *stream, uint32 rowPtr, u
// copy pixels directly to output
while (rleCode--)
- rgb[pixelPtr++] = stream->readUint16BE();
+ rgb[pixelPtr++] = stream.readUint16BE();
}
}
@@ -246,28 +246,28 @@ void QTRLEDecoder::decode16(Common::SeekableReadStream *stream, uint32 rowPtr, u
}
}
-void QTRLEDecoder::decode24(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange) {
+void QTRLEDecoder::decode24(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange) {
uint32 pixelPtr = 0;
uint32 *rgb = (uint32 *)_surface->getPixels();
while (linesToChange--) {
CHECK_STREAM_PTR(2);
- pixelPtr = rowPtr + stream->readByte() - 1;
+ pixelPtr = rowPtr + stream.readByte() - 1;
- for (int8 rleCode = stream->readSByte(); rleCode != -1; rleCode = stream->readSByte()) {
+ for (int8 rleCode = stream.readSByte(); rleCode != -1; rleCode = stream.readSByte()) {
if (rleCode == 0) {
// there's another skip code in the stream
CHECK_STREAM_PTR(1);
- pixelPtr += stream->readByte() - 1;
+ pixelPtr += stream.readByte() - 1;
} else if (rleCode < 0) {
// decode the run length code
rleCode = -rleCode;
CHECK_STREAM_PTR(3);
- byte r = stream->readByte();
- byte g = stream->readByte();
- byte b = stream->readByte();
+ byte r = stream.readByte();
+ byte g = stream.readByte();
+ byte b = stream.readByte();
uint32 color = _surface->format.RGBToColor(r, g, b);
CHECK_PIXEL_PTR(rleCode);
@@ -280,9 +280,9 @@ void QTRLEDecoder::decode24(Common::SeekableReadStream *stream, uint32 rowPtr, u
// copy pixels directly to output
while (rleCode--) {
- byte r = stream->readByte();
- byte g = stream->readByte();
- byte b = stream->readByte();
+ byte r = stream.readByte();
+ byte g = stream.readByte();
+ byte b = stream.readByte();
rgb[pixelPtr++] = _surface->format.RGBToColor(r, g, b);
}
}
@@ -292,29 +292,29 @@ void QTRLEDecoder::decode24(Common::SeekableReadStream *stream, uint32 rowPtr, u
}
}
-void QTRLEDecoder::decode32(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange) {
+void QTRLEDecoder::decode32(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange) {
uint32 pixelPtr = 0;
uint32 *rgb = (uint32 *)_surface->getPixels();
while (linesToChange--) {
CHECK_STREAM_PTR(2);
- pixelPtr = rowPtr + stream->readByte() - 1;
+ pixelPtr = rowPtr + stream.readByte() - 1;
- for (int8 rleCode = stream->readSByte(); rleCode != -1; rleCode = stream->readSByte()) {
+ for (int8 rleCode = stream.readSByte(); rleCode != -1; rleCode = stream.readSByte()) {
if (rleCode == 0) {
// there's another skip code in the stream
CHECK_STREAM_PTR(1);
- pixelPtr += stream->readByte() - 1;
+ pixelPtr += stream.readByte() - 1;
} else if (rleCode < 0) {
// decode the run length code
rleCode = -rleCode;
CHECK_STREAM_PTR(4);
- byte a = stream->readByte();
- byte r = stream->readByte();
- byte g = stream->readByte();
- byte b = stream->readByte();
+ byte a = stream.readByte();
+ byte r = stream.readByte();
+ byte g = stream.readByte();
+ byte b = stream.readByte();
uint32 color = _surface->format.ARGBToColor(a, r, g, b);
CHECK_PIXEL_PTR(rleCode);
@@ -327,10 +327,10 @@ void QTRLEDecoder::decode32(Common::SeekableReadStream *stream, uint32 rowPtr, u
// copy pixels directly to output
while (rleCode--) {
- byte a = stream->readByte();
- byte r = stream->readByte();
- byte g = stream->readByte();
- byte b = stream->readByte();
+ byte a = stream.readByte();
+ byte r = stream.readByte();
+ byte g = stream.readByte();
+ byte b = stream.readByte();
rgb[pixelPtr++] = _surface->format.ARGBToColor(a, r, g, b);
}
}
@@ -340,29 +340,29 @@ void QTRLEDecoder::decode32(Common::SeekableReadStream *stream, uint32 rowPtr, u
}
}
-const Graphics::Surface *QTRLEDecoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *QTRLEDecoder::decodeFrame(Common::SeekableReadStream &stream) {
uint16 startLine = 0;
uint16 height = _surface->h;
// check if this frame is even supposed to change
- if (stream->size() < 8)
+ if (stream.size() < 8)
return _surface;
// start after the chunk size
- stream->readUint32BE();
+ stream.readUint32BE();
// fetch the header
- uint16 header = stream->readUint16BE();
+ uint16 header = stream.readUint16BE();
// if a header is present, fetch additional decoding parameters
if (header & 8) {
- if (stream->size() < 14)
+ if (stream.size() < 14)
return _surface;
- startLine = stream->readUint16BE();
- stream->readUint16BE(); // Unknown
- height = stream->readUint16BE();
- stream->readUint16BE(); // Unknown
+ startLine = stream.readUint16BE();
+ stream.readUint16BE(); // Unknown
+ height = stream.readUint16BE();
+ stream.readUint16BE(); // Unknown
}
uint32 rowPtr = _surface->w * startLine;
@@ -428,4 +428,4 @@ Graphics::PixelFormat QTRLEDecoder::getPixelFormat() const {
return Graphics::PixelFormat();
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/qtrle.h b/image/codecs/qtrle.h
index a1dd9c9188..b44a46c3e2 100644
--- a/video/codecs/qtrle.h
+++ b/image/codecs/qtrle.h
@@ -8,38 +8,37 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_QTRLE_H
-#define VIDEO_CODECS_QTRLE_H
+#ifndef IMAGE_CODECS_QTRLE_H
+#define IMAGE_CODECS_QTRLE_H
#include "graphics/pixelformat.h"
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
-namespace Video {
+namespace Image {
/**
* QuickTime Run-Length Encoding decoder.
*
- * Used in video:
- * - QuickTimeDecoder
+ * Used by PICT/QuickTime.
*/
class QTRLEDecoder : public Codec {
public:
QTRLEDecoder(uint16 width, uint16 height, byte bitsPerPixel);
~QTRLEDecoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const;
private:
@@ -47,14 +46,14 @@ private:
Graphics::Surface *_surface;
- void decode1(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange);
- void decode2_4(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange, byte bpp);
- void decode8(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange);
- void decode16(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange);
- void decode24(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange);
- void decode32(Common::SeekableReadStream *stream, uint32 rowPtr, uint32 linesToChange);
+ void decode1(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange);
+ void decode2_4(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange, byte bpp);
+ void decode8(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange);
+ void decode16(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange);
+ void decode24(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange);
+ void decode32(Common::SeekableReadStream &stream, uint32 rowPtr, uint32 linesToChange);
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/rpza.cpp b/image/codecs/rpza.cpp
index 17a2c53d9b..5aeee7c90b 100644
--- a/video/codecs/rpza.cpp
+++ b/image/codecs/rpza.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -22,14 +22,14 @@
// Based off ffmpeg's RPZA decoder
-#include "video/codecs/rpza.h"
+#include "image/codecs/rpza.h"
#include "common/debug.h"
#include "common/system.h"
#include "common/stream.h"
#include "common/textconsole.h"
-namespace Video {
+namespace Image {
RPZADecoder::RPZADecoder(uint16 width, uint16 height) : Codec() {
// We need to increase the surface size to a multiple of 4
@@ -61,7 +61,7 @@ RPZADecoder::~RPZADecoder() {
WRITE_UINT16((uint16 *)_surface->getPixels() + blockPtr, color); \
blockPtr++
-const Graphics::Surface *RPZADecoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *RPZADecoder::decodeFrame(Common::SeekableReadStream &stream) {
uint16 colorA = 0, colorB = 0;
uint16 color4[4];
@@ -73,40 +73,40 @@ const Graphics::Surface *RPZADecoder::decodeImage(Common::SeekableReadStream *st
uint16 tb;
// First byte is always 0xe1. Warn if it's different
- byte firstByte = stream->readByte();
+ byte firstByte = stream.readByte();
if (firstByte != 0xe1)
warning("First RPZA chunk byte is 0x%02x instead of 0xe1", firstByte);
// Get chunk size, ingnoring first byte
- uint32 chunkSize = stream->readUint16BE() << 8;
- chunkSize += stream->readByte();
+ uint32 chunkSize = stream.readUint16BE() << 8;
+ chunkSize += stream.readByte();
// If length mismatch use size from MOV file and try to decode anyway
- if (chunkSize != (uint32)stream->size()) {
+ if (chunkSize != (uint32)stream.size()) {
warning("MOV chunk size != encoded chunk size; using MOV chunk size");
- chunkSize = stream->size();
+ chunkSize = stream.size();
}
// Number of 4x4 blocks in frame
int32 totalBlocks = ((_surface->w + 3) / 4) * ((_surface->h + 3) / 4);
// Process chunk data
- while ((uint32)stream->pos() < chunkSize) {
- byte opcode = stream->readByte(); // Get opcode
+ while ((uint32)stream.pos() < chunkSize) {
+ byte opcode = stream.readByte(); // Get opcode
byte numBlocks = (opcode & 0x1f) + 1; // Extract block counter from opcode
// If opcode MSbit is 0, we need more data to decide what to do
if ((opcode & 0x80) == 0) {
- colorA = (opcode << 8) | stream->readByte();
+ colorA = (opcode << 8) | stream.readByte();
opcode = 0;
- if (stream->readByte() & 0x80) {
+ if (stream.readByte() & 0x80) {
// Must behave as opcode 110xxxxx, using colorA computed
// above. Use fake opcode 0x20 to enter switch block at
// the right place
opcode = 0x20;
numBlocks = 1;
}
- stream->seek(-1, SEEK_CUR);
+ stream.seek(-1, SEEK_CUR);
}
switch (opcode & 0xe0) {
@@ -116,7 +116,7 @@ const Graphics::Surface *RPZADecoder::decodeImage(Common::SeekableReadStream *st
}
break;
case 0xa0: // Fill blocks with one color
- colorA = stream->readUint16BE();
+ colorA = stream.readUint16BE();
while (numBlocks--) {
blockPtr = rowPtr + pixelPtr;
for (byte pixel_y = 0; pixel_y < 4; pixel_y++) {
@@ -131,9 +131,9 @@ const Graphics::Surface *RPZADecoder::decodeImage(Common::SeekableReadStream *st
// Fill blocks with 4 colors
case 0xc0:
- colorA = stream->readUint16BE();
+ colorA = stream.readUint16BE();
case 0x20:
- colorB = stream->readUint16BE();
+ colorB = stream.readUint16BE();
// Sort out the colors
color4[0] = colorB;
@@ -162,7 +162,7 @@ const Graphics::Surface *RPZADecoder::decodeImage(Common::SeekableReadStream *st
while (numBlocks--) {
blockPtr = rowPtr + pixelPtr;
for (byte pixel_y = 0; pixel_y < 4; pixel_y++) {
- byte index = stream->readByte();
+ byte index = stream.readByte();
for (byte pixel_x = 0; pixel_x < 4; pixel_x++) {
byte idx = (index >> (2 * (3 - pixel_x))) & 0x03;
PUT_PIXEL(color4[idx]);
@@ -180,7 +180,7 @@ const Graphics::Surface *RPZADecoder::decodeImage(Common::SeekableReadStream *st
for (byte pixel_x = 0; pixel_x < 4; pixel_x++) {
// We already have color of upper left pixel
if (pixel_y != 0 || pixel_x != 0)
- colorA = stream->readUint16BE();
+ colorA = stream.readUint16BE();
PUT_PIXEL(colorA);
}
@@ -198,4 +198,4 @@ const Graphics::Surface *RPZADecoder::decodeImage(Common::SeekableReadStream *st
return _surface;
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/rpza.h b/image/codecs/rpza.h
index 67e0699692..d1dbbdb676 100644
--- a/video/codecs/rpza.h
+++ b/image/codecs/rpza.h
@@ -8,44 +8,43 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_RPZA_H
-#define VIDEO_CODECS_RPZA_H
+#ifndef IMAGE_CODECS_RPZA_H
+#define IMAGE_CODECS_RPZA_H
#include "graphics/pixelformat.h"
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
-namespace Video {
+namespace Image {
/**
* Apple RPZA decoder.
*
- * Used in video:
- * - QuickTimeDecoder
+ * Used by PICT/QuickTime.
*/
class RPZADecoder : public Codec {
public:
RPZADecoder(uint16 width, uint16 height);
~RPZADecoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return Graphics::PixelFormat(2, 5, 5, 5, 0, 10, 5, 0, 0); }
private:
Graphics::Surface *_surface;
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/smc.cpp b/image/codecs/smc.cpp
index c0f8152547..54493d0c34 100644
--- a/video/codecs/smc.cpp
+++ b/image/codecs/smc.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -22,14 +22,14 @@
// Based off ffmpeg's SMC decoder
-#include "video/codecs/smc.h"
+#include "image/codecs/smc.h"
#include "common/stream.h"
#include "common/textconsole.h"
-namespace Video {
+namespace Image {
#define GET_BLOCK_COUNT() \
- (opcode & 0x10) ? (1 + stream->readByte()) : 1 + (opcode & 0x0F);
+ (opcode & 0x10) ? (1 + stream.readByte()) : 1 + (opcode & 0x0F);
#define ADVANCE_BLOCK() \
{ \
@@ -55,7 +55,7 @@ SMCDecoder::~SMCDecoder() {
delete _surface;
}
-const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *SMCDecoder::decodeFrame(Common::SeekableReadStream &stream) {
byte *pixels = (byte *)_surface->getPixels();
uint32 numBlocks = 0;
@@ -77,9 +77,9 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
uint32 colorOctetIndex = 0;
uint32 colorTableIndex = 0; // indices to color pair, quad, or octet tables
- int32 chunkSize = stream->readUint32BE() & 0x00FFFFFF;
- if (chunkSize != stream->size())
- warning("MOV chunk size != SMC chunk size (%d != %d); ignoring SMC chunk size", chunkSize, stream->size());
+ int32 chunkSize = stream.readUint32BE() & 0x00FFFFFF;
+ if (chunkSize != stream.size())
+ warning("MOV chunk size != SMC chunk size (%d != %d); ignoring SMC chunk size", chunkSize, stream.size());
int32 totalBlocks = ((_surface->w + 3) / 4) * ((_surface->h + 3) / 4);
@@ -88,8 +88,8 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
// sanity checks
// make sure stream ptr hasn't gone out of bounds
- if (stream->pos() > stream->size()) {
- warning("SMC decoder just went out of bounds (stream ptr = %d, chunk size = %d)", stream->pos(), stream->size());
+ if (stream.pos() > stream.size()) {
+ warning("SMC decoder just went out of bounds (stream ptr = %d, chunk size = %d)", stream.pos(), stream.size());
return _surface;
}
@@ -99,7 +99,7 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
return _surface;
}
- byte opcode = stream->readByte();
+ byte opcode = stream.readByte();
switch (opcode & 0xF0) {
// skip n blocks
@@ -192,7 +192,7 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
case 0x60:
case 0x70:
numBlocks = GET_BLOCK_COUNT();
- pixel = stream->readByte();
+ pixel = stream.readByte();
while (numBlocks--) {
blockPtr = rowPtr + pixelPtr;
@@ -216,7 +216,7 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
// fetch the next 2 colors from bytestream and store in next
// available entry in the color pair table
for (byte i = 0; i < CPAIR; i++) {
- pixel = stream->readByte();
+ pixel = stream.readByte();
colorTableIndex = CPAIR * colorPairIndex + i;
_colorPairs[colorTableIndex] = pixel;
}
@@ -229,10 +229,10 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
if (colorPairIndex == COLORS_PER_TABLE)
colorPairIndex = 0;
} else
- colorTableIndex = CPAIR * stream->readByte();
+ colorTableIndex = CPAIR * stream.readByte();
while (numBlocks--) {
- colorFlags = stream->readUint16BE();
+ colorFlags = stream.readUint16BE();
uint16 flagMask = 0x8000;
blockPtr = rowPtr + pixelPtr;
for (byte y = 0; y < 4; y++) {
@@ -262,7 +262,7 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
// fetch the next 4 colors from bytestream and store in next
// available entry in the color quad table
for (byte i = 0; i < CQUAD; i++) {
- pixel = stream->readByte();
+ pixel = stream.readByte();
colorTableIndex = CQUAD * colorQuadIndex + i;
_colorQuads[colorTableIndex] = pixel;
}
@@ -275,10 +275,10 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
if (colorQuadIndex == COLORS_PER_TABLE)
colorQuadIndex = 0;
} else
- colorTableIndex = CQUAD * stream->readByte();
+ colorTableIndex = CQUAD * stream.readByte();
while (numBlocks--) {
- colorFlags = stream->readUint32BE();
+ colorFlags = stream.readUint32BE();
// flag mask actually acts as a bit shift count here
byte flagMask = 30;
@@ -306,7 +306,7 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
// fetch the next 8 colors from bytestream and store in next
// available entry in the color octet table
for (byte i = 0; i < COCTET; i++) {
- pixel = stream->readByte();
+ pixel = stream.readByte();
colorTableIndex = COCTET * colorOctetIndex + i;
_colorOctets[colorTableIndex] = pixel;
}
@@ -319,7 +319,7 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
if (colorOctetIndex == COLORS_PER_TABLE)
colorOctetIndex = 0;
} else
- colorTableIndex = COCTET * stream->readByte();
+ colorTableIndex = COCTET * stream.readByte();
while (numBlocks--) {
/*
@@ -331,7 +331,7 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
// build the color flags
byte flagData[6];
- stream->read(flagData, 6);
+ stream.read(flagData, 6);
colorFlagsA = ((READ_BE_UINT16(flagData) & 0xFFF0) << 8) | (READ_BE_UINT16(flagData + 2) >> 4);
colorFlagsB = ((READ_BE_UINT16(flagData + 4) & 0xFFF0) << 8) | ((flagData[1] & 0xF) << 8) |
@@ -369,7 +369,7 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
blockPtr = rowPtr + pixelPtr;
for (byte y = 0; y < 4; y++) {
for (byte x = 0; x < 4; x++)
- pixels[blockPtr++] = stream->readByte();
+ pixels[blockPtr++] = stream.readByte();
blockPtr += rowInc;
}
@@ -386,4 +386,4 @@ const Graphics::Surface *SMCDecoder::decodeImage(Common::SeekableReadStream *str
return _surface;
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/smc.h b/image/codecs/smc.h
index 4b9f57410a..655ff0a3bc 100644
--- a/video/codecs/smc.h
+++ b/image/codecs/smc.h
@@ -8,24 +8,24 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_SMC_H
-#define VIDEO_CODECS_SMC_H
+#ifndef IMAGE_CODECS_SMC_H
+#define IMAGE_CODECS_SMC_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
-namespace Video {
+namespace Image {
enum {
CPAIR = 2,
@@ -37,15 +37,14 @@ enum {
/**
* Apple SMC decoder.
*
- * Used in video:
- * - QuickTimeDecoder
+ * Used by PICT/QuickTime.
*/
class SMCDecoder : public Codec {
public:
SMCDecoder(uint16 width, uint16 height);
~SMCDecoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return Graphics::PixelFormat::createFormatCLUT8(); }
private:
@@ -57,6 +56,6 @@ private:
byte _colorOctets[COLORS_PER_TABLE * COCTET];
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/svq1.cpp b/image/codecs/svq1.cpp
index 57e84968a3..765d512797 100644
--- a/video/codecs/svq1.cpp
+++ b/image/codecs/svq1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,9 +23,9 @@
// Sorenson Video 1 Codec
// Based off FFmpeg's SVQ1 decoder (written by Arpi and Nick Kurshev)
-#include "video/codecs/svq1.h"
-#include "video/codecs/svq1_cb.h"
-#include "video/codecs/svq1_vlc.h"
+#include "image/codecs/svq1.h"
+#include "image/codecs/svq1_cb.h"
+#include "image/codecs/svq1_vlc.h"
#include "common/stream.h"
#include "common/bitstream.h"
@@ -37,7 +37,7 @@
#include "graphics/yuv_to_rgb.h"
-namespace Video {
+namespace Image {
#define SVQ1_BLOCK_SKIP 0
#define SVQ1_BLOCK_INTER 1
@@ -91,10 +91,10 @@ SVQ1Decoder::~SVQ1Decoder() {
#define ALIGN(x, a) (((x)+(a)-1)&~((a)-1))
-const Graphics::Surface *SVQ1Decoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *SVQ1Decoder::decodeFrame(Common::SeekableReadStream &stream) {
debug(1, "SVQ1Decoder::decodeImage()");
- Common::BitStream32BEMSB frameData(*stream);
+ Common::BitStream32BEMSB frameData(stream);
uint32 frameCode = frameData.getBits(22);
debug(1, " frameCode: %d", frameCode);
@@ -794,4 +794,4 @@ bool SVQ1Decoder::svq1DecodeDeltaBlock(Common::BitStream *ss, byte *current, byt
return resultValid;
}
-} // End of namespace Video
+} // End of namespace Image
diff --git a/video/codecs/svq1.h b/image/codecs/svq1.h
index 6667fea344..236b810294 100644
--- a/video/codecs/svq1.h
+++ b/image/codecs/svq1.h
@@ -8,22 +8,22 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
-#ifndef VIDEO_CODECS_SVQ1_H
-#define VIDEO_CODECS_SVQ1_H
+#ifndef IMAGE_CODECS_SVQ1_H
+#define IMAGE_CODECS_SVQ1_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
namespace Common {
class BitStream;
@@ -31,20 +31,19 @@ class Huffman;
struct Point;
}
-namespace Video {
+namespace Image {
/**
* Sorenson Vector Quantizer 1 decoder.
*
- * Used in video:
- * - QuickTimeDecoder
+ * Used by PICT/QuickTime.
*/
class SVQ1Decoder : public Codec {
public:
SVQ1Decoder(uint16 width, uint16 height);
~SVQ1Decoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
Graphics::PixelFormat getPixelFormat() const { return _surface->format; }
private:
@@ -83,6 +82,6 @@ private:
void putPixels16XY2C(byte *block, const byte *pixels, int lineSize, int h);
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/svq1_cb.h b/image/codecs/svq1_cb.h
index 8281b3fc28..27408a7472 100644
--- a/video/codecs/svq1_cb.h
+++ b/image/codecs/svq1_cb.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,12 +23,12 @@
// These tables are modified from their FFmpeg counterparts so that
// they work on both little and big endian systems.
-#ifndef VIDEO_CODECS_SVQ1_CB_H
-#define VIDEO_CODECS_SVQ1_CB_H
+#ifndef IMAGE_CODECS_SVQ1_CB_H
+#define IMAGE_CODECS_SVQ1_CB_H
#include "common/scummsys.h"
-namespace Video {
+namespace Image {
static const int8 s_svq1InterCodebook4x2[768] = {
7, 2, -6, -7, 7, 3, -3, -4, -7, -2, 7, 8, -8, -4, 3, 4,
@@ -1506,6 +1506,6 @@ static const int8 *const s_svq1IntraCodebooks[6] = {
0, 0
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/svq1_vlc.h b/image/codecs/svq1_vlc.h
index 5fb10981f7..19cfb3418c 100644
--- a/video/codecs/svq1_vlc.h
+++ b/image/codecs/svq1_vlc.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,12 +23,12 @@
// These tables are modified versions of the FFmpeg ones so that they
// will work with our BitStream class directly.
-#ifndef VIDEO_CODECS_SVQ1_VLC_H
-#define VIDEO_CODECS_SVQ1_VLC_H
+#ifndef IMAGE_CODECS_SVQ1_VLC_H
+#define IMAGE_CODECS_SVQ1_VLC_H
#include "common/scummsys.h"
-namespace Video {
+namespace Image {
static const byte s_svq1BlockTypeLengths[4] = {
1, 2, 3, 3
@@ -336,6 +336,6 @@ static const uint32 s_svq1MotionComponentCodes[33] = {
2, 3, 2
};
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/truemotion1.cpp b/image/codecs/truemotion1.cpp
index 720e86a4ff..1302d72e2f 100644
--- a/video/codecs/truemotion1.cpp
+++ b/image/codecs/truemotion1.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,16 +23,16 @@
// Based on the TrueMotion 1 decoder by Alex Beregszaszi & Mike Melanson in FFmpeg
#include "common/scummsys.h"
-#include "video/codecs/truemotion1.h"
+#include "image/codecs/truemotion1.h"
-#ifdef VIDEO_CODECS_TRUEMOTION1_H
+#ifdef IMAGE_CODECS_TRUEMOTION1_H
-#include "video/codecs/truemotion1data.h"
+#include "image/codecs/truemotion1data.h"
#include "common/stream.h"
#include "common/textconsole.h"
#include "common/util.h"
-namespace Video {
+namespace Image {
enum {
FLAG_SPRITE = (1 << 5),
@@ -163,9 +163,9 @@ void TrueMotion1Decoder::genVectorTable16(const byte *selVectorTable) {
}
}
-void TrueMotion1Decoder::decodeHeader(Common::SeekableReadStream *stream) {
- _buf = new byte[stream->size()];
- stream->read(_buf, stream->size());
+void TrueMotion1Decoder::decodeHeader(Common::SeekableReadStream &stream) {
+ _buf = new byte[stream.size()];
+ stream.read(_buf, stream.size());
byte headerBuffer[128]; // logical maximum size of the header
const byte *selVectorTable;
@@ -243,7 +243,7 @@ void TrueMotion1Decoder::decodeHeader(Common::SeekableReadStream *stream) {
_indexStream = _mbChangeBits + _mbChangeBitsRowSize * (_height >> 2);
}
- _indexStreamSize = stream->size() - (_indexStream - _buf);
+ _indexStreamSize = stream.size() - (_indexStream - _buf);
_lastDeltaset = _header.deltaset;
_lastVectable = _header.vectable;
@@ -397,7 +397,7 @@ void TrueMotion1Decoder::decode16() {
}
}
-const Graphics::Surface *TrueMotion1Decoder::decodeImage(Common::SeekableReadStream *stream) {
+const Graphics::Surface *TrueMotion1Decoder::decodeFrame(Common::SeekableReadStream &stream) {
decodeHeader(stream);
if (compressionTypes[_header.compression].algorithm == ALGO_NOP) {
@@ -417,6 +417,6 @@ const Graphics::Surface *TrueMotion1Decoder::decodeImage(Common::SeekableReadStr
return _surface;
}
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/video/codecs/truemotion1.h b/image/codecs/truemotion1.h
index 6ac09af24b..12570f066c 100644
--- a/video/codecs/truemotion1.h
+++ b/image/codecs/truemotion1.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -25,25 +25,24 @@
// Only compile if SCI32 is enabled, ZVISION is enabled, or if we're building dynamic modules
#if defined(ENABLE_SCI32) || defined(ENABLE_ZVISION) || defined(DYNAMIC_MODULES)
-#ifndef VIDEO_CODECS_TRUEMOTION1_H
-#define VIDEO_CODECS_TRUEMOTION1_H
+#ifndef IMAGE_CODECS_TRUEMOTION1_H
+#define IMAGE_CODECS_TRUEMOTION1_H
-#include "video/codecs/codec.h"
+#include "image/codecs/codec.h"
-namespace Video {
+namespace Image {
/**
* Duck TrueMotion 1 decoder.
*
- * Used in video:
- * - AVIDecoder
+ * Used by BMP/AVI.
*/
class TrueMotion1Decoder : public Codec {
public:
TrueMotion1Decoder(uint16 width, uint16 height);
~TrueMotion1Decoder();
- const Graphics::Surface *decodeImage(Common::SeekableReadStream *stream);
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
// Always return RGB565
Graphics::PixelFormat getPixelFormat() const { return Graphics::PixelFormat(2, 5, 6, 5, 0, 11, 5, 0, 0); }
@@ -96,14 +95,14 @@ private:
} _header;
void selectDeltaTables(int deltaTableIndex);
- void decodeHeader(Common::SeekableReadStream *stream);
+ void decodeHeader(Common::SeekableReadStream &stream);
void decode16();
int makeYdt16Entry(int p1, int p2);
int makeCdt16Entry(int p1, int p2);
void genVectorTable16(const byte *selVectorTable);
};
-} // End of namespace Video
+} // End of namespace Image
-#endif // VIDEO_CODECS_TRUEMOTION1_H
+#endif // IMAGE_CODECS_TRUEMOTION1_H
#endif // SCI32/Plugins guard
diff --git a/video/codecs/truemotion1data.h b/image/codecs/truemotion1data.h
index fabec43566..c73047211e 100644
--- a/video/codecs/truemotion1data.h
+++ b/image/codecs/truemotion1data.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -23,12 +23,12 @@
// Based on the TrueMotion 1 decoder by Alex Beregszaszi & Mike Melanson in FFmpeg
// These tables were originally part of VpVision from On2
-#ifndef VIDEO_CODECS_TRUEMOTION1DATA_H
-#define VIDEO_CODECS_TRUEMOTION1DATA_H
+#ifndef IMAGE_CODECS_TRUEMOTION1DATA_H
+#define IMAGE_CODECS_TRUEMOTION1DATA_H
#include "common/scummsys.h"
-namespace Video {
+namespace Image {
// Y delta tables, skinny and fat
static const int16 ydt1[8] = { 0, -2, 2, -6, 6, -12, 12, -12 };
@@ -824,6 +824,6 @@ static const byte pc_tbl4[] = {
static const byte * const tables[] = { pc_tbl2, pc_tbl3, pc_tbl4 };
-} // End of namespace Video
+} // End of namespace Image
#endif
diff --git a/graphics/decoders/iff.cpp b/image/iff.cpp
index fe27258d28..d93e9ff878 100644
--- a/graphics/decoders/iff.cpp
+++ b/image/iff.cpp
@@ -17,15 +17,16 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
+#include "image/iff.h"
+
#include "common/iff_container.h"
#include "common/stream.h"
#include "common/util.h"
-#include "graphics/decoders/iff.h"
-
-namespace Graphics {
+namespace Image {
IFFDecoder::IFFDecoder() {
_surface = 0;
@@ -240,4 +241,4 @@ void IFFDecoder::packPixels(byte *scanlines, byte *data, const uint16 scanlinePi
}
}
-} // End of namespace Graphics
+} // End of namespace Image
diff --git a/graphics/decoders/iff.h b/image/iff.h
index 37cb4b38c1..3d342b3173 100644
--- a/graphics/decoders/iff.h
+++ b/image/iff.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/**
@@ -28,22 +29,24 @@
* - saga
*/
-#ifndef GRAPHICS_DECODERS_IFF_H
-#define GRAPHICS_DECODERS_IFF_H
+#ifndef IMAGE_IFF_H
+#define IMAGE_IFF_H
#include "common/array.h"
#include "common/endian.h"
-
#include "graphics/surface.h"
-#include "graphics/decoders/image_decoder.h"
+
+#include "image/image_decoder.h"
namespace Common {
class SeekableReadStream;
}
namespace Graphics {
-
struct Surface;
+}
+
+namespace Image {
class IFFDecoder : public ImageDecoder {
public:
@@ -77,7 +80,7 @@ public:
void destroy();
bool loadStream(Common::SeekableReadStream &stream);
const Header *getHeader() const { return &_header; }
- const Surface *getSurface() const { return _surface; }
+ const Graphics::Surface *getSurface() const { return _surface; }
const byte *getPalette() const { return _palette; }
const Common::Array<PaletteRange> &getPaletteRanges() const { return _paletteRanges; }
uint16 getPaletteColorCount() const { return _paletteColorCount; }
@@ -103,7 +106,7 @@ public:
private:
Header _header;
- Surface *_surface;
+ Graphics::Surface *_surface;
byte *_palette;
Common::Array<PaletteRange> _paletteRanges;
Type _type;
@@ -118,6 +121,6 @@ private:
void packPixels(byte *scanlines, byte *data, const uint16 scanlinePitch, const uint16 outPitch);
};
-} // End of namespace Graphics
+} // End of namespace Image
-#endif // GRAPHICS_DECODERS_IFF_H
+#endif
diff --git a/graphics/decoders/image_decoder.h b/image/image_decoder.h
index a39a9a1493..4d3512e0f6 100644
--- a/graphics/decoders/image_decoder.h
+++ b/image/image_decoder.h
@@ -17,26 +17,30 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
-#ifndef GRAPHICS_DECODERS_IMAGEDECODER_H
-#define GRAPHICS_DECODERS_IMAGEDECODER_H
+#ifndef IMAGE_IMAGEDECODER_H
+#define IMAGE_IMAGEDECODER_H
#include "common/scummsys.h"
#include "common/str.h"
-namespace Common{
+namespace Common {
class SeekableReadStream;
}
namespace Graphics {
-
-struct PixelFormat;
struct Surface;
+}
+
+namespace Image {
/**
* A representation of an image decoder that maintains ownership of the surface
* and palette it decodes to.
+ *
+ * This is designed for still frames only.
*/
class ImageDecoder {
public:
@@ -72,7 +76,7 @@ public:
*
* @return the decoded surface, or 0 if no surface is present
*/
- virtual const Surface *getSurface() const = 0;
+ virtual const Graphics::Surface *getSurface() const = 0;
/**
* Get the decoded palette
@@ -99,6 +103,6 @@ public:
virtual uint16 getPaletteColorCount() const { return 0; }
};
-} // End of namespace Graphics
+} // End of namespace Image
#endif
diff --git a/graphics/decoders/jpeg.cpp b/image/jpeg.cpp
index c858884095..1ce45f2539 100644
--- a/graphics/decoders/jpeg.cpp
+++ b/image/jpeg.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -24,13 +24,13 @@
// here.
#define FORBIDDEN_SYMBOL_ALLOW_ALL
-#include "graphics/pixelformat.h"
-#include "graphics/decoders/jpeg.h"
+#include "image/jpeg.h"
#include "common/debug.h"
#include "common/endian.h"
#include "common/stream.h"
#include "common/textconsole.h"
+#include "graphics/pixelformat.h"
#ifdef USE_JPEG
// The original release of libjpeg v6b did not contain any extern "C" in case
@@ -42,16 +42,16 @@ extern "C" {
}
#endif
-namespace Graphics {
+namespace Image {
-JPEGDecoder::JPEGDecoder() : ImageDecoder(), _surface(), _colorSpace(kColorSpaceRGBA) {
+JPEGDecoder::JPEGDecoder() : _surface(), _colorSpace(kColorSpaceRGBA) {
}
JPEGDecoder::~JPEGDecoder() {
destroy();
}
-const Surface *JPEGDecoder::getSurface() const {
+const Graphics::Surface *JPEGDecoder::getSurface() const {
return &_surface;
}
@@ -59,6 +59,17 @@ void JPEGDecoder::destroy() {
_surface.free();
}
+const Graphics::Surface *JPEGDecoder::decodeFrame(Common::SeekableReadStream &stream) {
+ if (!loadStream(stream))
+ return 0;
+
+ return getSurface();
+}
+
+Graphics::PixelFormat JPEGDecoder::getPixelFormat() const {
+ return _surface.format;
+}
+
#ifdef USE_JPEG
namespace {
diff --git a/graphics/decoders/jpeg.h b/image/jpeg.h
index 8460bc2698..ac0d22d129 100644
--- a/graphics/decoders/jpeg.h
+++ b/image/jpeg.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -26,21 +26,24 @@
* - groovie
* - mohawk
* - wintermute
+ *
+ * Used by PICT/QuickTime.
*/
-#ifndef GRAPHICS_JPEG_H
-#define GRAPHICS_JPEG_H
+#ifndef IMAGE_JPEG_H
+#define IMAGE_JPEG_H
#include "graphics/surface.h"
-#include "graphics/decoders/image_decoder.h"
+#include "image/image_decoder.h"
+#include "image/codecs/codec.h"
namespace Common {
class SeekableReadStream;
}
-namespace Graphics {
+namespace Image {
-class JPEGDecoder : public ImageDecoder {
+class JPEGDecoder : public ImageDecoder, public Codec {
public:
JPEGDecoder();
~JPEGDecoder();
@@ -48,7 +51,11 @@ public:
// ImageDecoder API
virtual void destroy();
virtual bool loadStream(Common::SeekableReadStream &str);
- virtual const Surface *getSurface() const;
+ virtual const Graphics::Surface *getSurface() const;
+
+ // Codec API
+ const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
+ Graphics::PixelFormat getPixelFormat() const;
// Special API for JPEG
enum ColorSpace {
@@ -90,6 +97,6 @@ private:
ColorSpace _colorSpace;
};
-} // End of Graphics namespace
+} // End of namespace Image
-#endif // GRAPHICS_JPEG_H
+#endif
diff --git a/image/module.mk b/image/module.mk
new file mode 100644
index 0000000000..fdf52ec09f
--- /dev/null
+++ b/image/module.mk
@@ -0,0 +1,31 @@
+MODULE := image
+
+MODULE_OBJS := \
+ bmp.o \
+ iff.o \
+ jpeg.o \
+ pcx.o \
+ pict.o \
+ png.o \
+ tga.o \
+ codecs/bmp_raw.o \
+ codecs/cdtoons.o \
+ codecs/cinepak.o \
+ codecs/codec.o \
+ codecs/indeo3.o \
+ codecs/mjpeg.o \
+ codecs/msrle.o \
+ codecs/msvideo1.o \
+ codecs/qtrle.o \
+ codecs/rpza.o \
+ codecs/smc.o \
+ codecs/svq1.o \
+ codecs/truemotion1.o
+
+ifdef USE_MPEG2
+MODULE_OBJS += \
+ codecs/mpeg.o
+endif
+
+# Include common rules
+include $(srcdir)/rules.mk
diff --git a/graphics/decoders/pcx.cpp b/image/pcx.cpp
index eb9b4c997d..282a6c68c7 100644
--- a/graphics/decoders/pcx.cpp
+++ b/image/pcx.cpp
@@ -17,14 +17,15 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
+#include "image/pcx.h"
+
#include "common/stream.h"
#include "common/textconsole.h"
-
#include "graphics/pixelformat.h"
#include "graphics/surface.h"
-#include "graphics/decoders/pcx.h"
/**
* Based on the PCX specs:
@@ -33,7 +34,7 @@
* http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavcodec/pcx.c
*/
-namespace Graphics {
+namespace Image {
PCXDecoder::PCXDecoder() {
_surface = 0;
@@ -210,4 +211,4 @@ void PCXDecoder::decodeRLE(Common::SeekableReadStream &stream, byte *dst, uint32
}
}
-} // End of namespace Graphics
+} // End of namespace Image
diff --git a/graphics/decoders/pcx.h b/image/pcx.h
index b25166b3d9..ce30ab5eb2 100644
--- a/graphics/decoders/pcx.h
+++ b/image/pcx.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/**
@@ -27,21 +28,18 @@
* - tucker
*/
-#ifndef GRAPHICS_DECODERS_PCX_H
-#define GRAPHICS_DECODERS_PCX_H
+#ifndef IMAGE_PCX_H
+#define IMAGE_PCX_H
#include "common/scummsys.h"
#include "common/str.h"
-#include "graphics/decoders/image_decoder.h"
+#include "image/image_decoder.h"
namespace Common{
class SeekableReadStream;
}
-namespace Graphics {
-
-struct PixelFormat;
-struct Surface;
+namespace Image {
class PCXDecoder : public ImageDecoder {
public:
@@ -51,18 +49,18 @@ public:
// ImageDecoder API
void destroy();
virtual bool loadStream(Common::SeekableReadStream &stream);
- virtual const Surface *getSurface() const { return _surface; }
+ virtual const Graphics::Surface *getSurface() const { return _surface; }
const byte *getPalette() const { return _palette; }
uint16 getPaletteColorCount() const { return _paletteColorCount; }
private:
void decodeRLE(Common::SeekableReadStream &stream, byte *dst, uint32 bytesPerScanline, bool compressed);
- Surface *_surface;
+ Graphics::Surface *_surface;
byte *_palette;
uint16 _paletteColorCount;
};
-} // End of namespace Graphics
+} // End of namespace Image
#endif
diff --git a/graphics/decoders/pict.cpp b/image/pict.cpp
index f3e17b33e2..89f115dc90 100644
--- a/graphics/decoders/pict.cpp
+++ b/image/pict.cpp
@@ -8,29 +8,29 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
+#include "image/pict.h"
+#include "image/codecs/codec.h"
+
#include "common/debug.h"
#include "common/endian.h"
#include "common/stream.h"
#include "common/substream.h"
#include "common/textconsole.h"
-
#include "graphics/surface.h"
-#include "graphics/decoders/jpeg.h"
-#include "graphics/decoders/pict.h"
-namespace Graphics {
+namespace Image {
// The PICT code is based off of the QuickDraw specs:
// http://developer.apple.com/legacy/mac/library/documentation/mac/QuickDraw/QuickDraw-461.html
@@ -229,7 +229,7 @@ bool PICTDecoder::loadStream(Common::SeekableReadStream &stream) {
// NOTE: This is only a subset of the full PICT format.
// - Only V2 (Extended) Images Supported
- // - CompressedQuickTime (JPEG) compressed data is supported
+ // - CompressedQuickTime compressed data is supported
// - DirectBitsRect/PackBitsRect compressed data is supported
for (uint32 opNum = 0; !stream.eos() && !stream.err() && stream.pos() < stream.size() && _continueParsing; opNum++) {
// PICT v2 opcodes are two bytes
@@ -363,12 +363,12 @@ void PICTDecoder::unpackBitsRect(Common::SeekableReadStream &stream, bool withPa
switch (bytesPerPixel) {
case 1:
// Just copy to the image
- _outputSurface->create(width, height, PixelFormat::createFormatCLUT8());
+ _outputSurface->create(width, height, Graphics::PixelFormat::createFormatCLUT8());
memcpy(_outputSurface->getPixels(), buffer, _outputSurface->w * _outputSurface->h);
break;
case 2:
// We have a 16-bit surface
- _outputSurface->create(width, height, PixelFormat(2, 5, 5, 5, 0, 10, 5, 0, 0));
+ _outputSurface->create(width, height, Graphics::PixelFormat(2, 5, 5, 5, 0, 10, 5, 0, 0));
for (uint16 y = 0; y < _outputSurface->h; y++)
for (uint16 x = 0; x < _outputSurface->w; x++)
WRITE_UINT16(_outputSurface->getBasePtr(x, y), READ_UINT16(buffer + (y * _outputSurface->w + x) * 2));
@@ -550,31 +550,37 @@ void PICTDecoder::decodeCompressedQuickTime(Common::SeekableReadStream &stream)
// Now we've reached the image descriptor, so read the relevant data from that
uint32 idStart = stream.pos();
uint32 idSize = stream.readUint32BE();
- uint32 codec = stream.readUint32BE();
- stream.skip(36); // miscellaneous stuff
- uint32 jpegSize = stream.readUint32BE();
+ uint32 codecTag = stream.readUint32BE();
+ stream.skip(24); // miscellaneous stuff
+ uint16 width = stream.readUint16BE();
+ uint16 height = stream.readUint16BE();
+ stream.skip(8); // resolution, dpi
+ uint32 imageSize = stream.readUint32BE();
+ stream.skip(34);
+ uint16 bitsPerPixel = stream.readUint16BE();
stream.skip(idSize - (stream.pos() - idStart)); // more useless stuff
- if (codec != MKTAG('j', 'p', 'e', 'g'))
- error("Unhandled CompressedQuickTime format '%s'", tag2str(codec));
+ Common::SeekableSubReadStream imageStream(&stream, stream.pos(), stream.pos() + imageSize);
- Common::SeekableSubReadStream jpegStream(&stream, stream.pos(), stream.pos() + jpegSize);
+ Codec *codec = createQuickTimeCodec(codecTag, width, height, bitsPerPixel);
+ if (!codec)
+ error("Unhandled CompressedQuickTime format");
- JPEGDecoder jpeg;
- if (!jpeg.loadStream(jpegStream))
- error("PICTDecoder::decodeCompressedQuickTime(): Could not decode JPEG data");
+ const Graphics::Surface *surface = codec->decodeFrame(imageStream);
- const Graphics::Surface *jpegSurface = jpeg.getSurface();
+ if (!surface)
+ error("PICTDecoder::decodeCompressedQuickTime(): Could not decode data");
if (!_outputSurface) {
_outputSurface = new Graphics::Surface();
- _outputSurface->create(_imageRect.width(), _imageRect.height(), jpegSurface->format);
+ _outputSurface->create(_imageRect.width(), _imageRect.height(), surface->format);
}
- for (uint16 y = 0; y < jpegSurface->h; y++)
- memcpy(_outputSurface->getBasePtr(0 + xOffset, y + yOffset), jpegSurface->getBasePtr(0, y), jpegSurface->w * jpegSurface->format.bytesPerPixel);
+ for (uint16 y = 0; y < surface->h; y++)
+ memcpy(_outputSurface->getBasePtr(0 + xOffset, y + yOffset), surface->getBasePtr(0, y), surface->w * surface->format.bytesPerPixel);
stream.seek(startPos + dataSize);
+ delete codec;
}
-} // End of namespace Graphics
+} // End of namespace Image
diff --git a/graphics/decoders/pict.h b/image/pict.h
index 6f0d86c7a1..77b450f4a2 100644
--- a/graphics/decoders/pict.h
+++ b/image/pict.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -28,23 +28,24 @@
* - sci
*/
-#ifndef GRAPHICS_PICT_H
-#define GRAPHICS_PICT_H
+#ifndef IMAGE_PICT_H
+#define IMAGE_PICT_H
#include "common/array.h"
#include "common/rect.h"
#include "common/scummsys.h"
-#include "graphics/decoders/image_decoder.h"
-#include "graphics/pixelformat.h"
+#include "image/image_decoder.h"
namespace Common {
class SeekableReadStream;
}
namespace Graphics {
-
struct Surface;
+}
+
+namespace Image {
#define DECLARE_OPCODE(x) void x(Common::SeekableReadStream &stream)
@@ -56,7 +57,7 @@ public:
// ImageDecoder API
bool loadStream(Common::SeekableReadStream &stream);
void destroy();
- const Surface *getSurface() const { return _outputSurface; }
+ const Graphics::Surface *getSurface() const { return _outputSurface; }
const byte *getPalette() const { return _palette; }
uint16 getPaletteColorCount() const { return _paletteColorCount; }
@@ -135,6 +136,6 @@ private:
#undef DECLARE_OPCODE
-} // End of namespace Graphics
+} // End of namespace Image
#endif
diff --git a/graphics/decoders/png.cpp b/image/png.cpp
index c4fee46fec..158acfa8a5 100644
--- a/graphics/decoders/png.cpp
+++ b/image/png.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -29,14 +29,14 @@
#include <png.h>
#endif
-#include "graphics/decoders/png.h"
+#include "image/png.h"
#include "graphics/pixelformat.h"
#include "graphics/surface.h"
#include "common/stream.h"
-namespace Graphics {
+namespace Image {
PNGDecoder::PNGDecoder() : _outputSurface(0), _palette(0), _paletteColorCount(0), _stream(0) {
}
@@ -242,4 +242,4 @@ bool PNGDecoder::loadStream(Common::SeekableReadStream &stream) {
#endif
}
-} // End of Graphics namespace
+} // End of namespace Image
diff --git a/graphics/decoders/png.h b/image/png.h
index 5e608eb7b1..c4532fd03b 100644
--- a/graphics/decoders/png.h
+++ b/image/png.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -28,21 +28,22 @@
* - libpng
*/
-#ifndef GRAPHICS_PNG_H
-#define GRAPHICS_PNG_H
+#ifndef IMAGE_PNG_H
+#define IMAGE_PNG_H
#include "common/scummsys.h"
#include "common/textconsole.h"
-#include "graphics/decoders/image_decoder.h"
+#include "image/image_decoder.h"
namespace Common {
class SeekableReadStream;
}
namespace Graphics {
-
struct Surface;
-struct PixelFormat;
+}
+
+namespace Image {
class PNGDecoder : public ImageDecoder {
public:
@@ -62,6 +63,6 @@ private:
Graphics::Surface *_outputSurface;
};
-} // End of namespace Graphics
+} // End of namespace Image
-#endif // GRAPHICS_PNG_H
+#endif
diff --git a/graphics/decoders/tga.cpp b/image/tga.cpp
index bc27f18a49..e251f64677 100644
--- a/graphics/decoders/tga.cpp
+++ b/image/tga.cpp
@@ -17,20 +17,21 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/* Based on code from xoreos https://github.com/DrMcCoy/xoreos/
* relicensed under GPLv2+ with permission from DrMcCoy and clone2727
*/
+#include "image/tga.h"
+
#include "common/util.h"
#include "common/stream.h"
#include "common/textconsole.h"
#include "common/error.h"
-#include "graphics/decoders/tga.h"
-
-namespace Graphics {
+namespace Image {
TGADecoder::TGADecoder() {
_colorMapSize = 0;
@@ -138,29 +139,29 @@ bool TGADecoder::readHeader(Common::SeekableReadStream &tga, byte &imageType, by
//int interleave = (imgDesc & 0xC);
if (imageType == TYPE_CMAP || imageType == TYPE_RLE_CMAP) {
if (pixelDepth == 8) {
- _format = PixelFormat::createFormatCLUT8();
+ _format = Graphics::PixelFormat::createFormatCLUT8();
} else {
warning("Unsupported index-depth: %d", pixelDepth);
return false;
}
} else if (imageType == TYPE_TRUECOLOR || imageType == TYPE_RLE_TRUECOLOR) {
if (pixelDepth == 24) {
- _format = PixelFormat(3, 8, 8, 8, 0, 16, 8, 0, 0);
+ _format = Graphics::PixelFormat(3, 8, 8, 8, 0, 16, 8, 0, 0);
} else if (pixelDepth == 32) {
// HACK: According to the spec, attributeBits should determine the amount
// of alpha-bits, however, as the game files that use this decoder seems
// to ignore that fact, we force the amount to 8 for 32bpp files for now.
- _format = PixelFormat(4, 8, 8, 8, /* attributeBits */ 8, 16, 8, 0, 24);
+ _format = Graphics::PixelFormat(4, 8, 8, 8, /* attributeBits */ 8, 16, 8, 0, 24);
} else if (pixelDepth == 16 && imageType == TYPE_TRUECOLOR) {
// 16bpp TGA is ARGB1555
- _format = PixelFormat(2, 5, 5, 5, attributeBits, 10, 5, 0, 15);
+ _format = Graphics::PixelFormat(2, 5, 5, 5, attributeBits, 10, 5, 0, 15);
} else {
warning("Unsupported pixel depth: %d, %d", imageType, pixelDepth);
return false;
}
} else if (imageType == TYPE_BW || TYPE_RLE_BW) {
if (pixelDepth == 8) {
- _format = PixelFormat(4, 8, 8, 8, 0, 16, 8, 0, 0);
+ _format = Graphics::PixelFormat(4, 8, 8, 8, 0, 16, 8, 0, 0);
} else {
warning("Unsupported pixel depth: %d, %d", imageType, pixelDepth);
return false;
@@ -186,7 +187,7 @@ bool TGADecoder::readColorMap(Common::SeekableReadStream &tga, byte imageType, b
byte r, g, b;
if (_colorMapEntryLength == 32) {
byte a;
- PixelFormat format(4, 8, 8, 8, 0, 16, 8, 0, 24);
+ Graphics::PixelFormat format(4, 8, 8, 8, 0, 16, 8, 0, 24);
uint32 color = tga.readUint32LE();
format.colorToARGB(color, a, r, g, b);
} else if (_colorMapEntryLength == 24) {
@@ -195,7 +196,7 @@ bool TGADecoder::readColorMap(Common::SeekableReadStream &tga, byte imageType, b
b = tga.readByte();
} else if (_colorMapEntryLength == 16) {
byte a;
- PixelFormat format(2, 5, 5, 5, 0, 10, 5, 0, 15);
+ Graphics::PixelFormat format(2, 5, 5, 5, 0, 10, 5, 0, 15);
uint16 color = tga.readUint16LE();
format.colorToARGB(color, a, r, g, b);
} else {
@@ -426,4 +427,4 @@ bool TGADecoder::readDataRLE(Common::SeekableReadStream &tga, byte imageType, by
return true;
}
-} // End of namespace Graphics
+} // End of namespace Image
diff --git a/graphics/decoders/tga.h b/image/tga.h
index 5b1e87d4c5..677c17834f 100644
--- a/graphics/decoders/tga.h
+++ b/image/tga.h
@@ -17,6 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
*/
/* Based on code from eos https://github.com/DrMcCoy/xoreos/
@@ -29,17 +30,17 @@
* - zvision
*/
-#ifndef GRAPHICS_DECODERS_TGA_H
-#define GRAPHICS_DECODERS_TGA_H
+#ifndef IMAGE_TGA_H
+#define IMAGE_TGA_H
#include "graphics/surface.h"
-#include "graphics/decoders/image_decoder.h"
+#include "image/image_decoder.h"
namespace Common {
class SeekableReadStream;
}
-namespace Graphics {
+namespace Image {
/** TarGa image-decoder
* The following variations of TGA are supported:
@@ -58,7 +59,7 @@ public:
TGADecoder();
virtual ~TGADecoder();
virtual void destroy();
- virtual const Surface *getSurface() const { return &_surface; }
+ virtual const Graphics::Surface *getSurface() const { return &_surface; }
virtual const byte *getPalette() const { return _colorMap; }
virtual uint16 getPaletteColorCount() const { return _colorMapLength; }
virtual bool loadStream(Common::SeekableReadStream &stream);
@@ -84,8 +85,8 @@ private:
// Origin may be at the top, or bottom
bool _originTop;
- PixelFormat _format;
- Surface _surface;
+ Graphics::PixelFormat _format;
+ Graphics::Surface _surface;
// Loading helpers
bool readHeader(Common::SeekableReadStream &tga, byte &imageType, byte &pixelDepth);
bool readData(Common::SeekableReadStream &tga, byte imageType, byte pixelDepth);
@@ -94,6 +95,6 @@ private:
bool readColorMap(Common::SeekableReadStream &tga, byte imageType, byte pixelDepth);
};
-} // End of namespace Graphics
+} // End of namespace Image
-#endif // GRAPHICS_DECODERS_TGA_H
+#endif
diff --git a/po/be_BY.po b/po/be_BY.po
index 20b03b7725..e3a53db44b 100644
--- a/po/be_BY.po
+++ b/po/be_BY.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.6.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-04-28 18:53+0300\n"
"Last-Translator: Ivan Lukyanov <greencis@mail.ru>\n"
"Language-Team: Ivan Lukyanov <greencis@mail.ru>\n"
@@ -54,15 +54,15 @@ msgid "Go up"
msgstr "Уверх"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Адмена"
@@ -70,26 +70,26 @@ msgstr "Адмена"
msgid "Choose"
msgstr "Абраць"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Закрыць"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Клік мышшу"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Паказаць клавіятуру"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Перапрызначыць клавішы"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Пераключэнне на ўвесь экран"
@@ -101,21 +101,21 @@ msgstr "Абярыце дзеянне для прызначэння"
msgid "Map"
msgstr "Прызначыць"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -141,15 +141,15 @@ msgstr "Калі ласка, абярыце дзеянне"
msgid "Press the key to associate"
msgstr "Націсніце клавішу для прызначэння"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Гульня"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -157,179 +157,179 @@ msgstr ""
"Кароткі ідэнтыфікатар, выкарыстоўваны для імёнаў захаванняў гульняў і для "
"запуску з каманднага радка"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Назва:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Поўная назва гульні"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Назв:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Мова:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr ""
"Мова гульні. Змена гэтай налады не ператворыць ангельскую гульню ў рускую"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<па змаўчанні>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Платформа:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Платформа, для якой гульня была першапачаткова распрацавана"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Платформа:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Рухавічок"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Графіка"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "Грф"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Перакрыць глабальныя налады графікі"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Перакрыць глабальныя налады графікі"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Аўдыё"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Перакрыць глабальныя налады аўдыё"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Перакрыць глабальныя налады аўдыё"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Гучнасць"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Гучн"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Перакрыць глабальныя налады гучнасці"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Перакрыць глабальныя налады гучнасці"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Перакрыць глабальныя налады MIDI"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Перакрыць глабальныя налады MIDI"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Перакрыць глабальныя налады MT-32"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Перакрыць глабальныя налады MT-32"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Шляхі"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Шляхі"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Шлях да гульні:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Дзе гульня:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Дад. шлях:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Паказвае шлях да дадатковых файлаў, дадзеных для гульні"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Дад. шлях:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Захаванні гульняў:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Паказвае шлях да захаванняў гульні"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Шлях зах.:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -338,134 +338,135 @@ msgctxt "path"
msgid "None"
msgstr "Не зададзены"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Па змаўчанні"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Абярыце SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Абярыце дырэкторыю з файламі гульні"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Абярыце дадатковую дырэкторыю гульні"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Абярыце дырэкторыю для захаванняў"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Гэты ID гульні ўжо выкарыстоўваецца. Калі ласка, абярыце іншы."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~В~ыхад"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Завяршыць ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "Пра п~р~аграму..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Пра праграму ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~Н~алады..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Змяніць глабальныя налады ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "П~у~ск"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Запусціць абраную гульню"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~З~агрузіць..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Загрузіць захаванне для абранай гульні"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~Д~адаць гульню..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Утрымлівайце клавішу Shift для таго, каб дадаць некалькі гульняў"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "Н~а~лады гульні..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Змяніць налады гульні"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "В~ы~даліць гульню"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Выдаліць гульню са спісу. Не выдаляе гульню з жорсткага дыска"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~Д~ад. гульню..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "Н~а~л. гульні..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "В~ы~даліць гульню"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Пошук у спісе гульняў"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Пошук:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Загрузіць гульню:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Загрузіць"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -473,7 +474,8 @@ msgstr ""
"Вы сапраўды жадаеце запусціць дэтэктар усіх гульняў? Гэта патэнцыяльна можа "
"дадаць вялікую колькасць гульняў."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -481,7 +483,8 @@ msgstr ""
msgid "Yes"
msgstr "Так"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -489,39 +492,35 @@ msgstr "Так"
msgid "No"
msgstr "Не"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM не можа адкрыць азначаную дырэкторыю!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM не можа знайсці гульню ў азначанай дырэкторыі!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Абярыце гульню:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Вы сапраўды жадаеце выдаліць налады для гэтай гульні?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Вы жадаеце загрузіць або захаваць гульню?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Гэтая гульня не падтрымлівае загрузку захаванняў праз галоўнае меню."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM не змог знайсці рухавічок для запуску абранай гульні!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Шмат гульняў..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Шмат гульняў..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "...шукаю..."
@@ -620,8 +619,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Спецыяльныя рэжымы рэндэрынгу, падтрымоўваныя некаторымі гульнямі"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Поўнаэкранны рэжым"
@@ -754,14 +752,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Сапраўдны Roland MT-32 (без GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Рэжым Roland GS (забараніць раскладку GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Выключае супастаўленне General MIDI для гульняў з гукавой дарожкай для "
-"Roland MT-32"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -951,15 +950,15 @@ msgstr "Выгляд спісу"
msgid "Grid view"
msgstr "Выгляд сеткі"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Дата не запісана"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Час не запісаны"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Час гульні не запісаны"
@@ -971,43 +970,43 @@ msgstr "Выдаліць"
msgid "Do you really want to delete this savegame?"
msgstr "Вы сапраўды жадаеце выдаліць гэта захаванне?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Дата: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Час: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Час гульні: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Захаванне без імя"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Наступны"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Папярэдні"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Новае захаванне"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Стварыць новы запіс гульні"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Назва: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Увядзіце апісанне слота %d:"
@@ -1016,29 +1015,32 @@ msgstr "Увядзіце апісанне слота %d:"
msgid "Select a Theme"
msgstr "Абярыце тэму"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Без графікі"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Без графікі"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Стандартны растарызатар (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Стандартны растарызатар (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Стандартны"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Растарызатар са згладжваннем (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Растарызатар са згладжваннем (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1130,35 +1132,35 @@ msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
msgstr "Вы сапраўды жадаеце скінуць налады FluidSynth па змаўчанні?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Рухавічок не падтрымлівае ўзровень адладкі '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Меню"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Прапусціць"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Паўза"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Прапусціць радок"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Памылка запуску гульні:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Не магу знайсці рухавічок для запуску абранай гульні"
@@ -1226,17 +1228,17 @@ msgstr "Перапынена карыстачом"
msgid "Unknown error"
msgstr "Невядомая памылка"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Здаецца, што гульня '%s' яшчэ невядома."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Калі ласка, перадайце наступныя дадзеныя камандзе ScummVM разам з назвай"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "гульні, якую вы спрабуеце дадаць, і азначце яе версію, мову і г.д."
@@ -1274,21 +1276,21 @@ msgid "~R~eturn to Launcher"
msgstr "~Г~алоўнае меню"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Захаваць гульню:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Захаваць"
@@ -1326,23 +1328,23 @@ msgstr "~А~дмена"
msgid "~K~eys"
msgstr "~К~лавішы"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Не магу ініцыялізаваць фармат колеру."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Не атрымалася пераключыць відэарэжым: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Не атрымалася выкарыстаць карэкцыю суадносін бакоў."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Не магу ўжыць поўнаэкранны рэжым."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1356,7 +1358,7 @@ msgstr ""
"на жорсткі дыск. Падрабязнасці можна знайсці ў\n"
"файле README."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1371,7 +1373,7 @@ msgstr ""
"з'явіцца музыка. Падрабязнасці можна знайсці ў\n"
"файле README."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1381,7 +1383,7 @@ msgstr ""
"README за базавай інфармацыяй, а таксама інструкцыямі пра тое, як атрымаць "
"далейшую дапамогу."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1391,35 +1393,762 @@ msgstr ""
"ScummVM цалкам. Яна, хутчэй за ўсё, не будзе працаваць стабільна, і "
"захаванні гульняў могуць не працаваць у будучых версіях ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Усё адно запусціць"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Эмулятар MAME OPL"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Эмулятар DOSBox OPL"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Абраная гукавая прылада '%s' не была знойдзена (магчыма, яна выключана ці не "
+"падключана)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Спрабую выкарыстаць іншую даступную прыладу..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Абраная гукавая прылада '%s' не можа быць скарыстана. Глядзіце файл "
+"пратаколу для больш падрабязнай інфармацыі."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Пераважная гукавая прылада '%s' не была знойдзена (магчыма, яна выключана ці "
+"не падключана)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Пераважная гукавая прылада '%s' не можа быць скарыстана. Глядзіце файл "
+"пратаколу для больш падрабязнай інфармацыі."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Без музыкі"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Эмулятар гуку Amiga"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Эмулятар AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Эмулятар Apple II GS (адсутнічае)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Эмулятар гуку C64"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Наладжваю эмулятар MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Эмулятар MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Эмулятар PC спікера"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Эмулятар IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Табліца клавіш:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Дзейсная)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Актыўная)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Заблакавана)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Глабальная)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Гульні)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~З~акрыць"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Галоўнае меню ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Леварукі рэжым"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Кіраванне баямі ў Indy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Паказваць курсор мышы"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Прымацаваць да меж"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Зрушэнне дотыкаў па восі X"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Зрушэнне дотыкаў па восі Y"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Выкарыстоўваць кіраванне курсорам як на трэкпадзе лэптопаў"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Тап для левай пстрычкі, падвойны тап для правай пстрычкі"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Адчувальнасць"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Пачатковы маштаб верхняга экрана:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Маштаб галоўнага экрана:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Хардварнае маштабаванне (хутка, але нізкай якасці)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Праграмнае маштабаванне (добрая якасць, але марудней)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Без маштабавання (трэба будзе пракручваць налева і направа)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Яркасць:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Высокая якасць гуку (марудней) (рэбут)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Забараніць выключэнне"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Рэжым мышы націснуць-і-цягнуць уключаны."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Рэжым мышы націснуць-і-цягнуць выключаны."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Рэжым тачпада ўключаны."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Рэжым тачпада выключаны."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Рэжым пстрычкі"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Левая пстрычка"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Сярэдняя пстрычка"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Правая пстрычка"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Схаваць ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Схаваць астатнія"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Паказаць усё"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Акно"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Прыбраць у Dock"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Без павелічэння"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Без павелічэння"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Карэкцыя суадносін бакоў уключана"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Карэкцыя суадносін бакоў выключана"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Актыўны графічны фільтр:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Аконны рэжым"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Адкрыць"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Уверх"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Уніз"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Налева"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Направа"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Зона"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Мультыфункцыя"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Змяніць героя"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Прапусціць тэкст"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Хуткі рэжым"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Выхад"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Адладчык"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Глабальнае меню"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Віртуальная клавіятура"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Прызначэнне клавіш"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Вы сапраўды жадаеце выйсці?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Відэа"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Бягучы відэарэжым:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Двайны ўдар"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Гарызантальны underscan:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Вертыкальны underscan:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Увод"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Адчувальнасць GC пада:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Паскарэнне GC пада:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Стан:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Невядома"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Падключыць DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Адключыць DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Сервер:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Сеткавая тэчка:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Карыстач:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Пароль:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Ініцыялізацыя сеткі"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Падключыць SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Адключыць SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD падключаны паспяхова"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Памылка пры падключэнні DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD не падключаны"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Сетка працуе, тэчка падключана"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Сетка працуе"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", памылка пры падключэнні тэчкі"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", тэчка не падключана"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Сетка выключана"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Наладжваю сетку"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Час падключэння да сеткі мінуў"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Сетка не наладзілася (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Схаваць панэль інструментаў"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Паказаць клавіятуру"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Гук укл/выкл"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Правая пстрычка"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Паказаць/Прыбраць курсор"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Вольны агляд"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Павял. маштаб"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Паменш. маштаб"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Прызначыць клавішы"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Курсор уверх"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Курсор уніз"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Курсор налева"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Курсор направа"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Вы жадаеце загрузіць або захаваць гульню?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Вы ўпэўнены, што жадаеце выйсці? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Клавіятура"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Павярнуць"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Выкарыстоўваю драйвер SDL "
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Паказаць "
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Вы жадаеце зрабіць аўтаматычны пошук?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Прызначыць дзеянне па правай пстрычцы"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Вы павінны прызначыць клавішу на дзеянне 'Right Click' для гэтай гульні"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Прызначыць дзеянне 'схаваць панэль інструментаў'"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Вы павінны прызначыць клавішу на дзеянне 'Hide toolbar' для гэтай гульні"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Прызначыць дзеянне Павялічыць Маштаб (неабавязкова)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Прызначыць дзеянне Паменшыць Маштаб (неабавязкова)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Не забудзьцеся прызначыць клавішу для дзеяння 'Hide Toolbar', каб убачыць "
+"увесь інвентар у гульні"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Вы сапраўды жадаеце вярнуцца ў галоўнае меню?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Галоўнае меню"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Вы сапраўды жадаеце выйсці?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Рэжым 'дотыкаў' тачскрына - Левы клік"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Рэжым 'дотыкаў' тачскрына - Правы клік"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Рэжым 'дотыкаў' тачскрына - Пралёт (без кліку)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Максімальная гучнасць"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Павелічэнне гучнасці"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Мінімальная гучнасць"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Памяншэнне гучнасці"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Рэжым 'дотыкаў' тачскрына - Пралёт (клікі па DPad)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Правяраю абнаўленні..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Адна правая пстрычка"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Толькі перамясціць"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Клавіша ESC"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Меню гульні"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Паказаць клавіятуру"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Кіраванне мышшу"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Пстрычкі ўключаны"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Пстрычкі выключаны"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Выкарыстоўваць арыгінальныя экраны запісу/чытанні гульні"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Выкарыстоўваць арыгінальныя экраны запісу і захаванні гульні замест "
"зробленых у ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Узнавіць гульню:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Узнавіць"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Не атрымалася загрузіць гульню з файла:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Не атрымалася запісаць гульню ў файл:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Гульня паспяхова захавана ў файл:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Файл застаўкі '%s' не знойдзены!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1444,27 +2173,304 @@ msgstr "Выкарыстоўваць рэжым яркай палітры"
msgid "Display graphics using the game's bright palette"
msgstr "Малюе графіку з выкарыстаннем яркай палітры гульні"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Не атрымалася загрузіць захаваную гульню з файла."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Не атрымалася захаваць гульню ў файл."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Не атрымалася выдаліць файл."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Хуткі рэжым відэа"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Прайграваць відэа на павялічанай хуткасці"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Не атрымалася захаваць гульню"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Студыйная аўдыторыя"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Уключыць гукі аўдыторыі ў студыі"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Падтрымка пропускаў"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Уключае магчымасць прапускаць тэксты і застаўкі"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Рэжым гелія"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Уключыць рэжым гелія"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Плыўная прагортка"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Уключыць плыўную прагортку падчас хады"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Плывучыя курсоры"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Уключыць плывучыя курсоры"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Палоскі здароўя"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Уключыць адлюстраванне палосак здароўя"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Атака 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Атака 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Атака 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Ісці наперад"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Ісці назад"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Слізгаць налева"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Слізгаць направа"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Паварот налева"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Паварот направа"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Адпачыць"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Опцыі"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Абраць загавор"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Здаецца, вы спрабуеце выкарыстоўваць прыладу\n"
+"General MIDI, але гэтая гульня падтрымлівае толькі\n"
+"Roland MT32 MIDI. Мы паспрабуем падабраць General\n"
+"MIDI прылады, падобныя на Roland MT32, але\n"
+"можа так атрымацца, што некаторыя трэкі будуць\n"
+"сыграны няправільна."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Рэжым хуткага пераходу актываваны"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "Пераходы актываваны"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Выкінуць старонку"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "Показать карту"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Галоўнае меню"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "Эфекты вады ўключаны"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Не магу захаваць гульню ў пазіцыю %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Загружаю гульню..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Захоўваю гульню..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM знайшоў у вас старыя захаванні гульні Nippon Safes, якія неабходна "
+"пераназваць. Старыя назвы больш не падтрымліваюцца, і таму вы не зможаце "
+"загрузіць захаванні, калі не пераназавеце іх.\n"
+"\n"
+"Націсніце ОК, каб пераназваць іх зараз, у адваротным выпадку гэта ж "
+"паведамленне з'явіцца пры наступным запуску гульні.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM паспяхова пераўтварыў усе вашы захаванні гульняў."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM напісаў некалькі папярэджанняў у акно кансолі і не змог пераўтварыць "
+"усе файлы.\n"
+"\n"
+"Калі ласка, паведаміце пра гэта камандзе ScummVM."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Няправільнае імя файла захавання"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Уверх/Маштаб+/Наперад/Адчыніць дзверы"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Уніз/Паменш. маштаб"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Паказаць/схаваць інвентар"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Паказаць/схаваць біячып"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Дзеянне/Абраць"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Пераключыць"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Паказаць/схаваць інфармацыю"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Паказаць/схаваць меню паўзы"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA без растру"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Уключае рэжым без растравання ў EGA гульнях"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Аддаваць перавагу лічбавым гукавым эфектам"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Аддаваць перавагу лічбавым гукавым эфектам замест сінтэзаваных"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Выкарыстоўваць IMF/Yamaha FB-01 для вываду MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1472,32 +2478,32 @@ msgstr ""
"Выкарыстоўваць гукавую карту IBM Music Feature ці модуль сінтэзу Yamaha "
"FB-01 FM для MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Выкарыстоўваць CD аўдыё"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr ""
"Выкарыстоўваць гукавыя дарожкі з CD замест музыкі з файлаў гульні (калі "
"даступна)"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Выкарыстоўваць курсоры Windows"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Выкарыстоўваць курсоры Windows (меншыя па памеры і аднакаляровыя) замест "
"курсораў DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Выкарыстоўваць срэбныя курсоры"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1538,15 +2544,6 @@ msgstr "Вы ўпэўнены, што жадаеце выйсці? (Y/N)"
msgid "Play"
msgstr "Гуляць"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Выхад"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Устаўце дыск з захаваннямі"
@@ -1595,11 +2592,6 @@ msgstr "~П~апяр"
msgid "~N~ext"
msgstr "~Н~аст"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~З~акрыць"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Толькі агучка"
@@ -1625,10 +2617,6 @@ msgstr "Абярыце ўзровень складанасці."
msgid "Refer to your Loom(TM) manual for help."
msgstr "За дапамогай звярніцеся да інструкцыі Loom(TM)."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Стандартны"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Практыкант"
@@ -2150,7 +3138,7 @@ msgstr "Ляцець направа"
msgid "Fly to lower right"
msgstr "Ляцець направа-ўніз"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2159,40 +3147,7 @@ msgstr ""
"Рэжым \"роднага\" MIDI патрабуе абнаўленне Roland Upgrade ад\n"
"LucasArts, але не хапае %s. Пераключаюся на AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Не атрымалася запісаць гульню ў файл:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Не атрымалася загрузіць гульню з файла:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Гульня паспяхова захавана ў файл:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2202,191 +3157,6 @@ msgstr ""
"ўмее. Каб згуляць, націсніце 'Новая гульня' у стартавым меню ScummVM, а "
"затым абярыце дырэкторыю Maniac у дырэкторыі з гульнёй Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Рэжым хуткага пераходу актываваны"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "Пераходы актываваны"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Выкінуць старонку"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "Показать карту"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Галоўнае меню"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "Эфекты вады ўключаны"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Файл застаўкі '%s' не знойдзены!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Не атрымалася загрузіць захаваную гульню з файла."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Не атрымалася захаваць гульню ў файл."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Не атрымалася выдаліць файл."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Хуткі рэжым відэа"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Прайграваць відэа на павялічанай хуткасці"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Не атрымалася захаваць гульню"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Студыйная аўдыторыя"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Уключыць гукі аўдыторыі ў студыі"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Падтрымка пропускаў"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Уключае магчымасць прапускаць тэксты і застаўкі"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Рэжым гелія"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Уключыць рэжым гелія"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Плыўная прагортка"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Уключыць плыўную прагортку падчас хады"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Плывучыя курсоры"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Уключыць плывучыя курсоры"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Палоскі здароўя"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Уключыць адлюстраванне палосак здароўя"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Атака 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Атака 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Атака 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Ісці наперад"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Ісці назад"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Слізгаць налева"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Слізгаць направа"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Паварот налева"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Паварот направа"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Адпачыць"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Опцыі"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Абраць загавор"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Здаецца, вы спрабуеце выкарыстоўваць прыладу\n"
-"General MIDI, але гэтая гульня падтрымлівае толькі\n"
-"Roland MT32 MIDI. Мы паспрабуем падабраць General\n"
-"MIDI прылады, падобныя на Roland MT32, але\n"
-"можа так атрымацца, што некаторыя трэкі будуць\n"
-"сыграны няправільна."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Альтэрнатыўны ўступ"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Выкарыстоўваць альтэрнатыўны ўступ (толькі для CD версіі гульні)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2411,21 +3181,24 @@ msgstr "Уступ з дыскет"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Выкарыстоўваць уступ з гнуткіх дыскаў (толькі для CD версіі гульні)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "Застаўка PSX '%s' не можа быць прайграна ў рэжыме з палітрай"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"Знойдзены застаўкі ў фармаце DXA, але ScummVM быў сабраны без падтрымкі zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Застаўкі ў фармаце MPEG2 больш не падтрымліваюцца"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"Знойдзены застаўкі ў фармаце PSX, але ScummVM быў сабраны без падтрымкі RGB "
+"колераў"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Застаўка '%s' не знойдзена"
@@ -2468,13 +3241,20 @@ msgstr "Зрабіць новае"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Гэта завяршэнне дэма Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"Знойдзены застаўкі ў фармаце PSX, але ScummVM быў сабраны без падтрымкі RGB "
"колераў"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"Знойдзены застаўкі ў фармаце DXA, але ScummVM быў сабраны без падтрымкі zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Паказваць назвы аб'ектаў"
@@ -2497,789 +3277,51 @@ msgstr ""
"Файл teenagent.dat зжаты, але zlib не ўключана ў гэту праграму. Калі ласка, "
"распакуйце яго"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Не магу захаваць гульню ў пазіцыю %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Загружаю гульню..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Захоўваю гульню..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM знайшоў у вас старыя захаванні гульні Nippon Safes, якія неабходна "
-"пераназваць. Старыя назвы больш не падтрымліваюцца, і таму вы не зможаце "
-"загрузіць захаванні, калі не пераназавеце іх.\n"
-"\n"
-"Націсніце ОК, каб пераназваць іх зараз, у адваротным выпадку гэта ж "
-"паведамленне з'явіцца пры наступным запуску гульні.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM паспяхова пераўтварыў усе вашы захаванні гульняў."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM напісаў некалькі папярэджанняў у акно кансолі і не змог пераўтварыць "
-"усе файлы.\n"
-"\n"
-"Калі ласка, паведаміце пра гэта камандзе ScummVM."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Няправільнае імя файла захавання"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Уверх/Маштаб+/Наперад/Адчыніць дзверы"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Уніз/Паменш. маштаб"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Паказаць/схаваць інвентар"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Паказаць/схаваць біячып"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Дзеянне/Абраць"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Пераключыць"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Паказаць/схаваць інфармацыю"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Паказаць/схаваць меню паўзы"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Эмулятар MAME OPL"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Эмулятар DOSBox OPL"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Абраная гукавая прылада '%s' не была знойдзена (магчыма, яна выключана ці не "
-"падключана)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Спрабую выкарыстаць іншую даступную прыладу..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Абраная гукавая прылада '%s' не можа быць скарыстана. Глядзіце файл "
-"пратаколу для больш падрабязнай інфармацыі."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Пераважная гукавая прылада '%s' не была знойдзена (магчыма, яна выключана ці "
-"не падключана)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Пераважная гукавая прылада '%s' не можа быць скарыстана. Глядзіце файл "
-"пратаколу для больш падрабязнай інфармацыі."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Без музыкі"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Эмулятар гуку Amiga"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Эмулятар AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Эмулятар Apple II GS (адсутнічае)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Эмулятар гуку C64"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Наладжваю эмулятар MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Эмулятар MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Эмулятар PC спікера"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Эмулятар IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Табліца клавіш:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Дзейсная)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Актыўная)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Заблакавана)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Глабальная)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Гульні)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Галоўнае меню ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Леварукі рэжым"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Кіраванне баямі ў Indy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Паказваць курсор мышы"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Прымацаваць да меж"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Зрушэнне дотыкаў па восі X"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Зрушэнне дотыкаў па восі Y"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Выкарыстоўваць кіраванне курсорам як на трэкпадзе лэптопаў"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Тап для левай пстрычкі, падвойны тап для правай пстрычкі"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Адчувальнасць"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Пачатковы маштаб верхняга экрана:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Маштаб галоўнага экрана:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Хардварнае маштабаванне (хутка, але нізкай якасці)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Праграмнае маштабаванне (добрая якасць, але марудней)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Без маштабавання (трэба будзе пракручваць налева і направа)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Яркасць:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Высокая якасць гуку (марудней) (рэбут)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Забараніць выключэнне"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Рэжым мышы націснуць-і-цягнуць уключаны."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Рэжым мышы націснуць-і-цягнуць выключаны."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Рэжым тачпада ўключаны."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Рэжым тачпада выключаны."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Рэжым пстрычкі"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Левая пстрычка"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Сярэдняя пстрычка"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Правая пстрычка"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Схаваць ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Схаваць астатнія"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Паказаць усё"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Акно"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Прыбраць у Dock"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Без павелічэння"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Без павелічэння"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Карэкцыя суадносін бакоў уключана"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Карэкцыя суадносін бакоў выключана"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Актыўны графічны фільтр:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Аконны рэжым"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL без павелічэння"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL з захаваннем"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL першапачатковы"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Бягучы відэарэжым"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Бягучы маштаб"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Актыўны рэжым фільтра: Лінейны"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Актыўны рэжым фільтра: Найблізкі"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Уверх"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Уніз"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Налева"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Направа"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Зона"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Мультыфункцыя"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Змяніць героя"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Прапусціць тэкст"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Хуткі рэжым"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Адладчык"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Глабальнае меню"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Віртуальная клавіятура"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Прызначэнне клавіш"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Вы сапраўды жадаеце выйсці?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Відэа"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Бягучы відэарэжым:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Двайны ўдар"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Гарызантальны underscan:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Вертыкальны underscan:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Увод"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Адчувальнасць GC пада:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Паскарэнне GC пада:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Стан:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Невядома"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Падключыць DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Адключыць DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Сервер:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Сеткавая тэчка:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Карыстач:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Пароль:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Ініцыялізацыя сеткі"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Падключыць SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Адключыць SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD падключаны паспяхова"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Памылка пры падключэнні DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD не падключаны"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Сетка працуе, тэчка падключана"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Сетка працуе"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", памылка пры падключэнні тэчкі"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", тэчка не падключана"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Сетка выключана"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Наладжваю сетку"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Час падключэння да сеткі мінуў"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Сетка не наладзілася (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Схаваць панэль інструментаў"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Паказаць клавіятуру"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Гук укл/выкл"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Правая пстрычка"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Паказаць/Прыбраць курсор"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Вольны агляд"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Павял. маштаб"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Паменш. маштаб"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Прызначыць клавішы"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Курсор уверх"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Курсор уніз"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Курсор налева"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Курсор направа"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Вы жадаеце загрузіць або захаваць гульню?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Вы ўпэўнены, што жадаеце выйсці? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Клавіятура"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Павярнуць"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Выкарыстоўваю драйвер SDL "
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Паказаць "
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Вы жадаеце зрабіць аўтаматычны пошук?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Прызначыць дзеянне па правай пстрычцы"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Вы павінны прызначыць клавішу на дзеянне 'Right Click' для гэтай гульні"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Прызначыць дзеянне 'схаваць панэль інструментаў'"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Вы павінны прызначыць клавішу на дзеянне 'Hide toolbar' для гэтай гульні"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Прызначыць дзеянне Павялічыць Маштаб (неабавязкова)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Прызначыць дзеянне Паменшыць Маштаб (неабавязкова)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Не забудзьцеся прызначыць клавішу для дзеяння 'Hide Toolbar', каб убачыць "
-"увесь інвентар у гульні"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Вы сапраўды жадаеце вярнуцца ў галоўнае меню?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Галоўнае меню"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Шмат гульняў..."
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Вы сапраўды жадаеце выйсці?"
+#~ msgid "Mass Add..."
+#~ msgstr "Шмат гульняў..."
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Рэжым 'дотыкаў' тачскрына - Левы клік"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Выключае супастаўленне General MIDI для гульняў з гукавой дарожкай для "
+#~ "Roland MT-32"
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Рэжым 'дотыкаў' тачскрына - Правы клік"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Стандартны растарызатар (16bpp)"
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Рэжым 'дотыкаў' тачскрына - Пралёт (без кліку)"
+#~ msgid "Alternative intro"
+#~ msgstr "Альтэрнатыўны ўступ"
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Максімальная гучнасць"
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Выкарыстоўваць альтэрнатыўны ўступ (толькі для CD версіі гульні)"
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Павелічэнне гучнасці"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Застаўкі ў фармаце MPEG2 больш не падтрымліваюцца"
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Мінімальная гучнасць"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL без павелічэння"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Памяншэнне гучнасці"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL з захаваннем"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Рэжым 'дотыкаў' тачскрына - Пралёт (клікі па DPad)"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL першапачатковы"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Правяраю абнаўленні..."
+#~ msgid "Current display mode"
+#~ msgstr "Бягучы відэарэжым"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Адна правая пстрычка"
+#~ msgid "Current scale"
+#~ msgstr "Бягучы маштаб"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Толькі перамясціць"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Актыўны рэжым фільтра: Лінейны"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Клавіша ESC"
-
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Меню гульні"
-
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Паказаць клавіятуру"
-
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Кіраванне мышшу"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Пстрычкі ўключаны"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Пстрычкі выключаны"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Актыўны рэжым фільтра: Найблізкі"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Уключыць рэжым Roland GS"
diff --git a/po/ca_ES.po b/po/ca_ES.po
index b8238939a0..2c627b3b31 100644
--- a/po/ca_ES.po
+++ b/po/ca_ES.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.6.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-05-05 14:16+0100\n"
"Last-Translator: Jordi Vilalta Prat <jvprat@jvprat.com>\n"
"Language-Team: Catalan <scummvm-devel@lists.sf.net>\n"
@@ -51,15 +51,15 @@ msgid "Go up"
msgstr "Amunt"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:49
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "CancelЗla"
@@ -67,26 +67,26 @@ msgstr "CancelЗla"
msgid "Choose"
msgstr "Escull"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Tanca"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Clic del ratolэ"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Mostra el teclat"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Assigna les tecles"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Commuta la pantalla completa"
@@ -98,21 +98,21 @@ msgstr "SelЗleccioneu una acciѓ a assignar"
msgid "Map"
msgstr "Assigna"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:49 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "D'acord"
@@ -138,15 +138,15 @@ msgstr "Seleccioneu una acciѓ"
msgid "Press the key to associate"
msgstr "Premeu la tecla a associar"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Joc"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "Identificador:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -154,29 +154,29 @@ msgstr ""
"Identificador de joc curt utilitzat per referir-se a les partides i per "
"executar el joc des de la lэnia de comandes"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nom:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Tэtol complet del joc"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nom:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Idioma:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -184,150 +184,150 @@ msgstr ""
"Idioma del joc. Aixђ no convertirр la vostra versiѓ Espanyola del joc a "
"Anglшs"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<per defecte>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plataforma:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Plataforma per la que el joc es va dissenyar originalment"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Platafor.:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Motor"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grрfics"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Fer canvis sobre les opcions globals de grрfics"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Canviar les opcions de grрfics"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Рudio"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Fer canvis sobre les opcions globals d'рudio"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Canviar les opcions d'рudio"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volum"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volum"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Fer canvis sobre les opcions globals de volum"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Canviar les opcions de volum"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Fer canvis sobre les opcions globals de MIDI"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Canviar les opcions de MIDI"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Fer canvis sobre les opcions globals de MT-32"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Canviar les opcions de MT-32"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Camins"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Camins"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Camэ del joc:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Camэ joc:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Camэ extra:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Especifica el camэ de dades addicionals utilitzades pel joc"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Camэ extra:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Camэ de partides:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Especifica on es desaran les partides"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Partides:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -336,137 +336,138 @@ msgctxt "path"
msgid "None"
msgstr "Cap"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Per defecte"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Seleccioneu el fitxer SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Seleccioneu el directori amb les dades del joc"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Seleccioneu el directori addicional del joc"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Seleccioneu el directori de les partides desades"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr ""
"Aquest identificador de joc ja estр en њs. Si us plau, trieu-ne un altre."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~T~anca"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Surt de ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "~Q~uant a..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Quant a ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~pcions..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Canvia les opcions globals de ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~I~nicia"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Iniciant el joc seleccionat"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~C~arrega..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Carrega una partida pel joc seleccionat"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~A~fegeix Joc..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Mantingueu premut Shift per a l'Addiciѓ Massiva"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~E~dita Joc..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Canvia les opcions del joc"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~S~uprimeix Joc"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr ""
"Elimina un joc de la llista. Els fitxers de dades del joc es mantenen "
"intactes"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~A~fegeix Joc..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~E~dita Joc..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~S~uprimeix"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Cerca a la llista de jocs"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Cerca:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Carrega partida:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Carrega"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -474,7 +475,8 @@ msgstr ""
"Esteu segur que voleu executar el detector massiu de jocs? Aixђ pot afegir "
"una gran quantitat de jocs."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -482,7 +484,8 @@ msgstr ""
msgid "Yes"
msgstr "Sэ"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -490,40 +493,36 @@ msgstr "Sэ"
msgid "No"
msgstr "No"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM no ha pogut obrir el directori especificat!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM no ha pogut trobar cap joc al directori especificat!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Seleccioneu el joc:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Realment voleu suprimir la configuraciѓ d'aquest joc?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Voleu carregar o desar el joc?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Aquest joc no suporta la cрrrega de partides des del llanчador."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM no ha pogut trobar cap motor capaч d'executar el joc seleccionat!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Afegeix Jocs"
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Addiciѓ Massiva..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... progrщs ..."
@@ -623,8 +622,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Modes de tramat especials suportats per alguns jocs"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Mode pantalla completa"
@@ -756,14 +754,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Roland MT-32 real (sense emulaciѓ GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Mode Roland GS (desactiva el mapeig GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Desactiva la conversiѓ General MIDI pels jocs que tenen banda sonora per a "
-"Roland MT-32"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -955,15 +954,15 @@ msgstr "Vista de llistat"
msgid "Grid view"
msgstr "Vista de quadrэcula"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "No hi ha data desada"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "No hi ha hora desada"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "No hi ha temps de joc desat"
@@ -975,43 +974,43 @@ msgstr "Suprimeix"
msgid "Do you really want to delete this savegame?"
msgstr "Realment voleu suprimir aquesta partida?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Data: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Hora: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Temps de joc: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Partida sense tэtol"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Segќent"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Anterior"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Nova partida desada"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Crea una nova partida desada"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nom: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Entreu la descripciѓ per l'espai %d:"
@@ -1020,29 +1019,32 @@ msgstr "Entreu la descripciѓ per l'espai %d:"
msgid "Select a Theme"
msgstr "Seleccioneu un Tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "GFX desactivats"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "GFX desactivats"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Pintat estрndard (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Estрndard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Estрndard"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Pintat amb antialias (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Amb antialias (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1136,35 +1138,35 @@ msgstr ""
"Realment voleu retorna tots els ajustos de FluidSynth als seus valors per "
"defecte?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "El motor no suporta el nivell de depuraciѓ '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menњ"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Salta"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pausa"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Salta la lэnia"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Error al executar el joc:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "No s'ha pogut trobar cap motor capaч d'executar el joc seleccionat"
@@ -1232,17 +1234,17 @@ msgstr "CancelЗlat per l'usuari"
msgid "Unknown error"
msgstr "Error desconegut"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "El joc a '%s' sembla ser desconegut."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Informeu de la segќent informaciѓ a l'equip de ScummVM juntament amb el"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "nom del joc que heu provat d'afegir i la seva versiѓ/llengua/etc.:"
@@ -1280,21 +1282,21 @@ msgid "~R~eturn to Launcher"
msgstr "~R~etorna al Llanчador"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:336 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Desa la partida:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:336 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Desa"
@@ -1330,23 +1332,23 @@ msgstr "~C~ancelЗla"
msgid "~K~eys"
msgstr "~T~ecles"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "No s'ha pogut iniciar el format de color."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "No s'ha pogut canviar al mode de vэdeo: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "No s'ha pogut aplicar la configuraciѓ de la relaciѓ d'aspecte."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "No s'ha pogut aplicar l'ajust de pantalla completa."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1360,7 +1362,7 @@ msgstr ""
"els fitxers de dades al disc dur.\n"
"Consulteu el fitxer README per a mщs detalls."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1374,7 +1376,7 @@ msgstr ""
"tal de poder sentir la mњsica del joc.\n"
"Consulteu el fitxer README per a mщs detalls."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1383,7 +1385,7 @@ msgstr ""
"No s'ha pogut carregar la partida (%s)! Consulteu el fitxer README per a la "
"informaciѓ bрsica i les instruccions sobre com obtenir mщs assistшncia."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1393,33 +1395,760 @@ msgstr ""
"pel ScummVM. Com a tal, probablement serр inestable, i pot ser que les "
"partides que deseu no funcionin en versions futures de ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Inicia de totes maneres"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Emulador OPL de MAME"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Emulador OPL de DOSBox"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"No s'ha pogut trobar el dispositiu d'рudio seleccionat '%s' (p.e. pot estar "
+"desactivat o desconnectat)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Provant de recѓrrer al segќent dispositiu disponible..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"No es pot utilitzar el dispositiu d'рudio seleccionat '%s'. Vegeu el fitxer "
+"de registre per a mщs informaciѓ."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"No s'ha pogut trobar el dispositiu d'рudio preferit '%s' (p.e. pot estar "
+"desactivat o desconnectat)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"No es pot utilitzar el dispositiu d'рudio preferit '%s'. Vegeu el fitxer de "
+"registre per a mщs informaciѓ."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Sense mњsica"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Emulador d'рudio Amiga"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Emulador d'AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Emulador d'Apple II GS (NO IMPLEMENTAT)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Emulador d'рudio C64"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Iniciant l'Emulador de MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Emulador de MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Emulador Altaveu PC"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Emulador d'IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Assignacions de teclat:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Efectiu)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Actiu)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Bloquejat)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Joc)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "MIDI de Windows"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~T~anca"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Menњ Principal de ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Mode ~e~squerrр"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Controls de lluita de l'~I~ndy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Mostra el cursor del ratolэ"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Enganxa a les vores"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Desplaчament X del toc"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Desplaчament Y del toc"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Utilitza el control del cursor a l'estil del trackpad dels portрtils"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Toc per a clic esquerre, doble toc per a clic dret"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Sensibilitat"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Escalat inicial de la pantalla superior:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Escalat de la pantalla principal:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Escalat per hardware (rрpid, perђ de baixa qualitat)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Escalat per software (bona qualitat, perђ mщs lent)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Sense escalar (haureu de desplaчar-vos a esquerra i dreta)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Lluminositat:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Alta qualitat d'рudio (mщs lent) (reiniciar)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Desactiva l'apagat automрtic"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "S'ha activat el mode de clic-i-arrossega."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "S'ha desactivat el mode clic-i-arrossega."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Mode Touchpad activat."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Mode Touchpad desactivat."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Mode clic"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Clic esquerre"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Clic central"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Clic dret"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Amaga ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Oculta els altres"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Mostra-ho tot"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Finestra"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimitza"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (sense escalar)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal (no escalat)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "S'ha activat la correcciѓ de la relaciѓ d'aspecte"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "S'ha desactivat la correcciѓ de la relaciѓ d'aspecte"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Filtre de grрfics actiu:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Mode de finestra"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Obre"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Amunt"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Avall"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Esquerra"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Dreta"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zona"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Funciѓ Mњltiple"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Commuta el personatge"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Salta el text"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Mode rрpid"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Surt"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Depurador"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Menњ global"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Teclat virtual"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Assignador de tecles"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Vols sortir?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Vэdeo"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Mode de vэdeo actual:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Double-strike"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Underscan horitzontal:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Underscan vertical:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Entrada"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Sensibilitat del Pad GC:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Acceleraciѓ del Pad GC:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Estat:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Desconegut"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Munta el DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Desmunta el DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Servidor:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Comparticiѓ:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Nom d'usuari:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Contrasenya:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Inicia la xarxa"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Munta SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Desmunta SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "El DVD s'ha muntat satisfactђriament"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Error al muntar el DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "El DVD no estр muntat"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Xarxa activa, comparticiѓ muntada"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Xarxa activa"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", error al muntar la comparticiѓ"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", comparticiѓ no muntada"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Xarxa inactiva"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Iniciant la xarxa"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "S'ha excedit el temps d'iniciaciѓ de la xarxa"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Xarxa no iniciada (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Oculta la barra d'eines"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Mostra el teclat"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "So engegat/parat"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Clic dret"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Mostra/Oculta el cursor"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Vista lliure"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Amplia"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Redueix"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Mapeja tecles"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Cursor Amunt"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Cursor Avall"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Cursor Esquerra"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Cursor Dreta"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Voleu carregar o desar el joc?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Esteu segur de voler sortir? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Teclat"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Rotar"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Utilitzant el controlador SDL "
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Pantalla "
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Voleu fer una cerca automрtica?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Assigna l'acciѓ del clic dret"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr "Heu d'assignar una tecla a l'acciѓ 'Clic dret' per jugar a aquest joc"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Assigna l'acciѓ d'ocultar la barra d'eines"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Heu d'assignar una tecla a l'acciѓ 'Ocultar la barra d'eines' per jugar a "
+"aquest joc"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Assigna l'acciѓ d'Ampliar el Zoom (opcional)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Assigna l'acciѓ de Reduir el Zoom (opcional)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"No us oblideu d'assignar una tecla a l'acciѓ 'Ocultar la barra d'eines' per "
+"veure l'inventari complet"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Realment voleu tornar al Llanчador?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Llanчador"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Estрs segur de voler sortir?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "'Mode Toc' de pantalla tрctil - Clic esquerre"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "'Mode Toc' de pantalla tрctil - Clic dret"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "'Mode Toc' de pantalla tрctil - Flotant (sense clic)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Volum mрxim"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Pujant el volum"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Volum mэnim"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Baixant el volum"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "'Mode Toc' de pantalla tрctil - Flotant (Clics de DPad)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Comprova les actualitzacions..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Un clic dret"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Nomщs mou"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Tecla d'escapada"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Menњ del joc"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Mostra el teclat numшric"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Controla el ratolэ"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Clicat activat"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Clicat desactivat"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Utilitza les pantalles originals de desat/cрrrega"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Utilitza les pantalles originals de desat/cрrrega, en lloc de les de ScummVM"
#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Recupera la partida:"
#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Restaura"
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"No s'ha pogut carregar l'estat del joc del fitxer:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"No s'ha pogut desar l'estat del joc al fitxer:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"S'ha desat l'estat del joc en el fitxer:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "No s'ha trobat el fitxer d'escena '%s'!"
+
#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
@@ -1446,27 +2175,304 @@ msgstr "Utilitza el mode de paleta brillant"
msgid "Display graphics using the game's bright palette"
msgstr "Mostra els grрfics utilitzant la paleta brillant del joc"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "No s'ha pogut carregar l'estat del joc del fitxer."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "No s'ha pogut desar l'estat del joc al fitxer."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "No s'ha pogut esborrar el fitxer."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Velocitat rрpida de les pelЗlэcules"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Reprodueix les pelЗlэcules a major velocitat"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "No s'ha pogut desar l'estat del joc"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Pњblic"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Activa el pњblic"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Suport per saltar text i escenes"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Permet que se saltin textos i escenes"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Mode heli"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Activa el mode heli"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Desplaчament suau"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Activa el desplaчament suau al caminar"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Cursor flotant"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Activa els cursors flotants"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Barra grрfica de PI"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Activa la barra grрfica dels punts d'impacte"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Atac 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Atac 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Atac 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Mou endavant"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Mou enrere"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Mou a l'esquerra"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Mou a la dreta"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Gira a l'esquerra"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Gira a la dreta"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Descansa"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Opcions"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Escull l'encanteri"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Sembla que esteu utilitzant un dispositiu General\n"
+"MIDI, perђ el joc nomщs suporta MIDI de Roland\n"
+"MT32. Intentarem convertir els instruments de\n"
+"Roland MT32 als de General MIDI. Щs possible\n"
+"que algunes pistes no es reprodueixin correctament."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Mode ~Z~ip activat"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~T~ransicions activades"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~D~escarta la pрgina"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~M~ostra el mapa"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "~M~enњ Principal"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~E~fecte de l'aigua activat"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"No s'ha pogut desar a l'espai %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Carregant la partida..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Desant la partida..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"El ScummVM ha trobat que teniu partides desades antigues de Nippon Safes que "
+"s'haurien de reanomenar.\n"
+"El noms antics de les partides desades no estan suportats, per la qual cosa "
+"no podreu carregar aquestes partides si no les convertiu.\n"
+"\n"
+"Premeu D'Acord per convertir-les ara, en cas contrari se us tornarр a "
+"demanar la propera vegada.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM ha convertit satisfactђriament totes les partides desades."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM ha mostrat avisos a la finestra de consola i no es pot garantir que "
+"tots els fitxers s'hagin convertit.\n"
+"\n"
+"Informeu-ne a l'equip."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Nom de partida desada incorrecte"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Amunt/Amplia el zoom/Mou endavant/Obre les portes"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Avall/Allunya el zoom"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Mostra/Oculta la safata d'inventari"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Mostra/Oculta la safata del Biochip"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Acciѓ/Selecciѓ"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Conmuta la visualitzaciѓ de dades central"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Mostra/Oculta la pantalla d'informaciѓ"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Mostra/Oculta el menњ de pausa"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "Elimina el tramat d'EGA"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Activa l'eliminaciѓ del tramat en els jocs EGA"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Prefereix efectes de so digitals"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Prefereix els efectes de so digitals en lloc dels sintetitzats"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Utilitza IMF/Yamaha FB-01 per la sortida MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1474,31 +2480,31 @@ msgstr ""
"Utilitza una tarja IBM Music Feature o un mђdul sintetitzador Yamaha FB-01 "
"FM per la sortida MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Utilitza l'рudio del CD"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr ""
"Utilitza l'рudio del CD en lloc de l'рudio intern del joc, si estр disponible"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Utilitza els cursors de Windows"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Utilitza els cursors de Windows (mщs petits i en blanc i negre) en lloc dels "
"de DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Utilitza cursors platejats"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1540,15 +2546,6 @@ msgstr "Esteu segur de voler sortir? (S/N)S"
msgid "Play"
msgstr "Jugar"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Surt"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Inseriu el disc de partides desades"
@@ -1597,11 +2594,6 @@ msgstr "~A~nterior"
msgid "~N~ext"
msgstr "~S~egќent"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~T~anca"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Nomщs veus"
@@ -1627,10 +2619,6 @@ msgstr "Seleccioneu el nivell de competшncia."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Consulteu el manual de Loom(TM) per ajuda."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Estрndard"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Prрctica"
@@ -2152,7 +3140,7 @@ msgstr "Vola a la dreta"
msgid "Fly to lower right"
msgstr "Vola avall i a la dreta"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2161,40 +3149,7 @@ msgstr ""
"El suport de MIDI natiu requereix l'actualitzaciѓ Roland de LucasArts,\n"
"perђ no s'ha trobat %s. S'utilitzarр AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"No s'ha pogut desar l'estat del joc al fitxer:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"No s'ha pogut carregar l'estat del joc del fitxer:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"S'ha desat l'estat del joc en el fitxer:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2204,190 +3159,6 @@ msgstr ""
"fa encara. Per jugar-hi, aneu a 'Afegir joc' al menњ principal de ScummVM i "
"seleccioneu el directori 'Maniac' de dins del directori del joc Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Mode ~Z~ip activat"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~T~ransicions activades"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~D~escarta la pрgina"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~M~ostra el mapa"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "~M~enњ Principal"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~E~fecte de l'aigua activat"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "No s'ha trobat el fitxer d'escena '%s'!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "No s'ha pogut carregar l'estat del joc del fitxer."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "No s'ha pogut desar l'estat del joc al fitxer."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "No s'ha pogut esborrar el fitxer."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Velocitat rрpida de les pelЗlэcules"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Reprodueix les pelЗlэcules a major velocitat"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "No s'ha pogut desar l'estat del joc"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Pњblic"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Activa el pњblic"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Suport per saltar text i escenes"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Permet que se saltin textos i escenes"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Mode heli"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Activa el mode heli"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Desplaчament suau"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Activa el desplaчament suau al caminar"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Cursor flotant"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Activa els cursors flotants"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Barra grрfica de PI"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Activa la barra grрfica dels punts d'impacte"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Atac 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Atac 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Atac 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Mou endavant"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Mou enrere"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Mou a l'esquerra"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Mou a la dreta"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Gira a l'esquerra"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Gira a la dreta"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Descansa"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Opcions"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Escull l'encanteri"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Sembla que esteu utilitzant un dispositiu General\n"
-"MIDI, perђ el joc nomщs suporta MIDI de Roland\n"
-"MT32. Intentarem convertir els instruments de\n"
-"Roland MT32 als de General MIDI. Щs possible\n"
-"que algunes pistes no es reprodueixin correctament."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Introducciѓ alternativa"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Utilitza una introducciѓ del joc alternativa (nomщs per la versiѓ CD)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2413,22 +3184,25 @@ msgid "Use the floppy version's intro (CD version only)"
msgstr ""
"Utilitza la introducciѓ de la versiѓ de disquets (nomщs per a la versiѓ CD)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "L'escena '%s' de PSX no es pot reproduir en mode paleta"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"S'han trobat escenes en DXA, perђ s'ha compilat el ScummVM sense suport de "
"zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Les escenes MPEG2 ja no estan suportades"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"S'han trobat escenes de PSX, perђ s'ha compilat el ScummVM sense suport de "
+"color RGB"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "No s'ha trobat l'escena '%s'"
@@ -2472,13 +3246,21 @@ msgstr "Mantingues el nou"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Aquest щs el final de la Demo del Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"S'han trobat escenes de PSX, perђ s'ha compilat el ScummVM sense suport de "
"color RGB"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"S'han trobat escenes en DXA, perђ s'ha compilat el ScummVM sense suport de "
+"zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Mostra les etiquetes dels objectes"
@@ -2500,790 +3282,52 @@ msgstr ""
"El fitxer teenagent.dat estр comprimit perђ aquest executable no contщ zlib. "
"Descomprimiu-lo, si us plau."
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"No s'ha pogut desar a l'espai %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Carregant la partida..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Desant la partida..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"El ScummVM ha trobat que teniu partides desades antigues de Nippon Safes que "
-"s'haurien de reanomenar.\n"
-"El noms antics de les partides desades no estan suportats, per la qual cosa "
-"no podreu carregar aquestes partides si no les convertiu.\n"
-"\n"
-"Premeu D'Acord per convertir-les ara, en cas contrari se us tornarр a "
-"demanar la propera vegada.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM ha convertit satisfactђriament totes les partides desades."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM ha mostrat avisos a la finestra de consola i no es pot garantir que "
-"tots els fitxers s'hagin convertit.\n"
-"\n"
-"Informeu-ne a l'equip."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Nom de partida desada incorrecte"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Amunt/Amplia el zoom/Mou endavant/Obre les portes"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Avall/Allunya el zoom"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Mostra/Oculta la safata d'inventari"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Mostra/Oculta la safata del Biochip"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Acciѓ/Selecciѓ"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Conmuta la visualitzaciѓ de dades central"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Mostra/Oculta la pantalla d'informaciѓ"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Mostra/Oculta el menњ de pausa"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Emulador OPL de MAME"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Emulador OPL de DOSBox"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"No s'ha pogut trobar el dispositiu d'рudio seleccionat '%s' (p.e. pot estar "
-"desactivat o desconnectat)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Provant de recѓrrer al segќent dispositiu disponible..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"No es pot utilitzar el dispositiu d'рudio seleccionat '%s'. Vegeu el fitxer "
-"de registre per a mщs informaciѓ."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"No s'ha pogut trobar el dispositiu d'рudio preferit '%s' (p.e. pot estar "
-"desactivat o desconnectat)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"No es pot utilitzar el dispositiu d'рudio preferit '%s'. Vegeu el fitxer de "
-"registre per a mщs informaciѓ."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Sense mњsica"
-
-#: audio/mods/paula.cpp:196
-msgid "Amiga Audio Emulator"
-msgstr "Emulador d'рudio Amiga"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Emulador d'AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Emulador d'Apple II GS (NO IMPLEMENTAT)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Emulador d'рudio C64"
-
-#: audio/softsynth/mt32.cpp:211
-msgid "Initializing MT-32 Emulator"
-msgstr "Iniciant l'Emulador de MT-32"
-
-#: audio/softsynth/mt32.cpp:437
-msgid "MT-32 Emulator"
-msgstr "Emulador de MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Emulador Altaveu PC"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Emulador d'IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Assignacions de teclat:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Efectiu)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Actiu)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Bloquejat)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Joc)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "MIDI de Windows"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Afegeix Jocs"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Menњ Principal de ScummVM"
+#~ msgid "Mass Add..."
+#~ msgstr "Addiciѓ Massiva..."
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Mode ~e~squerrр"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Desactiva la conversiѓ General MIDI pels jocs que tenen banda sonora per "
+#~ "a Roland MT-32"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Controls de lluita de l'~I~ndy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Mostra el cursor del ratolэ"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Estрndard (16bpp)"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Enganxa a les vores"
+#~ msgid "Alternative intro"
+#~ msgstr "Introducciѓ alternativa"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Desplaчament X del toc"
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr ""
+#~ "Utilitza una introducciѓ del joc alternativa (nomщs per la versiѓ CD)"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Desplaчament Y del toc"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Les escenes MPEG2 ja no estan suportades"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Utilitza el control del cursor a l'estil del trackpad dels portрtils"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Toc per a clic esquerre, doble toc per a clic dret"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Conserva"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Sensibilitat"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Escalat inicial de la pantalla superior:"
+#~ msgid "Current display mode"
+#~ msgstr "Mode de vэdeo actual"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Escalat de la pantalla principal:"
+#~ msgid "Current scale"
+#~ msgstr "Escala actual"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Escalat per hardware (rрpid, perђ de baixa qualitat)"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Mode de filtre actiu: Lineal"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Escalat per software (bona qualitat, perђ mщs lent)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Sense escalar (haureu de desplaчar-vos a esquerra i dreta)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Lluminositat:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Alta qualitat d'рudio (mщs lent) (reiniciar)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Desactiva l'apagat automрtic"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "S'ha activat el mode de clic-i-arrossega."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "S'ha desactivat el mode clic-i-arrossega."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Mode Touchpad activat."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Mode Touchpad desactivat."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Mode clic"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Clic esquerre"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Clic central"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Clic dret"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Amaga ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Oculta els altres"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Mostra-ho tot"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Finestra"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimitza"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (sense escalar)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal (no escalat)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "S'ha activat la correcciѓ de la relaciѓ d'aspecte"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "S'ha desactivat la correcciѓ de la relaciѓ d'aspecte"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Filtre de grрfics actiu:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Mode de finestra"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Conserva"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Mode de vэdeo actual"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Escala actual"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Mode de filtre actiu: Lineal"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Mode de filtre actiu: Prђxim"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Amunt"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Avall"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Esquerra"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Dreta"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zona"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Funciѓ Mњltiple"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Commuta el personatge"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Salta el text"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Mode rрpid"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Depurador"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Menњ global"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Teclat virtual"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Assignador de tecles"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Vols sortir?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Vэdeo"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Mode de vэdeo actual:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Double-strike"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Underscan horitzontal:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Underscan vertical:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Entrada"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Sensibilitat del Pad GC:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Acceleraciѓ del Pad GC:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Estat:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Desconegut"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Munta el DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Desmunta el DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Servidor:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Comparticiѓ:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Nom d'usuari:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Contrasenya:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Inicia la xarxa"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Munta SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Desmunta SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "El DVD s'ha muntat satisfactђriament"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Error al muntar el DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "El DVD no estр muntat"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Xarxa activa, comparticiѓ muntada"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Xarxa activa"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", error al muntar la comparticiѓ"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", comparticiѓ no muntada"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Xarxa inactiva"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Iniciant la xarxa"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "S'ha excedit el temps d'iniciaciѓ de la xarxa"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Xarxa no iniciada (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Oculta la barra d'eines"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Mostra el teclat"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "So engegat/parat"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Clic dret"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Mostra/Oculta el cursor"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Vista lliure"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Amplia"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Redueix"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Mapeja tecles"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Cursor Amunt"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Cursor Avall"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Cursor Esquerra"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Cursor Dreta"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Voleu carregar o desar el joc?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Esteu segur de voler sortir? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Teclat"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Rotar"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Utilitzant el controlador SDL "
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Pantalla "
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Voleu fer una cerca automрtica?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Assigna l'acciѓ del clic dret"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr "Heu d'assignar una tecla a l'acciѓ 'Clic dret' per jugar a aquest joc"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Assigna l'acciѓ d'ocultar la barra d'eines"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Heu d'assignar una tecla a l'acciѓ 'Ocultar la barra d'eines' per jugar a "
-"aquest joc"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Assigna l'acciѓ d'Ampliar el Zoom (opcional)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Assigna l'acciѓ de Reduir el Zoom (opcional)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"No us oblideu d'assignar una tecla a l'acciѓ 'Ocultar la barra d'eines' per "
-"veure l'inventari complet"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Realment voleu tornar al Llanчador?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Llanчador"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Estрs segur de voler sortir?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "'Mode Toc' de pantalla tрctil - Clic esquerre"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "'Mode Toc' de pantalla tрctil - Clic dret"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "'Mode Toc' de pantalla tрctil - Flotant (sense clic)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Volum mрxim"
-
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Pujant el volum"
-
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Volum mэnim"
-
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Baixant el volum"
-
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "'Mode Toc' de pantalla tрctil - Flotant (Clics de DPad)"
-
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Comprova les actualitzacions..."
-
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Un clic dret"
-
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Nomщs mou"
-
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Tecla d'escapada"
-
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Menњ del joc"
-
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Mostra el teclat numшric"
-
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Controla el ratolэ"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Clicat activat"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Clicat desactivat"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Mode de filtre actiu: Prђxim"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Activa el Mode Roland GS"
diff --git a/po/cs_CZ.po b/po/cs_CZ.po
index 67a21573b4..4eced39273 100644
--- a/po/cs_CZ.po
+++ b/po/cs_CZ.po
@@ -5,10 +5,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: ScummVM 1.4.0git\n"
+"Project-Id-Version: ScummVM 1.7.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
-"PO-Revision-Date: 2013-05-01 16:53+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
+"PO-Revision-Date: 2014-02-27 21:43+0100\n"
"Last-Translator: Zbynьk Schwarz <zbynek.schwarz@gmail.com>\n"
"Language-Team: \n"
"Language: Cesky\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Poedit-SourceCharset: iso-8859-2\n"
-"X-Generator: Poedit 1.5.5\n"
+"X-Generator: Poedit 1.6.4\n"
"X-Poedit-Basepath: ..\n"
#: gui/about.cpp:93
@@ -55,15 +55,15 @@ msgid "Go up"
msgstr "Jэt nahoru"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "ZruЙit"
@@ -71,26 +71,26 @@ msgstr "ZruЙit"
msgid "Choose"
msgstr "Zvolit"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Zavјэt"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Kliknutэ myЙэ"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Zobrazit klсvesnici"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Pјemapovat klсvesy"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Pјepnout celou obrazovku"
@@ -102,21 +102,21 @@ msgstr "Zvolte шinnost k mapovсnэ"
msgid "Map"
msgstr "Mapovat"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -142,15 +142,15 @@ msgstr "Prosэm vyberte шinnost"
msgid "Press the key to associate"
msgstr "Zmсшknьte klсvesu pro pјiјazenэ"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Hra"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -158,178 +158,178 @@ msgstr ""
"Krсtk§ identifikсtor her, pouОэvan§ jako odkaz k uloОen§m hrсm a spuЙtьnэ "
"hry z pјэkazovщho јсdku"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Jmщno"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "кpln§ nсzev hry"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Jmщno:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Jazyk:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr "Jazyk hry. Toto z vaЙэ Љpanьlskщ verze neudьlс Anglickou"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<v§chozэ>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Platforma:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Platforma, pro kterou byla hra pљvodnь vytvoјena"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Platforma:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Jсdro"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Obraz"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Potlaшit globсlnэ nastavenэ obrazu"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Potlaшit globсlnэ nastavenэ obrazu"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Zvuk"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Potlaшit globсlnэ nastavenэ zvuku"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Potlaшit globсlnэ nastavenэ zvuku"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Hlasitost"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Hlasitost"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Potlaшit globсlnэ nastavenэ hlasitosti"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Potlaшit globсlnэ nastavenэ hlasitosti"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Potlaшit globсlnэ nastavenэ MIDI"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Potlaшit globсlnэ nastavenэ MIDI"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Potlaшit globсlnэ nastavenэ MT-32"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Potlaшit globсlnэ nastavenэ MT-32"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Cesty"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Cesty"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Cesta Hry:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Cesta Hry:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Dodateшnс Cesta:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Stanovэ cestu pro dodateшnс data pouОitс ve hјe"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Dodateшnс Cesta:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Cesta pro uloОenэ:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Stanovuje, kam jsou umэstьny vaЙe uloОenщ hry"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Cesta pro uloОenэ:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -338,134 +338,135 @@ msgctxt "path"
msgid "None"
msgstr "Ўсdnщ"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "V§chozэ"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Vybrat SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Vyberte adresсј s daty hry"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Vyberte dodateшn§ adresсј hry"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Vyberte adresсј pro uloОenщ hry"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Toto ID hry je uО zabranщ. Vyberte si, prosэm, jinщ."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~U~konшit"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Ukonшit ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "~O~ Programu..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "O ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~V~olby..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Zmьnit globсlnэ volby ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~S~pustit"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Spustit zvolenou hru"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~N~ahrсt..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Nahrсt uloОenou pozici pro zvolenou hru"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~P~јidat hru..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "PodrОte Shift pro Hromadnщ Pјidсnэ"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~U~pravit Hru..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Zmьnit volby hry"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~O~dstranit Hru"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Odstranit hru ze seznamu. Hernэ data zљstanou zachovсna"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~P~јidat hru..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~U~pravit hru..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~O~dstranit hru"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Hledat v seznamu her"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Hledat:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Nahrсt hru:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Nahrсt"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -473,7 +474,8 @@ msgstr ""
"Opravdu chcete spustit hromadnou detekci her? Toto by mohlo potenciсlnь "
"pјidat velkou spoustu her. "
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -481,7 +483,8 @@ msgstr ""
msgid "Yes"
msgstr "Ano"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -489,39 +492,34 @@ msgstr "Ano"
msgid "No"
msgstr "Ne"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM nemohl tento adresсј otevјэt!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM nemohl v zadanщm adresсјi najэt Осdnou hru!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Vybrat hru:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Opravdu chcete odstranit nastavenэ tщto hry?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+msgid "Do you want to load savegame?"
+msgstr "Chcete naшэst uloОenou pozici?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Tato hra nepodporuje spouЙtьnэ her ze spouЙtьшe"
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM nemohl najэt Осdnщ jсdro schopnщ vybranou hru spustit!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Hromadnщ Pјidсnэ..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Hromadnщ Pјidсnэ..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... prљbьh ..."
@@ -620,8 +618,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Speciсlnэ reОimy chvьnэ podporovanщ nьkter§mi hrami"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "ReОim celщ obrazovky"
@@ -752,12 +749,16 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Opravdov§ Roland MT-32 (Осdnс GM emulace)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
-msgstr "ReОim Roland GS (vypne mapovсnэ GM)"
+msgid "Roland GS Device (enable MT-32 mappings)"
+msgstr "Zaјэzenэ Roland GS (zapne mapovсnэ MT-32)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "Vypne mapovсnэ General MIDI pro hry s Roland MT-32 zvukov§m doprovodem"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
+"ZaЙkrtnьte, pokud chcete povolit zсplaty mapovсnэ umoОђujэcэ emulovat MT-32 "
+"na zaјэzenэ Roland GS"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -945,15 +946,15 @@ msgstr "Seznam"
msgid "Grid view"
msgstr "MјэОka"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "NeuloОena Осdnс data"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Ўсdn§ uloОen§ шas"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Ўсdnс uloОenс doba hranэ"
@@ -965,43 +966,43 @@ msgstr "Smazat"
msgid "Do you really want to delete this savegame?"
msgstr "Opravdu chcete tuto uloОenou hru vymazat"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Datum:"
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Шas:"
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Doba hranэ:"
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Bezejmenn§ uloОen§ stav"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "DalЙэ"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Pјedchozэ"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Novс uloОenс pozice"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Vytvoјit novou uloОenou hru."
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nсzev:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Zadejte popis pro pozici %d:"
@@ -1010,30 +1011,30 @@ msgstr "Zadejte popis pro pozici %d:"
msgid "Select a Theme"
msgstr "Vyberte Vzhled"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "GFX zakсzсno"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "GFX zakсzсno"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
-msgstr "Standardnэ Vykreslovaш (16bpp)"
+#: gui/ThemeEngine.cpp:347
+msgid "Standard Renderer"
+msgstr "Standardnэ Vykreslovaш"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standardnэ (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Standardnэ"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
-msgstr "Vykreslovaш s vyhlazen§mi hranami (16bpp)"
+#: gui/ThemeEngine.cpp:349
+msgid "Antialiased Renderer"
+msgstr "Vykreslovaш s vyhlazen§mi hranami"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
-msgstr "S vyhlazen§mi hranami (16bpp)"
+#: gui/ThemeEngine.cpp:349
+msgid "Antialiased"
+msgstr "S vyhlazen§mi hranami"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
msgid "Clear value"
@@ -1126,35 +1127,35 @@ msgstr ""
"Opravdu chcete resetovat veЙkerс nastavenэ FluidSynth na jejich v§chozэ "
"hodnoty?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Jсdro nepodporuje њroveђ ladьnэ '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menu"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Pјeskoшit"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pauza"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Pјeskoшit јсdek"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Chyba pјi spuЙtьnэ hry:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Nelze nalщzt Осdnщ jсdro schopnщ vybranou hru spustit"
@@ -1222,16 +1223,16 @@ msgstr "ZruЙeno uОivatelem"
msgid "Unknown error"
msgstr "Neznсmс chyba"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Hra v '%s' se zdс b§t neznсmс."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr "Prosэm nahlaste nсsledujэcэ data t§mu ScummVM spolu se jmщnem"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "hry, kterou jste se pokusili pјidat a jejэ verzi/jazyk/atd.:"
@@ -1269,21 +1270,21 @@ msgid "~R~eturn to Launcher"
msgstr "~N~сvrat do SpouЙtьшe"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "UloОit hru:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "UloОit"
@@ -1320,23 +1321,23 @@ msgstr "~Z~ruЙit"
msgid "~K~eys"
msgstr "~K~lсvesy"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Nelze zavщst barevn§ formсt."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Nelze pјepnout na reОim obrazu: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Nelze pouОэt nastavenэ pomьru stran."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Nelze pouОэt nastavenэ celщ obrazovky."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1350,7 +1351,7 @@ msgstr ""
"datovщ soubory na VсЙ pevn§ disk.\n"
"Pro podrobnosti si pјeшtьte README."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1364,7 +1365,7 @@ msgstr ""
"abyste mohli poslouchat hudbu ve hјe.\n"
"Pro podrobnosti si pјeшtьte README."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1373,7 +1374,7 @@ msgstr ""
"Naшtenэ stavu hry selhalo (%s)! Prosэm pјeшtьte si dokumentaci pro zсkladnэ "
"informace a pokyny k zэskсnэ dalЙэ podpory."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1383,33 +1384,761 @@ msgstr ""
"ScummVM. Proto je moОnщ, Оe bude nestabilnэ a jakщkoli uloОenщ hry nemusэ "
"fungovat v budoucэch verzэch ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Pјesto spustit"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME OPL Emulсtor"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox OPL Emulсtor"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Zvolenщ zvukovщ zaјэzenэ '%s' nebylo nalezeno (napј. mљОe b§t vypnuto nebo "
+"odpojeno)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Pokus o navrсcenэ na nejbliОЙэ dostupnщ zaјэzenэ..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Zvolenщ zvukovщ zaјэzenэ '%s' nelze pouОэt. Podэvejte se na zсznam pro vэce "
+"informacэ."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Upјednostђovanщ zvukovщ zaјэzenэ '%s' nebylo nalezeno (napј. mљОe b§t "
+"vypnuto nebo odpojeno)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Upјednostђovanщ zvukovщ zaјэzenэ '%s' nelze pouОэt. Podэvejte se na zсznam "
+"pro vэce informacэ."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Bez hudby"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Emulсtor zvuku Amiga"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib Emulсtor"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS Emulсtor (NENЭ ZAVEDEN)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Emulсtor zvuku C64"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Zavсdэm MT-32 Emulсtor"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32 Emulсtor"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC Speaker Emulсtor"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM PCjr Emulсtor"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Mapa Klсves:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Aktivnэ)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr "(Aktivnэ)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Blokovсno)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr "(Globсlnэ)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr "(Hra)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~Z~avјэt"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Hlavnэ Menu ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~R~eОim pro levсky"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~O~vlсdсnэ Indyho boje"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Zobrazit kurzor myЙi"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Pјichytit k okrajљm"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Dotykovщ vyrovnсni na ose X"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Dotykovщ vyrovnсni na ose Y"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "PouОэt styl kontroly kurzoru jako u ovlсdacэ poduЙky laptopu"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Ћuknьte pro levщ kliknutэ, dvakrсt pro pravщ kliknutэ"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Citlivost"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Poшсteшnэ zmьna velikosti hornэ obrazovky:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Zmьna velikosti hlavnэ obrazovky:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Hardwarovс zmьna velikosti (rychlщ, ale nэzkс kvalita)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Softwarovс zmьna velikosti (dobrс kvalita, ale pomalejЙэ)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Beze zmьny velikosti (musэte posunovat doleva a doprava)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Jas:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Vysokс kvalita zvuku (pomalejЙэ) (restart) "
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Zakсzat vypnutэ"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "ReОim pјetсhnutэ myЙi zapnut."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "ReОim pјetсhnutэ myЙi vypnut."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Touchpad reОim zapnut"
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Touchpad reОim vypnut"
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "ReОim kliknutэ"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Levщ Kliknutэ"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Kliknutэ prostјednэm tlaшэtkem"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Pravщ kliknutэ"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Skr§t ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Skr§t Ostatnэ"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Zobrazit VЙe"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Okno"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimalizovat"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normсlnэ (bez zmьny velikosti)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normсlnэ (bez zmьny velikosti)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Povolena korekce pomьru stran"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Zakсzсna korekce pomьru stran"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Aktivnэ grafick§ filtr:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "ReОim do okna"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+msgid "OpenGL"
+msgstr "OpenGL"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr "OpenGL (bez filtrovсnэ)"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Nahoru"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Dolљ"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Doleva"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Doprava"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Oblast"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multi Funkce"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Zamьnit znaky"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Pјeskoшit text"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Rychl§ reОim"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Ukonшit"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Ladэcэ program"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Globсlnэ menu"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Virtuсlnэ klсvesnice"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Mapovaш klсves"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Chcete ukonшit ?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Video"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Souшasn§ reОim obrazu:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Dvojitщ pјeЙkrtnutэ"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Horizontсlnэ zmenЙenэ"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Vertikсlnэ zmenЙenэ"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Vstup"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Citlivost GC Padu"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Zrychlenэ GC Padu"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Stav:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Neznсmщ"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Pјipojit DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Odpojit DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Server:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Sdэlenэ:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "UОivatelskщ jmщno"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Heslo"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Spustit sэЛ"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Pјipojit SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Odpojit SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD њspьЙnь pјipojeno"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Chyba pјi pјipojovсnэ DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD nepјipojeno"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "SэЛ je zapnuta, sdэlenэ pјipojeno"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "SэЛ je zapnuta"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", chyba pјi pјipojovсnэ sdэlenэ"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", sdэlenэ nenэ pјipojeno"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "SэЛ je nedostupnс"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Zavсdэm sэЛ"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Pјi zavсdьnэ sэtь vyprЙel limit"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "SэЛ nenэ zavedena (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Skr§t Panel nсstrojљ"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Zobrazit klсvesnici"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Zvuk zapnout/vypnout"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Pravщ kliknutэ"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Ukсzat/Skr§t Kurzor"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "RozhlэОenэ pomocэ myЙi"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "PјiblэОenэ nahoru"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "PјiblэОenэ dolљ"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Pјiјadit klсvesy"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Љipka Nahoru"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Љipka Dolљ"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Љipka Doleva"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Љipka Doprava"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Chcete hru nahrсt nebo uloОit?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Jste si jisti, Оe chcete odejэt ? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Klсvesnice"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Otсшet"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "PouОэvс ovladaш SDL"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Displej"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Chcete provщst automatickщ hledсnэ ?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Mapovat шinnost pravщ kliknutэ"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Musэte namapovat klсvesu pro шinnost 'Pravщ Kliknutэ', abyste tuto hru mohli "
+"hrсt"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Mapovat шinnost skr§t panel nсstrojљ"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Musэte namapovat klсvesu pro шinnost 'Skr§t Panel nсstrojљ', abyste tuto hru "
+"mohli hrсt"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Namapovat шinnost PјiblэОit Nahoru (nepovinnщ)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Namapovat шinnost PјiblэОit Dolљ (nepovinnщ)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Nezapomeђte namapovat klсvesu k шinnosti 'Skr§t Panel Nсstrojљ, abyste "
+"vidьli cel§ inventсј"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Opravdu se chcete vrсtit tuto do SpouЙtьшe?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "SpouЙtьш"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Opravdu chcete skonшit?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "'ReОim Ћuknutэ' Dotykovщ Obrazovky - Levщ Kliknutэ"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "'ReОim Ћuknutэ' Dotykovщ Obrazovky - Pravщ Kliknutэ"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "'ReОim Ћuknutэ' Dotykovщ Obrazovky - Najetэ (Bez Kliknutэ)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Maximсlnэ Hlasitost"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "ZvyЙuji Hlasitost"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Minimсlnэ Hlasitost"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "SniОuji Hlasitost"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "'ReОim Ћuknutэ' Dotykovщ Obrazovky - Najetэ (Dpad klikс)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Zkontrolovat Aktualizace..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Pravщ kliknutэ jednou"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Pouze Pohyb"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Klсvesa Escape"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Menu Hry"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Zobrazit Klсvesnici"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Ovlсdсnэ MyЙi"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Kliknutэ Povoleno"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Kliknutэ Zakсzсno"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "PouОэt pљvodnэ obrazovky naшtenэ/uloОenэ"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr "PouОэt pљvodnэ obrazovky naшtenэ/uloОenэ mэsto ze ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Obnovit hru"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Obnovit"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Nahrсnэ stavu hry selhalo ze souboru:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"UloОenэ stavu hry selhalo do souboru:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Stav hry њspьЙnь uloОen do:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Soubor videa '%s' nenalezen'"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1435,27 +2164,303 @@ msgstr "PouОэt reОim jasnщ palety"
msgid "Display graphics using the game's bright palette"
msgstr "Zobrazit grafiku pomocэ jasnщ palety hry"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Nelze naшэst stav hry ze souboru."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Nelze uloОit stav hry do souboru."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Nelze smazat soubor."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Zv§Йenс rychlost videa"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Pјehrсt videa se zv§Йenou rychlostэ"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Nelze uloОit hru."
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Publikum ve studiu"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Povolit publikum ve studiu"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Podpora pјeskoшenэ"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "UmoОnit, aby text a videa mohly b§t pјeskoшeny"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Hщliov§ reОim"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Zapnout hщliov§ reОim"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Plynulщ posunovсnэ"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Povolit plynulщ posunovсnэ pјi chљzi"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Plovoucэ kurzory"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Povolit plovoucэ kurzory"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Sloupcov§ indikсtor zdravэ"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Povolit sloupcov§ indikсtor zdravэ"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "кtok 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "кtok 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "кtok 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Vpјed"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Vzad"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Pјesunout se Doleva"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Pјesunout se Doprava"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Otoшit se doleva"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Otoшit se doprava"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Odpoшinout si"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Volby"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Zvolit Kouzlo"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Zdс se, Оe pouОэvсte zaјэzenэ General MIDI,\n"
+"ale vaЙe hra podporuje pouze Roland MT32 MIDI.\n"
+"SnaОэme se mapovat nсstroje Roland MT32 na\n"
+"ty od General MIDI. Je stсle moОnщ, Оe\n"
+"nьkterщ stopy nebudou znэt sprсvnь."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~R~eОim SviЙtьnэ Aktivovсn"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~P~јechody zapnuty"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~Z~ahodit Strсnku"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~Z~obrazit Mapu"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "~H~lavnэ Menu"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~E~fekt Vody Zapnut"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr "Pјeskoшit scщny v Sэni zсznamљ"
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr "UmoОђuje hrсшi pјeskoшit scщny v Sэni zсznamљ"
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr "ZvьtЙit filmy o v§robь na celou obrazovku"
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr "ZvьtЙit filmy o v§robь tak, aby vyuОivaly celou obrazovku"
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Nelze uloОit hru do pozice %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Nahrсvсnэ hry..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Uklсdсnэ hry..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM zjistil, Оe mсte starщ uloОenщ pozice pro Nippon Safes, kterщ by "
+"mьly b§t pјejmenovсny.\n"
+"Starщ nсzvy jiО nejsou podporovсny, takОe pokud je nepјevedete, nebudete "
+"moci vaЙe hry naшэst.\n"
+"\n"
+"Stisknьte OK, abyste je pјevedli teя, jinak budete poОсdсni pјэЙtь.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM њspьЙnь pјevedl vЙechny vaЙe uloОenщ pozice. "
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM vytiskl nьkterс varovсnэ ve vaЙem oknь konzole a nemљОe zaruшit, Оe "
+"vЙechny vaЙe soubory byly pјevedeny.\n"
+"\n"
+"Prosэm nahlaste to t§mu"
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Neplatn§ nсzev souboru"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Nahoru/PјiblэОit/Pohyb dopјedu/Otevјэt dveјe"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Dolљ/Oddсlenэ"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Zobrazit/Skr§t podnos inventсјe"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Zobrazit/Skr§t podnos bioшipu"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Шinnost/Vybrat"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Pјepnout centrсlnэ datovou obrazovku"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Zobrazit/Skr§to obrazovku informacэ"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Zobrazit/Skr§t "
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "Nerozklсdсnэ EGA"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Povolit nerozklсdсnэ v EGA hrсch"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Upјednostђovat digitсlnэ zvukovщ efekty"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Upјednostђovat digitсlnэ zvukovщ efekty pјed syntetizovan§mi"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "PouОэt IMF/Yamaha FB-01 pro v§stup MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1463,28 +2468,28 @@ msgstr ""
"PouОэt kartu IBM Music Feature nebo modul syntetizсtoru Yamaha FB-01 FM pro "
"v§stup MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "PouОэt zvuky na CD"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "PouОэt zvuky na CD mэsto ve hјe, pokud je dostupnщ"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "PouОэt kurzory Windows"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr "PouОэt kurzory Windows (menЙэ a шernobэlщ) mэsto kurzorљ z DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "PouОэt stјэbrnщ kurzory"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr "PouОэt alternativnэ sadu stјэbrn§ch kurzorљ mэsto standardnэch zlat§ch"
@@ -1524,15 +2529,6 @@ msgstr "Jste si jisti, Оe chcete odejэt? (A/N)A"
msgid "Play"
msgstr "Hrсt"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Ukonшit"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "VloОte hernэ disk pro uloОenэ/naшtenэ"
@@ -1581,11 +2577,6 @@ msgstr "~P~јedchozэ"
msgid "~N~ext"
msgstr "~D~alЙэ"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~Z~avјэt"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Pouze иeш"
@@ -1611,10 +2602,6 @@ msgstr "Vyberte њroveђ odbornosti."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Pro nсpovьdu si pјeшtьte manuсl Loom(TM)."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Standardnэ"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Cviшenэ"
@@ -2136,7 +3123,7 @@ msgstr "Letьt doprava"
msgid "Fly to lower right"
msgstr "Letьt doprava dolљ"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2145,40 +3132,7 @@ msgstr ""
"Pјirozenс podpora MIDI vyОaduje Aktualizaci Roland od LucasArts,\n"
"ale %s chybэ. Mэsto toho je pouОit AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"UloОenэ stavu hry selhalo do souboru:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Nahrсnэ stavu hry selhalo ze souboru:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Stav hry њspьЙnь uloОen do:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2188,190 +3142,6 @@ msgstr ""
"Abyste toto mohli hrсt, pјejdьte do 'Pјidat Hru' v poшсteшnэm menu ScummVM a "
"vyberte adresсј 'Maniac' uvnitј hernэho adresсјe Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~R~eОim SviЙtьnэ Aktivovсn"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~P~јechody zapnuty"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~Z~ahodit Strсnku"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~Z~obrazit Mapu"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "~H~lavnэ Menu"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~E~fekt Vody Zapnut"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Soubor videa '%s' nenalezen'"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Nelze naшэst stav hry ze souboru."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Nelze uloОit stav hry do souboru."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Nelze smazat soubor."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Zv§Йenс rychlost videa"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Pјehrсt videa se zv§Йenou rychlostэ"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Nelze uloОit hru."
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Publikum ve studiu"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Povolit publikum ve studiu"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Podpora pјeskoшenэ"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "UmoОnit, aby text a videa mohly b§t pјeskoшeny"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Hщliov§ reОim"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Zapnout hщliov§ reОim"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Plynulщ posunovсnэ"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Povolit plynulщ posunovсnэ pјi chљzi"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Plovoucэ kurzory"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Povolit plovoucэ kurzory"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Sloupcov§ indikсtor zdravэ"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Povolit sloupcov§ indikсtor zdravэ"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "кtok 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "кtok 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "кtok 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Vpјed"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Vzad"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Pјesunout se Doleva"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Pјesunout se Doprava"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Otoшit se doleva"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Otoшit se doprava"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Odpoшinout si"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Volby"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Zvolit Kouzlo"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Zdс se, Оe pouОэvсte zaјэzenэ General MIDI,\n"
-"ale vaЙe hra podporuje pouze Roland MT32 MIDI.\n"
-"SnaОэme se mapovat nсstroje Roland MT32 na\n"
-"ty od General MIDI. Je stсle moОnщ, Оe\n"
-"nьkterщ stopy nebudou znэt sprсvnь."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Alternativnэ њvod"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "PouОэt jinou verzi њvodu (Pouze verze CD)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2396,20 +3166,20 @@ msgstr "кvod z diskety"
msgid "Use the floppy version's intro (CD version only)"
msgstr "PouОэt verzi њvodu z diskety (Pouze verze CD)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "Proud videa PSX '%s' nemљОe b§t pјehrсn v reОimu palety"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr "Videa DXA nalezena, ale ScummVM byl sestaven bez podpory zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Videa MPGE2 jiО nejsou podporovсna"
+#: engines/sword1/animation.cpp:561
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr "Videa MPEG-2 nalezena, ale ScummVM byl sestaven bez MPEG-2"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Video '%s' nenalezeno"
@@ -2453,11 +3223,16 @@ msgstr "Ponechat novou"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Toto je konec Dema Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr "Videa PSX nalezena, ale ScummVM byl sestaven bez podpory barev RGB"
+#: engines/sword2/animation.cpp:461
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr "Videa MPEG-2 nalezena, ale ScummVM byl sestaven bez podpory MPEG-2"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Zobrazit jmenovky objektљ"
@@ -2479,791 +3254,50 @@ msgstr ""
"Soubor teenagent.dat je komprimovсn a zlib nenэ souшсstэ spustitelnщho "
"souboru. Prosэm dekomprimujte ho"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Nelze uloОit hru do pozice %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Nahrсvсnэ hry..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Uklсdсnэ hry..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM zjistil, Оe mсte starщ uloОenщ pozice pro Nippon Safes, kterщ by "
-"mьly b§t pјejmenovсny.\n"
-"Starщ nсzvy jiО nejsou podporovсny, takОe pokud je nepјevedete, nebudete "
-"moci vaЙe hry naшэst.\n"
-"\n"
-"Stisknьte OK, abyste je pјevedli teя, jinak budete poОсdсni pјэЙtь.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM њspьЙnь pјevedl vЙechny vaЙe uloОenщ pozice. "
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM vytiskl nьkterс varovсnэ ve vaЙem oknь konzole a nemљОe zaruшit, Оe "
-"vЙechny vaЙe soubory byly pјevedeny.\n"
-"\n"
-"Prosэm nahlaste to t§mu"
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Neplatn§ nсzev souboru"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Nahoru/PјiblэОit/Pohyb dopјedu/Otevјэt dveјe"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Dolљ/Oddсlenэ"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Zobrazit/Skr§t podnos inventсјe"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Zobrazit/Skr§t podnos bioшipu"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Шinnost/Vybrat"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Pјepnout centrсlnэ datovou obrazovku"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Zobrazit/Skr§to obrazovku informacэ"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Zobrazit/Skr§t "
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME OPL Emulсtor"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox OPL Emulсtor"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Zvolenщ zvukovщ zaјэzenэ '%s' nebylo nalezeno (napј. mљОe b§t vypnuto nebo "
-"odpojeno)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Pokus o navrсcenэ na nejbliОЙэ dostupnщ zaјэzenэ..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Zvolenщ zvukovщ zaјэzenэ '%s' nelze pouОэt. Podэvejte se na zсznam pro vэce "
-"informacэ."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Upјednostђovanщ zvukovщ zaјэzenэ '%s' nebylo nalezeno (napј. mљОe b§t "
-"vypnuto nebo odpojeno)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Upјednostђovanщ zvukovщ zaјэzenэ '%s' nelze pouОэt. Podэvejte se na zсznam "
-"pro vэce informacэ."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Bez hudby"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Emulсtor zvuku Amiga"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib Emulсtor"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS Emulсtor (NENЭ ZAVEDEN)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Emulсtor zvuku C64"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Zavсdэm MT-32 Emulсtor"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32 Emulсtor"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC Speaker Emulсtor"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM PCjr Emulсtor"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Mapa Klсves:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Aktivnэ)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr "(Aktivnэ)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Blokovсno)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr "(Globсlnэ)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr "(Hra)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Hlavnэ Menu ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~R~eОim pro levсky"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~O~vlсdсnэ Indyho boje"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Zobrazit kurzor myЙi"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Pјichytit k okrajљm"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Dotykovщ vyrovnсni na ose X"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Dotykovщ vyrovnсni na ose Y"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "PouОэt styl kontroly kurzoru jako u ovlсdacэ poduЙky laptopu"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Ћuknьte pro levщ kliknutэ, dvakrсt pro pravщ kliknutэ"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Citlivost"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Poшсteшnэ zmьna velikosti hornэ obrazovky:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Zmьna velikosti hlavnэ obrazovky:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Hardwarovс zmьna velikosti (rychlщ, ale nэzkс kvalita)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Softwarovс zmьna velikosti (dobrс kvalita, ale pomalejЙэ)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Beze zmьny velikosti (musэte posunovat doleva a doprava)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Jas:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Vysokс kvalita zvuku (pomalejЙэ) (restart) "
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Zakсzat vypnutэ"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "ReОim pјetсhnutэ myЙi zapnut."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "ReОim pјetсhnutэ myЙi vypnut."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Touchpad reОim zapnut"
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Touchpad reОim vypnut"
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "ReОim kliknutэ"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Levщ Kliknutэ"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Kliknutэ prostјednэm tlaшэtkem"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Pravщ kliknutэ"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Skr§t ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Skr§t Ostatnэ"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Zobrazit VЙe"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Okno"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimalizovat"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normсlnэ (bez zmьny velikosti)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normсlnэ (bez zmьny velikosti)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Povolena korekce pomьru stran"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Zakсzсna korekce pomьru stran"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Aktivnэ grafick§ filtr:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "ReОim do okna"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normсlnэ"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Zachovсvajэcэ"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Pљvodnэ"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Souшasn§ reОim obrazu"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Souшasnс velikost"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Aktivnэ reОim filtru: Lineсrnэ"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Aktivnэ reОim filtru: NejbliОЙэ"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Nahoru"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Dolљ"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Doleva"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Doprava"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Oblast"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multi Funkce"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Zamьnit znaky"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Pјeskoшit text"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Rychl§ reОim"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Ladэcэ program"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Globсlnэ menu"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Virtuсlnэ klсvesnice"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Mapovaш klсves"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Chcete ukonшit ?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Video"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Souшasn§ reОim obrazu:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Dvojitщ pјeЙkrtnutэ"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Horizontсlnэ zmenЙenэ"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Vertikсlnэ zmenЙenэ"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Vstup"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Citlivost GC Padu"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Zrychlenэ GC Padu"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Stav:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Neznсmщ"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Pјipojit DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Odpojit DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Server:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Sdэlenэ:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "UОivatelskщ jmщno"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Heslo"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Spustit sэЛ"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Pјipojit SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Odpojit SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD њspьЙnь pјipojeno"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Chyba pјi pјipojovсnэ DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD nepјipojeno"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "SэЛ je zapnuta, sdэlenэ pјipojeno"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "SэЛ je zapnuta"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", chyba pјi pјipojovсnэ sdэlenэ"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", sdэlenэ nenэ pјipojeno"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "SэЛ je nedostupnс"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Zavсdэm sэЛ"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Pјi zavсdьnэ sэtь vyprЙel limit"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "SэЛ nenэ zavedena (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Skr§t Panel nсstrojљ"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Zobrazit klсvesnici"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Zvuk zapnout/vypnout"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Pravщ kliknutэ"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Ukсzat/Skr§t Kurzor"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "RozhlэОenэ pomocэ myЙi"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "PјiblэОenэ nahoru"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "PјiblэОenэ dolљ"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Pјiјadit klсvesy"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Љipka Nahoru"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Љipka Dolљ"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Љipka Doleva"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Љipka Doprava"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Chcete hru nahrсt nebo uloОit?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Jste si jisti, Оe chcete odejэt ? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Klсvesnice"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Otсшet"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "PouОэvс ovladaш SDL"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Displej"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Chcete provщst automatickщ hledсnэ ?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Mapovat шinnost pravщ kliknutэ"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Musэte namapovat klсvesu pro шinnost 'Pravщ Kliknutэ', abyste tuto hru mohli "
-"hrсt"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Mapovat шinnost skr§t panel nсstrojљ"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Musэte namapovat klсvesu pro шinnost 'Skr§t Panel nсstrojљ', abyste tuto hru "
-"mohli hrсt"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Namapovat шinnost PјiblэОit Nahoru (nepovinnщ)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Namapovat шinnost PјiblэОit Dolљ (nepovinnщ)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Nezapomeђte namapovat klсvesu k шinnosti 'Skr§t Panel Nсstrojљ, abyste "
-"vidьli cel§ inventсј"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Opravdu se chcete vrсtit tuto do SpouЙtьшe?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "SpouЙtьш"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Opravdu chcete skonшit?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "'ReОim Ћuknutэ' Dotykovщ Obrazovky - Levщ Kliknutэ"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "'ReОim Ћuknutэ' Dotykovщ Obrazovky - Pravщ Kliknutэ"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "'ReОim Ћuknutэ' Dotykovщ Obrazovky - Najetэ (Bez Kliknutэ)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Maximсlnэ Hlasitost"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Hromadnщ Pјidсnэ..."
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "ZvyЙuji Hlasitost"
+#~ msgid "Mass Add..."
+#~ msgstr "Hromadnщ Pјidсnэ..."
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Minimсlnэ Hlasitost"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Vypne mapovсnэ General MIDI pro hry s Roland MT-32 zvukov§m doprovodem"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "SniОuji Hlasitost"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standardnэ (16bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "'ReОim Ћuknutэ' Dotykovщ Obrazovky - Najetэ (Dpad klikс)"
+#~ msgid "Alternative intro"
+#~ msgstr "Alternativnэ њvod"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Zkontrolovat Aktualizace..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "PouОэt jinou verzi њvodu (Pouze verze CD)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Pravщ kliknutэ jednou"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Videa MPGE2 jiО nejsou podporovсna"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Pouze Pohyb"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normсlnэ"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Klсvesa Escape"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Zachovсvajэcэ"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Menu Hry"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Pљvodnэ"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Zobrazit Klсvesnici"
+#~ msgid "Current display mode"
+#~ msgstr "Souшasn§ reОim obrazu"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Ovlсdсnэ MyЙi"
+#~ msgid "Current scale"
+#~ msgstr "Souшasnс velikost"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Kliknutэ Povoleno"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Aktivnэ reОim filtru: Lineсrnэ"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Kliknutэ Zakсzсno"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Aktivnэ reОim filtru: NejbliОЙэ"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Zapnout reОim Roland GS"
diff --git a/po/da_DA.po b/po/da_DA.po
index 192ceeb50d..9b00eb6e23 100644
--- a/po/da_DA.po
+++ b/po/da_DA.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-05-17 14:24+0100\n"
"Last-Translator: Steffen Nyeland <steffen@nyeland.dk>\n"
"Language-Team: Steffen Nyeland <steffen@nyeland.dk>\n"
@@ -53,15 +53,15 @@ msgid "Go up"
msgstr "Gх op"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Fortryd"
@@ -69,26 +69,26 @@ msgstr "Fortryd"
msgid "Choose"
msgstr "Vцlg"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Luk"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Muse klik"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Vis tastatur"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Kortlцg taster"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Skift fuldskцrm"
@@ -100,21 +100,21 @@ msgstr "Vцlg en handling at kortlцgge"
msgid "Map"
msgstr "Kortlцg"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -140,15 +140,15 @@ msgstr "Vцlg venligst en handling"
msgid "Press the key to associate"
msgstr "Tryk tasten for at tilknytte"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Spil"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -156,29 +156,29 @@ msgstr ""
"Kort spil identifikator til brug for gemmer, og for at kјre spillet fra "
"kommandolinien"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Navn:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Fuld titel pх spillet"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Navn:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Sprog:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -186,150 +186,150 @@ msgstr ""
"Spillets sprog. Dette vil ikke цndre din spanske version af spillet til "
"engelsk"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<standard>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Platform:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Platform som spillet oprindeligt var designet til"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Platform:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Motor"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafik"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Overstyr globale grafik indstillinger"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Overstyr globale grafik indstillinger"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Lyd"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Overstyr globale lyd indstillinger"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Overstyr globale lyd indstillinger"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Lydstyrke"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Lydstyrke"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Overstyr globale lydstyrke indstillinger"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Overstyr globale lydstyrke indstillinger"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Overstyr globale MIDI indstillinger"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Overstyr globale MIDI indstillinger"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Overstyr globale MT-32 indstillinger"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Overstyr globale MT-32 indstillinger"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Stier"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Stier"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Spil sti:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Spil sti:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Ekstra sti:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Angiver sti til ekstra data der bruges i spillet"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Ekstra sti:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Gemme sti:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Angiver hvor dine gemmer bliver lagt"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Gemme sti:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -338,134 +338,135 @@ msgctxt "path"
msgid "None"
msgstr "Ingen"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Standard"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Vцlg SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Vцlg bibliotek med spil data"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Vцlg ekstra spil bibliotek"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Vцlg bibliotek til spil gemmer"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Dette spil ID er allerede i brug. Vцlg venligst et andet."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~A~fslut"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Slut ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "~O~m..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Om ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~I~ndstillinger..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Цndre globale ScummVM indstillinger"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~S~tart"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Start det valgte spil"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "Ind~l~цs..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Indlцs gemmer for det valgte spil"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~T~ilfјj spil..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Hold Skift for at tilfјje flere"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~R~ediger spil..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Цndre spil indstillinger"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~F~jern spil"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Fjerner spil fra listen. Spillets data filer forbliver uberјrt"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~T~ilfјj spil..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~R~ediger spil..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~F~jern spil"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Sјg i spil liste"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Sјg:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Indlцs spil:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Indlцs"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -473,7 +474,8 @@ msgstr ""
"Vil du virkelig kјre fler spils detektoren? Dette kunne potentielt tilfјje "
"et stort antal spil."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -481,7 +483,8 @@ msgstr ""
msgid "Yes"
msgstr "Ja"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -489,40 +492,36 @@ msgstr "Ja"
msgid "No"
msgstr "Nej"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM kunne ikke хbne det angivne bibliotek!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM kunne ikke finde noget spil i det angivne bibliotek!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Vцlg spillet:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Vil du virkelig fjerne denne spil konfiguration?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Vil du indlцse eller gemme spillet?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Dette spil understјtter ikke indlцsning af spil fra spiloversigten."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM kunne ikke finde en motor, istand til at afvikle det valgte spil!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Tilfјj flere..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Tilfјj flere..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... fremskridt ..."
@@ -621,8 +620,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Speciel farvereduceringstilstand understјttet a nogle spil"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Fuldskцrms tilstand"
@@ -751,12 +749,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Цgte Roland MT-32 (ingen GM emulering)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Roland GS tilstand (undlad GM emulering)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "Sluk for Generel MIDI kortlцgning for spil med Roland MT-32 lydspor"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -944,15 +945,15 @@ msgstr "Liste visning"
msgid "Grid view"
msgstr "Gitter visning"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Ingen dato gemt"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Intet tidspunkt gemt"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Ingen spilletid gemt"
@@ -964,43 +965,43 @@ msgstr "Slet"
msgid "Do you really want to delete this savegame?"
msgstr "Vil du virkelig slette denne gemmer?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Dato:"
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Tid:"
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Spilletid:"
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Unavngivet gemmetilstand"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Nцste"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Forrige"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Ny Gemmer"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Opret en ny gemmer"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Navn:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Indtast en beskrivelse af plads %d:"
@@ -1009,29 +1010,32 @@ msgstr "Indtast en beskrivelse af plads %d:"
msgid "Select a Theme"
msgstr "Vцlg et tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Deaktiveret GFX"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Deaktiveret GFX"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Standard renderer (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Standard"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Antialias renderer (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Antialias (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1125,35 +1129,35 @@ msgstr ""
"Vil du virkelig nulstille alle FluidSynth indstillinger til deres standard "
"vцrdier?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Motor understјtter ikke fejlfindingsniveau '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menu"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Spring over"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pause"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Spring linje over"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Fejl ved kјrsel af spil:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Kunne ikke finde nogen motor istand til at afvikle det valgte spil"
@@ -1221,17 +1225,17 @@ msgstr "Bruger annullerede"
msgid "Unknown error"
msgstr "Ukendt fejl"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Spillet i '%s' ser ud til at vцre ukendt."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Venligst, rapportere fјlgende data til ScummVM holdet sammen med navnet"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "pх det spil, du forsјgte at tilfјje og dets version/sprog/ etc.:"
@@ -1269,21 +1273,21 @@ msgid "~R~eturn to Launcher"
msgstr "~R~etur til oversigt"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Gemmer:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Gem"
@@ -1320,23 +1324,23 @@ msgstr "~F~ortryd"
msgid "~K~eys"
msgstr "~T~aster"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Kunne ikke initialisere farveformat."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Kunne ikke skifte til videotilstand: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Kunne ikke anvende billedformat korrektion indstilling."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Kunne ikke anvende fuldskцrm indstilling."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1350,7 +1354,7 @@ msgstr ""
"datafiler til din harddisk i stedet.\n"
"Se README fil for detaljer."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1364,7 +1368,7 @@ msgstr ""
"for at lytte til spillets musik.\n"
"Se README fil for detaljer."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1374,7 +1378,7 @@ msgstr ""
"grundlцggende oplysninger, og for at fх instruktioner om, hvordan man fхr "
"yderligere hjцlp."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1384,33 +1388,760 @@ msgstr ""
"ScummVM. Sхledes, er det sandsynligt, at det er ustabilt, og alle gemmer du "
"foretager fungerer muligvis ikke i fremtidige versioner af ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Start alligevel"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME OPL emulator"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox OPL emulator"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Den valgte lydenhed '%s' blev ikke fundet (kan f.eks vцre slukket eller "
+"afbrudt)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Forsјger at falde tilbage til den nцste tilgцngelig enhed..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Den valgte lydenhed '%s' kan ikke bruges. Se log filen for mere information."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Den foretrukne lydenhed '%s' blev ikke fundet (kan f.eks vцre slukket eller "
+"afbrudt)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Den foretrukne lydenhed '%s' kan ikke bruges. Se log filen for mere "
+"information."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Ingen musik"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Amiga lyd emulator"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib emulator"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS emulator (IKKE IMPLEMENTERET)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64 lyd emulator"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Initialisere MT-32 emulator"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32 emulator"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC Speaker emulator"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM PCjr emulator"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Tasteoversigt:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Aktiv)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Aktiv)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr "(Blokeret)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Spil)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~L~uk"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "ScummVM Hovedmenu"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~V~enstrehхndstilstand "
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~I~ndy kamp styring"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Vis muse markјr"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Hцft til hjјrner"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Touch X forskydning"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Touch Y forskydning"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Brug bцrbar museplade-agtig markјr kontrol"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Tryk for venstre klik, dobbelt tryk for hјjre klik"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Fјlsomhed"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Skalering af јverste skцrm ved opstart:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Hovedskцrm skalering"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Hardware skalering (hurtig, men lav kvalitet)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Software skalering (god kvalitet, men langsommere)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Ikke skaleret (du skal rulle til venstre og hјjre)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Lysstyrke:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Hјj lydkvalitet (langsommere) (genstart)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Deaktiver slukning"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Muse-klik-og-trцk tilstand aktiveret."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Muse-klik-og-trцk tilstand deaktiveret."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Pegeplade tilstand aktiveret."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Pegeplade tilstand deaktiveret."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Klik tilstand"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Venstre klik"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Miderste klik"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Hјjre klik"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Skjul ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Skjul andre"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Vis alle"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Vindue"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimer"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (ingen skalering)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal (ingen skalering)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Aktivщr billedformat korrektion"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Deaktivщr billedformat korrektion"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Aktive grafik filtre:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Vindue tilstand"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Хbn"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Op"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Ned"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Venstre"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Hјjre"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zone"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multi funktion"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Skift person"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Spring tekst over"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Hurtig tilstand"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Afslut"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Fejlsјger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Global menu"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Virtuelt tastatur"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Tastetildeling"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Vil du afslutte?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Video"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Aktuel videotilstand:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Double-strike (ikke-interlaced)"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Vandret underskan:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Lodret underskan:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Input"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "GC Pad fјlsomhed:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "GC Pad acceleration:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Status:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Ukendt"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Montere DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Afmontere DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Server:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Mappe:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Bruger:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Kodeord:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Init netvцrk"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Montere SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Afmonterer SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD montering lykkedes"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Fejl ved montering af DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD ikke monteret"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Netvцrk oppe, delt mappe monteret"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Netvцrk oppe"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", fejl imens montering af delt mappe"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", delt mappe ikke monteret"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Netvцrk nede"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Initialisere netvцrk"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Tidsgrцnse nхet ved initialisering af netvцrk"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Netvцrk ikke initialiseret (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Skjul vцrktјjslinje"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Vis tastatur"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Lyd til/fra"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Hјjre klik"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Vis/skjul markјr"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Fri udsigt"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Formindsk"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Forstјr"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Tildel taster"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Pil op"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Pil ned"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Pil til venstre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Pil til hјjre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Vil du indlцse eller gemme spillet?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Er du sikker pх at du vil afslutte? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Tastatur"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Drej"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Brug SDL driver"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Vis"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Vil du udfјre en automatisk skanning ?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Tildel hјjreklikshandling"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Du skal tildele en tast til 'Hјjreklik' handlingen for at spille dette spil"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Tildel \"skjul vцrktјjslinje\" handling"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Du skal tildele en tast til 'Skjul vцrktјjslinje' handlingen for at spille "
+"dette spil"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Tildel Formindsk handling (valgfri)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Tildel Forstјr handling (valgfri)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Glem ikke at tildele en tast til 'Skjul vцrktјjslinje' handling for at se "
+"hele oversigten"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Vil du virkelig gх tilbage til oversigten?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Oversigt"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Vil du virkelig afslutte?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Touchscreen 'Tap Mode' - Venstre Klik"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Touchscreen 'Tap Mode' - Hјjre Klik"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Touchscreen 'Tap Mode' - Henover (Ingen Klik)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Maximal lydstyrke"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Hцver lydstyrke"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Minimal lydstyrke"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Sцnker lydstyrke"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Touchscreen 'Tap Mode' - Henover (DPad Klik)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Sјg efter opdateringer..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Enkelt hјjre klik"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Flyt kun"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Escape tast"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Spil menu"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Vis tastatur"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Kontrollщr mus"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Klik aktiveret"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Klik deaktiveret"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Brug original gem/indlцs skцrme"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr "Brug de originale gem/indlцs skцrme, istedet for dem fra ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Gendan spil:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Gendan"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Mislykkedes at indlцse spil tilstand fra fil:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Mislykkedes at gemme spil tilstand til fil:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Gemt spil tilstand problemfrit i fil:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Filmsekvens fil '%s' ikke fundet!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1436,27 +2167,303 @@ msgstr "Brug lys palet tilstand"
msgid "Display graphics using the game's bright palette"
msgstr "Vis grafik ved hjцlp af spillets lyse palette"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Mislykkedes at indlцse spil tilstand fra fil."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Mislykkedes at gemme spil tilstand til fil."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Mislykkedes at slette fil."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Hurtig film hastighed"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Afspil film med forhјjet hastighed"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Mislykkedes at gemme spil"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Studio publikum"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Aktivщr studio publikum"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Spring over stјtte"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Tillad at tekst og filmsekvenser kan springes over"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Helium tilstand"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Aktivщr helium tilstand"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Jцvn bevцgelse"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Aktivщr jцvn bevцgelse nхr du gхr"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Flydende markјr"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Aktivщr flydende markјr"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "HP sјjlegrafer"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Aktivщr trцfpoint (HP) sјjlediagrammer"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Angreb 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Angreb 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Angreb 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Flyt fremad"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Flyt bagud"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Flyt til venstre"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Flyt til hјjre"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Drej til venstre"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Drej til hјjre"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Hvil"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Indstillinger"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Vцlg magi"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Det lader til at du bruger en Generel MIDI-enhed,\n"
+"men dit spil kun understјtter Roland MT32 MIDI.\n"
+"Vi forsјger at kortlцgge Roland MT32 instrumenterne til\n"
+"dem i Generel MIDI. Trods det kan det ske\n"
+"at nogle stykker ikke lyder korrekt."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~Z~ip tilstand aktiveret"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~O~vergange aktiveret"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Smi~d~ side"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "Vi~s~ kort"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Hoved~m~enu"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~V~andeffekter aktiveret"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Kan ikke gemme spil pх plads %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Indlцser spil..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Gemmer spil..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM har konstateret, at du har gamle gemmer for Nippon Safes, der skal "
+"omdјbes.\n"
+"De gamle navne er ikke lцngere understјttet, sх du vil ikke vцre i stand til "
+"at indlцse dine spil, hvis du ikke konvertere dem.\n"
+"\n"
+"Tryk pх OK for at konvertere dem nu, ellers vil du blive spurgt nцste gang.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM konverterede med succes alle dine gemmer."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM udskrev nogle advarsler i dit konsol vindue, og kan ikke garantere "
+"at alle dine filer er blevet konverteret.\n"
+"\n"
+"Venligst rapportщr til holdet."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Ugyldigt navn for gemmer"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Op/Forstјr/Flyt frem/Хben dјre"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Ned/Forminsk"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Vis/Skjul Oversigtsbakke"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Vis/Skjul Biochip bakke"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Handling/Vцlg"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Skift Center Data Display"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Vis/Skjul Info skцrm"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Vis/Skjul Pause menu"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA farveforјgelse"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Aktiver farveforјgelse i EGA spil"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Foretrцk digitale lydeffekter"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Foretrцk digitale lydeffekter i stedet for syntetiserede"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Brug IMF/Yamaha FB-01 til MIDI-udgang"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1464,28 +2471,28 @@ msgstr ""
"Bruge et IBM Musik Feature-kort eller et Yamaha FB-01 FM synth modul til "
"MIDI-udgang"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Brug CD lyd"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "Brug cd-lyd i stedet for lyd fra spillet, hvis tilgцngelige"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Brug Windows markјr"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr "Brug Windows-markјrer (mindre og monokrome) i stedet for dem fra DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Brug sјlv markјr"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1526,15 +2533,6 @@ msgstr "Er du sikker pх at du vil afslutte? (J/N) "
msgid "Play"
msgstr "Spil"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Afslut"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Indsцt gem/indlцs spil disk"
@@ -1583,11 +2581,6 @@ msgstr "Fo~r~rige"
msgid "~N~ext"
msgstr "~N~цste"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~L~uk"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Kun tale"
@@ -1613,10 +2606,6 @@ msgstr "Vцlg et Fцrdighedsniveau."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Se din Loom(TM) manual for hjцlp."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Standard"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Trцning"
@@ -2138,7 +3127,7 @@ msgstr "Flyv til hјjre"
msgid "Fly to lower right"
msgstr "Flyv nederst til hјjre"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2147,40 +3136,7 @@ msgstr ""
"Indbygget MIDI understјttelse krцver Roland opgradering fra LucasArts,\n"
"men %s mangler. Bruger AdLib i stedet."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Mislykkedes at gemme spil tilstand til fil:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Mislykkedes at indlцse spil tilstand fra fil:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Gemt spil tilstand problemfrit i fil:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2190,190 +3146,6 @@ msgstr ""
"endnu. For at spille det, gх til 'Tilfјj spil' i ScummVM start-menuen og "
"vцlg 'Maniac' mappen inde i Tentacle spillets mappe."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~Z~ip tilstand aktiveret"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~O~vergange aktiveret"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Smi~d~ side"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "Vi~s~ kort"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Hoved~m~enu"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~V~andeffekter aktiveret"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Filmsekvens fil '%s' ikke fundet!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Mislykkedes at indlцse spil tilstand fra fil."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Mislykkedes at gemme spil tilstand til fil."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Mislykkedes at slette fil."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Hurtig film hastighed"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Afspil film med forhјjet hastighed"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Mislykkedes at gemme spil"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Studio publikum"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Aktivщr studio publikum"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Spring over stјtte"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Tillad at tekst og filmsekvenser kan springes over"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Helium tilstand"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Aktivщr helium tilstand"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Jцvn bevцgelse"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Aktivщr jцvn bevцgelse nхr du gхr"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Flydende markјr"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Aktivщr flydende markјr"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "HP sјjlegrafer"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Aktivщr trцfpoint (HP) sјjlediagrammer"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Angreb 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Angreb 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Angreb 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Flyt fremad"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Flyt bagud"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Flyt til venstre"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Flyt til hјjre"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Drej til venstre"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Drej til hјjre"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Hvil"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Indstillinger"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Vцlg magi"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Det lader til at du bruger en Generel MIDI-enhed,\n"
-"men dit spil kun understјtter Roland MT32 MIDI.\n"
-"Vi forsјger at kortlцgge Roland MT32 instrumenterne til\n"
-"dem i Generel MIDI. Trods det kan det ske\n"
-"at nogle stykker ikke lyder korrekt."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Alternativ intro"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Brug en alternativ spil intro (kun CD version)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2398,21 +3170,23 @@ msgstr "Diskette intro"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Brug diskette versionens intro (kun CD version)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "PSX stream filmsekvens '%s' kan ikke afspilles i palette tilstand"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"DXA filmsekvenser fundet, men ScummVM er bygget uden zlib understјttelse"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "MPEG2 filmsekvenser understјttes ikke lцngere"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"PSX filmsekvenser fundet, men ScummVM er bygget uden RGB farve understјttelse"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Filmsekvens '%s' ikke fundet"
@@ -2456,12 +3230,19 @@ msgstr "Behold den nye"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Dette er slutningen af Broken Sword 1 demoen"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"PSX filmsekvenser fundet, men ScummVM er bygget uden RGB farve understјttelse"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"DXA filmsekvenser fundet, men ScummVM er bygget uden zlib understјttelse"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Vis labels pх genstande"
@@ -2483,789 +3264,49 @@ msgstr ""
"Teenagent.dat filen er komprimeret og zlib er ikke blevet inkluderet i dette "
"program. Udpak den venligst"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Kan ikke gemme spil pх plads %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Indlцser spil..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Gemmer spil..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM har konstateret, at du har gamle gemmer for Nippon Safes, der skal "
-"omdјbes.\n"
-"De gamle navne er ikke lцngere understјttet, sх du vil ikke vцre i stand til "
-"at indlцse dine spil, hvis du ikke konvertere dem.\n"
-"\n"
-"Tryk pх OK for at konvertere dem nu, ellers vil du blive spurgt nцste gang.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM konverterede med succes alle dine gemmer."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM udskrev nogle advarsler i dit konsol vindue, og kan ikke garantere "
-"at alle dine filer er blevet konverteret.\n"
-"\n"
-"Venligst rapportщr til holdet."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Ugyldigt navn for gemmer"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Op/Forstјr/Flyt frem/Хben dјre"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Ned/Forminsk"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Vis/Skjul Oversigtsbakke"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Vis/Skjul Biochip bakke"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Handling/Vцlg"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Skift Center Data Display"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Vis/Skjul Info skцrm"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Vis/Skjul Pause menu"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME OPL emulator"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox OPL emulator"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Den valgte lydenhed '%s' blev ikke fundet (kan f.eks vцre slukket eller "
-"afbrudt)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Forsјger at falde tilbage til den nцste tilgцngelig enhed..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Den valgte lydenhed '%s' kan ikke bruges. Se log filen for mere information."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Den foretrukne lydenhed '%s' blev ikke fundet (kan f.eks vцre slukket eller "
-"afbrudt)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Den foretrukne lydenhed '%s' kan ikke bruges. Se log filen for mere "
-"information."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Ingen musik"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Amiga lyd emulator"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib emulator"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS emulator (IKKE IMPLEMENTERET)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64 lyd emulator"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Initialisere MT-32 emulator"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32 emulator"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC Speaker emulator"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM PCjr emulator"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Tasteoversigt:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Aktiv)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Aktiv)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr "(Blokeret)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Spil)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "ScummVM Hovedmenu"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~V~enstrehхndstilstand "
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~I~ndy kamp styring"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Vis muse markјr"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Hцft til hjјrner"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Touch X forskydning"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Touch Y forskydning"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Brug bцrbar museplade-agtig markјr kontrol"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Tryk for venstre klik, dobbelt tryk for hјjre klik"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Fјlsomhed"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Skalering af јverste skцrm ved opstart:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Hovedskцrm skalering"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Hardware skalering (hurtig, men lav kvalitet)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Software skalering (god kvalitet, men langsommere)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Ikke skaleret (du skal rulle til venstre og hјjre)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Lysstyrke:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Hјj lydkvalitet (langsommere) (genstart)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Deaktiver slukning"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Muse-klik-og-trцk tilstand aktiveret."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Muse-klik-og-trцk tilstand deaktiveret."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Pegeplade tilstand aktiveret."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Pegeplade tilstand deaktiveret."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Klik tilstand"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Venstre klik"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Miderste klik"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Hјjre klik"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Skjul ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Skjul andre"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Vis alle"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Vindue"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimer"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (ingen skalering)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal (ingen skalering)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Aktivщr billedformat korrektion"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Deaktivщr billedformat korrektion"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Aktive grafik filtre:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Vindue tilstand"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Bevar"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Aktuel videotilstand"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Aktuel skalering"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Aktiv filter tilstand: Linцr"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Aktiv filter tilstand: Nцrmest"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Op"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Ned"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Venstre"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Hјjre"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zone"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multi funktion"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Skift person"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Spring tekst over"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Hurtig tilstand"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Fejlsјger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Global menu"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Virtuelt tastatur"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Tastetildeling"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Vil du afslutte?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Video"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Aktuel videotilstand:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Double-strike (ikke-interlaced)"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Vandret underskan:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Lodret underskan:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Input"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "GC Pad fјlsomhed:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "GC Pad acceleration:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Status:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Ukendt"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Montere DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Afmontere DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Server:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Mappe:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Bruger:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Kodeord:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Init netvцrk"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Montere SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Afmonterer SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD montering lykkedes"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Fejl ved montering af DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD ikke monteret"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Netvцrk oppe, delt mappe monteret"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Netvцrk oppe"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", fejl imens montering af delt mappe"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", delt mappe ikke monteret"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Netvцrk nede"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Initialisere netvцrk"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Tidsgrцnse nхet ved initialisering af netvцrk"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Netvцrk ikke initialiseret (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Skjul vцrktјjslinje"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Vis tastatur"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Lyd til/fra"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Hјjre klik"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Vis/skjul markјr"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Fri udsigt"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Formindsk"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Forstјr"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Tildel taster"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Pil op"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Pil ned"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Pil til venstre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Pil til hјjre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Vil du indlцse eller gemme spillet?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Er du sikker pх at du vil afslutte? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Tastatur"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Drej"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Brug SDL driver"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Vis"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Vil du udfјre en automatisk skanning ?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Tildel hјjreklikshandling"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Du skal tildele en tast til 'Hјjreklik' handlingen for at spille dette spil"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Tildel \"skjul vцrktјjslinje\" handling"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Du skal tildele en tast til 'Skjul vцrktјjslinje' handlingen for at spille "
-"dette spil"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Tildel Formindsk handling (valgfri)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Tildel Forstјr handling (valgfri)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Glem ikke at tildele en tast til 'Skjul vцrktјjslinje' handling for at se "
-"hele oversigten"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Vil du virkelig gх tilbage til oversigten?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Oversigt"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Vil du virkelig afslutte?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Touchscreen 'Tap Mode' - Venstre Klik"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Touchscreen 'Tap Mode' - Hјjre Klik"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Touchscreen 'Tap Mode' - Henover (Ingen Klik)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Maximal lydstyrke"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Tilfјj flere..."
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Hцver lydstyrke"
+#~ msgid "Mass Add..."
+#~ msgstr "Tilfјj flere..."
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Minimal lydstyrke"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr "Sluk for Generel MIDI kortlцgning for spil med Roland MT-32 lydspor"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Sцnker lydstyrke"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standard (16bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Touchscreen 'Tap Mode' - Henover (DPad Klik)"
+#~ msgid "Alternative intro"
+#~ msgstr "Alternativ intro"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Sјg efter opdateringer..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Brug en alternativ spil intro (kun CD version)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Enkelt hјjre klik"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "MPEG2 filmsekvenser understјttes ikke lцngere"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Flyt kun"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Escape tast"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Bevar"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Spil menu"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Vis tastatur"
+#~ msgid "Current display mode"
+#~ msgstr "Aktuel videotilstand"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Kontrollщr mus"
+#~ msgid "Current scale"
+#~ msgstr "Aktuel skalering"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Klik aktiveret"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Aktiv filter tilstand: Linцr"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Klik deaktiveret"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Aktiv filter tilstand: Nцrmest"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Aktivщr Roland GS tilstand"
diff --git a/po/de_DE.po b/po/de_DE.po
index 7275e136f2..21e70648c2 100644
--- a/po/de_DE.po
+++ b/po/de_DE.po
@@ -7,11 +7,10 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.5.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-04-24 22:01+0100\n"
"Last-Translator: Simon Sawatzki <SimSaw@gmx.de>\n"
-"Language-Team: Simon Sawatzki <SimSaw@gmx.de>, Lothar Serra Mari "
-"(retired)\n"
+"Language-Team: Simon Sawatzki <SimSaw@gmx.de>, Lothar Serra Mari (retired)\n"
"Language: Deutsch\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-1\n"
@@ -53,15 +52,15 @@ msgid "Go up"
msgstr "Pfad hoch"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Abbrechen"
@@ -69,26 +68,26 @@ msgstr "Abbrechen"
msgid "Choose"
msgstr "Auswфhlen"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Schlieпen"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Mausklick"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Tastatur anzeigen"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Tasten neu zuweisen"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Vollbild EIN/AUS"
@@ -100,21 +99,21 @@ msgstr "Eine Aktion zum Zuweisen auswфhlen"
msgid "Map"
msgstr "Zuweisen"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -140,15 +139,15 @@ msgstr "Bitte eine Aktion auswфhlen"
msgid "Press the key to associate"
msgstr "Taste drќcken, um sie zuzuweisen"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Spiel"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "Kennung:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -156,29 +155,29 @@ msgstr ""
"Kurzer Spielname, um die Spielstфnde zuzuordnen und das Spiel von der "
"Kommandozeile aus starten zu kіnnen"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Name:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Voller Name des Spiels"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Name:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Sprache:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -186,150 +185,150 @@ msgstr ""
"Sprache des Spiels. Diese Funktion wird nicht eine spanische Version des "
"Spiels in eine deutsche verwandeln."
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<Standard>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plattform:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Plattform, fќr die das Spiel ursprќnglich erstellt wurde"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Plattform:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Engine"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafik"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Globale Grafikeinstellungen ќbergehen"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Globale Grafikeinstellungen ќbergehen"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Audio"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Globale Audioeinstellungen ќbergehen"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Globale Audioeinstellungen ќbergehen"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Lautstфrke"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Lautst."
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Globale Lautstфrke-Einstellungen ќbergehen"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Globale Lautstфrkeeinstellungen ќbergehen"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Globale MIDI-Einstellungen ќbergehen"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Globale MIDI-Einstellungen ќbergehen"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Globale MT-32-Einstellungen ќbergehen"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Globale MT-32-Einstellungen ќbergehen"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Pfade"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Pfade"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Spielpfad:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Spielpfad:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Extrapfad:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Legt das Verzeichnis fќr zusфtzliche Spieldateien fest."
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Extrapfad:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Spielstфnde:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Legt fest, wo die Spielstфnde abgelegt werden."
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Speichern:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -338,136 +337,137 @@ msgctxt "path"
msgid "None"
msgstr "Keiner"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Standard"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "SoundFont auswфhlen"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Verzeichnis mit Spieldateien auswфhlen"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Verzeichnis mit zusфtzlichen Dateien auswфhlen"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Verzeichnis fќr Spielstфnde auswфhlen"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Diese Spielkennung ist schon vergeben. Bitte eine andere wфhlen."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~B~eenden"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "ScummVM beenden"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "мbe~r~"
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "мber ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~ptionen"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Globale ScummVM-Einstellungen bearbeiten"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~S~tarten"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Ausgewфhltes Spiel starten"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~L~aden..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Spielstand fќr ausgewфhltes Spiel laden"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "Spiel ~h~inzufќgen"
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr ""
"Umschalttaste (Shift) gedrќckt halten, um Verzeichnisse nach Spielen zu "
"durchsuchen"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "Spielo~p~tionen"
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Spieloptionen фndern"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "Spiel ~e~ntfernen"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Spiel aus der Liste entfernen. Die Spieldateien bleiben erhalten."
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~H~inzufќgen"
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "Spielo~p~tion"
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~E~ntfernen"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "In Spieleliste suchen"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Suchen:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Spiel laden:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Laden"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -475,7 +475,8 @@ msgstr ""
"Mіchten Sie wirklich den PC nach Spielen durchsuchen? Mіglicherweise wird "
"dabei eine grіпere Menge an Spielen hinzugefќgt."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -483,7 +484,8 @@ msgstr ""
msgid "Yes"
msgstr "Ja"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -491,40 +493,36 @@ msgstr "Ja"
msgid "No"
msgstr "Nein"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM konnte das gewфhlte Verzeichnis nicht іffnen!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM konnte im gewфhlten Verzeichnis kein Spiel finden!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Spiel auswфhlen:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Mіchten Sie wirklich diese Spielkonfiguration entfernen?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Mіchten Sie ein Spiel laden oder speichern?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr ""
"Fќr dieses Spiel wird das Laden aus der Spieleliste heraus nicht unterstќtzt."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM konnte keine Engine finden, um das Spiel zu starten!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Durchsuchen"
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Durchsuchen"
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... lфuft..."
@@ -625,8 +623,7 @@ msgstr ""
"Spezielle Farbmischungsmethoden werden von manchen Spielen unterstќtzt."
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Vollbildmodus"
@@ -760,14 +757,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Echte Roland-MT-32-Emulation (kein GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Roland-GS-Modus (GM-Zuweisung deaktiviert)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Schaltet die General-MIDI-Zuweisung fќr Spiele mit Roland-MT-32-Audiospur "
-"aus."
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -961,15 +959,15 @@ msgstr "Listenansicht"
msgid "Grid view"
msgstr "Rasteransicht"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Kein Datum gespeichert"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Keine Zeit gespeichert"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Keine Spielzeit gespeichert"
@@ -981,43 +979,43 @@ msgstr "Lіschen"
msgid "Do you really want to delete this savegame?"
msgstr "Diesen Spielstand wirklich lіschen?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Datum: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Zeit: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Spieldauer: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Unbenannt"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Vor"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Zurќck"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Neuer Spielstand"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Erstellt einen neuen Spielstand."
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Name: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Geben Sie eine Beschreibung fќr Speicherplatz %d ein:"
@@ -1026,29 +1024,32 @@ msgstr "Geben Sie eine Beschreibung fќr Speicherplatz %d ein:"
msgid "Select a Theme"
msgstr "Thema auswфhlen"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "GFX ausgeschaltet"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "GFX ausgeschaltet"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Standard-Renderer (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Standard"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Kantenglфttung (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Kantenglфttung (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1138,37 +1139,39 @@ msgstr "Setzt alle FluidSynth-Einstellungen auf ihre Standard-Werte zurќck."
#: gui/fluidsynth-dialog.cpp:216
msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
-msgstr "Mіchten Sie wirklich alle FluidSynth-Einstellungen auf ihre Standard-Werte zurќcksetzen?"
+msgstr ""
+"Mіchten Sie wirklich alle FluidSynth-Einstellungen auf ihre Standard-Werte "
+"zurќcksetzen?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Engine unterstќtzt den Debug-Level \"%s\" nicht."
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menќ"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "мberspringen"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pause"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Zeile ќberspringen"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Fehler beim Ausfќhren des Spiels:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Konnte keine Spiel-Engine finden, die dieses Spiel starten kann."
@@ -1236,18 +1239,18 @@ msgstr "Abbruch durch Benutzer"
msgid "Unknown error"
msgstr "Unbekannter Fehler"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Das Spiel im Verzeichnis \"%s\" scheint nicht bekannt zu sein."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Bitte geben Sie die folgenden Daten auf Englisch an das ScummVM-Team weiter "
"sowie"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr ""
"den Namen des Spiels, das Sie hinzufќgen wollten, als auch die Version/"
@@ -1287,21 +1290,21 @@ msgid "~R~eturn to Launcher"
msgstr "Zur Spiele~l~iste"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Speichern:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Speichern"
@@ -1337,23 +1340,23 @@ msgstr "~A~bbrechen"
msgid "~K~eys"
msgstr "~T~asten"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Konnte Farbenformat nicht initialisieren."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Konnte nicht zu Grafikmodus wechseln: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Konnte Einstellung fќr Seitenverhфltniskorrektur nicht anwenden."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Konnte Einstellung fќr Vollbildmodus nicht anwenden."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1369,7 +1372,7 @@ msgstr ""
"Lesen Sie die Liesmich-Datei fќr\n"
"weitere Informationen."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1384,7 +1387,7 @@ msgstr ""
"Spiel hіren zu kіnnen. Lesen Sie die\n"
"Liesmich-Datei fќr weitere Informationen."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1393,7 +1396,7 @@ msgstr ""
"Laden des Spielstands %s fehlgeschlagen! Bitte lesen Sie die Liesmich-Datei "
"fќr grundlegende Informationen und Anweisungen zu weiterer Hilfe."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1404,34 +1407,763 @@ msgstr ""
"und jegliche Spielstфnde, die Sie erstellen, kіnnten in zukќnftigen "
"Versionen von ScummVM nicht mehr funktionieren."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Trotzdem starten"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME-OPL-Emulator"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox-OPL-Emulator"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Das ausgewфhlte Audiogerфt \"%s\" wurde nicht gefunden (kіnnte "
+"beispielsweise ausgeschaltet oder nicht angeschlossen sein)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Es wird versucht, auf das nфchste verfќgbare Gerфt zurќckzugreifen."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Das ausgewфhlte Audiogerфt \"%s\" kann nicht verwendet werden. Schauen Sie "
+"fќr weitere Informationen in der Log-Datei nach."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Das bevorzugte Audiogerфt \"%s\" wurde nicht gefunden (kіnnte beispielsweise "
+"ausgeschaltet oder nicht angeschlossen sein)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Das bevorzugte Audiogerфt \"%s\" kann nicht verwendet werden. Schauen Sie "
+"fќr weitere Informationen in der Log-Datei nach."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Keine Musik"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Amiga-Audio-Emulator"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib-Emulator"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple-II-GS-Emulator (NICHT INTEGRIERT)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64-Audio-Emulator"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "MT-32-Emulator wird gestartet"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32-Emulation"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC-Lautsprecher-Emulator"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM-PCjr-Emulator"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Tasten-Layout:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Aktuell)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Aktiv)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Blockiert)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Spiel)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~S~chlieпen"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "ScummVM-Hauptmenќ"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~L~inke-Hand-Modus"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~K~ampfsteuerung fќr Indiana Jones"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Mauszeiger anzeigen"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "An Ecken anheften"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Zu X-Position gehen"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Zu Y-Position gehen"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Den Trackpad-Style fќr Maussteuerung benutzen"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Tippen fќr Linksklick, Doppeltippen fќr Rechtsklick"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Empfindlichkeit"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Vergіпerung des oberen Bildschirms:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Hauptbildschirm-Skalierung:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Hardware-Skalierung (schnell, aber schlechte Qualitфt)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Software-Skalierung (gute Qualitфt, aber langsamer)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Nicht skalieren (Sie mќssen nach links und nach rechts scrollen)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Helligkeit:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Hohe Audioqualitфt (lansamer) (erfordert Neustart)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Stromsparmodus abschalten"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Maus-klick-und-zieh-Modus aktiviert."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Maus-klick-und-zieh-Modus ausgeschaltet."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Touchpad-Modus aktiviert."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Touchpad-Modus ausgeschaltet."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Klickmodus"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Linksklick"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Mittelklick"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Rechtsklick"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "ScummVM ausblenden"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Andere ausblenden"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Alle einblenden"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Fenster"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Im Dock ablegen"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (keine Skalierung)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal ohn.Skalieren"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Seitenverhфltniskorrektur an"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Seitenverhфltniskorrektur aus"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Aktiver Grafikfilter:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Fenstermodus"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "жffne"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Hoch"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Runter"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Links"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Rechts"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zone"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multifunktion"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Figur wechseln"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Text ќberspringen"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Schneller Modus"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Beenden"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debugger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Hauptmenќ"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Virtuelle Tastatur"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Tasten zuordnen"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Mіchten Sie beenden?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Video"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Aktueller Grafikmodus:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Doppelzeilen (kein Zeilensprungverfahren)"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Horizontale Bildverkleinerung:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Vertikale Bildverkleinerung:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Eingabe"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "GC-Pad-Empfindlichkeit:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "GC-Pad-Beschleunigung:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Status:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Unbekannt"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "DVD einbinden"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "DVD aushфngen"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Server:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "жffentliches Verzeichnis:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Benutzername:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Passwort:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Netzwerk starten"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "SMB einbinden"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "SMB aushфngen"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD erfolgreich eingebunden"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Fehler beim Einbinden der DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD nicht eingebunden"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Netzwerk gestartet, іffentliches Verzeichnis eingebunden"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Netzwerk gestartet"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", Fehler beim Einbinden des іffentlichen Verzeichnisses"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", іffentliches Verzeichnis nicht eingebunden"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Netzwerk ist aus."
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Netzwerk wird gestartet"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Zeitќberschreitung beim Starten des Netzwerks"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Netzwerk nicht gestartet (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Werkzeugleiste verbergen"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Tastatur zeigen"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Ton ein/aus"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Rechtsklick"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Cursor zeigen/verbergen"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Freie Ansicht"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Herauszoomen"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Hineinzoomen"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Tasten zuweisen"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Zeiger hoch"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Zeiger runter"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Zeiger nach links"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Zeiger nach rechts"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Mіchten Sie ein Spiel laden oder speichern?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Mіchten Sie wirklich beenden? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Tastatur"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Drehen"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Verwende SDL-Treiber "
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Anzeige "
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Mіchten Sie eine automatische Suche durchfќhren?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Aktion \"Rechtsklick\" zuweisen"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Sie mќssen der Aktion \"Rechtsklick\" eine Taste zuweisen, um dieses Spiel "
+"spielen zu kіnnen."
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Aktion \"Werkzeugleiste verbergen\" zuweisen"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Sie mќssen der Aktion \"Werkzeugleiste verbergen\" eine Taste zuweisen, um "
+"dieses Spiel spielen zu kіnnen."
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Aktion \"Herauszoomen\" zuweisen (optional)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Aktion \"Hineinzoomen\" zuweisen (optional)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Vergessen Sie nicht, der Aktion \"Werkzeugleiste verbergen\" eine Taste "
+"zuzuweisen, um das ganze Inventar sehen zu kіnnen."
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Mіchten Sie wirklich zur Spieleliste zurќckkehren?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Spieleliste"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Mіchten Sie wirklich beenden?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Berќhrungsbildschirm-Tipp-Modus - Linksklick"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Berќhrungsbildschirm-Tipp-Modus - Rechtsklick"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Berќhrungsbildschirm-Tipp-Modus - schweben (kein Klick)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Hіchste Lautstфrke"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Lautstфrke hіher"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Niedrigste Lautstфrke"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Lautstфrke niedriger"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Berќhrungsbildschirm-Tipp-Modus - schweben (DPad-Klicks)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Suche nach Aktualisierungen..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Einmal Rechtsklick"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Nur bewegen"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Escape-Taste"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Spielmenќ"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Ziffernblock zeigen"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Maus steuern"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Klicken aktiviert"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Klicken deaktiviert"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Originale Spielstand-Menќs"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Verwendet die originalen Menќs zum Speichern und Laden statt der von ScummVM."
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Spiel laden:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Laden"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Konnte Spielstand nicht aus folgender Datei laden:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Konnte Spielstand nicht in folgender Datei speichern:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Spielstand erfolgreich in folgender Datei gespeichert:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Zwischensequenz \"%s\" nicht gefunden!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1441,8 +2173,8 @@ msgid ""
"Press OK to convert them now, otherwise you will be asked again the next "
"time you start the game.\n"
msgstr ""
-"ScummVM hat erkannt, dass Sie alte Spielstфnde von Drascula haben, "
-"die umgewandelt werden sollten.\n"
+"ScummVM hat erkannt, dass Sie alte Spielstфnde von Drascula haben, die "
+"umgewandelt werden sollten.\n"
"Das alte Speicherformat wird nicht mehr unterstќtzt, also kіnnen Sie diese "
"Spielstфnde unkonvertiert nicht laden.\n"
"\n"
@@ -1457,27 +2189,306 @@ msgstr "Modus fќr helle Palette verwenden"
msgid "Display graphics using the game's bright palette"
msgstr "Zeigt Grafiken ќber helle Spielpalette an."
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Konnte Spielstand aus Datei nicht laden."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Konnte Spielstand nicht in Datei speichern."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Konnte Datei nicht lіschen."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Schnelles Film-Tempo"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Spielt Filme mit erhіhter Geschwindigkeit ab."
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Konnte Spielstand nicht speichern."
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Studio-Publikum"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Aktiviert Studio-Publikum."
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "мberspring-Unterstќtzung"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Erlaubt das мberspringen von Textteilen und Zwischensequenzen."
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Helium-Modus"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Aktiviert Helium-Modus."
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Gleichmфпiges Scrollen"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Aktiviert gleichmфпiges Scrollen beim Gehen."
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Richtungspfeil-Mauszeiger"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Aktiviert Richtungspfeil-Mauszeiger."
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Trefferpunkte-Balken"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Aktiviert grafische Trefferpunkte-Balken."
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Attacke 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Attacke 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Attacke 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Nach vorn bewegen"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Nach hinten bewegen"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Nach links rutschen"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Nach rechts rutschen"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Nach links drehen"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Nach rechts drehen"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Ausruhen"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Optionen"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Zauberspruch auswфhlen"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Sie scheinen ein General-MIDI-Gerфt zu\n"
+"verwenden, aber das Spiel unterstќtzt nur\n"
+"Roland MT32 MIDI. Es wird versucht, die\n"
+"Roland-MT32-Instrumente denen von\n"
+"General MIDI zuzuordnen. Es ist dennoch\n"
+"mіglich, dass ein paar Musikstќcke nicht\n"
+"richtig abgespielt werden."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Schneller ~R~aumwechsel aktiviert"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "мber~g~фnge aktiviert"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Seite ~w~egwerfen"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~K~arte anzeigen"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Haupt~m~enќ"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~W~assereffekt aktiviert"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Kann Spiel nicht speichern auf Speicherplatz %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Spiel wird geladen..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Spiel wird gespeichert..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM hat erkannt, dass Sie alte Spielstфnde von Nippon Safes haben, die "
+"umbenannt werden sollten.\n"
+"Die alten Dateinamen werden nicht mehr unterstќtzt, also kіnnen Sie diese "
+"Spielstфnde unkonvertiert nicht laden.\n"
+"\n"
+"Klicken Sie auf OK, um diese jetzt umzuwandeln, sonst werden Sie erneut "
+"gefragt, wenn Sie nфchstes Mal dieses Spiel starten.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM hat alle Speicherstфnde erfolgreich umgewandelt."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM hat ein paar Warnungen im Konsolenfenster ausgegeben und kann nicht "
+"gewфhrleisten, dass alle Speicherstфnde umgewandelt wurden.\n"
+"\n"
+"Bitte berichten Sie dies dem Team auf Englisch."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Ungќltiger Spielstandname"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Hoch/Hineinzoomen/Nach vorn/Tќren іffnen"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Runter/Hinauszoomen"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Inventarleiste anzeigen/verbergen"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Biochip-Leiste anzeigen/verbergen"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Aktion/Auswфhlen"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Mittige Datenanzeige wechseln"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Info-Bildschirm anzeigen/verbergen"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Pause-Menќ anzeigen/verbergen"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "Antifehlerdiffusion fќr EGA"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Aktiviert die Aufhebung der Fehlerdiffusion in EGA-Spielen."
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Digitale Sound-Effekte bevorzugen"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Bevorzugt digitale Sound-Effekte statt synthethisierter."
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "IMF/Yamaha FB-01 fќr MIDI-Ausgabe verwenden"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1485,30 +2496,30 @@ msgstr ""
"Verwendet eine Music-Feature-Karte von IBM oder ein Yamaha-FB-01-FM-"
"Synthetisierungsmodul fќr die MIDI-Ausgabe."
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "CD-Ton verwenden"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "Verwendet CD-Ton anstatt des Tons im Spiel, sofern verfќgbar."
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Windows-Mauszeiger verwenden"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Verwendet die Windows-Mauszeiger (kleiner und schwarz-weiп) anstatt der von "
"DOS."
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Silberne Mauszeiger verwenden"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1550,15 +2561,6 @@ msgstr "Mіchten Sie wirklich beenden? (J/N)J"
msgid "Play"
msgstr "Spielen"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Beenden"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Legen Sie eine Spielstand-Disk ein."
@@ -1607,11 +2609,6 @@ msgstr "~Z~urќck"
msgid "~N~ext"
msgstr "~W~eiter"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~S~chlieпen"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Nur Sprachausgabe"
@@ -1637,10 +2634,6 @@ msgstr "Wфhle einen Schwierigkeitsgrad."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Fќr Hilfe schaue ins Loom-Handbuch."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Standard"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Anfфnger"
@@ -2162,7 +3155,7 @@ msgstr "Nach rechts fliegen"
msgid "Fly to lower right"
msgstr "Nach unten rechts fliegen"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2172,40 +3165,7 @@ msgstr ""
"Roland-Upgrade von LucasArts, aber %s\n"
"fehlt. Stattdessen wird AdLib verwendet."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Konnte Spielstand nicht in folgender Datei speichern:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Konnte Spielstand nicht aus folgender Datei laden:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Spielstand erfolgreich in folgender Datei gespeichert:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2216,192 +3176,6 @@ msgstr ""
"im Startmenќ von ScummVM und wфhlen das Verzeichnis \"Maniac\" im "
"Verzeichnis dieses Spiels aus."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Schneller ~R~aumwechsel aktiviert"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "мber~g~фnge aktiviert"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Seite ~w~egwerfen"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~K~arte anzeigen"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Haupt~m~enќ"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~W~assereffekt aktiviert"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Zwischensequenz \"%s\" nicht gefunden!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Konnte Spielstand aus Datei nicht laden."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Konnte Spielstand nicht in Datei speichern."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Konnte Datei nicht lіschen."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Schnelles Film-Tempo"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Spielt Filme mit erhіhter Geschwindigkeit ab."
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Konnte Spielstand nicht speichern."
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Studio-Publikum"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Aktiviert Studio-Publikum."
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "мberspring-Unterstќtzung"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Erlaubt das мberspringen von Textteilen und Zwischensequenzen."
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Helium-Modus"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Aktiviert Helium-Modus."
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Gleichmфпiges Scrollen"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Aktiviert gleichmфпiges Scrollen beim Gehen."
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Richtungspfeil-Mauszeiger"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Aktiviert Richtungspfeil-Mauszeiger."
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Trefferpunkte-Balken"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Aktiviert grafische Trefferpunkte-Balken."
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Attacke 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Attacke 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Attacke 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Nach vorn bewegen"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Nach hinten bewegen"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Nach links rutschen"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Nach rechts rutschen"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Nach links drehen"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Nach rechts drehen"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Ausruhen"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Optionen"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Zauberspruch auswфhlen"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Sie scheinen ein General-MIDI-Gerфt zu\n"
-"verwenden, aber das Spiel unterstќtzt nur\n"
-"Roland MT32 MIDI. Es wird versucht, die\n"
-"Roland-MT32-Instrumente denen von\n"
-"General MIDI zuzuordnen. Es ist dennoch\n"
-"mіglich, dass ein paar Musikstќcke nicht\n"
-"richtig abgespielt werden."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Alternativer Vorspann"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Verwendet einen alternativen Vorspann (nur bei CD-Version)."
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2428,23 +3202,26 @@ msgstr "Disketten-Vorspann"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Verwendet den Vorspann der Diskettenversion (nur bei CD-Version)."
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr ""
"PSX-Zwischensequenz \"%s\" kann in Palettenmodus nicht wiedergegeben werden."
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"DXA-Zwischensequenzen gefunden, aber ScummVM wurde ohne Zlib-Unterstќtzung "
"erstellt."
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "MPEG2-Zwischensequenzen werden nicht mehr unterstќtzt."
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"PSX-Zwischensequenzen gefunden, aber ScummVM wurde ohne Unterstќtzung fќr "
+"RGB-Farben erstellt."
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Zwischensequenz \"%s\" gefunden"
@@ -2488,13 +3265,21 @@ msgstr "Den neuen behalten"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Das ist das Ende der Demo von Broken Sword 1 (Baphomets Fluch 1)."
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"PSX-Zwischensequenzen gefunden, aber ScummVM wurde ohne Unterstќtzung fќr "
"RGB-Farben erstellt."
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"DXA-Zwischensequenzen gefunden, aber ScummVM wurde ohne Zlib-Unterstќtzung "
+"erstellt."
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Objektnamen zeigen"
@@ -2507,8 +3292,8 @@ msgstr "Zeigt Objektbeschriftungen bei Mausberќhrung an."
msgid ""
"You're missing the 'teenagent.dat' file. Get it from the ScummVM website"
msgstr ""
-"Ihnen fehlt die Datei teenagent.dat. Laden Sie sich diese von der "
-"ScummVM-Website unter http://www.scummvm.org herunter."
+"Ihnen fehlt die Datei teenagent.dat. Laden Sie sich diese von der ScummVM-"
+"Website unter http://www.scummvm.org herunter."
#: engines/teenagent/resources.cpp:115
msgid ""
@@ -2518,792 +3303,51 @@ msgstr ""
"Die Datei teenagent.dat ist gepackt und zlib zum Entpacken wurde in dieser "
"ausfќhrbaren Datei nicht miteingebunden. Bitte entpacken Sie die Datei."
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Kann Spiel nicht speichern auf Speicherplatz %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Spiel wird geladen..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Spiel wird gespeichert..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM hat erkannt, dass Sie alte Spielstфnde von Nippon Safes haben, die "
-"umbenannt werden sollten.\n"
-"Die alten Dateinamen werden nicht mehr unterstќtzt, also kіnnen Sie diese "
-"Spielstфnde unkonvertiert nicht laden.\n"
-"\n"
-"Klicken Sie auf OK, um diese jetzt umzuwandeln, sonst werden Sie erneut "
-"gefragt, wenn Sie nфchstes Mal dieses Spiel starten.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM hat alle Speicherstфnde erfolgreich umgewandelt."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM hat ein paar Warnungen im Konsolenfenster ausgegeben und kann nicht "
-"gewфhrleisten, dass alle Speicherstфnde umgewandelt wurden.\n"
-"\n"
-"Bitte berichten Sie dies dem Team auf Englisch."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Ungќltiger Spielstandname"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Hoch/Hineinzoomen/Nach vorn/Tќren іffnen"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Runter/Hinauszoomen"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Inventarleiste anzeigen/verbergen"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Biochip-Leiste anzeigen/verbergen"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Aktion/Auswфhlen"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Mittige Datenanzeige wechseln"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Info-Bildschirm anzeigen/verbergen"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Pause-Menќ anzeigen/verbergen"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME-OPL-Emulator"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox-OPL-Emulator"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Das ausgewфhlte Audiogerфt \"%s\" wurde nicht gefunden (kіnnte "
-"beispielsweise ausgeschaltet oder nicht angeschlossen sein)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Es wird versucht, auf das nфchste verfќgbare Gerфt zurќckzugreifen."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Das ausgewфhlte Audiogerфt \"%s\" kann nicht verwendet werden. Schauen Sie "
-"fќr weitere Informationen in der Log-Datei nach."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Das bevorzugte Audiogerфt \"%s\" wurde nicht gefunden (kіnnte beispielsweise "
-"ausgeschaltet oder nicht angeschlossen sein)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Das bevorzugte Audiogerфt \"%s\" kann nicht verwendet werden. Schauen Sie "
-"fќr weitere Informationen in der Log-Datei nach."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Keine Musik"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Amiga-Audio-Emulator"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib-Emulator"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple-II-GS-Emulator (NICHT INTEGRIERT)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64-Audio-Emulator"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "MT-32-Emulator wird gestartet"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32-Emulation"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC-Lautsprecher-Emulator"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM-PCjr-Emulator"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Tasten-Layout:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Aktuell)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Aktiv)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Blockiert)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Spiel)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "ScummVM-Hauptmenќ"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~L~inke-Hand-Modus"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~K~ampfsteuerung fќr Indiana Jones"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Mauszeiger anzeigen"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "An Ecken anheften"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Zu X-Position gehen"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Zu Y-Position gehen"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Den Trackpad-Style fќr Maussteuerung benutzen"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Tippen fќr Linksklick, Doppeltippen fќr Rechtsklick"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Empfindlichkeit"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Vergіпerung des oberen Bildschirms:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Hauptbildschirm-Skalierung:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Hardware-Skalierung (schnell, aber schlechte Qualitфt)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Software-Skalierung (gute Qualitфt, aber langsamer)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Nicht skalieren (Sie mќssen nach links und nach rechts scrollen)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Helligkeit:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Hohe Audioqualitфt (lansamer) (erfordert Neustart)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Stromsparmodus abschalten"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Maus-klick-und-zieh-Modus aktiviert."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Maus-klick-und-zieh-Modus ausgeschaltet."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Touchpad-Modus aktiviert."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Touchpad-Modus ausgeschaltet."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Klickmodus"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Linksklick"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Mittelklick"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Rechtsklick"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "ScummVM ausblenden"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Andere ausblenden"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Alle einblenden"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Fenster"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Im Dock ablegen"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (keine Skalierung)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal ohn.Skalieren"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Seitenverhфltniskorrektur an"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Seitenverhфltniskorrektur aus"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Aktiver Grafikfilter:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Fenstermodus"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL: normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL: beibehalten"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL: original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Aktueller Grafikmodus"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Aktueller Vergrіпerungsfaktor"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Aktiver Filtermodus: linear"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Aktiver Filtermodus: nфchste Nachbarn"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Hoch"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Runter"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Links"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Rechts"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zone"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multifunktion"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Figur wechseln"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Text ќberspringen"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Schneller Modus"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debugger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Hauptmenќ"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Virtuelle Tastatur"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Tasten zuordnen"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Mіchten Sie beenden?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Video"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Aktueller Grafikmodus:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Doppelzeilen (kein Zeilensprungverfahren)"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Horizontale Bildverkleinerung:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Vertikale Bildverkleinerung:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Eingabe"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "GC-Pad-Empfindlichkeit:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "GC-Pad-Beschleunigung:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Status:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Unbekannt"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "DVD einbinden"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "DVD aushфngen"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Server:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "жffentliches Verzeichnis:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Benutzername:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Passwort:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Netzwerk starten"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "SMB einbinden"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "SMB aushфngen"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD erfolgreich eingebunden"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Fehler beim Einbinden der DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD nicht eingebunden"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Durchsuchen"
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Netzwerk gestartet, іffentliches Verzeichnis eingebunden"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Netzwerk gestartet"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", Fehler beim Einbinden des іffentlichen Verzeichnisses"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", іffentliches Verzeichnis nicht eingebunden"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Netzwerk ist aus."
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Netzwerk wird gestartet"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Zeitќberschreitung beim Starten des Netzwerks"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Netzwerk nicht gestartet (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Werkzeugleiste verbergen"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Tastatur zeigen"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Ton ein/aus"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Rechtsklick"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Cursor zeigen/verbergen"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Freie Ansicht"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Herauszoomen"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Hineinzoomen"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Tasten zuweisen"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Zeiger hoch"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Zeiger runter"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Zeiger nach links"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Zeiger nach rechts"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Mіchten Sie ein Spiel laden oder speichern?"
+#~ msgid "Mass Add..."
+#~ msgstr "Durchsuchen"
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Mіchten Sie wirklich beenden? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Tastatur"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Drehen"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Verwende SDL-Treiber "
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Anzeige "
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Mіchten Sie eine automatische Suche durchfќhren?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Aktion \"Rechtsklick\" zuweisen"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Sie mќssen der Aktion \"Rechtsklick\" eine Taste zuweisen, um dieses Spiel "
-"spielen zu kіnnen."
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Aktion \"Werkzeugleiste verbergen\" zuweisen"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Sie mќssen der Aktion \"Werkzeugleiste verbergen\" eine Taste zuweisen, um "
-"dieses Spiel spielen zu kіnnen."
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Aktion \"Herauszoomen\" zuweisen (optional)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Aktion \"Hineinzoomen\" zuweisen (optional)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Vergessen Sie nicht, der Aktion \"Werkzeugleiste verbergen\" eine Taste "
-"zuzuweisen, um das ganze Inventar sehen zu kіnnen."
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Mіchten Sie wirklich zur Spieleliste zurќckkehren?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Spieleliste"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Mіchten Sie wirklich beenden?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Berќhrungsbildschirm-Tipp-Modus - Linksklick"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Berќhrungsbildschirm-Tipp-Modus - Rechtsklick"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Berќhrungsbildschirm-Tipp-Modus - schweben (kein Klick)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Hіchste Lautstфrke"
-
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Lautstфrke hіher"
-
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Niedrigste Lautstфrke"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Schaltet die General-MIDI-Zuweisung fќr Spiele mit Roland-MT-32-Audiospur "
+#~ "aus."
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Lautstфrke niedriger"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standard (16bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Berќhrungsbildschirm-Tipp-Modus - schweben (DPad-Klicks)"
+#~ msgid "Alternative intro"
+#~ msgstr "Alternativer Vorspann"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Suche nach Aktualisierungen..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Verwendet einen alternativen Vorspann (nur bei CD-Version)."
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Einmal Rechtsklick"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "MPEG2-Zwischensequenzen werden nicht mehr unterstќtzt."
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Nur bewegen"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL: normal"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Escape-Taste"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL: beibehalten"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Spielmenќ"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL: original"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Ziffernblock zeigen"
+#~ msgid "Current display mode"
+#~ msgstr "Aktueller Grafikmodus"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Maus steuern"
+#~ msgid "Current scale"
+#~ msgstr "Aktueller Vergrіпerungsfaktor"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Klicken aktiviert"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Aktiver Filtermodus: linear"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Klicken deaktiviert"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Aktiver Filtermodus: nфchste Nachbarn"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Roland-GS-Modus"
diff --git a/po/es_ES.po b/po/es_ES.po
index a859019924..fd70c29eb2 100644
--- a/po/es_ES.po
+++ b/po/es_ES.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.4.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-04-28 16:31+0100\n"
"Last-Translator: Tomсs Maidagan\n"
"Language-Team: \n"
@@ -52,15 +52,15 @@ msgid "Go up"
msgstr "Arriba"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Cancelar"
@@ -68,26 +68,26 @@ msgstr "Cancelar"
msgid "Choose"
msgstr "Aceptar"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Cerrar"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Clic de ratѓn"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Mostrar el teclado"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Asignar teclas"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Activar/Desactivar pantalla completa"
@@ -99,21 +99,21 @@ msgstr "Elige la acciѓn a asociar"
msgid "Map"
msgstr "Asignar"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "Aceptar"
@@ -139,15 +139,15 @@ msgstr "Por favor, selecciona una acciѓn"
msgid "Press the key to associate"
msgstr "Pulsa la tecla a asignar"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Juego"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -155,29 +155,29 @@ msgstr ""
"Identificador usado para las partidas guardadas y para ejecutar el juego "
"desde la lэnea de comando"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nombre:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Tэtulo completo del juego"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nom.:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Idioma:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -185,150 +185,150 @@ msgstr ""
"Idioma del juego. No sirve para pasar al inglщs la versiѓn espaёola de un "
"juego"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<por defecto>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plataforma:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Plataforma para la que se diseёѓ el juego"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Plat.:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Motor"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grсficos"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Ignorar opciones grсficas generales"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Opciones grсficas especэficas"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Sonido"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Ignorar opciones de sonido generales"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Opciones de sonido especэficas"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volumen"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volumen"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Ignorar opciones de volumen generales"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Opciones de volumen especэficas"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Ignorar opciones de MIDI generales"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Opciones de MIDI especэficas"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Ignorar opciones de MT-32 generales"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Opciones de MT-32 especэficas"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Rutas"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Rutas"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Juego:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Juego:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Adicional:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Especifica un directorio para datos adicionales del juego"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Adicional:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Partidas:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Especifica dѓnde guardar tus partidas"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Partidas:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -337,134 +337,135 @@ msgctxt "path"
msgid "None"
msgstr "Ninguna"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Por defecto"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Selecciona un SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Selecciona el directorio del juego"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Selecciona el directorio adicional"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Selecciona el directorio para partidas guardadas"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Esta ID ya estс siendo usada. Por favor, elige otra."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~S~alir"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Salir de ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "Acerca ~d~e"
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Acerca de ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~pciones..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Cambiar opciones generales de ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~J~ugar"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Jugar al juego seleccionado"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~C~argar..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Cargar partida del juego seleccionado"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~A~ёadir juego..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Mantener pulsado Mayњs para aёadir varios juegos"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~E~ditar juego..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Cambiar opciones de juego"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "E~l~iminar juego"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Eliminar el juego de la lista. Los archivos no se borran"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~A~ёadir..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~E~ditar..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "E~l~iminar"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Buscar en la lista de juegos"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Buscar:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Cargar juego:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Cargar"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -472,7 +473,8 @@ msgstr ""
"ПSeguro que quieres ejecutar la detecciѓn masiva? Puede que se aёada un gran "
"nњmero de juegos."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -480,7 +482,8 @@ msgstr ""
msgid "Yes"
msgstr "Sэ"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -488,40 +491,36 @@ msgstr "Sэ"
msgid "No"
msgstr "No"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ЁScummVM no ha podido abrir el directorio!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ЁScummVM no ha encontrado ningњn juego en el directorio!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Elige el juego:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "ПSeguro que quieres eliminar la configuraciѓn de este juego?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "ПQuieres cargar o guardar el juego?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Este juego no permite cargar partidas desde el lanzador."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ЁScummVM no ha podido encontrar ningњn motor capaz de ejecutar el juego!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Aёad. varios"
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Aёadir varios..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... progreso..."
@@ -620,8 +619,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Modos especiales de expansiѓn compatibles con algunos juegos"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Pantalla completa"
@@ -757,12 +755,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Roland MT-32 real (sin emulaciѓn GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Modo Roland GS (desactivar conversiѓn GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "Desactiva la conversiѓn General MIDI en juegos con sonido Roland MT-32"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -951,15 +952,15 @@ msgstr "Modo lista"
msgid "Grid view"
msgstr "Modo mosaico"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "No hay fecha guardada"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "No hay hora guardada"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "No hay tiempo guardado"
@@ -971,43 +972,43 @@ msgstr "Borrar"
msgid "Do you really want to delete this savegame?"
msgstr "ПSeguro que quieres borrar esta partida?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Fecha: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Hora: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Tiempo: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Partida sin nombre"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Siguiente"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Anterior"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Guardar"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Guarda una nueva partida"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nombre:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Introduce una descripciѓn para la ranura %d:"
@@ -1016,29 +1017,32 @@ msgstr "Introduce una descripciѓn para la ranura %d:"
msgid "Select a Theme"
msgstr "Selecciona un tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "GFX desactivados"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "GFX desactivados"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Estсndar (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Estсndar (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Estсndar"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Suavizado (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Suavizado (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1132,35 +1136,35 @@ msgstr ""
"ПSeguro que quieres volver a los valores por defecto de las opciones de "
"FluidSynth?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "El motor no es compatible con el nivel de debug '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menњ"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Saltar"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pausar"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Saltar frase"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Error al ejecutar el juego:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "No se ha podido encontrar ningњn motor capaz de ejecutar el juego"
@@ -1228,16 +1232,16 @@ msgstr "CancelЗlat per l'usuari"
msgid "Unknown error"
msgstr "Error desconocido"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "El juego en '%s' parece ser desconocido."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr "Por favor, envэa al equipo de ScummVM esta informaciѓn junto al nombre"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "del juego que has intentado aёadir y su versiѓn/idioma/etc.:"
@@ -1275,21 +1279,21 @@ msgid "~R~eturn to Launcher"
msgstr "~V~olver al lanzador"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Guardar partida"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Guardar"
@@ -1327,23 +1331,23 @@ msgstr "~C~ancelar"
msgid "~K~eys"
msgstr "~T~eclas"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "No se ha podido iniciar el formato de color."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "No se ha podido cambiar al modo de video: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "No se ha podido aplicar el ajuste de correcciѓn de aspecto"
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "No se ha podido aplicar el ajuste de pantalla completa."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1357,7 +1361,7 @@ msgstr ""
"copiar los archivos del juego al disco duro.\n"
"Consulta el archivo README para mсs detalles."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1371,7 +1375,7 @@ msgstr ""
"poder escuchar la mњsica del juego.\n"
"Consulta el archivo README para mсs detalles."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1381,7 +1385,7 @@ msgstr ""
"README para encontrar informaciѓn bсsica e instrucciones sobre cѓmo obtener "
"mсs ayuda."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1391,34 +1395,762 @@ msgstr ""
"ScummVM. Por lo tanto, puede que sea inestable, y que las partidas que "
"guardes no funcionen en versiones futuras de ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Jugar aun asэ"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Emulador OPL de MAME"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Emulador OPL de DOSBox"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"El dispositivo de sonido seleccionado, '%s', no se ha podido encontrar "
+"(puede estar apagado o desconectado)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Recorriendo al siguiente dispositivo disponible..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"El dispositivo de sonido seleccionado, '%s', no se puede utilizar. Consulta "
+"el registro para mсs informaciѓn."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"El dispositivo de sonido preferido, '%s', no se ha podido encontrar (puede "
+"estar apagado o desconectado)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"El dispositivo de sonido preferido, '%s', no se puede utilizar. Consulta el "
+"registro para mсs informaciѓn."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Sin mњsica"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Emulador de Amiga Audio"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Emulador de AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Emulador de Apple II GS (NO IMPLEMENTADO)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Emulador de C64 Audio"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Iniciando el emulador de MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Emulador de MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Emulador del altavoz de PC"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Emulador de IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Asignaciѓn de teclas:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr "(Activa)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr "(Activa)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr "(Bloqueado)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr "(General)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr "(Juego)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "Cerra~r~"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Menњ principal de ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Modo para ~z~urdos"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Controles para pelear de ~I~ndy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Mostrar el cursor"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Pegar a los bordes"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Compensaciѓn X del toque"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Compensaciѓn Y del toque"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Activar el sistema de control tipo trackpad de los portсtiles"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Un toque para clic izquierdo, dos para clic derecho"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Sensibilidad"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Escalado inicial de la pantalla superior:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Escalado de la pantalla principal:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Escalado por hardware (rсpido, pero de baja calidad)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Escalado por software (buena calidad, pero mсs lento)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Sin escalado (debes desplazar la pantalla a los lados)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Brillo:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Sonido de alta calidad (mсs lento) (reinicio)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Desactivar apagado"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Modo clic-de-ratѓn-y-arrastrar activado."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Modo clic-de-ratѓn-y-arrastrar desactivado."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Modo Touchpad activado."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Modo Touchpad desactivado."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Modo clic"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Clic izquierdo"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Clic central"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Clic derecho"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Ocultar ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Ocultar otros"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Mostrar todo"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Ventana"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimizar"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (sin reescalado)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Activar la correcciѓn de aspecto"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Desactivar la correcciѓn de aspecto"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Filtro de grсficos activo:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Modo ventana"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Abrir"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Arriba"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Abajo"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Izquierda"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Derecha"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zona"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multifunciѓn"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Cambiar personaje"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Saltar texto"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Modo rсpido"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Salir"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debugger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Menњ general"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Teclado virtual"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Asignaciѓn de teclas"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "ПQuieres salir?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Vэdeo"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Modo de vэdeo actual:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Doble golpe"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Underscan horizontal:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Underscan vertical:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Entrada"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Sensibilidad del pad GC:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Aceleraciѓn del pad GC:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Estado:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Desconocido"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Montar DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Desmontar DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Servidor:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Disco compartido:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Usuario:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Contraseёa:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Iniciar red"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Montar SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Desmontar SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD montado con щxito"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Error al montar el DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD no montado"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Red conectada, disco compartido montado"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Red conectada"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", error al montar el disco compartido"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", disco compartido no montado"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Red desconectada"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Iniciando la red"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Se ha excedido el tiempo de iniciaciѓn de red"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Red no iniciada (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Ocultar barra de tareas"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Mostrar teclado"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Sonido activado/desactivado"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Clic derecho"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Mostrar/Ocultar cursor"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Vista libre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Aumentar zoom"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Disminuir zoom"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Asignar teclas"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Arriba"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Abajo"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Izquierda"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Derecha"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "ПQuieres cargar o guardar el juego?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr "ПSeguro que quieres salir?"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Teclado"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Rotar"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Usando el controlador SDL"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Pantalla"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "ПQuieres realizar una bњsqueda automсtica?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Asignar acciѓn 'Clic derecho'"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Debes asignar una tecla a la acciѓn 'Clic derecho' para jugar a este juego"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Asignar acciѓn 'Ocultar barra de tareas'"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Debes asignar una tecla a la acciѓn 'Ocultar barra de tareas' para jugar a "
+"este juego"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Asignar acciѓn 'Zoom' (opcional)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Asignar acciѓn 'Disminuir zoom' (opcional)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"No olvides asignar una tecla a la acciѓn 'Ocultar barra de tareas' para ver "
+"todo el inventario"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "ПSeguro que quieres volver al Lanzador?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Lanzador"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "ПRealmente quieres salir?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "'Modo toque' de pantalla tсctil - Clic izquierdo"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "'Modo toque' de pantalla tсctil - Clic derecho"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "'Modo toque' de pantalla tсctil - Flotante (sin clic)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Volumen mсximo"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Aumentando el volumen"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Volumen mэnimo"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Bajando el volumen"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "'Modo toque' de pantalla tсctil - Flotante (clic de cruceta)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Buscar actualizaciones..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Un clic derecho"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Solo mover"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Tecla Escape"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Menњ del juego"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Mostrar el teclado numщrico"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Control del ratѓn"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Clic activado"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Clic desactivado"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Usar pantallas de guardar/cargar originales"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Utilizar las pantallas de guardar/cargar originales, en vez de las de ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Cargar partida:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Cargar"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Fallo al cargar desde el archivo:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Fallo al guardar en el archivo:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Partida guardada en el archivo:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "No se ha encontrado el vэdeo '%s'"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1444,27 +2176,304 @@ msgstr "Usar paleta original"
msgid "Display graphics using the game's bright palette"
msgstr "Utilizar los niveles de brillo originales del juego"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Fallo al cargar el estado del juego desde el archivo."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Fallo al guardar el estado del juego en el archivo."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Fallo al borrar el archivo."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Velocidad rсpida de vэdeos"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Reproducir vэdeos a mayor velocidad"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Fallo al guardar la partida"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Risas del pњblico"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Activa las risas del pњblico"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Permitir omisiones"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Permite saltarse frases y vэdeos"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Modo helio"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Activa el modo helio"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Desplazamiento suave"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Activa el desplazamiento de pantalla suave al caminar"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Cursores flotantes"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Activar cursores flotantes"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Barras de energэa"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Activa las barras de energэa"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Ataque 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Ataque 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Ataque 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Avanzar"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Retroceder"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Deslizarse a la izquierda"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Deslizarse a la derecha"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Girar a la izquierda"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Girar a la derecha"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Descansar"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Opciones"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Elegir hechizo"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Estсs usando un dispositivo General MIDI, pero el\n"
+"juego solo es compatible con MIDI Roland MT32.\n"
+"Intentamos adaptar los instrumentos Roland MT32\n"
+"a los de General MIDI, pero es posible que algunas\n"
+"de las pistas no suenen correctamente."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Modo ~Z~ip activado"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "Tra~n~siciones activadas"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~T~irar pсgina"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~M~ostrar el mapa"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "~M~enњ principal"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "Efecto ag~u~a activado"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"No se puede guardar en la ranura %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Cargando partida..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Guardando partida..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM ha detectado que tienes partidas guardadas de Nippon Safes que hay "
+"que renombrar.\n"
+"Los nombres antiguos ya no son compatibles, asэ que no podrсs cargar tus "
+"partidas hasta que los actualices.\n"
+"\n"
+"Pulsa Aceptar para actualizarlos, si no lo haces este mensaje volverс a "
+"aparecer la prѓxima vez.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM ha convertido todas las partidas guardadas correctamente."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM ha mostrado avisos en la ventana de la consola y no puede garantizar "
+"que se hayan convertido todos tus archivos.\n"
+"\n"
+"Por favor, contacta con el equipo."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Nombre no vсlido para la partida"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Arriba/Zoom/Avanzar/Abrir puertas"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Abajo/Reducir zoom"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Mostrar/Ocultar inventario"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Mostrar/Ocultar biochip"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Acciѓn/Seleccionar"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Activar/Desactivar pantalla de datos"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Mostrar/Ocultar pantalla de informaciѓn"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Mostrar/Ocultar menњ de pausa"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "Difuminado EGA"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Activar difuminado en los juegos EGA"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Preferir efectos de sonido digitales"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Preferir efectos de sonido digitales en vez de los sintetizados"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Usar IMF/Yamaha FB-01 para la salida MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1472,29 +2481,29 @@ msgstr ""
"Usa una tarjeta IBM Music o un mѓdulo sintetizador Yamaha FB-01 FM para la "
"salida MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Usar CD audio"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "Usa CD audio en vez del sonido interno del juego, si estс disponible"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Usar cursores de Windows"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Usar los cursores de Windows (mсs pequeёos y monocromos) en vez de los de DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Usar cursores plateados"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1535,15 +2544,6 @@ msgstr "ПSeguro que quieres salir? (S/N)S"
msgid "Play"
msgstr "Jugar"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Salir"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Inserta el disco de las partidas guardadas"
@@ -1592,11 +2592,6 @@ msgstr "~A~nterior"
msgid "~N~ext"
msgstr "Si~g~uiente"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "Cerra~r~"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Solo voces"
@@ -1622,10 +2617,6 @@ msgstr "Selecciona un nivel de dificultad."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Consulta el manual para obtener mсs informaciѓn."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Estсndar"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Prсctica"
@@ -2147,7 +3138,7 @@ msgstr "Volar a la derecha"
msgid "Fly to lower right"
msgstr "Volar abajo y a la derecha"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2156,40 +3147,7 @@ msgstr ""
"El soporte MIDI nativo requiere la actualizaciѓn Roland de LucasArts,\n"
"pero %s no estс disponible. Se usarс AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Fallo al guardar en el archivo:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Fallo al cargar desde el archivo:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Partida guardada en el archivo:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2199,191 +3157,6 @@ msgstr ""
"permite. Para jugar, ve a 'Aёadir juego' en el menњ de inicio de ScummVM y "
"selecciona el directorio 'Maniac', dentro del directorio de DOTT."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Modo ~Z~ip activado"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "Tra~n~siciones activadas"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~T~irar pсgina"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~M~ostrar el mapa"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "~M~enњ principal"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "Efecto ag~u~a activado"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "No se ha encontrado el vэdeo '%s'"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Fallo al cargar el estado del juego desde el archivo."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Fallo al guardar el estado del juego en el archivo."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Fallo al borrar el archivo."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Velocidad rсpida de vэdeos"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Reproducir vэdeos a mayor velocidad"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Fallo al guardar la partida"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Risas del pњblico"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Activa las risas del pњblico"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Permitir omisiones"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Permite saltarse frases y vэdeos"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Modo helio"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Activa el modo helio"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Desplazamiento suave"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Activa el desplazamiento de pantalla suave al caminar"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Cursores flotantes"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Activar cursores flotantes"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Barras de energэa"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Activa las barras de energэa"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Ataque 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Ataque 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Ataque 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Avanzar"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Retroceder"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Deslizarse a la izquierda"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Deslizarse a la derecha"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Girar a la izquierda"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Girar a la derecha"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Descansar"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Opciones"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Elegir hechizo"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Estсs usando un dispositivo General MIDI, pero el\n"
-"juego solo es compatible con MIDI Roland MT32.\n"
-"Intentamos adaptar los instrumentos Roland MT32\n"
-"a los de General MIDI, pero es posible que algunas\n"
-"de las pistas no suenen correctamente."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Introducciѓn alternativa"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr ""
-"Usa una introducciѓn alternativa para el juego (solo para la versiѓn CD)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2409,21 +3182,24 @@ msgid "Use the floppy version's intro (CD version only)"
msgstr ""
"Usa la introducciѓn de la versiѓn en disquete (solo para la versiѓn CD)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "El vэdeo de PSX '%s' no se puede reproducir en modo paleta"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"Se han encontrado vэdeos DXA, pero se ha compilado ScummVM sin soporte zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Los vэdeos MPEG2 ya no son compatibles"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"Se han encontrado vэdeos PSX, pero se ha compilado ScummVM sin soporte de "
+"color RGB"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "No se ha encontrado el vэdeo '%s'"
@@ -2467,13 +3243,20 @@ msgstr "Conservar la nueva"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Este es el final de la demo de Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"Se han encontrado vэdeos PSX, pero se ha compilado ScummVM sin soporte de "
"color RGB"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"Se han encontrado vэdeos DXA, pero se ha compilado ScummVM sin soporte zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Mostrar etiquetas de objetos"
@@ -2497,791 +3280,51 @@ msgstr ""
"El archivo teenagent.dat estс comprimido y este ejecutable no incluye zlib. "
"Por favor, descomprэmelo"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"No se puede guardar en la ranura %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Cargando partida..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Guardando partida..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM ha detectado que tienes partidas guardadas de Nippon Safes que hay "
-"que renombrar.\n"
-"Los nombres antiguos ya no son compatibles, asэ que no podrсs cargar tus "
-"partidas hasta que los actualices.\n"
-"\n"
-"Pulsa Aceptar para actualizarlos, si no lo haces este mensaje volverс a "
-"aparecer la prѓxima vez.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM ha convertido todas las partidas guardadas correctamente."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM ha mostrado avisos en la ventana de la consola y no puede garantizar "
-"que se hayan convertido todos tus archivos.\n"
-"\n"
-"Por favor, contacta con el equipo."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Nombre no vсlido para la partida"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Arriba/Zoom/Avanzar/Abrir puertas"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Abajo/Reducir zoom"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Mostrar/Ocultar inventario"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Mostrar/Ocultar biochip"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Acciѓn/Seleccionar"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Activar/Desactivar pantalla de datos"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Mostrar/Ocultar pantalla de informaciѓn"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Mostrar/Ocultar menњ de pausa"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Emulador OPL de MAME"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Emulador OPL de DOSBox"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"El dispositivo de sonido seleccionado, '%s', no se ha podido encontrar "
-"(puede estar apagado o desconectado)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Recorriendo al siguiente dispositivo disponible..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"El dispositivo de sonido seleccionado, '%s', no se puede utilizar. Consulta "
-"el registro para mсs informaciѓn."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"El dispositivo de sonido preferido, '%s', no se ha podido encontrar (puede "
-"estar apagado o desconectado)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"El dispositivo de sonido preferido, '%s', no se puede utilizar. Consulta el "
-"registro para mсs informaciѓn."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Sin mњsica"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Emulador de Amiga Audio"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Emulador de AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Emulador de Apple II GS (NO IMPLEMENTADO)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Emulador de C64 Audio"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Iniciando el emulador de MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Emulador de MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Emulador del altavoz de PC"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Emulador de IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Asignaciѓn de teclas:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr "(Activa)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr "(Activa)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr "(Bloqueado)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr "(General)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr "(Juego)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Menњ principal de ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Modo para ~z~urdos"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Controles para pelear de ~I~ndy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Mostrar el cursor"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Pegar a los bordes"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Compensaciѓn X del toque"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Compensaciѓn Y del toque"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Activar el sistema de control tipo trackpad de los portсtiles"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Un toque para clic izquierdo, dos para clic derecho"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Sensibilidad"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Escalado inicial de la pantalla superior:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Escalado de la pantalla principal:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Escalado por hardware (rсpido, pero de baja calidad)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Escalado por software (buena calidad, pero mсs lento)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Sin escalado (debes desplazar la pantalla a los lados)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Brillo:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Sonido de alta calidad (mсs lento) (reinicio)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Desactivar apagado"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Modo clic-de-ratѓn-y-arrastrar activado."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Modo clic-de-ratѓn-y-arrastrar desactivado."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Modo Touchpad activado."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Modo Touchpad desactivado."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Modo clic"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Clic izquierdo"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Clic central"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Clic derecho"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Ocultar ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Ocultar otros"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Mostrar todo"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Ventana"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimizar"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (sin reescalado)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Activar la correcciѓn de aspecto"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Desactivar la correcciѓn de aspecto"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Filtro de grсficos activo:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Modo ventana"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Conservar"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Modo de vэdeo actual"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Escala actual"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Modo de filtro activo: lineal"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Modo de filtro activo: mсs cercano"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Arriba"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Abajo"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Izquierda"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Derecha"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zona"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multifunciѓn"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Cambiar personaje"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Saltar texto"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Modo rсpido"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debugger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Menњ general"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Teclado virtual"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Asignaciѓn de teclas"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "ПQuieres salir?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Vэdeo"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Modo de vэdeo actual:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Doble golpe"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Underscan horizontal:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Underscan vertical:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Entrada"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Sensibilidad del pad GC:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Aceleraciѓn del pad GC:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Estado:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Desconocido"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Montar DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Desmontar DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Servidor:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Disco compartido:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Usuario:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Contraseёa:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Iniciar red"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Montar SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Desmontar SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD montado con щxito"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Error al montar el DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD no montado"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Red conectada, disco compartido montado"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Red conectada"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", error al montar el disco compartido"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", disco compartido no montado"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Red desconectada"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Iniciando la red"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Se ha excedido el tiempo de iniciaciѓn de red"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Red no iniciada (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Ocultar barra de tareas"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Mostrar teclado"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Sonido activado/desactivado"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Clic derecho"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Mostrar/Ocultar cursor"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Vista libre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Aumentar zoom"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Disminuir zoom"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Asignar teclas"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Arriba"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Abajo"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Izquierda"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Derecha"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "ПQuieres cargar o guardar el juego?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr "ПSeguro que quieres salir?"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Teclado"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Rotar"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Usando el controlador SDL"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Pantalla"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "ПQuieres realizar una bњsqueda automсtica?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Asignar acciѓn 'Clic derecho'"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Debes asignar una tecla a la acciѓn 'Clic derecho' para jugar a este juego"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Asignar acciѓn 'Ocultar barra de tareas'"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Debes asignar una tecla a la acciѓn 'Ocultar barra de tareas' para jugar a "
-"este juego"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Asignar acciѓn 'Zoom' (opcional)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Asignar acciѓn 'Disminuir zoom' (opcional)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"No olvides asignar una tecla a la acciѓn 'Ocultar barra de tareas' para ver "
-"todo el inventario"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "ПSeguro que quieres volver al Lanzador?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Lanzador"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "ПRealmente quieres salir?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "'Modo toque' de pantalla tсctil - Clic izquierdo"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "'Modo toque' de pantalla tсctil - Clic derecho"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "'Modo toque' de pantalla tсctil - Flotante (sin clic)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Volumen mсximo"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Aёad. varios"
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Aumentando el volumen"
+#~ msgid "Mass Add..."
+#~ msgstr "Aёadir varios..."
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Volumen mэnimo"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Desactiva la conversiѓn General MIDI en juegos con sonido Roland MT-32"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Bajando el volumen"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Estсndar (16bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "'Modo toque' de pantalla tсctil - Flotante (clic de cruceta)"
+#~ msgid "Alternative intro"
+#~ msgstr "Introducciѓn alternativa"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Buscar actualizaciones..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr ""
+#~ "Usa una introducciѓn alternativa para el juego (solo para la versiѓn CD)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Un clic derecho"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Los vэdeos MPEG2 ya no son compatibles"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Solo mover"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Tecla Escape"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Conservar"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Menњ del juego"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Mostrar el teclado numщrico"
+#~ msgid "Current display mode"
+#~ msgstr "Modo de vэdeo actual"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Control del ratѓn"
+#~ msgid "Current scale"
+#~ msgstr "Escala actual"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Clic activado"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Modo de filtro activo: lineal"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Clic desactivado"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Modo de filtro activo: mсs cercano"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Activar modo Roland GS"
diff --git a/po/eu.po b/po/eu.po
index 13d947d80f..bfee0eb6b8 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.5.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2011-12-15 14:53+0100\n"
"Last-Translator: Mikel Iturbe Urretxa <mikel@hamahiru.org>\n"
"Language-Team: Librezale <librezale@librezale.org>\n"
@@ -52,15 +52,15 @@ msgid "Go up"
msgstr "Joan gora"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Utzi"
@@ -68,26 +68,26 @@ msgstr "Utzi"
msgid "Choose"
msgstr "Aukeratu"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Itxi"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Sagu-klika"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Teklatua erakutsi"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Teklak esleitu"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Txandakatu pantaila osoa"
@@ -99,21 +99,21 @@ msgstr "Aukeratu esleituko den ekintza"
msgid "Map"
msgstr "Esleitu"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "Ados"
@@ -139,15 +139,15 @@ msgstr "Mesedez, aukeratu ekintza bat"
msgid "Press the key to associate"
msgstr "Sakatu esleituko den tekla"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Jokoa"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -155,180 +155,180 @@ msgstr ""
"Partida gordeak identifikatzeko eta jokoa komando lerrotik abiarazteko "
"erabiltzen den identifikatzailea"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Izena:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Jokoaren izen osoa"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Izena:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Hizkuntza:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr ""
"Jokoaren hizkuntza. Honek ez du zure ingelesezko bertsioa frantsesera pasako"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<lehenetsia>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plataforma:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Jatorriz, jokoa diseinatua izan zen plataforma"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Plataforma:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
#, fuzzy
msgid "Engine"
msgstr "Aztertu"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafikoak"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Ezarpen grafiko globalak baliogabetu"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Ezarpen grafiko globalak baliogabetu"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Soinua"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Soinu ezarpen globalak baliogabetu"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Soinu ezarpen globalak baliogabetu"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Bolumena"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Bolumena"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Bolumen ezarpen globalak baliogabetu"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Bolumen ezarpen globalak baliogabetu"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "MIDI ezarpen globalak baliogabetu"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "MIDI ezarpen globalak baliogabetu"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "MT-32 ezarpen globalak baliogabetu"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "MT-32 ezarpen globalak baliogabetu"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Bide-izenak"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Bideak"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Jokoa:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Jokoa:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Gehigarriak:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Jokoak erabiltzen duen datu gehigarrien bide-izena"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Gehigarria:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Partida gordeak:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Zure gordetako partidak non gordeko diren zehazten du"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Partida gordeak:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -337,134 +337,135 @@ msgctxt "path"
msgid "None"
msgstr "Bat ere ez"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Lehenetsia"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "SoundFont-a aukeratu"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Jokoaren direktorioa aukeratu"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Direktorio gehigarria aukeratu"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Partida gordeen direktorioa aukeratu"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "ID hau jada erabilia izaten ari da. Mesedez, aukeratu beste bat."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~I~rten"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Irten ScummVM-tik"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "Ho~n~i buruz..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "ScummVM-i buruz"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~A~ukerak"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "ScummVM-ren aukera globalak aldatu"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~H~asi"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Aukeraturiko jokora jolastu"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~K~argatu"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Aukeraturiko jokorako partida gordea kargatu"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~G~ehitu..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Shift mantendu sakaturik hainbat joko gehitzeko"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~E~ditatu..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Aldatu jokoaren aukerak"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~K~endu jokoa"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Jokoa zerrendatik kendu. Jokoaren fitxategiak ez dira ezabatzen"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~G~ehitu..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~E~ditatu..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~K~endu"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Bilatu joko-zerrendan"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Bilatu:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Jokoa kargatu:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Kargatu"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -472,7 +473,8 @@ msgstr ""
"Joko detektatzaile masiboa exekutatu nahi al duzu? Honek joko kantitate "
"handia gehitu dezake."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -480,7 +482,8 @@ msgstr ""
msgid "Yes"
msgstr "Bai"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -488,41 +491,37 @@ msgstr "Bai"
msgid "No"
msgstr "Ez"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM-k ezin izan du zehazturiko direktorioa ireki!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM-k ezin izan du jokorik aurkitu zehazturiko direktorioan!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Jokoa aukeratu:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Benetan ezabatu nahi duzu joko-konfigurazio hau?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Jokoa kargatu edo gorde nahi duzu?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Joko honek ez du uzten partidak abiarazletik kargatzen."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM-k ezin izan du aukeraturiko jokoa exekutatzeko gai den motorerik "
"aurkitu!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Hainbat gehitu..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Hainbat gehitu..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... aurrerapena ..."
@@ -623,8 +622,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Joko batzuk onarturiko lausotze-modu bereziak"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Pantaila osoa"
@@ -758,13 +756,14 @@ msgstr "Benetako Roland MT-32 (GM emulazio gabe)"
#: gui/options.cpp:890
#, fuzzy
-msgid "Roland GS Mode (disable GM mapping)"
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Benetako Roland MT-32 (GM emulazio gabe)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Roland MT-32 soinua duten jokoetan General MIDI bihurtzea desgaitzen du"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -953,15 +952,15 @@ msgstr ""
msgid "Grid view"
msgstr ""
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Ez dago datarik gordeta"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Ez dago ordurik gordeta"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Ez dago denborarik gordeta"
@@ -973,46 +972,46 @@ msgstr "Ezabatu"
msgid "Do you really want to delete this savegame?"
msgstr "Ezabatu partida gorde hau?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Data:"
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Ordua"
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Denbora:"
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Titulurik gabeko partida"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr ""
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr ""
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
#, fuzzy
msgid "New Save"
msgstr "Gorde"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
#, fuzzy
msgid "Create a new save game"
msgstr "Ezin izan da jokoa gorde"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
#, fuzzy
msgid "Name: "
msgstr "Izena:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr ""
@@ -1021,29 +1020,32 @@ msgstr ""
msgid "Select a Theme"
msgstr "Gaia aukeratu"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "GFX desgaituta"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "GFX desgaituta"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Estandarra (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Estandarra (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Estandarra"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Lausotua (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Lausotua (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1139,35 +1141,35 @@ msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
msgstr "Ziur zaude abiarazlera itzuli nahi duzula?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Motoreak ez da '%s' debug mailarekin bateragarria"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menua"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Saltatu"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Gelditu"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Lerroa saltatu"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Jokoa exekutatzean errorea:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Ezin izan da aukeraturiko jokoa exekutatzeko gai den motorerik aurkitu"
@@ -1235,16 +1237,16 @@ msgstr "Erabiltzaileak utzia"
msgid "Unknown error"
msgstr "Errore ezezaguna"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "'%s'-(e)ko jokoa ezezaguna dela dirudi"
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr "Mesedez, bidali hurrengo datuak ScummVM taldeari gehitzen saiatu zaren"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "jokoaren izen, bertsio/hizkuntza/e.a.-ekin batera:"
@@ -1282,21 +1284,21 @@ msgid "~R~eturn to Launcher"
msgstr "It~z~uli abiarazlera"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Gorde jokoa:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Gorde"
@@ -1332,23 +1334,23 @@ msgstr "~U~tzi"
msgid "~K~eys"
msgstr "~T~eklak"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Kolore formatua ezin izan da hasieratu."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Ezin izan da aldatu bideo modura : '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Ezin izan da formatu-ratio ezarpena aplikatu."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Ezin izan da pantaila-osoa ezarpena aplikatu."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1362,7 +1364,7 @@ msgstr ""
"fitxategiak disko gogorrera kopiatzea.\n"
"Jo README fitxategira xehetasunetarako."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1376,7 +1378,7 @@ msgstr ""
"izateko. Jo README fitxategira\n"
"xehetasunetarako."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1385,7 +1387,7 @@ msgstr ""
"Jokoaren egoera kargatzeak huts egin du (%s)! Jo ezazu README-ra oinarrizko "
"informaziorako eta laguntza gehiago nola jaso jakiteko."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1395,33 +1397,762 @@ msgstr ""
"Hori dela eta, ezegonkorra izan daiteke eta gerta daiteke gordeta izan "
"ditzakezun partidan ez ibiltzea ScummVM-ren etorkizuneko bertsioetan."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Jolastu berdin-berdin"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME OPL emuladorea"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox OPL emuladorea"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Aukeraturiko '%s' soinu gailua ez da aurkitu (baliteke itzalita edo "
+"konektatu gabe egotea)"
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Eskuragarri dagoen hurrengo soinu gailura joaten..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Aukeraturiko '%s' soinu gailua ezin da erabili. Ikusi log fitxategia "
+"informazio gehiagorako."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"'%s' gogoko soinu gailua ez da aurkitu (baliteke itzalita edo konektatu gabe "
+"egotea)"
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"'%s' gogoko soinu gailua ezin da erabili. Ikusi log fitxategia informazio "
+"gehiagorako."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Musikarik ez"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Amiga Audio emuladorea"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib emuladorea"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS emuladorea (INPLEMENTATU GABE)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64 Audio emuladorea"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "MT-32 emuladorea hasieratzen"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32 emuladorea"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC bozgoragailuaren emuladorea"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM PCjr emuladorea"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Teklen esleipena:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr "(Egiazkoa)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr "(Aktiboa)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr "(Blokeaturik)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr "(Orokorra)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr "(Jokoa)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~I~txi"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "ScummVM menu orokorra"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~E~zkertientzako modua"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~I~ndy-ren borrokarako kontrolak"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Saguaren kurtsorea erakutsi"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Ertzetara itsatsi"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Ukimenaren X oreka"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Ukimenaren Y oreka"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Eramangarrietako trackpad estiloko kurtsore-kontrola erabili"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Toke bat ezker-klikerako, toke bikoitza eskuin klikerako"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Sentikortasuna"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Goiko pantailaren hasierako eskala:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Pantaila nagusiaren eskala:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Hardware bidezko eskala (arina, baina kalitate baxukoa)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Software bidezko eskala (kalitate ona, baina geldoagoa)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Eskalatu gabe (ezker-eskuin mugitu behar duzu pantaila)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Distira:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Kalitate altuko soinua (geldoagoa) (berrabiarazi)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Itzaltzea desgaitu"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Saguko klik-eta-arrastratu modua gaituta."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Saguko klik-eta-arrastratu modua desgaituta."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Touchpad modua gaituta."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Touchpad modua desgaituta."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Klikatzeko modua"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Ezker-klika"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Erdiko klika"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Eskuin-klika"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "ScummVM ezkutatu"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Besteak ezkutatu"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Denak erakutsi"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Leihoa"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimizatu"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normala (eskalatu gabe)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normala"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Formatu-ratio zuzenketa gaituta"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Formatu-ratio zuzenketa desgaituta"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Filtro grafiko aktiboa:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Leiho modua"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Ireki"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Gora"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Behera"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Ezker"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Eskuin"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zonaldea"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multifuntzioa"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Pertsonaia aldatu"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Testua saltatu"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Modu bizkorra"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Irten"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Araztailea"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Menu orokorra"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Teklatu birtuala"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Teklen esleipena"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Irten nahi al duzu?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Bideo"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Oraingo bideo modua:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Kolpe bikoitza"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Underscan horizontala"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Underscan bertikala:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Sarrrera"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "GC Pad-aren sentikortasuna"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "GC Pad-aren azelerazioa:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD:"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Egoera:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Ezezaguna"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "DVD-a muntatu"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "DVD-a desmuntatu"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Zerbitzaria:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Konpartituriko direktorioa:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Erabiltzaile-izena:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Pasahitza:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Sarea hasi"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "SMB-a muntatu"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "SMB-a desmuntatu"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD-a ondo muntatu da"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Errorea DVD-a muntatzean"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD ez muntatua"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Sarea konektaturik, konpartituriko direktorioa muntaturik"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Sarea konektaturik"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", konpartituriko direktorioa muntatzerakoan errorea"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", konpartituriko direktorioa ez muntatua"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Sarea konektatu gabe"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Sarea hasieratzen"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Sarearen hasieratze denbora agortu da"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Sarea ez da hasieratu (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Tresna-barra ezkutatu"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Teklatua erakutsi"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Soinua aktibatuta/desaktibatuta"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Eskuin klik-a"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Kurtsorea erakutsi/ezkutatu"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Bista librea"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Zoom-a hurbildu"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Zoom-a urrundu"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Teklak esleitu"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Gora"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Behera"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Ezker"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Eskuin"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Jokoa kargatu edo gorde nahi duzu?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Ziur irten nahi duzula?"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Teklatua"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Biratu"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "SDL kontrolatzailea erabiltzen"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Pantaila"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Bilaketa automatikoa erabili nahi duzu?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "'Eskuin klika' ekintza esleitu"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"'Eskuin klika' ekintza esleitu behar diozu tekla bati joko honetara jolasteko"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "'Tresna-barra ezkutatu' ekintza esleitu"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"'Tresna-barra ezkutatu' ekintza tekla bati esleitu behar diozu joko honetara "
+"jolasteko"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "'Zoom-a urrundu' ekintza esleitu (hautazkoa)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "'Zoom-a hurbildu' ekintza esleitu (hautazkkoa)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Ez ahaztu 'tresna-barra ezkutatu' ekintza tekla bati esleitzea inbentario "
+"osoa ikusteko"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Ziur zaude abiarazlera itzuli nahi duzula?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Abiarazlea"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Benetan irten?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Ukimen-pantailako 'kolpetxo modua' - Ezker klika"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Ukimen-pantailako 'kolpetxo modua' - Eskuin klika"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Ukimen-pantailako 'kolpetxo modua' - Flotatu (klikik ez)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Bolumen maximoa"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Bolumena igotzen"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Bolumen minimoa"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Bolumena jaisten"
+
+#: backends/events/openpandora/op-events.cpp:174
+#, fuzzy
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Ukimen-pantailako 'kolpetxo modua' - Flotatu (klikik ez)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Eguneraketak bilatzen..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Eskuin-klika behin"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Mugitu bakarrik"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Ihes tekla"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Jokoaren menua"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Teklatu numerikoa erakutsi"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Saguaren kontrola"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Klikatzea gaituta"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Klikatzea desgaituta"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr ""
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Jokoa kargatu:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Kargatu"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Errorea fitxategitik kargatzean:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Errorea fitxategian gordetzean:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Partida ondo gorde da hurrengo fitxategian:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "'%s' bideo fitxategia ez da aurkitu!"
+
+#: engines/drascula/saveload.cpp:47
#, fuzzy
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
@@ -1449,57 +2180,339 @@ msgstr "Goiko eskuineko objektua"
msgid "Display graphics using the game's bright palette"
msgstr ""
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Ezin izan da fitxategitik jokoa kargatu."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Ezin izan da jokoa fitxategira gorde."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Ezin izan da fitxategia ezabatu"
+
+#: engines/groovie/detection.cpp:312
+#, fuzzy
+msgid "Fast movie speed"
+msgstr "Modu bizkorra"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr ""
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Ezin izan da jokoa gorde"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr ""
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr ""
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr ""
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr ""
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr ""
+
+#: engines/kyra/detection.cpp:85
+#, fuzzy
+msgid "Enable helium mode"
+msgstr "Roland GS modua gaitu"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr ""
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr ""
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+#, fuzzy
+msgid "Floating cursors"
+msgstr "Kurtsore normala"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr ""
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr ""
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr ""
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "1 erasoa"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "2 erasoa"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "3 erasoa"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Aurrera mugitu"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Atzera mugitu"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Ezkerrera irristatu"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Eskuinera irristatu"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Ezkerrera biratu"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Eskuinera biratu"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Kargatu"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Aukerak"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Sorginkeria aukeratu"
+
+#: engines/kyra/sound_midi.cpp:477
+#, fuzzy
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"General MIDI gailua erabiltzen zaudela dirudi,\n"
+"baina zure jokoak Roland MT32 MIDI bakarrik\n"
+"erabili dezake. Roland MT32 instrumentuak\n"
+"General MIDIkoetara egokitzen saiatuko gara,\n"
+"baina posible da pista batzuk egoki ez entzutea."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~Z~ip modua aktibaturik"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~T~rantsizioak gaituta"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Orria ~b~ota"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~M~apa erakutsi"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Menu ~n~agusia"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~U~r-efektua gaituta"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Ezin da partida gorde %i zirrikituan\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Jokoa kargatzen..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Jokoa gordetzen..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM-k aurkitu du berrizendatu beharko liratekeen Nippon Safes-eko "
+"partida gorde zaharrak dituzula.\n"
+"Partida gordeen izen zaharra ez da bateragarria jada, eta beraz ezingo "
+"dituzu zure partidak kargatu ez badituzu formatu berrira pasatzen.\n"
+"\n"
+"Sakatu Ados orain konbertitzeko, bestela berriz galdetuko dizut jokoa berriz "
+"martxan jartzen duzunean.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM-k ondo konbertitu ditu zure gordetako partida guztiak."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM-k zenbait abisu inprimatu ditu zure kontsola leihoan eta ezin du "
+"ziurtatu zure fitxategi guztiak ondo konbertitu diren.\n"
+"\n"
+"Mesedez, eman abisua taldeari."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2474
+#, fuzzy
+msgid "Down/Zoom Out"
+msgstr "Zoom-a hurbildu"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr ""
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA lausotzea"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
#, fuzzy
msgid "Enable undithering in EGA games"
msgstr "EGA lausotzea gaitu joko bateragarrietan"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
#, fuzzy
msgid "Prefer digital sound effects"
msgstr "Soinu efektu berezien bolumena"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr ""
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr ""
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
msgstr ""
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr ""
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr ""
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr ""
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
#, fuzzy
msgid "Use silver cursors"
msgstr "Kurtsore normala"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1539,15 +2552,6 @@ msgstr "Ziur zaude irten nahi duzula? (B/E)B"
msgid "Play"
msgstr "Jolastu"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Irten"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Sartu partida gordeak dituen diskoa"
@@ -1596,11 +2600,6 @@ msgstr "~A~urrekoa"
msgid "~N~ext"
msgstr "~H~urrengoa"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~I~txi"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Ahotsak bakarrik"
@@ -1626,10 +2625,6 @@ msgstr "Zailtasuna aukeratu."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Loom(TM)-ko eskuliburura jo ezazu laguntza lortzeko."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Estandarra"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Entrenamendua"
@@ -2151,7 +3146,7 @@ msgstr "Eskuinera hegan egin"
msgid "Fly to lower right"
msgstr "Behera eta eskuinera hegan egin"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2160,40 +3155,7 @@ msgstr ""
"MIDI euskarri natiboak LucasArts-en Roland eguneraketa behar du,\n"
"baina %s ez dago eskuragarri. AdLib erabiliko da."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Errorea fitxategian gordetzean:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Errorea fitxategitik kargatzean:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Partida ondo gorde da hurrengo fitxategian:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2203,194 +3165,6 @@ msgstr ""
"baimentzen oraindik. Jolasteko , joan 'Jokoa gehitu' hasierako menura eta "
"aukeratu 'Maniac' direktorioa Tentacle-ren joko-direktorioaren barruan."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~Z~ip modua aktibaturik"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~T~rantsizioak gaituta"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Orria ~b~ota"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~M~apa erakutsi"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Menu ~n~agusia"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~U~r-efektua gaituta"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "'%s' bideo fitxategia ez da aurkitu!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Ezin izan da fitxategitik jokoa kargatu."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Ezin izan da jokoa fitxategira gorde."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Ezin izan da fitxategia ezabatu"
-
-#: engines/groovie/detection.cpp:312
-#, fuzzy
-msgid "Fast movie speed"
-msgstr "Modu bizkorra"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr ""
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Ezin izan da jokoa gorde"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr ""
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr ""
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr ""
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr ""
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr ""
-
-#: engines/kyra/detection.cpp:85
-#, fuzzy
-msgid "Enable helium mode"
-msgstr "Roland GS modua gaitu"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr ""
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr ""
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-#, fuzzy
-msgid "Floating cursors"
-msgstr "Kurtsore normala"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr ""
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr ""
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr ""
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "1 erasoa"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "2 erasoa"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "3 erasoa"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Aurrera mugitu"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Atzera mugitu"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Ezkerrera irristatu"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Eskuinera irristatu"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Ezkerrera biratu"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Eskuinera biratu"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Kargatu"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Aukerak"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Sorginkeria aukeratu"
-
-#: engines/kyra/sound_midi.cpp:477
-#, fuzzy
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"General MIDI gailua erabiltzen zaudela dirudi,\n"
-"baina zure jokoak Roland MT32 MIDI bakarrik\n"
-"erabili dezake. Roland MT32 instrumentuak\n"
-"General MIDIkoetara egokitzen saiatuko gara,\n"
-"baina posible da pista batzuk egoki ez entzutea."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr ""
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr ""
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2415,21 +3189,24 @@ msgstr ""
msgid "Use the floppy version's intro (CD version only)"
msgstr ""
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr ""
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"DXA bideoak aurkitu dira, baina ScummVM zlib euskarri gabe konpilatu da"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "MPEG2 bideoak ez dira bateragarriak jada"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"PSX eszenak aurkitu dira, baina ScummVM RGB kolorearen euskarri gabe "
+"konpilatu da"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Ez da '%s' bideoa aurkitu"
@@ -2473,13 +3250,20 @@ msgstr "Berria mantendu"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Hau Broken Sword 1 Demoaren amaiera da"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"PSX eszenak aurkitu dira, baina ScummVM RGB kolorearen euskarri gabe "
"konpilatu da"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"DXA bideoak aurkitu dira, baina ScummVM zlib euskarri gabe konpilatu da"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr ""
@@ -2499,793 +3283,44 @@ msgid ""
"executable. Please decompress it"
msgstr ""
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Ezin da partida gorde %i zirrikituan\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Jokoa kargatzen..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Jokoa gordetzen..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM-k aurkitu du berrizendatu beharko liratekeen Nippon Safes-eko "
-"partida gorde zaharrak dituzula.\n"
-"Partida gordeen izen zaharra ez da bateragarria jada, eta beraz ezingo "
-"dituzu zure partidak kargatu ez badituzu formatu berrira pasatzen.\n"
-"\n"
-"Sakatu Ados orain konbertitzeko, bestela berriz galdetuko dizut jokoa berriz "
-"martxan jartzen duzunean.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM-k ondo konbertitu ditu zure gordetako partida guztiak."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM-k zenbait abisu inprimatu ditu zure kontsola leihoan eta ezin du "
-"ziurtatu zure fitxategi guztiak ondo konbertitu diren.\n"
-"\n"
-"Mesedez, eman abisua taldeari."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2446
-#, fuzzy
-msgid "Down/Zoom Out"
-msgstr "Zoom-a hurbildu"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr ""
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME OPL emuladorea"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox OPL emuladorea"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Aukeraturiko '%s' soinu gailua ez da aurkitu (baliteke itzalita edo "
-"konektatu gabe egotea)"
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Eskuragarri dagoen hurrengo soinu gailura joaten..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Aukeraturiko '%s' soinu gailua ezin da erabili. Ikusi log fitxategia "
-"informazio gehiagorako."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"'%s' gogoko soinu gailua ez da aurkitu (baliteke itzalita edo konektatu gabe "
-"egotea)"
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"'%s' gogoko soinu gailua ezin da erabili. Ikusi log fitxategia informazio "
-"gehiagorako."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Musikarik ez"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Amiga Audio emuladorea"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib emuladorea"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS emuladorea (INPLEMENTATU GABE)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64 Audio emuladorea"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "MT-32 emuladorea hasieratzen"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32 emuladorea"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC bozgoragailuaren emuladorea"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM PCjr emuladorea"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Teklen esleipena:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr "(Egiazkoa)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr "(Aktiboa)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr "(Blokeaturik)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr "(Orokorra)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr "(Jokoa)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "ScummVM menu orokorra"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~E~zkertientzako modua"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~I~ndy-ren borrokarako kontrolak"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Saguaren kurtsorea erakutsi"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Ertzetara itsatsi"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Ukimenaren X oreka"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Ukimenaren Y oreka"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Eramangarrietako trackpad estiloko kurtsore-kontrola erabili"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Toke bat ezker-klikerako, toke bikoitza eskuin klikerako"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Sentikortasuna"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Goiko pantailaren hasierako eskala:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Pantaila nagusiaren eskala:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Hardware bidezko eskala (arina, baina kalitate baxukoa)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Software bidezko eskala (kalitate ona, baina geldoagoa)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Eskalatu gabe (ezker-eskuin mugitu behar duzu pantaila)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Distira:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Kalitate altuko soinua (geldoagoa) (berrabiarazi)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Itzaltzea desgaitu"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Saguko klik-eta-arrastratu modua gaituta."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Saguko klik-eta-arrastratu modua desgaituta."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Touchpad modua gaituta."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Touchpad modua desgaituta."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Klikatzeko modua"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Ezker-klika"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Erdiko klika"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Eskuin-klika"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "ScummVM ezkutatu"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Besteak ezkutatu"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Denak erakutsi"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Leihoa"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimizatu"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normala (eskalatu gabe)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normala"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Formatu-ratio zuzenketa gaituta"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Formatu-ratio zuzenketa desgaituta"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Filtro grafiko aktiboa:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Leiho modua"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL normala"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL aurreztu"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL jatorrizkoa"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Oraingo bideo-modua"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Oraingo eskala"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Filtro aktibo modua: lineala"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Filtro aktibo modua: hurbilena"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Gora"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Behera"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Ezker"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Eskuin"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zonaldea"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multifuntzioa"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Pertsonaia aldatu"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Testua saltatu"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Modu bizkorra"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Araztailea"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Menu orokorra"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Teklatu birtuala"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Teklen esleipena"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Irten nahi al duzu?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Bideo"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Oraingo bideo modua:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Kolpe bikoitza"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Underscan horizontala"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Underscan bertikala:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Sarrrera"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "GC Pad-aren sentikortasuna"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "GC Pad-aren azelerazioa:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD:"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Egoera:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Ezezaguna"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "DVD-a muntatu"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "DVD-a desmuntatu"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Zerbitzaria:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Konpartituriko direktorioa:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Erabiltzaile-izena:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Pasahitza:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Sarea hasi"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "SMB-a muntatu"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "SMB-a desmuntatu"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD-a ondo muntatu da"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Errorea DVD-a muntatzean"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD ez muntatua"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Sarea konektaturik, konpartituriko direktorioa muntaturik"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Sarea konektaturik"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", konpartituriko direktorioa muntatzerakoan errorea"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", konpartituriko direktorioa ez muntatua"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Sarea konektatu gabe"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Sarea hasieratzen"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Sarearen hasieratze denbora agortu da"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Sarea ez da hasieratu (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Tresna-barra ezkutatu"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Teklatua erakutsi"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Soinua aktibatuta/desaktibatuta"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Eskuin klik-a"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Kurtsorea erakutsi/ezkutatu"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Bista librea"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Zoom-a hurbildu"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Zoom-a urrundu"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Teklak esleitu"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Gora"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Behera"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Ezker"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Eskuin"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Jokoa kargatu edo gorde nahi duzu?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Ziur irten nahi duzula?"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Teklatua"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Biratu"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "SDL kontrolatzailea erabiltzen"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Pantaila"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Bilaketa automatikoa erabili nahi duzu?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "'Eskuin klika' ekintza esleitu"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"'Eskuin klika' ekintza esleitu behar diozu tekla bati joko honetara jolasteko"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "'Tresna-barra ezkutatu' ekintza esleitu"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"'Tresna-barra ezkutatu' ekintza tekla bati esleitu behar diozu joko honetara "
-"jolasteko"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "'Zoom-a urrundu' ekintza esleitu (hautazkoa)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "'Zoom-a hurbildu' ekintza esleitu (hautazkkoa)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Ez ahaztu 'tresna-barra ezkutatu' ekintza tekla bati esleitzea inbentario "
-"osoa ikusteko"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Ziur zaude abiarazlera itzuli nahi duzula?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Abiarazlea"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Benetan irten?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Ukimen-pantailako 'kolpetxo modua' - Ezker klika"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Ukimen-pantailako 'kolpetxo modua' - Eskuin klika"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Ukimen-pantailako 'kolpetxo modua' - Flotatu (klikik ez)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Bolumen maximoa"
-
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Bolumena igotzen"
-
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Bolumen minimoa"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Hainbat gehitu..."
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Bolumena jaisten"
+#~ msgid "Mass Add..."
+#~ msgstr "Hainbat gehitu..."
-#: backends/events/openpandora/op-events.cpp:174
-#, fuzzy
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Ukimen-pantailako 'kolpetxo modua' - Flotatu (klikik ez)"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Roland MT-32 soinua duten jokoetan General MIDI bihurtzea desgaitzen du"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Eguneraketak bilatzen..."
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Estandarra (16bpp)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Eskuin-klika behin"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "MPEG2 bideoak ez dira bateragarriak jada"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Mugitu bakarrik"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL normala"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Ihes tekla"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL aurreztu"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Jokoaren menua"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL jatorrizkoa"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Teklatu numerikoa erakutsi"
+#~ msgid "Current display mode"
+#~ msgstr "Oraingo bideo-modua"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Saguaren kontrola"
+#~ msgid "Current scale"
+#~ msgstr "Oraingo eskala"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Klikatzea gaituta"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Filtro aktibo modua: lineala"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Klikatzea desgaituta"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Filtro aktibo modua: hurbilena"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Roland GS modua gaitu"
diff --git a/po/fi_FI.po b/po/fi_FI.po
index 73aac4cc9c..ab470229b0 100644
--- a/po/fi_FI.po
+++ b/po/fi_FI.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.6.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2012-12-01 19:37+0200\n"
"Last-Translator: Toni Saarela <saarela@gmail.com>\n"
"Language-Team: Finnish\n"
@@ -53,15 +53,15 @@ msgid "Go up"
msgstr "Siirry ylіs"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Peruuta"
@@ -69,26 +69,26 @@ msgstr "Peruuta"
msgid "Choose"
msgstr "Valitse"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Sulje"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Hiiren klikkaus"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Nфytф nфppфimistі"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Mффritф nфppфimet uudelleen"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Kokoruututilan vaihto"
@@ -100,21 +100,21 @@ msgstr "Valitse toiminto"
msgid "Map"
msgstr "Nфppфinkartta"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "Tallenna"
@@ -140,15 +140,15 @@ msgstr "Valitse toiminto"
msgid "Press the key to associate"
msgstr "Paina haluamaasi nappia"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Peli"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "Tunniste:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -156,29 +156,29 @@ msgstr ""
"Lyhyt pelitunniste, jota kфytetффn kun viitataan pelitallennuksiin ja kun "
"peli kфynnistetффn komentoriviltф"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "Tunniste:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nimi:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Pelin koko nimi"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nimi:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Kieli:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -186,150 +186,150 @@ msgstr ""
"Pelin kieli. Tфmф ei muuta esimerkiksi espanjankielistф versiota pelistф "
"englanninkieliseksi."
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<oletus>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Alusta:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Alusta jolle peli alunperin suunniteltiin"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Alusta:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Moottori"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafiikka"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Ohita globaalit grafiikka-asetukset"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Ohita globaalit grafiikka-asetukset"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Ффni"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Ohita globaalit ффniasetukset"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Ohita globaalit ффniasetukset"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Voimakkuus"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Voimakkuus"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Ohita globaalit ффnenvoimakkuusasetukset"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Ohita globaalit ффnenvoimakkuusasetukset"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Ohita globaalit MIDI-asetukset"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Ohita globaalit MIDI-asetukset"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Ohita globaalit MT-32 asetukset"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Ohita globaalit MT-32 asetukset"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Polut"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Polut"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Pelin polku:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Pelin polku:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Lisфkansio:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Mффrittфф polun lisфtiedostoihin joita peli mahdollisesti kфyttфф"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Lisфkansio:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Tallennuskansio:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Mффrittфф polun pelitallennuksille"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Tallennuskansio:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -338,134 +338,135 @@ msgctxt "path"
msgid "None"
msgstr "Ei mффritelty"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Oletus"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Valitse ффnifontti"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Valitse pelin kansio"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Valitse lisфkansio pelille"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Valitse kansio pelitallennuksille"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Pelin tunnus on jo kфytіssф. Valitse jokin muu."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~L~opeta"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Lopeta ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "Tietoa..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Tietoa ScummVM:stф"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~A~setukset"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Muuta globaaleja ScummVM:n asetuksia"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~P~elaa"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Pelaa valittua peliф"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~L~ataa..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Lataa pelitallennus valitulle pelille"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~L~isфф peli..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Pidф Shift-nфppфintф pohjassa lisфtфksesi useita pelejф kerralla"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "Muokkaa peliф..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Muuta pelin asetuksia"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "Poista peli"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Poista peli listasta. Pelin tiedostoja ei poisteta levyltф"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "Lisфф peli..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "Muokkaa peliф..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "Poista peli..."
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Etsi peliф listasta"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Etsi:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Lataa peli:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Lataa"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -473,7 +474,8 @@ msgstr ""
"Haluatko varmasti lisфtф pelejф alihakemistoineen? Tфmф voi lisфtф suuren "
"mффrфn pelejф."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -481,7 +483,8 @@ msgstr ""
msgid "Yes"
msgstr "Kyllф"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -489,39 +492,35 @@ msgstr "Kyllф"
msgid "No"
msgstr "Ei"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM ei voi avata kyseistф hakemistoa!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM ei lіytфnyt yhtффn peliф kyseisestф hakemistosta!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Valitse peli:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Haluatko varmasti poistaa pelin asetuksineen listalta?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Haluatko tallentaa vai ladata pelin?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Tфmф peli ei tue pelitallennuksien lataamista pelin ulkopuolelta."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM ei lіytфnyt pelimoottoria joka tukee valittua peliф!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Lisфф monta..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Lisфф monta..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... skannaa ..."
@@ -624,8 +623,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Erityiset dithering asetukset joita jotkut pelit tukevat"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Kokoruututila"
@@ -758,12 +756,14 @@ msgstr "Aito Roland MT-32 (ei GM emulointia)"
#: gui/options.cpp:890
#, fuzzy
-msgid "Roland GS Mode (disable GM mapping)"
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Aito Roland MT-32 (ei GM emulointia)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "Poistaa General MIDIn peleistф joissa on Roland MT-32 ффniraita"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -953,15 +953,15 @@ msgstr "Listanфkymф"
msgid "Grid view"
msgstr "Ruudukkonфkymф"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Pфivфystф ei ole tallennettu"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Aikaa ei ole tallennettu"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Peliaikaa ei ole tallennettu"
@@ -973,43 +973,43 @@ msgstr "Poista"
msgid "Do you really want to delete this savegame?"
msgstr "Haluatko varmasti poistaa tфmфn pelitallennuksen?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Pфivфys: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Aika: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Peliaika: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Nimetіn pelitallennus"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Seuraava"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Edellinen"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Uusi pelitallennus"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Luo uusi pelitallennus"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nimi: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Anna kuvaus tallennukselle numero %d:"
@@ -1018,29 +1018,32 @@ msgstr "Anna kuvaus tallennukselle numero %d:"
msgid "Select a Theme"
msgstr "Valitse teema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Disabloitu GFX"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Disabloitu GFX"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Standardirenderіijф (16 bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standardi (16 bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Standardi"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Antialiasoitu renderіijф (16 bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Antialiasoitu (16 bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1136,35 +1139,35 @@ msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
msgstr "Haluatko varmasti palata pelivalitsimeen?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Pelimoottori ei tue debug tasoa '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Valikko"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Ohita"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Tauko"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Ohita rivi"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Virhe ajettaessa peliф:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Pelimoottoria joka tukisi valittua peliф ei lіytynyt"
@@ -1232,17 +1235,17 @@ msgstr "Kфyttфjф peruutti"
msgid "Unknown error"
msgstr "Tuntematon virhe"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Peli hakemistossa '%s' nфyttфisi olevan tuntematon."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Ole hyvф ja ilmoita ScummVM:n kehittфjille seuraavat tiedot, lisфksi kerro"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr ""
"mikф peli oli kyseessф, ja sen versio, kieli, ja muut vastaavat tiedot."
@@ -1281,21 +1284,21 @@ msgid "~R~eturn to Launcher"
msgstr "Palaa p~e~livalitsimeen"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Tallenna peli:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Tallenna"
@@ -1331,23 +1334,23 @@ msgstr "~P~eruuta"
msgid "~K~eys"
msgstr "~N~фppфimet"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Vфriformaattia ei voitu alustaa"
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Videotilan vaihto ei onnistunut:'"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Kuvasuhdeasetusta ei voitu asettaa."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Kokoruututila-asetusta ei voi asettaa."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1360,7 +1363,7 @@ msgstr ""
"pelin tiedostot kovalevyllesi. Avaa LUEMINUT\n"
"tiedosto ohjeita varten."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1373,7 +1376,7 @@ msgstr ""
"ohjelmistoa kфyttфen, jotta musiikit\n"
"kuuluvat. Lue ohjeet LUEMINUT tiedostosta."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1382,7 +1385,7 @@ msgstr ""
"Pelitilan lataus epфonnistui (%s)! Avaa LUEMINUT tiedosto saadaksesi "
"lisфtietoa."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1392,33 +1395,765 @@ msgstr ""
"epфvakaa, eivфtkф pelitallennukset vфlttфmфttф toimi tulevissa ScummVM:n "
"versioissa."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Pelaa silti"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME OPL emulaattori"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox OPL emulaattori"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Valittua ффnilaitetta '%s' ei lіytynyt. Se saattaa olla kytketty pois pффltф "
+"tai irrotettuna tietokoneesta."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Yritetффn kфyttфф seuraavaa saatavilla olevaa laitetta..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Valitsemaasi ффnilaitetta '%s' ei voida kфyttфф. Avaa lokitiedosto "
+"saadaksesi lisфtietoja."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Ensisijaista ффnilaitetta '%s' ei lіytynyt. Se saattaa olla kytketty pois "
+"pффltф tai irrotettuna tietokoneesta."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Ensisijaista ффnilaitetta '%s' ei voida kфyttфф. Avaa lokitiedosto "
+"saadaksesi lisфtietoja."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Ei musiikkia"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Amiga Audio emulaattori"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib emulaattori"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS emulaattori (EI TOTEUTETTU)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64 Audio emulaattori"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Alustetaan MT-32 emulaattoria"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32 emulaattori"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC kaiuttimen emulaattori"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM PCjr emulaattori"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Nфppфinkartta:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr ""
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Aktiivinen)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Estetty)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Globaali)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Peli)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~S~ulje"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "ScummVM pффvalikko"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~V~asenkфtinen tila"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~I~ndyn tappelukontrollit"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Nфytф hiiren kursori"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Tartu reunoihin"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Kosketuksen X siirros"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Kosketuksen Y siirto"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Kфytф kannettavan trackpad-tyylistф kursorinhallintaa"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr ""
+"Napauta kerran vasen klikkausta varten, napauta kahdesti oikeaa klikkausta "
+"varten"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Herkkyys"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr ""
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Pффruudun skaalaus"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Laitteistoskaalaus (nopea, mutta huono laatu)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Ohjelmistoskaalaus (hyvф laatu, mutta hitaampi)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Ei skaalattu (vierittф vasemmalle ja oikealle itse)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Kirkkaus:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Korkealuokkainen ффni (hidas) (buuttaus)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr ""
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Hiiren vedф-ja-pudota tila kфytіssф."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Hiiren vedф-ja-pudota tila pois kфytіstф."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Touchad tila pффllф"
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Touchpad tila pois pффltф"
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Klikkaus moodi"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Vasen klikkaus"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Keskiklikkaus"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Oikea klikkaus"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Piilota ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Piilota muut"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Nфytф kaikki"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Ikkuna"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimoi"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normaali (ei skaalausta)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normaali (ei skaalausta)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Kuvasuhteen korjaus pффllф"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Kuvasuhteen korjaus pois pффltф"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Valittu grafiikkafiltteri:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Ikkunoitu tila"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Avaa"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Ylіs"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Alas"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Vasen"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Oikea"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Vaihda hahmoa"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Ohita teksti"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Nopea moodi"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Lopeta"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debuggeri"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Pффvalikko"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Virtuaalinen nфppфimistі"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Nфppфinmффrittelijф"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Haluatko lopettaa?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Video"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Nykyinen videotila:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr ""
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Horisontaalinenunderscan"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Vertikaalinen underscan"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Syіte"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "GC Padin herkkyys"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "GC PAdin kiihtyvyys"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Tila:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Tuntematon"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Liitф DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Vapauta DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Palvelin:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Jako:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Kфyttфjфnimi:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Salasana:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Alusta verkko"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Mounttaa SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Vapauta SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD mountattu onnistuneesti"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Virhe liitettфessф DVD:tф"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD ei ole liitetty"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Verkko ylhффllф, jako liitetty"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Verkko ylhффllф"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", virhe liitettфessф jakoa"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", jakoa ei liitetty"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Verkko alhaalla"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Alustetaan verkkoa"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Aikakatkaisu kun verkkoa alustettiin"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Verkko ei ole alustettu (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Piilota tyіkalupalkki"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Nфytф nфppфimistі"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Ффnet pффllф/pois"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Oikea klikkaus"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Nфytф/Piilota kursori"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Vapaa katselu"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Zoomaa ylіs"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Zoomaa alas"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Mффritф nфppфimet"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Nuoli ylіs"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Nuoli alas"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Nuoli vasemmalle"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Nuoli oikealle"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Haluatko tallentaa vai ladata pelin?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Haluatko varmasti lopettaa?"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Nфppфimistі"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Kффnnф"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Kфytetффn SDL:n ajuria"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Nфyttі"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Haluatko suorittaa automaattisen skannauksen?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Mффritф oikeaklikkauksen toiminto"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Hiiren oikealle klikkaukselle on mффriteltфvф nфppфin, ennen kuin tфtф peliф "
+"voi pelata"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Mффritф nфppфin tyіkalupalkin piilottamiselle"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Tyіkalupalkin piilottamiselle on mффriteltфvф nфppфin, ennen kuin tфtф peliф "
+"voi pelata"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Zoomaa karttaa ylіs (valinnainen)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Zoomaa karttaa alas (valinnainen)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Muista mффritellф nфppфin tyіkalupalkin piilottamiselle, jotta voit nфhdф "
+"koko tavaraluettelon"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Haluatko varmasti palata pelivalitsimeen?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Pelivalitsin"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Haluatko varmasti lopettaa?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Kosketusnфytіn 'Tap moodi' - vasen klikkaus"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Kosketusnфytіn 'Tap moodi' - oikea klikkaus"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Kosketusnфytіn 'Tap moodi' - ei klikkausta"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Maksimi ффnenvoimakkuus"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Nostetaan ффnenvoimakkuutta"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Minimi ффnenvoimakkuus"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Lasketaan ффnenvoimakkuutta"
+
+#: backends/events/openpandora/op-events.cpp:174
+#, fuzzy
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Kosketusnфytіn 'Tap moodi' - ei klikkausta"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Tarkista pфivitykset..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Klikkaa oikealla kerran"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr ""
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Esc nфppфin"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Pelivalikko"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Nфytф keypad"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Ohjaa hiirtф"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Klikkaus pффllф"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Klikkaus pois pффltф"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Kфytф alkuperфisiф tallenna/lataa valikkoja"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr "Kфytф alkuperфisiф tallenna/lataa valikkoja, ScummVM valikoiden sijaan"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Lataa pelitallenne:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Lataa tallenne"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Pelitilan lataus ei onnistunut tiedostosta:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Pelitilan tallennus ei onnistunut tiedostoon:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Pelitilan tallennus onnistui tiedostoon:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Videotiedostoa '%s' ei lіytynyt!"
+
+#: engines/drascula/saveload.cpp:47
#, fuzzy
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
@@ -1443,57 +2178,332 @@ msgstr "Kфytф kirkaspalettitilaa"
msgid "Display graphics using the game's bright palette"
msgstr "Nфytф grafiikat kфyttфen pelin kirkasta palettia"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Pelitallenteen lataaminen tiedostosta epфonnistui."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Pelin tallentaminen tiedostoon epфonnistui."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Tiedoston tuhoaminen ei onnistunut."
+
+#: engines/groovie/detection.cpp:312
+#, fuzzy
+msgid "Fast movie speed"
+msgstr "Nopea moodi"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr ""
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Pelin tallentaminen epфonnistui."
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Studioyleisі"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Studioyleisі pффlle"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Ohita tuki"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Salli tekstin ja videoiden ohittaminen"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Helium moodi"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Kфytф helium moodia"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Pehmeф vieritys"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Kфytф pehmeфф vieritystф kфvellessф"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Leijuva kursori"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Kфytф leijuvia kursoreita"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Kestopisteet (HP) graafisina palkkeina"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Kфytф kestopisteissф vфrillisiф grafiikkapalkkeja numeroiden sijaan"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Hyіkkфys 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Hyіkkфys 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Hyіkkфys 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Liiku eteenpфin"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Liiku taaksepфin"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Liiku vasemmalle"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Liiku oikealle"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Kффnny vasemmalle"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Kффnny oikealle"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Lepфф"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Asetukset"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Valitse loitsu"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Kфytфt General MIDI-ффnilaitetta, mutta peli\n"
+"tukee vain Roland MT-32:sta. Jotkut ффniraidat\n"
+"eivфt ehkф kuulosta siltф miltф niiden pitфisi."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~Z~ip moodi valittu"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "Siirtymфt pффllф"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Pudota sivu"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "Nфytф kartta"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Pффvalikko"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "Vesiefekti pффllф"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Pelin tallennus kohtaan ei onnistunut kohtaan %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Ladataan peliф..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Tallennetaan peliф..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"Pelin Nippon Safes tallennukset ovat vanhassa muodossa, joita ei enфф tueta. "
+"Tallennukset\n"
+"tulee nimetф uudelleen ennen kuin ScummVM voi kфyttфф niitф. Paina 'Hyvфksy' "
+"muuntaaksesi tallennukset.\n"
+"Jos et tee muunnosta nyt, ScummVM kysyy sinulta uudelleen seuraavalla "
+"kerralla kun kфynnistфt pelin.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM muunsi kaikki pelitallenteet onnistuneesti"
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"Osa tiedostoista ei ehkф muuntunut oikein. Varoitukset tulostettiin konsoli-"
+"ikkunaan. Pyydфmme ettф ilmoittaisit\n"
+"niistф ScummVM:n kehittфjille."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2474
+#, fuzzy
+msgid "Down/Zoom Out"
+msgstr "Zoomaa ylіs"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr ""
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA unditterіinti"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Kфytф unditterіintiф EGA peleissф"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Kфytф mieluiten digitaalisia ффnitehosteita."
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr ""
"Kфytф mieluiten digitaalisia ффnitehosteita synteettisten tehosteiden sijaan."
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Kфytф IMF/Yamaha FB-01:stф MIDI-musiikille"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
msgstr ""
"Kфytф IBM:n Music Feature korttia, tai Yamaha FB-01 FM moduulia MIDIlle"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Kфytф CD:n ффntф"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "Kфytф CD:n audiota pelin audion sijaan, jos mahdollista."
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Kфytф Windowsin kursoreita"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Kфytф Windowsin kursoreita (pienempiф ja harmaasфvyisiф) DOS kursorien sijaan"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Kфytф hopeisia kursoreita"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr "Kфytф vaihtoehtoisia hopeisia kursoreita normaalien kultaisten sijaan"
@@ -1533,15 +2543,6 @@ msgstr "Haluatko varmati lopettaa?"
msgid "Play"
msgstr "Pelaa"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Lopeta"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Laita tallennus/lataus levy asemaan"
@@ -1590,11 +2591,6 @@ msgstr "E~d~ellinen"
msgid "~N~ext"
msgstr "Se~u~raava"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~S~ulje"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Vain puhe"
@@ -1620,10 +2616,6 @@ msgstr "Valitse taitotasosi."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Lue Loom(TM) ohjekirjaa saadaksesi ohjeita."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Standardi"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Harjoitus"
@@ -2145,7 +3137,7 @@ msgstr "Lennф oikealle"
msgid "Fly to lower right"
msgstr "Lennф alas oikealle"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2154,40 +3146,7 @@ msgstr ""
"Suora MIDI tuki vaatii Roland pфivityksen LucasArtsilta, mutta\n"
"%s puuttuu. Kфytetффn AdLibia sen sijaan."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Pelitilan tallennus ei onnistunut tiedostoon:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Pelitilan lataus ei onnistunut tiedostosta:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Pelitilan tallennus onnistui tiedostoon:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2197,189 +3156,6 @@ msgstr ""
"Pelataksesi Maniac Mansionia, mene ScummVM:n pффvalikkoon ja paina 'Lisфф "
"peli'. Valitse 'Maniac' hakemisto Tentacle hakemiston sisфltф."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~Z~ip moodi valittu"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "Siirtymфt pффllф"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Pudota sivu"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "Nфytф kartta"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Pффvalikko"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "Vesiefekti pффllф"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Videotiedostoa '%s' ei lіytynyt!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Pelitallenteen lataaminen tiedostosta epфonnistui."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Pelin tallentaminen tiedostoon epфonnistui."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Tiedoston tuhoaminen ei onnistunut."
-
-#: engines/groovie/detection.cpp:312
-#, fuzzy
-msgid "Fast movie speed"
-msgstr "Nopea moodi"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr ""
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Pelin tallentaminen epфonnistui."
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Studioyleisі"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Studioyleisі pффlle"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Ohita tuki"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Salli tekstin ja videoiden ohittaminen"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Helium moodi"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Kфytф helium moodia"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Pehmeф vieritys"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Kфytф pehmeфф vieritystф kфvellessф"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Leijuva kursori"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Kфytф leijuvia kursoreita"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Kestopisteet (HP) graafisina palkkeina"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Kфytф kestopisteissф vфrillisiф grafiikkapalkkeja numeroiden sijaan"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Hyіkkфys 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Hyіkkфys 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Hyіkkфys 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Liiku eteenpфin"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Liiku taaksepфin"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Liiku vasemmalle"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Liiku oikealle"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Kффnny vasemmalle"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Kффnny oikealle"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Lepфф"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Asetukset"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Valitse loitsu"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Kфytфt General MIDI-ффnilaitetta, mutta peli\n"
-"tukee vain Roland MT-32:sta. Jotkut ффniraidat\n"
-"eivфt ehkф kuulosta siltф miltф niiden pitфisi."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Vaihtoehtoinen intro"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Kфytф vaihtoehtoista pelin introa (vain CD versiossa)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2404,21 +3180,22 @@ msgstr "Levykeversion intro"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Kфytф levykeversion introa (vain CD versiossa)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "PSX stream videota '%s' ei voi nфyttфф paletisoidussa tilassa"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"DXA videotiedostoja lіydettiin mutta ScummVM on kффnnetty ilman zlib-tukea"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "MPEG2 videotiedostoja ei enфф tueta"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr "PSX videoita lіydetty, mutta ScummVM on kффnnetty ilman RGB tukea"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Videotiedosto '%s' ei lіytynyt"
@@ -2460,11 +3237,18 @@ msgstr "Sфilytф uusi tallennus"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Broken Sword 1:n demo pффttyy tфhфn"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr "PSX videoita lіydetty, mutta ScummVM on kффnnetty ilman RGB tukea"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"DXA videotiedostoja lіydettiin mutta ScummVM on kффnnetty ilman zlib-tukea"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Nфytф esineiden tiedot"
@@ -2488,794 +3272,49 @@ msgstr ""
"Tiedosto teenagent.dat on pakattu, mutta zlib-kirjastoa ei ole kффnnetty "
"ScummVM:ффn. Pura teenagent.dat."
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Pelin tallennus kohtaan ei onnistunut kohtaan %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Ladataan peliф..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Tallennetaan peliф..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"Pelin Nippon Safes tallennukset ovat vanhassa muodossa, joita ei enфф tueta. "
-"Tallennukset\n"
-"tulee nimetф uudelleen ennen kuin ScummVM voi kфyttфф niitф. Paina 'Hyvфksy' "
-"muuntaaksesi tallennukset.\n"
-"Jos et tee muunnosta nyt, ScummVM kysyy sinulta uudelleen seuraavalla "
-"kerralla kun kфynnistфt pelin.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM muunsi kaikki pelitallenteet onnistuneesti"
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"Osa tiedostoista ei ehkф muuntunut oikein. Varoitukset tulostettiin konsoli-"
-"ikkunaan. Pyydфmme ettф ilmoittaisit\n"
-"niistф ScummVM:n kehittфjille."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2446
-#, fuzzy
-msgid "Down/Zoom Out"
-msgstr "Zoomaa ylіs"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr ""
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME OPL emulaattori"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox OPL emulaattori"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Valittua ффnilaitetta '%s' ei lіytynyt. Se saattaa olla kytketty pois pффltф "
-"tai irrotettuna tietokoneesta."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Yritetффn kфyttфф seuraavaa saatavilla olevaa laitetta..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Valitsemaasi ффnilaitetta '%s' ei voida kфyttфф. Avaa lokitiedosto "
-"saadaksesi lisфtietoja."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Ensisijaista ффnilaitetta '%s' ei lіytynyt. Se saattaa olla kytketty pois "
-"pффltф tai irrotettuna tietokoneesta."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Ensisijaista ффnilaitetta '%s' ei voida kфyttфф. Avaa lokitiedosto "
-"saadaksesi lisфtietoja."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Ei musiikkia"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Amiga Audio emulaattori"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib emulaattori"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS emulaattori (EI TOTEUTETTU)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64 Audio emulaattori"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Alustetaan MT-32 emulaattoria"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32 emulaattori"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC kaiuttimen emulaattori"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM PCjr emulaattori"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Nфppфinkartta:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr ""
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Aktiivinen)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Estetty)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Globaali)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Peli)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "ScummVM pффvalikko"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~V~asenkфtinen tila"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~I~ndyn tappelukontrollit"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Nфytф hiiren kursori"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Tartu reunoihin"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Kosketuksen X siirros"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Kosketuksen Y siirto"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Kфytф kannettavan trackpad-tyylistф kursorinhallintaa"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr ""
-"Napauta kerran vasen klikkausta varten, napauta kahdesti oikeaa klikkausta "
-"varten"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Herkkyys"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr ""
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Pффruudun skaalaus"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Laitteistoskaalaus (nopea, mutta huono laatu)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Ohjelmistoskaalaus (hyvф laatu, mutta hitaampi)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Ei skaalattu (vierittф vasemmalle ja oikealle itse)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Kirkkaus:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Korkealuokkainen ффni (hidas) (buuttaus)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr ""
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Hiiren vedф-ja-pudota tila kфytіssф."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Hiiren vedф-ja-pudota tila pois kфytіstф."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Touchad tila pффllф"
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Touchpad tila pois pффltф"
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Klikkaus moodi"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Vasen klikkaus"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Keskiklikkaus"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Oikea klikkaus"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Piilota ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Piilota muut"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Nфytф kaikki"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Ikkuna"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimoi"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normaali (ei skaalausta)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normaali (ei skaalausta)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Kuvasuhteen korjaus pффllф"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Kuvasuhteen korjaus pois pффltф"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Valittu grafiikkafiltteri:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Ikkunoitu tila"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Conserve"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Nykyinen nфyttіtila"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Nykyinen skaalaus"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Valittu filtteritila: Linear"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Valittu filtteritila: Nearest"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Ylіs"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Alas"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Vasen"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Oikea"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr ""
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr ""
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Vaihda hahmoa"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Ohita teksti"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Nopea moodi"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debuggeri"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Pффvalikko"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Virtuaalinen nфppфimistі"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Nфppфinmффrittelijф"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Haluatko lopettaa?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Video"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Nykyinen videotila:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr ""
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Horisontaalinenunderscan"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Vertikaalinen underscan"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Syіte"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "GC Padin herkkyys"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "GC PAdin kiihtyvyys"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Tila:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Tuntematon"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Liitф DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Vapauta DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Palvelin:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Jako:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Kфyttфjфnimi:"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Lisфф monta..."
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Salasana:"
+#~ msgid "Mass Add..."
+#~ msgstr "Lisфф monta..."
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Alusta verkko"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr "Poistaa General MIDIn peleistф joissa on Roland MT-32 ффniraita"
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Mounttaa SMB"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standardi (16 bpp)"
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Vapauta SMB"
+#~ msgid "Alternative intro"
+#~ msgstr "Vaihtoehtoinen intro"
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD mountattu onnistuneesti"
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Kфytф vaihtoehtoista pelin introa (vain CD versiossa)"
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Virhe liitettфessф DVD:tф"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "MPEG2 videotiedostoja ei enфф tueta"
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD ei ole liitetty"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Verkko ylhффllф, jako liitetty"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Conserve"
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Verkko ylhффllф"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", virhe liitettфessф jakoa"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", jakoa ei liitetty"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Verkko alhaalla"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Alustetaan verkkoa"
+#~ msgid "Current display mode"
+#~ msgstr "Nykyinen nфyttіtila"
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Aikakatkaisu kun verkkoa alustettiin"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Verkko ei ole alustettu (%d)"
+#~ msgid "Current scale"
+#~ msgstr "Nykyinen skaalaus"
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Piilota tyіkalupalkki"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Nфytф nфppфimistі"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Valittu filtteritila: Linear"
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Ффnet pффllф/pois"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Oikea klikkaus"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Nфytф/Piilota kursori"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Vapaa katselu"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Zoomaa ylіs"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Zoomaa alas"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Mффritф nфppфimet"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Nuoli ylіs"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Nuoli alas"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Nuoli vasemmalle"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Nuoli oikealle"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Haluatko tallentaa vai ladata pelin?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Haluatko varmasti lopettaa?"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Nфppфimistі"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Kффnnф"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Kфytetффn SDL:n ajuria"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Nфyttі"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Haluatko suorittaa automaattisen skannauksen?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Mффritф oikeaklikkauksen toiminto"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Hiiren oikealle klikkaukselle on mффriteltфvф nфppфin, ennen kuin tфtф peliф "
-"voi pelata"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Mффritф nфppфin tyіkalupalkin piilottamiselle"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Tyіkalupalkin piilottamiselle on mффriteltфvф nфppфin, ennen kuin tфtф peliф "
-"voi pelata"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Zoomaa karttaa ylіs (valinnainen)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Zoomaa karttaa alas (valinnainen)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Muista mффritellф nфppфin tyіkalupalkin piilottamiselle, jotta voit nфhdф "
-"koko tavaraluettelon"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Haluatko varmasti palata pelivalitsimeen?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Pelivalitsin"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Haluatko varmasti lopettaa?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Kosketusnфytіn 'Tap moodi' - vasen klikkaus"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Kosketusnфytіn 'Tap moodi' - oikea klikkaus"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Kosketusnфytіn 'Tap moodi' - ei klikkausta"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Maksimi ффnenvoimakkuus"
-
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Nostetaan ффnenvoimakkuutta"
-
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Minimi ффnenvoimakkuus"
-
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Lasketaan ффnenvoimakkuutta"
-
-#: backends/events/openpandora/op-events.cpp:174
-#, fuzzy
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Kosketusnфytіn 'Tap moodi' - ei klikkausta"
-
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Tarkista pфivitykset..."
-
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Klikkaa oikealla kerran"
-
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr ""
-
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Esc nфppфin"
-
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Pelivalikko"
-
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Nфytф keypad"
-
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Ohjaa hiirtф"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Klikkaus pффllф"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Klikkaus pois pффltф"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Valittu filtteritila: Nearest"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Kфytф Roland GS moodia"
diff --git a/po/fr_FR.po b/po/fr_FR.po
index c4978d4292..453050ec29 100644
--- a/po/fr_FR.po
+++ b/po/fr_FR.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-04-26 12:24+0100\n"
"Last-Translator: Thierry Crozat <criezy@scummvm.org>\n"
"Language-Team: French <scummvm-devel@lists.sf.net>\n"
@@ -52,15 +52,15 @@ msgid "Go up"
msgstr "Remonter"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Annuler"
@@ -68,26 +68,26 @@ msgstr "Annuler"
msgid "Choose"
msgstr "Choisir"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Fermer"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Clic de souris"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Afficher le clavier"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Changer l'affectation des touches"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Basculer en plein щcran"
@@ -99,21 +99,21 @@ msgstr "Sщlectionnez une action р affecter"
msgid "Map"
msgstr "Affecter"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -139,15 +139,15 @@ msgstr "Selectionnez une action"
msgid "Press the key to associate"
msgstr "Appuyez sur la touche р associer"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Jeu"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -155,29 +155,29 @@ msgstr ""
"ID compact du jeu utilisщe pour identifier les sauvegardes et dщmarrer le "
"jeu depuis la ligne de commande"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nom:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Nom complet du jeu"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nom:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Langue:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -185,150 +185,150 @@ msgstr ""
"Langue du jeu. Cela ne traduira pas en anglais par magie votre version "
"espagnole du jeu."
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<defaut>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plateforme:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Plateforme pour laquelle votre jeu a щtщ conчu"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Systшme:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Moteur"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Graphique"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Utiliser des rщglages graphiques spщcifiques р ce jeux"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Rщglages spщcifiques р ce jeux"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Audio"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Utiliser des rщglages audio spщcifiques р ce jeux"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Rщglages spщcifiques р ce jeux"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volume"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volume"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Utiliser des rщglages de volume sonore spщcifiques р ce jeux"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Rщglages spщcifiques р ce jeux"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Utiliser des rщglages MIDI spщcifiques р ce jeux"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Rщglages spщcifiques р ce jeux"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Utiliser des rщglages MT-32 spщcifiques р ce jeux"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Rщglages spщcifiques р ce jeux"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Chemins"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Chemins"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Chemin du Jeu:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Chemin du Jeu:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Extra:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Dщfinie un chemin vers des donnщes suplщmentaires utilisщes par le jeu"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Extra:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Sauvegardes:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Dщfinie l'emplacement oљ les fichiers de sauvegarde sont crщщs"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Sauvegardes:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -337,135 +337,136 @@ msgctxt "path"
msgid "None"
msgstr "Aucun"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Dщfaut"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Choisir une banque de sons"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Sщlectionner le rщpertoire contenant les donnщes du jeu"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Sщlectionner un rщpertoire supplщmentaire"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Sщlectionner le rщpertoire pour les sauvegardes"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Cet ID est dщjр utilisщ par un autre jeu. Choisissez en un autre svp."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~Q~uitter"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Quitter ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "Р ~P~ropos..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Р propos de ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~ptions..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Change les options globales de ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~D~щmarrer"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Dщmarre le jeu sщlectionnщ"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~C~harger"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Charge une sauvegarde pour le jeu sщlectionnщ"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~A~jouter..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr ""
"Ajoute un jeu р la Liste. Maintenez Shift enfoncщe pour un Ajout Massif"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~E~diter..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Change les options du jeu"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~S~upprimer"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Supprime le jeu de la liste. Les fichiers sont conservщs"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~A~jouter..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~E~diter..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~S~upprimer"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Recherche dans la liste de jeux"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Filtre:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Charger le jeu:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Charger"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -473,7 +474,8 @@ msgstr ""
"Voulez-vous vraiment lancer la dщtection automatique des jeux ? Cela peut "
"potentiellement ajouter un grand nombre de jeux."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -481,7 +483,8 @@ msgstr ""
msgid "Yes"
msgstr "Oui"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -489,40 +492,36 @@ msgstr "Oui"
msgid "No"
msgstr "Non"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM n'a pas pu ouvrir le rщpertoire sщlectionnщ."
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM n'a pas trouvщ de jeux dans le rщpertoire sщlectionnщ."
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Choisissez le jeu:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Voulez-vous vraiment supprimer ce jeu ?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Voulez-vous charger ou enregistrer le jeu ?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr ""
"Le chargement de sauvegarde depuis le lanceur n'est pas supportщ pour ce jeu."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM n'a pas pu trouvщ de moteur pour lancer le jeu sщlectionnщ."
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Ajout Massif..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Ajout Massif..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... en cours ..."
@@ -622,8 +621,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Mode spщcial de tramage supportщ par certains jeux"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Plein щcran"
@@ -758,12 +756,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Roland MT-32 exacte (pas d'щmu GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Roland GS (dщsactive le mappage GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "Dщsactiver la conversion des pistes MT-32 en General MIDI"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -956,15 +957,15 @@ msgstr "Vue en liste"
msgid "Grid view"
msgstr "Vue en grille"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Date inconnue"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Heure inconnue"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Durщe de jeu inconnue"
@@ -976,43 +977,43 @@ msgstr "Supprimer"
msgid "Do you really want to delete this savegame?"
msgstr "Voulez-vous vraiment supprimer cette sauvegarde ?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Date: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Heure: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Durщe de jeu: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Sauvegarde sans nom"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Suivant"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Prщcщdent"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Nouvelle Sauvegarde"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Crщe une nouvelle sauvegarde."
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nom: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Entrez une description pour l'emplacement %d:"
@@ -1021,29 +1022,32 @@ msgstr "Entrez une description pour l'emplacement %d:"
msgid "Select a Theme"
msgstr "Sщlectionnez un Thшme"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "GFX dщsactivщ"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "GFX dщsactivщ"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Rendu Standard (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Normal"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Rendu Anti-crщnelщ (16 bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Anti-crщnelщ (16 bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1133,37 +1137,38 @@ msgstr "Remet tous les rщglages р leurs valeurs par dщfaut."
#: gui/fluidsynth-dialog.cpp:216
msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
-msgstr "Voulez-vous vraiment remettre tous les rщglages р leurs valeurs par dщfaut ?"
+msgstr ""
+"Voulez-vous vraiment remettre tous les rщglages р leurs valeurs par dщfaut ?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Le niveau de debug '%s' n'est pas supportщ par ce moteur de jeu"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menu"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Passer"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Mettre en pause"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Passer la phrase"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Erreur lors de l'щxщcution du jeu:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Impossible de trouver un moteur pour exщcuter le jeu sщlectionnщ"
@@ -1231,18 +1236,18 @@ msgstr "Annuler par l'utilisateur"
msgid "Unknown error"
msgstr "Erreur inconnue"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Le jeu dans '%s' n'est pas reconnu."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Veuillez reporter les informations suivantes р l'щquipe ScummVM ainsi que le "
"nom"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "du jeu que vous avez essayщ d'ajouter, sa version, le langage, etc..."
@@ -1280,21 +1285,21 @@ msgid "~R~eturn to Launcher"
msgstr "Retour au ~L~anceur"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Sauvegarde:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Sauver"
@@ -1331,23 +1336,23 @@ msgstr "~A~nnuler"
msgid "~K~eys"
msgstr "~T~ouches"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Impossible d'initialiser le format des couleurs."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Impossible de changer le mode vidщo р: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Impossible d'appliquer la correction du rapport d'aspect."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Impossible d'appliquer l'option plein щcran."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1361,7 +1366,7 @@ msgstr ""
"donnщes du jeu sur votre disque dur.\n"
"Lisez le fichier README pour plus de dщtails."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1375,7 +1380,7 @@ msgstr ""
"logiciel appropriщ.\n"
"Lisez le fichier README pour plus de dщtails."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1384,7 +1389,7 @@ msgstr ""
"Echec du chargement (%s)! . Lisez le fichier README pour les informations de "
"base et les instructions pour obtenir de l'aide supplщmentaire."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1394,35 +1399,764 @@ msgstr ""
"complшtement supportщ par ScummVM. Il est donc instable et les sauvegardes "
"peuvent ne pas marcher avec une future version de ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Jouer quand mъme"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Щmulateur MAME OPL"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Щmulateur DOSBox OPL"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Le pщriphщrique audio sщlectionnщ '%s' n'a pas щtщ trouvщ (il est peut-ъtre "
+"щteint ou dщbranchщ)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Essaye d'utiliser le prochain pщriphщrique disponible..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"The selected audio device '%s' ne peut pas ъtre utilisщ. Voir le fichier de "
+"log pour plus de dщtails."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Le pщriphщrique audio prщfщrщ '%s' n'a pas щtщ trouvщ (il est peut-ъtre "
+"щteint ou dщbranchщ)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Le pщriphщrique audio prщfщrщ '%s' ne peut pas ъtre utilisщ. Voir le fichier "
+"de log pour plus de dщtails."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Pas de musique"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Щmulateur Amiga Audio"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Щmulateur AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Щmulateur Apple II GS (PAS IMPLЩMENTЩ)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Щmulateur C64 Audio"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Initialisation de l'Щmulateur MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Щmulateur MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Щmulateur Haut Parleur PC"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Щmulateur IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Affectation des touches:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr "(Effectif)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr "(Actif)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr "(Bloquщ)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr "(Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr "(Jeu)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "MIDI Windows"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~F~ermer"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Menu Principal ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Mode ~G~aucher"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Contrєle des combats d'~I~ndy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Afficher le curseur de la souris"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Aligner sur les bords"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Dщcalage X du toucher"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Dщcallage Y du toucher"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Activer le contrєle du curseur de type trackpad"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Toucher pour un clic gauche, toucher deux fois pour un clic droit"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Sensibilitщ"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Щchelle initiale de l'щcran du haut"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Щchelle de l'щcran principal"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Mise р l'echelle matщrielle (rapide mais qualitщ faible)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Mise р l'щchelle logicielle (bonne qualitщ mais plus lent)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Sans changement d'щchelle (vous devez faire dщfiler l'щcran)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Luminositщ:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Audio haute qualitщ (plus lent) (redщmarrer)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Dщsactivщ l'extinction"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Mode souris-cliquer-et-dщplacer activщ"
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Mode souris-cliquer-et-dщplacer dщsactivщ"
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Mode touchpad activщ"
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Mode touchpad dщsactivщ"
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Mode Clic"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Clic Gauche"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Clic Milieu"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Clic Droit"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Masquer ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Masquer les autres"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Tout afficher"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Fenъtre"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Placer dans le Dock"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (щchelle d'origine)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Activer la correction du rapport d'aspect"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Dщsactiver la correction du rapport d'aspect"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Mode graphique actif:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Mode Fenъtre"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Ouvrir"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Haut"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Bas"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Gauche"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Droite"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zone"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Fonction Multiple"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Changement de personnage"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Sauter le texte"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Mode rapide"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Quitter"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debugger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Menu global"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Clavier virtuel"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Affectation des touches"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Voulez-vous quitter ?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Vidщo"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Mode vidщo actuel"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Coup double"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Underscan horizontal:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Underscan vertical:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Entrщe"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Sensibilitщ du pad GC:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Acceleration du pad GC:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Status:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Inconue"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Monter le DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Dщmonter le DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Serveur:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Disque partagщ:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Nom d'utilisateur:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Mot de passe:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Initialiser le rщseau"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Monter SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Dщmonter SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD montщ avec succшs"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Щchec du montage du DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD non montщ"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Rщseau connectщ, disque partagщ montщ"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Rщseau connectщ"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", щchec du montage du disque partagщ"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", disque partagщ non montщ"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Rщseau dщconnectщ"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Initialisation du rщseau"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Dщpassement du dщlai lors de l'initialisation du rщseau"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Rщseau non initialisщ (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Cachщ la barre d'outils"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Afficher le clavier"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Audio marche/arrъt"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Clic droit"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Afficher/Cacher le curseur"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Regarder autour"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Dщzoomer"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Zoomer"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Affecter les touches"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Haut"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Bas"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Gauche"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Droit"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Voulez-vous charger ou enregistrer le jeu ?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr "Voulez-vous vraiment quitter ?"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Clavier"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Pivoter"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Utilise le pilote SDL"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Affichage"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Voulez-vous exщcuter une recherche automatique ?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Affecter l'action 'Clic Droit'"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Vous devez affecter une touche р l'action de 'Clic Droit' pour pouvoir jouer "
+"р ce jeu"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Affecter l'action 'Cacher Bar d'Outils'"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Vous devez affecter une touche р l'action 'Cacher Bar d'Outils' pour pouvoir "
+"jouer р ce jeu"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Affecter l'action 'Dщzoomer' (optionnelle)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Affecter l'action 'Zoomer' (optionnelle)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Noubliez pas d'affecter une touche р l'action 'Cacher Bar d'Outils' pour "
+"pouvoir voir entiшrement l'inventaire"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Voulez-vous vraiment retourner au Lanceur ?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Lanceur"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Voulez-vous vraiment quitter ?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Touchscreen 'Tap Mode' - Clic Gauche"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Touchscreen 'Tap Mode' - Clic Droit"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Touchscreen 'Tap Mode' - Dщplacer sans cliquer"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Volume Maximum"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Augmentation Volume"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Volume Minimum"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Diminution Volume"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Touchscreen 'Tap Mode' - Dщplacer sans cliquer"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Recherche des mises р jour..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Simple Clic Droit"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Dщplacer Uniquement"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Touche d'щchappement"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Menu du Jeu"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Afficher le clavier"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Contrєles la Souris"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Clic Activщ"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Clic Dщsactivщ"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Dialogues sauvegarde/chargement d'origine"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Utiliser les dialogues sauvegarde/chargement d'origine plutєt que ceux de "
"ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Charger le jeu:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Charger"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Щchec du chargement de l'щtat du jeu depuis le fichier:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Щchec de l'enregistrement de l'щtat du jeu dans le fichier:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Щtat du jeu enregistrщ avec succшs dans le fichier:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Fichier de sщquence '%s' non trouvщ!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1432,8 +2166,8 @@ msgid ""
"Press OK to convert them now, otherwise you will be asked again the next "
"time you start the game.\n"
msgstr ""
-"ScummVM a trouvщ des anciens fichiers de sauvegarde pour Drascula qui "
-"ont besoin d'ъtre convertis.\n"
+"ScummVM a trouvщ des anciens fichiers de sauvegarde pour Drascula qui ont "
+"besoin d'ъtre convertis.\n"
"L'ancien format de sauvegarde n'est plus supportщ, donc vous ne pourrez pas "
"les charger si vous ne les convertissez pas.\n"
"\n"
@@ -1448,27 +2182,302 @@ msgstr "Utiliser le mode palette lumineuse"
msgid "Display graphics using the game's bright palette"
msgstr "Utiliser la palette lumineuse du jeu pour l'affichage"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Щchec du chargement de l'щtat du jeu depuis le disque."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Щchec de l'enregistrement de l'щtat du jeu sur le disque."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Щchec de la suppression du fichier."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Vidщo rapide"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Joue les vidщos plus rapidement"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Щchec de la sauvegarde."
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Public en studio"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Activer le public en studio"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Support des interruptions"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Permet de sauter les textes et scшnes cinщmatiques"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Mode Helium"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Activer le mode helium"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Dщfilement rщgulier"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Activer le dщfilement rщgulier en marchant"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Curseurs flotants"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Activer les curseurs flotants"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Bar HP"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Activer les bars de santщ (Hit Point)"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Attaque 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Attaque 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Attaque 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Avancer"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Reculer"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Faire un pas vers la Gauche"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Faire un pas vers la Droite"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Tourner vers la Gauche"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Tourner vers la Droite"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Se Reposer"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Options"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Choisir un Sort"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Il semble que vous utilisiez un pщriphщrique General MIDI,\n"
+"mais ce jeu ne support que le MIDI Roland MT32. Nous essayons\n"
+"d'associer les instruments Roland MT32 aux instruments General\n"
+"MIDI. Cependant il est possible que quelques pistes ne soient\n"
+" pas jouщes correctement."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Mode ~Z~ip Activщ"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "T~r~ansitions activщes"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~L~acher la Page"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "Afficher la Carte"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "~M~enu Principal"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~E~ffets de l'Eau Activщs"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Erreur lors de la sauvegarde dans l'emplacement %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Chargement en cours..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Sauvegarde en cours..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM a trouvщ des anciens fichiers de sauvegarde pour Nippon Safes qui "
+"ont besoin d'ъtre convertis.\n"
+"L'ancien format de sauvegarde n'est plus supportщ, donc vous ne pourrez pas "
+"les charger si vous ne les convertissez pas.\n"
+"\n"
+"Appuyer sur OK pour les convertir maintenant, sinon le mъme message "
+"s'affichera la prochaine fois que vous dщmarrerez le jeu.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM a converti avec succшs vos anciennes sauvegardes."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM a affichщ des messages d'avertissements dans votre fenъtre de "
+"console et ne peut pas garantir que tous les fichiers ont щtщ convertis."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Nom de sauvegarde invalide"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Haut/Zoom/Avancer/Ouvrir Portes"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Bas/Dщzoom"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Montrer/Cacher l'Inventaire"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Montrer/Cacher le Biochip"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Action/Sщlection"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Basculer l'Affichage Central"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Montrer/Cacher l'Щcran d'Info"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Montrer/Cacher le Menu de Pause"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "Dщtramage EGA"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Activer le dщtramage dans les jeux EGA"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Prщfщrer les effets sonors digitals"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Prщfщrer les effets sonores digitaux plutєt que ceux synthщtisщs"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Utiliser IMF/Yamaha FB-01 pour la sortie MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1476,32 +2485,32 @@ msgstr ""
"Utiliser une carte IBM Music Feature ou un module Yamaha FB-01 FM pour la "
"sortie MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Utiliser la musique du CD"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr ""
"Utiliser la musique du CD quand elle est disponible au lieu de la musique du "
"jeu"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Utiliser les curseurs Windows"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Utiliser les curseurs Windows (plus petits et monochromes) au lieu des "
"curseurs DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Utiliser les curseurs argentщs"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr "Utiliser les curseurs argentщs au lieu des curseurs normaux dorщs"
@@ -1541,15 +2550,6 @@ msgstr "Voulez-vous vraiment quitter ? (O/N)O"
msgid "Play"
msgstr "Jouer"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Quitter"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Insщrer le disque de sauvegarde/chargement"
@@ -1598,11 +2598,6 @@ msgstr "~P~rщcщdent"
msgid "~N~ext"
msgstr "~S~uivant"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~F~ermer"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Voix"
@@ -1628,10 +2623,6 @@ msgstr "Sщlectionnez un niveau de compщtence."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Reportez-vous р votre manuel d'instruction."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Normal"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Essai"
@@ -2153,7 +3144,7 @@ msgstr "Voler vers la droite"
msgid "Fly to lower right"
msgstr "Voler vers la bas р droite"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2162,40 +3153,7 @@ msgstr ""
"Support MIDI natif requiшre la mise р jour Roland de LucasArt,\n"
"mais %s manque. Utilise AdLib р la place."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Щchec de l'enregistrement de l'щtat du jeu dans le fichier:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Щchec du chargement de l'щtat du jeu depuis le fichier:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Щtat du jeu enregistrщ avec succшs dans le fichier:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2206,190 +3164,6 @@ msgstr ""
"choisissez 'Ajouter...' dans le Lanceur de ScummVM et sщlectionnez le "
"rщpertoire 'Maniac Mansion' dans le rщpertoire du jeu Day Of The Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Mode ~Z~ip Activщ"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "T~r~ansitions activщes"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~L~acher la Page"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "Afficher la Carte"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "~M~enu Principal"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~E~ffets de l'Eau Activщs"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Fichier de sщquence '%s' non trouvщ!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Щchec du chargement de l'щtat du jeu depuis le disque."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Щchec de l'enregistrement de l'щtat du jeu sur le disque."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Щchec de la suppression du fichier."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Vidщo rapide"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Joue les vidщos plus rapidement"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Щchec de la sauvegarde."
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Public en studio"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Activer le public en studio"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Support des interruptions"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Permet de sauter les textes et scшnes cinщmatiques"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Mode Helium"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Activer le mode helium"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Dщfilement rщgulier"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Activer le dщfilement rщgulier en marchant"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Curseurs flotants"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Activer les curseurs flotants"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Bar HP"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Activer les bars de santщ (Hit Point)"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Attaque 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Attaque 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Attaque 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Avancer"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Reculer"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Faire un pas vers la Gauche"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Faire un pas vers la Droite"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Tourner vers la Gauche"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Tourner vers la Droite"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Se Reposer"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Options"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Choisir un Sort"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Il semble que vous utilisiez un pщriphщrique General MIDI,\n"
-"mais ce jeu ne support que le MIDI Roland MT32. Nous essayons\n"
-"d'associer les instruments Roland MT32 aux instruments General\n"
-"MIDI. Cependant il est possible que quelques pistes ne soient\n"
-" pas jouщes correctement."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Intro alternative"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Utiliser une intro alternative (version CD uniquement)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2414,23 +3188,26 @@ msgstr "Intro disquette"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Utiliser l'intro de la version disquette (version CD uniquement)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr ""
"La scшne cinщmatique PSX '%s' ne peut pas ъtre lu avec 256 couleurs ou moins"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"Les sщquences DXA sont prщsente mais ScummVM a щtщ compilщ sans le support "
"zlib."
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Les sщquences MPEG2 ne sont plus supportщes"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"Scшnes cinщmatique PSX dщtectщes mais ScummVM a щtщ compilщ sans le support "
+"des couleurs RGB"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Sщquence '%s' non trouvщ"
@@ -2474,13 +3251,21 @@ msgstr "Garder la nouvelle"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "C'est la fin de la dщmo des Chevaliers de Baphomet"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"Scшnes cinщmatique PSX dщtectщes mais ScummVM a щtщ compilщ sans le support "
"des couleurs RGB"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"Les sщquences DXA sont prщsente mais ScummVM a щtщ compilщ sans le support "
+"zlib."
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Afficher la description des objets"
@@ -2492,800 +3277,61 @@ msgstr "Afficher la description des objets lors de passage du pointeur"
#: engines/teenagent/resources.cpp:94
msgid ""
"You're missing the 'teenagent.dat' file. Get it from the ScummVM website"
-msgstr "Il vous manque le fichier 'teenagent.dat'. Tщlщchargez le depuis le "
-"site web de ScummVM."
+msgstr ""
+"Il vous manque le fichier 'teenagent.dat'. Tщlщchargez le depuis le site web "
+"de ScummVM."
#: engines/teenagent/resources.cpp:115
msgid ""
"The teenagent.dat file is compressed and zlib hasn't been included in this "
"executable. Please decompress it"
-msgstr "Le fichier teenagent.dat est compressщ et cet exщcutable n'inclus "
-"pas zlib. Veuillez le dщcompresser."
-
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Erreur lors de la sauvegarde dans l'emplacement %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Chargement en cours..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Sauvegarde en cours..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM a trouvщ des anciens fichiers de sauvegarde pour Nippon Safes qui "
-"ont besoin d'ъtre convertis.\n"
-"L'ancien format de sauvegarde n'est plus supportщ, donc vous ne pourrez pas "
-"les charger si vous ne les convertissez pas.\n"
-"\n"
-"Appuyer sur OK pour les convertir maintenant, sinon le mъme message "
-"s'affichera la prochaine fois que vous dщmarrerez le jeu.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM a converti avec succшs vos anciennes sauvegardes."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM a affichщ des messages d'avertissements dans votre fenъtre de "
-"console et ne peut pas garantir que tous les fichiers ont щtщ convertis."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Nom de sauvegarde invalide"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Haut/Zoom/Avancer/Ouvrir Portes"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Bas/Dщzoom"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Montrer/Cacher l'Inventaire"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Montrer/Cacher le Biochip"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Action/Sщlection"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Basculer l'Affichage Central"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Montrer/Cacher l'Щcran d'Info"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Montrer/Cacher le Menu de Pause"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Щmulateur MAME OPL"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Щmulateur DOSBox OPL"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Le pщriphщrique audio sщlectionnщ '%s' n'a pas щtщ trouvщ (il est peut-ъtre "
-"щteint ou dщbranchщ)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Essaye d'utiliser le prochain pщriphщrique disponible..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"The selected audio device '%s' ne peut pas ъtre utilisщ. Voir le fichier de "
-"log pour plus de dщtails."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
msgstr ""
-"Le pщriphщrique audio prщfщrщ '%s' n'a pas щtщ trouvщ (il est peut-ъtre "
-"щteint ou dщbranchщ)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Le pщriphщrique audio prщfщrщ '%s' ne peut pas ъtre utilisщ. Voir le fichier "
-"de log pour plus de dщtails."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Pas de musique"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Щmulateur Amiga Audio"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Щmulateur AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Щmulateur Apple II GS (PAS IMPLЩMENTЩ)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Щmulateur C64 Audio"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Initialisation de l'Щmulateur MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Щmulateur MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Щmulateur Haut Parleur PC"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Щmulateur IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Affectation des touches:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr "(Effectif)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr "(Actif)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr "(Bloquщ)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr "(Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr "(Jeu)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "MIDI Windows"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Menu Principal ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Mode ~G~aucher"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Contrєle des combats d'~I~ndy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Afficher le curseur de la souris"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Aligner sur les bords"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Dщcalage X du toucher"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Dщcallage Y du toucher"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Activer le contrєle du curseur de type trackpad"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Toucher pour un clic gauche, toucher deux fois pour un clic droit"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Sensibilitщ"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Щchelle initiale de l'щcran du haut"
+"Le fichier teenagent.dat est compressщ et cet exщcutable n'inclus pas zlib. "
+"Veuillez le dщcompresser."
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Щchelle de l'щcran principal"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Mise р l'echelle matщrielle (rapide mais qualitщ faible)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Mise р l'щchelle logicielle (bonne qualitщ mais plus lent)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Sans changement d'щchelle (vous devez faire dщfiler l'щcran)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Luminositщ:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Audio haute qualitщ (plus lent) (redщmarrer)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Dщsactivщ l'extinction"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Mode souris-cliquer-et-dщplacer activщ"
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Mode souris-cliquer-et-dщplacer dщsactivщ"
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Mode touchpad activщ"
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Mode touchpad dщsactivщ"
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Mode Clic"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Clic Gauche"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Clic Milieu"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Clic Droit"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Masquer ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Masquer les autres"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Tout afficher"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Fenъtre"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Placer dans le Dock"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (щchelle d'origine)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Activer la correction du rapport d'aspect"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Dщsactiver la correction du rapport d'aspect"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Mode graphique actif:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Mode Fenъtre"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Prщserve"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Originel"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Mode vidщo actuel"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Щchelle actuelle"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Filtre actif: Linщaire"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Filtre actif: Plus proche"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Haut"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Bas"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Gauche"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Droite"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zone"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Fonction Multiple"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Changement de personnage"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Sauter le texte"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Mode rapide"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debugger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Menu global"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Clavier virtuel"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Affectation des touches"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Voulez-vous quitter ?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Vidщo"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Mode vidщo actuel"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Coup double"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Underscan horizontal:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Underscan vertical:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Entrщe"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Sensibilitщ du pad GC:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Acceleration du pad GC:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Status:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Inconue"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Monter le DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Dщmonter le DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Serveur:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Disque partagщ:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Nom d'utilisateur:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Mot de passe:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Initialiser le rщseau"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Monter SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Dщmonter SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD montщ avec succшs"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Щchec du montage du DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD non montщ"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Rщseau connectщ, disque partagщ montщ"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Rщseau connectщ"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", щchec du montage du disque partagщ"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", disque partagщ non montщ"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Rщseau dщconnectщ"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Initialisation du rщseau"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Dщpassement du dщlai lors de l'initialisation du rщseau"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Rщseau non initialisщ (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Cachщ la barre d'outils"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Afficher le clavier"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Audio marche/arrъt"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Clic droit"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Afficher/Cacher le curseur"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Regarder autour"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Dщzoomer"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Zoomer"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Affecter les touches"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Haut"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Bas"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Gauche"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Droit"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Voulez-vous charger ou enregistrer le jeu ?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr "Voulez-vous vraiment quitter ?"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Clavier"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Pivoter"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Utilise le pilote SDL"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Affichage"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Voulez-vous exщcuter une recherche automatique ?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Affecter l'action 'Clic Droit'"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Vous devez affecter une touche р l'action de 'Clic Droit' pour pouvoir jouer "
-"р ce jeu"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Affecter l'action 'Cacher Bar d'Outils'"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Vous devez affecter une touche р l'action 'Cacher Bar d'Outils' pour pouvoir "
-"jouer р ce jeu"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Affecter l'action 'Dщzoomer' (optionnelle)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Affecter l'action 'Zoomer' (optionnelle)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Noubliez pas d'affecter une touche р l'action 'Cacher Bar d'Outils' pour "
-"pouvoir voir entiшrement l'inventaire"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Voulez-vous vraiment retourner au Lanceur ?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Lanceur"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Voulez-vous vraiment quitter ?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Touchscreen 'Tap Mode' - Clic Gauche"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Touchscreen 'Tap Mode' - Clic Droit"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Touchscreen 'Tap Mode' - Dщplacer sans cliquer"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Volume Maximum"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Ajout Massif..."
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Augmentation Volume"
+#~ msgid "Mass Add..."
+#~ msgstr "Ajout Massif..."
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Volume Minimum"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr "Dщsactiver la conversion des pistes MT-32 en General MIDI"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Diminution Volume"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standard (16bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Touchscreen 'Tap Mode' - Dщplacer sans cliquer"
+#~ msgid "Alternative intro"
+#~ msgstr "Intro alternative"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Recherche des mises р jour..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Utiliser une intro alternative (version CD uniquement)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Simple Clic Droit"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Les sщquences MPEG2 ne sont plus supportщes"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Dщplacer Uniquement"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Touche d'щchappement"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Prщserve"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Menu du Jeu"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Originel"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Afficher le clavier"
+#~ msgid "Current display mode"
+#~ msgstr "Mode vidщo actuel"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Contrєles la Souris"
+#~ msgid "Current scale"
+#~ msgstr "Щchelle actuelle"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Clic Activщ"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Filtre actif: Linщaire"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Clic Dщsactivщ"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Filtre actif: Plus proche"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Activer le mode Roland GS"
diff --git a/po/gl_ES.po b/po/gl_ES.po
index 3e0b92bef0..d4fbd096e1 100644
--- a/po/gl_ES.po
+++ b/po/gl_ES.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.6.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-04-24 15:41+0100\n"
"Last-Translator: Santiago G. Sanz <s.sanz@uvigo.es>\n"
"Language-Team: Santiago G. Sanz <s.sanz@uvigo.es>\n"
@@ -51,15 +51,15 @@ msgid "Go up"
msgstr "Arriba"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Cancelar"
@@ -67,26 +67,26 @@ msgstr "Cancelar"
msgid "Choose"
msgstr "Elexir"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Pechar"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Premer co rato"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Mostrar teclado"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Asignar teclas"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Activar/desactivar pantalla completa"
@@ -98,21 +98,21 @@ msgstr "Elixe unha acciѓn para asignala"
msgid "Map"
msgstr "Asignar"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "Aceptar"
@@ -138,15 +138,15 @@ msgstr "Selecciona unha acciѓn"
msgid "Press the key to associate"
msgstr "Preme a tecla para asociala"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Xogo"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -154,178 +154,178 @@ msgstr ""
"Identificador curto do xogo para os ficheiros de gardado e a execuciѓn do "
"xogo dende a liёa de comandos"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nome:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Tэtulo completo do xogo"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nome:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Idioma:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr "Idioma do xogo. Non converterс a versiѓn galega do xogo en inglesa"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<por defecto>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plataforma:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Plataforma para a que se desenvolvera o xogo inicialmente"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Plataforma:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Motor"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grсficos"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "Efectos grсficos"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Anular a configuraciѓn dos grсficos"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Anular a configuraciѓn dos grсficos"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Son"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Anular a configuraciѓn do son"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Anular a configuraciѓn do son"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volume"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volume"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Anular a configuraciѓn do volume"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Anular a configuraciѓn do volume"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Anular a configuraciѓn de MIDI"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Anular a configuraciѓn de MIDI"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Anular a configuraciѓn de MT-32"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Anular a configuraciѓn de MT-32"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Camiёos"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Camiёos"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Camiёo do xogo:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Camiёo do xogo:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Camiёo adicional:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Especifica o camiёo dos datos adicionais usados no xogo"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Camiёo adicional:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Camiёo de gardado:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Especifica o lugar dos ficheiros de gardado"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Camiёo de gardado:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -334,134 +334,135 @@ msgctxt "path"
msgid "None"
msgstr "Ningњn"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Predefinido"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Seleccionar SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Selecciona un directorio con datos de xogo"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Selecciona un directorio con datos adicionais"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Selecciona un directorio para ficheiros de gardado"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Este ID de xogo xa estс en uso. Selecciona outro."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~S~aэr"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Saэr de ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "Ace~r~ca de..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Acerca de ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~pciѓns..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Cambiar as opciѓns de ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~I~niciar"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Iniciar o xogo seleccionado"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~C~argar..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Cargar partida do xogo seleccionado"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "Eng~a~dir xogo..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Manter premido MAIкS para engadir en masa"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~E~ditar xogo..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Cambiar as opciѓns do xogo"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "Elimina~r~ xogo"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Eliminar o xogo da lista. Os ficheiros de datos non se modifican"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "Eng~a~dir xogo..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~E~ditar xogo..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "Elimina~r~ xogo"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Buscar na lista de xogos"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Buscar:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Cargar partida:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Cargar"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -469,7 +470,8 @@ msgstr ""
"Queres executar o detector de xogos en masa? Щ posible que se engada un gran "
"nњmero de xogos."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -477,7 +479,8 @@ msgstr ""
msgid "Yes"
msgstr "Si"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -485,39 +488,35 @@ msgstr "Si"
msgid "No"
msgstr "Non"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM non foi quen de abrir o directorio!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM non foi quen de atopar xogos no directorio!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Elixe o xogo:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Seguro que queres eliminar esta configuraciѓn de xogo?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Queres cargar ou gardar a partida?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "O xogo non permite cargar partidas dende o iniciador."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM non foi quen de atopar un motor para executar o xogo!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Engadir en masa..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Engadir en masa..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "...progreso..."
@@ -616,8 +615,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Modos de interpolaciѓn de cores compatibles con algњns xogos"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Pantalla completa"
@@ -749,12 +747,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Roland MT-32 (sen emulaciѓn de GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Modo Roland GS (desactivar mapeamento GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "Desactiva o General MIDI para os xogos con mњsica en Roland MT-32"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -943,15 +944,15 @@ msgstr "Lista"
msgid "Grid view"
msgstr "Grade"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Non hai data gardada"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Non hai hora gardada"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Non hai tempo de xogo gardado"
@@ -963,43 +964,43 @@ msgstr "Eliminar"
msgid "Do you really want to delete this savegame?"
msgstr "Seguro que queres eliminar esta partida?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Data:"
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Hora:"
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Tempo de xogo:"
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Partida sen tэtulo"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Seg."
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Ant."
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Novo ficheiro"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Crea un novo ficheiro de gardado"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nome:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Introduce unha descriciѓn para o espazo %d:"
@@ -1008,29 +1009,32 @@ msgstr "Introduce unha descriciѓn para o espazo %d:"
msgid "Select a Theme"
msgstr "Seleccionar tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Efectos grсficos desactivados"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Efectos desactivados"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Procesamento estсndar (16 bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Estсndar (16 bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Estсndar"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Procesamento antidistorsiѓn (16 bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Antidistorsiѓn (16 bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1125,35 +1129,35 @@ msgstr ""
"Seguro que queres restablecer a configuraciѓn de FluidSynth aos seus valores "
"predefinidos?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "O motor non щ compatible co nivel de depuraciѓn %s"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menњ"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Omitir"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pausa"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Omitir liёa"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Erro de execuciѓn do xogo:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Non se puido atopar un motor para executar o xogo seleccionado"
@@ -1221,16 +1225,16 @@ msgstr "Usuario cancelado"
msgid "Unknown error"
msgstr "Erro descoёecido"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "O xogo de %s semella ser descoёecido."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr "Facilita esta informaciѓn ao equipo de ScummVM, xunto co nome"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "do xogo que tentaches engadir, xunto coa versiѓn, lingua, etc.:"
@@ -1268,21 +1272,21 @@ msgid "~R~eturn to Launcher"
msgstr "~V~olver ao Iniciador"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Gardar partida:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Gardar"
@@ -1319,23 +1323,23 @@ msgstr "~C~ancelar"
msgid "~K~eys"
msgstr "~T~eclas"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Non se puido iniciar o formato de cor."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Non se puido cambiar ao modo de vэdeo: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Non se puido aplicar a configuraciѓn de proporciѓn."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Non se puido aplicar a configuraciѓn de pantalla completa."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1349,7 +1353,7 @@ msgstr ""
"os ficheiros de datos ao disco duro. Consulta\n"
"o ficheiro README para obter mсis informaciѓn."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1363,7 +1367,7 @@ msgstr ""
"do xogo. Consulta o ficheiro README\n"
"para obter mсis informaciѓn."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1372,7 +1376,7 @@ msgstr ""
"Erro ao cargar (%s)! Consulta o ficheiro README para obter informaciѓn "
"bсsica e mсis instruciѓns para acadar asistencia adicional."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1382,34 +1386,761 @@ msgstr ""
"Por iso, talvez sexa inestable e os ficheiros de gardado talvez non "
"funcionen en futuras versiѓns de ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Iniciar de todos os xeitos"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Emulador de OPL de MAME"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Emulador de OPL de DOSBox"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Non se atopou o dispositivo de son seleccionado (%s). Talvez estea apagado "
+"ou desconectado."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Intentando pasar ao seguinte dispositivo dispoёible..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Non se pode empregar o dispositivo de son seleccionado (%s). Consulta o "
+"rexistro para obter mсis informaciѓn."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Non se atopou o dispositivo de son preferido (%s). Talvez estea apagado ou "
+"desconectado."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Non se pode empregar o dispositivo de son preferido (%s). Consulta o "
+"rexistro para obter mсis informaciѓn."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Sen mњsica"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Emulador de Amiga Audio"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Emulador de AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Emulador de Apple II GS (non implementado)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Emulador de C64 Audio"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Iniciando emulador de MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Emulador de MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Emulador de altofalante de PC"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Emulador de IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Asignaciѓn de teclas:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Efectiva)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Activa)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Bloqueada)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Xogo)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~P~echar"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Menњ principal de ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Modo para ~z~urdos"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Controis de combate de ~I~ndy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Mostrar cursor do rato"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Axustar сs marxes"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Correcciѓn tсctil X"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Correcciѓn tсctil Y"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Empregar control de cursor por trackpad"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Tocar unha vez, premer co botѓn primario; dњas veces, botѓn secundario"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Sensibilidade"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Escala da pantalla inicial:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Escala da pantalla principal:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Escala por hardware (rсpida, mais baixa calidade)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Escala por software (boa calidade, mais lenta)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Sen escala (deberсs desprazar с esquerda e с dereita)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Luminosidade:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Son de alta calidade (mсis lento) (reiniciar)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Desactivar apagado"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Modo premer e arrastrar activado."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Modo premer e arrastrar desactivado."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Modo panel tсctil activado."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Modo panel tсctil desactivado."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Modo rato"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Botѓn primario"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Botѓn central"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Botѓn secundario"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Ocultar ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Ocultar outros"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Mostrar todo"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Ventс"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimizar"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (sen escala)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal (sen escala)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Correcciѓn de proporciѓn activada"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Correcciѓn de proporciѓn desactivada"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Filtro de grсficos activo:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Modo en ventс"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Abrir"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Arriba"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Abaixo"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Esquerda"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Dereita"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zona"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multifunciѓn"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Cambiar carсcter"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Omitir texto"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Modo rсpido"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Saэr"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Depurador"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Menњ global"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Teclado virtual"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Asignador de teclas"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Queres saэr?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Vэdeo"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Modo de vэdeo actual:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Dobre"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Marxe horizontal:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Marxe vertical:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Entrada"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Sensibilidade do mando de GC:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Aceleraciѓn do mando de GC:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Estado:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Descoёecido"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Montar DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Desmontar DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Servidor:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Disco compartido:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Nome de usuario:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Contrasinal:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Conectar с rede"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Montar SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Desmontar SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD montado con щxito"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Erro ao montar o DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD non montado"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Conexiѓn с rede, disco montado"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Conexiѓn с rede"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", erro ao montar o disco"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", disco non montado"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Non hai conexiѓn с rede"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Conectando с rede"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Tempo de espera esgotado"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Erro de conexiѓn с rede (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Ocultar barra de ferramentas"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Mostrar teclado"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Son si/non"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Botѓn secundario"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Mostrar/ocultar cursor"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Vista libre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Ampliar"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Reducir"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Vincular teclas"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Arriba"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Abaixo"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Esquerda"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Dereita"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Queres cargar ou gardar a partida?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Seguro que queres saэr?"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Teclado"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Rotar"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Empregando driver de SDL"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Pantalla"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Queres realizar unha anсlise automсtica?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Asignar acciѓn de botѓn secundario"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Debes asignar unha tecla с acciѓn do botѓn secundario do rato para xogar"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Asignar acciѓn Ocultar barra de ferramentas"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Debes asignar unha tecla с acciѓn Ocultar barra de ferramentas para xogar"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Asignar acciѓn de Ampliar (opcional)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Asignar acciѓn de Reducir (opcional)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Non esquezas asignar unha tecla с acciѓn Ocultar barra de ferramentas para "
+"ver o inventario completo"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Seguro que queres volver ao Iniciador?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Iniciador"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Seguro que queres saэr?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Modo pantalla tсctil: premer botѓn primario"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Modo pantalla tсctil: premer botѓn secundario"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Modo pantalla tсctil: apuntar co rato (sen premer)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Volume mсximo"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Subindo volume"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Volume mэnimo"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Baixando volume"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Modo pantalla tсctil: apuntar co rato (premer na cruceta)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Buscar actualizaciѓns..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Botѓn secundario unha vez"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Mover unicamente"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "ESC"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Menњ do xogo"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Mostrar teclado numщrico"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Rato"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Premer activado"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Premer desactivado"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Empregar pantallas orixinais de gardado e carga"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Empregar as pantallas orixinais de gardado e carga, no canto das de ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Restaurar xogo:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Restaurar"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Erro ao cargar a partida do ficheiro:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Erro ao gardar a partida no ficheiro:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Partida gardada con щxito no ficheiro:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Non se atopou o ficheiro de secuencia %s!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1435,27 +2166,304 @@ msgstr "Empregar modo de paleta intensa"
msgid "Display graphics using the game's bright palette"
msgstr "Mostrar os grсficos coa paletta intensa do xogo"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Erro ao cargar a partida do ficheiro."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Erro ao gardar a partida no ficheiro."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Erro ao eliminar o ficheiro."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Velocidade de vэdeo rсpida"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Reproducir vэdeos a mсis velocidade"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Erro ao gardar a partida"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Pњblico do estudio"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Activar o pњblico do estudio"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Omisiѓns"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Permitir a omisiѓn do texto e das secuencias"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Modo helio"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Activar o modo helio"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Desprazamento suave"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Activar o desprazamento suave ao camiёar"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Cursores flotantes"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Activar cursores flotantes"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Barras de vida"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Activar barras de vida"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Ataque 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Ataque 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Ataque 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Mover cara diante"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Mover cara atrсs"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Esvarar с esquerda"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Esvarar с dereita"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Xirar с esquerda"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Xirar с dereita"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Parar"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Opciѓns"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Elixir feitizo"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Semella que estсs a empregar un dispositivo,\n"
+"de General MIDI, maix o xogo sѓ e compatible con\n"
+"Roland MT32 MIDI. Tentamos asignar os instrumentos\n"
+"aos de General MIDI. No entanto, existe a posibilidade\n"
+"de que algunhas pistas non soen correctamente."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Modo ~c~omprimido activado"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~T~ransiciѓns activadas"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~D~eixar folla"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "Mo~s~trar mapa"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "~M~enњ principal"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "Efecto de ~a~uga activado"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Non se pode gardar a partida no espazo %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Cargando..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Gardando..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM atopou ficheiros de gardado vellos de Nippon Safes que deberэan ser "
+"renomeados.\n"
+"Os nomes vellos xa non son compatibles, de xeito que non poderсs cargar as "
+"partidas se non os cambias.\n"
+"\n"
+"Preme Aceptar para cambialos. Se non, volverсs ver esta mensaxe a prѓxima "
+"vez que inicies o xogo.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM converteu correctamente todos os ficheiros de gardado."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM imprimiu avisos na ventс da consola. Non se pode garantir a "
+"conversiѓn de todos os ficheiros.\n"
+"\n"
+"Contacta co equipo de ScummVM."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Nome de ficheiro non vсlido"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Arriba/Ampliar/Avanzar/Abrir portas"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Abaixo/Reducir"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Mostrar/Ocultar bandexa de inventario"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Mostrar/Ocultar bandexa de biochip"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Acciѓn/Seleccionar"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Activar/Desactivar pantalla de datos"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Mostrar/Ocultar pantalla de informaciѓn"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Mostrar/Ocultar menњ de pausa"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "Non interpolaciѓn EGA"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Activar a non interpolaciѓn nos xogos en EGA"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Preferir efectos de son dixitais"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Dar preferencia aos efectos de son dixitais no canto dos sintщticos"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Empregar IMF/Yamaha FB-01 para a saэda de MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1463,30 +2471,30 @@ msgstr ""
"Empregar unha tarxeta IBM Music Feature ou un mѓdulo de sintetizador Yamaha "
"FB-01 FM para a saэda de MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Empregar son de CD"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "Empregar son de CD no canto do do xogo, de ser o caso"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Empregar cursores de Windows"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Empregar os cursores de Windows (mсis pequenos e monocromos) no canto dos de "
"DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Empregar cursores prateados"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1528,15 +2536,6 @@ msgstr "Seguro que queres saэr? (S/N)S"
msgid "Play"
msgstr "Xogar"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Saэr"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Inserir disco de gardado/carga"
@@ -1585,11 +2584,6 @@ msgstr "~A~nterior"
msgid "~N~ext"
msgstr "~S~eguinte"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~P~echar"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Sѓ voz"
@@ -1615,10 +2609,6 @@ msgstr "Selecciona un nivel de habilidade."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Consulta o manual de Loom(TM) para obter axuda."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Estсndar"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Prсctica"
@@ -2140,7 +3130,7 @@ msgstr "Voar с dereita"
msgid "Fly to lower right"
msgstr "Voar с dereita abaixo"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2149,40 +3139,7 @@ msgstr ""
"A compatibilidade nativa con MIDI precisa a actualizaciѓn de Roland\n"
"de LucasArts, mais falla %s. Empregarase AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Erro ao gardar a partida no ficheiro:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Erro ao cargar a partida do ficheiro:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Partida gardada con щxito no ficheiro:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2192,190 +3149,6 @@ msgstr ""
"facelo. Para xogar, vai a Engadir xogo no menњ de inicio de ScummVM e "
"selecciona o directorio Maniac que estс dentro do directorio Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Modo ~c~omprimido activado"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~T~ransiciѓns activadas"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~D~eixar folla"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "Mo~s~trar mapa"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "~M~enњ principal"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "Efecto de ~a~uga activado"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Non se atopou o ficheiro de secuencia %s!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Erro ao cargar a partida do ficheiro."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Erro ao gardar a partida no ficheiro."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Erro ao eliminar o ficheiro."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Velocidade de vэdeo rсpida"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Reproducir vэdeos a mсis velocidade"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Erro ao gardar a partida"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Pњblico do estudio"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Activar o pњblico do estudio"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Omisiѓns"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Permitir a omisiѓn do texto e das secuencias"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Modo helio"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Activar o modo helio"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Desprazamento suave"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Activar o desprazamento suave ao camiёar"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Cursores flotantes"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Activar cursores flotantes"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Barras de vida"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Activar barras de vida"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Ataque 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Ataque 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Ataque 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Mover cara diante"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Mover cara atrсs"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Esvarar с esquerda"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Esvarar с dereita"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Xirar с esquerda"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Xirar с dereita"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Parar"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Opciѓns"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Elixir feitizo"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Semella que estсs a empregar un dispositivo,\n"
-"de General MIDI, maix o xogo sѓ e compatible con\n"
-"Roland MT32 MIDI. Tentamos asignar os instrumentos\n"
-"aos de General MIDI. No entanto, existe a posibilidade\n"
-"de que algunhas pistas non soen correctamente."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Intro alternativa"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Empregar unha introduciѓn alternativa para o xogo (sѓ versiѓn en CD)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2400,22 +3173,25 @@ msgstr "Intro de disquete"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Empregar a introduciѓn da versiѓn en disquete (sѓ versiѓn en CD)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "Non se pode reproducir a secuencia %s de PSX neste modo grсfico"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"Atopсronse secuencias de DXA. No entanto, esta versiѓn de ScummVM non щ "
"compatible con zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Xa non hai compatibilidade coas secuencias en MPEG2"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"Atopсronse secuencias de PSX. No entanto, a versiѓn de ScummVM non щ "
+"compatible con cores RGB"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Non se atopou a secuencia %s"
@@ -2459,13 +3235,21 @@ msgstr "Conservar a nova"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Aquэ remata a demo de Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"Atopсronse secuencias de PSX. No entanto, a versiѓn de ScummVM non щ "
"compatible con cores RGB"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"Atopсronse secuencias de DXA. No entanto, esta versiѓn de ScummVM non щ "
+"compatible con zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Mostrar etiquetas"
@@ -2488,790 +3272,50 @@ msgstr ""
"O ficheiro teenagent.dat estс comprimido e zlib non foi incluэdo neste "
"executable. Descomprime o ficheiro"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Non se pode gardar a partida no espazo %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Cargando..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Gardando..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM atopou ficheiros de gardado vellos de Nippon Safes que deberэan ser "
-"renomeados.\n"
-"Os nomes vellos xa non son compatibles, de xeito que non poderсs cargar as "
-"partidas se non os cambias.\n"
-"\n"
-"Preme Aceptar para cambialos. Se non, volverсs ver esta mensaxe a prѓxima "
-"vez que inicies o xogo.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM converteu correctamente todos os ficheiros de gardado."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM imprimiu avisos na ventс da consola. Non se pode garantir a "
-"conversiѓn de todos os ficheiros.\n"
-"\n"
-"Contacta co equipo de ScummVM."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Nome de ficheiro non vсlido"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Arriba/Ampliar/Avanzar/Abrir portas"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Abaixo/Reducir"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Mostrar/Ocultar bandexa de inventario"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Mostrar/Ocultar bandexa de biochip"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Acciѓn/Seleccionar"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Activar/Desactivar pantalla de datos"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Mostrar/Ocultar pantalla de informaciѓn"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Mostrar/Ocultar menњ de pausa"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Emulador de OPL de MAME"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Emulador de OPL de DOSBox"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Non se atopou o dispositivo de son seleccionado (%s). Talvez estea apagado "
-"ou desconectado."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Intentando pasar ao seguinte dispositivo dispoёible..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Non se pode empregar o dispositivo de son seleccionado (%s). Consulta o "
-"rexistro para obter mсis informaciѓn."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Non se atopou o dispositivo de son preferido (%s). Talvez estea apagado ou "
-"desconectado."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Non se pode empregar o dispositivo de son preferido (%s). Consulta o "
-"rexistro para obter mсis informaciѓn."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Sen mњsica"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Emulador de Amiga Audio"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Emulador de AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Emulador de Apple II GS (non implementado)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Emulador de C64 Audio"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Iniciando emulador de MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Emulador de MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Emulador de altofalante de PC"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Emulador de IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Asignaciѓn de teclas:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Efectiva)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Activa)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Bloqueada)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Xogo)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Engadir en masa..."
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Menњ principal de ScummVM"
+#~ msgid "Mass Add..."
+#~ msgstr "Engadir en masa..."
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Modo para ~z~urdos"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr "Desactiva o General MIDI para os xogos con mњsica en Roland MT-32"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Controis de combate de ~I~ndy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Mostrar cursor do rato"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Estсndar (16 bpp)"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Axustar сs marxes"
+#~ msgid "Alternative intro"
+#~ msgstr "Intro alternativa"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Correcciѓn tсctil X"
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr ""
+#~ "Empregar unha introduciѓn alternativa para o xogo (sѓ versiѓn en CD)"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Correcciѓn tсctil Y"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Xa non hai compatibilidade coas secuencias en MPEG2"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Empregar control de cursor por trackpad"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Tocar unha vez, premer co botѓn primario; dњas veces, botѓn secundario"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Conserve"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Sensibilidade"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Escala da pantalla inicial:"
+#~ msgid "Current display mode"
+#~ msgstr "Modo de visualizaciѓn actual"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Escala da pantalla principal:"
+#~ msgid "Current scale"
+#~ msgstr "Escala actual"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Escala por hardware (rсpida, mais baixa calidade)"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Modo de filtro activo: lineal"
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Escala por software (boa calidade, mais lenta)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Sen escala (deberсs desprazar с esquerda e с dereita)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Luminosidade:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Son de alta calidade (mсis lento) (reiniciar)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Desactivar apagado"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Modo premer e arrastrar activado."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Modo premer e arrastrar desactivado."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Modo panel tсctil activado."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Modo panel tсctil desactivado."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Modo rato"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Botѓn primario"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Botѓn central"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Botѓn secundario"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Ocultar ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Ocultar outros"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Mostrar todo"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Ventс"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimizar"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (sen escala)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal (sen escala)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Correcciѓn de proporciѓn activada"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Correcciѓn de proporciѓn desactivada"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Filtro de grсficos activo:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Modo en ventс"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Conserve"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Modo de visualizaciѓn actual"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Escala actual"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Modo de filtro activo: lineal"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Modo de filtro activo: mсis prѓximo"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Arriba"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Abaixo"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Esquerda"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Dereita"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zona"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multifunciѓn"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Cambiar carсcter"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Omitir texto"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Modo rсpido"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Depurador"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Menњ global"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Teclado virtual"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Asignador de teclas"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Queres saэr?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Vэdeo"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Modo de vэdeo actual:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Dobre"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Marxe horizontal:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Marxe vertical:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Entrada"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Sensibilidade do mando de GC:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Aceleraciѓn do mando de GC:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Estado:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Descoёecido"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Montar DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Desmontar DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Servidor:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Disco compartido:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Nome de usuario:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Contrasinal:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Conectar с rede"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Montar SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Desmontar SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD montado con щxito"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Erro ao montar o DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD non montado"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Conexiѓn с rede, disco montado"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Conexiѓn с rede"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", erro ao montar o disco"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", disco non montado"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Non hai conexiѓn с rede"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Conectando с rede"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Tempo de espera esgotado"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Erro de conexiѓn с rede (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Ocultar barra de ferramentas"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Mostrar teclado"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Son si/non"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Botѓn secundario"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Mostrar/ocultar cursor"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Vista libre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Ampliar"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Reducir"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Vincular teclas"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Arriba"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Abaixo"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Esquerda"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Dereita"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Queres cargar ou gardar a partida?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Seguro que queres saэr?"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Teclado"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Rotar"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Empregando driver de SDL"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Pantalla"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Queres realizar unha anсlise automсtica?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Asignar acciѓn de botѓn secundario"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Debes asignar unha tecla с acciѓn do botѓn secundario do rato para xogar"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Asignar acciѓn Ocultar barra de ferramentas"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Debes asignar unha tecla с acciѓn Ocultar barra de ferramentas para xogar"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Asignar acciѓn de Ampliar (opcional)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Asignar acciѓn de Reducir (opcional)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Non esquezas asignar unha tecla с acciѓn Ocultar barra de ferramentas para "
-"ver o inventario completo"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Seguro que queres volver ao Iniciador?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Iniciador"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Seguro que queres saэr?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Modo pantalla tсctil: premer botѓn primario"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Modo pantalla tсctil: premer botѓn secundario"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Modo pantalla tсctil: apuntar co rato (sen premer)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Volume mсximo"
-
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Subindo volume"
-
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Volume mэnimo"
-
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Baixando volume"
-
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Modo pantalla tсctil: apuntar co rato (premer na cruceta)"
-
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Buscar actualizaciѓns..."
-
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Botѓn secundario unha vez"
-
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Mover unicamente"
-
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "ESC"
-
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Menњ do xogo"
-
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Mostrar teclado numщrico"
-
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Rato"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Premer activado"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Premer desactivado"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Modo de filtro activo: mсis prѓximo"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Activar modo Roland GS"
diff --git a/po/hu_HU.po b/po/hu_HU.po
index ae8f7a5aa9..e4dbbe3652 100644
--- a/po/hu_HU.po
+++ b/po/hu_HU.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
-"PO-Revision-Date: 2013-04-25 06:38+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
+"PO-Revision-Date: 2014-02-18 06:30+0100\n"
"Last-Translator: George Kormendi <grubycza@hotmail.com>\n"
"Language-Team: Hungarian\n"
"Language: Magyar\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: iso-8859-1\n"
-"X-Generator: Poedit 1.5.5\n"
+"X-Generator: Poedit 1.6.4\n"
#: gui/about.cpp:93
#, c-format
@@ -54,15 +54,15 @@ msgid "Go up"
msgstr "Feljebb"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Mщgse"
@@ -70,26 +70,26 @@ msgstr "Mщgse"
msgid "Choose"
msgstr "Vсlaszt"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Bezсr"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Egщrkattintсs"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Billentyћzet beсllэtсsok"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Billentyћk сtсllэtсsa"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Teljeskщpernyѕ kapcsolѓ"
@@ -101,21 +101,21 @@ msgstr "Vсlassz mћveletet a kiosztсshoz"
msgid "Map"
msgstr "Kiosztсs"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -141,194 +141,194 @@ msgstr "Vсlassz egy mћveletet"
msgid "Press the key to associate"
msgstr "Nyomj egy billentyћt a tсrsэtсshoz"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Jсtщk"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
msgstr ""
"Rіvid jсtщkazonosэtѓ a jсtщkmentщsekhez щs a jсtщk parancssori futtatсsсhoz"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nщv:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "A jсtщk teljes neve"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nщv:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Nyelv:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr ""
"A jсtщk nyelve. Ne сllэtsd сt a pl. Spanyol nyelvћ jсtщkodat Angol nyelvre"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<alapщrtelmezett>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Platform:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Platform amire a jсtщkot eredetileg kщszэtettщk"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Platform:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Motor"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafika"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Globсlis grafikai beсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Globсlis grafikai beсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Audiѓ"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Globсlis audiѓ beсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Globсlis audiѓ beсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Hangerѕ"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Hangerѕ"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Globсlis hangerѕbeсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Globсlis hangerѕbeсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Globсlis MIDI beсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Globсlis MIDI beсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Globсlis MT-32 beсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Globсlis MT-32 beсllэtсsok felќlbэrсlсsa"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Mappсk"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Mappсk"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Jсtщk Mappa:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Jсtщk Mappa:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Extra Mappa:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Mappa kivсlasztсs a jсtщkok kiegщszэtѕ fсjljaihoz"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Extra Mappa:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Mentщs Mappa:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Jсtщkmentщsek helyщnek meghatсrozсsa"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Mentщs Mappa:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -337,134 +337,135 @@ msgctxt "path"
msgid "None"
msgstr "Nincs"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Alapщrtelmezett"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "SoundFont kivсlasztсs"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Jсtщkok helyщnek kivсlasztсsa"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Vсlassz mappсt a jсtщk kiegщszэtѕkhіz"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Vсlaszz jсtщkmentщseknek mappсt"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Ez a jсtщkazonosэtѓ ID mсr foglalt, Vсlassz egy mсsikat."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "Kilщpщs"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "ScummVM bezсrсsa"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "Nщvjegy"
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "ScummVM nщvjegy"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~pciѓk..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Globсlis ScummVM opciѓk cserщje"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "Indэtсs"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "A vсlasztott jсtщk indэtсsa"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "Betіltщs"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Kimentett jсtщkсllсs betіltщse"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "Jсtщk hozzсadсs"
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Tratsd lenyomva a Shift-et a Masszэv mѓdhoz"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "Jсtщkopciѓk"
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Jсtщk beсllэtсsok megvсltoztatсsa"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "Jсtщk tіrlщse"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Tіrli a jсtщk nevщt a listсrѓl. A jсtщkfсjlok megmaradnak"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "Jсtщk hozzсadсs"
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "Jсtщkopciѓk"
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "Jсtщk tіrlщse"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Keresщs a jсtщklistсban"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Keresщs:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Jсtщk betіltщse:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Betіltщs"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -472,7 +473,8 @@ msgstr ""
"Biztos hogy futtatod a Masszэv jсtщkdetektort? Ez potenciсlisan sok jсtщkot "
"hozzсad a listсhoz."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -480,7 +482,8 @@ msgstr ""
msgid "Yes"
msgstr "Igen"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -488,40 +491,35 @@ msgstr "Igen"
msgid "No"
msgstr "Nem"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM nem tudja megnyitni a vсlasztott mappсt!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "A ScummVM nem talсlt egy jсtщkot sem a vсlasztott mappсban!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Vсlassztott jсtщk:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Biztosan tіrіlni akarod ezt a jсtщkkonfigurсciѓt?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+msgid "Do you want to load savegame?"
+msgstr "Akarod hogy betіltщsem a jсtщkсllсst?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Ez a jсtщk nem tсmogatja a jсtщkсllсs betіltщst az indэtѓbѓl."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM nem talсlt olyan jсtщkmotort ami a vсlasztott jсtщkot tсmogatja!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Masszэv mѓd..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Masszэv mѓd..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... folyamatban ..."
@@ -620,8 +618,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Nщhсny jсtщk tсmogatja a speciсlis сrnyalсsi mѓdokat"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Teljeskщpernyѕs mѓd:"
@@ -750,12 +747,16 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Roland MT-32 Hardver (GM emulсciѓ nincs)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
-msgstr "Roland GS Mѓd (GM mapping tiltсsa)"
+msgid "Roland GS Device (enable MT-32 mappings)"
+msgstr "Roland GS eszkіz (MT-32 mapping engedщlyezщs)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "General MIDI lekщpezщs Roland MT-32 zenщs jсtщkokhoz kikapcsolva"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
+"Ellenѕrzщs ha engedщlyezni akarod az emulсlt MT-32 Folt lekщpezщst a Roland "
+"GS eszkіzіn"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -943,15 +944,15 @@ msgstr "Lista nщzet"
msgid "Grid view"
msgstr "Rсcs nщzet"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Dсtum nincs mentve"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Idѕ nincs mentve"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Jсtщkidѕ nincs mentve"
@@ -963,43 +964,43 @@ msgstr "Tіrіl"
msgid "Do you really want to delete this savegame?"
msgstr "Biztos hogy tіrіlni akarod ezt a jсtщkсllсst?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Dсtum:"
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Idѕ:"
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Jсtщkidѕ:"
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Nщvtelen jсtщkсllсs"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Kіvetkezѕ"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Elѕzѕ"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "кj Mentщs"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "кj jсtщkmentщs kщszэtщse"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nщv:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Adj meg egy leэrсst a %d slothoz:"
@@ -1008,30 +1009,30 @@ msgstr "Adj meg egy leэrсst a %d slothoz:"
msgid "Select a Theme"
msgstr "Vсlassz tщmсt"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "GFX letiltva"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "GFX letiltva"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
-msgstr "Standard lekщpezѕ (16bpp)"
+#: gui/ThemeEngine.cpp:347
+msgid "Standard Renderer"
+msgstr "Standard lekщpezѕ"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Сtlagos"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
-msgstr "Щlsimэtсsos lekщpezѕ (16bpp)"
+#: gui/ThemeEngine.cpp:349
+msgid "Antialiased Renderer"
+msgstr "Щlsimэtсsos lekщpezѕ"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
-msgstr "Щlsimэtott (16bpp)"
+#: gui/ThemeEngine.cpp:349
+msgid "Antialiased"
+msgstr "Щlsimэtott"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
msgid "Clear value"
@@ -1123,35 +1124,35 @@ msgid ""
msgstr ""
"Biztos visszaсllэtassz minden FluidSynth beсllэtсst alapщrtelmezett щrtщkre?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "A motor nem tсmogatja a '%s' debug szintet"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menќ"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Tovсbb"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Szќnet"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Sor сtlщpщse"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Hiba a jсtщk futtatсsakor:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Nem talсlhatѓ olyan jсtщkmotor ami a vсlasztott jсtщkot tсmogatja"
@@ -1219,16 +1220,16 @@ msgstr "Felhasznсlѓi megszakэtсs"
msgid "Unknown error"
msgstr "Ismeretlen hiba"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "A '%s' jсtщk ismeretlennek tћnik."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr "Kщrlek jelezd a ScummVM csapatnak a kіvetkezѕ adatokat, egyќtt a jсtщk"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "cэmщvel щs megbэzhatѓ adataival jсtщkverziѓ/nyelv(ek)/stb.:"
@@ -1266,21 +1267,21 @@ msgid "~R~eturn to Launcher"
msgstr "Visszatщrщs az indэtѓba"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Jсtщk mentщse:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Mentщs"
@@ -1316,23 +1317,23 @@ msgstr "Mщgse"
msgid "~K~eys"
msgstr "Billentyќk"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Szэn formсtum nincs alkalmazva"
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Videѓmѓd nincs сtсllэtva: ' "
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Mщretarсny korrekciѓ nem vсltozott."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Teljeskщpernyѕs beсllэtсs nincs alkalmazva"
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1346,7 +1347,7 @@ msgstr ""
"adatfсjljait a merevlemezedre.\n"
"Nщzd meg a README fсjlt a rщszletekщrt."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1360,7 +1361,7 @@ msgstr ""
"hogy a jсtщk zenщje hallhatѓ legyen.\n"
"Nщzd meg a README fсjlt a rщszletekщrt."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1369,7 +1370,7 @@ msgstr ""
"(%s) jсtщkсllсs betіltщse nem sikerќlt!. Olvassd el a README-t az alap "
"informсciѓkrѓl, щs hogy hogyan segэthetsz a kщsѕbbiekben."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1379,33 +1380,755 @@ msgstr ""
"ScummVM. Szсmэts rс hogy nem stabilan fut, щs a mentщsek nem mћkіdnek a "
"jіvѕbeni ScummVM verziѓkkal."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Indэtсs эgy is"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME OPL emulсtor"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox OPL emulсtor"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"A kivсlasztott '%s' hangeszkіz nem talсlhatѓ (Lekapcsoltad, vagy kihњztad)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "A kіvetkezѕ elщrhetѕ eszkіz keresщse..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"A kivсlasztott '%s' hangeszkіz nem hasznсlhatѓ. Bѕvebb informсciѓ a "
+"naplѓfсjlban."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Az elsѕdleges '%s' hangeszkіz nem talсlhatѓ (Lekapcsoltad, vagy kihњztad)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Az elsѕdleges '%s' hangeszkіz nem hasznсlhatѓ. Bѕvebb informсciѓ a "
+"naplѓfсjlban."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Nincs zene"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Amiga Audiѓ Emulсtor"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib Emulсtor"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS Emulсtor (NEM TСMOGATOTT)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64 Audio Emulсtor"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "MT-32 Emulсtor inicializсlсsa"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32 Emulсtor"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC Speaker Emulсtor"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM PCjr Emulсtor"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Billentyћzet kiosztсs:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Tщnyleges)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Aktэv)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Blokkolt)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Globсlis)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Jсtщk)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "Bezсr"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "ScummVM Fѕmenќ"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Balkezes mѓd:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~I~ndy fight controls"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Egщrkurzor lсtszik"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Щlekre illesztщs"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Touch X Eltolсs"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Touch Y Eltolсs"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Laptop trackpad stэlusu kurzor vezщrlѕ"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Щrintщs balkatt, duplaщrintщs jobbkatt"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Щrzщkenysщg"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Kщpernyѕ felsѕ kezdѕpont:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Fѕkщpernyѕ сtmщretezщs:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Hardveres сtmщretezщs (gyors, alacsony minѕsщg)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Szoftveres сtmщretezщs (jѓ minѕsщg, lassњ)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Eredeti (gіrgethetsz jobbra щs balra)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Fщnyerѕ:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Jѓminѕsщgќ audiѓ (lassabb)(њjraindэtсs)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Leсllэtсs tiltva"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Egщr kattint-щs-hњz mѓd engedщlyezve."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Egщr kattint-щs-hњz mѓd letiltva."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Touchpad mѓd engedщlyezve."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Touchpad mѓd letiltva."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Kattintсs Mѓd"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Bal katt"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Kіzщpsѕ katt"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Jobb katt"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "ScummVM elrejtщse"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Tіbbi elrejtщse"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Mutasd mind"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Ablak"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Kis mщret"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normсl (nincs сtmщretezщs)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normсl (nincs сtmщretezщs)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Mщretarсny korrekciѓ engedщlyezve"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Mщretarсny korrekciѓ letiltva"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Aktэv grafikus szћrѕk:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Ablakos mѓd"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+msgid "OpenGL"
+msgstr "OpenGL"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr "OpenGL (Nincs szћrщs)"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Fel"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Le"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Bal"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Jobb"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zѓna"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Tіbbfunkciѓs"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Karakter csere"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Szіveg сtugrсsa"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Gyors mѓd"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Kilщpщs"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Hibakeresѕ"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Globсlis menќ"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Virtuсlis billentyћzet"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Billentyћ kiosztсs"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Ki akarsz lщpni ?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Videѓ"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Jelenlegi videѓmѓd:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Dupla щrintщs"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Vэzszintes eltolсs:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Fќggѕleges eltolсs:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Bemenet"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "GC Pad щrzщkenysщg:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "GC Pad felbontсs:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Stсtusz:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Ismeretlen"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "DVD csatolсs"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "DVD kiadсs"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Szerver:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Megoszt:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Felhasznсlѓ:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Jelszѓ:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Hсlѓzat inicializсlсs"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "SMB csatolсs"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "SMB kiadсs"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD csatlakoztatva"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Hiba a DVD csatlakoztatсsakor"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD nincs csatolva"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Hсlѓzat щs megosztсs csatlakozva"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Hсlѓzat csatlakozva"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", hiba a megosztсs csatolсsakor"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", megosztсs nincs csatolva"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Nincs hсlѓzat"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Hсlѓzat inicializсlсsa"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Idѕtњllщpщs a hсlѓzat inicializсlсsakor"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "(%d) Hсlѓzat nincs inicializсlva"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Eszkіztсr rejtщs"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Billentyћzet megjelenэtщs"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Hang be/ki"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Jobb katt"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Kurzor be/ki"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Szabad nщzet"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Nagyэtсs"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Kicsinyэtщs"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Kapcsolѓdсs kulcsok"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Kurzor Fel"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Kurzor Le"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Kurzor Bal"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Kurzor Jobb"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Jсtщkсllсs betіltщse vagy mentщse?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Biztos hogy ki akarsz lщpni ? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Billentyћzet"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Forgatсs"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "SDL meghajtѓ hasznсlata"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Kijelzѕ"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "El akarod kezdeni az automatikus vizsgсlatot ?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Jobbkatt mћvelet gomb"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr "Vсlassz egy billentyћt a 'Jobbkatt' mћvelethez"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Eszkіztсr rejtщs gomb"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr "Vсlassz egy billentyћt az 'Eszkіztсr rejtщs' mћvelethez"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Nagyэtсs mћvelet (opcionсlis)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Kicsinyэtщs mћvelet (opcionсlis)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Ne felejts billentyћt tсrsэtani az 'Eszkіztсr rejtщs' mћvelethez, hogy lсsd "
+"a teljes listсt"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Biztos hogy visszatщrsz az indэtѓpulthoz?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Indэtѓpult"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Biztos hogy ki akarsz lщpni ?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Щrintѕkщpernyѕ 'Tap Mѓd' - Bal katt"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Щrintѕkщpernyѕ 'Tap Mѓd' - Jobb katt"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Щrintѕkщpernyѕ 'Tap Mѓd' - Lebegѕ (Nincs katt)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Maximum Hangerѕ"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Hangerѕ nіvelщse"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Minimum Hangerѕ"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Hangerѕ csіkkentщse"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Щrintѕkщpernyѕ 'Щrintщsmѓd' - Lebegѕ (DPad katt)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Frissэtщsek keresщse..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Jobb katt egyszer"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Csak lщpщs"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Escape gomb"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Jсtщk Menќ"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Kщzi billentyћzet"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Egщr irсnyitсs"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Kattintсs engedve"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Kattintсs tiltva"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Eredeti ment/tіlt kщpernyѕk hasznсlata"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr "Az eredeti mentщs/betіltщs kщpernyѕ hasznсlata a ScummVM kщpek helyett"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Jсtщkmenet visszaсllэtсsa:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Visszaсllэtсs"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Jсtщkсllсs betіltщse:\n"
+"\n"
+"%s fсjlbѓl nem sikerќlt"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Jсtщkсllсs mentщse:\n"
+"\n"
+"%s fсjlba nem sikerќlt"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Jсtщkсllсs mentщse:\n"
+"\n"
+"%s fсjlba elkщszќlt"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "'%s' сtvezetѕ fсjl nem talсlhatѓ"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1430,27 +2153,304 @@ msgstr "Fщnyes paletta mѓd hasznсlata"
msgid "Display graphics using the game's bright palette"
msgstr "Grafikus megjelenэtщsre hasznсlja a jсtщk fщnyes palettсjсt"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Jсtщkсllсs betіltщse fсjlbѓl nem sikerќlt."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Jсtщkсllсs mentщse fсjlba nem sikerќlt."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Fсjl tіrlщs sikertelen."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Gyors filmsebessщg"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Filmek lejсtszсsa nagyobb sebessщggel"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Jсtщk mentщs nem sikerќlt"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Stњdiѓ kіzіnsщg"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Stњdiѓ kіzіnsщg engedщlyezщse"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Сtugrсs tсmogatсs"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Szіveg щs сtvezetѕk сtugrсsсnak tсmogatсsa"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Helium mѓd"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Helium mѓd engedщlyezve"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Finom gіrgetщs"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Finom gіrgetщs engedщlyezщse jсrсs kіzben"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Lebegѕ kurzor"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Lebegѕ kurzor engedщlyezщse"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "HP sсv grafika"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Hit point sсv grafika engedщlyezщse"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Tсmadсs 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Tсmadсs 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Tсmadсs 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Mozgсs elѕre"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Mozgсs hсtra"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Siklсs balra"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Siklсs jobbra"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Balra fordul"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Jobbra fordul"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Pihenщs"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Opciѓk"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Vсlassz varсzslatot"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"кgy tћnik, egy General MIDI eszkіzt hasznсlsz,\n"
+"de a jсtщk csak Roland MT32 MIDI eszkіzt tсmogat.\n"
+"Megprѓbсljuk lecserщlni a Roland MT32 hangszereket\n"
+"General MIDIre. Tovсbbra is lehetsщges hogy\n"
+"nщhсny hangsсv helytelenќl hangzik."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~Z~ip Mѓd aktivсlva"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "Сtmenetek engedщlyezve"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Oldal~D~obсs"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~S~ Tщrkщp"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Fѕ~M~enќ"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "Vэzeffektus engedщlyezve"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr "Hall of Records storyboard сtvezetѕk сtugrсsa"
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+"Lehetѕsщg, hogy a jсtщkos сtugorja a Hall of Records storyboard сtvezetѕket"
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr "Hogyan kщszќlt videѓk сtmщretezщse teljeskщpernyѕre"
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr "Hogyan kщszќlt videѓk сtmщretezщse, hogy teljeskщpernyѕt hasznсljanak"
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Jсtщkсllсs nem menthetѕ %i slotba\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Jсtщk betіltщs..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Jсtщk mentщs..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM rщgi jсtщkmentщst talсlt a Nippon Safes hez ezt сt kell nevezni.\n"
+"A rщgi jсtщkmentщs nem tсmogatott, ezщrt a jсtщk nem tіltѕdik be сtnevezщs "
+"nщlkќl..\n"
+"\n"
+"Nyomj OK-t az сtalakэtсshoz, vagy rсkщrdezzek ha legkіzelebb elindэtod a "
+"jсtщkot.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM konvertсlta az іsszes jсtщkсllсsodat."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM kiэrt nщhсny figyelmeztetщst a konzolablakba щs nem biztos hogy az "
+"іsszes fсjlod сt lett alakэtva.\n"
+"\n"
+"Lщgyszэves jelentsd a csapatnak."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Щrvщnytelen mentщs fсjlnщv"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Fel/Nagyэtсs/Elѕre mozgсs/Ajtѓnyitсs"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Le/Zoom Ki"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Tсrgylista tсlca Kщpre/Elrejt"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Biochip tсlca Kщpre/Elrejt"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Akciѓ/Vсlaszt"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Adatkщpernyѕ kapcsolѓ"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Infѓkщpernyѕ Kщpre/Elrejt"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Szќnet menќ Kщpre/Elrejt"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA szinjavэtсs"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Undithering engedщlyezщse EGA jсtщkokban"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Digitсlis hangeffektusok elѕnyben"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Digitсlis hanghatсsok elѕnyben a szintetizсltakkal szemben"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "IMF/Yamaha FB-01 hasznсlata MIDI kimentre"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1458,28 +2458,28 @@ msgstr ""
"IBM Music Feature kсrtya vagy Yamaha FB-01 FM szintetizсtor modul hasznсlata "
"MIDI kimenetre"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "CD audiѓ hasznсlata"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "CD audiѓ hasznсlata a jсtщkban lщvѕvel szemben, ha elщrhetѕ"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Windows kurzorok hasznсlata"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr "Windows kurzorok hasznсlata (kisebb щs monokrѓm) a DOS-osok helyett "
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Ezќst kurzor hasznсlata"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr "Alternatэv ezќst kurzorszett hasznсlata, a normсl arany helyett"
@@ -1519,15 +2519,6 @@ msgstr "Biztos hogy ki akarsz lщpni? (Y/N)"
msgid "Play"
msgstr "Jсtщk"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Kilщpщs"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Helyezd be a jсtщkmentщs lemezt"
@@ -1576,11 +2567,6 @@ msgstr "Elѕzѕ"
msgid "~N~ext"
msgstr "Kіvetkezѕ"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "Bezсr"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Csak beszщd"
@@ -1606,10 +2592,6 @@ msgstr "Vсlassz hozzсщrtщs szintet."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Segэtsщgщrt nщzd meg a Loom(TM) kщzikіnyvedet."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Сtlagos"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Gyakorlсs"
@@ -2131,7 +3113,7 @@ msgstr "Jobbra repќlщs"
msgid "Fly to lower right"
msgstr "Jobbra le repќlщs"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2140,40 +3122,7 @@ msgstr ""
"Native MIDI tсmogatсshoz kell a Roland Upgrade a LucasArts-tѓl,\n"
"a %s hiсnyzik. AdLib-ot hasznсlok helyette."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Jсtщkсllсs mentщse:\n"
-"\n"
-"%s fсjlba nem sikerќlt"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Jсtщkсllсs betіltщse:\n"
-"\n"
-"%s fсjlbѓl nem sikerќlt"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Jсtщkсllсs mentщse:\n"
-"\n"
-"%s fсjlba elkщszќlt"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2183,190 +3132,6 @@ msgstr ""
"jсtszani akarsz vele menj a ScummVM fѕmenќben a 'Jсtщk hozzсadсs' ra щs "
"vсlaszd a 'Maniac' mappсt a 'Tentacle' kіnyvtсrсban."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~Z~ip Mѓd aktivсlva"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "Сtmenetek engedщlyezve"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Oldal~D~obсs"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~S~ Tщrkщp"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Fѕ~M~enќ"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "Vэzeffektus engedщlyezve"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "'%s' сtvezetѕ fсjl nem talсlhatѓ"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Jсtщkсllсs betіltщse fсjlbѓl nem sikerќlt."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Jсtщkсllсs mentщse fсjlba nem sikerќlt."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Fсjl tіrlщs sikertelen."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Gyors filmsebessщg"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Filmek lejсtszсsa nagyobb sebessщggel"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Jсtщk mentщs nem sikerќlt"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Stњdiѓ kіzіnsщg"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Stњdiѓ kіzіnsщg engedщlyezщse"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Сtugrсs tсmogatсs"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Szіveg щs сtvezetѕk сtugrсsсnak tсmogatсsa"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Helium mѓd"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Helium mѓd engedщlyezve"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Finom gіrgetщs"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Finom gіrgetщs engedщlyezщse jсrсs kіzben"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Lebegѕ kurzor"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Lebegѕ kurzor engedщlyezщse"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "HP sсv grafika"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Hit point sсv grafika engedщlyezщse"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Tсmadсs 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Tсmadсs 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Tсmadсs 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Mozgсs elѕre"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Mozgсs hсtra"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Siklсs balra"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Siklсs jobbra"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Balra fordul"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Jobbra fordul"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Pihenщs"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Opciѓk"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Vсlassz varсzslatot"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"кgy tћnik, egy General MIDI eszkіzt hasznсlsz,\n"
-"de a jсtщk csak Roland MT32 MIDI eszkіzt tсmogat.\n"
-"Megprѓbсljuk lecserщlni a Roland MT32 hangszereket\n"
-"General MIDIre. Tovсbbra is lehetsщges hogy\n"
-"nщhсny hangsсv helytelenќl hangzik."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Alternatэv intro"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Alternatэv jсtщkintro hasznсlata (csak CD verziѓnсl)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2391,20 +3156,21 @@ msgstr "Floppy intro"
msgid "Use the floppy version's intro (CD version only)"
msgstr "A floppy verziѓ intro hasznсlata (csak CD verziѓnсl)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "'%s' PSX stream сtvezetѕ nem jсtszhatѓ le paletta mѓdban"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr "DXA сtvezetѕ elщrhetѕ, de a ScummVM zlib tсmogatсs nincs lefordэtva"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "MPEG2 сtvezetѕk mсr nem tсmogatottak"
+#: engines/sword1/animation.cpp:561
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"MPEG-2 сtvezetѕfilmet talсltam, de a ScummVM MPEG-2 nщlkќl van lefordэtva"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "'%s' сtvezetѕ nem talсlhatѓ"
@@ -2448,13 +3214,20 @@ msgstr "Az њjat megtartom"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Ez a Broken Sword 1 Demo vщge"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"PSX сtvezetѕfilmet talсltam, de ez a ScummVM RGB szэntсmogatсs nщlkќl van "
"lefordэtva"
+#: engines/sword2/animation.cpp:461
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"MPEG-2 сtvezetѕfilmet talсltam, de a ScummVM MPEG-2 tсmogatсs nщlkќl van "
+"lefordэtva"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Tсrgycimke lсthatѓ"
@@ -2476,785 +3249,49 @@ msgstr ""
"A teenagent.dat fсjl tіmіrэtett щs a zlib nem rщsze ennek a futtathatѓ "
"сllomсnynak. Kщrlek tіmіrэtsd ki"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Jсtщkсllсs nem menthetѕ %i slotba\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Jсtщk betіltщs..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Jсtщk mentщs..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM rщgi jсtщkmentщst talсlt a Nippon Safes hez ezt сt kell nevezni.\n"
-"A rщgi jсtщkmentщs nem tсmogatott, ezщrt a jсtщk nem tіltѕdik be сtnevezщs "
-"nщlkќl..\n"
-"\n"
-"Nyomj OK-t az сtalakэtсshoz, vagy rсkщrdezzek ha legkіzelebb elindэtod a "
-"jсtщkot.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM konvertсlta az іsszes jсtщkсllсsodat."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM kiэrt nщhсny figyelmeztetщst a konzolablakba щs nem biztos hogy az "
-"іsszes fсjlod сt lett alakэtva.\n"
-"\n"
-"Lщgyszэves jelentsd a csapatnak."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Щrvщnytelen mentщs fсjlnщv"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Fel/Nagyэtсs/Elѕre mozgсs/Ajtѓnyitсs"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Le/Zoom Ki"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Tсrgylista tсlca Kщpre/Elrejt"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Biochip tсlca Kщpre/Elrejt"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Akciѓ/Vсlaszt"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Adatkщpernyѕ kapcsolѓ"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Infѓkщpernyѕ Kщpre/Elrejt"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Szќnet menќ Kщpre/Elrejt"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME OPL emulсtor"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox OPL emulсtor"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"A kivсlasztott '%s' hangeszkіz nem talсlhatѓ (Lekapcsoltad, vagy kihњztad)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "A kіvetkezѕ elщrhetѕ eszkіz keresщse..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"A kivсlasztott '%s' hangeszkіz nem hasznсlhatѓ. Bѕvebb informсciѓ a "
-"naplѓfсjlban."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Az elsѕdleges '%s' hangeszkіz nem talсlhatѓ (Lekapcsoltad, vagy kihњztad)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Az elsѕdleges '%s' hangeszkіz nem hasznсlhatѓ. Bѕvebb informсciѓ a "
-"naplѓfсjlban."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Nincs zene"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Amiga Audiѓ Emulсtor"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib Emulсtor"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS Emulсtor (NEM TСMOGATOTT)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64 Audio Emulсtor"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "MT-32 Emulсtor inicializсlсsa"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32 Emulсtor"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC Speaker Emulсtor"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM PCjr Emulсtor"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Billentyћzet kiosztсs:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Tщnyleges)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Aktэv)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Blokkolt)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Globсlis)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Jсtщk)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "ScummVM Fѕmenќ"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Balkezes mѓd:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~I~ndy fight controls"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Egщrkurzor lсtszik"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Щlekre illesztщs"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Touch X Eltolсs"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Touch Y Eltolсs"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Laptop trackpad stэlusu kurzor vezщrlѕ"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Щrintщs balkatt, duplaщrintщs jobbkatt"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Щrzщkenysщg"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Kщpernyѕ felsѕ kezdѕpont:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Fѕkщpernyѕ сtmщretezщs:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Hardveres сtmщretezщs (gyors, alacsony minѕsщg)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Szoftveres сtmщretezщs (jѓ minѕsщg, lassњ)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Eredeti (gіrgethetsz jobbra щs balra)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Fщnyerѕ:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Jѓminѕsщgќ audiѓ (lassabb)(њjraindэtсs)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Leсllэtсs tiltva"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Egщr kattint-щs-hњz mѓd engedщlyezve."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Egщr kattint-щs-hњz mѓd letiltva."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Touchpad mѓd engedщlyezve."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Touchpad mѓd letiltva."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Kattintсs Mѓd"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Bal katt"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Kіzщpsѕ katt"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Jobb katt"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "ScummVM elrejtщse"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Tіbbi elrejtщse"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Mutasd mind"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Ablak"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Kis mщret"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normсl (nincs сtmщretezщs)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normсl (nincs сtmщretezщs)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Mщretarсny korrekciѓ engedщlyezve"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Mщretarсny korrekciѓ letiltva"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Aktэv grafikus szћrѕk:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Ablakos mѓd"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normсl"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Megtartott"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Eredeti"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Jelenlegi videѓmѓd"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Aktuсlis mщretezщs"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Aktэv filter mѓd: Lineсris"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Aktэv filter mѓd: Kіzelэtѕ"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Fel"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Le"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Bal"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Jobb"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zѓna"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Tіbbfunkciѓs"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Karakter csere"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Szіveg сtugrсsa"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Gyors mѓd"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Hibakeresѕ"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Globсlis menќ"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Virtuсlis billentyћzet"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Billentyћ kiosztсs"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Ki akarsz lщpni ?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Videѓ"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Jelenlegi videѓmѓd:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Dupla щrintщs"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Vэzszintes eltolсs:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Fќggѕleges eltolсs:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Bemenet"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "GC Pad щrzщkenysщg:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "GC Pad felbontсs:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Stсtusz:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Ismeretlen"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "DVD csatolсs"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "DVD kiadсs"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Szerver:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Megoszt:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Felhasznсlѓ:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Jelszѓ:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Hсlѓzat inicializсlсs"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "SMB csatolсs"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "SMB kiadсs"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD csatlakoztatva"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Hiba a DVD csatlakoztatсsakor"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD nincs csatolva"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Hсlѓzat щs megosztсs csatlakozva"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Hсlѓzat csatlakozva"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", hiba a megosztсs csatolсsakor"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", megosztсs nincs csatolva"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Nincs hсlѓzat"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Hсlѓzat inicializсlсsa"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Idѕtњllщpщs a hсlѓzat inicializсlсsakor"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "(%d) Hсlѓzat nincs inicializсlva"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Eszkіztсr rejtщs"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Billentyћzet megjelenэtщs"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Hang be/ki"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Jobb katt"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Kurzor be/ki"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Szabad nщzet"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Nagyэtсs"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Kicsinyэtщs"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Kapcsolѓdсs kulcsok"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Kurzor Fel"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Kurzor Le"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Kurzor Bal"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Kurzor Jobb"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Jсtщkсllсs betіltщse vagy mentщse?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Biztos hogy ki akarsz lщpni ? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Billentyћzet"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Forgatсs"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "SDL meghajtѓ hasznсlata"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Kijelzѕ"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "El akarod kezdeni az automatikus vizsgсlatot ?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Jobbkatt mћvelet gomb"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr "Vсlassz egy billentyћt a 'Jobbkatt' mћvelethez"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Eszkіztсr rejtщs gomb"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr "Vсlassz egy billentyћt az 'Eszkіztсr rejtщs' mћvelethez"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Nagyэtсs mћvelet (opcionсlis)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Kicsinyэtщs mћvelet (opcionсlis)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Ne felejts billentyћt tсrsэtani az 'Eszkіztсr rejtщs' mћvelethez, hogy lсsd "
-"a teljes listсt"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Biztos hogy visszatщrsz az indэtѓpulthoz?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Indэtѓpult"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Biztos hogy ki akarsz lщpni ?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Щrintѕkщpernyѕ 'Tap Mѓd' - Bal katt"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Щrintѕkщpernyѕ 'Tap Mѓd' - Jobb katt"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Щrintѕkщpernyѕ 'Tap Mѓd' - Lebegѕ (Nincs katt)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Maximum Hangerѕ"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Masszэv mѓd..."
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Hangerѕ nіvelщse"
+#~ msgid "Mass Add..."
+#~ msgstr "Masszэv mѓd..."
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Minimum Hangerѕ"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr "General MIDI lekщpezщs Roland MT-32 zenщs jсtщkokhoz kikapcsolva"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Hangerѕ csіkkentщse"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standard (16bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Щrintѕkщpernyѕ 'Щrintщsmѓd' - Lebegѕ (DPad katt)"
+#~ msgid "Alternative intro"
+#~ msgstr "Alternatэv intro"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Frissэtщsek keresщse..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Alternatэv jсtщkintro hasznсlata (csak CD verziѓnсl)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Jobb katt egyszer"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "MPEG2 сtvezetѕk mсr nem tсmogatottak"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Csak lщpщs"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normсl"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Escape gomb"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Megtartott"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Jсtщk Menќ"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Eredeti"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Kщzi billentyћzet"
+#~ msgid "Current display mode"
+#~ msgstr "Jelenlegi videѓmѓd"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Egщr irсnyitсs"
+#~ msgid "Current scale"
+#~ msgstr "Aktuсlis mщretezщs"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Kattintсs engedve"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Aktэv filter mѓd: Lineсris"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Kattintсs tiltva"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Aktэv filter mѓd: Kіzelэtѕ"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Roland GS Mѓd engedщlyezve"
diff --git a/po/it_IT.po b/po/it_IT.po
index ddba2a0066..e75d40b106 100644
--- a/po/it_IT.po
+++ b/po/it_IT.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-04-27 11:41+0100\n"
"Last-Translator: Matteo 'Maff' Angelino <matteo.maff at gmail dot com>\n"
"Language-Team: Italian\n"
@@ -51,15 +51,15 @@ msgid "Go up"
msgstr "Su"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Annulla"
@@ -67,26 +67,26 @@ msgstr "Annulla"
msgid "Choose"
msgstr "Scegli"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Chiudi"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Clic del mouse"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Mostra tastiera"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Riprogramma tasti"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Attiva / disattiva schermo intero"
@@ -98,21 +98,21 @@ msgstr "Scegli un'azione da mappare"
msgid "Map"
msgstr "Mappa"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -138,15 +138,15 @@ msgstr "Seleziona un'azione"
msgid "Press the key to associate"
msgstr "Premi il tasto da associare"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Gioco"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -154,179 +154,179 @@ msgstr ""
"Breve identificatore di gioco utilizzato per il riferimento a salvataggi e "
"per l'esecuzione del gioco dalla riga di comando"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nome:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Titolo completo del gioco"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nome:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Lingua:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr ""
"Lingua del gioco. Un gioco inglese non potrр risultare tradotto in italiano"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<predefinito>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Piattaforma:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "La piattaforma per la quale il gioco ш stato concepito"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Piattaf.:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Motore"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafica"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "Grafica"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Ignora le impostazioni grafiche globali"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Ignora le impostazioni grafiche globali"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Audio"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Ignora le impostazioni audio globali"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Ignora le impostazioni audio globali"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volume"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volume"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Ignora le impostazioni globali di volume"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Ignora le impostazioni globali di volume"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Ignora le impostazioni MIDI globali"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Ignora le impostazioni MIDI globali"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Ignora le impostazioni MT-32 globali"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Ignora le impostazioni MT-32 globali"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Percorsi"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Perc."
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Percorso gioco:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Perc. gioco:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Percorso extra:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Specifica il percorso di ulteriori dati usati dal gioco"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Perc. extra:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Salvataggi:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Specifica dove archiviare i salvataggi"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Salvataggi:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -335,134 +335,135 @@ msgctxt "path"
msgid "None"
msgstr "Nessuno"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Predefinito"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Seleziona SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Seleziona la cartella contenente i file di gioco"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Seleziona la cartella di gioco aggiuntiva"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Seleziona la cartella dei salvataggi"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Questo ID di gioco ш giр in uso. Si prega di sceglierne un'altro."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "C~h~iudi"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Esci da ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "~I~nfo..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Informazioni su ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~pzioni..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Modifica le opzioni globali di ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~G~ioca"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Esegue il gioco selezionato"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~C~arica..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Carica un salvataggio del gioco selezionato"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~A~ggiungi gioco..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Tieni premuto Shift per l'aggiunta in massa"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~M~odifica gioco..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Modifica le opzioni di gioco"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~R~imuovi gioco"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Rimuove il gioco dalla lista. I file del gioco rimarranno intatti"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~A~gg. gioco..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~M~odif. gioco..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~R~im. gioco"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Cerca nella lista dei giochi"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Cerca:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Carica gioco:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Carica"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -470,7 +471,8 @@ msgstr ""
"Vuoi davvero eseguire il rilevatore di giochi in massa? Potrebbe aggiungere "
"un numero enorme di giochi."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -478,7 +480,8 @@ msgstr ""
msgid "Yes"
msgstr "Sь"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -486,43 +489,39 @@ msgstr "Sь"
msgid "No"
msgstr "No"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM non ha potuto aprire la cartella specificata!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM non ha potuto trovare nessun gioco nella cartella specificata!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Scegli il gioco:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Sei sicuro di voler rimuovere questa configurazione di gioco?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Vuoi caricare o salvare il gioco?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr ""
"Questo gioco non supporta il caricamento di salvataggi dalla schermata di "
"avvio."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM non ha potuto trovare un motore in grado di eseguire il gioco "
"selezionato!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Agg. massa..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Agg. in massa..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... progresso ..."
@@ -621,8 +620,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Modalitр di resa grafica speciali supportate da alcuni giochi"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Modalitр a schermo intero"
@@ -755,14 +753,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Roland MT-32 effettivo (disat.emul.GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Modalitр Roland GS (disattiva mappatura GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Disattiva la mappatura General MIDI per i giochi con colonna sonora Roland "
-"MT-32"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -950,15 +949,15 @@ msgstr "Elenco"
msgid "Grid view"
msgstr "Griglia"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Nessuna data salvata"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Nessun orario salvato"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Nessun tempo salvato"
@@ -970,43 +969,43 @@ msgstr "Elimina"
msgid "Do you really want to delete this savegame?"
msgstr "Sei sicuro di voler eliminare questo salvataggio?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Data: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Ora: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Tempo di gioco: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Salvataggio senza titolo"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Succ."
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Prec."
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Nuovo salvataggio"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Crea un nuovo salvataggio"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nome: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Inserisci una descrizione per la posizione %d:"
@@ -1015,29 +1014,32 @@ msgstr "Inserisci una descrizione per la posizione %d:"
msgid "Select a Theme"
msgstr "Seleziona un tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Grafica disattivata"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Grafica disattivata"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Renderer standard (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Medio"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Renderer con antialiasing (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Con antialiasing (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1132,35 +1134,35 @@ msgstr ""
"Sei sicuro di voler ripristinare tutte le impostazioni di FluidSynth al loro "
"valore predefinito?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Il motore non supporta il livello di debug '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menu"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Salta"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pausa"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Salta battuta"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Errore nell'esecuzione del gioco:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr ""
"Impossibile trovare un motore in grado di eseguire il gioco selezionato"
@@ -1229,16 +1231,16 @@ msgstr "Utente cancellato"
msgid "Unknown error"
msgstr "Errore sconosciuto"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Il gioco in '%s' sembra essere sconosciuto."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr "Per favore, riporta i seguenti dati al team di ScummVM con il nome"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "del gioco che hai provato ad aggiungere e la sua versione/lingua/ecc.:"
@@ -1276,21 +1278,21 @@ msgid "~R~eturn to Launcher"
msgstr "~V~ai a elenco giochi"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Salva gioco:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Salva"
@@ -1328,23 +1330,23 @@ msgstr "~A~nnulla"
msgid "~K~eys"
msgstr "~T~asti"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Impossibile inizializzare il formato colore."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Impossibile cambiare la modalitр video: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Impossibile applicare l'impostazione proporzioni"
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Impossibile applicare l'impostazione schermo intero."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1358,7 +1360,7 @@ msgstr ""
"sull'hard disk.\n"
"Vedi il file README per i dettagli."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1372,7 +1374,7 @@ msgstr ""
"la musica del gioco.\n"
"Vedi il file README per i dettagli."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1382,7 +1384,7 @@ msgstr ""
"per le informazioni di base e per le istruzioni su come ottenere ulteriore "
"assistenza."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1392,35 +1394,762 @@ msgstr ""
"ScummVM. Ш quindi possibile che sia instabile, e i salvataggi potrebbero non "
"funzionare con future versioni di ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Avvia comunque"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Emulatore OPL MAME"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Emulatore OPL DOSBox"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Il dispositivo audio selezionato '%s' non ш stato trovato (potrebbe essere "
+"spento o scollegato)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Tentativo di ripristinare il primo dispositivo disponibile..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Il dispositivo audio selezionato '%s' non puђ essere usato. Vedi il file log "
+"per maggiori informazioni."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Il dispositivo audio preferito '%s' non ш stato trovato (potrebbe essere "
+"spento o scollegato)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Il dispositivo audio preferito '%s' non puђ essere usato. Vedi il file log "
+"per maggiori informazioni."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Nessuna musica"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Emulatore audio Amiga"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Emulatore AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Emulatore Apple II GS (NON IMPLEMENTATO)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Emulatore audio C64"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Avvio in corso dell'emulatore MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Emulatore MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Emulatore PC Speaker"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Emulatore IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Mappa tasti:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Efficace)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Attivo)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Bloccato)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Globale)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Gioco)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "MIDI Windows"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~C~hiudi"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Menu principale di ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~M~odalitр mancini"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Controlli combattimento di ~I~ndy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Mostra cursore del mouse"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Aggancia ai bordi"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Compensa X del tocco"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Compensa Y del tocco"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Utilizza il controllo del cursore stile trackpad del portatile"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Un tocco per il clic sinistro, doppio tocco per il clic destro"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Sensibilitр"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Schermo in primo piano:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Schermo principale:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Ridimensionamento hardware (veloce, ma di bassa qualitр)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Ridimensionamento software (di buona qualitр, ma piљ lento)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Non ridimensionato (devi scorrere a sinistra e a destra)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Luminositр:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Audio ad alta qualitр (piљ lento) (riavviare)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Disattiva spegnimento in chiusura"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Modalitр mouse-clicca-e-trascina attivata."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Modalitр mouse-clicca-e-trascina disattivata."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Modalitр touchpad attivata."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Modalitр touchpad disattivata."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Modalitр clic"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Clic sinistro"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Clic centrale"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Clic destro"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Nascondi ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Nascondi altre"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Mostra tutte"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Finestra"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Contrai"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normale (nessun ridimensionamento)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normale (no ridim.)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Correzione proporzioni attivata"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Correzione proporzioni disattivata"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Filtro grafico attivo:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Modalitр finestra"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Apri"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Su"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Giљ"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Sinistra"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Destra"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zona"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multifunzione"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Cambia personaggio"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Salta testo"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Modalitр veloce"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Esci"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debugger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Menu globale"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Tastiera virtuale"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Programmatore tasti"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Sei sicuro di voler uscire?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Video"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Modalitр video attuale:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Double-strike"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Underscan orizzontale:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Underscan verticale:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Input"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Sensibilitр pad GC:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Accelerazione pad GC:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Stato:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Sconosciuto"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Monta DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Smonta DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Server:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Condivisione:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Nome utente:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Password:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Avvia rete"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Monta SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Smonta SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD montato con successo"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Errore nel montare il DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD non montato"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Rete attiva, condivisione montata"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Rete attiva"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", errore nel montare la condivisione"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", condivisione non montata"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Rete disattivata"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Avvio rete in corso"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Tempo scaduto per l'avvio della rete"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Rete non avviata (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Nascondi la barra degli strumenti"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Mostra tastiera"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Suono on/off"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Clic destro"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Mostra/nascondi cursore"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Osservazione libera"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Zoom avanti"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Zoom indietro"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Associa tasti"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Cursore su"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Cursore giљ"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Cursore a sinistra"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Cursore a destra"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Vuoi caricare o salvare il gioco?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Sei sicuro di voler uscire? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Tastiera"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Rotazione"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Utilizzo del driver SDL "
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Visualizza "
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Vuoi eseguire una scansione automatica?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Mappa l'azione del tasto destro"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr "Devi mappare un tasto per l'azione \"Tasto destro\" per giocare"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Mappa l'azione nascondi barra degli strumenti"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Devi mappare un tasto per l'azione \"Nascondi barra degli strumenti\" per "
+"giocare"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Mappa l'azione Zoom Up (opzionale)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Mappa l'azione Zoom Down (opzionale)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Non dimenticare di mappare un tasto per l'azione \"Nascondi barra degli "
+"strumenti\" per vedere l'intero inventario"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Sei sicuro di voler tornare all'elenco giochi?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Elenco giochi"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Sei sicuro di voler uscire?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Touchscreen 'Tap Mode' - Clic sinistro"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Touchscreen 'Tap Mode' - Clic destro"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Touchscreen 'Tap Mode' - Passaggio del cursore (nessun clic)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Volume massimo"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Aumento volume"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Volume minimo"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Diminuzione volume"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Touchscreen 'Tap Mode' - Passaggio del cursore (clic DPad)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Cerca aggiornamenti..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Un clic destro"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Muovi soltanto"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Tasto Esc"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Menu di gioco"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Mostra tastierino numerico"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Controllo mouse"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Clic attivato"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Clic disattivato"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Usa schermate di salvataggio originali"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Usa le schermate originali di salvataggio e caricamento, al posto di quelle "
"di ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Ripristina gioco:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Ripristina"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Impossibile caricare il gioco dal file:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Impossibile salvare il gioco nel file:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Gioco salvato con successo nel file:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "File della scena di intermezzo '%s' non trovato!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1446,27 +2175,304 @@ msgstr "Usa modalitр colori brillanti"
msgid "Display graphics using the game's bright palette"
msgstr "Visualizza la grafica con i colori brillanti del gioco"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Impossibile caricare il gioco dal file."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Impossibile salvare il gioco nel file."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Impossibile eliminare il file."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Alta velocitр filmati"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Aumenta la velocitр di riproduzione dei filmati"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Impossibile salvare il gioco"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Reazioni del pubblico"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Attiva le reazioni del pubblico"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Interruzione del parlato"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Permette di saltare i dialoghi e le scene di intermezzo"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Modalitр elio"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Attiva la modalitр elio"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Scorrimento morbido"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Attiva lo scorrimento morbido durante gli spostamenti"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Cursori fluttuanti"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Attiva cursori fluttuanti"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Barre HP"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Attiva le barre di Hit Point"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Attacco 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Attacco 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Attacco 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Vai avanti"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Vai indietro"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Scorri a sinistra"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Scorri a destra"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Gira a sinistra"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Gira a destra"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Riposa"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Opzioni"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Scegli incantesimo"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Sembra che tu stia utilizzanto un dispositivo\n"
+"General MIDI, ma il gioco supporta solo Roland\n"
+"MT32 MIDI. Tenteremo di mappare gli strumenti\n"
+"Roland MT32 in quelli General MIDI. Alcune tracce\n"
+"potrebbero avere un suono non corretto."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Modalitр ~Z~ip attivata"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~T~ransizioni attive"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~L~ascia pagina"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~M~ostra mappa"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "~M~enu principale"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~E~ffetto acqua attivo"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Impossibile salvare nella posizione %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Caricamento..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Salvataggio..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM ha trovato vecchi salvataggi per Nippon Safes che dovrebbero essere "
+"rinominati.\n"
+"I vecchi nomi non sono piљ supportati, quindi non potrai caricare i tuoi "
+"salvataggi senza prima convertirli.\n"
+"\n"
+"Premi OK per convertirli adesso, altrimenti ti verrр richiesto la prossima "
+"volta.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM ha convertito con successo tutti i tuoi salvataggi."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM ha stampato alcuni avvisi nella finestra console e non puђ garantire "
+"l'avvenuta conversione di tutti i tuoi file.\n"
+"\n"
+"Per favore, contatta il team."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Nome salvataggio non valido"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Su / Zoom + / Avanza / Apri porte"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Giљ / Zoom -"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Mostra/nascondi pannello inventario"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Mostra/nascondi pannello Biochip"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Azione/Seleziona"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Mostra/nascondi schermo centrale dati"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Mostra/nascondi schermana info"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Mostra/nascondi menu pausa"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "Undithering EGA"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Attiva undithering nei giochi EGA"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Scegli effetti sonori digitali"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Scegli gli effetti sonori digitali al posto di quelli sintetizzati"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Usa IMF/Yamaha FB-01 per output MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1474,30 +2480,30 @@ msgstr ""
"Usa una scheda IBM Music Feature o un modulo synth Yamaha FB-01 FM per "
"l'output MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Usa audio da CD"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr ""
"Usa l'audio da CD al posto di quello incorporato nel gioco, se disponibile"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Usa cursori di Windows"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Usa i cursori di Windows (piљ piccoli e monocromatici) al posto di quelli DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Usa cursori d'argento"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1538,15 +2544,6 @@ msgstr "Sei sicuro di voler uscire? (S/N)S"
msgid "Play"
msgstr "Gioca"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Esci"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Inserire il disco dei salvataggi"
@@ -1595,11 +2592,6 @@ msgstr "~P~recedenti"
msgid "~N~ext"
msgstr "~S~uccessivi"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~C~hiudi"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Solo voci"
@@ -1625,10 +2617,6 @@ msgstr "Selezionate un livello di difficoltр."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Consultate il manuale delle istruzioni."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Medio"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Base"
@@ -2150,7 +3138,7 @@ msgstr "Vola a destra"
msgid "Fly to lower right"
msgstr "Vola in basso a destra"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2159,40 +3147,7 @@ msgstr ""
"Il supporto nativo MIDI richiede il Roland Upgrade della LucasArts,\n"
"ma %s non ш presente. Verrр usato AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Impossibile salvare il gioco nel file:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Impossibile caricare il gioco dal file:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Gioco salvato con successo nel file:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2203,190 +3158,6 @@ msgstr ""
"principale di ScummVM e seleziona la cartella \"Maniac\" all'interno della "
"cartella di Day Of The Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Modalitр ~Z~ip attivata"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~T~ransizioni attive"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~L~ascia pagina"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~M~ostra mappa"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "~M~enu principale"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~E~ffetto acqua attivo"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "File della scena di intermezzo '%s' non trovato!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Impossibile caricare il gioco dal file."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Impossibile salvare il gioco nel file."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Impossibile eliminare il file."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Alta velocitр filmati"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Aumenta la velocitр di riproduzione dei filmati"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Impossibile salvare il gioco"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Reazioni del pubblico"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Attiva le reazioni del pubblico"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Interruzione del parlato"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Permette di saltare i dialoghi e le scene di intermezzo"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Modalitр elio"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Attiva la modalitр elio"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Scorrimento morbido"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Attiva lo scorrimento morbido durante gli spostamenti"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Cursori fluttuanti"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Attiva cursori fluttuanti"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Barre HP"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Attiva le barre di Hit Point"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Attacco 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Attacco 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Attacco 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Vai avanti"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Vai indietro"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Scorri a sinistra"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Scorri a destra"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Gira a sinistra"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Gira a destra"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Riposa"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Opzioni"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Scegli incantesimo"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Sembra che tu stia utilizzanto un dispositivo\n"
-"General MIDI, ma il gioco supporta solo Roland\n"
-"MT32 MIDI. Tenteremo di mappare gli strumenti\n"
-"Roland MT32 in quelli General MIDI. Alcune tracce\n"
-"potrebbero avere un suono non corretto."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Intro alternativa"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Usa un'intro del gioco alternativa (solo versione CD)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2411,23 +3182,26 @@ msgstr "Intro floppy"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Usa la versione floppy dell'intro (solo versione CD)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr ""
"La scena PSX di intermezzo '%s' non puђ essere eseguita in modalitр tavolozza"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"Sono state trovare scene di intermezzo DXA ma ScummVM ш stato compilato "
"senza il supporto zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Le scene di intermezzo MPEG2 non sono piљ supportate"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"Sono state trovare scene di intermezzo PSX ma ScummVM ш stato compilato "
+"senza il supporto colori RGB"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Scena di intermezzo '%s' non trovata"
@@ -2471,13 +3245,21 @@ msgstr "Mantieni quello nuovo"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Questa ш la fine della demo di Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"Sono state trovare scene di intermezzo PSX ma ScummVM ш stato compilato "
"senza il supporto colori RGB"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"Sono state trovare scene di intermezzo DXA ma ScummVM ш stato compilato "
+"senza il supporto zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Mostra etichette oggetti"
@@ -2499,790 +3281,51 @@ msgstr ""
"Il file teenagent.dat ш compresso e zlib non ш stata inclusa in questo "
"eseguibile. Si prega di decomprimerlo"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Impossibile salvare nella posizione %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Caricamento..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Salvataggio..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM ha trovato vecchi salvataggi per Nippon Safes che dovrebbero essere "
-"rinominati.\n"
-"I vecchi nomi non sono piљ supportati, quindi non potrai caricare i tuoi "
-"salvataggi senza prima convertirli.\n"
-"\n"
-"Premi OK per convertirli adesso, altrimenti ti verrр richiesto la prossima "
-"volta.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM ha convertito con successo tutti i tuoi salvataggi."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM ha stampato alcuni avvisi nella finestra console e non puђ garantire "
-"l'avvenuta conversione di tutti i tuoi file.\n"
-"\n"
-"Per favore, contatta il team."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Nome salvataggio non valido"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Su / Zoom + / Avanza / Apri porte"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Giљ / Zoom -"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Mostra/nascondi pannello inventario"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Mostra/nascondi pannello Biochip"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Azione/Seleziona"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Mostra/nascondi schermo centrale dati"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Mostra/nascondi schermana info"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Mostra/nascondi menu pausa"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Emulatore OPL MAME"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Emulatore OPL DOSBox"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Il dispositivo audio selezionato '%s' non ш stato trovato (potrebbe essere "
-"spento o scollegato)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Tentativo di ripristinare il primo dispositivo disponibile..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Il dispositivo audio selezionato '%s' non puђ essere usato. Vedi il file log "
-"per maggiori informazioni."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Il dispositivo audio preferito '%s' non ш stato trovato (potrebbe essere "
-"spento o scollegato)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Il dispositivo audio preferito '%s' non puђ essere usato. Vedi il file log "
-"per maggiori informazioni."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Nessuna musica"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Emulatore audio Amiga"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Emulatore AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Emulatore Apple II GS (NON IMPLEMENTATO)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Emulatore audio C64"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Avvio in corso dell'emulatore MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Emulatore MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Emulatore PC Speaker"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Emulatore IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Mappa tasti:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Efficace)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Attivo)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Bloccato)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Globale)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Gioco)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "MIDI Windows"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Menu principale di ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~M~odalitр mancini"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Controlli combattimento di ~I~ndy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Mostra cursore del mouse"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Aggancia ai bordi"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Compensa X del tocco"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Compensa Y del tocco"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Utilizza il controllo del cursore stile trackpad del portatile"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Un tocco per il clic sinistro, doppio tocco per il clic destro"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Sensibilitр"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Schermo in primo piano:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Schermo principale:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Ridimensionamento hardware (veloce, ma di bassa qualitр)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Ridimensionamento software (di buona qualitр, ma piљ lento)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Non ridimensionato (devi scorrere a sinistra e a destra)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Luminositр:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Audio ad alta qualitр (piљ lento) (riavviare)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Disattiva spegnimento in chiusura"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Modalitр mouse-clicca-e-trascina attivata."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Modalitр mouse-clicca-e-trascina disattivata."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Modalitр touchpad attivata."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Modalitр touchpad disattivata."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Modalitр clic"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Clic sinistro"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Clic centrale"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Clic destro"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Nascondi ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Nascondi altre"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Mostra tutte"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Finestra"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Contrai"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normale (nessun ridimensionamento)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normale (no ridim.)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Correzione proporzioni attivata"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Correzione proporzioni disattivata"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Filtro grafico attivo:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Modalitр finestra"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Conserve"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Modalitр visualizzazione attuale"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Dimensioni attuali"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Modalitр filtro attiva: Lineare"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Modalitр filtro attiva: Piљ vicino"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Su"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Giљ"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Sinistra"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Destra"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zona"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multifunzione"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Cambia personaggio"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Salta testo"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Modalitр veloce"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debugger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Menu globale"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Tastiera virtuale"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Programmatore tasti"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Sei sicuro di voler uscire?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Video"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Modalitр video attuale:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Double-strike"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Underscan orizzontale:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Underscan verticale:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Input"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Sensibilitр pad GC:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Accelerazione pad GC:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Stato:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Sconosciuto"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Monta DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Smonta DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Server:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Condivisione:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Nome utente:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Password:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Avvia rete"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Monta SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Smonta SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD montato con successo"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Errore nel montare il DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD non montato"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Rete attiva, condivisione montata"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Rete attiva"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", errore nel montare la condivisione"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", condivisione non montata"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Rete disattivata"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Avvio rete in corso"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Tempo scaduto per l'avvio della rete"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Rete non avviata (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Nascondi la barra degli strumenti"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Mostra tastiera"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Suono on/off"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Clic destro"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Mostra/nascondi cursore"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Osservazione libera"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Zoom avanti"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Zoom indietro"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Associa tasti"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Cursore su"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Cursore giљ"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Cursore a sinistra"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Cursore a destra"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Vuoi caricare o salvare il gioco?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Sei sicuro di voler uscire? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Tastiera"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Rotazione"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Utilizzo del driver SDL "
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Visualizza "
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Vuoi eseguire una scansione automatica?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Mappa l'azione del tasto destro"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr "Devi mappare un tasto per l'azione \"Tasto destro\" per giocare"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Mappa l'azione nascondi barra degli strumenti"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Devi mappare un tasto per l'azione \"Nascondi barra degli strumenti\" per "
-"giocare"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Mappa l'azione Zoom Up (opzionale)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Mappa l'azione Zoom Down (opzionale)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Non dimenticare di mappare un tasto per l'azione \"Nascondi barra degli "
-"strumenti\" per vedere l'intero inventario"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Sei sicuro di voler tornare all'elenco giochi?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Elenco giochi"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Agg. massa..."
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Sei sicuro di voler uscire?"
+#~ msgid "Mass Add..."
+#~ msgstr "Agg. in massa..."
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Touchscreen 'Tap Mode' - Clic sinistro"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Disattiva la mappatura General MIDI per i giochi con colonna sonora "
+#~ "Roland MT-32"
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Touchscreen 'Tap Mode' - Clic destro"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standard (16bpp)"
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Touchscreen 'Tap Mode' - Passaggio del cursore (nessun clic)"
+#~ msgid "Alternative intro"
+#~ msgstr "Intro alternativa"
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Volume massimo"
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Usa un'intro del gioco alternativa (solo versione CD)"
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Aumento volume"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Le scene di intermezzo MPEG2 non sono piљ supportate"
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Volume minimo"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Diminuzione volume"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Conserve"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Touchscreen 'Tap Mode' - Passaggio del cursore (clic DPad)"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Cerca aggiornamenti..."
+#~ msgid "Current display mode"
+#~ msgstr "Modalitр visualizzazione attuale"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Un clic destro"
+#~ msgid "Current scale"
+#~ msgstr "Dimensioni attuali"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Muovi soltanto"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Modalitр filtro attiva: Lineare"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Tasto Esc"
-
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Menu di gioco"
-
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Mostra tastierino numerico"
-
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Controllo mouse"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Clic attivato"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Clic disattivato"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Modalitр filtro attiva: Piљ vicino"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Attiva la modalitр Roland GS"
diff --git a/po/nb_NO.po b/po/nb_NO.po
index b438b53d78..7b2ae0f367 100644
--- a/po/nb_NO.po
+++ b/po/nb_NO.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 11:51+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-04-24 14:05+0100\n"
"Last-Translator: Einar Johan Trјan Sјmхen <einarjohants@gmail.com>\n"
"Language-Team: somaen <einarjohants@gmail.com>\n"
@@ -54,15 +54,15 @@ msgid "Go up"
msgstr "Gх tilbake"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Avbryt"
@@ -70,26 +70,26 @@ msgstr "Avbryt"
msgid "Choose"
msgstr "Velg"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Lukk"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Musklikk"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Vis tastatur"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Omkoble taster"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Veksle fullskjerm"
@@ -101,21 +101,21 @@ msgstr "Velg en handling for kobling"
msgid "Map"
msgstr "Koble"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -141,15 +141,15 @@ msgstr "Vennligst velg en handling"
msgid "Press the key to associate"
msgstr "Trykk tasten som skal kobles"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Spill"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -157,29 +157,29 @@ msgstr ""
"Kort spill-identifikator, brukt for х referere til lagrede spill, og х kjјre "
"spillet fra kommandolinjen"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Navn:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Full spilltittel"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Navn:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Sprхk:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -187,150 +187,150 @@ msgstr ""
"Spillets sprхk. Dette vil ikke gjјre din spanske spillversjon om til engelsk "
"versjon"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<standard>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plattform:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Plattform spillet opprinnelig ble designet for"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Plattform:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Motor"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafikk"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Overstyr globale grafikkinstillinger"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Overstyr globale grafikkinstillinger"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Lyd"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Overstyr globale lydinstillinger"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Overstyr globale lydinstillinger"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volum"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volum"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Overstyr globale voluminstillinger"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Overstyr globale voluminstillinger"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Overstyr globale MIDI-instillinger"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Overstyr globale MIDI-instillinger"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Overstyr globale MT-32-instillinger"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Overstyr globale MT-32-instillinger"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Sti"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Sti"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Spillsti:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Spillsti:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Ekstrasti:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Bestemmer sti til ytterligere data brukt av spillet"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Ekstrasti:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Lagringssti:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Bestemmer sti til lagrede spill"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Lagringssti:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -339,134 +339,135 @@ msgctxt "path"
msgid "None"
msgstr "Ingen"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Standard"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Velg SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Velg mappe med spilldata"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Velg mappe med ytterligere data"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Velg mappe for lagrede spill"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Denne spill-IDen er allerede i bruk. Vennligst velg en annen."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~A~vslutt"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Avslutt ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "~O~m..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Om ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~V~alg..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Endre globale ScummVM-innstillinger"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~S~tart"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Start valgt spill"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~Х~pne..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Хpne lagret spill for det valgte spillet"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~L~egg til spill..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Hold Shift for х legge til flere"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~R~ediger spill..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Endre spillinstillinger"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~F~jern spill"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Fjern spill fra listen. Spilldataene forblir intakte"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~L~egg til spill..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~R~ediger spill..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~F~jern spill"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Sјk i spilliste"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Sјk:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Хpne spill:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Хpne"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -474,7 +475,8 @@ msgstr ""
"Vil du virkelig kjјre flerspill-finneren? Dette kan potensielt legge til et "
"stort antall spill."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -482,7 +484,8 @@ msgstr ""
msgid "Yes"
msgstr "Ja"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -490,40 +493,36 @@ msgstr "Ja"
msgid "No"
msgstr "Nei"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM kunne ikke хpne den valgte mappen!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM kunne ikke finne noe spill i den valgte mappen!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Velg spill:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Vil du virkelig fjerne denne spillkonfigurasjonen?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Vil du хpne eller lagre spillet?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Dette spillet stјtter ikke lasting av spill fra oppstarteren."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM kunne ikke finne noen motor som kunne kjјre det valgte spillet!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Legg til flere..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Legg til flere..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... fremdrift ..."
@@ -624,8 +623,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Spesiel dithering-modus stјttet av enkelte spill"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Fullskjermsmodus"
@@ -754,12 +752,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Ekte Roland MT-32 (deaktiver GM-emulering)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Roland GS Modus (deaktiver GM-mapping)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "Slх av General MIDI-kobling for spill som har Roland MT-32-lydspor"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -947,15 +948,15 @@ msgstr "Listevisning"
msgid "Grid view"
msgstr "Nettvisning"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Ingen dato lagret"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Ingen tid lagret"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Ingen spilltid lagret"
@@ -967,43 +968,43 @@ msgstr "Slett"
msgid "Do you really want to delete this savegame?"
msgstr "Vil du virkelig slette dette lagrede spillet?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Dato: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Tid: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Spilltid: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Ikke navngitt spilltilstand"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Neste"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Forrige"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Nytt lagret spill"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Opprett ett nytt lagret spill."
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Navn:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Gi en beskrivelse for posisjon %d:"
@@ -1012,29 +1013,32 @@ msgstr "Gi en beskrivelse for posisjon %d:"
msgid "Select a Theme"
msgstr "Velg et tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Deaktivert GFX"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Deaktivert GFX"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Standard Tegner (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Standard"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Antialiased Tegner (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Antialiased (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1130,35 +1134,35 @@ msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
msgstr "Vil du virkelig returnere til oppstarteren?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Motoren stјtter ikke debug-nivх '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Meny"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Hopp over"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pause"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Hopp over linje"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Problem ved kjјring av spill:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Kunne ikke finne noen motor som kunne kjјre det valgte spillet"
@@ -1226,17 +1230,17 @@ msgstr "Brukeren avbrјt"
msgid "Unknown error"
msgstr "Ukjent feil"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Spillet i '%s' ser ut til х vцre ukjent."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Vennligst rapporter de fјlgende dataene til ScummVM-teamet sammen med navnet"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "pх spillet du forsјkte х legge til, og dets versjon/sprхk/etc.:"
@@ -1274,21 +1278,21 @@ msgid "~R~eturn to Launcher"
msgstr "~T~ilbake til oppstarter"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Lagret spill:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Lagre"
@@ -1325,23 +1329,23 @@ msgstr "~A~vbryt"
msgid "~K~eys"
msgstr "~T~aster"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Kunne ikke initalisere fargeformat."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Kunne ikke veksle til videomodus: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Kunne ikke aktivere aspektrate-innstilling."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Kunne ikke aktivere fullskjermsinnstilling."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1355,7 +1359,7 @@ msgstr ""
"datafilene til harddisken din istedet.\n"
"Se README-filen for detaljer."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1369,7 +1373,7 @@ msgstr ""
"kunne hјre pх spillets musikk.\n"
"Se README-filen for detaljer."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1378,7 +1382,7 @@ msgstr ""
"Klarte ikke laste spill (%s)! Vennligst se i README-fila for grunnleggende "
"informasjon og instruksjoner om hvordan du kan fх mer hjelp."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1388,33 +1392,761 @@ msgstr ""
"Derfor er det sannsynlig at det vil vцre ustabilt, og det er ikke sikkert at "
"lagrede spill vil fortsette х fungere i fremtidige versjoner av ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Start allikevel"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME OPL emulator"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox OPL emulator"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Den valgte lydenheten '%s' ble ikke funnet (den kan f.eks. vцre avslхtt "
+"eller frakoblet)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Forsјker х falle tilbake pх den neste tilgjengelige enheten..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Den valgte lydenheten '%s' kan ikke brukes. Se logg-filen for mer "
+"informasjon."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Den foretrukne lydenheten '%s' ble ikke funnet (den kan f.eks. vцre avslхtt "
+"eller frakoblet)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Den foretrukne lydenheten '%s' kan ikke brukes. Se i logg-filen for mer "
+"informasjon."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Ingen musikk"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Amiga Lydemulator"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib Emulator"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS Emulator (IKKE IMPLEMENTERT)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64 Lydemulator"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Initialiserer MT-32-Emulator"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32 Emulator"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC Speaker Emulator"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM PCjr Emulator"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Tastkobling:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Aktiv)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Aktiv)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Blokkert)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Spill)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~L~ukk"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "ScummVM Hovedmeny"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~V~enstrehendt modus"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~I~ndy kampkontroller"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Vis muspeker"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Hopp til kanter"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Gх til X-posisjon"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Gх til Y-posisjon"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Bruk bцrbar trackpad-stil muspekerkontroll"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Tap for venstreklikk, dobbelt-tap for hјyreklikk"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Fјlsomhet"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Skalering for јvre skjerm:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Hovedskjermsskalering:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Maskinvareskalering (rask, men lav kvalitet)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Programvareskalering (god kvalitet, men tregere)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Uskalert (du mх scrolle til venstre og hјyre)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Lysstyrke:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Hјy lydkvalitet (tregere) (omstart)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Deaktiver strјmsparing"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Mus-klikk-og-dra-modus aktivert."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Mus-klikk-og-dra-modus-deaktivert."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Touchpad-modus aktivert."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Touchpad-modus deaktivert."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Klikkmodus"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Venstreklikk"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Midtklikk"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Hјyreklikk"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Skjul ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Skjul andre"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Vis alle"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Vindu"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimer"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (ingen skalering)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal (ingen skalering)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Aspekt-rate korrigering aktivert"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Aspekt-rate korrigering deaktivert"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Aktivt grafikkfilter:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Vindusmodus"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Хpne"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Opp"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Ned"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Venstre"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Hјyre"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Sone"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multifunksjon"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Bytt karakter"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Hopp over tekst"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Rask modus"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Avslutt"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debugger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Global meny"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Virtuelt tastatur"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Tastkobler"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Vil du avslutte?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Video"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Nхvцrende videomodus:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Doble linjer"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Horisontal underscan:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Vertikal underscan:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Input"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "GC Pad-fјlsomhet:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "GC Pad-aksellerasjon:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Status:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Ukjent"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Monter DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Lјs ut DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Server:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Delt Ressurs:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Brukernavn:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Passord:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Init nettverk"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Monter SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Lјs ut SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD montering fullfјrt"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Feil under montering av DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD ikke montert"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Nettverket er oppe, delt ressurs montert"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Nettverket er oppe"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", feil under montering av den delte ressursen"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", delt ressurs ikke montert"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Nettverket er nede"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Initialiserer nettverk"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Timeout under initialisering av nettverk"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Nettverk ikke initialisert (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Skjul verktјylinje"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Vis tastatur"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Lyd av/pх"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Hјyreklikk"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Vis/Skjul muspeker"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Frikikking"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Zoom opp"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Zoom ned"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Koble taster"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Peker opp"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Peker ned"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Peker venstre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Peker hјyre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Vil du хpne eller lagre spillet?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Er du sikker pх at du vil avslutte ?"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Tastatur"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Roter"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Bruk SDL-driver"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Skjerm"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Vil du utfјre et automatisk sјk?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Koble handling til hјyreklikk"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Du mх koble en tast til handlingen 'Hјyreklikk' for х spille dette spillet"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Koble skjul-verktјylinje-handlingen"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Du mх koble en tast til 'Skjul verktјylinje'-handlingen for х spille dette "
+"spillet"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Koble handlingen Zoom Opp (valgfritt)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Koble handlingen Zoom Ned (valgfritt)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Ikke glem х koble en tast til handlingen 'Skjul verktјylinje' for х se hele "
+"inventaret"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Vil du virkelig returnere til oppstarteren?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Oppstarter"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Vil du virkelig avslutte?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Touchskjerm 'Tapmodus' - Venstreklikk"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Touchskjerm 'Tapmodus' - Hјyreklikk"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Touchskjerm 'Tapmodus' - Sveve (Ingen Klikk)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Maksimalt Volum"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "иker volum"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Minimalt Volum"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Senker volum"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Touchskjerm 'Tapmodus' - Sveve (DPad Klikk)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Sjekk for oppdateringer..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Hјyreklikk щn gang"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Kun Beveg"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "ESC-tast"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Spillmeny"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Vis talltastatur"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Styr Mus"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Klikking aktivert"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Klikking deaktivert"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Bruk originale lagre/laste-skjermer"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr "Bruk de originale lagre/laste-skjermene, istedenfor ScummVM-variantene"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Gjennopprett spill:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Gjenopprett"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Klarte ikke хpne spilltilstand fra fil:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Klarte ikke lagre spilltilstand til fil:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Fullfјrte lagring av spilltilstand til fil:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Fant ikke cutscenefil '%s'!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1440,27 +2172,304 @@ msgstr "Bruk lys palettmodus"
msgid "Display graphics using the game's bright palette"
msgstr "Vis grafikk med spillets lyse palett"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Klarte ikke хpne spilltilstand fra fil."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Klarte ikke lagre spilltilstand fra fil."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Klarte ikke х slette fil."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Rask filmhastighet"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Spill filmer med јkt hastighet"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Klarte ikke х lagre spill."
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Studiopublikum"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Aktiver studiopublikum"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr ""
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Tillat х hoppe over tekst og kutt-scener"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Helium-modus"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Aktiver helium-modus"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Myk scrolling"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Aktiver myk scrolling nхr man gхr"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Flytende muspekere"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Aktiver flytende muspekere"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "HP bar grafer"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Aktiver hit point-bar grafer"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Angrep 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Angrep 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Angrep 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Beveg Fremover"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Beveg Bakover"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Skli mot Venstre"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Skli mot Hјyre"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Svin til Venstre"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Sving til Hјyre"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Hvil"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Valg"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Velg Trolldom"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Du ser ut til х bruke en General MIDI-enhet,\n"
+"men spillet ditt stјtter bare Roland MT32-MIDI.\n"
+"Vi forsјker х koble Roland MT32-instrumentene til\n"
+"General MIDI-instrumentene. Allikevel, kan det\n"
+"skje at enkelte spor ikke vil spilles riktig."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~Z~ipmodus aktivert"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~O~verganger aktivert"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~D~ropp Side"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "Vi~s~ Kart"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Hoved~m~eny"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~V~anneffekt aktivert"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Kan ikke lagre spilltilstand i posisjon %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Laster spill..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Lagrer spill..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM oppdaget at du har gamle lagrede spill for Nippon Safes som bјr "
+"omdјpes.\n"
+"De gamle navnene stјttes ikke lengre, sх du vil ikke vцre i stand til х "
+"laste de lagrede spillene,\n"
+"med mindre du konverterer dem.\n"
+"Trykk OK for х konvertere dem nх, ellers vil du bli spurt igjen neste gang "
+"du starter spillet.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM konverterte alle de lagrede spillene dine uten problemer."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM skrev ut noen advarsler i konsollvinduet ditt og kan ikke garantere "
+"at alle filene dine har blitt konvertert.\n"
+"\n"
+"Vennligst rapporter dette til teamet."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Ugyldig navn for lagret spill"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Opp/Zoom Inn/Beveg Forover/Хpne Dјrer"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Ned/Zoom Ut"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "VIs/Skjul Inventoryskuff"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Vis/Skjul Biochipskuff"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Handling/Velg"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Vis/Skjul Infoskjerm"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Vis/Skjul Pausemeny"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA av-dithering"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Aktiver av-dithering i EGA-spill"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Foretrekk digitale lydeffekter"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Foretrekk digitale lydeffekter fremfor syntetiske"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Bruk IMF/Yamaha-FB-01 for MIDI-output"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1468,28 +2477,28 @@ msgstr ""
"Bruk et IBM Music Feature-kort eller en Yamaha FB-01 FM-synthmodul til MIDI "
"output"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Bruk CD-lyd"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "Bruk CD-lyd istedenfor spillets lyd, hvis tilgjengelig"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Bruk Windows-muspekere"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr "Bruk Windows-muspekerene (mindre, og monokrome) isteden"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Bruk sјlvmuspekere"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1530,15 +2539,6 @@ msgstr "Er du sikker pх at du vil avslutte? (Y/N)"
msgid "Play"
msgstr "Spill"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Avslutt"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Sett inn disk for lagrede spill"
@@ -1587,11 +2587,6 @@ msgstr "~F~orrige"
msgid "~N~ext"
msgstr "~N~este"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~L~ukk"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Kun tale"
@@ -1617,10 +2612,6 @@ msgstr "Velg ferdighetsnivх"
msgid "Refer to your Loom(TM) manual for help."
msgstr "Referer til Loom(TM)-hхndboka di for hjelp."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Standard"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Trening"
@@ -2142,7 +3133,7 @@ msgstr "Fly til hјyre"
msgid "Fly to lower right"
msgstr "Fly til nedre hјyre"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2151,40 +3142,7 @@ msgstr ""
"Ekte MIDI-stјtte krever ЋRoland UpgradeЛ fra LucasArts,\n"
"men %s mangler. Bruker AdLib istedet."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Klarte ikke lagre spilltilstand til fil:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Klarte ikke хpne spilltilstand fra fil:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Fullfјrte lagring av spilltilstand til fil:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2194,190 +3152,6 @@ msgstr ""
"ennх. Sх, for х spille Maniac Mansion, gх til 'Legg til spill' i ScummVM-"
"hovedmenyen og velg 'Maniac'-undermappa i Tentacle-mappa."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~Z~ipmodus aktivert"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~O~verganger aktivert"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~D~ropp Side"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "Vi~s~ Kart"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Hoved~m~eny"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~V~anneffekt aktivert"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Fant ikke cutscenefil '%s'!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Klarte ikke хpne spilltilstand fra fil."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Klarte ikke lagre spilltilstand fra fil."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Klarte ikke х slette fil."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Rask filmhastighet"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Spill filmer med јkt hastighet"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Klarte ikke х lagre spill."
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Studiopublikum"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Aktiver studiopublikum"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr ""
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Tillat х hoppe over tekst og kutt-scener"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Helium-modus"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Aktiver helium-modus"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Myk scrolling"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Aktiver myk scrolling nхr man gхr"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Flytende muspekere"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Aktiver flytende muspekere"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "HP bar grafer"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Aktiver hit point-bar grafer"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Angrep 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Angrep 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Angrep 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Beveg Fremover"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Beveg Bakover"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Skli mot Venstre"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Skli mot Hјyre"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Svin til Venstre"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Sving til Hјyre"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Hvil"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Valg"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Velg Trolldom"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Du ser ut til х bruke en General MIDI-enhet,\n"
-"men spillet ditt stјtter bare Roland MT32-MIDI.\n"
-"Vi forsјker х koble Roland MT32-instrumentene til\n"
-"General MIDI-instrumentene. Allikevel, kan det\n"
-"skje at enkelte spor ikke vil spilles riktig."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Alternativ intro"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Bruk en alternativ intro (Kun for CD-versjon)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2402,20 +3176,21 @@ msgstr "Diskett-intro"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Bruk diskettversjonens intro (Kun for CD-versjon)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "PSX-strјm cutscene '%s' kan ikke spilles i pallettmodus"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr "DXA-cutscener funnet men ScummVM er bygd uten zlib-stјtte"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "MPEG2-cutscener stјttes ikke lengre"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr "PSX-cutscener funnet, men ScummVM har blitt bygd uten RGB-fargestјtte"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Fant ikke cutscene '%s'"
@@ -2459,11 +3234,17 @@ msgstr "Behold den nye"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Dette er slutten pх Broken Sword 1-demoen"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr "PSX-cutscener funnet, men ScummVM har blitt bygd uten RGB-fargestјtte"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr "DXA-cutscener funnet men ScummVM er bygd uten zlib-stјtte"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Vis objektmerkelapper"
@@ -2485,791 +3266,49 @@ msgstr ""
"teenagent.dat-fila er komprimert og zlib har ikke blitt inkludert i denne "
"programfilen. Vennligst pakk den ut"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Kan ikke lagre spilltilstand i posisjon %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Laster spill..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Lagrer spill..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM oppdaget at du har gamle lagrede spill for Nippon Safes som bјr "
-"omdјpes.\n"
-"De gamle navnene stјttes ikke lengre, sх du vil ikke vцre i stand til х "
-"laste de lagrede spillene,\n"
-"med mindre du konverterer dem.\n"
-"Trykk OK for х konvertere dem nх, ellers vil du bli spurt igjen neste gang "
-"du starter spillet.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM konverterte alle de lagrede spillene dine uten problemer."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM skrev ut noen advarsler i konsollvinduet ditt og kan ikke garantere "
-"at alle filene dine har blitt konvertert.\n"
-"\n"
-"Vennligst rapporter dette til teamet."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Ugyldig navn for lagret spill"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Opp/Zoom Inn/Beveg Forover/Хpne Dјrer"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Ned/Zoom Ut"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "VIs/Skjul Inventoryskuff"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Vis/Skjul Biochipskuff"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Handling/Velg"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Vis/Skjul Infoskjerm"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Vis/Skjul Pausemeny"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME OPL emulator"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox OPL emulator"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Den valgte lydenheten '%s' ble ikke funnet (den kan f.eks. vцre avslхtt "
-"eller frakoblet)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Forsјker х falle tilbake pх den neste tilgjengelige enheten..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Den valgte lydenheten '%s' kan ikke brukes. Se logg-filen for mer "
-"informasjon."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Den foretrukne lydenheten '%s' ble ikke funnet (den kan f.eks. vцre avslхtt "
-"eller frakoblet)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Den foretrukne lydenheten '%s' kan ikke brukes. Se i logg-filen for mer "
-"informasjon."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Ingen musikk"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Amiga Lydemulator"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib Emulator"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS Emulator (IKKE IMPLEMENTERT)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64 Lydemulator"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Initialiserer MT-32-Emulator"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32 Emulator"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC Speaker Emulator"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM PCjr Emulator"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Tastkobling:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Aktiv)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Aktiv)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Blokkert)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Spill)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "ScummVM Hovedmeny"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~V~enstrehendt modus"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~I~ndy kampkontroller"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Vis muspeker"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Hopp til kanter"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Gх til X-posisjon"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Gх til Y-posisjon"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Bruk bцrbar trackpad-stil muspekerkontroll"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Tap for venstreklikk, dobbelt-tap for hјyreklikk"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Fјlsomhet"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Skalering for јvre skjerm:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Hovedskjermsskalering:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Maskinvareskalering (rask, men lav kvalitet)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Programvareskalering (god kvalitet, men tregere)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Uskalert (du mх scrolle til venstre og hјyre)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Lysstyrke:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Hјy lydkvalitet (tregere) (omstart)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Deaktiver strјmsparing"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Mus-klikk-og-dra-modus aktivert."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Mus-klikk-og-dra-modus-deaktivert."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Touchpad-modus aktivert."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Touchpad-modus deaktivert."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Klikkmodus"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Venstreklikk"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Midtklikk"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Hјyreklikk"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Skjul ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Skjul andre"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Vis alle"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Vindu"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimer"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (ingen skalering)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal (ingen skalering)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Aspekt-rate korrigering aktivert"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Aspekt-rate korrigering deaktivert"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Aktivt grafikkfilter:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Vindusmodus"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Bevar"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Nхvцrende videomodus"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Nхvцrende skala"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Aktiv filtermodus: Linjцr"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Aktiv filtermodus: Nцrmeste"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Opp"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Ned"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Venstre"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Hјyre"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Sone"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multifunksjon"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Bytt karakter"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Hopp over tekst"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Rask modus"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debugger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Global meny"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Virtuelt tastatur"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Tastkobler"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Vil du avslutte?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Video"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Nхvцrende videomodus:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Doble linjer"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Horisontal underscan:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Vertikal underscan:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Input"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "GC Pad-fјlsomhet:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "GC Pad-aksellerasjon:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Status:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Ukjent"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Monter DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Lјs ut DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Server:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Delt Ressurs:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Brukernavn:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Passord:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Init nettverk"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Monter SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Lјs ut SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD montering fullfјrt"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Feil under montering av DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD ikke montert"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Nettverket er oppe, delt ressurs montert"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Nettverket er oppe"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", feil under montering av den delte ressursen"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", delt ressurs ikke montert"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Nettverket er nede"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Initialiserer nettverk"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Timeout under initialisering av nettverk"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Nettverk ikke initialisert (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Skjul verktјylinje"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Vis tastatur"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Lyd av/pх"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Hјyreklikk"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Vis/Skjul muspeker"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Frikikking"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Zoom opp"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Zoom ned"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Koble taster"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Peker opp"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Peker ned"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Peker venstre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Peker hјyre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Vil du хpne eller lagre spillet?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Er du sikker pх at du vil avslutte ?"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Tastatur"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Roter"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Bruk SDL-driver"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Skjerm"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Vil du utfјre et automatisk sјk?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Koble handling til hјyreklikk"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Du mх koble en tast til handlingen 'Hјyreklikk' for х spille dette spillet"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Koble skjul-verktјylinje-handlingen"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Du mх koble en tast til 'Skjul verktјylinje'-handlingen for х spille dette "
-"spillet"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Koble handlingen Zoom Opp (valgfritt)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Koble handlingen Zoom Ned (valgfritt)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Ikke glem х koble en tast til handlingen 'Skjul verktјylinje' for х se hele "
-"inventaret"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Vil du virkelig returnere til oppstarteren?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Oppstarter"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Vil du virkelig avslutte?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Touchskjerm 'Tapmodus' - Venstreklikk"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Touchskjerm 'Tapmodus' - Hјyreklikk"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Touchskjerm 'Tapmodus' - Sveve (Ingen Klikk)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Maksimalt Volum"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Legg til flere..."
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "иker volum"
+#~ msgid "Mass Add..."
+#~ msgstr "Legg til flere..."
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Minimalt Volum"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr "Slх av General MIDI-kobling for spill som har Roland MT-32-lydspor"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Senker volum"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standard (16bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Touchskjerm 'Tapmodus' - Sveve (DPad Klikk)"
+#~ msgid "Alternative intro"
+#~ msgstr "Alternativ intro"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Sjekk for oppdateringer..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Bruk en alternativ intro (Kun for CD-versjon)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Hјyreklikk щn gang"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "MPEG2-cutscener stјttes ikke lengre"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Kun Beveg"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "ESC-tast"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Bevar"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Spillmeny"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Vis talltastatur"
+#~ msgid "Current display mode"
+#~ msgstr "Nхvцrende videomodus"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Styr Mus"
+#~ msgid "Current scale"
+#~ msgstr "Nхvцrende skala"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Klikking aktivert"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Aktiv filtermodus: Linjцr"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Klikking deaktivert"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Aktiv filtermodus: Nцrmeste"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Aktiver Roland GS-modus"
diff --git a/po/nn_NO.po b/po/nn_NO.po
index 443fae2970..7a6c2cb11d 100644
--- a/po/nn_NO.po
+++ b/po/nn_NO.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2011-04-25 23:07+0100\n"
"Last-Translator: Einar Johan T. Sјmхen <einarjohants@gmail.com>\n"
"Language-Team: somaen <einarjohants@gmail.com>\n"
@@ -56,15 +56,15 @@ msgid "Go up"
msgstr "Gх tilbake"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Avbryt"
@@ -72,26 +72,26 @@ msgstr "Avbryt"
msgid "Choose"
msgstr "Vel"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Steng"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Musklikk"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Syn Tastatur"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Omkople tastar"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
#, fuzzy
msgid "Toggle FullScreen"
msgstr "Veksle fullskjerm"
@@ -104,21 +104,21 @@ msgstr "Vel ei handling for kopling:"
msgid "Map"
msgstr "Kople"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -144,15 +144,15 @@ msgstr "Vel ei handling"
msgid "Press the key to associate"
msgstr "Trykk tasten du vil kople"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Spel"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -160,29 +160,29 @@ msgstr ""
"Kort spelidentifikator nytta for х referere til lagra spel, og х kјyre "
"spelet frх kommandolinja"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Namn:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Full speltittel:"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Namn:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Sprхk:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -190,151 +190,151 @@ msgstr ""
"Spelets sprхk. Dette vil ikkje gjere den spanske versjonen av spelet til ein "
"engelsk versjon"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<standard>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plattform:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Plattform spelet opprineleg vart designa for"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Plattform:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
#, fuzzy
msgid "Engine"
msgstr "Undersјk"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafikk"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Overstyr globale grafikkinstillingar"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Overstyr globale grafikkinstillingar"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Lyd"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Overstyr globale lydinstillingar"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Overstyr globale lydinstillingar"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volum"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volum"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Overstyr globale voluminstillingar"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Overstyr globale voluminstillingar"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Overstyr globale MIDI-instillingar"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Overstyr globale MIDI-instillingar"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Overstyr globale MT-32-instillingar"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Overstyr globale MT-32-instillingar"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Stiar"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Stiar"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Spelsti:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Spelsti:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Ekstrasti:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr ""
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Ekstrasti:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Lagringssti:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr ""
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Lagringssti:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -343,140 +343,142 @@ msgctxt "path"
msgid "None"
msgstr "Ingen"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Standard"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Vel SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Vel mappe med speldata"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr ""
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Vel mappe for lagra spel"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr ""
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~A~vslutt"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Avslutt ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "~O~m..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Om ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~V~al..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Endre globale ScummVM-instillingar"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~S~tart"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Start det velde spelet"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~Х~pne..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Хpne eit lagra spel for the velde spelet"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~L~egg til spel..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Hold Shift nede for х legge til fleire"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~R~ediger spel..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Endre spelinstillingar"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~F~jern spel"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr ""
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~L~egg til spel..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~R~ediger spel..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~F~jern spel"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Sјk i spelliste"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Sјk:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Хpne spel:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Хpne"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
msgstr ""
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -484,7 +486,8 @@ msgstr ""
msgid "Yes"
msgstr "Ja"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -492,41 +495,37 @@ msgstr "Ja"
msgid "No"
msgstr "Nei"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM kunne ikkje хpne den velde mappa!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM kunne ikkje finne noko spel i den velde mappa!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Vel spelet:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Vil du verkeleg fjerne denne spelkonfigurasjonen?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Vil du хpne eller lagre spelet?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Dette spelet stјttar ikkje хpning av lagra spel frх oppstartaren."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM kunne ikkje finne nokon motor som var i stand til х kјyre det velde "
"spelet!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Legg til fleire..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Legg til fleire..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... fremdrift ..."
@@ -625,8 +624,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Spesielle dithering-modus som stјttast av nokre spel"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Fullskjermsmodus"
@@ -754,12 +752,14 @@ msgstr "Ekte Roland MT-32 (ingen GS-emulering)"
#: gui/options.cpp:890
#, fuzzy
-msgid "Roland GS Mode (disable GM mapping)"
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Ekte Roland MT-32 (deaktiver GM-emulering)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
-msgstr "Slхr av General MIDI-kopling for spel med Roland MT-32 lydspor"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
+msgstr ""
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -948,15 +948,15 @@ msgstr ""
msgid "Grid view"
msgstr ""
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Ingen dato lagra"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Inga tid lagra"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Inga speletid lagra"
@@ -968,46 +968,46 @@ msgstr "Slett"
msgid "Do you really want to delete this savegame?"
msgstr "Vil du verkeleg slette det lagra spelet?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Dato: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Tid: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Speletid: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Ikkje navngjeven speltilstand"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr ""
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr ""
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
#, fuzzy
msgid "New Save"
msgstr "Lagre"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
#, fuzzy
msgid "Create a new save game"
msgstr "Full speltittel:"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
#, fuzzy
msgid "Name: "
msgstr "Namn:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr ""
@@ -1016,29 +1016,33 @@ msgstr ""
msgid "Select a Theme"
msgstr "Vel eit tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Deaktivert GFX"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Deaktivert GFX"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Standard Teiknar (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+#, fuzzy
+msgid "Standard"
msgstr "Standard (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Antialiased Teiknar (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Antialiased (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1134,35 +1138,35 @@ msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
msgstr "Vil du verkeleg slette det lagra spelet?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Motoren stјttar ikkje debug-nivх '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Meny"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Hopp over"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pause"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Hopp over linje"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Feil under kјyring av spel:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Kunne ikkje finne nokon motor som kunne kјyre det velde spelet."
@@ -1231,16 +1235,16 @@ msgstr ""
msgid "Unknown error"
msgstr "Ukjend feil"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr ""
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr ""
@@ -1280,21 +1284,21 @@ msgid "~R~eturn to Launcher"
msgstr "~T~ilbake til oppstarter"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Lagra spel:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Lagre"
@@ -1326,25 +1330,25 @@ msgstr "~A~vbryt"
msgid "~K~eys"
msgstr "~T~astar"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr ""
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
#, fuzzy
msgid "Could not switch to video mode: '"
msgstr "Gjeldende videomodus:"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
#, fuzzy
msgid "Could not apply aspect ratio setting."
msgstr "Veksle aspekt-korrigering"
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr ""
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1353,7 +1357,7 @@ msgid ""
"See the README file for details."
msgstr ""
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1362,47 +1366,775 @@ msgid ""
"See the README file for details."
msgstr ""
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
"and for instructions on how to obtain further assistance."
msgstr ""
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
"not work in future versions of ScummVM."
msgstr ""
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr ""
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME OPL emulator"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox OPL emulator"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr ""
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Ingen musikk"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Amiga Lydemulator"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib Emulator"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS Emulator (IKKJE IMPLEMENTERT)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64 Lydemulator"
+
+#: audio/softsynth/mt32.cpp:199
+#, fuzzy
+msgid "Initializing MT-32 Emulator"
+msgstr "Initialiserar MT-32-emulator"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32 Emulator"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC Speaker Emulator"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM PCjr Emulator"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Tastkopling:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+#, fuzzy
+msgid " (Effective)"
+msgstr " (Aktivt)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Aktivt)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr ""
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Spel)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~L~ukk"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "ScummVM Hovudmeny"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~V~enstrehendt modus"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~I~ndy-kampkontrollar"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Vis muspeikar"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Hopp til kantar"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Gх til X-posisjon"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Gх til Y-posisjon"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr ""
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Tap for venstre-klikk, dobbelt-tap for hјgre-klikk"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Sensitivitet"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr ""
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Hovudskjermsskalering:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr ""
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr ""
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Uskalert (du mх scrolle til venstre og hјgre)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Lysstyrke:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr ""
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Deaktiver strјmsparing"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr ""
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr ""
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr ""
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr ""
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr ""
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Venstreklikk"
+
+#: backends/platform/maemo/maemo.cpp:218
+#, fuzzy
+msgid "Middle Click"
+msgstr "Midtre venstre gjenstand"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Hјgreklikk"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+#, fuzzy
+msgid "Hide ScummVM"
+msgstr "Avslutt ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr ""
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr ""
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr ""
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr ""
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (inga skalering)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal (inga skalering)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+#, fuzzy
+msgid "Enabled aspect ratio correction"
+msgstr "Veksle aspekt-korrigering"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+#, fuzzy
+msgid "Disabled aspect ratio correction"
+msgstr "Veksle aspekt-korrigering"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+#, fuzzy
+msgid "Active graphics filter:"
+msgstr "Veksle grafikkfiltre"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+#, fuzzy
+msgid "Windowed mode"
+msgstr "Teiknemodus:"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Хpne"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Opp"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Ned"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Venstre"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Hјgre"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Sone"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Rask modus"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Avslutt"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debugger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Globalmeny"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Tastkopler"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Vil du avslutte?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Video"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Gjeldende videomodus:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr ""
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Horisontal underscan:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Vertikal underscan:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Input"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr ""
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr ""
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Status:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Ukjend"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Monter DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Lјs ut DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Teinar:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr ""
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Brukarnamn:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Passord:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Init nettverk"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Monter SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Avmonter SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD-montering fullfјrt"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Feil under montering av DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD ikkje montert"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Nettverket er oppe, delt ressurs montert"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Nettverket er oppe"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ""
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", delt ressurs ikkje montert"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Nettverket er nede"
+
+#: backends/platform/wii/options.cpp:178
+#, fuzzy
+msgid "Initializing network"
+msgstr "Initialiserer nettverk"
+
+#: backends/platform/wii/options.cpp:182
+#, fuzzy
+msgid "Timeout while initializing network"
+msgstr "Initialiserer nettverk"
+
+#: backends/platform/wii/options.cpp:186
+#, fuzzy, c-format
+msgid "Network not initialized (%d)"
+msgstr "Nettverk ikkje initialisert (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Skjul verktјylinje"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Syn tastatur"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Lyd av/pх"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Hјgreklikk"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Vis/Skjul Peikar"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Frikikking"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Zoom opp"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Zoom ned"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Kople tastar"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Peikar opp"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Peikar ned"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Peikar venstre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Peikar hјgre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Vil du хpne eller lagre spelet?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr "Er du sikker pх at du vil avslutte?"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Tastatur"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Roter"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Nyttar SDL-drivar"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Skjerm"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Vil du utfјre eit automatisk sјk?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Kople hјgreklikkshandling"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Du mх kople ein tast til 'Hјgreklikk'-handlinga for х spele dette spelet"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Kople skjul-verktјylinje-handlinga"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr "Du mх kople ein tast til 'Skjul verktјylinje' for х spele dette spelet"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Kople Zoom Opp-handling (valfri)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Kople Zoom Ned-handling (valfri)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Ikkje glјym х kople ein tast til 'Skjul verktјylinje' for х se heile "
+"inventaret"
+
+#: backends/events/default/default-events.cpp:196
+#, fuzzy
+msgid "Do you really want to return to the Launcher?"
+msgstr "Vil du verkeleg slette det lagra spelet?"
+
+#: backends/events/default/default-events.cpp:196
+#, fuzzy
+msgid "Launcher"
+msgstr "Slх"
+
+#: backends/events/default/default-events.cpp:218
+#, fuzzy
+msgid "Do you really want to quit?"
+msgstr "Vil du avslutte?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr ""
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr ""
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr ""
+
+#: backends/events/gph/gph-events.cpp:410
+#, fuzzy
+msgid "Maximum Volume"
+msgstr "Volum"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr ""
+
+#: backends/events/gph/gph-events.cpp:418
+#, fuzzy
+msgid "Minimal Volume"
+msgstr "Volum"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr ""
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr ""
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr ""
+
+#: backends/platform/tizen/form.cpp:263
+#, fuzzy
+msgid "Right Click Once"
+msgstr "Hјgreklikk"
+
+#: backends/platform/tizen/form.cpp:271
+#, fuzzy
+msgid "Move Only"
+msgstr "Tale"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr ""
+
+#: backends/platform/tizen/form.cpp:299
+#, fuzzy
+msgid "Game Menu"
+msgstr "Spel"
+
+#: backends/platform/tizen/form.cpp:304
+#, fuzzy
+msgid "Show Keypad"
+msgstr "Syn tastatur"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr ""
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr ""
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr ""
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr ""
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Gjenopprett spel:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Gjenopprett"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr ""
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1422,55 +2154,328 @@ msgstr "иvre hјgre gjenstand"
msgid "Display graphics using the game's bright palette"
msgstr ""
-#: engines/sci/detection.cpp:373
-msgid "EGA undithering"
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr ""
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr ""
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr ""
+
+#: engines/groovie/detection.cpp:312
+#, fuzzy
+msgid "Fast movie speed"
+msgstr "Rask modus"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr ""
+
+#: engines/groovie/script.cpp:420
+#, fuzzy
+msgid "Failed to save game"
+msgstr "Full speltittel:"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr ""
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr ""
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr ""
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr ""
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr ""
+
+#: engines/kyra/detection.cpp:85
+#, fuzzy
+msgid "Enable helium mode"
+msgstr "Aktiver Roland GS-modus"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr ""
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr ""
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+#, fuzzy
+msgid "Floating cursors"
+msgstr "Vanleg peikar"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr ""
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr ""
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr ""
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr ""
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr ""
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr ""
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr ""
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr ""
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr ""
+
+#: engines/kyra/lol.cpp:484
+#, fuzzy
+msgid "Slide Right"
+msgstr "Hјgre"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+#, fuzzy
+msgid "Turn Left"
+msgstr "Slх av"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+#, fuzzy
+msgid "Turn Right"
+msgstr "Peikar hјgre"
+
+#: engines/kyra/lol.cpp:487
+#, fuzzy
+msgid "Rest"
+msgstr "Gjenopprett"
+
+#: engines/kyra/lol.cpp:488
+#, fuzzy
+msgid "Options"
+msgstr "~V~al"
+
+#: engines/kyra/lol.cpp:489
+#, fuzzy
+msgid "Choose Spell"
+msgstr "Vel"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~Z~ipmodus aktivert"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~O~vergangar aktivert"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr ""
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr ""
+
+#: engines/mohawk/dialogs.cpp:105
+#, fuzzy
+msgid "~M~ain Menu"
+msgstr "ScummVM Hovudmeny"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~V~anneffekt aktivert"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:204
+#, fuzzy
+msgid "Loading game..."
+msgstr "Хpne spel:"
+
+#: engines/parallaction/saveload.cpp:219
+#, fuzzy
+msgid "Saving game..."
+msgstr "Lagra spel:"
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2474
+#, fuzzy
+msgid "Down/Zoom Out"
+msgstr "Zoom opp"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
msgstr ""
#: engines/sci/detection.cpp:374
+msgid "EGA undithering"
+msgstr ""
+
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr ""
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr ""
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr ""
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr ""
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
msgstr ""
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr ""
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr ""
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr ""
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
#, fuzzy
msgid "Use silver cursors"
msgstr "Vanleg peikar"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1512,15 +2517,6 @@ msgstr "Er du sikker pх at du vil avslutte?"
msgid "Play"
msgstr ""
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Avslutt"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr ""
@@ -1570,11 +2566,6 @@ msgstr "~F~orrige"
msgid "~N~ext"
msgstr "~N~este"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~L~ukk"
-
#: engines/scumm/dialogs.cpp:597
#, fuzzy
msgid "Speech Only"
@@ -1604,11 +2595,6 @@ msgstr ""
msgid "Refer to your Loom(TM) manual for help."
msgstr ""
-#: engines/scumm/dialogs.cpp:658
-#, fuzzy
-msgid "Standard"
-msgstr "Standard (16bpp)"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr ""
@@ -2131,38 +3117,14 @@ msgstr "Fly til hјgre"
msgid "Fly to lower right"
msgstr "Fly til nedre hјgre"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
"but %s is missing. Using AdLib instead."
msgstr ""
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2172,196 +3134,6 @@ msgstr ""
"det enno. For х spele Maniac Mansion, gх til 'Legg til spel' i ScummVM-"
"menyen og vel 'Maniac'-undermappa i 'Tentacle'-mappa."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~Z~ipmodus aktivert"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~O~vergangar aktivert"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr ""
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr ""
-
-#: engines/mohawk/dialogs.cpp:105
-#, fuzzy
-msgid "~M~ain Menu"
-msgstr "ScummVM Hovudmeny"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~V~anneffekt aktivert"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr ""
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr ""
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr ""
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr ""
-
-#: engines/groovie/detection.cpp:312
-#, fuzzy
-msgid "Fast movie speed"
-msgstr "Rask modus"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr ""
-
-#: engines/groovie/script.cpp:420
-#, fuzzy
-msgid "Failed to save game"
-msgstr "Full speltittel:"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr ""
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr ""
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr ""
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr ""
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr ""
-
-#: engines/kyra/detection.cpp:85
-#, fuzzy
-msgid "Enable helium mode"
-msgstr "Aktiver Roland GS-modus"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr ""
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr ""
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-#, fuzzy
-msgid "Floating cursors"
-msgstr "Vanleg peikar"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr ""
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr ""
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr ""
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr ""
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr ""
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr ""
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr ""
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr ""
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr ""
-
-#: engines/kyra/lol.cpp:484
-#, fuzzy
-msgid "Slide Right"
-msgstr "Hјgre"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-#, fuzzy
-msgid "Turn Left"
-msgstr "Slх av"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-#, fuzzy
-msgid "Turn Right"
-msgstr "Peikar hјgre"
-
-#: engines/kyra/lol.cpp:487
-#, fuzzy
-msgid "Rest"
-msgstr "Gjenopprett"
-
-#: engines/kyra/lol.cpp:488
-#, fuzzy
-msgid "Options"
-msgstr "~V~al"
-
-#: engines/kyra/lol.cpp:489
-#, fuzzy
-msgid "Choose Spell"
-msgstr "Vel"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr ""
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr ""
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2382,20 +3154,20 @@ msgstr ""
msgid "Use the floppy version's intro (CD version only)"
msgstr ""
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr ""
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
+#: engines/sword1/animation.cpp:561
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
msgstr ""
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr ""
@@ -2430,11 +3202,16 @@ msgstr ""
msgid "This is the end of the Broken Sword 1 Demo"
msgstr ""
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
+#: engines/sword2/animation.cpp:461
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr ""
@@ -2454,791 +3231,32 @@ msgid ""
"executable. Please decompress it"
msgstr ""
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-
-#: engines/parallaction/saveload.cpp:204
-#, fuzzy
-msgid "Loading game..."
-msgstr "Хpne spel:"
-
-#: engines/parallaction/saveload.cpp:219
-#, fuzzy
-msgid "Saving game..."
-msgstr "Lagra spel:"
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr ""
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2446
-#, fuzzy
-msgid "Down/Zoom Out"
-msgstr "Zoom opp"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr ""
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME OPL emulator"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox OPL emulator"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr ""
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Ingen musikk"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Amiga Lydemulator"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib Emulator"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS Emulator (IKKJE IMPLEMENTERT)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64 Lydemulator"
-
-#: audio/softsynth/mt32.cpp:205
-#, fuzzy
-msgid "Initializing MT-32 Emulator"
-msgstr "Initialiserar MT-32-emulator"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32 Emulator"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC Speaker Emulator"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM PCjr Emulator"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Tastkopling:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-#, fuzzy
-msgid " (Effective)"
-msgstr " (Aktivt)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Aktivt)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr ""
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Spel)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "ScummVM Hovudmeny"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~V~enstrehendt modus"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~I~ndy-kampkontrollar"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Vis muspeikar"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Hopp til kantar"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Gх til X-posisjon"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Gх til Y-posisjon"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr ""
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Tap for venstre-klikk, dobbelt-tap for hјgre-klikk"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Sensitivitet"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr ""
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Hovudskjermsskalering:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr ""
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr ""
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Uskalert (du mх scrolle til venstre og hјgre)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Lysstyrke:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr ""
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Deaktiver strјmsparing"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr ""
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr ""
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr ""
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr ""
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr ""
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Venstreklikk"
-
-#: backends/platform/maemo/maemo.cpp:218
-#, fuzzy
-msgid "Middle Click"
-msgstr "Midtre venstre gjenstand"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Hјgreklikk"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-#, fuzzy
-msgid "Hide ScummVM"
-msgstr "Avslutt ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr ""
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr ""
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr ""
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr ""
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (inga skalering)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal (inga skalering)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-#, fuzzy
-msgid "Enabled aspect ratio correction"
-msgstr "Veksle aspekt-korrigering"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-#, fuzzy
-msgid "Disabled aspect ratio correction"
-msgstr "Veksle aspekt-korrigering"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-#, fuzzy
-msgid "Active graphics filter:"
-msgstr "Veksle grafikkfiltre"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-#, fuzzy
-msgid "Windowed mode"
-msgstr "Teiknemodus:"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Bevar"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-#, fuzzy
-msgid "Current display mode"
-msgstr "Gjeldende videomodus:"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr ""
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr ""
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr ""
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Opp"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Ned"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Venstre"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Hјgre"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Sone"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr ""
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr ""
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr ""
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Rask modus"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debugger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Globalmeny"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr ""
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Tastkopler"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Vil du avslutte?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Video"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Gjeldende videomodus:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr ""
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Horisontal underscan:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Vertikal underscan:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Input"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr ""
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr ""
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Status:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Ukjend"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Monter DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Lјs ut DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Teinar:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr ""
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Brukarnamn:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Passord:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Init nettverk"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Monter SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Avmonter SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD-montering fullfјrt"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Feil under montering av DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD ikkje montert"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Nettverket er oppe, delt ressurs montert"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Nettverket er oppe"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ""
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", delt ressurs ikkje montert"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Nettverket er nede"
-
-#: backends/platform/wii/options.cpp:178
-#, fuzzy
-msgid "Initializing network"
-msgstr "Initialiserer nettverk"
-
-#: backends/platform/wii/options.cpp:182
-#, fuzzy
-msgid "Timeout while initializing network"
-msgstr "Initialiserer nettverk"
-
-#: backends/platform/wii/options.cpp:186
-#, fuzzy, c-format
-msgid "Network not initialized (%d)"
-msgstr "Nettverk ikkje initialisert (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Skjul verktјylinje"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Syn tastatur"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Lyd av/pх"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Hјgreklikk"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Vis/Skjul Peikar"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Frikikking"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Zoom opp"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Zoom ned"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Kople tastar"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Peikar opp"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Peikar ned"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Peikar venstre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Peikar hјgre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Vil du хpne eller lagre spelet?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr "Er du sikker pх at du vil avslutte?"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Tastatur"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Roter"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Nyttar SDL-drivar"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Skjerm"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Vil du utfјre eit automatisk sјk?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Kople hјgreklikkshandling"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Du mх kople ein tast til 'Hјgreklikk'-handlinga for х spele dette spelet"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Kople skjul-verktјylinje-handlinga"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr "Du mх kople ein tast til 'Skjul verktјylinje' for х spele dette spelet"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Kople Zoom Opp-handling (valfri)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Kople Zoom Ned-handling (valfri)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Ikkje glјym х kople ein tast til 'Skjul verktјylinje' for х se heile "
-"inventaret"
-
-#: backends/events/default/default-events.cpp:193
-#, fuzzy
-msgid "Do you really want to return to the Launcher?"
-msgstr "Vil du verkeleg slette det lagra spelet?"
-
-#: backends/events/default/default-events.cpp:193
-#, fuzzy
-msgid "Launcher"
-msgstr "Slх"
-
-#: backends/events/default/default-events.cpp:215
-#, fuzzy
-msgid "Do you really want to quit?"
-msgstr "Vil du avslutte?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr ""
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr ""
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr ""
-
-#: backends/events/gph/gph-events.cpp:410
-#, fuzzy
-msgid "Maximum Volume"
-msgstr "Volum"
-
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr ""
-
-#: backends/events/gph/gph-events.cpp:418
-#, fuzzy
-msgid "Minimal Volume"
-msgstr "Volum"
-
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr ""
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Legg til fleire..."
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr ""
+#~ msgid "Mass Add..."
+#~ msgstr "Legg til fleire..."
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr ""
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr "Slхr av General MIDI-kopling for spel med Roland MT-32 lydspor"
-#: backends/platform/bada/form.cpp:269
-#, fuzzy
-msgid "Right Click Once"
-msgstr "Hјgreklikk"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standard (16bpp)"
-#: backends/platform/bada/form.cpp:277
-#, fuzzy
-msgid "Move Only"
-msgstr "Tale"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr ""
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Bevar"
-#: backends/platform/bada/form.cpp:296
-#, fuzzy
-msgid "Game Menu"
-msgstr "Spel"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/platform/bada/form.cpp:301
#, fuzzy
-msgid "Show Keypad"
-msgstr "Syn tastatur"
-
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr ""
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr ""
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr ""
+#~ msgid "Current display mode"
+#~ msgstr "Gjeldende videomodus:"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Aktiver Roland GS-modus"
diff --git a/po/pl_PL.po b/po/pl_PL.po
index 826846dfcb..7e06867c77 100644
--- a/po/pl_PL.po
+++ b/po/pl_PL.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-05-22 14:26+0100\n"
"Last-Translator: MichaГ ZiБbkowski <mziab@o2.pl>\n"
"Language-Team: Grajpopolsku.pl <grajpopolsku@gmail.com>\n"
@@ -55,15 +55,15 @@ msgid "Go up"
msgstr "W gѓrъ"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Anuluj"
@@ -71,26 +71,26 @@ msgstr "Anuluj"
msgid "Choose"
msgstr "Wybierz"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Zamknij"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Klikniъcie"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "WyЖwietl klawiaturъ"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Dostosuj klawisze"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "WГБcz/wyГБcz peГny ekran"
@@ -102,21 +102,21 @@ msgstr "Wybierz akcjъ do przypisania"
msgid "Map"
msgstr "Przypisz"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -142,15 +142,15 @@ msgstr "Wybierz akcjъ"
msgid "Press the key to associate"
msgstr "WciЖnij klawisz do przypisania"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Gra"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -158,178 +158,178 @@ msgstr ""
"Krѓtki identyfikator gry uПywany do rozpoznawania zapisѓw i uruchamiania gry "
"z linii komend"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nazwa:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "PeГny tytuГ gry:"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nazwa:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Jъzyk:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr "Jъzyk gry. Nie zmieni to hiszpaёskiej wersji gry w angielskБ."
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<domyЖlne>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Platforma:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Platforma, na ktѓrБ stworzono grъ"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Platforma:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Silnik"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafika"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "Grafika"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "UПyj wГasnych ustawieё grafiki"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "UПyj wГasnych ustawieё grafiki"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "DМwiъk"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "UПyj wГasnych ustawieё dМwiъku"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "UПyj wГasnych ustawieё dМwiъku"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "GГoЖnoЖц"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "GГoЖnoЖц"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "UПyj wГasnych ustawieё gГoЖnoЖci"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "UПyj wГasnych ustawieё gГoЖnoЖci"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "UПyj wГasnych ustawieё MIDI"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "UПyj wГasnych ustawieё MIDI"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "UПyj wГasnych ustawieё MT-32"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "UПyj wГasnych ustawieё MT-32"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "ІcieПki"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "ІcieПki"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "ІcieПka gry:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "ІcieПka gry:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Іc. dodatkѓw:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "OkreЖla ЖcieПkъ dodatkowych danych gry"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Іc. dodatkѓw:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "ІcieПka zapisѓw:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "OkreЖla gdzie zapisywaц stan gry"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "ІcieПka zapisѓw:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -338,141 +338,143 @@ msgctxt "path"
msgid "None"
msgstr "Brak"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "DomyЖlnie"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Wybierz SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Wybierz katalog z plikami gry"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Wybierz dodatkowy katalog gry"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Wybierz katalog dla zapisѓw"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Identyfikator jest juП zajъty. Wybierz inny."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~Z~akoёcz"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Zakoёcz ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "I~n~formacje..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "KsiБПka ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~pcje..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Zmieё ustawienia ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~S~tart"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Rozpocznij wybranБ grъ"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~W~czytaj..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Wczytaj zapis wybranej gry"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~D~odaj grъ..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Przytrzymaj Shift, by dodawaц zbiorowo"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~E~dytuj grъ..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Zmieё opcje gry"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~U~suё grъ"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Usuwa grъ z listy. Pliki gry pozostajБ nietkniъte"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~D~odaj grъ..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~E~dytuj grъ..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~U~suё grъ"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Wyszukaj grъ na liЖcie"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Szukaj"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Wczytaj grъ:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Wczytaj"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
msgstr ""
"Chcesz uruchomiц masowy detektor gier? MoПe dodaц wiele tytuГѓw do listy"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -480,7 +482,8 @@ msgstr ""
msgid "Yes"
msgstr "Tak"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -488,39 +491,35 @@ msgstr "Tak"
msgid "No"
msgstr "Nie"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM nie moПe otworzyц katalogu!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM nie znalazГ Пadnej gry w tym katalogu!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Wybierz grъ:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Na pewno chcesz usunБц tъ grъ z konfiguracji?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Chcesz wczytaц bБdМ zapisaц grъ?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Ta gra nie wspiera wczytywania z launchera."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM nie znalazГ silnika zdolnego uruchomiц wybranБ grъ!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Masowe dodawanie..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Masowe dodawanie..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... postъp ..."
@@ -619,8 +618,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Specjalne tryby ditheringu wspierane przez niektѓre gry"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "PeГny ekran"
@@ -752,13 +750,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Prawdziwy Roland MT-32 (brak emulacji GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Roland w trybie GS (wyГБcz mapowanie GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"WyГБcza mapowanie General MIDI dla gier ze ЖcieПkБ dМwiъkowБ Roland MT-32"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -946,15 +946,15 @@ msgstr "Widok listy"
msgid "Grid view"
msgstr "Widok siatki"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Brak daty"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Brak godziny"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Brak czasu gry"
@@ -966,43 +966,43 @@ msgstr "Skasuj"
msgid "Do you really want to delete this savegame?"
msgstr "Na pewno chcesz skasowaц ten zapis?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Data: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Czas: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Czas gry: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Zapis bez nazwy"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Nastъpny"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Poprzedni"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Nowy zapis"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Stwѓrz nowy zapis"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Nazwa: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Podaj opis dla slotu %d:"
@@ -1011,29 +1011,32 @@ msgstr "Podaj opis dla slotu %d:"
msgid "Select a Theme"
msgstr "Wybierz styl"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "WyГБczona grafika"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "WyГБczona grafika"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Standardowy renderer (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standardowy (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Standardowy"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "WygГadzany renderer (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "WygГadzany (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1126,35 +1129,35 @@ msgid ""
msgstr ""
"Na pewno chcesz przywrѓciц domyЖlne wartoЖci wszystkich ustawieё FluidSynth?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Silnik nie wspiera poziomu debugowania '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menu"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Pomiё"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Wstrzymaj"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Pomiё liniъ"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "BГБd podczas uruchamiania gry:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Nie udaГo siъ znaleМц silnika zdolnego do uruchomienia zaznaczonej gry"
@@ -1222,16 +1225,16 @@ msgstr "Przerwane przez uПytkownika"
msgid "Unknown error"
msgstr "Nieznany bГБd"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Gra w '%s' wyglБda na nieznanБ."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr "PrzekaП poniПsze dane zespoГowi ScummVM razem z nazwБ"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "gry, ktѓrБ prѓbowaГeЖ dodaц oraz jej wersjБ, jъzykiem itd.:"
@@ -1269,21 +1272,21 @@ msgid "~R~eturn to Launcher"
msgstr "~P~owrѓt do launchera"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Zapis:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Zapisz"
@@ -1320,23 +1323,23 @@ msgstr "~A~nuluj"
msgid "~K~eys"
msgstr "~K~lawisze"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Nie udaГo siъ zainicjalizowaц formatu kolorѓw."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Nie udaГo siъ przeГБczyц w tryb wideo: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Nie udaГo siъ zastosowaц ustawienia formatu obrazu."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Nie udaГo siъ zastosowaц ustawienia peГnego ekranu."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1348,7 +1351,7 @@ msgstr ""
"znane problemѓw. StБd zalecane jest skopiowanie plikѓw gry na twardy dysk.\n"
"Dalsze informacje sБ dostъpne w pliku README."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1360,7 +1363,7 @@ msgstr ""
"skopiowaц na dysk za pomocБ odpowiedniego rippera CD audio.\n"
"Dalsze informacje sБ dostъpne w pliku README."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1369,7 +1372,7 @@ msgstr ""
"Odczyt stanu gry nie powiѓdГ siъ (%s)! Aby uzyskaц podstawowe informacje "
"oraz dowiedzieц jak szukaц dalszej pomocy, sprawdМ plik README."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1379,33 +1382,758 @@ msgstr ""
"ScummVM. W zwiБzku z tym moПe byц ona niestabilna, a wszelkie zapisy, "
"ktѓrych dokonasz, mogБ byц nieobsГugiwane w przyszГych wersjach ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "WГБcz mimo tego"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Emulator OPL MAME"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Emulator OPL DOSBox"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Nie znaleziono wybranego urzБdzenia audio '%s' (moПe byц wyГБczone albo "
+"niepodГБczone)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Prѓbujъ uПyц nastъpnego dostъpnego urzБdzenia..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Nie moПna uПyц wybranego urzБdzenia audio '%s'. Dalsze szczegѓГy sБ dostъpne "
+"w pliku dziennika."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Nie znaleziono preferowanego urzБdzenia audio '%s' (moПe byц wyГБczone albo "
+"niepodГБczone)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Nie moПna uПyц preferowanego urzБdzenia audio '%s'. Dalsze szczegѓГy sБ "
+"dostъpne w pliku dziennika."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Brak muzyki"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Emulator dМwiъku Amigi"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Emulator AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Emulator Apple II GS (NIE ZAIMPLEMENTOWANY)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Emulator dМwiъku C64"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Inicjalizacja emulatora MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Emulator MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Emulator brzъczyka"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Emulator IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Klawisze:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (DziaГa)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Aktywny)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Zablokowany)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Globalny)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Gra)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~Z~amknij"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "GГѓwne menu ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~T~ryb dla leworъcznych"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~S~terowanie walczБcym Indym"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "WyЖwietl kursor myszy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "PrzyciБganie do krawъdzi"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Przesuniъcie X ekranu do dotykania"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Przesuniъcie Y ekranu do dotykania"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "UПyj kursora w stylu trackpada z laptopa do sterowania"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Puknij raz, aby kliknБц LPM; dwa razy, aby kliknБц PPM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "CzuГoЖц"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Wstъpna skala gѓrnego ekranu:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Skalowanie gГѓwnego ekranu:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Skalowanie sprzъtowe (szybsze, ale niПszej jakoЖci)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Skalowanie programowe (wyПszej jakoЖci, ale wolniejsze)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Nieskalowany (musisz przewijaц w lewo i prawo)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "JasnoЖц:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "DМwiъk wysokiej jakoЖci (wolniejszy) (restart)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Nie wyГБczaj zasilania"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "WГБczono tryb kliknij i przeciБgaj."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "WyГБczono tryb kliknij i przeciБgaj."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Tryb touchpada wГБczony."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Tryb touchpada wyГБczony."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Tryb klikania"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Klikniъcie LPM"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Іrodkowy przycisk"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Klikniъcie PPM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Ukryj ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Ukryj pozostaГe"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "PokaП wszystkie"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Okno"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Miniaturka"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "ZwykГy (bez skalowania)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "ZwykГy (bez skalowania)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "WГБczono korekcjъ formatu obrazu"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "WyГБczono korekcjъ formatu obrazu"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Aktywny filtr graficzny:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Okno"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Otwѓrz"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Do gѓry"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "W dѓГ"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "W lewo"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "W prawo"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Strefa"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Wielozadaniowy"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Zmieё postaц"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Pomiё tekst"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Tryb szybki"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Zakoёcz"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debugger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Menu globalne"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Wirtualna klawiatura"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Mapper klawiszy"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Chcesz wyjЖц?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Wideo"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Obecny tryb wideo:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Podwѓjny atak"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Pionowy underscan:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Poziomy underscan:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "WejЖcie"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "CzuГoЖц pada GC:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "PrzyЖpieszenie pada GC:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Stan:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Nieznany"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Zamontuj DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Odmontuj DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Serwer:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "UdziaГ:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Nazwa uПytkownika:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "HasГo:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Inicjalizacja sieci"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Zamontuj SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Odmontuj SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD zamontowane pomyЖlnie"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "BГБd przy montowaniu DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD nie zamontowane"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Sieц dziaГa, udziaГ zamontowany"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Sieц dziaГa"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", bГБd podczas montowania udziaГu"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", udziaГ nie zostaГ zamontowany"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Sieц nie dziaГa"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Inicjalizacja sieci"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Przekroczono limit czasu inicjalizacji sieci"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Sieц nie zostaГa zainicjalizowana (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Schowaj pasek narzъdzi"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "PokaП klawiaturъ"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "WГБcz/wyГБcz dМwiъk"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Klikniъcie PPM"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "PokaП/ukryj kursor"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Swobodne rozglБdanie siъ"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "PrzybliП"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Oddal"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Przypisz klawisze"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Kursor do gѓry"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Kursor w dѓГ"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Kursor w lewo"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Kursor w prawo"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Chcesz wczytaц bБdМ zapisaц grъ?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Na pewno chcesz wyjЖц? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Klawiatura"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Obrѓt"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "UПyj sterownika SDL "
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Obraz "
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Wykonaц automatyczne skanowanie?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Przypisz dziaГanie PPM"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr "Musisz przypisaц klawisz do 'PPM', by zagraц w tъ grъ"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Przypisz chowanie paska narzъdzi"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr "Musisz przypisaц przycisk 'Schowaj pasek narzъdzi', by zagraц w tъ grъ"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Przypisz PrzybliПanie (opcjonalne)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Przypisz Oddalenie (opcjonalne)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Nie zapomnij przypisaц klawisza 'Ukryj pasek narzъdzi', by widzieц caГy "
+"ekwipunek"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Na pewno chcesz powrѓciц do launchera?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Launcher"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Na pewno chcesz wyjЖц?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Dotkniъcie ekranu - klikniъcie LPM"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Dotkniъcie ekranu - klikniъcie PPM"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Dotkniъcie ekranu - przytrzymanie (brak klikniъcia)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Maksymalna gГoЖnoЖц"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Zwiъkszenie gГoЖnoЖci"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Minimalna gГoЖnoЖц"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Zmniejszenie gГoЖnoЖci"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Dotkniъcie ekranu - przytrzymanie (krzyПak klika)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "SprawdМ aktualizacjъ..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Pojedyncze klikniъcie PPM"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Tylko ruch"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Przycisk wyjЖcia"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Menu gry"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "PokaП klawiaturъ"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Steruj myszkБ"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Klikanie wГБczone"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Klikanie wyГБczone"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "UПyj oryginalnych ekranѓw odczytu/zapisu"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr "UПyj oryginalnych ekranѓw odczytu/zapisu zamiast tych ze ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Wznѓw grъ:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Wznѓw"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Nie udaГo siъ wczytaц stanu gry z pliku:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Nie udaГo siъ zapisaц stanu gry do pliku:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"PomyЖlnie zapisano stan w pliku:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Nie znaleziono pliku przerywnika '%s'!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1430,27 +2158,302 @@ msgstr "UПyj trybu jasnej palety"
msgid "Display graphics using the game's bright palette"
msgstr "WyЖwietlaj grafikъ za pomocБ jasnej palety gry"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Nie udaГo siъ wczytaц stanu gry z pliku."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Nie udaГo siъ zapisaц stanu gry do pliku."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Nie udaГo siъ usunБц pliku."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "PrzyЖpieszone filmy"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Odtwarzaj filmy ze zwiъkszonБ prъdkoЖciБ"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Nie udaГo siъ zapisaц stanu gry"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "PublicznoЖц studyjna"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "WГБcz publicznoЖц studyjnБ"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "ObsГuga pomijania"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Pozwѓl pomijaц tekst i przerywniki"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Tryb helowy"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "WГБcz tryb helowy"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "PГynne przewijanie"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "WГБcz pГynne przewijanie przy chodzeniu"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "PГywajБce kursory"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "WГБcz pГywajБce kursory"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Histogramy HP"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "WГБcz histogramy punktѓw Пycia"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Atak 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Atak 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Atak 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Ruch naprzѓd"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Ruch wstecz"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Іlizg w lewo"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Іlizg w prawo"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Obrѓt w lewo"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Obrѓt w prawo"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Odpoczynek"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Opcje"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Wybierz zaklъcie"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"WyglБda na to, Пe uПywasz urzБdzenia General MIDI, ale gra obsГuguje tylko "
+"MIDI Roland MT32.\n"
+"Prѓbujemy przypisaц instrumenty Rolanda MT32 do instrumentѓw General MIDI. "
+"Niektѓre utwory mogБ byц Мle odtwarzane."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~T~ryb turbo aktywny"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "~P~rzejЖcia wГБczone"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~O~puЖц stronъ"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~P~okaП mapъ"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "~M~enu gГѓwne"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~E~fekty wody wГБczone"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Nie moПna zapisaц w slocie %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Wczytywanie stanu gry..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Zapisywanie stanu gry..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM znalazГ stare zapisy z Nippon Safes, ktѓre naleПy przekonwertowaц.\n"
+"Stary format zapisu nie jest juП obsГugiwany. Nie bъdziesz mѓgГ wczytaц "
+"zapisѓw, jeЖli ich nie przekonwertujesz.\n"
+"\n"
+"NaciЖnij OK, Пeby je teraz przekonwertowaц. W przeciwnym wypadku zostaniesz "
+"zapytany ponownie przy nastъpnym wГБczeniu gry.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM pomyЖlnie przekonwertowaГ wszystkie twoje zapisy."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM wyЖwietliГ ostrzeПenia w oknie konsoli i nie moПe zagwarantowaц, Пe "
+"wszystkie twoje pliki zostaГy przekonwertowane.\n"
+"\n"
+"Prosimy o zgГoszenie tego zespoГowi."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "NieprawidГowa nazwa pliku zapisu"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Gѓra/PrzybliП/Ruch naprzѓd/Otwѓrz drzwi"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "DѓГ/Oddal"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "PokaП/schowaj przedmioty"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "PokaП/schowaj biochipy"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Akcja/Wybѓr"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "WГБcz/wyГБcz widok danych"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "PokaП/schowaj ekran informacji"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "PokaП/schowaj menu pauzy"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "Anty-dithering EGA"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "WГБcz anty-dithering we wspieranych grach EGA"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Preferuj cyfrowe efekty dМwiъkowe"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Preferuj cyfrowe efekty dМwiъkowe zamiast syntezowanych"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "UПyj IMF/Yamaha FB-01 dla wyjЖcia MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1458,29 +2461,29 @@ msgstr ""
"UПyj karty IBM Music Feature lub moduГu syntezy FM Yamaha FB-01 dla wyjЖcia "
"MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "UПyj CD audio"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "UПyj CD audio zamiast muzyki w grze, jeЖli jest dostъpne"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "UПyj windowsowych kursorѓw"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"UПyj windowsowych kursorѓw (mniejsze i monochromatyczne) zamiast DOS-owych"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "UПyj srebrnych kursorѓw"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1521,15 +2524,6 @@ msgstr "Na pewno chcesz wyjЖц? (T/N)T"
msgid "Play"
msgstr "Uruchom"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Zakoёcz"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "WГѓП dysk zapisu"
@@ -1578,11 +2572,6 @@ msgstr "~P~oprzednia"
msgid "~N~ext"
msgstr "~N~astъpna"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~Z~amknij"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Tylko mowa"
@@ -1608,10 +2597,6 @@ msgstr "Wybierz poziom umiejъtnoЖci."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Pomocy szukaj w instrukcji doГБczonej do Loom(TM)."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Standardowy"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Trening"
@@ -2133,7 +3118,7 @@ msgstr "Leц w prawo"
msgid "Fly to lower right"
msgstr "Leц w dѓГ, w prawo"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2142,40 +3127,7 @@ msgstr ""
"Natywne wsparcie MIDI wymaga aktualizacji Rolanda od LucasArts,\n"
"ale brakuje %s. PrzeГБczam na tryb AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Nie udaГo siъ zapisaц stanu gry do pliku:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Nie udaГo siъ wczytaц stanu gry z pliku:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"PomyЖlnie zapisano stan w pliku:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2185,189 +3137,6 @@ msgstr ""
"tego nie obsГuguje. Aby zagraц, uПyj \"Dodaj grъ...\" z menu startowego "
"ScummVM i wybierz podkatalog \"Maniac\" z katalogu gry Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~T~ryb turbo aktywny"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "~P~rzejЖcia wГБczone"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~O~puЖц stronъ"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~P~okaП mapъ"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "~M~enu gГѓwne"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~E~fekty wody wГБczone"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Nie znaleziono pliku przerywnika '%s'!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Nie udaГo siъ wczytaц stanu gry z pliku."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Nie udaГo siъ zapisaц stanu gry do pliku."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Nie udaГo siъ usunБц pliku."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "PrzyЖpieszone filmy"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Odtwarzaj filmy ze zwiъkszonБ prъdkoЖciБ"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Nie udaГo siъ zapisaц stanu gry"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "PublicznoЖц studyjna"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "WГБcz publicznoЖц studyjnБ"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "ObsГuga pomijania"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Pozwѓl pomijaц tekst i przerywniki"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Tryb helowy"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "WГБcz tryb helowy"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "PГynne przewijanie"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "WГБcz pГynne przewijanie przy chodzeniu"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "PГywajБce kursory"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "WГБcz pГywajБce kursory"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Histogramy HP"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "WГБcz histogramy punktѓw Пycia"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Atak 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Atak 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Atak 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Ruch naprzѓd"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Ruch wstecz"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Іlizg w lewo"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Іlizg w prawo"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Obrѓt w lewo"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Obrѓt w prawo"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Odpoczynek"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Opcje"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Wybierz zaklъcie"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"WyglБda na to, Пe uПywasz urzБdzenia General MIDI, ale gra obsГuguje tylko "
-"MIDI Roland MT32.\n"
-"Prѓbujemy przypisaц instrumenty Rolanda MT32 do instrumentѓw General MIDI. "
-"Niektѓre utwory mogБ byц Мle odtwarzane."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Alternatywne intro"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "UПyj alternatywnego intra (tylko dla wersji CD)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2392,24 +3161,27 @@ msgstr "Intro z wersji dyskietkowej"
msgid "Use the floppy version's intro (CD version only)"
msgstr "UПyj intra z wersji dyskietkowej (tylko dla wersji CD)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr ""
"Przerywnik w formacie strumieniowym PSX '%s' nie moПe zostaц odtworzony w "
"trybie indeksowanym"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"Znaleziono przerywniki w formacie DXA, ale ScummVM jest skompilowany bez "
"obsГugi zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Przerywniki w formacie MPEG2 nie sБ juП obsГugiwane"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"Znaleziono przerywniki PSX, ale ScummVM jest skompilowany bez obsГugi trybu "
+"RGB"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Nie znaleziono przerywnika '%s'"
@@ -2453,13 +3225,21 @@ msgstr "Zachowaj nowy"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "To koniec dema Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"Znaleziono przerywniki PSX, ale ScummVM jest skompilowany bez obsГugi trybu "
"RGB"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"Znaleziono przerywniki w formacie DXA, ale ScummVM jest skompilowany bez "
+"obsГugi zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "PokaП etykiety obiektѓw"
@@ -2481,787 +3261,50 @@ msgstr ""
"Plik teenagent.dat jest skompresowany, a ScummVM nie zawiera obsГugi zlib. "
"Rozpakuj plik."
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Nie moПna zapisaц w slocie %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Wczytywanie stanu gry..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Zapisywanie stanu gry..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM znalazГ stare zapisy z Nippon Safes, ktѓre naleПy przekonwertowaц.\n"
-"Stary format zapisu nie jest juП obsГugiwany. Nie bъdziesz mѓgГ wczytaц "
-"zapisѓw, jeЖli ich nie przekonwertujesz.\n"
-"\n"
-"NaciЖnij OK, Пeby je teraz przekonwertowaц. W przeciwnym wypadku zostaniesz "
-"zapytany ponownie przy nastъpnym wГБczeniu gry.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM pomyЖlnie przekonwertowaГ wszystkie twoje zapisy."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM wyЖwietliГ ostrzeПenia w oknie konsoli i nie moПe zagwarantowaц, Пe "
-"wszystkie twoje pliki zostaГy przekonwertowane.\n"
-"\n"
-"Prosimy o zgГoszenie tego zespoГowi."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "NieprawidГowa nazwa pliku zapisu"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Gѓra/PrzybliП/Ruch naprzѓd/Otwѓrz drzwi"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "DѓГ/Oddal"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "PokaП/schowaj przedmioty"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "PokaП/schowaj biochipy"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Akcja/Wybѓr"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "WГБcz/wyГБcz widok danych"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "PokaП/schowaj ekran informacji"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "PokaП/schowaj menu pauzy"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Emulator OPL MAME"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Emulator OPL DOSBox"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Nie znaleziono wybranego urzБdzenia audio '%s' (moПe byц wyГБczone albo "
-"niepodГБczone)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Prѓbujъ uПyц nastъpnego dostъpnego urzБdzenia..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Nie moПna uПyц wybranego urzБdzenia audio '%s'. Dalsze szczegѓГy sБ dostъpne "
-"w pliku dziennika."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Nie znaleziono preferowanego urzБdzenia audio '%s' (moПe byц wyГБczone albo "
-"niepodГБczone)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Nie moПna uПyц preferowanego urzБdzenia audio '%s'. Dalsze szczegѓГy sБ "
-"dostъpne w pliku dziennika."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Brak muzyki"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Emulator dМwiъku Amigi"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Emulator AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Emulator Apple II GS (NIE ZAIMPLEMENTOWANY)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Emulator dМwiъku C64"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Inicjalizacja emulatora MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Emulator MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Emulator brzъczyka"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Emulator IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Klawisze:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (DziaГa)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Aktywny)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Zablokowany)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Globalny)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Gra)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "GГѓwne menu ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~T~ryb dla leworъcznych"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~S~terowanie walczБcym Indym"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "WyЖwietl kursor myszy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "PrzyciБganie do krawъdzi"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Przesuniъcie X ekranu do dotykania"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Przesuniъcie Y ekranu do dotykania"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "UПyj kursora w stylu trackpada z laptopa do sterowania"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Puknij raz, aby kliknБц LPM; dwa razy, aby kliknБц PPM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "CzuГoЖц"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Wstъpna skala gѓrnego ekranu:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Skalowanie gГѓwnego ekranu:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Skalowanie sprzъtowe (szybsze, ale niПszej jakoЖci)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Skalowanie programowe (wyПszej jakoЖci, ale wolniejsze)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Nieskalowany (musisz przewijaц w lewo i prawo)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "JasnoЖц:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "DМwiъk wysokiej jakoЖci (wolniejszy) (restart)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Nie wyГБczaj zasilania"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "WГБczono tryb kliknij i przeciБgaj."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "WyГБczono tryb kliknij i przeciБgaj."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Tryb touchpada wГБczony."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Tryb touchpada wyГБczony."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Tryb klikania"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Klikniъcie LPM"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Іrodkowy przycisk"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Klikniъcie PPM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Ukryj ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Ukryj pozostaГe"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "PokaП wszystkie"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Okno"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Miniaturka"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "ZwykГy (bez skalowania)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "ZwykГy (bez skalowania)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "WГБczono korekcjъ formatu obrazu"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "WyГБczono korekcjъ formatu obrazu"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Aktywny filtr graficzny:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Okno"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL (normalny)"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL (zachowanie proporcji)"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL (oryginalny rozmiar)"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Obecny tryb wideo"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Aktualne powiъkszenie"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Aktywny tryb filtru: dwuliniowy"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Aktywny tryb filtru: najbliПszy sБsiad"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Do gѓry"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "W dѓГ"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "W lewo"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "W prawo"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Strefa"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Wielozadaniowy"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Zmieё postaц"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Pomiё tekst"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Tryb szybki"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debugger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Menu globalne"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Wirtualna klawiatura"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Mapper klawiszy"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Chcesz wyjЖц?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Wideo"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Obecny tryb wideo:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Podwѓjny atak"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Pionowy underscan:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Poziomy underscan:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "WejЖcie"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "CzuГoЖц pada GC:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "PrzyЖpieszenie pada GC:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Stan:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Nieznany"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Zamontuj DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Odmontuj DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Serwer:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "UdziaГ:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Nazwa uПytkownika:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "HasГo:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Inicjalizacja sieci"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Zamontuj SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Odmontuj SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD zamontowane pomyЖlnie"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "BГБd przy montowaniu DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD nie zamontowane"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Sieц dziaГa, udziaГ zamontowany"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Sieц dziaГa"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", bГБd podczas montowania udziaГu"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", udziaГ nie zostaГ zamontowany"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Sieц nie dziaГa"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Inicjalizacja sieci"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Przekroczono limit czasu inicjalizacji sieci"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Sieц nie zostaГa zainicjalizowana (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Schowaj pasek narzъdzi"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "PokaП klawiaturъ"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "WГБcz/wyГБcz dМwiъk"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Klikniъcie PPM"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "PokaП/ukryj kursor"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Swobodne rozglБdanie siъ"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "PrzybliП"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Oddal"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Przypisz klawisze"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Kursor do gѓry"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Kursor w dѓГ"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Kursor w lewo"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Kursor w prawo"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Chcesz wczytaц bБdМ zapisaц grъ?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Na pewno chcesz wyjЖц? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Klawiatura"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Obrѓt"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "UПyj sterownika SDL "
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Obraz "
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Wykonaц automatyczne skanowanie?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Przypisz dziaГanie PPM"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr "Musisz przypisaц klawisz do 'PPM', by zagraц w tъ grъ"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Przypisz chowanie paska narzъdzi"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr "Musisz przypisaц przycisk 'Schowaj pasek narzъdzi', by zagraц w tъ grъ"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Przypisz PrzybliПanie (opcjonalne)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Przypisz Oddalenie (opcjonalne)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Nie zapomnij przypisaц klawisza 'Ukryj pasek narzъdzi', by widzieц caГy "
-"ekwipunek"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Na pewno chcesz powrѓciц do launchera?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Launcher"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Masowe dodawanie..."
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Na pewno chcesz wyjЖц?"
+#~ msgid "Mass Add..."
+#~ msgstr "Masowe dodawanie..."
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Dotkniъcie ekranu - klikniъcie LPM"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "WyГБcza mapowanie General MIDI dla gier ze ЖcieПkБ dМwiъkowБ Roland MT-32"
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Dotkniъcie ekranu - klikniъcie PPM"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standardowy (16bpp)"
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Dotkniъcie ekranu - przytrzymanie (brak klikniъcia)"
+#~ msgid "Alternative intro"
+#~ msgstr "Alternatywne intro"
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Maksymalna gГoЖnoЖц"
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "UПyj alternatywnego intra (tylko dla wersji CD)"
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Zwiъkszenie gГoЖnoЖci"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Przerywniki w formacie MPEG2 nie sБ juП obsГugiwane"
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Minimalna gГoЖnoЖц"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL (normalny)"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Zmniejszenie gГoЖnoЖci"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL (zachowanie proporcji)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Dotkniъcie ekranu - przytrzymanie (krzyПak klika)"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL (oryginalny rozmiar)"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "SprawdМ aktualizacjъ..."
+#~ msgid "Current display mode"
+#~ msgstr "Obecny tryb wideo"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Pojedyncze klikniъcie PPM"
+#~ msgid "Current scale"
+#~ msgstr "Aktualne powiъkszenie"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Tylko ruch"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Aktywny tryb filtru: dwuliniowy"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Przycisk wyjЖcia"
-
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Menu gry"
-
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "PokaП klawiaturъ"
-
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Steruj myszkБ"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Klikanie wГБczone"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Klikanie wyГБczone"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Aktywny tryb filtru: najbliПszy sБsiad"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "WГБcz tryb Roland GS"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 595f36d56c..572564cb79 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2011-10-21 21:30-0300\n"
"Last-Translator: Saulo Benigno <saulobenigno@gmail.com>\n"
"Language-Team: ScummBR (www.scummbr.com) <scummbr@yahoo.com.br>\n"
@@ -56,15 +56,15 @@ msgid "Go up"
msgstr "Acima"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Cancelar"
@@ -72,26 +72,26 @@ msgstr "Cancelar"
msgid "Choose"
msgstr "Escolher"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Fechar"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Clique do mouse"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Mostrar teclado"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Remapear teclas"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
#, fuzzy
msgid "Toggle FullScreen"
msgstr "Habilita Tela Cheia"
@@ -104,21 +104,21 @@ msgstr "Selecione uma aчуo para mapear"
msgid "Map"
msgstr "Mapear"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -144,15 +144,15 @@ msgstr "Por favor selecione uma aчуo"
msgid "Press the key to associate"
msgstr "Pressione a tecla para associar"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Jogo"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "Cѓdigo:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -160,179 +160,179 @@ msgstr ""
"Cѓdigo identificador usado para se referir a jogos salvos e execuчуo do jogo "
"a partir da linha de comando"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "Cѓdigo:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Nome:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Tэtulo completo do jogo"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Nome:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Idioma:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr "Idioma do jogo. Isto nуo irс passar seu jogo Inglъs para Portuguъs"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<padrуo>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Sistema:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Sistema que o jogo foi desenvolvido originalmente"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Sistema:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
#, fuzzy
msgid "Engine"
msgstr "Examinar"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grсficos"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Sobrepor configuraчуo global de grсficos"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Sobrepor configuraчуo global de grсficos"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Сudio"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Sobrepor configuraчуo global de сudio"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Sobrepor configuraчуo global de сudio"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volume"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volume"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Sobrepor configuraчуo global de volume"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Sobrepor configuraчуo global de volume"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Sobrepor configuraчуo global de MIDI"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Sobrepor configuraчуo global de MIDI"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Sobrepor configuraчуo global de MT-32"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Sobrepor configuraчуo global de MT-32"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Pastas"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Pastas"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Pasta do Jogo:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Pasta do Jogo:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Pasta de Extras"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Especifique a pasta para dados utilizados no jogo"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Pasta de Extras"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Pasta para Salvar"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Especifique onde guardar seus jogos salvos"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Pasta para Salvar"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -341,135 +341,136 @@ msgctxt "path"
msgid "None"
msgstr "Nenhum(a)"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Padrуo"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Selecione o SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Selecione a pasta com os arquivos do jogo"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Selecione a pasta adicional do jogo"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Selecione a pasta para os jogos salvos"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Este cѓdigo jс esta sendo utilizado. Por favor, escolha outro."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~S~air"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Sair do ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "So~b~re..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Sobre o ScumnmVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~O~pчѕes"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Alterar opчѕes globais do ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~I~niciar"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Iniciar jogo selecionado"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~C~arregar"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Carregar jogo salvo do jogo selecionado"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~A~dicionar Jogo..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Segure Shift para Multi-Adiчуo"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "~E~ditar Jogo..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Alterar opчѕes do jogo"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~R~emover Jogo"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr ""
"Remover jogo da lista. Os arquivos de dados do jogo permanecem intactos"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~A~dicionar Jogo..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "~E~ditar Jogo..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~R~emover Jogo"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Pesquisar na lista de jogos"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Pesquisar:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Carregar jogo:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Carregar"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -477,7 +478,8 @@ msgstr ""
"Vocъ realmente deseja adicionar vсrios jogos ao mesmo tempo? Isso poderс "
"resultar em uma adiчуo gigantesca de jogos."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -485,7 +487,8 @@ msgstr ""
msgid "Yes"
msgstr "Sim"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -493,41 +496,37 @@ msgstr "Sim"
msgid "No"
msgstr "Nуo"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM nуo conseguiu abrir a pasta especificada!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM nуo encontrou nenhum jogo na pasta especificada!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Escolha o jogo:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Vocъ deseja realmente remover a configuraчуo deste jogo?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Vocъ deseja carregar ou salvar o jogo?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Este jogo nуo suporta abrir jogos a partir do menu principal."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM nуo conseguiu encontrar qualquer programa capaz de rodar o jogo "
"selecionado!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Multi-Adiчуo..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Multi-Adiчуo..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... progresso ..."
@@ -630,8 +629,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Modos especiais de dithering suportados por alguns jogos"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Modo Tela Cheia"
@@ -763,13 +761,14 @@ msgstr "Roland MT-32 real (sem emulaчуo GM)"
#: gui/options.cpp:890
#, fuzzy
-msgid "Roland GS Mode (disable GM mapping)"
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Roland MT-32 real (desligar emulaчуo GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Desliga o mapeamento General MIDI para jogos com trilha sonora Roland MT-32"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -959,15 +958,15 @@ msgstr ""
msgid "Grid view"
msgstr ""
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Sem data salva"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Sem hora salva"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Sem tempo de jogo salvo"
@@ -979,46 +978,46 @@ msgstr "Excluir"
msgid "Do you really want to delete this savegame?"
msgstr "Vocъ realmente quer excluir este jogo salvo?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Data:"
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Hora:"
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Tempo de jogo:"
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Nуo-titulado arquivo de save"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr ""
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr ""
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
#, fuzzy
msgid "New Save"
msgstr "Salvar"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
#, fuzzy
msgid "Create a new save game"
msgstr "Falha ao salvar o jogo"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
#, fuzzy
msgid "Name: "
msgstr "Nome:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr ""
@@ -1027,29 +1026,33 @@ msgstr ""
msgid "Select a Theme"
msgstr "Selecione um Tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "GFX desabilitado"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "GFX desabilitado"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Renderizador padrуo (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+#, fuzzy
+msgid "Standard"
msgstr "Padrуo (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Renderizador Anti-Serrilhamento (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Anti-Serrilhamento (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1145,35 +1148,35 @@ msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
msgstr "Vocъ realmente deseja voltar para o menu principal?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Esse programa nуo suporta o nэvel de debug '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Menu"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Pular"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Pausar"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Pula linha"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Erro ao executar o jogo:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr ""
"Nуo foi possэvel encontrar qualquer programa capaz de rodar o jogo "
@@ -1243,17 +1246,17 @@ msgstr "Usuсrio cancelou"
msgid "Unknown error"
msgstr "Erro desconhecido"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "O jogo em '% s' parece ser desconhecido."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Por favor, informe os seguintes dados para a equipe ScummVM junto com o nome"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "do jogo que vocъ tentou adicionar e sua versуo/idioma/etc.:"
@@ -1291,21 +1294,21 @@ msgid "~R~eturn to Launcher"
msgstr "~V~oltar ao menu"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Salvar jogo:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Salvar"
@@ -1343,23 +1346,23 @@ msgstr "~C~ancelar"
msgid "~K~eys"
msgstr "~T~eclas"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Nуo foi possэvel inicializar o formato de cor."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Nуo foi possэvel alternar o modo de vэdeo atual:"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Nуo foi possэvel aplicar a correчуo de proporчуo"
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Nуo foi possэvel aplicar a configuraчуo de tela cheia."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1373,7 +1376,7 @@ msgstr ""
"os arquivos de dados para o disco rэgido.\n"
"Consulte o arquivo README para mais detalhes."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1387,7 +1390,7 @@ msgstr ""
"para ouvir a mњsica do jogo.\n"
"Consulte o arquivo README para mais detalhes."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, fuzzy, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1397,7 +1400,7 @@ msgstr ""
"Por favor, consulte o README para obter informaчѕes bсsicas, e para obter "
"instruчѕes sobre como obter assistъncia adicional."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1407,33 +1410,764 @@ msgstr ""
"suportado pelo ScummVM. Como tal, щ provсvel que seja instсvel, e qualquer "
"jogo salvo que vocъ fizer pode nуo funcionar em futuras versѕes do ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Iniciar de qualquer maneira"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Emulador MAME OPL"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Emulador DOSBox OPL"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"O dispositivo de сudio selecionado '%s' nуo foi encontrado (ex: pode estar "
+"desligado ou desconectado)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Tentando retornar para o prѓximo dispositivo disponэvel..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"O dispositivo de сudio selecionado '%s' nуo pode ser usado. Veja o arquivo "
+"de log para mais informaчѕes."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"O dispositivo de сudio preferido '%s' nуo foi encontrado (ex: pode estar "
+"desligado ou desconectado)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"O dispositivo de сudio preferido '%s' nуo pode ser usado. Veja o arquivo de "
+"log para mais informaчѕes."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Sem mњsica"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Emulador Som Amiga"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Emulador AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Emulador Apple II GS (NУO IMPLEMENTADO)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Emulador Som C64"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Inicializando Emulador MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Emulador MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Emulador PC Speaker"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Emulador IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Mapa de Teclas:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+#, fuzzy
+msgid " (Effective)"
+msgstr "(Ativo)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr "(Ativo)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr ""
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr "(Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr "(Jogo)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "MIDI Windows"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~F~echar"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Menu Principal ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Modo ~M~уo esquerda"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Controles de luta ~I~ndy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Mostrar o cursor do mouse"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Ajustar рs extremidades"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Equivalъncia do Toque X"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Equivalъncia do Toque Y"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Usar controle de curso do touchpad"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Um toque para o clique esquerdo, e toque duplo para o clique direito"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Sensibilidade"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Topo inicial para a escala de tela:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Escala de tela principal:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Escala pelo Hardware (rсpido, mas com baixa qualidade)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Escala pelo Software (qualidade boa, mas com lentidуo)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Sem escala (vocъ precisa rolar para a esquerda e para a direita)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Brilho:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Som de alta qualidade (mais lento) (reiniciar)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Desativar desligamento"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Modo clique-e-arraste do mouse ligado."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Modo clique-e-arraste do mouse desligado."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Modo Touchpad ligado."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Modo Touchpad desligado."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr ""
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Clique com o botуo esquerdo"
+
+#: backends/platform/maemo/maemo.cpp:218
+#, fuzzy
+msgid "Middle Click"
+msgstr "Item do meio na esquerda"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Clique com o botуo direito"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Ocultar ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Ocultar Outros"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Mostrar Tudo"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Janela"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimizar"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normal (sem escala)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normal (sem escala)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Correчуo de proporчуo habilitada"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Correчуo de proporчуo desabilitada"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Ativa os filtros grсficos"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Modo janela"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Abrir"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Cima"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Baixo"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Esquerda"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Direita"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zona"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multi-funчуo"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Trocador de caracteres"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Pular texto"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Modo rсpido"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Sair"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Depurador"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Menu global"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Teclado virtual"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Mapeador de Teclas"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Vocъ deseja sair ?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Vэdeo"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Modo de vэdeo atual:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Ataque-duplo"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Sub-escaneamento horizontal:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Sub-escaneamento vertical:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Entrada"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Sensibilidade do CG Pad:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Aceleraчуo do CG Pad:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Status:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Desconhecido"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Montar DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Desmontar DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Servidor:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Compartilhamento:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Nome de usuсrio:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Senha:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Iniciar rede"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Montar SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Desmontar SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD montado com sucesso"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Erro ao montar o DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD nуo montado"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Conexуo ativa, compartilhamento ativado"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Conexуo ativa"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", erro ao montar o compartilhamento"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", compartilhamento nуo montado"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Conexуo caiu"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Inicializaчуo de rede"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Tempo limite para iniciar a conexуo de rede"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Rede nуo inicializada (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Ocultar a barra de ferramentas"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Mostrar Teclado"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Som on/off"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Clique com o botуo direito"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Mostrar/Ocultar seu cursor"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Olhar livre"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Zoom para cima"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Zoom para baixo"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Botуo de ligadura"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Cursor para cima"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Cursor para baixo"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Cursor para a esquerda"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Cursor para a direita"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Vocъ deseja carregar ou salvar o jogo?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Tem certeza de que deseja sair? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Teclado"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Rotacionar"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Usando driver SDL"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Tela"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Vocъ quer executar uma busca automсtica?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Mapear aчуo \"Clique da Direita\""
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Vocъ precisa mapear uma tecla para aчуo do \"Clique da Direita\" nesse jogo"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Mapear \"Ocultar barra de ferramentas\""
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Vocъ precisa mapear uma tecla para aчуo do \"Ocultar barra de ferramentas\" "
+"nesse jogo"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Mapear Zoom para Cima (opcional)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Mapear Zoom para Baixo (opcional)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Nуo se esqueчa de mapear uma tecla para \"Ocultar a barra de ferramentas\" "
+"para ver todo o seu inventсrio"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Vocъ realmente deseja voltar para o menu principal?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Menu principal"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Vocъ realmente deseja sair?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Touchscreen 'Modo Toque' - Clique Esquerdo"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Touchscreen 'Modo Toque' - Clique Direito"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Touchscreen 'Modo Toque' - Acima (Sem Clicar)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Volume mсximo"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Aumentando Volume"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Volume mэnimo"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Diminuindo Volume"
+
+#: backends/events/openpandora/op-events.cpp:174
+#, fuzzy
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Touchscreen 'Modo Toque' - Acima (Sem Clicar)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Procurar por Atualizaчѕes..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Clique com o botуo direito apenas uma vez"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Apenas mover"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Tecla Escape"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Menu do jogo"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Mostrar teclado"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Controle do Mouse"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Clicando Habilitado"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Clicando Desabilitado"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr ""
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Restaurar jogo:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Restaurar"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Falha ao carregar o estado do jogo a partir do arquivo:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Falha ao salvar o estado do jogo para o arquivo:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Jogo salvo com sucesso no arquivo:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Arquivo de vэdeo '%s' nуo encontrado!"
+
+#: engines/drascula/saveload.cpp:47
#, fuzzy
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
@@ -1461,57 +2195,351 @@ msgstr "Item da direita superior"
msgid "Display graphics using the game's bright palette"
msgstr ""
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr ""
+"Falha ao carregar o estado do jogo a partir do arquivo:\n"
+"\n"
+"%s"
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr ""
+"Falha ao salvar o estado do jogo para o arquivo:\n"
+"\n"
+"%s"
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Falha ao excluir arquivo."
+
+#: engines/groovie/detection.cpp:312
+#, fuzzy
+msgid "Fast movie speed"
+msgstr "Modo rсpido"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr ""
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Falha ao salvar o jogo"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr ""
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr ""
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr ""
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr ""
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr ""
+
+#: engines/kyra/detection.cpp:85
+#, fuzzy
+msgid "Enable helium mode"
+msgstr "Ligar modo Roland GS"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr ""
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr ""
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+#, fuzzy
+msgid "Floating cursors"
+msgstr "Cursor normal"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr ""
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr ""
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr ""
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr ""
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr ""
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr ""
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr ""
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr ""
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr ""
+
+#: engines/kyra/lol.cpp:484
+#, fuzzy
+msgid "Slide Right"
+msgstr "Direita"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+#, fuzzy
+msgid "Turn Left"
+msgstr "Desligar"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+#, fuzzy
+msgid "Turn Right"
+msgstr "Cursor para a direita"
+
+#: engines/kyra/lol.cpp:487
+#, fuzzy
+msgid "Rest"
+msgstr "Restaurar"
+
+#: engines/kyra/lol.cpp:488
+#, fuzzy
+msgid "Options"
+msgstr "~O~pчѕes"
+
+#: engines/kyra/lol.cpp:489
+#, fuzzy
+msgid "Choose Spell"
+msgstr "Escolher"
+
+#: engines/kyra/sound_midi.cpp:477
+#, fuzzy
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Vocъ parece estar usando um dispositivo General MIDI,\n"
+"mas, o jogo sѓ suporta Roland MT32 MIDI.\n"
+"Tentamos mapear os instrumentos Roland MT32 para\n"
+"o modelo General MIDI. Talvez possa acontecer\n"
+"que algumas faixas nуo sejam corretamente tocadas."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Modo ~Z~ip ativado"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "Modo ~T~ransiчѕes ativado"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "~S~oltar Pсgina"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~E~xibir Mapa"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "~M~enu Principal ScummVM"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "Modo ~E~feitos de сgua ativado"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Nуo щ possэvel salvar o jogo na posiчуo %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Carregando jogo..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Salvando jogo..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM encontrou que vocъ tem jogos salvos antigos do Nippon Safes que "
+"devem ser renomeados.\n"
+"Os nomes antigos nуo sуo mais suportados, assim vocъ nуo serс capaz de "
+"carregar os seus jogos se vocъ nуo convertъ-los.\n"
+"\n"
+"Pressione OK para convertъ-los agora, caso contrсrio vocъ serс solicitado na "
+"prѓxima vez.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM converteu com ъxito todos os seus jogos salvos."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM exibiu alguns avisos na sua janela do console e nуo pode garantir "
+"todos os seus arquivos foram convertidos.\n"
+"\n"
+"Por favor, reporte para a equipe."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2474
+#, fuzzy
+msgid "Down/Zoom Out"
+msgstr "Zoom para cima"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr ""
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr ""
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA sem dithering"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
#, fuzzy
msgid "Enable undithering in EGA games"
msgstr "Habilita EGA sem dithering em jogos com suporte"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
#, fuzzy
msgid "Prefer digital sound effects"
msgstr "Volume dos efeitos sonoros especiais"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr ""
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr ""
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
msgstr ""
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr ""
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr ""
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr ""
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
#, fuzzy
msgid "Use silver cursors"
msgstr "Cursor normal"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1551,15 +2579,6 @@ msgstr "Tem certeza de que deseja sair? (S/N)S"
msgid "Play"
msgstr "Jogar"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Sair"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Insira o disco para salvar/carregar o jogo"
@@ -1608,11 +2627,6 @@ msgstr "~A~nterior"
msgid "~N~ext"
msgstr "~P~rѓximo"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~F~echar"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Somente Voz"
@@ -1638,11 +2652,6 @@ msgstr ""
msgid "Refer to your Loom(TM) manual for help."
msgstr ""
-#: engines/scumm/dialogs.cpp:658
-#, fuzzy
-msgid "Standard"
-msgstr "Padrуo (16bpp)"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr ""
@@ -2164,7 +3173,7 @@ msgstr "Voar para direita"
msgid "Fly to lower right"
msgstr "Voar para direita inferior"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2174,40 +3183,7 @@ msgstr ""
"LucasArts,\n"
"mas %s estс faltando. Utilizando AdLib ao invщs."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Falha ao salvar o estado do jogo para o arquivo:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Falha ao carregar o estado do jogo a partir do arquivo:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Jogo salvo com sucesso no arquivo:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2218,206 +3194,6 @@ msgstr ""
"adicione o jogo normalmente no ScummVM. Ele se encontra em um diretѓrio "
"dentro da pasta do jogo Day of the Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Modo ~Z~ip ativado"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "Modo ~T~ransiчѕes ativado"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "~S~oltar Pсgina"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~E~xibir Mapa"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "~M~enu Principal ScummVM"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "Modo ~E~feitos de сgua ativado"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Arquivo de vэdeo '%s' nуo encontrado!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr ""
-"Falha ao carregar o estado do jogo a partir do arquivo:\n"
-"\n"
-"%s"
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr ""
-"Falha ao salvar o estado do jogo para o arquivo:\n"
-"\n"
-"%s"
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Falha ao excluir arquivo."
-
-#: engines/groovie/detection.cpp:312
-#, fuzzy
-msgid "Fast movie speed"
-msgstr "Modo rсpido"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr ""
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Falha ao salvar o jogo"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr ""
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr ""
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr ""
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr ""
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr ""
-
-#: engines/kyra/detection.cpp:85
-#, fuzzy
-msgid "Enable helium mode"
-msgstr "Ligar modo Roland GS"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr ""
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr ""
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-#, fuzzy
-msgid "Floating cursors"
-msgstr "Cursor normal"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr ""
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr ""
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr ""
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr ""
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr ""
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr ""
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr ""
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr ""
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr ""
-
-#: engines/kyra/lol.cpp:484
-#, fuzzy
-msgid "Slide Right"
-msgstr "Direita"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-#, fuzzy
-msgid "Turn Left"
-msgstr "Desligar"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-#, fuzzy
-msgid "Turn Right"
-msgstr "Cursor para a direita"
-
-#: engines/kyra/lol.cpp:487
-#, fuzzy
-msgid "Rest"
-msgstr "Restaurar"
-
-#: engines/kyra/lol.cpp:488
-#, fuzzy
-msgid "Options"
-msgstr "~O~pчѕes"
-
-#: engines/kyra/lol.cpp:489
-#, fuzzy
-msgid "Choose Spell"
-msgstr "Escolher"
-
-#: engines/kyra/sound_midi.cpp:477
-#, fuzzy
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Vocъ parece estar usando um dispositivo General MIDI,\n"
-"mas, o jogo sѓ suporta Roland MT32 MIDI.\n"
-"Tentamos mapear os instrumentos Roland MT32 para\n"
-"o modelo General MIDI. Talvez possa acontecer\n"
-"que algumas faixas nуo sejam corretamente tocadas."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr ""
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr ""
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2442,22 +3218,25 @@ msgstr ""
msgid "Use the floppy version's intro (CD version only)"
msgstr ""
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr ""
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"Vэdeos no formato DXA foram encontrados, mas o ScummVM foi compilado sem "
"suporte a zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Vэdeos em MPEG2 nуo sуo mais suportados"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"Vэdeos no formato DXA foram encontrados, mas o ScummVM foi compilado sem "
+"suporte a zlib"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Vэdeo '%s' nуo encontrado"
@@ -2501,7 +3280,7 @@ msgstr "Mantenha o novo"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Este щ o fim do demo de Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
#, fuzzy
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
@@ -2509,6 +3288,14 @@ msgstr ""
"Vэdeos no formato DXA foram encontrados, mas o ScummVM foi compilado sem "
"suporte a zlib"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"Vэdeos no formato DXA foram encontrados, mas o ScummVM foi compilado sem "
+"suporte a zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr ""
@@ -2528,795 +3315,45 @@ msgid ""
"executable. Please decompress it"
msgstr ""
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Nуo щ possэvel salvar o jogo na posiчуo %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Carregando jogo..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Salvando jogo..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM encontrou que vocъ tem jogos salvos antigos do Nippon Safes que "
-"devem ser renomeados.\n"
-"Os nomes antigos nуo sуo mais suportados, assim vocъ nуo serс capaz de "
-"carregar os seus jogos se vocъ nуo convertъ-los.\n"
-"\n"
-"Pressione OK para convertъ-los agora, caso contrсrio vocъ serс solicitado na "
-"prѓxima vez.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM converteu com ъxito todos os seus jogos salvos."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM exibiu alguns avisos na sua janela do console e nуo pode garantir "
-"todos os seus arquivos foram convertidos.\n"
-"\n"
-"Por favor, reporte para a equipe."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2446
-#, fuzzy
-msgid "Down/Zoom Out"
-msgstr "Zoom para cima"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr ""
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr ""
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Emulador MAME OPL"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Emulador DOSBox OPL"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"O dispositivo de сudio selecionado '%s' nуo foi encontrado (ex: pode estar "
-"desligado ou desconectado)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Tentando retornar para o prѓximo dispositivo disponэvel..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"O dispositivo de сudio selecionado '%s' nуo pode ser usado. Veja o arquivo "
-"de log para mais informaчѕes."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"O dispositivo de сudio preferido '%s' nуo foi encontrado (ex: pode estar "
-"desligado ou desconectado)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"O dispositivo de сudio preferido '%s' nуo pode ser usado. Veja o arquivo de "
-"log para mais informaчѕes."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Sem mњsica"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Emulador Som Amiga"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Emulador AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Emulador Apple II GS (NУO IMPLEMENTADO)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Emulador Som C64"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Inicializando Emulador MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Emulador MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Emulador PC Speaker"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Emulador IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Mapa de Teclas:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-#, fuzzy
-msgid " (Effective)"
-msgstr "(Ativo)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr "(Ativo)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr ""
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr "(Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr "(Jogo)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "MIDI Windows"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Menu Principal ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Modo ~M~уo esquerda"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Controles de luta ~I~ndy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Mostrar o cursor do mouse"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Ajustar рs extremidades"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Equivalъncia do Toque X"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Equivalъncia do Toque Y"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Usar controle de curso do touchpad"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Um toque para o clique esquerdo, e toque duplo para o clique direito"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Sensibilidade"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Topo inicial para a escala de tela:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Escala de tela principal:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Escala pelo Hardware (rсpido, mas com baixa qualidade)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Escala pelo Software (qualidade boa, mas com lentidуo)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Sem escala (vocъ precisa rolar para a esquerda e para a direita)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Brilho:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Som de alta qualidade (mais lento) (reiniciar)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Desativar desligamento"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Modo clique-e-arraste do mouse ligado."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Modo clique-e-arraste do mouse desligado."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Modo Touchpad ligado."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Modo Touchpad desligado."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr ""
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Clique com o botуo esquerdo"
-
-#: backends/platform/maemo/maemo.cpp:218
-#, fuzzy
-msgid "Middle Click"
-msgstr "Item do meio na esquerda"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Clique com o botуo direito"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Ocultar ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Ocultar Outros"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Mostrar Tudo"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Janela"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimizar"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normal (sem escala)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normal (sem escala)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Correчуo de proporчуo habilitada"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Correчуo de proporчуo desabilitada"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Ativa os filtros grсficos"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Modo janela"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL Normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Conserve"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Modo de vэdeo atual"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Escala atual"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Filtro de imagem ativo: Linear"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Filtro de imagem ativo: Nearest"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Cima"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Baixo"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Esquerda"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Direita"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zona"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multi-funчуo"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Trocador de caracteres"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Pular texto"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Modo rсpido"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Depurador"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Menu global"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Teclado virtual"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Mapeador de Teclas"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Vocъ deseja sair ?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Vэdeo"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Modo de vэdeo atual:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Ataque-duplo"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Sub-escaneamento horizontal:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Sub-escaneamento vertical:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Entrada"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Sensibilidade do CG Pad:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Aceleraчуo do CG Pad:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Status:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Desconhecido"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Montar DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Desmontar DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Servidor:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Compartilhamento:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Nome de usuсrio:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Senha:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Iniciar rede"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Montar SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Desmontar SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD montado com sucesso"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Erro ao montar o DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD nуo montado"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Conexуo ativa, compartilhamento ativado"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Conexуo ativa"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", erro ao montar o compartilhamento"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", compartilhamento nуo montado"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Conexуo caiu"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Inicializaчуo de rede"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Tempo limite para iniciar a conexуo de rede"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Rede nуo inicializada (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Ocultar a barra de ferramentas"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Mostrar Teclado"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Som on/off"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Clique com o botуo direito"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Mostrar/Ocultar seu cursor"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Olhar livre"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Zoom para cima"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Zoom para baixo"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Botуo de ligadura"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Cursor para cima"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Cursor para baixo"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Cursor para a esquerda"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Cursor para a direita"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Vocъ deseja carregar ou salvar o jogo?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Tem certeza de que deseja sair? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Teclado"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Rotacionar"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Usando driver SDL"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Tela"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Vocъ quer executar uma busca automсtica?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Mapear aчуo \"Clique da Direita\""
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Vocъ precisa mapear uma tecla para aчуo do \"Clique da Direita\" nesse jogo"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Mapear \"Ocultar barra de ferramentas\""
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Vocъ precisa mapear uma tecla para aчуo do \"Ocultar barra de ferramentas\" "
-"nesse jogo"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Mapear Zoom para Cima (opcional)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Mapear Zoom para Baixo (opcional)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Nуo se esqueчa de mapear uma tecla para \"Ocultar a barra de ferramentas\" "
-"para ver todo o seu inventсrio"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Vocъ realmente deseja voltar para o menu principal?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Menu principal"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Vocъ realmente deseja sair?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Touchscreen 'Modo Toque' - Clique Esquerdo"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Touchscreen 'Modo Toque' - Clique Direito"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Touchscreen 'Modo Toque' - Acima (Sem Clicar)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Volume mсximo"
-
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Aumentando Volume"
-
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Volume mэnimo"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Multi-Adiчуo..."
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Diminuindo Volume"
+#~ msgid "Mass Add..."
+#~ msgstr "Multi-Adiчуo..."
-#: backends/events/openpandora/op-events.cpp:174
-#, fuzzy
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Touchscreen 'Modo Toque' - Acima (Sem Clicar)"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Desliga o mapeamento General MIDI para jogos com trilha sonora Roland "
+#~ "MT-32"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Procurar por Atualizaчѕes..."
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Padrуo (16bpp)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Clique com o botуo direito apenas uma vez"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Vэdeos em MPEG2 nуo sуo mais suportados"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Apenas mover"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL Normal"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Tecla Escape"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Conserve"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Menu do jogo"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Original"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Mostrar teclado"
+#~ msgid "Current display mode"
+#~ msgstr "Modo de vэdeo atual"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Controle do Mouse"
+#~ msgid "Current scale"
+#~ msgstr "Escala atual"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Clicando Habilitado"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Filtro de imagem ativo: Linear"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Clicando Desabilitado"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Filtro de imagem ativo: Nearest"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Ligar modo Roland GS"
diff --git a/po/ru_RU.po b/po/ru_RU.po
index dc0fc6cc80..e58529dad7 100644
--- a/po/ru_RU.po
+++ b/po/ru_RU.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-05-08 22:24+0300\n"
"Last-Translator: Eugene Sandulenko <sev@scummvm.org>\n"
"Language-Team: Russian\n"
@@ -54,15 +54,15 @@ msgid "Go up"
msgstr "Вверх"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Отмена"
@@ -70,26 +70,26 @@ msgstr "Отмена"
msgid "Choose"
msgstr "Выбрать"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Закрыть"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Клик мышью"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Показать клавиатуру"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Переназначить клавиши"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Переключение на весь экран"
@@ -101,21 +101,21 @@ msgstr "Выберите действие для назначения"
msgid "Map"
msgstr "Назначить"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -141,15 +141,15 @@ msgstr "Пожалуйста, выберите действие"
msgid "Press the key to associate"
msgstr "Нажмите клавишу для назначения"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Игра"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -157,179 +157,179 @@ msgstr ""
"Короткий идентификатор, используемый для имён сохранений игр и для запуска "
"из командной строки"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Название:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Полное название игры"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Назв:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Язык:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr ""
"Язык игры. Изменение этой настройки не превратит игру на английском в русскую"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<по умолчанию>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Платформа:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Платформа, для которой игра была изначально разработана"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Платформа:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Движок"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Графика"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "Грф"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Перекрыть глобальные установки графики"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Перекрыть глобальные установки графики"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Аудио"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Перекрыть глобальные установки аудио"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Перекрыть глобальные установки аудио"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Громкость"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Громк"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Перекрыть глобальные установки громкости"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Перекрыть глобальные установки громкости"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Перекрыть глобальные установки MIDI"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Перекрыть глобальные установки MIDI"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Перекрыть глобальные установки MT-32"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Перекрыть глобальные установки MT-32"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Пути"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Пути"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Путь к игре:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Где игра:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Доп. путь:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Указывает путь к дополнительным файлам данных для игры"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Доп. путь:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Сохранения игр:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Указывает путь к сохранениям игры"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Путь сохр:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -338,134 +338,135 @@ msgctxt "path"
msgid "None"
msgstr "Не задан"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "По умолчанию"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Выберите SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Выберите директорию с файлами игры"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Выберите дополнительную директорию игры"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Выберите директорию для сохранений"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Этот ID игры уже используется. Пожалуйста, выберите другой."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~В~ыход"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Завершить ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "О п~р~ограмме..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "О программе ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~Н~астройки..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Изменить глобальные настройки ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "П~у~ск"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Запустить выбранную игру"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~З~агрузить..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Загрузить сохрнение для выбранной игры"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~Д~обавить игру..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Удерживайте клавишу Shift для того, чтобы добавить несколько игр"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "Н~а~стройки игры..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Изменить настройки игры"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~У~далить игру"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Удалить игру из списка. Не удаляет игру с жесткого диска"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~Д~об. игру..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "Н~а~с. игры..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~У~далить игру"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Поиск в списке игр"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Поиск:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Загрузить игру:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Загрузить"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -473,7 +474,8 @@ msgstr ""
"Вы действительно хотите запустить детектор всех игр? Это потенциально может "
"добавить большое количество игр."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -481,7 +483,8 @@ msgstr ""
msgid "Yes"
msgstr "Да"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -489,39 +492,35 @@ msgstr "Да"
msgid "No"
msgstr "Нет"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM не может открыть указанную директорию!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM не может найти игру в указанной директории!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Выберите игру:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Вы действительно хотите удалить настройки для этой игры?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Вы хотите загрузить либо сохранить игру?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Эта игра не поддерживает загрузку сохранений через главное меню."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM не смог найти движок для запуска выбранной игры!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Много игр..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Много игр..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... ищу ..."
@@ -620,8 +619,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Специальные режимы рендеринга, поддерживаемые некоторыми играми"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Полноэкранный режим"
@@ -754,14 +752,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Настоящий Roland MT-32 (без эмуляции GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Режим Roland GS (запретить маппинг GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Выключает сопоставление General MIDI для игр с звуковой дорожкой для Roland "
-"MT-32"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -951,15 +950,15 @@ msgstr "Вид списка"
msgid "Grid view"
msgstr "Вид сетки"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Дата не записана"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Время не записано"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Время игры не записано"
@@ -971,43 +970,43 @@ msgstr "Удалить"
msgid "Do you really want to delete this savegame?"
msgstr "Вы действительно хотите удалить это сохранение?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Дата: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Время: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Время игры: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Сохранение без имени"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Следующий"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Предыдущий"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Новое сохранение"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Создать новую запись игры"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Название: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Введите описание слота %d:"
@@ -1016,29 +1015,32 @@ msgstr "Введите описание слота %d:"
msgid "Select a Theme"
msgstr "Выберите тему"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Без графики"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Без графики"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Стандартный растеризатор (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Стандартный растеризатор (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Стандартный"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Растеризатор со сглаживанием (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Растеризатор со сглаживанием (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1133,35 +1135,35 @@ msgstr ""
"Вы действительно хотите сбросить все установки FluidSynth в значения по "
"умолчанию?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Движок не поддерживает уровень отладки '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Меню"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Пропустить"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Пауза"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Пропустить строку"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Ошибка запуска игры:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Не могу найти движок для запуска выбранной игры"
@@ -1229,17 +1231,17 @@ msgstr "Прервано пользователем"
msgid "Unknown error"
msgstr "Неизвестная ошибка"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Кажется, что игра '%s' ещё неизвестна."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Пожалуйста, передайте следующие данные команде ScummVM вместе с названием"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "игры, которую вы пытаетесь добавить, и укажите её версию, язык и т.д."
@@ -1277,21 +1279,21 @@ msgid "~R~eturn to Launcher"
msgstr "~В~ главное меню"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Сохранить игру:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Сохранить"
@@ -1329,23 +1331,23 @@ msgstr "О~т~мена"
msgid "~K~eys"
msgstr "~К~лавиши"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Не могу инициализировать формат цвета."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Не удалось переключить видеорежим: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Не удалось использовать коррекцию соотношения сторон."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Не могу применить полноэкранный режим."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1359,7 +1361,7 @@ msgstr ""
"на жёсткий диск. Подробности можно найти в\n"
"файле README."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1374,7 +1376,7 @@ msgstr ""
"появится музыка. Подробности можно найти в\n"
"файле README."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1384,7 +1386,7 @@ msgstr ""
"README за базовой информацией, а также инструкциями о том, как получить "
"дальнейшую помощь."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1394,35 +1396,760 @@ msgstr ""
"поддерживается ScummVM полностью. Она, скорее всего, не будет работать "
"стабильно, и сохранения игр могут не работать в будущих версиях ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Всё равно запустить"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Эмулятор MAME OPL"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Эмулятор DOSBox OPL"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Выбранное звуковое устройство '%s' не было найдено (возможно, оно выключено "
+"или не подключено)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Пытаюсь использовать другое доступное устройство..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Выбранное звуковое устройство '%s' не может быть использовано. Смотрите файл "
+"протокола для более подробной информации."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Предпочтительное звуковое устройство '%s' не было найдено (возможно, оно "
+"выключено или не подключено)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Предпочтительное звуковое устройство '%s' не может быть использовано. "
+"Смотрите файл протокола для более подробной информации."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Без музыки"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Эмулятор звука Amiga"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Эмулятор AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Эмулятор Apple II GS (отсутствует)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "Эмулятор звука C64"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Настраиваю эмулятор MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Эмулятор MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Эмулятор PC спикера"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Эмулятор IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Таблица клавиш:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Действующая)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Активная)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Заблокирована)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Глобальная)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Игры)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~З~акрыть"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Главное меню ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Леворукий режим"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Управление боями в Indy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Показывать курсор мыши"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Прикрепить к границам"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Смещение касаний по оси X"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Смещение касаний по оси Y"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Использовать управление курсором как на трекпаде лептопов"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Тап для левого щелчка, двойной тап для правого щелчка"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Чувствительность"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Начальный масштаб верхнего экрана:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Масштаб главного экрана:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Хардварное масштабирование (быстро, но низкого качества)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Программное масштабирование (хорошее качество, но медленнее)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Без масштабирования (нужно будет прокручивать влево и вправо)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Яркость:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Высокое качество звука (медленнее) (ребут)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Запретить выключение"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Режим мыши нажать-и-тянуть включён."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Режим мыши нажать-и-тянуть выключен."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Режим тачпада включён."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Режим тачпада выключен."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Режим щелчка"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Левый щелчок"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Средний щелчок"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Правый щелчок"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Скрыть ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Скрыть остальные"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Показать все"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Окно"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Убрать в Dock"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Без увеличения"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Без увеличения"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Коррекция соотношения сторон включена"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Коррекция соотношения сторон выключена"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Активный графический фильтр:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Оконный режим"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Открыть"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Вверх"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Вниз"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Влево"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Вправо"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Зона"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Мультифункция"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Сменить героя"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Пропустить текст"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Быстрый режим"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Выход"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Отладчик"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Глобальное меню"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Виртуальная клавиатура"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Назначение клавиш"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Вы действительно хотите выйти?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Видео"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Текущий видеорежим:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Двойной удар"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Горизонтальный underscan:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Вертикальный underscan:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Ввод"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Чувствительность GC пада:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Ускорение GC пада:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Состояние:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Неизвестно"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Подключить DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Отключить DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Сервер:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Сетевая папка:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Пользователь:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Пароль:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Инициализация сети"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Подключить SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Отключть SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD подключен успешно"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Ошибка во время подключения DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD не подключен"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Сеть работает, папка подключена"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Сеть работает"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", ошибка во время подключения папки"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", папка не подключена"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Сеть выключена"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Настраиваю сеть"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Время подключения к сети истекло"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Сеть не настроилась (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Спрятать панель инструментов"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Показать клавиатуру"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Звук вкл/выкл"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Правый щелчок"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Показать/Убрать курсор"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Свободный обзор"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Увел. масштаб"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Уменьш. масштаб"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Назначить клавиши"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Курсор вверх"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Курсор вниз"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Курсор влево"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Курсор вправо"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Вы хотите загрузить либо сохранить игру?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Вы уверены, что хотите выйти? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Клавиатура"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Повернуть"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Использую драйвер SDL "
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Показать "
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Вы хотите произвести автоматический поиск?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Назначить действие по правому щелчку"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr "Вы должны назначить клавишу на действие 'Right Click' для этой игры"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Назначить действие 'спрятать панель инструментов'"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr "Вы должны назначить клавишу на дейтствие 'Hide toolbar' для этой игры"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Назначить действие Увеличить Масштаб (необязательно)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Назначить действие Уменьшить Масштаб (необязательно)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Не забудьте назначить клавишу для действия 'Hide Toolbar', чтобы увидеть "
+"весь инвентарь в игре"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Вы действительно хотите вернуться в главное меню?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Главное меню"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Вы действительно хотите выйти?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Режим 'касаний' тачскрина - Левый клик"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Режим 'касаний' тачскрина - Правый клик"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Режим 'касаний' тачскрина - Пролёт (без клика)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Максимальная громкость"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Увеличение громкости"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Минимальная громкость"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Уменьшение громкости"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Режим 'касаний' тачскрина - Пролёт (клики DPad)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Проверяю обновления..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Один правый щелчок"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Только переместить"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Клавиша ESC"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Меню игры"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Показать клавиатуру"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Управление мышью"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Щелчки включены"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Щелчки выключены"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Использовать оригинальные экраны записи/чтения игры"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Использовать оригинальные экраны записи и сохранения игры вместо сделанных в "
"ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Восстановить игру:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Восстановить"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Не удалось загрузить игру из файла:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Не удалось записать игру в файл:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Игра успешно сохранена в файл:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Файл заставки '%s' не найден!"
+
+#: engines/drascula/saveload.cpp:47
#, fuzzy
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
@@ -1448,28 +2175,305 @@ msgstr "Использовать режим яркой палитры"
msgid "Display graphics using the game's bright palette"
msgstr "Рисует графику с использованием яркой палитры игры"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Не удалось загрузить сохранённую игру из файла."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Не удалось сохранить игру в файл."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Не удалось удалить файл."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Режим ускоренного видео"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Воспроизводит видеоролики с увеличенной скоростью"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Не удалось сохранить игру"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Студийная аудитория"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Включить звуки аудитории в студии"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Поддержка пропусков"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Включает возможность пропускать тексты и заставки"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Режим гелия"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Включить режим гелия"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Плавная прокрутка"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Включить плавную прокрутку во время ходьбы"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Плавающие курсоры"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Включить плавающие курсоры"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Полоски здоровья"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Включить отображение полосок здоровья"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Атака 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Атака 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Атака 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Идти вперёд"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Идти назад"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Скользить влево"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Скользить вправо"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Поворот налево"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Поворот направо"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Отдохнуть"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Опции"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Выбрать заклинание"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Кажется, вы пытаетесь использовать устройство\n"
+"General MIDI, но эта игра поддерживает только\n"
+"Roland MT32 MIDI. Мы попробуем подобрать General\n"
+"MIDI инструменты, похожие на Roland MT32, но\n"
+"может так получиться, что некоторые треки будут\n"
+"сыграны неверно."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Режим быстрого перехода активирован"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "Переходы активированы"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Выбросить страницу"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "Показать карту"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Главное меню"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "Эффекты воды включены"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Не могу сохранить игру в позицию %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Загружаю игру..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Сохраняю игру..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM обнаружил у вас старые сохранения игры Nippon Safes, которые "
+"необходимо переименовать. Старые названия больше не поддерживаются, и "
+"поэтому вы не сможете загрузить сохранения, если не переименуете их.\n"
+"\n"
+"Нажмите ОК, чтобы переименовать их сейчас, в противном случае это же "
+"сообщение появится при следующем запуске игры.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM успешно преобразовал все ваши сохранения игр."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM написал несколько предупреждений в окно консоли и не смог "
+"преобразовать все файлы.\n"
+"\n"
+"Пожалуйста, сообщите об этом команде ScummVM."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Неверное имя файла сохранения"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Вверх/Уменьшить масштаб/Вперёд/Отрыть двери"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Вниз/Увел. масштаб"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Показать/Спрятать инвентарь"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Показать/Спрятать биочип"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Действие/Выбор"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Включить показ данных в центре экрана"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Показать/Спрятать инфоэкран"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Показать/Спрятать меню паузы"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA без растра"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Включает режим без растрирования в EGA играх"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Предпочитать цифровые звуковые эффекты"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr ""
"Отдавать предпочтение цифровым звуковым эффектам вместо синтезированных"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Использовать IMF/Yamaha FB-01 для вывода MIDI"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1477,32 +2481,32 @@ msgstr ""
"Использовать звуковую карту IBM Music Feature или модуль синтеза Yamaha "
"FB-01 FM для MIDI"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Использовать CD аудио"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr ""
"Использовать звуковые дорожки с CD вместо музыки из файлов игры (если "
"доступно)"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Использовать курсоры Windows"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Использовать курсоры Windows (меньшие по размеру и одноцветные) вместо "
"курсоров DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Использовать серебряные курсоры"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1543,15 +2547,6 @@ msgstr "Вы уверены, что хотите выйти? (Y/N)"
msgid "Play"
msgstr "Играть"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Выход"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Вставьте диск с сохранениями"
@@ -1600,11 +2595,6 @@ msgstr "~П~ред"
msgid "~N~ext"
msgstr "~С~лед"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~З~акрыть"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Только озвучка"
@@ -1630,10 +2620,6 @@ msgstr "Выберите уровень сложности."
msgid "Refer to your Loom(TM) manual for help."
msgstr "За помощью обратитесь к инстукции Loom(TM)"
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Стандартный"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Практикант"
@@ -2155,7 +3141,7 @@ msgstr "Лететь вправо"
msgid "Fly to lower right"
msgstr "Лететь вправо-вниз"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2164,40 +3150,7 @@ msgstr ""
"Режим \"родного\" MIDI требует обновление Roland Upgrade от\n"
"LucasArts, но не хватает %s. Переключаюсь на AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Не удалось записать игру в файл:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Не удалось загрузить игру из файла:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Игра успешно сохранена в файл:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2207,191 +3160,6 @@ msgstr ""
"умеет. Чтобы сыграть, нажмите 'Новая игра' в стартовом меню ScummVM, а затем "
"выберите директорию Maniac внутри директории с игрой Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Режим быстрого перехода активирован"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "Переходы активированы"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Выбросить страницу"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "Показать карту"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Главное меню"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "Эффекты воды включены"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Файл заставки '%s' не найден!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Не удалось загрузить сохранённую игру из файла."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Не удалось сохранить игру в файл."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Не удалось удалить файл."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Режим ускоренного видео"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Воспроизводит видеоролики с увеличенной скоростью"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Не удалось сохранить игру"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Студийная аудитория"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Включить звуки аудитории в студии"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Поддержка пропусков"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Включает возможность пропускать тексты и заставки"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Режим гелия"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Включить режим гелия"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Плавная прокрутка"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Включить плавную прокрутку во время ходьбы"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Плавающие курсоры"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Включить плавающие курсоры"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Полоски здоровья"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Включить отображение полосок здоровья"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Атака 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Атака 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Атака 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Идти вперёд"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Идти назад"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Скользить влево"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Скользить вправо"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Поворот налево"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Поворот направо"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Отдохнуть"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Опции"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Выбрать заклинание"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Кажется, вы пытаетесь использовать устройство\n"
-"General MIDI, но эта игра поддерживает только\n"
-"Roland MT32 MIDI. Мы попробуем подобрать General\n"
-"MIDI инструменты, похожие на Roland MT32, но\n"
-"может так получиться, что некоторые треки будут\n"
-"сыграны неверно."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Альтернативное вступление"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Использовать альтернативное вступление (только для CD версии игры)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2416,21 +3184,24 @@ msgstr "Вступление с флоппиков"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Использовать вступление с гибких дисков (только для CD версии игры)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "Заставка PSX '%s' не может быть проиграна в режиме с палитрой"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
"Найдены заставки в формате DXA, но ScummVM был собран без поддержки zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Заставки в формате MPEG2 больше не поддерживаются"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr ""
+"Найдены заставки в формате PSX, но ScummVM был собран без поддержки RGB "
+"цветов"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Заставка '%s' не найдена"
@@ -2473,13 +3244,20 @@ msgstr "Сделать новое"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Это завершение демо Сломанного Меча 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
"Найдены заставки в формате PSX, но ScummVM был собран без поддержки RGB "
"цветов"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr ""
+"Найдены заставки в формате DXA, но ScummVM был собран без поддержки zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Показывать названия объектов"
@@ -2502,787 +3280,51 @@ msgstr ""
"Файл teenagent.dat сжат, но zlib не включено в эту программу. Пожалуйста, "
"распакуйте его"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Не могу сохранить игру в позицию %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Загружаю игру..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Сохраняю игру..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM обнаружил у вас старые сохранения игры Nippon Safes, которые "
-"необходимо переименовать. Старые названия больше не поддерживаются, и "
-"поэтому вы не сможете загрузить сохранения, если не переименуете их.\n"
-"\n"
-"Нажмите ОК, чтобы переименовать их сейчас, в противном случае это же "
-"сообщение появится при следующем запуске игры.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM успешно преобразовал все ваши сохранения игр."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM написал несколько предупреждений в окно консоли и не смог "
-"преобразовать все файлы.\n"
-"\n"
-"Пожалуйста, сообщите об этом команде ScummVM."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Неверное имя файла сохранения"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Вверх/Уменьшить масштаб/Вперёд/Отрыть двери"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Вниз/Увел. масштаб"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Показать/Спрятать инвентарь"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Показать/Спрятать биочип"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Действие/Выбор"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Включить показ данных в центре экрана"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Показать/Спрятать инфоэкран"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Показать/Спрятать меню паузы"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Эмулятор MAME OPL"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Эмулятор DOSBox OPL"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Выбранное звуковое устройство '%s' не было найдено (возможно, оно выключено "
-"или не подключено)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Пытаюсь использовать другое доступное устройство..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Выбранное звуковое устройство '%s' не может быть использовано. Смотрите файл "
-"протокола для более подробной информации."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Предпочтительное звуковое устройство '%s' не было найдено (возможно, оно "
-"выключено или не подключено)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Предпочтительное звуковое устройство '%s' не может быть использовано. "
-"Смотрите файл протокола для более подробной информации."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Без музыки"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Эмулятор звука Amiga"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Эмулятор AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Эмулятор Apple II GS (отсутствует)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "Эмулятор звука C64"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Настраиваю эмулятор MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Эмулятор MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Эмулятор PC спикера"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Эмулятор IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Таблица клавиш:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Действующая)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Активная)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Заблокирована)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Глобальная)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Игры)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Главное меню ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Леворукий режим"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Управление боями в Indy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Показывать курсор мыши"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Прикрепить к границам"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Смещение касаний по оси X"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Смещение касаний по оси Y"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Использовать управление курсором как на трекпаде лептопов"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Тап для левого щелчка, двойной тап для правого щелчка"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Чувствительность"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Начальный масштаб верхнего экрана:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Масштаб главного экрана:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Хардварное масштабирование (быстро, но низкого качества)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Программное масштабирование (хорошее качество, но медленнее)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Без масштабирования (нужно будет прокручивать влево и вправо)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Яркость:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Высокое качество звука (медленнее) (ребут)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Запретить выключение"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Режим мыши нажать-и-тянуть включён."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Режим мыши нажать-и-тянуть выключен."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Режим тачпада включён."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Режим тачпада выключен."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Режим щелчка"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Левый щелчок"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Средний щелчок"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Правый щелчок"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Скрыть ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Скрыть остальные"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Показать все"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Окно"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Убрать в Dock"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Без увеличения"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Без увеличения"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Коррекция соотношения сторон включена"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Коррекция соотношения сторон выключена"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Активный графический фильтр:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Оконный режим"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL без увеличения"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL с сохранением"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL изначальный"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Текущий видеорежим"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Текущий масштаб"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Активный режим фильтра: Линейный"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Активный режим фильтра: Ближайший"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Вверх"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Вниз"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Влево"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Вправо"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Зона"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Мультифункция"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Сменить героя"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Пропустить текст"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Быстрый режим"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Отладчик"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Глобальное меню"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Виртуальная клавиатура"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Назначение клавиш"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Вы действительно хотите выйти?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Видео"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Текущий видеорежим:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Двойной удар"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Горизонтальный underscan:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Вертикальный underscan:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Ввод"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Чувствительность GC пада:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Ускорение GC пада:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Состояние:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Неизвестно"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Подключить DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Отключить DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Сервер:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Сетевая папка:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Пользователь:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Пароль:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Инициализация сети"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Подключить SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Отключть SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD подключен успешно"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Ошибка во время подключения DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD не подключен"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Сеть работает, папка подключена"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Сеть работает"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", ошибка во время подключения папки"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", папка не подключена"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Сеть выключена"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Настраиваю сеть"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Время подключения к сети истекло"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Сеть не настроилась (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Спрятать панель инструментов"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Показать клавиатуру"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Звук вкл/выкл"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Правый щелчок"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Показать/Убрать курсор"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Свободный обзор"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Увел. масштаб"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Уменьш. масштаб"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Назначить клавиши"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Курсор вверх"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Курсор вниз"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Курсор влево"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Курсор вправо"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Вы хотите загрузить либо сохранить игру?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Вы уверены, что хотите выйти? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Клавиатура"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Повернуть"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Использую драйвер SDL "
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Показать "
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Вы хотите произвести автоматический поиск?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Назначить действие по правому щелчку"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr "Вы должны назначить клавишу на действие 'Right Click' для этой игры"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Назначить действие 'спрятать панель инструментов'"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr "Вы должны назначить клавишу на дейтствие 'Hide toolbar' для этой игры"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Назначить действие Увеличить Масштаб (необязательно)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Назначить действие Уменьшить Масштаб (необязательно)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Не забудьте назначить клавишу для действия 'Hide Toolbar', чтобы увидеть "
-"весь инвентарь в игре"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Вы действительно хотите вернуться в главное меню?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Главное меню"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Вы действительно хотите выйти?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Режим 'касаний' тачскрина - Левый клик"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Режим 'касаний' тачскрина - Правый клик"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Режим 'касаний' тачскрина - Пролёт (без клика)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Максимальная громкость"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Много игр..."
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Увеличение громкости"
+#~ msgid "Mass Add..."
+#~ msgstr "Много игр..."
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Минимальная громкость"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Выключает сопоставление General MIDI для игр с звуковой дорожкой для "
+#~ "Roland MT-32"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Уменьшение громкости"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Стандартный растеризатор (16bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Режим 'касаний' тачскрина - Пролёт (клики DPad)"
+#~ msgid "Alternative intro"
+#~ msgstr "Альтернативное вступление"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Проверяю обновления..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Использовать альтернативное вступление (только для CD версии игры)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Один правый щелчок"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Заставки в формате MPEG2 больше не поддерживаются"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Только переместить"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL без увеличения"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Клавиша ESC"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL с сохранением"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Меню игры"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL изначальный"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Показать клавиатуру"
+#~ msgid "Current display mode"
+#~ msgstr "Текущий видеорежим"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Управление мышью"
+#~ msgid "Current scale"
+#~ msgstr "Текущий масштаб"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Щелчки включены"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Активный режим фильтра: Линейный"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Щелчки выключены"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Активный режим фильтра: Ближайший"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Включить режим Roland GS"
diff --git a/po/scummvm.pot b/po/scummvm.pot
index d5e41ba0e5..8453d75b70 100644
--- a/po/scummvm.pot
+++ b/po/scummvm.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: ScummVM 1.6.0git\n"
+"Project-Id-Version: ScummVM 1.7.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -52,15 +52,15 @@ msgid "Go up"
msgstr ""
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr ""
@@ -68,26 +68,26 @@ msgstr ""
msgid "Choose"
msgstr ""
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr ""
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr ""
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr ""
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr ""
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr ""
@@ -99,21 +99,21 @@ msgstr ""
msgid "Map"
msgstr ""
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr ""
@@ -139,192 +139,192 @@ msgstr ""
msgid "Press the key to associate"
msgstr ""
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr ""
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr ""
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
msgstr ""
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr ""
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr ""
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr ""
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr ""
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr ""
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
msgstr ""
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr ""
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr ""
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr ""
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr ""
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr ""
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr ""
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr ""
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr ""
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr ""
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr ""
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr ""
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr ""
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr ""
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr ""
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr ""
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr ""
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr ""
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr ""
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr ""
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr ""
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr ""
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr ""
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr ""
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr ""
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr ""
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr ""
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr ""
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr ""
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr ""
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr ""
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr ""
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr ""
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -333,140 +333,142 @@ msgctxt "path"
msgid "None"
msgstr ""
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr ""
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr ""
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr ""
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr ""
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr ""
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr ""
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr ""
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr ""
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr ""
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr ""
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr ""
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr ""
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr ""
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr ""
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr ""
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr ""
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr ""
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr ""
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr ""
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr ""
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr ""
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr ""
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr ""
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr ""
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr ""
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr ""
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr ""
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr ""
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr ""
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
msgstr ""
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -474,7 +476,8 @@ msgstr ""
msgid "Yes"
msgstr ""
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -482,37 +485,32 @@ msgstr ""
msgid "No"
msgstr ""
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr ""
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr ""
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr ""
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr ""
-#: gui/launcher.cpp:1001
-msgid "This game does not support loading games from the launcher."
-msgstr ""
-
-#: gui/launcher.cpp:1005
-msgid "ScummVM could not find any engine capable of running the selected game!"
+#: gui/launcher.cpp:998
+msgid "Do you want to load savegame?"
msgstr ""
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
+#: gui/launcher.cpp:1047
+msgid "This game does not support loading games from the launcher."
msgstr ""
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
+#: gui/launcher.cpp:1051
+msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
#: gui/massadd.cpp:78 gui/massadd.cpp:81
@@ -613,8 +611,7 @@ msgid "Special dithering modes supported by some games"
msgstr ""
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr ""
@@ -739,11 +736,13 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr ""
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr ""
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
#: gui/options.cpp:899
@@ -930,15 +929,15 @@ msgstr ""
msgid "Grid view"
msgstr ""
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr ""
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr ""
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr ""
@@ -950,43 +949,43 @@ msgstr ""
msgid "Do you really want to delete this savegame?"
msgstr ""
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr ""
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr ""
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr ""
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr ""
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr ""
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr ""
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr ""
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr ""
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr ""
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr ""
@@ -995,29 +994,29 @@ msgstr ""
msgid "Select a Theme"
msgstr ""
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr ""
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr ""
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+msgid "Standard Renderer"
msgstr ""
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
msgstr ""
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+msgid "Antialiased Renderer"
msgstr ""
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+msgid "Antialiased"
msgstr ""
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1109,35 +1108,35 @@ msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
msgstr ""
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr ""
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr ""
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr ""
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr ""
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr ""
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr ""
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr ""
@@ -1205,16 +1204,16 @@ msgstr ""
msgid "Unknown error"
msgstr ""
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr ""
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr ""
@@ -1252,21 +1251,21 @@ msgid "~R~eturn to Launcher"
msgstr ""
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr ""
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr ""
@@ -1298,23 +1297,23 @@ msgstr ""
msgid "~K~eys"
msgstr ""
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr ""
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr ""
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr ""
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr ""
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1323,7 +1322,7 @@ msgid ""
"See the README file for details."
msgstr ""
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1332,788 +1331,739 @@ msgid ""
"See the README file for details."
msgstr ""
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
"and for instructions on how to obtain further assistance."
msgstr ""
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
"not work in future versions of ScummVM."
msgstr ""
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr ""
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
-msgid "Use original save/load screens"
-msgstr ""
-
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
-msgid "Use the original save/load screens, instead of the ScummVM ones"
-msgstr ""
-
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
-msgid "Restore game:"
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
msgstr ""
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
-msgid "Restore"
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
msgstr ""
-#: engines/drascula/saveload.cpp:49
+#: audio/mididrv.cpp:209
+#, c-format
msgid ""
-"ScummVM found that you have old savefiles for Drascula that should be "
-"converted.\n"
-"The old save game format is no longer supported, so you will not be able to "
-"load your games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked again the next "
-"time you start the game.\n"
-msgstr ""
-
-#: engines/dreamweb/detection.cpp:57
-msgid "Use bright palette mode"
-msgstr ""
-
-#: engines/dreamweb/detection.cpp:58
-msgid "Display graphics using the game's bright palette"
-msgstr ""
-
-#: engines/sci/detection.cpp:373
-msgid "EGA undithering"
-msgstr ""
-
-#: engines/sci/detection.cpp:374
-msgid "Enable undithering in EGA games"
-msgstr ""
-
-#: engines/sci/detection.cpp:383
-msgid "Prefer digital sound effects"
-msgstr ""
-
-#: engines/sci/detection.cpp:384
-msgid "Prefer digital sound effects instead of synthesized ones"
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
msgstr ""
-#: engines/sci/detection.cpp:403
-msgid "Use IMF/Yamaha FB-01 for MIDI output"
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
msgstr ""
-#: engines/sci/detection.cpp:404
+#: audio/mididrv.cpp:221
+#, c-format
msgid ""
-"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
-"output"
-msgstr ""
-
-#: engines/sci/detection.cpp:414
-msgid "Use CD audio"
-msgstr ""
-
-#: engines/sci/detection.cpp:415
-msgid "Use CD audio instead of in-game audio, if available"
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
msgstr ""
-#: engines/sci/detection.cpp:425
-msgid "Use Windows cursors"
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
msgstr ""
-#: engines/sci/detection.cpp:426
+#: audio/mididrv.cpp:272
+#, c-format
msgid ""
-"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
msgstr ""
-#: engines/sci/detection.cpp:436
-msgid "Use silver cursors"
+#: audio/null.h:43
+msgid "No music"
msgstr ""
-#: engines/sci/detection.cpp:437
-msgid ""
-"Use the alternate set of silver cursors, instead of the normal golden ones"
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
msgstr ""
-#: engines/scumm/dialogs.cpp:175
-#, c-format
-msgid "Insert Disk %c and Press Button to Continue."
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
msgstr ""
-#: engines/scumm/dialogs.cpp:176
-#, c-format
-msgid "Unable to Find %s, (%c%d) Press Button."
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
msgstr ""
-#: engines/scumm/dialogs.cpp:177
-#, c-format
-msgid "Error reading disk %c, (%c%d) Press Button."
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
msgstr ""
-#: engines/scumm/dialogs.cpp:178
-msgid "Game Paused. Press SPACE to Continue."
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
msgstr ""
-#. I18N: You may specify 'Yes' symbol at the end of the line, like this:
-#. "Moechten Sie wirklich neu starten? (J/N)J"
-#. Will react to J as 'Yes'
-#: engines/scumm/dialogs.cpp:182
-msgid "Are you sure you want to restart? (Y/N)"
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
msgstr ""
-#. I18N: you may specify 'Yes' symbol at the end of the line. See previous comment
-#: engines/scumm/dialogs.cpp:184
-msgid "Are you sure you want to quit? (Y/N)"
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
msgstr ""
-#: engines/scumm/dialogs.cpp:189
-msgid "Play"
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
msgstr ""
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
msgstr ""
-#: engines/scumm/dialogs.cpp:193
-msgid "Insert save/load game disk"
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
msgstr ""
-#: engines/scumm/dialogs.cpp:194
-msgid "You must enter a name"
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
msgstr ""
-#: engines/scumm/dialogs.cpp:195
-msgid "The game was NOT saved (disk full?)"
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
msgstr ""
-#: engines/scumm/dialogs.cpp:196
-msgid "The game was NOT loaded"
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
msgstr ""
-#: engines/scumm/dialogs.cpp:197
-#, c-format
-msgid "Saving '%s'"
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
msgstr ""
-#: engines/scumm/dialogs.cpp:198
-#, c-format
-msgid "Loading '%s'"
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
msgstr ""
-#: engines/scumm/dialogs.cpp:199
-msgid "Name your SAVE game"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
msgstr ""
-#: engines/scumm/dialogs.cpp:200
-msgid "Select a game to LOAD"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
msgstr ""
-#: engines/scumm/dialogs.cpp:201
-msgid "Game title)"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
msgstr ""
-#. I18N: Previous page button
-#: engines/scumm/dialogs.cpp:287
-msgid "~P~revious"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
msgstr ""
-#. I18N: Next page button
-#: engines/scumm/dialogs.cpp:289
-msgid "~N~ext"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
msgstr ""
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
msgstr ""
-#: engines/scumm/dialogs.cpp:597
-msgid "Speech Only"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
msgstr ""
-#: engines/scumm/dialogs.cpp:598
-msgid "Speech and Subtitles"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
msgstr ""
-#: engines/scumm/dialogs.cpp:599
-msgid "Subtitles Only"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
msgstr ""
-#: engines/scumm/dialogs.cpp:607
-msgctxt "lowres"
-msgid "Speech & Subs"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
msgstr ""
-#: engines/scumm/dialogs.cpp:653
-msgid "Select a Proficiency Level."
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
msgstr ""
-#: engines/scumm/dialogs.cpp:655
-msgid "Refer to your Loom(TM) manual for help."
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
msgstr ""
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
msgstr ""
-#: engines/scumm/dialogs.cpp:659
-msgid "Practice"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
msgstr ""
-#: engines/scumm/dialogs.cpp:660
-msgid "Expert"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
msgstr ""
-#: engines/scumm/help.cpp:73
-msgid "Common keyboard commands:"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
msgstr ""
-#: engines/scumm/help.cpp:74
-msgid "Save / Load dialog"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
msgstr ""
-#: engines/scumm/help.cpp:76
-msgid "Skip line of text"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
msgstr ""
-#: engines/scumm/help.cpp:77
-msgid "Esc"
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
msgstr ""
-#: engines/scumm/help.cpp:77
-msgid "Skip cutscene"
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
msgstr ""
-#: engines/scumm/help.cpp:78
-msgid "Space"
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
msgstr ""
-#: engines/scumm/help.cpp:78
-msgid "Pause game"
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
msgstr ""
-#: engines/scumm/help.cpp:79 engines/scumm/help.cpp:84
-#: engines/scumm/help.cpp:95 engines/scumm/help.cpp:96
-#: engines/scumm/help.cpp:97 engines/scumm/help.cpp:98
-#: engines/scumm/help.cpp:99 engines/scumm/help.cpp:100
-#: engines/scumm/help.cpp:101 engines/scumm/help.cpp:102
-msgid "Ctrl"
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
msgstr ""
-#: engines/scumm/help.cpp:79
-msgid "Load game state 1-10"
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
msgstr ""
-#: engines/scumm/help.cpp:80 engines/scumm/help.cpp:84
-#: engines/scumm/help.cpp:86 engines/scumm/help.cpp:100
-#: engines/scumm/help.cpp:101 engines/scumm/help.cpp:102
-msgid "Alt"
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
msgstr ""
-#: engines/scumm/help.cpp:80
-msgid "Save game state 1-10"
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
msgstr ""
-#: engines/scumm/help.cpp:86 engines/scumm/help.cpp:89
-msgid "Enter"
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
msgstr ""
-#: engines/scumm/help.cpp:86
-msgid "Toggle fullscreen"
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
msgstr ""
-#: engines/scumm/help.cpp:87
-msgid "Music volume up / down"
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
msgstr ""
-#: engines/scumm/help.cpp:88
-msgid "Text speed slower / faster"
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
msgstr ""
-#: engines/scumm/help.cpp:89
-msgid "Simulate left mouse button"
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
msgstr ""
-#: engines/scumm/help.cpp:90
-msgid "Tab"
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
msgstr ""
-#: engines/scumm/help.cpp:90
-msgid "Simulate right mouse button"
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
msgstr ""
-#: engines/scumm/help.cpp:93
-msgid "Special keyboard commands:"
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
msgstr ""
-#: engines/scumm/help.cpp:94
-msgid "Show / Hide console"
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
msgstr ""
-#: engines/scumm/help.cpp:95
-msgid "Start the debugger"
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
msgstr ""
-#: engines/scumm/help.cpp:96
-msgid "Show memory consumption"
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
msgstr ""
-#: engines/scumm/help.cpp:97
-msgid "Run in fast mode (*)"
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
msgstr ""
-#: engines/scumm/help.cpp:98
-msgid "Run in really fast mode (*)"
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+msgid "OpenGL"
msgstr ""
-#: engines/scumm/help.cpp:99
-msgid "Toggle mouse capture"
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
msgstr ""
-#: engines/scumm/help.cpp:100
-msgid "Switch between graphics filters"
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
msgstr ""
-#: engines/scumm/help.cpp:101
-msgid "Increase / Decrease scale factor"
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
msgstr ""
-#: engines/scumm/help.cpp:102
-msgid "Toggle aspect-ratio correction"
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
msgstr ""
-#: engines/scumm/help.cpp:107
-msgid "* Note that using ctrl-f and"
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
msgstr ""
-#: engines/scumm/help.cpp:108
-msgid " ctrl-g are not recommended"
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
msgstr ""
-#: engines/scumm/help.cpp:109
-msgid " since they may cause crashes"
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
msgstr ""
-#: engines/scumm/help.cpp:110
-msgid " or incorrect game behavior."
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
msgstr ""
-#: engines/scumm/help.cpp:114
-msgid "Spinning drafts on the keyboard:"
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
msgstr ""
-#: engines/scumm/help.cpp:116
-msgid "Main game controls:"
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
msgstr ""
-#: engines/scumm/help.cpp:121 engines/scumm/help.cpp:136
-#: engines/scumm/help.cpp:161
-msgid "Push"
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
msgstr ""
-#: engines/scumm/help.cpp:122 engines/scumm/help.cpp:137
-#: engines/scumm/help.cpp:162
-msgid "Pull"
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
msgstr ""
-#: engines/scumm/help.cpp:123 engines/scumm/help.cpp:138
-#: engines/scumm/help.cpp:163 engines/scumm/help.cpp:197
-#: engines/scumm/help.cpp:207
-msgid "Give"
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
msgstr ""
-#: engines/scumm/help.cpp:124 engines/scumm/help.cpp:139
-#: engines/scumm/help.cpp:164 engines/scumm/help.cpp:190
-#: engines/scumm/help.cpp:208
-msgid "Open"
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
msgstr ""
-#: engines/scumm/help.cpp:126
-msgid "Go to"
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
msgstr ""
-#: engines/scumm/help.cpp:127
-msgid "Get"
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
msgstr ""
-#: engines/scumm/help.cpp:128 engines/scumm/help.cpp:152
-#: engines/scumm/help.cpp:170 engines/scumm/help.cpp:198
-#: engines/scumm/help.cpp:213 engines/scumm/help.cpp:224
-#: engines/scumm/help.cpp:250
-msgid "Use"
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
msgstr ""
-#: engines/scumm/help.cpp:129 engines/scumm/help.cpp:141
-msgid "Read"
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
msgstr ""
-#: engines/scumm/help.cpp:130 engines/scumm/help.cpp:147
-msgid "New kid"
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
msgstr ""
-#: engines/scumm/help.cpp:131 engines/scumm/help.cpp:153
-#: engines/scumm/help.cpp:171
-msgid "Turn on"
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
msgstr ""
-#: engines/scumm/help.cpp:132 engines/scumm/help.cpp:154
-#: engines/scumm/help.cpp:172
-msgid "Turn off"
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
msgstr ""
-#: engines/scumm/help.cpp:142 engines/scumm/help.cpp:167
-#: engines/scumm/help.cpp:194
-msgid "Walk to"
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
msgstr ""
-#: engines/scumm/help.cpp:143 engines/scumm/help.cpp:168
-#: engines/scumm/help.cpp:195 engines/scumm/help.cpp:210
-#: engines/scumm/help.cpp:227
-msgid "Pick up"
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
msgstr ""
-#: engines/scumm/help.cpp:144 engines/scumm/help.cpp:169
-msgid "What is"
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
msgstr ""
-#: engines/scumm/help.cpp:146
-msgid "Unlock"
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
msgstr ""
-#: engines/scumm/help.cpp:149
-msgid "Put on"
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
msgstr ""
-#: engines/scumm/help.cpp:150
-msgid "Take off"
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
msgstr ""
-#: engines/scumm/help.cpp:156
-msgid "Fix"
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
msgstr ""
-#: engines/scumm/help.cpp:158
-msgid "Switch"
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
msgstr ""
-#: engines/scumm/help.cpp:166 engines/scumm/help.cpp:228
-msgid "Look"
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
msgstr ""
-#: engines/scumm/help.cpp:173 engines/scumm/help.cpp:223
-msgid "Talk"
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
msgstr ""
-#: engines/scumm/help.cpp:174
-msgid "Travel"
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
msgstr ""
-#: engines/scumm/help.cpp:175
-msgid "To Henry / To Indy"
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
msgstr ""
-#. I18N: These are different musical notes
-#: engines/scumm/help.cpp:179
-msgid "play C minor on distaff"
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
msgstr ""
-#: engines/scumm/help.cpp:180
-msgid "play D on distaff"
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
msgstr ""
-#: engines/scumm/help.cpp:181
-msgid "play E on distaff"
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
msgstr ""
-#: engines/scumm/help.cpp:182
-msgid "play F on distaff"
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
msgstr ""
-#: engines/scumm/help.cpp:183
-msgid "play G on distaff"
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
msgstr ""
-#: engines/scumm/help.cpp:184
-msgid "play A on distaff"
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
msgstr ""
-#: engines/scumm/help.cpp:185
-msgid "play B on distaff"
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
msgstr ""
-#: engines/scumm/help.cpp:186
-msgid "play C major on distaff"
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
msgstr ""
-#: engines/scumm/help.cpp:192 engines/scumm/help.cpp:214
-msgid "puSh"
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
msgstr ""
-#: engines/scumm/help.cpp:193 engines/scumm/help.cpp:215
-msgid "pull (Yank)"
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
msgstr ""
-#: engines/scumm/help.cpp:196 engines/scumm/help.cpp:212
-#: engines/scumm/help.cpp:248
-msgid "Talk to"
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
msgstr ""
-#: engines/scumm/help.cpp:199 engines/scumm/help.cpp:211
-msgid "Look at"
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
msgstr ""
-#: engines/scumm/help.cpp:200
-msgid "turn oN"
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
msgstr ""
-#: engines/scumm/help.cpp:201
-msgid "turn oFf"
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
msgstr ""
-#: engines/scumm/help.cpp:217
-msgid "KeyUp"
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
msgstr ""
-#: engines/scumm/help.cpp:217
-msgid "Highlight prev dialogue"
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
msgstr ""
-#: engines/scumm/help.cpp:218
-msgid "KeyDown"
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
msgstr ""
-#: engines/scumm/help.cpp:218
-msgid "Highlight next dialogue"
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
msgstr ""
-#: engines/scumm/help.cpp:222
-msgid "Walk"
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
msgstr ""
-#: engines/scumm/help.cpp:225 engines/scumm/help.cpp:234
-#: engines/scumm/help.cpp:241 engines/scumm/help.cpp:249
-msgid "Inventory"
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
msgstr ""
-#: engines/scumm/help.cpp:226
-msgid "Object"
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
msgstr ""
-#: engines/scumm/help.cpp:229
-msgid "Black and White / Color"
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
msgstr ""
-#: engines/scumm/help.cpp:232
-msgid "Eyes"
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
msgstr ""
-#: engines/scumm/help.cpp:233
-msgid "Tongue"
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
msgstr ""
-#: engines/scumm/help.cpp:235
-msgid "Punch"
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
msgstr ""
-#: engines/scumm/help.cpp:236
-msgid "Kick"
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
msgstr ""
-#: engines/scumm/help.cpp:239 engines/scumm/help.cpp:247
-msgid "Examine"
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
msgstr ""
-#: engines/scumm/help.cpp:240
-msgid "Regular cursor"
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
msgstr ""
-#. I18N: Comm is a communication device
-#: engines/scumm/help.cpp:243
-msgid "Comm"
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
msgstr ""
-#: engines/scumm/help.cpp:246
-msgid "Save / Load / Options"
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
msgstr ""
-#: engines/scumm/help.cpp:255
-msgid "Other game controls:"
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
msgstr ""
-#: engines/scumm/help.cpp:257 engines/scumm/help.cpp:267
-msgid "Inventory:"
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
msgstr ""
-#: engines/scumm/help.cpp:258 engines/scumm/help.cpp:274
-msgid "Scroll list up"
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
msgstr ""
-#: engines/scumm/help.cpp:259 engines/scumm/help.cpp:275
-msgid "Scroll list down"
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
msgstr ""
-#: engines/scumm/help.cpp:260 engines/scumm/help.cpp:268
-msgid "Upper left item"
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
msgstr ""
-#: engines/scumm/help.cpp:261 engines/scumm/help.cpp:270
-msgid "Lower left item"
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
msgstr ""
-#: engines/scumm/help.cpp:262 engines/scumm/help.cpp:271
-msgid "Upper right item"
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
msgstr ""
-#: engines/scumm/help.cpp:263 engines/scumm/help.cpp:273
-msgid "Lower right item"
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
msgstr ""
-#: engines/scumm/help.cpp:269
-msgid "Middle left item"
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
msgstr ""
-#: engines/scumm/help.cpp:272
-msgid "Middle right item"
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
msgstr ""
-#: engines/scumm/help.cpp:279 engines/scumm/help.cpp:284
-msgid "Switching characters:"
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
msgstr ""
-#: engines/scumm/help.cpp:281
-msgid "Second kid"
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
msgstr ""
-#: engines/scumm/help.cpp:282
-msgid "Third kid"
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
msgstr ""
-#: engines/scumm/help.cpp:294
-msgid "Fighting controls (numpad):"
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
msgstr ""
-#: engines/scumm/help.cpp:295 engines/scumm/help.cpp:296
-#: engines/scumm/help.cpp:297
-msgid "Step back"
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
msgstr ""
-#: engines/scumm/help.cpp:298
-msgid "Block high"
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
msgstr ""
-#: engines/scumm/help.cpp:299
-msgid "Block middle"
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
msgstr ""
-#: engines/scumm/help.cpp:300
-msgid "Block low"
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
msgstr ""
-#: engines/scumm/help.cpp:301
-msgid "Punch high"
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
msgstr ""
-#: engines/scumm/help.cpp:302
-msgid "Punch middle"
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
msgstr ""
-#: engines/scumm/help.cpp:303
-msgid "Punch low"
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
msgstr ""
-#: engines/scumm/help.cpp:306
-msgid "These are for Indy on left."
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
msgstr ""
-#: engines/scumm/help.cpp:307
-msgid "When Indy is on the right,"
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
msgstr ""
-#: engines/scumm/help.cpp:308
-msgid "7, 4, and 1 are switched with"
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
msgstr ""
-#: engines/scumm/help.cpp:309
-msgid "9, 6, and 3, respectively."
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
msgstr ""
-#: engines/scumm/help.cpp:316
-msgid "Biplane controls (numpad):"
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
msgstr ""
-#: engines/scumm/help.cpp:317
-msgid "Fly to upper left"
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
msgstr ""
-#: engines/scumm/help.cpp:318
-msgid "Fly to left"
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
msgstr ""
-#: engines/scumm/help.cpp:319
-msgid "Fly to lower left"
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
msgstr ""
-#: engines/scumm/help.cpp:320
-msgid "Fly upwards"
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
msgstr ""
-#: engines/scumm/help.cpp:321
-msgid "Fly straight"
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
msgstr ""
-#: engines/scumm/help.cpp:322
-msgid "Fly down"
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
msgstr ""
-#: engines/scumm/help.cpp:323
-msgid "Fly to upper right"
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
+msgid "Use original save/load screens"
msgstr ""
-#: engines/scumm/help.cpp:324
-msgid "Fly to right"
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
+msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
-#: engines/scumm/help.cpp:325
-msgid "Fly to lower right"
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
+msgid "Restore game:"
msgstr ""
-#: engines/scumm/scumm.cpp:1776
-#, c-format
-msgid ""
-"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
-"but %s is missing. Using AdLib instead."
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
+msgid "Restore"
msgstr ""
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
#, c-format
msgid ""
-"Failed to save game state to file:\n"
+"Failed to load game state from file:\n"
"\n"
"%s"
msgstr ""
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
#, c-format
msgid ""
-"Failed to load game state from file:\n"
+"Failed to save game state to file:\n"
"\n"
"%s"
msgstr ""
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
#, c-format
msgid ""
"Successfully saved game state in file:\n"
@@ -2121,50 +2071,36 @@ msgid ""
"%s"
msgstr ""
-#: engines/scumm/scumm.cpp:2537
-msgid ""
-"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
-"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
-"directory inside the Tentacle game directory."
-msgstr ""
-
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr ""
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr ""
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr ""
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
msgstr ""
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
+#: engines/drascula/saveload.cpp:47
+msgid ""
+"ScummVM found that you have old savefiles for Drascula that should be "
+"converted.\n"
+"The old save game format is no longer supported, so you will not be able to "
+"load your games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked again the next "
+"time you start the game.\n"
msgstr ""
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
+#: engines/dreamweb/detection.cpp:57
+msgid "Use bright palette mode"
msgstr ""
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
+#: engines/dreamweb/detection.cpp:58
+msgid "Display graphics using the game's bright palette"
msgstr ""
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
#: engines/tinsel/saveload.cpp:532
msgid "Failed to load game state from file."
msgstr ""
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
msgid "Failed to save game state to file."
msgstr ""
@@ -2270,11 +2206,11 @@ msgstr ""
msgid "Slide Right"
msgstr ""
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
msgid "Turn Left"
msgstr ""
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
msgid "Turn Right"
msgstr ""
@@ -2299,104 +2235,46 @@ msgid ""
"some tracks sound incorrect."
msgstr ""
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr ""
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr ""
-
-#: engines/sky/compact.cpp:130
-msgid ""
-"Unable to find \"sky.cpt\" file!\n"
-"Please download it from www.scummvm.org"
-msgstr ""
-
-#: engines/sky/compact.cpp:141
-msgid ""
-"The \"sky.cpt\" file has an incorrect size.\n"
-"Please (re)download it from www.scummvm.org"
-msgstr ""
-
-#: engines/sky/detection.cpp:44
-msgid "Floppy intro"
-msgstr ""
-
-#: engines/sky/detection.cpp:45
-msgid "Use the floppy version's intro (CD version only)"
-msgstr ""
-
-#: engines/sword1/animation.cpp:519
-#, c-format
-msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
-msgstr ""
-
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
-msgid "DXA cutscenes found but ScummVM has been built without zlib support"
-msgstr ""
-
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr ""
-
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
-#, c-format
-msgid "Cutscene '%s' not found"
-msgstr ""
-
-#: engines/sword1/control.cpp:863
-msgid ""
-"ScummVM found that you have old savefiles for Broken Sword 1 that should be "
-"converted.\n"
-"The old save game format is no longer supported, so you will not be able to "
-"load your games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked again the next "
-"time you start the game.\n"
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
msgstr ""
-#: engines/sword1/control.cpp:1232
-#, c-format
-msgid ""
-"Target new save game already exists!\n"
-"Would you like to keep the old save game (%s) or the new one (%s)?\n"
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
msgstr ""
-#: engines/sword1/control.cpp:1235
-msgid "Keep the old one"
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
msgstr ""
-#: engines/sword1/control.cpp:1235
-msgid "Keep the new one"
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
msgstr ""
-#: engines/sword1/logic.cpp:1633
-msgid "This is the end of the Broken Sword 1 Demo"
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
msgstr ""
-#: engines/sword2/animation.cpp:419
-msgid ""
-"PSX cutscenes found but ScummVM has been built without RGB color support"
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
msgstr ""
-#: engines/sword2/sword2.cpp:79
-msgid "Show object labels"
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
msgstr ""
-#: engines/sword2/sword2.cpp:80
-msgid "Show labels for objects on mouse hover"
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
msgstr ""
-#: engines/teenagent/resources.cpp:94
-msgid ""
-"You're missing the 'teenagent.dat' file. Get it from the ScummVM website"
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
msgstr ""
-#: engines/teenagent/resources.cpp:115
-msgid ""
-"The teenagent.dat file is compressed and zlib hasn't been included in this "
-"executable. Please decompress it"
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
msgstr ""
#: engines/parallaction/saveload.cpp:133
@@ -2436,725 +2314,834 @@ msgid ""
"Please report to the team."
msgstr ""
-#: engines/pegasus/pegasus.cpp:679
+#: engines/pegasus/pegasus.cpp:707
msgid "Invalid save file name"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2445
+#: engines/pegasus/pegasus.cpp:2473
msgid "Up/Zoom In/Move Forward/Open Doors"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2446
+#: engines/pegasus/pegasus.cpp:2474
msgid "Down/Zoom Out"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2449
+#: engines/pegasus/pegasus.cpp:2477
msgid "Display/Hide Inventory Tray"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2450
+#: engines/pegasus/pegasus.cpp:2478
msgid "Display/Hide Biochip Tray"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2451
+#: engines/pegasus/pegasus.cpp:2479
msgid "Action/Select"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2452
+#: engines/pegasus/pegasus.cpp:2480
msgid "Toggle Center Data Display"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2453
+#: engines/pegasus/pegasus.cpp:2481
msgid "Display/Hide Info Screen"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2454
+#: engines/pegasus/pegasus.cpp:2482
msgid "Display/Hide Pause Menu"
msgstr ""
-#: engines/pegasus/pegasus.cpp:2455
+#: engines/pegasus/pegasus.cpp:2483
msgid "???"
msgstr ""
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
+#: engines/sci/detection.cpp:374
+msgid "EGA undithering"
msgstr ""
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
+#: engines/sci/detection.cpp:375
+msgid "Enable undithering in EGA games"
msgstr ""
-#: audio/mididrv.cpp:209
-#, c-format
+#: engines/sci/detection.cpp:384
+msgid "Prefer digital sound effects"
+msgstr ""
+
+#: engines/sci/detection.cpp:385
+msgid "Prefer digital sound effects instead of synthesized ones"
+msgstr ""
+
+#: engines/sci/detection.cpp:404
+msgid "Use IMF/Yamaha FB-01 for MIDI output"
+msgstr ""
+
+#: engines/sci/detection.cpp:405
msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
+"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
+"output"
msgstr ""
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
+#: engines/sci/detection.cpp:415
+msgid "Use CD audio"
msgstr ""
-#: audio/mididrv.cpp:221
-#, c-format
+#: engines/sci/detection.cpp:416
+msgid "Use CD audio instead of in-game audio, if available"
+msgstr ""
+
+#: engines/sci/detection.cpp:426
+msgid "Use Windows cursors"
+msgstr ""
+
+#: engines/sci/detection.cpp:427
msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
+"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
-#: audio/mididrv.cpp:257
-#, c-format
+#: engines/sci/detection.cpp:437
+msgid "Use silver cursors"
+msgstr ""
+
+#: engines/sci/detection.cpp:438
msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
+"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
-#: audio/mididrv.cpp:272
+#: engines/scumm/dialogs.cpp:175
#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
+msgid "Insert Disk %c and Press Button to Continue."
msgstr ""
-#: audio/null.h:43
-msgid "No music"
+#: engines/scumm/dialogs.cpp:176
+#, c-format
+msgid "Unable to Find %s, (%c%d) Press Button."
msgstr ""
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
+#: engines/scumm/dialogs.cpp:177
+#, c-format
+msgid "Error reading disk %c, (%c%d) Press Button."
msgstr ""
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
+#: engines/scumm/dialogs.cpp:178
+msgid "Game Paused. Press SPACE to Continue."
msgstr ""
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+#. I18N: You may specify 'Yes' symbol at the end of the line, like this:
+#. "Moechten Sie wirklich neu starten? (J/N)J"
+#. Will react to J as 'Yes'
+#: engines/scumm/dialogs.cpp:182
+msgid "Are you sure you want to restart? (Y/N)"
msgstr ""
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
+#. I18N: you may specify 'Yes' symbol at the end of the line. See previous comment
+#: engines/scumm/dialogs.cpp:184
+msgid "Are you sure you want to quit? (Y/N)"
msgstr ""
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
+#: engines/scumm/dialogs.cpp:189
+msgid "Play"
msgstr ""
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
+#: engines/scumm/dialogs.cpp:193
+msgid "Insert save/load game disk"
msgstr ""
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
+#: engines/scumm/dialogs.cpp:194
+msgid "You must enter a name"
msgstr ""
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
+#: engines/scumm/dialogs.cpp:195
+msgid "The game was NOT saved (disk full?)"
msgstr ""
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
+#: engines/scumm/dialogs.cpp:196
+msgid "The game was NOT loaded"
msgstr ""
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
+#: engines/scumm/dialogs.cpp:197
+#, c-format
+msgid "Saving '%s'"
msgstr ""
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
+#: engines/scumm/dialogs.cpp:198
+#, c-format
+msgid "Loading '%s'"
msgstr ""
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
+#: engines/scumm/dialogs.cpp:199
+msgid "Name your SAVE game"
msgstr ""
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
+#: engines/scumm/dialogs.cpp:200
+msgid "Select a game to LOAD"
msgstr ""
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
+#: engines/scumm/dialogs.cpp:201
+msgid "Game title)"
msgstr ""
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
+#. I18N: Previous page button
+#: engines/scumm/dialogs.cpp:287
+msgid "~P~revious"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
+#. I18N: Next page button
+#: engines/scumm/dialogs.cpp:289
+msgid "~N~ext"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
+#: engines/scumm/dialogs.cpp:597
+msgid "Speech Only"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
+#: engines/scumm/dialogs.cpp:598
+msgid "Speech and Subtitles"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
+#: engines/scumm/dialogs.cpp:599
+msgid "Subtitles Only"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
+#: engines/scumm/dialogs.cpp:607
+msgctxt "lowres"
+msgid "Speech & Subs"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
+#: engines/scumm/dialogs.cpp:653
+msgid "Select a Proficiency Level."
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
+#: engines/scumm/dialogs.cpp:655
+msgid "Refer to your Loom(TM) manual for help."
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
+#: engines/scumm/dialogs.cpp:659
+msgid "Practice"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
+#: engines/scumm/dialogs.cpp:660
+msgid "Expert"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
+#: engines/scumm/help.cpp:73
+msgid "Common keyboard commands:"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
+#: engines/scumm/help.cpp:74
+msgid "Save / Load dialog"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
+#: engines/scumm/help.cpp:76
+msgid "Skip line of text"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
+#: engines/scumm/help.cpp:77
+msgid "Esc"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
+#: engines/scumm/help.cpp:77
+msgid "Skip cutscene"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
+#: engines/scumm/help.cpp:78
+msgid "Space"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
+#: engines/scumm/help.cpp:78
+msgid "Pause game"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
+#: engines/scumm/help.cpp:79 engines/scumm/help.cpp:84
+#: engines/scumm/help.cpp:95 engines/scumm/help.cpp:96
+#: engines/scumm/help.cpp:97 engines/scumm/help.cpp:98
+#: engines/scumm/help.cpp:99 engines/scumm/help.cpp:100
+#: engines/scumm/help.cpp:101 engines/scumm/help.cpp:102
+msgid "Ctrl"
msgstr ""
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
+#: engines/scumm/help.cpp:79
+msgid "Load game state 1-10"
msgstr ""
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
+#: engines/scumm/help.cpp:80 engines/scumm/help.cpp:84
+#: engines/scumm/help.cpp:86 engines/scumm/help.cpp:100
+#: engines/scumm/help.cpp:101 engines/scumm/help.cpp:102
+msgid "Alt"
msgstr ""
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
+#: engines/scumm/help.cpp:80
+msgid "Save game state 1-10"
msgstr ""
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
+#: engines/scumm/help.cpp:86 engines/scumm/help.cpp:89
+msgid "Enter"
msgstr ""
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
+#: engines/scumm/help.cpp:86
+msgid "Toggle fullscreen"
msgstr ""
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
+#: engines/scumm/help.cpp:87
+msgid "Music volume up / down"
msgstr ""
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
+#: engines/scumm/help.cpp:88
+msgid "Text speed slower / faster"
msgstr ""
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
+#: engines/scumm/help.cpp:89
+msgid "Simulate left mouse button"
msgstr ""
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
+#: engines/scumm/help.cpp:90
+msgid "Tab"
msgstr ""
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
+#: engines/scumm/help.cpp:90
+msgid "Simulate right mouse button"
msgstr ""
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
+#: engines/scumm/help.cpp:93
+msgid "Special keyboard commands:"
msgstr ""
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
+#: engines/scumm/help.cpp:94
+msgid "Show / Hide console"
msgstr ""
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
+#: engines/scumm/help.cpp:95
+msgid "Start the debugger"
msgstr ""
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
+#: engines/scumm/help.cpp:96
+msgid "Show memory consumption"
msgstr ""
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
+#: engines/scumm/help.cpp:97
+msgid "Run in fast mode (*)"
msgstr ""
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
+#: engines/scumm/help.cpp:98
+msgid "Run in really fast mode (*)"
msgstr ""
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
+#: engines/scumm/help.cpp:99
+msgid "Toggle mouse capture"
msgstr ""
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
+#: engines/scumm/help.cpp:100
+msgid "Switch between graphics filters"
msgstr ""
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
+#: engines/scumm/help.cpp:101
+msgid "Increase / Decrease scale factor"
msgstr ""
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
+#: engines/scumm/help.cpp:102
+msgid "Toggle aspect-ratio correction"
msgstr ""
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
+#: engines/scumm/help.cpp:107
+msgid "* Note that using ctrl-f and"
msgstr ""
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
+#: engines/scumm/help.cpp:108
+msgid " ctrl-g are not recommended"
msgstr ""
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
+#: engines/scumm/help.cpp:109
+msgid " since they may cause crashes"
msgstr ""
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
+#: engines/scumm/help.cpp:110
+msgid " or incorrect game behavior."
msgstr ""
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
+#: engines/scumm/help.cpp:114
+msgid "Spinning drafts on the keyboard:"
msgstr ""
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
+#: engines/scumm/help.cpp:116
+msgid "Main game controls:"
msgstr ""
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
+#: engines/scumm/help.cpp:121 engines/scumm/help.cpp:136
+#: engines/scumm/help.cpp:161
+msgid "Push"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
+#: engines/scumm/help.cpp:122 engines/scumm/help.cpp:137
+#: engines/scumm/help.cpp:162
+msgid "Pull"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
+#: engines/scumm/help.cpp:123 engines/scumm/help.cpp:138
+#: engines/scumm/help.cpp:163 engines/scumm/help.cpp:197
+#: engines/scumm/help.cpp:207
+msgid "Give"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
+#: engines/scumm/help.cpp:124 engines/scumm/help.cpp:139
+#: engines/scumm/help.cpp:164 engines/scumm/help.cpp:190
+#: engines/scumm/help.cpp:208
+msgid "Open"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
+#: engines/scumm/help.cpp:126
+msgid "Go to"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
+#: engines/scumm/help.cpp:127
+msgid "Get"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
+#: engines/scumm/help.cpp:128 engines/scumm/help.cpp:152
+#: engines/scumm/help.cpp:170 engines/scumm/help.cpp:198
+#: engines/scumm/help.cpp:213 engines/scumm/help.cpp:224
+#: engines/scumm/help.cpp:250
+msgid "Use"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
+#: engines/scumm/help.cpp:129 engines/scumm/help.cpp:141
+msgid "Read"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
+#: engines/scumm/help.cpp:130 engines/scumm/help.cpp:147
+msgid "New kid"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
+#: engines/scumm/help.cpp:131 engines/scumm/help.cpp:153
+#: engines/scumm/help.cpp:171
+msgid "Turn on"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
+#: engines/scumm/help.cpp:132 engines/scumm/help.cpp:154
+#: engines/scumm/help.cpp:172
+msgid "Turn off"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
+#: engines/scumm/help.cpp:142 engines/scumm/help.cpp:167
+#: engines/scumm/help.cpp:194
+msgid "Walk to"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
+#: engines/scumm/help.cpp:143 engines/scumm/help.cpp:168
+#: engines/scumm/help.cpp:195 engines/scumm/help.cpp:210
+#: engines/scumm/help.cpp:227
+msgid "Pick up"
msgstr ""
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
+#: engines/scumm/help.cpp:144 engines/scumm/help.cpp:169
+msgid "What is"
msgstr ""
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
+#: engines/scumm/help.cpp:146
+msgid "Unlock"
msgstr ""
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
+#: engines/scumm/help.cpp:149
+msgid "Put on"
msgstr ""
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
+#: engines/scumm/help.cpp:150
+msgid "Take off"
msgstr ""
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
+#: engines/scumm/help.cpp:156
+msgid "Fix"
msgstr ""
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
+#: engines/scumm/help.cpp:158
+msgid "Switch"
msgstr ""
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
+#: engines/scumm/help.cpp:166 engines/scumm/help.cpp:228
+msgid "Look"
msgstr ""
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
+#: engines/scumm/help.cpp:173 engines/scumm/help.cpp:223
+msgid "Talk"
msgstr ""
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
+#: engines/scumm/help.cpp:174
+msgid "Travel"
msgstr ""
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
+#: engines/scumm/help.cpp:175
+msgid "To Henry / To Indy"
msgstr ""
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
+#. I18N: These are different musical notes
+#: engines/scumm/help.cpp:179
+msgid "play C minor on distaff"
msgstr ""
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
+#: engines/scumm/help.cpp:180
+msgid "play D on distaff"
msgstr ""
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
+#: engines/scumm/help.cpp:181
+msgid "play E on distaff"
msgstr ""
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
+#: engines/scumm/help.cpp:182
+msgid "play F on distaff"
msgstr ""
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
+#: engines/scumm/help.cpp:183
+msgid "play G on distaff"
msgstr ""
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
+#: engines/scumm/help.cpp:184
+msgid "play A on distaff"
msgstr ""
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
+#: engines/scumm/help.cpp:185
+msgid "play B on distaff"
msgstr ""
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
+#: engines/scumm/help.cpp:186
+msgid "play C major on distaff"
msgstr ""
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
+#: engines/scumm/help.cpp:192 engines/scumm/help.cpp:214
+msgid "puSh"
msgstr ""
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
+#: engines/scumm/help.cpp:193 engines/scumm/help.cpp:215
+msgid "pull (Yank)"
msgstr ""
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
+#: engines/scumm/help.cpp:196 engines/scumm/help.cpp:212
+#: engines/scumm/help.cpp:248
+msgid "Talk to"
msgstr ""
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
+#: engines/scumm/help.cpp:199 engines/scumm/help.cpp:211
+msgid "Look at"
msgstr ""
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
+#: engines/scumm/help.cpp:200
+msgid "turn oN"
msgstr ""
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
+#: engines/scumm/help.cpp:201
+msgid "turn oFf"
msgstr ""
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
+#: engines/scumm/help.cpp:217
+msgid "KeyUp"
msgstr ""
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
+#: engines/scumm/help.cpp:217
+msgid "Highlight prev dialogue"
msgstr ""
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
+#: engines/scumm/help.cpp:218
+msgid "KeyDown"
msgstr ""
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
+#: engines/scumm/help.cpp:218
+msgid "Highlight next dialogue"
msgstr ""
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
+#: engines/scumm/help.cpp:222
+msgid "Walk"
msgstr ""
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
+#: engines/scumm/help.cpp:225 engines/scumm/help.cpp:234
+#: engines/scumm/help.cpp:241 engines/scumm/help.cpp:249
+msgid "Inventory"
msgstr ""
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
+#: engines/scumm/help.cpp:226
+msgid "Object"
msgstr ""
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
+#: engines/scumm/help.cpp:229
+msgid "Black and White / Color"
msgstr ""
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
+#: engines/scumm/help.cpp:232
+msgid "Eyes"
msgstr ""
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
+#: engines/scumm/help.cpp:233
+msgid "Tongue"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
+#: engines/scumm/help.cpp:235
+msgid "Punch"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
+#: engines/scumm/help.cpp:236
+msgid "Kick"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
+#: engines/scumm/help.cpp:239 engines/scumm/help.cpp:247
+msgid "Examine"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
+#: engines/scumm/help.cpp:240
+msgid "Regular cursor"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
+#. I18N: Comm is a communication device
+#: engines/scumm/help.cpp:243
+msgid "Comm"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
+#: engines/scumm/help.cpp:246
+msgid "Save / Load / Options"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
+#: engines/scumm/help.cpp:255
+msgid "Other game controls:"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
+#: engines/scumm/help.cpp:257 engines/scumm/help.cpp:267
+msgid "Inventory:"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
+#: engines/scumm/help.cpp:258 engines/scumm/help.cpp:274
+msgid "Scroll list up"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
+#: engines/scumm/help.cpp:259 engines/scumm/help.cpp:275
+msgid "Scroll list down"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
+#: engines/scumm/help.cpp:260 engines/scumm/help.cpp:268
+msgid "Upper left item"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
+#: engines/scumm/help.cpp:261 engines/scumm/help.cpp:270
+msgid "Lower left item"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
+#: engines/scumm/help.cpp:262 engines/scumm/help.cpp:271
+msgid "Upper right item"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
+#: engines/scumm/help.cpp:263 engines/scumm/help.cpp:273
+msgid "Lower right item"
msgstr ""
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
+#: engines/scumm/help.cpp:269
+msgid "Middle left item"
msgstr ""
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
+#: engines/scumm/help.cpp:272
+msgid "Middle right item"
msgstr ""
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
+#: engines/scumm/help.cpp:279 engines/scumm/help.cpp:284
+msgid "Switching characters:"
msgstr ""
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
+#: engines/scumm/help.cpp:281
+msgid "Second kid"
msgstr ""
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
+#: engines/scumm/help.cpp:282
+msgid "Third kid"
msgstr ""
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
+#: engines/scumm/help.cpp:294
+msgid "Fighting controls (numpad):"
msgstr ""
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
+#: engines/scumm/help.cpp:295 engines/scumm/help.cpp:296
+#: engines/scumm/help.cpp:297
+msgid "Step back"
msgstr ""
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
+#: engines/scumm/help.cpp:298
+msgid "Block high"
msgstr ""
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
+#: engines/scumm/help.cpp:299
+msgid "Block middle"
msgstr ""
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
+#: engines/scumm/help.cpp:300
+msgid "Block low"
msgstr ""
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
+#: engines/scumm/help.cpp:301
+msgid "Punch high"
msgstr ""
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
+#: engines/scumm/help.cpp:302
+msgid "Punch middle"
+msgstr ""
+
+#: engines/scumm/help.cpp:303
+msgid "Punch low"
+msgstr ""
+
+#: engines/scumm/help.cpp:306
+msgid "These are for Indy on left."
+msgstr ""
+
+#: engines/scumm/help.cpp:307
+msgid "When Indy is on the right,"
+msgstr ""
+
+#: engines/scumm/help.cpp:308
+msgid "7, 4, and 1 are switched with"
+msgstr ""
+
+#: engines/scumm/help.cpp:309
+msgid "9, 6, and 3, respectively."
+msgstr ""
+
+#: engines/scumm/help.cpp:316
+msgid "Biplane controls (numpad):"
+msgstr ""
+
+#: engines/scumm/help.cpp:317
+msgid "Fly to upper left"
+msgstr ""
+
+#: engines/scumm/help.cpp:318
+msgid "Fly to left"
+msgstr ""
+
+#: engines/scumm/help.cpp:319
+msgid "Fly to lower left"
+msgstr ""
+
+#: engines/scumm/help.cpp:320
+msgid "Fly upwards"
+msgstr ""
+
+#: engines/scumm/help.cpp:321
+msgid "Fly straight"
+msgstr ""
+
+#: engines/scumm/help.cpp:322
+msgid "Fly down"
+msgstr ""
+
+#: engines/scumm/help.cpp:323
+msgid "Fly to upper right"
+msgstr ""
+
+#: engines/scumm/help.cpp:324
+msgid "Fly to right"
+msgstr ""
+
+#: engines/scumm/help.cpp:325
+msgid "Fly to lower right"
msgstr ""
-#: backends/platform/wince/wince-sdl.cpp:552
+#: engines/scumm/scumm.cpp:1777
+#, c-format
msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
+"but %s is missing. Using AdLib instead."
msgstr ""
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
+#: engines/scumm/scumm.cpp:2547
+msgid ""
+"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
+"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
+"directory inside the Tentacle game directory."
msgstr ""
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
+#: engines/sky/compact.cpp:130
+msgid ""
+"Unable to find \"sky.cpt\" file!\n"
+"Please download it from www.scummvm.org"
msgstr ""
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
+#: engines/sky/compact.cpp:141
+msgid ""
+"The \"sky.cpt\" file has an incorrect size.\n"
+"Please (re)download it from www.scummvm.org"
msgstr ""
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
+#: engines/sky/detection.cpp:44
+msgid "Floppy intro"
msgstr ""
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
+#: engines/sky/detection.cpp:45
+msgid "Use the floppy version's intro (CD version only)"
msgstr ""
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+#: engines/sword1/animation.cpp:524
+#, c-format
+msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr ""
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
+msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr ""
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
+#: engines/sword1/animation.cpp:561
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
msgstr ""
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
+#, c-format
+msgid "Cutscene '%s' not found"
msgstr ""
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
+#: engines/sword1/control.cpp:863
+msgid ""
+"ScummVM found that you have old savefiles for Broken Sword 1 that should be "
+"converted.\n"
+"The old save game format is no longer supported, so you will not be able to "
+"load your games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked again the next "
+"time you start the game.\n"
msgstr ""
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+#: engines/sword1/control.cpp:1232
+#, c-format
+msgid ""
+"Target new save game already exists!\n"
+"Would you like to keep the old save game (%s) or the new one (%s)?\n"
msgstr ""
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
+#: engines/sword1/control.cpp:1235
+msgid "Keep the old one"
msgstr ""
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
+#: engines/sword1/control.cpp:1235
+msgid "Keep the new one"
msgstr ""
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
+#: engines/sword1/logic.cpp:1633
+msgid "This is the end of the Broken Sword 1 Demo"
msgstr ""
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
+#: engines/sword2/animation.cpp:425
+msgid ""
+"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr ""
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
+#: engines/sword2/animation.cpp:461
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
msgstr ""
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
+#: engines/sword2/sword2.cpp:79
+msgid "Show object labels"
msgstr ""
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
+#: engines/sword2/sword2.cpp:80
+msgid "Show labels for objects on mouse hover"
msgstr ""
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
+#: engines/teenagent/resources.cpp:94
+msgid ""
+"You're missing the 'teenagent.dat' file. Get it from the ScummVM website"
msgstr ""
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
+#: engines/teenagent/resources.cpp:115
+msgid ""
+"The teenagent.dat file is compressed and zlib hasn't been included in this "
+"executable. Please decompress it"
msgstr ""
diff --git a/po/se_SE.po b/po/se_SE.po
index eaff1de836..1595be0fda 100644
--- a/po/se_SE.po
+++ b/po/se_SE.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.5.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-05-13 21:30+0100\n"
"Last-Translator: Hampus Flink <hampus.flink@gmail.com>\n"
"Language-Team: \n"
@@ -54,15 +54,15 @@ msgid "Go up"
msgstr "Uppхt"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Avbryt"
@@ -70,26 +70,26 @@ msgstr "Avbryt"
msgid "Choose"
msgstr "Vфlj"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Stфng"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Musklick"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Visa tangentbord"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Stфll in tangenter"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Fullskфrmslфge"
@@ -101,21 +101,21 @@ msgstr "Vфlj en handling att stфlla in"
msgid "Map"
msgstr "Stфll in"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -141,15 +141,15 @@ msgstr "Var god vфlj en handling"
msgid "Press the key to associate"
msgstr "Tryck pх en tangent fіr att stфlla in"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Spel"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -157,29 +157,29 @@ msgstr ""
"Kortnamn fіr spel. Anvфnds fіr att hфnvisa till spardata och att starta "
"spelet frхn kommandoraden"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Namn:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Spelets fullstфndiga titel"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Namn:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Sprхk:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -187,150 +187,150 @@ msgstr ""
"Spelets sprхk. Den hфr instфllningen omvandlar inte din spanska spelversion "
"till en engelsk"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<standard>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Plattform:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Plattformen spelet ursprungligen tillverkades fіr"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Plattform:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Motor"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Grafik"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "GFX"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "жverskrid globala grafikinstфllningar"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "жverskrid globala grafikinstфllningar"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Ljud"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "жverskrid globala ljudinstфllningar"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "жverskrid globala ljudinstфllningar"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Volym"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Volym"
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "жverskrid globala volyminstфllningar"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "жverskrid globala volyminstфllningar"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "жverskrid globala MIDI-instфllningar"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "жverskrid globala MIDI-instфllningar"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "жverskrid globala MT-32 instфllningar"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "жverskrid globala MT-32 instфllningar"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Sіkvфgar"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Sіkvфgar"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Sіkv. spel:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Sіkv. spel:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Sіkv. extra:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Bestфmmer sіkvфgen till ytterligare data som spelet anvфnder"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Sіkv. extra:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Sіkv. sparat:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Bestфmmer var dina spardata lagras"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Sіkv. sparat:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -339,134 +339,135 @@ msgctxt "path"
msgid "None"
msgstr "Ingen"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "Standard"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Vфlj SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Vфlj katalog med speldata"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Vфlj en ytterligare spelkatalog"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Vфlj katalog fіr spardata"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Detta ID-namn фr upptaget. Var god vфlj ett annat."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~A~vsluta"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Avsluta ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "O~m~..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Om ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~I~nstфllningar..."
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Redigera globala ScummVM-instфllningar"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "~S~tarta"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Starta det valda spelet"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~L~adda..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Ladda spardata fіr det valda spelet"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "Lф~g~g till spel..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Hхll ned Skift fіr masstillфgg"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "R~e~digera spel..."
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Redigera spelinstфllningarna"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~R~adera spel"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Radera spelet frхn listan. Spelets datafiler pхverkas inte."
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "Lф~g~g till spel..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "R~e~digera spel..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~R~adera spel"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Sіk i spellistan"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Sіk:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Ladda spel:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Ladda"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -474,7 +475,8 @@ msgstr ""
"Vill du verkligen anvфnda mass-speldetektorn? Processen kan potentiellt "
"lфgga till ett enormt antal spel."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -482,7 +484,8 @@ msgstr ""
msgid "Yes"
msgstr "Ja"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -490,40 +493,36 @@ msgstr "Ja"
msgid "No"
msgstr "Nej"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM kunde inte іppna den valda katalogen!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM kunde inte hitta nхgra spel i den valda katalogen!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Vфlj spel:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Vill du verkligen radera den hфr spelkonfigurationen?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Vill du ladda eller spara spelet?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Det hфr spelet stіder inte laddning av spardata frхn launchern."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr ""
"ScummVM kunde inte hitta en motor kapabel till att kіra det valda spelet!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Masstillфgg..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Masstillфgg..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... progression ..."
@@ -622,8 +621,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Speciella gitterlфgen stіdda av vissa spel"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Fullskфrmslфge"
@@ -753,13 +751,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Фkta Roland MT-32 (ingen GM-emulation)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Roland GS-lфge (avaktivera GM-mapping)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Stфnger av General MIDI-kartlфggning fіr spel med Roland MT-32 soundtrack"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -949,15 +949,15 @@ msgstr "Visa som lista"
msgid "Grid view"
msgstr "Visa som rutnфt"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Inget datum sparat"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Ingen tid sparad"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Ingen speltid sparad"
@@ -969,43 +969,43 @@ msgstr "Radera"
msgid "Do you really want to delete this savegame?"
msgstr "Vill du verkligen radera den hфr spardatan?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Datum:"
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Tid:"
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Speltid:"
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Namnlіs spardata"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Nфsta"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Bakхt"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Ny sparning"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Skapa ett nytt sparat spel"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Namn:"
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Ange en beskrivning fіr position %d:"
@@ -1014,29 +1014,32 @@ msgstr "Ange en beskrivning fіr position %d:"
msgid "Select a Theme"
msgstr "Vфlj ett tema"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Inaktiverad GFX"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Inaktiverad GFX"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Standard rendering (16 bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Standard (16 bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Standard"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Antialiserad rendering (16 bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Antialiserad (16 bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1131,35 +1134,35 @@ msgstr ""
"Vill du verkligen хterstфlla alla FluidSynth-instфllningar till deras "
"ursprungliga vфrden?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Motorn stіder inte debug-nivх '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Meny"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Skippa"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Paus"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Skippa rad"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Fel under kіrning av spel:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Kunde inte hitta en motor kapabel till att kіra det valda spelet"
@@ -1227,17 +1230,17 @@ msgstr "Avbrutit av anvфndaren"
msgid "Unknown error"
msgstr "Okфnt fel"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Spelet i '%s' verkar vara okфnt."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr ""
"Var god rapportera fіljande data till ScummVM-teamet tillsammans med namnet"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "pх spelet du fіrsіkte lфgga till och dess version/sprхk/etc.:"
@@ -1275,21 +1278,21 @@ msgid "~R~eturn to Launcher"
msgstr "Хte~r~vфnd till launcher"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Spara spelet:"
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Spara"
@@ -1326,23 +1329,23 @@ msgstr "A~v~bryt"
msgid "~K~eys"
msgstr "~T~angenter"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Kunde inte initialisera fфrgformat."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Kunde inte byta till videolфget: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Kunde inte фndra instфllningen fіr bildfіrhхllanden."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Kunde inte applicera fullskфrmsinstфllning."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1356,7 +1359,7 @@ msgstr ""
"datafilerna till din hхrddisk istфllet.\n"
"Se README-filen fіr detaljer."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1370,7 +1373,7 @@ msgstr ""
"fіr att kunna lyssna pх spelets musik.\n"
"Se README-filen fіr detaljer."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1379,7 +1382,7 @@ msgstr ""
"Kunde inte ladda spardata (%s)! Hфnvisa till README-filen fіr grundlфggande "
"information och instruktioner fіr ytterligare assistans."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1389,33 +1392,761 @@ msgstr ""
"ScummVM. Dфrfіr фr det troligtvis instabilt och om du skapar spardata kan de "
"mіjligtvis vara inkompatibla med framtida versioner av ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Starta фndх"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "MAME OPL-emulator"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "DOSBox OPL-emulator"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Den valda ljudenheten '%s' kunde inte hittas (mіjligtvis avstфngd eller "
+"frхnkopplad)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Fіrsіker anvфnda nфsta tillgфngliga ljudenhet..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Den valda ljudenheten '%s' kan inte anvфndas. Se loggfilen fіr mer "
+"information."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Den fіredragna ljudenheten '%s' kunde inte hittas (mіjligtvis avstфngd eller "
+"frхnkopplad)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Den fіredragna ljudenheten '%s' kan inte anvфndas. Se loggfilen fіr mer "
+"information."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Ingen musik"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Amiga ljudemulator"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "AdLib-emulator"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS-emulator (INTE IMPLEMENTERAD)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64 ljudemulator"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Initialiserar MT-32 emulator"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "MT-32 emulator"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "PC Speaker-emulator"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "IBM PCjr-emulator"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Tangenter:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr "(Effektiv)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr "(Aktiv)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr "(Blockerad)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr "(Global)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr "(Spel)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~S~tфng"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "ScummVM huvudmeny"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "~V~фnsterhфnt lфge"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "~I~ndy slagsmхlskontroller"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Visa muspekare"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Lфgg till kant"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Gх till X-position"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Gх till Y-position"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Anvфnd bфrbar trackpad-stil fіr pekarkontroll"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Tappa fіr vфnsterklick, dubbel-tappa fіr hіgerklick"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Kфnslighet"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Standardskala fіr іvre skфrm:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Skalning huvudskфrm:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Hхrdvaruskalning (snabbt, men lхg kvalitet)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Mjukvaruskalning (bra kvalitet, men lхngsamt)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Oskalat (du mхste blфddra till vфnster och hіger)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Ljusstyrka:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Hіg ljudkvalitet (lхngsammare) (omstart)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Inaktivera strіmsparning"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Dra-och-slфpp-lфge med mus aktiverat."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Dra-och-slфpp-lфge med mus deaktiverat."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Touchpad-lфge aktiverat."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Touchpad-lфge inaktiverat."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Klicklфge"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Vфnsterklick"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Mittenklick"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Hіgerklick"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Gіm ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Gіm іvriga"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Visa alla"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Fіnster"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Minimera"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Normalt (ingen skalning)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Normalt (ingen skalning)"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Korrektion av bildfіrhхllande pх"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Korrektion av bildfіrhхllande av"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Aktivt grafikfilter:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Fіnsterlфge"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "жppna"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Upp"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Ned"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Vфnster"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Hіger"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Zon"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Multifunktion"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Byt karaktфr"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Skippa text"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Snabblфge"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Avsluta"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Debug-konsol"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Global meny"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Virtuellt tangentbord"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Tangentinst."
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Vill du avsluta?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Video"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Aktivt videolфge:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Ej sammanflфtad"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Vхgrфt underskanning:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Lodrфt underskanning:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Ingхng"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "GC Pad kфnslighet:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "GC Pad acceleration:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Status:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Okфnd"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Montera DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Mata ut DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Server:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Delad:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Anv. namn:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Lіsenord:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Init. nфtverk"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Montera SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Mata ut SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "Montering av DVD lyckades"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Fel vid montering av DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD ej monterad"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Nфtverk aktivt, delade kataloger monterade"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Nфtverk aktivt"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", fel under montering av delade kataloger"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", delade kataloger ej monterade"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Nфtverk inaktivt"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Initialiserar nфtverk"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Timeout under initialisering av nфtverk"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Nфtverk ej initialiserat (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Gіm verktygsrad"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Visa tangentbord"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Ljud av/pх"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Hіgerklick"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Gіm/visa pekare"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Frititt"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Zooma upp"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Zooma ned"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Fіrbind tangenter"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Pekare upp"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Pekare ned"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Pekare vфnster"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Pekare hіger"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Vill du ladda eller spara spelet?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr "Фr du sфker pх att du vill avsluta?"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Tangentbord"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Rotera"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Anvфnd SDL-driver"
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Skфrm"
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Vill du utfіra en automatisk scan?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Stфll in hіgerklick"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr ""
+"Du mхste vфlja en tangent fіr \"Hіgerklick\" fіr att spela det hфr spelet"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Stфll in gіm verktygsrad"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Du mхste vфlja en tangent fіr \"Gіm verktygsrad\" fіr att spela det hфr "
+"spelet"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Stфll in Zooma up (valfritt)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Stфll in Zooma ned (valfritt)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Glіm inte att vфlja en tangent fіr \"Gіm verktygsrad\" fіr att se hela "
+"inventariet"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Vill du verkligen хtergх till launchern?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Launcher"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Vill du verkligen avsluta?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Touchscreen \"Tap-lфge\" - Vфnsterklick"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Touchscren \"Tap-lфge\" - Hіgerklick"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Touchscreen \"Tap-lфge\" - Hover (utan klick)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Max. volym"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Hіja volymen"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Min. volym"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Sфnka volymen"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Touchscreen 'Tap-lфge' - Hover (DPad klick)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Sіk efter uppdateringar..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Ett hіgerklick"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Endast rіrelse"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Escape-tangenten"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Spelmeny"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Visa tangentbord"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Kontrollera musen"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Klickning aktiverad"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Klickning deaktiverad"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Anvфnd originalskфrmar fіr spara/ladda"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr "Anvфnder originalskфrmarna fіr spara/ladda istфllet fіr ScummVM:s"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Хterstфll spel:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Хterstфll"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Kunde inte lфsa spardata frхn filen:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Kunde inte skriva spardata till filen:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Sparade framgхngsrikt spardata i filen:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Filmscensfilen '%s' hittades ej!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1441,27 +2172,304 @@ msgstr "Anvфnd ljus palett-lфge"
msgid "Display graphics using the game's bright palette"
msgstr "Visa grafik med spelets ljusa palett"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Kunde inte lфsa spardata frхn filen"
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Kunde inte skriva spardata till filen."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Kunde inte radera filen."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Snabb filmhastighet"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Spela filmer i hіgre hastighet"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Kunde inte spara spelet."
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Studiopublik"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Aktivera studiopublik"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Skipp-stіd"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Tillхter skippning av text och filmscener"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Helium-lфge"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Aktivera heliumlфge"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Mjuk rullning"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Aktivera mjuk skфrmrullning vid gхngfart"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Flytande pekare"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Aktivera flytande pekare"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Livmфtare"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Aktivera livmфtare"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Attack 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Attack 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Attack 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Steg framхt"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Steg bakхt"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Glid vфnster"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Glid hіger"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Svфng vфnster"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Svфng hіger"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Vila"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Instфllningar"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Vфlj trollformel"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Du verkar anvфnda en General MIDI-enhet,\n"
+"men ditt spel stіder endast Roland MT32 MIDI.\n"
+"Vi fіrsіker kartlфgga Roland MT32-instrumenten till\n"
+"General MIDI-instrument. Det kan trots allt hфnda\n"
+"att ett fхtal ljudspхr inte spelas korrekt."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "~Z~iplфge aktiverat"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "жv~e~rgхngar aktiverade"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Slфpp si~d~a"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "~V~isa karta"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Huvud~m~eny"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "~V~atteneffekt aktiverad"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Kan inte spara data i position %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Laddar speldata..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Sparar speldata..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM upptфckte att du har gamla spardata fіr Nippon Safes som borde byta "
+"namn.\n"
+"De gamla filnamnen stіds inte lфngre, sх du kommer inte kunna ladda dina "
+"data om du inte konverterar dem.\n"
+"\n"
+"Tryck \"OK\" fіr att konvertera dem nu, annars kommer du tillfrхgas igen "
+"nфsta gхng du startar spelet.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM lyckades konvertera alla dina spardata."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM skrev ut nхgra varningar i ditt konsolfіnster och kan inte garantera "
+"att alla dina filer har konverterats.\n"
+"\n"
+"Var god rapportera till teamet."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Ogiltigt namn pх sparfil"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Upp/Zooma in/Gх framхt/жppna dіrrar"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Ned/Zooma ut"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Visa/dіlj inventarium"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Visa/dіlj biochip"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Handling/Vфlj"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Aktivera centrerad dataskфrm"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Visa/dіlj informationsskфrm"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Visa/dіlj pausmeny"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA anti-gitter"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Aktivera anti-gitter i EGA-spel"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Fіredra digitala ljudeffekter"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Fіredra digitala ljudeffekter istфllet fіr syntetiserade"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Anvфnd IMF/Yamaha FB-01 fіr MIDI-uppspelning"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1469,29 +2477,29 @@ msgstr ""
"Anvфnd ett IMB Music Feature-kort eller en Yamaha FB-01 FM synthmodul fіr "
"MIDI-uppspelning"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Anvфnd CD-ljud"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "Anvфnd CD-ljud istфllet fіr spelets ljud, om tillgфngligt"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Anvфnd Windows muspekare"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr ""
"Anvфnd Windows muspekare (mindre och svartvit) istфllet fіr DOS-pekaren"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Anvфnd silverpekare"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1532,15 +2540,6 @@ msgstr "Фr du sфker pх att du vill avsluta? (J/N)J"
msgid "Play"
msgstr "Spela"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Avsluta"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Mata in skiva fіr spardata"
@@ -1589,11 +2588,6 @@ msgstr "~F~іregхende"
msgid "~N~ext"
msgstr "~N~фsta"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~S~tфng"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Endast tal"
@@ -1619,10 +2613,6 @@ msgstr "Vфlj en skicklighetsnivх."
msgid "Refer to your Loom(TM) manual for help."
msgstr "Hфnvisa till din Loom(TM)-manual fіr hjфlp."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Standard"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "жvning"
@@ -2144,7 +3134,7 @@ msgstr "Flyg хt hіger"
msgid "Fly to lower right"
msgstr "Flyg хt nedre hіger"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2153,40 +3143,7 @@ msgstr ""
"Stіd fіr Native MIDI krфver Roland-uppdateringen frхn LucasArts,\n"
"men %s saknas. Anvфnder AdLib istфllet."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Kunde inte skriva spardata till filen:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Kunde inte lфsa spardata frхn filen:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Sparade framgхngsrikt spardata i filen:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2196,190 +3153,6 @@ msgstr ""
"фn. Fіr att spela spelet, gх till \"Lфgg till spel\" i ScummVM:s huvudmeny "
"och vфlj \"Maniac\"-katalogen inuti \"Tentacle\" katalogen."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "~Z~iplфge aktiverat"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "жv~e~rgхngar aktiverade"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Slфpp si~d~a"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "~V~isa karta"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Huvud~m~eny"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "~V~atteneffekt aktiverad"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Filmscensfilen '%s' hittades ej!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Kunde inte lфsa spardata frхn filen"
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Kunde inte skriva spardata till filen."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Kunde inte radera filen."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Snabb filmhastighet"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Spela filmer i hіgre hastighet"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Kunde inte spara spelet."
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Studiopublik"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Aktivera studiopublik"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Skipp-stіd"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Tillхter skippning av text och filmscener"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Helium-lфge"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Aktivera heliumlфge"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Mjuk rullning"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Aktivera mjuk skфrmrullning vid gхngfart"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Flytande pekare"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Aktivera flytande pekare"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Livmфtare"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Aktivera livmфtare"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Attack 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Attack 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Attack 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Steg framхt"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Steg bakхt"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Glid vфnster"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Glid hіger"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Svфng vфnster"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Svфng hіger"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Vila"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Instфllningar"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Vфlj trollformel"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Du verkar anvфnda en General MIDI-enhet,\n"
-"men ditt spel stіder endast Roland MT32 MIDI.\n"
-"Vi fіrsіker kartlфgga Roland MT32-instrumenten till\n"
-"General MIDI-instrument. Det kan trots allt hфnda\n"
-"att ett fхtal ljudspхr inte spelas korrekt."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Alternativt intro"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Anvфnd alternativt spelintro (endast CD-version)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2404,20 +3177,21 @@ msgstr "Diskettintro"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Anvфnd diskettversionens intro (endast CD-version)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr "PSX-filmscenen '%s' kan inte visas i palettlфget"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr "DXA filmscener hittades men ScummVM har byggts utan stіd fіr zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "MPEG2 filmscener stіds inte lфngre"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr "PSX-filmscener hittades men ScummVM har byggts utan stіd fіr RGB-fфrg"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Filmscenen '%s' hittades ej"
@@ -2461,11 +3235,17 @@ msgstr "Behхll den nya"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "Hфr slutar Broken Sword 1 demon"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr "PSX-filmscener hittades men ScummVM har byggts utan stіd fіr RGB-fфrg"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr "DXA filmscener hittades men ScummVM har byggts utan stіd fіr zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Visa etiketter"
@@ -2487,791 +3267,50 @@ msgstr ""
"Teenagent.dat-filen фr komprimerad och zlib har inte inkluderats i det hфr "
"programmet. Var god dekomprimera den"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Kan inte spara data i position %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Laddar speldata..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Sparar speldata..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM upptфckte att du har gamla spardata fіr Nippon Safes som borde byta "
-"namn.\n"
-"De gamla filnamnen stіds inte lфngre, sх du kommer inte kunna ladda dina "
-"data om du inte konverterar dem.\n"
-"\n"
-"Tryck \"OK\" fіr att konvertera dem nu, annars kommer du tillfrхgas igen "
-"nфsta gхng du startar spelet.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM lyckades konvertera alla dina spardata."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM skrev ut nхgra varningar i ditt konsolfіnster och kan inte garantera "
-"att alla dina filer har konverterats.\n"
-"\n"
-"Var god rapportera till teamet."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Ogiltigt namn pх sparfil"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Upp/Zooma in/Gх framхt/жppna dіrrar"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Ned/Zooma ut"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Visa/dіlj inventarium"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Visa/dіlj biochip"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Handling/Vфlj"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Aktivera centrerad dataskфrm"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Visa/dіlj informationsskфrm"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Visa/dіlj pausmeny"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "MAME OPL-emulator"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "DOSBox OPL-emulator"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Den valda ljudenheten '%s' kunde inte hittas (mіjligtvis avstфngd eller "
-"frхnkopplad)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Fіrsіker anvфnda nфsta tillgфngliga ljudenhet..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Den valda ljudenheten '%s' kan inte anvфndas. Se loggfilen fіr mer "
-"information."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Den fіredragna ljudenheten '%s' kunde inte hittas (mіjligtvis avstфngd eller "
-"frхnkopplad)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Den fіredragna ljudenheten '%s' kan inte anvфndas. Se loggfilen fіr mer "
-"information."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Ingen musik"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Amiga ljudemulator"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "AdLib-emulator"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS-emulator (INTE IMPLEMENTERAD)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64 ljudemulator"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Initialiserar MT-32 emulator"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "MT-32 emulator"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "PC Speaker-emulator"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "IBM PCjr-emulator"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Tangenter:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr "(Effektiv)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr "(Aktiv)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr "(Blockerad)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr "(Global)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr "(Spel)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "ScummVM huvudmeny"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "~V~фnsterhфnt lфge"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "~I~ndy slagsmхlskontroller"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Visa muspekare"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Lфgg till kant"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Gх till X-position"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Gх till Y-position"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Anvфnd bфrbar trackpad-stil fіr pekarkontroll"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Tappa fіr vфnsterklick, dubbel-tappa fіr hіgerklick"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Kфnslighet"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Standardskala fіr іvre skфrm:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Skalning huvudskфrm:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Hхrdvaruskalning (snabbt, men lхg kvalitet)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Mjukvaruskalning (bra kvalitet, men lхngsamt)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Oskalat (du mхste blфddra till vфnster och hіger)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Ljusstyrka:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Hіg ljudkvalitet (lхngsammare) (omstart)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Inaktivera strіmsparning"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Dra-och-slфpp-lфge med mus aktiverat."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Dra-och-slфpp-lфge med mus deaktiverat."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Touchpad-lфge aktiverat."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Touchpad-lфge inaktiverat."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Klicklфge"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Vфnsterklick"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Mittenklick"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Hіgerklick"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Gіm ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Gіm іvriga"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Visa alla"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Fіnster"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Minimera"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Normalt (ingen skalning)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Normalt (ingen skalning)"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Korrektion av bildfіrhхllande pх"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Korrektion av bildfіrhхllande av"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Aktivt grafikfilter:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Fіnsterlфge"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL normal"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL konservation"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL original"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Nuvarande visningslфge"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Nuvarande skala"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Aktivt filterlфge: Linjфrt"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Aktivt filterlфge: Nфrmast"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Upp"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Ned"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Vфnster"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Hіger"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Zon"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Multifunktion"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Byt karaktфr"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Skippa text"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Snabblфge"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Debug-konsol"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Global meny"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Virtuellt tangentbord"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Tangentinst."
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Vill du avsluta?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Video"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Aktivt videolфge:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Ej sammanflфtad"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Vхgrфt underskanning:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Lodrфt underskanning:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Ingхng"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "GC Pad kфnslighet:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "GC Pad acceleration:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Status:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Okфnd"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Montera DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Mata ut DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Server:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Delad:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Anv. namn:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Lіsenord:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Init. nфtverk"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Montera SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Mata ut SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "Montering av DVD lyckades"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Fel vid montering av DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD ej monterad"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Nфtverk aktivt, delade kataloger monterade"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Nфtverk aktivt"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", fel under montering av delade kataloger"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", delade kataloger ej monterade"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Nфtverk inaktivt"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Initialiserar nфtverk"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Timeout under initialisering av nфtverk"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Nфtverk ej initialiserat (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Gіm verktygsrad"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Visa tangentbord"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Ljud av/pх"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Hіgerklick"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Gіm/visa pekare"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Frititt"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Zooma upp"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Zooma ned"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Fіrbind tangenter"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Pekare upp"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Pekare ned"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Pekare vфnster"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Pekare hіger"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Vill du ladda eller spara spelet?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr "Фr du sфker pх att du vill avsluta?"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Tangentbord"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Rotera"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Anvфnd SDL-driver"
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Skфrm"
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Vill du utfіra en automatisk scan?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Stфll in hіgerklick"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr ""
-"Du mхste vфlja en tangent fіr \"Hіgerklick\" fіr att spela det hфr spelet"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Stфll in gіm verktygsrad"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Du mхste vфlja en tangent fіr \"Gіm verktygsrad\" fіr att spela det hфr "
-"spelet"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Stфll in Zooma up (valfritt)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Stфll in Zooma ned (valfritt)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Glіm inte att vфlja en tangent fіr \"Gіm verktygsrad\" fіr att se hela "
-"inventariet"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Vill du verkligen хtergх till launchern?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Launcher"
-
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Vill du verkligen avsluta?"
-
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Touchscreen \"Tap-lфge\" - Vфnsterklick"
-
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Touchscren \"Tap-lфge\" - Hіgerklick"
-
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Touchscreen \"Tap-lфge\" - Hover (utan klick)"
-
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Max. volym"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Masstillфgg..."
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Hіja volymen"
+#~ msgid "Mass Add..."
+#~ msgstr "Masstillфgg..."
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Min. volym"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Stфnger av General MIDI-kartlфggning fіr spel med Roland MT-32 soundtrack"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Sфnka volymen"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Standard (16 bpp)"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Touchscreen 'Tap-lфge' - Hover (DPad klick)"
+#~ msgid "Alternative intro"
+#~ msgstr "Alternativt intro"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Sіk efter uppdateringar..."
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Anvфnd alternativt spelintro (endast CD-version)"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Ett hіgerklick"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "MPEG2 filmscener stіds inte lфngre"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Endast rіrelse"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL normal"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Escape-tangenten"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL konservation"
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Spelmeny"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL original"
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Visa tangentbord"
+#~ msgid "Current display mode"
+#~ msgstr "Nuvarande visningslфge"
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Kontrollera musen"
+#~ msgid "Current scale"
+#~ msgstr "Nuvarande skala"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Klickning aktiverad"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Aktivt filterlфge: Linjфrt"
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Klickning deaktiverad"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Aktivt filterlфge: Nфrmast"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Aktivera Roland GS-lфge"
diff --git a/po/uk_UA.po b/po/uk_UA.po
index 5c27fcd479..5094570ca5 100644
--- a/po/uk_UA.po
+++ b/po/uk_UA.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ScummVM 1.3.0svn\n"
"Report-Msgid-Bugs-To: scummvm-devel@lists.sf.net\n"
-"POT-Creation-Date: 2013-04-24 13:35+0100\n"
+"POT-Creation-Date: 2014-02-14 21:53+0000\n"
"PO-Revision-Date: 2013-05-05 23:26+0200\n"
"Last-Translator: Eugene Sandulenko <sev@scummvm.org>\n"
"Language-Team: Ukrainian\n"
@@ -53,15 +53,15 @@ msgid "Go up"
msgstr "Вгору"
#: gui/browser.cpp:74 gui/chooser.cpp:45 gui/KeysDialog.cpp:43
-#: gui/launcher.cpp:345 gui/massadd.cpp:94 gui/options.cpp:1238
+#: gui/launcher.cpp:350 gui/massadd.cpp:94 gui/options.cpp:1238
#: gui/saveload-dialog.cpp:215 gui/saveload-dialog.cpp:275
-#: gui/saveload-dialog.cpp:545 gui/saveload-dialog.cpp:919
+#: gui/saveload-dialog.cpp:546 gui/saveload-dialog.cpp:921
#: gui/themebrowser.cpp:54 gui/fluidsynth-dialog.cpp:151
-#: engines/engine.cpp:447 engines/drascula/saveload.cpp:51
+#: engines/engine.cpp:451 backends/platform/wii/options.cpp:48
+#: backends/events/default/default-events.cpp:196
+#: backends/events/default/default-events.cpp:218
+#: engines/drascula/saveload.cpp:49 engines/parallaction/saveload.cpp:274
#: engines/scumm/dialogs.cpp:190 engines/sword1/control.cpp:865
-#: engines/parallaction/saveload.cpp:274 backends/platform/wii/options.cpp:48
-#: backends/events/default/default-events.cpp:193
-#: backends/events/default/default-events.cpp:215
msgid "Cancel"
msgstr "Відміна"
@@ -69,26 +69,26 @@ msgstr "Відміна"
msgid "Choose"
msgstr "Вибрати"
-#: gui/gui-manager.cpp:115 engines/scumm/help.cpp:125
-#: engines/scumm/help.cpp:140 engines/scumm/help.cpp:165
-#: engines/scumm/help.cpp:191 engines/scumm/help.cpp:209
-#: backends/keymapper/remap-dialog.cpp:52
+#: gui/gui-manager.cpp:116 backends/keymapper/remap-dialog.cpp:52
+#: engines/scumm/help.cpp:125 engines/scumm/help.cpp:140
+#: engines/scumm/help.cpp:165 engines/scumm/help.cpp:191
+#: engines/scumm/help.cpp:209
msgid "Close"
msgstr "Закрити"
-#: gui/gui-manager.cpp:118
+#: gui/gui-manager.cpp:119
msgid "Mouse click"
msgstr "Клік мишкою"
-#: gui/gui-manager.cpp:122 base/main.cpp:301
+#: gui/gui-manager.cpp:123 base/main.cpp:317
msgid "Display keyboard"
msgstr "Показати клавіатуру"
-#: gui/gui-manager.cpp:126 base/main.cpp:305
+#: gui/gui-manager.cpp:127 base/main.cpp:321
msgid "Remap keys"
msgstr "Перепризначити клавіші"
-#: gui/gui-manager.cpp:129 base/main.cpp:308
+#: gui/gui-manager.cpp:130 base/main.cpp:324
msgid "Toggle FullScreen"
msgstr "Перемкнути повноекранний режим"
@@ -100,21 +100,21 @@ msgstr "Виберіть дію для призначення"
msgid "Map"
msgstr "Призначити"
-#: gui/KeysDialog.cpp:42 gui/launcher.cpp:346 gui/launcher.cpp:1001
-#: gui/launcher.cpp:1005 gui/massadd.cpp:91 gui/options.cpp:1239
-#: gui/saveload-dialog.cpp:920 gui/fluidsynth-dialog.cpp:152
-#: engines/engine.cpp:366 engines/engine.cpp:377
-#: engines/drascula/saveload.cpp:51 engines/scumm/dialogs.cpp:192
-#: engines/scumm/scumm.cpp:1778 engines/agos/animation.cpp:558
-#: engines/groovie/script.cpp:420 engines/sky/compact.cpp:131
-#: engines/sky/compact.cpp:141 engines/sword1/animation.cpp:519
-#: engines/sword1/animation.cpp:540 engines/sword1/animation.cpp:550
-#: engines/sword1/animation.cpp:557 engines/sword1/control.cpp:865
-#: engines/sword1/logic.cpp:1633 engines/sword2/animation.cpp:419
-#: engines/sword2/animation.cpp:439 engines/sword2/animation.cpp:449
-#: engines/sword2/animation.cpp:458 engines/parallaction/saveload.cpp:274
+#: gui/KeysDialog.cpp:42 gui/launcher.cpp:351 gui/launcher.cpp:1047
+#: gui/launcher.cpp:1051 gui/massadd.cpp:91 gui/options.cpp:1239
+#: gui/saveload-dialog.cpp:922 gui/fluidsynth-dialog.cpp:152
+#: engines/engine.cpp:370 engines/engine.cpp:381
#: backends/platform/wii/options.cpp:47
#: backends/platform/wince/CELauncherDialog.cpp:54
+#: engines/agos/animation.cpp:558 engines/drascula/saveload.cpp:49
+#: engines/groovie/script.cpp:420 engines/parallaction/saveload.cpp:274
+#: engines/scumm/dialogs.cpp:192 engines/scumm/scumm.cpp:1779
+#: engines/sky/compact.cpp:131 engines/sky/compact.cpp:141
+#: engines/sword1/animation.cpp:524 engines/sword1/animation.cpp:545
+#: engines/sword1/animation.cpp:561 engines/sword1/animation.cpp:569
+#: engines/sword1/control.cpp:865 engines/sword1/logic.cpp:1633
+#: engines/sword2/animation.cpp:425 engines/sword2/animation.cpp:445
+#: engines/sword2/animation.cpp:461 engines/sword2/animation.cpp:471
msgid "OK"
msgstr "OK"
@@ -140,15 +140,15 @@ msgstr "Будь ласка, виберіть дію"
msgid "Press the key to associate"
msgstr "Натисніть клавішу для призначення"
-#: gui/launcher.cpp:187
+#: gui/launcher.cpp:192
msgid "Game"
msgstr "Гра"
-#: gui/launcher.cpp:191
+#: gui/launcher.cpp:196
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:191 gui/launcher.cpp:193 gui/launcher.cpp:194
+#: gui/launcher.cpp:196 gui/launcher.cpp:198 gui/launcher.cpp:199
msgid ""
"Short game identifier used for referring to savegames and running the game "
"from the command line"
@@ -156,29 +156,29 @@ msgstr ""
"Короткий ідентифікатор, який використовується для назв збережених ігор і для "
"запуску з командної стрічки"
-#: gui/launcher.cpp:193
+#: gui/launcher.cpp:198
msgctxt "lowres"
msgid "ID:"
msgstr "ID:"
-#: gui/launcher.cpp:198
+#: gui/launcher.cpp:203
msgid "Name:"
msgstr "Назва:"
-#: gui/launcher.cpp:198 gui/launcher.cpp:200 gui/launcher.cpp:201
+#: gui/launcher.cpp:203 gui/launcher.cpp:205 gui/launcher.cpp:206
msgid "Full title of the game"
msgstr "Повна назва гри"
-#: gui/launcher.cpp:200
+#: gui/launcher.cpp:205
msgctxt "lowres"
msgid "Name:"
msgstr "Назва:"
-#: gui/launcher.cpp:204
+#: gui/launcher.cpp:209
msgid "Language:"
msgstr "Мова:"
-#: gui/launcher.cpp:204 gui/launcher.cpp:205
+#: gui/launcher.cpp:209 gui/launcher.cpp:210
msgid ""
"Language of the game. This will not turn your Spanish game version into "
"English"
@@ -186,150 +186,150 @@ msgstr ""
"Мова гри. Зміна цього налаштування не перетворить гру англійською на "
"українську"
-#: gui/launcher.cpp:206 gui/launcher.cpp:220 gui/options.cpp:86
+#: gui/launcher.cpp:211 gui/launcher.cpp:225 gui/options.cpp:86
#: gui/options.cpp:736 gui/options.cpp:749 gui/options.cpp:1209
#: audio/null.cpp:40
msgid "<default>"
msgstr "<за умовчанням>"
-#: gui/launcher.cpp:216
+#: gui/launcher.cpp:221
msgid "Platform:"
msgstr "Платформа:"
-#: gui/launcher.cpp:216 gui/launcher.cpp:218 gui/launcher.cpp:219
+#: gui/launcher.cpp:221 gui/launcher.cpp:223 gui/launcher.cpp:224
msgid "Platform the game was originally designed for"
msgstr "Платформа, для якої гру було розроблено початково"
-#: gui/launcher.cpp:218
+#: gui/launcher.cpp:223
msgctxt "lowres"
msgid "Platform:"
msgstr "Платформа:"
-#: gui/launcher.cpp:231
+#: gui/launcher.cpp:236
msgid "Engine"
msgstr "Движок"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "Graphics"
msgstr "Графіка"
-#: gui/launcher.cpp:239 gui/options.cpp:1072 gui/options.cpp:1089
+#: gui/launcher.cpp:244 gui/options.cpp:1072 gui/options.cpp:1089
msgid "GFX"
msgstr "Грф"
-#: gui/launcher.cpp:242
+#: gui/launcher.cpp:247
msgid "Override global graphic settings"
msgstr "Перекрити глобальні установки графіки"
-#: gui/launcher.cpp:244
+#: gui/launcher.cpp:249
msgctxt "lowres"
msgid "Override global graphic settings"
msgstr "Перекрити глобальні установки графіки"
-#: gui/launcher.cpp:251 gui/options.cpp:1095
+#: gui/launcher.cpp:256 gui/options.cpp:1095
msgid "Audio"
msgstr "Аудіо"
-#: gui/launcher.cpp:254
+#: gui/launcher.cpp:259
msgid "Override global audio settings"
msgstr "Перекрити глобальні установки аудіо"
-#: gui/launcher.cpp:256
+#: gui/launcher.cpp:261
msgctxt "lowres"
msgid "Override global audio settings"
msgstr "Перекрити глобальні установки аудіо"
-#: gui/launcher.cpp:265 gui/options.cpp:1100
+#: gui/launcher.cpp:270 gui/options.cpp:1100
msgid "Volume"
msgstr "Гучність"
-#: gui/launcher.cpp:267 gui/options.cpp:1102
+#: gui/launcher.cpp:272 gui/options.cpp:1102
msgctxt "lowres"
msgid "Volume"
msgstr "Гучн."
-#: gui/launcher.cpp:270
+#: gui/launcher.cpp:275
msgid "Override global volume settings"
msgstr "Перекрити глобальні установки гучності"
-#: gui/launcher.cpp:272
+#: gui/launcher.cpp:277
msgctxt "lowres"
msgid "Override global volume settings"
msgstr "Перекрити глобальні установки гучності"
-#: gui/launcher.cpp:280 gui/options.cpp:1110
+#: gui/launcher.cpp:285 gui/options.cpp:1110
msgid "MIDI"
msgstr "MIDI"
-#: gui/launcher.cpp:283
+#: gui/launcher.cpp:288
msgid "Override global MIDI settings"
msgstr "Перекрити глобальні установки MIDI"
-#: gui/launcher.cpp:285
+#: gui/launcher.cpp:290
msgctxt "lowres"
msgid "Override global MIDI settings"
msgstr "Перекрити глобальні установки MIDI"
-#: gui/launcher.cpp:294 gui/options.cpp:1116
+#: gui/launcher.cpp:299 gui/options.cpp:1116
msgid "MT-32"
msgstr "MT-32"
-#: gui/launcher.cpp:297
+#: gui/launcher.cpp:302
msgid "Override global MT-32 settings"
msgstr "Перекрити глобальні установки MT-32"
-#: gui/launcher.cpp:299
+#: gui/launcher.cpp:304
msgctxt "lowres"
msgid "Override global MT-32 settings"
msgstr "Перекрити глобальні установки MT-32"
-#: gui/launcher.cpp:308 gui/options.cpp:1123
+#: gui/launcher.cpp:313 gui/options.cpp:1123
msgid "Paths"
msgstr "Шляхи"
-#: gui/launcher.cpp:310 gui/options.cpp:1125
+#: gui/launcher.cpp:315 gui/options.cpp:1125
msgctxt "lowres"
msgid "Paths"
msgstr "Шляхи"
-#: gui/launcher.cpp:317
+#: gui/launcher.cpp:322
msgid "Game Path:"
msgstr "Шлях до гри:"
-#: gui/launcher.cpp:319
+#: gui/launcher.cpp:324
msgctxt "lowres"
msgid "Game Path:"
msgstr "Шлях до гри:"
-#: gui/launcher.cpp:324 gui/options.cpp:1149
+#: gui/launcher.cpp:329 gui/options.cpp:1149
msgid "Extra Path:"
msgstr "Додатк. шлях:"
-#: gui/launcher.cpp:324 gui/launcher.cpp:326 gui/launcher.cpp:327
+#: gui/launcher.cpp:329 gui/launcher.cpp:331 gui/launcher.cpp:332
msgid "Specifies path to additional data used the game"
msgstr "Вказує шлях до додаткових файлів даних для гри"
-#: gui/launcher.cpp:326 gui/options.cpp:1151
+#: gui/launcher.cpp:331 gui/options.cpp:1151
msgctxt "lowres"
msgid "Extra Path:"
msgstr "Дод. шлях:"
-#: gui/launcher.cpp:333 gui/options.cpp:1133
+#: gui/launcher.cpp:338 gui/options.cpp:1133
msgid "Save Path:"
msgstr "Шлях збер.:"
-#: gui/launcher.cpp:333 gui/launcher.cpp:335 gui/launcher.cpp:336
+#: gui/launcher.cpp:338 gui/launcher.cpp:340 gui/launcher.cpp:341
#: gui/options.cpp:1133 gui/options.cpp:1135 gui/options.cpp:1136
msgid "Specifies where your savegames are put"
msgstr "Вказує шлях до збережень гри"
-#: gui/launcher.cpp:335 gui/options.cpp:1135
+#: gui/launcher.cpp:340 gui/options.cpp:1135
msgctxt "lowres"
msgid "Save Path:"
msgstr "Шлях збер.:"
-#: gui/launcher.cpp:354 gui/launcher.cpp:453 gui/launcher.cpp:511
-#: gui/launcher.cpp:565 gui/options.cpp:1144 gui/options.cpp:1152
+#: gui/launcher.cpp:359 gui/launcher.cpp:458 gui/launcher.cpp:516
+#: gui/launcher.cpp:570 gui/options.cpp:1144 gui/options.cpp:1152
#: gui/options.cpp:1161 gui/options.cpp:1276 gui/options.cpp:1282
#: gui/options.cpp:1290 gui/options.cpp:1320 gui/options.cpp:1326
#: gui/options.cpp:1333 gui/options.cpp:1426 gui/options.cpp:1429
@@ -338,134 +338,135 @@ msgctxt "path"
msgid "None"
msgstr "Не завданий"
-#: gui/launcher.cpp:359 gui/launcher.cpp:459 gui/launcher.cpp:569
+#: gui/launcher.cpp:364 gui/launcher.cpp:464 gui/launcher.cpp:574
#: gui/options.cpp:1270 gui/options.cpp:1314 gui/options.cpp:1432
#: backends/platform/wii/options.cpp:56
msgid "Default"
msgstr "За умовчанням"
-#: gui/launcher.cpp:504 gui/options.cpp:1435
+#: gui/launcher.cpp:509 gui/options.cpp:1435
msgid "Select SoundFont"
msgstr "Виберіть SoundFont"
-#: gui/launcher.cpp:523 gui/launcher.cpp:677
+#: gui/launcher.cpp:528 gui/launcher.cpp:681
msgid "Select directory with game data"
msgstr "Виберіть папку з файлами гри"
-#: gui/launcher.cpp:541
+#: gui/launcher.cpp:546
msgid "Select additional game directory"
msgstr "Виберіть додаткову папку гри"
-#: gui/launcher.cpp:553
+#: gui/launcher.cpp:558
msgid "Select directory for saved games"
msgstr "Виберіть папку для збережень"
-#: gui/launcher.cpp:580
+#: gui/launcher.cpp:585
msgid "This game ID is already taken. Please choose another one."
msgstr "Цей ID гри вже використовується. Будь ласка, виберіть інший."
-#: gui/launcher.cpp:621 engines/dialogs.cpp:110
+#: gui/launcher.cpp:625 engines/dialogs.cpp:110
msgid "~Q~uit"
msgstr "~В~ихід"
-#: gui/launcher.cpp:621 backends/platform/sdl/macosx/appmenu_osx.mm:95
+#: gui/launcher.cpp:625 backends/platform/sdl/macosx/appmenu_osx.mm:95
msgid "Quit ScummVM"
msgstr "Вихід зі ScummVM"
-#: gui/launcher.cpp:622
+#: gui/launcher.cpp:626
msgid "A~b~out..."
msgstr "Про п~р~ограму..."
-#: gui/launcher.cpp:622 backends/platform/sdl/macosx/appmenu_osx.mm:69
+#: gui/launcher.cpp:626 backends/platform/sdl/macosx/appmenu_osx.mm:69
msgid "About ScummVM"
msgstr "Про ScummVM"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "~O~ptions..."
msgstr "~Н~алаштування"
-#: gui/launcher.cpp:623
+#: gui/launcher.cpp:627
msgid "Change global ScummVM options"
msgstr "Змінити глобальні налаштування ScummVM"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "~S~tart"
msgstr "З~а~пуск"
-#: gui/launcher.cpp:625
+#: gui/launcher.cpp:629
msgid "Start selected game"
msgstr "Запустити вибрану гру"
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "~L~oad..."
msgstr "~З~авантажити..."
-#: gui/launcher.cpp:628
+#: gui/launcher.cpp:632
msgid "Load savegame for selected game"
msgstr "Завантажити збереження для вибраної гри"
-#: gui/launcher.cpp:633 gui/launcher.cpp:1120
+#: gui/launcher.cpp:637
msgid "~A~dd Game..."
msgstr "~Д~одати гру..."
-#: gui/launcher.cpp:633 gui/launcher.cpp:640
+#: gui/launcher.cpp:637 gui/launcher.cpp:644
msgid "Hold Shift for Mass Add"
msgstr "Утримуйте клавішу Shift для того, щоб додати декілька ігор"
-#: gui/launcher.cpp:635
+#: gui/launcher.cpp:639
msgid "~E~dit Game..."
msgstr "Реда~г~увати гру"
-#: gui/launcher.cpp:635 gui/launcher.cpp:642
+#: gui/launcher.cpp:639 gui/launcher.cpp:646
msgid "Change game options"
msgstr "Змінити налаштування гри"
-#: gui/launcher.cpp:637
+#: gui/launcher.cpp:641
msgid "~R~emove Game"
msgstr "~В~идалити гру"
-#: gui/launcher.cpp:637 gui/launcher.cpp:644
+#: gui/launcher.cpp:641 gui/launcher.cpp:648
msgid "Remove game from the list. The game data files stay intact"
msgstr "Видалити гру зі списку. Не видаляє гру з жорсткого диску"
-#: gui/launcher.cpp:640 gui/launcher.cpp:1120
+#: gui/launcher.cpp:644
msgctxt "lowres"
msgid "~A~dd Game..."
msgstr "~Д~одати гру..."
-#: gui/launcher.cpp:642
+#: gui/launcher.cpp:646
msgctxt "lowres"
msgid "~E~dit Game..."
msgstr "Реда~г~. гру..."
-#: gui/launcher.cpp:644
+#: gui/launcher.cpp:648
msgctxt "lowres"
msgid "~R~emove Game"
msgstr "~В~идалити гру"
-#: gui/launcher.cpp:652
+#: gui/launcher.cpp:656
msgid "Search in game list"
msgstr "Пошук у списку ігор"
-#: gui/launcher.cpp:656 gui/launcher.cpp:1167
+#: gui/launcher.cpp:660 gui/launcher.cpp:1221
msgid "Search:"
msgstr "Пошук:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/mohawk/myst.cpp:245
-#: engines/mohawk/riven.cpp:716 engines/cruise/menu.cpp:214
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114 engines/cruise/menu.cpp:214
+#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
#: engines/pegasus/pegasus.cpp:349
msgid "Load game:"
msgstr "Завантажити гру:"
-#: gui/launcher.cpp:680 engines/dialogs.cpp:114 engines/scumm/dialogs.cpp:188
-#: engines/mohawk/myst.cpp:245 engines/mohawk/riven.cpp:716
-#: engines/cruise/menu.cpp:214 engines/pegasus/pegasus.cpp:349
+#: gui/launcher.cpp:684 engines/dialogs.cpp:114
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/cruise/menu.cpp:214 engines/mohawk/myst.cpp:245
+#: engines/mohawk/riven.cpp:716 engines/pegasus/pegasus.cpp:349
+#: engines/scumm/dialogs.cpp:188
msgid "Load"
msgstr "Завантажити"
-#: gui/launcher.cpp:788
+#: gui/launcher.cpp:791
msgid ""
"Do you really want to run the mass game detector? This could potentially add "
"a huge number of games."
@@ -473,7 +474,8 @@ msgstr ""
"Чи ви дійсно хочете запустити пошук усіх ігор? Це потенційно може додати "
"велику кількість ігор."
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -481,7 +483,8 @@ msgstr ""
msgid "Yes"
msgstr "Так"
-#: gui/launcher.cpp:789 gui/launcher.cpp:937 gui/fluidsynth-dialog.cpp:216
+#: gui/launcher.cpp:792 gui/launcher.cpp:940 gui/launcher.cpp:999
+#: gui/fluidsynth-dialog.cpp:216
#: backends/events/symbiansdl/symbiansdl-events.cpp:184
#: backends/platform/wince/CEActionsPocket.cpp:326
#: backends/platform/wince/CEActionsSmartphone.cpp:287
@@ -489,39 +492,35 @@ msgstr "Так"
msgid "No"
msgstr "Ні"
-#: gui/launcher.cpp:837
+#: gui/launcher.cpp:840
msgid "ScummVM couldn't open the specified directory!"
msgstr "ScummVM не може відкрити вказану папку!"
-#: gui/launcher.cpp:849
+#: gui/launcher.cpp:852
msgid "ScummVM could not find any game in the specified directory!"
msgstr "ScummVM не може знайти гру у вказаній папці!"
-#: gui/launcher.cpp:863
+#: gui/launcher.cpp:866
msgid "Pick the game:"
msgstr "Виберіть гру:"
-#: gui/launcher.cpp:937
+#: gui/launcher.cpp:940
msgid "Do you really want to remove this game configuration?"
msgstr "Ви дійсно хочете видалити установки для цієї гри?"
-#: gui/launcher.cpp:1001
+#: gui/launcher.cpp:998
+#, fuzzy
+msgid "Do you want to load savegame?"
+msgstr "Ви хочете завантажити або зберегти гру?"
+
+#: gui/launcher.cpp:1047
msgid "This game does not support loading games from the launcher."
msgstr "Ця гра не підтримує завантаження збережень через головне меню."
-#: gui/launcher.cpp:1005
+#: gui/launcher.cpp:1051
msgid "ScummVM could not find any engine capable of running the selected game!"
msgstr "ScummVM не зміг знайти движок для запуску вибраної гри!"
-#: gui/launcher.cpp:1119
-msgctxt "lowres"
-msgid "Mass Add..."
-msgstr "Дод. багато..."
-
-#: gui/launcher.cpp:1119
-msgid "Mass Add..."
-msgstr "Дод. багато..."
-
#: gui/massadd.cpp:78 gui/massadd.cpp:81
msgid "... progress ..."
msgstr "... пошук ..."
@@ -620,8 +619,7 @@ msgid "Special dithering modes supported by some games"
msgstr "Спеціальні режими растрування, які підтримують деякі ігри"
#: gui/options.cpp:759
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2236
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:476
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2249
msgid "Fullscreen mode"
msgstr "Повноекранний режим"
@@ -753,13 +751,15 @@ msgid "True Roland MT-32 (no GM emulation)"
msgstr "Справжній Roland MT-32 (вимкнути емуляцию GM)"
#: gui/options.cpp:890
-msgid "Roland GS Mode (disable GM mapping)"
+#, fuzzy
+msgid "Roland GS Device (enable MT-32 mappings)"
msgstr "Режим Roland GS (вимкнути маплення GM)"
#: gui/options.cpp:890
-msgid "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+msgid ""
+"Check if you want to enable patch mappings to emulate an MT-32 on a Roland "
+"GS device"
msgstr ""
-"Вимикає мапінг General MIDI для ігор зі звуковою доріжкою для Roland MT-32"
#: gui/options.cpp:899
msgid "Don't use Roland MT-32 music"
@@ -949,15 +949,15 @@ msgstr "Вигляд списку"
msgid "Grid view"
msgstr "Вигляд сітки"
-#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:358
+#: gui/saveload-dialog.cpp:210 gui/saveload-dialog.cpp:359
msgid "No date saved"
msgstr "Дату не записано"
-#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:359
+#: gui/saveload-dialog.cpp:211 gui/saveload-dialog.cpp:360
msgid "No time saved"
msgstr "Час не записано"
-#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:360
+#: gui/saveload-dialog.cpp:212 gui/saveload-dialog.cpp:361
msgid "No playtime saved"
msgstr "Час гри не записано"
@@ -969,43 +969,43 @@ msgstr "Видалити"
msgid "Do you really want to delete this savegame?"
msgstr "Ви дійсно хочете видалити це збереження?"
-#: gui/saveload-dialog.cpp:383 gui/saveload-dialog.cpp:872
+#: gui/saveload-dialog.cpp:384 gui/saveload-dialog.cpp:874
msgid "Date: "
msgstr "Дата: "
-#: gui/saveload-dialog.cpp:387 gui/saveload-dialog.cpp:878
+#: gui/saveload-dialog.cpp:388 gui/saveload-dialog.cpp:880
msgid "Time: "
msgstr "Час: "
-#: gui/saveload-dialog.cpp:393 gui/saveload-dialog.cpp:886
+#: gui/saveload-dialog.cpp:394 gui/saveload-dialog.cpp:888
msgid "Playtime: "
msgstr "Час гри: "
-#: gui/saveload-dialog.cpp:406 gui/saveload-dialog.cpp:494
+#: gui/saveload-dialog.cpp:407 gui/saveload-dialog.cpp:495
msgid "Untitled savestate"
msgstr "Збереження без імені"
-#: gui/saveload-dialog.cpp:546
+#: gui/saveload-dialog.cpp:547
msgid "Next"
msgstr "Насутпний"
-#: gui/saveload-dialog.cpp:549
+#: gui/saveload-dialog.cpp:550
msgid "Prev"
msgstr "Попередній"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "New Save"
msgstr "Нове збереження"
-#: gui/saveload-dialog.cpp:736
+#: gui/saveload-dialog.cpp:738
msgid "Create a new save game"
msgstr "Створити новий запис гри"
-#: gui/saveload-dialog.cpp:865
+#: gui/saveload-dialog.cpp:867
msgid "Name: "
msgstr "Назва: "
-#: gui/saveload-dialog.cpp:937
+#: gui/saveload-dialog.cpp:939
#, c-format
msgid "Enter a description for slot %d:"
msgstr "Введіть опис для слоту %d:"
@@ -1014,29 +1014,32 @@ msgstr "Введіть опис для слоту %d:"
msgid "Select a Theme"
msgstr "Виберіть тему"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgid "Disabled GFX"
msgstr "Без графіки"
-#: gui/ThemeEngine.cpp:337
+#: gui/ThemeEngine.cpp:346
msgctxt "lowres"
msgid "Disabled GFX"
msgstr "Без графіки"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:347
+#, fuzzy
+msgid "Standard Renderer"
msgstr "Стандартний растеризатор (16bpp)"
-#: gui/ThemeEngine.cpp:338
-msgid "Standard (16bpp)"
-msgstr "Стандартний растеризатор (16bpp)"
+#: gui/ThemeEngine.cpp:347 engines/scumm/dialogs.cpp:658
+msgid "Standard"
+msgstr "Стандартний"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased Renderer (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased Renderer"
msgstr "Растеризатор зі згладжуванням (16bpp)"
-#: gui/ThemeEngine.cpp:340
-msgid "Antialiased (16bpp)"
+#: gui/ThemeEngine.cpp:349
+#, fuzzy
+msgid "Antialiased"
msgstr "Растеризатор зі згладжуванням (16bpp)"
#: gui/widget.cpp:322 gui/widget.cpp:324 gui/widget.cpp:330 gui/widget.cpp:332
@@ -1126,37 +1129,39 @@ msgstr "Скинути всі налаштування FluidSynth до їх значень за замовченням"
#: gui/fluidsynth-dialog.cpp:216
msgid ""
"Do you really want to reset all FluidSynth settings to their default values?"
-msgstr "Ви дійсно хочете скинути всі налаштування FluidSynth до їх значень за замовченням?"
+msgstr ""
+"Ви дійсно хочете скинути всі налаштування FluidSynth до їх значень за "
+"замовченням?"
-#: base/main.cpp:210
+#: base/main.cpp:226
#, c-format
msgid "Engine does not support debug level '%s'"
msgstr "Движок не підтримує рівень відладки '%s'"
-#: base/main.cpp:288
+#: base/main.cpp:304
msgid "Menu"
msgstr "Меню"
-#: base/main.cpp:291 backends/platform/symbian/src/SymbianActions.cpp:45
+#: base/main.cpp:307 backends/platform/symbian/src/SymbianActions.cpp:45
#: backends/platform/wince/CEActionsPocket.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:46
msgid "Skip"
msgstr "Пропустити"
-#: base/main.cpp:294 backends/platform/symbian/src/SymbianActions.cpp:50
+#: base/main.cpp:310 backends/platform/symbian/src/SymbianActions.cpp:50
#: backends/platform/wince/CEActionsPocket.cpp:42
msgid "Pause"
msgstr "Пауза"
-#: base/main.cpp:297
+#: base/main.cpp:313
msgid "Skip line"
msgstr "Пропустити рядок"
-#: base/main.cpp:468
+#: base/main.cpp:505
msgid "Error running game:"
msgstr "Помилка запуску гри:"
-#: base/main.cpp:492
+#: base/main.cpp:534
msgid "Could not find any engine capable of running the selected game"
msgstr "Не можу знайти движок для запуску вибраної гри"
@@ -1224,16 +1229,16 @@ msgstr "Відмінено користувачем"
msgid "Unknown error"
msgstr "Невідома помилка"
-#: engines/advancedDetector.cpp:316
+#: engines/advancedDetector.cpp:317
#, c-format
msgid "The game in '%s' seems to be unknown."
msgstr "Гра у '%s' невідома."
-#: engines/advancedDetector.cpp:317
+#: engines/advancedDetector.cpp:318
msgid "Please, report the following data to the ScummVM team along with name"
msgstr "Будь ласка, передайте нижченаведену інформацію команді ScummVM разом з"
-#: engines/advancedDetector.cpp:319
+#: engines/advancedDetector.cpp:320
msgid "of the game you tried to add and its version/language/etc.:"
msgstr "назвою гри, яку ви намагаєтесь додати, а також її версію/мову/та інше:"
@@ -1271,21 +1276,21 @@ msgid "~R~eturn to Launcher"
msgstr "~П~овер.в головне меню"
#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/cruise/menu.cpp:212
+#: engines/cruise/menu.cpp:212 engines/drascula/saveload.cpp:336
+#: engines/neverhood/menumodule.cpp:873 engines/pegasus/pegasus.cpp:373
#: engines/sci/engine/kfile.cpp:742 engines/toltecs/menu.cpp:284
-#: engines/pegasus/pegasus.cpp:373
msgid "Save game:"
msgstr "Зберегти гру: "
-#: engines/dialogs.cpp:115 engines/agi/saveload.cpp:803
-#: engines/drascula/saveload.cpp:338 engines/scumm/dialogs.cpp:187
-#: engines/cruise/menu.cpp:212 engines/sci/engine/kfile.cpp:742
-#: engines/toltecs/menu.cpp:284 engines/pegasus/pegasus.cpp:373
-#: backends/platform/symbian/src/SymbianActions.cpp:44
+#: engines/dialogs.cpp:115 backends/platform/symbian/src/SymbianActions.cpp:44
#: backends/platform/wince/CEActionsPocket.cpp:43
#: backends/platform/wince/CEActionsPocket.cpp:267
#: backends/platform/wince/CEActionsSmartphone.cpp:45
#: backends/platform/wince/CEActionsSmartphone.cpp:231
+#: engines/agi/saveload.cpp:803 engines/cruise/menu.cpp:212
+#: engines/drascula/saveload.cpp:336 engines/neverhood/menumodule.cpp:873
+#: engines/pegasus/pegasus.cpp:373 engines/sci/engine/kfile.cpp:742
+#: engines/scumm/dialogs.cpp:187 engines/toltecs/menu.cpp:284
msgid "Save"
msgstr "Записати"
@@ -1322,23 +1327,23 @@ msgstr "Ві~д~міна"
msgid "~K~eys"
msgstr "~К~лавіші"
-#: engines/engine.cpp:240
+#: engines/engine.cpp:244
msgid "Could not initialize color format."
msgstr "Не можу налаштувати формат кольору."
-#: engines/engine.cpp:248
+#: engines/engine.cpp:252
msgid "Could not switch to video mode: '"
msgstr "Не вдалося переключити відеорежим: '"
-#: engines/engine.cpp:257
+#: engines/engine.cpp:261
msgid "Could not apply aspect ratio setting."
msgstr "Не вдалося застосувати корекцію співвідношення сторін."
-#: engines/engine.cpp:262
+#: engines/engine.cpp:266
msgid "Could not apply fullscreen setting."
msgstr "Не вдалося застосувати повноекранний режим."
-#: engines/engine.cpp:362
+#: engines/engine.cpp:366
msgid ""
"You appear to be playing this game directly\n"
"from the CD. This is known to cause problems,\n"
@@ -1352,7 +1357,7 @@ msgstr ""
"гри на жорсткий диск.\n"
"Дивіться файл README для подальших інструкцій."
-#: engines/engine.cpp:373
+#: engines/engine.cpp:377
msgid ""
"This game has audio tracks in its disk. These\n"
"tracks need to be ripped from the disk using\n"
@@ -1366,7 +1371,7 @@ msgstr ""
"того, щоб можна було слухати музику у грі.\n"
"Дивіться файл README для подальших інструкцій."
-#: engines/engine.cpp:431
+#: engines/engine.cpp:435
#, c-format
msgid ""
"Gamestate load failed (%s)! Please consult the README for basic information, "
@@ -1375,7 +1380,7 @@ msgstr ""
"Завантаження стану гри не вдалося (%s)! . Будь-ласка, дивіться файл README "
"для основної інормації, а також інструкцій, як отримати подальшу допомогу."
-#: engines/engine.cpp:444
+#: engines/engine.cpp:448
msgid ""
"WARNING: The game you are about to start is not yet fully supported by "
"ScummVM. As such, it is likely to be unstable, and any saves you make might "
@@ -1385,34 +1390,761 @@ msgstr ""
"ScummVM. Скорше за все вона не буде працювати стабільно, і збереження ігор, "
"які ви зробите, можуть не працювати у подальших версіях ScummVM."
-#: engines/engine.cpp:447
+#: engines/engine.cpp:451
msgid "Start anyway"
msgstr "Все одно запустити"
-#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:270
-#: engines/dreamweb/detection.cpp:47 engines/sci/detection.cpp:393
-#: engines/toltecs/detection.cpp:173
+#: audio/fmopl.cpp:49
+msgid "MAME OPL emulator"
+msgstr "Емулятор MAME OPL"
+
+#: audio/fmopl.cpp:51
+msgid "DOSBox OPL emulator"
+msgstr "Емулятор DOSBox OPL"
+
+#: audio/mididrv.cpp:209
+#, c-format
+msgid ""
+"The selected audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Вибраний звуковий пристрій '%s' не було знайдено (тобто, його може бути "
+"вимкнено або не підключено)."
+
+#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
+#: audio/mididrv.cpp:272
+msgid "Attempting to fall back to the next available device..."
+msgstr "Намагаюся використати наступний доступний пристрій..."
+
+#: audio/mididrv.cpp:221
+#, c-format
+msgid ""
+"The selected audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Вибраний звуковий пристрій '%s' не може бути використаний. Дивіться файл "
+"логу для додаткової інформації."
+
+#: audio/mididrv.cpp:257
+#, c-format
+msgid ""
+"The preferred audio device '%s' was not found (e.g. might be turned off or "
+"disconnected)."
+msgstr ""
+"Уподобаний звуковий пристрій '%s' не було знайдено (тобто, його може бути "
+"вимкнено або не підключено)."
+
+#: audio/mididrv.cpp:272
+#, c-format
+msgid ""
+"The preferred audio device '%s' cannot be used. See log file for more "
+"information."
+msgstr ""
+"Уподобаний звуковий пристрій '%s' не може бути використаний. Дивіться файл "
+"логу для додаткової інформації."
+
+#: audio/null.h:43
+msgid "No music"
+msgstr "Без музики"
+
+#: audio/mods/paula.cpp:196
+msgid "Amiga Audio Emulator"
+msgstr "Аміга Аудіо Емулятор"
+
+#: audio/softsynth/adlib.cpp:2284
+msgid "AdLib Emulator"
+msgstr "Емулятор AdLib"
+
+#: audio/softsynth/appleiigs.cpp:33
+msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
+msgstr "Apple II GS Емулятор (НЕ РЕАЛІЗОВАНО)"
+
+#: audio/softsynth/sid.cpp:1430
+msgid "C64 Audio Emulator"
+msgstr "C64 Аудіо Емулятор"
+
+#: audio/softsynth/mt32.cpp:199
+msgid "Initializing MT-32 Emulator"
+msgstr "Налаштовую емулятор MT-32"
+
+#: audio/softsynth/mt32.cpp:425
+msgid "MT-32 Emulator"
+msgstr "Емулятор MT-32"
+
+#: audio/softsynth/pcspk.cpp:139
+msgid "PC Speaker Emulator"
+msgstr "Емулятор PC спікера"
+
+#: audio/softsynth/pcspk.cpp:158
+msgid "IBM PCjr Emulator"
+msgstr "Емулятор IBM PCjr"
+
+#: backends/keymapper/remap-dialog.cpp:47
+msgid "Keymap:"
+msgstr "Мапа клавіш:"
+
+#: backends/keymapper/remap-dialog.cpp:66
+msgid " (Effective)"
+msgstr " (Ефективна)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Active)"
+msgstr " (Активна)"
+
+#: backends/keymapper/remap-dialog.cpp:106
+msgid " (Blocked)"
+msgstr " (Заблокований)"
+
+#: backends/keymapper/remap-dialog.cpp:119
+msgid " (Global)"
+msgstr " (Глобальна)"
+
+#: backends/keymapper/remap-dialog.cpp:127
+msgid " (Game)"
+msgstr " (Ігри)"
+
+#: backends/midi/windows.cpp:164
+msgid "Windows MIDI"
+msgstr "Windows MIDI"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:56
+#: engines/scumm/dialogs.cpp:290
+msgid "~C~lose"
+msgstr "~З~акрити"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:57
+msgid "ScummVM Main Menu"
+msgstr "Головне меню ScummVM"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:63
+msgid "~L~eft handed mode"
+msgstr "Ліворукий режим"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:64
+msgid "~I~ndy fight controls"
+msgstr "Керування боями в Indy"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:65
+msgid "Show mouse cursor"
+msgstr "Показувати курсор миші"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:66
+msgid "Snap to edges"
+msgstr "Прикріпити до країв"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:68
+msgid "Touch X Offset"
+msgstr "Зміщення дотиків по осі X"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:75
+msgid "Touch Y Offset"
+msgstr "Зміщення дотиків по осі Y"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:87
+msgid "Use laptop trackpad-style cursor control"
+msgstr "Використовувати управління курсором як на трекпаді лаптопів"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:88
+msgid "Tap for left click, double tap right click"
+msgstr "Тап для лівого клацання, подвійний тап для правого клацання"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:90
+msgid "Sensitivity"
+msgstr "Чутливість"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:99
+msgid "Initial top screen scale:"
+msgstr "Початковий масштаб верхнього екрану:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:105
+msgid "Main screen scaling:"
+msgstr "Масштаб головного екрану:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:107
+msgid "Hardware scale (fast, but low quality)"
+msgstr "Хардварне масштабування (швидко, але низької якості)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:108
+msgid "Software scale (good quality, but slower)"
+msgstr "Програмне масштабування (хороша якість, але повільніше)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:109
+msgid "Unscaled (you must scroll left and right)"
+msgstr "Без масштабування (треба буде прокручувати наліво і направо)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:111
+msgid "Brightness:"
+msgstr "Яскравість:"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:121
+msgid "High quality audio (slower) (reboot)"
+msgstr "Висока якість звуку (повільніше) (ребут)"
+
+#: backends/platform/ds/arm9/source/dsoptions.cpp:122
+msgid "Disable power off"
+msgstr "Заборонити вимкнення"
+
+#: backends/platform/iphone/osys_events.cpp:300
+msgid "Mouse-click-and-drag mode enabled."
+msgstr "Режим миші клікнути-та-тягнути увімкнено."
+
+#: backends/platform/iphone/osys_events.cpp:302
+msgid "Mouse-click-and-drag mode disabled."
+msgstr "Режим миші клікнути-та-тягнути вимкнено."
+
+#: backends/platform/iphone/osys_events.cpp:313
+msgid "Touchpad mode enabled."
+msgstr "Режим тачпаду увімкнено."
+
+#: backends/platform/iphone/osys_events.cpp:315
+msgid "Touchpad mode disabled."
+msgstr "Режим тачпаду вимкнено."
+
+#: backends/platform/maemo/maemo.cpp:209
+msgid "Click Mode"
+msgstr "Режим кліків"
+
+#: backends/platform/maemo/maemo.cpp:215
+#: backends/platform/symbian/src/SymbianActions.cpp:42
+#: backends/platform/wince/CEActionsPocket.cpp:60
+#: backends/platform/wince/CEActionsSmartphone.cpp:43
+#: backends/platform/tizen/form.cpp:275
+msgid "Left Click"
+msgstr "Лівий клік"
+
+#: backends/platform/maemo/maemo.cpp:218
+msgid "Middle Click"
+msgstr "Середній клік"
+
+#: backends/platform/maemo/maemo.cpp:221
+#: backends/platform/symbian/src/SymbianActions.cpp:43
+#: backends/platform/wince/CEActionsSmartphone.cpp:44
+#: backends/platform/tizen/form.cpp:267
+msgid "Right Click"
+msgstr "Правий клік"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:77
+msgid "Hide ScummVM"
+msgstr "Сховати ScummVM"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:82
+msgid "Hide Others"
+msgstr "Сховати Інші"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:87
+msgid "Show All"
+msgstr "Показати Все"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:109
+#: backends/platform/sdl/macosx/appmenu_osx.mm:120
+msgid "Window"
+msgstr "Вікно"
+
+#: backends/platform/sdl/macosx/appmenu_osx.mm:114
+msgid "Minimize"
+msgstr "Мінімізувати"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:46
+msgid "Normal (no scaling)"
+msgstr "Без збільшення"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:65
+msgctxt "lowres"
+msgid "Normal (no scaling)"
+msgstr "Без збільшення"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2148
+msgid "Enabled aspect ratio correction"
+msgstr "Корекцію співвідношення сторін увімкнено"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2154
+msgid "Disabled aspect ratio correction"
+msgstr "Корекцію співвідношення сторін вимкнено"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2209
+msgid "Active graphics filter:"
+msgstr "Поточний графічний фільтр:"
+
+#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2251
+msgid "Windowed mode"
+msgstr "Віконний режим"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:118
+#, fuzzy
+msgid "OpenGL"
+msgstr "Відкрити"
+
+#: backends/graphics/opengl/opengl-graphics.cpp:119
+msgid "OpenGL (No filtering)"
+msgstr ""
+
+#: backends/platform/symbian/src/SymbianActions.cpp:38
+#: backends/platform/wince/CEActionsSmartphone.cpp:39
+msgid "Up"
+msgstr "Догори"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:39
+#: backends/platform/wince/CEActionsSmartphone.cpp:40
+msgid "Down"
+msgstr "Донизу"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:40
+#: backends/platform/wince/CEActionsSmartphone.cpp:41
+msgid "Left"
+msgstr "Наліво"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:41
+#: backends/platform/wince/CEActionsSmartphone.cpp:42
+msgid "Right"
+msgstr "Направо"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:46
+#: backends/platform/wince/CEActionsSmartphone.cpp:47
+msgid "Zone"
+msgstr "Зона"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:47
+#: backends/platform/wince/CEActionsPocket.cpp:54
+#: backends/platform/wince/CEActionsSmartphone.cpp:48
+msgid "Multi Function"
+msgstr "Мультифункція"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:48
+msgid "Swap character"
+msgstr "Змінити героя"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:49
+msgid "Skip text"
+msgstr "Пропустити текст"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:51
+msgid "Fast mode"
+msgstr "Швидкий режим"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:52
+#: backends/platform/wince/CEActionsPocket.cpp:44
+#: backends/platform/wince/CEActionsSmartphone.cpp:52
+#: backends/events/default/default-events.cpp:218
+#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
+#: engines/scumm/help.cpp:84
+msgid "Quit"
+msgstr "Вихід"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:53
+msgid "Debugger"
+msgstr "Відладчик"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:54
+msgid "Global menu"
+msgstr "Глобальне меню"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:55
+msgid "Virtual keyboard"
+msgstr "Віртуальна клавіатура"
+
+#: backends/platform/symbian/src/SymbianActions.cpp:56
+msgid "Key mapper"
+msgstr "Призначення клавіш"
+
+#: backends/events/symbiansdl/symbiansdl-events.cpp:184
+msgid "Do you want to quit ?"
+msgstr "Ви дійсно хочете вийти?"
+
+#: backends/platform/wii/options.cpp:51
+msgid "Video"
+msgstr "Відео"
+
+#: backends/platform/wii/options.cpp:54
+msgid "Current video mode:"
+msgstr "Поточний відеорежим:"
+
+#: backends/platform/wii/options.cpp:56
+msgid "Double-strike"
+msgstr "Подвійний удар"
+
+#: backends/platform/wii/options.cpp:60
+msgid "Horizontal underscan:"
+msgstr "Горизонтальний underscan:"
+
+#: backends/platform/wii/options.cpp:66
+msgid "Vertical underscan:"
+msgstr "Вертикальний underscan:"
+
+#: backends/platform/wii/options.cpp:71
+msgid "Input"
+msgstr "Ввід"
+
+#: backends/platform/wii/options.cpp:74
+msgid "GC Pad sensitivity:"
+msgstr "Чутливість GC паду:"
+
+#: backends/platform/wii/options.cpp:80
+msgid "GC Pad acceleration:"
+msgstr "Прискорення GC паду:"
+
+#: backends/platform/wii/options.cpp:86
+msgid "DVD"
+msgstr "DVD"
+
+#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
+msgid "Status:"
+msgstr "Стан:"
+
+#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
+msgid "Unknown"
+msgstr "Невідомо"
+
+#: backends/platform/wii/options.cpp:93
+msgid "Mount DVD"
+msgstr "Підключити DVD"
+
+#: backends/platform/wii/options.cpp:94
+msgid "Unmount DVD"
+msgstr "Відключити DVD"
+
+#: backends/platform/wii/options.cpp:98
+msgid "SMB"
+msgstr "SMB"
+
+#: backends/platform/wii/options.cpp:106
+msgid "Server:"
+msgstr "Сервер:"
+
+#: backends/platform/wii/options.cpp:110
+msgid "Share:"
+msgstr "Мережева папка:"
+
+#: backends/platform/wii/options.cpp:114
+msgid "Username:"
+msgstr "Користувач:"
+
+#: backends/platform/wii/options.cpp:118
+msgid "Password:"
+msgstr "Пароль:"
+
+#: backends/platform/wii/options.cpp:121
+msgid "Init network"
+msgstr "Налаштування мережі"
+
+#: backends/platform/wii/options.cpp:123
+msgid "Mount SMB"
+msgstr "Підключити SMB"
+
+#: backends/platform/wii/options.cpp:124
+msgid "Unmount SMB"
+msgstr "Відключти SMB"
+
+#: backends/platform/wii/options.cpp:143
+msgid "DVD Mounted successfully"
+msgstr "DVD підключено успішно"
+
+#: backends/platform/wii/options.cpp:146
+msgid "Error while mounting the DVD"
+msgstr "Помилка під час підключення DVD"
+
+#: backends/platform/wii/options.cpp:148
+msgid "DVD not mounted"
+msgstr "DVD не підключено"
+
+#: backends/platform/wii/options.cpp:161
+msgid "Network up, share mounted"
+msgstr "Мережа працює, папку підключено"
+
+#: backends/platform/wii/options.cpp:163
+msgid "Network up"
+msgstr "Мережа працює"
+
+#: backends/platform/wii/options.cpp:166
+msgid ", error while mounting the share"
+msgstr ", помилка під час підключення папки"
+
+#: backends/platform/wii/options.cpp:168
+msgid ", share not mounted"
+msgstr ", папку не підключено"
+
+#: backends/platform/wii/options.cpp:174
+msgid "Network down"
+msgstr "Мережу вимкнено"
+
+#: backends/platform/wii/options.cpp:178
+msgid "Initializing network"
+msgstr "Налаштовую мережу"
+
+#: backends/platform/wii/options.cpp:182
+msgid "Timeout while initializing network"
+msgstr "Час підключення до мережі вийшов"
+
+#: backends/platform/wii/options.cpp:186
+#, c-format
+msgid "Network not initialized (%d)"
+msgstr "Мережу не налаштовано (%d)"
+
+#: backends/platform/wince/CEActionsPocket.cpp:46
+msgid "Hide Toolbar"
+msgstr "Заховати панель інструментів"
+
+#: backends/platform/wince/CEActionsPocket.cpp:47
+msgid "Show Keyboard"
+msgstr "Показати клавіатуру"
+
+#: backends/platform/wince/CEActionsPocket.cpp:48
+msgid "Sound on/off"
+msgstr "Звук увім/вимк"
+
+#: backends/platform/wince/CEActionsPocket.cpp:49
+msgid "Right click"
+msgstr "Правий клік"
+
+#: backends/platform/wince/CEActionsPocket.cpp:50
+msgid "Show/Hide Cursor"
+msgstr "Показати/сховати курсор"
+
+#: backends/platform/wince/CEActionsPocket.cpp:51
+msgid "Free look"
+msgstr "Вільний огляд"
+
+#: backends/platform/wince/CEActionsPocket.cpp:52
+msgid "Zoom up"
+msgstr "Збіл. масштаб"
+
+#: backends/platform/wince/CEActionsPocket.cpp:53
+msgid "Zoom down"
+msgstr "Змнш. масштаб"
+
+#: backends/platform/wince/CEActionsPocket.cpp:55
+#: backends/platform/wince/CEActionsSmartphone.cpp:49
+msgid "Bind Keys"
+msgstr "Призначити клавіші"
+
+#: backends/platform/wince/CEActionsPocket.cpp:56
+msgid "Cursor Up"
+msgstr "Курсор догори"
+
+#: backends/platform/wince/CEActionsPocket.cpp:57
+msgid "Cursor Down"
+msgstr "Курсор донизу"
+
+#: backends/platform/wince/CEActionsPocket.cpp:58
+msgid "Cursor Left"
+msgstr "Курсор наліво"
+
+#: backends/platform/wince/CEActionsPocket.cpp:59
+msgid "Cursor Right"
+msgstr "Курсор направо"
+
+#: backends/platform/wince/CEActionsPocket.cpp:267
+#: backends/platform/wince/CEActionsSmartphone.cpp:231
+msgid "Do you want to load or save the game?"
+msgstr "Ви хочете завантажити або зберегти гру?"
+
+#: backends/platform/wince/CEActionsPocket.cpp:326
+#: backends/platform/wince/CEActionsSmartphone.cpp:287
+msgid " Are you sure you want to quit ? "
+msgstr " Ви упевнені, що хочете вийти? "
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:50
+msgid "Keyboard"
+msgstr "Клавіатура"
+
+#: backends/platform/wince/CEActionsSmartphone.cpp:51
+msgid "Rotate"
+msgstr "Повернути"
+
+#: backends/platform/wince/CELauncherDialog.cpp:56
+msgid "Using SDL driver "
+msgstr "Використовую драйвер SDL "
+
+#: backends/platform/wince/CELauncherDialog.cpp:60
+msgid "Display "
+msgstr "Показати "
+
+#: backends/platform/wince/CELauncherDialog.cpp:83
+msgid "Do you want to perform an automatic scan ?"
+msgstr "Ви хочете здійснити автоматичний пошук?"
+
+#: backends/platform/wince/wince-sdl.cpp:516
+msgid "Map right click action"
+msgstr "Перепризначення правого кліку"
+
+#: backends/platform/wince/wince-sdl.cpp:520
+msgid "You must map a key to the 'Right Click' action to play this game"
+msgstr "Ви повинні призначити кнопку до дії 'Правий клік', щоб грати у цю гру"
+
+#: backends/platform/wince/wince-sdl.cpp:529
+msgid "Map hide toolbar action"
+msgstr "Перепризначити дію 'Сховати Панель інстр.'"
+
+#: backends/platform/wince/wince-sdl.cpp:533
+msgid "You must map a key to the 'Hide toolbar' action to play this game"
+msgstr ""
+"Ви повинні перепризначити кнопку для дії 'Сховати Панель інстр.', щоб грати "
+"у цю гру"
+
+#: backends/platform/wince/wince-sdl.cpp:542
+msgid "Map Zoom Up action (optional)"
+msgstr "Перепризначити дію Збільшення (необов'язково)"
+
+#: backends/platform/wince/wince-sdl.cpp:545
+msgid "Map Zoom Down action (optional)"
+msgstr "Перепризначити дію Зменшення (необов'язково)"
+
+#: backends/platform/wince/wince-sdl.cpp:553
+msgid ""
+"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
+msgstr ""
+"Не забудьте перепризначити кнопку для дії 'Сховати Панель інстр.' щоб "
+"побачити весь інвентар"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Do you really want to return to the Launcher?"
+msgstr "Ви дійсно хочете повернутися до головного меню?"
+
+#: backends/events/default/default-events.cpp:196
+msgid "Launcher"
+msgstr "Головне меню"
+
+#: backends/events/default/default-events.cpp:218
+msgid "Do you really want to quit?"
+msgstr "Ви дійсно хочете вийти?"
+
+#: backends/events/gph/gph-events.cpp:386
+#: backends/events/gph/gph-events.cpp:429
+#: backends/events/openpandora/op-events.cpp:168
+msgid "Touchscreen 'Tap Mode' - Left Click"
+msgstr "Режим дотику у тачскріні - Лівий клік"
+
+#: backends/events/gph/gph-events.cpp:388
+#: backends/events/gph/gph-events.cpp:431
+#: backends/events/openpandora/op-events.cpp:170
+msgid "Touchscreen 'Tap Mode' - Right Click"
+msgstr "Режим дотику у тачскріні - Правий клік"
+
+#: backends/events/gph/gph-events.cpp:390
+#: backends/events/gph/gph-events.cpp:433
+#: backends/events/openpandora/op-events.cpp:172
+msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
+msgstr "Режим дотику у тачскріні - Проліт (без кліку)"
+
+#: backends/events/gph/gph-events.cpp:410
+msgid "Maximum Volume"
+msgstr "Максимальна Гучність"
+
+#: backends/events/gph/gph-events.cpp:412
+msgid "Increasing Volume"
+msgstr "Підвищення гучності"
+
+#: backends/events/gph/gph-events.cpp:418
+msgid "Minimal Volume"
+msgstr "Мінімальна Гучність"
+
+#: backends/events/gph/gph-events.cpp:420
+msgid "Decreasing Volume"
+msgstr "Пониження гучності"
+
+#: backends/events/openpandora/op-events.cpp:174
+msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
+msgstr "Режим дотику у тачскріні - Проліт (клік DPad)"
+
+#: backends/updates/macosx/macosx-updates.mm:67
+msgid "Check for Updates..."
+msgstr "Перевіряю оновлення..."
+
+#: backends/platform/tizen/form.cpp:263
+msgid "Right Click Once"
+msgstr "Один правий клік"
+
+#: backends/platform/tizen/form.cpp:271
+msgid "Move Only"
+msgstr "Тільки перемістити"
+
+#: backends/platform/tizen/form.cpp:294
+msgid "Escape Key"
+msgstr "Клавіша ESC"
+
+#: backends/platform/tizen/form.cpp:299
+msgid "Game Menu"
+msgstr "Меню гри"
+
+#: backends/platform/tizen/form.cpp:304
+msgid "Show Keypad"
+msgstr "Показати клавіатуру"
+
+#: backends/platform/tizen/form.cpp:309
+msgid "Control Mouse"
+msgstr "Управління мишею"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Enabled"
+msgstr "Кліки увімкнено"
+
+#: backends/events/maemosdl/maemosdl-events.cpp:192
+msgid "Clicking Disabled"
+msgstr "Кліки вимкнено"
+
+#: engines/agi/detection.cpp:142 engines/drascula/detection.cpp:302
+#: engines/dreamweb/detection.cpp:47 engines/neverhood/detection.cpp:160
+#: engines/sci/detection.cpp:394 engines/toltecs/detection.cpp:187
msgid "Use original save/load screens"
msgstr "Використовувати ориг. збереження/завантаження екрани"
-#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:271
-#: engines/dreamweb/detection.cpp:48 engines/sci/detection.cpp:394
-#: engines/toltecs/detection.cpp:174
+#: engines/agi/detection.cpp:143 engines/drascula/detection.cpp:303
+#: engines/dreamweb/detection.cpp:48 engines/neverhood/detection.cpp:161
+#: engines/sci/detection.cpp:395 engines/toltecs/detection.cpp:188
msgid "Use the original save/load screens, instead of the ScummVM ones"
msgstr ""
"Використовувати оригінальні збереження/завантаження екрани, замість ScummVM"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore game:"
msgstr "Відновити гру:"
-#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:351
-#: engines/sci/engine/kfile.cpp:841 engines/toltecs/menu.cpp:259
+#: engines/agi/saveload.cpp:816 engines/drascula/saveload.cpp:349
+#: engines/neverhood/menumodule.cpp:886 engines/sci/engine/kfile.cpp:841
+#: engines/toltecs/menu.cpp:259
msgid "Restore"
msgstr "Відновити"
-#: engines/drascula/saveload.cpp:49
+#: engines/agos/saveload.cpp:166 engines/scumm/scumm.cpp:2321
+#, c-format
+msgid ""
+"Failed to load game state from file:\n"
+"\n"
+"%s"
+msgstr ""
+"Не вдалося завантажити стан гри з файлу:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:201 engines/scumm/scumm.cpp:2314
+#, c-format
+msgid ""
+"Failed to save game state to file:\n"
+"\n"
+"%s"
+msgstr ""
+"Не вдалося зберегти стан гри у файл:\n"
+"\n"
+"%s"
+
+#: engines/agos/saveload.cpp:209 engines/scumm/scumm.cpp:2332
+#, c-format
+msgid ""
+"Successfully saved game state in file:\n"
+"\n"
+"%s"
+msgstr ""
+"Успішно збержено стан гри у файлі:\n"
+"\n"
+"%s"
+
+#: engines/agos/animation.cpp:557
+#, c-format
+msgid "Cutscene file '%s' not found!"
+msgstr "Файл заставки '%s' не знайдено!"
+
+#: engines/drascula/saveload.cpp:47
msgid ""
"ScummVM found that you have old savefiles for Drascula that should be "
"converted.\n"
@@ -1437,27 +2169,303 @@ msgstr "Використовувати яскравий режим палітри"
msgid "Display graphics using the game's bright palette"
msgstr "Відображення графіки з використанням яскравої палітри ігр"
-#: engines/sci/detection.cpp:373
+#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1470
+#: engines/tinsel/saveload.cpp:532
+msgid "Failed to load game state from file."
+msgstr "Не вдалося завантажити стан гри з файлу."
+
+#: engines/gob/inter_v2.cpp:1540 engines/tinsel/saveload.cpp:545
+msgid "Failed to save game state to file."
+msgstr "Не вдалося зберегти стан гри у файл."
+
+#: engines/gob/inter_v5.cpp:107
+msgid "Failed to delete file."
+msgstr "Не вдалося видалити файл."
+
+#: engines/groovie/detection.cpp:312
+msgid "Fast movie speed"
+msgstr "Режим швидкого відео"
+
+#: engines/groovie/detection.cpp:313
+msgid "Play movies at an increased speed"
+msgstr "Програвати відео з підвищенною швидкістю"
+
+#: engines/groovie/script.cpp:420
+msgid "Failed to save game"
+msgstr "Не вдалося записати гру"
+
+#. I18N: Studio audience adds an applause and cheering sounds whenever
+#. Malcolm makes a joke.
+#: engines/kyra/detection.cpp:62
+msgid "Studio audience"
+msgstr "Студія аудиторії"
+
+#: engines/kyra/detection.cpp:63
+msgid "Enable studio audience"
+msgstr "Увімкнути студію аудиторії"
+
+#. I18N: This option allows the user to skip text and cutscenes.
+#: engines/kyra/detection.cpp:73
+msgid "Skip support"
+msgstr "Підтримувати Пропустити"
+
+#: engines/kyra/detection.cpp:74
+msgid "Allow text and cutscenes to be skipped"
+msgstr "Дозволити пропускати текст і ролики"
+
+#. I18N: Helium mode makes people sound like they've inhaled Helium.
+#: engines/kyra/detection.cpp:84
+msgid "Helium mode"
+msgstr "Режим Геліум"
+
+#: engines/kyra/detection.cpp:85
+msgid "Enable helium mode"
+msgstr "Увімкнути режим Геліум"
+
+#. I18N: When enabled, this option makes scrolling smoother when
+#. changing from one screen to another.
+#: engines/kyra/detection.cpp:99
+msgid "Smooth scrolling"
+msgstr "Плавна прокрутка"
+
+#: engines/kyra/detection.cpp:100
+msgid "Enable smooth scrolling when walking"
+msgstr "Увімкнути плавну прокрутку при ходьбі"
+
+#. I18N: When enabled, this option changes the cursor when it floats to the
+#. edge of the screen to a directional arrow. The player can then click to
+#. walk towards that direction.
+#: engines/kyra/detection.cpp:112
+msgid "Floating cursors"
+msgstr "Плаваючі курсори"
+
+#: engines/kyra/detection.cpp:113
+msgid "Enable floating cursors"
+msgstr "Увімкнути плаваючі курсори"
+
+#. I18N: HP stands for Hit Points
+#: engines/kyra/detection.cpp:127
+msgid "HP bar graphs"
+msgstr "Стовпчики здоров'я"
+
+#: engines/kyra/detection.cpp:128
+msgid "Enable hit point bar graphs"
+msgstr "Уиімкнути графічні стовпички здоров'я"
+
+#: engines/kyra/lol.cpp:478
+msgid "Attack 1"
+msgstr "Атака 1"
+
+#: engines/kyra/lol.cpp:479
+msgid "Attack 2"
+msgstr "Атака 2"
+
+#: engines/kyra/lol.cpp:480
+msgid "Attack 3"
+msgstr "Атака 3"
+
+#: engines/kyra/lol.cpp:481
+msgid "Move Forward"
+msgstr "Рухатись уперед"
+
+#: engines/kyra/lol.cpp:482
+msgid "Move Back"
+msgstr "Рухатись назад"
+
+#: engines/kyra/lol.cpp:483
+msgid "Slide Left"
+msgstr "Ковзати наліво"
+
+#: engines/kyra/lol.cpp:484
+msgid "Slide Right"
+msgstr "Ковзати направо"
+
+#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2475
+msgid "Turn Left"
+msgstr "Повернутися наліво"
+
+#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2476
+msgid "Turn Right"
+msgstr "Повернутися направо"
+
+#: engines/kyra/lol.cpp:487
+msgid "Rest"
+msgstr "Відпочити"
+
+#: engines/kyra/lol.cpp:488
+msgid "Options"
+msgstr "Налаштування"
+
+#: engines/kyra/lol.cpp:489
+msgid "Choose Spell"
+msgstr "Вибрати закляття"
+
+#: engines/kyra/sound_midi.cpp:477
+msgid ""
+"You appear to be using a General MIDI device,\n"
+"but your game only supports Roland MT32 MIDI.\n"
+"We try to map the Roland MT32 instruments to\n"
+"General MIDI ones. It is still possible that\n"
+"some tracks sound incorrect."
+msgstr ""
+"Здається, що Ви використовуєте пристрій General\n"
+"MIDI, але Ваша гра підтримує тільки Roland MT32\n"
+"MIDI. Ми спробуємо замапити інструменти Roland\n"
+"MT32 на General MIDI. Але в результаті може\n"
+"статися, що деякі треки будуть грати неправильно."
+
+#. I18N: Option for fast scene switching
+#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
+msgid "~Z~ip Mode Activated"
+msgstr "Режим швидкого переходу активовано"
+
+#: engines/mohawk/dialogs.cpp:93
+msgid "~T~ransitions Enabled"
+msgstr "Переходи активовано"
+
+#. I18N: Drop book page
+#: engines/mohawk/dialogs.cpp:95
+msgid "~D~rop Page"
+msgstr "Викинути сторінку"
+
+#: engines/mohawk/dialogs.cpp:99
+msgid "~S~how Map"
+msgstr "Показати мапу"
+
+#: engines/mohawk/dialogs.cpp:105
+msgid "~M~ain Menu"
+msgstr "Головне меню"
+
+#: engines/mohawk/dialogs.cpp:168
+msgid "~W~ater Effect Enabled"
+msgstr "Ефекти води увімкнено"
+
+#: engines/neverhood/detection.cpp:167
+msgid "Skip the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:168
+msgid "Allows the player to skip past the Hall of Records storyboard scenes"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:174
+msgid "Scale the making of videos to full screen"
+msgstr ""
+
+#: engines/neverhood/detection.cpp:175
+msgid "Scale the making of videos, so that they use the whole screen"
+msgstr ""
+
+#: engines/parallaction/saveload.cpp:133
+#, c-format
+msgid ""
+"Can't save game in slot %i\n"
+"\n"
+msgstr ""
+"Не можу зберегти гру у слот %i\n"
+"\n"
+
+#: engines/parallaction/saveload.cpp:204
+msgid "Loading game..."
+msgstr "Завантажую гру..."
+
+#: engines/parallaction/saveload.cpp:219
+msgid "Saving game..."
+msgstr "Збережую гру..."
+
+#: engines/parallaction/saveload.cpp:272
+msgid ""
+"ScummVM found that you have old savefiles for Nippon Safes that should be "
+"renamed.\n"
+"The old names are no longer supported, so you will not be able to load your "
+"games if you don't convert them.\n"
+"\n"
+"Press OK to convert them now, otherwise you will be asked next time.\n"
+msgstr ""
+"ScummVM знайшов, що Ви маєте старі збереження ігор для Nippon Safes.\n"
+"Збереження у старому форматі не підтримуються, і Ви не зможете їх "
+"завантажити, якщо не переведете у новий формат.\n"
+"\n"
+"Натисніть ОК, щоб перевести їх зараз, інакше уе повідомлення з'явиться при "
+"наступному запуску гри.\n"
+
+#: engines/parallaction/saveload.cpp:319
+msgid "ScummVM successfully converted all your savefiles."
+msgstr "ScummVM успішно перевів усі Ваші збереження."
+
+#: engines/parallaction/saveload.cpp:321
+msgid ""
+"ScummVM printed some warnings in your console window and can't guarantee all "
+"your files have been converted.\n"
+"\n"
+"Please report to the team."
+msgstr ""
+"ScummVM надрукував деякі попередження у вікні консолі, і немає гарантії, що "
+"усі Ваші файли було переведено.\n"
+"\n"
+"Будь ласка, повідомте про це команді."
+
+#: engines/pegasus/pegasus.cpp:707
+msgid "Invalid save file name"
+msgstr "Неправильна назва файлу збереження"
+
+#: engines/pegasus/pegasus.cpp:2473
+msgid "Up/Zoom In/Move Forward/Open Doors"
+msgstr "Догори/Зменшити масштаб/Вперед/Відчинити двері"
+
+#: engines/pegasus/pegasus.cpp:2474
+msgid "Down/Zoom Out"
+msgstr "Донизу/Збіл. масштаб"
+
+#: engines/pegasus/pegasus.cpp:2477
+msgid "Display/Hide Inventory Tray"
+msgstr "Показати/Сховати інвентар"
+
+#: engines/pegasus/pegasus.cpp:2478
+msgid "Display/Hide Biochip Tray"
+msgstr "Показати/Сховати біочіп"
+
+#: engines/pegasus/pegasus.cpp:2479
+msgid "Action/Select"
+msgstr "Дія/Вибір"
+
+#: engines/pegasus/pegasus.cpp:2480
+msgid "Toggle Center Data Display"
+msgstr "Перемкнути показування в центрі екрану"
+
+#: engines/pegasus/pegasus.cpp:2481
+msgid "Display/Hide Info Screen"
+msgstr "Показати/Сховати інфоекран"
+
+#: engines/pegasus/pegasus.cpp:2482
+msgid "Display/Hide Pause Menu"
+msgstr "Показувати/Сховати меню паузи"
+
+#: engines/pegasus/pegasus.cpp:2483
+msgid "???"
+msgstr "???"
+
+#: engines/sci/detection.cpp:374
msgid "EGA undithering"
msgstr "EGA без растрування"
-#: engines/sci/detection.cpp:374
+#: engines/sci/detection.cpp:375
msgid "Enable undithering in EGA games"
msgstr "Увімкнути анти-згладжування в EGA іграх"
-#: engines/sci/detection.cpp:383
+#: engines/sci/detection.cpp:384
msgid "Prefer digital sound effects"
msgstr "Надавати перевагу цифровим звуковим ефектам"
-#: engines/sci/detection.cpp:384
+#: engines/sci/detection.cpp:385
msgid "Prefer digital sound effects instead of synthesized ones"
msgstr "Віддавати перевагу цифровим звуковим ефектам, а не синтезованим"
-#: engines/sci/detection.cpp:403
+#: engines/sci/detection.cpp:404
msgid "Use IMF/Yamaha FB-01 for MIDI output"
msgstr "Використовувати IMF/Yahama FB-01 для MIDI виходу"
-#: engines/sci/detection.cpp:404
+#: engines/sci/detection.cpp:405
msgid ""
"Use an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI "
"output"
@@ -1465,28 +2473,28 @@ msgstr ""
"Використовувати дляв виводу MIDI режим карти IBM Feature або FM сінтез "
"Yamaha FB-01"
-#: engines/sci/detection.cpp:414
+#: engines/sci/detection.cpp:415
msgid "Use CD audio"
msgstr "Використовувати CD аудіо"
-#: engines/sci/detection.cpp:415
+#: engines/sci/detection.cpp:416
msgid "Use CD audio instead of in-game audio, if available"
msgstr "Використовувати CD аудіо замість у-грі аудіо, якщо такі є"
-#: engines/sci/detection.cpp:425
+#: engines/sci/detection.cpp:426
msgid "Use Windows cursors"
msgstr "Використовувати Windows курсори"
-#: engines/sci/detection.cpp:426
+#: engines/sci/detection.cpp:427
msgid ""
"Use the Windows cursors (smaller and monochrome) instead of the DOS ones"
msgstr "Використовувати Windows курсори (менших і монохромних), замість DOS"
-#: engines/sci/detection.cpp:436
+#: engines/sci/detection.cpp:437
msgid "Use silver cursors"
msgstr "Використовувати срібні курсори"
-#: engines/sci/detection.cpp:437
+#: engines/sci/detection.cpp:438
msgid ""
"Use the alternate set of silver cursors, instead of the normal golden ones"
msgstr ""
@@ -1528,15 +2536,6 @@ msgstr "Ви упевнені, що хочете вийти? (Y/N)"
msgid "Play"
msgstr "Грати"
-#: engines/scumm/dialogs.cpp:191 engines/scumm/help.cpp:82
-#: engines/scumm/help.cpp:84
-#: backends/platform/symbian/src/SymbianActions.cpp:52
-#: backends/platform/wince/CEActionsPocket.cpp:44
-#: backends/platform/wince/CEActionsSmartphone.cpp:52
-#: backends/events/default/default-events.cpp:215
-msgid "Quit"
-msgstr "Вихід"
-
#: engines/scumm/dialogs.cpp:193
msgid "Insert save/load game disk"
msgstr "Вставте диск зі збереженням ігор"
@@ -1585,11 +2584,6 @@ msgstr "~П~опер"
msgid "~N~ext"
msgstr "~Н~аст"
-#: engines/scumm/dialogs.cpp:290
-#: backends/platform/ds/arm9/source/dsoptions.cpp:56
-msgid "~C~lose"
-msgstr "~З~акрити"
-
#: engines/scumm/dialogs.cpp:597
msgid "Speech Only"
msgstr "Тільки озвучка"
@@ -1615,10 +2609,6 @@ msgstr "Оберіть режим складності."
msgid "Refer to your Loom(TM) manual for help."
msgstr "За допомогою звертайтеся до інструкції Loom(TM)."
-#: engines/scumm/dialogs.cpp:658
-msgid "Standard"
-msgstr "Стандартний"
-
#: engines/scumm/dialogs.cpp:659
msgid "Practice"
msgstr "Практика"
@@ -2140,7 +3130,7 @@ msgstr "Летіти направо"
msgid "Fly to lower right"
msgstr "Летіти донизу направо"
-#: engines/scumm/scumm.cpp:1776
+#: engines/scumm/scumm.cpp:1777
#, c-format
msgid ""
"Native MIDI support requires the Roland Upgrade from LucasArts,\n"
@@ -2149,40 +3139,7 @@ msgstr ""
"Режим \"рідного\" MIDI потребує поновлення Roland Upgrade від\n"
"LucasArts, проте %s відсутній. Перемикаюсь на AdLib."
-#: engines/scumm/scumm.cpp:2303 engines/agos/saveload.cpp:220
-#, c-format
-msgid ""
-"Failed to save game state to file:\n"
-"\n"
-"%s"
-msgstr ""
-"Не вдалося зберегти стан гри у файл:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2310 engines/agos/saveload.cpp:185
-#, c-format
-msgid ""
-"Failed to load game state from file:\n"
-"\n"
-"%s"
-msgstr ""
-"Не вдалося завантажити стан гри з файлу:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2322 engines/agos/saveload.cpp:228
-#, c-format
-msgid ""
-"Successfully saved game state in file:\n"
-"\n"
-"%s"
-msgstr ""
-"Успішно збержено стан гри у файлі:\n"
-"\n"
-"%s"
-
-#: engines/scumm/scumm.cpp:2537
+#: engines/scumm/scumm.cpp:2547
msgid ""
"Usually, Maniac Mansion would start now. But ScummVM doesn't do that yet. To "
"play it, go to 'Add Game' in the ScummVM start menu and select the 'Maniac' "
@@ -2192,190 +3149,6 @@ msgstr ""
"вміє. Щоб грати у нього, оберіть 'Додати гру' у початковому меню ScummVM, і "
"виберіть папку Maniac всередені пвпки з грою Tentacle."
-#. I18N: Option for fast scene switching
-#: engines/mohawk/dialogs.cpp:92 engines/mohawk/dialogs.cpp:167
-msgid "~Z~ip Mode Activated"
-msgstr "Режим швидкого переходу активовано"
-
-#: engines/mohawk/dialogs.cpp:93
-msgid "~T~ransitions Enabled"
-msgstr "Переходи активовано"
-
-#. I18N: Drop book page
-#: engines/mohawk/dialogs.cpp:95
-msgid "~D~rop Page"
-msgstr "Викинути сторінку"
-
-#: engines/mohawk/dialogs.cpp:99
-msgid "~S~how Map"
-msgstr "Показати мапу"
-
-#: engines/mohawk/dialogs.cpp:105
-msgid "~M~ain Menu"
-msgstr "Головне меню"
-
-#: engines/mohawk/dialogs.cpp:168
-msgid "~W~ater Effect Enabled"
-msgstr "Ефекти води увімкнено"
-
-#: engines/agos/animation.cpp:557
-#, c-format
-msgid "Cutscene file '%s' not found!"
-msgstr "Файл заставки '%s' не знайдено!"
-
-#: engines/gob/inter_playtoons.cpp:256 engines/gob/inter_v2.cpp:1287
-#: engines/tinsel/saveload.cpp:532
-msgid "Failed to load game state from file."
-msgstr "Не вдалося завантажити стан гри з файлу."
-
-#: engines/gob/inter_v2.cpp:1357 engines/tinsel/saveload.cpp:545
-msgid "Failed to save game state to file."
-msgstr "Не вдалося зберегти стан гри у файл."
-
-#: engines/gob/inter_v5.cpp:107
-msgid "Failed to delete file."
-msgstr "Не вдалося видалити файл."
-
-#: engines/groovie/detection.cpp:312
-msgid "Fast movie speed"
-msgstr "Режим швидкого відео"
-
-#: engines/groovie/detection.cpp:313
-msgid "Play movies at an increased speed"
-msgstr "Програвати відео з підвищенною швидкістю"
-
-#: engines/groovie/script.cpp:420
-msgid "Failed to save game"
-msgstr "Не вдалося записати гру"
-
-#. I18N: Studio audience adds an applause and cheering sounds whenever
-#. Malcolm makes a joke.
-#: engines/kyra/detection.cpp:62
-msgid "Studio audience"
-msgstr "Студія аудиторії"
-
-#: engines/kyra/detection.cpp:63
-msgid "Enable studio audience"
-msgstr "Увімкнути студію аудиторії"
-
-#. I18N: This option allows the user to skip text and cutscenes.
-#: engines/kyra/detection.cpp:73
-msgid "Skip support"
-msgstr "Підтримувати Пропустити"
-
-#: engines/kyra/detection.cpp:74
-msgid "Allow text and cutscenes to be skipped"
-msgstr "Дозволити пропускати текст і ролики"
-
-#. I18N: Helium mode makes people sound like they've inhaled Helium.
-#: engines/kyra/detection.cpp:84
-msgid "Helium mode"
-msgstr "Режим Геліум"
-
-#: engines/kyra/detection.cpp:85
-msgid "Enable helium mode"
-msgstr "Увімкнути режим Геліум"
-
-#. I18N: When enabled, this option makes scrolling smoother when
-#. changing from one screen to another.
-#: engines/kyra/detection.cpp:99
-msgid "Smooth scrolling"
-msgstr "Плавна прокрутка"
-
-#: engines/kyra/detection.cpp:100
-msgid "Enable smooth scrolling when walking"
-msgstr "Увімкнути плавну прокрутку при ходьбі"
-
-#. I18N: When enabled, this option changes the cursor when it floats to the
-#. edge of the screen to a directional arrow. The player can then click to
-#. walk towards that direction.
-#: engines/kyra/detection.cpp:112
-msgid "Floating cursors"
-msgstr "Плаваючі курсори"
-
-#: engines/kyra/detection.cpp:113
-msgid "Enable floating cursors"
-msgstr "Увімкнути плаваючі курсори"
-
-#. I18N: HP stands for Hit Points
-#: engines/kyra/detection.cpp:127
-msgid "HP bar graphs"
-msgstr "Стовпчики здоров'я"
-
-#: engines/kyra/detection.cpp:128
-msgid "Enable hit point bar graphs"
-msgstr "Уиімкнути графічні стовпички здоров'я"
-
-#: engines/kyra/lol.cpp:478
-msgid "Attack 1"
-msgstr "Атака 1"
-
-#: engines/kyra/lol.cpp:479
-msgid "Attack 2"
-msgstr "Атака 2"
-
-#: engines/kyra/lol.cpp:480
-msgid "Attack 3"
-msgstr "Атака 3"
-
-#: engines/kyra/lol.cpp:481
-msgid "Move Forward"
-msgstr "Рухатись уперед"
-
-#: engines/kyra/lol.cpp:482
-msgid "Move Back"
-msgstr "Рухатись назад"
-
-#: engines/kyra/lol.cpp:483
-msgid "Slide Left"
-msgstr "Ковзати наліво"
-
-#: engines/kyra/lol.cpp:484
-msgid "Slide Right"
-msgstr "Ковзати направо"
-
-#: engines/kyra/lol.cpp:485 engines/pegasus/pegasus.cpp:2447
-msgid "Turn Left"
-msgstr "Повернутися наліво"
-
-#: engines/kyra/lol.cpp:486 engines/pegasus/pegasus.cpp:2448
-msgid "Turn Right"
-msgstr "Повернутися направо"
-
-#: engines/kyra/lol.cpp:487
-msgid "Rest"
-msgstr "Відпочити"
-
-#: engines/kyra/lol.cpp:488
-msgid "Options"
-msgstr "Налаштування"
-
-#: engines/kyra/lol.cpp:489
-msgid "Choose Spell"
-msgstr "Вибрати закляття"
-
-#: engines/kyra/sound_midi.cpp:477
-msgid ""
-"You appear to be using a General MIDI device,\n"
-"but your game only supports Roland MT32 MIDI.\n"
-"We try to map the Roland MT32 instruments to\n"
-"General MIDI ones. It is still possible that\n"
-"some tracks sound incorrect."
-msgstr ""
-"Здається, що Ви використовуєте пристрій General\n"
-"MIDI, але Ваша гра підтримує тільки Roland MT32\n"
-"MIDI. Ми спробуємо замапити інструменти Roland\n"
-"MT32 на General MIDI. Але в результаті може\n"
-"статися, що деякі треки будуть грати неправильно."
-
-#: engines/queen/queen.cpp:59
-msgid "Alternative intro"
-msgstr "Алтернативний вступ"
-
-#: engines/queen/queen.cpp:60
-msgid "Use an alternative game intro (CD version only)"
-msgstr "Використовувати альтернативний вступ гри (тільки CD версія)"
-
#: engines/sky/compact.cpp:130
msgid ""
"Unable to find \"sky.cpt\" file!\n"
@@ -2400,20 +3173,21 @@ msgstr "Дискетне введення"
msgid "Use the floppy version's intro (CD version only)"
msgstr "Використовувати дискетні версії введення (тільки CD версія)"
-#: engines/sword1/animation.cpp:519
+#: engines/sword1/animation.cpp:524
#, c-format
msgid "PSX stream cutscene '%s' cannot be played in paletted mode"
msgstr " ролик PSX потоку '%s' не можуть бути відтворені у режимі палітри"
-#: engines/sword1/animation.cpp:540 engines/sword2/animation.cpp:439
+#: engines/sword1/animation.cpp:545 engines/sword2/animation.cpp:445
msgid "DXA cutscenes found but ScummVM has been built without zlib support"
msgstr "Знайдено заставки DXA, але ScummVM був побудований без підтримки zlib"
-#: engines/sword1/animation.cpp:550 engines/sword2/animation.cpp:449
-msgid "MPEG2 cutscenes are no longer supported"
-msgstr "Заставки MPEG2 більше не підтримуються"
+#: engines/sword1/animation.cpp:561
+#, fuzzy
+msgid "MPEG-2 cutscenes found but ScummVM has been built without MPEG-2"
+msgstr "Знайдені PSX ролики, але ScummVM був зібраний без підтримки RGB коліру"
-#: engines/sword1/animation.cpp:556 engines/sword2/animation.cpp:457
+#: engines/sword1/animation.cpp:568 engines/sword2/animation.cpp:470
#, c-format
msgid "Cutscene '%s' not found"
msgstr "Заставку '%s' не знайдено"
@@ -2456,11 +3230,17 @@ msgstr "Взяти нове"
msgid "This is the end of the Broken Sword 1 Demo"
msgstr "На цьому закінчується демо Broken Sword 1"
-#: engines/sword2/animation.cpp:419
+#: engines/sword2/animation.cpp:425
msgid ""
"PSX cutscenes found but ScummVM has been built without RGB color support"
msgstr "Знайдені PSX ролики, але ScummVM був зібраний без підтримки RGB коліру"
+#: engines/sword2/animation.cpp:461
+#, fuzzy
+msgid ""
+"MPEG-2 cutscenes found but ScummVM has been built without MPEG-2 support"
+msgstr "Знайдено заставки DXA, але ScummVM був побудований без підтримки zlib"
+
#: engines/sword2/sword2.cpp:79
msgid "Show object labels"
msgstr "Показувати мітки об'єктів"
@@ -2483,789 +3263,50 @@ msgstr ""
"Файл teenagent.dat запаковано, але zlib не було включено в цю программу.Будь-"
"ласка розпакуйте його"
-#: engines/parallaction/saveload.cpp:133
-#, c-format
-msgid ""
-"Can't save game in slot %i\n"
-"\n"
-msgstr ""
-"Не можу зберегти гру у слот %i\n"
-"\n"
-
-#: engines/parallaction/saveload.cpp:204
-msgid "Loading game..."
-msgstr "Завантажую гру..."
-
-#: engines/parallaction/saveload.cpp:219
-msgid "Saving game..."
-msgstr "Збережую гру..."
-
-#: engines/parallaction/saveload.cpp:272
-msgid ""
-"ScummVM found that you have old savefiles for Nippon Safes that should be "
-"renamed.\n"
-"The old names are no longer supported, so you will not be able to load your "
-"games if you don't convert them.\n"
-"\n"
-"Press OK to convert them now, otherwise you will be asked next time.\n"
-msgstr ""
-"ScummVM знайшов, що Ви маєте старі збереження ігор для Nippon Safes.\n"
-"Збереження у старому форматі не підтримуються, і Ви не зможете їх "
-"завантажити, якщо не переведете у новий формат.\n"
-"\n"
-"Натисніть ОК, щоб перевести їх зараз, інакше уе повідомлення з'явиться при "
-"наступному запуску гри.\n"
-
-#: engines/parallaction/saveload.cpp:319
-msgid "ScummVM successfully converted all your savefiles."
-msgstr "ScummVM успішно перевів усі Ваші збереження."
-
-#: engines/parallaction/saveload.cpp:321
-msgid ""
-"ScummVM printed some warnings in your console window and can't guarantee all "
-"your files have been converted.\n"
-"\n"
-"Please report to the team."
-msgstr ""
-"ScummVM надрукував деякі попередження у вікні консолі, і немає гарантії, що "
-"усі Ваші файли було переведено.\n"
-"\n"
-"Будь ласка, повідомте про це команді."
-
-#: engines/pegasus/pegasus.cpp:679
-msgid "Invalid save file name"
-msgstr "Неправильна назва файлу збереження"
-
-#: engines/pegasus/pegasus.cpp:2445
-msgid "Up/Zoom In/Move Forward/Open Doors"
-msgstr "Догори/Зменшити масштаб/Вперед/Відчинити двері"
-
-#: engines/pegasus/pegasus.cpp:2446
-msgid "Down/Zoom Out"
-msgstr "Донизу/Збіл. масштаб"
-
-#: engines/pegasus/pegasus.cpp:2449
-msgid "Display/Hide Inventory Tray"
-msgstr "Показати/Сховати інвентар"
-
-#: engines/pegasus/pegasus.cpp:2450
-msgid "Display/Hide Biochip Tray"
-msgstr "Показати/Сховати біочіп"
-
-#: engines/pegasus/pegasus.cpp:2451
-msgid "Action/Select"
-msgstr "Дія/Вибір"
-
-#: engines/pegasus/pegasus.cpp:2452
-msgid "Toggle Center Data Display"
-msgstr "Перемкнути показування в центрі екрану"
-
-#: engines/pegasus/pegasus.cpp:2453
-msgid "Display/Hide Info Screen"
-msgstr "Показати/Сховати інфоекран"
-
-#: engines/pegasus/pegasus.cpp:2454
-msgid "Display/Hide Pause Menu"
-msgstr "Показувати/Сховати меню паузи"
-
-#: engines/pegasus/pegasus.cpp:2455
-msgid "???"
-msgstr "???"
-
-#: audio/fmopl.cpp:49
-msgid "MAME OPL emulator"
-msgstr "Емулятор MAME OPL"
-
-#: audio/fmopl.cpp:51
-msgid "DOSBox OPL emulator"
-msgstr "Емулятор DOSBox OPL"
-
-#: audio/mididrv.cpp:209
-#, c-format
-msgid ""
-"The selected audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Вибраний звуковий пристрій '%s' не було знайдено (тобто, його може бути "
-"вимкнено або не підключено)."
-
-#: audio/mididrv.cpp:209 audio/mididrv.cpp:221 audio/mididrv.cpp:257
-#: audio/mididrv.cpp:272
-msgid "Attempting to fall back to the next available device..."
-msgstr "Намагаюся використати наступний доступний пристрій..."
-
-#: audio/mididrv.cpp:221
-#, c-format
-msgid ""
-"The selected audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Вибраний звуковий пристрій '%s' не може бути використаний. Дивіться файл "
-"логу для додаткової інформації."
-
-#: audio/mididrv.cpp:257
-#, c-format
-msgid ""
-"The preferred audio device '%s' was not found (e.g. might be turned off or "
-"disconnected)."
-msgstr ""
-"Уподобаний звуковий пристрій '%s' не було знайдено (тобто, його може бути "
-"вимкнено або не підключено)."
-
-#: audio/mididrv.cpp:272
-#, c-format
-msgid ""
-"The preferred audio device '%s' cannot be used. See log file for more "
-"information."
-msgstr ""
-"Уподобаний звуковий пристрій '%s' не може бути використаний. Дивіться файл "
-"логу для додаткової інформації."
-
-#: audio/null.h:43
-msgid "No music"
-msgstr "Без музики"
-
-#: audio/mods/paula.cpp:189
-msgid "Amiga Audio Emulator"
-msgstr "Аміга Аудіо Емулятор"
-
-#: audio/softsynth/adlib.cpp:2284
-msgid "AdLib Emulator"
-msgstr "Емулятор AdLib"
-
-#: audio/softsynth/appleiigs.cpp:33
-msgid "Apple II GS Emulator (NOT IMPLEMENTED)"
-msgstr "Apple II GS Емулятор (НЕ РЕАЛІЗОВАНО)"
-
-#: audio/softsynth/sid.cpp:1430
-msgid "C64 Audio Emulator"
-msgstr "C64 Аудіо Емулятор"
-
-#: audio/softsynth/mt32.cpp:205
-msgid "Initializing MT-32 Emulator"
-msgstr "Налаштовую емулятор MT-32"
-
-#: audio/softsynth/mt32.cpp:431
-msgid "MT-32 Emulator"
-msgstr "Емулятор MT-32"
-
-#: audio/softsynth/pcspk.cpp:139
-msgid "PC Speaker Emulator"
-msgstr "Емулятор PC спікера"
-
-#: audio/softsynth/pcspk.cpp:158
-msgid "IBM PCjr Emulator"
-msgstr "Емулятор IBM PCjr"
-
-#: backends/keymapper/remap-dialog.cpp:47
-msgid "Keymap:"
-msgstr "Мапа клавіш:"
-
-#: backends/keymapper/remap-dialog.cpp:66
-msgid " (Effective)"
-msgstr " (Ефективна)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Active)"
-msgstr " (Активна)"
-
-#: backends/keymapper/remap-dialog.cpp:106
-msgid " (Blocked)"
-msgstr " (Заблокований)"
-
-#: backends/keymapper/remap-dialog.cpp:119
-msgid " (Global)"
-msgstr " (Глобальна)"
-
-#: backends/keymapper/remap-dialog.cpp:127
-msgid " (Game)"
-msgstr " (Ігри)"
-
-#: backends/midi/windows.cpp:164
-msgid "Windows MIDI"
-msgstr "Windows MIDI"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:57
-msgid "ScummVM Main Menu"
-msgstr "Головне меню ScummVM"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:63
-msgid "~L~eft handed mode"
-msgstr "Ліворукий режим"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:64
-msgid "~I~ndy fight controls"
-msgstr "Керування боями в Indy"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:65
-msgid "Show mouse cursor"
-msgstr "Показувати курсор миші"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:66
-msgid "Snap to edges"
-msgstr "Прикріпити до країв"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:68
-msgid "Touch X Offset"
-msgstr "Зміщення дотиків по осі X"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:75
-msgid "Touch Y Offset"
-msgstr "Зміщення дотиків по осі Y"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:87
-msgid "Use laptop trackpad-style cursor control"
-msgstr "Використовувати управління курсором як на трекпаді лаптопів"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:88
-msgid "Tap for left click, double tap right click"
-msgstr "Тап для лівого клацання, подвійний тап для правого клацання"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:90
-msgid "Sensitivity"
-msgstr "Чутливість"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:99
-msgid "Initial top screen scale:"
-msgstr "Початковий масштаб верхнього екрану:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:105
-msgid "Main screen scaling:"
-msgstr "Масштаб головного екрану:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:107
-msgid "Hardware scale (fast, but low quality)"
-msgstr "Хардварне масштабування (швидко, але низької якості)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:108
-msgid "Software scale (good quality, but slower)"
-msgstr "Програмне масштабування (хороша якість, але повільніше)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:109
-msgid "Unscaled (you must scroll left and right)"
-msgstr "Без масштабування (треба буде прокручувати наліво і направо)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:111
-msgid "Brightness:"
-msgstr "Яскравість:"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:121
-msgid "High quality audio (slower) (reboot)"
-msgstr "Висока якість звуку (повільніше) (ребут)"
-
-#: backends/platform/ds/arm9/source/dsoptions.cpp:122
-msgid "Disable power off"
-msgstr "Заборонити вимкнення"
-
-#: backends/platform/iphone/osys_events.cpp:300
-msgid "Mouse-click-and-drag mode enabled."
-msgstr "Режим миші клікнути-та-тягнути увімкнено."
-
-#: backends/platform/iphone/osys_events.cpp:302
-msgid "Mouse-click-and-drag mode disabled."
-msgstr "Режим миші клікнути-та-тягнути вимкнено."
-
-#: backends/platform/iphone/osys_events.cpp:313
-msgid "Touchpad mode enabled."
-msgstr "Режим тачпаду увімкнено."
-
-#: backends/platform/iphone/osys_events.cpp:315
-msgid "Touchpad mode disabled."
-msgstr "Режим тачпаду вимкнено."
-
-#: backends/platform/maemo/maemo.cpp:209
-msgid "Click Mode"
-msgstr "Режим кліків"
-
-#: backends/platform/maemo/maemo.cpp:215
-#: backends/platform/symbian/src/SymbianActions.cpp:42
-#: backends/platform/wince/CEActionsPocket.cpp:60
-#: backends/platform/wince/CEActionsSmartphone.cpp:43
-#: backends/platform/bada/form.cpp:281
-msgid "Left Click"
-msgstr "Лівий клік"
-
-#: backends/platform/maemo/maemo.cpp:218
-msgid "Middle Click"
-msgstr "Середній клік"
-
-#: backends/platform/maemo/maemo.cpp:221
-#: backends/platform/symbian/src/SymbianActions.cpp:43
-#: backends/platform/wince/CEActionsSmartphone.cpp:44
-#: backends/platform/bada/form.cpp:273
-msgid "Right Click"
-msgstr "Правий клік"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:77
-msgid "Hide ScummVM"
-msgstr "Сховати ScummVM"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:82
-msgid "Hide Others"
-msgstr "Сховати Інші"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:87
-msgid "Show All"
-msgstr "Показати Все"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:109
-#: backends/platform/sdl/macosx/appmenu_osx.mm:120
-msgid "Window"
-msgstr "Вікно"
-
-#: backends/platform/sdl/macosx/appmenu_osx.mm:114
-msgid "Minimize"
-msgstr "Мінімізувати"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:45
-msgid "Normal (no scaling)"
-msgstr "Без збільшення"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:64
-msgctxt "lowres"
-msgid "Normal (no scaling)"
-msgstr "Без збільшення"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2135
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:537
-msgid "Enabled aspect ratio correction"
-msgstr "Корекцію співвідношення сторін увімкнено"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2141
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:542
-msgid "Disabled aspect ratio correction"
-msgstr "Корекцію співвідношення сторін вимкнено"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2196
-msgid "Active graphics filter:"
-msgstr "Поточний графічний фільтр:"
-
-#: backends/graphics/surfacesdl/surfacesdl-graphics.cpp:2238
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:481
-msgid "Windowed mode"
-msgstr "Віконний режим"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:135
-msgid "OpenGL Normal"
-msgstr "OpenGL нормальний"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:136
-msgid "OpenGL Conserve"
-msgstr "OpenGL Збережений"
-
-#: backends/graphics/opengl/opengl-graphics.cpp:137
-msgid "OpenGL Original"
-msgstr "OpenGL Оригінальний"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:415
-msgid "Current display mode"
-msgstr "Поточний відеорежим"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:428
-msgid "Current scale"
-msgstr "Поточний масштаб"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:562
-msgid "Active filter mode: Linear"
-msgstr "Активний режим фільтрації: Лінійний"
-
-#: backends/graphics/openglsdl/openglsdl-graphics.cpp:564
-msgid "Active filter mode: Nearest"
-msgstr "Активний режим фільтрації: Найближче"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:38
-#: backends/platform/wince/CEActionsSmartphone.cpp:39
-msgid "Up"
-msgstr "Догори"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:39
-#: backends/platform/wince/CEActionsSmartphone.cpp:40
-msgid "Down"
-msgstr "Донизу"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:40
-#: backends/platform/wince/CEActionsSmartphone.cpp:41
-msgid "Left"
-msgstr "Наліво"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:41
-#: backends/platform/wince/CEActionsSmartphone.cpp:42
-msgid "Right"
-msgstr "Направо"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:46
-#: backends/platform/wince/CEActionsSmartphone.cpp:47
-msgid "Zone"
-msgstr "Зона"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:47
-#: backends/platform/wince/CEActionsPocket.cpp:54
-#: backends/platform/wince/CEActionsSmartphone.cpp:48
-msgid "Multi Function"
-msgstr "Мультифункція"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:48
-msgid "Swap character"
-msgstr "Змінити героя"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:49
-msgid "Skip text"
-msgstr "Пропустити текст"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:51
-msgid "Fast mode"
-msgstr "Швидкий режим"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:53
-msgid "Debugger"
-msgstr "Відладчик"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:54
-msgid "Global menu"
-msgstr "Глобальне меню"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:55
-msgid "Virtual keyboard"
-msgstr "Віртуальна клавіатура"
-
-#: backends/platform/symbian/src/SymbianActions.cpp:56
-msgid "Key mapper"
-msgstr "Призначення клавіш"
-
-#: backends/events/symbiansdl/symbiansdl-events.cpp:184
-msgid "Do you want to quit ?"
-msgstr "Ви дійсно хочете вийти?"
-
-#: backends/platform/wii/options.cpp:51
-msgid "Video"
-msgstr "Відео"
-
-#: backends/platform/wii/options.cpp:54
-msgid "Current video mode:"
-msgstr "Поточний відеорежим:"
-
-#: backends/platform/wii/options.cpp:56
-msgid "Double-strike"
-msgstr "Подвійний удар"
-
-#: backends/platform/wii/options.cpp:60
-msgid "Horizontal underscan:"
-msgstr "Горизонтальний underscan:"
-
-#: backends/platform/wii/options.cpp:66
-msgid "Vertical underscan:"
-msgstr "Вертикальний underscan:"
-
-#: backends/platform/wii/options.cpp:71
-msgid "Input"
-msgstr "Ввід"
-
-#: backends/platform/wii/options.cpp:74
-msgid "GC Pad sensitivity:"
-msgstr "Чутливість GC паду:"
-
-#: backends/platform/wii/options.cpp:80
-msgid "GC Pad acceleration:"
-msgstr "Прискорення GC паду:"
-
-#: backends/platform/wii/options.cpp:86
-msgid "DVD"
-msgstr "DVD"
-
-#: backends/platform/wii/options.cpp:89 backends/platform/wii/options.cpp:101
-msgid "Status:"
-msgstr "Стан:"
-
-#: backends/platform/wii/options.cpp:90 backends/platform/wii/options.cpp:102
-msgid "Unknown"
-msgstr "Невідомо"
-
-#: backends/platform/wii/options.cpp:93
-msgid "Mount DVD"
-msgstr "Підключити DVD"
-
-#: backends/platform/wii/options.cpp:94
-msgid "Unmount DVD"
-msgstr "Відключити DVD"
-
-#: backends/platform/wii/options.cpp:98
-msgid "SMB"
-msgstr "SMB"
-
-#: backends/platform/wii/options.cpp:106
-msgid "Server:"
-msgstr "Сервер:"
-
-#: backends/platform/wii/options.cpp:110
-msgid "Share:"
-msgstr "Мережева папка:"
-
-#: backends/platform/wii/options.cpp:114
-msgid "Username:"
-msgstr "Користувач:"
-
-#: backends/platform/wii/options.cpp:118
-msgid "Password:"
-msgstr "Пароль:"
-
-#: backends/platform/wii/options.cpp:121
-msgid "Init network"
-msgstr "Налаштування мережі"
-
-#: backends/platform/wii/options.cpp:123
-msgid "Mount SMB"
-msgstr "Підключити SMB"
-
-#: backends/platform/wii/options.cpp:124
-msgid "Unmount SMB"
-msgstr "Відключти SMB"
-
-#: backends/platform/wii/options.cpp:143
-msgid "DVD Mounted successfully"
-msgstr "DVD підключено успішно"
-
-#: backends/platform/wii/options.cpp:146
-msgid "Error while mounting the DVD"
-msgstr "Помилка під час підключення DVD"
-
-#: backends/platform/wii/options.cpp:148
-msgid "DVD not mounted"
-msgstr "DVD не підключено"
-
-#: backends/platform/wii/options.cpp:161
-msgid "Network up, share mounted"
-msgstr "Мережа працює, папку підключено"
-
-#: backends/platform/wii/options.cpp:163
-msgid "Network up"
-msgstr "Мережа працює"
-
-#: backends/platform/wii/options.cpp:166
-msgid ", error while mounting the share"
-msgstr ", помилка під час підключення папки"
-
-#: backends/platform/wii/options.cpp:168
-msgid ", share not mounted"
-msgstr ", папку не підключено"
-
-#: backends/platform/wii/options.cpp:174
-msgid "Network down"
-msgstr "Мережу вимкнено"
-
-#: backends/platform/wii/options.cpp:178
-msgid "Initializing network"
-msgstr "Налаштовую мережу"
-
-#: backends/platform/wii/options.cpp:182
-msgid "Timeout while initializing network"
-msgstr "Час підключення до мережі вийшов"
-
-#: backends/platform/wii/options.cpp:186
-#, c-format
-msgid "Network not initialized (%d)"
-msgstr "Мережу не налаштовано (%d)"
-
-#: backends/platform/wince/CEActionsPocket.cpp:46
-msgid "Hide Toolbar"
-msgstr "Заховати панель інструментів"
-
-#: backends/platform/wince/CEActionsPocket.cpp:47
-msgid "Show Keyboard"
-msgstr "Показати клавіатуру"
-
-#: backends/platform/wince/CEActionsPocket.cpp:48
-msgid "Sound on/off"
-msgstr "Звук увім/вимк"
-
-#: backends/platform/wince/CEActionsPocket.cpp:49
-msgid "Right click"
-msgstr "Правий клік"
-
-#: backends/platform/wince/CEActionsPocket.cpp:50
-msgid "Show/Hide Cursor"
-msgstr "Показати/сховати курсор"
-
-#: backends/platform/wince/CEActionsPocket.cpp:51
-msgid "Free look"
-msgstr "Вільний огляд"
-
-#: backends/platform/wince/CEActionsPocket.cpp:52
-msgid "Zoom up"
-msgstr "Збіл. масштаб"
-
-#: backends/platform/wince/CEActionsPocket.cpp:53
-msgid "Zoom down"
-msgstr "Змнш. масштаб"
-
-#: backends/platform/wince/CEActionsPocket.cpp:55
-#: backends/platform/wince/CEActionsSmartphone.cpp:49
-msgid "Bind Keys"
-msgstr "Призначити клавіші"
-
-#: backends/platform/wince/CEActionsPocket.cpp:56
-msgid "Cursor Up"
-msgstr "Курсор догори"
-
-#: backends/platform/wince/CEActionsPocket.cpp:57
-msgid "Cursor Down"
-msgstr "Курсор донизу"
-
-#: backends/platform/wince/CEActionsPocket.cpp:58
-msgid "Cursor Left"
-msgstr "Курсор наліво"
-
-#: backends/platform/wince/CEActionsPocket.cpp:59
-msgid "Cursor Right"
-msgstr "Курсор направо"
-
-#: backends/platform/wince/CEActionsPocket.cpp:267
-#: backends/platform/wince/CEActionsSmartphone.cpp:231
-msgid "Do you want to load or save the game?"
-msgstr "Ви хочете завантажити або зберегти гру?"
-
-#: backends/platform/wince/CEActionsPocket.cpp:326
-#: backends/platform/wince/CEActionsSmartphone.cpp:287
-msgid " Are you sure you want to quit ? "
-msgstr " Ви упевнені, що хочете вийти? "
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:50
-msgid "Keyboard"
-msgstr "Клавіатура"
-
-#: backends/platform/wince/CEActionsSmartphone.cpp:51
-msgid "Rotate"
-msgstr "Повернути"
-
-#: backends/platform/wince/CELauncherDialog.cpp:56
-msgid "Using SDL driver "
-msgstr "Використовую драйвер SDL "
-
-#: backends/platform/wince/CELauncherDialog.cpp:60
-msgid "Display "
-msgstr "Показати "
-
-#: backends/platform/wince/CELauncherDialog.cpp:83
-msgid "Do you want to perform an automatic scan ?"
-msgstr "Ви хочете здійснити автоматичний пошук?"
-
-#: backends/platform/wince/wince-sdl.cpp:515
-msgid "Map right click action"
-msgstr "Перепризначення правого кліку"
-
-#: backends/platform/wince/wince-sdl.cpp:519
-msgid "You must map a key to the 'Right Click' action to play this game"
-msgstr "Ви повинні призначити кнопку до дії 'Правий клік', щоб грати у цю гру"
-
-#: backends/platform/wince/wince-sdl.cpp:528
-msgid "Map hide toolbar action"
-msgstr "Перепризначити дію 'Сховати Панель інстр.'"
-
-#: backends/platform/wince/wince-sdl.cpp:532
-msgid "You must map a key to the 'Hide toolbar' action to play this game"
-msgstr ""
-"Ви повинні перепризначити кнопку для дії 'Сховати Панель інстр.', щоб грати "
-"у цю гру"
-
-#: backends/platform/wince/wince-sdl.cpp:541
-msgid "Map Zoom Up action (optional)"
-msgstr "Перепризначити дію Збільшення (необов'язково)"
-
-#: backends/platform/wince/wince-sdl.cpp:544
-msgid "Map Zoom Down action (optional)"
-msgstr "Перепризначити дію Зменшення (необов'язково)"
-
-#: backends/platform/wince/wince-sdl.cpp:552
-msgid ""
-"Don't forget to map a key to 'Hide Toolbar' action to see the whole inventory"
-msgstr ""
-"Не забудьте перепризначити кнопку для дії 'Сховати Панель інстр.' щоб "
-"побачити весь інвентар"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Do you really want to return to the Launcher?"
-msgstr "Ви дійсно хочете повернутися до головного меню?"
-
-#: backends/events/default/default-events.cpp:193
-msgid "Launcher"
-msgstr "Головне меню"
+#~ msgctxt "lowres"
+#~ msgid "Mass Add..."
+#~ msgstr "Дод. багато..."
-#: backends/events/default/default-events.cpp:215
-msgid "Do you really want to quit?"
-msgstr "Ви дійсно хочете вийти?"
+#~ msgid "Mass Add..."
+#~ msgstr "Дод. багато..."
-#: backends/events/gph/gph-events.cpp:386
-#: backends/events/gph/gph-events.cpp:429
-#: backends/events/openpandora/op-events.cpp:168
-msgid "Touchscreen 'Tap Mode' - Left Click"
-msgstr "Режим дотику у тачскріні - Лівий клік"
+#~ msgid ""
+#~ "Turns off General MIDI mapping for games with Roland MT-32 soundtrack"
+#~ msgstr ""
+#~ "Вимикає мапінг General MIDI для ігор зі звуковою доріжкою для Roland MT-32"
-#: backends/events/gph/gph-events.cpp:388
-#: backends/events/gph/gph-events.cpp:431
-#: backends/events/openpandora/op-events.cpp:170
-msgid "Touchscreen 'Tap Mode' - Right Click"
-msgstr "Режим дотику у тачскріні - Правий клік"
+#~ msgid "Standard (16bpp)"
+#~ msgstr "Стандартний растеризатор (16bpp)"
-#: backends/events/gph/gph-events.cpp:390
-#: backends/events/gph/gph-events.cpp:433
-#: backends/events/openpandora/op-events.cpp:172
-msgid "Touchscreen 'Tap Mode' - Hover (No Click)"
-msgstr "Режим дотику у тачскріні - Проліт (без кліку)"
+#~ msgid "Alternative intro"
+#~ msgstr "Алтернативний вступ"
-#: backends/events/gph/gph-events.cpp:410
-msgid "Maximum Volume"
-msgstr "Максимальна Гучність"
+#~ msgid "Use an alternative game intro (CD version only)"
+#~ msgstr "Використовувати альтернативний вступ гри (тільки CD версія)"
-#: backends/events/gph/gph-events.cpp:412
-msgid "Increasing Volume"
-msgstr "Підвищення гучності"
+#~ msgid "MPEG2 cutscenes are no longer supported"
+#~ msgstr "Заставки MPEG2 більше не підтримуються"
-#: backends/events/gph/gph-events.cpp:418
-msgid "Minimal Volume"
-msgstr "Мінімальна Гучність"
+#~ msgid "OpenGL Normal"
+#~ msgstr "OpenGL нормальний"
-#: backends/events/gph/gph-events.cpp:420
-msgid "Decreasing Volume"
-msgstr "Пониження гучності"
+#~ msgid "OpenGL Conserve"
+#~ msgstr "OpenGL Збережений"
-#: backends/events/openpandora/op-events.cpp:174
-msgid "Touchscreen 'Tap Mode' - Hover (DPad Clicks)"
-msgstr "Режим дотику у тачскріні - Проліт (клік DPad)"
+#~ msgid "OpenGL Original"
+#~ msgstr "OpenGL Оригінальний"
-#: backends/updates/macosx/macosx-updates.mm:67
-msgid "Check for Updates..."
-msgstr "Перевіряю оновлення..."
+#~ msgid "Current display mode"
+#~ msgstr "Поточний відеорежим"
-#: backends/platform/bada/form.cpp:269
-msgid "Right Click Once"
-msgstr "Один правий клік"
+#~ msgid "Current scale"
+#~ msgstr "Поточний масштаб"
-#: backends/platform/bada/form.cpp:277
-msgid "Move Only"
-msgstr "Тільки перемістити"
+#~ msgid "Active filter mode: Linear"
+#~ msgstr "Активний режим фільтрації: Лінійний"
-#: backends/platform/bada/form.cpp:291
-msgid "Escape Key"
-msgstr "Клавіша ESC"
-
-#: backends/platform/bada/form.cpp:296
-msgid "Game Menu"
-msgstr "Меню гри"
-
-#: backends/platform/bada/form.cpp:301
-msgid "Show Keypad"
-msgstr "Показати клавіатуру"
-
-#: backends/platform/bada/form.cpp:309
-msgid "Control Mouse"
-msgstr "Управління мишею"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Enabled"
-msgstr "Кліки увімкнено"
-
-#: backends/events/maemosdl/maemosdl-events.cpp:192
-msgid "Clicking Disabled"
-msgstr "Кліки вимкнено"
+#~ msgid "Active filter mode: Nearest"
+#~ msgstr "Активний режим фільтрації: Найближче"
#~ msgid "Enable Roland GS Mode"
#~ msgstr "Увімкнути режим Roland GS"
diff --git a/ports.mk b/ports.mk
index 9b54b3533b..306e0f046b 100644
--- a/ports.mk
+++ b/ports.mk
@@ -97,10 +97,11 @@ endif
ifneq ($(BACKEND), iphone)
# Static libaries, used for the scummvm-static and iphone targets
OSX_STATIC_LIBS := `$(STATICLIBPATH)/bin/sdl-config --static-libs`
+endif
+
ifdef USE_FREETYPE2
OSX_STATIC_LIBS += $(STATICLIBPATH)/lib/libfreetype.a $(STATICLIBPATH)/lib/libbz2.a
endif
-endif
ifdef USE_VORBIS
OSX_STATIC_LIBS += \
@@ -174,9 +175,8 @@ iphone: $(OBJS)
$(CXX) $(LDFLAGS) -o scummvm $(OBJS) \
$(OSX_STATIC_LIBS) \
-framework UIKit -framework CoreGraphics -framework OpenGLES \
- -framework GraphicsServices -framework CoreFoundation -framework QuartzCore \
- -framework Foundation -framework AudioToolbox -framework CoreAudio \
- -lobjc -lz
+ -framework CoreFoundation -framework QuartzCore -framework Foundation \
+ -framework AudioToolbox -framework CoreAudio -lobjc -lz
# Special target to create a snapshot disk image for Mac OS X
# TODO: Replace AUTHORS by Credits.rtf
diff --git a/test/common/util.h b/test/common/util.h
index cd65307612..e195f13a84 100644
--- a/test/common/util.h
+++ b/test/common/util.h
@@ -115,7 +115,7 @@ class UtilTestSuite : public CxxTest::TestSuite {
TS_ASSERT_EQUALS(Common::isAlnum('Z'), 1);
TS_ASSERT_EQUALS(Common::isAlnum('1'), 1);
TS_ASSERT_EQUALS(Common::isAlnum('0'), 1);
- TS_ASSERT_EQUALS(Common::isAlnum('ТЇ'), 0);
+ TS_ASSERT_EQUALS(Common::isAlnum('\xA7'), 0);
TS_ASSERT_EQUALS(Common::isAlnum('$'), 0);
TS_ASSERT_EQUALS(Common::isAlnum(' '), 0);
TS_ASSERT_EQUALS(Common::isAlnum('\n'), 0);
@@ -136,7 +136,7 @@ class UtilTestSuite : public CxxTest::TestSuite {
TS_ASSERT_EQUALS(Common::isAlpha('Z'), 1);
TS_ASSERT_EQUALS(Common::isAlpha('1'), 0);
TS_ASSERT_EQUALS(Common::isAlpha('0'), 0);
- TS_ASSERT_EQUALS(Common::isAlpha('ТЇ'), 0);
+ TS_ASSERT_EQUALS(Common::isAlpha('\xA7'), 0);
TS_ASSERT_EQUALS(Common::isAlpha('$'), 0);
TS_ASSERT_EQUALS(Common::isAlpha(' '), 0);
TS_ASSERT_EQUALS(Common::isAlpha('\n'), 0);
@@ -157,7 +157,7 @@ class UtilTestSuite : public CxxTest::TestSuite {
TS_ASSERT_EQUALS(Common::isDigit('Z'), 0);
TS_ASSERT_EQUALS(Common::isDigit('1'), 1);
TS_ASSERT_EQUALS(Common::isDigit('0'), 1);
- TS_ASSERT_EQUALS(Common::isDigit('ТЇ'), 0);
+ TS_ASSERT_EQUALS(Common::isDigit('\xA7'), 0);
TS_ASSERT_EQUALS(Common::isDigit('$'), 0);
TS_ASSERT_EQUALS(Common::isDigit(' '), 0);
TS_ASSERT_EQUALS(Common::isDigit('\n'), 0);
@@ -178,7 +178,7 @@ class UtilTestSuite : public CxxTest::TestSuite {
TS_ASSERT_EQUALS(Common::isLower('Z'), 0);
TS_ASSERT_EQUALS(Common::isLower('1'), 0);
TS_ASSERT_EQUALS(Common::isLower('0'), 0);
- TS_ASSERT_EQUALS(Common::isLower('ТЇ'), 0);
+ TS_ASSERT_EQUALS(Common::isLower('\xA7'), 0);
TS_ASSERT_EQUALS(Common::isLower('$'), 0);
TS_ASSERT_EQUALS(Common::isLower(' '), 0);
TS_ASSERT_EQUALS(Common::isLower('\n'), 0);
@@ -200,7 +200,7 @@ class UtilTestSuite : public CxxTest::TestSuite {
TS_ASSERT_EQUALS(Common::isUpper('Z'), 1);
TS_ASSERT_EQUALS(Common::isUpper('1'), 0);
TS_ASSERT_EQUALS(Common::isUpper('0'), 0);
- TS_ASSERT_EQUALS(Common::isUpper('ТЇ'), 0);
+ TS_ASSERT_EQUALS(Common::isUpper('\xA7'), 0);
TS_ASSERT_EQUALS(Common::isUpper('$'), 0);
TS_ASSERT_EQUALS(Common::isUpper(' '), 0);
TS_ASSERT_EQUALS(Common::isUpper('\n'), 0);
diff --git a/test/cxxtest_mingw.h b/test/cxxtest_mingw.h
index f407105bfe..380f638640 100644
--- a/test/cxxtest_mingw.h
+++ b/test/cxxtest_mingw.h
@@ -8,4 +8,4 @@
#undef main
#endif // main
-#endif // CXXTEST_MINGW \ No newline at end of file
+#endif // CXXTEST_MINGW
diff --git a/video/avi_decoder.cpp b/video/avi_decoder.cpp
index bae5b7babd..9b196fefc9 100644
--- a/video/avi_decoder.cpp
+++ b/video/avi_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -34,13 +34,7 @@
#include "audio/decoders/raw.h"
// Video Codecs
-#include "video/codecs/cinepak.h"
-#include "video/codecs/indeo3.h"
-#include "video/codecs/mjpeg.h"
-#include "video/codecs/mpeg.h"
-#include "video/codecs/msvideo1.h"
-#include "video/codecs/msrle.h"
-#include "video/codecs/truemotion1.h"
+#include "image/codecs/codec.h"
namespace Video {
@@ -74,21 +68,9 @@ namespace Video {
#define ID_PRMI MKTAG('P','R','M','I')
#define ID_STRN MKTAG('s','t','r','n')
-// Codec tags
-#define ID_RLE MKTAG('R','L','E',' ')
-#define ID_CRAM MKTAG('C','R','A','M')
-#define ID_MSVC MKTAG('m','s','v','c')
-#define ID_WHAM MKTAG('W','H','A','M')
-#define ID_CVID MKTAG('c','v','i','d')
-#define ID_IV32 MKTAG('i','v','3','2')
-#define ID_DUCK MKTAG('D','U','C','K')
-#define ID_MPG2 MKTAG('m','p','g','2')
-#define ID_MJPG MKTAG('m','j','p','g')
-
// Stream Types
enum {
kStreamTypePaletteChange = MKTAG16('p', 'c'),
- kStreamTypeRawVideo = MKTAG16('d', 'b'),
kStreamTypeAudio = MKTAG16('w', 'b')
};
@@ -265,9 +247,6 @@ void AVIDecoder::handleStreamHeader(uint32 size) {
if (bmInfo.clrUsed == 0)
bmInfo.clrUsed = 256;
- if (sHeader.streamHandler == 0)
- sHeader.streamHandler = bmInfo.compression;
-
byte *initialPalette = 0;
if (bmInfo.bitCount == 8) {
@@ -419,10 +398,6 @@ void AVIDecoder::readNextPacket() {
if (getStreamType(nextTag) == kStreamTypePaletteChange) {
// Palette Change
videoTrack->loadPaletteFromChunk(chunk);
- } else if (getStreamType(nextTag) == kStreamTypeRawVideo) {
- // TODO: Check if this really is uncompressed. Many videos
- // falsely put compressed data in here.
- error("Uncompressed AVI frame found");
} else {
// Otherwise, assume it's a compressed frame
videoTrack->decodeFrame(chunk);
@@ -710,7 +685,7 @@ AVIDecoder::AVIVideoTrack::~AVIVideoTrack() {
void AVIDecoder::AVIVideoTrack::decodeFrame(Common::SeekableReadStream *stream) {
if (stream) {
if (_videoCodec)
- _lastFrame = _videoCodec->decodeImage(stream);
+ _lastFrame = _videoCodec->decodeFrame(*stream);
} else {
// Empty frame
_lastFrame = 0;
@@ -768,33 +743,8 @@ bool AVIDecoder::AVIVideoTrack::rewind() {
return true;
}
-Codec *AVIDecoder::AVIVideoTrack::createCodec() {
- switch (_vidsHeader.streamHandler) {
- case ID_CRAM:
- case ID_MSVC:
- case ID_WHAM:
- return new MSVideo1Decoder(_bmInfo.width, _bmInfo.height, _bmInfo.bitCount);
- case ID_RLE:
- return new MSRLEDecoder(_bmInfo.width, _bmInfo.height, _bmInfo.bitCount);
- case ID_CVID:
- return new CinepakDecoder(_bmInfo.bitCount);
- case ID_IV32:
- return new Indeo3Decoder(_bmInfo.width, _bmInfo.height);
-#ifdef VIDEO_CODECS_TRUEMOTION1_H
- case ID_DUCK:
- return new TrueMotion1Decoder(_bmInfo.width, _bmInfo.height);
-#endif
-#ifdef USE_MPEG2
- case ID_MPG2:
- return new MPEGDecoder();
-#endif
- case ID_MJPG:
- return new MJPEGDecoder();
- default:
- warning("Unknown/Unhandled compression format \'%s\'", tag2str(_vidsHeader.streamHandler));
- }
-
- return 0;
+Image::Codec *AVIDecoder::AVIVideoTrack::createCodec() {
+ return Image::createBitmapCodec(_bmInfo.compression, _bmInfo.width, _bmInfo.height, _bmInfo.bitCount);
}
void AVIDecoder::AVIVideoTrack::forceTrackEnd() {
diff --git a/video/avi_decoder.h b/video/avi_decoder.h
index 811f7f82f7..2f7b267d36 100644
--- a/video/avi_decoder.h
+++ b/video/avi_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -43,9 +43,11 @@ namespace Graphics {
struct PixelFormat;
}
-namespace Video {
-
+namespace Image {
class Codec;
+}
+
+namespace Video {
/**
* Decoder for AVI videos.
@@ -197,9 +199,9 @@ protected:
mutable bool _dirtyPalette;
int _frameCount, _curFrame;
- Codec *_videoCodec;
+ Image::Codec *_videoCodec;
const Graphics::Surface *_lastFrame;
- Codec *createCodec();
+ Image::Codec *createCodec();
};
class AVIAudioTrack : public AudioTrack {
diff --git a/video/bink_decoder.cpp b/video/bink_decoder.cpp
index bad34e8373..be4dc549a4 100644
--- a/video/bink_decoder.cpp
+++ b/video/bink_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/bink_decoder.h b/video/bink_decoder.h
index fb2998fb6e..f0f9ae2b29 100644
--- a/video/bink_decoder.h
+++ b/video/bink_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/binkdata.h b/video/binkdata.h
index 02105a7493..dc72f7eacd 100644
--- a/video/binkdata.h
+++ b/video/binkdata.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/codecs/jpeg.cpp b/video/codecs/jpeg.cpp
deleted file mode 100644
index f3886f334a..0000000000
--- a/video/codecs/jpeg.cpp
+++ /dev/null
@@ -1,66 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#include "common/system.h"
-#include "common/textconsole.h"
-#include "graphics/surface.h"
-#include "graphics/decoders/jpeg.h"
-
-#include "video/codecs/jpeg.h"
-
-namespace Common {
-class SeekableReadStream;
-}
-
-namespace Video {
-
-JPEGDecoder::JPEGDecoder() : Codec() {
- _pixelFormat = g_system->getScreenFormat();
- _surface = NULL;
-}
-
-JPEGDecoder::~JPEGDecoder() {
- if (_surface) {
- _surface->free();
- delete _surface;
- }
-}
-
-const Graphics::Surface *JPEGDecoder::decodeImage(Common::SeekableReadStream *stream) {
- Graphics::JPEGDecoder jpeg;
-
- if (!jpeg.loadStream(*stream)) {
- warning("Failed to decode JPEG frame");
- return 0;
- }
-
- if (_surface) {
- _surface->free();
- delete _surface;
- }
-
- _surface = jpeg.getSurface()->convertTo(_pixelFormat);
-
- return _surface;
-}
-
-} // End of namespace Video
diff --git a/video/coktel_decoder.cpp b/video/coktel_decoder.cpp
index 024e479bf7..21dda15cd0 100644
--- a/video/coktel_decoder.cpp
+++ b/video/coktel_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -31,8 +31,7 @@
#include "video/coktel_decoder.h"
-#include "video/codecs/codec.h"
-#include "video/codecs/indeo3.h"
+#include "image/codecs/indeo3.h"
#ifdef VIDEO_COKTELDECODER_H
@@ -1692,7 +1691,7 @@ bool VMDDecoder::openExternalCodec() {
if (_videoCodec == kVideoCodecIndeo3) {
_isPaletted = false;
- _codec = new Indeo3Decoder(_width, _height);
+ _codec = new Image::Indeo3Decoder(_width, _height);
} else {
warning("VMDDecoder::openExternalCodec(): Unknown video codec FourCC \"%s\"",
@@ -2263,7 +2262,7 @@ bool VMDDecoder::renderFrame(Common::Rect &rect) {
return false;
Common::MemoryReadStream frameStream(_videoBuffer[0], _videoBufferLen[0]);
- const Graphics::Surface *codecSurf = _codec->decodeImage(&frameStream);
+ const Graphics::Surface *codecSurf = _codec->decodeFrame(frameStream);
if (!codecSurf)
return false;
diff --git a/video/coktel_decoder.h b/video/coktel_decoder.h
index 91d52b65e6..a72f76eb9d 100644
--- a/video/coktel_decoder.h
+++ b/video/coktel_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -53,9 +53,11 @@ namespace Graphics {
struct PixelFormat;
}
-namespace Video {
-
+namespace Image {
class Codec;
+}
+
+namespace Video {
/**
* Decoder for Coktel videos.
@@ -516,7 +518,7 @@ private:
Graphics::Surface _8bppSurface[3]; ///< Fake 8bpp surfaces over the video buffers.
bool _externalCodec;
- Codec *_codec;
+ Image::Codec *_codec;
int32 _subtitle;
diff --git a/video/dxa_decoder.cpp b/video/dxa_decoder.cpp
index 27b1664b07..b61f842341 100644
--- a/video/dxa_decoder.cpp
+++ b/video/dxa_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/dxa_decoder.h b/video/dxa_decoder.h
index b3f2eca5e2..eef4462aa7 100644
--- a/video/dxa_decoder.h
+++ b/video/dxa_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/flic_decoder.cpp b/video/flic_decoder.cpp
index 317dc14691..994f47cea8 100644
--- a/video/flic_decoder.cpp
+++ b/video/flic_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -176,7 +176,7 @@ const Graphics::Surface *FlicDecoder::FlicVideoTrack::decodeNextFrame() {
uint16 newWidth = _fileStream->readUint16LE();
uint16 newHeight = _fileStream->readUint16LE();
- if ((newWidth != 0) && (newHeight != 0)) {
+ if ((newWidth != 0) || (newHeight != 0)) {
if (newWidth == 0)
newWidth = _surface->w;
if (newHeight == 0)
diff --git a/video/flic_decoder.h b/video/flic_decoder.h
index c20a092a32..1769e1ed2e 100644
--- a/video/flic_decoder.h
+++ b/video/flic_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/module.mk b/video/module.mk
index d836371182..5754350e42 100644
--- a/video/module.mk
+++ b/video/module.mk
@@ -8,19 +8,7 @@ MODULE_OBJS := \
psx_decoder.o \
qt_decoder.o \
smk_decoder.o \
- video_decoder.o \
- codecs/cdtoons.o \
- codecs/cinepak.o \
- codecs/indeo3.o \
- codecs/jpeg.o \
- codecs/mjpeg.o \
- codecs/msrle.o \
- codecs/msvideo1.o \
- codecs/qtrle.o \
- codecs/rpza.o \
- codecs/smc.o \
- codecs/svq1.o \
- codecs/truemotion1.o
+ video_decoder.o
ifdef USE_BINK
MODULE_OBJS += \
@@ -32,10 +20,5 @@ MODULE_OBJS += \
theora_decoder.o
endif
-ifdef USE_MPEG2
-MODULE_OBJS += \
- codecs/mpeg.o
-endif
-
# Include common rules
include $(srcdir)/rules.mk
diff --git a/video/psx_decoder.cpp b/video/psx_decoder.cpp
index fd45005770..91f8e1dafc 100644
--- a/video/psx_decoder.cpp
+++ b/video/psx_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/psx_decoder.h b/video/psx_decoder.h
index d1d5204e37..2d70123b71 100644
--- a/video/psx_decoder.h
+++ b/video/psx_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/qt_decoder.cpp b/video/qt_decoder.cpp
index 11a27beb10..0a29692948 100644
--- a/video/qt_decoder.cpp
+++ b/video/qt_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -39,13 +39,7 @@
#include "common/util.h"
// Video codecs
-#include "video/codecs/cinepak.h"
-#include "video/codecs/jpeg.h"
-#include "video/codecs/qtrle.h"
-#include "video/codecs/rpza.h"
-#include "video/codecs/smc.h"
-#include "video/codecs/cdtoons.h"
-#include "video/codecs/svq1.h"
+#include "image/codecs/codec.h"
namespace Video {
@@ -270,42 +264,7 @@ QuickTimeDecoder::VideoSampleDesc::~VideoSampleDesc() {
}
void QuickTimeDecoder::VideoSampleDesc::initCodec() {
- switch (_codecTag) {
- case MKTAG('c','v','i','d'):
- // Cinepak: As used by most Myst and all Riven videos as well as some Myst ME videos. "The Chief" videos also use this.
- _videoCodec = new CinepakDecoder(_bitsPerSample & 0x1f);
- break;
- case MKTAG('r','p','z','a'):
- // Apple Video ("Road Pizza"): Used by some Myst videos.
- _videoCodec = new RPZADecoder(_parentTrack->width, _parentTrack->height);
- break;
- case MKTAG('r','l','e',' '):
- // QuickTime RLE: Used by some Myst ME videos.
- _videoCodec = new QTRLEDecoder(_parentTrack->width, _parentTrack->height, _bitsPerSample & 0x1f);
- break;
- case MKTAG('s','m','c',' '):
- // Apple SMC: Used by some Myst videos.
- _videoCodec = new SMCDecoder(_parentTrack->width, _parentTrack->height);
- break;
- case MKTAG('S','V','Q','1'):
- // Sorenson Video 1: Used by some Myst ME videos.
- _videoCodec = new SVQ1Decoder(_parentTrack->width, _parentTrack->height);
- break;
- case MKTAG('S','V','Q','3'):
- // Sorenson Video 3: Used by some Myst ME videos.
- warning("Sorenson Video 3 not yet supported");
- break;
- case MKTAG('j','p','e','g'):
- // JPEG: Used by some Myst ME 10th Anniversary videos.
- _videoCodec = new JPEGDecoder();
- break;
- case MKTAG('Q','k','B','k'):
- // CDToons: Used by most of the Broderbund games.
- _videoCodec = new CDToonsDecoder(_parentTrack->width, _parentTrack->height);
- break;
- default:
- warning("Unsupported codec \'%s\'", tag2str(_codecTag));
- }
+ _videoCodec = Image::createQuickTimeCodec(_codecTag, _parentTrack->width, _parentTrack->height, _bitsPerSample & 0x1f);
}
QuickTimeDecoder::AudioTrackHandler::AudioTrackHandler(QuickTimeDecoder *decoder, QuickTimeAudioTrack *audioTrack)
@@ -725,7 +684,7 @@ const Graphics::Surface *QuickTimeDecoder::VideoTrackHandler::bufferNextFrame()
return 0;
}
- const Graphics::Surface *frame = entry->_videoCodec->decodeImage(frameData);
+ const Graphics::Surface *frame = entry->_videoCodec->decodeFrame(*frameData);
delete frameData;
// Update the palette
diff --git a/video/qt_decoder.h b/video/qt_decoder.h
index 28314f2e63..7e87d21ae7 100644
--- a/video/qt_decoder.h
+++ b/video/qt_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
@@ -44,9 +44,11 @@ namespace Graphics {
struct PixelFormat;
}
-namespace Video {
-
+namespace Image {
class Codec;
+}
+
+namespace Video {
/**
* Decoder for QuickTime videos.
@@ -95,7 +97,7 @@ private:
char _codecName[32];
uint16 _colorTableId;
byte *_palette;
- Codec *_videoCodec;
+ Image::Codec *_videoCodec;
};
// The AudioTrackHandler is currently just a wrapper around some
diff --git a/video/smk_decoder.cpp b/video/smk_decoder.cpp
index b31ad109ad..ee7a4ce689 100644
--- a/video/smk_decoder.cpp
+++ b/video/smk_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/smk_decoder.h b/video/smk_decoder.h
index 5298158833..e4f6a52310 100644
--- a/video/smk_decoder.h
+++ b/video/smk_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/theora_decoder.cpp b/video/theora_decoder.cpp
index a0ee0a36b4..cb6289bd60 100644
--- a/video/theora_decoder.cpp
+++ b/video/theora_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/theora_decoder.h b/video/theora_decoder.h
index ac808cdfe6..b85388426b 100644
--- a/video/theora_decoder.h
+++ b/video/theora_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/video_decoder.cpp b/video/video_decoder.cpp
index 931bde20d0..c6171c4450 100644
--- a/video/video_decoder.cpp
+++ b/video/video_decoder.cpp
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
diff --git a/video/video_decoder.h b/video/video_decoder.h
index 99161d6f97..2faec0fb3e 100644
--- a/video/video_decoder.h
+++ b/video/video_decoder.h
@@ -8,12 +8,12 @@
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
-
+ *
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
-
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.